source: https://www.tianmaying.com/tutorial/NetWorkInstrument
因爲要做硬件防火牆,而本科學習的《計算機網絡 自頂向下》基本上沒有涉及到硬件部分,只是捎帶講了一下,每次提到硬件名詞的時候,雖然大概明白定義和功能,但是實物、網絡拓撲圖、工作原理並不瞭解。所以本文將計算機網絡中的功能型硬件都進行解釋說明。
1 集線器
1.1 功能概述
集線器的主要功能是對接收到的信號進行再生整形放大,以擴大網絡的傳輸距離,同時把所有節點集中在以它爲中心的節點上。它工作於OSI參考模型第一層,即“物理層”。集線器與網卡、網線等傳輸介質一樣,屬於局域網中的基礎設備,採用CSMA/CD(一種檢測協議)訪問方式。
1.2 工作原理
HUB 集線器就是一種共享設備,HUB本身不能識別目的地址,當同一局域網內的A主機給B主機傳輸數據時,數據包在以HUB爲架構的網絡上是以廣播方式傳輸的,由每一臺終端通過驗證數據包頭的地址信息來確定是否接收。也就是說,在這種工作方式下,同一時刻網絡上只能傳輸一組數據幀的通訊,如果發生碰撞還得重試。這種方式就是共享網絡帶寬。
集線器屬於純硬件網絡底層設備,基本上不具有類似於交換機的"智能記憶"能力和"學習"能力。它也不具備交換機所具有的MAC地址表,所以它發送數據時都是沒有針對性的,而是採用廣播方式發送。也就是說當它要向某節點發送數據時,不是直接把數據發送到目的節點,而是把數據包發送到與集線器相連的所有節點.集線器(HUB)屬於數據通信系統中的基礎設備,它和雙絞線等傳輸介質一樣,是一種不需任何軟件支持或只需很少管理軟件管理的硬件設備。它被廣泛應用到各種場合。
1.3 優缺點
優點包括:
- 集線器的重要功能就在於連接多個不同的局域網,將這些集中到單一的設備商來,並且讓這個設備來負責聯通這些鏈接的位置。集線器是一個集中式、廣播式的中繼設備,能夠接受兩端不同的信號,並且將信號複製、放大後傳送到相對的另一端
- 集線器價格便宜,組網靈活。集線器使用星型佈線,如果一個工作站出現問題,不會影響整個網絡的正常運行。
缺點包括:
- 集線器不具備交換功能
- 一般集線器對數據包的處理大部分都是簡單地將數據包複製並放大後,送到目前連接該集線器的各縣設備商,因此數據包充斥在整個連通的局域網中,同時僅有一組數據交換的信號,所以在數據包傳輸量較大的居於網中,集線器將無法有效地傳輸數據,因爲可能同時傳送多份數據,從而造成數據包的衝突問題問題增加。
2 網橋(Bridge)
2.1 功能概述
網橋(Bridge)是早期的兩端口數據鏈路層網絡設備,用來連接不同網段的計算機網絡設備同時它又可隔離衝突域,因爲它的兩個端口不是共享一條背板總線(分別有一條獨立的交換信道),比當時的集線器(Hub)性能更好(集線器上各端口都是共享同一條背板總線的)。後來,網橋被具有更多端口、同時也可隔離衝突域的交換機(Switch)所取代。
網橋將兩個相似的網絡連接起來,並對網絡數據的流通進行管理。它工作於數據鏈路層,不但能擴展網絡的距離或範圍,而且可提高網絡的性能、可靠性和安全性。網絡1 和網絡2 通過網橋連接後,網橋接收網絡1 發送的數據包,檢查數據包中的地址,如果地址屬於網絡1 ,它就將其放棄,相反,如果是網絡2 的地址,它就繼續發送給網絡2.這樣可利用網橋隔離信息,將同一個網絡號劃分成多個網段(屬於同一個網絡號),隔離出安全網段,防止其他網段內的用戶非法訪問。由於網絡的分段,各網段相對獨立(屬於同一個網絡號),一個網段的故障不會影響到另一個網段的運行。
2.2 工作原理
也有人把“網橋”比喻成一個聰明的中繼器(Repeater)。因爲中繼器只是對所接收的信號進行放大,然後直接發送到另一個端口連接的電纜上,主要用於擴展網絡的物理連接範圍;而網橋除了可以擴展網絡的物理連接範圍外,還可以對MAC 地址進行分區,隔離不同物理網段之間的碰撞(也就是隔離“衝突域”)。集線器和中繼器都是物理層設備,而網橋屬於二層設備(數據鏈路層)。
上圖是用一個網橋連接的兩個網絡,網橋的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表中找到對應則,拋棄該包,如果不是,則轉發給B子網,然後檢查源MAC地址,是否在表中已經存在,如果不存在,在表A中增加一條記錄。
2.3 優缺點
網橋優點:
- 過濾通信量。網橋可以使用局域網的一個網段上各工作站之間的信息量侷限在本網段的範圍內,而不會經過網橋溜到其他網段去。
- 擴大了物理範圍,也增加了整個局域網上的工作站的最大數目。
- 可使用不同的物理層,可互連不同的局域網。
- 提高了可靠性。如果把較大的局域網分割成若干較小的局域網,並且每個小的局域網內部的信息量明顯地高於網間的信息量,那麼整個互連網絡的性能就變得更好。
網橋缺點:
- 由於網橋對接收的幀要先存儲和查找站表,然後轉發,這就增加了時延。
- 在MAC子層並沒有流量控制功能。當網絡上負荷很重時,可能因網橋緩衝區的存儲空間不夠而發生溢出,以致產生幀丟失的現象。
- 具有不同MAC子層的網段橋接再一起時,網橋在轉發一個幀之前,必須修改幀的某些字段的內容,以適合另一個MAC子層的要求,增加時延。
- 網橋只適合於用戶數不太多(不超過幾百個)和信息量不太大的局域網,否則有時會產生較大的廣播風暴
3 交換機
3.1 功能概述
交換機(Switch)可以說同時是集線器和網橋的升級換代產品,因爲交換機具有集線器一樣的集中連接功能,同時它又具有網橋的數據交換功能。所以可以這樣說,交換機是帶有交換功能的集線器,或者說交換機是多端口的網橋。外形上,集線器與交換機產品沒什麼太大區別。
3.2 工作原理
工作原理與網橋類似,總結如下:
- 當交換機從某個端口收到一個數據幀後,先讀取幀頭部的源MAC 地址,並與自己緩存中的映射表(CAM 表)進行比較,如果沒有找到,則在CAM 表中添加一個該源MAC 地址與發送該幀的源端口映射表項。這就是交換機的MAC 地址自動學習功能。
- 如果在CAM 表項查到了幀中源MAC 地址,則繼續查看是否有幀中目的MAC 地址所對應的映射表項。如果有,則直接把該幀轉發到目的MAC 地址節點所連接的交換機端口,然後由該端口發送到目的主機。
- 如果在交換機CAM 表中沒有找到幀中目的MAC 地址所對應的表項,則把該數據幀向除源端口外的其他所有端口上進行泛洪。
-
當MAC 地址與幀中目的MAC 地致的主機接收了該數據幀後就會向源主機產生一個應答幀,交換機獲取該應答幀後從其中的源MAC 地址中獲取了對應的MAC 地址和所連接端口的映射關係,並添加到CAM 表中。這樣下次再有MAC 地址爲這個MAC 地址的幀發送時交換機就可以直接從CAM 表中找到對應的轉發端口,直接轉發,不用再泛洪了。
3.3 交換機 VS 網橋
3.3.1 具有多個交換端口
網橋通常只是兩個交換端口,其設計目的主要就是用來連接兩個距離超過單段網線傳輸限制的物理網段(當然也可以用來直接連接兩臺主機),所以它的應用受到比較多的限制。再加上當時用於主機和其他網絡設備集中連接的設備仍是傳輸效率和信道利用率都非常低下的集線器,根本不適應於計算機網絡的發展。有了交換機後,一臺交換機可以有多個端口,而且與網橋一樣,不僅每個端口可以連接一個不同的物理網段(交換機上一個端口對應一個物理網段),還可以有大量的端口來集中連接主機,這時交換機就可以同時擔當集線器和網橋的雙重角色,而且在使用性能和擴展性能、交換性能等方面都有較大提高,大大促進了計算機網絡的發展。
3.3.2 數據轉發效率更高
在網橋時代,集中連接主機的仍是集線器,而我們知道集線器發送數據是採用廣播方式,所以信道中的無效載荷比例相當高,造成數據轉發率和信道利用率都非常低。而有了交換機後,因爲大多數主機都是直接連接在交換機端口上,即使不是,也主要是連接在其他交換機端口,所以數據的轉發基本上都是通過提取幀中的MAC 地址直接發送到目的主機上的,而不是通過廣播方式(僅在未知目的MAC 地址時採用廣播),數據轉發效率和信道利用率都大幅提高。
3.3.3 更強的MAC地址自動學習能力
們知道,網橋通常只有兩個端口,僅可以連接兩個由集線器集中連接的物理網段,所以它的MAC 地址自動學習功能僅限於它的兩個端口與對應的物理網段的映射。這樣就造成了,一個網橋端口要與多個源主機MAC 地址之間的映射,也就是一對多映射關係。而交換機上的端口多數是直接連接主機的,所以在映射表中基本上都是一個源主機MAC 地址與一個交換端口間的一對一映射。一對一的映射查找起來明顯比一對多的映射效率要高,所以交換機在數據轉發效率要高於網橋。另外,交換機的緩存通常比網橋的要大,所以交換機中可以保存的MAC 地址與端口映射表較多,更適用於較大網絡。
3.4 交換機 VS 集線器
3.4.1 工作層次不同
集線器工作在第一層(物理層),而交換機至少是工作在第二層,更高級的交換機可以工作在第三層(網絡層)、第四層(傳輸層)和第七層(應用層),對應也就有三層交換機、四層交換機、七層交換機等之說了。一般我們說的就是二層交換機。
3.4.2 數據傳輸方式不同
集線器的數據傳輸方式是多次複製方式的廣播傳輸,而交換機的數據傳輸是有目的的,數據只對目的節點發送,只是在自己的MAC 地址表中找不到的情況下第一次使用以FF-FFFF-FF-FF-FF 作爲MAC 地址的“泛洪”廣播方式傳輸。所以,交換機在數據傳輸效率和信道利用率方面要遠高於集線器,集線器更容易產生“廣播風暴”。
隨交換機產品價格的日益下降,集線器市場日益痿縮,不過,在特定的場合,集線器以其低延遲的特點可以用更低的投入帶來更高的效率。交換機不可能完全代替集線器。
4 路由器(Router)
4.1 功能概述
路由器(Router)是用於連接多個邏輯上分開的網絡,所謂邏輯網絡是代表一個單獨的網絡或者一個子網。當數據從一個子網傳輸到另一個子網時,可通過路由器來完成。因此,路由器具有判斷網絡地址和選擇路徑的功能,它能在多網絡互聯環境中,建立靈活的連接,可用完全不同的數據分組和介質訪問方法連接各種子網,路由器只接受源站或其他路由器的信息,屬網絡層的一種互聯設備。它不關心各子網使用的硬件設備,但要求運行與網絡層協議相一致的軟件。
路由器的主要工作就是爲經過路由器的每個數據幀尋找一條最佳傳輸路徑,並將該數據有效地傳送到目的站點。 路由器的基本功能是,把數據(IP 報文)傳送到正確的網絡,細分則包括:
- IP 數據報的轉發,包括數據報的尋徑和傳送;
- 子網隔離,抑制廣播風暴;
- 維護路由表,並與其它路由器交換路由信息,這是 IP 報文轉發的基礎;
- IP 數據報的差錯處理及簡單的擁塞控制;
- 實現對 IP 數據報的過濾和記帳。
路由器構成了 Internet 的骨架。它的處理速度是網絡通信的主要瓶頸之一,它的可靠性則直接影響着網絡互連的質量。因此Internet 研究領域中,路由器技術始終處於核心地位。
4.2 工作原理
這個用一圖流表達之
工作站A需要向工作站B傳送信息(並假定工作站B的IP地址爲120.0.5),它們之間需要通過多個路由器的接力傳遞,路由器的分佈如圖2所示。 工作過程如下所示:
- 工作站A將工作站B的地址120.0.5連同數據信息以數據幀的形式發送給路由器1。
- 路由器1收到工作站A的數據幀後,先從報頭中取出地址120.0.5,並根據路徑表計算出發往工作站B的最佳路徑:R1-R2-R5-B;並將數據幀發往路由器2。
- 路由器2重複路由器1的工作,並將數據幀轉發給路由器5。
- 路由器5同樣取出目的地址,發現120.0.5就在該路由器所連接的網段上,於是將該數據幀直接交給工作站B。
- 工作站B收到工作站A的數據幀,一次通信過程宣告結束。
事實上,路由器除了這一功能外,還具有網絡流量控制功能。有的路由器僅支持單一協議,但大部分路由器可以支持多種協議的傳輸,即多協議路由器。由於每一種協議都有自己的規則,要在一個路由器中完成多種協議的算法,勢必會降低路由器的性能。因此,我們以爲,支持多協議的路由器性能相對較低。用戶購買路由器時,需要根據自己的實際情況選擇自己需要的網絡協議的路由器。
近年來出現了交換路由器產品,從本質上來說它不是什麼新技術,而是爲了提高通信能力,把交換機的原理組合到路由器中,使數據傳輸能力更快、更好。
4.3 優缺點
優點包括
- 適用於大規模的網絡;
- 複雜的網絡拓撲結構,負載共享和最優路徑;
- 能更好地處理多媒體;
- 安全性高;
- 隔離不需要的通信量;
- 節省局域網的頻寬;
- 減少主機負擔。
缺點包括:
- 它不支持非路由協議;
- 安裝複雜;
- 價格高。
4.3 路由器 VS 交換機
4.3.1 是否分割廣播域
傳統的交換機只能分割衝突域,不能分割廣播域;而路由器可以分割廣播域。由交換機連接的網段仍屬於同一個廣播域,廣播數據包會在交換機連接的所有網段上傳播,在某些情況下會導致通信擁擠和安全漏洞。連接到路由器上的網段會被分配成不同的廣播域,廣播數據不會穿過路由器。雖然第三層以上交換機具有VLAN功能,也可以分割廣播域,但是各子廣播域之間是不能通信交流的,它們之間的交流仍然需要路由器。
4.3.2 是否具備防火牆服務
路由器(路由器的安裝和配置)提供了防火牆的服務,它僅僅轉發特定地址的數據包,不傳送不支持路由協議的數據包傳送和未知目標網絡數據包的傳送,從而可以防止廣播風暴。
4.3.3 工作層次不同
最初的的交換機是工作在OSI/RM開放體系結構的數據鏈路層,也就是第二層,而路由器一開始就設計工作在OSI模型的網絡層。由於交換機工作在OSI的第二層(數據鏈路層),所以它的工作原理比較簡單,而路由器工作在OSI的第三層(網絡層),可以得到更多的協議信息,路由器可以做出更加智能的轉發決策。
4.3.4 工作原理不同
交換機是利用物理地址或者說MAC地址來確定轉發數據的目的地址。而路由器則是利用不同網絡的ID號(即IP地址)來確定數據轉發的地址。IP地址是在軟件中實現的,描述的是設備所在的網絡,有時這些第三層的地址也稱爲協議地址或者網絡地址。MAC地址通常是硬件自帶的,由網卡生產商來分配的,而且已經固化到了網卡中去,一般來說是不可更改的。而IP地址則通常由網絡管理員或系統自動分配。
5 網關(Gateway)
5.1 功能概述
網關(Gateway)又稱網間連接器、協議轉換器。網關在網絡層以上實現網絡互連,是最複雜的網絡互連設備,僅用於兩個高層協議不同的網絡互連,網關既可以用於廣域網互連,也可以用於局域網互連。
網關是用於連接網絡層之上執行不同協議的子網,組成異構的互連網,網關能實現異構設備之間的通信,對不同的傳輸層、會話層、表示層、應用層協議進行翻譯和變換。網關具有對不兼容的高層協議進行轉換的功能。當連接兩個完全不同結構的網絡時,必須使用網關。網關工作在OSI模型的最高層應用層。網關的主要功能:把一種協議變成另一種協議,把一種數據格式變成另一種數據格式,把一種速率變成另一種速率,以求兩者的統一。
從根本上說,網關不能完全歸爲一種網絡硬件。用概括性的術語來講,它們應該是能夠連接不同網絡的軟件和硬件的結合產品。特別地,它們可以使用不同的格式、通信協議或結構連接起兩個系統。網關實際上通過重新封裝信息以使它們能被另一個系統讀取。爲了完成這項任務,網關必須能運行在O S I 模型的幾個層上。網關必須同應用通信,建立和管理會話,傳輸已經編碼的數據,並解析邏輯和物理地址數據。
‘網關’一個大概念,不具體特指一類產品,只要連接兩個不同的網絡的設備都可以叫網關;而‘路由器’麼一般特指能夠實現路由尋找和轉發的特定類產品,路由器很顯然能夠實現網關的功能。當然電信行業說的‘路由器’又和家用的‘路由器’兩個概念,這個暫且不表。
5.2 默認網關是什麼?
默認網關是什麼,默認網關事實上不是一個產品而是一個網絡層的概念,PC本身不具備路由尋址能力,所以PC要把所有的IP包發送到一個默認的中轉地址上面進行轉發,也就是默認網關。這個網關可以在路由器上,可以在三層交換機上,可以在防火牆上,可以在服務器上,所以和物理的設備無關。
5.2 網關 VS 路由器
網關和路由器最大的區別是是否連接相似的網絡。如果連接相似的網絡,則稱爲路由器。而連接不相似的網絡,稱爲網關。相似的網絡和不相似的網絡有兩種不同的含義。邏輯層面:相似的網絡:如果都是互聯網上的兩個網絡,我們稱爲相似的網絡。不相似的網絡:如果一個是私網,一個是公網。我們稱爲不相似的網絡。物理層面:相似的網絡:都是以太網或者同一種介質的網絡。不相似的網絡:一邊是以太,一邊是SDH或者ATM等。