專利名稱:IPv6下DiffServ區(qū)域端到端網(wǎng)絡(luò)性能的快速測量方法及系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)測量技術(shù),尤其涉及IPv6環(huán)境下DiffServ區(qū)域端到端網(wǎng)絡(luò)性能的測量方法和系統(tǒng)。
背景技術(shù):
隨著Internet的迅猛發(fā)展和多媒體通信技術(shù)的進(jìn)步,IP網(wǎng)絡(luò)的服務(wù)質(zhì)量(QoS)已經(jīng)變得極為重要。由于不同類型的業(yè)務(wù)具有不同的業(yè)務(wù)特性和服務(wù)質(zhì)量要求,需要網(wǎng)絡(luò)能夠提供相應(yīng)的機(jī)制,使其能夠在高效地提高資源利用率的同時保證不同類型業(yè)務(wù)的QoS。目前主要的QoS體系結(jié)構(gòu)有兩種集成服務(wù)(InterServ)和區(qū)分服務(wù)(DiffServ)。InterServ面向動態(tài)虛電路,依賴于網(wǎng)絡(luò)流狀態(tài),復(fù)雜性高,可擴(kuò)展性、魯棒性和實現(xiàn)難度大,發(fā)展逐漸受阻;DiffServ業(yè)務(wù)模型定義了一種具有較高擴(kuò)展性的QoS實現(xiàn)方法,改變了網(wǎng)絡(luò)處理不同業(yè)務(wù)類流量的方式,具有伸縮性較好以及容易實現(xiàn)等優(yōu)點,是Internet QoS發(fā)展的重要方向。
隨著Internet的擴(kuò)展和新應(yīng)用的不斷推出,IPv4網(wǎng)絡(luò)在地址空間緊缺、端到端網(wǎng)絡(luò)的安全等方面越來越顯示出局限性,因此IETF在20世紀(jì)90年代提出IPv6協(xié)議的推薦版本,IPv6作為替代IPv4的下一代網(wǎng)絡(luò)被逐步推進(jìn)普及。IPv6不僅具有全新的報文結(jié)構(gòu)、巨大的地址空間和全新的地址配置方式,同時也為QoS機(jī)制提供了更好支持。
DiffServ區(qū)域參數(shù)測量目的是用測量手段取得網(wǎng)絡(luò)的性能和QoS指標(biāo)。網(wǎng)絡(luò)的QoS管理、維護(hù)、控制和計費都需要QoS參數(shù)測量的支持。目前,DiffServ區(qū)域端到端網(wǎng)絡(luò)性能主要有兩類測量方法。一種是通過在網(wǎng)絡(luò)一端向待測網(wǎng)絡(luò)中發(fā)送大量測試數(shù)據(jù)流,然后,沿通路各主要節(jié)點為測量監(jiān)視此測試業(yè)務(wù)流,對多個參數(shù)進(jìn)行統(tǒng)計、計算。涉及使用IPv6時間戳擴(kuò)展報文頭來記錄報文經(jīng)過每一跳路由器的當(dāng)前時間,根據(jù)多個探測報文的時間戳序列得到鏈路利用率的方法。這種方法存在兩大缺陷一方面,所發(fā)送的測試數(shù)據(jù)流由于并沒有經(jīng)過流聚類,對待測網(wǎng)絡(luò)本身的流量會造成影響,使測試結(jié)果失真;另一方面,這種方法在操作中由沿通路各主要節(jié)點對每個QoS指標(biāo)進(jìn)行逐個測試,測量不但耗費時間,而且使用戶難以對網(wǎng)絡(luò)性能有整體把握。另一種方法是基于路由器的被動測量方法,即通過路由器網(wǎng)管軟件的接口,直接獲取路由器軟件的統(tǒng)計數(shù)據(jù)。該方法具有較高的測量精度,但必須具備網(wǎng)絡(luò)的管理權(quán),特別是對于某些跨越多個運營商的網(wǎng)絡(luò)測量,該方法顯得很不靈活,局限性比較突出。
申請?zhí)枮?00610144203.3、名稱為“IPv6網(wǎng)絡(luò)鏈路利用率測量方法、測量裝置及IPv6網(wǎng)絡(luò)路由器”的專利申請公開了使用IPv6時間戳擴(kuò)展報文頭來記錄報文經(jīng)過每一跳路由器的當(dāng)前時間,根據(jù)多個探測報文的時間戳序列得到鏈路利用率,但其缺陷是未公開給出IPv6報文頭中時間戳信息具體的擴(kuò)展方法,也未涉及利用IPv6目標(biāo)選項擴(kuò)展報文頭構(gòu)造測試報文的方法、以及DiffServ區(qū)域網(wǎng)絡(luò)性能測試方法。
發(fā)明內(nèi)容
本發(fā)明的目的是為克服現(xiàn)有技術(shù)的缺陷,提供了一種IPv6下DiffServ區(qū)域端到端網(wǎng)絡(luò)性能的快速測量方法,可對IPv6下DiffServ區(qū)域端到端網(wǎng)絡(luò)性能進(jìn)行快速準(zhǔn)確的測量,能反映出整體網(wǎng)絡(luò)性能。
本發(fā)明的另一目的是提供一種該測量方法的系統(tǒng),結(jié)構(gòu)簡單,具有很好的靈活性,易于實施。
本發(fā)明測量方法采用的技術(shù)方案是由源端A、IPv6下DiffServ區(qū)域和目的端B組成,IPv6下DiffServ區(qū)域由若干邊緣節(jié)點和若干個核心節(jié)點構(gòu)成;所述源端A由測量控制模塊、報文處理模塊、業(yè)務(wù)流處理模塊、信息表維護(hù)模塊、統(tǒng)計計算模塊組成,目的端B由控制模塊、另一報文處理模塊和另一信息表維護(hù)模塊構(gòu)成。
本發(fā)明測量系統(tǒng)采用的技術(shù)方案是將測試源端A和目的端B與待測IPv6下DiffServ區(qū)域需測量的兩個網(wǎng)絡(luò)端點相連,分別建立其報文信息表TA、TB并配置測量所需的相關(guān)參數(shù)信息;源端A按指數(shù)分布序列向目的端B發(fā)送包含IPv6目標(biāo)選項擴(kuò)展頭報文構(gòu)成的測試業(yè)務(wù)流,并將報文信息記錄到信息表TA中,目的端B若在約束時間內(nèi)收到測試報文則構(gòu)造反向報文發(fā)送給源端A,否則丟棄該報文;收集存儲在源端A、目的端B分別維護(hù)的報文信息表TA、TB,對信息表進(jìn)行查詢、計算,將性能評價指標(biāo)量化,得出反映IPv6下DiffServ區(qū)域端到端網(wǎng)絡(luò)整體性能指標(biāo)。
本發(fā)明的有益效果是 1、充分利用IPv6和DiffServ結(jié)構(gòu)特點,利用IPv6目標(biāo)選項擴(kuò)展報文頭構(gòu)造測試報文的方法,構(gòu)造由僅供目標(biāo)節(jié)點處理的IPv6擴(kuò)展報文構(gòu)成的測試報文和業(yè)務(wù)流,擴(kuò)展報頭中記錄了時間戳和測試報文序號信息,為測量提供保障。
2、不需要對路由器進(jìn)行改造,也不需要網(wǎng)絡(luò)運營商公開內(nèi)部網(wǎng)絡(luò)拓?fù)浜驮O(shè)備配置等資料,只需網(wǎng)絡(luò)兩端部署系統(tǒng),使測量技術(shù)獲得網(wǎng)絡(luò)節(jié)點更多的支持。
3、對測量過程的可控性比較高,同時又不影響網(wǎng)絡(luò)節(jié)點的性能; 4、測試速度快,設(shè)定的指標(biāo)體系能反映出整體網(wǎng)絡(luò)性能,利于用戶從整體上把握DiffServ區(qū)域網(wǎng)絡(luò)性能,同時可以利用測量結(jié)果進(jìn)行其他網(wǎng)絡(luò)參數(shù)的推測。
圖1為本發(fā)明測量系統(tǒng)的結(jié)構(gòu)圖; 圖2為本發(fā)明測量方法的總流程圖; 圖3為本發(fā)明中測試報文的IPv6報頭結(jié)構(gòu); 圖4為IPv6目標(biāo)選項擴(kuò)展報頭結(jié)構(gòu); 圖5為圖4擴(kuò)展報頭中帶有時間戳和測試報文序號信息的的選項字段結(jié)構(gòu); 圖6為本發(fā)明測量方法中測試業(yè)務(wù)流組成原理圖; 圖7為本發(fā)明實施例1的網(wǎng)絡(luò)結(jié)構(gòu)示意圖。
具體實施例方式 如圖1所示,本發(fā)明提出的測量系統(tǒng)由源端A 201、IPv6下DiffServ區(qū)域301和目的端B 401組成。其中,源端A 201由測量控制模塊202、報文處理模塊203、業(yè)務(wù)流處理模塊204、信息表維護(hù)模塊205、統(tǒng)計計算模塊206組成。測量控制模塊202分別連接統(tǒng)計計算模塊206、報文處理模塊203和業(yè)務(wù)流處理模塊204,報文處理模塊203和業(yè)務(wù)流處理模塊204互連后分別連接至信息表維護(hù)模塊205,信息表維護(hù)模塊205接至統(tǒng)計計算模塊206。IPv6下DiffServ區(qū)域301由若干邊緣節(jié)點和若干個核心節(jié)點構(gòu)成,圖1僅示出2個邊緣節(jié)點302、306和3個核心節(jié)點303、304、305。目的端B 401由控制模塊402、報文處理模塊403和信息表維護(hù)模塊404構(gòu)成,其中控制模塊402分別接至報文處理模塊403和信息表維護(hù)模塊404,報文處理模塊403連接信息表維護(hù)模塊404。源端A 201和目的端B 401分別通過邊緣節(jié)點302、306接至IPv6下DiffServ區(qū)域301。
對上述源端A 201包括的多個功能模塊具體說明如下 測量控制模塊202,實現(xiàn)對包括IPv6配置、單路時延門限值、業(yè)務(wù)流結(jié)構(gòu)、速率、權(quán)重等測量參數(shù)的配置,對源端A 201和目的端B 401發(fā)送控制指令,啟動和控制測量過程。
報文處理模塊203,實現(xiàn)對報文構(gòu)造、發(fā)送、接收與處理功能。
信息表維護(hù)模塊205,實現(xiàn)對信息表的創(chuàng)建、更新、查詢等操作。
業(yè)務(wù)流處理模塊204,通過對處理數(shù)據(jù)報文流標(biāo)簽和流類別、設(shè)定上層應(yīng)用協(xié)議和填充內(nèi)容,實現(xiàn)業(yè)務(wù)流序列的構(gòu)造,并控制發(fā)送速率和分布規(guī)律。
統(tǒng)計計算模塊206,收集信息表數(shù)據(jù),按指標(biāo)體系進(jìn)行計算處理。
對目的端B 401中包括的功能模塊具體說明如下 控制模塊402,接受來自源端A 201的控制信息,并答復(fù)相關(guān)請求。
報文處理模塊403,實現(xiàn)對報文接收、構(gòu)造、發(fā)送與處理功能。
信息表維護(hù)模塊404,實現(xiàn)對信息表的創(chuàng)建、更新、查詢等操作。
本發(fā)明測量方法包括的源端A 201是通信的發(fā)起端,也是測量系統(tǒng)的主端點,對測量過程起主導(dǎo)作用。首先設(shè)定測試源端A 201與目的端B 401,分別建立其報文信息表TA、TB,并配置測量所需的相關(guān)參數(shù)信息。源端A 201按指數(shù)分布序列向目的端B 401發(fā)送包含IPv6目標(biāo)選項擴(kuò)展頭報文構(gòu)成的測試業(yè)務(wù)流。目的端B 401若在約束時間內(nèi)收到測試報文,則構(gòu)造反向報文發(fā)送給源端A 201,否則丟棄該報文。最后收集在源端A 201、目的端B 401分別維護(hù)的報文信息表TA、TB,按指標(biāo)體系統(tǒng)計、計算數(shù)據(jù),得出反映DiffServ區(qū)域301端到端網(wǎng)絡(luò)整體性能的指標(biāo)。
對上述的測量方法具體描述如下 參見圖2,本發(fā)明的具體測量操作步驟為 步驟101首先將測試源端A 201和目的端B 401分別與待測IPv6下DiffServ區(qū)域301選定需要測量的兩個網(wǎng)絡(luò)端點,即DiffServ區(qū)域的邊緣節(jié)點302、306相連。在測試源端A 201、目的端B 401分別創(chuàng)建數(shù)據(jù)報文信息表TA、TB,配置測量所需的相關(guān)參數(shù)信息,設(shè)定單向延遲的門限值,設(shè)置業(yè)務(wù)流結(jié)構(gòu)、速率、權(quán)重等信息。
步驟102測試源端A 201構(gòu)造包含IPv6目標(biāo)選項擴(kuò)展頭的報文組成符合要求的業(yè)務(wù)流,按指數(shù)分布序列以目的端B 401為目的地址發(fā)送,并將報文信息記錄到信息表TA中。
步驟103測試報文經(jīng)過IPv6下DiffServ區(qū)域301的邊緣和內(nèi)部路由節(jié)點時,將由各節(jié)點按各自預(yù)定的報文處理機(jī)制對其進(jìn)行處理,包括計量、標(biāo)記、整形和丟棄等操作。
步驟104~106目的端B 401如果在單向延遲門限值內(nèi)收到測試報文,將報文中的源地址A和目的地址B互換構(gòu)造反向報文,并將發(fā)出時間填寫在目標(biāo)選項擴(kuò)展頭中發(fā)送給源端A 201,否則丟棄該數(shù)據(jù)報文,該反向報文與原報文具有相同的報文結(jié)構(gòu),具有相同的業(yè)務(wù)流類型;同時,將報文信息記錄到信息表TB中。
步驟108源端A 201收到反向報文后,將收到報文的當(dāng)前時間等報文信息記錄到信息表TA中。
步驟109系統(tǒng)收集存儲在源端A 201、目的端B 401上的報文信息記錄表TA、TB,對信息表進(jìn)行查詢、計算,將性能評價指標(biāo)量化,從而動態(tài)地反映IPv6下DiffServ區(qū)域301運行狀態(tài)和評價網(wǎng)絡(luò)性能。
本發(fā)明源端A 201每發(fā)出一個數(shù)據(jù)報,就對信息表TA執(zhí)行插入記錄操作,記錄具體內(nèi)容為RA={記錄序號,流類型編碼,流標(biāo)簽值,報文序號,數(shù)據(jù)報長度,發(fā)送時間,0,0,0},最后三個字段值為0表示默認(rèn)未收到反向報文。源端A 201每收到一個反向數(shù)據(jù)報,就對信息表TA執(zhí)行更新操作,按測試報文IPv6目標(biāo)選項擴(kuò)展頭中所記錄的測試報文序號DGNum字段值檢索到要更新的記錄,更新Return字段值為1,更新RetTime字段值為收到反向報文的當(dāng)前時間,更新RetSentTime字段值為該反向報文擴(kuò)展頭中所填寫的發(fā)出時間戳信息。
目的端B 401每收到一個數(shù)據(jù)報,就對信息表TB執(zhí)行插入操作,記錄內(nèi)容為RB={記錄序號,流類型編碼,流標(biāo)簽值,報文序號,數(shù)據(jù)報長度,收到時間,報文發(fā)出時間,0},第2、3個字段分別為收到報文的IPv6報文頭中Traffic Class(流類別)字段值和Flow Label(流標(biāo)簽位)字段值,第4個字段為收到報文的IPv6擴(kuò)展頭中DGNum字段所記錄的值,第5、6個字段分別為收到報文的長度和當(dāng)前時間,第7個字段為該報文IPv6擴(kuò)展頭中所攜帶的時間戳信息,最后1個字段值為0表示默認(rèn)尚未發(fā)出反向報文。目的端B 401每發(fā)出一個反向數(shù)據(jù)報,就對信息表TB執(zhí)行更新操作,按報文序號檢索到要更新的記錄,更新BTime字段值為發(fā)出反向報文的當(dāng)前時間。
本發(fā)明測試用的IP層數(shù)據(jù)報頭由IPv6報文頭、目標(biāo)選項擴(kuò)展頭兩部分組成。IPv6報文頭如圖3所示。VersionIP協(xié)議版本號,定義值為6,長度為4位,其中Traffic Class,流類別,該字段設(shè)置與DiffServ不同的PHB類型所對應(yīng)的DSCP值,長度為8位;Flow Label流標(biāo)簽位,字段為各業(yè)務(wù)流設(shè)置標(biāo)記,長度為20位。Payload Length有效載荷長度,指緊跟在IPv6報頭的數(shù)據(jù)包的其他部分的長度,長度為16位。Next Header下一個報頭字段,定義值為60,表示只由數(shù)據(jù)包目的地址進(jìn)行處理的選項,長度為8位。Hop Limit跳限制字段,為IP數(shù)據(jù)包所經(jīng)過的最大跳數(shù),長度為8。Source Address發(fā)送方地址,即源地址,長度為128位。Destination Address接受方地址,即目的地址,長度為128位。DiffServ定義了3種PHB類型缺省的PHB(Best Effort,BE),加速轉(zhuǎn)發(fā)的PHB(ExpeditedForwarding,EF)和確保轉(zhuǎn)發(fā)的PHB(Assured Forward,AF,包含AF1,AF2,AF3,AF4四種類型)。不同的PHB類型對應(yīng)不同的編碼點(DSCP),也意味著不同的服務(wù)級別。在DiffServ測量中,測量數(shù)據(jù)包應(yīng)具有與待測流量相同的DSCP位。流標(biāo)簽用于標(biāo)記各數(shù)據(jù)流。
IPv6目標(biāo)選項擴(kuò)展頭如圖4所示,僅供目標(biāo)節(jié)點處理,且記錄有該報文發(fā)送時的時間戳信息。Next Header下一個報頭,表示緊跟IPv6擴(kuò)展時間戳報頭之后的下一個擴(kuò)展頭和協(xié)議報頭類型,長度為8位。Hdr Ext Len報頭擴(kuò)展長度,指目的選項擴(kuò)展報頭中的8字節(jié)塊的數(shù)量,其中不包括第一個8字節(jié),長度為8位。Options選項,是一系列字段的組合,即該擴(kuò)展報頭所承載的發(fā)送時間戳信息和測試報文序號等字段。
本發(fā)明方法所構(gòu)造的IPv6目標(biāo)選項擴(kuò)展頭的Options字段用來攜帶報文發(fā)送時間戳信息和記錄測試報文序號,供目標(biāo)節(jié)點進(jìn)行處理,該字段以類型-長度-值(TLV)格式編碼,具體擴(kuò)展方法如圖5所示,含義說明如下 第一個8位是Option Type字段,表示該選項類型和相關(guān)節(jié)點對該選項的處理方法;根據(jù)RFC2460的定義,Option Type字段的最高兩位用于說明相關(guān)節(jié)點對該選項的處理方法,值為00,表示若節(jié)點不支持該選項類型,則忽略此選項完成對擴(kuò)展頭其余部分的處理;第3位指明在包從源地址到目的地址的傳送過程中,選項數(shù)據(jù)的值是否可以改變,值為0,表示不允許改變;從第4位至第8位可根據(jù)需要定義。本發(fā)明中,Option Type字段完整格式為00000010,即值為2,表示該報文是由源端A發(fā)送給目的端B的報文;Option Type字段格式為00000011,即值為3,表示該報文是由目的端B發(fā)回給源端A的反向報文。第二個8位是Option Data Length字段,表示該選項的字節(jié)長度,不包括Option Type和OptionLength的長度,本方法定義值為8。最后是Option Value字段,長度為96位。其中,前64位用以記錄具體時間戳數(shù)值,用UTC午夜開始到當(dāng)前時間所經(jīng)過的微秒數(shù)表示,這8個字節(jié)的長度可以使時間戳具有足夠的精確度;緊跟其后的16位是測試報文序號DGNum字段,用于標(biāo)示測試報文序號;緊跟其后的16位是Pads字段,用于填充,以確保把整個IPv6報文頭的長度填充成8B的整數(shù)倍。
根據(jù)IETF對網(wǎng)絡(luò)服務(wù)性能參數(shù)制定的標(biāo)準(zhǔn),并結(jié)合DiffServ的特點,本方法選用延遲、穩(wěn)定性和帶寬三方面的六種參數(shù)作為測量指標(biāo),具體如下 1)單路延遲(One-way Delay)是網(wǎng)絡(luò)傳播延遲的基本定量特征,RFC2679規(guī)定了單向延遲度量值。定義為在T時,包P的第一個比特位從源端A 201向目的端B 401發(fā)送;目的端B 401在T+ΔT時收到包P的最后一個比特位,ΔT就是單路延遲。
2)回路延遲(Round-trip Delay)RFC2681中給出了定義。定義為在T時,包P的第一個比特位從源端A 201向目的端B 401發(fā)送;目的端B 401收到后,立即將類型包返回到源端A 201;源端A 201在T+ΔT時收到包P的最后一個比特位,ΔT就是回路延遲。
在本發(fā)明提出的測量方法中,目的端B 401通過調(diào)換源地址與目的地址構(gòu)造發(fā)送給源端A 201的反向包。設(shè)源端A 201在在T時,包P的第一個比特位從源端A 201向目的端B401發(fā)送;在T+ΔT時收到來自目的端B 401的返回包的最后一個比特位,則回路延遲為ΔT。
3)包延遲變化(Delay Variation)RFC3393中給出了定義。它基于單向延遲度量值,定義為同一數(shù)據(jù)流中的兩個包的單向延遲之差。假設(shè)在同一數(shù)據(jù)流中選取包P1和包P2,其單向延遲分別為ΔT1和ΔT2,則包的延遲變化為|ΔT1-ΔT2|。
4)丟包率(Packet Loss)RFC2680定義了包丟失。如果一個包不能在合理的時間段內(nèi)到達(dá)目的地,則認(rèn)為包丟失,這個合理的時間段依賴于測量得到的單向延遲。本發(fā)明方法中,丟包率分為從源端A 201到目地端B401的正向丟包率與目地端B401到源端A 201的反向丟包率。所有沒有在門限時間內(nèi)收到的報文都作為丟失報文,按公式 LR=L/N(1) 計算丟包率,其中L位丟失的報文數(shù),N位總的發(fā)送報文數(shù)。
5)平均包吞吐率(Average Packet Throughput)包吞吐率是指單位時間內(nèi)成功傳送的包的數(shù)量,它的值通常由該路徑上的傳送速度最慢的鏈路所決定,即所謂的瓶頸帶寬。為了使用戶通過測量結(jié)果對網(wǎng)絡(luò)性能有整體的了解,本方法以平均包吞吐率作為指標(biāo),按公式 計算各業(yè)務(wù)流的平均包吞吐率,其中Si為單個數(shù)據(jù)包的長度(單位B),ti為該數(shù)據(jù)包的往返時間(單位s)。
6)帶寬分配的公平性考慮到DiffServ針對不同的網(wǎng)絡(luò)業(yè)務(wù),在基于流的基礎(chǔ)上在網(wǎng)絡(luò)節(jié)點處被聚合,聚合后的流量具有相同的QoS保證的特點,因此本測量方法還把帶寬分配的公平性作為考察指標(biāo)。
帶寬分配的公平性是指,針對具有不同帶寬、延時和抖動等要求的業(yè)務(wù)流,DiffServ區(qū)域按照預(yù)定的服務(wù)策略提供有差別的服務(wù),有限的網(wǎng)絡(luò)資源應(yīng)以公平的方式分配給共享的各業(yè)務(wù)流。測量帶寬分配的公平性的目的是為改進(jìn)服務(wù)實現(xiàn)機(jī)制,消除各種流特性差異對公平性的影響提供依據(jù)。
定義DiffServ區(qū)域內(nèi)有R種服務(wù)級別,即對應(yīng)R種PHB,其中第j種服務(wù)級別中共有Nj條業(yè)務(wù)流(j=1,…,R),設(shè)屬于該服務(wù)級別的第i條業(yè)務(wù)流的預(yù)約帶寬為ci(i=1,…,Nj),域內(nèi)的總帶寬為Cb,則第i條業(yè)務(wù)流的公平帶寬為 公式(3)中,公平的帶寬由預(yù)約帶寬和加權(quán)剩余帶寬組成。對于一定的DiffServ區(qū)域,總帶寬Cb、服務(wù)級別種類數(shù)R都是已知常量,預(yù)約帶寬ci、當(dāng)前各業(yè)務(wù)流數(shù)Nj可以設(shè)定或測量得到,因此可以計算出fi的理論值。將fi與業(yè)務(wù)流的平均包吞吐率Bi進(jìn)行比較,可以對帶寬分配的公平性做出評價。
在源端A 201和目的端B 401中各維護(hù)著一張數(shù)據(jù)報文信息表,分別包含字段如表1所示。
表1.數(shù)據(jù)報文信息表字段一覽表
網(wǎng)絡(luò)流量中,75%的字節(jié)、70%的報文和75%的流是Web流量,F(xiàn)TP只占50%的字節(jié)、3%的報文和不到1%的流。當(dāng)網(wǎng)絡(luò)流量變化時,路由器作為擁塞控制設(shè)備將對流重新進(jìn)行資源分配,從而產(chǎn)生調(diào)整過程中的擁塞。整體上,DiffServ區(qū)域也會體現(xiàn)出受網(wǎng)絡(luò)流量特征影響較大的特征。為了使測量結(jié)果盡量真實的反映網(wǎng)絡(luò)性能,本發(fā)明如圖6所示,以DSCP值聚合性能為指導(dǎo),采用響應(yīng)阻塞流(TCP)和不響應(yīng)阻塞流(UDP)二者混合的數(shù)據(jù)流來模擬業(yè)務(wù)流;在具體業(yè)務(wù)類型上,采用Web、FTP、Telnet和基于UDP的各種應(yīng)用數(shù)據(jù)包按比例構(gòu)成網(wǎng)絡(luò)流量發(fā)送。通過IPv6報文的流標(biāo)簽位標(biāo)記各數(shù)據(jù)流。
根據(jù)IETF的相關(guān)標(biāo)準(zhǔn),本發(fā)明中同一種業(yè)務(wù)流按指數(shù)分布發(fā)送測試數(shù)據(jù)包。按照此規(guī)律發(fā)送同類業(yè)務(wù)測量包將構(gòu)成一個泊松過程,在此測量時間段內(nèi),測量給定狀態(tài)下的網(wǎng)絡(luò)所得的性能狀況漸近等價于整個網(wǎng)絡(luò)在此狀態(tài)下實際的性能狀況。根據(jù)泊松過程的特點,泊松過程的和仍為泊松過程,鏈路中各種不同業(yè)務(wù)的復(fù)合對于整個網(wǎng)絡(luò)來說,測量到的樣本數(shù)據(jù)仍舊是無偏的。同時,同一組測量實驗應(yīng)進(jìn)行多次,以保證測量數(shù)據(jù)在一定的分布滿意度內(nèi)。
在測量結(jié)束,由源端A 201的統(tǒng)計計算模塊206向目的端B 401獲取信息表TB的相關(guān)信息,系統(tǒng)收集信息表TA和TB,經(jīng)過指標(biāo)統(tǒng)計、計算后將網(wǎng)絡(luò)性能測量結(jié)果提供給用戶。
具體過程為 單路延遲分為從源端A 201到目的端B 401的延遲和從目的端B 401到源端A 201的延遲。各條報文從源端A 201到目的端B 401的延遲為ΔTAB=TB.ReceiveTime-TB.ASentTime;如果該報文的反向報文在TA中的Return字段值為1,則說明源端A 201收到反向報文,對應(yīng)的從目的端B 401到源端A 201的延遲為ΔTBA=TA.RetTime-TA.RetSentTime;否則反向報文丟失。
回路延遲為上述單路延遲之和ΔTRet=ΔTAB+ΔTBA。
包延遲變化根據(jù)定義,由每個數(shù)據(jù)流中相鄰數(shù)據(jù)報的單路延遲之差可以計算得到包延遲變化。
丟包率首先統(tǒng)計信息表TA中記錄數(shù)NA和未收到反向報文的記錄數(shù)LBA,再按這些記錄的報文序號查找信息表TB,如未找到該序號對應(yīng)的記錄,說明對應(yīng)報文丟失,丟失報文數(shù)為LAB,設(shè)TB中總的記錄數(shù)為NB,則丟包率為LR=(LAB+LBA)/(NA+NB)。
平均包吞吐率查找在信息表TA中收到反向報文的記錄,統(tǒng)計這些報文的長度之和
和往返時間之和
根據(jù)上文提出的計算公式(2)求出平均包吞吐率。
帶寬分配公平性通過信息表TA中流類型字段、流標(biāo)簽字段分別統(tǒng)計服務(wù)級別種類,以及各服務(wù)級別中業(yè)務(wù)流數(shù);再根據(jù)各業(yè)務(wù)流的預(yù)約帶寬以及總帶寬(通過估計或設(shè)定),按照公式(3)求出各條業(yè)務(wù)流的公平帶寬理論值。將各業(yè)務(wù)流的公平帶寬與實際包吞吐率進(jìn)行比較,可以評估帶寬分配是否公平。在具體實施中,可以通過變化業(yè)務(wù)流數(shù)、預(yù)約帶寬等參數(shù)進(jìn)行多組測試,動態(tài)觀察DiffServ區(qū)域資源分配和服務(wù)性能的變化特點,為改進(jìn)服務(wù)實現(xiàn)機(jī)制、消除各種流特性差異對公平性的影響提供依據(jù)。
本發(fā)明提出的測量方法可應(yīng)用于IPv6網(wǎng)絡(luò)中各種DiffServ區(qū)域端到端的網(wǎng)絡(luò)測量,為用戶提供反映網(wǎng)絡(luò)整體性能的服務(wù)質(zhì)量指標(biāo),并可以利用其進(jìn)行其他網(wǎng)絡(luò)參數(shù)的推測。
以下提供本發(fā)明的一個實施例進(jìn)一步說明本發(fā)明。
實施例 如圖7,首先在IPv6網(wǎng)絡(luò)DiffServ區(qū)域301中選定待測邊緣節(jié)點302、306,分別與測試源端A 201、目的端B 401相連,并建立報文信息表TA、TB。然后設(shè)定測量所需的參數(shù)信息。在源端AF發(fā)送的業(yè)務(wù)流中,服務(wù)等級AF1,AF2,AF3,BE分別發(fā)送常規(guī)TCP流,選擇Web、FTP等數(shù)據(jù)流;EF為基于UDP的恒定比特率(CBR)數(shù)據(jù)流,AF4為突發(fā)性的UDP語音流。為各業(yè)務(wù)流分配權(quán)值和首次實驗的傳輸速率,并按指數(shù)分布產(chǎn)生TCP數(shù)據(jù)包。源端A 201構(gòu)造包含IPv6目標(biāo)選項擴(kuò)展頭的報文組成符合要求的業(yè)務(wù)流,按設(shè)定的分布序列以目的端B 401為目的地址發(fā)送,并將報文信息記錄到信息表TA中。測試報文經(jīng)過DiffServ區(qū)域的邊緣和內(nèi)部路由節(jié)點到達(dá)目的端B 401。如果在單向延遲門限值內(nèi),目的端B 401將源地址A201和目的地址B401互換構(gòu)造反向報文,并將發(fā)出時間記錄在IPv6目標(biāo)選項擴(kuò)展頭中供源端A 201處理,否則丟棄該數(shù)據(jù)報文;同時,將報文信息記錄到信息表TB中。源端A 201收到反向報文后,將收到報文的當(dāng)前時間等報文信息記錄到信息表TA中。結(jié)束后,源端A 201收集報文信息表TA、TB,對信息表按指標(biāo)體系進(jìn)行計算,將性能評價指標(biāo)量化。
在具體實施中,本發(fā)明測量方法可以根據(jù)環(huán)境的不同設(shè)定與環(huán)境相似的業(yè)務(wù)流結(jié)構(gòu),如對時延敏感的語音流、允許一定的丟包率的視頻流、傳統(tǒng)的網(wǎng)頁瀏覽和文件傳輸業(yè)務(wù)等,從而最小程度減少對原網(wǎng)絡(luò)流量的影響;并可多次改變各業(yè)務(wù)流的發(fā)送速率和數(shù)量進(jìn)行反復(fù)測量,以測試待測網(wǎng)絡(luò)的帶寬分配變化。
權(quán)利要求
1.一種IPv6下DiffServ區(qū)域端到端網(wǎng)絡(luò)性能的快速測量系統(tǒng),由源端A(201)、IPv6下DiffServ區(qū)域(301)和目的端B(401)組成,其特征是
所述IPv6下DiffServ區(qū)域(301)由若干邊緣節(jié)點和若干個核心節(jié)點構(gòu)成;
所述源端A(201)由測量控制模塊(202)、報文處理模塊(203)、業(yè)務(wù)流處理模塊(204)、信息表維護(hù)模塊(205)、統(tǒng)計計算模塊(206)組成,所述目的端B(401)由控制模塊(402)、另一報文處理模塊(403)和另一信息表維護(hù)模塊(404)構(gòu)成,其中
測量控制模塊(202)實現(xiàn)對包括IPv6配置、單路時延門限值、業(yè)務(wù)流結(jié)構(gòu)、速率、權(quán)重測量參數(shù)的配置,對源端A(201)和目的端B(401)發(fā)送控制指令,啟動和控制測量過程;
報文處理模塊(203、403)實現(xiàn)對報文構(gòu)造、發(fā)送、接收與處理;
信息表維護(hù)模塊(205、404)實現(xiàn)對信息表的創(chuàng)建、更新和查詢操作;
業(yè)務(wù)流處理模塊(204)通過對處理數(shù)據(jù)報文流標(biāo)簽和流類別、設(shè)定上層應(yīng)用協(xié)議和填充內(nèi)容實現(xiàn)業(yè)務(wù)流序列的構(gòu)造,并控制發(fā)送速率和分布規(guī)律;
統(tǒng)計計算模塊(206)收集信息表數(shù)據(jù),按指標(biāo)體系進(jìn)行計算處理;
控制模塊(402)接受來自源端A(201)的控制信息,并答復(fù)相關(guān)請求。
2.一種IPv6下DiffServ區(qū)域端到端網(wǎng)絡(luò)性能的快速測量方法,其特征是包括以下步驟
1)將測試源端A(201)和目的端B(401)與待測IPv6下DiffServ區(qū)域(301)需測量的兩個網(wǎng)絡(luò)端點相連,分別建立其報文信息表TA、TB并配置測量所需的相關(guān)參數(shù)信息;
2)源端A(201)按指數(shù)分布序列向目的端B(401)發(fā)送包含IPv6目標(biāo)選項擴(kuò)展頭報文構(gòu)成的測試業(yè)務(wù)流,并將報文信息記錄到信息表TA中;
3)目的端B(401)若在約束時間內(nèi)收到測試報文則構(gòu)造反向報文發(fā)送給源端A(201),否則丟棄該報文;
4)收集存儲在源端A(201)、目的端B(401)分別維護(hù)的報文信息表TA、TB,對信息表進(jìn)行查詢、計算,將性能評價指標(biāo)量化,得出反映IPv6下DiffServ區(qū)域(301)端到端網(wǎng)絡(luò)整體性能指標(biāo)。
3.根據(jù)權(quán)利要求2所述的IPv6下DiffServ區(qū)域端到端網(wǎng)絡(luò)性能的快速測量方法,其特征是步驟2)所述目標(biāo)選項擴(kuò)展頭報文記錄有該報文發(fā)送時的時間戳信息,具有如下結(jié)構(gòu)
Next Header下一個報頭,緊跟IPv6擴(kuò)展時間戳報頭之后的下一個擴(kuò)展頭和協(xié)議報頭類型,長度為8位;
Hdr Ext Len報頭擴(kuò)展長度,指目的選項擴(kuò)展報頭中的8字節(jié)塊的數(shù)量,其中不包括第一個8字節(jié),長度為8位;
Options選項,擴(kuò)展報頭所承載的發(fā)送時間戳信息字段,該字段以類型-長度-值的格式編碼,格式為
第一個8位是Option Type字段,表示該選項類型和相關(guān)節(jié)點對該選項的處理方法;根據(jù)RFC2460的定義,Option Type字段的最高兩位用于說明相關(guān)節(jié)點對該選項的處理方法,值為00,表示若節(jié)點不支持該選項類型,則忽略此選項完成對擴(kuò)展頭其余部分的處理;第3位指明在包從源地址到目的地址的傳送過程中選項數(shù)據(jù)的值是否可改變,值為0,表示不允許改變;從第4位至第8位根據(jù)需要定義;
第二個8位是Option Data Length字段,該選項的字節(jié)長度,不包括Option Type和Option Length的長度;
最后是Option Value字段,長度為96位,其中前64位用以記錄具體時間戳數(shù)值,用UTC午夜開始到當(dāng)前時間所經(jīng)過的微秒數(shù)表示;緊跟其后的16位是測試報文序號DGNum字段,用于標(biāo)示測試報文序號;緊跟其后的16位是Pads字段,用于填充,以確保將整個IPv6報文頭的長度填充成8B的整數(shù)倍。
4.根據(jù)權(quán)利要求2所述的IPv6下DiffServ區(qū)域端到端網(wǎng)絡(luò)性能的快速測量方法,其特征是步驟2)所述指數(shù)分布序列采用響應(yīng)阻塞流和不響應(yīng)阻塞流二者混合各種應(yīng)用數(shù)據(jù)包按一定比例構(gòu)成混合業(yè)務(wù)流進(jìn)行發(fā)送,通過IPv6報文的流標(biāo)簽位標(biāo)記各業(yè)務(wù)流,其中同一種業(yè)務(wù)流按指數(shù)分布發(fā)送測試數(shù)據(jù)包,按此規(guī)律發(fā)送同類業(yè)務(wù)測量數(shù)據(jù)包將構(gòu)成一個泊松過程。
5.根據(jù)權(quán)利要求2所述的IPv6下DiffServ區(qū)域端到端網(wǎng)絡(luò)性能的快速測量方法,其特征是步驟1)所述的報文信息表TA、TB包含下表字段
6.根據(jù)權(quán)利要求2所述的IPv6下DiffServ區(qū)域端到端網(wǎng)絡(luò)性能的快速測量方法,其特征是步驟2)所述性能評價指標(biāo)為單路延遲、回路延遲、包延遲變化、丟包率、平均包吞吐率、帶寬分配的公平性,步驟4)所述的對信息表進(jìn)行查詢、計算的操作步驟包括
1)單路延遲的查表計算方法為各條報文從源端A(201)到目的端B(401)延遲為ΔTAB=TB.ReceiveTime-TB.ASentTime;若該報文的反向報文在TA中的Return字段值為1,則源端A(201)收到反向報文,對應(yīng)的從目的端B(401)到源端A(201)的延遲為ΔTBA=TA.RetTime-TA.RetSentTime;否則反向報文丟失;
2)回路延遲的查表計算為上述單路延遲之和ΔTRet=ΔTAB+ΔTBA;
3)包延遲變化的查表計算方法為由每個數(shù)據(jù)流中相鄰數(shù)據(jù)報的單路延遲之差計算得到包延遲變化;
4)丟包率的查表計算方法為首先統(tǒng)計信息表TA中記錄數(shù)NA和未收到反向報文的記錄數(shù)LBA,再按這些記錄的報文序號查找信息表TB,如未找到該序號對應(yīng)的記錄,則對應(yīng)報文丟失,丟失報文數(shù)為LAB,設(shè)TB中總的記錄數(shù)為NB,則丟包率為LR=(LAB+LBA)/(NA+NB);
5)平均包吞吐率的查表計算方法為查找在信息表TA中收到反向報文的記錄,統(tǒng)計報文的長度之和
和往返時間之和
根據(jù)公式
求出平均包吞吐率;
6)帶寬分配公平性的查表計算方法通過信息表TA中流類型字段、流標(biāo)簽字段分別統(tǒng)計服務(wù)級別種類和各服務(wù)級別中業(yè)務(wù)流數(shù);根據(jù)估計或設(shè)定的各業(yè)務(wù)流的預(yù)約帶寬以及總帶寬,按照
求出各條業(yè)務(wù)流的公平帶寬理論值;將各業(yè)務(wù)流的公平帶寬與實際包吞吐率比較。
全文摘要
本發(fā)明公開了一種IPv6下DiffServ區(qū)域端到端網(wǎng)絡(luò)性能的快速測量方法及系統(tǒng),由源端A、IPv6下DiffServ區(qū)域和目的端B組成,將測試源端A和目的端B與待測IPv6下DiffServ區(qū)域需測量的兩個網(wǎng)絡(luò)端點相連,分別建立其報文信息表TA、TB并配置測量所需的相關(guān)參數(shù)信息;源端A按指數(shù)分布序列向目的端B發(fā)送包含IPv6目標(biāo)選項擴(kuò)展頭報文構(gòu)成的測試業(yè)務(wù)流,并將報文信息記錄到信息表TA中,目的端B若在約束時間內(nèi)收到測試報文則構(gòu)造反向報文發(fā)送給源端A,否則丟棄該報文;目的端B分別維護(hù)的報文信息表TA、TB,對信息表進(jìn)行查詢、計算,將性能評價指標(biāo)量化。本發(fā)明擴(kuò)展報頭中記錄了時間戳和測試報文序號信息,為測量提供保障,測量過程的可控性較高,測試速度快。
文檔編號H04L29/06GK101808016SQ201010116379
公開日2010年8月18日 申請日期2010年3月2日 優(yōu)先權(quán)日2010年3月2日
發(fā)明者周娟, 王熠, 陳秉巖, 黃皎, 陸小春, 吳凱, 劉憲成, 陳華山 申請人:河海大學(xué)常州校區(qū)