簡介
HOW Routers Work 路由器的工作原理
路由器檢查分組中的地址信息並沿著預定的路徑將分組傳到目的站地。路由器維持網路中鄰近路由器和區域網路的表,當一個路由器收到一個分組後,它查看這些表,看是否能直接把分組轉到目的站地。若不能,則找出能將分組轉發到目的地的一個路由器的位置。
轉發過程需要一些處理。路由器必須完全接收一個分組,查看HS地址信息,而後繼續傳送。因此,路由器的部件和體系結構不同,
吞吐量也不同。有的
網路作業系統,例如Novell NetWare伺服器中支持
路由選擇,這是通過安裝2個或多個網路接口卡來完成的。然而,路由選擇任務可使伺服器速度下降,這樣的話,外部路由就十分必要,它可把伺服器解脫,使之只執行與檔案相關的任務。
路由器使得一個網路被分段成單獨可編址網路段,這些段較易管理。每個區域網路段有各自特定的區域網路號,且網段上每台工作站都有自己的地址。這些是
網路層協定放在分組中的信息。
Router Racket Processing
路由器的數據分組處理
路由器可處理有相同
網路地址的分組。當一個路由器收到一個分組後,它啟動一個處理過程先打開分組,然後決定分組應該送往哪裡。分組的內容以及每一個網路協定層加入的信息將在“Packet分組”條日中討論。下面是路由器的分組處理過程:
1.使用分組中的檢查和對分組進行錯誤檢查。
網路層協定信息包含目的地址和在使用
TCP/IP源
路由選擇網中的一個路由
中繼(跳躍)表,路由中繼(hop)定義了通過網路的預定最佳路徑。下面,
路由器也許要做下述幾項工作之一:
分組或許定址到路由器本身,則路由器測定出分組中剩下的全部信息。
若分組中目的地址是同一網中,路由器僅將分組向前傳送。
若有篩選表被採用,路由器對照表檢查分組的地址,若有必要,可將分組排出,這為安全起見,使得分組位於網路內或排出網外。
若分組中包含有源
路由選擇信息,它標出了到目的站的下一個路由器,那么分組就將傳給那個路由器。
若路由器不知道一條路徑或在它的
路由選擇表中找不到一個分組的目的地址,它就將分組廢棄並可能返回一個錯誤信息到源站。
有的分組(TCP/IP)包含它在網上已通過的跳躍數(
路由中繼數)。若一個分組超過一定的跳躍數,
路由器就假定分組在循環,於是將其廢棄。然後路由器可以返回
錯誤信息給源站。
Choosing the Best Path 選擇最佳路徑
一個網際網路通常被認為是帶有容錯功能的,在路由器之間建有幾條
路徑以便在一條鏈路出
故障時提供備份路徑。其中一些路徑可以使用高速網路,如在校園或都市範圍內的
光纖分散式數據接口(
FDDI)或
廣域網的直通數字線路(T1)。路由器能在這些路徑中選擇一條最佳路徑進行數據傳送,最佳路徑的選擇取決於那一條路徑最便宜、最快速、最直接,或由
管理員指定一條路徑。
路由選擇協定(參見“
路由選擇協定”條目)選擇通過一個網路的最佳路徑,這是基於一些準則,如象一個分組經過
路由器網路到達其目的站必須經過的路由中繼(hop)數。一條最佳路徑也可以是繞過擁塞局域段的路徑。傳輸能被最佳化,例如,高優先權的分組能在56Kbps數字通信鏈路上傳送,低優先權的分組能在19.2Kbps
遠程通信鏈路上傳送。
網路管理員能夠確定一個網路中的最佳路徑,或者在某些情況下,由路由器來選擇最佳路徑。
一個專用網路由租用或撥號線路和在圖R-5中所示的
路由器來構成。如果洛杉磯想傳送一條訊息給
聖路易斯,路由器可以使用19.2Kbps的直通線路或通過
休斯敦連到聖路易斯的56Kbps線路。在另一種情況下,如果紐約城想發一條訊息給洛杉磯,這訊息可以通過芝加哥和
丹佛,或通過聖路易斯。路由器作出抉擇是基於芝加哥或亞特蘭大的擁塞程度或“路由中繼(hop)數”。紐約城到洛杉磯的連結如果通過聖路易斯則是2個hop;如果通過芝加哥和丹佛則將有3個hop。注意
網狀網路是有
冗餘鏈路的,如果芝加哥到丹佛的線路出了
故障,從紐約城到洛杉磯的訊息還可經過聖路易斯或
孟菲斯傳遞。
路由器也用於將網路連至
主幹網,如圖R-7所示。在這種情況下,本地通信在本地區域網路上傳輸,而網際網路或
廣域網通信經過FDDI光纖主幹網到達它的目的站。注意FDDI主幹網象一個交通環路,在這種環路上它沿著分支節點傳送信息。
Router Specification 路由器規範
如果你用的是一個小型網路或者只是在一幢建築內,那么使用
橋接器就足夠了。橋接器能幫助把繁忙的區域網路分段。注意圖R-7的右邊有幾個
子網通過橋接器連線,而這組網通過
路由器連到FDDI
主幹網。
用橋接器將多於10個子網互連會引起過量的網際網路交通和造成分組循環現象。路由器可互連不同類型的網路,如
乙太網連到FDDI主幹網或與廣域網上鏈路相連。若一個網由多種協定組成,那么就需要配置多協定路由器。路由器使得
網路負載平衡到多條線路上,並在通過複雜的互連路由器網(
mesh)時提供
路徑控制。若一條鏈路失敗,路由器還可重新配置路徑。
當評價或購買路由器時,確保網路中所有的路由器都使用相同的
路由選擇方法,並使用相同的協定。路由器使用
數據壓縮方法來提高
數據分組的
吞吐率。為了避免出現問題,在所有地方總是試圖使用同一種
路由器。儘管路由選擇方法通常都是標準化的,但失配也會導致性能下降。
現在高性能系統中提供了多種
容錯技術,如
冗餘電源供給和“現場”模板替換。路由器設定常常比較困難,因為許多特性如多種協定、
冗餘路徑、性能和安全性都必須對設備編程。一個好的安裝程式能使這些事情很容易做。Novel的多協定路由器(MDR)通過設定分組大小和其他適合於
NetWare網特性的默認值,簡化了設定過程。
路由器的價格有幾種。高檔的是完全布線
Hub,它把所有的
網路連線埠、
橋接器、路由器都集成在一個位置的一個單元中,這種路由器的起價是20,000美元,它們一般有16個連線埠,對廣域連線如FDDI和T1有可選支持。中檔的價格是從10,000美元到20,000美元,這些單元一般只含少數連線埠,但是它們提供了集中式布線方案和管理。低檔的是單純的
路由器,用於各種網際網路的場點,價格低於10,000美元。”
速度評估
讓我們來看看速度指標,從而得出
橋接器和路由器的速度到底有多快是很有益的。橋接器和
路由器的速度單位是每秒傳輸的分組數(PPS)。若所有分組是64位元組的話,
乙太網(10Mbps)在自己電纜上可傳輸14,880PPS,乙太網上的橋接器一般篩選14,000PPS和向前傳送10,000PPS。路由器一般每秒傳送8,000至15,000個分組。橋接器和路由器的
存儲轉發等待時間在某種程度上降低了
吞吐量。
Novell的MPR(多協定路由器)每秒可傳送3,000至4,000個分組。
橋接器和路由器每秒可傳輸的分組數不需高於它們所在的區域網路傳輸能力,還要注意的是,通過
橋接器的通信量較本地通信量要少一些。雖然由高性能系統送出的突發數據可使得一般的
乙太網線路
頻寬飽和,但以太電纜訪問方法的競爭機制增加了足夠大量的開銷,使得橋接器或
路由器的傳輸量較低。在算進這種額外開銷時,每秒可處理5000個64
位元組分組的橋接器或路由器對於10Mbps網來說是足夠了。
令牌環網有類似的飽和點。其實線纜本身比橋接器更限制頻寬。每秒可傳輸2,000至3,000個分組的橋接器或路由器就完全能夠滿足令牌環網的分組傳送。對於
廣域網,高傳輸率並不那么重要,因為廣域網本身比區域網路的
吞吐量要低,如廣域網僅為1Mbps,而以太區域網路為10Mpbs。
Multiprotocol Routers 多協定路由器
多協定網路提供了一種方案,使許多協定轉換減至少數幾個協定。管理員可逐漸使用戶轉向公司支持的協定上,當所有的用戶都轉成新協定後,舊協定就被取消了。
Novell 的多協定路由器
多協定
路由器(MPR)必須運行在80386或更好的計算機系統中。它是和NetWare Hub Services(NetWare的
Hub服務)捆綁在一起的,那是一個把Hub集成到NetWare平台的監控和管理系統。通過NetWare的Hub服務,可建立路由器和
集線器連線系統。多協定路由器還包括為
廣域網路由選擇的廣域網連結。
路由器:網際網路的“交通警察”
用來尋找最佳路徑傳輸用戶的路由器是網際網路最重要的網路設備,被稱為網際網路的樞紐和“交通警察”。
網際網路就是由分布於全世界的無數個大小不一的
路由器連線起來的。作為網際網路的主要節點設備,路由器的處理速度是網路通信的主要瓶頸之一。
實例
要求使A B router有如下地址:
A:Serial0/0 192.168.1.1
Loopback0 1.1.1.1
Loopback1 100.100.1.1
Loopback2 200.200.2.1
Loopback3 200.200.3.1
B:Serial0/0 192.168.1.2
Loopback0 2.2.2.2
Loopback1 201.201.1.1
Loopback2 201.201.2.1
Loopback3 201.201.3.1
在A的routing-table中有以's','r','d','o'and 'oia'開頭的routingtable。在B中有'S*','O' and 'OIA'開頭的
路由表,合理利用地址!
實現過程如下:
A:
A(config)#router rip
A(config-router)#ver 2
A(config-router)#no au
A(config-router)#net 192.168.1.1
A(config-router)#exit
A(config)#router eigrp 100
A(config-router)#no au
A(config-router)#net 192.168.1.1
A(config-router)#exit
A(config)#router ospf 100
A(config-router)#router-id 1.1.1.1
A(config-router)#net 192.168.1.1 0.0.0.255 a 0
A(config-router)#net 1.1.1.1 0.0.0.0 a 0
A(config-router)#net 200.200.1.1 0.0.0.0 a 0
A(config-router)#net 200.200.2.1 0.0.0.0 a 1
A(config-router)#net 200.200.3.1 0.0.0.0 a 1
A(config)#ip route 192.168.1.2 255.255.255.255 192.168.1.2
B:
B(config)#router rip
B(config-router)#v 2
B(config-router)#no au
B(config-router)#net 192.168.1.2
B(config-router)#net 1.1.1.1
B(config-router)#exit
B(config)#router eigrp
% Incomplete command.
B(config)#router eigrp 100
B(config-router)#no au
B(config-router)#net 192.168.1.2
B(config-router)#
%DUAL-5-NBRCHANGE: IP-EIGRP 100: Neighbor
192.168.1.1 (Serial0/0) is up: new adjacency
B(config-router)#net 201.201.1.1
B(config-router)#exit
B(config)#router ospf 200
B(config-router)#router-id 2.2.2.2
B(config-router)#net 192.168.1.2 0.0.0.255 a 0
B(config-router)#net 201.201.2.1 0.0.0.0 a 0
B(config-router)#net 201.201.3.1 0.0.0.0 a 1
B(config-router)#exit
結果如下:
A:
⒈0.0.0/32 is subnetted,1 subnets
C 1.1.1.1 is directly connected,Loopback0
100.0.0.0/32 is subnetted,1 subnets
C 100.100.1.1 is directly connected,Loopback1
192.168.1.0/24 is variably subnetted,2 subnets,2 masks
C 192.168.1.0/24 is directly connected,Serial0/0
S 192.168.1.2/32 [1/0] via 192.168.1.2
200.200.2.0/32 is subnetted,1 subnets
C 200.200.2.1 is directly connected,Loopback2
200.200.3.0/32 is subnetted,1 subnets
C 200.200.3.1 is directly connected,Loopback3
201.201.1.0/32 is subnetted,1 subnets
D 201.201.1.1 [90/20640000] via 192.168.1.2,00:03:37,Serial0/0
201.201.2.0/32 is subnetted,1 subnets
O 201.201.2.1 [110/782] via 192.168.1.2,00:02:03,Serial0/0
201.201.3.0/32 is subnetted,1 subnets
O IA 201.201.3.1 [110/782] via 192.168.1.2,00:01:42,Serial0/0
B:
⒈0.0.0/32 is subnetted,1 subnets
O 1.1.1.1 [110/782] via 192.168.1.1,00:03:01,Serial0/0
⒉0.0.0/32 is subnetted,1 subnets
C 2.2.2.2 is directly connected,Loopback0
C 192.168.1.0/24 is directly connected,Serial0/0
200.200.2.0/32 is subnetted,1 subnets
O IA 200.200.2.1 [110/782] via 192.168.1.1,00:03:01,Serial0/0
200.200.3.0/32 is subnetted,1 subnets
O IA 200.200.3.1 [110/782] via 192.168.1.1,00:03:01,Serial0/0
201.201.1.0/32 is subnetted,1 subnets
C 201.201.1.1 is directly connected,Loopback1
201.201.2.0/32 is subnetted,1 subnets
C 201.201.2.1 is directly connected,Loopback2
201.201.3.0/32 is subnetted,1 subnets
C 201.201.3.1 is directly connected,Loopback3
S* 0.0.0.0/0 [1/0] via 192.168.1.1