具有衛(wèi)星鏈路的TCP/IP網(wǎng)絡(luò)性能測量方法
本項(xiàng)目采用主動測試方法:在網(wǎng)絡(luò)上布置測試機(jī)器,主動發(fā)送測試流量,如,從A端到B端,獲得兩端點(diǎn)間的測試結(jié)果信息。
本項(xiàng)目選擇的網(wǎng)絡(luò)測量內(nèi)容包括帶寬、時(shí)延、時(shí)延抖動、丟包率、流量和吞吐量等。
4.2試驗(yàn)要點(diǎn)
①將實(shí)驗(yàn)網(wǎng)絡(luò)設(shè)為某專用網(wǎng)絡(luò)帶寬,逐步加大業(yè)務(wù),測量信息丟包率、時(shí)延和時(shí)延抖動等指標(biāo),目測視頻傳輸?shù)馁|(zhì)量情況,標(biāo)定上述指標(biāo)的可容忍度。
②在給定業(yè)務(wù)容量情況下,逐步調(diào)低網(wǎng)絡(luò)傳輸速率,按照標(biāo)定指標(biāo)進(jìn)行判斷,得出傳輸給定業(yè)務(wù)的所需的最小帶寬。
③加入衛(wèi)星信道模擬器,逐步加入噪聲或加大時(shí)延,測試信息傳輸丟包率的變化情況,繪制丟包率、時(shí)延、噪聲功率的雙變量曲線。
④變化業(yè)務(wù)數(shù),記錄視頻質(zhì)量變化、各段帶寬值的變化、各段時(shí)延值變化,丟包率指標(biāo)變化,查找專用網(wǎng)絡(luò)在帶寬和時(shí)延上的“瓶頸”。這里的時(shí)延專指傳播時(shí)延,不包括傳輸時(shí)延,因?yàn)閭鬏敃r(shí)延已經(jīng)由瓶頸帶寬反映出來[7]。
4.3測試程序架構(gòu)
測量程序采用Winpcap+Winsock的層次化測量架構(gòu)。
Winpcap源于BPF(BerkleyPacketFilter)和libpcap函數(shù)庫,支持Win32的網(wǎng)絡(luò)監(jiān)測程序設(shè)計(jì)。Winsock是人們很熟悉的Windows套接字編程工具,源于Berkley Socket技術(shù)。這兩款網(wǎng)絡(luò)開發(fā)工具各有特色,結(jié)合使用可以取長補(bǔ)短,提高軟件開發(fā)的效率,增強(qiáng)軟件的運(yùn)行性能。Winpcap支持網(wǎng)絡(luò)原始數(shù)據(jù)包的接收和發(fā)送,繞開了TCP/IP協(xié)議棧,有利于高速的數(shù)據(jù)包檢測和分析;支持對數(shù)據(jù)包的過濾,只處理應(yīng)用程序感興趣的數(shù)據(jù),可以提高程序運(yùn)行性能,減少系統(tǒng)開銷,但不能為端到端的應(yīng)用提供面向連接和無連接的網(wǎng)絡(luò)服務(wù)。
Winsock是建立在TCP/IP協(xié)議棧之上的程序開發(fā)工具,提供面向連接和的連接得網(wǎng)絡(luò)服務(wù),可以大大降低程序開發(fā)工作量。但是,網(wǎng)絡(luò)程序必須從協(xié)議棧獲取數(shù)據(jù)包,增加了運(yùn)行的開銷,降低了性能;由于鏈路層幀首部在提交給IP層之前就已經(jīng)去掉,不便于網(wǎng)絡(luò)低層的數(shù)據(jù)分析,應(yīng)用范圍有限。
圖3測量程序架構(gòu)
程序采用三層架構(gòu):網(wǎng)絡(luò)接口層、網(wǎng)絡(luò)層、測試層。
其中網(wǎng)絡(luò)接口層就是網(wǎng)卡驅(qū)動程序模塊,負(fù)責(zé)程序與網(wǎng)絡(luò)設(shè)備間的交互。
網(wǎng)絡(luò)層包括兩部分:一個是基于NPF(網(wǎng)絡(luò)數(shù)據(jù)包過濾器)的網(wǎng)絡(luò)模塊,一個是基于TCP/IP的網(wǎng)絡(luò)模塊。
測試層通過Winpcap編程接口來訪問NPF,檢測出原始數(shù)據(jù)包并獲取數(shù)據(jù)包到達(dá)時(shí)刻;通過Winsock編程接口來訪問TCP/IP,獲取TCP會話信息。主從程序測試層均包括兩個基本功能模塊:數(shù)據(jù)包檢測和TCP會話。數(shù)據(jù)包檢測模塊利用Winpcap接口獲取網(wǎng)絡(luò)中的原始數(shù)據(jù)包,測量開始后,主程序數(shù)據(jù)包檢測模塊直接解析出發(fā)送端計(jì)算機(jī)發(fā)出的數(shù)據(jù)包IP標(biāo)識,記錄進(jìn)主測試窗口,從程序的數(shù)據(jù)包檢測模塊直接解析出接收端計(jì)算機(jī)接收的數(shù)據(jù)包IP標(biāo)識,記錄進(jìn)從測試窗口,同時(shí)記錄視頻包的達(dá)到時(shí)刻;TCP會話模塊利用Winsock接口建立主從程序間的TCP連接,控制測量步驟,并交互測量過程中獲取的數(shù)據(jù)。窗口調(diào)節(jié)模塊利用這兩個基本功能動態(tài)調(diào)整測試窗口尺寸。根據(jù)正確接收的數(shù)據(jù)包和主程序通知確認(rèn)的數(shù)據(jù)包序列,從程序的丟包確認(rèn)模塊檢查數(shù)據(jù)包的丟失情況,并把丟包數(shù)據(jù)反饋給主程序。根據(jù)反饋的丟包信息,主程序的丟包率計(jì)算分析模塊計(jì)算丟包率。從程序的延遲計(jì)算模塊通過時(shí)間提取,計(jì)算相繼到達(dá)視頻包的延遲,并通過TCP會話連接將最后的延遲統(tǒng)計(jì)值返回給主程序的延遲獲取模塊。
5結(jié)論
通過將測量軟件用于實(shí)驗(yàn)平臺進(jìn)行測試,驗(yàn)證了所選性能測量指標(biāo)的可用性和測量方法的有效性。特別針對專用網(wǎng)絡(luò)的具體情況,制定了適合網(wǎng)絡(luò)承載業(yè)務(wù)傳輸?shù)膬?yōu)先級方案,提出了改進(jìn)網(wǎng)絡(luò)性能的方案措施,為項(xiàng)目順利結(jié)題打下了基礎(chǔ)。在今后的工作中,將根據(jù)目標(biāo)任務(wù)書要求,加強(qiáng)故障管理功能研究,并把網(wǎng)絡(luò)性能測試和故障定位技術(shù)推廣到新一代自組織網(wǎng)絡(luò)中。在衛(wèi)星信道模擬器方面,將把研究具有星際網(wǎng)絡(luò)的綜合性多功能模擬器作為目標(biāo)。
本文作者的創(chuàng)新點(diǎn)是:(1)試驗(yàn)平臺的可變速率設(shè)計(jì)為網(wǎng)絡(luò)可用帶寬的測試提供了條件;(2)引入衛(wèi)星信道模擬器,實(shí)現(xiàn)大時(shí)延信道的TCP/IP傳輸研究。
tcp/ip相關(guān)文章:tcp/ip是什么
評論