專利名稱:一種基于令牌的互聯(lián)網(wǎng)流量控制方法
技術(shù)領(lǐng)域:
本發(fā)明涉及了分組交換網(wǎng)絡(luò)的流量控制技術(shù),具體涉及一種基于令牌的互聯(lián)網(wǎng)流量控制方法。
背景技術(shù):
目前互聯(lián)網(wǎng)中路由器的流量控制功能較弱,僅通過丟包信號(hào)向用戶終端設(shè)備提供網(wǎng)絡(luò)擁塞信息,進(jìn)入網(wǎng)絡(luò)的流量主要由用戶終端設(shè)備通過傳輸層或應(yīng)用層來自主控制,網(wǎng)絡(luò)缺乏相應(yīng)的監(jiān)控能力。隨著斷點(diǎn)續(xù)傳、多線程下載等網(wǎng)絡(luò)技術(shù)的出現(xiàn),互聯(lián)網(wǎng)的公平性和穩(wěn)定性受到了挑戰(zhàn)。核心無狀態(tài)公平隊(duì)列CSFQ(Core-Stateless Fair Queueing)就是一種增強(qiáng)網(wǎng)絡(luò)流量控制能力的方法,它由網(wǎng)絡(luò)接入路由器測量并標(biāo)記會(huì)話流的發(fā)送速率,通常把源地址和目的地址均相同的數(shù)據(jù)包歸為一個(gè)會(huì)話流;在網(wǎng)絡(luò)中間路由器,根據(jù)輸出接口的擁塞程度自適應(yīng)地調(diào)整公平帶寬參數(shù),根據(jù)公平帶寬與數(shù)據(jù)包所標(biāo)識(shí)的發(fā)送速率的比值得到該數(shù)據(jù)包的接收概率;該方法在網(wǎng)絡(luò)接入路由器,還可以把接入鏈路帶寬等參數(shù)作為權(quán)重,用加權(quán)后的發(fā)送速度標(biāo)記數(shù)據(jù)包,提供有區(qū)別的服務(wù)。這種算法有三個(gè)缺陷無法應(yīng)對Bit-Torrent下載引發(fā)的公平性問題、在穿越不同管理域時(shí)需要重新標(biāo)記會(huì)話速率、權(quán)重信息無法跨越管理域。由于BT下載流的多目的地址性,CSFQ會(huì)話流單源單目的地址的分類方法,無法控制BT業(yè)務(wù)的匯總傳輸量,從而BT業(yè)務(wù)會(huì)降低其它傳統(tǒng)業(yè)務(wù)的服務(wù)質(zhì)量,威脅互聯(lián)網(wǎng)公平性和穩(wěn)定性。由于不同管理域間無法建立完全的信任關(guān)系,需要對其數(shù)據(jù)流重新標(biāo)記,這是該方法實(shí)施的主要性能瓶頸。由于權(quán)重信息無法可信地傳遞給其它管理域,在域間重新測量和標(biāo)記會(huì)話速率時(shí),權(quán)重信息必然丟失,這樣權(quán)重功能僅在一個(gè)管理域內(nèi)部有效,限制了該方法的靈活性。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明致力于提供一種基于令牌的互聯(lián)網(wǎng)流量控制方法。
本發(fā)明的上述目的是通過如下的技術(shù)方案予以實(shí)現(xiàn)的一種基于令牌的互聯(lián)網(wǎng)流量控制方法,包括a1)在數(shù)據(jù)包中增加令牌級(jí)標(biāo)識(shí),用戶終端設(shè)備根據(jù)網(wǎng)絡(luò)擁塞情況設(shè)置待發(fā)送數(shù)據(jù)包的令牌級(jí),數(shù)據(jù)包消耗的令牌數(shù)量與數(shù)據(jù)包的令牌級(jí)成正比;b1)網(wǎng)絡(luò)接入路由器控制終端用戶流入網(wǎng)絡(luò)的令牌速度,當(dāng)數(shù)據(jù)包到達(dá)接入路由器時(shí),接入路由器判斷其流量控制器中的令牌數(shù)量是否滿足該數(shù)據(jù)包的需要,若令牌數(shù)量小于該數(shù)據(jù)包需要消耗的令牌數(shù)量,丟棄該數(shù)據(jù)包,否則,接收該數(shù)據(jù)包,并減少其流量控制器中的令牌數(shù)量;c1)網(wǎng)絡(luò)中間路由器在其輸出接口上有一個(gè)物理擁塞控制器,物理擁塞控制器根據(jù)輸出鏈路的帶寬資源擁塞程度自適應(yīng)地調(diào)整物理擁塞指數(shù),當(dāng)數(shù)據(jù)包到達(dá)網(wǎng)絡(luò)中間路由器時(shí),若數(shù)據(jù)包的令牌級(jí)大于該物理擁塞指數(shù),接收該數(shù)據(jù)包,否則,根據(jù)當(dāng)前物理擁塞指數(shù)和數(shù)據(jù)包的令牌級(jí),計(jì)算得到該數(shù)據(jù)包的公平丟包概率,按照公平丟包概率隨機(jī)丟棄該數(shù)據(jù)包,物理擁塞控制器在輸出數(shù)據(jù)包時(shí),若數(shù)據(jù)包的令牌級(jí)小于物理擁塞指數(shù),設(shè)置數(shù)據(jù)包的令牌級(jí)標(biāo)識(shí)為當(dāng)前物理擁塞指數(shù)。
所述步驟c1之后進(jìn)一步包括
a2)域間互連路由器在其輸出接口上有一個(gè)物理擁塞控制器,物理擁塞控制器實(shí)時(shí)測量輸出鏈路的帶寬資源擁塞程度,自適應(yīng)地調(diào)整其物理擁塞指數(shù),當(dāng)數(shù)據(jù)包到達(dá)域間互連路由器時(shí),若數(shù)據(jù)包的令牌級(jí)大于物理擁塞指數(shù),接收該數(shù)據(jù)包,否則,根據(jù)當(dāng)前物理擁塞指數(shù)和數(shù)據(jù)包的令牌級(jí),計(jì)算得到該數(shù)據(jù)包的公平丟包概率,按照公平丟包概率隨機(jī)丟棄該數(shù)據(jù)包,物理擁塞控制器在輸出數(shù)據(jù)包時(shí),若數(shù)據(jù)包的令牌級(jí)小于物理擁塞指數(shù),設(shè)置數(shù)據(jù)包的令牌級(jí)標(biāo)識(shí)為當(dāng)前物理擁塞指數(shù);b2)域間互連路由器在其輸出接口上還有一個(gè)虛擬擁塞控制器,虛擬擁塞控制器根據(jù)令牌資源的擁塞程度自適應(yīng)地調(diào)整虛擬擁塞指數(shù),并對所有經(jīng)過虛擬擁塞控制器的數(shù)據(jù)包降低其令牌級(jí),降低的級(jí)數(shù)等于虛擬擁塞指數(shù);c2)域間互連路由器在其輸入接口上控制其它管理域流入的令牌速度,當(dāng)數(shù)據(jù)包到達(dá)域間互連路由器的輸入接口時(shí),域間互連路由器判斷其流量控制器中的令牌數(shù)量是否滿足該數(shù)據(jù)包的需要,若令牌數(shù)量小于該數(shù)據(jù)包需要消耗的令牌數(shù)量,丟棄該數(shù)據(jù)包,否則,接收該數(shù)據(jù)包,并減少流量控制器中的令牌數(shù)量。
數(shù)據(jù)包消耗的令牌數(shù)量等于數(shù)據(jù)包的令牌級(jí)與數(shù)據(jù)包長度的乘積。
物理擁塞控制器實(shí)時(shí)測量其輸出速度,由輸出速度除以鏈路傳輸帶寬就得到物理擁塞更新因子;物理擁塞指數(shù)采用乘性迭代的逼近方式,新的物理擁塞指數(shù)等于當(dāng)前物理擁塞指數(shù)乘以物理擁塞更新因子。
虛擬擁塞控制器實(shí)時(shí)測量其令牌輸出速度和數(shù)據(jù)包輸出速度,由令牌輸出速度減去令牌允許輸出速度,再除以數(shù)據(jù)包輸出速度就得到虛擬擁塞更新增量;虛擬擁塞指數(shù)采用加性迭代的逼近方式,新的虛擬擁塞指數(shù)等于當(dāng)前虛擬擁塞指數(shù)加上虛擬擁塞更新增量。
物理擁塞控制器的公平丟包概率等于其當(dāng)前物理擁塞指數(shù)減去數(shù)據(jù)包的令牌級(jí),乘以1.1,除以當(dāng)前物理擁塞指數(shù)。
在數(shù)據(jù)包中,除增加令牌級(jí)標(biāo)識(shí)外,還增加了路徑令牌級(jí)標(biāo)識(shí)、已確認(rèn)降低級(jí)標(biāo)識(shí)、令牌降低級(jí)標(biāo)識(shí)、反向令牌級(jí)標(biāo)識(shí)、反向降低級(jí)標(biāo)識(shí)和前期令牌級(jí)標(biāo)識(shí),其中路徑令牌級(jí)標(biāo)識(shí)用于收集傳輸路徑的最高物理擁塞指數(shù),已確認(rèn)降低級(jí)標(biāo)識(shí)用于存儲(chǔ)虛擬擁塞控制器對令牌級(jí)的降低級(jí)數(shù)中已確認(rèn)的部分,令牌降低級(jí)標(biāo)識(shí)用于存儲(chǔ)虛擬擁塞控制器對令牌級(jí)的降低級(jí)數(shù)中待確認(rèn)的部分,反向令牌級(jí)標(biāo)識(shí)用于向通信對端反饋其前向傳輸路徑的最高物理擁塞指數(shù),反向降低級(jí)標(biāo)識(shí)用于向通信對端反饋其前向傳輸路徑上的所有虛擬擁塞控制器對令牌級(jí)的降低級(jí)數(shù)中已確認(rèn)的部分,前期令牌級(jí)標(biāo)識(shí)用于存儲(chǔ)發(fā)送方已知的前向傳輸路徑的最高物理擁塞指數(shù)。
用戶終端從通信對端返回?cái)?shù)據(jù)包中提取反向令牌級(jí)和反向降低級(jí),用反向令牌級(jí)和反向降低級(jí)之和,標(biāo)識(shí)待發(fā)送數(shù)據(jù)包的令牌級(jí)。用戶終端根據(jù)收到數(shù)據(jù)包中的路徑令牌級(jí)、已確認(rèn)降低級(jí)和反向令牌級(jí)的值,分別設(shè)置發(fā)送數(shù)據(jù)包的反向令牌級(jí)、反向降低級(jí)和前期令牌級(jí);設(shè)置待發(fā)送數(shù)據(jù)包的路徑令牌級(jí)為其取值范圍內(nèi)的最小值;設(shè)置待發(fā)送數(shù)據(jù)包的令牌降低級(jí)和已確認(rèn)降低級(jí)為零。
物理擁塞控制器在輸出數(shù)據(jù)包時(shí),不但更新令牌級(jí)標(biāo)識(shí),還要更新路徑令牌級(jí)、令牌降低級(jí)和已確認(rèn)降低級(jí)標(biāo)識(shí),以便向終端設(shè)備傳遞網(wǎng)絡(luò)擁塞信息;路徑令牌級(jí)的更新方法是若物理擁塞指數(shù)大于路徑令牌級(jí),就更新路徑令牌級(jí)為當(dāng)前物理擁塞指數(shù);令牌降低級(jí)的更新方法是將令牌降低級(jí)減少max(0,令牌降低級(jí)-max(0,前期令牌級(jí)-當(dāng)前物理擁塞指數(shù)));已確認(rèn)降低級(jí)的更新方法是將已確認(rèn)降低級(jí)增加max(0,令牌降低級(jí)-max(0,前期令牌級(jí)-當(dāng)前物理擁塞指數(shù)));虛擬擁塞控制器在輸出數(shù)據(jù)包時(shí),不但更新令牌級(jí)標(biāo)識(shí),還要增加令牌降低級(jí)標(biāo)識(shí),增加的數(shù)量等于虛擬擁塞指數(shù)。
本發(fā)明具有如下技術(shù)效果1、在本系統(tǒng)中,鏈路越擁塞,要求通過該鏈路的數(shù)據(jù)包令牌級(jí)也越高,消耗的令牌資源也越大,這樣,對于接入令牌資源受限的情況,能夠通過的流量就越小,這樣就實(shí)現(xiàn)了網(wǎng)絡(luò)流量的接入控制功能,能有效減少網(wǎng)絡(luò)內(nèi)部的丟包數(shù)量,降低了網(wǎng)絡(luò)流量振蕩。
2、在本系統(tǒng)中,對于一個(gè)接入令牌資源固定的會(huì)話流,其數(shù)據(jù)包的令牌級(jí)存在一個(gè)唯一的最優(yōu)點(diǎn),以該令牌級(jí)傳輸數(shù)據(jù)包能獲得最高的網(wǎng)絡(luò)傳輸速度,前面算法計(jì)算得到的令牌級(jí)就正好等于這個(gè)最優(yōu)點(diǎn)。以UDP業(yè)務(wù)為例,在發(fā)送數(shù)據(jù)包時(shí)設(shè)置低于最優(yōu)點(diǎn)的令牌級(jí),雖然可以增大其數(shù)據(jù)包進(jìn)入網(wǎng)絡(luò)的速度,但其丟包率的增幅更大,反而會(huì)降低其吞吐量。這樣的約束機(jī)制,有助于避免無效的數(shù)據(jù)傳輸。
3、在本系統(tǒng)中,在網(wǎng)絡(luò)接入路由器和域間互連路由器,只需要在輸入接口配置一個(gè)簡單的令牌桶控制器就可以有效控制用戶濫用網(wǎng)絡(luò)資源的行為,而不需要監(jiān)視每個(gè)會(huì)話流的行為特性,計(jì)算復(fù)雜度取得了很大降低。
4、在本系統(tǒng)中,在網(wǎng)絡(luò)中間路由器和域間互連路由器,只需要控制輸出接口的物理擁塞指數(shù)和虛擬擁塞指數(shù),就可以實(shí)現(xiàn)流量控制和資源公平分配的功能,而不需要監(jiān)視每個(gè)會(huì)話流的行為特性。
5、本系統(tǒng)具有BT業(yè)務(wù)公平性,在本系統(tǒng)中BT業(yè)務(wù)的使用者可以高效地利用網(wǎng)絡(luò)的空閑帶寬資源,但不會(huì)影響其他用戶的服務(wù)質(zhì)量。
6、在本系統(tǒng)中,固定的字節(jié)流量通過擁塞程度高的鏈路,會(huì)消耗更多的令牌資源。以令牌資源作為計(jì)費(fèi)的依據(jù),就可以實(shí)現(xiàn)基于網(wǎng)絡(luò)擁塞程度的、靈活先進(jìn)的計(jì)費(fèi)模式。
圖1為本發(fā)明中令牌級(jí)擴(kuò)展頭的內(nèi)部結(jié)構(gòu)圖;圖2為本發(fā)明在IPv6網(wǎng)絡(luò)環(huán)境的設(shè)備連接圖;圖3為本發(fā)明在IPv6網(wǎng)絡(luò)環(huán)境的用戶終端設(shè)備內(nèi)部結(jié)構(gòu)圖;圖4為本發(fā)明在IPv6網(wǎng)絡(luò)環(huán)境的用戶出口路由器內(nèi)部結(jié)構(gòu)圖;圖5為本發(fā)明在IPv6網(wǎng)絡(luò)環(huán)境的網(wǎng)絡(luò)接入路由器內(nèi)部結(jié)構(gòu)圖;圖6為本發(fā)明在IPv6網(wǎng)絡(luò)環(huán)境的網(wǎng)絡(luò)中間路由器內(nèi)部結(jié)構(gòu)圖;圖7為本發(fā)明在IPv6網(wǎng)絡(luò)環(huán)境的域間互連路由器內(nèi)部結(jié)構(gòu)圖;具體實(shí)施方式
下面結(jié)合附圖和具體實(shí)施例對本發(fā)明進(jìn)行詳細(xì)說明。
本發(fā)明在以IPv6網(wǎng)絡(luò)環(huán)境為基礎(chǔ),來實(shí)現(xiàn)本流量控制系統(tǒng)。
協(xié)議擴(kuò)展為了滿足流量控制的要求,需要擴(kuò)展現(xiàn)有IPv6標(biāo)準(zhǔn),在IP包頭中增加一個(gè)令牌級(jí)擴(kuò)展頭,其值暫定為101,對應(yīng)的關(guān)鍵字為TKLV。如圖1所示,該擴(kuò)展頭的格式如下第一個(gè)八比特組為下一個(gè)包頭的類型;第二個(gè)八比特組為擴(kuò)展頭長度,指明令牌級(jí)擴(kuò)展頭的長度,以八比特組的數(shù)量來表示,并且不包括最開始的8個(gè)八比特組;其值為1;第三個(gè)八比特組為令牌類型tktype,其值為1,表明當(dāng)前版本為1,其它值保留;第四個(gè)八比特組為數(shù)據(jù)長度tklen,其值為7,表明當(dāng)前版本的有效信息字節(jié)的長度為7;第五個(gè)八比特組為令牌級(jí)tklevel,取值范圍暫定為[10,100]的整數(shù),其它值保留,其值在經(jīng)過網(wǎng)絡(luò)中間路由器和域間互連路由器時(shí),可被路由器升高或降低;第六個(gè)八比特組為路徑令牌級(jí)tkpath,取值范圍為[10,100]的整數(shù),其它值保留,其發(fā)送時(shí)的初始值為10,該值用于存儲(chǔ)數(shù)據(jù)包傳輸路徑中的最高物理擁塞指數(shù);第七個(gè)八比特組為令牌降低級(jí)tkdown,取值范圍為
的整數(shù),其它值保留,它是用于匯總數(shù)據(jù)包傳輸路徑中虛擬擁塞控制器對令牌級(jí)還未確認(rèn)的降低量;第八個(gè)八比特組為已確認(rèn)降低級(jí)tkdowned,取值范圍為
的整數(shù),其它值保留,它是用于匯總數(shù)據(jù)包傳輸路徑中虛擬擁塞控制器對令牌級(jí)已確認(rèn)的降低量;第九個(gè)八比特組為前期令牌級(jí)tkprev,取值范圍為[10,100]的整數(shù),其它值保留,其值為上一次收集到的傳輸路徑中最高物理擁塞指數(shù),該值在傳輸過程中不變;第十個(gè)八比特組為反向令牌級(jí)tkback,取值范圍為[10,100]的整數(shù),其它值保留,它存儲(chǔ)的是從對端收到數(shù)據(jù)包中的路徑令牌級(jí)字段,該值在傳輸過程中不變;第十一個(gè)八比特組為反向降低級(jí)tkbackdown,取值范圍為
的整數(shù),其它值保留,它存儲(chǔ)的是從對端收到數(shù)據(jù)包中的已確認(rèn)降低級(jí)字段,該值在傳輸過程中不變。
第十二、十三、十四、十五和十六個(gè)八比特組為填充字節(jié)。
圖2為IPv6網(wǎng)絡(luò)環(huán)境的結(jié)構(gòu),流量控制實(shí)體分布在用戶終端設(shè)備、用戶出口路由器、網(wǎng)絡(luò)接入路由器、網(wǎng)絡(luò)中間路由器和域間互連路由器上。
用戶終端設(shè)備如圖3所示,在用戶終端的IP層增加了網(wǎng)絡(luò)擁塞特性資料庫,每個(gè)擁塞特性由四元組構(gòu)成(host_tkpath,host_tkdowned,host_tkback,host_tkbackdown),每個(gè)源地址和目的地址對存在一個(gè)唯一的擁塞特性與之對應(yīng)。網(wǎng)絡(luò)擁塞特性資料庫具有從收到的數(shù)據(jù)包提取擁塞信息,對發(fā)送的數(shù)據(jù)包設(shè)置令牌級(jí)標(biāo)識(shí)和擁塞信息的功能。當(dāng)收到對端的數(shù)據(jù)包時(shí),擁塞特性四元組的更新算法是host_tkpath元素設(shè)置為數(shù)據(jù)包中的路徑令牌級(jí),host_tkdowned元素設(shè)置為數(shù)據(jù)包中的已確認(rèn)降低級(jí),host_tkback元素設(shè)置為數(shù)據(jù)包中的反向令牌級(jí),host_tkbackdown元素設(shè)置為數(shù)據(jù)包中的反向降低級(jí),更新算法用等式表示如下host_tkpath=tkpath;host_tkdowned=tkdowned;host_tkback=tkback;host_tkbackdown=tkbackdown;當(dāng)向通信對端發(fā)送數(shù)據(jù)包時(shí),設(shè)置數(shù)據(jù)包中令牌級(jí)擴(kuò)展頭的算法是令牌級(jí)設(shè)置為元素host_tkback與host_tkbackdown的和,前期令牌級(jí)設(shè)置為元素host_tkback,反向令牌級(jí)設(shè)置為元素host_tkpath,反向降低級(jí)設(shè)置為元素host_tkdowned,路徑令牌級(jí)、令牌降低級(jí)和已確認(rèn)降低級(jí)分別設(shè)置為10、0和0,該算法的等式表示如下tklevel=host_tkback+host_tkbackdown;
tkpath=10;tkdown=0;tkdowned=0;tkprev=host_tkback;tkback=host_tkpath;tkbackdown=host_tkdowned;用戶出口路由器如圖4所示,用戶出口路由器的輸出接口由基于啟動(dòng)勢的延遲抖動(dòng)受限公平隊(duì)列SPJBQ(Start Potential-based Jitter Bounded Queueing)和令牌桶整形器構(gòu)成。SPJBQ把從每個(gè)用戶終端收到的數(shù)據(jù)包歸為一個(gè)會(huì)話,公平分配用戶出口的令牌資源。令牌桶整形器的工作過程是當(dāng)整形器中的令牌資源足夠發(fā)送下一個(gè)數(shù)據(jù)包時(shí),它就從SPJBQ的輸出隊(duì)列中取出一個(gè)數(shù)據(jù)包,發(fā)送到傳輸鏈路上。該令牌桶整形器和網(wǎng)絡(luò)接入路由器的令牌桶控制器配置相同的令牌桶深度和令牌到達(dá)速度,保證輸出數(shù)據(jù)流消耗令牌的速度遵循與接入服務(wù)提供商簽訂的合約規(guī)范。
網(wǎng)絡(luò)接入路由器如圖5所示,在網(wǎng)絡(luò)接入路由器,基于令牌的令牌桶控制器根據(jù)用戶合約規(guī)定來配置令牌桶深度D和令牌生成速率S。該令牌桶控制器的控制過程是這樣的,當(dāng)有數(shù)據(jù)包到達(dá)時(shí),若令牌桶控制器中的令牌數(shù)量不足以滿足該數(shù)據(jù)包的要求時(shí),丟棄該數(shù)據(jù)包;否則,減少令牌桶控制器中的令牌數(shù)量,接收該數(shù)據(jù)包,放置到輸出接口中。
網(wǎng)絡(luò)中間路由器網(wǎng)絡(luò)中間路由器只與域內(nèi)信任的路由器相連。如圖6所示,在網(wǎng)絡(luò)中間路由器,基于令牌的流量控制器由位于輸出接口的物理擁塞控制器和后繼的尾丟棄隊(duì)列構(gòu)成。物理擁塞控制器有一個(gè)重要的工作參數(shù)-物理擁塞指數(shù)α,其取值范圍為[10,100]的整數(shù)。物理擁塞控制器有三個(gè)功能,自適應(yīng)地調(diào)整物理擁塞指數(shù)α、按照公平丟包概率隨機(jī)丟棄數(shù)據(jù)包、更新數(shù)據(jù)包的令牌級(jí)和其它擁塞標(biāo)識(shí)。在網(wǎng)絡(luò)中間路由器,設(shè)備輸出端口的鏈路速率為C,采用指數(shù)平滑方法測量得到物理擁塞控制器的輸出速度為ν,ν>C的情況稱為物理擁塞,ν<C的情況稱為物理空閑。輸出速度ν與鏈路速率C的比值,反映了輸出接口的帶寬資源擁塞程度,該比值越大,輸出接口的帶寬資源擁塞程度越高。物理擁塞指數(shù)α的自適應(yīng)算法是每經(jīng)歷一段持續(xù)時(shí)間的物理擁塞,物理擁塞指數(shù)α就增加,每經(jīng)歷一段持續(xù)時(shí)間的物理空閑,物理擁塞指數(shù)α就減少。物理擁塞指數(shù)α的更新值為物理擁塞指數(shù)α的當(dāng)前值乘以輸出速度ν,再除以鏈路速率C。在物理擁塞控制器,根據(jù)數(shù)據(jù)包的令牌級(jí)γ和當(dāng)前出口的物理擁塞指數(shù)α按照公平丟包概率隨機(jī)丟棄數(shù)據(jù)包,其算法是這樣的。若令牌級(jí)γ大于或等于物理擁塞指數(shù)α,就接收該數(shù)據(jù)包;若令牌級(jí)γ小于物理擁塞指數(shù)α,則該數(shù)據(jù)包的公平丟包概率ρ為1.1*(α-γ)/α,物理擁塞控制器以公平丟包概率ρ隨機(jī)丟棄該數(shù)據(jù)包,以概率1-ρ接收該數(shù)據(jù)包。物理擁塞控制器在輸出數(shù)據(jù)包時(shí),令牌級(jí)擴(kuò)展頭的更新算法是若數(shù)據(jù)包的令牌級(jí)標(biāo)識(shí)小于物理擁塞指數(shù),則設(shè)置其令牌級(jí)標(biāo)識(shí)為物理擁塞指數(shù)。若數(shù)據(jù)包的路徑令牌級(jí)標(biāo)識(shí)小于物理擁塞指數(shù),則設(shè)置其路徑令牌級(jí)標(biāo)識(shí)為物理擁塞指數(shù)。數(shù)據(jù)包的令牌降低級(jí)標(biāo)識(shí)減少max(0,tkdown-max(0,tkprev-α)),數(shù)據(jù)包的已確認(rèn)降低級(jí)標(biāo)識(shí)增加max(0,tkdown-max(0,tkprev-α)),用等式表示如下
若tklevel<α,則tklevel=α;若tkpath<α,則tkpath=α;tkdowned+=max(0,tkdown-max(0,tkprev-α));tkdown-=max(0,tkdown-max(0,tkprev-α));域間互連路由器域間互連路由器成對出現(xiàn),如圖7所示,每個(gè)域間接口由輸出接口和輸入接口兩個(gè)功能實(shí)體構(gòu)成的。在輸入接口,令牌桶控制器根據(jù)相鄰運(yùn)營商達(dá)成的協(xié)議來配置令牌桶深度D和令牌生成速率S。該令牌桶控制器的控制過程是這樣的,當(dāng)有數(shù)據(jù)包到達(dá)時(shí),若令牌桶控制器中的令牌數(shù)量不足以滿足該數(shù)據(jù)包的要求時(shí),丟棄該數(shù)據(jù)包;否則,減少令牌桶控制器中的令牌數(shù)量,接收該數(shù)據(jù)包。
在輸出接口,基于令牌的流量控制器由物理擁塞控制器、虛擬擁塞控制器和令牌桶整形器順序連接而成。其中物理擁塞控制器的工作過程與網(wǎng)絡(luò)中間路由器相同。
虛擬擁塞控制器有一個(gè)重要的工作參數(shù)-虛擬擁塞指數(shù)κ,其取值范圍為
的整數(shù)。虛擬擁塞控制器有兩個(gè)功能,自適應(yīng)地調(diào)整虛擬擁塞指數(shù)κ和降低輸出數(shù)據(jù)包的令牌級(jí)。
域間互連互通合約所規(guī)定的域間令牌允許輸出速度為K,虛擬擁塞控制器采用指數(shù)平滑方法測量得到其令牌輸出速度μ和數(shù)據(jù)包的輸出速度ν。μ>K的情況稱為虛擬擁塞,μ<K的情況稱為虛擬空閑。令牌輸出速度μ與域間令牌允許輸出速度K的比值,反映了域間輸出接口的令牌資源擁塞程度,該比值越大,輸出接口的令牌資源擁塞程度也越高。虛擬擁塞指數(shù)的自適應(yīng)算法是每經(jīng)歷一段持續(xù)時(shí)間的虛擬擁塞,虛擬擁塞指數(shù)就增加,每經(jīng)歷一段持續(xù)時(shí)間的虛擬空閑,虛擬擁塞指數(shù)就減少。虛擬擁塞指數(shù)的更新算法是這樣的由令牌輸出速度μ減去域間令牌允許輸出速度K,除以數(shù)據(jù)包的輸出速度ν,就得到虛擬擁塞更新增量δ。虛擬擁塞指數(shù)κ的更新值等于虛擬擁塞指數(shù)κ的當(dāng)前值加上虛擬擁塞更新增量δ。
數(shù)據(jù)包經(jīng)過虛擬擁塞控制器的更新算法是對數(shù)據(jù)包的令牌級(jí)標(biāo)識(shí)減少κ,令牌降低級(jí)標(biāo)識(shí)增加κ。該算法的等式表述如下tklevel-=κ;tkdown+=κ;這樣對于虛擬擁塞控制器,一個(gè)長度為L,令牌級(jí)標(biāo)識(shí)為γ的輸入數(shù)據(jù)包經(jīng)過其后的令牌桶整形器時(shí)消耗的令牌數(shù)量為L*(γ-κ)。
令牌桶整形器的工作過程是當(dāng)整形器中的令牌資源足夠發(fā)送下一個(gè)數(shù)據(jù)包時(shí),它就從虛擬擁塞控制器的輸出隊(duì)列中取出一個(gè)數(shù)據(jù)包,發(fā)送到傳輸鏈路上。
綜上所述,本發(fā)明公開了一種基于令牌的互聯(lián)網(wǎng)流量控制方法。上面描述的應(yīng)用場景和實(shí)施例,并非用于限定本發(fā)明,任何本領(lǐng)域技術(shù)人員,在不脫離本發(fā)明的精神和范圍內(nèi),可做各種的更動(dòng)和潤飾,因此本發(fā)明的保護(hù)范圍視權(quán)利要求范圍所界定。
權(quán)利要求
1.一種基于令牌的互聯(lián)網(wǎng)流量控制方法,其步驟包括a1)在數(shù)據(jù)包中增加令牌級(jí)標(biāo)識(shí),用戶終端設(shè)備根據(jù)網(wǎng)絡(luò)擁塞情況設(shè)置待發(fā)送數(shù)據(jù)包的令牌級(jí),數(shù)據(jù)包消耗的令牌數(shù)量與數(shù)據(jù)包的令牌級(jí)成正比;b1)網(wǎng)絡(luò)接入路由器控制終端用戶流入網(wǎng)絡(luò)的令牌速度,當(dāng)數(shù)據(jù)包到達(dá)接入路由器時(shí),接入路由器判斷其流量控制器中的令牌數(shù)量是否滿足該數(shù)據(jù)包的需要,若令牌數(shù)量小于該數(shù)據(jù)包需要消耗的令牌數(shù)量,丟棄該數(shù)據(jù)包,否則,接收該數(shù)據(jù)包,并減少流量控制器中的令牌數(shù)量;c1)網(wǎng)絡(luò)中間路由器在其輸出接口上有一個(gè)物理擁塞控制器,物理擁塞控制器根據(jù)輸出接口的帶寬資源擁塞程度自適應(yīng)地調(diào)整物理擁塞指數(shù),當(dāng)數(shù)據(jù)包到達(dá)物理擁塞控制器時(shí),若數(shù)據(jù)包的令牌級(jí)大于物理擁塞指數(shù),接收該數(shù)據(jù)包,否則,根據(jù)當(dāng)前物理擁塞指數(shù)和數(shù)據(jù)包的令牌級(jí),計(jì)算得到該數(shù)據(jù)包的公平丟包概率,按照公平丟包概率隨機(jī)丟棄該數(shù)據(jù)包,物理擁塞控制器在輸出數(shù)據(jù)包時(shí),若數(shù)據(jù)包的令牌級(jí)小于物理擁塞指數(shù),設(shè)置數(shù)據(jù)包的令牌級(jí)標(biāo)識(shí)為當(dāng)前物理擁塞指數(shù)。
2.如權(quán)利要求1所述的基于令牌的互聯(lián)網(wǎng)流量控制方法,其特征在于所述步驟c1之后進(jìn)一步包括a2)域間互連路由器在其輸出接口上有一個(gè)物理擁塞控制器,物理擁塞控制器實(shí)時(shí)測量輸出接口的帶寬資源擁塞程度,自適應(yīng)地調(diào)整其物理擁塞指數(shù),當(dāng)數(shù)據(jù)包到達(dá)物理擁塞控制器時(shí),若數(shù)據(jù)包的令牌級(jí)大于物理擁塞指數(shù),接收該數(shù)據(jù)包,否則,根據(jù)當(dāng)前物理擁塞指數(shù)和數(shù)據(jù)包的令牌級(jí),計(jì)算得到該數(shù)據(jù)包的公平丟包概率,按照公平丟包概率隨機(jī)丟棄該數(shù)據(jù)包,物理擁塞控制器在輸出數(shù)據(jù)包時(shí),若數(shù)據(jù)包的令牌級(jí)小于物理擁塞指數(shù),設(shè)置數(shù)據(jù)包的令牌級(jí)標(biāo)識(shí)為當(dāng)前物理擁塞指數(shù);b2)域間互連路由器在其輸出接口上還有一個(gè)虛擬擁塞控制器,虛擬擁塞控制器根據(jù)令牌資源的擁塞程度自適應(yīng)地調(diào)整虛擬擁塞指數(shù),并對所有經(jīng)過虛擬擁塞控制器的數(shù)據(jù)包降低其令牌級(jí),降低的級(jí)數(shù)等于虛擬擁塞指數(shù);c2)域間互連路由器在其輸入接口上控制其它管理域流入的令牌速度,當(dāng)數(shù)據(jù)包到達(dá)域間互連路由器的輸入接口時(shí),域間互連路由器判斷其流量控制器中的令牌數(shù)量是否滿足該數(shù)據(jù)包的需要,若令牌數(shù)量小于該數(shù)據(jù)包需要消耗的令牌數(shù)量,丟棄該數(shù)據(jù)包,否則,接收該數(shù)據(jù)包,并減少流量控制器中的令牌數(shù)量。
3.如權(quán)利要求1或2所述的基于令牌的互聯(lián)網(wǎng)流量控制方法,其特征在于數(shù)據(jù)包消耗的令牌數(shù)量等于數(shù)據(jù)包的令牌級(jí)與數(shù)據(jù)包長度的乘積。
4.如權(quán)利要求1或2所述的基于令牌的互聯(lián)網(wǎng)流量控制方法,其特征在于物理擁塞控制器實(shí)時(shí)測量其輸出速度,由輸出速度除以鏈路傳輸帶寬就得到物理擁塞更新因子;物理擁塞指數(shù)采用乘性迭代的逼近方式,新的物理擁塞指數(shù)等于當(dāng)前物理擁塞指數(shù)乘以物理擁塞更新因子。
5.如權(quán)利要求2所述的基于令牌的互聯(lián)網(wǎng)流量控制方法,其特征在于虛擬擁塞控制器實(shí)時(shí)測量其令牌輸出速度和數(shù)據(jù)包輸出速度,由令牌輸出速度減去令牌允許輸出速度,再除以數(shù)據(jù)包輸出速度就得到虛擬擁塞更新增量;虛擬擁塞指數(shù)采用加性迭代的逼近方式,新的虛擬擁塞指數(shù)等于當(dāng)前虛擬擁塞指數(shù)加上虛擬擁塞更新增量。
6.如權(quán)利要求1或2所述的基于令牌的互聯(lián)網(wǎng)流量控制方法,其特征在于物理擁塞控制器的公平丟包概率等于其當(dāng)前物理擁塞指數(shù)減去數(shù)據(jù)包的令牌級(jí),乘以1.1,除以當(dāng)前物理擁塞指數(shù)。
7.如權(quán)利要求2所述的基于令牌的互聯(lián)網(wǎng)流量控制方法,其特征在于在數(shù)據(jù)包中,除增加令牌級(jí)標(biāo)識(shí)外,還增加了路徑令牌級(jí)標(biāo)識(shí)、已確認(rèn)降低級(jí)標(biāo)識(shí)、令牌降低級(jí)標(biāo)識(shí)、反向令牌級(jí)標(biāo)識(shí)、反向降低級(jí)標(biāo)識(shí)和前期令牌級(jí)標(biāo)識(shí),其中路徑令牌級(jí)標(biāo)識(shí)用于收集傳輸路徑的最高物理擁塞指數(shù),已確認(rèn)降低級(jí)標(biāo)識(shí)用于存儲(chǔ)虛擬擁塞控制器對令牌級(jí)的降低級(jí)數(shù)中已確認(rèn)的部分,令牌降低級(jí)標(biāo)識(shí)用于存儲(chǔ)虛擬擁塞控制器對令牌級(jí)的降低級(jí)數(shù)中待確認(rèn)的部分,反向令牌級(jí)標(biāo)識(shí)用于向通信對端反饋其前向傳輸路徑的最高物理擁塞指數(shù),反向降低級(jí)標(biāo)識(shí)用于向通信對端反饋其前向傳輸路徑上的所有虛擬擁塞控制器對令牌級(jí)的降低級(jí)數(shù)中已確認(rèn)的部分,前期令牌級(jí)標(biāo)識(shí)用于存儲(chǔ)發(fā)送方已知的前向傳輸路徑的最高物理擁塞指數(shù)。
8.如權(quán)利要求7所述的基于令牌的互聯(lián)網(wǎng)流量控制方法,其特征在于用戶終端從通信對端返回?cái)?shù)據(jù)包中提取反向令牌級(jí)和反向降低級(jí),用反向令牌級(jí)和反向降低級(jí)之和,標(biāo)識(shí)待發(fā)送數(shù)據(jù)包的令牌級(jí)。
9.如權(quán)利要求7所述的基于令牌的互聯(lián)網(wǎng)流量控制方法,其特征在于用戶終端根據(jù)收到數(shù)據(jù)包中的路徑令牌級(jí)、已確認(rèn)降低級(jí)和反向令牌級(jí)的值,分別設(shè)置發(fā)送數(shù)據(jù)包的反向令牌級(jí)、反向降低級(jí)和前期令牌級(jí);設(shè)置待發(fā)送數(shù)據(jù)包的路徑令牌級(jí)為其取值范圍內(nèi)的最小值;設(shè)置待發(fā)送數(shù)據(jù)包的令牌降低級(jí)和已確認(rèn)降低級(jí)為零。
10.如權(quán)利要求7所述的基于令牌的互聯(lián)網(wǎng)流量控制方法,其特征在于物理擁塞控制器在輸出數(shù)據(jù)包時(shí),不但更新令牌級(jí)標(biāo)識(shí),還要更新路徑令牌級(jí)、令牌降低級(jí)和已確認(rèn)降低級(jí)標(biāo)識(shí),以便向終端設(shè)備傳遞網(wǎng)絡(luò)擁塞信息;路徑令牌級(jí)的更新方法是若物理擁塞指數(shù)大于路徑令牌級(jí),就更新路徑令牌級(jí)為當(dāng)前物理擁塞指數(shù);令牌降低級(jí)的更新方法是將令牌降低級(jí)減少max(0,令牌降低級(jí)-max(0,前期令牌級(jí)-當(dāng)前物理擁塞指數(shù)));已確認(rèn)降低級(jí)的更新方法是將已確認(rèn)降低級(jí)增加max(0,令牌降低級(jí)-max(0,前期令牌級(jí)-當(dāng)前物理擁塞指數(shù)));虛擬擁塞控制器在輸出數(shù)據(jù)包時(shí),不但更新令牌級(jí)標(biāo)識(shí),還要增加令牌降低級(jí)標(biāo)識(shí),增加的數(shù)量等于虛擬擁塞指數(shù)。
全文摘要
本發(fā)明公開了一種基于令牌的互聯(lián)網(wǎng)流量控制方法,涉及分組交換網(wǎng)絡(luò)的流量控制技術(shù)。該方法包括用戶終端設(shè)備根據(jù)網(wǎng)絡(luò)擁塞情況設(shè)置待發(fā)送數(shù)據(jù)包的令牌級(jí);網(wǎng)絡(luò)接入路由器控制終端用戶流入網(wǎng)絡(luò)的令牌速度;網(wǎng)絡(luò)中間路由器在輸出接口上擁有一個(gè)物理擁塞控制器,物理擁塞控制器根據(jù)帶寬資源擁塞程度自適應(yīng)地調(diào)整物理擁塞指數(shù),并按計(jì)算所得的公平丟包概率,隨機(jī)丟棄令牌級(jí)小于物理擁塞指數(shù)的數(shù)據(jù)包;域間互連路由器的輸出接口不但擁有物理擁塞控制器,還擁有一個(gè)虛擬擁塞控制器,虛擬擁塞控制器根據(jù)令牌資源的擁塞程度自適應(yīng)地調(diào)整虛擬擁塞指數(shù),降低所有輸出數(shù)據(jù)包的令牌級(jí)。本發(fā)明能公平分配帶寬資源,有效減少網(wǎng)絡(luò)內(nèi)部的丟包數(shù)量。
文檔編號(hào)H04L12/24GK101035078SQ20071009021
公開日2007年9月12日 申請日期2007年4月13日 優(yōu)先權(quán)日2007年4月13日
發(fā)明者石志強(qiáng) 申請人:中國科學(xué)院軟件研究所