STP生成树详解_01

一 、生成树协议产生的背景

1、局域网中出现的主要问题:

1) 网络互联 交换机和网线

2) 广播过多 分隔广播域 vlan

3) 局域网中终端设备较多,200台以上的计算机互通,需要多台交换机?

   多台交换机之间如何连线?

   交换机之间不互相连接-----------单点故障

   交换机之间互相连接--------------链路备份

2、新问题:

换机之间呈环状连接,可以解决单点故障的问题,存在了冗余链路,但是因为交换机之间的拓扑结构为环状,所以会产生广播风暴。

交换机之间无环拓扑----------不存在广播风暴,但是存在单点故障问题;

交换机之间环状拓扑----------没有单点故障,存在广播风暴问题;

3、广播风暴:

交换机会向除了进口之外的所有端口广播查找目标主机的mac地,如果此mac地址不存在,交换机之间就会不断的进行广播查找,直到交换机资源耗尽,死机为止。

4、解决问题:

所有交换机物理上呈环状首尾连接(解决单点故障问题),然后,所有交换机开机运行生成树协议(STP),通过生成树协议交换机彼此之间决定阻塞某个或某些端口,从而形成逻辑无环拓扑(避免了广播风暴),当现有的链路出现问题时,之前被阻塞的端口可以从新启用,从而形成一个新的逻辑无环拓扑(备份链路)    

1)  物理有环逻辑无环;

2)  物理有环:物理上交换机互相连接

3)  逻辑无环:通过生成树协议阻塞某些端口,从而形成逻辑无环拓扑;

二、生成树协议选举过程

生成协议: spanning  tree  protocol

含义:让交换机之间形成树状的无环拓扑

交换机之间通过生成树协议进行协商,最终决定阻塞哪个端口;

到底交换机之间是如何协商的?

协调阻塞端口的步骤及工作原理:

生成树算法分为3个步骤:

步骤1:确定交换机角色  (根交换机、非根交换机)

步骤2:确定交换机端口角色  (根端口、指定端口、非指定端口)

步骤3:确定交换机端口状态

STP生成树详解_01_第1张图片

 每个广播域选择根交换机(Root Bridge)

每个非根交换机上选择根端口(Root Port)

每个链路上选择指定端口(Designated Port)

剩下没有被选中的就是非指定端口如图:

选择根网桥:网桥ID (BID)

网桥ID是唯一的根网桥只有一个,其它网桥都是非根网桥;

交换机之间选择BID值最小的交换机作为网络中的根网桥

网桥ID=网桥优先级+网桥MAC地址

网桥优先级: 取值范围  0-65535     默认值 32768

修改的步长  4096 (单位)

     STP生成树详解_01_第2张图片

 如选举: 先比优先级 再比MAC地址

1)发现优先级都是3268

2)然后在对比MAC地址,mac地址小就是根网桥

STP生成树详解_01_第3张图片

选择根端口:选择根端口的依据

   在每个非根网桥上,选举一个根端口;

参加选举端口到达根网桥的路径成本之和最低

路径成本每条链路的带宽

默认情况下千兆1000M 链路成本为20000

百兆100M  链路成本为200000

说明:他这里说根路径成本,也就是花费时间越少,最近的路就可以达到最低的路径成本。 

成本路径一样的情况下在对比第二条

端口标识最小

端口标识(Port Identifier)

端口标识越小越优先,由端口优先级和端口号两部分组成,

端口优先级可配置,默认值128

STP生成树详解_01_第4张图片

直连的网桥ID最小 

此(参加选举)端口所直连的交换机的网桥ID最小,故与根交换机直连的端口都是根端口 

STP生成树详解_01_第5张图片

选择指定端口:

每根网线上选举一个指定端口

每根网线必须有一个指定端口,而且只能有一个指定端口;

根网桥上的所有端口都是指定端口

--此端口所在交换机到底根网桥的路径成本之和最低

--此端口所在交换机的网桥ID最小

STP生成树详解_01_第6张图片

DESI 指定端口  ALTE阻塞端口  ROOT 根端口

STP生成树详解_01_第7张图片

4、生成树协议原理  

1)BPDU   bridge    protocol  data  unit  协议数据单元

运行了生成树协议的交换机彼此之间用来交流生成树信息的数据包

类型:

配置BPDU   :详细介绍生成树的基本信息

拓扑变更BPDU:把生成树的变化信息告诉别的交换机

内容:

根网桥的网桥ID、自己的网桥ID、到根网桥的成本、端口ID

2)stp端口状态

生成树选举需要一定的时间和过程:stp收敛

收敛:设备从不稳定到稳定的过程

禁用 disabled 强制关闭

阻塞 blocking 不能转发数据帧,可以接收BPDU;

侦听 listening 不能转发数据帧,可以发送和接收BPDU;

学习 leraning 构建MAC地址表

转发 forwarding 转发数据帧

3)STP计时器

hello时间:2s,交换机发送BPDU的频率和周期

max-age(最大老化时间):20s, 表示的是交换机的接口如果在指定时间没有接收到

    BPDU的更新,那就把原来BPDU信息删除;

forward-relay(转发延迟):15s

侦听---->学习      15s

学习---->转发    15s

STP生成树详解_01_第8张图片

[A]STP enable  \\开启stp协议

[A]stp disable   \\关闭stp协议

Warning: The global STP state will be changed. Continue? [Y/N]y 确定关闭

Info: This operation may take a few seconds. Please wait for a moment...done.

[A]display  stp  \\查询stp信息

Protocol Status       :Disabled   关闭状态       

[A]stp  mode  stp  \\修改模式为stp

[A]display  stp   \\查询stp信息

-------[CIST Global Info][Mode STP]-------

[A]stp priority  8192

优先级在调整时,注意必须是4096的倍数 最小值0  4096  8192

根交换机上的端口全部都是指定端口

[A]interface Ethernet 0/0/4  \\进去0/0/4端口

[A-Ethernet0/0/4]stp  disable   \\关闭0/0/4端口的stp协议

[A]interface Ethernet 0/0/3  \\ 进入 0/0/3 端口

[A-Ethernet0/0/3]stp  cost  10000  \\修改 成本路径为1000

[A]display  stp   \\查询stp信息

-------[CIST Global Info][Mode STP]-------

STP生成树详解_01_第9张图片

5、MSTP工作原理

1)STP的缺点

收敛时间慢:30-50s

设备利用率低

解决方案:

RSTP 快速生成树协议

MSTP 多生成树协议

2)RSTP

IEEE802.1w

提高了收敛速度,增加了一些端口角色;

没有解决设备利用率低的问题

模式的修改配置命令:

stp mode rstp

3)MSTP

IEEE802.1S

提出了实例的概念,可以更好的提高设备的利用率;

实例 instance :  一个实例就是一个逻辑网络拓扑

      每个实例中都可以指定独立的根交换机

  实例之间不会互相影响

一 、MSTP的实验

STP生成树详解_01_第10张图片

配置思路:

1) 网络互联 交换机和网线

2.配置网络设备

  -交换机

   *初始化配置

   *创建vlan

   *交换机连接pc的端口

     设置模式为access并将端口加入对应的vlan

   *交换机连接交换机的端口

    设置模式为trunk并允许所有vlan通过

  *MSTP

   -修改模式MSTP

   -进去STP的配置区域

   -给此交换网起区域名

   -创建实例并关联valn

   -激活实例

1、交换机的初始化配置

undo  terminal  monitor   \\关闭终端消息提示

system-view    \\进去系统视图

[Huawei]sysname  sw1    \\修改设备名为SW1

[sw1]vlan batch  10  20    \\创建vlan 10  20

[sw1]quit          \\返回

undo  terminal  monitor   \\关闭终端消息提示

system-view    \\进去系统视图

[Huawei]sysname  sw2   \\修改设备名为SW2

[sw2]vlan batch  10  20    \\创建vlan 10  20

[sw2]quit          \\返回

undo  terminal  monitor   \\关闭终端消息提示

system-view    \\进去系统视图

[Huawei]sysname  sw3   \\修改设备名为SW3

[sw3]vlan batch  10  20    \\创建vlan 10  20

[sw3]quit          \\返回

undo  terminal  monitor   \\关闭终端消息提示

system-view    \\进去系统视图

[Huawei]sysname  sw4   \\修改设备名为SW4

[sw4]vlan batch  10  20    \\创建vlan 10  20

[sw4]quit          \\返回

2、交换机连接PC端口的配置 模式access并加入对应的vlan

[sw1]interface GigabitEthernet 0/0/1      \\进去接口0/0/1

[sw1-GigabitEthernet0/0/1]port link-type access    \\设置端口模式为access 

[sw1-GigabitEthernet0/0/1]port default vlan  10     \\将端口加入vlan 10 

[sw1-GigabitEthernet0/0/1]quit     \\返回

[sw2]interface GigabitEthernet 0/0/1      \\进去接口0/0/1

[sw2-GigabitEthernet0/0/1]port link-type access    \\设置端口模式为access 

[sw2-GigabitEthernet0/0/1]port default vlan  10     \\将端口加入vlan 10 

[sw2-GigabitEthernet0/0/1]quit     \\返回

[sw3]interface GigabitEthernet 0/0/1      \\进去接口0/0/1

[sw3-GigabitEthernet0/0/1]port link-type access    \\设置端口模式为access 

[sw3-GigabitEthernet0/0/1]port default vlan  20     \\将端口加入vlan 20 

[sw3-GigabitEthernet0/0/1]quit     \\返回

[sw4]interface GigabitEthernet 0/0/1      \\进去接口0/0/1

[sw4-GigabitEthernet0/0/1]port link-type access    \\设置端口模式为access 

[sw4-GigabitEthernet0/0/1]port default vlan  20     \\将端口加入vlan 20 

[sw4-GigabitEthernet0/0/1]quit     \\返回

3、交换机连接交换机端口的配置模式为trunk 并允许所有的vlan 通过

[sw1]port-group group-member  g0/0/12  g0/0/13   \\创建临时组将g0/0/12 g0/0/13组建一起

[sw1-port-group]port link-type trunk                 \\设置端口模式为trunk

[sw1-port-group]port trunk allow-pass vlan all         \\并允许所有的vlan通过

[sw1-port-group]quit      \\返回

[sw2]port-group group-member  g0/0/12  g0/0/13   \\创建临时组将g0/0/12 g0/0/13组建一起

[sw2-port-group]port link-type trunk                 \\设置端口模式为trunk

[sw2-port-group]port trunk allow-pass vlan all         \\并允许所有的vlan通过

[sw2-port-group]quit      \\返回

[sw3]port-group group-member  g0/0/12  g0/0/13   \\创建临时组将g0/0/12 g0/0/13组建一起

[sw3-port-group]port link-type trunk                 \\设置端口模式为trunk

[sw3-port-group]port trunk allow-pass vlan all         \\并允许所有的vlan通过

[sw3-port-group]quit      \\返回

[sw4]port-group group-member  g0/0/12  g0/0/13   \\创建临时组将g0/0/12 g0/0/13组建一起

[sw4-port-group]port link-type trunk                 \\设置端口模式为trunk

[sw4-port-group]port trunk allow-pass vlan all         \\并允许所有的vlan通过

[sw4-port-group]quit      \\返回

4、在交换机SW1 2 3 4 上做MSTP的配置 --保持一致
[sw1]stp mode mstp \\修改模式为mstp
[sw1]stp region-configuration \\进去stp的配置区域
[sw1-mst-region]region-name HCIE \\设置区域名为HCIE(名字可自定义,但四台交换机要保持一致)
[sw1-mst-region]instance 10 vlan 10 \\创建实例10并绑定vlan 10
[sw1-mst-region]instance 20 vlan 20 \\创建实例20并绑定vlan 20
[sw1-mst-region]active region-configuration \\激活配置区域
[sw1-mst-region]quit \\返回

5、将交换机SW1设置为vlan 10的根交换机
[sw1]stp instance 10 priority 0

6、将交换机SW4设置为vlan 20的根交换机
[sw4]stp instance 20 priority 0

[sw1]display stp instance 10 brief
查询发现 交换机SW1上的端口全部是指定端口

[sw4]display stp instance 20 brief
查询发现 交换机SW4上的端口全部是指定端口

[sw2]display stp brief   \\显示所有的实例的端口角色

二 、MSTP的负载均衡实验

STP生成树详解_01_第11张图片

配置思路:

1) 网络互联 交换机和网线

2.配置网络设备

  -交换机

   *初始化配置

   *创建vlan

   *交换机连接pc的端口

     设置模式为access并将端口加入对应的vlan

   *交换机连接交换机的端口

设置模式为trunk并允许所有vlan通过

   *交换机连接路由器的端口

     设置模式为access并将端口加入对应的vlan

  *MSTP

   -修改模式MSTP

   -进去STP的配置区域

   -给此交换网起区域名

   -创建实例并关联valn

   -激活实例

1、交换机的初始化配置

undo  terminal  monitor   \\关闭终端消息提示

system-view    \\进去系统视图

[Huawei]sysname  sw1    \\修改设备名为SW1

[sw1]vlan batch  10  20    \\创建vlan 10  20

[sw1]quit          \\返回

undo  terminal  monitor   \\关闭终端消息提示

system-view    \\进去系统视图

[Huawei]sysname  sw2   \\修改设备名为SW2

[sw2]vlan batch  10  20    \\创建vlan 10  20

[sw2]quit          \\返回

undo  terminal  monitor   \\关闭终端消息提示

system-view    \\进去系统视图

[Huawei]sysname  sw3   \\修改设备名为SW3

[sw3]vlan batch  10  20    \\创建vlan 10  20

[sw3]quit          \\返回

  1. 交换机连接PC端口的配置 模式access并加入对应的vlan

[sw3]interface Ethernet 0/0/1       \\进去接口0/0/1

[sw3-Ethernet0/0/1]port link-type access   \\设置端口模式为access 

[sw3-Ethernet0/0/1]port default vlan  10   \\将端口加入vlan 10 

[sw3-Ethernet0/0/1]quit   \\返回

[sw3]interface Ethernet 0/0/2    \\进去接口0/0/1

[sw3-Ethernet0/0/2]port link-type access  \\设置端口模式为access 

[sw3-Ethernet0/0/2]port default vlan  20   \\将端口加入vlan 20

[sw3-Ethernet0/0/2]quit     \\返回

3、交换机连接交换机端口的配置模式为trunk 并允许所有的vlan 通过

[sw1]port-group group-member  e0/0/3 e0/0/10     \\创建临时组将e0/0/3  e0/0/10组建一起

[sw1-port-group]port link-type trunk               \\设置端口模式为trunk

[sw1-port-group]port trunk allow-pass  vlan  all    \\并允许所有的vlan通过

[sw1-port-group]quit          \\返回

[sw2]port-group group-member  e0/0/4 e0/0/10    \\创建临时组将e0/0/4  e0/0/10组建一起

[sw2-port-group]port link-type trunk               \\设置端口模式为trunk

[sw2-port-group]port trunk allow-pass  vlan  all     \\并允许所有的vlan通过

[sw2-port-group]quit    \\返回

[sw3]port-group group-member  e0/0/3  e0/0/4   \\创建临时组将e0/0/4  e0/0/10组建一起

[sw3-port-group]port link-type trunk                \\设置端口模式为trunk

[sw3-port-group]port trunk allow-pass  vlan  all     \\并允许所有的vlan通过

[sw3-port-group]quit      \\返回

4、交换机连接路由器的端口

[sw1]interface Ethernet 0/0/1       \\进去接口0/0/1

[sw1-Ethernet0/0/1]port link-type access   \\设置端口模式为access 

[sw1-Ethernet0/0/1]port default vlan  20   \\将端口加入vlan 20 

[sw1-Ethernet0/0/1]quit   \\返回

[sw2]interface Ethernet 0/0/2    \\进去接口0/0/1

[sw2-Ethernet0/0/2]port link-type access  \\设置端口模式为access 

[sw2-Ethernet0/0/2]port default vlan  10   \\将端口加入vlan 10

[sw2-Ethernet0/0/2]quit     \\返回

4、路由器的配置

system-view   \\进去系统视图

[Huawei]sysname  r1    \\修改设备名为r1

[r1]interface GigabitEthernet 0/0/1    \\进去接口0/0/1

[r1-GigabitEthernet0/0/1]ip address  192.168.20.254 24   \\配置IP地址

[r1-GigabitEthernet0/0/1]quit

[r1]interface GigabitEthernet 0/0/2   \\进去接口0/0/2

[r1-GigabitEthernet0/0/2]ip address  192.168.10.254 24   \\配置IP地址

[r1-GigabitEthernet0/0/2]quit   \\返回

  1. 在交换机SW1 2 3 上做MSTP的配置 --保持一致
    [sw1]stp mode mstp \\修改模式为mstp
    [sw1]stp region-configuration \\进去stp的配置区域
    [sw1-mst-region]region-name HCIP  \\设置区域名为HCIP(名字可自定义,但四台交换机要保持一致)
    [sw1-mst-region]instance 10 vlan 10 \\创建实例10并绑定vlan 10
    [sw1-mst-region]instance 20 vlan 20 \\创建实例20并绑定vlan 20
    [sw1-mst-region]active region-configuration \\激活配置区域
    [sw1-mst-region]quit \\返回

在配置MSTP时,需要注意的点: 在同一个交换网络中区域名要保持一致;

实例 和vlan 的捆绑也要保持一致;

所有的实例都要保持一致;

6、将交换机SW1设置为

[sw1]stp instance 10 priority 4096    \\设置vlan 10的次根交换机
[sw1]stp instance 20 priority  0      \\设置vlan 20的主根交换机
 
7、将交换机SW2设置为

[sw2]stp instance 10 priority 0       \\设置vlan 10的主根交换机
[sw2]stp instance 20 priority 4096   \\设置vlan 20的次根交换机

[sw1 ]display stp instance 20 brief    
查询发现 交换机SW1上的端口全部是指定端口

[sw2]display stp instance 10 brief
查询发现 交换机SW2上的端口全部是指定端口

你可能感兴趣的:(eNSP,网络,运维,网络协议)