?

面向裝備平臺的敏捷交換芯片設計與實現

2024-02-28 01:26劉汝霖呂高鋒孫志剛
計算機工程與科學 2024年2期
關鍵詞:表項掩碼流水線

劉汝霖,楊 惠,李 韜,呂高鋒,孫志剛

(國防科技大學計算機學院,湖南 長沙 410073)

1 引言

隨著車載、航空航天等裝備平臺信息化、智能化程度的不斷演進,各類接入設備的數目顯著增加,承載功能組件間互聯任務的網絡設備的重要性愈發凸顯。為了應對網絡流量的增長,裝備平臺網絡逐步由傳統總線網絡向以太網為核心的混合網絡轉變[1]。在這一過程中,有針對性地瞄準裝備平臺網絡在物理特征、性能需求等方面的特點來開發以太網交換芯片具有十分重要的意義。

具體而言,裝備平臺開發時面臨眾多的約束條件,如便攜裝備要求整體體積盡量小,應盡量縮小器件體積,減少部署所需器件數量,同時也對低功耗提出了極端苛求。

其次,裝備平臺的業務流量相對數據中心場景仍較小。以車載平臺網絡為例,自動駕駛、車載影音系統的功能所需的高清攝像頭、各種雷達等產生的網絡流量僅在100 Gbps量級[2]。

第三,由于裝備平臺的功能碎片化程度高,但同時裝機量較少,無法吸引大型廠商根據需求進行交換芯片的業務定制。采用FPGA或CPU的解決方案在處理速度和功耗方面很難滿足需求。博通、美滿等商用解決方案主要針對數據中心、云計算等場景進行設計,且出于市場等原因,往往更強調大規模極高帶寬網絡的交換和對已有網絡協議的廣泛支持,能效比較差。

另外,傳統的網絡交換芯片在設計時針對特定的網絡環境,其報文解析器的流程和行為是固定的,在面對新的網絡協議時無法提供正確的解析。為了提高芯片的靈活性,提出了協議無關的可編程解析器設計,如XILINX Packet Parser[3]、可重構匹配表RMT(Reconfigurable Match Table)[4]等。不同方案均采用了可編程的解析器,用戶通過設置解析偏移量,來選擇將報文的哪些字段進行提取并提交給后續的查表、動作處理等流程??删幊探馕銎魈嵘司W絡交換芯片的靈活性,滿足現有網絡協議及新協議的需求。然而,可編程解析器需要消耗大量的硬件資源和時序周期,當前商用的可編程交換芯片普遍功耗較高且編程行為復雜,導致上層的配置軟件相對繁瑣,不便于用戶使用。

綜上所述,為了滿足裝備平臺對高能效、高靈活性、易用性及后期更新升級的便捷性需求,本文設計并流片生產了可編程、低功耗的敏捷交換芯片YHHX-DS160。本文主要內容總結如下:

(1)提出了一種協議無關的交換芯片實現架構,采用可編程的協議無關多級匹配-動作MMA(Multiple Match &Action)流水線實現對現有網絡協議和用戶自定義協議的支持。與其它芯片采用可編程解析器的設計不同,該流水線架構通過掩碼方式將解析和匹配過程相融合,降低了硬件邏輯和使用配置的復雜度,并大幅提高了能效比。

(2)提出了一種輕量級的多鏈配置結構,基于二層報文的管理協議能夠有效簡化配置邏輯的復雜度,支持遠程配置、無CPU的輕量級配置等模式。

(3)面向裝備平臺定制了160 Gbps交換帶寬的可編程、低功耗的交換芯片并完成了流片驗證,實測全接口線速最大功耗為6.6 W,能效比達到了24 Gbps/W。芯片支持帶內遠程配置和無配置CPU的輕量化配置模式,可面向各類裝備平臺提供低功耗、高性能、高靈活度的端到端網絡交換解決方案。

2 敏捷交換芯片架構

針對裝備平臺的芯片架構如圖 1所示,包括接口處理邏輯、可編程多級匹配-動作流水線邏輯、輕量級管理配置邏輯、敏捷交換協議處理邏輯等。

2.1 接口處理

芯片接口包括接口物理層硬件和接口數字處理邏輯。其中,接口物理層硬件實現以太網協議(如GMII、10GBASER/KR)、總線協議(如SPI、IIC)等模擬信號與芯片內部數字數據總線之間的轉換。接口數字處理邏輯則實現報文的初步過濾、分類、分撒等功能。其中,輸入接口邏輯主要實現對報文進行CRC校驗、規則過濾、端口報文匯聚等操作。輸出接口邏輯根據輸出端口號將報文分撒到對應接口。

2.2 可編程多級匹配-動作流水線

本文架構中,報文在流水線中會攜帶一個長度為32 B的數據結構(元數據),用于記錄報文狀態、歷史匹配情況、待執行的動作等信息。如圖 2所示,元數據包含用戶自定義字段、報文類型字段、查表控制使能、動作處理使能、報文長度字段、輸入端口號、輸出端口號等內容。

圖1中可編程協議無關匹配-動作流水線可分為查表匹配階段和動作處理階段。與其它可編程芯片不同,本文的芯片架構并沒有包含獨立的可編程解析器模塊,而是嘗試將解析過程和查表過程相融合。通過帶掩碼的超長內容匹配,在1個時鐘周期內即可得到匹配結果并完成對元數據的更新。同時,解析與匹配相融合的機制將多級表項間的查表匹配過程解耦,匹配動作與各字段在報文中的順序無關。通過這種設計,既可以滿足裝備平臺對可編程的需求,又消除了可編程解析器對硬件資源和時序周期的大量消耗,提高了能效比,并減輕了用戶使用時的配置復雜度。

Figure 1 Architecture of chip圖1 芯片架構

Figure 3 Match-Action pipeline圖3 匹配-動作流水線

Figure 4 Format of management packet圖4 管理報文格式

Figure 5 Structure of multi-chain management configuration圖5 多鏈管理配置結構

Figure 6 Agile switch chip YHHX-DS160圖6 敏捷交換芯片YHHX-DS160

Figure 7 Test environment of switch chip圖7 交換芯片測試環境

具體而言,查表關鍵字為64 B報文頭和32 B元數據,可以覆蓋絕大部分現有協議的頭部信息。查表前未經過任何解析邏輯,能夠大幅減少報文解析所需的時間周期,同時保障對于任何單一或多字段的匹配均消耗固定時長,以保障報文處理過程的確定性。

報文分組在流水線中經歷多級查表匹配、一次動作處理MMA。在查表匹配階段,每一級表將表項與報文頭部字段和元數據進行匹配,根據結果對元數據進行更新。匹配方式可分為通配匹配和精確匹配,表的級數根據實際需要可進行串聯擴展。在完成多級查表之后,動作處理階段則根據元數據中的各使能開關完成對報文的處理。匹配-動作流水線的工作行為如圖 3所示。

芯片所定義的匹配過程(Match)包括:

(1)將報文前64 B和32 B查表結果作為關鍵字進行通配匹配查表;

(2)將報文前64 B和32 B查表結果作為關鍵字進行精確匹配查表。

芯片所定義的動作過程(Action)包括:負載均衡,根據流ID或優先級對數據流進行限速,以及報文修改等。

具體而言,通配匹配流程偽代碼如算法1所示。每級通配匹配表包含M條表項,每一條表項都具有獨立的匹配掩碼。掩碼的作用等價于報文解析,將所關心的字段掩碼有效,其它字段掩碼無效。通過配置掩碼即可實現可編程的協議無關匹配。在通配匹配過程中,表項和匹配掩碼的一一對應,每一條表項都可獨立形成一級查表,通過字段的正交組合極大擴展了表項的實際覆蓋范圍。

Algorithm 1 Ternary Match AlgorithmInput:pkt_header(64 B),metadata(32 B),match_field[M](96 B),key_mask[M](96 B),result[M](32 B),result_mask(32 B),default_result(32 B)。Output:metadata(32 B)。Process: for i=0 to M do key_in={pkt_header,metadata}; key_m=AND(key_in,key_mask); match_field_m=AND(match_field[i],key_ mask); if (key_m == match_field_m) metadata=(result[i] & result_mask) | (metadata&~result_mask); else metadata=metadata; if (metadata.finish) break; end for metadata=(default_result & result_mask) | (metadata&~result_mask);end process

精確匹配采用哈希匹配的方式,每級共用一個匹配掩碼,可為同一字段的匹配提供大量表項。精確匹配查表流程偽代碼如算法2所示。

Algorithm 2 Exact Match AlgorithmInput:pkt_header(64 B),metadata(32 B),key_mask(96 B),result_mask(32 B)。Output:metadata(32 B)。Process: key_in={pkt_header,metadata}; key_m=AND(key_in,key_mask); address=hash(key_m); //read RAM with address to get match_field and result if (key_m == match_field) metadata=(result & result_mask) | (metadata&~result_mask); else metadata=metadata;end process

精確匹配對查表關鍵字進行哈希計算,將結果作為地址對存儲有表項內容和結果的RAM進行訪問。如果查表關鍵字與RAM中存儲的表項內容完全一致,則認為匹配成功,將結果做掩碼后更新元數據。

相對通配匹配而言,精確匹配查表的HASH計算值為N-bit地址,即單次可對2N條表項進行索引,極大加快了查表速度。

在查表匹配階段,僅64 B的報文頭部和32 B的元數據組成的查表關鍵字在流水線中流轉,完整的原始報文則存儲在緩存FIFO(First Input First Output)中,這種集中緩存的結構可降低因報文分組遷移所產生的延時和功耗。

查表匹配階段完成后為動作處理階段,動作處理引擎從集中緩存中取出報文,并根據32 B元數據中動作使能字段、報文長度字段等對報文進行相應處理。芯片的動作處理引擎可獨立實現流限速、DMAC(Destination Media Access Control)/SMAC(Source Media Access Control)替換、VLAN(Virtual Local Area Network)標簽的添加/刪除/替換、敏捷協議封裝、管理配置協議封裝、負載均衡、PTP相關功能等功能。

2.3 輕量級管理配置

敏捷交換架構中,芯片與外部控制部件之間采用基于二層以太網報文的輕量級管理控制協議,管理控制報文可通過以太網接口、IIC(Inter- Integrated Circuit)接口、SPI(Serial Peripheral Interface)接口等對芯片進行訪問?;诙拥呐渲脠笪膮f議能夠有效降低管理控制器的復雜度,可通過可編程器件等實現無配置CPU的輕量級管理。

配置報文格式包括了二層頭、報文序列號、讀寫類型、連續讀寫標識、配置鏈MID(Module ID)、寄存器地址和寄存器值等。其中,報文二層頭中的目的MAC地址、MID、寄存器地址用于定位待訪問的寄存器;讀寫類型標識當前報文是讀請求、讀響應、寫請求、寫響應等類型;連續讀寫標識則根據寄存器地址作為首地址,進行連續讀寫;寄存器值則與讀寫類型的具體情況有關。

對某個寄存器的訪問經歷以下3次尋址:

(1)芯片的接口邏輯根據目的MAC地址判斷是否對本文芯片進行配置,如果是則送至芯片內部管理配置模塊;否則按規則進行查表轉發。

(2)芯片的配置譯碼邏輯根據MID決定送往哪一條配置鏈的哪個硬件模塊。

(3)根據寄存器地址、讀寫類型、配置對硬件模塊內部寄存器進行訪問。

如果接口判斷當前配置報文需要對本文芯片進行配置,會將該報文送入配置管理模塊。芯片內部配置網絡采用多鏈結構,如圖 5所示。配置請求報文在經過配置譯碼邏輯后,被送入不同的配置鏈。配置鏈的劃分主要根據功能的耦合關系,如接口模塊采用一條配置鏈,查表邏輯采用一條配置鏈。在每條配置鏈內部,由于芯片設計中常采用不同來源的IP,配置接口存在差異,于是將硬件模塊配置接口通過適配模塊接入配置鏈。由此,如果將配置網絡中的譯碼邏輯看作樹根,配置鏈可作為樹枝,而硬件模塊內各寄存器則為配置葉節點。這種樹狀多鏈結構可有效縮短管理控制邏輯鏈條的長度,提高配置效率,避免了總線型結構的多扇出問題和環形結構的長延時問題,也便于后端實現布局布線。

由于芯片可以對配置報文進行轉發,該機制可以支持遠程訪問,通過一臺控制終端實現對整個二層網絡域內所有交換芯片的配置。

2.4 敏捷交換協議處理

在OpenFlow架構中,元數據是對外部不可見的,僅用于內部表項間的信息交互。本文為了進一步增強芯片的靈活性,設計了敏捷交換協議,可將內部查表過程產生的元數據信息隨報文攜帶出芯片。外部通過提取元數據信息可以獲取該報文的查表結果、動作處理歷史等信息。另外,利用元數據中的用戶自定義字段,將預置信息在查表匹配成功后更新到元數據中,以實現豐富的自定義功能。如,預先填入流標簽信息可以實現流映射功能;針對芯片組件的多節點網絡,預先填入節點編號,可以獲取報文路由信息。根據元數據中攜帶的信息不同,敏捷交換協議可實現數據狀態的隨流檢測、流映射、查表協處理等功能。本文4.2節介紹了基于敏捷交換協議的隨流檢測的例子。

基于敏捷交換協議,芯片不僅可作為獨立的交換芯片使用,也可作為查表協處理器、動作執行器等與外部FPGA、CPU等設備進行協作。更進一步,基于先進的多芯片封裝技術,芯片可作為芯?;?Chiplet)的基本單元支持構建功能更加復雜的芯片。

圖 1架構圖中的敏捷交換協議解封裝和敏捷交換協議封裝2個模塊提供了對自定義的敏捷交換協議報文的支持。其中,敏捷交換封裝模塊位于輸出接口邏輯之前,將元數據封裝在原始報文的報文頭部形成敏捷交換報文;解封裝模塊則位于輸入接口邏輯之后,負責從封裝報文中獲取元數據信息。對于不包含元數據的標準以太網報文,解封裝模塊可通過實際的輸入端口號、報文長度構造一個新的元數據用于后續流水線操作。

3 芯片實現與實驗驗證

基于上述架構,本文流片生產了面向裝備平臺的可編程、低功耗的銀河衡芯敏捷交換芯片YHHX-DS160,如圖 6所示。芯片采用676引腳BGA封裝,尺寸為27 mm*27 mm,全接口線速交換最大功耗僅6.6 W,交換能效比達到了24 Gbps/W。DS160芯片屬于銀河衡芯芯片譜系。該譜系已發布了敏捷交換芯片DS40[5]、時間敏感網絡芯片DS09[6]等。

根據裝備平臺對高速以太網接口和輕量化配置的需求,芯片物理層接口提供16路10 GE高速以太網數據接口、1組千兆媒體無關接口GMII(Gigabit Media Independent Interface)數據接口、1組SPI配置接口、1組IIC配置接口。其中,10 GE高速以太網接口采用內置串并轉換器SerDes (Serializer-Deserializer)的集成化設計,免除了對外置物理層設置PHY(port PHYsical layer)的需求。另外,16路接口可分為4組,每組4路10 GE接口可聚合形成一組40 GE接口。芯片全部40 GE/10 GE接口和GMII接口均支持帶內配置方式,可同時收發配置報文和數據報文。SPI和IIC等慢速接口則僅用于管理配置。板級實現時,可將配置信息寫入外置可編程邏輯器件EPLD (Erasable Programmable Logic Device),以實現上電自配置功能,實現無需專用配置CPU的輕量化管理模式。另外,配置報文可通過網絡交換節點進行傳輸,以實現遠程配置。

為滿足各類裝備平臺對表項的需求,芯片包含了8級通配匹配和4級精確匹配。每級通配匹配具有16條表項,8級通配表共計128條表項。每級精確匹配具有2 000條表項,4級通配表共計8 000條表項。所有表項均支持可編程的協議無關配置,極具靈活性。

芯片在使用時,需要對匹配表項和表項的掩碼寄存器進行配置。為便于用戶開發使用,芯片提供了將底層細節屏蔽的配套軟件,包括通用的表項配置接口API、通用表項字段的結構體和常見IP報文匹配字段結構體。用戶首先對結構體成員進行賦值,再將結構體傳遞給表項配置API,由API函數完成寄存器讀寫報文的構造和解析。

芯片測試環境如圖 7所示,其中芯片測試板對外提供1路千兆以太網RJ-45接口、8個10 GE SFP接口、2組4通道SFP QSFP(Quad Small Form-factor Pluggable)接口。千兆RJ-45接口通過網線與配置PC相連;10 GE/40 GE接口通過光纖與網絡測試儀相連。

測試內容包括帶寬測試、延時特征測試、功耗測試、基本查表功能、動作執行、敏捷交換協議報文封裝測試等。下文將對其中部分測試項進行詳細說明。

3.1 帶寬測試

根據RFC 2544對芯片各接口線速進行測試,測試選取64 B, 128 B, 256 B, 512 B, 1 024 B, 1 280 B, 1 518 B以及隨機長度的報文,通過測試儀以接口的標稱線速(千兆接口為1 Gbps, 10 GE接口標稱線速為10 Gbps, 40 GE接口標稱線速為40 Gbps)進行測試,測試結果無丟包情況。不同報文長度的測試案例均可達到160 Gbps的全端口線速。

3.2 延時特征測試

測試過程中選定1組40 GE/10 GE接口,網絡測試儀收發固定長度的報文,并統計延時。

圖8所示為無背景流影響時的芯片交換延時??梢钥闯?40 GE接口和10 GE接口的轉發延時均與報文長度呈現正相關性,增長斜率上10 GE接口的比40 GE接口的大,且10 GE接口對64 B和128 B長度的小報文收發延時低于40 GE接口的,但在收發256 B及更長報文時的延時高于40 GE接口的。該趨勢是端口存儲報文延時和鏈路速率差異共同作用的結果:一方面,由于接口采用了存儲轉發方式,40 GE接口的鏈路速率更高,其收集完整報文所需的時間較10 GE接口的要短;另一方面,40 GE接口的報文處理邏輯較10 GE接口的長,報文延時更高。

Figure 8 Transmission delay of 40 GE/10 GE圖8 40 GE/10 GE接口延時

另外,由于芯片流水線中的動作處理階段及接口匯聚分撒流水線階段均采用了存儲轉發方式,長報文經過多次存儲也會導致延時升高,圖8中延時隨報文長度變化的趨勢也反映了這一點。

3.3 功耗測試

對于裝備平臺設備,尤其是嵌入式設備而言,功耗是比較重要的指標。本節對DS160芯片的功耗進行分析。芯片具有3類電源域:IO電源域、10 GE/40 GE高速以太網接口電源域、芯片內部邏輯電源域。芯片上電后的典型待機功耗(Standby Power)為5.8 W,3類電源域的待機功耗分別為1.95 W, 2.2 W和1.65 W。

為了分析動態功耗,本文將全端口線速工況下的功耗與無報文收發情況下的待機功耗進行了對比,如圖 9所示??梢钥闯?全端口線速下的動態功耗為6.6 W,相對待機功耗增加了0.8 W,一個合理的解釋是芯片采用了門控時鐘機制,在無報文收發的情況下部分邏輯未產生功耗。

進一步的測試中,減小了芯片的核心工作頻率。實驗結果表明,芯片動態功耗和待機功耗都有不同程度的降低,但降幅不明顯。如圖 9所示,芯片的核心頻率從500 MHz(核心處理帶寬160 Gbps)降至125 MHz(核心處理帶寬40 Gbps),核心處理帶寬下降了75%,待機功耗和動態功耗僅降低了0.26 W和0.65 W。

需要特別指出的是,圖9的數據中I/O電源域和10 GE/40 GE高速以太網電源域的功耗值幾乎不變,即所有功耗的變化幾乎都來自于芯片內部報文處理邏輯。這是因為對于高速以太網接口而言,即使其模擬鏈路上沒有有效數據傳輸,仍會以10.312 5 Gbps的速率發送鏈路空閑信息,導致功耗幾乎不變。

Figure 9 Relationship between core frequency and chip power consumption圖9 核心頻率與芯片功耗的關系

在實際使用場景中,并非總是會用盡芯片的接口資源,因此可采用關閉部分接口的方式進一步降低功耗。測試結果表明,每關閉1路10 GE收發通路可降低功耗約0.14 W。且由于端口總帶寬減小,可相應調整核心頻率,在保證剩余端口滿足線速的情況下,盡可能減小功耗。如圖 10所示為根據開啟接口數目調整核心處理頻率后的功耗變化趨勢。圖10中,數據點選擇開啟16路,12路,8路和4路10 GE接口,將核心頻率調整為500 MHz, 360 MHz, 250 MHz和125 MHz,核心處理能力達到了160 Gbps, 120 Gbps, 80 Gbps和40 Gbps。

Figure 10 Relationship between chip port state and power consumption圖10 芯片接口狀態與功耗的關系

根據功耗測試結果可知,DS160芯片相對于100 Gbps級別的其它交換芯片具有較高的能效比。另外,由于該芯片為試制芯片,I/O中包含大量的調測試引腳,導致了較高的功耗,后續芯片設計將采用寄存器代替I/O硬連線方式,能效比還會得到進一步提高。

4 芯片部署與應用

為了說明本文芯片特點,如協議無關匹配動作流水線進行報文轉發、敏捷交換協議的優勢等,本節對典型的業務應用進行舉例說明。

4.1 L2轉發

由于DS160芯片流水線沒有報文解析器的參與,對于報文轉發而言,表項掩碼一次性標識所有參與匹配字段。對于L2/L3層的轉發而言,即通過掩碼將目的MAC DMAC、源MAC SMAC(Source Media Access Control)、報文類型(TYPE字段)、五元組信息等字段置為有效即可。

如圖 11所示為基于DMAC地址進行匹配的示意圖。由于DMAC位于L2層以太網報文的前48 bit,因此設置查表掩碼與DMAC對應的48 bit位值為1,其它位置均為0。由報文前64 B和32 B元數據組成的查表關鍵字在掩碼作用下,僅就DMAC字段進行匹配,圖11中假設表項2匹配成功。下一步,根據結果掩碼的設置,以表項2結果中的輸出端口號字段更新元數據,并結束本級查表。

Figure 11 Example of L2 packet forwarding圖11 L2層報文轉發示例

4.2 隨流故障檢測

敏捷交換芯片DS160芯片具有豐富的表項資源和報文處理動作支持,可用于構建網絡設備的交換核心,同時基于敏捷交換協議可以將查表結果、用戶自定義信息在數據路徑的前后級模塊間傳遞,加強了前后級處理單元的協作能力,可支持包括帶內檢測等在內的一系列新功能的實現。

帶內檢測主要針對傳統網絡遙測過程中業務故障被動檢測、定位效率低下等問題,通過在報文內部添加標記信息等方式實現隨流檢測?;贒S160的帶內檢測解決方案如圖 12所示。帶內檢測流程可分為故障上報、鏈路檢測配置、檢測結果收集和檢測結果輸出4個階段。在第1階段中,任意節點均可發出故障上報請求,圖11中假設接入設備處發現報文丟失,將故障發送到管理服務器。

在第2階段中,由管理服務器執行鏈路檢測相關配置,具體是針對待檢測的報文開啟敏捷交換協議封裝,查表匹配邏輯則針對敏捷交換協議封裝報文進行統計計數。根據報文數守恒原則,在一條鏈路上,端到端之間收發報文數相等,如果某個節點出現擁塞或其它原因導致的丟包,那么該節點及后續節點報文的計數值會變小。由此,通過對各個節點接收到的敏捷交換協議封裝報文進行計數,可以推斷鏈路故障發生的節點位置。另外,針對有多條流需要檢測的情況,可通過元數據中的用戶自定義字段進行流區分。

啟動報文帶內檢測后,經過一段時間的數據收集進入檢測第3階段。第3階段中,管理服務器關閉敏捷交換報文封裝功能,并對各節點接收到的封裝報文進行匯總分析,通過報文數守恒原則確定故障發生的節點,并將結果以可視化的方式呈現給系統管理員(即圖12中的④),然后進行下一步處理。

Figure 12 Schematic diagram of in-band detection圖12 帶內檢測流程示意圖

5 相關工作

商用的可編程交換芯片往往采用軟件或硬件的方式實現靈活的可定制處理方法,如Intel Tofino系列芯片、BroadCom BCM5340X系列芯片、Intel NFP-6xxx系列芯片等。相對于軟件處理方式,硬件可編程的交換能夠實現更好的處理性能、更低的線速功耗;相對地,軟件方式可以實現更復雜的報文處理。

Tofino交換芯片面向數據中心等場景提供Tbps量級的交換容量。采用硬件RMT架構,支持無語義的協議無關匹配-動作(Match-Action)模型。報文進入RMT流水線后通過可編程解析器提取并匹配報文關鍵字段,隨后送入超長指令執行單元構成的動作處理器對報文進行處理。通過多級解析器和動作處理器的級聯實現復雜報文處理功能。

BCM5340X系列交換芯片提供160 Gbps的交換容量,采用將常見的固定數據報文字段匹配和基于通用處理器的軟件自定義處理方式相結合的架構,在兼顧硬件交換性能的基礎上,提供部分可編程支持。

Intel NFP-6xxx系列芯片則通過集成多核處理器,將任務分割到多個完全可編程的、分工具體的處理內核中。這種方式能夠處理極其復雜的報文處理流程,但由于采用多核處理器,其功耗較高,以240 Gbps的6324型號芯片為例,其典型功耗高達102 W。

與上述芯片相比,本文提出的DS160芯片采用純硬件的方式實現協議無關超長字節匹配處理。與Tofino芯片不同,DS160面向裝備平臺設計,不追求超大交換容量和過于復雜的可編程性,采用相對簡化的多級查表匹配、一次動作處理的模型,在提供靈活可編程功能的同時有效降低芯片功耗,能效比顯著優于當前主流的商用芯片的。同時,DS160支持遠程配置、無CPU的輕量級配置等模式,可有效簡化配置邏輯的復雜度。另外,敏捷交換協議封裝可在支持標準以太網報文交換的同時提供更多的擴展功能。

6 結束語

針對裝備平臺面臨的功耗受限、體積受限、功能碎片化、硬件升級困難等制約因素,本文提出了可編程、低功耗的敏捷交換芯片架構,并流片生產了具有160 Gbps全線速交換帶寬的DS160芯片,能效比達到24 Gbps/W。該芯片可提供數目充足的可編程的協議無關匹配表項,支持各類現有協議和自定義協議,支持遠程配置和無CPU的輕量級配置模式,為上層應用提供精細化流映射,可面向各類裝備平臺提供低功耗、高性能、高靈活的端到端網絡交換解決方案。

猜你喜歡
表項掩碼流水線
Gen Z Migrant Workers Are Leaving the Assembly Line
一種改進的TCAM路由表項管理算法及實現
基于ARMA模型預測的交換機流表更新算法
流水線
低面積復雜度AES低熵掩碼方案的研究
基于布爾異或掩碼轉算術加法掩碼的安全設計*
SDN數據中心網絡基于流表項轉換的流表調度優化
報廢汽車拆解半自動流水線研究
基于掩碼的區域增長相位解纏方法
基于掩碼的AES算法抗二階DPA攻擊方法研究
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合