QosTosCosDSCP.docx
- 文档编号:8195898
- 上传时间:2023-01-29
- 格式:DOCX
- 页数:8
- 大小:28.95KB
QosTosCosDSCP.docx
《QosTosCosDSCP.docx》由会员分享,可在线阅读,更多相关《QosTosCosDSCP.docx(8页珍藏版)》请在冰豆网上搜索。
QosTosCosDSCP
由于最近要用到tos,ipprecedence和dscp,找了一些资料,现在明白了tos,ipprecedence和dscp这三者的关系。
网上流传的版本众多,其实都是正确的,只是分别被不同的标准定义,因而让人莫名其妙。
IPPrecedence和ToS都位于IP头中,共占一个字节,8bits,关于这几个字节的作用被不同的标准定义过,分别是RFC791,RFC1122,RFC1349;RFC1349废除了之前两个RFC的定义,现在大多设备都使用RFC1349中的定义,所以对于tos,有如下版本,分别说明如下;
下面是RFC1349中的原话:
InthepasttherehasbeensomeconfusionaboutthesizeoftheTOSfield.RFC-791defineditasathreebitfield,includingbits3-5inthefigureabove.Itincludedbit6intheMBZfield.RFC-1122addedbits6and7totheTOSfield,eliminatingtheMBZfield.This memo redefinestheTOSfieldtobethefourbitsshowninthefigureabove.
一、RFC1349中的TOS、IPprecedence
RFC1349中定义的ToS格式如下:
TypeofService(TOS)
X
X
X
X
X
X
X
0
7
6
5
4
3
2
1
0
可表示如下:
0 1 2 3 4 5 6 7
+------------+-----------+------------+------------+------------+-----------+-----------+------------+
| PRECEDENCE | | |
| 优先权 | TOS | MBZ |
| | | |
+------------+-----------+------------+------------+------------+-----------+-----------+------------+
(MBZ:
mustbezero)
对应的优先级如下:
Bits
Meaning
7-5
IPPrecedence:
111
NetworkControl
110
InternetworkControl
101
Critic/ECP
100
FlashOverride
011
Flash
010
Immediate
001
Priority
000
Routine
4
1=LowDelay;0=NormalDelay
3
1=HighThroughput;0=NormalThroughput
2
1=HighReliability;0=NormalReliability
1
1=Minimisemonetarycost(RFC1349)
0
Mustbe0
整理成表格为:
PROPERTY
CLIENTVIEWSETTING
BITMASK/BINARYVALUE
Precedence
ROUTINE(DEFAULT)
000
PRIORITY
001
IMMEDIATE
010
FLASH
011
FLASHOVERRIDE
100
Delay
Normal
Low
0
1
Throughput
Normal
High
0
1
Reliability
Normal
High
0
1
Cost
Normal
Low
0
1
Congestion
N/A
0
二、RFC791中的TOS、IPprecedence
TheIPTypeofServiceByte:
Bits0-2:
Precedence.
Bit3:
Delay(0=NormalDelay,1=LowDelay)
Bit4:
Throughput(0=NormalThroughput,1=HighThroughput)
Bit5:
Reliability(0=NormalReliability,1=HighReliability)
Bits6-7:
ReservedforFutureUse.
0
1
2
3
4
5
6
7
PRECEDENCE
D
T
R
0
0
ThethreebitPrecedencefieldisfurtherdefinedasfollows:
111-NetworkControl
110-InternetworkControl
101-CRITIC/ECP
100-FlashOverride
011-Flash
010-Immediate
001-Priority
000-Routine
A.DODDD173Precedence/PriorityFiledExplanations(Lowest-Highest):
1.Routine:
(R) "…isusedforallmessagesthatjustifytransmissionbyelectricalmeansunlessthemessagedeliveryisofsufficienturgencytorequirehigherprecedence."
2.Priority:
(P) "…isusedforallmessagesthatrequireexpeditiousactionbytheaddressee(s)and/orfurnishessentialinformationfortheconductofongoingoperations."
3.Immediate(O) "…isreservedformessagesrelatingtosituationsthatgravelyaffectthesecurityofNational/Alliedforcesorpopulace."
4.Flash(Z) "…isreservedforinitialenemycontactmessagesoroperationalcombatmessagesofextremeurgency."
5.FlashOverride(X) "…isreservedformessagesrelatingtotheoutbreakofhostilitiesand/ordetonationofnucleardevices."
6.CRITIC/ECP "…standsfor"CriticalandEmergencyCallProcessing"andshouldonlybeusedforauthorizedemergencycommunications,forexampleintheUnitedStatesGovernmentEmergencyTelecommunicationsService(GETS),theUnitedKingdomGovernmentTelephonePreferenceScheme(GTPS)andsimilargovernmentemergencypreparednessorreactionaryimplementationselsewhere."
三、RFC1122中的TOS、IPprecedence
“IPPRECEDENCE位前3bits(0-2),ToS为后5bits(3-7),无保留位MBZ。
”
The"Type-of-Service"byteintheIPheaderisdividedintotwosections:
thePrecedencefield(high-order3bits),andafieldthatiscustomarilycalled"Type-of-Service"or"TOS"(low-order5bits).Inthisdocument,allreferencesto"TOS"orthe"TOSfield"refertothelow-order5bitsonly.
四、由RFC2474定义的DSCP
DSCP使用0-5bit,最后两位备用,它重新命名了IPv4报头中TOS使用的那1字节和IPv6报头中数据类(TrafficClass)那1字节,新的名字称为DS字段(DifferentiatedServicesField)。
该字段的作用没有变,仍然被QoS工具用来标记数据。
不同的是IPv4使用3比特,而DSCP使用6比特,最低2比特不用。
RFC2474定义最高3比特为级别/类别选择代码(ClassSelectorCodepoints,CS),其意义和IPv4报头中IP优先级的定义是相同的,CS0~CS7的级别相等于IP优先级0~7。
但它并没有定义第3到第5比特的具体含义以及使用规则。
DSCP使用6比特,可以定义64个优先级(0-63)。
AF保证转发(AssuredForwarding,AF)由RFC2597对CS1~CS4进行进一步定义。
它使用第3和第4比特做丢弃优先级标志。
01-低丢弃优先级;10-中丢弃优先级;11-高丢弃优先级。
这样,在同一类数据中,又根据被丢弃的可能性划分出3档。
IPPrecedence与DSCP的转换表如下:
precedenceConversiontable.
DSCPName
DSFieldValue
IPPrecedence
Binary
Decimal
CS0
000000
0
0
CS1
001000
8
1
AF11
001010
10
1
AF12
001100
12
1
AF13
001110
14
1
CS2
010000
16
2
AF21
010010
18
2
AF22
010100
20
2
AF23
010110
22
2
CS3
011000
24
3
AF31
011010
26
3
AF32
011100
28
3
AF33
d>
011110
30
3
CS4
100000
32
4
AF41
100010
34
4
AF42
100100
36
4
AF43
100110
38
4
CS5
101000
40
5
EF
101110
46
5
CS6
110000
48
6
CS7
111000
56
7
==========================================================================================
严格的说,Cos与Tos只是QoS的一种标记机制。
QoS范围太大,涉及到入口数据流的标记和分类及速率限制,网络骨干的拥塞避免和拥塞管理,网络出口的队列调度机制等等。
Cos是二层ISL或者802.1Q数据帧的优先级标记,3个bit,范围0-7;
Tos是三层数据包的服务类型标记,也是3个bit,范围0-7,同样可当作优先级标记,另外5个实际指示Delay,Throughput,Reliability等特性的bit位一般没有使用;现在为了更好的控制数据流分类,使用DSCP(DifferentialServicesCodePoint),扩展了Tos的后三个bit,因此,范围从0-63。
在实施QoS策略时,Cos与ToS或DSCP之间通常要做映射机制。
TOS:
0 1 2 3 4 5 6 7
+-----+-----+-----+-----+-----+-----+-----+-----+
| | | |
| PRECEDENCE | TOS |MBZ|
| | | |
+-----+-----+-----+-----+-----+-----+-----+-----+
服务类型(TOS)字段包括一个3bit的优先权子字段(现在已被忽略),4bit的TOS子字段和1bit未用位但必须置0。
4bit的TOS分别代表:
最小时延、最大吞吐量、最高可靠性和最小费用。
4bit中只能置其中1bit。
如果所有4bit均为0,那么就意味着是一般服务。
RFC1340[ReynoldsandPostel1992]描述了所有的标准应用如何设置这些服务类型。
RFC1349[Almquist1992]对该RFC进行了修正,更为详细地描述了TOS的特性。
DSCP
DSCP由RFC2474定义,它重新命名了IPv4报头中TOS使用的那1字节和IPv6报头中数据类(TrafficClass)那1字节,新的名字称为DS字段(DifferentiatedServicesField)。
该字段的作用没有变,仍然被QoS工具用来标记数据。
不同的是IPv4使用3比特,而DSCP使用6比特,最低2比特不用。
RFC2474定义最高3比特为级别/类别选择代码(ClassSelectorCodepoints,CS),其意义和IPv4报头中IP优先级的定义是相同的,CS0~CS7的级别相等于IP优先级0~7。
但它并没有定义第3到第5比特的具体含义以及使用规则。
DSCP使用6比特,可以定义64个优先级(0-63)。
AF
保证转发(AssuredForwarding,AF)由RFC2597对CS1~CS4进行进一步定义。
它使用第3和第4比特做丢弃优先级标志。
01-低丢弃优先级;10-中丢弃优先级;11-高丢弃优先级。
这样,在同一类数据中,又根据被丢弃的可能性划分出3档。
下表列出了AF服务等级及其对应的DSCP值:
CS1 CS2 CS3 CS4
Lowdrop AF11 AF21 AF31 AF41
001010 010010 011010 100010
Mediumdrop AF12 AF22 AF32 AF42
001100 010100 011100 100100
Highdrop AF13 AF23 AF33 AF43
001110 010110 011110 100110
AF的定义为数据分类提供了方便,比如,运营商可以向用户提供4中服务协约(SLA):
白金,金,银,铜,并为每一种服务的数据分配一定的带宽。
当然,不同服务的收费标准也是不同的。
EF
无阻碍转发(ExpeditedForwarding,EF)由RFC2598定义,DSCP值为46(101110)。
EF服务适用于低丢包率,低延迟,低抖动及保证带宽的业务,如VOIP。
其他
DSCP=000000尽力转发服务等级(EF);
CS=6网间控制(InternetworkControl),DSCP=48(110000)
CS=7网内控制(IntranetworkControl),DSCP=56(111000)
在配置命令中,既可以使用十进制数值,也可以使用二进制数值,还可以使用名称。
例如,28,011100,AF32三个写法意义相同。
RFC791中OS位的IPPrecedence划分成了8个优先级,可以应用于流分类,数值越大表示优先级越高。
0 1 2 3 4 5 6 7
+-----+-----+-----+-----+-----+-----+-----+-----+
| PRECEDENCE | t3|t2 | t1|t0|m
-----+-----+-----+-----+-----+-----+-----+-----+
111-NetworkControl
110-InternetworkControl
101-CRITIC/ECP
100-FlashOverride
011-Flash
010-Immediate
001-Priority
000–Routine
但是在网络中实际部署的时候这8个优先级是远远不够的,于是在RFC2474中又对TOS进行了重新的定义。
把前六位定义成DSCP,后两位保留。
0 1 2 3 4 5 6 7
+---+---+---+---+---+---+---+---+
| DSCP | CU |
+---+---+---+---+---+---+---+---+
DSCP:
differentiatedservicescodepoin
CU:
currentlyunused
但是由于DSCP和IPPRECEDENCE是共存的于是存在了一些兼容性的问题,DSCP的可读性比较差,比如DSCP43我们并不知道对应着IPPRECEDENCE的什么取值,于是就把DSCP进行了进一步的分类。
DSCP总共分成了4类。
ClassSelector(CS) aaa000
ExpeditedForwarding(EF) 101110
AssuredForwarding(AF) aaabb0
Default(BE) 000000
1,默认的DSCP为000000
2,CS的DSCP后三位为0,也就是说CS仍然沿用了IPPRECEDENCE只不过CS定义的DSCP=IPPRECEDENCE*8,比如CS6=6*8=48,CS7=7*8=56
3,EF含义为加速转发,也可以看作为IPPRECEDENCE为5,是一个比较高的优先级,取值为101110(46),但是RFC并没有定义为什么EF的取值为46。
4,AF分为两部分,a部分和b部分,a部分为3bit仍然可以和IPPRECEDENCE对应,b部分为2bit表示丢弃性,可以表示3个丢弃优先级,可以应用于RED或者WRED。
目前a部分由于有三个bit最大取值为8,但是目前只用到了1~4。
为了迅速的和10进制转换,可以用如下方法,先把10进制数值除8得到的整数就是AF值,余数换算成二进制看前两位就是丢弃优先级,比如34/8=4余数为2,2换算成二进制为010,那么换算以后可以知道34代表AF4丢弃优先级为middle的数据报。
如果把CSEFAF和BE做一个排列可以发现一个有趣的现象,如下表。
这个表也就是我们在现实当中应用最多的队列。
根据IPPRECEDENCE的优先级,CS7最高依次排列BE最低。
一般情况下这些队列的用途看这个表的Usage字段
对应的服务IPv4优先级/EXP/802.1P DSCP(二进制)DSCP[dec][Hex]TOS(十六进制) 应用 丢包率
BE 0 0 0 0 Internet
AF1 Green1 001010 10[0x0a] 40[0x28] LeasedLine L
AF1 Green1 001100 12[0x0c] 48[0x30] LeasedLine M
AF1 Green1 001110 14[0x0e]
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- QosTosCosDSCP