[TOC]
应用层
OSI模型中的应用层是最终用户最接近的层,这意味着应用层和最终用户可以直接与软件应用交互。应用层程序基于客户端和服务器。
Application层包含以下功能
- 识别通信伙伴:应用层识别具有要传输数据的应用程序的通信伙伴的可用性。
- 确定资源可用性:应用层确定是否有足够的网络资源可用于所请求的通信。
- 同步通信:应用程序之间发生的所有通信都需要由应用程序层管理的协作。
应用层服务
- 网络虚拟终端:应用程序层允许用户登录到远程主机。为此,应用程序在远程主机上创建终端的软件仿真。用户的计算机与软件终端通话,软件终端又与主机通话。远程主机认为它正在与其自己的终端进行通信,因此它允许用户登录。
- 文件传输,访问和管理(FTAM):应用程序允许用户访问远程计算机中的文件,从计算机检索文件以及管理远程计算机中的文件。FTAM根据文件结构,文件属性以及对文件及其属性执行的操作类型定义分层虚拟文件。
- 寻址:为了获得客户端和服务器之间的通信,需要寻址。当客户端向服务器发出请求时,请求包含服务器地址和自己的地址。服务器响应客户端请求,该请求包含目标地址,即客户端地址。为了实现这种寻址,使用了DNS。
- 邮件服务:应用程序层提供电子邮件转发和存储。
- 目录服务:应用程序包含一个分布式数据库,可以访问有关各种对象和服务的全局信息。
- 身份验证:它验证发件人或收件人的邮件或两者。
网络应用架构
应用程序体系结构与网络体系结构不同。网络架构是固定的,为应用程序提供一组服务。另一方面,应用程序体系结构由应用程序开发人员设计,并定义应如何在各种终端系统上构建应用程序。
应用程序架构有两种类型:
- 客户端 - 服务器体系结构
- P2P架构
客户端 - 服务器体系结构
在本地计算机上运行的应用程序向另一个应用程序发送请求,称为客户端,服务请求的程序称为服务器。例如,当Web服务器从客户端主机接收请求时,它会响应对客户端主机的请求。
客户端 - 服务器架构的特征:
- 在客户端 - 服务器体系结构中,客户端不直接相互通信。例如,在Web应用程序中,两个浏览器不直接相互通信。
- 服务器是固定的,众所周知的地址,称为IP地址,因为服务器始终处于打开状态,而客户端始终可以通过向发送方的IP地址发送数据包来联系服务器。
客户端 - 服务器架构的缺点:
它是一种基于单服务器的体系结构,无法保存来自客户端的所有请求。例如,当只有一个服务器存在时,社交网站可能会变得不堪重负。
P2P(点对点)架构
数据中心没有专用服务器。对等方是不属于服务提供商的计算机。大多数同龄人居住在家庭,办公室,学校和大学。对等体彼此通信而不通过专用服务器传递信息,该体系结构称为对等体系结构。基于P2P架构的应用程序包括文件共享和互联网电话。
P2P架构的特点
- 自扩展性:在文件共享系统中,尽管每个对等方通过请求文件生成工作负载,但每个对等方还通过将文件分发给对等方来添加服务容量。
- 经济高效:它具有成本效益,因为它不需要大量的服务器基础设施和服务器带宽。
客户端和服务器进程
- 网络应用程序由一对通过网络相互发送消息的进程组成。
- 在P2P文件共享系统中,文件从一个对等体中的进程传输到另一个对等体中的进程。我们将两个进程中的一个标记为客户端,将另一个进程标记为服务器。
- 通过P2P文件共享,正在下载文件的对等体被称为客户端,并且正在上载该文件的对等体被称为服务器。但是,我们在一些应用程序中观察到,例如P2P文件共享; 进程可以作为客户端和服务器。因此,我们可以说一个进程可以下载和上传文件。
客户端和服务器模型
- 客户端和服务器网络模型是一种模型,其中诸如服务器的计算机向诸如客户端的其他计算机提供网络服务以执行基于用户的任务。此模型称为客户端 - 服务器网络模型。
- 使用客户端 - 服务器模型的应用程序应遵循以下给定的策略:

客户
客户端是在本地计算机上运行的程序,从服务器请求服务。客户端程序是有限程序,意味着服务由用户启动并在服务完成时终止。
服务器
服务器是在远程机器上运行的程序,为客户端提供服务。当客户端请求服务时,服务器会为传入的请求打开大门,但它永远不会启动服务。
服务器程序是一个无限程序意味着当它启动时,它会无限运行,除非出现问题。服务器等待来自客户端的传入请求。当请求到达服务器时,它会响应请求。
客户端 - 服务器网络的优点:
- 集中式:在客户端 - 服务器网络中可以集中备份,即所有数据都存储在服务器中。
- 安全性:这些网络更加安全,因为所有共享资源都是集中管理的。
- 性能:使用专用服务器可提高共享资源的速度。这提高了整个系统的性能。
- 可扩展性:我们可以单独增加客户端和服务器的数量,即可以添加新元素,或者我们可以随时在网络中添加新节点。
客户端 - 服务器网络的缺点:
- 流量拥塞是客户端/服务器网络中的一个大问题。当大量客户端向同一服务器发送请求时可能会导致流量拥塞问题。
- 它没有网络的健壮性,即,当服务器关闭时,则无法满足客户端请求。
- 客户端/服务器网络非常具有决定性。有时,常规计算机硬件不能为一定数量的客户端提供服务。在这种情况下,服务器端需要特定的硬件才能完成工作。
- 有时资源存在于服务器中,但可能不存在于客户端中。例如,如果应用程序是Web,那么我们无法在不取出Web上的打印视图窗口的情况下直接在打印机上打印。
网友评论