03.06 交換機的工作原理是什麼?

小淘空間


在家庭中用交換機很少,在網吧就會見到多,一般一臺交換機就可以了,在工業自動化控制中,大型的控制系統如DCS控制系統就要用兩臺交換機,比如A網的交換機出問題此時B網的交換機立馬工作,防止連續生產過程中斷。工業自動化控制中用的是功能強大的交換機,可以同時工作在數據鏈路層和網絡層。



根據題意所問的是交換機的工作原理。那麼交換機如何工作?

首先是交換機的地址表,交換機的端口地址表是它上電後自動建立的,並且記錄了端口下包含主機的MAC地址,然後存儲在RAM中並自動維護。

其次就是交換機的轉發決策,交換機的轉化決策有三種操作方式,分別是丟棄、轉發、擴散。丟棄指的是它本端口下的主機訪問已知本端口下主機丟棄。轉發指的是它某個端口下的主機訪問已知某個端口下的主機是轉發。擴散指的是其某個端口下主機訪問未知端口的主機是擴散。

然後就是交換機的生存週期,它的生存週期指的是端口地址列表中表項的壽命。那麼每個只要建立後就開始進行壽命倒計時,每次發送數據時都會刷新計時。假如一臺交換機長期不發送數據的主機那麼它的MAC地址的表項在生存週期結束時會自動刪除。換個角度思維就是交換機的端口地址表記錄是最活躍的主機MAC地址。


熟悉的就是路由器,它主要在網絡層工作。一般情況下用的都是普通交換機,它則在數據鏈路層工作。購買好的交換機它的功能就強大多了,可以取代路由器,因為功能強大的交換機可同時在數據鏈路層和網絡層工作,並且可根據MAC地址或者IP地址轉發數據包。

交換機帶網管功能的話就可以對每個端口流量進行監測,可以隨意設置每個端口的網速,關閉或打開端口連接。不僅方便對網絡業務的流量區分和網絡故障的定義,還提高網絡可管理性。交換機還具有端口聚合技術,數據鏈路的兩端可以是交換機也可以是交換機跟路由器,甚至可以是交換機跟主機或主機跟路由器。


Talk工控小白


舉個例子,從原始的功能上介紹下。

大家小時候都玩過,如下圖。

10個人組成通話網絡。兩個人互相通話需要一根線,若全部可以互相通話,就需要任何兩個人都連接一根線。如何減少連線?建立一個叫做交換中心的地方,不使用電路之類,人工交換。10個人都把線連接到房子那邊,但是並不直接相連。房子那邊有一個人,負責交換,當A需要跟B通話,負責交換的人,把這兩個人的線接起來。這叫人工交換。

哪個人需要通話,人工交換連接起來,線路接通。

後來發展到使用電路。繼電器之類,後來電子,等等。在路上打字。大意如此。。交換是一個比較原始的概念。後來隨著數據量的增加等等越來越複雜,設備更加複雜。

當看到最原始時候的需求和處理思路,希望可以幫助理解一下。

A B C D E

1 2 3 4 5



千山雪晴了


看到這個問題的時候我是拒絕回答的,畢竟已經好多年沒有做過了,可是當我看了下答案順便把問答中關於交換機的問題都看了一遍後發現,我還是有必要回答一下的,因為當前的答案中,連入門的都基本沒有。

首先,來看下TCP/I七層模型:

我們上網過程中所有的硬件、軟件都是對應的模型中的一層或幾層,交換機也一樣,而各個層級通過不同的職能分工最終完成網絡中信息的流轉,模型從1到7分別是:物理層、數據鏈路層、網絡層、傳輸層、會話層、表示層、應用層。

按照TCP/IP模型的分裂,交換機主要有以下幾種:

1.一層交換機:就是集線器,現在已經退出了歷史舞臺;

2.二層交換機:通過MAC地址轉發信息,是我們最常接觸到的交換機,一般在接入層使用的較多,接入層的主要作用就是將終端設備大量接入的接入網絡,通常在一幢大樓中,所有入戶的網口,都是與接入層交換機進行對接的,所以每層樓都會有多個接入層設備;

3.三層交換機:具有二層和三層的功能,可以通過IP地址和MAC地址進行尋址訪問,一般在匯聚層使用的較多,匯聚層的主要作用是將接入層的設備進行鏈接,並將數據與核心層設備進行傳輸,通常一幢大樓中,匯聚層設備將多個接入層設備進行鏈接,並與核心層設備進行傳輸;

4.多層交換機:具有二層到七層的功能,常用的為四層交換機,可以通過IP地址、MAC地址、協議等進行尋址訪問,核心層使用的較多,但是對於大部分小型網絡而已,核心層也可以採用三層交換機進行傳輸,核心層的主要作用是將匯聚層的數據傳輸到互聯網中,通常在一幢大樓中,核心層設備不會太多;

接下來說下不同層級交換機的工作原理:

1.二層交換機:通過設備的MAC地址將數據傳輸到對方,MAC地址就是我們計算機中的物理地址,這裡要注意的是二層交換機傳輸的不是IP地址,因為工作在協議的第二層,所以這一層的交換機是沒辦法識別IP地址的;

2.三層交換機:既可以通過IP地址尋址,也可以通過MAC地址進行傳輸,三層交換機具有路由器的部分功能,為什麼會有這樣的設計,因為路由器在處理路由協議時具有高效快速的特點,但是在處理二層數據時,採用路由器+交換器的方式是遠遠沒有三層交換機的處理效率高的。

3.四層交換機:即可以通過IP地址尋址,也可以通過MAC地址進行傳輸,更重要的是可以通過telnet、FTP、HTTP等協議進行控制,也就是說不但具有了路由器的部分功能,同時也具有了防火牆的部分功能,最常見的場景是在多設備做負載均衡時使用;

結束語:

總體來說知道二層交換機的原理、配置、排錯算是入門,知道三層的使用算是一個合格的網絡管理員了,知道四層怎麼用那麼恭喜你,一條不歸路在向你招手啦,開個玩笑,其實大部分我們生活中最多能接觸到二層,三層已經是企業級的設備了,四層設備除非專業的運營人員,否則應該極少可以見到。

歡迎大家關注我的自媒體平臺,老司機說職場,關注老司機,職場不迷路,現在正在更新的內容包括《辦公軟件系列》《商業模式系列》《百年企業品牌歷史系列》《職場說系列》《項目管理系列》,所有文章均為原創,感興趣的小夥伴關注一波唄。


職場輕知識


“網絡極客”,全新視角、全新思路,伴你遨遊神奇的網絡世界。


這裡以常見的二層交換機為例,更高層次的交換機不在本次套路內容。

  • 交換機工作於OSI七層模型中的第二層,數據鏈路層;

  • 交換機依靠MAC地址進行尋址,內部維護著一張MAC地址表。

一起來看看交換機的工作原理和使用場景吧。


工作原理

1.MAC地址表

交換機內部維護著一張動態MAC地址表,動態是關鍵,考試要考,哈哈;

交換機建立MAC地址表以及轉發數據過程:

  • 首次,給局域網某臺計算機發送信息,會以廣播包的形式在鏈路上進行轉發,交換機內部的MAC地址會登記發送源計算機的MAC地址信息;

  • 其次,收到廣播包的目標計算機,會回覆源計算機信息,交換機MAC地址表登記目標計算機的MAC地址信息;

  • 最後,再有數據傳輸時,會根據交換機內部的MAC地址表中的信息進行單點發送,不在發送廣播包。


2.端口工作模式

  • 端口從傳輸速率上可以分為:單工、半雙工、全雙工三種;

  • 端口從數據交換方式上分為:直通交換方式、存儲專訪方式、碎片隔離;

  • 端口從使用功能上分為:普通數據端口、POE供電端口;

  • 端口從傳輸模式上分為:access、trunk、hybird。


使用場景

二層交換機一般用來作為用戶端的接入設備進行使用;

主要用來解決用戶數據的快速傳輸,路由器端口不足的問題。

  • 常見的有8口、16口、24口交換機;

  • 從是否可以配置分為傻瓜交換機、智能交換機;

  • 從交換機的端口類型又分為光口交換機、電口交換機。


關於交換機的相關知識和問題;

歡迎大家留言討論,喜歡的點點關注。



極客談科技


首先,你要知道,交換機的工作層次;通常來說,大多數交換機都工作在二層;二層是什麼東西,你自行參考ISO/OSI模型,接下來,你會接觸到一個名為MAC的地址,這個地址,在Windows下,你使用IPCONFIG /all可以看到,你可以把MAC地址暫時理解成二層網絡中的IP地址。我們先來說說一個實例:兩臺電腦(A B)接到一個交換機,當電腦A訪問電腦B時,會發生什麼事情:首先,兩臺電腦的IP地址必須處於相同網段,假設A為192.168.1.1/24,B為192.168.1.2/24,其次,假設A的MAC地址為AAAA.AAAA.AAAA;B的MAC地址為BBBB.BBBB.BBBB;A接在交換機的FA0/1口,B接在交換機Fa0/2口;A Ping B時,A會先查ARP表(ARP表是記錄IP與MAC對應關係的表,A知悉B的IP,因此能查得B的MAC,若查不到,A會發ARP請求以獲得B的MAC地址),找到B的MAC(BBBB.BBBB.BBBB)地址,並以B的MAC為目的地址,A的MAC 為源地址發包給交換機。交換機第一次收到A發過來的包,會學習:FA0/1口接的主機,其MAC是AAAA.AAAA.AAAA;並形成一張CAM表,這張表是記錄接口與主機MAC的對應關係的表,加表完成後,交換機會關於目的MAC BBBB.BBBB.BBBB查CAM表,看看這個MAC應該從哪個口轉發出去,但查不到。怎麼辦?交換機此時會泛洪,這相當於交換機詢問所有接入的主機:你的MAC地址是BBBB.BBBB.BBBB嗎?主機B聽到後會回應交換機,交換機同樣會學習:FA0/2接的主機,其MAC地址是BBBB.BBBB.BBBB;加表,然後把A的包從FA0/2轉發給主機B。B收到A的包後,會返回一個ICMP的包給A,原理與上述無異。關於交換機的功能及原理,還有很多,我只是簡單說了一下交換機的傳輸原理。若有疑問或不正確的地方,請指出,謝謝。--CCIE R&S


風跡8


在回答您這個問題之前,需要清楚知道交換機作在數據鏈路層, 對數據幀進行操作。 在收到數據幀後, 交換機會根據數據幀的頭部信息對數據幀進行轉發。

交換機工作原理

交換機在處理不同的數據幀,其原理也不一樣。

1)如果進入交換機的是一個單播幀,則交換機會去MAC地址表中查找這個幀的目的MAC地址。

1、如果查不到這個MAC地址, 則交換機執行泛洪操作。

2、如果查到了這個MAC地址, 則比較這個MAC地址在MAC地址表中對應的端口是不是這個幀進入交換機的那個端口。 如果不是,則交換機執行轉發操作。 如果是, 則交換機執行丟棄操作

2)如果進入交換機的是一個廣播幀,則交換機不會去查MAC地址表,而是直接執行泛洪操作。

3)如果進入交換機的是一個組播幀,則交換機的處理行為比較複雜。這裡就不展開說了

總得來說交換機可以簡單概括成以下兩點:

  1. 基於源MAC地址學習
  2. 基於目的MAC地址轉發


交換機的轉發行為

交換機中有一個MAC地址表, 裡面存放了MAC地址與交換機端口的映射關係。 MAC地址表也稱為CAM(Content Addressable Memory) 表。如下圖所示, 交換機對幀的轉發操作行為一共有三種:

泛洪(Flooding) ,轉發(Forwarding), 丟棄(Discarding)

  1. 泛洪:交換機把從某一端口進來的幀通過所有其它的端口轉發出去(注意,“所有其它的端口”是指除了這個幀進入交換機的那個端口以外的所有端口)。
  2. 轉發:交換機把從某一端口進來的幀通過另一個端口轉發出去(注意,“另一個端口”不能是這個幀進入交換機的那個端口)。
  3. 丟棄:交換機把從某一端口進來的幀直接丟棄。


交換機數據幀轉發過程

1、初始狀態

初始狀態下,交換機並不知道所連接主機的MAC地址, 所以MAC地址表為空。如下圖的例子,SWA為初始狀態, 在收到主機A發送的數據幀之前,MAC地址表中沒有任何表項。

2、 學習MAC地址

主機A發送數據給主機C時, 一般會首先發送ARP請求來獲取主機C的MAC地址, 此ARP請求幀中的目的MAC地址是廣播地址, 源MAC地址是自己的MAC地址。 SWA收到該幀後, 會將源MAC地址和接收端口的映射關係添加到MAC地址表中。 缺省情況下, X7系列交換機學習到的MAC地址表項的老化時間為300秒。 如果在老化時間內再次收到主機A發送的數據幀, SWA中保存的主機A的MAC地址和G0/0/1的映射的老化時間會被刷新。 此後, 如果交換機收到目標MAC地址為00-01-02-03-04-AA的數據幀時, 都將通過G0/0/1端口轉發。

3、轉發數據幀

本例中主機A發送的數據幀的目的MAC地址為廣播地址, 所以交換機會將此數據幀通過G0/0/2和G0/0/3端口廣播到主機B和主機C。

4、目標主機回覆

主機B和主機C接收到此數據幀後, 都會查看該ARP數據幀。 但是主機B不會回覆該幀, 主機C會處理該幀併發送ARP回應, 此回覆數據幀的目的MAC地址為主機A的MAC地址, 源MAC地址為主機C的MAC地址。SWA收到回覆數據幀時, 會將該幀的源MAC地址和接口的映射關係添加到MAC地址表中。 如果此映射關係在MAC地址表已經存在, 則會被刷新。 然後SWA查詢MAC地址表, 根據幀的目的MAC地址找到對應的轉發端口後, 從G0/0/1轉發此數據幀。


交換機的交換模式

1、Cut-Through:直通模式

當輸入端口檢測到一個數據包時,就檢查該包的包頭,根據包內的目的地址把數據包直通到相應端口。

優點:這種方式不需要等數據包接收完就開始轉發,交換速度快,延遲非常小。

缺點:不提供錯誤檢測服務,有可能將出錯的數據包轉發出去。也不提供緩存,不能將速率不同的端口直接接通,而且容易丟包。

2、Store-and-Forward:存儲轉發

這種方式先將數據包完整的接收下來,經過CRC檢查,如果數據包沒有錯誤,再根據地址進行轉發。

優點:提供錯誤檢測服務,改善了網絡性能。支持速度不同的端口的轉發服務,可以保證高速端口與低速端口間協同工作。

缺點:傳輸延時較大,而且需要較大的緩存容量。

3、Frag-free:幀自由,64字節為單位

它檢查數據包的長度是否夠64個字節,若小於64字節,說明是廢包,進行丟棄,若大於64字節,則發送該包。

這種方式可保證碰撞碎片不在網絡中傳播,提高了網絡效率,它的數據處理速度介於直通式和存儲轉發式之間

希望這個回答對您有所幫助,更多關於數通的知識,可以關注我的頭條號,一起討論學習


分享到:


相關文章: