一、什么是STP

  生成树协议Spanning Tree ProtocolSTP),是一种工作在OSI网络模型中的第二层(数据链路层)的通信协议,基本应用是防止交换机冗余链路产生的环路.用于确保以太网中无环路的逻辑拓扑结构.从而避免了广播风暴,大量占用交换机的资源。

二、STP初始化阶段

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

三、STP中的概念

  BPDU:是运行STP的交换机之间交换的消息帧。BPDU内包含了STP所需的路径和优先级信息,STP便利用这些信息来确定根桥以及到根桥的路径。

  BIDBID报文长度为8,包含2字节的桥优先级与6字节的桥背板mac地址。桥优先级的取值为0--65535,缺省值为32768。

  PID:端口优先级+端口ID(端口优先级默认为128,端口ID为端口的编号)

  累计根路开销:对从设备端口到达根桥路经的各端口(除根桥上的指定端口外)的各段链路的路径开销值(也称链路开销值)进行累加。同一交换机上不同端口的路径开销值为0。

  根桥:是STP生成树的“树根”

  根端口:就是在所有非根桥上的不同端口之间选举出一个到根桥最优路径的端口,根端口在每个非根设备上有且只有一个。(最优路径:端口到根桥的累计根路径开销最小)

  指定端口:是在每一个物理网段的不同端口之间选举出一个指定端口。

  阻塞端口:关闭数据转发,以打破环路。使其成为一种“预备端口”的形式存在。

  对端:接收数据时发送方,也就是链路对端的桥

四、根桥的选举

  在交换网络中所有运行STP协议的交换机上选举出一个唯一的根桥,根桥的选举是根据桥BID中优先级与mac地址来确定的(先对比桥优先级,优先级最小的为根桥;当桥优先级都相等时,对比mac地址,mac地址小的为根桥)。

  在选举时发送的是BPDU中。选举主要包含两步:桥设备确定自己的BPDU、互相发送BPDU报文进行对比以确定网络中的根桥。

   一开始每个桥都认为自己是根桥,向外发送的BID都是自己的。每个桥都向外发送自己的配置BPDU的同时也会收到其它桥发送的配置BPDU。但桥端口并不会对收到的所有配置BPDU都用来更新自己的配置BPDU,而是先会进行配置BPDU优先级比较。当端口收到的配置BPDU比本端口的配置BPDU的优先级低时,将丢弃所收到的这个配置BPDU,仍保留自己原来的配置BPDU;否则会提取其中的BID来代替自己BPDU中原本的BID,在进行不断的数据交互中,所有交换设备中的所有端口都认为根桥是相同时,说明根桥已经选择完毕。
当链路或者拓扑发生改变时,又会重新选取新的根桥。

五、根端口的选举

  非根交换机在选举根端口时,依据(按顺序)累计根路开销(小)、对端BID(小)、对端PID(小)、本端PID(小)。(在后面的实验文章中有实验对其进行分别验证)

六、指定端口的选举

  指定端口的选举时,依据(顺序)累计根路开销(小)、BID(小)、PID(小)(在后面的实验文章中有实验对其进行分别验证)

七、阻塞端口

  未被选举为根端口与指定端口的端口,成为阻塞端口。

网络初级篇之STP(概念原理)的更多相关文章

  1. 网络初级篇之STP(BPDU详解与STP故障恢复)

    一.BPDU包含的参数 通过STP的原理,我们学习了红色部分的字段(根桥ID.根路径开销.桥ID.端口ID).现在讲解一下黄色部分的字段(类型.计时器.老化时间.访问时间) 1.(BPDU Type) ...

  2. 网络初级篇之RSTP(原理与配置)

    一.RSTP的产生 前面的文章写到了当网络拓扑发生变化时,STP的收敛速度大约需要花费30秒-50秒的时间才会继续转发数据.这样在实际生产环境中花费的时间是非常长的,这样RSTP(快速生成树协议)便应 ...

  3. 网络初级篇之VLAN(原理)

    一.早期网络的问题 1.若某时刻有多个节点同时试图发送数据,极易产生冲突域,这样使得网络传输效率大大降低. 2.从一节点发送的数据都会被送到各个节点,极易形成广播域,这样会使得产生太多的广播流量而耗费 ...

  4. 网络初级篇之STP(实验验证)

    一.根桥的选举. 1.优先级相等时. (图1-1) (图1-2) 在上面1-1图中,已经标出桥的mac地址,桥的优先级为默认优先级(缺省:32768).任意一端口抓包,查看STP数据包内包含的信息,根 ...

  5. 网络初级篇之网络设备的FTP(原理与实验)

    一.什么是FTP    FTP就是文件传输协议.用于互联网双向传输.二.FTP的作用    控制文件下载空间在服务器复制文件从本地计算机或本地上传文件复制到服务器上的空间,主要的作用就是文件的传输,保 ...

  6. 网络初级篇之DHCP原理与配置(原理与实验)

    一.什么是DHCP DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)通常被应用在大型的局域网络环境中,主要作用是集中的管理.分配IP地址,使网络环境 ...

  7. 网络初级篇之OSPF(一)原理

    一.OSPF是什么 Open Shortest Path First, 开放最短路径优先协议,是一种开源的使用最短路径优先(SPF)算法的内部网关协议(IGP).常用于路由器的动态选路. 二.OSPF ...

  8. 网络初级篇之VLAN间路由(原理与配置)

    一.VLAN间的路由 由于VLAN隔离了二层广播域,也间接的隔离了各个VLAN之间的其他二层流量交换,这样导致属于不同VLAN之间的用户不能进行二层的通信.只能经过三层的路由转发才能将报文从一个VLA ...

  9. 网络基础篇之NAT(原理)

    一.NAT的产生 由于网络的飞速发展和网络应用的极速增多,致使IPv4可用地址空间逐渐枯竭.尽管IPv6可以在根本上解决地址枯竭问题,但IPv4发展到IPv6还需要一个过渡,而这便产生了NAT. 二. ...

随机推荐

  1. 阶段3 3.SpringMVC·_02.参数绑定及自定义类型转换_3 配置解决中文乱码的过滤器

    输入中文 中文后台接收到 全部乱码 springMvc提供了过滤器 配置过滤器 characterEncodingFilter是首字母小写当做起的名称.当然这里也可以任意起名字.为了对应所以修改类名首 ...

  2. pyqt5的QListWidget中设置右键菜单

    QListWidget 是继承 QWidget 的, 所以 QListWidget 是有右键菜单的, 从文档上可以找到 QWidget 上有以下两个与右键菜单有关的函数: Qt.ContextMenu ...

  3. PTA --- 天梯赛 L1-028 判断素数

    L1-028 判断素数 (10 point(s))   本题的目标很简单,就是判断一个给定的正整数是否素数. 输入格式: 输入在第一行给出一个正整数N(≤ 10),随后N行,每行给出一个小于2​31​ ...

  4. 【AMAD】dramatiq -- Python3实现的一个快速的,可信赖的分布式任务处理库

    简介 动机 作用 用法 热度分析 个人评分 简介 Python3实现的一个快速的,可信赖的分布式任务处理库. 动机 dramatq1的官网2写道: Dramatiq成为现实的主要原因是,我想要一个简单 ...

  5. Django学习笔记(二)URL编写规则

    先在根目录以及每个app内添加一个空白的urls.py(此处根目录指项目同名文件夹内).程序收到用户请求时,先在根目录的urls.py查找该URL属于哪个app,再从app的urls.py找到具体的U ...

  6. WIN10远程协助无法控制的解决方法

    这个问题比较常见小编整理的解决方法如下: 方法一:用QQ远程协助对方电脑,需要QQ告诉对方右键单击计算机(这台电脑)点管理打开计算机管理界面选择本地用户和组,再选择用户,右侧会出现所有的本地用户,包括 ...

  7. Xshell的使用以及常用命令

    工具/原料 Xshell 方法/步骤 打开软件,点击新建,在主机哪里写入要访问的ip地址,名称随意 点击文件之后,再点击打开: 就可以看到刚才新建的会话了: 点击连接,就会显示下面的画面,输入用户名, ...

  8. cp 命令

    cp - copy files and directories 用法: cp [OPTION] source dest DESCRIPTION Copy SOURCE to DEST, or mult ...

  9. C++四种类型转换总结

    C风格的强制类型转换很简单,均用 Type b = (Type)a 形式转换.C++风格的类型转换提供了4种类型转换操作符来应对不同场合的应用,如下表: 转换类型操作符 作用 const_cast 去 ...

  10. JCC指令

    0.JMP1.JE, JZ 结果为零则跳转(相等时跳转) ZF=12.JNE, JNZ 结果不为零则跳转(不相等时跳转) ZF=03.JS   结果为负则跳转   SF=14.JNS   结果为非负则 ...