網路互聯裝置概述
首先看網路通訊中需要解決的問題:1. 不同網路之間的互聯:乙太網路,令牌環,FDDI等,這些網路鏈路層的框架格式都不相同,所以需要專門的裝置能進行相互轉換使之可以互相通訊;2. 區域網路中同一個子網的多台機器之間相互連信,需要有裝置來使之相互連通,實現資料轉寄;3. 不同子網之間通訊需要有裝置來完成子網之間的路由,把資料發往正確的地址;4.私人網路訪問公網需要有裝置來完成資料包的正確分發,這裡說的“私人網路”是指使用以下保留地址的區域網路:10.0.0.0 - 10.255.255.255
172.16.0.0 - 172.31.255.255
192.168.0.0 -192.168.255.255
再看目前網路通訊中常見的裝置名稱詞:中繼器(RP repeater), 集線器(HUB), 交換器(Switcher), 橋接器(Bridge), 網關(Gateway), 路由器(Router); 需要說明的是這些概念沒有嚴格的界限,由於現在各種裝置功能都在不斷增強,成本也在下降,所以很多功能都整合到了一起,這裡就各種裝置最初的準系統作簡要分析辨別。
中繼器(RP repeater):很簡單,工作在物理層,因為網線傳輸的訊號會隨著距離的增加而衰減,而中繼器就是在中間進行訊號放大,讓訊號可以傳的更遠;
集線器(HUB):可以用來解決一個網段內區域網路各台主機之間的通訊;HUB也是工作在物理層的,可以認為是多連接埠的中繼器,因為其工作在物理層,所以串連各主機的連接埠是沒有MAC地址的;可以認為HUB只是一個網線串連的作用。假如一個HUB上串連了5台主機:192.168.0.1~192.168.0.5,現在主機A(192.168.0.1)要給主機B(192.168.0.5)發送資料,發送第一個資料包時,主機A發出ARP訊息,裡麵包含IP地址192.168.0.5,HUB會把這個訊息發送到所有連接埠,主機B收到該ARP訊息後填入自己的MAC地址發送給主機A,此後主機A發往主機B的所有資料包的目的MAC就是主機B的MAC地址, 但是資料包經過HUB的時候HUB並不知道主機B是在哪個連接埠,所以HUB還是把這個資料包廣播到所有的連接埠,當然只有主機B會將其收下。
交換器(Switcher):工作在鏈路層,根據MAC地址分發訊息,可以用來解決一個網段內區域網路各台主機之間的通訊,比HUB先進的地方體現在它裡面維護了一張表,這張表記錄了各台主機MAC和其所串連的連接埠的對應關係,還看上面HUB中的例子,假如主機B串連在交換器的第五個連接埠,那麼經過第一個資料包的發送之後交換器就會建立一個主機B的MAC地址和連接埠五的一個對應關聯性記錄,此後交換器發現目的地址是主機B的MAC的資料包就直接發往連接埠五,而不再廣播。這裡說的主要是二層交換器,後來又出現所謂的三層交換器,實際上又加入了網路層的路由功能,和路由器的功能基本類似。
橋接器(Bridge):工作在鏈路層,根據MAC地址分發訊息,用來串連多個區域網路。橋接器也有交換器中相應的映射表,能夠將相應MAC地址的包發到相應的連接埠。此外橋接器的另一個作用是能夠進行協議轉換,可以串連兩種不同架構的區域網路,比如將FDDI的資料包發往乙太網路。
網關(Gateway):主要用來串連多種不同架構的網路(乙太網路,令牌環等),同時也有路由的作用,現在來講和路由器的概念很難分清;
路由器(Router):工作在網路層,根據IP地址進行路由,內部維護一張路由表,決定資料包的下一跳應該發往哪裡。路由表中每條記錄包含Destination,Gateway和Netmask以及其他項目,Destination可以是一個網路地址也可以是一台主機地址,通常還有一個Default值;GateWay中指應該是和路由器直接相連的一台主機或者路由器的地址;路由器收到一個IP包後取出其目的IP地址,然後和路由表中每一項的Netmask做與運算看是否和該項的Destination一致,如果一直則發往該項中指定的Gateway,如果最終沒有找到一致的條目則發往Destination為Default的Gateway。此外路由器的另一個功能就是實現NAT功能,也就是能把“私人網路”中的一台注意映射成一台公網上的主機,使得“私人網路”中的主機可以和公網上的其他主機一樣訪問公網。
綜上,中繼器,集線器都是工作在物理層,連接埠沒有MAC地址,主要負責一個區域網路中的資料包的轉寄;交換器,橋接器工作在鏈路層,可以根據MAC地址轉寄訊息;交換器用於區域網路內部主機通訊,橋接器用於區域網路直接的相互串連;網關,路由器工作在網路層,可以根據網路層地址進行路由,完成不同網路架構之間的互連,以及各不同子網之間的訊息路由和私人網路訪問公網的功能。