TCP/IP 四层/五层模型

事实上,TCP/IP 模型是 OSI 模型的简化版本,我们来看看 OSI 七层模型和 TCP/IP 五层模型之间的对应的关系: 所以由上图可知,TCP/IP 五层模型中,将 OSI 七层模型的最上三层(应用层、表示层和会话层)合并为一个层,即应用层,所以 TCP/IP 五层模型包括:应用层、传输层、网络层、数据链路层以及物理层。除了 TCP/IP 五层模型外,还有 TCP/IP 四层模型,与五层模型唯一不同的就是将数据链路层和物理层合并为网络接口层,如下图所示: 由上图可知,四层模型包括:应用层、传输层、网络层以及网络接口层。而在实际的应用中还是使用TCP/IP 四层模型,五层模型是专门为介绍网络原理而设计的。

数据的封装与拆封

网络通信中,数据从上层到下层交付时,要进行封装;同理,当目标主机接收到数据时,数据由下层传递给上层时需要进行拆封。这就是数据的封装与拆封。

数据的封装过程如下图所示: 当用户发送数据时,将数据向下交给传输层,但是在交给传输层之前,应用层相关协议会对用户数据进行封装,譬如 MQTT、HTTP 等协议,其实就是在用户数据前添加一个应用程序头部,这是处于应用层的操作,最后应用层通过调用传输层接口来将封装好的数据交给传输层。 传输层会在数据前面加上传输层首部(此处以 TCP 协议为例,图中的传输层首部为 TCP 首部,也可以是 UDP 首部),然后向下交给网络层。 同样地,网络层会在数据前面加上网络层首部(IP 首部),然后将数据向下交给链路层,链路层会对数据进行最后一次封装,即在数据前面加上链路层首部(此处使用以太网接口为例,对应以太网首部),然后将数据交给网卡。 最后,由网卡硬件设备将数据转换成物理链路上的电平信号,数据就这样被发送到了网络中。 这就是网络数据的发送过程,从图中可以看到,各层协议均会对数据进行相应的封装,可以概括为 TCP/IP 模型中的各层协议对数据进行封装的过程。 以上便是网络数据的封装过程,当数据被目标主机接收到之后,会进行相反的拆封过程,将每一层的首部进行拆解最终得到用户数据。所以,数据的接收过程与发送过程正好相反,可以概括为 TCP/IP 模型中的各层协议对数据进行解析的过程。

好文链接

评论可见,请评论后查看内容,谢谢!!!评论后请刷新页面。