生成树协议
- 格式:doc
- 大小:2.02 MB
- 文档页数:9
生成树协议原理生成树协议是一种基于链路层的协议,它通常在以太网交换机上实现,用于管理以太网局域网中的网络拓扑。
生成树协议的工作原理是通过使用一个根桥(Root Bridge)和多个非根桥(Non-Root Bridge)来建立一颗树状结构,以确保网络中没有环路存在。
生成树协议的核心算法是通过一种称为生成树算法(Spanning Tree Algorithm)来找到从根桥到每个非根桥的最短路径,从而构建一颗最小生成树。
最小生成树是一种能够连接所有节点并且没有环路的树状结构,它是生成树协议的基础,用于确定网络中数据包的传输路径。
生成树协议的工作流程包括以下几个关键步骤:1. 选择根桥:在网络中通过比较桥(Bridge)的优先级和MAC地址来确定根桥,根桥是生成树中的根节点,所有数据包都将通过根桥进行转发。
2. 计算生成树:每个非根桥通过生成树算法计算到根桥的最短路径,确定自己在生成树中的位置,并将该信息传播到整个网络中。
3. 确定端口状态:每个桥根据生成树信息确定哪些端口可以用于数据包的传输,哪些端口需要阻断以避免环路的产生。
4. 更新生成树:在网络拓扑发生变化时,生成树协议会重新计算生成树,并更新每个桥的状态,重新确定最佳路径。
5. 数据包转发:根据生成树确定的路径,数据包会被从源地址传输到目的地址,通过生成树结构保证数据包的正常传输。
生成树协议的优点是可以有效避免数据包在网络中的循环传输,提升网络通信的稳定性和可靠性。
生成树协议能够自动适应网络拓扑的变化,快速重新计算生成树,并重新确定最佳传输路径,从而保证网络快速恢复到正常状态。
然而,生成树协议也存在一些局限性。
生成树协议在网络中设置大量的桥和端口时,会造成网络拓扑复杂,生成树的计算和更新会消耗大量的网络资源。
此外,生成树协议需要在所有交换机上进行配置和管理,当网络规模较大时,配置和管理网络可能会变得困难。
为了解决生成树协议的一些局限性,IEEE制定了一系列的生成树协议标准,包括802.1D、802.1w和802.1s等。
一、实验目的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在网络中的实际应用效果。
生成树协议(STP)在计算机网络中的应用1. 引言1.1 引言生成树协议(STP)是计算机网络中一个重要的协议,它被广泛应用于以太网LAN 中,用来避免网络环路的产生,提高网络的可靠性,优化网络带宽的利用,以及支持网络的快速恢复。
在现代网络架构中,STP扮演着至关重要的角色,保障了网络的稳定运行和高效传输。
本文将详细探讨生成树协议在计算机网络中的应用,从其如何避免网络环路的产生、如何提高网络的可靠性、如何优化网络带宽的利用,以及如何支持网络的快速恢复等方面展开讨论。
通过深入分析STP的工作原理和应用场景,读者将更加深入了解这一协议的重要性和价值。
在现代网络环境下,随着数据量不断增加和对网络稳定性要求日益提高,STP的作用变得愈发重要。
通过学习和理解STP的应用,可以帮助网络管理员更好地管理网络拓扑结构,确保网络的高可靠性和高性能。
在本文的后续部分中,我们将更详细地探讨STP在计算机网络中的具体应用,希望能对读者有所启发和帮助。
2. 正文2.1 生成树协议(STP)在计算机网络中的应用生成树协议(STP)是一种用于计算机网络中的链路层通信协议,用于避免网络环路的产生,并提高网络的可靠性、优化网络带宽的利用和支持网络的快速恢复。
STP通过计算网络拓扑中的最小生成树来选择一条主干链路,使得网络中所有的交换机都能通过这条链路进行通信,从而避免网络中出现环路。
在计算机网络中,STP的应用非常广泛。
它可以确保网络中数据包的顺利传输,避免数据包在网络中无法到达目的地或造成数据包重复传输的情况。
通过STP,网络管理员可以配置网络拓扑,确保网络中所有的交换机都能按照同一个最小生成树来进行通信,从而保证网络的稳定性。
此外,STP还能提高网络的可靠性。
当网络中出现故障或链路故障时,STP能够及时检测到故障点,并重新计算最小生成树,选择新的主干链路,保证网络的正常运行。
这样,即使网络中某个链路出现问题,整个网络仍可以继续正常工作。
STP生成树协议的功能:局域网中为了避免环路形成的广播风暴,需要阻塞冗余链路,消除环路,并且在主链路中断时,又可以将冗余链路自动切换为转发状态,恢复网络的连通性。
STP(spanning tree protocol,生成树协议)用于消除数据层物理环路的协议通过在桥之间交换BPDU(bridge protocol data unit,桥协议数据单元),来保证设备完成生成树的计算过程。
小知识:环路产生的原因:1.基于局域网的可靠性,为交换机之间提供冗余连接;2.错误的网络配置导致环路产生;根桥(root bridge):整个生成树的根节点,有所有交换机中优先级最高的交换机担任。
桥ID:包含桥优先级和MAC地址(长度是8B),由于MAC 在网络中是唯一的,故:桥ID也是唯一的,先比较优先级在比较MAC地址;(优先级值和MAC值越小越优)路径开销(path cost):STP中每一条链路都有开销值,用于衡量桥与桥之间的优劣;指定桥(designate bridge):负责一个物理端上数据转发任务的桥,由物理端上优先级最高的桥担任。
、端口角色:根端口(root port):是指网桥距离根桥最近的端口。
根桥没有根端口,每一个非根桥有且只有一个根端口;指定端口(designate port):是指物理端上属于指定桥的端口。
根桥是所有网桥中优先级最高的,它是其所连接所有物理端上的指定桥,所以通常情况下根桥的所有端口都是指定端口;阻塞端口(alternate port):既不是根端口又不是指定端口,剩下的就是阻塞端口,它是用来为根端口或指定端口做备份。
是网桥到达根桥的备份路径;注:当拓扑发生变化时,节点重新计算,收敛成新的树型拓扑;STP使用BPDU(bridge protocol data unit,桥数据单元)来交互信息;配置BPDU:用来进行生成树计算和维护生成树拓扑的报文;TCN BPDU:当拓扑结构发生变化时,用来通知相关设备网络拓扑发生变化的拓扑;端口状态:Disabled:未启用STP功能的端口:不接收BPDU,不进行地址学习,不收发数据;Blocking:非指定端口或根端口:不接收BPDU,不进行地址学习,不收发数据;Listening:接收BPDU,不进行地址学习,不收发数据;Learning:接收BPDU,进行地址学习,不收发数据;Forwarding:指定端口或根端口:接收BPDU,进行地址学习,收发数据;生成树(STP)的不足:端口从阻塞状态进入转发状态必须经历两倍的forwarding delay时间如果网络中的拓扑结构变化频繁,网络会频繁地失去连通性RSTP(rapid spanning tree protocol快速生成树协议):是STP协议的优化版STP和RSTP的不同点:RSTP减少了端口的状态RSTP增加了端口的角色RSTP配置BPDU的格式和发送方式有所改变当网络拓扑发生变化时,RSTP的处理方式不同,可以实现更为快速的收敛RSTP具备STP的所有功能桥优先级配置:【H3C】stp priority 4096桥优先级字段共有16位,包含优先级位和0比特两部分。
最小生成树协议甲方(网络服务提供方):名称:_____________地址:_____________法定代表人:_____________联系电话:_____________乙方(用户方):名称:_____________地址:_____________法定代表人:_____________联系电话:_____________鉴于甲乙双方就最小生成树(MST)网络服务达成一致,经协商一致,订立本协议:一、服务内容1. 服务名称:最小生成树网络服务2. 服务范围:提供高效、稳定的网络连接3. 服务期限:_____________年_____________月_____________日至_____________年_____________月_____________日二、服务费用1. 服务费用:人民币_____________元/月2. 支付方式:银行转账现金3. 支付时间:每月_____________日前支付当月费用三、甲方责任1. 提供稳定可靠的最小生成树网络服务2. 定期维护和优化网络3. 确保网络连接的高效性和稳定性4. 及时处理乙方的咨询和投诉四、乙方责任1. 按时支付服务费用2. 配合甲方进行网络配置和优化3. 保持网络设备的正常运行4. 及时反馈网络故障和异常情况五、服务质量1. 甲方确保网络连接的高效性和稳定性2. 甲方定期进行网络性能测试六、数据管理1. 甲方负责管理和保护网络数据2. 乙方有权查询自己的网络使用情况3. 甲方保证数据的安全和隐私七、违约责任1. 甲方未按约定提供服务,需支付违约金2. 乙方未按时支付费用,需支付违约金3. 违约金为未支付金额的10%八、合同解除1. 双方协商一致可解除合同2. 任意一方严重违约,另一方有权解除合同九、争议解决协商不成,提交甲方所在地人民法院诉讼解决十、其他1. 本协议一式两份,甲乙双方各执一份2. 未尽事宜,按国家相关法律法规执行甲方签字/盖章:_________ 日期:______乙方签字/盖章:_________ 日期:______注:本协议仅为示例,具体条款依据实际情况调整。
⽣成树协议STP⽣成树协议STP1.1 STP介绍局域⽹中的物理环路通常有两种产⽣原因。
⼀种是基于可靠性的考虑,为交换机直接提供冗余连接;另⼀种是由于错误的⽹络设置导致环路的产⽣。
如果不对⽹络拓扑加以管理,以上两种情况均会导致严重的后果,如⼴播风暴和MAC地址学习错误等。
局域⽹中存在物理环路,说明环内的每⼀台设备和另⼀台设备之间⾄少存在两条路径,但是设备不能随意选择阻塞某条路径,这样可能会造成⽹络中断。
⽤户可以通过在设备间遵循⼀些准则或协议,来明确由哪台设备阻塞链路,阻塞哪些链路,从⽽达到消除环路的⽬的。
STP(Spanning Tree Protocol,⽣成树协议)就是这些协议中的⼀种。
S TP在IEEE制定的802.1D标准中定义,⽤于在局域⽹中消除数据链路层环路。
STP可以通过计算动态地阻断冗余链路,⽽当活动链路发⽣故障时,STP⼜可以激活冗余链路,恢复⽹络的连通,避免⽹络中断。
STP消除链路层环路的基本思想是:将⽹络拓扑修剪为树形拓扑,⽽树形拓扑是不存在环路的。
运⾏STP的设备之间会交互⼀些信息,然后通过计算实现拓扑的收敛,具体内容如下:(1)运⾏STP的设备依据⼀定的准则选举⼀个树根节点作为⽹络中的根桥,其他节点为⾮树根节点。
(2)每⼀个⾮树根节点,会选择最优的路径和根桥相连,⾮树根节点上位于最优路径的端⼝。
为该节点的根端⼝。
(3)如果⽹络中存在冗余链路,则阻塞冗余链路。
每⼀个⾮树根节点都进⾏同样的计算,最终⽹络中任何两台设备之间都只有⼀条路径可达,从⽽形成⼀颗⽆环的树。
当拓扑发⽣变化时,节点重新进⾏计算,收敛为新的树形拓扑。
1.2 STP基本概念1.2.1 桥和端⼝的⾓⾊如图1-1所⽰,STP中有两种特殊的⽹桥:根桥(Root Bridge)和指定桥(Designate Bridge)。
根桥是整个⽣成树的根节点,由所有⽹桥中优先级最⾼的桥担任。
指定桥是负责⼀个Physical Segment(物理段)上数据转发任务的桥,由这个Physical Segment上优先级最⾼的桥担任。
生成树协议的概念生成树协议(Spanning Tree Protocol, STP)是一种用于在计算机网络中实现环路消除和冗余路径删除的协议。
生成树协议在局域网中起到了非常重要的作用,有效地提高了网络的稳定性和可靠性。
本文将详细介绍生成树协议的概念、原理和工作过程,并探讨其在网络中的应用。
生成树协议的概念:生成树协议是一种通过选择网络中的某些连线来构建一棵树状的拓扑结构,以消除环路并实现冗余路径删除的协议。
在局域网中,如果多个交换机之间存在重复的链路,数据包可能会在链路之间循环传播,导致网络拥塞和数据丢失。
生成树协议通过选择一条主链路以及一系列备份链路,来确保数据包的顺利传输和网络的稳定性。
生成树协议的原理:生成树协议的原理基于图论中的最小生成树算法。
在一个局域网中,多个交换机之间会形成一个图的结构,其中每个交换机对应一个节点,链路对应边。
生成树协议通过计算网络拓扑的最小生成树,确定一条主链路和一系列备份链路,使得网络中的所有节点都能够通过主链路直接或间接地与根节点相连,同时保证没有环路的存在。
生成树协议的工作过程:生成树协议的工作过程可以分为以下几个步骤:1. Bridge ID的选择:在生成树协议中,每个交换机都会有一个唯一的标识符,称为Bridge ID。
根据Bridge ID的大小决定交换机的地位,具有更小Bridge ID 的交换机会成为根交换机。
初始情况下,所有交换机都以自身为根交换机。
2. Root Bridge的选举:交换机通过比较Bridge ID的大小来选举Root Bridge,即全网中拥有最小Bridge ID的交换机。
选举的结果会广播到网络中的所有交换机,使得每个交换机都知道Root Bridge的位置。
3. 生成树的构建:所有非根交换机根据接收到的信息计算到达Root Bridge的最短路径。
生成树协议使用最小帕斯卡尔树算法(Shortest Path Bridging Tree Algorithm, SPBTA)来计算最短路径,并将非根交换机的端口按照最短路径连接到Root Bridge。
生成树协议原理及配置生成树协议(Spanning Tree Protocol,STP)是一种用于防止网络中的循环路径和数据包冲突的协议。
它的目标是通过选择网络中的一个根桥,从而建立一个无环的生成树,从而实现网络的冗余和可靠性。
生成树协议的原理是通过选举根桥、计算最短路径和禁用冗余链路来实现。
当网络中有多个桥接设备连接时,生成树协议会选择一个设备作为根桥。
根桥的选择通常基于桥优先级和MAC地址。
然后,生成树协议会在网络中计算出一条最短路径,以使所有设备都能通过该路径与根桥通信。
生成树协议还会根据冗余链路的代价来禁用一些链路,以防止循环路径的出现。
1.桥优先级和MAC地址:生成树协议通过比较桥的优先级和MAC地址来选择根桥。
通常情况下,优先级较低的桥将成为根桥。
可以通过手动配置桥的优先级来控制根桥的选择。
2.连接参数:生成树协议需要配置桥接设备之间的连接参数。
包括端口优先级、端口状态(开启或关闭)和端口成本。
这些参数将影响最短路径的选择和冗余链路的禁用。
3. BPDU(Bridge Protocol Data Unit):BPDU是生成树协议中用于交换信息和进行状态更新的数据包。
生成树协议需要配置BPDU的发送和接收规则。
通常情况下,桥接设备会定期发送BPDU,以更新网络状态并检测循环路径。
4.禁用冗余链路:生成树协议会根据链路的代价禁用一些冗余链路,以防止循环路径的出现。
链路的代价通常基于链路的速度或带宽。
可以通过手动配置链路的代价来控制冗余链路的禁用。
5. STP版本:生成树协议有多个版本,如STP、RSTP(Rapid Spanning Tree Protocol)和MSTP(Multiple Spanning Tree Protocol)。
不同版本的生成树协议具有不同的特性和性能。
配置时需要根据网络的需求选择合适的版本。
在实际应用中,生成树协议的配置通常需要在网络设备上进行。
网络管理员可以通过命令行界面或图形化界面来配置生成树协议的各个参数。
第1篇一、实验目的1. 理解生成树协议(STP)的工作原理和配置方法。
2. 掌握STP在解决网络环路问题中的应用。
3. 学会使用Wireshark抓包软件分析STP协议数据包。
二、实验环境1. 软件环境:Windows 10操作系统,Cisco Packet Tracer 8.0仿真软件。
2. 硬件环境:2台2960交换机,2台PC机,直通线若干。
三、实验原理生成树协议(Spanning Tree Protocol,STP)是一种工作在OSI网络模型数据链路层的通信协议,用于防止网络环路,确保以太网中无环路的逻辑拓扑结构。
STP 通过传递网桥协议数据单元(Bridge Protocol Data Unit,BPDU)来确定网络的拓扑结构,并根据计算出的生成树实现链路备份和路径最优化。
STP协议主要涉及以下概念:1. 根桥(Root Bridge):整个网络中桥接设备中优先级最高的设备,负责生成树的构建。
2. 根端口(Root Port):每个交换机连接到根桥的端口,负责转发数据包。
3. 指定端口(Designated Port):每个网段连接到根桥的端口,负责转发该网段的数据包。
4. 非根端口(Non-Root Port):除了根端口和指定端口之外的所有端口,负责转发数据包。
5. 端口状态:阻塞、监听、学习、转发、阻塞(非根端口)等状态,用于控制数据包的转发。
四、实验步骤1. 连接设备:将2台2960交换机和2台PC机用直通线连接。
2. 配置PC IP地址:在PC1和PC2上分别配置IP地址、子网掩码和默认网关,确保它们属于同一子网。
3. 配置交换机S1:- 设置交换机S1的主机名为S1。
- 进入接口配置模式,配置端口0/1-2为Access模式,并分配VLAN 2。
- 进入全局配置模式,启用生成树协议,设置交换机S1为根桥。
4. 配置交换机S2:- 设置交换机S2的主机名为S2。
- 进入接口配置模式,配置端口0/1-2为Access模式,并分配VLAN 2。
生成树协议的功能生成树协议的主要功能有两个:一是在利用生成树算法、在以太网络中,创建一个以某台交换机的某个端口为根的生成树,避免环路。
二是在以太网络拓扑发生变化时,通过生成树协议达到收敛保护的目的。
生成树协议发明者[1]生成树协议是由Sun微系统公司著名工程师拉迪亚·珀尔曼博士(Radia Perlman)发明的。
1988 年, 珀尔曼在MIT完成了她的计算机博士科学学位。
珀尔曼在1993年离开了DEC去了Novell工作, 1997她又加入Sun Microsystems 公司。
珀尔曼博士拥有80多个技术发明专利, 其中40多个是在Sun Microsystems 公司发明的。
珀尔曼博士被哈佛大学和华盛顿大学聘请为客座教授。
珀尔曼博士在数据通信领域的经典著作有:《Interconnections: Bridges, Routers, Switches,and Internetworking Protocols》《Network Security: Private Communication in a Public World》珀尔曼博士被授予了许多杰出工程师奖,她被评为20个数据通信领域最有影响力的人之一。
生成树协议特点网桥使用珀尔曼博士发明的这种方法能够达到2层路由的理想境界:冗余和无环路运行。
你可以把生成树协议设想为一个各网桥设备记在心里的用于进行优化和容错发送数据的过程的树型结构. 生成树协议(Spanning Tree)定义在 IEEE 802.1D 中,是一种链路管理协议,它为网络提供路径冗余同时防止产生环路。
为使以太网更好地工作,两个工作站之间只能有一条活动路径。
网络环路的发生有多种原因,最常见的一种是有意生成的冗余-万一一个链路或交换机失败,会有另一个链路或交换机替代。
生成树协议拓扑结构的思路生成树协议拓扑结构的思路是: 不论网桥(交换机)之间采用怎样物理联接,网桥(交换机)能够自动发现一个没有环路的拓扑结构的网路,这个逻辑拓扑结构的网路必须是树型的。
生成树协议是一种二层管理协议,选择性地阻塞网络冗余链路来达到消除网络二层环路的目的,同时具备链路的备份功能.第一代生成树协议:Stp/rstp 不带二层负载均衡Stp—其中IEEE的802.1d版本最为流行Stp协议中定义了根桥(rootbridge)、根端口(rootport)、指定端口(designatedport)、路径开销(pathcost)等概念..生成树算法SPA,信息交流单元就称为配置消息BPDU(bridgeprotocoldata unit)。
Stp bpdu是一种二层报文,目的mac是多播地址01-80-c2-00-00-00 ,当拓扑发生变化,时延称为forward delay,协议默认值是15秒Rstp—快速生成树协议rstp 802.1w标准,向下兼容stp协议第一点改进:为根端口和指定端口设置了快速切换用的替换端口(alternate port)和备份端口(backup port)两种角色第二点改进:在只连接了两个交换端口的点对点链路中,指定端口只需与下游网桥进行一次握手就可以无时延地进入转发状态第三点改进:直接与终端相连而不是把其他网桥相连的端口定义为边缘端口(edge port第二代生成树协议:Pvst/pvst+Pvst/pvst+ 每个vlan都生成一棵树 Pvst不兼容stp/rstp协议二层负载均衡Pvst/pvst+ 发送的目的地址也改成了cisco保留地址01-00-0c-cc-cc-cd,而且在vlan trunk的情况下pvst bpdu被打上了802.1q vlan标签Pvst+协议,并成为了交换机产品的默认生成树协议。
经过改进的pvst+协议在vlan 1上运行的是普通stp协议,在其他vlan上运行pvst协议。
pvst +协议可以与stp/rstp互通,在vlan 1上生成树状态按照stp协议计算。
在其他vlan上,普通交换机只会把pvst bpdu当作多播报文按照vlan号进行转发Pvst/Pvst+问题第一点缺陷:由于每个vlan都需要生成一棵树,pvst bpdu的通信量将正比于trunk的vlan个数第二点缺陷:在vlan个数比较多的时候,维护多棵生成树的计算量和资源占用量将急剧增长第三点缺陷:由于协议的私有性第三代生成树协议:Mistp/MstpMistp多实例生成树协议,不能兼容stp/rstp协议,甚至不能向下兼容pvst/pvst+协议Mirstp是基于端口的,pvst/pvst+是基于vlan的,而mistp就是基于实例的。
简述生成树协议工作原理哎呀,说起生成树协议,这事儿可真不是三言两语就能讲清楚的,但我会尽量用大白话给你说说。
记得有一回,我在一个咖啡馆里,看着服务员们忙前忙后,突然就想到了这个协议。
你看,这咖啡馆就像是一个网络,服务员们就像是数据包。
他们得确保每个客人的点单都能准确无误地送到厨房,对吧?但是,如果有两个服务员同时去厨房,那不就乱套了吗?这就是生成树协议要解决的问题。
生成树协议,听起来挺高大上的,其实就是个“老大”选出来,然后让其他“小弟”听从指挥,确保网络里的数据包不会到处乱跑,造成混乱。
就像咖啡馆里,得有个领班,指挥服务员们工作,不然大家都挤在厨房门口,那不就乱套了嘛。
具体来说,这个协议里头有个叫“选举”的过程。
每个设备都有点像是参加“谁是老大”的比赛。
他们会比较自己的“身份”,这个身份就是通过一些参数来确定的,比如设备ID啊,端口号啊什么的。
比完之后,最牛的那个就成了“老大”,也就是根桥。
其他的设备呢,就根据这个“老大”来决定自己的角色,有的当“小弟”,有的当“旁观者”。
这个过程中,还有个挺有意思的现象,就是“握手”。
设备们会互相发送信息,告诉对方自己的身份和能力。
这个过程就像是服务员们互相确认谁去厨房,谁去送咖啡,谁去擦桌子。
通过这种方式,他们就能确保每个任务都有人负责,而且不会有重复。
说到细节,这个协议里头还有个“计时器”的概念。
就像服务员们得知道什么时候去厨房,什么时候去送咖啡一样,设备们也得知道什么时候发送信息,什么时候接收信息。
这个计时器就像是服务员们的“工作表”,告诉他们什么时候该干嘛。
最后,这个协议还有个“拓扑变化”的概念。
这就像是咖啡馆里突然来了一大群客人,服务员们得重新分配任务一样。
网络里如果设备有变化,比如有新的设备加入,或者有设备退出,生成树协议就会重新进行“选举”,确保网络的稳定性。
你看,生成树协议就是这么个东西,它确保了网络里的设备能够有序地工作,不会乱成一团。
就像咖啡馆里的服务员们,虽然忙,但是有条不紊,每个客人都能得到满意的服务。
常用的生成树协议:STP(Spanning Tree Protocol)由IEEE802.1D定义,RSTP(Rapidly Spanning Tree Protocol)由IEEE802.1W定义,MSTP(Multiple Spanning Tree Protocol)由IEEE802.1S定义。
生成树严格意义上来讲属于应用层的东西,但是是为了解决二层的广播风暴问题,所以也可以看成是二层的东西。
STPSTP生成树计算原则:1.确定环路中的根桥。
根桥由BID(bridge ID)来确定(BID=2字节的网桥优先级+网桥的MAC地址构成,优先级默认为32768),具备最小的BID的交换机成为根桥。
2.确定根端口。
根端口选举原则是确定非根桥到根桥最小开销的端口。
(Root path cost).一般情况下,接口带宽越大则开销值越小。
选举原则:a.比较Root Path Cost(根路径开销),越小越优先,一样则b.端口上行交换机的Bridge ID(桥ID),越小越优先,一样则c.端口上行端口的Port Identifier,越小越优先(端口标识,端口标识号由1字节优先级+1字节端口号构成)3.确定指定端口。
为每个网段选出一个指定端口(Designated Port),指定端口为每个网段转发发往根交换机方向的数据,且转发由根交换机方向发往该网段的数据。
选举原则:a.比较Root Path Cost(根路径开销),越小越优先,相同则b.端口所属Bridge ID,越小越优先,相同则c.端口的Port ID。
4.确定阻塞端口。
环路中剩下的端口成为阻塞端口(Alternate Port),当指定端口有问题,就启用阻塞端口。
数据的转发路径:由下级非根交换机的指定端口到上级非根交换机的根端口,一直到根交换机的指定端口。
(这样就可以避免环路)STP端口状态描述状态数据帧MAC 生成树计算BPDU收发Disable No No No No NoBlocking No No No Yes No Listening No No Yes Yes YesSTP 有关的时间:Hello 2S,Max Age 20S,Forward Delay 15 S.从Listening 到Learning 要经过一个Forward Delay ,从Learning 到Forwarding 要经过一个Forward Delay 。
完全收敛(30~50s)STP BPDU 帧格式:BPDU 封装在802.3的LLC 格式以太帧中,BPDU 只在指定端口上发送。
DMACSMAC Length Data FCSDMAC :目的MAC 地址。
使用了保留的组播MAC 地址01-80-c2-00-00-00,此地址标识所有交换机,但不能被交换机转发,也就是说只在本地链路有效。
Data 包括:DSAP SSAP Control BPDU| LLC |DSAP :01000010 ,0x42SSAP: 01000010,0x42Control:3.BPDU 包括:2B Protocol Identifier 0x00001B Protocol Version Identifier 0x001B BPDU Type 0x001B Flags 0x008B Root Identifier4B Root Path Cost8B Bridge Identifier2B Port Identifier LearningNo Yes Yes Yes Yes ForwardingYes Yes Yes Yes Yes2B Message Age2B Max Age2B Hello Time2B Forward DelayRoot Identifier:发送些配置BPDU的交换机所认为的根交换机的交换机标识。
Root Path Cost:从发送此配置BPDU的交换机到达根交换机的最短路径总开销。
(含交换机根端口开销,不含发送此配置BPDU的端口的开销)因为STP中发数据是默认为无开销的,但接收数据有开销,这与OSPF正好相反。
Bridge Identifier:发送此配置BPDU的交换机标识。
(BID=2字节的网桥优先级+网桥的MAC地址构成,优先级默认为32768)Port Identifier:发送此配置BPDU的交换机端口的端口标识。
(端口标识,端口标识号由1字节优先级+1字节端口号构成)BPDU有两种。
一种为生成生成树时的CBPDU,configuration BPDU type:0x00一种为网络拓扑发生变化TCNBPDU(Topology Change Notification) type 0x80< 1 > TCN BPDU ---拓扑变化的BPDU非根桥始发。
当一台非根桥交换机,拓扑发生变化的时候,就会产生一个TCN BPDU,这个BPDU是告诉根桥的,也就是说只有根端口才会发送这类的BPDU,上行。
< 2 > Configuration BPDU ---配置BPDU根桥始发。
当根桥受到TCN BPDU 后,会产生一个配置BPDU,告诉所有它知道的非根桥交换机,拓扑发生了变化。
会发现这种的BPDU是通过指定端口始发和转发的,下行。
RSTP(收敛1~10s)RSTP生成树计算原则:1.选根交换机(与STP相同)2.选非根交换机的根端口(与STP相同)3.选举网段的指定端口(与STP相同)4.选举预备端口和备份端口。
(RSTP特有的)对于既不是根端口,也不是指定端口的交换机端口,如果该端口属于所连网段的指定交换机,则端口设为备份端口(Backup Port);如果该端口不属于所连网段的指定交换机,则端口状态设为预备端口(Alternate Port).备份端口主要是为了备份指定端口,而预备端口是为了预备根端口,它们都处于不转发状态。
RSTP端口状态描述:数据帧MAC 生成树计算BPDU收发Discarding No No No No No Learning No Yes Yes Yes Yes Forwarding Yes Yes Yes Yes Yes预备端口(Alternate Port)和备份端口(Backup Port)处于Discarding。
指定端口(Designated Port)和根端口(Root Port)稳定情况下处于Forwarding.RSTP端口迁移原则:1.将端口状态从Forwarding状态迁移到Discarding状态(从根端口或者指定端口变成预备端口或者备份端口)不会出现环路风险,可以不经过等待立即转换。
2.将端口状态从Forwarding状态迁移到Forwarding(从根端口变成指定端口或者从指定端口变成根端口)不会出现环路风险,可以不经过等待立即转换。
3.从Discarding状态迁移到Forwarding状态(从预备端口或者备份端口变成根端口或者指定端口),在STP中,从不转发状态迁移到Forwarding中要等待两次Forward Delay间隔才能迁移,保证网络中需要进入不转发状态的端口有足够的时间完成计算(这正是STP收敛慢的原因所在)。
RSTP对此点的改进:1.引入边缘端口(Edge Port)概念(边缘端口指不连接任何交换机的端口):一旦连续端口被启用,则端口立即成为指定端口(Designated Port),并进入转发状态。
2.引入“Proposal -Agreement”概念(使用时必须为点到点的链路)。
RSTP使用“Proposal-Agreement”协商机制加快非边缘端口成为新的指定端口的速度。
MSTP单实例生成树的缺点:1.部分VLAN路径不通2.无法使用流量分担3.次优二层路径MSTP的基本思想:基于实例(Instance)计算出多棵生成树,每个实例可以包含一个或多个VLAN,每一个VLAN只能映射到一个实例。
MSTP常见的概念:MSTI(Multiple Spanning Tree Instance,多生成树实例):一个MST域内可以通过MSTP生成多棵生成树,每棵生成树之间彼此独立,每棵生成树都称为一个MSTI。
每个MSTI映射一个或多个VLAN,每个MSTI都对应一个实例号。
每个MST Instance都有一个标识(MSTID),MSTID是一个两字节的整数。
MST域:是指网络中具有相同域名,修订级别,摘要信息的网络构成的一个集合。
同一个区域的交换机有着相同的VLAN到MST Instance的映射关系。
MST配置标识(MST Configuration Identifier):交换机通过MST配置标识来标识自己所在的区域。
1B Configuration Identifier Format Selector 0x0032B Configuration Name 区域名称2B Revision Level 修订级别16B Configuration Digest MST配置表摘要有很小的可能性会出现MST配置表不同,但摘要信息却相同的情况,这会导致本来不在同一区域的交换机被认为在同一区域中,所以用Revision Level这个额外的标识字段,不同的区域使用不同的内容。
MST配置表(MST Configuration Table):为了在交换机上标识VLAN和SMT Instance的映射关系,交换机维护一个MST配置表,其结构是4096个连续的两字节元素组,代表4096个VLAN,每一个和最后一个元素都为0;每二个元素表示VLAN 1映射到MST Instance 的MSTID,直到第4095个元素,表示VLAN4094映射到的SMT Instance的MSTID。
MSTP建立,管理两种生成树类型:1.IST(Internal Spanning Tree,内部生成树):是在MST区域中运行的生成树总称。
IST是MST区域中的一个特殊生成树实例,在一定程度上代表了一个MST区域,因为它在一个MST内部的所有链路上都是活跃的,专为其他MST实例提供拓扑信息服务。
(默认情况下,所有VLAN分配到IST实例中,一般为Instance 0,但在实际配置中,不把任何VLAN分配到这个实例中,因为IST只用于生成树BPDU的收发,不用于数据通信)2.CST(Common Spanning Tree,公共生成树):是用来互联不同MST区域的单生成树实例。
如果把每个MST区域看做一个设备,CST就是这些设备通过STP/RSTP协议计算生成的一棵生成树。
(在每个MST区域中计算的生成树都是作为包含整个交换域的CST的子树出现的)接收到来自其他MST区域BPDU的交换机被称为边界(Boundary)交换机,对应的链路称为边界链路,对应的端口称为边界端口。