(*长期更新)软考网络工程师学习笔记——Section 17 交换技术原理
目錄
- 前言
- 一、交換機概述
- (一)沖突域與廣播域
- 1、沖突域
- 2、廣播域
- (二)交換機的基本概念
- (三)交換機的分類
- 1、按管理劃分
- 2、按工作層次劃分
- 3、按網絡拓撲結構劃分
- 4、按交換機的交換方式劃分
- (四)包轉發率與背板帶寬
- 1、包轉發率
- 2、背板帶寬
- 二、交換網絡中的VLAN技術
- (一)VLAN的基本概念
- (二)VLAN的劃分方法
- 1、按端口劃分
- 2、子網
- 3、MAC地址
- 4、網絡層協議
- 5、IP組播
- 6、策略
- (三)VLAN封裝協議
- 1、IEEE 802.1Q(dot1q)
- 2、QinQ技術
- (四)VCMP協議
- 1、VCMP的概念
- 2、VCMP管理域
- 3、VCMP角色
- 4、VCMP協議報文
- 5、部署VCMP的步驟
- (五)GVRP協議
- 1、GVRP的概念
- 2、GVRP的注冊模式
- 3、GVRP的消息類型
- 4、GVRP的定時器
- 5、GVRP單向注冊和雙向注冊
- 三、交換網絡中的生成樹協議
- (一)STP的基本概念
- (二)STP交換機接口狀態
- (三)STP工作原理
- (三)RSTP和MSTP
前言
下圖是交換機在華為eNSP軟件中的使用,該拓撲圖實現的是劃分vlan,通過交換機進行信號轉發:
一、交換機概述
(一)沖突域與廣播域
1、沖突域
沖突域是指會發生物理碰撞的域,也可以說在以太網中,如果某個CSMA/CD網絡上的兩臺計算機在同時通信時會發生沖突,那么這個CSMA/CD網絡就是一個沖突域,另外單純復制信號的集線器和中繼器不能隔離沖突域,即它們依舊是是一個沖突域。
而使用第二層技術(數據鏈路層)的設備可分割CSMA/CD網絡的設備,可以隔離沖突域的例如網橋、交換機(以太網交換機連接的所有端口是同一個廣播域,而每個端口是一個單獨的沖突域)、路由器,下圖是來自網上的一張圖(未劃分VLAN):
2、廣播域
接收同一廣播報文的結點集合稱為廣播域,隔離廣播域需要使用第三層(網絡層)設備,即路由器、三層交換機(以太網交換機連接的所有端口是同一個廣播域)都能隔離廣播域。
(二)交換機的基本概念
交換機是一種用于電或光信號轉發的網絡設備,由于交換機有多個端口,每個端口都具有橋接功能(依據OSI網絡模型的鏈路層的地址,對網絡數據包進行轉發),所以它又稱為多端口網橋,另外每個端口獨享相同的帶寬,它與集線器相比,在計算機數量很多時比集線器的優勢明顯。
根據其制造的方式可以分為盒式交換機和框式交換機,盒式交換機通常部署在網絡的匯聚層和接入層,我們可看到它的端口數是固定的,下圖是一個24口交換機:
這里的10/100/1000BASE-T即常說的十兆端口、百兆端口、千兆端口,100BASE-T的速率為100Mb/s,而千兆端口1000BASE-T的速率為1000Mb/s,它的速率更高,且千兆交換機支持的并發操作比百兆交換機更多,另外它們都是向下兼容的,即千兆交換機向下兼容百兆和十兆。百兆交換機常用于家庭等小型場所,而千兆交換機用于中小企業、網吧等大型場所。
由于盒式交換機的端口有限,當網絡規模達到一定程度時無法滿足網絡的要求。
此時可以通過通過堆疊技術使多臺具有可堆疊特性的交換機組合在一起,從邏輯上形成一臺交換機設備,從而達到擴展網絡能力、提高設備可靠性的目的,即框式交換機,如下是一臺框式交換機:
(三)交換機的分類
交換機的分類的分類方式有很多,以下解釋幾種分類方式。
按網絡地理范圍分類網絡:
①從廣義上來看,網絡交換機分為兩種:廣域網交換機和局域網交換機。廣域網交換機主要應用于電信領域,提供通信用的基礎平臺;而局域網交換機則應用于局域網絡,用于連接終端設備,如PC機及網絡打印機等。
②從傳輸介質和傳輸速度上可分為以太網交換機、快速以太網交換機、千兆以太網交換機、FDDI交換機、ATM交換機和令牌環交換機等。
1、按管理劃分
能進行管理和配置的交換機稱為網管型交換機,主要區別是帶不帶Console口【有的交換機是提供FDDI接口】,可以通過使用Console線直接連接至計算機的串口,利用終端仿真程序(一般使用Windows自帶的“超級終端”)在本地配置。常用的的Console接口多為RJ-45接口(即常用的水晶頭),如下就是一個網管型交換機:
而這種不帶Console口,即無管理和配置功能的交換機則稱為非網管型交換機,如下:
2、按工作層次劃分
我們知道通常采用折中的方法,即綜合OSI開放系統互連參考模型和TCP/IP的優點分為五層協議的體系結構,由下至上依次為物理層 、 數據鏈路層 、 網絡層 、 傳輸層 、應用層 ),共五層。
①所以將工作在數據鏈路層的交換機通常稱為二層交換機;
②三層交換機工作在網絡層,即它帶有路由功能(當源主機發出的數據進行第三層交換后,相關信息保存至MAC地址與IP地址的映射表中),且能加快數據交換,通過IP地址進行交換,可以轉發不同VLAN之間的通信,另外三層交換機工作時不僅使用第三層網絡層協議,還使用第二層數據鏈路層協議;
③而四層交換機工作在傳輸層,它除了可完成第二層和第三層交換機的功能工作還支持傳輸層以下的所有協議,可以說第四層交換機是以軟件構件為主、硬件支持為輔的網絡管理交換設備,它有智能應用交換功能;
④另外還有幀中繼交換機、ATM交換機。
按工作層次劃分,它們的工作層次和交換的依據如下表:
| 二層交換機 | 數據鏈路層 | MAC地址 |
| 三層交換機 | 網絡層 | IP地址 |
| 四層交換機 | 傳輸層 | TCP/UDP端口 |
| 幀中繼交換機 | 物理層和數據鏈路層 | 虛電路號(DCLI) |
| ATM交換機 | 物理層和數據鏈路層 | 虛電路標識VPI和VCI |
3、按網絡拓撲結構劃分
在之前的文章磁盤存儲技術和網絡規劃設計中,介紹過網絡規劃設計的邏輯網絡設計,邏輯網絡設計通過分層化網絡設計模型來設計,通常分為三層網絡模型,即接入層、匯聚層和核心層三層,這里的按網絡拓撲結構劃分交換機即為三種交換機,如下:
(1)接入層交換機
直接面向用戶連接或訪問網絡的部分稱為接入層,接入層的交換機端口固定,用于實現將用戶的計算機和終端接入網絡,所以接入層交換機要具有低成本和高端口密度特性,一般為8、16、24、48個百兆或千兆以太網接口、12-24個千兆以太網接口等等。
(2)匯聚層交換機
匯聚層是多臺接入層交換機的匯聚點,它處理來自接入層設備的所有通信流量,并提供到核心層的上行鏈路,匯聚層交換機可以是固定配置也可以是模塊配置,且它一般都是可以網管的,即匯聚層交換機需要更高的性能、更少的接口以及更高的交換速率。
(3)核心層交換機
核心層交換機作為網絡骨干構建高速局域網,由于核心層主要實現骨干網絡之間的優化傳輸,通常是冗余能力、可靠性和高速的傳輸,它負責將數據分組從一個區域高速地轉發至另一個區域,故核心層需要能處理大量的數據交換、轉發的交換機,所以交換機的背板帶寬和包轉發率要高,且采用模塊化設計。
4、按交換機的交換方式劃分
按交換方式可分為三種,有的交換機只支持一種,而有的交換機在每個交換端口數值一個門限值從而達到一定值時實現對應的交換方式,交換方式劃分如下:
(1)直通式交換
直接向目標地址轉發,其轉發速度快,但無檢錯的能力。
(2)存儲轉發式交換
先將接收到的信息緩存檢測正確性,確認正確后再轉發,由于中間結點需存儲數據,所以時延較大。
(3)無碎片交換
接收到64字節后才開始轉發,由于在一個正確設計的網絡中,沖突的發現會在源發送64字節之前,當出現沖突,源會停止繼續發送,且不完整的以太幀發送后無意義,所以檢查64字節前就可以將這些碎片幀丟棄掉。
(四)包轉發率與背板帶寬
1、包轉發率
包轉發率是指交換機每秒轉發多少百萬個數據包(Mpps)【單位還有kpps(千包/s)、pps(包/s)】,用于體現交換機的交換能力。
包轉發率也稱為吞吐量,計算公式如下:
包轉發率=萬兆端口數量×14.88Mpps+千兆端口數量×1.488Mpps+百兆端口數量×0.1488Mpps+其余類型端口數×相應計算方法
【由于每個幀之間有幀間隙,即等待一段時間后再發另一個幀,以太網標準中規定最小幀間隙為12byte,另外加上前導碼(7byte)、幀起始定界符(1byte),所以64byte的數據包在數據鏈路層封裝后大小為(64+8+12=84byte),故一個千兆端口下數據包個數=1000Mb/s÷8bit÷84byte≈1.488Mpps.,…】
2、背板帶寬
交換機的背板帶寬也決定包轉發率,即交換機接口處理器或接口卡和數據總線間能吞吐的最大數據量,即交換機總的數據交換能力,它與包轉發率的關系是:一臺交換機的背板帶寬越髙,其處理數據的能力就越強,包轉發率越髙。
全雙工交換機背板帶寬的計算公式如下:
背板帶寬=萬兆端口數量×10000Mb/s×2+千兆端口數量×1000Mb/s×2+百兆端口數量×100Mb/s×2+其余類型端口數×端口速率×2
二、交換網絡中的VLAN技術
(一)VLAN的基本概念
VLAN技術可以將一個LAN(局域網)劃分成多個邏輯上的子VLAN,每一個子VLAN是一個廣播域,不同的子VLAN之間不能直接通信,從而使廣播報文限制在一個子VLAN內,VLAN技術主要應用于三層交換機和路由器中(主要是三層交換機)。
所以VLAN技術的特點是:
限制廣播域:廣播域被限制在一個VLAN內,節省了帶寬,提高了網絡處理能力。
增強局域網的安全性:不同VLAN內的報文在傳輸時相互隔離,即一個VLAN內的用戶不能和其它VLAN內的用戶直接通信。
提高了網絡的健壯性:故障被限制在一個VLAN內,本VLAN內的故障不會影響其他VLAN的正常工作。
靈活構建虛擬工作組:用VLAN可以劃分不同的用戶到不同的工作組,同一工作組的用戶也不必局限于某一固定的物理范圍,網絡構建和維護更方便靈活。
如下是一個未劃分VLAN之前的網絡拓撲圖:
劃分兩個子VLAN后,各VLAN間獨立:
(二)VLAN的劃分方法
VLAN劃分方法可基于端口、子網、MAC地址、網絡層協議、IP組播和策略等多種方法,以下將詳細介紹各種劃分方法。
1、按端口劃分
端口,即按交換機的端口進行劃分,屬于靜態劃分,這也是最常用的VLAN劃分方法(但不同類型接口上的配置方式也不同),各VLAN之間通過三層交換機或路由器來保證VLAN之間的通信,這種方法適用于位置較固定的網絡場景,比如一個網絡中用戶無移動辦公需求,則可以采用基于交換機端口的VLAN劃分較合理。例如將S3700交換機(共24個以太網端口)的1-20端口劃分為VLAN100,21-24劃分為VLAN200。
2、子網
子網,即根據數據幀中的IP地址和子網掩碼來劃分VLAN,屬于動態劃分,首先配置好IP地址和VLAN ID之間的映射表,然后根據數據幀中的IP地址和子網掩碼劃分VLAN,這里的動態劃分也就是分好了組然后劃分,通過這種方式可以減少配置VLAN的工作量,且適合于移動性較高和簡易管理需求較高的網絡場景中。
3、MAC地址
MAC地址,即根據數據幀中的MAC地址來劃分VLAN,也屬于動態劃分,這種方法適合用戶使用網絡的位置常移動但網卡不經常更換的網絡場景,即當使用用戶離開時VLAN不用重新配置,但其缺點是初始化時使用的用戶都要進行配置,網卡更換或設備更新時也要重新配置,例如一個網絡中用戶需移動辦公,則可以采用基于MAC地址的VLAN劃分較合理。
4、網絡層協議
基于網絡層協議的劃分是根據數據幀所屬的協議(族)類型及封裝格式來劃分VLAN,也屬于動態劃分,適用于需要同時運行多種協議的網絡場景。
5、IP組播
基于IP組播的劃分也是動態劃分,認為一個組播組為一個VLAN,從而將VLAN擴展到廣域網,這種方法不適合局域網(由于效率不高)。
6、策略
基于策略的VLAN劃分是根據網絡管理員事先制定的VLAN規則進行劃分,自動將加入網絡中的設備劃分到相應的VLAN中,可以說這種劃分方法是多種組合(端口、IP地址、MAC地址等)的劃分方法,適用于需求比較復雜的網絡環境。
(三)VLAN封裝協議
VLAN封裝協議有兩種鏈路封裝協議,分別是IEEE 802.1Q和QinQ技術。
1、IEEE 802.1Q(dot1q)
IEEE 802.1Q也稱為dot1q,該協議允許多個網橋在信息不被外泄的情況下公開的共享同一個實體網上,IEEE 802.1q所附加的VLAN識別信息位于數據幀的源MAC地址與類型字段之間,即它在原來的以太幀中添加4個字段的標記字段,可以說IEEE 802.1Q的作用是生成VLAN標記,如下:
其中VID的取值范圍為[0,4095 ],VID=0用于識別幀優先級,故VLAN號的最大可能值為4094,最多可以配置4094個不同VLAN,其編號取值范圍為[1,4094]。
2、QinQ技術
QinQ技術是由IEEE 802.1Q擴展而來的新標準,即IEEE 802.1ad(運營商網橋協議),也就是在IEEE 802.1Q協議標簽前再次封裝IEEE 802.1Q協議標簽,一層是標識用戶系統網絡,另一層是標識網絡業務。
(四)VCMP協議
1、VCMP的概念
VLAN集中管理協議可實現在一臺交換機上創建、刪除VLAN,提供一種在二層網絡中傳播VLAN配置信息(域內所有指定的其他交換機自動同步創建、刪除相應的VLAN),簡單的來說,只需在一臺交換機上進行創建、刪除VLAN的操作,這些操作會同步至指定的所以交換機,從而大大地減少了工作量,并保證了各修改的一致性。
- 該協議常與GVRP協議對比,VCMP只能同步VLAN配置,而不能將端口動態地劃分到VLAN,即我們通過VCMP創建的VLAN是靜態VLAN,而通過GVRP創建的VLAN是動態VLAN。
2、VCMP管理域
VCMP協議通過域管理各交換機,即VCMP管理域,同一域中域名相同,且通過Trunk或Hybrid鏈路接口連接的一組域名相同的交換機。
在管理域中定義各設備的角色從而確定設備的屬性,不同角色的定義和作用不同,在VCMP中分為以下四種角色:
在一個VLAN管理域中,只能有一臺管理設備(即Server設備只能有一個),但可以有多臺被管理設備(即Client、Transparent、Silent),另外一臺交換機只能加入一個VCMP管理域,若一個設備想加入該管理域中,需要配置與該域相同的域名且配置好相應的角色和相同的認證密碼,且同一VCMP管理域中的Server和每臺Client配置的域密碼必須相同。
3、VCMP角色
(1)Transparent和Silent
首先,我們要知道被設置為Transparent和Silent的交換機不屬于任何VCMP管理域(這一點在配置GVRP協議中用到),所以在屬于這兩種角色的設備上創建、刪除的VLAN信息不會受到Server影響,且也不會在域內傳播。
【Transparent角色主要用作透傳VCMP報文,Silent角色用于隔離VCMP管理域。】
(2)Server
Server是VLAN管理域中的管理角色,一個管理域只能有一個,它負責將VLAN信息通過VCMP報文同步給其相同管理域內的其他設備,即在這種角色的設備上創建、刪除的VLAN信息會在其域內傳播。
(3)Client
Client是VLAN管理域中的被管理角色,它會根據管理角色Server發過來的VCMP報文將VLAN信息同步到本地,在該角色上創建、刪除的VLAN信息不會在域內傳播,但會被Server發送的VLAN信息覆蓋。
4、VCMP協議報文
VCMP協議報文只能在Trunk和Hybrid類型接口上傳送
,報文分為三種組播方式的報文,由管理設備Server和被管理設備Client兩種角色觸發,如下:
(1)Summary-Advert報文和Subset-Advert報文
①觸發Summary-Advert報文的角色是Server,管理設備Server通過該報文向VCMP管理域內的其他設備通告域名、設備ID、配置修訂號以及同步VLAN信息,Server每5分鐘發送一次Summary-Advert報文(在默認情況下),從而來確保實時同步和防止遺漏。
②觸發Subset-Advert報文的角色也是Server,管理設備Server通過該報文向VCMP管理域內的其他設備通告非默認配置的VLAN名稱或VLAN描述,它的作用與Summary-Advert報文一樣,也是確保實時同步和防止遺漏。
(2)Advert-Request報文
觸發Advert-Request報文的角色是Client,角色通過該報文主動請求同步VLAN信息,以便及時同步。
2. 當在VCMP管理域中添加一臺Client設備或重啟Client設備時會主動發送Advert-Request報文。
5、部署VCMP的步驟
(五)GVRP協議
1、GVRP的概念
GVRP是GARP的一種應用,GVRP協議用于VLAN同步(使不同設備上的VLAN信息由協議動態維護和更新,用戶只需對少數設備進行配置即可應用到整個網絡,從而節省時間提高效率),它也用于注冊和注銷VLAN屬性。
如下,三臺交換機通過Trunk/Hybrid鏈路連接,其中LSW2上只有VLAN1,而LSW1和LSW3上有VLAN2,為了使VLAN1的報文可傳遞到LSW3上,我們知道可以通過手工添加VLAN的方式,但當在實際操作中的網絡拓撲圖可能就沒有這么容易,而是錯綜復雜的VLAN網,所以此時就可以通過GVRP的VLAN自動注冊完成VLAN的配置,使工作量減少且保證了準確性。
2、GVRP的注冊模式
GVRP的注冊模式分為三種,不同注冊模式下對靜態VLAN和動態VLAN的處理方式不同,如下:
#mermaid-svg-LW7vJPYAivVio7R0 {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-LW7vJPYAivVio7R0 .error-icon{fill:#552222;}#mermaid-svg-LW7vJPYAivVio7R0 .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-LW7vJPYAivVio7R0 .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-LW7vJPYAivVio7R0 .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-LW7vJPYAivVio7R0 .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-LW7vJPYAivVio7R0 .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-LW7vJPYAivVio7R0 .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-LW7vJPYAivVio7R0 .marker{fill:#333333;stroke:#333333;}#mermaid-svg-LW7vJPYAivVio7R0 .marker.cross{stroke:#333333;}#mermaid-svg-LW7vJPYAivVio7R0 svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-LW7vJPYAivVio7R0 .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-LW7vJPYAivVio7R0 .cluster-label text{fill:#333;}#mermaid-svg-LW7vJPYAivVio7R0 .cluster-label span{color:#333;}#mermaid-svg-LW7vJPYAivVio7R0 .label text,#mermaid-svg-LW7vJPYAivVio7R0 span{fill:#333;color:#333;}#mermaid-svg-LW7vJPYAivVio7R0 .node rect,#mermaid-svg-LW7vJPYAivVio7R0 .node circle,#mermaid-svg-LW7vJPYAivVio7R0 .node ellipse,#mermaid-svg-LW7vJPYAivVio7R0 .node polygon,#mermaid-svg-LW7vJPYAivVio7R0 .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-LW7vJPYAivVio7R0 .node .label{text-align:center;}#mermaid-svg-LW7vJPYAivVio7R0 .node.clickable{cursor:pointer;}#mermaid-svg-LW7vJPYAivVio7R0 .arrowheadPath{fill:#333333;}#mermaid-svg-LW7vJPYAivVio7R0 .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-LW7vJPYAivVio7R0 .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-LW7vJPYAivVio7R0 .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-LW7vJPYAivVio7R0 .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-LW7vJPYAivVio7R0 .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-LW7vJPYAivVio7R0 .cluster text{fill:#333;}#mermaid-svg-LW7vJPYAivVio7R0 .cluster span{color:#333;}#mermaid-svg-LW7vJPYAivVio7R0 div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-LW7vJPYAivVio7R0 :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}GVRP的注冊模式1.Normal模式2.Fixed模式3.Forbidden模式VLAN模式有Normal模式、Fixed模式和Forbidden模式三種,Forbidden模式很好理解,它只發送VLAN1的聲明,其他都被禁止(除VLAN以外的所有VLAN都被刪除),且不允許動態VLAN在端口注冊;Fixed模式也不允許動態VLAN注冊,只發送靜態VLAN的聲明;而Normal普通模式下動態VLAN的注冊是允許的,在這種模式下靜態VLAN和動態VLAN的聲明它都發送,如下表:
| Normal模式 | 允許動態VLAN在端口注冊,同時發送靜態VLAN和動態VLAN的聲明消息 |
| Fixed模式 | 不允許動態VLAN在端口注冊,只發送靜態VLAN的聲明消息 |
| Forbidden模式 | 不允許動態VLAN在端口注冊,同時刪除端口上除了VLAN1之外的所有VLAN,只發送VLAN1的聲明消息 |
3、GVRP的消息類型
#mermaid-svg-lbTPojp1aktfjMxn {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-lbTPojp1aktfjMxn .error-icon{fill:#552222;}#mermaid-svg-lbTPojp1aktfjMxn .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-lbTPojp1aktfjMxn .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-lbTPojp1aktfjMxn .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-lbTPojp1aktfjMxn .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-lbTPojp1aktfjMxn .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-lbTPojp1aktfjMxn .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-lbTPojp1aktfjMxn .marker{fill:#333333;stroke:#333333;}#mermaid-svg-lbTPojp1aktfjMxn .marker.cross{stroke:#333333;}#mermaid-svg-lbTPojp1aktfjMxn svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-lbTPojp1aktfjMxn .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-lbTPojp1aktfjMxn .cluster-label text{fill:#333;}#mermaid-svg-lbTPojp1aktfjMxn .cluster-label span{color:#333;}#mermaid-svg-lbTPojp1aktfjMxn .label text,#mermaid-svg-lbTPojp1aktfjMxn span{fill:#333;color:#333;}#mermaid-svg-lbTPojp1aktfjMxn .node rect,#mermaid-svg-lbTPojp1aktfjMxn .node circle,#mermaid-svg-lbTPojp1aktfjMxn .node ellipse,#mermaid-svg-lbTPojp1aktfjMxn .node polygon,#mermaid-svg-lbTPojp1aktfjMxn .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-lbTPojp1aktfjMxn .node .label{text-align:center;}#mermaid-svg-lbTPojp1aktfjMxn .node.clickable{cursor:pointer;}#mermaid-svg-lbTPojp1aktfjMxn .arrowheadPath{fill:#333333;}#mermaid-svg-lbTPojp1aktfjMxn .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-lbTPojp1aktfjMxn .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-lbTPojp1aktfjMxn .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-lbTPojp1aktfjMxn .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-lbTPojp1aktfjMxn .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-lbTPojp1aktfjMxn .cluster text{fill:#333;}#mermaid-svg-lbTPojp1aktfjMxn .cluster span{color:#333;}#mermaid-svg-lbTPojp1aktfjMxn div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-lbTPojp1aktfjMxn :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}消息類型1.Join消息JoinInJoinEmpty2.Leave消息LeaveInLeaveEmpty3.LeaveAll消息各GVRP應用實體之間的信息交換主要通過Join消息、Leave消息和LeaveAll消息三類消息組成。
2. Join消息:當希望其他設備注冊自己的屬性信息時,GVRP應用實體會對外發送Join消息;當收到其他實體的Join消息或本設備靜態配置了某些屬性時,需其他GVRP應用實體注冊時,也會發送Join消息。【Join定時器、Hold定時器用于控制Join消息的發送】
3. Leave消息:當希望其他設備注銷自己的屬性信息時,GVRP應用實體會對外發送Leave消息;當收到其他實體的Leave消息或本設備靜態注銷了某些屬性時,也會發送Leave消息。【Hold定時器用于控制Join消息和Leave的發送,另外Leave定時器用于控制屬性注銷】
4. LeaveAll消息:用于注銷所有的屬性,每個GVRP應用實體啟動后都會同時啟動Leave All定時器,當該定時器超時后GVRP應用實體即會對外發送 LeaveAll消息。
4、GVRP的定時器
5、GVRP單向注冊和雙向注冊
(1)單向注冊
如下拓撲圖,在LSW2上注冊VLAN2,通過GVRP的單向注冊,依次將LSW1和LSW3的相應端口自動加入至VLAN2中:
接下來分析其過程:
①首先我們在LSW2上手工創建了靜態VLAN:VLAN2,其端口Ethernet 0/0/1啟動Join定時器和Hold定時器,由于Hold定時器等待一個Hold定時器時間間隔后再發送消息,所以即它超時后向LSW1發送第一個JoinEmpty消息,一段時間間隔后Hold定時器再次啟動,再次等待超時后,發送第二個JoinEmpty消息。
②LSW1收到第一個JoinEmpty消息后,創建動態VLAN2(通過GVRP同步的VLAN是動態VLAN),并將接收JoinEmpty消息的端口(LSW1的Ethernet 0/0/1)加入到動態VLAN2中,一段時間后此時收到第二個JoinEmpty消息,由于已經加入動態VLAN2,所以該消息不做處理。在加入動態VLAN1的同時告知其相應端口(LSW1的Ethernet 0/0/2)啟動Join、Hold定時器,與LSW2一樣,等待超時后向LSW3發送第一個JoinEmpty消息,一段時間間隔后Hold定時器再次啟動,再次等待超時后,發送第二個JoinEmpty消息。
③LSW3與LSW1一樣,收到第一個JoinEmpty消息后創建動態VLAN2,并將相應接收的端口加入至動態VLAN2中,同樣對第二個消息也是不處理。
④此時,每當LeaveAll定時器超時或收到LeaveAll消息后設備會重新啟動四個定時器,重新以上的步驟。
注:單向注冊后,只有LSW1的Ethernet 0/0/2還未加入動態VLAN2,其他端口都已加入,這是由于只有收到JoinEmpty消息或JoinIn消息的端口才能加入動態VLAN。
(2)雙向注冊
雙向注冊相對于單向注冊,可以使各設備之間雙向互通,也就是該過程中,由LSW3反向向LSW1發送JoinIn消息,從而使未加入動態VLAN2的LSW1的Ethernet 0/0/2也加入,即在單向注冊完成后,在LSW3上創建靜態VLAN2,像LSW2一開始一樣發送,不過此時LSW3向LSW1發送的不再是JoinEmpty消息,而是JoinIn消息(因為VLAN2已經注冊),它也是發送第一個JoinIn消息,然后時間間隔、超時后發送第二個JoinIn消息,……,LSW2上接收到JoinIn消息之后,停止向LSW1發送JoinEmpty消息,而是發送JoinIn消息,傳遞至LSW1,最后LSW3收到LSW2的JoinIn消息后由于已經創建了靜態VLAN2,此時不會再創建動態VLAN2。
這里的內容參考:配置指南-以太網交換
三、交換網絡中的生成樹協議
(一)STP的基本概念
STP協議是IEEE 802.1d中定義的鏈路管理協議,其作用是為網絡提供路徑冗余,同時防止產生環路,它通過BPDU交換STP消息。
(二)STP交換機接口狀態
啟動了STP的交換機接口狀態和作用如下:
| 阻塞 | 接收BPDU、不轉發幀 |
| 偵聽 | 接收BPDU、不轉發幀、接收網管消息 |
| 學習 | 接收BPDU、不轉發幀、接收網管消息、把終端站點位置信息添加到地址數據庫(構建網橋表) |
| 轉發 | 接收BPDU、不轉發幀、接收網管消息、發送和接收用戶數據、把終端站點位置信息添加到地址數據庫(構建網橋表) |
| 禁用 | 端口處于shutdown狀態,不轉發BPDU和數據幀 |
注:阻塞狀態到偵聽狀態需20s,偵聽狀態到學習狀態需15s,學習狀態到轉發狀態需15s。
(三)STP工作原理
STP首先選擇根網橋,然后選擇根端口,最后選擇指定端口。
1、選擇根網橋
由于每臺交換機都有一個唯一的網橋ID,即BID(由2byte網橋優先級字段+6byteMAC地址字段),最小BID值的交換機稱為根交換機,比較BID值大小時,先比較優先級,后比較MAC地址。
2、選擇根端口
選擇距離根網橋最近(成本最低的)的非根網橋端口為根端口。
3、選擇指定端口
每個網段選擇一個指定端口,根敲所有端口均為指定端口。
(三)RSTP和MSTP
1、RSTP
RSTP是在STP的基礎上實現網絡拓撲快速收斂,但無法實現VLAN之間數據流量的負載均衡;
2、MSTP
MSTP將一個交換網絡劃分為多個域,每個域內形成多棵生成樹且各生成樹間獨立,每一個生成樹稱為一個多生成樹實例,每個域稱為一個MST域,即將多個VLAN捆綁到一個實例,從而節省通信開銷和資源占有率,另外一個VLAN只能對應一個多生成樹實例,即同一個VLAN的數據只能在一個多生成樹實例中傳輸,但一個多生成樹實例可能對應多個VLAN。
總結
以上是生活随笔為你收集整理的(*长期更新)软考网络工程师学习笔记——Section 17 交换技术原理的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 数据结构题:由逆置数组方法——逆置线性表
- 下一篇: (*长期更新)软考网络工程师学习笔记——