国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于RFC2544的交換機(jī)以太網(wǎng)測(cè)試的實(shí)現(xiàn)?

2019-10-08 07:13:14朱全彪吳紅青
關(guān)鍵詞:包率吞吐量以太網(wǎng)

朱全彪 吳紅青

(1.武漢郵電科學(xué)研究院 武漢 430074)(2.烽火通信科技股份有限公司 武漢 430073)

1 引言

伴隨著互聯(lián)網(wǎng)時(shí)代[1]到來(lái),網(wǎng)絡(luò)通信技術(shù)[2]正快速地發(fā)展,規(guī)模不斷的擴(kuò)大,用于連接網(wǎng)絡(luò)的互聯(lián)設(shè)備在當(dāng)今網(wǎng)絡(luò)中扮演著越來(lái)越重要的角色[3]。網(wǎng)絡(luò)互聯(lián)設(shè)備特別是交換機(jī)作為網(wǎng)絡(luò)的核心,其性能將對(duì)網(wǎng)絡(luò)穩(wěn)定性及網(wǎng)絡(luò)的可靠性起關(guān)鍵作用。因此,網(wǎng)絡(luò)設(shè)備良好的性能是網(wǎng)絡(luò)正常運(yùn)行的有力保障,正確評(píng)測(cè)網(wǎng)絡(luò)互聯(lián)設(shè)備是設(shè)備使用前的關(guān)鍵一步。RFC2544協(xié)議[4]作為網(wǎng)絡(luò)設(shè)備的國(guó)際評(píng)測(cè)標(biāo)準(zhǔn),它提供了一系列切實(shí)有用的測(cè)試過(guò)程和步驟,使得用戶和服務(wù)運(yùn)營(yíng)商可以在相同標(biāo)準(zhǔn)下,對(duì)測(cè)試的實(shí)施和結(jié)果有個(gè)正確統(tǒng)一的認(rèn)識(shí)。

目前都是利用現(xiàn)有的測(cè)試儀器[5~6]對(duì)網(wǎng)絡(luò)設(shè)備進(jìn)行測(cè)量,但網(wǎng)絡(luò)設(shè)備缺少自我測(cè)量的功能。本文以三層交換機(jī)[7~8]作為載體,在其已有的硬件基礎(chǔ)上,基于RFC2544協(xié)議開(kāi)發(fā)軟件評(píng)測(cè)系統(tǒng),并驗(yàn)證系統(tǒng)的可行性。

2 RFC2544協(xié)議簡(jiǎn)介

RFC2544協(xié)議是由國(guó)際互聯(lián)網(wǎng)工程任務(wù)組[9](Internet Engineering Task Force,IETF)制定的,作為評(píng)測(cè)網(wǎng)絡(luò)互聯(lián)設(shè)備性能的國(guó)際標(biāo)準(zhǔn),其測(cè)試的性能指標(biāo)得到了主流運(yùn)營(yíng)商和各大網(wǎng)絡(luò)設(shè)備制造廠商的認(rèn)可,已成為一個(gè)國(guó)際標(biāo)準(zhǔn)。RFC2544協(xié)議提出采用七種標(biāo)準(zhǔn)幀作為測(cè)試幀,標(biāo)準(zhǔn)幀長(zhǎng)由大到小依次為1518字節(jié)、1280字節(jié)、1024字節(jié)、512字節(jié)、128字節(jié)、64字節(jié)、32字節(jié),并在一定的時(shí)間內(nèi),按照一定的數(shù)目對(duì)確定的幀長(zhǎng)進(jìn)行測(cè)試,其主要測(cè)試項(xiàng)[10~12]有:

1)丟包率(Frame Loss Rate)是指測(cè)試交換機(jī)在不同負(fù)載條件下不能轉(zhuǎn)發(fā)的數(shù)據(jù)包占總發(fā)送數(shù)據(jù)包個(gè)數(shù)的比例,反映被測(cè)交換機(jī)對(duì)負(fù)載的承受能力。不同負(fù)載指發(fā)送數(shù)據(jù)幀的速率,速率的范圍一般是從吞吐量增大到線速(理論上網(wǎng)絡(luò)中最大的傳輸數(shù)率),步長(zhǎng)不超過(guò)線速的10%。

2)時(shí)延(Latency)是指被測(cè)交換機(jī)吞吐量速率范圍內(nèi)從發(fā)出幀到接收該幀的時(shí)間間隔,反映被測(cè)交換機(jī)處理收到的數(shù)據(jù)幀的能力。

3)吞吐量(Throughput)是指被測(cè)試交換機(jī)在丟包率為零的情況下數(shù)據(jù)幀轉(zhuǎn)發(fā)的最大速率,是一個(gè)重要的評(píng)測(cè)指標(biāo),直接反映被測(cè)交換機(jī)的質(zhì)量好壞。通??梢愿鶕?jù)二分查找法原理求得被測(cè)交換機(jī)的吞吐量。

另外RFC2544協(xié)議介紹了兩種基本的測(cè)試模式,以交換機(jī)為研究對(duì)象,分別介紹如下。

單機(jī)模式工作流程[13]:如圖1所示,在A交換機(jī)輸入配置測(cè)試命令,利用命令行啟動(dòng)測(cè)試,測(cè)試數(shù)據(jù)幀由交換機(jī)A產(chǎn)生并經(jīng)發(fā)包端口發(fā)出,然后經(jīng)過(guò)交換機(jī)B的轉(zhuǎn)發(fā),流回交換機(jī)B的收?qǐng)?bào)端口,最后,交換機(jī)A按照協(xié)議規(guī)定的方法進(jìn)行處理運(yùn)算,通過(guò)命令查看測(cè)試狀態(tài)和結(jié)果。

圖1 單機(jī)模式

雙機(jī)模式工作流程[14]:如圖2所示,該模式下存在四種測(cè)試模式,分別為環(huán)回、上行、下行以及上行-下行測(cè)試模式,四種測(cè)試模式都是在由三臺(tái)交換機(jī)構(gòu)成的拓?fù)浣Y(jié)構(gòu)下進(jìn)行測(cè)試。環(huán)回測(cè)試是交換機(jī)A作為客戶端進(jìn)行數(shù)據(jù)的發(fā)送和接收,交換機(jī)B作為中間設(shè)備,交換機(jī)C作為服務(wù)器完成數(shù)據(jù)流的環(huán)回工作。上行測(cè)試是由交換機(jī)A發(fā)送數(shù)據(jù)幀,由交換機(jī)C接收傳送回來(lái)數(shù)據(jù)幀。下行測(cè)試正好相反,由交換機(jī)C發(fā)送,由交換機(jī)A來(lái)接收。上行-下行測(cè)試是上行測(cè)試和下行測(cè)試的結(jié)合。

圖2 雙機(jī)模式

RFC2544協(xié)議認(rèn)為單機(jī)模式和雙機(jī)模式都是適合的,但各有優(yōu)缺點(diǎn)[15]。單機(jī)模式測(cè)試環(huán)境的搭建簡(jiǎn)單方便,容易控制測(cè)試精度,但很難制造足夠的測(cè)試壓力。而雙機(jī)模式由于是三臺(tái)設(shè)備同時(shí)工作,雖然容易產(chǎn)生測(cè)試壓力,但由于進(jìn)程處于三臺(tái)設(shè)備中,將不可避免地造成時(shí)間同步與進(jìn)程同步等問(wèn)題。因?yàn)楸疚奶接懙氖墙粨Q機(jī)的以太網(wǎng)測(cè)試,單機(jī)結(jié)構(gòu)部署靈活,且能達(dá)到測(cè)試目的,所以本文的實(shí)現(xiàn)選擇比較經(jīng)典的單機(jī)測(cè)試。

3 測(cè)試環(huán)境的搭建

3.1 硬件開(kāi)發(fā)平臺(tái)

本文使用的交換機(jī)為三層交換機(jī),硬件是由以太網(wǎng)收發(fā)模塊、FPGA模塊和CPU管理模塊組成,如圖3所示。以太網(wǎng)收發(fā)模塊采用博通公司生產(chǎn)的BCM5482芯片,該芯片具備10M/100M/1000M自協(xié)商功能,是一個(gè)雙口千兆PHY芯片,每個(gè)BCM5482芯片可管理2個(gè)電口,實(shí)現(xiàn)以太網(wǎng)得數(shù)據(jù)通信,并通過(guò)SGMII接口與CPU管理模塊通信。CPU管理模塊選用博通芯片BCM56268,該芯片提供多個(gè)接口,包括內(nèi)聯(lián)到交換業(yè)務(wù)的MDIO接口、內(nèi)聯(lián)到ARM處理器的UART接口和連接到FPGA的同步接口等,本模塊把以太網(wǎng)測(cè)試幀發(fā)送給BCM5482芯片,實(shí)現(xiàn)數(shù)據(jù)的發(fā)送,同樣解析接收到的數(shù)據(jù),將從收發(fā)模塊BCM5482芯片接收到數(shù)據(jù)發(fā)送給FPGA處理。FPGA模塊選用ALTERA EP4CE6E22C8N,該模塊提升對(duì)數(shù)據(jù)的處理能力。

圖3 硬件系統(tǒng)結(jié)構(gòu)

3.2 系統(tǒng)軟件開(kāi)發(fā)架構(gòu)

本系統(tǒng)軟件采用C語(yǔ)言開(kāi)發(fā),編寫(xiě)好源代碼在Linux主機(jī)上編譯,編譯好的可執(zhí)行文件通過(guò)FTP工具上傳給交換機(jī)并運(yùn)行。整個(gè)的開(kāi)發(fā)架構(gòu)采用功能模塊化設(shè)計(jì),包括實(shí)時(shí)信息查詢(xún)模塊、參數(shù)配置模塊、狀態(tài)機(jī)FSM模塊、API模塊以及以太網(wǎng)幀處理模塊,這樣的設(shè)計(jì)降低了各模塊間的耦合,便于后期維護(hù)。整個(gè)的軟件系統(tǒng)架構(gòu)如圖4所示。具體到RFC2544系統(tǒng)軟件,有如下這些重要文件。Cmd_rfc2544.c為命令行函數(shù)文件,實(shí)現(xiàn)參數(shù)配置、信息查詢(xún)等功能。rfc2544.c、rfc2544.h為以太網(wǎng)幀處理函數(shù)文件,實(shí)現(xiàn)以太網(wǎng)幀處理的功能。rfc2544_sm.c、rfc2544_sm.h文件實(shí)現(xiàn)狀態(tài)機(jī)FSM模塊的功能。rfc2544_api.c為set、get函數(shù)文件,實(shí)現(xiàn)API模塊的功能。

圖4 軟件系統(tǒng)結(jié)構(gòu)

4 RFC2544的算法設(shè)計(jì)

4.1 丟包率

假設(shè)Test_rate(kbps)為發(fā)送測(cè)試包的速率,Trt_pkt為發(fā)送的測(cè)試包數(shù)量,Rcv_pkt為接收的測(cè)試包數(shù)量,N為測(cè)試次數(shù),T為測(cè)試時(shí)間。

步驟:以Test_rate(kbps)的速率(本實(shí)驗(yàn)中取100M),在T時(shí)間內(nèi)發(fā)送Trt_pkt個(gè)數(shù)據(jù)包到被測(cè)交換機(jī),經(jīng)過(guò)環(huán)回,接收到的數(shù)據(jù)包數(shù)量為Rcv_pkt個(gè),記錄本次測(cè)試的丟包率

如此測(cè)試N次,得到N個(gè)結(jié)果值,求得其平均值作為結(jié)果。

4.2 時(shí)延

假設(shè)Test_rate(kbps)發(fā)送測(cè)試包的速率,T1為發(fā)送時(shí)間,T2為接收時(shí)間,lRcv_pkt為上次收?qǐng)?bào)數(shù),Rcv_pkt為本次收?qǐng)?bào)數(shù),LtyDly為某次測(cè)試中的時(shí)延,AvgDly為平均時(shí)延,lAvgDly為上次的平均時(shí)延,N測(cè)試次數(shù),T為測(cè)試時(shí)間。

步驟:第一輪測(cè)試中,以 Test_rate(kbps)速率(本實(shí)驗(yàn)中取10M),在T時(shí)間內(nèi)發(fā)送一定的數(shù)據(jù)包到對(duì)端的交換機(jī)設(shè)備,記錄發(fā)送時(shí)間T1,經(jīng)過(guò)一段時(shí)間,記錄到達(dá)的時(shí)間T2,在沒(méi)有數(shù)據(jù)包丟失的情況下,計(jì)算本次的時(shí)延LtyDly=T2-T1。在接下的測(cè)試過(guò)程中,都會(huì)計(jì)算每次的平均時(shí)延,平均時(shí)延AvgDly的計(jì)算公式為

如此測(cè)試N次,得到N個(gè)結(jié)果值,求得其平均值作為結(jié)果。

4.3 吞吐量

假設(shè)Test_rate(kbps)為發(fā)送的測(cè)試包速率,Rcv_pkt為接收的測(cè)試包數(shù)量,Trt_pkt為發(fā)送的測(cè)試包數(shù)量,R為測(cè)試精度(本實(shí)驗(yàn)中取1M),N為測(cè)試次數(shù),T為測(cè)試時(shí)間。

步驟:以Test_rate(kbps)的速率(本實(shí)驗(yàn)中取1000M),在T時(shí)間內(nèi)發(fā)送Trt_pkt個(gè)數(shù)據(jù)包到被測(cè)交換機(jī),經(jīng)過(guò)環(huán)回,接收到的數(shù)據(jù)包數(shù)量為Rcv_pkt個(gè),比較Trt_pkt和Rcv_pkt的大小。如果Trt_pkt=Rcv_pkt,表示數(shù)據(jù)包沒(méi)有丟失,則增大交換機(jī)發(fā)送數(shù)據(jù)包的速率。如果Trt_pkt>Rcv_pkt,表示有數(shù)據(jù)包丟失,則減小交換機(jī)發(fā)送數(shù)據(jù)包的速率,然后判斷兩次發(fā)包速率的差值是否小于測(cè)試精度R。如果測(cè)試結(jié)果滿足要求,差值小于測(cè)試精度R,則取本次發(fā)送數(shù)據(jù)包的速率作為該次測(cè)試的吞吐量值,否則進(jìn)入下一輪測(cè)試直到滿足精度要求。如此測(cè)試N次,得到N個(gè)結(jié)果值,求得平均值作為最終的吞吐量值。

5 測(cè)試結(jié)果分析

本文是在三層交換機(jī)的Linux平臺(tái)下,設(shè)計(jì)了一種基于RFC2544標(biāo)準(zhǔn)的以太網(wǎng)性能測(cè)試方案,通過(guò)命令行實(shí)時(shí)獲取以太網(wǎng)吞吐量、時(shí)延和丟包率的測(cè)試結(jié)果,并在XY坐標(biāo)系中描點(diǎn)形成直觀的折線,便于分析。

如圖5所示,測(cè)試幀長(zhǎng)度越長(zhǎng),丟包率反而越小。這是因?yàn)樵趲捪嗤那闆r下,幀長(zhǎng)越長(zhǎng),單位時(shí)間內(nèi),被測(cè)交換機(jī)設(shè)備處理的數(shù)據(jù)包個(gè)數(shù)越少,丟包越少,即丟包率下降。

圖5 丟包率測(cè)試結(jié)果

如圖6所示,時(shí)延測(cè)試結(jié)果指的是平均時(shí)延,測(cè)試幀長(zhǎng)度越長(zhǎng),時(shí)延越大。這是因?yàn)閿?shù)據(jù)幀長(zhǎng)越大,被測(cè)交換機(jī)設(shè)備處理時(shí)間增加,所耗費(fèi)的時(shí)間越長(zhǎng),時(shí)延就越大。

圖6 時(shí)延測(cè)試結(jié)果

如圖7所示,數(shù)據(jù)幀長(zhǎng)越小,對(duì)吞吐率的影響越大,反之,幀長(zhǎng)越長(zhǎng),對(duì)吞吐率的影響越小,而且可以很明顯地看到,數(shù)據(jù)幀長(zhǎng)增加到一定的時(shí)候,吞吐率幾乎沒(méi)有變化了。這是因?yàn)橥粠捪?,?shù)據(jù)幀長(zhǎng)度增大時(shí),在相同時(shí)間內(nèi),進(jìn)入被測(cè)交換機(jī)進(jìn)行處理的數(shù)據(jù)包數(shù)量就會(huì)減少,而處理單個(gè)數(shù)據(jù)包的時(shí)間沒(méi)有改變,所以轉(zhuǎn)發(fā)速率變快,從而增加了吞吐量。

圖7 吞吐率測(cè)試結(jié)果

6 結(jié)語(yǔ)

從以上對(duì)測(cè)試結(jié)果的分析可得,在三層交換機(jī)中設(shè)計(jì)的軟件測(cè)試系統(tǒng),符合RFC2544協(xié)議標(biāo)準(zhǔn),從而驗(yàn)證了該軟件測(cè)試系統(tǒng)的可行性。

猜你喜歡
包率吞吐量以太網(wǎng)
支持向量機(jī)的船舶網(wǎng)絡(luò)丟包率預(yù)測(cè)數(shù)學(xué)模型
一種基于噴泉碼的異構(gòu)網(wǎng)絡(luò)發(fā)包算法*
基于1500以太網(wǎng)養(yǎng)豬場(chǎng)的智能飼喂控制系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
一種新的VANET網(wǎng)絡(luò)鏈路丟包率估計(jì)算法
2016年10月長(zhǎng)三角地區(qū)主要港口吞吐量
集裝箱化(2016年11期)2017-03-29 16:15:48
2016年11月長(zhǎng)三角地區(qū)主要港口吞吐量
集裝箱化(2016年12期)2017-03-20 08:32:27
談實(shí)時(shí)以太網(wǎng)EtherCAT技術(shù)在變電站自動(dòng)化中的應(yīng)用
電子制作(2017年24期)2017-02-02 07:14:44
TCN 協(xié)議分析裝置丟包率研究
一種90W高功率以太網(wǎng)供電系統(tǒng)的設(shè)計(jì)
淺談EPON與工業(yè)以太網(wǎng)在貴遵高速公路中的應(yīng)用
六安市| 资源县| 灵武市| 福泉市| 滨州市| 穆棱市| 乐都县| 孟津县| 九台市| 营山县| 平阳县| 遂宁市| 拉萨市| 定远县| 宁远县| 绥宁县| 遵义市| 沾益县| 马龙县| 高要市| 鹤山市| 雅江县| 确山县| 巴彦县| 深泽县| 施甸县| 南川市| 湖口县| 焉耆| 英吉沙县| 澄城县| 九江市| 忻城县| 游戏| 全南县| 田阳县| 禄丰县| 四子王旗| 芦溪县| 尤溪县| 丹阳市|