第一个 IEEE 标准化的STP也常称为“ 传统”STP,最初在802. 1D中进行了描述。
之后得到了改进,发布在所谓的修正案中:快速 STP( RSTP),在修正案802. 1w 中描述了它的标准化定义,
而修正案 802. 1s中描述了多STP( MSTP)。
此后,修正案被整合到现有的标准里。最新的 802. 1D - 2004 标准中完全没有包含传统的STP(认为已过时);相反,其中涵盖了原来在 802. 1w 中的RSTP。 802. 1s MSTP 被整合到 802. 1Q- 2005 及之后的修订版本中。
因此,对于当前的标准来说,RSTP涵盖在802. 1D中,MSTP涵盖在802. 1Q中,而传统STP被丢弃了。仍有许多人习惯于旧的命名方式,也就是使用802. 1D代指STP,802. 1w代指RSPT,802. 1s代指MSTP。
 
STP通过在交换机之间交互消息,使网络处于稳定的逻辑无环拓扑。
 
STP协议消息称为BPDU(网桥协议数据单元),基本结构如下所示:
 
 

对于STP来说,协议标识符字段设置为0x0000,协议版本字段设置为0x00。BPDU类型字段标识了两种类型的STP BPDU:配置BPDU(类型0x00)和TCN BPDU(拓扑变化通知BPDU,类型0x80)。标志字段使用8比特中的2比特来处理拓扑变化事件:TCA(拓扑变化确认)标志和TC(拓扑变化)标志。标志位之后,有一系列字段分别标识了根桥、BPDU发送方距离根桥的距离、发送方网桥的自我标识符,以及发送方网桥上转发此BPDU的端口标识符。消息老化字段是BPDU自从被根桥生成后的老化时间。在根桥上,该值被设置为0。任何其他交换机会递增这个值,通常它们会在进一步转发此BPDU前加1。BPDU被交换机收到之后的剩余生存时间为最大老化(MaxAge)减去消息老化值(MessageAge)。最后,剩余的字段携带STP计时器值:最大老化、Hello时间、转发延迟(Forward Delay)。这些计时器值总是反映根交换机上的计时器设置。非根交换机上配置的计时器并不使用,这些设置会在交换机成为根交换机后生效。
 
STP会比较两个配置BPDU并确定哪个最优,其他为次优,按以下顺序比较:
 
根桥ID(RBID)
根路径开销(RPC)
发送方网桥ID(SBID)
发送方端口ID(SPID)
接收方端口ID(RPID,不包含在bpdu中,在本地计算)
 
越小越优,只比较配置bpdu,tcn bpdu不承载用于构建无环拓扑的信息。
 
STP中的每个端口都会保存它发送或接收的最优BPDU。如果一个端口保存了它收到的bpdu,它必须在最大老化减去消息老化时间的间隔内再次收到,否则这个bpdu就会在此时间后超时。配置bpdu简称hello bpdu或hello。因为它受制于hello计时器。

STP-1-802.1D生成树协议及改进的更多相关文章

  1. 网桥 以及 IEEE802.1D 生成树协议

    (一)网桥 网桥是一个layer 2设备,能够连接两个不同的网段. 如图

  2. STP 生成树协议 RSTP 快速生成树

    STP(Spanning Tree Protocol)是生成树协议的英文缩写 该协议可应用于在网络中建立树形拓扑,消除网络中的环路,并且可以通过一定的方法实现路径冗余,但不是一定可以实现路径冗余.生成 ...

  3. STP生成树协议在二层环境中的应用

    一 STP简介 1.单词: rstp快速生成树协议 filter过滤 protection保护 2.作用: 通过阻塞特定接口来防止二层交换环路,从而做到既可以提高网络可靠性的同时又能避免环路带来的问题 ...

  4. CCNA 之 九 STP生成树协议

    STP生成树 在上一次实验中,使用了单臂路由是两个不同的VLAN之间进行通信,而单臂路由的这种网络拓扑,当一条链路或者路由设备出现故障的时候,整个网络就会瘫痪. 称此网络为:不健壮的,无冗余的网络环境 ...

  5. 生成树协议(STP)

    首先了解一下环路问题: 两个交换机将两个局域网同时连接起来的时候,不幸地出现了环路: 这两个交换机还是都能够收到广播包的.交换机 A 一开始是不知道机器 2 在哪个局域网的,所以它会把广播消息放到局域 ...

  6. STP:生成树协议解决网络冗余问题

    STP(Spanning Tree Protocol)是生成树协议的英文缩写,可应用于计算机网络中树形拓扑结构建立,主要作用是防止网桥网络中的冗余链路形成环路工作.但某些特定因素会导致STP失败,要排 ...

  7. CISCO交换机STP实验(生成树协议)

    目录 一.前言:生成树协议(STP) 二.CISCO交换机STP命令汇总 三.运用STP搭建简单拓扑 四.实战:STP综合实验 五.结语 一.前言:生成树协议(STP) 计算机网络中,我们为了减少网络 ...

  8. 第2层交换和生成树协议(STP)__第2层的3种交换功能

    地址学习(Address Learning):第2层交换机和网桥能够记住在一个接口上所收到的每个帧的源设备硬件地址,而且它们会将这个硬件地址信息输入到被称为转发/过滤表的MAC数据库中. 转发/过滤决 ...

  9. 生成树协议(STP)

    一.交换网络环路的产生 1.广播风暴的形成 2.多帧复制 3.MAC地址表紊乱 二.STP简介 STP-Spanning Tree Protocol(生成树协议) 逻辑上断开环路,防止广播风暴的产生 ...

随机推荐

  1. Perl 正则表达式语法

    1. 概要 Perl正则表达式是Boost.regex 默认行为,也可以将perl传入basic_regex 构造. boost::regex  e1(my_expression); boost::r ...

  2. runtime之方法的交换

    工作中没怎么用到runtime的东西,所以一直没怎么看,现在开始拿起来. runtime之方法的交换: 都知道OC中有category可以对已知类进行扩展,但是假如工程中需要修改某类的原方法,若用ca ...

  3. Python作业之用户管理

    作业 流程图没有画,懒,不想画 readme没有写,懒,不想写.看注释吧233333 #! /usr/bin/env python # -*- coding: utf-8 -*- # __author ...

  4. 使用PowerDesigner设计数据库

    1.快捷键CTRL+N 创建 New Model 选择如下图,并设置 Model name 单击OK 2.使用工具添加实体 双击Entity_1,填上如下图信息   切换选项卡,添加属性信息 其中 M ...

  5. bzoj 1014 [JSOI2008]火星人prefix——splay+哈希

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1014 用splay维护字符串,每个点记录子树的哈希值,然后二分查询. 二分不是把两个点的哈希 ...

  6. bzoj 2655 calc —— 拉格朗日插值

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=2655 先设 f[i][j] 表示长度为 i 的序列,范围是 1~j 的答案: 则 f[i][ ...

  7. kafka之三:kafka java 生产消费程序demo示例

    kafka是吞吐量巨大的一个消息系统,它是用scala写的,和普通的消息的生产消费还有所不同,写了个demo程序供大家参考.kafka的安装请参考官方文档. 首先我们需要新建一个maven项目,然后在 ...

  8. C#视频取帧图

    由于项目里页面有许多视频资料需要展示给用户查看,因此需要做一个视频列表,原设计是列表显示视频第一帧图,但实际上很多视频第一帧是纯黑底色. 于是想到用js利用canvas截图,最后发现由于浏览器跨域限制 ...

  9. UnicodeEncodeError: 'ascii' codec can't encode character u'\u5929' in position 2: ordinal not in range(128)

    UnicodeEncodeError: 'ascii' codec can't encode character u'\u5929' in position 2: ordinal not in ran ...

  10. Outlook 开发

    转自:http://www.cnblogs.com/madebychina/archive/2011/09/20/madebychina_2.html C#使用如下代码调用Outlook2003发送邮 ...