網絡基礎知識:集線器、網橋和交換機
集線器
集線器(HUB),它是工作在物理層的設備,由于它只是工作在物理層的設備,所以它并不關心也不可能關心OSI上面幾層所涉及的,它的工作機制流程是:從一個端口接收到數據包時,會在其他端口把這個包轉發一次,因為它不知道也不可能知道這個包是發給誰的(物理層設備只關心電壓這些物理概念),它也只能對所有人廣播(這里和下文提到的廣播該詞的意思和ARP請求時的廣播有些不同。
這里的廣播意思是:使用物理層轉發設備,如HUB,導致的廣播,可以說這個廣播是被逼的,因為設備的問題!是設備轉發包引起的廣播!而ARP請求的廣播是自己要求的,主動的,因為ARP請求包的目標地址IP是255.255.255.255,但ARP請求的廣播涉及IP層的知識,不在這篇文章討論的范圍,所以這里提到的廣播,除非特別說明,否則都是第一個意思,也就說是"因設備轉發數據包引起的廣播" ),讓他們自己處理了。
這樣一來會有不少問題,你發的數據其他人都收到了,私隱這總東西是不存在的!別入可以隨便監聽你信息!所以會話劫持在那個年代相當容易(記得俺第一次接觸會話劫持這個概念的時候還是高2,那是2001~2002,呵,那時候集線器還是比較普遍的)。
另外一個比較嚴重的問題是,如果一個大型的局域網,比如有500臺機器,全部用HUB連接的,后果會怎么樣呢??相當慢,網絡的效率極差!為什么?如果500臺機器都發一個包,那就是說每臺機器,都需要接收差不多499個無用包...并且如果是需要回應的話......無用的數據包會充斥著整個的局域網,這就是傳說中的廣播風暴!
為了減少廣播風暴,網橋產生了(注意這里用的時候“減少”,不是“杜絕”,僅僅是減少!如果僅僅用網橋說能杜絕廣播風暴,個人覺得還是不太準確,后來交換機的出現才可以說是完全杜絕了廣播風暴的發生)!
在介紹網橋之前,還想簡單介紹另一個物理層的設備:“中繼器”,這種設備的作用是把物理層傳輸的信號放大,由于長距離的傳輸,信號會有一定的損耗的,這種設備主要解決的就是這個問題。它和HUB的區別是:HUB主要是為了在物理層上轉發數據的,所以它不關心電壓值的大小,也不會放大物理信號;而中繼器它的作用就是為了放大信號用的,SO.....
網橋:
網橋又稱橋接器,英文名Network Bridge,數據鏈路層設備。它也是轉發數據包的設備,但和HUB不一樣的是,它工作在數據鏈路層,HUB只能看懂物理層上的東西(比如一段物理信號),網橋卻能看懂一些幀的信息(在鏈路層上,把上面傳下來的數據封裝后,封裝好了的數據就是幀,但這里我用“數據包”這樣的泛指去代替“幀”這個專業術語)。
在以太網構造的局域網上,最終的尋址是以數據鏈路層的MAC地址作為標識的(就是用MAC地址可以在局域網上找到一臺唯一的機器),網橋能從發來的數據包中提取MAC信息,并且根據MAC信息對數據包進行有目的的轉發,而不采用廣播的方式,這樣就能減少廣播風暴的出現,提升整個網絡的效率,在詳細說網橋這東西之前,我想先介紹一下交換機。
交換機:
這是大家最熟悉的設備之一
交換機Switch,數據鏈路層設備,作用是轉發數據包。和網橋一樣它也是通過識別幀中的MAC地址,然后對特定的端口進行轉發的。交換機和網橋之間的區別請閱讀:
【編輯推薦】