当前位置:文档之家› 以太网协议报文格式

以太网协议报文格式

T C P/I P协议族IP/TCPTelnet和R login、FTP以及SMTPIP/UDPDNS 、TFTP、BOOTP、SNMPICMP是IP协议的附属协议、IGMP是Internet组管理协议ARP(地址解析协议)和RARP(逆地址解析协议)是某些网络接口(如以太网和令牌环网)使用的特殊协议,用来转换I P层和网络接口层使用的地址。

1、以太帧类型以太帧有很多种类型。

不同类型的帧具有不同的格式和MTU值。

但在同种物理媒体上都可同时存在。

72–1530 octets84–1542 octets▪标签协议识别符(Tag Protocal Identifier, TPID): 一组16位元的域其数值被设定在0x8100以用来辨别某个IEEE 802.1Q的帧为已被标签的,而这个域所被标定位置与乙太形式/长度在未标签帧的域相同,这是为了用来区别未标签的帧。

▪优先权代码点(Priority Code Point, PCP): 以一组3位元的域当作IEEE 802.1p优先权的参考,从0(最低)到7(最高),用来对资料流(音讯、影像、档案等等)作传输的优先级。

▪标准格式指示(Canonical Format Indicator, CFI): 1位元的域。

若是这个域的值为1,则MAC地指则为非标准格式;若为0,则为标准格式;在乙太交换器中他通常默认为0。

在乙太和令牌环中,CFI用来做为两者的相容。

若帧在乙太端中接收资料则CFI的值须设为1,且这个端口不能与未标签的其他端口桥接。

▪虚拟局域网识别符(VLAN Identifier, VID): 12位元的域,用来具体指出帧是属于哪个特定VLAN。

值为0时,表示帧不属于任何一个VLAN;此时,802.1Q 标签代表优先权。

16位元的值0x000和0xFFF为保留值,其他的值都可用来做为共4094个VLAN的识别符。

在桥接器上,VLAN1在管理上做为保留值。

这个12位元的域可分为两个6位元的域以延伸目的(Destination)与源(Source)之48位元地址,18位元的三重标记(Triple-Tagging)可和原本的48位元相加成为66位元的地址。

0、以太网的封装格式(RFC 894)IEEE 802.2/802.3(RFC 1042)一个0x0800的以太类型说明这个帧包含的是IPv4数据报。

同样的,一个0x0806的以太类型说明这个帧是一个ARP帧,0x8100说明这是一个IEEE 802.1Q帧,而0x86DD说明这是一个IPv6帧,而0x 8864有PPPoE 封装(其他以太网类型见附2)1、以太网PAUSE帧IEEE 802.3x是全双工以太网数据链路层的流控方法。

当客户终端向服务器发出请求后,自身系统或网络产生拥塞时,它会向服务器发出PAUSE帧,以延缓服务器向客户终端的数据传输。

有关交换机的流量控制机制:定义:流量控制用于防止在端口阻塞的情况下丢帧,这种方法是当发送或接收缓冲区开始溢出时通过将阻塞信号发送回源地址实现的。

流量控制可以有效的防止由于网络中瞬间的大量数据对网络带来的冲击,保证用户网络高效而稳定的运行。

两种控制流量的方式:1,在半双工方式下,即半双工背压控制,是通过反向压力(backpressure)即我们通常说的背压计数实现的,这种计数是通过向发送源发送jamming信号使得信息源降低发送速度。

2,在全双工方式下,流量控制一般遵循IEEE 802.3X标准,是由交换机向信息源发送“pause”帧令其暂停发送。

采用流量控制,使传送和接受节点间数据流量得到控制,可以防止数据包丢失。

PAUSE帧格式:MAC控制帧通过其唯一的类型域标识符(0x8808)识别。

pause格式:目的地址:组播地址(01-80-C2-00-00-01)源地址:类型:8808MAC控制操作码:2个字节0x0001 (Pause帧仅是MAC控制帧的一种,对于Pause帧,其在MAC控制帧中的操作码为00-01;)MAC控制操作参数域:2个字节代表要求对方停止的时间。

(MAC控制参数域,包含用于MAC控制相关的参数。

对于Pause帧,此处应填入要求对端设备暂停发送的时间长度,由两个字节 (16位)来表示该长度,每单位长度为物理层芯片发送512位数据的时间。

所以发送一次Pause帧,要求对端设备暂停发送的时间长度为:0-65535×(512/以太网传输速率)。

)保留域。

2、以太网VLAN帧格式一、IEEE 802.1Q 标签帧格式7B 1B 6B 6B 4B 2B 42-1496B 4BVlan tag:4字节,包含2个字节的标签协议标识(TPID)和2个字节的标签控制信息(TCI),TCI 字段具体又分为:priorty、CFI、Vlan ID,具体格式如下所示:2B 3b 1b 12b⏹TPID(标签协议标识):2字节,用于标识帧的类型,其值为0x8100时表示802.1Q/802.1P的帧。

设备可以根据这个字段判断对它接收与否。

⏹TCI(标签控制信息字段):2字节,包括用户优先级(User Priority)、规范格式指示器(Canonical Format Indicator)和VLAN ID。

●User Priority:3个bti,表示帧的优先级,取值范围0~7,值越大优先级越高,用于802.1p。

●CFI,1bit,值为0代表MAC地址是以太帧的MAC,值为1代表MAC地址是FDDI、令牌环网的帧。

●VID(VLAN ID):12bit,表示VLAN的值。

12bit共可以表示4096个VLAN,实际上,由于VID 0和4095被802.1Q协议保留,所以VLAN的最大个数是4094(1-4094)个(据说VID=0 用于识别帧优先级。

4095(FFF)作为预留值)二、IEEE 802.1ad(QinQ)帧格式基本概念IEEE 802.1ad的全称是“Virtual Bridged Local Area Networks Amendment 4: Provider Bridges”,该协议的目标是业务提供商在为客户提供业务时使客户间的服务相互独立,没有相互依赖关系,同时尽量做到业务提供商透明地为客户提供业务。

该标准描述了业务提供商(运营商)如何利用和扩展802.1Q在一个统一的网络中为相互独立的客户提供以太网业务。

QinQ技术〔也称Stacked VLAN 或Double VLAN〕。

标准出自IEEE 802.1ad,其实现将用户私网VLAN Tag封装在公网VLAN Tag中,使报文带着两层VLAN Tag穿越运营商的骨干网络(公网)。

在公网中报文只根据外层VLAN Tag(即公网VLAN Tag)传播,用户的私网VLAN Tag被屏蔽。

带双层VLAN Tag的报文结构,802.1ad的报文格式,基本同前面我们所讲的QinQ报文格式一致,主要的区别就是802.1ad中重新定义了TPID的值和把原来的CFI位修改为DEI (丢弃标识)位,如下图所示:• C-VLAN:Customer VLAN,是用户网络内部使用的VLAN;• S-VLAN:Service VLAN,服务提供商网络中使用的VLAN,该VLAN标识VPN用户或者是用户的业务;• Customer Bridge:Customer网络中的Bridge,只能识别C-VLAN;• Provider Bridge:服务提供商网络中的Bridge,根据处理内容的不同又分为S-VLAN Bridge 和Provider Edge Bridge。

其中S-VLAN Bridge只能识别S-VLAN; Provider Edge Bridge可以同时识别C-VLAN和S-VLAN;•C-VLAN Component:在Bridge内可识别、插入、删除C-VLAN的实体,每个端口一个,对C-VLAN的操作互相独立(两个端口上接收到相同的C-VLAN,但由于属于不同的客户最后的处理结果会不同);• S-VLAN Component:在Bridge内可识别、插入、删除S-VLAN的实体,由于在一个Bridge 内不存在相同的S-VLAN属于不同服务提供商的情况,因此在一个桥内只有一个S-VLAN 的实体。

QinQ技术上完全可以多层堆叠,没有限制,仅受Ethernet报文长度的限制,具有很好的扩充性。

对于QinQ,业界有多种不同的称呼,比如Tag in Tag、VLAN VPN、StackVLAN、SVLANQinQ每增加一层VLAN标签,就可以将所覆盖的用户VLAN数量增加4096倍,两层VLAN标签可以支持4K×4K VLAN,一般来说两层VLAN就可以满足绝大多数需求了。

相对基于MPLS的二层VPN,QinQ具有如下特点:为用户提供了一种更为简单的二层VPN隧道;不需要信令协议的支持,可以通过纯静态配置实现;由于QinQ的实现是基于802.1Q协议中的Trunk端口概念,要求隧道上的设备都必须支持802.1Q协议。

QinQ主要可以解决如下几个问题:缓解日益紧缺的公网VLAN ID资源问题;用户可以规划自己的私网VLAN ID,不会导致和公网VLAN ID冲突;为小型城域网或企业网提供一种较为简单的二层VPN解决方案;QinQ实现过程如图3 所示:图 3 QinQ功能示意图图3中CE交换机上行报文带有内层Vlan标签,报文到达汇聚交换机后,汇聚交换机可以根据不同的交换机端口给报文打上相应的外层标签,这样汇聚交换机每端口可以支持4KVlan 的接入。

QinQ报文封装QinQ的报文封装就是在原有802.1Q报文中的TAG头上再加上一层TAG封装,用来扩展VLAN的范围,如图1所示:图1 QinQ报文封装QinQ的报文转发过程在通过QinQ实现简单的二层VPN过程中报文是按如下方式转发:图2 QinQ报文转发过程图2中在运营商网中使用VLAN20来标识客户A、VLAN30标识客户B,当客户A的报文到达运营商的边缘交换机时,边缘交换机均给客户A的报文打上一个外层标签(VLAN20),然后在VLAN20中转发,不会转发到VLAN30,报文在离开运营商网络时再剥离掉外层的标签,转发到用户A的网络,从而实现一个简单二层VPN功能。

QinQ报文的TPID值可调功能TPID(Tag Protocol Identifier,标签协议标识)是VLAN Tag中的一个字段,IEEE 802.1Q 协议规定该字段的取值为0x8100。

IEEE 802.1Q协议定义的以太网帧的Tag报文结构如下:图3 IEEE 802.1Q报文结构通常在QinQ中设备的内外层标签的TPID值均采用协议规定的0x8100,但是某些厂商的设备将QinQ报文外层Tag的TPID值设置为0x9100或0x9200,为了和这些设备兼容,并提供较高的灵活性,我司支持QinQ功能的交换机基本上均提供了QinQ报文TPID值可调功能(需要注意有的设备整机支持,有的设备是端口支持),能修改QinQ设备的外层标签的TPID值。

相关主题