数据链路层是OSI参考模型第二层,位于物理层与网络层之间。主要有如下三个做用:、git
长度为6字节48bit的数据,通常用16进制表示,相似这样的01-00-5e-7f-ff-fa; 每一个网卡的MAC都是不一致的,在生产的时候就写入到静态电容里面了; mac地址是链路层的工做机制基础;缓存
字段 | 长度 | 含义 |
---|---|---|
Destination address | 6字节 | 目的MAC地址。 |
Source address | 6字节 | 源MAC地址。 |
Type | 2字节 | 长度为2字节,表示帧类型。取值为0x8100时表示802.1Q Tag帧。若是不支持802.1Q的设备收到这样的帧,会将其丢弃。 |
PRI | 3比特 | Priority,长度为3比特,表示帧的优先级,取值范围为0~7,值越大优先级越高。用于当阻塞时,优先发送优先级高的数据包。若是设置用户优先级,可是没有VLANID,则VLANID必须设置为0x000。 |
CFI | 1比特 | CFI (Canonical Format Indicator),长度为1比特,表示MAC地址是不是经典格式。CFI为0说明是标准格式,CFI为1表示为非标准格式。用于区分以太网帧、FDDI(Fiber Distributed Digital Interface)帧和令牌环网帧。在以太网中,CFI的值为0. |
VID | 12比特 | LAN ID,长度为12比特,表示该帧所属的VLAN。在VRP中,可配置的VLAN ID取值范围为1~4094。0和4095协议中规定为保留的VLAN ID。 分为三个大类:
|
Length/Type | 2字节 | 指后续数据的字节长度,但不包括CRC检验码。 |
Data | 42~1500字节 | 负载(可能包含填充位)。 |
CRC | 4字节 | 用于帧内后续字节差错的循环冗余检验(也称为FCS或帧检验序列)。 |
传输过程在前面的转载的文章**MAC表、ARP缓存表、路由表以及端口映射NAT**已经有了,很少BB;网络
除了mac地址外,须要注意一下VLanId(VID),单纯依靠第二层设备跨VLAN的通讯是没法进行的,这是协议的限制.(若是有路由或者三层交换机的话,能够设置一个单臂路由);spa
只有VlanId相同的设备才能够,对于untagged数据帧(VLANID=0),交换机的trunk 及access口都会放行,能够参考这个**交换机的工做机制--VLAN及思科交换机的配置**.net