袁 振
摘要:應用實時性的改善有賴于網絡帶寬資源的測量與分配,因此動態、快速、準確地測量端到端路徑可用帶寬對于網絡實時應用的性能優化具有重要的意義。本文介紹了網絡帶寬測量技術,探討了常用的基于TCP可用帶寬測量算法。
關鍵詞:網絡規模;可用帶寬;測量方法
1 引言
近年來網絡規模不斷擴大,網絡流量急劇增長,尤其是實時業務和多媒體應用等新業務的不斷增加,例如遠程教學,視頻會議、視頻點播,視頻監控等敏感的網絡應用,這些應用對網絡傳輸提出了一組性能度量的要求,主要包括帶寬、延遲、丟包率等。然而,目前對網絡測量技術的研究明顯滯后于網絡及其應用的快速發展。研究網絡性能測量技術是了解網絡行為、進行網絡控制、實施服務質量保證、提高網絡性能的基礎和重要環節,因此具有十分重要的意義。
2 網絡帶寬測量技術
2.1 帶寬測量技術分類
依據不同的劃分標準,可對帶寬測量技術進行如下分類:按照是否向網絡內部注入探測包,可分為主動測量和被動測量按測量過程是否需要節點路由器的協作,帶寬測量技術分為鏈路帶寬測量和端到端的路徑帶寬測量方式按照不同的測度,帶寬測量可分為鏈路帶寬、路徑帶寬即和鏈路可用帶寬測量技術。
主動測量和被動測量。主動測量通過發送測量包來獲取網絡性能數據。主動測量可以獲得用戶感興趣的端到端的網絡狀況和網絡行為,具有靈活方便、可操作性強等優點。主動測量通過分析探測數據包和響應數據包來獲取相應的性能參數。主動測量結構包括兩部分發送端的監測設備和接收端的監測設備。
被動測量使用接入網絡的探針來一記錄和統計鏈路上數據包的網絡特性。被動測量不必發送主動測量包,也不會占用網絡帶寬,對網絡影響較小,可以獲得更為準確的測量結果。
兩種測量方式都存在一定的缺陷。主動測量需要向網絡發送大量的測量包,占用網絡資源影響網絡性能,進而影響測量結果的準確性。被動測量一般只能用于單點監測,難以了解端到端的性能,難以獲取全局性能視圖,并且測量時需要多方協作,因此測量范圍受限,實現復雜度較高。同時,測量采集所需要的數據不能達到實時性。另外,被動測量需要捕獲和分析用戶數據包信息,可能會侵犯用戶隱私,影響網絡的安全。大多數帶寬測量技術采用主動測量方式。
端到端帶寬測量和鏈路帶寬測量。端到端帶寬測量是對源、目的節點兩端之間的網絡路徑的帶寬參數進行測量,包括端到端的瓶頸帶寬測量和端到端的可用帶寬測量而鏈路帶寬測量主要是測量網絡路徑上各段鏈路的帶寬參數,著重于測量鏈路的帶寬值。
鏈路帶寬測量、路徑帶寬測量和可用帶寬測量。鏈路帶寬測量是對某條鏈路的最大發送速率的測量路徑帶寬是最窄鏈路的物理帶寬可用帶寬表示在網絡路徑中有背景流量存在的情況下,網絡路徑還能給端到端之間提供的最大吞吐量。可用帶寬它是隨鏈路狀態和已有網絡負載狀態動態變化的,反映了某時間段內路徑發送數據的真正能力,在實際中更具有指導意義。
2.2 帶寬測量技術性能評價標準
測量持續時間。指完成一次待測路徑瓶頸帶寬測量或可用帶寬測量需要的時間。這個時間主要包括探測包發送和接收處理的時間以及數據后分析處理時間。流量工程、路由等一般要求快速測定路徑帶寬,測量持續時間越長,測量效率越低,測量負載對網絡應用造成的影響就越大,而可用帶寬又是動態變化的,則可用帶寬測量值的實時性就越差。
測量指標。網絡性能測量方法可以完成路徑瓶頸帶寬測量、路徑可用帶寬測量和其它相關網絡性能參數測量,測量指標反映了測量方法的測量能力。
測量精度。體現了測量結果與實際情況之間的差異程度,定義為測量值與實際值之間的差值與實際值的百分比。
測量穩定性。表示使用一種測量技術進行多次測量時測量結果之間的分布情況,測量結果的統計方差越小,則測量越穩定。測量精度與測量結果的穩定性共同反映了測量技術的精確程度。測量負載。指完成一次帶寬測量需要發送和接收的數據報字節數,即測量需要的開銷。測量負載越低則測量過程對網絡運行的干擾性就越小,測量結果越真實。
2.3 基于TCP的測量算法
ImTCP算法。ImTCP不向網絡中注入額外的探測包,而是使用TCP連接階段傳輸的數據包。改變現有的TCP Reno版本,增加了所提出的ImTCP算法。發送端調節傳輸數據包的間隔,然后利用ACK包到達間隔估測網絡路徑的可用帶寬。ImTCP能夠周期性的給出測量結果,算法會報告在每隔2-4個循環周期內可用帶寬的估測值。
在每次測量中,使用一個搜索范圍去找到一個可用帶寬的值。搜索范圍I=(B1,Bu)是一個包括目前可用帶寬值的帶寬范圍。下面是ImTCP算法的步驟:
搜索范圍初始化。首先根據CProbe算法發送一個探測包串來找到一個粗糙的可用帶寬估計。設置搜索范圍(Acprobe/2. Acprobe ),其中Acprobe是Cprobe探測的結果。劃分搜索范圍。將搜索范圍到分成K個小范圍Ii=(Bi+1,Bi)(i=1,2-k),所有小范圍的寬度都是相同的。發送數據包串并檢查增加趨勢。選擇一個小范圍,根據所有流的增長趨勢,選擇一個其中包含可用帶寬準確值得小范圍。
計算可用帶寬。
Past算法。Past算法是在傳統TCP慢啟動的基礎上嵌入了可用帶寬測量算法,是PTR算法的變種。Past算法在TCP慢啟動階段進行帶寬測量,就如同UDP探測包串一樣,調整TCP數據包在慢啟動時間內的發送間隔,根據PTR算法的原理,可以估測出路徑的可用帶寬,很迅速的識別出擁塞窗口的大小,提高了慢啟動的性能,減小了丟包率,提高了吞吐率。
Past是在考慮了應用環境和網絡特征的基礎上提出來的,其諸多特征都是根據應用環境(TCP慢啟動)得出來的。
精度和開銷。TCP是一個自適應的協議,啟動階段的目的是得到擁塞避免階段一個合理的起點。同時,希望能夠轉入擁塞避免階段更快一些,因此,低開銷是很重要的。根據這兩個需求,Past算法比PTR結束測量更快一
測量間隔:由于需要可用帶寬的信息來進行擁塞控制,因此,需要一個很短時間內的可用帶寬的平均值。因此,Past使用的數據包串長度為一個RTT內發送的數據包的數目。
雙端控制:TCP是一個雙端控制的協議,Past自動訪問目的端。然而,為了方便配置,PsSt算法在發送端基于ACKs的時間間隔信息來計算可用帶寬,實現時采用單端測量方法。提出Past算法的作者提出Past的目的就是為了說明測量可用帶寬的算法需要和實際的應用環境緊密結合,應用需求不同,采用帶寬測量算法也不同。
3 帶寬測量技術研究趨勢
無線、移動網絡環境下帶寬測量。目前大部分帶寬測量技術都是面向有線網絡環境的,但是無線、移動技術的快速發展和廣泛應用己經引起帶寬測量研究人員的注意。由于無線、移動環境面臨的是十分惡劣的無線信道,往往存在大的路徑損耗、嚴重的信號衰落以及大的多徑時延引起的干擾問題,很多在有線網絡環境下得到的結論發現不再適用,故帶寬測量面臨更大的挑戰,是當前的一個熱點問題。
帶寬測量基礎設施的大規模部署。網絡測量基礎設施將成為部署下一代網絡必須考慮的因素,由于現有技術尚未在公網上得到廣泛應用,故其有效性、安全性都還有待評估,因此深入研究帶寬測量技術的大規模部署方法將成為下一個研究重點。
利用帶寬測量支持網絡實時應用。盡管帶寬測量研究得到了深入的研究,但是都沒有運用到實際應用中去,還沒完全達到當初研究帶寬測量最終的目標。隨著網絡的發展,各種新的實時應用不斷涌現,將帶寬測量技術與實際應用相結合的要求越來越迫切。因此,如何將帶寬測量技術有效的在實際中運用也是研究的熱點之一。
參考文獻
[1]韋安明.IP網帶寬測量技術研究與進展,電子學報,2006.
[2]張峰,端到端網絡帶寬測量技術研究,電信科學,2005.
[3]楊峰,楊萃元等.基于TCP/IP的網絡帶寬測量方法及工具,計算機工程,2003.