STP理论03-拓扑算法

网络中所有的设备使能 STP 协议后,每一台设备都认为自己是根桥。此时,每台设备仅仅收发配置 BPDU,而不转发用户流量,所有的端口都处于 Listening 状态。所有设备通过交换配置 BPDU后,进行选举工作,选出根桥、根端口和指定端口。



STP算法的基本过程:
1、初始状态:
由于每个桥都认为自己是根桥,所以在每个端口所发出的 BPDU 中,根桥字段都是用各自的 BID, Root Path Cost 字段是累计的到根桥的开销,发送者 BID 是自己的 BID,端口 PID是发送该 BPDU 端口的端口 ID。

  1. 选择根桥:
    网络初始化时,网络中所有的 STP 设备都认为自己是“根桥”,根桥 ID 为自身的设备 ID。通过交换配置消息,设备之间比较根桥 ID,网络中根桥 ID 最小的设备被选为根桥。

3.1. 选择根端口和指定端口
1)、非根桥设备将接收最优配置消息(最优配置消息的选择过程如表 2 所示)的那个端口定为根端口;
2)、设备根据根端口的配置消息和根端口的路径开销,为每个端口计算一个指定端口配置消息:
a、根桥 ID 替换为根端口的配置消息的根桥 ID;
b、根路径开销替换为根端口配置消息的根路径开销加上根端口对应的路径开销;
c、发送者 BID 替换为自身设备的 ID;
d、发送端口 PID 替换为自身端口 ID。
3)、设备将计算出的配置消息与角色待定端口自己的配置消息进行比较:
a、如果计算出的配置消息更优,则该端口被确定为指定端口,其配置消息也被计算出的配置消息替换,并周期性地向外发送;
b、如果该端口自己的配置消息更优,则不更新该端口的配置消息并将该端口阻塞。该端口将不再转发数据,且只接收不发送配置消息。

3.2.最优配置消息的选择过程
1)、每个端口将收到的配置消息与自己的配置消息进行比较:
a、如果收到的配置消息优先级较低,则将其直接丢弃,对自己的配置消息不进行任何处理;
b、如果收到的配置消息优先级较高,则用该配置消息的内容将自己配置消息的内容替换掉。
2)、设备将所有端口的配置消息进行比较,选出最优的配置消息。



STP 拓扑变化处理过程:
1)、在网络拓扑发生变化后,下游设备会不间断地向上游设备发送 TCN BPDU 报文;
2)、上游设备收到下游设备发来的 TCN BPDU 报文后,只有指定端口处理 TCN BPDU 报文。其它端口也有可能收到 TCN BPDU 报文,但不会处理;
3)、上游设备会把配置 BPDU 报文中的 Flags 的 TCA 位设置 1,然后发送给下游设备,告知下游设备停止发送 TCN BPDU 报文;
4)、上游设备复制一份 TCN BPDU 报文,向根桥方向发送;
5)、重复步骤 1、 2、 3、 4,直到根桥收到 TCN BPDU 报文;
6)、根桥把配置 BPDU 报文中的 Flags 的 TC 位置 1 后发送,通知下游设备直接删除桥 MAC 地址表项。

注:
1)、TCN BPDU 报文主要用来向上游设备乃至根桥通知拓扑变化;
2)、置位的 TCA 标记的配置 BPDU 报文主要是上游设备用来告知下游设备已经知道拓扑变化,通知下游设备停止发送 TCN BPDU 报文;
3)、置位的 TC 标记的配置 BPDU 报文主要是上游设备用来告知下游设备拓扑发生变化,请下游设备直接删除桥 MAC 地址表项,从而达到快速收敛的目的。

a、MAC地址表默认的老化时间是300s,收到TC置位的BPDU后,MAC地址表的老化时间就修改为15s,设计成15s的原因也是为了防止临时环路;
b、RSTP不同,是直接删除MAC地址表。

原文地址:http://blog.51cto.com/9480916/2336972

时间: 2024-10-09 06:16:38

STP理论03-拓扑算法的相关文章

STP理论05-RSTP拓扑变化处理

STP理论05-RSTP拓扑变化处理及与STP互操作 在 RSTP 中检测拓扑是否发生变化只有一个标准:一个非边缘端口迁移到 Forwarding 状态.一旦检测到拓扑发生变化,将进行如下处理:1.首先清空状态发生变化的端口上学习到的MAC地址.2.同时在2倍的hello time时间内不断向非边缘端口发送TC置位的RST BPDU.3.其他设备收到TC置位的RST BPDU后,清空其他所有端口学习到的MAC地址(除了收到RST BPDU的端口).同时也会从自己的非边缘端口和根端口向外泛洪TC置

分布式_理论_05_ 一致性算法 Paxos

一.前言 二.参考资料 1.分布式理论(五)—— 一致性算法 Paxos 2.分布式理论(五) - 一致性算法Paxos 原文地址:https://www.cnblogs.com/shirui/p/9660822.html

STP理论04-RSTP相对STP的改进

STP不足之处:网络拓扑收敛慢,影响了用户通信质量.如果网络中的拓扑结构频繁变化,网络也会随之频繁失去连通性,从而导致用户通信频繁中断. 导致STP收敛慢的原因:1).STP没有细致区分端口状态和端口角色,不利于初学者学习及部署,listening.learning和 Blocking 状态并没有区别,都同样不转发用户流量:2).STP 算法是被动的算法,依赖定时器等待的方式判断拓扑变化,收敛速度慢:3).在网络稳定时,只有根桥发送BPDU报文. RSTP 对 STP 的改进: 1.通过端口角色

MSTP理论02-MSTP拓扑计算

MSTP理论02-MSTP报文及拓扑计算 MSTP 使用多生成树桥协议数据单元 MST BPDU(Multiple Spanning Tree Bridge Protocol Data Unit)作为生成树计算的依据. MST BPDU 报文用来计算生成树的拓扑.维护网络拓扑以及传达拓扑变化记录. 1.MSTP 报文格式可配置目前 MSTP 的 BPDU 报文存在两种格式:1).dot1s: IEEE802.1s 规定的报文格式:2).legacy:私有协议报文格式.如果端口收发报文格式为默认支

STP理论02-BPDU(STP)

在前面的章节中介绍了桥 ID.路径开销和端口 ID 等信息,所有这些信息都是通过 BPDU 协议报文传输.1).配置 BPDU 是一种心跳报文,只要端口使能 STP,则配置 BPDU 就会按照 Hello Time 定时器规定的时间间隔从指定端口发出.2).TCN BPDU 是在设备检测到网络拓扑发生变化时才发出. 配置BPDU:1).配置BPDU即我们通常所说的BPDU,用来进行生成树计算和维护生成树拓扑的报文:2).配置 BPDU 的长度至少要 35 个字节,包含了桥 ID.路径开销和端口

[hiho 03]KMP算法

题目描述 暴力解法:枚举原串起始位置,逐个匹配,复杂度O(mn). 优化思路:失配时,前面已匹配的字符可以提供信息. KMP算法: 对于模式串任意位置 i ,如果我们知道一个 k 使得 i 位置前的 k 个元素和模式串最开始的前 k 个元素一一相等,那么第 i 个元素失配时就可以之间从第 k + 1 个元素开始继续匹配,这就利用到了失配前的匹配信息. 于是我们想构造这样一个数组 next_val[]  使得 next_val[i] 指向第 i 元素失配时下一个匹配的位置. 例如对于模式串abca

模板C++ 03图论算法 1最短路之单源最短路(SPFA)

3.1最短路之单源最短路(SPFA) 松弛:常听人说松弛,一直不懂,后来明白其实就是更新某点到源点最短距离. 邻接表:表示与一个点联通的所有路. 如果从一个点沿着某条路径出发,又回到了自己,而且所经过的边上的权和小于0, 就说这条路是一个负权回路. 回归正题,SPFA是bellman-ford的一种改进算法,由1994年西安交通大学段凡丁提出.它无法处理带有负环的图,判断方法:如果某个点进入队列的次数超过N次则存在负环. SPFA的两种写法,bfs和dfs,bfs判别负环不稳定,相当于限深度搜索

『科学计算_理论』优化算法:梯度下降法&牛顿法

梯度下降法 梯度下降法用来求解目标函数的极值.这个极值是给定模型给定数据之后在参数空间中搜索找到的.迭代过程为: 可以看出,梯度下降法更新参数的方式为目标函数在当前参数取值下的梯度值,前面再加上一个步长控制参数alpha.梯度下降法通常用一个三维图来展示,迭代过程就好像在不断地下坡,最终到达坡底.为了更形象地理解,也为了和牛顿法比较,这里我用一个二维图来表示: 懒得画图了直接用这个展示一下.在二维图中,梯度就相当于凸函数切线的斜率,横坐标就是每次迭代的参数,纵坐标是目标函数的取值.每次迭代的过程

网易2018.03.27算法岗,三道编程题100%样例AC题解

博主欢迎转载,但请给出本文链接,我尊重你,你尊重我,谢谢~http://www.cnblogs.com/chenxiwenruo/p/8660814.html特别不喜欢那些随便转载别人的原创文章又不给出链接的所以不准偷偷复制博主的博客噢~~ 1. 自定义排序 第一题是第一行给出n(1<=n<=100),表示下面有n行,每行A(0<=A<24)和B(0<=B<60),表示定的闹钟为AhBmin. 接下来给定X,表示小明从起床到教室需要X分钟,最后一行给出A(0<=A