二层交换:生成树STP基本概念与实验
- 格式:docx
- 大小:97.17 KB
- 文档页数:11
STP (Spanning Tree Protocol)2012年6月1日星期五Walk on the fire 总结定义:STP 是二层链路管理协议,为了提供链路冗余,以及防止网络环路,在两个站点之间只有一条活动的链路存在,一旦存在多条有可能引起网络的环路,站点可能会接受到很多复制的信息。
Switch 可能从二层以太口学习到多个相同的MAC addresses ,从而使网络不稳定。
STP 对于二层来说是透明的。
STP 运用Spannting tree algorithm 选择出一个直连网络冗余的无环的Root switch ,通过指定每个端口的角色来完成。
以太网交换网络中为了进行链路备份,提高网络可靠性,通常会使用冗余链路。
但是使用冗余链路会在交换网络上产生环路,并导致广播风暴以及MAC 地址表不稳定等故障现象,从而导致用户通信质量较差,甚至通信中断。
为解决交换网络中的环路问题,提出了生成树协议STP(Spanning Tree Protocol)。
STP :IEEE802.1D 1998RSTP: IEEE802.1W 2001MSTP :IEEE802.1S 2002Spannting Tree Protocol MechanismsStp存在的背景以上拓扑存在很严重的问题:1.广播风暴导致网络不可用。
假如switch A 和switch B 并没有启动STP 功能,当一切是Default 情况下,通过switch原理不难看出,当Host A 访问Host B A 先发送的ARP request ,此报文为广播报文,这时Switch A 、B 都会收到双方转发的广播包,反复如此,最终导致整个网络资源的耗尽。
2.MAC 地址的重复通过Switch 原理,这点不难理解。
STP 基本思想STP 是数据链路层协议,switch 之间通过交互BPDU (Bridge protocol Data Unit),发现网络中的环路,通过STP 机制对一些接口的blocking,最终形成无环路的树形结构。
二层交换:生成树STP基本概念与实验如果你把两台傻瓜式交换机之间连两根网线,那么这俩交换机就会出现环路从而产生广播风暴。
可能你会觉得好笑,但实际工作中,我却碰到了,一些不懂网络的装修包工头,就会这样做。
====================================================================生成树就是为了让交换网络中防环而出现的。
生成树最原始的版本是802.1d,也就是STP(Spanning Tree Protocol),但这个版本的标准是所有VLAN共用一个生成树,所以也叫CST(Common Spanning Tree)思科在此基础上增强了一下,发布了PVST+(Per Vlan Spanning Tree)802.1d的下一个版本是802.1w,也就是RSTP(Rapid STP),但还是共用生成树,搞不懂IEEE不长点记性。
于是思科又搞了一下,发布了PVRST+IEEE又基于思科的MISTP的方案,发布了802.1s(MSTP),这个就屌爆了,之后再说为何这么屌,凡是大一点的交换网络都用MSTP。
=====================================================================STP的基础要学习更高级的RSTP/MST,还是需要STP的基础,尽管现在已经很少用到STP。
STP的工作流程1. 在整个交换网段里选择一台做根桥,这根桥就是整棵树的根部,所有其他交换机就选一条到这个根桥的最短路径,其余的路径阻塞掉。
所有交换机中桥优先级最低的成为根桥。
2. 选择所有非根桥交换机的根端口,就是那条最短路径的接口。
如果有超过1条等价路径,则选择对端指定端口优先级最低的本地端口(有点绕口,通过实验来说明)3. 选择各网段的指定端口。
这个网段其实就是指一根链接,其中一头一定是指定端口,另外一头可能是根端口,也可能是非指定端口。
实验三生成树协议STP1、项目目的理解生成树协议STP的原理及配置。
2、项目描述在网络建设中,为了提高网络的可靠性,网络管理员用两条链路将交换机互连,现要在交换机上做适当配置,使网络避免环路。
本项目以两台3560交换机为例,两台交换机分别命名为:SwitchASwitchB。
PC0和PC1在同一个网段,假设IP地址分别为:192.168.1.1 ,192.168.1.2 ,子网掩码为:255.255.255.03、实现功能使网络在有冗余链路的情况下避免环路的产生,避免广播风暴等。
4、项目拓扑生成树如图所示。
5、项目设备思科3560交换机(2台)、PC机(2台)。
6、项目步骤(1)在SwitchA查看生成树情况,用show spanning-tree brief命名输出。
(2)在SwitchB查看生成树情况,用show spanning-tree brief命名输出。
验证测试:在SwitchA上的Fa0/24端口处于BLK状态,分析原因?(3)修改SwitchA的BID优先级,让SwitchA成为Root Bridge。
设置交换机SwitchAr优先级为4096,数值最小的交换机为根交换机(也称根桥)交换机SwitchBr优先级采用默认优先级(32768),因此SwitchA将成为根交换机。
SwitchA(config)#spanning-tree vlan 1 priority 4096(4)在SwitchA上查看show spanning-tree 命名输出结果。
(5)在SwitchB上查看show spanning-tree 命名输出结果。
验证测试:在SwitchB上的Fa0/23端口处于BLK状态,分析原因?(6)如果将SwitchB的Fa0/23和Fa0/24的状态调换过来,可能通过修改什么参数来实现?可以在SwitchA降低接口优先级来实现。
SwitchA(config)#int fa0/24SwitchA(config-if)#spanning-tree vlan 1 port-priority 112(7)修改后,在SwitchA查看show spanning-tree 命名输出结果。
一、实验目的1. 理解生成树协议(STP)的基本原理和工作机制;2. 掌握生成树协议的配置方法;3. 通过实验验证生成树协议在网络中的实际应用效果。
二、实验环境1. 实验设备:两台华为S5700交换机、两台PC机;2. 实验软件:华为网络设备仿真软件;3. 实验拓扑:两台交换机通过一条物理链路连接,两台PC机分别连接到两台交换机上。
三、实验原理生成树协议(Spanning Tree Protocol,STP)是一种用于在网络中消除环路并实现冗余链路备份的协议。
当网络中出现环路时,STP会阻塞部分端口,形成一个没有环路的树形结构,确保网络的高可用性和容错能力。
STP通过交换机之间的BPDU(Bridge Protocol Data Unit)报文进行信息交互,选举根网桥,并确定每个交换机的根端口和指定端口。
根端口是连接到根网桥的端口,指定端口是连接到同一VLAN且路径最短的端口。
其余端口被阻塞,不参与数据转发。
四、实验步骤1. 配置交换机名称和密码;2. 配置交换机接口;3. 配置VLAN;4. 配置STP;5. 验证STP配置效果。
五、实验过程1. 配置交换机名称和密码```bashS1>display versionS1>sysname S1S1>display versionS1>enableS1#configure terminalS1(config)#username admin password simple 123456 S1(config)#exit```2. 配置交换机接口```bashS1>display ip interface briefS1#interface GigabitEthernet0/0/1S1(config-if)#ip address 192.168.1.1 24S1(config-if)#exitS1#interface GigabitEthernet0/0/2S1(config-if)#ip address 192.168.1.2 24S1(config-if)#exit```3. 配置VLAN```bashS1>display vlanS1#vlan 10S1(config-vlan)#name VLAN10S1(config-vlan)#exitS1#interface GigabitEthernet0/0/1S1(config-if)#port link-type access S1(config-if)#port default vlan 10 S1(config-if)#exitS1#interface GigabitEthernet0/0/2S1(config-if)#port link-type access S1(config-if)#port default vlan 10 S1(config-if)#exit```4. 配置STP```bashS1>display stpS1#stpmode stpS1>display stpS1#interface GigabitEthernet0/0/1S1(config-if)#port link-type access S1(config-if)#port default vlan 10 S1(config-if)#exitS1#interface GigabitEthernet0/0/2S1(config-if)#port link-type access S1(config-if)#port default vlan 10S1(config-if)#exit```5. 验证STP配置效果```bashS1>display stpS1>display stp interface GigabitEthernet0/0/1S1>display stp interface GigabitEthernet0/0/2S1>ping 192.168.1.2```六、实验结果与分析1. 实验结果通过实验,成功配置了生成树协议,并验证了STP在网络中的实际应用效果。
生成树协议
一.实验要求:
1.了解交换机中使用生成树的意义;
2.掌握STP的工作原理;
3.熟悉STP在园区网的部署;
4.掌握生成树协议的基本配置。
二.实验设备:
3台交换机
三.实验步骤:
1. 实验拓扑图:
将3台交换机通过制定的端口如图连接。
2. 配置trunk链路使交换机互联
注:配置trunk链路后,交换机Switch0默认的阻塞端口为:fa0/2,如拓扑图中所示3. 配置VTP,在Switch0下配置VTP服务模式,其他2台交换机配置Vtp客户模式VTP客户模式:
VTP服务模式:
4. 在交换机Switch0中划分3个VLAN,其他2台交换机会自动更新
5. 在交换机Switch0中通过配置生成树协议将VLAN2设置优先级
同理,在交换机1和2中分别设置VLAN3和VLAN4为优先。
6.在特权模式下,分别在3台交换机上通过命令:show spanning-tree 查看各自VLAN下的端口连通情况
四.实验结果:
在交换机0下查看得知:
在VLAN2中,端口fa0/1,fa0/2都是是畅通的。
在VLAN3中,端口fa0/1畅通,端口fa0/2阻塞。
在VLAN4中,端口fa0/1阻塞,端口fa0/2畅通。
在交换机1和2中查看3个VLAN结果一样,都是畅通的,因为未配置生成树协议时,这2个交换机的连接端口都是连通的,只有交换机0的端口fa0/2是阻塞的。
生成树协议简介及实验第一部分:STP/RSTP协议简介一、STP协议1、STP协议简介生成树协议(STP)是一个用于局域网中消除环路的协议,协议运行原理是通过运行该协议的设备之间交互信息而发现网络中的环路,并适当对某些端口进行阻塞以消除环路。
生成树协议是局域网重要协议之一。
网络中出现环路会造成广播风暴导致网络瘫痪或MAC 地址表抖动导致MAC地址表项被破坏。
2、STP基本概念STP引入了根桥(Root Bridge)概念,对于一个STP网络,根桥在全网中只有一个,它是整个网络的逻辑中心,但不一定是物理中心。
根桥会根据网络拓扑的变化而动态变化。
网络收敛后,根桥会按照一定的时间间隔产生并向外发送配置BPDU,其他设备仅对该报文进行处理,传达拓扑变化记录,从而保证拓扑的稳定。
生成树的生成计算有两大基本度量依据:ID和路径开销。
ID又分为:BID(桥ID)和PID(端口ID)。
BID(桥ID):IEEE 802.1D标准中规定BID是由16位的桥优先级(Bridge Priority)与桥MAC地址构成。
BID桥优先级占据高16位,其余的低48位是MAC地址。
在STP网络中,桥ID最小的设备会被选举为根桥。
PID(端口ID):PID由两部分构成的,高4位是端口优先级,低12位是端口号。
PID只在某些情况下对选择指定端口有作用。
路径开销:路径开销(Path Cost)是一个端口变量,是STP协议用于选择链路的参考值。
STP协议通过计算路径开销,选择较为“强壮”的链路,阻塞多余的链路,将网络修剪成无环路的树形网络结构。
在一个STP网络中,某端口到根桥累计的路径开销就是所经过的各个桥上的各端口的路径开销累加而成,这个值叫做根路径开销(Root Path Cost)。
从环形网络拓扑结构到树形结构,总体来说有三个要素:根桥、根端口和指定端口。
根桥就是网桥ID最小的桥,通过交互配置BPDU协议报文选出最小的BID。
⽹络初级篇之STP(概念原理)⼀、什么是STP ⽣成树协议(Spanning Tree Protocol,STP),是⼀种⼯作在OSI⽹络模型中的第⼆层(数据链路层)的通信协议,基本应⽤是防⽌交换机冗余链路产⽣的环路.⽤于确保以太⽹中⽆环路的逻辑拓扑结构.从⽽避免了⼴播风暴,⼤量占⽤交换机的资源。
⼆、STP初始化阶段 ⽹络中所有的桥设备在使能STP协议后,每⼀个桥设备都认为⾃⼰是根桥。
这时候每台设备仅仅收发配置BPDU,⽽不转发⽤户流量,所有的端⼝都处于Listening状态。
所有桥设备通过交换配置BPDU后才进⾏根桥、根端⼝和指定端⼝的选举⼯作。
三、STP中的概念 BPDU:是运⾏STP的交换机之间交换的消息帧。
BPDU内包含了STP所需的路径和优先级信息,STP便利⽤这些信息来确定根桥以及到根桥的路径。
BID:BID报⽂长度为8,包含2字节的桥优先级与6字节的桥背板mac地址。
桥优先级的取值为0--65535,缺省值为32768。
PID:端⼝优先级+端⼝ID(端⼝优先级默认为128,端⼝ID为端⼝的编号) 累计根路开销:对从设备端⼝到达根桥路经的各端⼝(除根桥上的指定端⼝外)的各段链路的路径开销值(也称链路开销值)进⾏累加。
同⼀交换机上不同端⼝的路径开销值为0。
根桥:是STP⽣成树的“树根” 根端⼝:就是在所有⾮根桥上的不同端⼝之间选举出⼀个到根桥最优路径的端⼝,根端⼝在每个⾮根设备上有且只有⼀个。
(最优路径:端⼝到根桥的累计根路径开销最⼩) 指定端⼝:是在每⼀个物理⽹段的不同端⼝之间选举出⼀个指定端⼝。
阻塞端⼝:关闭数据转发,以打破环路。
使其成为⼀种“预备端⼝”的形式存在。
对端:接收数据时发送⽅,也就是链路对端的桥四、根桥的选举 在交换⽹络中所有运⾏STP协议的交换机上选举出⼀个唯⼀的根桥,根桥的选举是根据桥BID中优先级与mac地址来确定的(先对⽐桥优先级,优先级最⼩的为根桥;当桥优先级都相等时,对⽐mac地址,mac地址⼩的为根桥)。
⽣成树协议(STP)概述及⼯作原理
1、交换⽹络环路的产⽣
⼴播风暴的形成
多帧复制
MAC地址表混乱
2、STP——Spanning Tree Protocol(⽣成树协议)
逻辑上断开环路,防⽌⼴播风暴的产⽣
当线路故障,阻塞接⼝被激活,恢复通信,起备份线路的作⽤
3、STP⼯作原理
3.1 ⽣成树的算法:1.选择根⽹桥(Root Bridge);2.选择根端⼝(Root Ports);3.选择指定端⼝(Designated Ports) 3.2 ⽹桥ID(BID)
⽹桥ID是唯⼀的
选择交换⽹络中⽹桥ID最⼩的交换机成为根⽹桥
取值范围:0~65535
缺省值:32768
3.3 选择根端⼝的依据
到根⽹桥最低的根路径成本
直连的⽹桥ID最⼩
端⼝ID最⼩
3.4 端⼝ID
取值范围:0~255
缺省值:128
3.5 .1在⾮根⽹桥上,选择⼀个根端⼝
离根⽹桥最近的⼀个端⼝
3.5.2 根桥上的端⼝全是指定端⼝
3.5.3在每个⽹段上,选择1个指定端⼝
3.5.4 ⾮根桥上的指定端⼝,选择顺序
根路径成本较低
所在的交换机的⽹桥ID的值较⼩
端⼝ID的值较⼩
既不是根端⼝,也不是指定端⼝,STP将这个端⼝阻塞(Block)
3.6 STP端⼝状态
延迟:阻塞——(20s)——>倾听——(15s)——>学习——(15s)——>转发。
第1篇一、实验目的本次实验旨在让学生了解生成树协议(Spanning Tree Protocol,STP)的基本原理和配置方法,掌握如何在网络环境中应用STP消除环路,保证网络的稳定性和可靠性。
二、实验环境1. 设备:两台三层交换机、两台二层交换机、一台PC机。
2. 软件:网络管理软件(如Cisco Packet Tracer)。
三、实验原理STP是一种用于消除网络环路并保证网络稳定性的二层网络协议。
它通过阻塞网络中的冗余链路来消除环路,同时允许在链路故障时快速恢复连接。
STP的主要功能包括:1. 防止环路:STP通过阻塞部分链路,消除网络中的环路,避免广播风暴和网络瘫痪。
2. 确定根桥:STP选举网络中的一台交换机作为根桥,其他交换机根据根桥的优先级确定自己在网络中的位置。
3. 选择最佳路径:STP根据路径成本计算最佳路径,并将非最佳路径阻塞。
4. 快速收敛:STP在网络拓扑发生变化时,能够快速收敛,重新计算最佳路径。
四、实验步骤1. 配置交换机(1)配置三层交换机:设置主机名、管理IP地址、默认网关等。
(2)配置二层交换机:设置主机名、管理IP地址、VLAN、Trunk等。
2. 配置生成树协议(1)在三层交换机上启用生成树协议(STP)。
(2)在二层交换机上启用生成树协议(STP)。
(3)配置交换机的优先级,确定根桥。
(4)配置端口路径成本,选择最佳路径。
3. 验证生成树协议(1)使用“show spanning-tree”命令查看生成树协议的状态。
(2)使用“show spanning-tree brief”命令查看每个端口的生成树状态。
(3)使用“show spanning-tree details”命令查看详细的生成树信息。
4. 故障模拟(1)断开部分链路,观察网络是否恢复正常。
(2)恢复断开的链路,观察网络是否重新收敛。
五、实验结果与分析1. 实验结果通过配置生成树协议,成功消除了网络中的环路,保证了网络的稳定性和可靠性。
二层技术——STP/RSTP一、STP 出现的背景STP 是一个用于局域网中消除环路的协议。
运行该协议的设备通过彼此交互信息而发现网络中的环路,并适当对某些端口进行阻塞以消除环路。
由于局域网规模的不断增长,生成树协议已经成为了当前最重要的局域网协议之一。
环路的网络中,会产生如下两种情况:1、广播风暴导致网络不可用。
2、MAC 地址表震荡导致MAC 地址表项被破坏。
二、STP 基本概念一个根桥树形的网络结构必须有树根,于是STP 引入了根桥(Root Bridge)概念。
对于一个STP 网络,根桥在全网中只有一个,它是整个网络的逻辑中心,但不一定是物理中心。
根桥会根据网络拓扑的变化而动态变化。
网络收敛后,根桥会按照一定的时间间隔产生并向外发送配置BPDU,其他设备仅对该报文进行处理,传达拓扑变化记录,从而保证拓扑的稳定。
两种度量生成树的生成计算有两大基本度量依据:ID 和路径开销。
IDID 又分为:BID(Bridge ID)和PID(Port ID)。
▪ BID:桥IDIEEE 802.1D 标准中规定BID 是由16 位的桥优先级(Bridge Priority)与桥MAC 地址构成。
BID 桥优先级占据高16 位,其余的低48 位是MAC 地址。
在STP 网络中,桥ID 最小的设备会被选举为根桥。
▪ PID:端口IDPID 由两部分构成的,高4 位是端口优先级,低12 位是端口号。
PID 只在某些情况下对选择指定端口有作用。
∙路径开销路径开销(Path Cost)是一个端口变量,是STP 协议用于选择链路的参考值。
STP 协议通过计算路径开销,选择较为“强壮”的链路,阻塞多余的链路,将网络修剪成无环路的树形网络结构。
在一个STP 网络中,某端口到根桥累计的路径开销就是所经过的各个桥上的各端口的路径开销累加而成,这个值叫做根路径开销(Root Path Cost)。
三要素选举从环形网络拓扑结构到树形结构,总体来说有三个要素:根桥、根端口和指定端口∙根桥RB(Root Bridge)根桥就是网桥ID 最小的桥,通过交互配置BPDU 协议报文选出最小的BID。
描述S TP的作用以及生成树工作的步骤STP(Spanning Tree Protocol,生成树协议)是一种用于解决二层交换网络环路的协议。
下面腾科教育为大家详细介绍STP的作用及其工作原理。
一、STP的作用
STP包含狭义STP和广义STP两个含义,狭义STP是指IEEE 802.1d—1998定义的STP;广义STP包括IEEE 802.1d—1998定义的STP以及各种在其基础上经过改进的生成树协议。
STP的基本思想十分简单,自然界中生长的树是不会出现环路的,如果网络也能够像一棵树一样生长就不会出现环路了。
于是,人们在STP中定义了根桥(Root Bridge)、根端口(Root Port)、指定端口(Designated Port)、替代端口(Alternate Port)和路径开销(Path Cost)等概念,通过构造一棵树的方法达到裁剪冗余环路的目的,同时实现链路备份和路径最优化。
二、STP的工作步骤
首先进行根桥的选举。
选举的依据是网桥优先级和网桥MAC地址组合成的网桥ID(Bridge ID),网桥ID最小的网桥将成为网络中的根桥,在一个网络中只能有一个根桥,其他的交换机都为非根桥,可以把它们统称为下游网桥。
根桥的所有端口都连接到下游网桥,所以端口角色都成为指定端口。
接下来,连接根桥的下游网桥将各自选择一条“最粗壮”的树枝
作为到根桥的路径,相应端口的角色就成为根端口。
循环该过程到网络的边缘,指定端口和根端口确定之后一棵生成树就生成了。
生成树经过一段时间(默认值是30秒左右)稳定之后,指定端口和根端口进入转发状态,其他端口进入阻塞状态。
论文题目:STP(生成树协议)的原理与配置STP(生成树协议)的原理与配置摘要:在局域网中,简单的物理冗余会造成回路,若无正确的备份策略,将形成广播风暴而影响整个网络性能,严重情况下甚至会造成整个网络的瘫痪。
基于图论的生成树算法就是通过禁止多余的链路将环路结构转换为逻辑上的树形拓扑结构,这样保证互连的网络中任意节点到其他所有节点均有唯一的路径,而且是最优路径,以阻止由此产生的局域网广播风暴。
同时,STP负责监测拓扑结构的变化,并能在拓扑结构发生变化之后重构新的生成树拓扑结构。
关键字:网络、广播风暴、STP、拓扑结构;1.STP的概念:STP(生成树协议)是一个二层管理协议。
在一个扩展的局域网中参与STP 的所有交换机之间通过交换桥协议数据单元BPDU(Bridge Protocol Data Unit)来实现;为稳定的生成树拓扑结构选择一个根桥;为每个交换网段选择一台指定交换机;将冗余路径上的交换机置为Blocking,来消除网络中的环路。
2.STP技术原理:STP的基本思想就是生成“一棵树”,树的根是一个称为根桥的交换机,根据设置不同,不同的交换机会被选为根桥,但任意时刻只能有一个根桥。
由根桥开始,逐级形成一棵树,根桥定时发送配置报文,非根桥接收配置报文并转发,如果某台交换机能够从两个以上的端口接收到配置报文,则说明从该交换机到根有不止一条路径,便构成了循环回路,此时交换机根据端口的配置选出一个端口并把其他的端口阻塞,消除循环。
当某个端口长时间不能接收到配置报文的时候,交换机认为端口的配置超时,网络拓扑可能已经改变,此时重新计算网络拓扑,重新生成一棵树。
3.STP的功能:生成树协议最主要的应用是为了避免局域网中的网络环回,解决成环以太网网络的“广播风暴”问题,从某种意义上说是一种网络保护技术,可以消除由于失误或者意外带来的循环连接。
STP也提供了为网络提供备份连接的可能,可与SDH保护配合构成以太环网的双重保护。
生成树协议(STP,Spanning Tree Protocol)是一种工作在OSI网络模型中的第二层(数据链路层)的通信协议。
它的基本应用是防止交换机冗余链路中产生的环路,从而确保以太网中无环路的逻辑拓扑结构,避免广播风暴占用交换机大量的资源。
STP的工作原理是,如果任意一台交换机到达根网桥有两条或者两条以上的链路,STP会根据算法仅保留一条链路,切断其他链路,以保证任意两个交换机之间只有一条单一的活动链路。
这种生成的拓扑结构类似于以根交换机为树干的树形结构,因此被称为生成树协议。
STP基于Radia Perlman在DEC工作时发明的一种算法,该算法被纳入了IEEE 802.1d标准中。
STP定义了根桥(Root Bridge)、根端口(Root Port)、指定端口(Designated Port)、路径开销(Path Cost)等概念,通过构造一棵自然树的方法达到剪裁冗余环路的目的,同时实现链路备份和路径最优化。
STP通过桥之间互相转换BPDU(Bridge Protocol Data Unit,桥协议数据单元)来保证设备完成生成树的计算过程。
BPDU有两种类型:普通BPDU用于生成树计算以及维护生成树,而BPDU TCN则在网络拓扑发生变化时发送报文告知其他设备。
STP的主要目的是通过阻断冗余链路来消除桥接网络中可能存在的路径回环,并在当前路径发生故障时,激活冗余备份链路以恢复网络的连通性。
STP产生的原因是因为需要解决在传统的冗余二层网络中交换机的广播风暴,多重帧的复制,以及MAC地址表的抖动。
STP在物理上还是一个环路的网络,只不过会把环中的一个端口BLOCK掉,在逻辑上构成了一个存在单点失效的无环网络BPDU报文介绍Flag字段格式TCA位只有在回应TCN BPDU的配置BPDU中置1。
BPDU类型分为两类:配置BPDU和TCN(topology change notification)的BPDU.sh int | include bia 可以显示交换机上所以端口的mac地址,查询后显示所以端口以及cpu的mac地址连续的,且cpu的mac地址最小。
修改交换机作为根桥的方法:1.(config)#spanning-tree vlan vlan-id root primary指定某台交换机作为根桥配置完此命令后,交换机针对这个vlan-id的priority将会改为24576,提升2个级别。
而配置上(config)#spanning-tree vlan vlan-id root secondary此条命令后交换机针对这个vlan-id的priority将会改为28672,提升一个级别。
2.(config)#spanning-tree vlan vlan-id priority number(number数为4096的倍数,且为所有优先级中最小)。
根桥选举完后,只有根桥产生配置BPDU,其他非根桥接收到根桥发送的BPDU后,只是把cost值和BID字段,以及port-id更改后,转发给其他非根桥。
根桥可以抢占。
选举指定端口的时候,首先比较cost字段,然后比较BID字段,最后比较port-id字段。
在比较cost字段时,交换机之间比较从对方收到的BPDU中的cost字段,而不累加自己经过计算加上去的。
两台交换机组成环路,阻塞端口时,同一台交换机的两个端口阻塞其中从根桥接收到的BPDU中,port-id大的那个。
⽣成树协议(STP)基本知识及实验(使⽤eNSP)1、基本知识--摘⾄《⽹络之路--交换专题》(1)⽣成树的作⽤:在链路层消除环路上可能出现的⼴播风暴。
(2)⽣成树的⼯作由三部分组成:选举过程、拓扑计算、端⼝⾏为确定。
选举过程:在⼆层⽹络中选举⼀个⽹桥作为根桥,⽤于指挥整⽹设备协同⼯作。
根桥只是负责统⼀计算的规则。
根桥统⼀⽹络中所有⽹桥的⾏为准则的原理:通过在某个恰当位置阻塞端⼝来阻⽌环路的发⽣。
从⼀台⽹桥的⾓度来说,它通过这样的法则进⾏判断,如果到达⽹络中的某⼀⽹桥只有⼀条路径,那么必定不存在环路;如果到达某⼀⽹桥的路径有两条或者多条,那么这两台⽹桥之间存在环路,只能保持⼀条通路。
(3)根桥的选举⽅式根桥是通过⽹络中所有⽹桥间相互⽐较产⽣的。
根桥只能由⽹络中桥ID最⼩者担当。
⼀开始时把⾃⼰当作根桥,根桥ID就是⾃⼰的桥ID,然后通过BPDU和⾃⼰的邻居交换拓扑信息,如果邻居的根桥ID⼩于⾃⼰的桥ID,则把邻居当作⾃⼰的根桥,然后向其他邻居通告这个新的根桥信息,直到⽹络中所有⽹桥的根桥ID都⼀样时,根桥就被选举了出来。
桥ID有8个字节,由两部分组成,分别是2字节的桥优先级字段和6字节的桥MAC字段。
桥优先级字段可⼿⼯设置,默认为0x8000;桥MAC即⽹桥的物理MAC。
(4)使⽹络中的⽹桥和根桥保持统⼀的⽅式通过⼀个独特的消息机制实现,当根桥被选举出来后,根桥会周期性的向所有邻居发送BPDU报⽂,这个周期被称为Hello Time,默认设置为2s。
邻居收到根桥发送来的BPDU 时,会更新⾃⼰的状态和定时器,然后转发出去。
在⽣成树协议中(STP)只有根桥有主动发送BPDU的权⼒。
快速⽣成树协议(RSTP)中所有⽹桥都会按照Hello Time的时间间隔主动从指定端⼝发送BPDU。
⽣成树协议中的BPDU报⽂有两种,⼀个被称为配置BPDU(Configuration BPDU),⼀种被称为拓扑变化通知BPDU(Topology Change Notification BPDU 或叫 TCN BPDU)配置BPDU报⽂格式如下:端⼝ID占2个字节,和桥ID类似分为两个部分,前8bits为优先级,默认值为0x80,可⼿⼯修改,后8bits为端⼝号,由设备指定,保证每个端⼝都不⼀样。
Packet Tracer 5.0建构CCNA实验攻略(4)——STP生成树协议STP的全称是spanning-tree protocol,STP协议是一个二层的链路管理协议,它在提供链路冗余的同时防止网络产生环路,与VLAN配合可以提供链路负载均衡。
生成树协议现已经发展为多生成树协议和快速生成树协议(RSTP,Rapid Spanning Tree Protocol,IEEE802.1W)。
一、配置实例拓扑图图一两台Cisco 2960交换机使用两个千兆端口相连,默认情况下STP协议启用的。
通过两台交换机之间传送BPDU协议数据单元,选出根交换机、根端口等,以便确定端口的转发状态。
上图中标记为黄色的端口处于block状态。
二、STP基本配置命令1、修改Brigde ID,重新选根网桥switch(config)#spanning-tree vlan 1 priority 4096图二图三根网桥改变,交换机端口的状态也发生了变化(与图一比较)switch(config-if)spanning-tree vlan vlan-id port-priority 优先级值交换机端口优先级值修改命令,通过修改端口优先值也可以更改端口的转发状态。
2、查看、检验STP(生成树协议)配置switch#show spanning-treeswitch#show spanning-tree activeswitch#show spanning-tree detailswitch#show spanning-tree interface interface-idswitch#show spanning-tree vlan vlanid图四三、STP与VLAN负载均衡配置图五配置负载均衡后,每个VLAN有自己的根网桥。
每条vlan中继链路只转发所允许的Vlan数据帧。
switch(config-if)switchport trunk allowed vlan vlanid 这条命令配置某条trunk中继链路只能转发该vlan图六图七查看每个Vlan的STP状态switch(config)#spanning-tree vlan vlandid root primary 该命令配置某个vlan的根网桥。
STP生成树总结一、STP:spanningtreeprotocol,生成树协议作用:二层提供冗余链路的同时防止环路的产生二、二层环路如何产生?交换机收到一个数据帧后:(交换机工作原理)原理:交换机收到一个数据帧,根据数据帧的源MAC地址学习,根据目的MAC地址进行转发。
如果收到未知的单播数据帧或者广播数据帧,会进行泛洪。
三、二层环路导致:1. 广播风暴2. 多帧复制3. MAC地址表不稳定四、解决:STP工作:把某个二层环路的接口逻辑上把它给阻塞,打破环路五、生成树操作:1.每个广播域只有一个根桥。
(根桥上的所有端口都是指定端口)2.每个非根桥都有一个根端口。
3.每个链路都有一个指定端口。
4.不使用即非指定端口。
六、选举根桥、非根桥、根端口、指定端口、非指定端口1.根桥:根桥=网桥ID最小的网桥(网桥ID=网桥优先级+MAC 地址)默认值:32768,桥优先级必须是4096的倍数(配置)2.非根桥:(不是根桥的桥就是非根桥)3.根端口:非根桥去往根桥入接口方向开销值最小的端口(COP值)1.比较入接口方向COP值,越小越优先。
2.比较发送方的BridgeID,越小越优先。
(看根桥)3.比较发送方的PortID(默认优先级128)=端口ID(如f0/1,f0/2),越小越优先Eg:优先级+端口的编号(端口ID)4.指定端口:一个链路上一定存在一个指定端口作用:为每个链路转发BPDU信息,转发数据流量1.比较去往根桥出接口方向的COP值2.比较发送方的BID3.比较发送方的PID(一般不会用到,除非把线插入同一个设备。
)5.非指定端口(阻塞端口)最后剩下没选上的都为阻塞端口七、生成树端口状态:Blocking:阻塞状态阻塞端口指定端口)~20)Listening:侦听状态s转发延迟:学习状态s转发延迟:转发状态根端口、指定端口)vlan维护一个生成树实例PVST+:每个vlan维护一个生成树的实例九、默认生成树配置:①PVST+思科私有生成树快速思科交换机默认的STP是PVST+每个VLAN都有单独的STP实例所有VLAN只有一个根桥无负载均衡③MSTP:(多生成树,如:奇数一个生成树,偶数一个生成树)④标准生成树:IEEE802.1D。
二层交换:生成树STP基本概念与实验如果你把两台傻瓜式交换机之间连两根网线,那么这俩交换机就会出现环路从而产生广播风暴。
可能你会觉得好笑,但实际工作中,我却碰到了,一些不懂网络的装修包工头,就会这样做。
===================================================== ===============生成树就是为了让交换网络中防环而出现的。
生成树最原始的版本是802.1d,也就是STP(Spanning Tree Protocol),但这个版本的标准是所有VLAN共用一个生成树,所以也叫CST(Common Spanning Tree)思科在此基础上增强了一下,发布了PVST+(Per Vlan Spanning Tree)802.1d的下一个版本是802.1w,也就是RSTP(Rapid STP),但还是共用生成树,搞不懂IEEE不长点记性。
于是思科又搞了一下,发布了PVRST+IEEE又基于思科的MISTP的方案,发布了802.1s(MSTP),这个就屌爆了,之后再说为何这么屌,凡是大一点的交换网络都用MSTP。
===================================================== ================STP的基础要学习更高级的RSTP/MST,还是需要STP的基础,尽管现在已经很少用到STP。
STP的工作流程1. 在整个交换网段里选择一台做根桥,这根桥就是整棵树的根部,所有其他交换机就选一条到这个根桥的最短路径,其余的路径阻塞掉。
所有交换机中桥优先级最低的成为根桥。
2. 选择所有非根桥交换机的根端口,就是那条最短路径的接口。
如果有超过1条等价路径,则选择对端指定端口优先级最低的本地端口(有点绕口,通过实验来说明)3. 选择各网段的指定端口。
这个网段其实就是指一根链接,其中一头一定是指定端口,另外一头可能是根端口,也可能是非指定端口。
根端口——只出现在非根桥交换机上,就是到达根桥最短路径的那个接口。
如下图,SW1被设置较低的桥优先级成为了根桥,注意,根桥上是没有根端口的。
根端口转发数据帧。
指定端口(和非指定端口)——所有交换机上都可能有,根桥上的所有端口都是指定端口(接终端的那些不算啊),非根桥之间的指定端口通过判断优先级,谁低谁是指定端口,对端是非指定端口或根端口,非指定端口禁止转发数据帧,不过仍会监听BPDU。
如下图,SW1上的接口都是指定端口,SW2/3上离根桥最短路径的端口就是根端口。
而SW2<->SW3之间的链路,记住,一条链接上一定有一头是指定端口,另外一头如果不是根端口,那就一定是非指定端口。
那哪边是指定端口呢?哪边的桥优先级更低,哪边就是指定端口。
而SW3上非指定端口被阻塞了,所以SW2<->SW3之间的链路其实是被阻塞了不能用于转发数据。
===================================================== ================端口的状态上面所说是端口的最终角色但每个端口,在任何时候都会有一个状态,包括在选举时和选举后·Blocking ——选举完成后,非指定端口的状态,禁止转发数据帧,但接收并处理BPDU。
·Listening ——端口最初始的状态,在接收到邻居发过来的BPDU后,判断出哪个端口要参与数据转发,于是通过这个端口发送BPDU,通知邻居网桥自己要参与数据帧的转发。
此状态需时15秒。
·Learning ——端口准备但未转发数据帧,并开始学习收到的帧中的MAC地址。
此状态需时15秒。
·Forwarding ——正式开始转发数据帧,也收发BPDU。
·Disabled ——不参与生成树,也不转发数据帧。
===================================================== ================端口开销默认情况下,·10Gbit/S cost为1·1Gbit/S cost为4·100Mbit/S cost为19·10Mbit/S cost为100这种值是通过一个算法算出来,具体算法不详,所以只能死记了。
每台非根桥的每条路径都是累加的计算。
可以通过手工修改接口的带宽去影响cost值,从而影响选路,但要注意,这种修改方法会影响所有VLAN。
sw3(config)#int f0/7sw3(config-if)#spanning-tree cost 5===================================================== ================桥优先级桥的优先级默认是32768桥ID= 优先级+vlanid(如果是vlan10,那么就是32778)先比优先级,最低的成为根桥,次低的就是备份根桥(备份根桥只是一种说法,实际环境中没有这个角色);如果优先级一样,就比最小的MAC地址,最小的为根桥根桥是抢占式的,所以当有新交换机加入网络,如果MAC比现有的根桥小且根桥使用了默认优先级,那就会立即改变现有的网络,因此最佳的做法是,在现有的网络中,确立根桥谁属,然后将其优先级改低,那么新交换机加入,就不会影响现有架构。
===================================================== ================实验在默认优先级下,SW1由于MAC最小,自然是根桥。
思科交换机默认工作于STP模式查看STP信息sw1#sh spanning-treeVLAN0001Spanning tree enabled protocol ieeeRoot ID Priority 32769Address 000d.bc01.bb00This bridge is the rootHello Time 2 sec Max Age 20 sec Forward Delay 15 secBridge ID Priority 32769 (priority 32768 sys-id-ext 1)Address 000d.bc01.bb00Hello Time 2 sec Max Age 20 sec Forward Delay 15 secAging Time 300Interface Role Sts Cost Prio.Nbr Type---------------- ---- --- --------- -------- --------------------------------Fa0/5 Desg FWD 19 128.5 P2pFa0/8 Desg FWD 19 128.8 P2pFa0/9 Desg FWD 19 128.9 P2pFa0/12 Desg FWD 19 128.12 P2p由于SW3两侧的最短路径相同(都是19+19=38),再来比较两侧的优先级又一样,再比桥ID,发现SW2的更低因此使用接SW2的端口为根端口,将F0/7置为BLK(blocking)sw3#sh spanning-treeVLAN0001Spanning tree enabled protocol ieeeRoot ID Priority 32769Address 000d.bc01.bb00Cost 38Port 6 (FastEthernet0/6)Hello Time 2 sec Max Age 20 sec Forward Delay 15 secBridge ID Priority 32769 (priority 32768 sys-id-ext 1)Address 0015.630d.7080Hello Time 2 sec Max Age 20 sec Forward Delay 15 secAging Time 15Interface Role Sts Cost Prio.Nbr Type---------------- ---- --- --------- -------- --------------------------------Fa0/6 Root FWD 19 128.6 P2pFa0/7 Altn BLK 19 128.7 P2p现在,我们通过修改Cost为5,来达到让SW3使用F0/7做根端口(ROOT PORT)sw3(config-if)#spanning-tree cost ?<1-200000000> port path costsw3(config-if)#spanning-tree cost 5再来检查一下stpsw3(config-if)#do sh spann【CUT】Interface Role Sts Cost Prio.Nbr Type---------------- ---- --- --------- -------- --------------------------------Fa0/6 Altn BLK 19 128.6 P2pFa0/7 Root FWD 5 128.7 P2p---------------------------------------------------------------------------------------------------------------端口优先级端口优先级默认是128.x ,x是端口编号,端口优先级是干什么用的呢?是用来影响邻居选择根端口用的。
SW1-SW4的两条链接,两侧的端口我故意接反,用来验证port优先级SW4的哪个端口是根端口呢?答案是F0/9明明是F0/8比F0/9 更小,为什么反而是9是根端口呢?原因是,在判断根端口时,如果两台交换机之间有多条等价链路,那么本地交换机,会根据对端的端口优先级来确定哪个是根端口。
像我现在这种接法,SW4 f0/8<-> SW F0/9SW4 F0/9 <-> SW1 F0/8对于SW4来说,F0/8收到的BPDU的端口优先级是128.9,而F0/9收到的是128.8,因此F0/9成为根端口。
sw4#sh spann【CUT】---------------- ---- --- --------- -------- --------------------------------Fa0/7 Desg FWD 19 128.7 P2pFa0/8 Altn BLK 19 128.8 P2pFa0/9 Root FWD 19 128.9 P2p修改根端口的优先级为了影响SW4的选择,需要修改SW1上的端口优先级sw1(config)#int f0/9sw1(config-if)#spanning-tree port-priority ?<0-240> port priority in increments of 16 【修改为16的倍数】sw1(config-if)#spanning-tree port-priority 64再来看看SW4的STPsw4#sh spanning-tree【CUT】Fa0/7 Desg FWD 19 128.7 P2p Fa0/8 Root FWD 19 128.8 P2p Fa0/9 Altn BLK 19 128.9 P2p现在F0/8成为了根端口了。