淺談路由器軟硬件架構

咱們能夠把路由器比做網絡世界的骨架,咱們之因此可以在網絡世界裏暢遊,很大程度上是得益於這個鐵盒子。網絡

 

路由器硬件架構架構

       隨着專用多核網絡處理器、專用轉發芯片的出現,使得現代路由器擺脫了以往純軟件轉發的侷限,向着高吞吐率、硬件快速轉發等方向發展。高端的路由器設計成多板分佈式+冗餘備份的架構,使轉發能力成倍的加強,同時還大大提升了業務的穩定性。分佈式

 

       下圖是一幅典型的路由器硬件架構圖:優化

 

        目前高端路由器大多采用專門的多核網絡處理器做爲CPU,如Cavium公司研發的Octeon系列處理器,主流的6000系列16~32個核,即將上市的7000系列多達64個核,並行處理能力大大增強。而且這類專用網絡處理器在硬件上都對網絡報文的解析、保序、轉發等方面提供了專門的協處理器進行支持,優化並提升了系統的轉發能力,也爲軟件研發者省去了很多麻煩。操作系統

        Broadcom、Marvell等公司提供專門的轉發芯片,經過VLAN、硬件路由等功能,在硬件上直接支持了對報文的二三層的線速轉發,而且多片交換芯片之間可鏈接,最終造成一個大的交換矩陣網絡。設計

       CPU和交換芯片之間的數據通道可由10G高速接口相連,實現海量數據的傳輸;管理通道經過PCIe總線相連,傳輸控制信號。接口

       64位的CPU有着廣闊的尋址空間,能夠支持很大的DRAM內存。內存

CF卡或SD卡用來存儲系統程序,能夠很方便的對系統程序進行升級。路由

       BOOT ROM存儲着系統加載程序,系統上電時首先從BOOT ROM開始運行,由BOOT ROM來負責加載整個操做系統。軟件

       CPLD中存儲着系統的版本信息,由BOOT ROM來負責讀取版本參數,並通知給系統。

       做爲分佈式系統的話,各個單板之間經過背板接口傳輸數據和管理信息。

 

路由器軟件架構

        路由器是一個典型的嵌入式系統,咱們只討論與網絡相關的部分:

 

        因爲使用多核處理器,軟件的設計架構能夠很是靈活,咱們通常在CPU層面就把業務劃分開,拿出幾個核跑特定的核心業務(無操做系統),這樣能夠大大加快核心業務的處理能力。其它的核通常跑Linux、VxWorks等嵌入式操做系統,做爲控制面。相比較而言,控制面的報文轉發能力就不好了,但因爲有操做系統和協議棧的支持,控制面能夠跑更復雜、更定製化的業務,根據客戶需求靈活的設計業務模式。

相關文章
相關標籤/搜索