计算机网络应用层

背景知识:

C/S模式的维护成本高,因为一台服务器要维持服务于千万台客户端的通信,如果服务端平台崩了,整个通信过程就全无;其次服务器端离客户端远,有可能会跨越多个国家进行反复传,导致有时延;最后当客户端线性增多,服务器无法扩展;

所以有了P2P模式,百度,迅雷在通讯方面使用了P2P,服务器端一直运行,当客户端开启时,自动告诉服务器端我有什么资源,多个客户端开启形成网状结构,当我需要资源时,我充当了客户端,为我提供资源的是服务端;当别人需要资源时,别人是客户端,而我是服务器端。

好比QQ注册,当我们第一次注册时把所有信息(如user、password、ip、post)都给了服务器端,下次登录时服务器可以把所有关于我的信息都给我,免去输入密码;当多个qq用户登录时,他们都把信息给了服务器端,同时,我也可以知道他们的ip地址,好比映射。

分布式进程通信

问题:

  1. 如何标识和寻址?
  2. 传输层--应用层之间如何服务? --->socketAPI
  3. 应用需要传输层什么服务实现报文交换?-->协议

解决:

  1. 用端节点SAP标识;寻址:①我在哪 ②我是在TCP还是UDP上 ③我端口号多少
  2. 传输层提供的服务需要穿过什么样的信息:报文SDU;端口;对方端口。封装报文:头+数据

TCP socket

socket对象:源 IP,源端口,目标IP,目标端口。故socket把四个对象封装成一个,即四元组在传输层和应用层之间进行解析和包装,好比映射,我的主机的应用层把四个源封装为socket交给传输层,通过通讯交给对方主机上的传输层,传输层根据socket表数字代表的含义进行理解该数字的含义,然后服务于应用层。

  1. 数据丢失率 吞吐 延迟 安全性

    但传输层没有保证安全性,故使用SSL套在TCP上实现加密,后续在了解SSL。

posted @ 2022-11-15 19:54  郭培鑫同学  阅读(23)  评论(0编辑  收藏  举报