專利名稱:一種高效的單端可用帶寬測量方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種高效的單端可用帶寬測量方法,屬于網(wǎng)絡(luò)性能測量領(lǐng)域。
技術(shù)背景
可用帶寬指已存在背景流的情況下,鏈路還能為其他流提供的最大數(shù)據(jù)傳輸速 率。各段鏈路中可用帶寬最小的鏈路稱為這段路徑的緊鏈路(Tight Link)。緊鏈路的可用 帶寬為這段路徑的可用帶寬。端到端路徑可用帶寬是動(dòng)態(tài)描述網(wǎng)絡(luò)路徑傳輸能力的重要參 數(shù),它能有效評估一條網(wǎng)絡(luò)路徑的實(shí)際承載能力和性能優(yōu)劣??捎脦捴捣磻?yīng)了網(wǎng)絡(luò)的實(shí) 際運(yùn)輸能力,是監(jiān)測網(wǎng)絡(luò)性能、診斷網(wǎng)絡(luò)運(yùn)行狀況、優(yōu)化網(wǎng)絡(luò)性能的重要參考因素??捎脦?寬測量對于擁塞控制、路由選擇、流媒體應(yīng)用、服務(wù)器的動(dòng)態(tài)選擇及服務(wù)質(zhì)量(QoS)驗(yàn)證等 應(yīng)用具有重要意義。
根據(jù)探測方式的不同,目前的可用帶寬測量方法可分為包對法、包列法及基于 模型的可用帶寬測量方法。包對技術(shù)(Packet Pairs)利用包對在傳輸過程中時(shí)間間 隔(Dispersion Time)的變化來估計(jì)可用帶寬。包對技術(shù)衍生出很多的算法和工具,如 Spruce、IGI、Delphi、LinkPPQ等。包對技術(shù)測量可用帶寬需基于緊鏈路和窄鏈路為同一鏈 路的假設(shè),該假設(shè)不成立時(shí)測量誤差可能很大。包列技術(shù)通過發(fā)送一列或多列探測包得到 可用帶寬值,其原理是通過自負(fù)載的方法發(fā)送數(shù)據(jù)包使路徑擁塞,通過分析包列中探測包 的單向時(shí)延變化來估計(jì)可用帶寬值。采用包列技術(shù)的典型方法有Pathload、PathChirp, PTR,、YAZ、abget等。包列技術(shù)測量可用帶寬的健壯性和穩(wěn)定性比較強(qiáng),但測量負(fù)載往往比 較大。基于模型的測量方法也是可用帶寬測量領(lǐng)域的一個(gè)重要方向,基本思想是將復(fù)雜的 網(wǎng)絡(luò)進(jìn)行簡化建模,通過發(fā)送少量的探測流收集路徑信息后結(jié)合模型估測路徑可用帶寬, 該方法對網(wǎng)絡(luò)本身狀態(tài)和背景流量影響較小,但當(dāng)模型不能準(zhǔn)確刻畫流量特征時(shí),測量精 度將難以保證。
按照運(yùn)行方式的不同,可用帶寬測量系統(tǒng)可用分為單終端系統(tǒng)和雙終端系統(tǒng)。單 終端系統(tǒng)只需在網(wǎng)絡(luò)中一個(gè)節(jié)點(diǎn)上安裝測量工具就可測量該節(jié)點(diǎn)至其他節(jié)點(diǎn)的路徑上的 可用帶寬。雙終端系統(tǒng)除需要在發(fā)送端安裝測量工具外,還需要在目的節(jié)點(diǎn)安裝測量工具。 雙終端系統(tǒng)的應(yīng)用范圍非常有限,其原因是用戶往往只能在發(fā)送端上安裝軟件,而沒有在 遠(yuǎn)程的機(jī)器上安裝軟件的權(quán)限.與此相反,單終端系統(tǒng)只需在發(fā)送端安裝測量工具就可測 量該節(jié)點(diǎn)到網(wǎng)絡(luò)上其它節(jié)點(diǎn)路徑的可用帶寬值。
最早的單終端可用帶寬測量系統(tǒng)是CProbe,它利用了 ICMP協(xié)議的請求-應(yīng) 答機(jī)制從發(fā)送端向接收端發(fā)送多組用于探測的IP包;這些IP包觸發(fā)了節(jié)點(diǎn)的ICMP 錯(cuò)誤處理流程,從而路徑上的節(jié)點(diǎn)會(huì)向發(fā)送端發(fā)送ICMP time-exceeded (TE)和 destination-unreachable (DU)包;CProbe 接收到 ICMP TE 和 DU 包后,根據(jù)接收時(shí)間 推算探測IP包在每段鏈路上傳輸速率的變化情況,進(jìn)而估算可用帶寬。之后出現(xiàn)的方 法Pipechar也是基于ICMP協(xié)議實(shí)現(xiàn),后來有研究證實(shí)CProbe和Pipechar所度量的其 實(shí)并不是可用帶寬,而是處于可用帶寬和帶寬容量之間的非對稱分散速率(asymptoticdispersion rate)?;赥CP和HTTP協(xié)議開發(fā)的SProbe利用了協(xié)議的特性以獲取遠(yuǎn)程 節(jié)點(diǎn)的反饋,并挖掘應(yīng)答數(shù)據(jù)包的間隔變化規(guī)律進(jìn)而估算可用帶寬。后續(xù)的單端系統(tǒng)有 Abget, BFind和BNeck。Abget基于TCP和HTTP協(xié)議,不需要路徑上的節(jié)點(diǎn)開啟ICMP功能 就可實(shí)現(xiàn)單端測量,但它基于I^athload的算法思想,需要發(fā)送多次探測包列,測量負(fù)載較 大。BFind通過連續(xù)發(fā)送UDP數(shù)據(jù)流導(dǎo)致網(wǎng)絡(luò)擁塞,并從traceroute測得的每條鏈路的往 返時(shí)延(RTT)來估計(jì)可用帶寬;BFind在一次定位過程中產(chǎn)生大量負(fù)載包,其入侵度不容忽 視。BNeck通過獲得包列在每條鏈路上的輸入速率和輸出速率來計(jì)算可用帶寬,在計(jì)算可用 帶寬過程中需要知道鏈路容量,BNeck采用單包技術(shù)測量鏈路容量,這需要以較低的速率發(fā) 送較多的探測包才可得到較準(zhǔn)確的鏈路容量值,且鏈路容量的誤差將直接影響可用帶寬測 量精度。
總之,現(xiàn)有的各種可用帶寬測量方法存在諸多問題1)雙端系統(tǒng)的應(yīng)用范圍存在 很大的局限;2)測量時(shí)間過長,例如,有實(shí)驗(yàn)表明方案Abing所需測量時(shí)間為1.3-1.4 秒;方案PathChirp所需測量時(shí)間約為5. 4秒;方案Iperf所需測量時(shí)間為10. 0-10.2 秒;方案Spruce所需測量時(shí)間為10. 9-11. 2秒;方案I^athload所需測量時(shí)間為7. 2-22. 3 禾少,具體可參見文獻(xiàn)“Shriram A, Murray Μ, Hyun Y, Brownlee N, Broido A. Comparison of publicend一to一end bandwidth estimation tools on high-speed links. , in Proc. Passive and Active Measurement Workshop, 2005. 306-320";3) lljfi^icil, giXljl 路的入侵度較大,例如,Abget,BFind和BNeck方案都需要發(fā)送多次包列才完成測量,因此, 設(shè)計(jì)一種簡單高效的單端可用帶寬測量方法具有重要意義。發(fā)明內(nèi)容
本發(fā)明的目的是提供一種測量精度高、收斂速度快、入侵度低、健壯性強(qiáng)單端可用 帶寬測量方法。
為達(dá)上述目的及其他目的,本發(fā)明的提供的單端可用帶寬測量方法,包括步驟
1)發(fā)送端設(shè)置探測包列的目的端口和TTL域;
2)發(fā)送端先以背靠背的方式發(fā)送若干負(fù)載包,再以逐漸遞減的速率發(fā)送一些降速 包至目的節(jié)點(diǎn);
發(fā)送至目的節(jié)點(diǎn)的包列,應(yīng)能使目的節(jié)點(diǎn)產(chǎn)生ICMP回應(yīng)包,例如,可通過設(shè)置探 測包的目的端口為不可達(dá)端口來實(shí)現(xiàn),也可通過設(shè)置探測包的TTL域等于發(fā)送端至目的節(jié) 點(diǎn)的路徑長度來實(shí)現(xiàn)。發(fā)送降速包時(shí)包列的發(fā)送速率可以是指數(shù)遞減。
3)發(fā)送端接收從目的節(jié)點(diǎn)返回的ICMP包,計(jì)算出一系列往返時(shí)延值
往返時(shí)延指從發(fā)送該探測包到接收到該探測包所觸發(fā)的ICMP回應(yīng)包所經(jīng)歷的時(shí) 間,即每個(gè)ICMP包的接收時(shí)間減去其對應(yīng)的探測包的發(fā)送時(shí)間得到的值。
4)發(fā)送端根據(jù)一系列往返時(shí)延確定開始保持恒定的往返時(shí)延所對應(yīng)的降速包;
由于包列的發(fā)送方式是先背靠背地發(fā)送一些負(fù)載包,這些包在緊鏈路不斷堆積, 排隊(duì)時(shí)延不斷增加,致使后面發(fā)送的降速包的排隊(duì)時(shí)延也將逐漸增加,從而往返時(shí)延也逐 漸增加。當(dāng)包列的平均發(fā)送速率下降到一定程度時(shí),緊鏈路處的緩沖區(qū)中數(shù)據(jù)包的堆積情 況逐漸緩解,探測包的排隊(duì)時(shí)延逐漸減小,從而往返時(shí)延也逐漸減小,減小至數(shù)據(jù)包在緩沖 區(qū)中不再排隊(duì)時(shí)往返時(shí)延將保持不變。
5)發(fā)送端計(jì)算所確定的降速包被發(fā)送時(shí)的包列平均發(fā)送速率,并將其作為可用帶 寬的測量值。
本發(fā)明的有益效果在于簡單高效地實(shí)現(xiàn)了單端可用帶寬測量,只發(fā)送一次探測 包列就可測得可用帶寬值,且測量精度高、測量速度快、入侵度低、健壯性強(qiáng)。
圖1為本發(fā)明實(shí)施例可用帶寬測量流程圖。
圖2為本發(fā)明的實(shí)施例所述包列構(gòu)造示意圖。
圖3為本發(fā)明實(shí)施例包列往返時(shí)延變化圖。
圖4為本發(fā)明實(shí)施例一恒定背景流實(shí)驗(yàn)拓?fù)洹?br>
圖5為本發(fā)明實(shí)施例一恒定背景流實(shí)驗(yàn)結(jié)果。
圖6為本發(fā)明實(shí)施例一突發(fā)背景流實(shí)驗(yàn)拓?fù)洹?br>
圖7為本發(fā)明實(shí)施例一突發(fā)背景流實(shí)驗(yàn)結(jié)果。
具體實(shí)施方式
下面結(jié)合附圖詳細(xì)說明本發(fā)明的較佳實(shí)施例。
實(shí)施例一
請參閱圖1,本發(fā)明的單端可用帶寬測量方法包括以下步驟
首先,發(fā)送端以背靠背的方式連續(xù)向目的節(jié)點(diǎn)發(fā)送多個(gè)負(fù)載包,隨后再以逐步遞 減的速率連續(xù)向目的節(jié)點(diǎn)發(fā)送多個(gè)降速包,其中,各負(fù)載包和降速包所要到達(dá)端口都設(shè)置 為不可達(dá)端口。請?jiān)賲⒁妶D2,其為發(fā)送端向目的節(jié)點(diǎn)發(fā)送的包列示意圖,即發(fā)送端首先背 靠背地發(fā)送d個(gè)負(fù)載包,隨后發(fā)送多個(gè)降速包,以便對網(wǎng)絡(luò)路徑進(jìn)行充分擁塞,發(fā)送端可以 采用指數(shù)形式逐步降低包列的平均發(fā)送速率,也可采用其他降速方式發(fā)送降速包。如果采 用指數(shù)形式,則發(fā)送端發(fā)送第i個(gè)降速包時(shí)包列的平均發(fā)送速率民是發(fā)送第i+Ι個(gè)降速包 時(shí)包列的平均發(fā)送速率的α (α >1)倍。
接著,當(dāng)所述各負(fù)載包和降速包到達(dá)目的節(jié)點(diǎn)后,由于各負(fù)載包和降速包所要到 達(dá)端口被設(shè)置為不可達(dá)端口,故所述目的節(jié)點(diǎn)每次接收到負(fù)載包或降速包,都會(huì)向發(fā)送端 反饋回一相應(yīng)的 ICMP destination-unreachable (DU)包。
接著,發(fā)送端接收來自目的節(jié)點(diǎn)反饋回的ICMP包,并根據(jù)ICMP包的接收時(shí)間及與 它對應(yīng)的探測包的發(fā)送時(shí)間,計(jì)算出往返時(shí)延值。例如,發(fā)送端發(fā)送第i個(gè)降速包的時(shí)間是 08:20:00,而接收到第i個(gè)降速包對應(yīng)的反饋信息包的時(shí)間是08:20:02,則發(fā)送端計(jì)算出 往返時(shí)延為2秒。
接著,發(fā)送端根據(jù)一系列往返時(shí)延確定開始保持恒定的往返時(shí)延所對應(yīng)的降速 包。由于包列的發(fā)送方式是先背靠背地發(fā)送一些負(fù)載包,這些包在緊鏈路不斷堆積,排隊(duì)時(shí) 延不斷增加,致使后面發(fā)送的降速包的排隊(duì)時(shí)延也將逐漸增加,從而使降速包到達(dá)目的節(jié) 點(diǎn)的時(shí)間延長,進(jìn)而使目的節(jié)點(diǎn)發(fā)送相應(yīng)反饋信息包的時(shí)間拖后,進(jìn)一步導(dǎo)致發(fā)送端接收 到該反饋信息包的時(shí)間拖后,也就使得計(jì)算出往返時(shí)延增加。而當(dāng)包列的平均發(fā)送速率下 降到一定程度時(shí),緊鏈路處的緩沖區(qū)中數(shù)據(jù)包的堆積情況逐漸緩解,降速包的排隊(duì)時(shí)延逐 漸減小,從而往返時(shí)延也逐漸減小,至擁塞恰好消除時(shí)刻開始往返時(shí)延將保持不變,往返時(shí)延變化如圖3所示。
最后,發(fā)送端計(jì)算所確定的探測包被發(fā)送時(shí)的包列平均發(fā)送速率,將其作為可用 帶寬的測量值。發(fā)送端根據(jù)公式wMv = (d + k)'S =^^=1,2,3...來計(jì)算所述探測包列ta平均發(fā)送速率,其中,S為包的大小(負(fù)載包和降速包大小相同),d為負(fù)載包的個(gè)數(shù),k為 開始保持恒定的往返時(shí)延所對應(yīng)的降速包的序號(hào),t為從開始發(fā)送第1個(gè)負(fù)載包到發(fā)送第 k個(gè)降速包所需要的時(shí)間,R為發(fā)送第1個(gè)降速包時(shí)包列的平均發(fā)送速率,α為包列發(fā)送速 率下降的遞減因子。若發(fā)送第i個(gè)降速包時(shí)包列的平均發(fā)送速率為Ri,發(fā)送第i+Ι個(gè)降速 包時(shí)包列的平均發(fā)送速率為氏+1,則α應(yīng)為Ri與的比值,且α > 1。
實(shí)驗(yàn)驗(yàn)證
為驗(yàn)證本發(fā)明所述可用帶寬測量方法的性能,使用網(wǎng)絡(luò)研究領(lǐng)域廣泛采用的NS2 進(jìn)行仿真實(shí)驗(yàn)。由于本發(fā)明是一個(gè)端到端測量工具,因此采用只有一條線性主干路徑的實(shí) 驗(yàn)拓?fù)洌負(fù)渲懈髀酚善骶捎孟冗M(jìn)先出的調(diào)度策略,緩沖區(qū)采用隊(duì)尾丟棄策略。拓?fù)渲兴?有鏈路均為雙向?qū)ΨQ的鏈路,容量均為100Mbps。
1恒定背景流情況
實(shí)驗(yàn)拓?fù)淙鐖D4所示,發(fā)送端Snd到目的節(jié)點(diǎn)n9的路徑P依次經(jīng)過路由器nl, n2, n3…n8,背景流1、2、3均為貫穿nl,n2…n8的恒定比特率背景流,大小分別為10Mbps、 30Mbps、70Mbps。背景流1、2、3的運(yùn)行時(shí)間分別為10-40秒、40秒-70秒、70秒-100秒。測 量結(jié)果如圖5,在整個(gè)測量過程中,隨著背景流的變化,可用帶寬值也相應(yīng)變化,pathpider 一直能準(zhǔn)確測量出可用帶寬值。平均測量誤差為0. 011Mbps,平均測量時(shí)間為0. 193秒,平 均測量負(fù)載為1. 296Mb
2突發(fā)背景流情況
實(shí)驗(yàn)拓?fù)淙鐖D6所示,每條鏈路上的背景流由10條符合Pareto分布的流匯集而 成,以模擬突發(fā)性的背景流,Pareto流的包大小設(shè)置為包大小為40/550/1500bytes的數(shù) 據(jù)包在負(fù)載中所占的比例分別為50^30^^10% (以盡量符合實(shí)際網(wǎng)絡(luò)中包大小分布), 每條鏈路上的包發(fā)送速率均為20Mbps,Pareto分布形狀參數(shù)α =1.9。這是因?yàn)槎鄠€(gè)服 從參數(shù)α < 2的Pareto分布的流聚合后表現(xiàn)出自相似特征。另有兩條CBR流量CBRl和 CBR2,它們的大小均為 20Mbps,CBRl 貫穿 nl,n2,n3,n4,CBR2 貫穿 n3,n4,n5,n6。CBRl 的 運(yùn)行時(shí)間為0-15秒、40-65秒,CBR2的運(yùn)行時(shí)間為40-100秒。在測量過程中以較短的時(shí)間 間隔統(tǒng)計(jì)各條鏈路上的背景流流量來確定可用帶寬的真實(shí)值。測量結(jié)果如圖7所示,平均 測量誤差為0. 077Mbps,平均測量時(shí)間為0. 196秒,平均負(fù)載為1. ^6Mb。突發(fā)背景下的平 均測量誤差比較小也說明了本發(fā)明可用帶寬測量的健壯性比較強(qiáng)。
實(shí)施例二
先測量發(fā)送端到目的節(jié)點(diǎn)所在路徑的路徑長度??稍诎l(fā)送端向目的節(jié)點(diǎn)發(fā)送 一列TTL域從1開始逐漸增大的IP包,那么在不出現(xiàn)丟包的情況下,發(fā)送端收到ICMP time-exceeded(TE)包的個(gè)數(shù)即為路徑長度。
包列中探測包為IP包,目的IP為目的節(jié)點(diǎn)的IP地址,包的TTL域設(shè)置為發(fā)送端到 目的節(jié)點(diǎn)所在路徑的路徑長度。這樣探測包在到達(dá)目的節(jié)點(diǎn)后由于TTL減為0而被丟棄, 且目的節(jié)點(diǎn)向發(fā)送端發(fā)送TE包。發(fā)送端首先背靠背地發(fā)送d個(gè)探測包(這d個(gè)探測包稱為負(fù)載包,隨后發(fā)送的探測包稱為降速包)對網(wǎng)絡(luò)路徑進(jìn)行充分擁塞,隨后以指數(shù)形式逐 步降低包列的平均發(fā)送速率(需要說明的是,也可采用其他降速方式發(fā)送降速包),發(fā)送第 i個(gè)降速包時(shí)包列的平均發(fā)送速率氏為發(fā)送第i+Ι個(gè)降速包時(shí)包列的平均發(fā)送速率的 α (α > 1)倍。
發(fā)送端根據(jù)接收到TE包的時(shí)間計(jì)算出往返時(shí)延。由于包列的發(fā)送方式是先背靠 背地發(fā)送一些負(fù)載包,這些包在緊鏈路不斷堆積,排隊(duì)時(shí)延不斷增加,致使后面發(fā)送的降速 包的排隊(duì)時(shí)延也將逐漸增加,從而往返時(shí)延也逐漸增加。當(dāng)包列的平均發(fā)送速率下降到一 定程度時(shí),緊鏈路處的緩沖區(qū)中數(shù)據(jù)包的堆積情況逐漸緩解,探測包的排隊(duì)時(shí)延逐漸減小, 從而往返時(shí)延也逐漸減小,至擁塞恰好消除時(shí)刻開始往返時(shí)延將保持不變。我們只需要找 到往返時(shí)延開始保持恒定的那個(gè)包,此包到達(dá)緊鏈路的時(shí)刻即為擁塞消除時(shí)刻,此包發(fā)送時(shí)包列的平均發(fā)送速率即為待測路徑可用帶寬值??捎脦捴礱vbw由下式計(jì)算
權(quán)利要求
1.一種高效的單端可用帶寬測量方法,其特征在于包括如下步驟1)發(fā)送端設(shè)置探測包列的目的端口和TTL域;2)發(fā)送端將設(shè)置完成的探測包列所包含的負(fù)載包和降速包予以發(fā)送至目的節(jié)點(diǎn),其 中,先將各負(fù)載包以背靠背的方式發(fā)送,再以逐漸遞減的速率發(fā)送降速包;3)發(fā)送端接收從目的節(jié)點(diǎn)返回的一系列ICMP包,計(jì)算出一系列往返時(shí)延,其中,往返 時(shí)延為發(fā)送端接收到一 ICMP包時(shí)的接收時(shí)刻減去該ICMP包對應(yīng)的負(fù)載包或降速包的發(fā)送 時(shí)刻所獲得的時(shí)間差;4)發(fā)送端根據(jù)一系列往返時(shí)延確定開始保持恒定的往返時(shí)延所對應(yīng)的降速包;5)發(fā)送端計(jì)算所確定的降速包被發(fā)送時(shí)的包列平均發(fā)送速率,將其作為可用帶寬的測 量值。
2.如權(quán)利項(xiàng)1所述的方法,其特征在于發(fā)送端設(shè)置目的端口為不可達(dá)端口、或者設(shè)置 TTL域等于發(fā)送端至目的節(jié)點(diǎn)的路徑長度,以便各負(fù)載包和降速包到達(dá)目的節(jié)點(diǎn)后目的節(jié) 點(diǎn)會(huì)產(chǎn)生ICMP包。
3.如權(quán)利項(xiàng)1所述的方法,其特征在于降速包的發(fā)送速率以指數(shù)形式遞減。
4.如權(quán)利項(xiàng)3所述的方法,其特征在于可用帶寬值avbw由下式計(jì)算avbw =-== 1,2,3 …ta ~其中,S為發(fā)送端所發(fā)送的各包的大小,d為負(fù)載包的個(gè)數(shù),k為開始保持恒定的往返時(shí) 延所對應(yīng)的降速包序號(hào),t為從開始發(fā)送第1個(gè)負(fù)載包到發(fā)送第k個(gè)降速包所需要的時(shí)間, R為發(fā)送第1個(gè)降速包時(shí)包列的平均發(fā)送速率,α為包列發(fā)送速率下降的遞減因子;若發(fā)送 第i個(gè)降速包時(shí)包列的平均發(fā)送速率為氏,發(fā)送第i+Ι個(gè)降速包時(shí)包列的平均發(fā)送速率為 Ri+1,則α應(yīng)為氏與的比值,且α > 1。
全文摘要
本發(fā)明涉及一種高效的單端可用帶寬測量方法—pathpider,包括如下步驟發(fā)送端發(fā)送特定探測包列至目的節(jié)點(diǎn);發(fā)送端根據(jù)目的節(jié)點(diǎn)返回的一系列ICMP包計(jì)算出一系列往返時(shí)延(RTT)值,確定往返時(shí)延開始保持恒定的時(shí)刻;計(jì)算包列開始發(fā)送到往返時(shí)延開始保持恒定這段時(shí)間內(nèi)包列的平均發(fā)送速率作為路徑可用帶寬的測量值。本發(fā)明采用新穎的探測包列實(shí)現(xiàn)單端可用帶寬測量,只發(fā)送一次探測包列就可測得可用帶寬值,具有測量精度高、收斂速度快、入侵度低、健壯性強(qiáng)的優(yōu)點(diǎn)。
文檔編號(hào)H04L12/26GK102045219SQ20101058672
公開日2011年5月4日 申請日期2010年12月14日 優(yōu)先權(quán)日2010年12月14日
發(fā)明者張俊生, 張大陸, 朱小慶, 胡治國 申請人:同濟(jì)大學(xué)