Alex_McAvoy

想要成为渔夫的猎手

应用层功能

【概述】

应用层,是计算机网络体系结构的最高层,其中的每一个协议都是为了解决某一类的应用问题,应用层的具体内容就是规定应用进程在通信时所遵循的协议

应用层的协议要么基于C/S 模型,要么基于 P2P 模型,这两者被统称为网络应用模型

【C/S 模型】

客户/服务器(Client/Server,C/S)模型中,总有一个被称为服务器(Server)的一直打开的主机,其服务于多个来自其他被称为客户机(Client)的主机请求,其工作流程如下:

  1. 服务器处于接收请求的状态
  2. 客户机发出服务请求,并等待接收结果
  3. 服务器收到请求,分析请求并进行必要处理,将结果发给客户机

对于服务器来说,其一直运行,永久提供服务,这就需要具有一个永久性的访问地址;对于客户机来说,其只需要间歇性接入网络发出服务请求即可,能够使用动态 IP,同时可以不与其他客户机通信

常见的使用 C/S 模型的应用有:文件传输 FTP、远程登录、电子邮件等

【P2P 模型】

在 C/S 模型中,服务器性能的好坏决定了整个系统的性能,当大量用户请求服务时,服务器就成为了系统的瓶颈

对等式(Peer-to-Peer,P2P)模型中,没有固定的客户和服务器的划分,任意一对计算机被称为对等方(peer),可以直接相互通信

从本质上来看,P2P 模型仍然是一个 C/S 模型,只是每个结点既能作为客户访问其他结点的资源,也能作为服务器提供资源给其他结点

与 C/S 模型相比,P2P 减轻了服务器器的压力,消除了对某个服务器的完全依赖,可以将任务分配到各个结点上,但每个结点在获取服务的同时,还要给其他结点提供服务,这不可避免的会占据较多的内存,影响整机速度

常见的使用 P2P 模型的应用有:PPLive、Bittorrent、电驴等

感谢您对我的支持,让我继续努力分享有用的技术与知识点!