vlan间路由技术和生成树协议
學習目標
數據流處理過程
單臂路由工作原理和網絡部署
多層交換技術工作原理和網絡部署
數據流分析基礎
單臂路由實現方式
三層交換路由實現方式
數據流分析基礎
二層交換機使用意義
以太網內部局域網組建,端口密度大
基于硬件芯片轉發,政府效率高
工作在OSI第二層,轉發二層數據
具體層級的數據頭部針對
MAC地址表
基于MAC地址表實現二層數據查找轉發
收到數據幀查看第二層數據頭部提取目標MAC地址 找到對應捆綁的端口使用 交換機
路由器使用意義
多種類型接口,用于連接多個IP子網及多種鏈路,并實現其互聯互通的網絡設備
工作在OSI第三層,轉發IP數據包
路由表
全局路由表,存儲在路由器的內存中,用于指示路由器如何將IP數據包
轉發至正確的目的地的信息表
先看MAC是不是發給自己的,如果不是,直接丟棄,如果是自己,剝離第二層,
看第三層目標IP 查看有無去往目標IP的路由
路由器和交換機的部署
交換機用在局域網內部,實現局域網內部通信
路由器放在網絡邊界 實現遠距離互聯 運營商專線申請
多個介質多個網段互聯 實現廣域網互聯
同一個子網內如何實現訪問,不同子網之間實現訪問
同一子網內的訪問,數據包封裝的目標MAC地址直接為目標設備的MAC
不同網段 ARP廣播 不能直接到達,路由器隔離廣播 泛洪只能在本網段內部進行
封裝的目標MAC地址為網關的MAC
目標PC或者網關的MAC地址可以通過ARP協議獲得
單臂路由實現方式
vlan間互通需求
根據連接業務的特點要求實現研發vlan,辦公vlan與服務器vlan間數據訪問,
不允許研發vlan和辦公vlan互訪
旁掛的方式,將路由器旁掛到網絡邊上
三層交換機
所有的子網 所有的vlan必須通過路由器實行一次轉發
dot1Q和子接口實現vlan間路由
trunk使得流量全部給路由器
子接口使得vlan區分開
拓撲
用路由器的fa0/1做網關
RT(config)#interface factEthernet 0/1
RT(config-if)#ip address 10.1.1.1/24
RT(config-if)#no shutdown
RT(config)#interface fastEternet 0/1.10
RT(config-subif)#encapsulation dot1Q 10
RT(config-subif)#ip address 10.1.10.1/24
RT(config)#interface fastEternet 0/1.11
RT(config-subif)#encapsulation dot1Q 11
RT(config-subif)#ip address 10.1.11.1/24
RT(config)#interface fastEternet 0/1.11
RT(config-subif)#encapsulation dot1Q 12
RT(config-subif)#ip address 10.1.12.1/24
SW(config)#interface fastEtheret 0/1
SW(config-if)#switchport mode trunk
PC1 ping PC3的過程
與目標IP進行與預算(結果和子網掩碼做對比)判斷是否在同一個子網當中
顯然PC1和PC3 在同一個子網當中
同一vlan 直接ARP 求得MAC地址 廣播請求 單播回應
查數據幀的目標MAC 發送出去接受回來
PC1和PC3 直接訪問同一個子網直接二層訪問
PC1 ping PC4的過程
判斷不在同一個網段
ARP,把數據丟給網關 用IP求MAC
用命令tracert 來追蹤
三層交換路由實現方式
軟轉發路由器性能瓶頸
低端路由器基于軟件轉發,vlan間路由轉發性能較低
高端路由器基于芯片轉發,但價格太高
二層交換機基于芯片轉發,但不能做三層轉發
將二層交換機和低端路由器性能結合起來
三層交換技術發展歷程
最早期三層交換機
二層交換機上插入一個路由器單板
二層交換和路由之間在設備內部使用trunk鏈路
轉發原理和單臂路由類似。只是在路由器單板上表現的接口為interface
路由器處理性能比較低
第二代
中期TCAM
cache表
規劃到硬件內部
以流為單位 流一般有多種 數據包 收到數據 處理方式交換 路由引擎內部查找 三層交換機
轉發算法固化到芯片
數據流 多個數據包
交換引擎 路由引擎 同一個數據 引擎 元素是一樣的
首包查路由表和ARP表形成32位路由表加入CACH額表 后續只需要查CACHe表
將路由器單板內存中的cache表下發的交換機硬件中的TCAM芯片中去轉發
缺陷 占用大量內存存儲cache表 網絡數據流較大時 占用內存很大 CPU性能造成較大影響
現代
路由單層和二層交換實現整合
路由表也出現了CEF轉發表
根據ARP表形成鄰接表
根據鄰接表和路由表形成了CEF表
直接將CEF表下發至TCAM芯片中去轉發
數據包 轉發是無需CPU干預,CPU只負責形成CEF表和下發至TCCAM
提升了設備的性能和穩定性
內部處理機制
三層交換機端口類型和配置
二層接口 轉發引擎 路由引擎 三層接口
三層接口配置
SW1(config)#interface fastEthernet 0/21
SW1(config-if)#no switchport
SW1(config-if)#ip address 192.168.1.1 255.255.255.0
SVI接口
SW1(config)#interface vlan10
SW1(config-if)#ip address 192.168.10.1 255.255.255.0
查看路由信息
show ip route
三層交換機 通過查看數據報文的目標MAC地址
SVI 直接給路由引擎
路由 直連路由
數據流處理體系
三層交換機配置
三層交換機網絡部署
生成樹技術
生成樹背景
生成樹關鍵參數計算算法 BPDU 開銷 計算使用
根網橋和跟端口選舉
指定端口選舉
端口狀態
生成樹產生背景
單星型網絡容易出現故障 可靠性較差
雙星型網絡午單故障點 可靠性較高
以太網環路的危害
廣播風暴
廣播報文泛洪 不停循環 (IP報文有TTL)
成指數增長,造成網絡資源浪費
多重幀
PC1發送數據 PC2收到兩份
MAC地址漂移
浪費交換機CPU處理資源 導致交換機資源浪費
未知數據幀 不斷更改修訂MAC地址列表 映射不斷修改
生成樹技術的使用意義
生成樹技術思想
通過冗余鏈路來來消除網絡中存在的環路 防環機制
發生故障時激活冗余鏈路
生成樹關鍵參數計算
算法需要的參數
STP樹狀算法
通過交換機之間傳遞一種特殊的協議消息來確定網絡的拓撲結構
協議消息中包含了足夠的信息來保證
生成樹算法
選擇根端口
選擇根網橋
選擇指定端口
BPDU 網橋協議數據單元
通過交換機傳遞組播報文
配置BPDU 網絡收斂時用于進行生成樹計算 維護網絡
TCN BPDU 拓撲變更通知 改變時發出 生成樹計算
數據幀結構 交換機ID
字段 字節
網橋id
用于標識STP的交換機,在網絡中唯一。由網橋優先級與MAC地址組成
網橋ID越小越優先 網橋
網橋優先級 2字節 默認是32768 按照4096的倍數配置 16位 2^16 32768
MAC 6字節 交換機背板的MAC
根網橋
網橋ID 最小的交換機稱為根網橋 次之的位備份根網橋
后續其他角色選定的參照點 根網橋作為選擇對比的參照點
次之的稱為備份根網橋 其實是交換機修改自身數據
一旦根網橋down 備份根網橋替上
在本地當中修改
端口ID
端口標識 運行STP的交換機每個接口都具有一個端口ID
由端口優先級和接口編號組成,越小越優
的端口優先級0-240 16倍數修改 一般很少修改端口優先級
根路徑開銷
到達根網橋的路徑開銷的總和
路徑開銷是指單條鏈路的STP開銷值,由相關標準指定,可以在交換機接口下手工修改
100 19 4 2
10 100 1000 10G
本地開銷疊加 鏈路
根路徑 鏈路開銷之和
BPDU 數據幀抓包 看數據幀結構
根網橋 信息
網絡穩定之后 所有的BPDU 的根網橋字段一樣 收斂完成
發送網橋的ID
交換機發送結果 網橋ID
端口ID BPDU 采用十進制
生成樹根網橋和根端口選舉
端口角色
根網橋 端口角色的參照設備,網絡中之喲一個根網橋
根端口 非根網橋交換機上距離根交換機最近的端口 只有一個
指定端口 每段鏈路有一個指定端口,用于向下游交換機發BPDU
阻塞端口 既不是根端口也不是指定端口的端口為阻塞端口 用于邏輯上阻塞數據 打破環路
選舉根網橋
判定對象 在所有 交換機中
啟用時假定自己是根網橋 BPDU 根網橋字段填寫自己的網橋ID
接受其他交換機發出的BPDU 選擇較小的添加到根網橋ID中
看BPDU的數據幀 收到之后查看 比較
交換比較
選舉根端口
端口到根網橋路徑開銷最小
發送方網橋ID最小
接收端口ID最小
跟路徑開銷計算 交換機2 3 加上鏈路開銷 不斷疊加
生成樹指定端口選舉
每一個物理網段的不同端口之間選舉出一個指定端口
判斷條件
網橋到根網橋路徑開銷最小
發送方網橋ID
發送方端口ID
根網橋上所有的端口都是指定端口
收斂形成無環拓撲
數據轉發路徑
理解指定端口的使用意義 掌握指定端口的選擇原則
生成樹端口狀態遷移
STP端口狀態
端口角色 端口狀態 端口行為
管理員手動關閉 disabled 不收不發BPDU 不收不發數據
非指定端口 非根端口 blocking 接受但不發送BPDU 不收不發不轉發 不學習MAC地址
listening 接受并發送BPDU 不接受也不轉發數據 不學習MAC
learning 接收并發送BPDU,不接收也不轉發數據,進行地址學習
指定端口或根端口 forwarding 接收并發送BDU,接收并轉發數據,學習MAC地址
STP端口狀態遷移
STP端口狀態遷移
指定端口 根端口
阻塞端口 很長時間收不到 上游 阻塞進偵聽
阻塞20
偵聽15
學習15
50S
轉發延遲 最大允許七級串聯 收到上游 發向下游
端口角色和端口狀態
STP啟動時,阻塞所有端口以防止環路所有端口都處于阻塞狀態
剛啟動完 交換機都認為是根網橋,所有端口搜是指定端口 遷移到偵聽
算法選舉出各端口角色 偵聽狀態完成
經過2個轉發時延 進轉發狀態
故障切換 鏈路出現故障 直連鏈路故障檢測
15秒偵聽 15秒學習
中繼式發送
非直連路 需要20+15+15
多出時間
端口狀態 功能特征 故障恢復機制
生成樹版本和配置
CST 公共生成樹
沒有基于VLAN的 造成鏈路資源浪費
不考慮vlan 單一的STP教程,占用資源最小
無法實現負載利用最大
PVST 每vlan生成樹
STP PVST PBST+
基于每vlan
通過調整生成樹根網橋調整里路
vlan的根分離
阻塞端口區分開
通過PVST
基于每vlan 不會造成鏈路資源浪費
最多維護64個無環vlan
標識基于每vlan
背板MAC 利用sys ID 兩個字節 分成 12 vlan 4 網橋優先級只剩下4個所以 4096 的倍數
vlan10 優先級-vlan ID
網絡收斂速度很慢
實時性要求較高的鏈路可能不可用
多個改良版本
IEEE和思科
RSTP 快速生成樹 快速收斂機制 rapid 毫秒級的收斂
PVRSTP+ 每vlan快速生成樹 基于每vlan 同時快速收斂
極大提高
MSTP 多實例生成樹 快速收斂 效果分擔
基于 實例 華三 華為 默認 MSTP
思科默認PVST+
多廠商兼容 最好 配置成MST 實現兼容
PVST+配置
Switch(config)#spanning-tree vlan ?
Switch(config)#spanning-tree vlan 10 root ?
Switch(config)#spanning-tree vlan 10 root priority secondary
Switch(config)#spanning-tree vlan 10 priority
Switch(config-if)#spanning-tree vlan 10 cost
Switch(config-if)#spanning-tree vlan 10 port-priority
實踐
每vlan的根網橋分離
SW1(config)#spanning-tree vlan 10 priority 0
SW1(config)#spanning-tree vlan 20 priority 4096
SW2(config)#spanning-tree vlan 20 priority 0
SW2(config)#spanning-tree vlan 10 priority 4096
查看生成樹狀態
SW1# show spanning-tree vlan 10
交換機和vlan關系
優先級 PVST 由優先級+vlan ID +mac
角色
forwarding
總結
以上是生活随笔為你收集整理的vlan间路由技术和生成树协议的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2022-2028全球及中国NTC热敏电
- 下一篇: c语言程序π,C语言求圆周率π(三种方法