接下來說的是二層,三層,四層交換機的區別前端
二層技術(最簡單的switch的功能)算法
工做流程以下:服務器
(1) 當交換機從某個端口收到一個數據包,它先讀取包頭中的源MAC地址,這樣它就知道源MAC地址的機器是連在哪一個端口上的;> socket
(2) 再去讀取包頭中的目的MAC地址,並在地址表中查找相應的端口;ide
(3) 如表中有與這目的MAC地址對應的端口,把數據包直接複製到這端口上;學習
(4) 如表中找不到相應的端口則把數據包廣播到全部端口上,當目的機器對源機器迴應時,交換機又能夠學習一目的MAC地址與哪一個端口對應,在下次傳送數據時就再也不須要對全部端口進行廣播了。不斷的循環這個過程,對於全網的MAC地址信息均可以學習到,二層交換機就是這樣創建和維護它本身的地址表。路由
三層交換技術(switch+路由器)工作流
若是在同一個網段,工做流程同上若是A和B不在同一個網段就須要使用路由的轉發功能。
第四層交換(這個之前真的沒看過,加入能夠解析端口的信息)
這個技術針對的是OSI模型的第四層是傳輸層。在第四層中,TCP和UDP標題包含端口號(portnumber),它們能夠惟一區分每一個數據包
包含哪些應用協議(例如HTTP、FTP等)。端點系統利用這種信息來區分包中的數據,尤爲是端口號使一個接收端計算機系統可以肯定它所收到的IP包類型,並把它交給合適的高層軟件。端口號和設備IP地址的組合一般稱做「插口(socket)」。
具備第四層功能的交換機可以起到與服務器相鏈接的「虛擬IP」(VIP)前端的做用。
每臺服務器和支持單一或通用應用的服務器組都配置一個VIP地址。這個VIP地址被髮送出去並在域名系統上註冊。
在發出一個服務請求時,第四層交換機經過斷定TCP開始,來識別一次會話的開始。而後它利用複雜的算法來肯定處理這個請求的最佳服務器。一旦作出這種決定,交換機就將會話與一個具體的IP地址聯繫在一塊兒,並用該服務器真正的IP地址來代替服務器上的VIP地址。
每臺第四層交換機都保存一個與被選擇的服務器相配的源IP地址以及源TCP 端口相關聯的鏈接表。而後第四層交換機向這臺服務器轉發鏈接請求。全部後續包在客戶機與服務器之間從新影射和轉發,直到交換機發現會話爲止。
在使用第四層交換的狀況下,接入能夠與真正的服務器鏈接在一塊兒來知足用戶制定的規則,諸如使每臺服務器上有相等數量的接入或根據不一樣服務器的容量來分配傳輸流。