RFC 791中 OS位的IP Precedence劃分成了8個優先級,可以應用於流分類,數值越大表示優先級越高。
+-----+-----+-----+-----+-----+-----+-----+-----+
| PRECEDENCE | t3 | t2 | t1 | t0 |m
-----+-----+-----+-----+-----+-----+-----+-----+
110 - Internetwork Control
101 - CRITIC/ECP
100 - Flash Override
011 - Flash
010 - Immediate
001 - Priority
000 – Routine
+---+---+---+---+---+---+---+---+
| DSCP | CU |
+---+---+---+---+---+---+---+---+
Expedited Forwarding(EF) 101 110
Assured Forwarding(AF) aaa bb0
Default(BE) 000 000
2,CS的DSCP後三位爲0,也就是說CS仍然沿用了IP PRECEDENCE只不過CS定義的DSCP=IP PRECEDENCE*8,比如CS6=6*8=48,CS7=7*8=56
3,EF含義爲加速轉發,也可以看作爲IP PRECEDENCE爲5,是一個比較高的優先級,取值爲101110(46),但是RFC並沒有定義爲什麼EF的取值爲46。
4,AF分爲兩部分,a部分和b部分,a部分爲3 bit仍然可以和IP PRECEDENCE對應,b部分爲2 bit表示丟棄性,可以表示3個丟棄優先級,可以應用於RED或者WRED。目前a部分由於有三個bit最大取值爲8,但是目前只用到了1~4。爲了迅速的和10進制轉換,可以用如下方法,先把10進制數值除8得到的整數就是AF值,餘數換算成二進制看前兩位就是丟棄優先級,比如34/8=4餘數爲2,2換算成二進制爲010,那麼換算以後可以知道34代表AF4丟棄優先級爲middle的數據報。
對應的服務 IPv4優先級/EXP/802.1P DSCP(二進制) DSCP[dec][Hex] TOS(十六進制) 應用 丟包率
BE 0 0 0 0 Internet
AF1 Green 1 001 010 10[0x0a] 40[0x28] Leased Line L
AF1 Green 1 001 100 12[0x0c] 48[0x30] Leased Line M
AF1 Green 1 001 110 14[0x0e] 56[0x38] Leased Line H
AF2 Green 2 010 100 20[0x14] 80[0x50] IPTV VOD M
AF2 Green 2 010 110 22[0x16] 88[0x58] IPTV VOD H
AF3 Green 3 011 100 28[0x1c] 112[0x70] IPTV Broadcast M
AF3 Green 3 011 110 30[0x1e] 120[0x78] IPTV Broadcast H
AF4 Green 4 100 100 36[0x24] 144[0x90] NGN/3G Singaling M
AF4 Green 4 100 110 38[0x26] 152[0x98] NGN/3G Singaling H
CS7(NC) 7 111 000 56[0x38] 224[0xE0] Protocol
1,CS6和CS7默認用於協議報文,比如說OSPF報文,BGP報文等應該優先保障,因爲如果這些報文無法接收的話會引起協議中斷。而且是大多數廠商硬件隊列裏最高優先級的報文。
2,EF用於承載語音的流量,因爲語音要求低延遲,低抖動,低丟包率,是僅次於協議報文的最重要的報文。
3,AF4用來承載語音的信令流量,這裏大家可能會有疑問爲什麼這裏語音要優先於信令呢?其實是這樣的,這裏的信令是電話的呼叫控制,你是可以忍受在接通的時候等待幾秒鐘的,但是絕對不能允許在通話的時候的中斷。所以語音要優先於信令。
4,AF3可以用來承載IPTV的直播流量,直播的時時性很強需要連續性和大吞吐量的保證。
5,AF2可以用來承載VOD的流量,相對於直播VOD要求時時性不是很強,允許有延遲或者緩衝。
6,AF1可以承載不是很重要的專線業務,因爲專線業務相對於IPTV和VOICE來講,IPTV和VOICE是運營商最關鍵的業務,需要最優先來保證。當然面向銀行之類需要鑽石級保證的業務來講,可以安排爲AF4甚至爲EF。
7,最不重要的業務是INTERNET業務,可以放在BE模型來傳輸。
IP Precedence DSCP TOS
0 1 2 3 4 5 6 7
111 - Network Control
但是在網絡中實際部署的時候這8個優先級是遠遠不夠的,於是在RFC 2474中又對TOS進行了重新的定義。把前六位定義成DSCP,後兩位保留。
0 1 2 3 4 5 6 7
DSCP: differentiated services codepoin
CU: currently unused
但是由於DSCP和IP PRECEDENCE是共存的於是存在了一些兼容性的問題,DSCP的可讀性比較差,比如DSCP 43我們並不知道對應着IP PRECEDENCE的什麼取值,於是就把DSCP進行了進一步的分類。DSCP總共分成了4類。
Class Selector(CS) aaa 000
1,默認的DSCP爲000 000
如果把CS EF AF和BE做一個排列可以發現一個有趣的現象,如下表。這個表也就是我們在現實當中應用最多的隊列。根據IP PRECEDENCE的優先級,CS7最高依次排列BE最低。一般情況下這些隊列的用途看這個表的Usage字段
AF2 Green 2 010 010 18[0x12] 72[0x48] IPTV VOD L
AF3 Green 3 011 010 26[0x1a] 104[0x68] IPTV Broadcast L
AF4 Green 4 100 010 34[0x22] 136[0x88] NGN/3G Singaling L
EF 5 101 110 46[0x2E] 184[0xB8] NGN/3G voice
CS6(INC) 6 110 000 48[0x30] 192[0xC0] Protocol
而在硬件隊列裏是如何保證協議報文(CS6和CS7中的數據)優先傳輸呢?在製作路由器的時候一般都是把CS6和CS7中的數據做PQ也就是絕對優先處理,無論下面是否有數據也是要優先來傳遞這兩個隊列中的數據。而其他EF到AF1的隊列中是用WFQ來做的,保證所有隊列都可以得到帶寬來傳輸。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.