中繼器(轉發器)、集線器、網橋、交換機、路由器及閘道器介紹及區別
作為一名標準的智慧裝置軟體開發人員,計算機網路中相關的網路裝置中繼器、集線器、網橋、交換機及路由器是必須掌握的概念,本文將簡要介紹一下,並對閘道器概念做詳細介紹。
1.中繼器
訊號在傳輸過程中會不斷衰減,為了不讓訊號衰減對通訊產生影響,產生了中繼器:僅做放大訊號用,把訊號傳導偏遠的地方
2.集線器
試想,如果每個裝置只有一個對外介面,那麼意味著只能建立一對點好點的通訊。為了能夠讓通訊“一對多”,需要將訊號複製廣播,於是,產生了集線器:把一個埠的資訊重複廣播到其它7個埠上(假設是8口HUB)。所以HUB也可以叫做multiport repeater。廣播會產生衝突,HUB都有碰撞檢測功能,有碰撞基本上就是避讓,一個人說完了,另一個人再說,所以效率低。
集線器的主要功能是對接收到的訊號進行再生整形放大,以擴大網路的傳輸距離,同時把所有節點集中在以它為中心的節點上。它工作於OSI(開放系統互聯參考模型)參考模型第一層,即“物理層”。集線器與網絡卡、網線等傳輸介質一樣,屬於區域網中的基礎裝置,採用CSMA/CD(一種檢測協議)介質訪問控制機制.
2.1集線器原理
基本上不具有類似於交換機的"智慧記憶"能力和"學習"能力。它也不具備交換機所具有的MAC地址表,所以它傳送資料時都是沒有針對性的,而是採用廣播方式傳送。也就是說當它要向某節點發送資料時,不是直接把資料傳送到目的節點,而是把資料包傳送到與集線器相連的所有節點。
3.網橋
現在,我們有了集線器,但是這帶來一個問題,多個集線器連線在一起,但是由於是廣播通訊,互相沖突,所以我們現在需要一種裝置,能夠有效隔離子網。讓廣播通訊僅僅在於一個區域性:網橋。
網橋也是資料鏈路層裝置,把一個區域網一分為2,中間用網橋連線,這樣A發給BCD的資料就不會再廣播到EFGH了。
3.1網橋的工作原理
上圖是用一個網橋連線的兩個網路,網橋的A埠連線A子網,B埠連線B子網,為什麼網橋知道哪些資料包該轉發,哪些包不該轉發呢?那是因為它有兩個表A和B,當有資料包進入埠A時,網橋從資料包中提取出源MAC地址和目的MAC地址。
一開始的時候,表A和表B都是空的,沒有一條記錄,這時,網橋會把資料包轉發給B網路,並且在表A中增加一條MAC地址(把源MAC地址記錄表中),說明這個MAC地址的機器是A子網的,同理,當B子網傳送資料包到B埠時,網橋也會記錄源MAC地址到B表。
當網橋工作一段時候後,表A基本上記錄了A子網所有的機器的MAC地址,表B同理,當再有一個數據包從A子網傳送給網橋時,網橋會先看看資料包的目的MAC地址是屬於A子網還是B子網的,如果從A表中找到對應則,拋棄該包(因為該包在HUB中已經被轉發),如果不是,則轉發給B子網,然後檢查源MAC地址,是否在表中已經存在,如果不存在,在表A中增加一條記錄。
噢,或許你現在會問了,為什麼需要兩張表呢,一張表不行麼??嗯~剛才把表一分為二是為了便於理解,實際上,真正的網橋裡面存的應該是一張表(當然有可能為了提速,或者其他原因,它也可能把資訊存為多張表,這個得看它怎麼實現了~),如果是一張資訊表,表裡記錄的應該是:MAC-PortNum,所以它是具有學習功能的。
網橋相當於二層交換機它可以在Layer2“橋接”兩個網段。它比HUB強一些的是,它分離了兩個網段,不會把一個網段內部的packet廣播到另一個網段。因此,兩個網段之間不會產生不必要的訊號衝突碰撞。舉例:AB在橋東,CD在橋西,AB對話時,CD也可以對話。AC對話時,BD大致要避讓。
4.交換機
4.1交換機的產生:
注意到,網橋只有兩個埠。隨著網路裝置的發展,逐漸產生了多個埠的“網橋”,但是由於網橋是資料鏈路層的廣播通訊,A和G通訊的時候,B和F就沒法通訊——一個橋上多個通訊將產生衝突。為了能夠實現多對多的通訊,於是產生了交換機。
在交換機中,A和B通訊的同時,C和D也可以通訊——因為它們分別佔用不同的埠。這樣,交換機漸漸替代了HUB,成為組建區域網的重要裝置。
4.2交換機的原理
交換機工作於OSI參考模型的第二層,即資料鏈路層。交換機內部的CPU會在每個埠成功連線時,通過ARP協議學習它的MAC地址,儲存成一張ARP表。在今後的通訊中,發往該MAC地址的資料包將僅送往其對應的埠,而不是所有的埠。因此,交換機可用於劃分資料鏈路層廣播,即衝突域;但它不能劃分網路層廣播,即廣播域。
也就是說,交換機也有一張表,記錄的是port-mac。
4.3交換機的分類:
按照傳輸資料包的層次,交換機可以分為一、二.....七層交換機。
5.路由器
我們知道,交換機工作在資料鏈路層次。如果現在A節點向未知節點B通訊,如果A和B之間通過N(很大)個交換機才連線在一起,那麼只用交換機來實現,那麼A將資料包傳送之後,在到達所有其他埠,如果其他埠不能識別,那麼都將進行轉發,這樣,最終也可以到達B,但是勢必產生很多的冗餘資料通訊。於是,我們有了路由器。
5.1路由器的原理
路由器工作在網路層,可以根據IP來選擇對應的埠,當然,這裡選擇的依據就是路由表。
6.閘道器:IP閘道器=路由器
6.1產生背景與定義
Gateway就是一扇大門(gate),門裡門外是兩個不同的網路,有不同的網路協議。
而從gateway的定義,我們可以推論,路由器可以看作一種gateway的特例,門裡門外是相同的兩個網路(都講IP這個語言協議)。所以說gateway比router複雜得多。
gateway大概要支援訊號轉換,協議轉換,阻抗匹配,波特率轉換,故障隔離等功能來實現系統間的互操作性。它還可能需要在兩個系統間建立相互可接受的管理程式。
在現代網路術語中,閘道器(gateway)與路由器(router)的定義不同。閘道器(gateway)能在不同協議間移動資料,而路由器(router)是在不同網路間移動資料,相當於傳統所說的IP閘道器(IP gateway)。
閘道器顧名思義就是連線兩個網路的裝置,對於語音閘道器來說,他可以連線PSTN網路和乙太網,這就相當於VOIP,把不同電話中的模擬訊號通過閘道器而轉換成數字訊號,而且加入協議再去傳輸。在到了接收端的時候再通過閘道器還原成模擬的電話訊號,最後才能在電話機上聽到。
對於乙太網中的閘道器只能轉發三層以上資料包,這一點和路由是一樣的。而不同的是閘道器中並沒有路由表,他只能按照預先設定的不同網段來進行轉發。閘道器最重要的一點就是埠對映,子網內使用者在外網看來只是外網的IP地址對應著不同的埠,這樣看來就會保護子網內的使用者