一、STP端口状态和STP计时器

1、BPDU报文

1)BPDU:桥协议数据单元
作用:交换机之间通过周期性发送BPDU报文,来实现STP功能
2)BPDU的四个重要字段:
根网桥ID:根交换机的BID
根路径开销:本端口累计到根桥的开销值(cost值)
发送网桥ID:本交换机的BID
端口ID:发送该BPDU报文的端口的ID
3)BPDU 类型
配置 BPDU 和拓扑变更 BPDU。

2、STP端口的5种状态

禁用(disabled) :强制关闭,没有启动STP协议
阻塞(blocking):只接收BPDU报文,不发送BPDU报文
侦听(Listening):比较BPDU报文,确定交换机角色和端口角色
学习(Learning):基于端口上收到的数据帧,学习MAC地址表
转发(forwardding):端口最终的状态,能够发送和接收用户数据

3、STP3种的计时器

hello 时间:端口发送的BPDU报文的时间间隔:默认是2
转发延迟(forward delay):侦听—学习:15秒 、学习—转发:15
最大老化时间(Max Age):一个端口最大的“没有接收BPDU”的时间间隔:20

4、STP的最大收敛时间:30~50

1)根交换机故障,STP的收敛时间约50
2)链路故障:STP的收敛时间约30~50

5、STP的不足

1)STP收敛速度慢:30~50秒,导致网络中断时间过长

6、解决方案:RSTP :快速生成树

1)RSTP:快速生成树,公有协议:IEEE802.1w,在STP的基础上优化而来
作用:实现网络的快速收敛,降低网络故障时间,提高数据转发的效率
2)RSTPSTP的改进

-增加了2种端口角色(BPAP)

Backup Port(备份端口)主要是由于Designated Port的故障而触发的。当Designated Port发生故障时,Backup Port会立即开始转发数据。
Alternate Port(备用端口)网络拓扑发生变化时触发状态转换,并转变为指定(designated)端口或根(root)端口,从而提供冗余路径;

-减少了3种端口状态(禁用、阻塞、侦听三种状态合为一种)

-引入了P/A 机制(让指定端口尽快进入转发状态)

P表示提议 A表示:同意, 协议一致

二、MSTP

1.MSTP作用:

默认生成树协议只形成一个网络拓扑,不能有效利用所有网络带宽
为了实现网络的负载均衡,需要让网络形成多个无环拓扑,让不同vlan的主机,选择不同的拓扑来传数据

2、如何实现

1)在MSTP网络中,引入了域的概念,称为MST
2)每一个MST域中包含一个或多个“生成树”称为“实例”
3)每个“实例生成树”都可以绑定vlan,实现vlan数据流的负载分担/负载均衡
4)默认情况下,所有的vlan都属于“实例树0:即:instance 0”
5)不同的“实例树”、就是不同的“生成树”,每个实例树都可以选举根交换机

3、MSTP工作原理

1)MSTP工作过程:
选举根交换机
选举根端口-RP
选举指定端口-DP
确定替代端口-AP

2)确定端口状态:
(丢弃):相当于STP中的禁用、侦听、阻塞,不转发用户数据
Learning(学习):和STP 中的学习状态相同
Forwarding(转发):和STP中的转发状态相同

4、MSTP配置

每个交机创建vlan,交换相连的接口配置为trunk
配置STP模式为MSTP
交换机创建MSTP域名,实例和vlan的对应关系
交换机上激活MSTP区域配置

MSTP负载均衡:

拓扑



需求

1)PC1属于 vlan 10 ,IP地址为 192.168.10.1/24,网关为 192.168.10.254
2)PC2属于 vlan 20 ,IP地址为 192.168.20.1/24,网关为 192.168.20.254
3)确保PC1PC2互通
4)合理配置 MSTP ,确保PC1PC2之间的互通路径是最优的

配置步骤

1)配置PCIP地址
2)在所有的交换机中都创建vlan10vlan20
3)交换机连接PC的接口设置为access模式,并加入指定的vlan
4)交换机和交换机互联的接口设置trunk模式,并允许vlan10vlan20 通过
5)在所有的交换机中配置MSTP,所有交换机中的MSTP配置都要完全相同
6)指定SW1vlan10的主根, vlan20的备根
7)指定SW2vlan20的主根, vlan10的备根
8)配置路由器接口的IP地址

配置命令

1)S1S2S3创建vlan并配置连接交换机的端口为trunk 
[S1]VLAN batch 10 20
[S1]port-group 1
[S1-port-group-1]group-member G0/0/5 G0/0/6
[S1-port-group-1]port link-type trunk 
[S1-GigabitEthernet0/0/5]port trunk allow-pass vlan ALL

[S2]VLAN batch 10 20
[S2]port-group 1
[S2-port-group-1]group-member G0/0/5 G0/0/6
[S2-port-group-1]port link-type trunk 
[S2-GigabitEthernet0/0/5]port trunk allow-pass vlan ALL

[S3]VLAN batch 10 20
[S3]port-group 1
[S3-port-group-1]group-member G0/0/5 G0/0/6
[S3-port-group-1]port link-type trunk 
[S3-GigabitEthernet0/0/5]port trunk allow-pass vlan ALL

 2) S1S2S3配置MSTP区域并激活 
[S1]stp mode mstp 启用MSTP协议
[S1]stp region-configuration 创建区域
[S1-mst-region]region-name ntd 定义区域名为ntd
[S1-mst-region]instance 1 vlan 10 指定vlan与实例的对应关系
[S1-mst-region]instance 2 vlan 20
[S1-mst-region]active region-configuration 激活区域配置


[S2]stp mode mstp 启用MSTP协议
[S2]stp region-configuration 创建区域
[S2-mst-region]region-name ntd 定义区域名为ntd
[S2-mst-region]instance 1 vlan 10 指定vlan与实例的对应关系
[S2-mst-region]instance 2 vlan 20
[S2-mst-region]active region-configuration 激活区域配置

[S3]stp mode mstp 启用MSTP协议
[S3]stp region-configuration 创建区域
[S3-mst-region]region-name ntd 定义区域名为ntd
[S3-mst-region]instance 1 vlan 10 指定vlan与实例的对应关系
[S3-mst-region]instance 2 vlan 20
[S3-mst-region]active region-configuration 激活区域配置

 3)配置S1为vlan10的主根、vlan20的次根网桥并查看配置 
[S1]stp instance 1 priority 4096
[S1]stp instance 2 priority 8192

 4)配置S2为vlan20的主根、vlan10的次根根网桥并查看配置 
[S2]stp instance2 priority 4096
[S2]stp instance 1 priority 8192
 
5)配置PC1加入vlan10、PC2加入vlan20 
[S3]interface GigabitEthernet 0/0/1
[S3-GigabitEthernet0/0/1]port link-type access 
[S3-GigabitEthernet0/0/1]port default vlan 10
[S3]interface GigabitEthernet 0/0/2
[S3-GigabitEthernet0/0/2]port link-type access 
[S3-GigabitEthernet0/0/2]port default vlan 20

 6)配置S1与路由相连的接口加入vlan10 
[S1]interface GigabitEthernet 0/0/1
[S1-GigabitEthernet0/0/1]port link-type access 
[S1-GigabitEthernet0/0/1]port default vlan 10

 7)配置S2与路由相连的接口加入 vlan20 
[S2]interface GigabitEthernet 0/0/2
[S2-GigabitEthernet0/0/2]port link-type access 
[S2-GigabitEthernet0/0/2]port default vlan 20

 8)配置路由器接口IP 
[R1]interface GigabitEthernet 0/0/1
[R1-GigabitEthernet0/0/1]ip address 192.168.10.254 24
[R1]interface GigabitEthernet 0/0/2
[R1-GigabitEthernet0/0/2]ip address 192.168.20.254 24

 9)测试与验证 
pc1 ping  pc2  通

 10)查看验证 
 <SW3>display stp brief 
查看S1的instance 1 g0/0/5 g0/0/6都是指定接口
查看S2的instance 2 g0/0/5 g0/0/6都是指定接口  

三、Eth-Trunk(链路聚合)

1、Eth-Trunk(链路聚合技术 )

1)eth-trunk可以把多个独立的物理接口绑定在一起,作为一个大带宽的逻辑接口使用。

2、Eth-Trunk优势:

1)增加设备之间的互联带宽
2)提高设备之间的可靠性
3)对流量负载均衡,提高链路利用率

3、Eth-Trunk链路聚合模式

1)手工模式
2)LACP模式

4、手工模式:如下图

1)手工模式下3条活动链路都参与数据转发并分担流量
2)当一条链路故障时,在剩余的2条活动链路中分担流量

5、Eth-Trunk接口配置流程

1)创建eth-trunk
2)选择链路聚合模式
3)在eth-trunk中加入成员接口

6、配置手工模式Eth-trunk

拓扑

需求

1)对交换机之间的链路进行链路捆绑,增加互联带宽
2)确保同 VLAN的 PC 之间互通

配置步骤

1)PC配置IP地址
2)所有交换机创建vlan10 和vlan20
3)交换机和PC互联的接口设置为access ,并加入指定的vlan
4)创建Eth-Trunk
5)配置Eth-Trunk的工作模式为手工模式
6)Eth-Trunk中加入成员接口

配置命令

SW1配置: 
[SW1]vlan batch 10 20   
[SW1]interface G0/0/3 
[SW1-G0/0/3]port link-type access    
[SW1-G0/0/3]port default vlan 10 
 
[SW1-G0/0/3]interface G0/0/4
[SW1-G0/0/4]port link-type access    
[SW1-G0/0/4]port default vlan 20  
[SW1-G0/0/4]quit

[SW1]interface eth-trunk 1   //创建并进入 eth-trunk 1
[SW1-Eth-Trunk1]mode manual load-balance   //配置手工模式
[SW1-Eth-Trunk1]trunkport g0/0/1   //加入成员端口 
[SW1-Eth-Trunk1]trunkport g0/0/2   //加入成员端口 
[SW1-Eth-Trunk1]port link-type trunk      //配置 eth-trunk 类型为 trunk
[SW1-Eth-Trunk1]port trunk allow-pass vlan 10 20   //允许 vlan10和vlan20

 SW2配置: 
[SW2]vlan batch 10 20   
[SW2]interface G0/0/3 
[SW2-G0/0/3]port link-type access    
[SW2-G0/0/3]port default vlan 10  
[SW2-G0/0/3]interface G0/0/4
[SW2-G0/0/4]port link-type access    
[SW2-G0/0/4]port default vlan 20  

[SW2]interface eth-trunk 1
[SW2-Eth-Trunk1]mode manual load-balance
[SW2-Eth-Trunk1]trunkport g0/0/1
[SW2-Eth-Trunk1]trunkport g0/0/2
[SW2-Eth-Trunk1]port link-type trunk     
[SW2-Eth-Trunk1]port trunk allow-pass vlan 10 20  

 验证与测试: 
pc1 ping pc3  通
pc2 ping pc4  通


7、LACP模式:如下图:

1)LACP模式也称为M:N模式
2)M条活动链路,N条备份链路
3)当活动链路出现故障时,备份链路才进行转发

8、LACP模式工作原理

确定主动端
确定活动链路
LACP抢占功能

9、确定LACP主动端

1)通过比较两端交换机的系统优先级来确定LACP主动端
2)系统优先级数值越小越优先,默认值是32768
3)如果系统优先级相同,则比较两端设备的MAC地址,越小越优先

10、确定LACP活动链路

1)通过系统优先级选举出LACP主动端后,以主动端的接口优先级来选择活动接口
2)接口优先级数值越小越优先,默认值是32768
3)如果主动端设备的接口优先级相同,则根据接口号的大小来选举活动端口,(接口号越小越优先)

11、配置LACP模式Eth-trunk

拓扑

需求

-PC1PC3属于vlan 10、PC2PC4属于vlan 20
-设备之间配置lacp模式的链路聚合,并确保同vlan之间的主机可以互通

配置步骤

1)PC配置IP地址
2)所有的交换机都创建vlan10 20
3) 交换机和pc互联的接口做成access ,并且加入指定的vlan
4)设置交换机的lacp 优先级,确定主动端设备
5) 配置链路聚合
-创建链路聚合组,组号为1
-配置链路聚合的工作模式lacp
-在链路聚合中添加成员接口
-设置接口trunk模式
-设置活动端口(活动链路)的上限阈值为2
-开启lacp 抢占

配置命令

SW1配置: 
[SW1]vlan batch 10 20
[SW1]int g0/0/4
[SW1-GigabitEthernet0/0/4]port link-type access
[SW1-GigabitEthernet0/0/4]port default vlan 10
[SW1-GigabitEthernet0/0/4]int g0/0/5
[SW1-GigabitEthernet0/0/5]port link-type access
[SW1-GigabitEthernet0/0/5]port default vlan 20
[SW1-GigabitEthernet0/0/5]quit
[SW1]lacp priority 100    //配置lacp的系统优先级(越小越优先)
[SW1]interface eth-trunk 1   //创建链路聚合组1
[SW1-Eth-Trunk1]mode lacp-static   //链路聚合的工作模式是lacp
[SW1-Eth-Trunk1]trunkport  g 0/0/1  to  0/0/3   //在链路聚合组中添加成员接口
[SW1-Eth-Trunk1]port link-type trunk     //设置trunk模式
[SW1-Eth-Trunk1]port trunk allow-pass vlan 10 20    //允许vlan10 20 流量通过
[SW1-Eth-Trunk1]max active-linknumber 2   //设置活动端口的上限阈值为2  
[SW1-Eth-Trunk1]lacp preempt enable   //开启抢占功能

 SW2配置: 
[SW2]vlan batch  10  20
[SW2]int g0/0/4
[SW2-GigabitEthernet0/0/4]port link-type access
[SW2-GigabitEthernet0/0/4]port default vlan 10
[SW2-GigabitEthernet0/0/4]int g0/0/5
[SW2-GigabitEthernet0/0/5]port link-type access
[SW2-GigabitEthernet0/0/5]port default vlan 20
[SW2-GigabitEthernet0/0/5]quit
[SW2]int eth-trunk 1
[SW2-Eth-Trunk1]mode lacp-static 
[SW2-Eth-Trunk1]trunkport g 0/0/1 to 0/0/3
[SW2-Eth-Trunk1]max active-linknumber 2
[SW2-Eth-Trunk1]port link-type trunk
[SW2-Eth-Trunk1]port trunk allow-pass vlan 10 20
[SW2-Eth-Trunk1]lacp preempt enable 


 测试与验证: 
pc1 ping  pc3  通
pc1 ping  pc4  通

[SW1]display eth-trunk 1     //显示链路聚合信息                      
Preempt Delay Time: 30      //抢占延迟30秒         
System Priority: 100      //系统优先级:100                   
Least Active-linknumber: 1  Max Active-linknumber: 2  (最大活跃链路:2Operate status: up   (状态:up)                   
--------------------------------------------------------------------------------
ActorPortName          Status   PortType PortPri  PortNo
GigabitEthernet0/0/1   Selected 1GE      32768    2   (lacp给本段接口分配的序号)  
GigabitEthernet0/0/2   Selected 1GE      32768    3     
GigabitEthernet0/0/3   Unselect 1GE      32768    4

 备注:  Selected :被选择的接口      
       Unselect :位被选择的接口 
        PortPri : 端口lacp优先级 
        PortNo  : lacp 协议给成员口分配的编号 

Partner:  (本段接口所连接的对端设备接口信息) 
--------------------------------------------------------------------------------
ActorPortName          SysPri   SystemID        PortPri   PortNo 
GigabitEthernet0/0/1   32768    4c1f-ccef-5a42  32768     4 (lacp给对端接口分配的序号) 
GigabitEthernet0/0/2   32768    4c1f-ccef-5a42  32768     5  
GigabitEthernet0/0/3   32768    4c1f-ccef-5a42  32768     6

链路聚合综合实验


1)S1-S6创建链路聚合接口

[S1]interface Eth-Trunk 1
[SW1-Eth-Trunk1]mode lacp-static
[S1-Eth-Trunk1]trunkportGigabitEthernet 0/0/3 0/0/4
[S1-Eth-Trunk1]port link-typetrunk
[S1-Eth-Trunk1]port trunk allow-pass vlan all

[S2]interface Eth-Trunk 1
[SW2-Eth-Trunk1]mode lacp-static
[S2-Eth-Trunk1]trunkportGigabitEthernet 0/0/5 0/0/6
[S2-Eth-Trunk1]port link-typetrunk
[S2-Eth-Trunk1]port trunk allow-pass vlan ALL

[S3]interface Eth-Trunk 1
[SW3-Eth-Trunk1]mode lacp-static
[S3-Eth-Trunk1]trunkportGigabitEthernet 0/0/3 0/0/4
[S3-Eth-Trunk1]port link-typetrunk
[S3-Eth-Trunk1]port trunk allow-pass vlan all

[S4]interface Eth-Trunk 1
[SW4-Eth-Trunk1]mode lacp-static
[S4-Eth-Trunk1]trunkportGigabitEthernet 0/0/5 0/0/6
[S4-Eth-Trunk1]port link-typetrunk
[S4-Eth-Trunk1]port trunk allow-pass vlan all

[S5]interface Eth-Trunk 1
[SW5-Eth-Trunk1]mode lacp-static
[S5-Eth-Trunk1]trunkportGigabitEthernet 0/0/3 0/0/4
[S5-Eth-Trunk1]port link-typetrunk
[S5-Eth-Trunk1]port trunkallow-pass vlan all
[S5]interface Eth-Trunk 2
[SW5-Eth-Trunk2]mode lacp-static
[S5-Eth-Trunk2]trunkportGigabitEthernet 0/0/5 0/0/6
[S5-Eth-Trunk2]port link-typetrunk
[S5-Eth-Trunk2]port trunkallow-pass vlan all
[S5]interface Eth-Trunk 3
[SW5-Eth-Trunk3]mode lacp-static
[S5-Eth-Trunk3]trunkportGigabitEthernet 0/0/7 0/0/8
[S5-Eth-Trunk3]port link-typetrunk
[S5-Eth-Trunk3]port trunkallow-pass vlan all

[S6]interface Eth-Trunk 1
[SW6-Eth-Trunk1]mode lacp-static
[S6-Eth-Trunk1]trunkportGigabitEthernet 0/0/5 0/0/6
[S6-Eth-Trunk1]port link-typetrunk
[S6-Eth-Trunk1]port trunkallow-pass vlan all
[S6]interface Eth-Trunk 2
[SW6-Eth-Trunk2]mode lacp-static
[S6-Eth-Trunk2]trunkportGigabitEthernet 0/0/3 0/0/4
[S6-Eth-Trunk2]port link-typetrunk
[S6-Eth-Trunk2]port trunkallow-pass vlan all
[S6]interface Eth-Trunk 3
[SW6-Eth-Trunk3]mode lacp-static
[S6-Eth-Trunk3]trunkportGigabitEthernet 0/0/7 0/0/8
[S6-Eth-Trunk3]port link-typetrunk
[S6-Eth-Trunk3]port trunk allow-pass vlan all

2)S1-S6创建vlan

[S1]vlan batch 10 20
[S2]vlan batch 10 20
[S3]vlan batch 10 20
[S4]vlan batch 10 20
[S5]vlan batch 10 20
[S6]vlan batch 10 20

3)S1-S4端口加入vlan

[S1]interface GigabitEthernet0/0/1
[S1-GigabitEthernet0/0/1]portlink-type access
[S1-GigabitEthernet0/0/1]port default vlan 10

[S2]interface GigabitEthernet0/0/1
[S2-GigabitEthernet0/0/1]portlink-type access
[S2-GigabitEthernet0/0/1]port default vlan 20

[S3]interface GigabitEthernet0/0/1
[S3-GigabitEthernet0/0/1]portlink-type access
[S3-GigabitEthernet0/0/1]port default vlan 10

[S4]interface GigabitEthernet0/0/1
[S4-GigabitEthernet0/0/1]portlink-type access
[S4-GigabitEthernet0/0/1]port default vlan 20