摘要:對(duì)于ISP(Internet Server Provider,Internet服務(wù)提供商)而言,對(duì)用戶送入網(wǎng)絡(luò)中的流量進(jìn)行流量控制是必要且十分必須的。對(duì)某些應(yīng)用的流量進(jìn)行控制也是一個(gè)有力控制網(wǎng)絡(luò)狀況的工具,網(wǎng)絡(luò)管理者可以使用CAR(Committed Access Rate,約定訪問速率)來對(duì)流量進(jìn)行控制。本文從幾種擁塞管理機(jī)制入手,針對(duì)ISP邊界提出流控與服務(wù)質(zhì)量保證措施。
關(guān)鍵詞:QoS;流量控制;擁塞管理;邊界路由器
中圖分類號(hào):TP393 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-9599 (2012) 23-0000-02
1 引言
QoS(Quality of Service)被稱為服務(wù)質(zhì)量保證。QoS是網(wǎng)絡(luò)的一種安全機(jī)制,用以解決網(wǎng)絡(luò)延遲和阻塞,并給重要業(yè)務(wù)提供一個(gè)可靠的數(shù)據(jù)傳輸環(huán)境,給予重要業(yè)務(wù)的帶寬和延遲的保證。當(dāng)網(wǎng)絡(luò)帶寬不夠充裕時(shí),QoS可以一定程度上保證網(wǎng)絡(luò)的高效運(yùn)行。
2 QoS服務(wù)模型
2.1 Best-Effort Service盡力而為服務(wù)模型
這種模型是最簡單的服務(wù)模型。應(yīng)用程序在必要時(shí)可以隨時(shí)發(fā)出任意數(shù)量的數(shù)據(jù)而不必考慮任何許可與質(zhì)量,阻塞了就阻塞了,丟棄了就丟棄了,且沒有大小、優(yōu)先之分,哪個(gè)數(shù)據(jù)先到即先被服務(wù)。這種服務(wù)模型也是Internet的缺省服務(wù)模型。
2.2 Differentiated Service區(qū)分服務(wù)模型
區(qū)分服務(wù)模式由集成服務(wù)模型拓展而來。采用IETF的基于RSVP的服務(wù)分類標(biāo)準(zhǔn),拋棄分組流沿途節(jié)點(diǎn)上的資源預(yù)留。根據(jù)每個(gè)報(bào)文指定的QoS來提供特定的服務(wù)。區(qū)分業(yè)務(wù)模型對(duì)網(wǎng)絡(luò)有較好的伸縮性且便于實(shí)現(xiàn),可以用不同的方法來指定報(bào)文的QoS,如IP報(bào)文的優(yōu)先級(jí)位(IP Precedence),報(bào)文的源地址、目的地址、源端口、目的端口、協(xié)議號(hào)等來區(qū)分不同的服務(wù),網(wǎng)絡(luò)通過這些信息對(duì)報(bào)文進(jìn)行分類、流量整形、流量監(jiān)管和隊(duì)列調(diào)度[1]。
3 擁塞管理與擁塞避免
3.1 擁塞管理
QoS使用隊(duì)列技術(shù)能實(shí)現(xiàn)對(duì)數(shù)據(jù)流的擁塞管理。隊(duì)列技術(shù)的原理就是使報(bào)文在路由器中按一定的策略暫時(shí)緩存到隊(duì)列中,然后再按一定的調(diào)度策略把報(bào)文從隊(duì)列中取出,從接口上發(fā)送出去[2]。常用的隊(duì)列技術(shù)有如下幾種:
(1)PQ優(yōu)先級(jí)隊(duì)列。PQ(Priority Queuing)根據(jù)IP報(bào)文的優(yōu)先級(jí)、DSCP(Differentiated Services Code Point,差分服務(wù)代碼點(diǎn))等條件對(duì)報(bào)文進(jìn)行分類,所有報(bào)文最多可分至四類,分別屬于PQ的四個(gè)隊(duì)列之一,然后按報(bào)文的類別將報(bào)文送入相應(yīng)的隊(duì)列。PQ的四個(gè)隊(duì)列分別為高優(yōu)先隊(duì)列、中優(yōu)先隊(duì)列、正常優(yōu)先隊(duì)列和低優(yōu)先隊(duì)列,它們的優(yōu)先級(jí)依次降低。在報(bào)文出隊(duì)列時(shí),PQ首先讓高優(yōu)先隊(duì)列中的報(bào)文先出隊(duì)并發(fā)送,直到高優(yōu)先隊(duì)列中的報(bào)文全部發(fā)送完,然后再發(fā)送中優(yōu)先隊(duì)列中的報(bào)文,同樣直到發(fā)送完后,再正常優(yōu)先隊(duì)列和低優(yōu)先隊(duì)列的數(shù)據(jù)。使屬于較高優(yōu)先級(jí)隊(duì)列的報(bào)文將會(huì)得到優(yōu)先發(fā)送。PQ的實(shí)驗(yàn)配置如下:
Router(config)# priority-list 1 protocol ip high tcp 5500
Router(config)# priority-list 1 prorocol ip low tcp www
Router(config)# priority-list 1 protocol ip medium
Router(config)# priority-list 1 default normal
Router(config)# priority-list 1 queue-limit 20 40 60 80 //配置隊(duì)列數(shù)據(jù)包的深度
Router(config-if)# priority-group 1
查看命令:Router# show queueing priority //查看優(yōu)先級(jí)隊(duì)列配置
(2)CQ自定義隊(duì)列。CQ(Customized Queuing)對(duì)報(bào)文進(jìn)行分類,最多將報(bào)文分成16類,分別屬于CQ的16個(gè)隊(duì)列之一,然后按報(bào)文的類別將報(bào)文送入相應(yīng)的隊(duì)列,實(shí)際上隊(duì)列的號(hào)是0-16一共17個(gè),但是0號(hào)隊(duì)列是超級(jí)優(yōu)先隊(duì)列,路由器總是先把0號(hào)隊(duì)列中的報(bào)文發(fā)送完然后才處理1到16號(hào)隊(duì)列中的數(shù)據(jù)包,所以0號(hào)隊(duì)列一般作為系統(tǒng)隊(duì)列,通常把實(shí)時(shí)性要求高的交互式協(xié)議和鏈路層協(xié)議報(bào)文放到0號(hào)隊(duì)列中。1到16號(hào)隊(duì)列可以按用戶的定義分配它們能占用接口帶寬的比例,在報(bào)文出隊(duì)的時(shí)候,CQ按定義的帶寬比例分別從1到16號(hào)隊(duì)列中取一定量的報(bào)文在接口上發(fā)送出去。CQ的自定義隊(duì)列中1-16號(hào)是一個(gè)輪循的調(diào)度過程。CQ的實(shí)驗(yàn)配置如下:
Router(config)# queue-list 1 protocol ip 0 tcp 5500
Router(config)# queue-list 1 protocol ip 1 tcp www
Router(config)# queue-list 1 protocol ipv6 2
Router(config)# queue-list 1 protocol pppoe 3
Router(config)# queue-list 1 default 4
Router(config)# queue-list 1 queue 1 byte-count 15000 //配置1號(hào)隊(duì)列的尺寸為15K
Router(config-if)# custom-queue-list 1
查看命令:Router# show queueing custom //查看自定義隊(duì)列配置
3.2 擁塞避免
(1)RED隨機(jī)早期檢測(cè)。采用RED(Random Early Detection)時(shí)用戶可以設(shè)定隊(duì)列的閾值(threshold),當(dāng)隊(duì)列的長度小于低閾值時(shí),不丟棄報(bào)文;當(dāng)隊(duì)列的長度在低閾值和高閾值之間時(shí),RED開始隨機(jī)丟棄報(bào)文,隊(duì)列的長度越長,丟棄的概率越高,但有一個(gè)最大丟棄概率;當(dāng)隊(duì)列的長度大于高閾值時(shí),丟棄所有的報(bào)文
(2)WRED加權(quán)隨機(jī)早期檢測(cè)。與RED不同,WRED(Weighted Random Early Detection)生成的隨機(jī)數(shù)是基于優(yōu)先權(quán)的,它引入了IP優(yōu)先集和IP DSCP值來區(qū)分丟棄策略,考慮了高優(yōu)先權(quán)報(bào)文的利益并使其被丟棄的概率相對(duì)較小,可以為不同的IP優(yōu)先級(jí)和IP DSCP值設(shè)定不同的隊(duì)列長度、隊(duì)列閾值、丟棄概率,從而對(duì)不同優(yōu)先級(jí)的報(bào)文提供不同的丟棄特性。
4 流速策略控制
CAR約定訪問速率通常使用在企業(yè)網(wǎng)邊界路由器的接口上,用來限制進(jìn)入或離開該企業(yè)網(wǎng)的流量速率。每個(gè)接口可以配置多個(gè)CAR策略,當(dāng)數(shù)據(jù)包進(jìn)入使用了多個(gè)策略的接口時(shí),路由器將檢查每個(gè)策略,直到數(shù)據(jù)包和某個(gè)策略相匹配;如果沒有找到匹配的策略,默認(rèn)操作是轉(zhuǎn)發(fā)該數(shù)據(jù)包[4]。
CAR的使用限制有以下幾點(diǎn):第一、CAR只能對(duì)IP流量進(jìn)行限速;第二、CAR不支持快速以太網(wǎng)信道(Fast EtherChannel);第三、CAR不支持隧道接口;第四、CAR不支持ISDN PRI接口。針對(duì)整個(gè)接口進(jìn)行限速可使用如下命令行:
Router(config-if)#rate-limit input 1000000 187500 375000 conform-action transmit exceed-action drop
Router(config-if)#rate-limit output 1000000 187500 375000 conform-action transmit exceed-action drop
針對(duì)某個(gè)IP地址或地址段進(jìn)行限速,需要ACL支持:
Router(config-if)#rate-limit input access-group 1 1000000 187500 375000 conform-action transmit exceed-action drop
Router(config-if)#rate-limit output access-group 1 1000000 187500 375000 conform-action transmit exceed-action drop
Router(config)#access-list 1 permit 10.1.1.1
5 結(jié)束語
QoS是對(duì)網(wǎng)絡(luò)進(jìn)行流量控制的有力保障措施,通過隊(duì)列及擁塞管理等手段可以完成流量管理進(jìn)而保證服務(wù)質(zhì)量。
參考文獻(xiàn):
[1]R.Braden,D.Clark.Integrated Services in the Internet Architecture:anOverview[N].http://www.faqs.org/rfcs/rfc1633.htm,June,1994.
[2]王堅(jiān).基于Router OS的網(wǎng)絡(luò)QOS流量管理實(shí)現(xiàn)[J].科學(xué)時(shí)代,2011,11.
計(jì)算機(jī)光盤軟件與應(yīng)用2012年23期