您好,登錄后才能下訂單哦!
網(wǎng)絡(luò)分流器|基于復(fù)合存儲的100Gbps DPI技術(shù)
(1)依靠更高性能的服務(wù)器或服務(wù)器集群來加速DPI吞吐量,由于在報文流上執(zhí)行多機(jī)器或多核的負(fù)載均衡非常方便,這種方法很容易達(dá)到很高的處理性能,缺點是代價比較大。
(2)依靠更好的軟件算法來提高匹配性能,目前研究界普通采用以AC算法作為基礎(chǔ)來優(yōu)化性能,主要有WU-MANBER、SBOM、一次多字節(jié)(俗稱多步)、BloomFilter等方法,但是DPI過程要求的前后狀態(tài)轉(zhuǎn)移是關(guān)聯(lián)的,即下一次訪問的地址與上一次訪問的狀態(tài)和當(dāng)前報文字節(jié)的內(nèi)容緊密相關(guān),受限于存儲器本身(主要是DDR)的性能,軟件優(yōu)化的空間非常有限。
(3)依靠各種多核NPU自帶的匹配引擎來加速,目前國外兩大多核NPU巨頭Broadcom和Cavium都有在其NPU上內(nèi)置了DPI加速引擎,如Cavium內(nèi)置的HFA引擎宣稱其單個NPU可以達(dá)到24Gbps的處理能力,但是實測性能與宣稱性能之間相差巨大。尤其是配置正則表達(dá)式規(guī)則時,帶通配符的規(guī)則會對其性能造成十分顯著的影響。
總是,雖然研究界和產(chǎn)業(yè)界都非常關(guān)注深度報文檢測,當(dāng)前DPI技術(shù)的技術(shù)發(fā)展仍然無法趕上相關(guān)應(yīng)用領(lǐng)域的現(xiàn)實要求。
在深度報文檢測(DPI)中,首先要將關(guān)鍵字或正則表達(dá)式特征編譯成有限狀態(tài)自動機(jī)(Finite State Automata,F(xiàn)SA),并將FSA的狀態(tài)表配置在存儲器中。匹配過程中,每處理報文的一個字節(jié)都需要至少一次查表,以獲取下一次要訪問的狀態(tài)地址。匹配的速度取決于訪存次數(shù)和每次訪存的時延,而對于一個給定的報文,訪存次數(shù)等于報文負(fù)載長度。因此要提高匹配的速度就需要盡量減少每次訪存的時延。
在輕量級的網(wǎng)絡(luò)下,網(wǎng)絡(luò)鏈路速率低。如果規(guī)則數(shù)比較少,可以把每條規(guī)則編譯成一個FSA,狀態(tài)表配置在高速存儲器中,以獲得較高的匹配速度。然而,隨著網(wǎng)絡(luò)帶寬的快速增加,10G比特的網(wǎng)絡(luò)已經(jīng)開始應(yīng)用于園區(qū)網(wǎng)絡(luò)中;規(guī)則的數(shù)目也增加到數(shù)百甚至上千條。將每條規(guī)則編譯成單個FSA的方案已經(jīng)無法滿足性能需求。如果將所有規(guī)則編譯成一個FSA,可能發(fā)生狀態(tài)爆炸。狀態(tài)表的規(guī)??赡艹^數(shù)100G字節(jié),遠(yuǎn)超過目前高速存儲器的容量,只能配置在外部磁盤這樣的低速存儲器中,訪存時延大大提高。
DPI技術(shù)的關(guān)鍵其實是訪存的性能,尤其是隨機(jī)訪存的性能,如果能夠設(shè)計一種存儲結(jié)構(gòu),既能夠支持很高的隨機(jī)訪問性能(如達(dá)到幾十個Gbps以上),又能夠有比較大的容量(如到幾十兆的大小),則通過良好的狀態(tài)表數(shù)據(jù)結(jié)構(gòu)優(yōu)化,使得狀態(tài)表的訪問能夠相對聚集;然后對訪存過程加以優(yōu)化,如流水化訪存、Bank交錯、并行化訪存等措施來進(jìn)一步提高訪問狀態(tài)表的效率,則高性能的DPI是可以實現(xiàn)的。
湖南戎騰網(wǎng)絡(luò)創(chuàng)新團(tuán)隊在國家自然科學(xué)基金的支持下,研究出來的高性能DPI技術(shù),借鑒了計算機(jī)系統(tǒng)的Cache結(jié)構(gòu)。在計算機(jī)系統(tǒng)中,由于局部性原理,可以用先進(jìn)先出、最近最少使用等替換算法,使Cache有較高的命中率。但是在深度報文檢測中,報文的內(nèi)容卻是完全隨機(jī)的,難以預(yù)知下一個要處理的字節(jié)內(nèi)容,會轉(zhuǎn)向哪個狀態(tài)。選擇那些經(jīng)常被訪問的狀態(tài)存儲到高速存儲器中是提高性能的關(guān)鍵。戎騰通過獨有的馬爾科夫預(yù)測技術(shù),很好地解決了狀態(tài)訪問的預(yù)測問題。
圖1 復(fù)合存儲匹配引擎
整個匹配引擎采用兩層甚至三層,通過復(fù)合存儲及并行和流水技術(shù),解決性能和存儲容量之間的矛盾,既能夠通過一級匹配引擎的并行達(dá)到很高的性能,又能夠通過二級存儲達(dá)到大容量的狀態(tài)表空間。這種結(jié)構(gòu)既適合于關(guān)鍵字匹配,也適合于正則表達(dá)式匹配。
通過我們的分析,輔以軟硬一體化流表技術(shù),整體報文處理能力一般是核心匹配引擎4倍的性能。即如果核心匹配引擎能夠達(dá)到n Gbps的性能,則整體報文處理能力就能夠4n Gbps左右的性能,也就是說PET160S系統(tǒng)已經(jīng)完成可以滿足雙向100Gbps以太網(wǎng)全帶寬的關(guān)鍵字DPI能力,而CNT16S也可以滿足實網(wǎng)條件下雙向100Gbps以太網(wǎng)(實網(wǎng)條件下,上下行流量不會超過200Gbps*80%)的正則表達(dá)式DPI要求。
當(dāng)前,正在研制基于PCI-E的DPI加速卡,可望于近期在單塊PCI加速卡上實現(xiàn)40Gbps左右的關(guān)鍵字匹配性能和20Gbps的正則表達(dá)式匹配性能,以硬件加速卡的形式為防火墻、***檢測系統(tǒng)、高速網(wǎng)絡(luò)管控、CDN、運營商信令分析提供硬件加速。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。