3、网络数据封装与数据链路协议解析

网络数据封装与数据链路协议解析

1. 数据封装过程

在完整的协议栈中,所有协议的作用都十分显著。当一个应用程序生成要发送到远程应用程序的数据流时(例如,通过 FTP 发送的文件内容),它会将数据交给表示层进行缓冲、转换和编码,使其成为通用格式。这种“可用于网络传输”的数据流随后被传递到会话层进行传输。在此过程中,会话层会暂停一下,以建立端到端的连接。

会话层将其连接请求和应用程序的数据(通常前面会加上会话协议消息头)作为缓冲区或字节流传递给传输层。传输层会将这些数据分割成易于管理的片段进行传输,并添加一个头部,为远程传输组件提供坐标信息,然后将数据传递给网络层。网络层会根据底层数据链路的能力再次分割数据,使其适合传输,并添加自己的头部,提供逐跳和端到端的信息,最后将数据传递给数据链路层。数据链路层会添加自己的头部,如有必要,还会进一步分割数据。最后,数据链路层将数据呈现给物理层,物理层根据物理介质将其编码为比特流进行传输。

这个过程会产生相当大的协议开销,以实现端到端的数据传输。在数据链路层,协议和数据消息被称为帧;在网络层和传输层,它们被称为数据包;在更高层,它们被简单地称为消息。协议数据单元(PDU)这个术语可以应用于协议栈的任何级别,与消息同义,并且可以携带控制信息和/或数据。最大传输单元(MTU)通常仅应用于网络层和数据链路层,指的是链路、网络或网络路径所能支持的最大数据包或帧。网络层的 MTU 描述了可以封装到数据链路层帧中的最大网络层数据包,而数据链路层的 MTU 描述了物理层所能支持的最大帧。

下面是数据封装过程的流程图:

graph LR
    A[应用层] 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值