一種面向云架構(gòu)的高性能網(wǎng)絡(luò)接口實(shí)現(xiàn)技術(shù)
實(shí)驗(yàn)結(jié)果如圖5所示,可以得出傳統(tǒng)網(wǎng)絡(luò)接口實(shí)現(xiàn)模式下性能的峰值在180Kpps左右,而且隨著網(wǎng)絡(luò)數(shù)據(jù)流量的增大,性能呈現(xiàn)下降趨勢(shì),主要因?yàn)殡S著網(wǎng)絡(luò)流量的增加,額外的系統(tǒng)開(kāi)銷也在不斷增加。HPNI模式下性能峰值在1.8Mpps左右,而且隨著網(wǎng)絡(luò)流量的增加,性能比較穩(wěn)定,抗沖擊力比較強(qiáng)。
本文引用地址:http://www.ex-cimer.com/article/270287.htm
圖5 單線程模式下性能測(cè)試結(jié)果
3.2實(shí)驗(yàn)二
采用與實(shí)驗(yàn)一相同的硬件環(huán)境,同時(shí)開(kāi)啟多個(gè)相同的任務(wù)線程,每個(gè)線程在一個(gè)任務(wù)循環(huán)內(nèi)完成收包、改包、發(fā)包的工作,比較兩種接口模式在多核多任務(wù)配置下的性能。另外,在HPNI模式下同時(shí)使能網(wǎng)卡的RSS功能,生成多個(gè)隊(duì)列分別對(duì)應(yīng)每個(gè)任務(wù)線程,每個(gè)任務(wù)線程靜態(tài)綁定一個(gè)CPU核心,如圖6所示。
圖6 多核多線程模式下網(wǎng)絡(luò)接口性能分析
實(shí)驗(yàn)結(jié)果如圖7所示,在傳統(tǒng)網(wǎng)絡(luò)接口實(shí)現(xiàn)模式下,因?yàn)槭芟抻贚inux內(nèi)核處理的瓶頸,即使采用了多線程并發(fā),其性能峰值仍然處于180Kpps左右。HPNI卻能很好地利用多線程的并發(fā),在網(wǎng)卡RSS功能的配合之下性能得到成倍的提高。也可以看到多核下面HPNI的性能并不是一直隨著核數(shù)的增加而線性增加的,主要因?yàn)镃PU內(nèi)的核心之間并不是完全獨(dú)立的,它們之間也存在一些共享資源的競(jìng)爭(zhēng),比如總線的訪問(wèn),從而對(duì)性能產(chǎn)生一些負(fù)面的影響。
圖7 多核多線程模式下網(wǎng)絡(luò)接口性能測(cè)試結(jié)果
4結(jié)語(yǔ)
本文分析了傳統(tǒng)Linux下網(wǎng)絡(luò)接口實(shí)現(xiàn)的性能瓶頸,針對(duì)其不足提出了一種新型的網(wǎng)絡(luò)接口實(shí)現(xiàn)模式。實(shí)驗(yàn)結(jié)果表明,HPNI可以達(dá)到12Mpps的包轉(zhuǎn)發(fā)速率,完全可以勝任核心路由網(wǎng)絡(luò)以外網(wǎng)絡(luò)聚合點(diǎn)的工作,比如小型企業(yè)網(wǎng)關(guān)等。另外,因?yàn)镠PNI的容量可以動(dòng)態(tài)調(diào)整,因此可以以較高的性價(jià)比實(shí)現(xiàn)各種性能要求的網(wǎng)絡(luò)轉(zhuǎn)發(fā)節(jié)點(diǎn)?;谕ㄓ锰幚砥骱蜆?biāo)準(zhǔn)操作系統(tǒng)的特性,也使得HPNI能夠快速地部署到SDN中。HPNI既可以直接部署在IT server上,也可以部署在虛擬機(jī)當(dāng)中,從而實(shí)現(xiàn)高速NFV的功能。當(dāng)然,HPNI也存在一點(diǎn)不足,因?yàn)椴捎昧溯喸兡J?,雖然保證了數(shù)據(jù)處理的實(shí)時(shí)性,但也導(dǎo)致了較大的CPU負(fù)載,當(dāng)網(wǎng)絡(luò)流量很低的時(shí)候,系統(tǒng)資源利用率不是很高。后續(xù)可以針對(duì)此點(diǎn)做一些優(yōu)化,比如結(jié)合機(jī)器學(xué)習(xí)算法對(duì)輸入數(shù)據(jù)流量進(jìn)行預(yù)測(cè),當(dāng)輸入流量降低時(shí)通過(guò)CPU提供的pause指令降低CPU負(fù)載,從而降低系統(tǒng)資源的使用。
評(píng)論