能夠產(chǎn)生營收的路由器需要一種技術(shù)平臺,這種技術(shù)平臺既要能夠提供強大的分組處理能力(即使在最壞的流量情況下),又要能夠以較低的成本提供足夠的靈活性。FPGA技術(shù)的快速發(fā)展使得基于FPGA設計完整的路由器和交換刀片成為可能。現(xiàn)在的平臺FPGA為實現(xiàn)分組處理、分類和策略、流量管理、背板通信和系統(tǒng)接口等功能提供了一個完整的平臺。
網(wǎng)絡處理
網(wǎng)絡處理器是高度優(yōu)化的用于處理網(wǎng)絡業(yè)務流的器件,與傳統(tǒng)的ASIC相比,具有產(chǎn)品上市時間快、靈活性高兩方面的優(yōu)點。網(wǎng)絡處理器抽取、分類和過濾輸入的位流,決定其目標端口,并將數(shù)據(jù)分組轉(zhuǎn)發(fā)到交換矩陣,同時還提供可選的流量管理功能。
為達到分組處理所需要的性能,一些供應商的解決方法是將功能(圖1)分成:
1.分類協(xié)處理器:將分組歸入某類業(yè)務流。
2.策略引擎:保證業(yè)務流實際使用的帶寬不超過其服務水平協(xié)議(SLA)中所分配的帶寬。策略通常在服務質(zhì)量(QoS)網(wǎng)絡邊緣執(zhí)行,違規(guī)的分組或者被丟棄,或者被打上標記用于后續(xù)處理。
3.業(yè)務流量管理器:執(zhí)行相應業(yè)務流的服務水平協(xié)議(SLA)。通常,來自遵守不同SLA的不同業(yè)務流的分組會被重新排序,有時其中有些分組會被丟棄。同一業(yè)務流中的分組不會被改變次序。
在網(wǎng)絡處理流程中,包括流量整形、隊列和調(diào)度在內(nèi)的流量管理功能是帶寬需求最密集的關(guān)鍵功能。流量整形幫助管理網(wǎng)絡擁塞和應付網(wǎng)絡流量的猝發(fā)特性。隊列和調(diào)度引擎決定分組發(fā)送出去的時間和順序。它們通過創(chuàng)建層次化隊列來將業(yè)務流匯聚為類,將類匯聚為端口。層次的每一級可使用不同的隊列算法來確定不同業(yè)務流的優(yōu)先級。
典型情況下,流量管理器是獨立的芯片,根據(jù)分類器管理的策略集,執(zhí)行流量整形、排隊和調(diào)度功能。它們提供了細粒度的QoS控制并負責保證實現(xiàn)服務質(zhì)量協(xié)議。可能會需要一個外部處理器,用于設置或刪除業(yè)務流配置,此工作不需要逐個分組或信元處理。每個系統(tǒng)在流量管理協(xié)議、存儲器管理、凈荷、接口等方面都有所不同。典型的策略算法包括漏桶(leaky bucket)、令牌桶(token bucket)算法等。擁塞管理算法包括隨機早期檢測(RED)和加權(quán)隨機早期檢測(WRED)等。調(diào)度算法包括優(yōu)先級隊列(PQ)、公平隊列(FQ)、加權(quán)公平隊列(WFQ)和輪詢隊列(RR)等。
現(xiàn)有的網(wǎng)絡處理單元(NPU)器件很少能夠滿足性能要求,典型的Packet over SONET/SDHOC-48c流量管理器在入口和出口路徑需要有獨立的流量管理器,或者需要一個全雙工(5Gbps)的流量管理器?,F(xiàn)有的NPU器件還很少能夠支持所有需要的算法。而且,在ASIC方面的投資成本高昂。
平臺FPGA實現(xiàn)流量管理和背板設計
流量管理需要高性能、足夠的靈活性,并且要支持多種隊列和調(diào)度算法和協(xié)議以及多種存儲器類型和接口。平臺FPGA器件提供的下述特點為流量管理提供了關(guān)鍵優(yōu)勢:
高速接口
1.多達24個嵌入式千兆位級收發(fā)器(MGT)支持高速傳輸(高達10.3125Gbps),同時抗噪聲能力更高、功耗更低并且可減少信號數(shù)量并降低電路板復雜性。
2.這些器件還支持17種單端和6種差分電平標準,調(diào)度器需要使用的有:
A.用于成幀器和存儲器高速接口的HSTL
B.用于成幀器、存儲器和ASSP接口的SSTL
C.用于時鐘輸入/輸出的PECL
D.用于刀片或背板通信的LVDS/CML
E.用于實現(xiàn)與CPU芯片組接口的PCI
F.幾乎所有其它地方都可使用LVCMOS/LVTTL
3.提供大量封裝類型以及大量IO引腳數(shù)(最大1200),從而可滿足接口所需要的吞吐量要求 。
4.FPGA的每個引腳都支持數(shù)字控制阻抗匹配(DCI)技術(shù),可減少成百/上千的片外端接匹配電阻,因此可以簡化電路板布局布線工作。因此可以減少電路板的層數(shù),縮短布線長度,從而可獲得更高的系統(tǒng)可靠性。
數(shù)字時鐘管理器(DCM)和時鐘分配樹
流量管理器需要連接多種外部器件,因此必須面對具有不同頻率的多個時鐘域。DCM可以補償由于時鐘傳輸延遲以及電路板布局限制所產(chǎn)生的信號畸變。通常每一外部高速接口使用一個DCM和時鐘樹。12個DCM提供了相位移動和頻率合成能力,特別適合具有多個時鐘域和關(guān)鍵時序要求的系統(tǒng)。
DCM支持超過 400MHz的時鐘輸出,從而可支持領(lǐng)先的總線接口標準,如RapidIO和SPI-4。DCM的數(shù)字化特點使其可不受系統(tǒng)溫度和電壓波動的影響。DCM提供了一個可保證精確50/50占空比的零延遲時鐘緩沖。DCM可精確控制一個時鐘周期內(nèi)的相移,精度達到時鐘周期的1%,這對建立和保持時間的調(diào)整非常關(guān)鍵。DCM支持精確生成24MHz至420MHz范圍間的頻率。
塊RAM(BlockRAM)
超過10Mb嵌入式BlockRAM 對于存儲經(jīng)常訪問的對象非常理想,從而可以提高性能。嵌入式存儲器適用于多種應用,如:存儲器的高速緩沖存儲器、存儲統(tǒng)計數(shù)據(jù)和臨時數(shù)據(jù)(Scratch pad)、存儲用于發(fā)送調(diào)度和存儲器管理操作的位圖、跨越時鐘域、以及片內(nèi)通信的彈性緩沖。
乘法器
流量管理器需要大量的算術(shù)運算來完成分組調(diào)度計算。調(diào)度引擎需要大量的整數(shù)和浮點數(shù)間的乘法運算(Tsi(t+)<=Tsi(t)+Lpkt/rj)。典型的算法需要 100MHz性能的18位乘法運算。平臺FPGA器件在單個器件中可提供高達556個運行在300MHz以上的18×18乘法器。乘法器和邏輯資源配合可以設計出定制硬件加速器內(nèi)核,如加密、校驗和計算以及DSP。
大量高性能的可編程邏輯資源(高達1千萬門)和布線資源
調(diào)度器以極高速度完成大量復雜的運算。而且,操作數(shù)存儲在寄存器中。由于在每個周期都需要做出調(diào)度決策,需要采用深流水線,因此在處理數(shù)據(jù)風險時,會嚴重降低處理效率。為了滿足這些設計目標,需要使用大量的片上觸發(fā)器。FPGA提供了超過 300MHz的邏輯性能,并為大量的寬數(shù)據(jù)通路和鏈接存儲提供了大量內(nèi)部互連線資源。
PowerPC 處理器、CoreConnect以及工具
現(xiàn)在的平臺FPGA嵌入了多達4個300MHz (420 D-MIPS) IBM PowerPC內(nèi)核來幫助實現(xiàn)諸如統(tǒng)計監(jiān)控、控制和異常處理等功能。整個解決方案包括:用于訪問外設的IBM CoreConnect總線;通過System Generator for PowerPC、GNU編譯器和軟件調(diào)度器工具鏈、風河VxWorks、MontaVista HardHat Linux等提供的平滑硬件和軟件設計環(huán)境;同時還提供ChipScope Pro等調(diào)試工具。
本文結(jié)論
僅僅依賴蠻干的方法并不能滿足現(xiàn)代分組交換平臺的設計目標。平臺FPGA器件的性能水平和特性,為構(gòu)建能夠盈利的路由器和交換機提供了一個強大的平臺。平臺FPGA結(jié)合硬件并行處理、硬件-軟件協(xié)同子系統(tǒng)和IP內(nèi)核等技術(shù),為開發(fā)下一代業(yè)務流量管理系統(tǒng)提供了一種高性能的靈活平臺。
來源:零八我的愛0次