一種測(cè)試以太網(wǎng)性能的系統(tǒng)及方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明屬于通信測(cè)試領(lǐng)域,涉及一種測(cè)試以太網(wǎng)性能的系統(tǒng)及方法。
【背景技術(shù)】
[0002] 以太網(wǎng)性能測(cè)試主要包括:誤碼率測(cè)試,其是在整個(gè)基于以太網(wǎng)的電路內(nèi)發(fā)送一 個(gè)測(cè)試圖樣,然后將錯(cuò)誤的位數(shù)與發(fā)送的位數(shù)進(jìn)行比較從而測(cè)量誤碼率;幀丟失測(cè)試,其是 計(jì)算在穩(wěn)定狀態(tài)(常態(tài))下由于資源缺乏網(wǎng)絡(luò)設(shè)備實(shí)際應(yīng)轉(zhuǎn)發(fā)但未轉(zhuǎn)發(fā)的幀數(shù)的百分比; 時(shí)延測(cè)試,其是測(cè)量輸入幀的最后一位到達(dá)輸入端口與在輸出端口上看到輸出幀的第一位 之間的時(shí)間間隔。
[0003] 從現(xiàn)有技術(shù)中可以看出測(cè)試過(guò)程中是對(duì)流量進(jìn)行分析,沒(méi)有對(duì)幀進(jìn)行加飾,由此 帶來(lái)的顯著缺點(diǎn)是:在測(cè)試以太網(wǎng)某些性能時(shí),包缺乏辨識(shí)度,難以全面分析網(wǎng)絡(luò)性能,比 如測(cè)試丟包/亂序重復(fù)包時(shí),無(wú)法定位到具體的包,時(shí)延和抖動(dòng)存在較大誤差。
【發(fā)明內(nèi)容】
[0004] 本發(fā)明的目的在于克服上述不足,提供一種測(cè)試以太網(wǎng)性能的系統(tǒng),其便于分析 數(shù)據(jù)包,提高網(wǎng)絡(luò)性能測(cè)試的效率。
[0005] 為了實(shí)現(xiàn)上述目的,本發(fā)明采用的技術(shù)方案為:一種測(cè)試以太網(wǎng)性能的系統(tǒng),其特 征在于,由FPGA可編程邏輯器件實(shí)現(xiàn),包括:
[0006] 發(fā)送側(cè)邏輯,包括組包模塊與調(diào)度模塊,所述調(diào)度模塊,用于產(chǎn)生組包的使能信 號(hào);所述組包模塊,用于根據(jù)調(diào)度模塊產(chǎn)生組包的使能信號(hào),依據(jù)包的類(lèi)型和是否添加標(biāo) 簽,組成相應(yīng)類(lèi)型的數(shù)據(jù)包,并進(jìn)行發(fā)送;
[0007]MAC,用于接收所述發(fā)送側(cè)邏輯發(fā)送的數(shù)據(jù)包,并對(duì)流量進(jìn)行控制,然后進(jìn)行輸 出;
[0008] 接收側(cè)邏輯,包括解包模塊與統(tǒng)計(jì)模塊,所述解包模塊,用于接收從MAC發(fā)送過(guò)來(lái) 的數(shù)據(jù)包,對(duì)數(shù)據(jù)包進(jìn)行解析,通過(guò)所述標(biāo)簽的信息測(cè)試以太網(wǎng)性能;所述統(tǒng)計(jì)模塊,用于 統(tǒng)計(jì)接收的數(shù)據(jù)包的信息,對(duì)標(biāo)簽進(jìn)行分析,統(tǒng)計(jì)正常包、重復(fù)包、亂序包、丟包數(shù)及字節(jié) 數(shù),時(shí)延和抖動(dòng)情況。
[0009] 本發(fā)明的另一目的在于提供一種測(cè)試以太網(wǎng)性能的方法,其特征在于,由FPGA可 編程邏輯器件實(shí)現(xiàn),包括:
[0010] 發(fā)送側(cè)邏輯,包括組包模塊與調(diào)度模塊,所述調(diào)度模塊產(chǎn)生組包的使能信號(hào);所述 組包模塊根據(jù)調(diào)度模塊產(chǎn)生組包的使能信號(hào),依據(jù)包的類(lèi)型和是否添加標(biāo)簽,組成相應(yīng)類(lèi) 型的數(shù)據(jù)包,并進(jìn)行發(fā)送;
[0011] MAC,接收所述發(fā)送側(cè)邏輯發(fā)送的數(shù)據(jù)包,并對(duì)流量進(jìn)行控制,然后進(jìn)行輸出;
[0012] 接收側(cè)邏輯,包括解包模塊與統(tǒng)計(jì)模塊,所述解包模塊接收從MAC發(fā)送過(guò)來(lái)的數(shù) 據(jù)包,對(duì)數(shù)據(jù)包進(jìn)行解析,通過(guò)所述標(biāo)簽的信息測(cè)試以太網(wǎng)性能;所述統(tǒng)計(jì)模塊統(tǒng)計(jì)接收的 數(shù)據(jù)包的信息,對(duì)標(biāo)簽進(jìn)行分析,統(tǒng)計(jì)正常包、重復(fù)包、亂序包、丟包數(shù)及字節(jié)數(shù),時(shí)延和抖 動(dòng)情況。
[0013] 本發(fā)明的有益效果為:
[0014] 第一,結(jié)構(gòu)簡(jiǎn)單,由FPGA可編程邏輯器件實(shí)現(xiàn),包括:發(fā)送側(cè)邏輯,包括組包模塊 與調(diào)度模塊,調(diào)度模塊用于產(chǎn)生組包的使能信號(hào);組包模塊,用于組成相應(yīng)類(lèi)型的數(shù)據(jù)包, 并進(jìn)行發(fā)送;MAC,用于接收發(fā)送側(cè)邏輯發(fā)送的數(shù)據(jù)包,并對(duì)流量進(jìn)行控制,然后進(jìn)行輸出; 接收側(cè)邏輯,包括解包模塊與統(tǒng)計(jì)模塊,解包模塊用于接收從MAC發(fā)送過(guò)來(lái)的數(shù)據(jù)包,對(duì)數(shù) 據(jù)包進(jìn)行解析;統(tǒng)計(jì)模塊用于統(tǒng)計(jì)接收的數(shù)據(jù)包的信息,對(duì)標(biāo)簽進(jìn)行分析,提高網(wǎng)絡(luò)性能測(cè) 試的效率。
[0015] 第二,應(yīng)用廣泛,便于分析數(shù)據(jù)包,在網(wǎng)絡(luò)信息交換中,對(duì)幀加入標(biāo)簽封裝成包進(jìn) 行傳輸?shù)暮锰帲簩?duì)包分析,若有協(xié)議標(biāo)識(shí)(protocol_id),則標(biāo)識(shí)包是自己的包;包類(lèi)型 (packet_type)可以核對(duì)接收側(cè)的包類(lèi)型是否正確;凈荷類(lèi)型(payload_type)得出傳輸?shù)?凈荷類(lèi)型,便于統(tǒng)計(jì)錯(cuò)誤的位數(shù);序列數(shù)目(SequenCe_num)可以得出丟包數(shù)目、丟失包、重 復(fù)包和亂序包;時(shí)間戳(time_Stamp)可以得出時(shí)延和抖動(dòng)時(shí)間。
【附圖說(shuō)明】
[0016] 此處所說(shuō)明的附圖用來(lái)提供對(duì)本申請(qǐng)的進(jìn)一步理解,構(gòu)成本申請(qǐng)的一部分,本申 請(qǐng)的示意性實(shí)施例及其說(shuō)明用于解釋本申請(qǐng),并不構(gòu)成對(duì)本申請(qǐng)的不當(dāng)限定。在附圖中:
[0017] 圖1是本發(fā)明的測(cè)試以太網(wǎng)性能的系統(tǒng)的結(jié)構(gòu)原理示意圖;
[0018] 圖2是本發(fā)明的測(cè)試以太網(wǎng)性能的系統(tǒng)的流程圖。
【具體實(shí)施方式】
[0019] 如在說(shuō)明書(shū)及權(quán)利要求當(dāng)中使用了某些詞匯來(lái)指稱(chēng)特定組件。本領(lǐng)域技術(shù)人員 應(yīng)可理解,硬件制造商可能會(huì)用不同名詞來(lái)稱(chēng)呼同一個(gè)組件。本說(shuō)明書(shū)及權(quán)利要求并不以 名稱(chēng)的差異來(lái)作為區(qū)分組件的方式,而是以組件在功能上的差異來(lái)作為區(qū)分的準(zhǔn)則。如在 通篇說(shuō)明書(shū)及權(quán)利要求當(dāng)中所提及的"包含"為一開(kāi)放式用語(yǔ),故應(yīng)解釋成"包含但不限定 于"。"大致"是指在可接收的誤差范圍內(nèi),本領(lǐng)域技術(shù)人員能夠在一定誤差范圍內(nèi)解決所述 技術(shù)問(wèn)題,基本達(dá)到所述技術(shù)效果。說(shuō)明書(shū)后續(xù)描述為實(shí)施本申請(qǐng)的較佳實(shí)施方式,然所述 描述乃以說(shuō)明本申請(qǐng)的一般原則為目的,并非用以限定本申請(qǐng)的范圍。本申請(qǐng)的保護(hù)范圍 當(dāng)視所附權(quán)利要求所界定者為準(zhǔn)。
[0020] 實(shí)施例1
[0021] 請(qǐng)參照?qǐng)D1,本發(fā)明的測(cè)試以太網(wǎng)性能的系統(tǒng),由FPGA可編程邏輯器件實(shí)現(xiàn),包 括:發(fā)送側(cè)邏輯,包括組包模塊與調(diào)度模塊,所述調(diào)度模塊,用于產(chǎn)生組包的使能信號(hào);所 述組包模塊,用于根據(jù)調(diào)度模塊產(chǎn)生組包的使能信號(hào),依據(jù)包的類(lèi)型和是否添加標(biāo)簽(由 軟件配置一使能信號(hào),使能信號(hào)有效,添加標(biāo)簽;使能信號(hào)無(wú)效,不添加標(biāo)簽),組成相應(yīng)類(lèi) 型的數(shù)據(jù)包,并進(jìn)行發(fā)送;MAC,用于接收所述發(fā)送側(cè)邏輯發(fā)送的數(shù)據(jù)包,并對(duì)流量進(jìn)行控 制,然后進(jìn)行輸出;接收側(cè)邏輯,包括解包模塊與統(tǒng)計(jì)模塊,所述解包模塊,用于接收從MAC 發(fā)送過(guò)來(lái)的數(shù)據(jù)包,對(duì)數(shù)據(jù)包進(jìn)行解析,通過(guò)所述標(biāo)簽的信息測(cè)試以太網(wǎng)性能;所述統(tǒng)計(jì)模 塊,用于統(tǒng)計(jì)接收的數(shù)據(jù)包的信息,對(duì)標(biāo)簽進(jìn)行分析,統(tǒng)計(jì)正常包、重復(fù)包、亂序包、丟包數(shù) 及字節(jié)數(shù),時(shí)延和抖動(dòng)情況。
[0022] 優(yōu)選地,還包括接口模塊,用于使FPGA通過(guò)PCI總線與CPU通信PCI接口模塊。
[0023] 優(yōu)選地,還包括一計(jì)數(shù)器,用于計(jì)算發(fā)送側(cè)邏輯和接收側(cè)邏輯的當(dāng)前時(shí)間,將接收 側(cè)時(shí)間與發(fā)送側(cè)時(shí)間進(jìn)行相減以獲得相鄰數(shù)據(jù)包的時(shí)延。
[0024] 優(yōu)選地,所述計(jì)數(shù)器為16ns計(jì)數(shù)器,16ns是在千兆以太網(wǎng)的環(huán)境下計(jì)算得來(lái), 若在萬(wàn)兆以太網(wǎng)、100G以太網(wǎng)或者是其他速度的以太網(wǎng)環(huán)境下計(jì)算方式是一樣的,如下: 千兆以太網(wǎng)的發(fā)送和接收側(cè)的接口位寬為16位,根據(jù)單位時(shí)間內(nèi)傳輸數(shù)據(jù)速率一致性,16 位位寬時(shí)所需時(shí)鐘頻率為l〇〇〇MHz/16位=62. 5MHz,將62. 5MHz轉(zhuǎn)換為時(shí)間即為16ns。
[0025] 優(yōu)選地,F(xiàn)PGA芯片主要包括:可編程輸入輸出單元、基本可編程邏輯單元、時(shí)鐘管 理單元、嵌入塊式RAM、布線單元、內(nèi)嵌的底層功能單元和內(nèi)嵌專(zhuān)用硬件模塊。
[0026] 優(yōu)選地,F(xiàn)PGA利用小型查找表(16X1RAM)來(lái)實(shí)現(xiàn)組合邏輯,每個(gè)查找表連接到一 個(gè)D觸發(fā)器的輸入端,觸發(fā)器再來(lái)驅(qū)動(dòng)其他邏輯電路或驅(qū)動(dòng)1/0,由此構(gòu)成了即可實(shí)現(xiàn)組合 邏輯功能又可實(shí)現(xiàn)時(shí)序邏輯功能的基本邏輯單元模塊,這些模塊間利用金屬連線互相連接 或連接到I/O模塊。
[0027] 優(yōu)選地,F(xiàn)PGA的邏輯是通過(guò)向內(nèi)部靜態(tài)存儲(chǔ)單元加載編程數(shù)據(jù)來(lái)實(shí)現(xiàn)的,存儲(chǔ)在 存儲(chǔ)器單元中的值決定了邏輯單元的邏輯功能以及個(gè)模塊之間或模塊與I/O間的連接方 式,并最終決定了邏輯單元的邏輯功能以及各模塊之間或模塊與I/O間的聯(lián)接方式,并最 終決定了FPGA所能實(shí)現(xiàn)的功能,F(xiàn)PGA允許無(wú)限次的編程。
[0028] 優(yōu)選地,所述可編程輸入輸出單元是與外界電路的接口部分,用于完成不同電氣 特性下對(duì)輸入/輸出信號(hào)的驅(qū)動(dòng)與匹配要求,通過(guò)軟件的靈活配置,可適配不同的電氣標(biāo) 準(zhǔn)與I/O物理特性,可以調(diào)整驅(qū)動(dòng)電流的大小。
[0029] 優(yōu)選地,外部輸入信號(hào)可以通過(guò)可編程輸入輸出單元輸入到FPGA的內(nèi)部,也可以 直接輸入FPGA內(nèi)部。
[0030] 優(yōu)選地,基本可編程邏輯單元包含一個(gè)可配置開(kāi)關(guān)矩陣,此矩陣由4或6個(gè)輸入、 一些選型電路(多路復(fù)用器等)和觸發(fā)器組成。
[0031] 優(yōu)選地,開(kāi)關(guān)矩陣是高度靈活的,可以對(duì)其進(jìn)行配置以便處理組合邏輯、移位寄存 器或RAM。
[0032] 優(yōu)選地,每個(gè)基本可編程邏輯單元不僅可以用于實(shí)現(xiàn)組合邏輯、時(shí)序邏輯,還可以 配置為分布式RAM和分布式ROM。
[0033] 優(yōu)選地,基本可編程邏輯單元由兩個(gè)4輸入的函數(shù)、進(jìn)位邏輯、算術(shù)邏輯、存儲(chǔ)邏 輯和函數(shù)復(fù)用器組成。
[0034] 優(yōu)選地,算術(shù)邏輯包括一個(gè)異或門(mén)和一個(gè)與門(mén),一個(gè)異或門(mén)可以實(shí)現(xiàn)2位全加操 作,進(jìn)位邏輯由進(jìn)位信號(hào)和函數(shù)復(fù)用器組成,用于實(shí)現(xiàn)快速的算術(shù)加減法操作;4輸入函數(shù) 發(fā)生器用于實(shí)現(xiàn)4輸入LUT、分布式RAM或16比特移位寄存器。
[0035] 優(yōu)選地,所述進(jìn)位邏輯包括兩條快速進(jìn)位鏈,用于提高基本可編程邏輯單元的處 理速度。
[0036] 優(yōu)選地,時(shí)鐘管理單元用于數(shù)字時(shí)鐘管理和相位環(huán)路鎖定。相位環(huán)路鎖定能夠提 供精確的時(shí)鐘綜合,且能夠降低抖動(dòng),并實(shí)現(xiàn)過(guò)濾功能。
[0037] 優(yōu)選地,嵌入塊式RAM可被配置為單端口RAM、雙端口RAM、內(nèi)容地址存儲(chǔ)器以及 FIFO等存儲(chǔ)結(jié)構(gòu)。
[0038] 優(yōu)選地,內(nèi)容地址存儲(chǔ)器在其內(nèi)部的每個(gè)存儲(chǔ)單元中都有一個(gè)比較邏輯,寫(xiě)入CAM 中的數(shù)據(jù)會(huì)和內(nèi)部的每一個(gè)數(shù)據(jù)進(jìn)行比較,并返回與端口數(shù)據(jù)相同的所有數(shù)據(jù)的地址。
[0039] 優(yōu)選地,布線單元連通FPGA內(nèi)部的所有單元,根據(jù)工藝、長(zhǎng)度、寬度和分布位置的 不同而劃分為4類(lèi)不同的類(lèi)別。第一類(lèi)是全局布線模塊,用于芯片內(nèi)部全局時(shí)鐘和全局復(fù) 位/置位的布線;第二類(lèi)是長(zhǎng)線模塊,用以完成芯片Bank間的高速信號(hào)和第二全局時(shí)鐘信 號(hào)的布線;第三類(lèi)是短線模塊,用于完成基本邏輯單元之間的邏輯互連和布線;第四類(lèi)是 分布式的布線模塊,用于專(zhuān)有時(shí)鐘、復(fù)位等控制信號(hào)線。
[0040] 優(yōu)選地,內(nèi)嵌的底層功能單元包括:DLL(DelayLockedLoop),PLL(PhaseLocked Loop),DSP。用于完成時(shí)鐘高精度、低抖動(dòng)的倍頻和分頻,以及占空比調(diào)整和移相等功能。
[0041] 優(yōu)選地,本實(shí)施例采用的配置模式為將FPGA連接CPU,由CPU對(duì)FPGA編程。
[0042] 優(yōu)選地,還可采用一片F(xiàn)PGA加一片EPROM的配置模式。
[0043] 優(yōu)選地,還可采用一片PROM編程多片F(xiàn)PGA的配置模式。
[0044] 優(yōu)選地,還可采用串行PROM編程FPGA的配置模式。
[004