WireShark数据包分析数据封装
数据封装(Data Encapsulation)是指将协议数据单元(PDU)封装在一组协议头和尾中的过程。在OSI七层参考模型中,每层主要负责与其它机器上的对等层进行通信。该过程是在协议数据单元(PDU)中实现的,其中每层的PDU一般由本层的协议头、协议尾和数据封装构成本文选自WireShark数据包分析实战详解清华大学出版社。
为了帮助用户更清楚的理解数据封装过程,下面通过一个实例来说明这个过程。假设某个公司局域网使用以太网,当员工从局域网的FTP服务器下载一个文件时,该文件从FTP服务器到员工主机的传输过程如图1.17所示本文选自WireShark数据包分析实战详解清华大学出版社。
图1.17 TCP/IP中数据的传输
在图1.17中,FTP服务器作为数据的发送端,员工主机作为数据的接收端。下面分别介绍数据发送和接收处理过程。
1.数据发送处理过程数据封装协议数据单元封装WireShark数据包分析
(1)应用层将数据交给传输层,传输层添加上TCP的控制信息(称为TCP头部),这个数据单元称为段(Segment),加入控制信息的过程称为封装。然后,将段交给网络层。
(2)网络层接收到段,再添加上IP头部,这个数据单元称为包(Packet)。然后,将包交给数据链路层。
(3)数据链路层接收到包,再添加上MAC头部和尾部,这个数据单元称为帧(Frame)。然后,将帧交给物理层。
(4)物理层将接收到的数据转化为比特流,然后在网线中传送。
2.数据接收处理过程数据封装协议数据单元封装WireShark数据包分析
(1)物理层接收到比特流,经过处理后将数据交给数据链路层。
(2)数据链路层将接收到的数据转化为数据帧,再除去MAC头部和尾部,这个除去控制信息的过程称为解封装,然后将包交给网络层。
(3)网络层接收到包,再除去IP头部,然后将段交给传输层。
(4)传输层接收到段,再除去TCP头部,然后将数据交给应用层。
从以上传输过程中,可以总结出以下几点。如下所示:
(1)发送方数据处理的方式是从高层到底层,逐层进行数据封装。
(2)接收方数据处理的方式是从底层到高层,逐层进行数据解封装。
(3)接收方的每一层只把对该层有意义的数据拿走,或者说每一层只能处理发送方同等层的数据,然后把其余的部分传递给上一层,这就是对等层通信的概念本文选自WireShark数据包分析实战详解清华大学出版社数据封装协议数据单元封装WireShark数据包分析。