鏈路備份技術(鏈路聚合、RSTP)

? 一、鏈路聚合!鏈路備份技術之一

-----鏈路聚合(Link Aggregation)被視為鏈路備份技術,核心原因在于它能通過多條物理鏈路的捆綁,實現 “一條鏈路故障時,其他鏈路自動接管流量” 的冗余備份效果,同時還能疊加帶寬。

1.概念

2.作用

3.鏈路聚合模式

3.1靜態鏈路聚合模式

3.2動態鏈路聚合模式

3.3靜態聚合 vs 動態聚合(核心差異)

對比項靜態聚合動態聚合
依賴協議不依賴 LACP,純手動配置依賴 LACP 協議自動協商
配置難度高(兩端參數必須嚴格一致,手動匹配)低(LACP 自動協商,參數兼容即可 )
故障檢測僅檢測物理端口狀態(Down/Up)基于 LACP 報文,檢測更智能(如鏈路質量、對端狀態 )
適用場景兩端設備固定、參數明確(如數據中心內網 )需動態適配、故障自愈(如廣域網接入、多廠商設備互聯 )

4.鏈路聚合的工作原理?

1. 鏈路聚合組(LAG)的創建

  • 首先在網絡設備(如交換機、路由器、服務器)上配置鏈路聚合組(LAG,Link Aggregation Group),將需要捆綁的物理端口加入同一 LAG。
  • 例如,交換機 A 的端口 1-4 與交換機 B 的端口 1-4 加入同一 LAG,形成一個邏輯鏈路。

2. 協商與協議適配

  • 鏈路聚合需要遵循標準化協議,確保兩端設備(如交換機 A 和 B)對 LAG 的配置一致,常用協議包括:

    • LACP(Link Aggregation Control Protocol,鏈路聚合控制協議):IEEE 802.3ad 標準,是最常用的協議。通過交換 LACP 報文,自動協商哪些物理鏈路可以加入 LAG,并動態維護鏈路狀態(如檢測鏈路故障)。
    • 靜態聚合:無需協議協商,由管理員手動指定加入 LAG 的物理鏈路。但靈活性低,無法自動檢測鏈路故障或動態調整。
  • LACP 的協商過程

    • 兩端設備通過專用的 LACP 報文(包含設備 ID、端口優先級、LAG 編號等信息)交換配置。
    • 協商成功后,兩端確認哪些物理鏈路可用,并將其激活為 LAG 的成員鏈路;未通過協商的鏈路則處于備用狀態。

3. 數據幀的分發與負載均衡

  • 當數據通過邏輯鏈路傳輸時,設備需要通過負載均衡算法決定將數據幀(數據包)發送到哪條物理鏈路。
  • 常用的負載均衡算法(根據數據幀的特征分類):
    • 基于源 / 目的 MAC 地址:根據數據幀的源 MAC 或目的 MAC 地址哈希計算,相同地址的幀固定走某條鏈路(適合二層網絡)。
    • 基于源 / 目的 IP 地址:根據源 IP 或目的 IP 地址哈希計算(適合三層網絡,如跨子網通信)。
    • 基于端口號:對于 TCP/UDP 流量,根據源端口或目的端口哈希(適合區分不同應用的流量)。
  • 示例:若采用 “源 IP + 目的 IP” 算法,同一對 IP 地址的通信會固定使用某條物理鏈路,不同 IP 對的通信則可能分配到其他鏈路,實現負載分散。

4. 故障檢測與鏈路切換

  • 鏈路聚合技術會實時監控各物理鏈路的狀態(通過 LACP 報文或鏈路層檢測機制,如鏈路脈沖信號)。
  • 若某條物理鏈路故障(如網線斷裂、端口損壞):
    • LACP 會立即檢測到故障,并將該鏈路從 LAG 中移除。
    • 原本通過該鏈路傳輸的流量,會根據負載均衡算法自動切換到其他正常鏈路,整個過程通常在毫秒級完成,對上層應用無感知。

二、?RSTP技術-鏈路備份技術

回顧STP技術?

1.端口角色確定

2.臨時環路怎么產生的??

3.通過定義端口規則避免環路?

STP 為了避免網絡環路,給交換機端口定義了?5 種狀態,不同狀態下端口的行為(收發 BPDU、學習 MAC、轉發數據)不同,目的是有序控制端口角色,逐步放開數據轉發,防止環路

狀態是否發送配置 BPDU是否學習 MAC 地址是否收發數據幀作用 / 說明
Disabled端口被管理員手動關閉 / 禁用,不參與 STP 計算,相當于 “物理斷開”
Blocking端口處于阻塞狀態,只接收 BPDU 但不處理,用于防止環路(初始選舉或拓撲變化時臨時阻塞)
Listening端口參與 STP 選舉,發送 / 接收 BPDU 來確定角色(根端口、指定端口等),但還沒開始轉發數據
Learning端口確定角色后,開始學習 MAC 地址(構建 MAC 地址表),但仍不轉發數據,進一步避免環路
Forwarding端口正常工作,轉發數據幀、收發 BPDU、學習 MAC,是最終 “活躍” 轉發狀態

4.STP 的傳統缺陷—— 拓撲變化時收斂慢?

5.TCN BPDU?

前提:拓撲變化觸發

情況 1:網絡里新接了一臺交換機,或者原本阻塞的端口(Blocking)被激活,變成 Forwarding 狀態(能轉發流量了 )。

  • 條件細化
    不僅要 “有端口進入 Forwarding”,還得滿足?“該交換機至少有一個指定端口(Designated Port)”?。
    • 解釋:“指定端口” 是 STP 里每個網段(鏈路)中負責轉發 BPDU 的端口,有指定端口說明交換機在網絡里 “有正式角色”,不是孤立的。如果新激活的端口所在交換機是 “孤網”(沒指定端口),就算端口狀態變,也不用發 TCN(發了也沒人處理 )。

情況 2:有端口 “丟失活躍鏈路”(從 Forwarding/Learning 轉 Blocking)

  • 場景:常見的如鏈路中斷(網線被拔、設備斷電 )、端口被手動關閉,或者 STP 重新計算后,端口從 Forwarding(轉發流量 )或 Learning(學習 MAC 地址 )狀態,被迫變成 Blocking(阻塞,不轉發流量,防止環路 )。
  • 本質:原本能轉發 / 學習的路徑失效了,網絡拓撲實際 “斷了一塊”,需要通知全網更新。

    6.總結

    ??1.流程分步解析

    1. (綠虛線,TCN 消息)SWD → SWC:上報拓撲變化

    SWD 發現鏈路中斷,符合?TCN拓撲變化通知,于是向自己的指定上游交換機(SWC )?發?TCN BPDU?,說 “拓撲變啦,快處理” 。

    2. (紅虛線,TCA 消息)SWC → SWD:確認收到 TCN

    SWC 收到 SWD 的 TCN 后,需要回復?TCA拓撲變化確認,告訴 SWD“我收到消息了,你別一直發” 。這一步是 “確認機制”,避免 TCN 消息一直刷屏 。

    3. (綠虛線,TCN 消息)SWC → SWA:繼續上報給根橋

    SWC 除了回 TCA 給 SWD ,還要把 TCN 消息繼續往根橋(SWA )?轉發(因為拓撲變化必須讓根橋知道,根橋才能發全網更新指令 ),同樣走 “逐級上報” 邏輯 。

    4. (紫實線,TCA 消息)SWA → SWB、SWA → SWC:根橋回 TCA

    根橋 SWA 收到 SWC 轉發的 TCN 后,會向所有非根橋交換機(這里是 SWB、SWC )?發?帶 TCA 置位的配置 BPDU?,確認 “我收到拓撲變化消息了” 。這一步是根橋對全網的 “確認反饋” 。

    5. (紫實線,TC 置位 BPDU )SWA → SWB、SWA → SWC:根橋發全網更新指令

    根橋 SWA 確認拓撲變化后,開始發?帶 TC(Topology Change,拓撲變化執行)置位的 BPDU?,告訴所有交換機:“拓撲變了,趕緊把 MAC 地址表老化時間從默認 300 秒改成 15 秒” 。這樣交換機能快速老化舊表項,重新學習新拓撲下的 MAC 映射,保證流量轉發正確 。

    6. (隱含邏輯)全網更新 MAC 表

    所有收到?TC 置位 BPDU?的交換機(SWB、SWC、SWD 等 ),會加速老化自己的 MAC 地址表。比如原本主機 A 走 SWB→SWD 的路徑,鏈路斷了后,新路徑可能變 SWB→SWC→SWD ,加速老化能讓交換機更快 “忘掉” 舊路徑,學習新路徑的 MAC 映射,網絡重新收斂 。

    7.STP 的缺點

    2.RSTP技術

    1.概念

    2. RST BPDU端口

    2.1 端口狀態

    2.2 端口角色

    邊緣端口:不影響結果的都可以設置邊緣端口,他還可以接路由器、服務器、終端。?

    3.RST BPDU格式

    第二位第七位指定收斂,快速機制

    56表示狀態?

    必須在點對點鏈路進行,不能接集線器和傻瓜交換機這種。

    4.RSTP快速收斂原理

    要是邊緣端口收到了 BPDU,說明這端口實際連的可能不是終端,而是其他交換機(或者能發 BPDU 的設備 ),原本 “接終端” 的假設不成立了。

    邊緣端口和根端口都不會產生環路,唯一會產生的是指定端口。

    三、MSTP技術--鏈路備份技術

    1.回顧STP和SRSTP的局限性

    總結(STP/RSTP 兩大核心局限)

    1. 負載分擔難:所有 VLAN 綁定同一棵生成樹,多條 Trunk 鏈路無法按 VLAN 分流,鏈路帶寬浪費。
    2. 路徑不最優:為了破除環路,STP 會阻塞端口,導致部分 VLAN 流量繞遠路,產生 “次優路徑”,影響傳輸效率。

    2.MSTP的基本概念及優勢

    2.1定義

    2.2MST域

    2.3 CST、IST、CIST、總根和域根

    注意:MST 域是 “設備 + 鏈路 + 統一配置” 的整體環境;

    IST 是這個環境?內部?設備和鏈路共同跑出來的 “生成樹邏輯” ,不是單純的鏈路!!,而是域內所有元素參與的拓撲結果 。

    MSTP 里生成樹是分層嵌套的,理解這幾個 “樹” 的關系,就懂 MSTP 整網邏輯:

    • IST(內部生成樹 )

      • 每個 MST 域內默認存在的生成樹,承載 “未映射到其他實例的 VLAN” + 域內控制信息(比如 BPDU 交互 )。實例0就是IST。
    • CST(公共生成樹 )

      • 跨 MST 域的生成樹,把每個 MST 域當 “單一網橋” 看待,計算域間的生成樹。
    • CIST(Common and Internal Spanning Tree,公共和內部生成樹 )

      • 整網唯一的 “超級樹”?,= IST(域內 ) + CST(域間 ),把所有域和設備納入統一邏輯。
      • 關鍵角色:
        • CIST 總根:整網生成樹的根橋(優先級最高的設備 );
        • CIST 域根:每個 MST 域在 CIST 里的根(域內 IST 根橋,同時參與 CIST 計算

    2.4. MSTP 端口角色

    MSTP 端口角色繼承 RSTP 大部分邏輯(比如 DP 是指定端口、RP 是根端口、AP 是替代端口 ),但新增?Master 端口:

    • Master 端口

      • 作用:連接 MST 域與外部(其他域或 STP/RSTP 設備)?,是 IST 根橋在 CIST 里的 “根端口”,負責域間生成樹信息交互。
      • 位置:MST 域的邊界端口(圖中 SWA 連接域外的端口,既是 “域邊界端口” 也是 “Master 端口” )。
    • 其他角色(和 RSTP 兼容)

      • DP(Designated Port,指定端口 ):負責向網段發流量(每個網段選一個 );
      • RP(Root Port,根端口 ):交換機到根橋的最優端口;
      • AP(Alternate Port,替代端口 ):備份根端口,阻塞狀態,根端口故障時啟用。

    ?3. MSTP的工作原理

    ?3.1MSTP的BPDU格式

    BPDU 交互邏輯:MSTP 交換機之間,同一域內會交互完整的 MSTP BPDU(含多實例信息 )跨域或和 RSTP 交換機交互時,會 “裁剪” MST 專有字段,只發 RST BPDU 部分 → 保證整網兼容。

    3.1.1 CIST的優先級向量?

    ?3.1.2 MSTI的優先級向量80

    3.2 MSTP的計算方法?

    3.3 MSTP的PA機制?

    4.保護機制

    1.BPDU的保護

    1.1 為什么會有BPDU的保護?又或者說為什么會和邊緣端口產生關系?

    因為邊緣端口是交換機連?終端設備(電腦 / 服務器)?的端口,默認是不會收到 BPDU。但是

    有人?誤接交換機 / 惡意注入 BPDU,邊緣端口就會收到 BPDU,此時,邊緣端口會轉化成非邊緣端口,就會發收BPUD報文,可能會導致整個網絡發生變化,甚至可能因為錯誤的拓撲計算產生網絡環路,影響網絡的正常運行。

    1.2 BPDU保護機制的作用

    一旦邊緣端口收到 BPDU,交換機就會將該端口關閉,避免因端口角色的改變而引發網絡拓撲的不必要變動。

    2.根橋保護

    2.1為什么要有根橋保護

    存在一些惡意攻擊者,會發送優先級更高的 BPDU(橋協議數據單元),宣稱自己是根橋,從而使合法根橋失去根橋地位,造成網絡癱瘓。

    也可能存在因誤配設備、私接高優交換機等操作,引發根橋異常變更。

    2.2 根橋保護的作用

    專注于 “防御更優根橋 BPDU”,保護當前根橋不被替換。

    3.環路保護

    針對根端口或 Alternate 端口,防止因鏈路單向故障導致端口誤判為 “轉發” 而形成環路(通過監控 BPDU 接收,若超時則進入 Discarding 狀態)。

    4.tc保護

    4.1為什么會有TC保護?

    在生成樹協議中,當網絡拓撲發生變化時,交換機會發送?TC - BPDU(拓撲變化橋協議數據單元)?報文,通知其他設備刪除過時的 MAC 地址表項,重新學習拓撲,確保流量正常轉發。

    而 TC 攻擊,是攻擊者?偽造大量 TC - BPDU 報文?注入網絡。交換機收到這些虛假報文后,會頻繁執行 “刪除 MAC 地址表項 → 重新學習” 操作,導致:

    • 設備資源耗盡:CPU 忙于處理刪除 / 學習任務,無法響應正常業務,甚至設備死機。
    • 網絡震蕩:MAC 地址表頻繁清空,流量轉發混亂(如用戶斷網、業務中斷 )。

    4.2 TC 保護機制的作用

    TC 保護機制通過?“限制 TC - BPDU 處理頻率”?抵御攻擊,主要在以下兩個方面:

    1. 時間閾值控制
    • 配置?TC 保護閾值,限定單位時間(默認 1 秒 )內可處理的 TC - BPDU 數量。
    • 例如:設置閾值為 5,若 1 秒內收到超過 5 個 TC - BPDU,交換機只處理前 5 個,丟棄剩余虛假報文,避免資源過載。
    2. 抑制不必要的 MAC 刪除
    • 當 TC - BPDU 數量超過閾值時,交換機進入?“抑制狀態”,不再盲目刪除所有 MAC 地址表項。
    • 僅刪除?與拓撲變化相關端口?的 MAC 表項(而非全局清空 ),減少無效操作對設備的沖擊。

    總結來說:通過限制單位時間內處理 TC-BPDU 報文的數量,抵御惡意攻擊導致的設備資源過度占用,同時避免頻繁刪除 MAC 地址表項引發的網絡轉發混亂。?

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

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

    相關文章

    PyTorch新手實操 安裝

    PyTorch簡介 PyTorch 是一個基于 Python 的開源深度學習框架,由 Meta AI(原 Facebook AI)主導開發,以動態計算圖(Define-by-Run)為核心,支持靈活構建和訓練神經網絡模型。其設計理念高度契合科…

    Element Plus Table 組件擴展:表尾合計功能詳解

    前言在現代數據驅動的社會中,數據分析和統計成為了非常重要的任務。為了更有效地分析數據和展示統計結果,前端開發人員可以使用Vue框架和Element Plus組件庫來實現數據的統計和分析功能。以下是一個關于如何在 Element Plus 的 el-table 組件中實現行匯總…

    神經網絡 非線性激活層 正則化層 線性層

    神經網絡 非線性激活層 作用:增強模型的非線性擬合能力 非線性激活層網絡: class activateNet(nn.Module):def __init__(self):super(activateNet,self).__init__()self.relu nn.ReLU()self.sigmoid nn.Sigmoid()def forward(self,input):#output sel…

    【Vue進階學習筆記】組件通信專題精講

    目錄前言props 父傳子原理說明使用場景代碼示例父組件 PropsTest.vue子組件 Child.vue自定義事件 $emit 子傳父原理說明使用場景代碼示例父組件 EventTest.vue子組件 Event2.vueEvent Bus 兄弟/跨層通信原理說明使用場景代碼示例事件總線 bus/index.ts兄弟組件通信示例Child2.v…

    【PTA數據結構 | C語言版】求最小生成樹的Prim算法

    本專欄持續輸出數據結構題目集,歡迎訂閱。 文章目錄題目代碼題目 請編寫程序,實現在帶權的無向圖中求最小生成樹的 Prim 算法。 注意:當多個待收錄頂點到當前點集的距離等長時,按編號升序進行收錄。 輸入格式: 輸入首…

    【加解密與C】Rot系列(四)RotSpecial

    RotSpecial 函數解析RotSpecial 是一個自定義函數,通常用于處理特定的旋轉操作,尤其在圖形變換或數據處理中。該函數可能涉及歐拉角、四元數或其他旋轉表示方法,具體行為取決于實現上下文。以下是關于該函數的通用解釋和可能的使用方法&#…

    【機器學習深度學習】LLaMAFactory中的精度訓練選擇——bf16、fp16、fp32與pure_bf16深度解析

    目錄 前言 一、 為什么精度如此重要?—— 內存、速度與穩定性的三角博弈 二、 四大精度/模式詳解: bf16, fp16, fp32, pure_bf16 三、 關鍵特性對比表 ▲四大計算類型核心對比表 ▲ 顯存占用對比示例(175B參數模型) ▲LLa…

    C# 基于halcon的視覺工作流-章21-點查找

    C# 基于halcon的視覺工作流-章21-點查找 本章目標: 一、檢測顯著點; 二、Harris檢測興趣點; 三、Harris二項式檢測興趣點; 四、Sojka運算符檢測角點; 五、Lepetit算子檢測興趣點;一、檢測顯著點 halcon算子…

    (11)機器學習小白入門YOLOv:YOLOv8-cls epochs與數據量的關系

    YOLOv8-cls epochs與數據量的關系 (1)機器學習小白入門YOLOv :從概念到實踐 (2)機器學習小白入門 YOLOv:從模塊優化到工程部署 (3)機器學習小白入門 YOLOv: 解鎖圖片分類新技能 (4)機器學習小白入門YOLOv :圖片標注實操手冊 (5)機…

    Grafana | 如何將 11.x 升級快速到最新 12.x 版本?

    [ 知識是人生的燈塔,只有不斷學習,才能照亮前行的道路 ]📢 大家好,我是 WeiyiGeek,一名深耕安全運維開發(SecOpsDev)領域的技術從業者,致力于探索DevOps與安全的融合(Dev…

    Dubbo + Spring Boot + Zookeeper 快速搭建分布式服務

    Dubbo Spring Boot Zookeeper 快速搭建分布式服務 本文將詳細介紹如何基于 Dubbo、Spring Boot 和 Zookeeper 快速搭建一個簡單的分布式服務調用場景,包含服務提供者(Provider)、服務消費者(Consumer)及公共接口&…

    五分鐘掌握 TDengine 數據文件的工作原理

    小 T 導讀:今天我們來探討一下——TDengine中的時序數據到底是如何存儲的? 在上一期的文章《五分鐘掌握 TDengine 時序數據的保留策略》中,我們知道了TDengine是如何按照時間段對數據進行分區來管理數據的。 接下來,我們和大家一起…

    Python爬蟲實戰:研究http-parser庫相關技術

    一、研究背景與意義 在當今數字化時代,網絡數據蘊含著巨大的價值。從商業決策、學術研究到社會治理,對海量網絡信息的有效采集與分析至關重要。網絡爬蟲作為數據獲取的核心工具,其性能與穩定性直接影響數據質量。然而,隨著互聯網技術的發展,網站反爬機制不斷升級,傳統爬…

    Go語言實戰案例-批量重命名文件

    在《Go語言100個實戰案例》中的 文件與IO操作篇 - 案例17:批量重命名文件 的完整內容,適合初學者實踐如何使用 Go 操作文件系統并批量處理文件名。🎯 案例目標實現一個小工具,能夠批量重命名指定目錄下的所有文件,例如…

    基于單片機非接觸紅外測溫系統

    傳送門 👉👉👉👉其他作品題目速選一覽表 👉👉👉👉其他作品題目功能速覽 概述 本設計實現了一種基于單片機的非接觸式紅外測溫系統,適用于快速、安全測量物體表面溫…

    Python 入門手札:從 0 到會--第十天Python常用的第三方庫Numpy,Pandas,Matplotlib

    目錄 一、Numpy 1.NumPy 是什么? 1.1安裝numpy 1.2 導入numpy模塊 2.NumPy 的核心:ndarray 2.1 什么是 ndarray? 2.2 ndarray 的創建方式 2.3 常見屬性(用于查看數組結構) 2.4 ndarray 的切片與索引 2.5 ndarr…

    mysql 性能優化之Explain講解

    EXPLAIN是 MySQL 中用于分析查詢執行計劃的重要工具,通過它可以查看查詢如何使用索引、掃描數據的方式以及表連接順序等信息,從而找出性能瓶頸。以下是關于EXPLAIN的詳細介紹和實戰指南:1. EXPLAIN 基本用法在SELECT、INSERT、UPDATE、DELETE…

    Redis 連接:深度解析與最佳實踐

    Redis 連接:深度解析與最佳實踐 引言 Redis 作為一款高性能的內存數據結構存儲系統,在當今的互聯網應用中扮演著越來越重要的角色。高效的 Redis 連接管理對于保證系統的穩定性和性能至關重要。本文將深入探討 Redis 連接的原理、配置以及最佳實踐,幫助讀者更好地理解和應…

    C語言---VSCODE的C語言環境搭建

    文章目錄資源下載配置環境驗證資源下載 站內下載 配置環境 解壓壓縮包,復制以下文件的路徑 打開主頁搜索系統環境變量 點擊環境變量 選擇系統變量中的Path,點擊編輯 在最后面添加路徑。 添加完成記得關機重啟。 驗證 重啟電腦之后打開在Power…

    ojdbc對應jdk版本附下載地址(截止20250722)

    可以從Oracle官網查看, JDBC and UCP Downloads page