logo资料库

以太网协议报文格式归纳详解.docx

第1页 / 共30页
第2页 / 共30页
第3页 / 共30页
第4页 / 共30页
第5页 / 共30页
第6页 / 共30页
第7页 / 共30页
第8页 / 共30页
资料共30页,剩余部分请下载后查看
TCP/IP协议族
1、以太帧类型
0、以太网的封装格式(RFC 894)
1、以太网PAUSE帧
2、以太网VLAN帧格式
一、IEEE 802.1Q 标签帧格式
二、IEEE 802.1ad(QinQ)帧格式
基本概念
QinQ报文封装
QinQ的报文转发过程
QinQ报文的TPID值可调功能
灵活QinQ(Selective QinQ)
BPDU Tunnel(L2 Protocol Tunnel)
802.1ad对灵活QinQ的支持
2、IP报文格式
3、
4、UDP协议
5、TCP协议
6、ICMP协议
7、IGMP V1 V2报文格式
8、SNMP系统构架及其协议
Manager-Agent系统结构
SNMP协议和编码格式
1、管理信息库(MIB)
2、MIB对象定义
3、ASN.1语法+ BER(Basic Encoding Rule) 编码方法
4、SNMP协议数据单元 PDU 的格式
附1:SNMP五种协议数据单元 && SNMP报文格式详解
版本
公共体
PDU类型
get/set首部
请求标识符(request ID)
差错状态(error status)
差错索引(error index)
trap首部
企业(enterprise)
trap类型
特定代码(specific-code)
时间戳(timestamp)
变量绑定(variable-bindings)
附2:EtherType :以太网类型字段及值
TCP/IP 协议族
IP/TCP Telnet 和 R login、FTP 以及 SMTP IP/UDP DNS 、TFTP、BOOTP、SNMP ICMP 是 IP 协议的附属协议、IGMP 是 Internet 组管理协议 ARP(地址解析协议)和 RARP(逆地址解析协议)是某些网络接口(如以太网和令牌环 网)使用的特殊协议,用来转换 I P 层和网络接口层使用的地址。 1、 以太帧类型 以太帧有很多种类型。不同类型的帧具有不同的格式和 MTU 值。但在同种物理媒 体上都可同时存在。  以太网第二版[note 3] 或者称之为 Ethernet II 帧,DIX 帧,是最常见的帧类型。并 通常直接被 IP 协议使用。 IEEE 802.2 逻辑链路控制 (LLC) 帧  Novell 的非标准 IEEE 802.3 帧变种。   子网接入协议(SNAP)帧 所有四种以太帧类型都可包含一个 IEEE 802.1Q 选项来确定它属于哪个 VLAN 以及 他的 IEEE 802.1p 优先级(QoS)。这个封装由 IEEE 802.3ac 定义并将帧大小从 4 字 节扩充到 1522 字节(注:不包含 7 个前导字节和 1 个字节的帧开始符以及 12 个帧 间距字节)。 IEEE 802.1Q 标签,如果出现,需要放在源地址字段和以太类型或长度字段的中间。 这个标签的前两个字节是标签协议标识符(TPID)值 0x8100。这与没有标签帧的以太 类型/长度字段的位置相同,所以以太类型 0x8100 就表示包含标签的帧,而实际的 以太类型/长度字段则放在 Q-标签的后面。TPID 后面是两个字节的标签控制信息 (TCI)。(IEEE 802.1p 优先级(QoS)和 VLAN ID)。Q 标签后面就是通常的帧内容。 标 签 协 议 标 识 (TPID)0x8100, 这 与 没 有 标 签 帧的以太类型/ 长 度 字 段 的 位 置相同 802.3 以太网帧结构 前导码 帧开始符 MAC 目标地 MAC 源地 802.1Q 标签 (可 以太类 型或长 负载 10101010 7 个 octet 10101011 1 个 octet 址 6 址 6 octets octets 选) (4 度 2 octets) octets 64–1522 octets 46–1500 octets 冗余 校验 4 帧间 距 12 octets octets 72–1530 octets 16 bits 3 bits 1 bit 12 bits TPID PCP CFI VID
84–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) 源地址: 类型: 8808 MAC 控制操作码:2 个字节 0x0001 (Pause 帧仅是 MAC 控制帧的一种,对于 Pause 帧,其在 MAC 控制帧 中的操作码为 00-01;)
MAC 控制操作参数域:2 个字节 代表要求对方停止的时间。(MAC 控制参数域,包含用于 MAC 控制相关的 参数。 对于 Pause 帧,此处应填入要求对端设备暂停发送的时间长度, 由两个字节 (16 位)来表示该长度,每单位长度为物理层芯片发送 512 所以发送一次 Pause 帧,要求对端设备暂停发送的时间长度为:0-65535× 位数据的时间。 (512/以太网传输速率)。) 保留域。 2、以太网 VLAN 帧格式 一、IEEE 802.1Q 标签帧格式 Preamble 7B SFD DA SA 1B 6B 6B vlan tag 4B Type/Length ……Date…… CRC 4B 42-1496B 2B Vlan tag:4 字节,包含 2 个字节的标签协议标识(TPID)和 2 个字节的标签控制信息(TCI),TCI 字段具体又分为: priorty、CFI、Vlan ID,具体格式如下所示: TPID 2B User Priority 3b CFI 1b VID 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、SVLAN QinQ每增加一层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 功能。
分享到:
收藏