官术网_书友最值得收藏!

4.1 路由器概述

所謂路由,是指通過相互連接的網絡把信息從源地點移動到目標地點的活動。路由器的英文名稱為Router,是一種連接多個網絡或網段的網絡設備,能將不同網絡或網段之間的數據信息進行“翻譯”,以使它們能夠相互理解對方的數據,從而構成一個更大的網絡。在網絡拓撲結構中,用圖標 表示路由器。路由器是一種典型的網絡層設備,在OSI參考模型中被稱為中介系統,完成網絡層中繼的任務。路由器負責在兩個局域網之間接收數據分組并進行轉發,轉發分組時需要改變分組中的物理地址。

4.1.1 路由器的結構

路由器的硬件體系由4部分組成:路由處理器、內存、端口和交換開關,如圖4-1所示。

圖4-1 路由器的結構(圖中的數字1~3表示OSI中相應層的處理模塊)

1.路由處理器

與計算機一樣,路由器也包含了一個中央處理器,即CPU。CPU是路由器的心臟,其任務是根據所選定的路由選擇協議構造出路由表,同時經常或定期地和相鄰路由器交換路由信息而不斷地更新和維護路由表。在路由器中,CPU的能力直接影響路由器的吞吐量(路由表查找時間)和路由計算能力(影響網絡路由收斂時間)。

2.路由器內存

路由器的內存用于存儲路由器的配置、路由器操作系統、路由協議軟件和數據等內容。在中低端路由器中,路由表可能存儲在內存中。

路由器采用了以下幾種內存,每種內存以不同方式協助路由器工作:BootROM(啟動只讀存儲器)、Flash(快速閃存)、NVRAM(非易失性存儲器)、SDRAM(主存儲器)。

① BootROM。BootROM中存放的是相當于路由器自舉程序的系統文件,主要用于路由器系統初始化等功能。顧名思義,BootROM是只讀存儲器,不能修改其中存放的代碼。如要進行升級,則要替換BootROM芯片。BootROM中主要包含:

⊙ 系統加電自檢代碼(POST),用于檢測路由器中各硬件部分是否完好。

⊙ 系統引導區代碼(BootStrap),用于啟動路由器并載入操作系統。

⊙ 備份的操作系統,以便在原有操作系統被刪除或破壞時使用。通常,這個操作系統比現運行操作系統的版本低一些,但卻足以使路由器啟動和工作。

② Flash,是可讀可寫的存儲器,在系統重新啟動或關機之后仍能保存數據。Flash中存放著當前使用中的操作系統。事實上,如果Flash容量足夠大,甚至可以存放多個操作系統,這在進行操作系統升級時十分有用。當不知道新版操作系統是否穩定時,可在升級后仍保留舊版操作系統,出現問題時可迅速退回到舊版操作系統,從而避免長時間的網路故障。

③ NVRAM,即Nonvolatile RAM,是可讀可寫的存儲器,在系統重新啟動或關機之后仍能保存數據。由于NVRAM僅用于保存啟動配置文件(Startup-Config),故其容量較小,通常在路由器上只配置32~128 KB大小的NVRAM。同時,NVRAM的速度較快,成本也比較高。

④ SDRAM。SDRAM用于路由器運行期間暫時存放操作系統和數據,讓路由器能迅速訪問這些信息。SDRAM的存取速率優于前面所提到的3種內存的存取速率。

路由器運行期間,SDRAM中存放的是路由表項目、ARP緩沖項目、日志項目和隊列中排隊等待發送的分組,還包括運行配置文件(Running-Config)、正在執行的代碼、操作系統程序和一些臨時數據信息。

路由器的啟動過程如下:

<1> 系統硬件加電自檢。處理器首先運行BootROM中的硬件檢測程序,識別支持路由器運行的硬件信息,檢測各組件能否正常工作。完成硬件檢測后,開始軟件初始化工作。

<2> 軟件初始化過程。運行BootROM中的引導程序,進行初步引導工作。

<3> 尋找并載入操作系統文件。將Flash中的路由器的操作系統映像讀入到SDRAM中。操作系統文件可以存放在多處,至于到底采用哪個操作系統,是通過命令設置指定的。

<4> 操作系統裝載完畢,系統在NVRAM中搜索保存的Startup-Config文件,進行系統的配置。如果NVRAM中存在Startup-Config文件,則將該文件調入SDRAM中并逐條執行。否則,系統默認無配置,直接進入用戶操作模式,進行路由器初始配置。

為了保證在路由器電源被切斷的時候,它的配置信息不會丟失,在配置完成后將配置信息保存在NVRAM中。圖4-2表示了這幾個組件之間的關系和啟動時的文件讀取順序。

3.路由器端口

① 輸入端口,一個輸入端口具有下列功能:

⊙ 進行數據鏈路層的封裝和解封裝。

圖4-2 路由器的啟動過程

⊙ 在路由表中,查找輸入分組目的地址,從而決定目的端口(稱為路由查找)。

⊙ 為了提供QoS(服務質量),端口要對收到的分組分成幾個預定義的服務級別。

⊙ 端口可能運行諸如SLIP(串行線網際協議)和PPP(點對點協議)這樣的數據鏈路層協議或者點對點隧道協議這樣的網絡層協議。一旦路由查找完成,必須用交換開關將分組發送到輸出端口。

⊙ 參加對公共資源(如交換開關)的仲裁協議。

一個輸入端口的工作過程是:在路由器的輸入和輸出端口里面都各有3個方框,用方框中的1、2和3分別代表物理層、數據鏈路層和網絡層的處理模塊。物理層進行比特的接收。數據鏈路層則按照鏈路層協議接收傳送分組的幀。在將幀的首部和尾部剝去后,分組就被送入網絡層的處理模塊。若接收到的分組是路由器之間交換路由信息的分組(如RIP或OSPF分組等),則將這種分組送交路由器的路由選擇部分中的路由選擇處理機。若接收到的是數據分組,則按照分組首部中的目的地址查找轉發表,根據得出的結果,分組就經過交換開關到達合適的輸出端口。圖4-3給出了在輸入端口的隊列中排隊的分組的示意圖。

圖4-3 輸入端口對線路上收到的分組進行處理

② 輸出端口。輸出端口從交換結構接收分組,然后將它們發送到路由器外面的線路上。在網絡層的處理模塊中設有一個緩存,實際上它就是一個隊列。當交換開關傳送過來的分組的速率超過輸出鏈路的發送速率時,來不及發送的分組就必須暫時存放在這個隊列中。數據鏈路層處理模塊將分組加上鏈路層的首部和尾部,交給物理層模塊后發送到外部線路,如圖4-4所示。

圖4-4 輸出端口將交換開關傳送來的分組發送到線路上

路由器的輸入端口和輸出端口做在路由器的線路接口卡上,一般支持4、8或16個端口。

4.交換開關

交換開關又稱為交換結構(switching fabric),其作用就是根據轉發表(forwarding table)對分組進行處理,將某個輸入端口進入的分組從一個合適的輸出端口轉發出去。圖4-5給出了三種常用的交換方法,這三種方法都是將輸入端口I1收到的分組轉發到輸出端口O2

圖4-5 三種常用的交換方法

4.1.2 路由器的功能與工作原理

路由器的功能歸納起來包括如下幾方面。

(1)協議轉換

路由器作為三層的網絡設備,對接收來的數據進行下三層的解封裝,然后根據出口協議棧對接收的數據進行再封裝,最后發送到出口網絡中,從而實現了不同協議、不同體系結構網絡之間的互連互通。例如,圖4-6中表示的是IP網絡與IPX網絡的互連。

圖4-6 IP網絡與IPX網絡的互連

(2)尋址

路由器的尋址動作與主機的類似,區別在于路由器不止一個出口,所以不能通過簡單配置一條默認網關解決所有數據分組的轉發,必須根據目的網絡的不同選擇對應的出口路徑。

在如圖4-7所示的簡單網絡環境中,如果Rl沒有配置路由,則從172.16.1.2發送到172.16.2.2的數據分組,到達Rl時,Rl在路由表中將查不到到達172.16.2.0網絡的路徑,因此會丟掉數據分組。同理,如果R2沒有配置路由,Rl配置了正確的路由,則從171.16.1.2發到172.16.2.2的數據分組可以經過Rl發送給R2并經過R2的本地路由表發送給172.16.2.2,但從172.16.2.2返回的數據分組將由于R2中沒有到達172.16.1.0網絡的路由而被丟棄,因此也是不能夠通信的。

圖4-7 路由器的尋址

(3)分組轉發

分組轉發即將數據分組轉發到目的網絡。

路由器的大致工作過程:從某個端口收到一個數據分組,首先把鏈路層的包頭去掉(拆包),讀取目的IP地址,然后查找路由表,如果能確定下一步往哪里送,則再加上鏈路層的包頭(打包),把該數據分組轉發出去;如果不能確定下一步的地址,則向源地址返回一個信息,并把這個數據分組丟掉。下面通過一個例子來說明路由器的工作原理。

【例4-1】路由器的分布如圖4-8所示,工作站A需要向工作站B傳送信息,并假定工作站B的IP地址為10.120.0.5,它們之間需要通過多個路由器進行接力傳遞。

圖4-8 路由器工作原理示意圖

<1> 工作站A將工作站B的地址10.120.0.5連同數據信息以數據幀的形式發送給R1。

<2> 路由器R1收到工作站A的數據幀后,先從報頭中取出地址10.120.0.5,根據路由表計算出發往工作站B的最佳下一跳路徑:R1→R2→R5→B,并將數據幀發往路由器R2。

<3> 路由器R2重復路由器R1的工作,并將數據幀轉發給路由器R5。

<4> 路由器R5同樣取出目的地址,發現10.120.0.5就在該路由器所連接的網段上,于是將該數據幀直接交給工作站B。

<5> 工作站B收到工作站A的數據幀,一次通信過程宣告結束。

4.1.3 路由器與三層交換機的區別

(1)三層交換機簡介

三層交換機就是具有部分路由器功能的交換機,三層交換機的最重要目的是加快大型局域網內部的數據交換,所具有的路由功能也是為這目的服務的,能夠做到一次路由,多次轉發。數據分組轉發等規律性的過程由硬件高速實現,而路由信息更新、路由表維護、路由計算、路由確定等功能則由軟件實現。

出于安全和管理方便的考慮,主要是為了減小廣播風暴的危害,必須把大型局域網按功能或地域等因素劃成一個個小的局域網,這就使VLAN技術在網絡中得以大量應用,而不同VLAN間的通信都要經過路由器來完成轉發。隨著網間互訪的不斷增加,單純使用路由器來實現網間訪問,不但由于端口數量有限,而且路由速率較慢,從而限制了網絡的規模和訪問速率。基于這種情況,三層交換機便應運而生。三層交換機是為IP設計的,接口類型簡單,擁有很強的二層包處理能力,非常適用于大型局域網內的數據路由與交換,它既可以工作在協議第三層替代或部分完成傳統路由器的功能,又具有第二層交換的速率,且價格相對便宜些。

在企業網和教學網中,一般會將三層交換機用在網絡的核心層,用三層交換機上的千兆位端口或百兆位端口連接不同的子網或VLAN。三層交換機出現最重要的目的是加快大型局域網內部的數據交換,所具備的路由功能也多是圍繞這一目的而展開的,所以它的路由功能沒有同一檔次的專業路由器強,畢竟在安全、協議支持等方面還有許多欠缺,并不能完全取代路由器工作。

在實際應用過程中,典型的做法是:處于同一局域網中的各子網的互連和局域網中VLAN間的路由,用三層交換機來代替路由器,而只有局域網與公網互連要實現跨地域的網絡訪問時,才通過專業路由器。

(2)路由器與三層交換機的主要區別

① 數據轉發的依據不同。三層交換機是依據物理地址(即MAC地址)來確定轉發數據的目的地址,而路由器依據不同網絡的ID號(即IP地址)來確定數據轉發的地址。

② 路由器提供了防火墻的服務,可以有效維護網絡安全。

③ 三層交換機現在還不能提供完整的路由選擇協議,而路由器則具備同時處理多個協議的能力。當連接不同協議的網絡,像以太網和令牌環的組合網絡,依靠三層交換機是不可能完成網間數據傳輸的。

④ 三層交換機適用于大型局域網。為了減小廣播風暴的危害,必須把大型局域網按功能或地域等因素劃分成一個個的小局域網,必然導致不同網段間存在大量的互訪,單純使用二層交換機沒法實現網間的互訪,單純使用路由器,由于端口數量有限,路由速率較慢,限制了網絡的訪問速率,所以在這種環境下,由二層交換技術和路由技術有機結合而成的三層交換機就最為合適。

路由器端口類型多,支持的三層協議多,路由能力強,所以適合于在大型網絡之間的互連。互連設備的主要功能不在于在端口之間進行快速交換,而是要選擇最佳路徑,進行負載分擔、鏈路備份、與其他網絡進行路由信息交換等,所有這些都是路由器完成的功能。

在網絡流量很大的情況下,如果三層交換機既做網內的交換又做網間的路由,會加重它的負擔,影響速率。這時可由三層交換機做網內的交換,由路由器專門負責網間的路由,這樣可以充分發揮不同設備的優勢,是個很理想的選擇。

4.1.4 路由器的分類

與交換機一樣,路由器從不同的角度來看,也有不同的分類。從應用上來分,路由器可分為內部路由器和邊界路由器;按性能檔次來劃分,路由器可分為高、中和低檔路由器;按結構來劃分,路由器可分為模塊化結構和非模塊化結構。;按性能來劃分,路由器可分為線速路由器和非線速路由器;按功能的不同劃分,路由器可分為核心層(骨干級)路由器、匯聚層(企業級)路由器和接入層(接入級)路由器,這是比較常見的劃分方法。

骨干級路由器是實現企業網絡互連的關鍵設備,數據吞吐量較大,非常重要。對骨干級路由器的基本性能要求是高速率和高可靠性。為了獲得高可靠性,網絡系統普遍采用諸如熱備份、雙電源、雙數據通路等傳統冗余技術,從而使得骨干路由器的可靠性一般不成問題。骨干級路由器的主要性能瓶頸是在路由表中查找某個路由所耗的時間過長,為此在骨干級路由器中,常將一些訪問頻率較高的目的端口放到緩存中,從而達到提高路由查找效率的目的。

企業或校園級路由器連接許多終端系統,連接對象較多,但系統相對簡單,且數據流量對這類路由器的要求是以盡量便宜的方法實現盡可能多的端點互連,還要求能夠支持不同的服務質量。用路由器連接的網絡系統因能夠將機器分成多個廣播域,所以可以方便控制一個網絡的大小。此外,路由器還可以支持一定的服務等級,允許將網絡分成多個優先級別。當然,路由器的每個端口造價要貴些,在使用之前要求用戶進行大量的配置工作。因此,企業級路由器的成敗就在于是否可提供大量端口且每個端口的造價很低,是否容易配置,是否支持QoS,是否支持組播等多項功能。

接入路由器主要應用于連接家庭或ISP內的小型企業客戶群體,現在的接入路由器已經可以支持許多異構和高速端口,并能在各個端口運行多種協議。

主站蜘蛛池模板: 新乡市| 天水市| 商河县| 蒙城县| 贵南县| 远安县| 台前县| 满洲里市| 宣武区| 潍坊市| 双城市| 凤山市| 彰化市| 蓬安县| 遂昌县| 辽宁省| 无极县| 莱芜市| 志丹县| 施秉县| 乌审旗| 辽中县| 临邑县| 建湖县| 岳普湖县| 伽师县| 崇州市| 资溪县| 筠连县| 沙田区| 德庆县| 留坝县| 舒城县| 安义县| 红原县| 凤城市| 双鸭山市| 介休市| 增城市| 甘孜县| 沾化县|