ASIC 萬兆路由的基石

2021-06-08 05:02:52 字數 4950 閱讀 1984

發表日期:2008-1-5

面臨資料的海量遞增和業務日益複雜的現狀,路由器硬體平台已經成為制約整個網際網路業務發展的瓶頸。從路由器誕生之日起,應用需求一直在推動著路由器硬體結構的發展。路由器的**核心器件隨著應用的發展,也經歷了很大的變化。骨幹網核心路由器的核心**硬體平台主要經歷了以下幾個發展階段: 

通用cpu階段

採用通用cpu作為硬體**平台具備高度靈活性優勢,上個世紀90年代以前,幾乎網路上所有的路由器都是用cpu作為核心**硬體。高階和低端路由器之間的差別僅僅在於採用的cpu效能以及數量不同。因為乙個通用的cpu的極限**效能也就在400kpps以內,還做不到兩個155pos介面線速**,所以採用cpu作為**硬體平台比較適合提供155m以下的介面的路由器產品。市場上也有很多通過多個cpu同時分布式**來實現較高的**速率,使路由器整體效能達到1~2mpps。

np處理器階段

np——網路處理器的出現在一定程度上很好地解決了網路業務提供豐富性和效能矛盾的問題,由於np的本質是多種專用cpu的組合,通過微碼開發即可指定各個cpu的工作行為,這樣np可以很好地在保證一定效能的情況下,通過軟體公升級提供各種各樣的業務。同時由於對業務作了相應的微碼優化,所以其對特定業務的處理能力比傳統的cpu有了很大的提公升,單片np可以實現1~6mpps的**效能。目前成熟的np已可實現2.5g埠的線速**能力。近年來也出現了採用多個np分布式**來實現較高密度2.5g、1g埠的資料交換。但np雖然實現了這些高速埠的接入,卻無法解決內部多個高速介面內部的高速資料**問題,所以核心網的高速業務需求驅動著路由器廠商尋找新的技術來解決效能和靈活性的矛盾。

asic晶元階段

眾所周知的是,對於特定的業務,能夠同時提供極高**效能和較低的成本的只有asic晶元了。但由於asic的固定特性一直無法解決路由器對多業務支援的需求,asic晶元一旦產出後,其原有的功能無法新增,所以asic晶元一直沒有被路由器採用。而如今核心網對核心路由器效能幾乎無止境的需求,迫使路由器的廠商和研究機構把目光投向了asic。況且現在10g的asic晶元早已成熟,並已規模商用,這也是網路裝置廠商能夠青睞asic的乙個重要原因。上個世紀末,一些廠商和科研機構就開始完全用asic搭建核心路由器平台的研究,至今已經實現了乙個比較完善的技術體系。 

對於asic平台來說,最大的問題就是對多業務的靈活支援。靈活性支援主要體現在兩個方面:一方面是查表技術,另一方面是對多業務報文的識別、處理能力。近幾年出現的tcam(三重內容可編址儲存器)很好地解決了多業務中各種表項的高速查詢問題,其查詢效能可以達到每秒100m次,也就是說可以支援乙個10g埠每秒鐘查詢4次以上。而對各種路由表、acl安全策略、qos策略等表項的查詢是多業務支援的核心內容。同時現在的硬體技術製造出的高速可程式設計硬體fpga能夠實現40g資料流的報文頭的處理,從而提供了對多業務支援的可能性。港灣網路****正是看到了這種可能性,經過三年的潛心研究,終於實現了asic+fpga+tcam協同實現高密度千兆、2.5g、10g介面多業務資料的大容量處理、**,fpga硬體實現對業務報文頭的處理並控制查詢形成業務流,tcam實現對各種高速業務流表項的查詢,asic僅僅負責對業務流大容量**,從而實現了多業務應用下高速介面的大容量接入。同時在路由器內部,通過專用asic把高速介面板之間的海量資料切割成特定長度的信元,從而實現高效、低延時、t比特級別的大容量資料交換。這標誌著我國在高速核心路由器的研發方面已經邁入了國際先進行列。尤其值得一提的是,powerhammer系列核心路由 器的介面板處理asic晶元——racata是完全自主研發的400萬門邏輯晶元,也標誌著我國的晶元設計水平已經邁上了乙個新的高度。目前幾乎業界所有的主流高階核心路由器裝置供給商都推出了基於asic的路由器產品,代表著採用asic已經成為核心路由器技術發展的乙個必然方向。

無論在中低端路由器還是在高階路由器中,cpu都是路由器的心臟。通常在中低端路由器中,cpu負責交換路由資訊、路由表查詢以及**資料報。在路由器中,cpu的能力直接影響路由器的吞吐量(路由表查詢時間)和路由計算能力(影響網路路由收斂時間)。在高階路由器中,通常包**和查表由asic晶元完成,cpu只實現路由協議、計算路由以及分發路由表。由於技術的發展,路由器中許多任務作都可以由硬體實現(專用晶元)。cpu效能並不完全反映路由器效能。路由器效能由路由器吞吐量、時延和路由計算能力等指標體現。

路由器是網際網路絡中的節點裝置,用來連線多種網路或網段,路由器工作於網路七層協議中的第三層,其主要任務是接收來自乙個網路介面的資料報,根據其中所含的目的位址,決定**到下乙個目的地。與計算機一樣,路由器也包含有cpu。不同級別的路由器,其中的cpu也不盡相同。無論在中低端路由器還是在高階路由器中,cpu都是路由器的心臟。通常在中低端路由器當中,cpu負責交換路由資訊、路由表查詢以及**資料報。在路由器中,cpu的能力直接影響路由器的吞吐量(路由表查詢時間)和路由計算能力(影響網路路由收斂時間)。在高階路由器中,通常包**和查表由asic處理器完成,cpu只實現路由協議、計算路由以及分發路由表。隨著技術的發展,路由器中許多任務作都可以由硬體實現(asic專用晶元)。

路由器處理器晶元的發展大致經歷如下四個階段:

(1) 通用處理器

(2) 嵌入式處理器

(3) asic處理器

(4) 網路處理器上個世紀60年代,人們曾經使用普通電腦充當路由器的角色,這就是第一代路由器的雛形。用一台計算機插接多塊網絡卡來實現的,多個網絡卡共用一塊處理器,通過內部匯流排互聯,cpu負責了幾乎全部的路由計算、資料**指令,同時還要負責整台機器的裝置管理工作,後來才逐漸專門發展出專門的匯流排、介面及作業系統的路由器。

作為通用處理器,由於考慮了各種應用的需要,具有一般化的通用體系結構和指令集,以求支援複雜的運算並容易新增新開發的功能,也就是說:不是面向網路通訊需要特殊設計的。處理路由**速度一般相對較慢,可擴充套件性差,很難滿足網路的需求。嵌入式微處理器與通用微處理器最大的不同就是嵌入式微處理器多數工作在裝置製造商自己設計的系統中,是面向應用的處理器。目前大多是針對專門的應用領域進行專門設計來滿足高效能、低成本和低功耗的要求。如:移動通訊,pda,遊戲機,網路通訊,其它電子產品行業。

目前,嵌入式處理器主要有am186/88、386ex、sc-400、power pc、motorola 68000、mips、arm系列等。在32位嵌入式處理器市場主要有motorola,arm,mips,ti,hitachi等公司, 有些生產通用微處理器的公司,象intel、sun和ibm等,也生產嵌入式的微處理器,但不是專業生產,人們更熟悉如intel的pentium 。

第一代的路由器是基於嵌入式微處理器的嵌入式系統,有專門的電路、介面及作業系統,是一台專門的裝置,已經不再是基於通用微處理器、通用介面、通用作業系統的pc了。cisco2501路由器就是第一代路由器的典型代表,其cpu是motorola 68030 20mhz處理器,這個處理晶元相當於intel早期的80386通用處理器。

目前,嵌入式微處理器大量應用在各網路裝置**商的中低端路由器產品中,不管是思科的通用路由器系列,還是小企業、家庭中用的寬頻路由器產品,都可以見到它們的身影。當網路速度比較慢時,嵌入式處理器的路由及**的處理速度完全趕得上資料流,後來,線路頻寬寬了,資料速率快了,嵌入式處理器的處理就不夠快了,設計者就轉向asic。asic是被廣泛應用於效能敏感平台的一種處理器技術。

在路由器發明、生產、應用,使網路有了高速發展,但在網路發展初期,網路傳輸的速率比較低,業務量比較少,這個時期的網路裝置一般基於cpu(通用式或嵌入式),即通過在cpu上執行相關網路作業系統來實現各種網路功能。它具有很高的靈活性,可通過更新作業系統,就可以完善原有功能或加入新的功能和服務特性。但其缺點是處理速度慢、吞吐率低。但是這種效能在當時那種低速的網路環境下是可以接受的,因為路由器**分組的速度完全可以跟上線路的傳輸速度。然而,隨著光纖等傳輸技術的進步,網路頻寬的增長速度逐漸超過了cpu處理能力的增長速度,這使得基於「cpu+作業系統」的路由器逐漸成了網路的瓶頸。因此,需要想辦法提高網路裝置的效能。在這種情況下,網路裝置開始採用asic技術。它通過把指令集或計算邏輯固化到晶元中,它把**過程的所有細節全部採用硬體方式來實現,因而可以獲得很高的處理速度,這就能夠很好地滿足對效能的要求,適應了網路頻寬不斷增長的發展趨勢。

在高階路由器中,通常包**和查表由asic晶元完成,cpu也還存在,但只是實現路由協議、計算路由以及分發路由表。由於技術的發展,路由器中許多任務作都可以由硬體實現了。asic的優點也是它的缺點,就是缺乏靈活性。一旦指令或計算邏輯固化到晶元硬體中,就很難修改公升級,要增加新的功能或提高效能,就得重新設計晶元。另外,設計和製造複雜的asic一般需要花費周期長,研發費用較高。除此之外,當前網路的應用範圍在不斷擴大、新的業務不斷湧現,網路的發展也不僅僅是頻寬的不斷提高,而更多地表現為對「智慧型化處理」的要求,如服務質量(qos)、控制安全(security)等服務都需要分類和深層資料處理(處理到第4層到第7層)。而這些服務功能既要求處理的高速度,又要求實現的靈活性,因此處理器需要能夠高速地、靈活地滿足各種服務和應用的不同需求,這一點卻是asic技術也難以滿足的,這催生了新的處理器的出現,也就是「網路處理器」。

網路處理器是為優化包處理而設計的,它將能把資料報以線速送到下乙個節點,另外,如果需要新的功能或新的標準,裝置製造商能通過給網路處理器程式設計來實現,以滿足各種新的網路應用。

應該說,網路處理器較之asic最大的優勢是靈活,開發周期相對較短。網路處理器的效能相對於其它處理器有很大的提公升,但是在高速資料報處理方面與asic仍有差距。 在路由器領域,處於中型企業網路核心、電信網路邊緣的路由器,採用np已經蔚然成風。而在電信網路核心主幹以及國內一些大型行業企業、機構網路中使用的核心路由器,究竟使用asic為主的體系結構還是np為主的體系結構,尚有爭論。asic的體系結構似乎更占上風,但一切都有變數,也許最好的方式還是asic與np的結合,取兩者之長來打造高速靈活的核心主幹路由器。

與計算機一樣,路由器也包含了乙個**處理器(cpu)。不同系列和型號的路由器,其中的cpu也不盡相同。cisco路由器一般採用motorola 68030和orion/r4600兩種處理器。 無論在中低端路由器還是在高階路由器中,cpu都是路由器的心臟。通常在中低端路由器中,cpu負責交換路由資訊、路由表查詢以及**資料報。在路由器中,cpu的能力直接影響路由器的吞吐量(路由表查詢時間)

路由器處理器晶元除了通用處理器之外,其它的嵌入式處理器、asic處理器、網路處理器都有它們發展和用武之地。嵌入式處理器將更多地出現在低端的路由器產品中,如家用、soho級寬頻路由器、vpn防火牆閘道器;asic處理器與網路處理器將更多地出現在中端、高階的企業級、電信級的路由路及交換機中。

03 路由原理

二 路由原理 路由 routing 是指路由器從乙個介面上收到資料報,根據資料報的目的位址進行定向並 到另乙個介面的過程。路由 routing 是指分組從源到目的地時,決定端到端路徑的網路範圍的程序。以上是教科書給出的定義,所謂的路由,就是路由器對資料報從源位址到目標位址選擇路徑的過程。s 192....

1062 路由選擇

時間限制 1 s 空間限制 128000 kb 題目等級 鑽石 diamond 題解在網路通訊中,經常需要求最短路徑。但完全用最短路徑傳輸有這樣乙個問題 如果最終在兩個終端節點之間給出的最短路徑只有一條。則在該路徑中的任乙個節點或鏈路出現故障時,訊號傳輸將面臨中斷的危險。因此,對網路路由選擇作了以下...

3 路由配置

一 路由配置 path path 函式 匯入 from django.urls import path 語法 path route,views,name none 引數 1.route 字串型別,匹配的請求路徑 2.views 指定路徑所對應的檢視處理函式的名稱 3.name 為位址起別名,在模版中...