Menu Close

数据链路层(MAC)

在网络的通信中,数据链路层又称为MAC(Media Access Control)层。下面按照数据链路层 (2层)的结构进行介绍。

Understanding Ethernet | DesignWare IP | Synopsys

图1 MAC层

1.前导码( Preamble)及帧起始

10101010 10101010 10101010 10101010 10101010 10101010 10101010---7个 8h55

SFD(start frame delimeter,帧起始分界)-----10101011 –8’hd5

IMG_256

图 2 链路层(MAC)示意图

2. MAC地址

目的MAC地址 (6 octets),数据帧目的主机的硬件地址

源MAC地址 (6 octets),数据包发送主机的硬件地址。

MAC地址:媒体访问存取控制地址(Media Access Control Address),也叫局域网地址(LAN Address),以太网地址(Ethernet Address) 或物理地址(Physical Address)。MAC地址是全球惟一的,主要用来确定一个网卡。每个MAC地址由6个字节组成。

广播地址:FF-FF-FF-FF-FF-FF

多播地址:01:xx:xx:xx:xx:xx,广播地址是多播地址的特例。

图 3 2层及1层结构示意图

3. 802.1q tag

802.1q tag是用来标识VLAN(Virtual LAN)的,而且是可选项,如果包含该项,必须以特殊字符标注,共32bits。前16bits为 TPID(Tag protocol identifier) 标签协议标识,

TPID = 0x8100。后16-bit为TCI,TCI为(Tag control information)标签控制信息,TCI又分为PCP,DEI,VID等。其中

PCP优先级控制点(见802.1p)

DEI(drop eligible indicator)在网络拥挤时可丢包指符

VID VLAN ID VID = 000常规,没有VLAN

VID = 001 保留,用于网络管理,VID = FFF 保留,其它用于VLAN分组

图 4 802.1Q tag

图5 数据链路层(MAC层)数据类型

4. 长度/类型:

图6

占用2bytes, 这里EthernetII 与802.3的定义不同,Ethernet定义上层协议,比如IP协议为0800,ARP协议 0806,RARP 8035等. IEEE 802.3 定义为数据长度,由于长度小于1500,而协议类型都是大于1500, 因此不会冲突。

Ethernet and IEEE 802.3 MAC frames (SOF: start of frame; FCS: frame... |  Download Scientific Diagram

图7

5. 数据:

一般是上层数据,如IP层的数据, MAC 层要求数据长度在46-1500byte之间,即不能太短,也不能太长。

6. 帧校验序列(FCS):

MAC要求在数据的尾部应附着帧检查序列,用于检查该数据帧的接收是否正确。这里采用4字节的CRC(循环冗余检验)。

关于CRC部分的内容将会有专门的篇幅进行介绍。

 

Posted in FPGA, FPGA 教材教案, 教材与教案, 文章

发表回复

相关链接