新聞中心

EEPW首頁 > 手機與無線通信 > 設計應用 > 基于多核處理器設計網絡接口卡

基于多核處理器設計網絡接口卡

作者: 時間:2017-06-12 來源:網絡 收藏

在IP網絡一統(tǒng)天下的時代,各種網絡設備都需要以太網接口來實現與其他設備的互聯互通,比如傳統(tǒng)的TDM設備就通過偽線技術實現了以太網封裝,具備了與IP網絡對話的能力。對于服務器來講,通常也需要配備卡(NIC)來實現與其他網絡的數據對接與傳送。卡可以幫助系統(tǒng)捕獲報文,對網絡性能進行監(jiān)測并檢測服務質量,實現必要的OAM功能;在保障安全的IPSec功能基礎上,卡還可以通過對接收流量進行深度的報文檢測,識別不同應用與業(yè)務,對不同業(yè)務類型進行分門別類的處理。

本文引用地址:http://www.butianyuan.cn/article/201706/352984.htm

隨著多核技術的發(fā)展,越來越多的網絡接口卡開始采用多核處理器方案,通過分配不同的業(yè)務處理到不同的核,多核架構可以靈活應對各種復雜的業(yè)務需求。不過,隨著網絡帶寬的不斷提升,純多核架構也面臨一些問題。以網絡接口卡基本的安全功能為例,通常在第一層保護中需要ACL、防火墻/NAT/PAT、ALG、L2TP和IPSec VPN等;第二級保護中需要對接收數據深度檢測,進而識別應用、ToE、IPSec;第三級保護中需要MAC/URL過濾,端口 /MAC認證等。如果將這些處理完全交給,不僅CPU的業(yè)務負荷過大,影響到單板功耗和系統(tǒng)軟件設計,而且隨著帶寬需求的不斷增加,CPU核會面臨處理瓶頸的問題。


LSI公司推出的Axxia系列多核通信處理器,采用異構多核的方式,創(chuàng)新性的將多核與快速處理引擎通過專利技術虛擬管道(Virtual Pipeline)技術相連,解決了純CPU多核以及同構多核在處理復雜業(yè)務時性能下降的問題,在保證業(yè)務線性處理的情況下仍然保留CPU核資源用于控制、管理、業(yè)務后處理等工作。


Axxia通信處理器


LSI公司第六代通信處理器的核心是高性能的多核處理器和一系列基于硬件的業(yè)務加速引擎,通過靈活的Axxia平臺架構,處理器核可以有多種選擇,如ARM、PowerPC或者MIPS。本文將對以PowerPC為主的Axxia通信處理器進行介紹,處理器的基本框圖如圖1所示。


圖1:基于PowerPC的AXXIA通信處理器內部框圖。


圖1中PPC476核由IBM和LSI聯合研發(fā),兼容Power ISA Version 2.05,最高主頻可以達到2GHz;用來提供快速處理通路的各加速引擎得益于LSI公司多年來的研發(fā)積累,技術成熟可靠,多代產品經過市場考驗,這些引擎主要包括:報文處理、安全引擎、正則處理引擎、流量管理/調度器(六級調度)。


Axxia設計采用異構多核的架構,創(chuàng)新性的采用虛擬管道技術來實現各加速引擎,CPU核以及各子系統(tǒng)間的通信,這個全新的消息傳遞機制保障Axxia無論報文長短,系統(tǒng)負荷以及協(xié)議類型都可以提供確定性的處理性能,避免同構多核在核數目與系統(tǒng)性能提升間不成比例的問題。在虛擬化日益普及的情況下,低延時和可確定的處理性能已經成為網絡設備的首選條件。


Axxia處理器提供一系列高速接口,包括8路基于SerDes的SGMII,2路基于XAUI的10GbE,3路PCIe接口,支持x1/x2/x4,同時它還支持IEEE1588v2協(xié)議。

網絡接口卡的硬件設計


Axxia兼?zhèn)潇`活的數據處理和強大的主控CPU,單芯片方案提供豐富的高速接口和低速調試接口,由此非常適合應用于嵌入式的單板設計。圖2為基于Axxia芯片的網絡接口卡方案框圖。Axxia芯片的快速處理引擎可以用來實現數據層面的加速,PowerPC核可以用來實現附加功能以及主控層面的處理。


圖2:基于AXXIA芯片的網絡接口卡方案框圖。


單板設計采用Axxia系列中中端的ACP3423,配置了2G DDR3 SDRAM,背板側PCIe x4 Gen2用做管理,6個SGMII和XAUI用做數據交換;網絡側為10GE SFP+;支持IEEE1588和同步以太網。


Axxia通信處理器為支持SGMII、XAUI、sRIO和PCIe等高速接口,芯片內部包含有多條SerDes PHY接口,這些協(xié)議可配置接口根據不同的發(fā)送和接收數據對被分成兩大組:SGMII/XAUI和sRIO/PCIe。對單板的硬件設計來講,這些高速接口的信號完整性非常重要,在設計過程中要保證PCB板、背板、線纜等有干凈的供電,良好的接地,在布線過程中要對走線做阻抗匹配。LSI公司提供了詳細的硬件設計文檔和SerDes設計文檔。


軟件開發(fā)


如前文所述,Axxia確定性的性能來自于優(yōu)良的硬件架構,同時,作為整個接口卡方案的“靈魂”,LSI公司還為Axxia系列處理器的軟件開發(fā)提供基于各種操作系統(tǒng)的軟件包,包括Axxia運行開發(fā)環(huán)境RTE,Axxia軟件環(huán)境ASE等。對于網絡接口卡開發(fā)還提供完整的Linux BSP實現以及Axxia應用開發(fā)套件(ADK)。ADK由一系列針對特定協(xié)議的數據層和控制層軟件模塊組成,有了這些模塊軟件開發(fā)者無需關注底層細節(jié),可以很靈活方便的直接用高級語言如C進行應用程序開發(fā)。軟件基本框架如圖3所示。


圖3:Axxia軟件開發(fā)框架。

應用案例


1.ARP(地址解析協(xié)議)處理加速


以太網中的數據幀從一個主機到達網內的另一臺主機不是根據32位的IP地址而是根據48位的以太網地址即硬件地址來確定接口。內核如驅動必須知道目的端的硬件地址才能發(fā)送數據。由RFC826我們知道,ARP地址解析協(xié)議就用于將計算機的網絡地址即IP地址轉化為物理地址即MAC地址。由于傳統(tǒng)的物理網絡接入的是物理服務器,并且整個網絡只能為一個用戶使用,普通CPU就可以處理報文的ARP請求,但隨著服務器的虛擬化,以及云計算多租戶的出現,網絡對ARP處理的性能需求也大幅提升。采用純CPU方案不僅大量耗費CPU資源,而且無法提供可確定的性能,無法防范可能的網絡攻擊。采用ACP3423的網絡接口卡方案就可以很好的解決這個問題。


ACP3423處理ARP報文主要用到圖1中的網絡輸入輸出EIOA模塊和流分類MPP模塊,無需內部PowerPC核的參與,也就是說ARP流程完全卸載到快速通路來處理。EIOA模塊主要用來從網絡收發(fā)報文并執(zhí)行以太CRC校驗;MPP模塊主要用來根據以太網類型字段過濾ARP報文,ARP報文操作驗證諸如請求或者回復,MAC_DA flooding校驗,對給定AR_IP尋找對應AC_MAC,生成ARP響應報文等。ARP處理流程圖如圖4所示。


圖4:ARP地址解析協(xié)議處理流程圖。


以具有100K條目的ARP表項為例,Axxia可以處理超過1250萬ARP報文/秒,即使在過載狀態(tài),Axxia也可以保證確定性的性能,有效防范各種攻擊。


2. DPI(深度報文檢測)


在多租戶應用環(huán)境中,不同等級客戶會有不同的服務等級,此時傳統(tǒng)的五元組檢查無法提供精細的控制,這就需要有DPI技術來對報文進行深入到7層的檢測。通過Axxia的流分類引擎MPP,深度報文檢測DPI引擎以及內置的多核芯片,網絡接口卡可探測識別的應用種類超過5500種。


處理流程既可以通過Axxia的MPP引擎檢測固定特性應用,也可以利用DPI引擎和CPU核對報文進行深度排查。基于固定特性表的應用識別主要通過目的端口號和協(xié)議來識別應用,MPP引擎具有表查找功能;基于特征的應用識別通過DPI引擎來檢查特征時,在需要CPU干預或做后處理時,Axxia可以將報文送至內部CPU核做進一步判別處理,也可以送至任意外部主處理器做進一步操作。


本文小結


的網絡產品應用中,既要保證交換速度足夠快,滿足某些金融用戶做高頻交易服務的需求,另一方面要把容量做得更大,更具擴展性,滿足像谷歌、Facebook這樣的互聯網用戶的服務。LSI公司的異構多核通信處理器Axxia通過靈活的架構將硬件加速引擎與CPU相結合,很好解決了通用多核CPU處理效率與核數目增長非線性的關系。Axxia完全卸載業(yè)務到快速通路的業(yè)務流程保證了系統(tǒng)具有確定性的性能,同時可減低系統(tǒng)的成本和功耗。基于Axxia處理器的網絡接口卡很好的滿足了虛擬化環(huán)境下對網絡設備提出的新需求。



評論


相關推薦

技術專區(qū)

關閉