??? 摘? 要:? 針對當前高速網(wǎng)絡(luò)的發(fā)展情況,給出了一種千兆以太網(wǎng)絡(luò)測試儀的實現(xiàn)方法。測試儀系統(tǒng)具有光/電雙端口測試通道;采用高端FPGA生成高速網(wǎng)絡(luò)數(shù)據(jù)流量;模塊間采用標準接口,實現(xiàn)RFC2544網(wǎng)絡(luò)測試基準建議的測試項;軟件采用實時微型操作系統(tǒng)。在千兆以太網(wǎng)交換機搭建的測試環(huán)境下進行測試,系統(tǒng)工作正常,具有較高的穩(wěn)定性。?
??? 關(guān)鍵詞: 千兆以太網(wǎng);? 測試儀;? 高速流量
?
??? 隨著全球通信技術(shù)的迅猛發(fā)展,我國的通信技術(shù)也在以前所未有的速度向世界高端領(lǐng)域前進??焖僖蕴W(wǎng)FE(Fast Ethernet)、千兆以太網(wǎng)GE(Giga-bit Ethernet)等高速網(wǎng)絡(luò)及其產(chǎn)品已從實驗室研究進入實際生活應(yīng)用中,并隨著電信業(yè)的快速發(fā)展以及目前正在進行的電信行業(yè)重組,高速網(wǎng)絡(luò)產(chǎn)品將會越來越多。而高速網(wǎng)絡(luò)及其產(chǎn)品的快速發(fā)展需要相應(yīng)的網(wǎng)絡(luò)測試與維護產(chǎn)品的跟進發(fā)展,目前雖然已經(jīng)有幾種高速網(wǎng)絡(luò)測試儀產(chǎn)品,但這些測試儀主要是由國外廠家所研制,一方面不能滿足國內(nèi)特定的測試需求,另一方面不適合國人的使用習慣,使用不方便。基于國內(nèi)與國外通信網(wǎng)絡(luò)存在差別的具體情況,為滿足國內(nèi)通信網(wǎng)的高速發(fā)展,有必要研發(fā)符合國內(nèi)具體情況的高性能高速網(wǎng)絡(luò)測試儀[1]。?
1 系統(tǒng)介紹?
??? 千兆以太網(wǎng)測試儀體積小、重量輕,是一款適合攜帶的手持式小型測試儀。其具有雙端口測試功能,支持電口、光口SFP(小型可插拔)以太網(wǎng)數(shù)據(jù)的接入測試;具有自協(xié)商功能,支持協(xié)商10/100/1 000 M網(wǎng)絡(luò)數(shù)據(jù)與Pause幀流量控制;支持PHY環(huán)回與MAC環(huán)回測試,支持RFC2544網(wǎng)絡(luò)基準測試建議的吞吐量(Throughput)、時延(Latency)、丟包率(Frame Loss Rate)和背靠背幀(Burst Back to Back Frame)等指標測試[2];支持VLAN、SNMP、IPX、DNS等測試管理功能;系統(tǒng)可以進行大數(shù)據(jù)量的存儲處理,且具有高速網(wǎng)絡(luò)流量生成發(fā)送功能。千兆以太網(wǎng)測試儀系統(tǒng)電路原理框圖如圖1所示。?
?
?
??? 10/100/1 000 M數(shù)據(jù)通過電口進來后,經(jīng)物理層進行開銷處理與串并轉(zhuǎn)換后到MAC層,在MAC層經(jīng)流/自協(xié)商控制、地址濾波,符合要求的數(shù)據(jù)在Gigabit MAC控制下送到POS-PHY Level 3接口到FPGA,F(xiàn)PGA對數(shù)據(jù)進行處理后送至ARM控制器進行進一步的處理與顯示報告。?
??? 從SFP電口進來的數(shù)據(jù)直接到MAC器件,由SERDES進行串并轉(zhuǎn)換,然后進行8B/10B編解碼,同樣在Gigabit MAC控制下送到POS-PHY Level 3接口,其余處理與電口進來的數(shù)據(jù)相同。?
??? 發(fā)送數(shù)據(jù)的流向與接收數(shù)據(jù)流向相反,在ARM控制模塊的指示下,F(xiàn)PGA生成相應(yīng)格式的網(wǎng)絡(luò)高速數(shù)據(jù)流量,經(jīng)MAC、PHY層處理后送至電口或光口發(fā)送到被測網(wǎng)絡(luò)或設(shè)備。?
??? 千兆以太網(wǎng)測試儀系統(tǒng)采用的器件要求具有較高的處理速率,以滿足千兆網(wǎng)絡(luò)的高速要求。其中ARM處理器采用三星的S3C2440A處理器,這是一款內(nèi)核為ARM90T、支持最高數(shù)據(jù)速率可達403 MHz的處理器,它包含LCD接口、SD卡接口、多達3個的UART接口等[3],能很好地滿足小型手持式測試儀需求。?
??? PHY層采用支持IEEE802.3協(xié)議,兼容10/100/1 000 M速率,支持自協(xié)商,具有平行檢測能力的器件。MAC層為支持電口,可直接接SFP光口的器件,支持Ethernet 2.0、IEEE 802.3 LLC、IEEE 802.3 SNAP/LLC編碼格式和VLAN幀;具有可編程Pause流量控制,可編程自協(xié)商功能;具有8個單播精確匹配地址過濾器,1個基于64bit的Hash多播過濾器;具有一組統(tǒng)計計數(shù)寄存器,可以統(tǒng)計各種情況下的收幀、發(fā)幀以及不同錯誤的錯誤幀的發(fā)送接收情況。另外,具有一個8位MCU接口,可與ARM控制器連接,實現(xiàn)對MAC層的配置與控制。?
??? 高速數(shù)據(jù)的生成與處理采用XILINX公司的大規(guī)模可編程器件FPGA,其寄存器速率最高可達550MHz,滿足POS-PHY Level 3(60 MHz~104 MHz)的速率要求。?
??? 千兆以太網(wǎng)測試儀系統(tǒng)各個模塊間采用標準接口:8位的GMII(PHY層與MAC層)、32位的POS-PHY Level 3(MAC層與FPGA高速數(shù)據(jù)流量生成與處理)、8位的MCU(MAC器件與ARM控制器),其中FPGA模塊與ARM控制模塊通過雙FIFO進行通信,1個用于下行數(shù)據(jù)傳輸,一個用于上行數(shù)據(jù)傳輸。?
??? 發(fā)送與處理數(shù)據(jù)必須支持不同協(xié)議的數(shù)據(jù)。發(fā)送數(shù)據(jù)時,ARM控制模塊告訴FPGA需要發(fā)送的數(shù)據(jù)格式,包括UDP、TCP、ICMP等數(shù)據(jù)類型以及流量模式為突發(fā)流還是均勻流等信息[4],F(xiàn)PGA產(chǎn)生發(fā)送流量數(shù)據(jù)。接收數(shù)據(jù)時,MAC層、FPGA模塊根據(jù)ARM控制模塊的指示,對數(shù)據(jù)進行過濾、統(tǒng)計等處理后把結(jié)果報告給ARM控制模塊,如需要也可將符合要求的數(shù)據(jù)送至ARM模塊進行分析。?
2? 功能實現(xiàn)?
??? 千兆以太網(wǎng)測試儀系統(tǒng)需要實現(xiàn)的模塊按功能劃分,可以分為接收處理模塊、數(shù)據(jù)生成發(fā)送模塊、控制協(xié)調(diào)模塊及接口通信模塊。接收處理模塊主要是接收處理來自網(wǎng)絡(luò)中的數(shù)據(jù)流。數(shù)據(jù)生成發(fā)送模塊主要是根據(jù)ARM控制模塊的指示生成高速數(shù)據(jù)流并發(fā)送??刂茀f(xié)調(diào)模塊負責指示接收、發(fā)送數(shù)據(jù)的類型模式以及協(xié)調(diào)各個模塊的工作。接口通信模塊一方面需要處理不同模塊間的通信協(xié)議,另一方面需要把數(shù)據(jù)送至人機交互界面。?
2.1 接收處理模塊?
??? 接收數(shù)據(jù)是從電/光口接收,經(jīng)過PHY層、MAC層處理后到FPGA。在FPGA中根據(jù)RFC2544網(wǎng)絡(luò)基準測試建議的吞吐量、時延、丟包率和背靠背幀等指標,對數(shù)據(jù)進行統(tǒng)計處理,然后送至ARM控制器模塊進行進一步的處理與報告顯示。電口、光口接收數(shù)據(jù)流程框圖分別如圖2、圖3所示。?
?
?
?
??? 接收數(shù)據(jù)端口為雙端口,接收來自電口的數(shù)據(jù)以及來自SFP小型可插拔的光口數(shù)據(jù)。?
??? 電口支持符合IEEE802.3ab定義的1000 BASE-T接口。數(shù)據(jù)進來后在PHY層器件中經(jīng)過AD轉(zhuǎn)換,物理介質(zhì)接入(PAM)子層和物理編碼(PCS)子層處理,由DMUX處理后,通過GMII接口到MAC層,在MAC層中實現(xiàn)自協(xié)商、流控制與設(shè)置的地址過濾后,通過POS-PHY接口的可編程FIFO到FPGA 模塊。在FPGA模塊中主要根據(jù)RFC2544建議實現(xiàn)各種統(tǒng)計等處理。?
??? 光口支持IEEE802.3定義的1000BASE-SX短波(多模),1000BASE-LX長波(單?;蚨嗄#┕饫w信號。光口處理基本與電口處理相同,由SFP進來的信號直接傳到MAC器件的SERDES(Serial to Parallel & 8B/10B Decoder)模塊,在其中進行串并轉(zhuǎn)換、8B/10B解碼后,由POS-PHY接口的可編程FIFO傳到FPGA模塊。?
??? 在FPGA模塊中處理統(tǒng)計接收到的數(shù)據(jù)時,需要快速查找數(shù)據(jù)以確定其是否與所統(tǒng)計處理數(shù)據(jù)類型匹配。此處采用輸入為需查詢的數(shù)據(jù),輸出為數(shù)據(jù)地址和匹配標志的CAM存儲器,這樣可大大加快數(shù)據(jù)的查詢速率。?
2.2 數(shù)據(jù)生成發(fā)送模塊?
??? 數(shù)據(jù)發(fā)送流程與接收流程相反,在FPGA模塊中需要生成各種類型、各種模式的高速數(shù)據(jù)流量。需要生成的數(shù)據(jù)流量包括UDP、TCP、ICMP等。需要支持的流量生成模型主要有均勻流和突發(fā)流,其差別主要是流量速率、報文之間的時間間隔的不同,前者是以恒定速率生成發(fā)送流量,后者以滿足一定分布的隨機數(shù)速率產(chǎn)生發(fā)送流量[4]。發(fā)送時需要根據(jù)ARM控制部分決定發(fā)送類型為單播、多播、還是廣播。數(shù)據(jù)生成流程如圖4所示。?
?
?
2.3 控制協(xié)調(diào)模塊?
??? ARM控制模塊是協(xié)調(diào)測試儀系統(tǒng)各部分工作,并根據(jù)用戶設(shè)置生成接收處理與生成發(fā)送數(shù)據(jù)的配置信息。?
??? ARM控制協(xié)調(diào)模塊對FPGA模塊的配置信息是通過FIFO實現(xiàn)的。首先,ARM處理器將用戶輸入的控制字轉(zhuǎn)換處理成雙方約定的、具有一定格式的數(shù)據(jù)類型,然后放入FIFO;然后,ARM向FPGA模塊發(fā)送一個指示信息,F(xiàn)PGA在掃描到此指示信息后,按照約定的格式讀取FIFO,提取配置信息。在發(fā)送數(shù)據(jù)時,此配置信息為發(fā)送數(shù)據(jù)流量的配置信息,而在接收處理數(shù)據(jù)時為處理數(shù)據(jù)命令信息。?
??? 對MAC層的控制包括配置地址過濾、發(fā)送接收端口選擇等。ARM處理器將需要過濾的地址信息通過MAC器件的8位MCU接口配置到MAC層器件寄存器,實現(xiàn)對單播、多播、廣播的地址設(shè)置。同樣,通過配置使能通道設(shè)計寄存器,選擇數(shù)據(jù)接收發(fā)送通道為電口還是光口。?
2.4 接口通信模塊?
??? 各個模塊間的通信盡可能采用業(yè)界標準接口,以便于系統(tǒng)升級維護。?
??? PHY層與MAC層接口采用8位的GMII接口。GMII(Gigabit Media Independent Interface)可以滿足不同芯片供應(yīng)商對于MAC層和PHY層的互連互通。GMII采用8位接口數(shù)據(jù),工作時鐘125 MHz,傳輸速率可達1 000 Mb/s,同時兼容MII所規(guī)定的10/100 Mb/s工作方式。?
??? MAC層與FPGA模塊采用32位的POS-PHY Level 3接口。POS-PHY接口為成幀器、網(wǎng)絡(luò)處理器與相關(guān)器件間通常使用的接口,由PMC-Sierra和Saturn開發(fā),很多特性與Utopia接口相同,但POS-PHY能滿足不同長度數(shù)據(jù)包的需要,其中Level 3速率為2.488 Gb/s。?
3 軟件設(shè)計?
??? 千兆以太網(wǎng)測試儀軟件采用Microsoft公司的Windows CE操作系統(tǒng),其界面友好,支持中文,支持多種網(wǎng)絡(luò)協(xié)議。軟件設(shè)計需要實現(xiàn)的模塊主要有4個:?
??? (1)對MAC層、FPGA等器件進行配置,數(shù)據(jù)提取,發(fā)送驅(qū)動程序;?
??? (2)在FPGA等模塊的數(shù)據(jù)處理基礎(chǔ)上,進一步對統(tǒng)計處理結(jié)果進行處理;?
??? (3)指示生成發(fā)送,接收過濾數(shù)據(jù)配置信息;?
??? (4)界面顯示測試報告。?
??? Windows CE操作系統(tǒng)軟件還需實現(xiàn)USB、串口等通信交互功能。?
??? 對千兆以太網(wǎng)測試儀采用深圳東進通訊技術(shù)有限公司研制的Keygoe1003型千兆以太網(wǎng)交換機進行測試。測試項包括接收數(shù)據(jù)分析測試、發(fā)送數(shù)據(jù)環(huán)回分析測試、對測試結(jié)果進行RFC2544建議的吞吐量、時延、丟包率和背靠背幀等指標分析。經(jīng)過嚴格的功能和指標測試,本千兆以太網(wǎng)測試儀的各項指標均達到高速網(wǎng)絡(luò)測試儀要求的標準,可滿足電信行業(yè)廠商的需求。?
參考文獻?
[1] 吳義寶,沈文博,陸增援,等. 2.5 G ATM IP寬帶測試接口的研制. 中國科學技術(shù)大學學報,2004,34(1).?
[2] RFC2544. Benchmarking methodology for network interconnect devices. 1999.?
[3] ELECTRONICS S. S3C2440A.pdf. Http://www.samsungsemi.com/.2004.?
[4] 盛立杰,吳建平,章淼,等. 高速網(wǎng)絡(luò)性能測試負載生成多流發(fā)送調(diào)度算法. 清華大學學報(自然科學版),2004,44(7).?