來源:解放軍信息工程大學信息技術研究所 作者:于婧 張建輝 岳儉
目前,出現(xiàn)的對提高路由器性能起關鍵作用的幾項新技術主要有以下幾個方面:一是越來越多的功能以硬件方式來實現(xiàn),CMOS集成技術的提高使很多功能可以在專用集成電路(ASIC)芯片上實現(xiàn),原來由軟件實現(xiàn)的功能現(xiàn)在可由硬件更快、成本更低地完成,大大提高系統(tǒng)性能;二是分布式處理技術在路由器中采 用,極大地提高了路由器的路由處理能力和速度;三是逐漸拋棄易造成擁塞的共享式總線,開始普遍采用交換式路由技術,在交換結構設計中采取巨型計算機內部互 連網(wǎng)絡的設計或引入光交換結構。另外路由表的快速查尋技術,QoS保證以及采用MPLS技術優(yōu)化未來網(wǎng)絡,在路由器中引入光交換的趨勢等方面也日漸受到人 們的重視。當前路由器的新技術,主要指的就是在這幾方面的創(chuàng)新。
一、ASIC技術
由于廠商需要降低成本,ASIC技術在路由器中得到了越來越廣泛的應用。在路由器中,要極大 地提高速度,首無想到的是ASIC, ASIC可以用作包轉發(fā)、查路由,并且目前已經(jīng)有專門用來查找IPV4路由的商用ASIC芯片。ASIC技術的應用使路由器內的包轉發(fā)速度和路由查找速度 有顯著的提高。
高速路由器將路由計算、控制等非實時任務同數(shù)據(jù)轉發(fā)等實時任務分開,由不同部分完成。路由計算、控制等非實時任務由CPU運行軟件來完成, 數(shù)據(jù)轉發(fā)等實時任務由專門的ASIC硬件來完成。自1997年下半年以來,一些公司開始陸續(xù)推出采用專用集成電路(ASIC)進行路由識別、計算和轉發(fā)的 新型路由器,轉發(fā)器負責全部數(shù)據(jù)轉發(fā)功能。這種路由器用硬件按照時鐘的節(jié)拍實現(xiàn)逐個數(shù)據(jù)包的轉發(fā),實現(xiàn)線速轉發(fā)。
ASIC技術的進展意味著更多的功能可移向硬件,提高了性能水平,增加了功能。與軟件執(zhí)行相比,ASIC的性能是后者的3倍。但是全硬件化的路由器使 用起來缺乏靈活性,且冒一定的風險,因為標準規(guī)范仍在不斷演變過程中,于是出現(xiàn)了可編程ASIC。可編程ASIC是ASIC的發(fā)展趨勢,因為它可通過改寫 微碼來適應網(wǎng)絡結構和協(xié)議的變化。目前,有兩種類型的可編程ASIC:一種以3Com公司的FIRE(Flexible Intelligent Routing Engine)芯片為代表;另一種以Vertex Networks的HISC專用芯片為代表,這顆芯片是一顆專門為通信協(xié)議處理而設計的CPU,通過改寫微碼,使芯片具有處理不同協(xié)議的能力。
二、分布式處理技術
最初的路由器采用了傳統(tǒng)計算機體系結構,包括共享中央總線、中央CPU、內存及掛在共享總線上的多個網(wǎng)絡物理接口。接口卡通過總線將報文上送CPU, CPU完成路由計算、查表、做轉發(fā)決定處理,然后又經(jīng)總線送到另一個物理接口發(fā)送出去。這種單總線單CPU的主要局限是處理速度慢,一顆CPU完成所有的 任務,從而限制了系統(tǒng)的吞吐量。另外,系統(tǒng)容錯性也不好,CPU若出現(xiàn)故障容易導致系統(tǒng)完全癱瘓。這一切都造成傳統(tǒng)路由器的轉發(fā)性能很難有大的提高。
現(xiàn)代的路由器采取對報文轉發(fā)采用分布式處理,可以插多個線路處理板,每個線路板獨立完成轉發(fā)處理工作,即做到在每個接口處都有一個獨立CPU,專門單 獨負責接收和發(fā)送本接口數(shù)據(jù)包,管理接收發(fā)送隊列、查詢路由表并做出轉發(fā)決定等。通過核心交換板實現(xiàn)板間無阻塞交換,即一個板上輸入的報文經(jīng)過尋路后可以 象通過導線直連那樣,被交換到另一個板上輸出,實現(xiàn)包交換,其整機吞吐量可以成倍擴充。而主控CPU僅完成路由器配置控制管理等非實時功能。這種體系結構 的優(yōu)點是本地轉發(fā)/過濾數(shù)據(jù)包的決定由每個接口處理的專用CPU來完成,對數(shù)據(jù)包的處理被分散到每塊接口卡上。線路板上有專用芯片完成二層、三層乃至四層 的轉發(fā)處理工作,硬件實現(xiàn)使轉發(fā)能夠達到線速(高速端口所連接線路的速率),達到了電路交換那樣的性能,使路由器不會成為網(wǎng)絡中的瓶頸。
然而,單總線結構路由器存在一個最大缺陷就是一次只能有一個分組從入口交換到出口。如果能在入口和出口之間有多條數(shù)據(jù)傳輸通路,則能解決這種問題,同 時大大提高系統(tǒng)的吞吐率。基于這種想法,同時借鑒ATM交換機結構的優(yōu)點,提出了如圖3所示的基于交換機結構的新一代路由器體系結構。
三、交換式路由技術
雖然計算機工業(yè)在近幾年引入了越來越高速的共享式總線,從ISA到EISA直至現(xiàn)在的PCI。但是這仍然跟不上網(wǎng)絡發(fā)展的步子。首先,共享總線不可避免內部沖突;第二,共享總線的負載效應使得高速總線的設計難度太大。
1.單級交換結構
交換結構的引入逐步克服了共享總線的以上缺點。從技術上,目前使用較多的交換結構有共享內存和Crossbar兩種。而Crossbar的結構由于其簡單性得到了更多的青睞和更廣泛的采用。
共享內存結構是通過共享輸入輸出端口的緩沖器,從而減少了對總存儲空間的需求。分組的交換是通過指針調用來實現(xiàn)的,這提高了交換容量。但它的速度受限于內存的訪問速度。
Crossbar結構可以同時提供多個數(shù)據(jù)通路。一個Crossbar結構由N×N交叉矩陣構成。當交叉點(X,Y)閉合時,數(shù)據(jù)就從X輸入端輸出到 Y輸出端。交叉點的打開與閉合是由調度器來控制的。因此,Crossbar結構的速度要取決于調度器的速度。調度器是Crossbar交換結構的核心,它 在每個調度時隙內收集各輸入端口有關數(shù)據(jù)包隊列的信息,經(jīng)過一定的調度算法得到輸入端口和輸出端口之間的一個匹配,提供輸入端口到輸出端口的通路。
Crossbar結構可以支持高帶寬的原因主要有兩個:第一,線路卡到交換結構的物理連接現(xiàn)在簡化為點到點連接,這使得該連接可以運行在非常高的速 率。半導體廠商目前已經(jīng)可以用傳統(tǒng)CMOS技術制造出1Gbit/s速度的點對點串行收發(fā)芯片,并且可以在今后幾年里把速度進一步提高到 4~10Gbit/s的水平。第二個原因是它的結構可以支持多個連接同時以最大速度傳輸數(shù)據(jù),這一點極大的提高了整個系統(tǒng)的吞吐量。只要同時閉合多個交叉 節(jié)點,多個不同的端口就可以同時傳輸數(shù)據(jù)。從這個意義上,我們稱所有的Crossbar在內部是無阻塞的,因為它可以支持所有端口同時以最大速率傳輸(或 稱為交換)數(shù)據(jù)。
數(shù)據(jù)包通過Crossbar的時候,可以是以定長單元的形式(通過數(shù)據(jù)包的定長分割),也可以不進行分割直接進行變長交換。一般高性能的 Crossbar交換結構都采用了定長交換的方式,在數(shù)據(jù)包進入Crossbar以前把它分割為固定長度的cells,等這些cells通過交換結構以后 再按照原樣把它組織成原來的變長包(packet)。
交叉開關和共享內存都能夠達到比較高的吞吐率。共享內存的特點是實現(xiàn)簡單,能達到比較高的吞吐率,但是其可擴展性比較差,當線路接口卡數(shù)量較多時,性 能將受到一定的影響。而交叉開關能夠達到比較高的速率,擴展性好,但是需要設計完善的調度算法并用高速硬件實現(xiàn)調度器。隨著人們對交叉開關調度算法研究的 深入,已經(jīng)設計并實現(xiàn)了許多性能良好、實現(xiàn)簡單的調度算法。因此,目前高性能路由器都趨向于使用交叉開關作為交換結構。
但是交叉開關和共享內存結構仍屬于單級交換結構范疇。當考慮大型系統(tǒng)時,單級交換結構有兩個基本問題。第一、對于小規(guī)模系統(tǒng),每端口成本還算合理,但 隨著規(guī)模的擴大,其成本漲得也特快。第二、所有的單級交換結構在技術上受限于其尺寸與速度。一旦達到這些極限,單級交換機無法再增加端口或提升線路速率。 正因為如此,可擴展的交換系統(tǒng)必須采用多級結構。
2. 多級交換結構
多級交換結構是由多個交換單元互聯(lián)起來的,每個交換單元具有一整套輸入輸出,與普通交換機類似,提供輸入輸出的連接。通過互聯(lián)多個小的交換單元,就可 以制造一個大型的、可擴展的交換結構。多級結構之間的不同取決于交換單元之間是如何互聯(lián)的。典型的結構包括Benes網(wǎng)、Butterfly網(wǎng)、Clos 網(wǎng)等形式。
Benes網(wǎng)使用方形交換單元(即:輸入輸出端口數(shù)相同)進行多級互聯(lián)。一般來說,3級N部Benes網(wǎng)的每一級均可以用N個輸入/輸出端口和N個交 換單元來構造(如圖4所示)。這個格形結構在每個輸入端和每個輸出端之間形成N個可能的通路。Benes輸出可以擴展至任意奇數(shù)級。
雖然對于小型系統(tǒng)單級結構的設計相對簡單,成本也相對低,但是它不能滿足下一代Internet擴展的需要。多級結構在操作上較復雜,但是可以擴展到 成百上千個端口,這對于下一代Internet核心路由系統(tǒng)是絕對必要的。在多級拓撲結構中,Benes結構是最佳選擇,因為它的系統(tǒng)復雜程度最低,性能 好且滿足可擴展的要求。
四、路由表的快速查找技術
隨著Internet上計算機數(shù)量的急劇增長,同時用戶對帶寬的需求的不斷增加,使得路由表的快速查找成為目前最需迫切解決的問題。傳統(tǒng)的基于軟件的 路由查找策略,如樹或哈希算法,其執(zhí)行過程都是相當慢的,而且與路由表的大小相關聯(lián)。所以,這些方法只能用于比較小的、性能較低的包轉發(fā)應用。
使用路由表壓縮技術,將路由表按特定的分布規(guī)律壓縮后存放在處理器的高速緩存中,這樣可以大大提高查詢速度。但是數(shù)據(jù)結構的高度優(yōu)化和壓縮使得路由表 的更新需要花費更多的寄存器訪問和處理器周期。當路由表增大時,這個值還會增加。在路由表更新時,輸入的數(shù)據(jù)包必須被緩存或丟棄,降低了路由器的性能。
另外,基于軟件查找和更新路由表的不確定性增加了包傳輸時的抖動,因此必須進行包的緩存,在高速率時還會造成丟包。因此,為了適應網(wǎng)絡的發(fā)展,理想的 包轉發(fā)方案必須能夠不但保證線速的數(shù)據(jù)轉發(fā)速率,并且要提供足夠大的路由表來滿足下一代的路由設備的需要(在邊界位置應達到512K)。同時它還要能夠以 很小的更新時延來處理長時間的突發(fā)路由表更新。盡管通常路由表的更新為每秒幾百次,但瞬間突發(fā)更新則可能會高出很多。
要解決這個問題,目前來看最為有效的辦法是采用專門的協(xié)處理器結合內容尋址寄存器CAM(Content addressable memory)解決方法以及cache解決方法來完成快速路由查找或更新。但是核心路由器需要的轉發(fā)表非常大,因此對于核心路由器,cache只是一種輔 助的方法,需要有足夠大的cache能把整個轉發(fā)表放進去,并且仍然需要快速算法,還可以將邏輯控制器和存儲器集成于單一器件中,以縮短存儲器的訪問時 間。
五、QoS
QoS是服務質量(Quality of Service)的縮寫。IP協(xié)議的延遲長且不為定值,丟包造成信號不連續(xù)且失真大使得使用IP傳送多媒體信息的應用受到限制。解決IP網(wǎng)絡對QoS的支 持是下一代Internet技術發(fā)展的主要方向。路由器支持QoS的程度也成為評價路由器性能的主要指標。 目前QoS主要有兩種實現(xiàn)框架:IS(Integrated Service)和DiffServ (Differentiated Service)。
IS應用資源預留協(xié)議RSVP( Resource Reservation Protocol)在實時業(yè)務發(fā)送前建立發(fā)送通道并預留資源。它為一個數(shù)據(jù)流通知其所經(jīng)過的每個節(jié)點(IP路由器),與端點協(xié)商為此數(shù)據(jù)流提供資源預留。 但RSVP是以每一個數(shù)據(jù)流為協(xié)商服務對象,在網(wǎng)絡流量爆炸性增長的情況下,路由器轉發(fā)的數(shù)據(jù)流個數(shù)急劇增長,路由器已經(jīng)根本不可能再為每個數(shù)據(jù)流進行復 雜的資源預留協(xié)議。而且當由于線路繁忙或路由器故障等原因,路由修改時,需要重新進行一次相對耗時RSVP過程。
DiffServ則是一種分散控制策略,它的工作流程是:終端應用設備通過SLA(Service Level Agreement)與邊緣路由器協(xié)商獲得其應用數(shù)據(jù)流可得到保證的服務級別。根據(jù)這個服務級別,邊緣路由器為每個接收到的數(shù)據(jù)包打上級別的標記,而核心 路由器則只是根據(jù)每個包的服務級別的標記決定轉發(fā)時的調動行為。
MPLS技術也可用于解決QoS。
六、MPLS技術
多協(xié)議標簽交換MPLS(Multiprotocol Label Switching)技術是對ATM標記交換和IP路由協(xié)議的有機結合。
通過MPLS的LDP協(xié)議建立IP的路由表和MPLS的標記轉發(fā)表的映射,并根據(jù)映射信息為通過MPLS的網(wǎng)絡的流量建立一條標記交換路徑(LSP) ——可采取拓撲驅動的方式或數(shù)據(jù)驅動的方式。所謂的拓撲驅動方式就是給路由表的每一項路由條目建立一條通過MPLS網(wǎng)絡的標記交換路徑,而數(shù)據(jù)驅動的方式 是當數(shù)據(jù)報到達MPLS網(wǎng)絡時才為數(shù)據(jù)報的目的地所在的路由表項建立一條通過MPLS網(wǎng)絡的標記交換路徑。MPLS網(wǎng)絡由若干LER和LSR組成,LER 和LSR通常是同時具有IP功能和MPLS功能的LER根據(jù)已建立的標記路徑,將進入MPLS網(wǎng)絡的IP數(shù)據(jù)報打上標記,轉發(fā)到下一個LSR,LSR查 MPLS的標記轉發(fā)表用該標記交換路徑中的標記替換數(shù)據(jù)報的標記,繼續(xù)轉發(fā)給后續(xù)LSR直到到達MPLS網(wǎng)絡的邊緣LER,LER將數(shù)據(jù)報的標記去掉按 IP數(shù)據(jù)報向下轉發(fā)報文。
MPLS的優(yōu)點在于將IP技術中的完全無連接的分組交換方式轉化為MPLS中“軟”的有連接(根據(jù)LDP協(xié)議建立標記交換路徑)的分組交換方式,首先 減少了分組通過MPLS網(wǎng)絡的查IP路由表的次數(shù),替代為查詢標記轉發(fā)表,提高了轉發(fā)效率;其次解決了TCP數(shù)據(jù)通過IP網(wǎng)絡的失序問題(流量在網(wǎng)絡各接 點無故障狀態(tài)下將沿同樣的路徑通過網(wǎng)絡,將按進入網(wǎng)絡的順序離開網(wǎng)絡),減少了端到端通信中的兩端站點對數(shù)據(jù)的排序時延,使MPLS網(wǎng)絡可以很好地服務于 實時應用。
七、光路由器
隨著因特網(wǎng)的迅猛發(fā)展以及因特網(wǎng)數(shù)據(jù)業(yè)務量的爆炸性持續(xù)增長,在網(wǎng)絡連接方面迫切需要擴大網(wǎng)絡容量。同步光纖網(wǎng)(SONET)難以承受因特網(wǎng)如此巨大 的業(yè)務量。密集波分復用(DWDM)技術應運而生,未來的骨干網(wǎng)絡將步入一個全光網(wǎng)的時代。全光網(wǎng)帶寬巨大,處理速度高,必然要求未來的路由器向著具有更 高的傳輸速率以及更大的傳輸帶寬的方向發(fā)展。不僅如此,它還應很好地解決以往路由器中長期困擾人們的QoS、流控和價格昂貴問題。
光路由器是一個很好的解決方案。光路由器是在網(wǎng)絡核心各光波長通道之間設置MPLS協(xié)議和波長選路協(xié)議(WaRP)控制下的波長選擇器件,實現(xiàn)選路交 換,快速形成新的光路徑。波長的選路路由由內部交叉矩陣決定,一個N×N的交叉矩陣可以同時建立N×N條路由,波長變換交叉連接可將任何光纖上的任何波長 交叉連接到使用不同波長的任何光纖上,具有很高的靈活性。
目前,國內外的電信設備供應商(TEP)和IP設備供應商(IEP)都在加緊研制開發(fā)系列化的光交換/光路由產(chǎn)品。光路由器產(chǎn)品主要有Cisco 的ONS15900光路由器,Corvis的CoreWave光路由器,Monterey Networks公司的Monterey 20000 波長路由器。
(編輯:xiaoyao)