眾所周知,以太網(wǎng)已經(jīng)深入我們的生活無處不在,企業(yè)、校園、大數(shù)據(jù)中心和家庭等都離不開網(wǎng)絡,否則我們的生活將受到嚴重的影響。
以太網(wǎng)的接口速率也是迅速發(fā)展:10M、100M、GE、10GE、40GE、100GE,到目前逐步成熟的2.5GE、5GE、25GE、50GE甚至400GE,基本是每10年速率10倍增長的發(fā)展趨勢。
很多數(shù)據(jù)中心和運營商也已準備將其網(wǎng)絡從100GE擴展到400GE,以支持第五代無線技術(shù)(5G)、人工智能(AI)、虛擬現(xiàn)實(VR)、物聯(lián)網(wǎng)(IoT)、自動駕駛汽車等新興技術(shù)所需的帶寬和響應時間。
然而任何新型網(wǎng)絡接口速率、網(wǎng)絡設(shè)備的研發(fā)至形成最終產(chǎn)品及網(wǎng)絡新技術(shù)從研究到落地,每個階段都離不開測試驗證,而且已經(jīng)給測試帶來了極大的挑戰(zhàn)。同時,高性能的穩(wěn)定的高速率網(wǎng)絡測試儀的發(fā)展,卻有點跟不上網(wǎng)絡設(shè)備的研發(fā)需求。
所以高速率、穩(wěn)定的網(wǎng)絡測試儀的發(fā)展刻不容緩,尤其是掌握核心技術(shù)的國產(chǎn)化網(wǎng)絡測試儀產(chǎn)品。
國內(nèi)電信運營商進行的大規(guī)模的數(shù)據(jù)中心交換機或是核心路由器的測試場景對測試儀提出了極高的要求。
1、穩(wěn)定性
具備長時間穩(wěn)定打流、統(tǒng)計及協(xié)議仿真的能力,如7x24小時長時間穩(wěn)定運行;
2、可重復性
同樣的物理環(huán)境及網(wǎng)絡條件,多次測試結(jié)果必須一致;
3、準確性
測試結(jié)果必須能準確的反映被測設(shè)備或系統(tǒng)的真實指標情況,如吞吐量指標、時延和抖動的精確性、流量調(diào)度的精確性、流量統(tǒng)計的精確性;
4、高性能
支持所有包長(如64-16000字節(jié)或IMIX混合包長)線速發(fā)流及統(tǒng)計的能力、超高的路由交換協(xié)議仿真能力(如多session數(shù)的BGP/OSPF/ISIS/PPPOE/IPOE/EVPN等)、多端口(如上百個以上的100GE/10GE)多業(yè)務(如IPV4/IPV6/MPLS/Multicast)流量場景仿真能力;
5、標準性
具備符合國際測試標準RFC-2544,RFC-2889、RFC3511、RFC3918等;
6、豐富的接口類型
支持1GE/2.5GE/5GE/10GE/25GE/40GE/50GE/100GE/400GE等多種接口類型,支持多機框級聯(lián)搭建大規(guī)模的測試場景。
而目前市面上存在的網(wǎng)絡測試儀主要有兩種架構(gòu)。
1、基于x86+DPDK+網(wǎng)卡的測試儀
X86的編程相對容易,調(diào)試手段更加豐富,成本有一定的優(yōu)勢,在要求不高的功能性測試方面,是一個不錯的選擇。
2、基于FPGA+x86混合的測試儀
FPGA+x86這樣的軟硬集合的測試系統(tǒng),則適用于高性能、全覆蓋、測試場景規(guī)模大、測試業(yè)務復雜的測試場景。
FPGA+x86的混合架構(gòu),一方面利用了FPGA越來越強大的數(shù)據(jù)層面硬件的并行性,另一方面也結(jié)合了CPU在控制層面的處理靈活性,同時由于FPGA和CPU本質(zhì)上都是可編程的系統(tǒng),根據(jù)業(yè)務處理的需要,可以在FPGA硬件和CPU軟件之間靈活地移動業(yè)務劃分邊界,實現(xiàn)整個業(yè)務流程的全面優(yōu)化。
我們按照前面所說的電信運營商的復雜測試場景要求,對兩種架構(gòu)的測試儀進行一個全面的對比分析如下:
1、64-16000字節(jié)包長的線速發(fā)流及統(tǒng)計能力
x86+DPDK+網(wǎng)卡:以圖示的100G網(wǎng)絡為例,在64字節(jié)包長的情況下,大概每秒會收發(fā)150M個數(shù)據(jù)包,以目前的CPU的計算和存儲存取能力是無法處理的,而基于FPGA架構(gòu)的測試儀沒有此限制。根據(jù)DPDK官網(wǎng)公開發(fā)布的最新數(shù)據(jù)(2019.10.9)【數(shù)據(jù)來源,DPDK官網(wǎng) www.dpdk.org】,采用圖1的系統(tǒng)配置,可以明顯看出在64,128,256等小字節(jié)情況下無法做到100G線速收發(fā)包;
FPGA+x86:所有字節(jié)可以做到線速發(fā)包與統(tǒng)計。
所能達到的小字節(jié)包長線速性能如圖2所示。
2、時延和抖動的精確性
時延測試的精度在網(wǎng)絡測試中是非常重要的指標。
x86+DPDK+網(wǎng)卡:X86系統(tǒng)是面向通用計算的系統(tǒng),它本身的基準時鐘精度就不高,同時OS的調(diào)度誤差至少在us量級;如果x86系統(tǒng)的NIC不支持在物理層插入時間戳的話,需要由軟件系統(tǒng)來處理網(wǎng)絡時延,這將帶來進一步的誤差;所以通常網(wǎng)絡測試需要的精確至10ns量級的時延難以在面向計算的通用x86平臺上實現(xiàn);
FPGA+x86:在FPGA平臺上,通過0.1~0.001PPM精度的晶振,產(chǎn)生高達400M的時鐘,可以將時延的精度控制在2.5ns數(shù)量級別。
3、存儲系統(tǒng)靈活性
x86+DPDK+網(wǎng)卡:x86系統(tǒng)面向通用計算,目前主流的內(nèi)存系統(tǒng)是DDR4內(nèi)存,帶寬大但是訪問延遲也大,根據(jù)讀寫訪問模式的不同,可能會帶有延遲抖動;
FPGA+x86:FPGA的內(nèi)存,可以根據(jù)需要組合片上RAM(可以實現(xiàn)cache功能)+DDR+QDR+RLDRAM等各種內(nèi)存技術(shù),優(yōu)化帶寬需求型和延遲需求型訪問。
4、協(xié)議加速的能力
x86+DPDK+網(wǎng)卡:無額外資源來實現(xiàn)TCP offloading等協(xié)議加速功能;
FPGA+x86:FPGA是硬件的可編程系統(tǒng),可以根據(jù)硬件資源的多少,以及業(yè)務處理的需要,在協(xié)議處理方面和x86系統(tǒng)靈活地劃分接口界限,實現(xiàn)TCP offloading等協(xié)議加速功能,把協(xié)議處理中的計算密集型的無狀態(tài)任務在硬件層面并行化,可以大大增強整個系統(tǒng)的處理能力。
5、2-3層流量調(diào)度的精確性
x86+DPDK+網(wǎng)卡:x86系統(tǒng)在高速端口上無法實現(xiàn)小字節(jié)包長線速發(fā)流,更談不上精準的流量調(diào)度了;
FPGA+x86:面對測試業(yè)務流量越來越復雜和規(guī)模越來越大的交換機、路由器,F(xiàn)PGA系統(tǒng)架構(gòu)下支持產(chǎn)生成千上萬條流(比如高端測試儀中典型的64K條流),并且可以對每條流之間的帶寬比例、發(fā)送調(diào)度模式做到精確控制,甚至精確到小數(shù)點后面5位。
6、統(tǒng)計的實時性能和準確性
x86+DPDK+網(wǎng)卡:CPU的測試功能軟件實現(xiàn)本質(zhì)上是一個串行的指令集合,隨著多核的超線程等新技術(shù)的實現(xiàn),在指令級別可以實現(xiàn)部分的并行,但是對于一些統(tǒng)計數(shù)據(jù),比如實時的每秒收發(fā)幀數(shù)等,至少是由兩個參數(shù)來定義的(一定的時間間隔delta和該間隔內(nèi)的收發(fā)包數(shù)),若是這兩個參數(shù)的讀取是在一個CPU內(nèi)核上實現(xiàn)的,則指令的串行特性必然帶來很大的誤差;若是這兩個參數(shù)的讀取是在兩個內(nèi)核上實現(xiàn)的,則目前的CPU技術(shù)難以實現(xiàn)內(nèi)核之間ns級別的同步,同樣帶來統(tǒng)計值的不精確;
FPGA+x86: FPGA內(nèi)部,通過硬件編程技術(shù),可以很輕松地實現(xiàn)統(tǒng)計值快照功能,嚴格保證上述兩個參數(shù)的讀取是精確對應的。
7、系統(tǒng)可擴展性
x86+DPDK+網(wǎng)卡:對于大規(guī)模的被測系統(tǒng),無論是x86的軟件實現(xiàn)還是FPGA+X86這樣的混合系統(tǒng),單機都無法完成測試任務,系統(tǒng)級聯(lián)并且在10ns級別實現(xiàn)同步是必然的選項。x86系統(tǒng)面向通用計算,可以通過運行NTP的協(xié)議可以實現(xiàn)多機同步,但是NTP的同步精度無法達到時延測試業(yè)務的要求;
FPGA+x86:在FPGA+x86的混合系統(tǒng)中,通過FPGA可以實現(xiàn)本地線纜級聯(lián)/GPS/1588v2等高精度同步技術(shù),保證時間測試精度。
另外,在FPGA+x86混合系統(tǒng)的實現(xiàn)中,2-3層的流量處理在FPGA內(nèi)實現(xiàn),不需要經(jīng)過CPU的協(xié)議棧或者上層應用,CPU只需實現(xiàn)輕量級的配置下發(fā)、界面呈現(xiàn)等運算,避免了CPU在線速收發(fā)流處理方面的天然缺陷;在X86一側(cè),也可以靈活部署DPDK技術(shù),由X86系統(tǒng)實現(xiàn)經(jīng)過加速后的純協(xié)議處理部分,將FPGA和x86的優(yōu)勢組合起來,實現(xiàn)高效的業(yè)務處理。
顯而易見,采用FPGA+x86混合系統(tǒng)是構(gòu)建高性能網(wǎng)絡測試儀的最佳選擇。
近年來,國外以太網(wǎng)測試技術(shù)發(fā)展迅速,新產(chǎn)品層出不窮,高速率高性能測試軟硬件平臺憑借多年的技術(shù)積累,美國的Spirent、keysight兩家公司在以太網(wǎng)測試領(lǐng)域長期占據(jù)全球主導地位,在本行業(yè)內(nèi)走在世界前列。
國內(nèi)對以太網(wǎng)測試技術(shù)的研究始于21世紀初,經(jīng)過十幾年的努力,相關(guān)測試產(chǎn)品的自主設(shè)計開發(fā)能力也取得了長足進步。
信而泰自2007年成立以來,作為國內(nèi)始終專注于通信網(wǎng)絡測試領(lǐng)域的儀表廠商,堅持國產(chǎn)自主研發(fā)的創(chuàng)新機制,研發(fā)覆蓋了高中低端市場的多款網(wǎng)絡測試設(shè)備產(chǎn)品,客戶已經(jīng)覆蓋電信運營商、通信制造企業(yè)、科研院所、高等院校、電力、交通等眾多領(lǐng)域。信而泰網(wǎng)絡測試儀采用的是機箱式結(jié)構(gòu)+可插拔板卡的形式,硬件總體方案采用分布式計算架構(gòu),在邏輯上分為數(shù)據(jù)平面和管理平面,在物理單元上將測試模塊和主控模塊獨立設(shè)計,使用FPGA+x86混合系統(tǒng)的架構(gòu)來實現(xiàn)高性能網(wǎng)絡測試儀的目標。
評論