參考資料:
do-you-know-the-differences-between-hubs-switches-and-routers
network-devices-hub-repeater-bridge-switch-router-gateways
博客文章html
Repeater 中繼器
中繼器在物理層運行, 2 端口設備。放大信號,從而延長信號在同一網絡上傳輸的長度。緩存
Hub 集線器
集線器在物理層運行,基本上是一個多端口中繼器。集線器鏈接來自不一樣分支的多條電線,例如鏈接星形拓撲中的不一樣節點。集線器不能過濾數據,所以數據包將發送到全部鏈接的設備(廣播)。集線器都有碰撞檢測功能,每次只容許一個設備發送廣播信號,效率低。
服務器
bridge 網橋
網橋在數據鏈路層運行,2 端口設備。跟集線器相比,網橋能夠經過讀取源和目的地的 MAC 地址來過濾內容,從而隔離網絡。網絡
網橋爲每一個端口維護了一張 MAC 地址表,表中包含全部鏈接到這個端口的設備的 MAC 地址。編碼
下圖中,LAN1 這個局域網中的主機發送數據後,LAN1 中的集線器會向全部鏈接到這個集線器的設備廣播這個數據,包括網橋。當網橋的左側端口收到數據後:url
- 提取數據中的目的地的 MAC 地址
- 若是這個地址在左側端口的 MAC 地址表中,則丟棄數據
- 若是這個地址在右側端口的 MAC 地址表中,則將數據轉發到右側的集線器,由其廣播給全部主機
- 提取數據中的源 MAC 地址
- 若是左側端口的 MAC 地址表中包含這個 MAC 地址,則忽略。不然,將這個地址寫入左側端口的 MAC 地址表中。
網橋剛開機時,每一個端口的 MAC 地址表都是空的,這時收到數據時會轉發到另外一個端口,同時把數據中的 MAC 地址記錄到收到數據的端口對於的 MAC 地址表。工做一段時候後,兩個端口的 MAC 地址表就會創建完成。當再有數據從 LAN1 發送給網橋時,網橋會先看看數據包的目的 MAC 地址是屬於 LAN1 仍是 LAN2,從而決定數據是否轉發。同時再檢查數據的源 MAC 地址,若是在 LAN1 的地址表中不存在這條記錄,則寫入。spa
網橋將一個局域網分紅兩個,能夠減小碰撞。.net
switch 交換機
交換機在數據鏈路層運行,是一個多端口網橋。代理
交換機中維護一張 Port-MAC 映射表,記錄每一個端口上的主機的 MAC 地址。router
跟集線器相比,交換機記錄每一個端口上主機的 MAC 地址,每次轉發數據時都只會發送到指定的端口,而不是廣播到全部主機,效率高。
router 路由器
路由器在網絡層運行,相似交換機,可是根據 IP 地址發送數據包。家庭路由器一般將局域網和廣域網鏈接在一塊兒。路由器中有一個動態更新的路由表,以此做爲決策依據。
如今的路由器一般集成了多個功能,包括有 4 個端口的集線器、NAT(Network Address Translator 網絡地址轉換)、DHCP(Dynamic Host Configuration Protocol 動態主機配置協議)、DNS(Domain Name Service 域名服務)代理服務器和硬件防火牆。
路由器有一個 WAN 端口,能夠鏈接到電信或聯通的網絡。經過路由器內部的集線器能夠方便的建立 LAN。藉助 DHCP 和 NAT,這個 LAN 中的全部設備均可以使用惟一的 IP 地址訪問網絡。
gateway 網關
網關是將兩個網絡鏈接在一塊兒的通道,能夠在不一樣的網絡協議下工做。網關也稱爲協議轉換器,能夠在任何網絡層運行。網關一般比交換機或路由器更復雜。
路由器能夠在相同網絡間移動數據,至關於特殊的網關(IP 網關)。
網卡
網卡在數據鏈路層工做,是鏈接計算機和傳輸介質的接口,實現與傳輸介質的物理鏈接和電信號匹配,同時還負責幀的發送與接收、幀的封裝與拆封、介質訪問控制、數據的編碼與解碼以及數據緩存的功能等。