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

?

基于RFC2544的千兆以太網性能測試的實現(xiàn)

2016-12-22 09:23陳佳彬陳爾言王衛(wèi)靜
浙江工業(yè)大學學報 2016年6期
關鍵詞:包率字節(jié)以太網

金 燕,陳佳彬,陳爾言,王衛(wèi)靜

(浙江工業(yè)大學 信息工程學院,浙江 杭州 310014)

?

基于RFC2544的千兆以太網性能測試的實現(xiàn)

金 燕,陳佳彬,陳爾言,王衛(wèi)靜

(浙江工業(yè)大學 信息工程學院,浙江 杭州 310014)

隨著千兆以太網發(fā)展成為主流網絡技術后,網絡設備的安全穩(wěn)定性成為了重中之重.RFC2544協(xié)議是評測網絡設備的國際標準.介紹了RFC2544協(xié)議,并在Linux平臺下,設計了一套完整的測試架構,定義了專用的測試幀格式,分析了千兆以太網時延、吞吐量、背靠背和丟包率等主要性能指標的測試方法,并進行了仿真與驗證.

RFC2544;千兆以太網;性能指標

隨著計算機網絡的快速發(fā)展,以太網因分布廣泛和接入方便得到了廣泛的應用[1].千兆以太網是基于以太網標準的技術,因其高效、高速和高性能的特點,成為了當今主流的網絡技術[2].隨著高速網絡成為主要應用網絡,網絡設備的性能將會直接影響到網絡運行過程中的穩(wěn)定性和可靠性,因此網絡設備的性能問題成為重點[3].從而需要一套客觀準確且能被大眾接受的網絡測試標準.RFC2544作為評測網絡設備的國際標準[4],對以太網的各項性能指標進行了定義,如時延、吞吐量、背靠背和丟包率,這些性能系統(tǒng)地反應了網絡的通信能力和實時進行信息傳輸?shù)哪芰?,并且這些指標相互聯(lián)系和影響[5].筆者研究的目的是在Linux平臺上設計一套基于RFC2544測試標準的千兆以太網網絡性能測試的軟件實現(xiàn)方案,在具有高兼容性與穩(wěn)定性的前提下,實現(xiàn)千兆以太網各項性能指標的測試,并且可以對結果實時提取與顯示.

1 RFC2544協(xié)議簡介

1.1 測試模式的選擇

1.1.1 單機模式

單機模式[6]的工作流程:首先,將打包好的測試數(shù)據(jù)流通過測試設備的發(fā)包端口發(fā)出;然后,經過待測設備的測試數(shù)據(jù)轉發(fā),將其流回測試設備的收包端口;最后,測試設備將收到的數(shù)據(jù)流根據(jù)RFC2544協(xié)議進行運算處理,從而給出測試結果,如圖1所示.

圖1 RFC2544單機模式測試結構圖Fig.1 Test structure diagram of RFC2544 single mode

1.1.2 雙機模式

雙機模式[7]分為環(huán)回測試、上行測試、下行測試及上行-下行測試.環(huán)回測試的工作流程:首先,將測試設備1作為客戶端完成數(shù)據(jù)流的發(fā)送工作;然后,將測試設備2作為服務端完成數(shù)據(jù)流的環(huán)回工作,并且該過程經過被測設備;最后,測試設備1接收數(shù)據(jù)并運算處理,得到結果,如圖2所示.上行測試是指測試設備1負責發(fā)送,測試設備2負責接收.下行測試正好相反,測試設備2負責發(fā)送,測試設備1負責接收.上行-下行模式就是上行模式與下行模式的結合.

圖2 RFC2544雙機模式環(huán)回測試結構圖Fig.2 Loopback test structure diagram of RFC2544 double mode

單機模式與雙機模式都是RFC2544標準所認可的測試模式[8],但是各有利弊.單機模式可以更準確地控制測試精度,并且更容易調度測試進程,但是在產生測試壓力方面有所欠缺;而雙機模式由于是兩臺設備共同工作,所以能夠產生足夠的測試壓力來達到需求,但同時也將出現(xiàn)進程同步與時間同步等問題[9].因為筆者探討基于千兆以太網的測試,需要足夠的測試壓力,所以選擇比較經典的環(huán)回測試模式.

1.2 測試主要參數(shù)

1.2.1 時 延

定義:從報文進入網絡到離開網絡的時間間隔,即在負載條件下轉發(fā)數(shù)據(jù)幀所花費的時間.

作用:反映被測設備處理數(shù)據(jù)包的速度.

1.2.2 吞吐量

定義:在滿足不丟包的條件下,被測設備可以轉發(fā)的最大數(shù)據(jù)流量.

作用:反映了被測設備轉發(fā)的測試幀數(shù)量與發(fā)送端發(fā)送測試幀數(shù)量相等時的最高頻率.

1.2.3 背靠背

定義:在最大速率的條件下,以及不發(fā)生丟包的前提下,被測設備可以接收到的最大報文的長度.

作用:反映被測設備對突發(fā)數(shù)據(jù)的處理能力.

1.2.4 丟包率

定義:在一定的負載下,未能被轉發(fā)的數(shù)據(jù)包數(shù)量占應被轉發(fā)的數(shù)據(jù)包數(shù)量的百分比值.

作用:反映被測設備對負載的承受能力.

2 測試系統(tǒng)架構

2.1 測試設備硬件架構

本測試系統(tǒng)所用的測試設備硬件采用FPGA+ARM的結構,實現(xiàn)手持終端的設計,主要分為四大模塊,如圖3所示.以太網收發(fā)模塊主要由一塊以太網專用芯片組成,該芯片是支持自協(xié)商功能的10 M/100 M/1 000 M專用PHY芯片,一方面與RJ45接口互連,使系統(tǒng)與以太網通信;另一方面通過GMII接口與FPGA通信,既可以實現(xiàn)對數(shù)據(jù)的處理,又可以通過FPGA來對以太網芯片進行配置.FPGA模塊選用Altera公司的Cyclone II系列芯片,本模塊將測試數(shù)據(jù)打包成以太網測試幀,并將其發(fā)送給以太網收發(fā)模塊,實現(xiàn)數(shù)據(jù)的發(fā)出,也同樣將接收到的數(shù)據(jù)過濾,并將測試幀解包,將得到的數(shù)據(jù)發(fā)送給ARM模塊.ARM模塊提升系統(tǒng)的對數(shù)據(jù)的處理能力,將接收到的測試數(shù)據(jù)進行算法處理得到測試參數(shù),并且配置整個系統(tǒng)的測試流程,是系統(tǒng)的核心.顯示模塊采用7寸電容屏屏,通過LCD接口與ARM模塊進行通信顯示,同時通過觸摸屏上的功能部件進行整個系統(tǒng)的人機交互功能.

圖3 測試設備硬件框圖Fig.3 Test equipment hardware block diagram

2.2 系統(tǒng)軟件架構

如圖4所示,系統(tǒng)軟件結構采用模塊化設計,包括操作界面的顯示,數(shù)據(jù)的處理,測試流的生成,測試包的發(fā)送與接收.測試過程從操作界面配置測試參數(shù)為起點,配置參數(shù)包括IP地址、MAC地址等,然后根據(jù)配置信息將參數(shù)打包成測試幀,通過USB接口傳輸給FPGA模塊,模塊根據(jù)配置信息控制測

圖4 系統(tǒng)軟件架構Fig.4 System software architecture

試流,然后通過發(fā)送接口輸出.經過從端設備的環(huán)回,F(xiàn)PGA模塊接收返回的測試幀,然后傳輸至ARM模塊,經過測試幀解包,提取數(shù)據(jù)進行分析處理,最后將結果傳給顯示模塊顯示.

2.3 測試幀設計

以太網在傳輸層和網絡層,采用統(tǒng)一的TCP/ IP協(xié)議[10],TCP協(xié)議是一種面向連接的可靠傳輸協(xié)議,但在可靠性較高的網絡中反而增加了傳輸?shù)拈_銷[11],UDP是面向無連接的,具有較好的傳輸效率[12].在本系統(tǒng)的設計中,以太網測試幀采用UDP的方式傳輸,基于UDP的測試幀是在UDP幀包頭的基礎上再加上自定義的幀字節(jié)來完成的,測試幀幀格式如圖5所示.

圖5 測試幀格式Fig.5 Test frame format

1) 協(xié)議頭字段:包括8 字節(jié)的UDP包頭段,內含7 字節(jié)的幀前同步碼與1 字節(jié)的幀開始定界符,還包括6 字節(jié)的目的地址段、6 字節(jié)的源地址段、2 字節(jié)的長度與類型段.

2) 測試包標記:用于識別是否為測試幀,在本系統(tǒng)中長度為2 字節(jié),默認為0x3333.接收測試幀時判斷是否是該數(shù)值,否則不是測試幀.

3) 流代碼:用于識別測試幀的類別,在本系統(tǒng)中為2 字節(jié),不同的測試幀具有相應的流代碼.

4) 時間戳:用于計算延遲與抖動,在本系統(tǒng)中為4 字節(jié),該字段記錄測試幀發(fā)往以太網的時間,當測試幀發(fā)往以太網時,系統(tǒng)會記錄當前時間,并由一個32 位計數(shù)器計時,當收到環(huán)回的測試幀時,將記錄的值與時間戳相減,差值即時延.

5) 指令標記:用于判斷是否包含控制指令,在本系統(tǒng)中為1 字節(jié),攜帶控制指令為0xFF,沒攜帶則為0x00.

6) 控制標記:用于實現(xiàn)對測試流的控制功能,在本系統(tǒng)中為1 字節(jié),不同的控制指令用不同的1 字節(jié)數(shù)據(jù)表示,若不攜帶控制指令,則為0x00.

7) 數(shù)據(jù)填充:用于控制測試幀的長短,以適應各種測試環(huán)境.

8) FCS:即幀檢驗序列,用于保存測試幀的CRC校驗值,在本系統(tǒng)中為4 字節(jié).

3 RFC2544協(xié)議的算法實現(xiàn)

3.1 時 延

參數(shù):T1為測試數(shù)據(jù)包的發(fā)送時間,T2為測試數(shù)據(jù)包的接收時間,R為網絡吞吐率,L為測試幀長,N為測試輪數(shù),T為測試時間.

步驟:確定測試幀長L,然后在時間T內,以R為速率,將測試包發(fā)送出去.記錄發(fā)送時間T1;接收經過環(huán)回的測試包,記錄接收時間T2;計算本輪時延為T2-T1;重復測試N輪,取每輪時延的平均值作為測試結果.

3.2 丟包率

參數(shù):P1為發(fā)送的測試數(shù)據(jù)包數(shù)量,P2為接收到的測試數(shù)據(jù)包數(shù)量,R為發(fā)送速率,L為測試幀長,N為測試輪數(shù),T為測試時間.

步驟:確定測試幀長L,然后在時間T內,以R為速率,將測試包發(fā)送出去.記錄發(fā)送的測試包數(shù)目為P1;接收到經過環(huán)回的測試包,記錄接收到的測試包數(shù)目為P2;計算本輪丟包率為(P1-P2)/P1;重復測試N輪,取每輪的丟包率的平均值作為測試結果.

3.3 背靠背

參數(shù):P1為發(fā)送的測試包數(shù)量,P2為接收到的測試包數(shù)量,R為系統(tǒng)所能產生的最大發(fā)送速率,L為測試幀長,N為測試輪數(shù),T為測試時間,A為要求的背靠背測試精度.

步驟:確定測試幀長L,然后在時間T內,以R為速率,將測試包發(fā)送出去.記錄發(fā)送的數(shù)目為P1;接收到經過環(huán)回的測試包,記錄接收到的測試包數(shù)目為P2;判斷P1與P2的大小,如果P1=P2,表示沒有丟包,則增大發(fā)送包數(shù)量P1,且令Pmin=P1;如果P1>P2,表示出現(xiàn)丟包,則減小發(fā)送包的數(shù)量P1,且令Pmax=P1;判斷Pmax-Pmin≤A,如果滿足要求,則取本輪的背靠背為(Pmax-Pmin)/2;否則,重新測試直至滿足精度要求;重復測試N輪,取每輪的背靠背的平均值作為測試結果.

3.4 吞吐量

參數(shù):P1為發(fā)送的測試包數(shù)量,P2為接收到的測試包數(shù)量,R為發(fā)送速率,L為測試幀長,N為測試輪數(shù),T為測試時間,A為要求的吞吐量測試精度.

步驟:確定測試幀長L,然后在時間T內,根據(jù)經驗確定R為發(fā)送速率,將測試包發(fā)送出去.記錄發(fā)送的數(shù)目為P1;接收到經過環(huán)回的測試包,記錄接收到的測試包數(shù)目為P2;判斷P1與P2的大小,如果P1=P2,表示沒有丟包,則提高發(fā)送速率R,且令Rmin=R;如果P1>P2,表示出現(xiàn)丟包,則降低發(fā)送速率R,且令Rmax=R;判斷Rmax-Rmin≤A,如果滿足要求,則取本輪的吞吐量為(Rmax-Rmin)/2;否則,重新測試直至滿足精度要求;重復測試N輪,取每輪的吞吐量的平均值作為測試結果.

吞吐量測試流程如圖6所示.

圖6 吞吐量測試流程圖Fig.6 Throughput test flow chart

4 仿真結果

本系統(tǒng)主要對RFC2544測試協(xié)議進行實現(xiàn),如圖7所示,是被測交換機在測試幀為64字節(jié)大小時,所測得的多次吞吐量數(shù)據(jù),取其平均值得790 B,即交換機64 字節(jié)的以太網包的吞吐量為790 B.圖8為吞吐量和背靠背的測試結果,圖9為丟包率和時延的測試結果.

圖7 吞吐量測試結果Fig.7 Throughput test results

如圖8所示,隨著測試幀長度的增加,吞吐量也隨之增大.這是因為在同一帶寬下,幀長越大,測試幀的數(shù)量就會減小,被測設備處理這些測試幀的時間也會隨之變短,從而會使單位時間內處理測試幀的數(shù)量減少,然而被測設備處理單個數(shù)據(jù)包所需的時間并不會改變,因此轉發(fā)速率得到加快,進而增大了吞吐量.

圖8 吞吐量與背靠背測試Fig.8 Throughput and back-to-back test

同樣,隨著測試幀長度的增加,背靠背幀數(shù)也隨之增大.這是因為幀長越大時,丟包率越小,所以導致背靠背幀數(shù)越大.

圖9 丟包率與時延測試Fig.9 Packet loss rate and delay test

如圖9所示,隨著測試幀長度的增加,丟包率隨之減小.這是因為在同一幀長下,幀長越大,測試幀速率則下降,被測設備處理的個數(shù)越小,丟包越少,即丟包率下降.

與之相反,隨著測試幀長度的增加,時延卻隨之增大.這是因為單個數(shù)據(jù)幀長度的增加會導致被測設備處理時間的增加,從而導致時延的增大.

5 結 論

介紹了RFC2544協(xié)議,重點討論了基于該協(xié)議的千兆以太網網絡性能的實現(xiàn).首先,介紹了測試系統(tǒng)的硬件架構與軟件架構,并在此基礎上側重描述了

測試幀的設計格式.然后,詳細描述了RFC2544協(xié)議時延、丟包率、背靠背和吞吐量等主要網絡性能參數(shù)的算法實現(xiàn)過程.仿真測試結果顯示,隨著測試幀長度的變化,吞吐量、時延和背靠背呈正比變化,丟包率呈反比變化,均符合千兆以太網網絡性能指標的特性.

[1] 郭海濤.全千兆以太網交換機的設計和實現(xiàn)[D].西安:西安電子科技大學,2006.

[2] 劉瓊,虞水俊.快速以太網技術:介紹無關接口和自動協(xié)商[J].微型機與應用,1998(9):26-8.

[3] WANG Yong, LIU Yong, TAO Xiaoling et al. An FPGA-based high-speed network performance measurement for RFC 2544[J].EURASIP journal on wireless communications and networking,2015(1):1-10.

[4] FEI Lifu, YUAN Dongming, TANG Bihua, et al. Technique for network performance measurement based on RFC2544[C]//2012 Fourth International Conference on Computational Intelligence and Communication Networks. Beijing: Beijing University of Posts and Telecommunications,2012:200-203.

[5] 劉彥敏.基于FPGA的千兆以太網測試系統(tǒng)的研究與實現(xiàn)[D].杭州:浙江工業(yè)大學,2014.

[6] 徐波,韋韜,鄒維.RFC2544網絡設備評測協(xié)議實現(xiàn)技術[J].計算機工程,2003,29(17):140-142.

[7] 董祎博,劉云龍.基于RFC2544的以太網測試設計與實現(xiàn)[J].軟件,2012,33(12):62-65.

[8] 廖有清,張小平,許學東.10G網絡測試儀的測試流量生成[J].小型微型計算機系統(tǒng),2007,28(3):411-415.

[9] 費蓓富.基于RFC2544的多用戶網絡性能測試系統(tǒng)的研究與實現(xiàn)[D].北京:北京郵電大學,2013.

[10] 謝希仁.計算機網絡[M].5版.北京:電子工業(yè)出版社,2008.

[11] HERRMANN F L, PERIN G, BERTAGNOLLI R,et al. A Gigabit UDP/IP network stack in FPGA[C]// IEEE International Conference on Electronics, Circuits & Systems. New York: IEEE,2009:836-839.

[12] LEE K C, LEE S, LEE M H. Worst case communication delay of real-time industrial switched ethernet with multiple levels[J]. IEEE transactions on industrial electronics,2006,53(5):1669-1675.

(責任編輯:陳石平)

The realization of Gigabit Ethernet network performance test based on RFC2544

JIN Yan, CHEN Jiabin, CHEN Eryan, WANG Weijin

(College of Information Engineering, Zhejiang University of Technology, Hangzhou 310014, China)

The security and stability of network devices has been the top priority since the development of GbE becomes the mainstream of network technology. The RFC2544 protocol is the international standard to evaluate the network devices. After the RFC2544 protocol is introduced, an integrated test architecture is designed in this article. In this architecture, a dedicated format in testing frame is defined and the testing method of some main performance, such as time delay, throughput, back-to-back, and packet loss rate, are analyzed. Finally, the tesing architecture is simulated and verified in the Linux platform.

RFC2544; GbE; performance

2015-12-03

金 燕(1964—),女,浙江紹興人,副教授,研究方向為自動化檢測和控制、混合動力汽車控制策略等,E-mail:jy@zjut.edu.cn.

TN915

A

1006-4303(2016)06-0628-05

猜你喜歡
包率字節(jié)以太網
支持向量機的船舶網絡丟包率預測數(shù)學模型
一種基于噴泉碼的異構網絡發(fā)包算法*
No.8 字節(jié)跳動將推出獨立出口電商APP
電磁線疊包率控制工藝研究
基于1500以太網養(yǎng)豬場的智能飼喂控制系統(tǒng)的設計與實現(xiàn)
No.10 “字節(jié)跳動手機”要來了?
輕量級分組密碼Midori64的積分攻擊
IEEE 802.15.4協(xié)議無線傳感器網絡干擾測試?
三大因素驅動創(chuàng)新提速以太網快步邁入“靈活”時代
談實時以太網EtherCAT技術在變電站自動化中的應用
珲春市| 称多县| 古田县| 繁昌县| 香河县| 丁青县| 青川县| 玉田县| 阿克陶县| 宁陵县| 石林| 扬州市| 武定县| 乌拉特前旗| 宣威市| 凤山市| 常州市| 虹口区| 桓台县| 洛扎县| 遵义县| 北碚区| 峡江县| 哈尔滨市| 长丰县| 榆社县| 图片| 陆川县| 兴安盟| 班玛县| 潢川县| 克拉玛依市| 前郭尔| 阳东县| 丰原市| 郓城县| 永济市| 库伦旗| 东城区| 连江县| 驻马店市|