互聯(lián)網(wǎng)從誕生之日起就受到了人們的青睞。人們希望利用互聯(lián)網(wǎng)技術(shù)來(lái)改變其生活方式,事實(shí)上,互聯(lián)網(wǎng)技術(shù)經(jīng)過(guò)幾十年的長(cháng)足發(fā)展,已經(jīng)影響并改變了傳統的生活、工作和學(xué)習等方式;ヂ(lián)網(wǎng)技術(shù)的發(fā)明可以說(shuō)是人類(lèi)發(fā)明史最偉大的杰作,隨著(zhù)網(wǎng)絡(luò )規模的日益擴大、互聯(lián)網(wǎng)用戶(hù)數量激增和新的網(wǎng)絡(luò )應用不斷出現,用戶(hù)對互聯(lián)網(wǎng)資源的需求也急速增加,這就使得網(wǎng)絡(luò )經(jīng)常出現服務(wù)質(zhì)量(QoS)低、網(wǎng)絡(luò )阻塞嚴重等現象。尤其對于校園網(wǎng)用戶(hù)來(lái)說(shuō),隨著(zhù)校園網(wǎng)絡(luò )日益規;蛷碗s化,其用戶(hù)數量通常過(guò)萬(wàn),當校園網(wǎng)用戶(hù)訪(fǎng)問(wèn)公網(wǎng)(中國聯(lián)通網(wǎng)絡(luò )、中國移動(dòng)網(wǎng)絡(luò )、中國電信網(wǎng)絡(luò )等)時(shí)一般會(huì )出現網(wǎng)絡(luò )阻塞嚴重甚至會(huì )出現訪(fǎng)問(wèn)不可達等現象。在這些情況下,如何提高校園網(wǎng)用戶(hù)服務(wù)質(zhì)量是網(wǎng)絡(luò )管理人員面臨的重要問(wèn)題。要有效地解決這些問(wèn)題,首先就需要對網(wǎng)絡(luò )進(jìn)行測量,然后根據測量結果分析、改進(jìn)網(wǎng)絡(luò )中存在的問(wèn)題。 本文所述測量系統主要是基于校園網(wǎng)絡(luò ),實(shí)現一個(gè)具有分布式、可擴展性的網(wǎng)絡(luò )測量平臺。利用各種測量方法和測量工具,測量校園網(wǎng)訪(fǎng)問(wèn)公網(wǎng)和其他校園網(wǎng)絡(luò )各種相關(guān)的網(wǎng)絡(luò )性能參數。從而獲得網(wǎng)絡(luò )的狀態(tài)信息,掌握和分析校園網(wǎng)絡(luò )中各種性能參數,研究校園網(wǎng)多出口環(huán)境下的網(wǎng)絡(luò )優(yōu)化問(wèn)題,為校園網(wǎng)絡(luò )的優(yōu)化提供有價(jià)值的參考。 1 網(wǎng)絡(luò )測量技術(shù) 對于網(wǎng)絡(luò )測量技術(shù)的研究始于20世紀70年代,隨著(zhù)網(wǎng)絡(luò )技術(shù)的飛速發(fā)展,網(wǎng)絡(luò )中出現的各種難以預測的問(wèn)題日益增多,網(wǎng)絡(luò )測量技術(shù)也越來(lái)越受到研究人員的關(guān)注。對于網(wǎng)絡(luò )測量,目前沒(méi)有一個(gè)統一的定義,人們只是形象地將網(wǎng)絡(luò )測量描述為利用一些有效的方法和成熟的技術(shù),通過(guò)使用軟硬件工具來(lái)測試了解網(wǎng)絡(luò )的運行狀態(tài)、獲得網(wǎng)絡(luò )性能參數和網(wǎng)絡(luò )行為指標等一系列活動(dòng)的總稱(chēng)[3-4]。網(wǎng)絡(luò )測量技術(shù)主要包括以下幾個(gè)方面:測量方法、測量對象、測量工具和測量結果的可視化等。 1.1 測量方法 由于測量方法分類(lèi)較多,本文僅介紹幾種最基本、最常用的分類(lèi)方法。根據測量環(huán)境中測量節點(diǎn)數目的多少,可以分為基于單點(diǎn)的網(wǎng)絡(luò )測量和基于多點(diǎn)的網(wǎng)絡(luò )測量;根據被測者是否知情,可以分為協(xié)作式網(wǎng)絡(luò )測量和非協(xié)作式網(wǎng)絡(luò )測量;根據被測節點(diǎn)的位置,可以分為端到端的網(wǎng)絡(luò )測量和分布式的網(wǎng)絡(luò )測量;根據測量的行為方式,可以分為主動(dòng)式網(wǎng)絡(luò )測量和被動(dòng)式網(wǎng)絡(luò )測量。 主動(dòng)式網(wǎng)絡(luò )測量方法是測量源節點(diǎn)向目標鏈路或者目標節點(diǎn)發(fā)送探測數據包,然后根據返回的網(wǎng)絡(luò )性能參數來(lái)研究和分析網(wǎng)絡(luò )的行為。主動(dòng)測量方法非常易于在網(wǎng)絡(luò )測量中實(shí)現,而且能以更加直接的方式來(lái)分析網(wǎng)絡(luò ),可以全面掌握整個(gè)測量網(wǎng)絡(luò )的行為特征。但是,主動(dòng)測量方法也存在一定的缺陷,該方法在測量的過(guò)程中需要向網(wǎng)絡(luò )中注入特定的探測流量,導致了網(wǎng)絡(luò )中流量的增加。雖然探測流量很小,但是如果控制不當,也會(huì )在增加網(wǎng)絡(luò )負荷的同時(shí)對網(wǎng)絡(luò )性能結果產(chǎn)生一定的影響。 被動(dòng)式網(wǎng)絡(luò )測量方法是通過(guò)在網(wǎng)絡(luò )中特定的節點(diǎn)上安裝探針和數據采集器等來(lái)收集流經(jīng)該節點(diǎn)的網(wǎng)絡(luò )流量,然后進(jìn)行分析,提取業(yè)務(wù)特征進(jìn)而獲得網(wǎng)絡(luò )性能數據。被動(dòng)測量方法主要是通過(guò)在一個(gè)特殊點(diǎn)觀(guān)察網(wǎng)絡(luò )的行為,不會(huì )增加和修改網(wǎng)絡(luò )的數據,對于網(wǎng)絡(luò )負荷基本上沒(méi)有影響,能夠較為準確地反應網(wǎng)絡(luò )中的性能。但是,從被動(dòng)測量方法中捕獲得到的包難以甚至不可能包括想要的某些信息,被動(dòng)測量方法的適用范圍較小,并且難以實(shí)現對網(wǎng)絡(luò )整體的理解和網(wǎng)絡(luò )端到端行為的理解,因此,被動(dòng)測量方法主要用在帶寬測量和流量測量等方面。另一方面,由于被動(dòng)測量方法可以直接獲得該節點(diǎn)上的數據,可能會(huì )造成信息泄露等安全方面的問(wèn)題。 1.2 測量對象 根據網(wǎng)絡(luò )測量的對象,可以分為網(wǎng)絡(luò )拓撲發(fā)現、網(wǎng)絡(luò )流量監控、網(wǎng)絡(luò )性能測量和路由探測等方面。其中,對網(wǎng)絡(luò )性能的測量最能夠反映網(wǎng)絡(luò )服務(wù)質(zhì)量的高低。網(wǎng)絡(luò )性能參數主要包括:基于網(wǎng)絡(luò )層的性能指標(單向延時(shí)、往返延時(shí)、丟包率、帶寬、可連通性等),基于傳輸層性能指標和基于應用層性能指標。路由探測主要是測量源節點(diǎn)和目的節點(diǎn)鏈路之間所包含的各路由信息狀態(tài)。通過(guò)分析測量路徑,能夠發(fā)現網(wǎng)絡(luò )中是否存在故障。例如,可以發(fā)現鏈路中是否出現中斷不可達問(wèn)題、路由器的配置問(wèn)題、環(huán)路問(wèn)題以及路徑的冗余等問(wèn)題。本系統主要從網(wǎng)絡(luò )性能和路由探測兩方面進(jìn)行研究設計。 1.3 測量工具 測量工具是測量網(wǎng)絡(luò )行為特征的重要組成部分。目前,測量工具主要有:基于網(wǎng)絡(luò )性能的測量工具ping、fping、pathchar、traceroute等,基于流量的測量工具iperf、netperf、netflow、nettramet等,基于拓撲發(fā)現的工具skitter、GASP等,基于路由選擇的工具traceroute、ASExplorer、RouteRracker等。網(wǎng)絡(luò )測量工具的選取對于網(wǎng)絡(luò )測量結果有著(zhù)重要的影響。本系統主要使用基于網(wǎng)絡(luò )性能(ping、traceroute)和路由選擇(traceroute)兩大方面的測量工具。 2 體系結構的研究與設計 本系統主要通過(guò)在不同區域的高校部署客戶(hù)端測量節點(diǎn),實(shí)現一個(gè)分布式可協(xié)作的測量系統。其體系結構設計如圖1所示。 該系統主要使用主動(dòng)測量方法,測量節點(diǎn)通過(guò)主動(dòng)測量工具探測網(wǎng)絡(luò )上的目標節點(diǎn),主要涉及到的測量參數包括帶寬、延時(shí)、丟包率、可連通性和節點(diǎn)間的路徑等,通過(guò)對這些參數的返回值進(jìn)行分析處理,并把測量結果以圖形化的方式顯示在客戶(hù)端Web服務(wù)器上。 系統主要分為服務(wù)器和客戶(hù)端兩大部分,采用的是B/S結構。服務(wù)器節點(diǎn)主要負責客戶(hù)端節點(diǎn)的注冊、管理和監測節點(diǎn)狀態(tài),向客戶(hù)端節點(diǎn)分配測量任務(wù),保存客戶(hù)端節點(diǎn)返回的測量結果,顯示已經(jīng)部署好的客戶(hù)端節點(diǎn)拓撲分布圖并能夠通過(guò)服務(wù)器端直接訪(fǎng)問(wèn)客戶(hù)端節點(diǎn)?蛻(hù)端節點(diǎn)主要完成測量任務(wù),但是,它又不是完全意義上的客戶(hù)端,當有其他客戶(hù)端節點(diǎn)請求該節點(diǎn)進(jìn)行協(xié)助測量時(shí),此時(shí)該客戶(hù)端節點(diǎn)又可以轉變成為被請求客戶(hù)端節點(diǎn)的服務(wù)器?蛻(hù)端的主要功能包括:對服務(wù)器分配的任務(wù)進(jìn)行測量并且保存和傳送測量結果,本地用戶(hù)的添加、刪除、修改等管理操作,協(xié)助其他客戶(hù)端節點(diǎn)完成測量任務(wù),圖形化顯示出測量結果等。 3 系統主要功能實(shí)現方法 根據網(wǎng)絡(luò )測量系統的體系結構,網(wǎng)絡(luò )測量系統從功能上又可以劃分為通信控制模塊、數據收集模塊、數據分析和處理模塊、數據存儲模塊和結果的可視化顯示模塊等。 3.1 通信控制模塊 通信控制模塊主要完成服務(wù)器向客戶(hù)端分配任務(wù)、客戶(hù)端向服務(wù)器發(fā)送心跳數據、客戶(hù)端節點(diǎn)測量結果的傳輸等。為了保證數據在網(wǎng)絡(luò )傳輸過(guò)程中的安全性,自定義并設計了通信協(xié)議,利用socket通信來(lái)完成基于TCP協(xié)議的可靠傳輸。圖2所示是客戶(hù)端和服務(wù)器端的通信流程。 3.2 數據收集模塊 在數據收集模塊中主要使用ping、fping、traceroute等主動(dòng)測量工具向測量目標節點(diǎn)發(fā)送ICMP數據包,利用測量返回值得到性能參數。由于主動(dòng)測量方法會(huì )增加網(wǎng)絡(luò )的負荷,因此選擇數據包較小的ping工具,而且在測量的過(guò)程中使用定長(cháng)的時(shí)間間隔(客戶(hù)端還可以根據需要修改間隔時(shí)間,默認的情況下是5 min)進(jìn)行采樣,這樣就可以緩解網(wǎng)絡(luò )中由于負荷過(guò)重可能導致的網(wǎng)絡(luò )阻塞。 3.3 數據分析和處理模塊 由于網(wǎng)絡(luò )中各種因素的影響可能使每次測量的結果偏差較大,為了減少誤差,使測量結果能夠更好地反映實(shí)際情況,對測量結果求均差和方差等一系列分析處理,并把處理后的結果保存到數據文件中。 3.4 數據存儲模塊 服務(wù)器端使用mysql數據庫來(lái)保存節點(diǎn)、用戶(hù)、測量任務(wù)等相關(guān)數據。同時(shí),服務(wù)器對測量結果的保存采取文件的方式,每個(gè)測量節點(diǎn)的測量對象對應有2個(gè)文件,其中一個(gè)文件保存歷史紀錄,另一個(gè)文件保存最近的一次測量紀錄?蛻(hù)端數據庫采用RRD結構形式,優(yōu)點(diǎn)在于數據的保存與繪圖。每個(gè)測量對象對應一個(gè)RRD文件,保存對應測量結果。RRD文件的結構如下圖所示,每一行都是上面一行若干數據的平均值,在記錄超出后自動(dòng)刪除舊數據,保持記錄數不變,這樣只需保存少量的數據,減少日記文件的平均。其結構如圖3所示。 3.5 結果的可視化顯示模塊 使用rrdtool畫(huà)圖工具將保存到文件里面的數據繪制成二維圖形,以Web的形式在客戶(hù)端顯示出來(lái)。為了更好更全面地反映網(wǎng)絡(luò )性能,以利于管理者分析和發(fā)現網(wǎng)絡(luò )中的問(wèn)題,在結果顯示模塊中將會(huì )同時(shí)顯示每小時(shí)、每天、每周和每月的測量結果。 4 測量實(shí)驗 本系統在清華大學(xué)部署了一個(gè)服務(wù)器節點(diǎn)和一個(gè)客戶(hù)端節點(diǎn),以下數據均來(lái)源于清華大學(xué)網(wǎng)絡(luò )中心部署的1臺客戶(hù)端節點(diǎn)的測量結果。 圖4顯示的是一周內測量節點(diǎn)到中國銀行站點(diǎn)的往返延時(shí)和訪(fǎng)問(wèn)中國銀行主頁(yè)需要的下載時(shí)間結果。從中可以發(fā)現測量結果具有很強的相似性和規律性。圖5顯示的是一天之內測量中國銀行的往返延時(shí)和訪(fǎng)問(wèn)中國銀行主頁(yè)需要的下載時(shí)間結果?梢钥闯鲈诎滋8點(diǎn)以后下載時(shí)間和往返延時(shí)明顯增加,分析可能到了訪(fǎng)問(wèn)高峰期。 圖6顯示的是清華大學(xué)網(wǎng)絡(luò )中心到交通銀行網(wǎng)站節點(diǎn)的路徑,不同深度的灰色代表節點(diǎn)往返延時(shí)(RTT)處在不同的時(shí)間范圍,從最小的深灰色(小于15 ms)到最高的白色(大于120 ms)?梢栽趫D6中直觀(guān)地看到前面三跳其往返延時(shí)較小說(shuō)明可能在同一個(gè)校園網(wǎng)中,緊接著(zhù)往返延時(shí)變大,說(shuō)明可能跳出校網(wǎng)網(wǎng)絡(luò )。根據大量路徑測量結果可以發(fā)現校園網(wǎng)是否存在冗余路徑和一些配置問(wèn)題,進(jìn)而進(jìn)行優(yōu)化改進(jìn)。 本系統經(jīng)測試運行良好,其測量結果能夠較為客觀(guān)地反映網(wǎng)絡(luò )性能,為網(wǎng)絡(luò )管理者提供一個(gè)有效的輔助工具。但是本系統沒(méi)有考慮到基于IPv6網(wǎng)絡(luò )相關(guān)性能測量,因此下一階段需要繼續完善以能夠更好地實(shí)現基于IPv4和IPv6同時(shí)測量。 |