以太網交換機有很多值得學習的地方,這里我們主要介紹以太網交換機入門基礎知識。什么是交換機?交換 switching 是按照通信兩端傳輸信息的需要,用人工或設備自動完成的方法,把要傳輸的信息送到符合要求的相應路由上的技術統(tǒng)稱。廣義的以太網交換機switch就是一種在通信系統(tǒng)中完成信息交換功能的設備。
交換和以太網交換機最早起源于電話通訊系統(tǒng)(PSTN),我們現在還能在老電影中看到這樣的場面:首長(主叫用戶)拿起話筒來一陣猛搖,局端是一排插滿線頭的機器,戴著耳麥的話務小姐接到連接要求后,把線頭插在相應的出口,為兩個用戶端建立起連接,直到通話結束。這個過程就是通過人工方式建立起來的交換。當然現在我們早已普及了以太網交換機,交換的過程都是自動完成。
在計算機網絡系統(tǒng)中,交換概念的提出是對于共享工作模式的改進。我們以前介紹過的HUB 集線器就是一種共享設備,HUB本身不能識別目的地址,當同一局域網內的A主機給B主機傳輸數據時,數據包在以HUB為架構的網絡上是以廣播方式傳輸的,由每一臺終端通過驗證數據包頭的地址信息來確定是否接收。也就是說,在這種工作方式下,同一時刻網絡上只能傳輸一組數據幀的通訊,如果發(fā)生碰撞還得重試。這種方式就是共享網絡帶寬。
交換機擁有一條很高帶寬的背部總線和內部交換矩陣。以太網交換機的所有的端口都掛接在這條背部總線上,控制電路收到數據包以后,處理端口會查找內存中的地址對照表以確定目的MAC(網卡的硬件地址)的NIC(網卡)掛接在哪個端口上,通過內部交換矩陣迅速將數據包傳送到目的端口,目的MAC若不存在才廣播到所有的端口,接收端口回應后以太網交換機會“學習”新的地址,并把它添加入內部地址表中。使用以太網交換機也可以把網絡“分段”,通過對照地址表,交換機只允許必要的網絡流量通過交換機。通過交換機的過濾和轉發(fā),可以有效的隔離廣播風暴,減少誤包和錯包的出現,避免共享沖突。
交換機在同一時刻可進行多個端口對之間的數據傳輸。每一端口都可視為獨立的網段,連接在其上的網絡設備獨自享有全部的帶寬,無須同其他設備競爭使用。當節(jié)點A向節(jié)點D發(fā)送數據時,節(jié)點B可同時向節(jié)點C發(fā)送數據,而且這兩個傳輸都享有網絡的全部帶寬,都有著自己的虛擬連接。假使這里使用的是10Mbps的以太網交換機,那么該以太網交換機這時的總流通量就等于2×10Mbps=20Mbps,而使用10Mbps的共享式HUB時,一個HUB的總流通量也不會超出10Mbps。
總之,交換機是一種基于MAC地址識別,能完成封裝轉發(fā)數據包功能的網絡設備。以太網交換機可以“學習”MAC地址,并把其存放在內部地址表中,通過在數據幀的始發(fā)者和目標接收者之間建立臨時的交換路徑,使數據幀直接由源地址到達目的地址。
交換機的應用
作為局域網的主要連接設備,以太網交換機成為應用普及最快的網絡設備之一。隨著交換技術的不斷發(fā)展,以太網交換機的價格急劇下降,交換到桌面已是大勢所趨。如果你的以太網絡上擁有大量的用戶、繁忙的應用程序和各式各樣的服務器,而且你還未對網絡結構做出任何調整,那么整個網絡的性能可能會非常低。解決方法之一是在以太網上添加一個10/100Mbps的交換機,它不僅可以處理10Mbps的常規(guī)以太網數據流,而且還可以支持100Mbps的快速以太網連接。
如果網絡的利用率超過了40%,并且碰撞率大于10%,以太網交換機可以幫你解決一點問題。帶有100Mbps快速以太網和10Mbps以太網端口的交換機可以全雙工方式運行,可以建立起專用的20Mbps到200Mbps連接。
不僅不同網絡環(huán)境下交換機的作用各不相同,在同一網絡環(huán)境下添加新的以太網交換機和增加現有交換機的交換端口對網絡的影響也不盡相同。充分了解和掌握網絡的流量模式是能否發(fā)揮交換機作用的一個非常重要的因素。因為使用交換機的目的就是盡可能的減少和過濾網絡中的數據流量,所以如果網絡中的某臺交換機由于安裝位置設置不當,幾乎需要轉發(fā)接收到的所有數據包的話,交換機就無法發(fā)揮其優(yōu)化網絡性能的作用,反而降低了數據的傳輸速度,增加了網絡延遲。
除安裝位置之外,如果在那些負載較小,信息量較低的網絡中也盲目添加交換機的話,同樣也可能起到負面影響。受數據包的處理時間、交換機的緩沖區(qū)大小以及需要重新生成新數據包等因素的影響,在這種情況下使用簡單的HUB要比交換機更為理想。因此,我們不能一概認為交換機就比HUB有優(yōu)勢,尤其當用戶的網絡并不擁擠,尚有很大的可利用空間時,使用HUB更能夠充分利用網絡的現有資源。
交換機的三種交換方式
1.直通式(Cut Through)
直通方式的以太網交換機可以理解為在各端口間是縱橫交叉的線路矩陣電話交換機。它在輸入端口檢測到一個數據包時,檢查該包的包頭,獲取包的目的地址,啟動內部的動態(tài)查找表轉換成相應的輸出端口,在輸入與輸出交叉處接通,把數據包直通到相應的端口,實現交換功能。由于不需要存儲,延遲非常小、交換非常快,這是它的優(yōu)點。它的缺點是,因為數據包內容并沒有被以太網交換機保存下來,所以無法檢查所傳送的數據包是否有誤,不能提供錯誤檢測能力。由于沒有緩存,不能將具有不同速率的輸入/輸出端口直接接通,而且容易丟包。
2.存儲轉發(fā)(Store & Forward)
存儲轉發(fā)方式是計算機網絡領域應用最為廣泛的方式。它把輸入端口的數據包先存儲起來,然后進行CRC(循環(huán)冗余碼校驗)檢查,在對錯誤包處理后才取出數據包的目的地址,通過查找表轉換成輸出端口送出包。正因如此,存儲轉發(fā)方式在數據處理時延時大,這是它的不足,但是它可以對進入以太網交換機的數據包進行錯誤檢測,有效地改善網絡性能。尤其重要的是它可以支持不同速度的端口間的轉換,保持高速端口與低速端口間的協同工作。
3.碎片隔離(Fragment Free)
這是介于前兩者之間的一種解決方案。它檢查數據包的長度是否夠64個字節(jié),如果小于64字節(jié),說明是假包,則丟棄該包;如果大于64字節(jié),則發(fā)送該包。這種方式也不提供數據校驗。它的數據處理速度比存儲轉發(fā)方式快,但比直通式慢。