亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于ICMPv6協(xié)議的IPv6網(wǎng)絡(luò)帶寬測(cè)量算法研究和實(shí)現(xiàn)

        2019-01-09 03:12:22儲(chǔ)赟朱尚明
        中國教育網(wǎng)絡(luò) 2018年11期
        關(guān)鍵詞:測(cè)量

        文/儲(chǔ)赟 朱尚明

        隨著互聯(lián)網(wǎng)及其應(yīng)用的飛速增長,當(dāng)前的互聯(lián)網(wǎng)協(xié)議IPv4地址短缺等缺點(diǎn)已經(jīng)越來越突出。IPv6作為IETF確定的下一代互聯(lián)網(wǎng)協(xié)議,有望解決IPv4地址短缺等問題。我國已經(jīng)建成了世界上最大規(guī)模的IPv6網(wǎng)絡(luò),但是IPv4向IPv6的演進(jìn)需要相當(dāng)長的時(shí)間才能完成。網(wǎng)絡(luò)應(yīng)用特別是高清視頻等業(yè)務(wù)的拓展,對(duì)網(wǎng)絡(luò)帶寬提出了較高的要求。由于鏈路可用帶寬動(dòng)態(tài)變化,背景流量呈現(xiàn)長相關(guān)、自相似特性以及短時(shí)突發(fā)性,使鏈路帶寬的實(shí)際測(cè)量面臨很大困難和挑戰(zhàn),成為下一代網(wǎng)絡(luò)研究的熱點(diǎn)問題[1]。

        網(wǎng)絡(luò)帶寬是指網(wǎng)絡(luò)鏈路在單位時(shí)間內(nèi)所能傳送的是數(shù)據(jù)報(bào)文的最大比特?cái)?shù)量,即最大的傳輸速率,它一般可以分為鏈路帶寬(Link bandwidth)和可用帶寬(Available bandwidth)兩種[2]。鏈路帶寬即數(shù)據(jù)在連接兩個(gè)節(jié)點(diǎn)間鏈路上的最大容量帶寬,可用帶寬即某一時(shí)刻在給定鏈路上發(fā)送數(shù)據(jù)可用的最大帶寬。在實(shí)際應(yīng)用中,由于多個(gè)業(yè)務(wù)流會(huì)共享網(wǎng)絡(luò),因此,鏈路帶寬無法準(zhǔn)確地反映業(yè)務(wù)流在當(dāng)前網(wǎng)絡(luò)中的帶寬占用狀態(tài),相比較而言,可用帶寬更準(zhǔn)確地反映網(wǎng)絡(luò)當(dāng)前的流量通過能力。

        本文提出了一種在下一代網(wǎng)絡(luò)協(xié)議IPv6網(wǎng)絡(luò)中,運(yùn)用ICPMv6實(shí)現(xiàn)對(duì)網(wǎng)絡(luò)端到端可用帶寬進(jìn)行測(cè)量的有效方法。

        帶寬測(cè)量算法研究現(xiàn)狀

        目前常用的帶寬測(cè)量方法主要有以下三種。

        1.PPTD(Packet Pair/Train Dispersion)

        PPTD方法用于測(cè)量端到端的整體帶寬容量。PPTD方法的原理是在源端發(fā)送有固定時(shí)間間隔的一對(duì)大小相同的數(shù)據(jù)包,然后在接收端測(cè)量這兩個(gè)包的時(shí)間間隔,通過這個(gè)時(shí)間間隔可以推算出端到端的帶寬容量[3]。該方法要求網(wǎng)絡(luò)中沒有其他的干擾流量,這在實(shí)際網(wǎng)絡(luò)環(huán)境中基本上不可能實(shí)現(xiàn),因此需要多次測(cè)量,將那些受到干擾的測(cè)量包過濾掉。這種方法還需要兩端同時(shí)進(jìn)行測(cè)量,部署成本高。

        2. SLoPS(Self-Loading Periodic Streams)

        SLoPS是另一種用于測(cè)量端到端可用帶寬的方法。SLoPS也是從源端發(fā)送數(shù)據(jù)包到目的端,其原理是當(dāng)測(cè)試數(shù)據(jù)流量速率大于可用帶寬時(shí),目的端包的時(shí)延將呈上升趨勢(shì),在測(cè)試數(shù)據(jù)流量速度近似可用帶寬時(shí),時(shí)延將是較平穩(wěn)的[4]。該方法是通過不斷發(fā)送測(cè)試數(shù)據(jù)來進(jìn)行流量估算,因此對(duì)網(wǎng)絡(luò)資源的占用較大,還會(huì)對(duì)現(xiàn)網(wǎng)的正常業(yè)務(wù)性能造成影響。

        3.VPS(Variable Packet Size)

        VPS是一種基于可變包長的探測(cè)方法,該方法設(shè)計(jì)思想是從源端到路徑上的任一節(jié)點(diǎn)發(fā)送不同大小的包, 通過計(jì)算往返時(shí)延與包大小的函數(shù)關(guān)系來獲取路徑上各段鏈路的可用帶寬[5]。具體來說,首先利用IP包頭的TTL域(工作原理和常用的Tracerouter工具 一樣),強(qiáng)制包在一個(gè)特定的跳上超時(shí)。這一跳的節(jié)點(diǎn)將丟棄該探測(cè)包,并利用Internet控制消息協(xié)議(ICMPv6)的超時(shí)錯(cuò)誤報(bào)文發(fā)回源端,源端就獲取到了路徑節(jié)點(diǎn)信息,進(jìn)而通過接收到的ICMPv6報(bào)文計(jì)算出到這一跳的往返時(shí)延和可用帶寬??勺儼LVPS探測(cè)方法僅需要在源進(jìn)行測(cè)量,部署成本低。

        基于ICMPv6協(xié)議的可變包長帶寬測(cè)量算法

        1. 測(cè)量原理

        假設(shè)一條端到端的路徑由節(jié)點(diǎn)1到節(jié)點(diǎn)N構(gòu)成 ,如圖1所示,其中Ci是節(jié)點(diǎn)i到節(jié)點(diǎn)i+1之間的鏈路帶寬(1≤N)。送時(shí)延三部分組成,設(shè)T(L)為發(fā)送一個(gè)長度為L的ICMPv6包的單程時(shí)延, 則有

        圖1 端到端路徑示意

        其中α為傳播時(shí)延,在數(shù)量級(jí)上目前基本上都達(dá)到了光速級(jí)別,與包的大小無關(guān),只要不改變路徑,這部分時(shí)延就不會(huì)改變,為一固定值。βi為節(jié)點(diǎn)i到i+1排隊(duì)時(shí)延,主要與節(jié)點(diǎn)的緩存有關(guān),由于網(wǎng)絡(luò)內(nèi)數(shù)據(jù)包的數(shù)量很多,可能會(huì)在某個(gè)節(jié)點(diǎn)緩存內(nèi)排隊(duì)等待發(fā)送,這種現(xiàn)象將導(dǎo)致排隊(duì)時(shí)延。取最小單程時(shí)延時(shí),排隊(duì)時(shí)延可近似為0或一固定值β(設(shè)

        設(shè)B為節(jié)點(diǎn)1到節(jié)點(diǎn)N的可用帶寬,可近似為節(jié)點(diǎn)1到N這條路徑上的瓶頸鏈路帶寬,即B =min(Ci)。當(dāng)N=2時(shí),則有;當(dāng)N > 2時(shí),不難證明有。簡(jiǎn)單起見,本文取作為可用帶寬的近似估計(jì)值,即

        這就是可變包長帶寬測(cè)量方法的數(shù)學(xué)表達(dá),即在單程時(shí)延最小時(shí)通過求出發(fā)送包長與兩端的單程時(shí)延函數(shù)的斜率,即可計(jì)算出兩端的可用帶寬。

        2. 設(shè)計(jì)思想

        可變包長帶寬測(cè)量算法的設(shè)計(jì)思想主要基于以下兩點(diǎn):

        (1)為了避免排隊(duì)時(shí)延,從源端節(jié)點(diǎn)發(fā)送大小固定的很多包,該方法假設(shè)至少有一個(gè)包可以避免排隊(duì)時(shí)延,那么該往返時(shí)延肯定是不包含排隊(duì)時(shí)延的。因此,我們可以認(rèn)為在這些包中具有最小雙程時(shí)延的包只包含了發(fā)送時(shí)延和傳播時(shí)延。

        (2)為了簡(jiǎn)化計(jì)算,相鄰發(fā)送包的增幅相同,并假定雙程時(shí)延除以2即為單程時(shí)延。

        為了更精確的估算和忽略排隊(duì)時(shí)延,從源端每次發(fā)送大小不同的探測(cè)包后,最小雙程時(shí)延的包是排隊(duì)時(shí)延最小的,緊接著最小雙程時(shí)延探測(cè)包的下一個(gè)探測(cè)包在相同的網(wǎng)絡(luò)環(huán)境下,也是排隊(duì)時(shí)延較小的,因此,我們可以認(rèn)為使用這兩次發(fā)送的時(shí)延差ΔT(即發(fā)送最小雙程時(shí)延探測(cè)包的時(shí)間與下一個(gè)探測(cè)包的雙程時(shí)延之差)計(jì)算所得的可用帶寬是比較精確的。

        具體算法設(shè)計(jì)過程如下:

        (1)從源端到目的端發(fā)送m個(gè)相同大小的探測(cè)包L,計(jì)算出最小雙程時(shí)延Tmin(L),此時(shí),認(rèn)為沒有排隊(duì)時(shí)延或者是最小排隊(duì)時(shí)延的。

        (2)根據(jù)探測(cè)包的增幅ΔL從源端到目的端發(fā)送包長為L0、L0+ΔL、…、L0+nΔL的探測(cè)包,并根據(jù)第(1)步計(jì)算出每個(gè)探測(cè)包的最小雙程時(shí)延Tmin(L0)、Tmin(L0+ΔL)、…、Tmin(L0+nΔL)。

        (3)從 Tmin(L0)、Tmin(L0+ΔL)、…、Tmin(L0+nΔL)中再獲取最小值,假設(shè)i是最小雙程時(shí)延最小值的位置編號(hào),計(jì)算出最小雙程時(shí)延的差ΔT =Tmin(i+1)-Tmin(i)。

        (4)取雙程時(shí)延的一半作為單程時(shí)延,根據(jù)ΔL和ΔT的比值估算可用帶寬,即B=ΔL/(ΔT/2)。

        3.實(shí)現(xiàn)機(jī)制

        本文在.Net環(huán)境下利用MFC基于原始套接字(Raw Socket)在IPv6環(huán)境下對(duì)可用帶寬測(cè)量算法進(jìn)行了技術(shù)實(shí)現(xiàn)和模擬驗(yàn)證。為生成ICMPv6回送請(qǐng)求和應(yīng)答報(bào)文,首先定義一個(gè)ICMPv6包的結(jié)構(gòu)如下:

        圖2 端到端最小雙程時(shí)延的流程

        typedef struct icmp6_hdr

        { //頭部8個(gè)字節(jié)

        u_char icmp6_type; //類型

        u_char icmp6_code; //代碼

        u_short icmp6_cksum; //校驗(yàn)和

        u_short icmp6_id; //標(biāo)識(shí)符

        u_short icmp6_seq; //序列號(hào)

        //報(bào)文主體

        LONGLONG icmp6_data[DATALEN]; // 其中 icmp6_data[0]存儲(chǔ)發(fā)送時(shí)間(微秒級(jí))

        } ICMP6_HDR,*PICMP6_HDR;

        (1)計(jì)算兩端的最小雙程時(shí)延

        從源端到目的端發(fā)送m個(gè)相同大小的探測(cè)包,計(jì)算出最小雙程時(shí)延的流程圖如圖2所示。

        首先創(chuàng)建socket套接字并發(fā)起連接,構(gòu)造探測(cè)包時(shí)將發(fā)送端的CPU時(shí)鐘(微秒)寫入icmp6_data[0],然后把準(zhǔn)備好的指定大小的探測(cè)包發(fā)送到指定目的端,接著等待接收應(yīng)答包。只有滿足下面三個(gè)條件的應(yīng)答包才是測(cè)試發(fā)送探測(cè)包的應(yīng)答包:包的類型為ICMP6_ECHO_REPLY,目的端地址與發(fā)送包指定的目的端地址一致,包中的標(biāo)識(shí)符與發(fā)送時(shí)的進(jìn)程號(hào)一致。解析應(yīng)答包獲得接收包時(shí)的CPU時(shí)鐘,從應(yīng)答包中的icmp6_data[0]中取出發(fā)送時(shí)的CPU時(shí)鐘,兩者之差就是發(fā)送到目的端的雙程時(shí)延T,并用定義的數(shù)組來存放計(jì)算獲得的發(fā)送探測(cè)包的雙程時(shí)延。待發(fā)送完指定發(fā)送次數(shù)并應(yīng)答包處理完畢后,采用快速排序算法計(jì)算出發(fā)送到指定目的端、指定包大小的最小雙程時(shí)延。

        (2)計(jì)算兩端的可用帶寬

        計(jì)算指定目的端的可用帶寬的流程圖如圖3所示。

        首先初始化變長包個(gè)數(shù)n、包長增幅Size和起始包大小L0,根據(jù)包長增幅計(jì)算探測(cè)包大小L=L0+j*Size(j=0,1,…,n-1),然后發(fā)送探測(cè)包,計(jì)算該探測(cè)包的最小雙程時(shí)延并存放到定義的數(shù)組中,直到發(fā)送的測(cè)試包的個(gè)數(shù)等于n時(shí)不再發(fā)送。最后根據(jù)快速排序算法獲得數(shù)組中的最小值和該值所在位置,并計(jì)算出可用帶寬的值。

        實(shí)驗(yàn)結(jié)果及分析

        我們對(duì)上述可用帶寬測(cè)量算法在IPv6環(huán)境下進(jìn)行了測(cè)試驗(yàn)證,并和常用的帶寬測(cè)量的工具進(jìn)行對(duì)比分析。

        1.實(shí)驗(yàn)環(huán)境

        圖3 計(jì)算指定目的端的可用帶寬的流程

        源端(發(fā)送端)為華東政法大學(xué)一臺(tái)主機(jī),IPv6地址為:2001:da8:8020:3:fd35:fc63:9151:c19e;目的端(接收端)為上海外國語大學(xué)一臺(tái)主機(jī),IPv6地址為:2001:250:600f:160:250:56ff:feac:3d03。測(cè)試時(shí)間為2018年6月13日 14∶21。

        2. 實(shí)驗(yàn)結(jié)果及分析

        為進(jìn)行測(cè)試驗(yàn)證,我們對(duì)本文提及的可用帶寬測(cè)量算法初始化L0=32字節(jié),帶寬測(cè)量增幅ΔL分別為2000字節(jié)、2500字節(jié)、3000字節(jié),不同大小探測(cè)包測(cè)試個(gè)數(shù)為n=10,相同探測(cè)包的發(fā)送測(cè)試次數(shù)為m=5,分別進(jìn)行了實(shí)際測(cè)試。

        (1)探測(cè)包每次遞增2000字節(jié)的測(cè)試結(jié)果見表1。

        根據(jù)表1得出探測(cè)包增幅ΔL=2000B,發(fā)送的10次探測(cè)包中最小雙程時(shí)延為2.21ms,最小雙程時(shí)延所在位置序號(hào)為1,ΔT=Tmin(i+1) - Tmin(i)=2.73-2.21=0.52ms, 計(jì)算可用帶寬為B=ΔL/(ΔT/2)=2000*8/(0.52/2)=61538Kbps=61.538Mbps。

        表1 探測(cè)包增幅為2000字節(jié)

        表2 探測(cè)包增幅為2500字節(jié)

        表3 探測(cè)包增幅為3000字節(jié)

        表4 30次重復(fù)實(shí)驗(yàn)結(jié)果(Mbps)

        (2)探測(cè)包每次遞增2500字節(jié)的測(cè)試結(jié)果見表2。

        根據(jù)表2得出探測(cè)包增幅ΔL=2500B,發(fā)送的10次探測(cè)包中最小雙程時(shí)延為1.98ms,最小雙程時(shí)延所在位置序號(hào)為1,ΔT=Tmin(i+1)-Tmin(i)=2.56-1.98=0.58ms,計(jì)算可用帶寬為B=ΔL/(ΔT/2 )=2500*8/(0.58/2)=68965Kbps=68.965Mbps 。

        (3)探測(cè)包每次遞增3000字節(jié)的測(cè)試結(jié)果見表3。

        根據(jù)表3得出探測(cè)包增幅ΔL=2500B ,發(fā)送的10次探測(cè)包中最小雙程時(shí)延為2.23ms,最小雙程時(shí)延所在位置序號(hào)為 1,ΔT=Tmin(i+1)-Tmin(i)=2.23-2.93=0.7ms,計(jì)算可用帶寬為B=ΔL/(ΔT/2 )=3000*8/(0.7/2) =68571Kbps=68.571Mbps。

        為了取得具有統(tǒng)計(jì)性和普遍規(guī)律性的實(shí)驗(yàn)結(jié)果,我們對(duì)測(cè)量結(jié)果進(jìn)行了反復(fù)多次驗(yàn)證,以避免單次測(cè)量所產(chǎn)生的隨機(jī)誤差。通過次30次重復(fù)驗(yàn)證,結(jié)果見表4。

        為了驗(yàn)證測(cè)試結(jié)果的正確性和有效性,我們通過Google瀏覽器自帶的帶寬測(cè)量工具從目的端(上海外國語大學(xué)一臺(tái)主機(jī),IPv6地址為:2001:250:600f:160:250:56ff:feac:3d03)下載1.9G的文件測(cè)量的可用帶寬范圍為42.2 ~ 71.2Mbps。而表4多次重復(fù)測(cè)量結(jié)果的平均值分別為62.07Mbps、69.01Mbps、69.69Mbps,可見我們提出的可變包長帶寬測(cè)量算法和Google瀏覽器自帶的帶寬測(cè)量工具的測(cè)量結(jié)果是非常接近的,在IPv6網(wǎng)絡(luò)下是可行和有效的。

        本文提出了在IPv6網(wǎng)絡(luò)中基于ICMPv6協(xié)議的可變包長帶寬測(cè)量算法,并進(jìn)行了編程實(shí)現(xiàn)。通過多種測(cè)試結(jié)果與常用的帶寬測(cè)量工具對(duì)比結(jié)果,驗(yàn)證了該算法的可行性和有效性。為測(cè)量IPv6網(wǎng)絡(luò)兩端之間的可用帶寬提供了一種簡(jiǎn)單有效的方法,為網(wǎng)絡(luò)監(jiān)控和性能測(cè)量提供了有益的手段。

        猜你喜歡
        測(cè)量
        測(cè)量重量,測(cè)量長度……
        把握四個(gè)“三” 測(cè)量變簡(jiǎn)單
        滑動(dòng)摩擦力的測(cè)量和計(jì)算
        滑動(dòng)摩擦力的測(cè)量與計(jì)算
        測(cè)量的樂趣
        二十四節(jié)氣簡(jiǎn)易測(cè)量
        日出日落的觀察與測(cè)量
        滑動(dòng)摩擦力的測(cè)量與計(jì)算
        測(cè)量
        測(cè)量水的多少……
        99久久精品国产91| 亚洲日韩图片专区小说专区| av草草久久久久久久久久久| 日本免费一区二区在线| 亚洲丁香婷婷久久一区二区| 欧美极品少妇无套实战| 伊人精品无码AV一区二区三区 | 亚洲中文字幕第一页在线| 色综合久久久久综合一本到桃花网| av免费资源在线观看| 男女性杂交内射妇女bbwxz| 亚洲综合av一区二区三区蜜桃| 亚洲第一页综合图片自拍| 国产一及毛片| 人妻少妇偷人精品久久人妻| 亚洲乱码中文在线观看| 亚洲精品午睡沙发系列| 国产精品1区2区| 日韩va高清免费视频| 97一期涩涩97片久久久久久久| 99精品国产一区二区三区不卡 | 国产精品国产三级国产av创| 在线视频自拍视频激情| 亚洲综合激情另类小说区| 日韩人妻精品无码一区二区三区 | 国产成人精品免费视频大全| 日产国产精品亚洲高清| 亚洲久悠悠色悠在线播放| 国产精品毛片一区二区 | 人妖一区二区三区在线| 国产精品久久久久9999赢消| 亚洲男人精品| 日本高清在线一区二区三区| 人妻体内射精一区二区三区 | 日韩av一区在线播放| 亚洲国产成人久久综合碰碰| 18分钟处破好疼哭视频在线观看| 91精品国产免费青青碰在线观看| 亚洲成人av一区二区| 国产精品久久久久久一区二区三区 | 国产精品视频自拍在线|