协议分层:
为什么会协议分层?
-
问题本身是分层的
-
不断进行封装,低耦合
对应的网络协议栈与操作系统有什么关系?
其中五层协议中最重要的传输层和网络层就是操作系统中的板块。
网络通信的本质:
贯穿协议栈的过程。
网络协议栈的层状结构中,每一层都有协议:
这里举出的只是每一层中众多协议中的一个。
封装和解包的过程:
对应从应用层到链路层是封装的过程
从链路层到应用层是解包的过程。
对应的几点扩展:
-
报文 = 报头 + 有效载荷
-
几乎任何层协议,都提供一种分离能力,将报头和有效载荷分离。
-
几乎任何层协议,都要在报头中提供,决定将自己的有效载荷交付给上层的哪一个协议的能力(分用)
为了防止以太网发生数据碰撞问题:
发送主机都要执行碰撞避免算法
划分碰撞域:交换机
ip地址:
是什么?
网络的唯一标识。
为什么会有ip地址?
IP协议屏蔽了底层网络的差异化,
主要靠的是工作在IP层的路由器。
ip地址的作用:
IP实现了全球的软件的虚拟层,一切皆是报文。
对应屏蔽产异化的具体细节:
对于两个用户直接通行,对应网络层的报文段中有对应的源ip地址和目的ip地址,
需要通过路由器进行转发,而路由器在转发过程中通过和数据链路成的转换关系,
完全屏蔽了差异化。
ip vs max:
ip:ip地址,尤其是目的ip,一般是不会改变的,协助我们进行路径选择
mac:mac地址,出局域网之后,源和目的mac地址都要被丢弃,让路由器重新封装。
网络通信的基本脉络示意图: