交換機根據收到數據幀中的源MAC地址建立該地址同交換機端口的映射,并將其寫入MAC地址表中。
交換機將數據幀中的目的MAC地址同已建立的MAC地址表進行比較,以決定由哪個端口進行轉發。
如數據幀中的目的MAC地址不在MAC地址表中,則向所有端口轉發。這一過程稱為泛洪(flood)。
廣播幀和組播幀向所有的端口轉發。
二、交換機的三個主要功能
學習:以太網交換機了解每一端口相連設備的MAC地址,并將地址同相應的端口映射起來存放在交換機緩存中的MAC地址表中。
轉發/過濾:當一個數據幀的目的地址在MAC地址表中有映射時,它被轉發到連接目的節點的端口而不是所有端口(如該數據幀為廣播/組播幀則轉發至所有端口)。
消除回路:當交換機包括一個冗余回路時,以太網交換機通過生成樹協議避免回路的產生,同時允許存在后備路徑。
三、交換機的工作特性
交換機的每一個端口所連接的網段都是一個獨立的沖突域。
交換機所連接的設備仍然在同一個廣播域內,也就是說,交換機不隔絕廣播(惟一的例外是在配有VLAN的環境中)。
交換機依據幀頭的信息進行轉發,因此說交換機是工作在數據鏈路層的網絡設備(此處所述交換機僅指傳統的二層交換設備)。
四、交換機的分類
依照交換機處理幀時不同的操作模式,主要可分為兩類:
存儲轉發:交換機在轉發之前必須接收整個幀,并進行錯誤校檢,如無錯誤再將這一幀發往目的地址。幀通過交換機的轉發時延隨幀長度的不同而變化。
直通式:交換機只要檢查到幀頭中所包含的目的地址就立即轉發該幀,而無需等待幀全部的被接收,也不進行錯誤校驗。由于以太網幀頭的長度總是固定的,因此幀通過交換機的轉發時延也保持不變。
五、二、三、四層交換機?
多種理解的說法:
第一種說法:
二層交換(也稱為橋接)是基于硬件的橋接。基于每個末端站點的唯一MAC地址轉發數據包。二層交換的高性能可以產生增加各子網主機數量的網絡設計。其仍然有橋接所具有的特性和限制。
三層交換是基于硬件的路由選擇。路由器和第三層交換機對數據包交換操作的主要區別在于物理上的實施。
四層交換的簡單定義是:不僅基于MAC(第二層橋接)或源/目的地IP地址(第三層路由選擇),同時也基于TCP/UDP應用端口來做出轉發決定的能力。其使網絡在決定路由時能夠區分應用。能夠基于具體應用對數據流進行優先級劃分。它為基于策略的服務質量技術提供了更加細化的解決方案。提供了一種可以區分應用類型的方法。
第二種說法:
二層交換機基于MAC地址
三層交換機具有VLAN功能 有交換和路由 ///基于IP,就是網絡
四層交換機基于端口,就是應用
第三種說法:
二層交換技術從網橋發展到VLAN(虛擬局域網),在局域網建設和改造中得到了廣泛的應用。第二層交換技術是工作在OSI七層網絡模型中的第二層,即數據鏈路層。它按照所接收到數據包的目的MAC地址來進行轉發,對于網絡層或者高層協議來說是透明的。它不處理網絡層的IP地址,不處理高層協議的諸如TCP、UDP的端口地址,它只需要數據包的物理地址即MAC地址,數據交換是靠硬件來實現的,其速度相當快,這是二層交換的一個顯著的優點。但是,它不能處理不同IP子網之間的數據交換。傳統的路由器可以處理大量的跨越IP子網的數據包,但是它的轉發效率比二層低,因此要想利用二層轉發效率高這一優點,又要處理三層IP數據包,三層交換技術就誕生了。
三層交換
技術的工作原理
第三層交換工作在OSI七層網絡模型中的第三層即網絡層,是利用第三層協議中的IP包的包頭信息來對后續數據業務流進行標記,具有同一標記的業務流的后續報文被交換到第二層數據鏈路層,從而打通源IP地址和目的IP地址之間的一條通路。這條通路經過第二層鏈路層。有了這條通路,三層交換機就沒有必要每次將接收到的數據包進行拆包來判斷路由,而是直接將數據包進行轉發,將數據流進行交換
第四種說法:
二層交換技術
二層交換技術是發展比較成熟,二層交換機屬數據鏈路層設備,可以識別數據包中的MAC地址信息,根據MAC地址進行轉發,并將這些MAC地址與對應的端口記錄在自己內部的一個地址表中。具體的工作流程如下:
當交換機從某個端口收到一個數據包,它先讀取包頭中的源MAC地址,這樣它就知道源MAC地址的機器是連在哪個端口上的;
再去讀取包頭中的目的MAC地址,并在地址表中查找相應的端口;
如表中有與這目的MAC地址對應的端口,把數據包直接復制到這端口上;
如表中找不到相應的端口則把數據包廣播到所有端口上,當目的機器對源機器回應時,交換機又可以學習一目的MAC地址與哪個端口對應,在下次傳送數據時就不再需要對所有端口進行廣播了。
不斷的循環這個過程,對于全網的MAC地址信息都可以學習到,二層交換機就是這樣建立和維護它自己的地址表。
從二層交換機的工作原理可以推知以下三點:
由于交換機對多數端口的數據進行同時交換,這就要求具有很寬的交換總線帶寬,如果二層交換機有N個端口,每個端口的帶寬是M,交換機總線帶寬超過N×M,那么這交換機就可以實現線速交換;
學習端口連接的機器的MAC地址,寫入地址表,地址表的大小(一般兩種表示方式:一為BEFFER RAM,一為MAC表項數值),地址表大小影響交換機的接入容量;
還有一個就是二層交換機一般都含有專門用于處理數據包轉發的ASIC (Application specific Integrated Circuit)芯片,因此轉發速度可以做到非常快。由于各個廠家采用ASIC不同,直接影響產品性能。
以上三點也是評判二三層交換機性能優劣的主要技術參數,這一點請大家在考慮設備選型時注意比較。
(二)路由技術
路由器工作在OSI模型的第三層---網絡層操作,其工作模式與二層交換相似,但路由器工作在第三層,這個區別決定了路由和交換在傳遞包時使用不同的控制信息,實現功能的方式就不同。工作原理是在路由器的內部也有一個表,這個表所標示的是如果要去某一個地方,下一步應該向那里走,如果能從路由表中找到數據包下一步往那里走,把鏈路層信息加上轉發出去;如果不能知道下一步走向那里,則將此包丟棄,然后返回一個信息交給源地址。
路由技術實質上來說不過兩種功能:決定最優路由和轉發數據包。路由表中寫入各種信息,由路由算法計算出到達目的地址的最佳路徑,然后由相對簡單直接的轉發機制發送數據包。接受數據的下一臺路由器依照相同的工作方式繼續轉發,依次類推,直到數據包到達目的路由器。
而路由表的維護,也有兩種不同的方式。
一種是路由信息的更新,將部分或者全部的路由信息公布出去,路由器通過互相學習路由信息,就掌握了全網的拓撲結構,這一類的路由協議稱為距離矢量路由協議;
另一種是路由器將自己的鏈路狀態信息進行廣播,通過互相學習掌握全網的路由信息,進而計算出最佳的轉發路徑,這類路由協議稱為鏈路狀態路由協議。
由于路由器需要做大量的路徑計算工作,一般處理器的工作能力直接決定其性能的優劣。當然這一判斷還是對中低端路由器而言,因為高端路由器往往采用分布式處理系統體系設計。
(三)三層交換技術
近年來的對三層技術的宣傳,耳朵都能起繭子,到處都在喊三層技術,有人說這是個非常新的技術,也有人說,三層交換嘛,不就是路由器和二層交換機的堆疊,也沒有什么新的玩意,事實果真如此嗎?下面先來通過一個簡單的網絡來看看三層交換機的工作過程。
組網比較簡單
使用IP的設備A------------------------三層交換機------------------------使用IP的設備B
比如A要給B發送數據,已知目的IP,那么A就用子網掩碼取得網絡地址,判斷目的IP是否與自己在同一網段。
如果在同一網段,但不知道轉發數據所需的MAC地址,A就發送一個ARP請求,B返回其MAC地址,A用此MAC封裝數據包并發送給交換機,交換機起用二層交換模塊,查找MAC地址表,將數據包轉發到相應的端口。
如果目的IP地址顯示不是同一網段的,那么A要實現和B的通訊,在流緩存條目中沒有對應MAC地址條目,就將第一個正常數據包發送向一個缺省網關,這個缺省網關一般在操作系統中已經設好,對應第三層路由模塊,所以可見對于不是同一子網的數據,最先在MAC表中放的是缺省網關的MAC地址;然后就由三層模塊接收到此數據包,查詢路由表以確定到達B的路由,將構造一個新的幀頭,其中以缺省網關的MAC地址為源MAC地址,以主機B的MAC地址為目的MAC地址。通過一定的識別觸發機制,確立主機A與B的MAC地址及轉發端口的對應關系,并記錄進流緩存條目表,以后的A到B的數據,就直接交由二層交換模塊完成。這就通常所說的一次路由多次轉發。
以上就是三層交換機工作過程的簡單概括,可以看出三層交換的特點:
由硬件結合實現數據的高速轉發。
這就不是簡單的二層交換機和路由器的疊加,三層路由模塊直接疊加在二層交換的高速背板總線上,突破了傳統路由器的接口速率限制,速率可達幾十Gbit/s。算上背板帶寬,這些是三層交換機性能的兩個重要參數。
簡潔的路由軟件使路由過程簡化。
大部分的數據轉發,除了必要的路由選擇交由路由軟件處理,都是又二層模塊高速轉發,路由軟件大多都是經過處理的高效優化軟件,并不是簡單照搬路由器中的軟件。
結論
二層交換機用于小型的局域網絡。這個就不用多言了,在小型局域網中,廣播包影響不大,二層交換機的快速交換功能、多個接入端口和低謙價格為小型網絡用戶提供了很完善的解決方案。
路由器的優點在于接口類型豐富,支持的三層功能強大,路由能力強大,適合用于大型的網絡間的路由,它的優勢在于選擇最佳路由,負荷分擔,鏈路備份及和其他網絡進行路由信息的交換等等路由器所具有功能。
三層交換機的最重要的功能是加快大型局域網絡內部的數據的快速轉發,加入路由功能也是為這個目的服務的。如果把大型網絡按照部門,地域等等因素劃分成一個個小局域網,這將導致大量的網際互訪,單純的使用二層交換機不能實現網際互訪;如單純的使用路由器,由于接口數量有限和路由轉發速度慢,將限制網絡的速度和網絡規模,采用具有路由功能的快速轉發的三層交換機就成為首選。
一般來說,在內網數據流量大,要求快速轉發響應的網絡中,如全部由三層交換機來做這個工作,會造成三層交換機負擔過重,響應速度受影響,將網間的路由交由路由器去完成,充分發揮不同設備的優點,不失為一種好的組網策略,當然,前提是客戶的腰包很鼓,不然就退而求其次,讓三層交換機也兼為網際互連。
第四層交換的一個簡單定義是:它是一種功能,它決定傳輸不僅僅依據MAC地址(第二層網橋)或源/目標IP地址(第三層路由),而且依據TCP/UDP(第四層) 應用端口號。第四層交換功能就象是虛IP,指向物理服務器。它傳輸的業務服從的協議多種多樣,有HTTP、FTP、NFS、Telnet或其他協議。這些業務在物理服務器基礎上,需要復雜的載量平衡算法。在IP世界,業務類型由終端TCP或UDP端口地址來決定,在第四層交換中的應用區間則由源端和終端IP地址、TCP和UDP端口共同決定。
在第四層交換中為每個供搜尋使用的服務器組設立虛IP地址(VIP),每組服務器支持某種應用。在域名服務器(DNS)中存儲的每個應用服務器地址是VIP,而不是真實的服務器地址。
當某用戶申請應用時,一個帶有目標服務器組的VIP連接請求(例如一個TCP SYN包)發給服務器交換機。服務器交換機在組中選取最好的服務器,將終端地址中的VIP用實際服務器的IP取代,并將連接請求傳給服務器。這樣,同一區間所有的包由服務器交換機進行映射,在用戶和同一服務器間進行傳輸。
第四層交換的原理
OSI模型的第四層是傳輸層。傳輸層負責端對端通信,即在網絡源和目標系統之間協調通信。在IP協議棧中這是TCP(一種傳輸協議)和UDP(用戶數據包協議)所在的協議層。
在第四層中,TCP和UDP標題包含端口號(portnumber),它們可以唯一區分每個數據包包含哪些應用協議(例如HTTP、FTP等)。端點系統利用這種信息來區分包中的數據,尤其是端口號使一個接收端計算機系統能夠確定它所收到的IP包類型,并把它交給合適的高層軟件。端口號和設備IP地址的組合通常稱作“插口(socket)”。
1和255之間的端口號被保留,他們稱為“熟知”端口,也就是說,在所有主機TCP/IP協議棧實現中,這些端口號是相同的。除了“熟知”端口外,標準UNIX服務分配在256到1024端口范圍,定制的應用一般在1024以上分配端口號.
分配端口號的最近清單可以在RFc1700”Assigned Numbers”上找到。TCP/UDP端口號提供的附加信息可以為網絡交換機所利用,這是第4層交換的基礎。
"熟知"端口號舉例:
應用協議端口號 FTP20(數據) 21(控制) TELNET23 SMTP25 HTTP80 NNTP119 NNMP16 162(SNMPtraps)
TCP/UDP端口號提供的附加信息可以為網絡交換機所利用,這是第四層交換的基礎。
具有第四層功能的交換機能夠起到與服務器相連接的“虛擬IP”(VIP)前端的作用。
每臺服務器和支持單一或通用應用的服務器組都配置一個VIP地址。這個VIP地址被發送出去并在域名系統上注冊。
在發出一個服務請求時,第四層交換機通過判定TCP開始,來識別一次會話的開始。然后它利用復雜的算法來確定處理這個請求的最佳服務器。一旦做出這種決定,交換機就將會話與一個具體的IP地址聯系在一起,并用該服務器真正的IP地址來代替服務器上的VIP地址。
每臺第四層交換機都保存一個與被選擇的服務器相配的源IP地址以及源TCP 端口相關聯的連接表。然后第四層交換機向這臺服務器轉發連接請求。所有后續包在客戶機與服務器之間重新影射和轉發,直到交換機發現會話為止。
在使用第四層交換的情況下,接入可以與真正的服務器連接在一起來滿足用戶制定的規則,諸如使每臺服務器上有相等數量的接入或根據不同服務器的容量來分配傳輸流。
審核編輯:劉清
-
處理器
+關注
關注
68文章
19159瀏覽量
229115 -
交換機
+關注
關注
21文章
2622瀏覽量
99252 -
路由器
+關注
關注
22文章
3706瀏覽量
113536 -
VLAN技術
+關注
關注
0文章
45瀏覽量
6376 -
TCP通信
+關注
關注
0文章
146瀏覽量
4217
原文標題:只用過二層交換機,聽過三層交換機,四層交換機是干什么用的?
文章出處:【微信號:浩道linux,微信公眾號:浩道linux】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論