所谓数据帧(Data frame),就是
数据链路层的
协议数据单元,它包括三部分:帧头,
数据部分,帧尾。其中,帧头和帧尾包含一些必要的控制信息,比如同步信息、地址信息、差错控制信息等;数据部分则包含
网络层传下来的数据,比如IP数据包,等等。
在发送端,
数据链路层把网络层传下来的
数据封装成帧,然后发送到链路上去;在接收端,数据链路层把收到的帧中的数据取出并交给
网络层。不同的
数据链路层协议对应着不同的帧,所以,帧有多种,比如PPP帧、MAC帧等,其具体格式也不尽相同。
MAC帧的帧头包括三个字段。前两个字段分别为6
字节长的目的地址字段和源地址字段,目的地址字段包含目的MAC地址信息,源地址字段包含源MAC地址信息。第三个字段为2字节的类型字段,里面包含的信息用来标志上一层使用的是什么协议,以便接收端把收到的MAC帧的数据部分上交给上一层的这个协议。例如,当类型字段的值是0x0800时,就表示上层使用的是
IP数据报;若类型字段的值为0x8137,则表示该帧是由Novell IPX 发过来的。
MAC帧的数据部分只有一个字段,其长度在46到1500字节之间,包含的信息是
网络层传下来的数据。
MAC帧的帧尾也只有一个字段,为4字节长,包含的信息是
帧校验序列FCS(使用CRC循环冗余校验码校验)。
TCP/IP协议是工作在
OSI模型第三层(网络层)、第四层(传输层)上的,帧工作在第二层(数据链路层)。上一层的内容由下一层的内容来传输,所以在局域网中,“包”是包含在“帧”里的。所谓数据帧(Data frame),就是数据链路层的协议数据单元,它包括三部分:帧头,数据部分,帧尾。其中,帧头和帧尾包含一些必要的控制信息,比如同步信息、地址信息、差错控制信息等;数据部分则包含网络层传下来的数据,比如IP数据包。