802.1P和IP Precedence及DSCP优先级的分类和对应
在IP网络中,IPv4报文中有三种承载QoS优先级标签的方式,分别为基于二层的CoS字段(IEEE802.1p)的优先级、基于IP层的IP优先级字段ToS优先级和基于IP层的DSCP(Differentiated Services Codepoint)字段优先级。每种优先级的定义和对应关系如下:
(1) IEEE802.1p优先级
它是位于二层带标签的以太网帧的CoS字段,和VLAN ID在一起使用,在字节中的位置如下:
P2 P1 P0 CU V11 V10 V9 V8
V7 V6 V5 V4 V3 v2 V2 V1
其中:
IEEE802.1p优先级:3bit(P2-P0)
未用(CU):1bit
VLAN ID:12bit(V11-V0)
IEEE802.1p优先级值有8个(0-7),0优先级最低,7优先级最高。报文分为三种情况:带优先级和VLAN ID的标签报文,其优先级值是自身带的值;只带优先级的标签报文,此时VLAN ID为0,其优先级值是自身带的值;未带标签的报文,一般默认的优先级值为0,也可以进行更改指定新的优先级。
(2) IP优先级
它由IP分组报头中的服务类型(ToS)字节中的3位组成,其在字节中的位置如下:
P2 P1 P0 T3 T2 T1 T0 CU
其中:
IP优先级:3bit(P2-P0)
服务类型(ToS):4bit(T3-T0)
未用(CU):1bit
IP优先级值有8个(0-7),0优先级最低,7优先级最高。在默认情况下,IP优先级6和7用于网络控制通讯使用,不推荐用户使用。ToS字段的服务类型未能在现有的IP网络中普及使用。
IP优先级可用于流分类,将服务分为8类,分别对应优先级0-7,如下:
111-Network Control 网络控制
110 -Internetwork Control 网间控制
101 -Critic 关键
100 - FlashOverride 疾速
011 -Flash 闪速
010 -Immediate快速
001 -Priority 优先
000 -Routine 普通
优先级6和7一般保留给网络控制数据使用,比如路由。
优先级5推荐给语音数据使用。
优先级4由视频会议和视频流使用。
优先级3给语音控制数据使用。
优先级1和2给数据业务使用。
优先级0为缺省标记值。
在标记数据时,既可以使用数值,也可以使用名称(英文名称)。
(3) DSCP优先级
IP优先级将报文分为8个优先级,但是在网络中实际部署的时候这8个优先级是远远不够的,于是在RFC 2474中又对TOS进行了重新的定义。将服务类型的3bit用于优先级(T3 T2 T1)。
所以DSCP优先级由IP分组报头中的6位组成,使用的同样是是ToS字节,但在使用DSCP后,该字节也被称为DSCP字节。其在字节中的位置如下:
DS5 DS4 DS3 DS2 DS1 DS0 CU CU
其中:
DSCP优先级:6bit(DS5-DS0)
未用(CU):2bit
DSCP优先级值有64个(0-63),0优先级最低,63优先级最高。
但是由于DSCP和IP PRECEDENCE是共存的于是存在了一些兼容性的问题,而且DSCP的可读性比较差,比如DSCP 43我们并不知道对应着IP PRECEDENCE的什么取值,于是就把DSCP进行了进一步的分类。目前定义的DSCP总共分成了4类(64个优先级并未用完):
类选择器 Class Selector(CS) aaa 000
加速转发 Expedited Forwarding(EF) 101 110
确保转发 Assured Forwarding(AF) aaa bb0
尽力而为 Default(BE) 000 000
①、默认的DSCP为0
②、CS定义为向后与IP优先级兼容,后三位仍然为0,也就是说CS仍然沿用了IP PRECEDENCE只不过CS定义的DSCP=IP PRECEDENCE*8,所以CS1-7取值依次为8,16,24,32,40,48,56
③、EF取值46(101110)
④、AF分为两部分,a部分和b部分:a部分为3 bit仍然可以和IP PRECEDENCE对应;b部分为2 bit表示丢弃性,01为低,10为中,11为高(00未用),可以应用于RED或者WRED。虽然a部分有3bit,可以将AF分为8类,但是目前只用到了1~4,即AF只有4个等级AF1-AF4,每个等级有三个丢弃优先级,取值为[(10,12,14),(18,20,22),(26,28,30),(34,36,38)]
PS:为了迅速 的和10进制转换,可以用如下方法,先把10进制数值除8得到的整数就是AF值,余数换算成二进制看前两位就是丢弃优先级,比如34/8=4余数为2,2换算成二进制为010,那么换算以后可以知道34代表AF4丢弃优先级为middle的数据报。
(4)IP precedence和DSCP的对应
DSCP |
IP/802.1P |
DSCP二进制 |
DSCP十进制 |
应用 |
丢包率 |
BE |
0 |
000 000 |
0[0x0a] |
Internet |
|
AF1 |
Green 1 |
001 010 |
10[0x0a] |
Leased Line |
L |
AF1 |
Green 1 |
001 100 |
12[0x0e] |
Leased Line |
M |
AF1 |
Green 1 |
001 110 |
14[0x0e] |
Leased Line |
H |
AF2 |
Green 2 |
010 010 |
18[0x12] |
IPTV VOD |
L |
AF2 |
Green 2 |
010 100 |
20[0x12] |
IPTV VOD |
M |
AF2 |
Green 2 |
010 110 |
22[0x12] |
IPTV VOD |
H |
AF3 |
Green 3 |
011 010 |
26[0x1a] |
IPTV Broadcast |
L |
AF3 |
Green 3 |
011 100 |
28[0x1a] |
IPTV Broadcast |
M |
AF3 |
Green 3 |
011 110 |
30[0x1a] |
IPTV Broadcast |
H |
AF4 |
Green 4 |
100 010 |
34[0x22] |
NGN/3G Singaling |
L |
AF4 |
Green 4 |
100 100 |
36[0x22] |
NGN/3G Singaling |
M |
AF4 |
Green 4 |
100 110 |
38[0x22] |
NGN/3G Singaling |
H |
EF |
5 |
101 110 |
46[0x2E] |
NGN/3G voice |
|
CS6(INC) |
6 |
110 000 |
48[0x2E] |
Protocol |
|
CS7(NC) |
7 |
111 000 |
56[0x2E] |
Protocol |
|
注:CS6用于网间控制(Internetwork Control),CS7用于网内控制 (Intranetwork Control),EF用于承载语音流量,AF4用于承载语音信令流量,AF3用于承载IPTV的直播流量,AF2用于承载IPTV VOD流量(相对于直播允许有延迟和缓冲),AF1承载不是很重要的专线业务,BE承载Internet业务