11.以太網交換機工作原理

目錄

  • 一、以太網協議
  • 二、以太網交換機原理
  • 三、交換機常見問題思考
  • 四、同網段數據通信全過程
  • 五、跨網段數據通信全過程
  • 六、關鍵知識
  • 七、調試命令

前言:在網絡中傳輸數據時需要遵循一些標準,以太網協議定義了數據幀在以太網上的傳輸標準,了解以太網協議是充分理解數據鏈路層通信的基礎。以太網交換機是實現數據鏈路層通信的主要設備,了解以太網交換機的工作原理也是十分必要的。

一、以太網協議

  1. 以太網是當今現有局域網(Local Area Network, LAN)采用的最通用的通信協議標準,該標準定義了在局域網中采用的電纜類型和信號處理方法。

  2. 以太網是建立在CSMA/CD (Carrier Sense Multiple Access/Collision Detection,載波監聽多路訪問/沖突檢測)機制上的廣播型網絡。

     早期使用集線器(HUB)組網現在使用交換機組網。
    

在這里插入圖片描述

  1. 沖突域

     沖突域是指連接在同一共享介質上的所有節點的集合,沖突域內所有節點競爭同一帶寬,一個節點發出的報文(無論是單播、組播、廣播),其余節點都可以收到。早期以太網(HUB組網):① 在傳統的以太網中,同一介質上的多個節點共享鏈路帶寬,爭用鏈路的使用權,這樣就會發生沖突。② 同一介質上的節點越多,沖突發生的概率越大。③ 解決機制:CSMA/CD(帶有沖突檢測的載波偵聽多路存取):所有節點都共享網絡傳輸信道,節點在發送數據之前,首先檢測信道是否空閑,如果信道空閑則發送,否則就等待;在發送出信息后,再對沖突進行檢測,當發現沖突時,則取消發送。交換機以太網(現在用的):① 隔離沖突域,每個接口相當于1個獨立的沖突域。② 交換機不同的接口發送和接收數據獨立,各接口屬于不同的沖突域,因此有效地隔離了網絡中物理層沖突域,使得通過它互連的主機(或網絡)之間不必再擔心流量大小對于數據發送沖突的影響。
    

在這里插入圖片描述

  1. 廣播域

     廣播報文所能到達的整個訪問范圍稱為二層廣播域,簡稱廣播域,同一廣播域內的主機都能收到廣播報文。	
    

在這里插入圖片描述

  1. 以太網幀格式

     以太網技術所使用的幀稱為以太網幀 (Ethernet Frame),或簡稱以太幀。以太幀的格式有兩個標準:Ethernet_II格式和IEEE 802.3格式。※ Ethernet_Ⅱ最常用※ thernet_II和IEEE 802.3幀前面兩個字段都是D.MAC與S.MAC,交換機只會拆到這,所以交換機不知道接收到的幀具體是哪個格式的。
    

在這里插入圖片描述

二、以太網交換機原理

  1. 典型的園區網架構

     出口層(通常為路由器):連接公網核心層(通常是三層交換機):負責用戶的數據交換匯聚層(通常是三層交換機):把用戶的數據匯聚起來轉發給核心層接入層(通常是二層交換機):用于把用戶接進來(擴展接口的)
    

在這里插入圖片描述

  1. 以太網二層交換機

     以太網二層交換機轉發數據的端口都是以太網口,并且只能夠針對數據的二層頭部 (以太網數據幀頭) 中的MAC地址進行尋址并轉發數據。
    
  2. 交換機的工作原理

     交換機在接收到任意類型的數據幀時,首先是學習并生成MAC表項(數據幀源MAC地址與入端口對應關系),如果該項已經存在,會更新其老化時間(華為大部分設備默認是300秒),然后將該數據幀從對應的端口轉發出去;如果沒有該項,則會將其泛洪(轉發給所有端口);
    

在這里插入圖片描述

  1. MAC地址表

     每臺交換機中都有一個MAC地址表,存放了MAC地址與交換機端口編號之間的映射關系。華為大部分設備默認地址表項老化時間是300秒。
    

在這里插入圖片描述

  1. 交換機的3種數據幀處理行為

    交換機對于從傳輸介質進入某一端口的幀的處理行為一共有3種:泛洪、轉發與丟棄。

在這里插入圖片描述

  1. 泛洪

     如圖所示
    

在這里插入圖片描述

  1. 轉發

     如圖所示
    

在這里插入圖片描述

  1. 丟棄

     交換機接收到數據幀,發現其目的MAC地址對應的接口,是其來方向的入接口時,會將其丟棄(找錯交換機了)。
    

在這里插入圖片描述

  1. 交換機MAC地址學習

     交換機只有在報文經過時才能學習并構建相應的mac表項。交換機接收到報文的第一步是學習mac地址,然后才是其他操作。
    

第一步:

在這里插入圖片描述

第二步:

在這里插入圖片描述

第三步:

在這里插入圖片描述

第四步:

在這里插入圖片描述

第五步:

在這里插入圖片描述

三、交換機常見問題思考

  1. 交換機接口down后,相應MAC地址表項如何變化?

     對應接口的MAC地址表項會消失。
    
  2. 同一個Vlan中,PC 從交換機A端口遷移到B端口,交換機MAC地址表項如何變化 ?

     會進行變遷到新的接口下。
    
  3. MAC地址表的老化時間是多少?為什么需要老化時間?

     華為大部分設備默認是300秒,新報文經過會刷新老化時間重新計算;為了高效的利用設備的資源,不要太多的mac地址條目。
    
  4. 如何設置“黑洞”MAC?

     交換機系統模式下:mac-address blackhole 5489-98EA-0A02 vlan 1 黑洞mac
    
  5. 交換機的一個接口可以學習多個MAC地址嗎?

     可以的(因為一個接口下可能連接了其他交換機,其他交換機下也有很多設備)
    
  6. 交換機的MAC地址表項可以無限增加嗎?

     不可以,大交換機的較多,中小型交換機的較少。
    
  7. 交換機和集線器有和區別?

     集線器所有的接口都在一個沖突域下,交換機的每一個接口都是一個獨立的沖突域;集線器對于任何報文都是群發,共享鏈路帶寬。集線器:老設備、只會翻紅、共享鏈路帶寬。
    
  8. 交換機有NAT功能嗎?

     大部分交換機都沒有nat功能(三層交換機和路由器的功能不是完全一樣)
    
  9. 所有交換機的端口都可以切換成路由口嗎?

     不是,部分交換機的端口可以(高端交換機,比如華為-H系列)
    

四、同網段數據通信全過程

P25

過程如下:① 主機1不知道主機2的mac地址,arp廣播② 交換機收到arp廣播,學習主機1的mac地址,泛洪arp③ 主機2接收到arp廣播,將主機1的mac與ip寫入自己的arp緩存表④ 主機2發送單播給主機1,包含自己的mac與ip⑤ 主機1收到主機2的mac與ip,將其寫入arp緩存表,隨后封裝icmp報文發送給主機2,開始正式訪問⑥ 交換機收到icmp,不知道目的(主機2),將其泛洪⑦ 主機2收到icmp后,回包給主機1⑧ 交換機收到主機2的icmp回包時,將主機2的mac地址與其入端口一起寫道mac地址表中,隨后查找表,發現自己有主機1的mac地址后,將其從GE0/0/1轉發。⑨ 主機1接收到主機2的回包,訪問結束。

五、跨網段數據通信全過程

P27

過程如下:① 主機1訪問主機2的ip地址,發現和自己不是一個網段,將其送給R1(網關路由器)② 但是主機1不知道R1的mac地址,arp③ 交換機收到主機1的arp廣播,學習主機1mac地址,泛洪arp④ r1收到arp包,將主機1的mac與ip寫入arp表,回給主機1單薄(攜帶r1的ip與mac)⑤ 交換機收到r1發送的單播,學習r1的mac,查找mac將其轉發給主機1⑥ 主機1收到后r1回的單播報文,將r1的ip與mac寫入arp表,隨后封裝icmp報文(目的主機2,mac是R1)⑦ 交換機收到icmp,查找mac地址表,發給R1⑧ R1收到icmp報文后,查看目的IP地址(是主機2),查找路由表,發出去⑨ 到達對端⑩ r1不知道主機2的mac地址,arp,? 交換機收到arp,學習R1的mac地址生成表項,隨后泛洪? 主機2收到arp,將R1的ip與mac寫到自己的arp表,隨后發送單播(攜帶主機2的ip與mac)給R1交換機收到主機2的單播,學習主機2的mac,發給R1? R1收到單薄,把主機2的ip與mac寫入arp表。隨后發送icmp包。交換機收到icmp,查找mac地址表,轉發給主機2? 主機2收到icmp,回報給主機1,因為跨網段,所以發給網關R1※ 注意:主機1和主機2的網關是R1路由器的兩個不同的接口。? 交換機收到icmp,查找mac表,發給R1? R1收到icmp,查找路由表,發給主機1,? 交換機收到icmp,查找mac表,發給主機1? 主機1收到回包,訪問結束。

六、關鍵知識

  1. 交換機基于目標mac 轉發數據。

  2. 交換機的MAC地址表項需要報文觸發才可以構建。

  3. 交換機的MAC地址表是交換機轉發數據“地圖”。

  4. 交換機MAC地址表中存放:mac地址和端口映射

  5. 泛洪:① 未知單播泛洪 ② 廣播泛洪

  6. 交換機根據接收報文的源mac地址來構建自己的MAC地址表項。

七、調試命令

  • dis mac-address 查看mac地址表
  • dis mac-address summary 查看mac地址表概述
  • dis mac-address aging-time 查看mac地址表老化時間
  • mac-address aging-time 305 修改mac地址表的老化時間
  • mac-address blackhole 5489-98EA-0A02 vlan 1 黑洞mac
  • undo mac-address all 清空mac地址表
  • dis arp 查看arp
  • reset arp all 清空arp

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/711792.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/711792.shtml
英文地址,請注明出處:http://en.pswp.cn/news/711792.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

android移動應用開發基礎答案,安卓工程師面試題

一線企業的app都是多線程和多進程的,而Android進程間通信機制就是Binder,原生的線程間通信則是Handler,Binder和Handler是了解安卓運行機制必須要掌握的一個知識點,更是一線企業面試必問的知識點! 以下幾道就是大廠關于…

【QT+QGIS跨平臺編譯】之五十五:【QGIS_CORE跨平臺編譯】—【qgsmeshcalcparser.cpp生成】

文章目錄 一、Bison二、生成來源三、構建過程一、Bison GNU Bison 是一個通用的解析器生成器,它可以將注釋的無上下文語法轉換為使用 LALR (1) 解析表的確定性 LR 或廣義 LR (GLR) 解析器。Bison 還可以生成 IELR (1) 或規范 LR (1) 解析表。一旦您熟練使用 Bison,您可以使用…

Unity中URP實現水體(整理優化)

文章目錄 前言一、優化水的深度1、我們把 水流動的方向 和 水深淺過渡值,整合到一個四維變量中2、修改 水體流動方向3、在片元著色器中,修改使用過渡變量 二、優化泡沫三、優化水下的扭曲1、修復原本擾動UV的計算 四、優化水面高光1、把高光強度、光滑度…

紅隊基礎設施建設

文章目錄 一、ATT&CK二、T1583 獲取基礎架構2.1 匿名網絡2.2 專用設備2.3 滲透測試虛擬機 三、T1588.002 C23.1 開源/商用 C23.1.1 C2 調研SliverSliver 對比 CS 3.1.2 CS Beacon流量分析流量規避免殺上線 3.1.3 C2 魔改3.1.4 C2 隱匿3.1.5 C2 準入應用場景安裝配置說明工具…

UC++對象方法IsValid()、IsValidLowLevel()、IsValidLowLevelFast()的區別

在 Unreal Engine 中,IsValid(), IsValidLowLevel(), 和 IsValidLowLevelFast() 是用于檢查 UObject(Unreal Object)有效性的三個不同的方法。它們之間的區別主要在于檢查的級別和效率。 IsValid(): 檢查級別: IsVal…

深度學習 精選筆記(2)自動求導與概率

學習參考: 動手學深度學習2.0Deep-Learning-with-TensorFlow-bookpytorchlightning ①如有冒犯、請聯系侵刪。 ②已寫完的筆記文章會不定時一直修訂修改(刪、改、增),以達到集多方教程的精華于一文的目的。 ③非常推薦上面(學習參考&#x…

Linux系統——LAMP架構

目錄 一、LAMP架構組成 1.LAMP定義 2.各組件的主要作用 3.CGI和FastCGI 3.1CGI 3.3CGI和FastCGI比較 4.PHP 4.1PHP簡介 4.2PHP的Opcode語言 4.3PHP設置 二、LAMP架構實現 1.編譯安裝Apache httpd服務 2.編譯安裝Mysql 3.編譯安裝PHP 4.安裝論壇 5.搭建博客 W…

Linux編程 2.4 文件和目錄-Linux文件系統結構

1、文件操作基本元素 文件操作相關的最基本元素是:目錄結構、索引節點和文件的數據本身。 目錄結構(目錄項)索引節點(i節點)文件的數據 2、文件系統的三個區域 屬性: 超級塊:存放文件系統本身…

vs code快捷鍵

ShiftCtrlO vs code 提供很強大的功能,就是可以快速查文件中的符號列表和函數列表,我們首先打開一個源碼文件,比tcp.c,然后我們通過快捷鍵“ShiftCtrlO”即可打開對應源碼文件的符號列表和函數列表,通過查看這些列表&a…

【學習心得】Python調用JS的三種常用方法

在做JS逆向的時候,一種情況是直接用Python代碼復現JS代碼的功能,達成目的。但很多時候這種方法有明顯的缺點,那就是一旦JS代碼邏輯發生了更改,你就得重寫Python的代碼邏輯非常不便。于是第二種情況就出現了,我直接得到…

python自動化管理和zabbix監控網絡設備(防火墻和python自動化配置部分)

目錄 前言 一、ssh配置 1.FW1 2.core-sw1 3.core-sw2 二、python自動化配置防火墻 三、驗證DNAT 四、驗證DNAT 前言 視頻演示請訪問b站主頁 白帽小丑的個人空間-白帽小丑個人主頁-嗶哩嗶哩視頻 一、ssh配置 給需要自動化管理的設備配置ssh服務端用戶名和密碼 1.FW1 …

純css實現-讓字符串在文字少時顯示為居中對齊,而在文字多時顯示為左對齊

純css實現-讓字符串在文字少時顯示為居中對齊,而在文字多時顯示為左對齊 使用flex實現 思路 容器樣式(.container): Flex容器的BFC性質使得其內部的子元素(.text-box)在水平方向上能夠居中,通過justify-c…

生態環境數據分析新篇章:Meta分析、R語言、Matlab、貝葉斯、結構方程模型等的前沿實踐

目錄 ①Meta分析在生態環境領域里的應用 ②R語言在生態環境領域中的應用 ③MATLAB在生態環境數據處理與分析中的應用 ④基于R語言piecewiseSEM結構方程模型在生態環境應用 ⑤R語言貝葉斯方法在生態環境領域中的高階技術應用 更多應用 為了Meta分析問題的設計、基礎理論、…

【菜鳥入門!】Matlab零基礎快速入門教程

數學建模競賽中,編程軟件是必不可缺少的,比如大家都熟知的MATLAB多數同學們都會經常用到,今天給大家介紹一些MATLAB的基本元素,希望幫助大家更好的掌握編寫基本的函數! 變量和數組 MATLAB 程序的基本數據單元是數組。一…

rm刪除未釋放空間,linux sync有時不起作用

此時需要重啟系統即可. Linux中的sync命令用于將文件系統的緩沖區數據立即寫入磁盤,以確保數據的持久性。123456 sync命令沒有任何選項,簡單執行即可。它會將文件系統緩沖區中的數據寫入磁盤,并更新文件系統的超級塊及其他元數據。使用sync命…

Vue.js的雙向綁定原理

Vue的雙向綁定 vue雙向綁定是其最重要的核心亮點,其原理也很簡單,這里做個簡單總結 vue2的雙向綁定是利用的Object.definePropertyvue3的雙向綁定是利用的 ES6Porxy中的defineProperty(target, propKey, propDesc 其作用類似于Object.defineProperty …

您想要擁有 Apple Vision Pro 的原因

自從2024年2月2日Apple Vision Pro發布以來,網上已經有很多關于如何使用這款蘋果最新設備的示例。該平臺引入的空間計算新世界能夠完成許多在其他設備上無法完成的事情。Reddit 上的這個人能夠以 51202160 的分辨率從他的 PC 上串流游戲!在本文中&#x…

SpringMVC01、回顧MVC

1、回顧MVC 1.1、什么是MVC MVC是模型(Model)、視圖(View)、控制器(Controller)的簡寫,是一種軟件設計規范。是將業務邏輯、數據、顯示分離的方法來組織代碼。MVC主要作用是降低了視圖與業務邏輯間的雙向偶合。MVC不是一種設計模式,MVC是一種架構模式。…

Docker部署前后端服務示例

使用Docker部署js前端 1.創建Dockerfile 在項目跟目錄下創建Dockerfile文件: # 使用nginx作為基礎鏡像 FROM nginx:1.19.1# 指定工作空間 WORKDIR /data/web# 將 yarn build 打包后的build文件夾添加到工作空間 ADD build build# 將項目必要文件添加到工作空間&a…

數據結構—>帶你深入了解單鏈表(基礎篇)

?作者簡介:大家好,我是橘橙黃又青,一個想要與大家共同進步的男人😉😉 🍎個人主頁:橘橙黃又青-CSDN博客 前面我們學習了順序表,今天我們來學習與順序表類似的單鏈表 1.&#x1f3…