STP(生成树)的概述和工作原理
TP简介
STP - Spanning Tree Protocol(生成树协议)
- 逻辑上断开环路,防止广播风暴的产生
- 当线路故障,阻塞接口被激活,恢复通信,起备份线路的作用
二、STP的概述
交换网络环路的产生
- 广播风暴的形
- 成多帧复制
- MAC地址表紊乱
三、STP工作原理
- 生成树算法及验证
- BPDU(桥协议数据单元)
- STP的收敛
四、生成树的算法
1、生成树算法分为3个步骤
- 选择根网桥(Roo Bridge)
- 选择根端口(Root Ports)
- 选择指定端口(Designated Ports)
2、网桥ID(BID)
网桥ID是唯一的
选择交换网络中网桥ID最小的交换机成为根网桥

3、以此拓扑为例,介绍STP的计算过程
根据网桥ID选择根网桥

4、选择根端口的依据
- 到根网桥最低的根路径成本
- 直连的网桥ID
- 最小端口ID最
小根路径成本:
网桥到根网桥的路径上所有链路的成本之和

5、带宽与路径成本的关系

6、端口ID

7、在非根网桥上,选择一个根端口(RP)

8、指定端口
- 根桥上的端口全是指定端口
- 在每个网段上,选择1个指定端口
非根桥上的指定端口,选择顺序。
- 根路径成本较低
- 所在的交换机的网桥ID的值较小端口
- ID的值较小
9、在每个网段选择一个指定端口(DP)

既不是根端口也不是指定端口,STP将这个端口阻塞(block)
10、最终形成逻辑结构无环拓扑

三层交换机的生成树协议选举

五、BPDU桥协议数据单元
Bridge Protocol Data Unit -桥协议数据单元
使用组播发送BPDU
BPDU类型
- 配置BPDU
- 拓扑变更通告(TCN)BPDU
BPDU报文字段
根网桥ID、根路径成本、发送网桥ID、端口ID
STP利用BPDU选择根网
当交换机启动时,假定自己是根网桥,在向外发送的BPDU中根网桥ID字段填写自己的网桥ID

六、STP的收敛
交换机端口的STP状态

生成树计时器
STP的计时器
- Hello时间
- 转发延迟
- 最大老化时间

STP(生成树)的概述和工作原理的更多相关文章
- 【转】 ISP概述、工作原理及架构
1.概述 ISP全称Image Signal Processing,即图像信号处理.主要用来对前端图像传感器输出信号处理的单元,以匹配不同厂商的图象传感器. ISP 通过一系列数字图像处理算法完成对数 ...
- STP生成树协议在二层环境中的应用
一 STP简介 1.单词: rstp快速生成树协议 filter过滤 protection保护 2.作用: 通过阻塞特定接口来防止二层交换环路,从而做到既可以提高网络可靠性的同时又能避免环路带来的问题 ...
- 【Oracle 集群】ORACLE DATABASE 11G RAC 知识图文详细教程之RAC 工作原理和相关组件(三)
RAC 工作原理和相关组件(三) 概述:写下本文档的初衷和动力,来源于上篇的<oracle基本操作手册>.oracle基本操作手册是作者研一假期对oracle基础知识学习的汇总.然后形成体 ...
- Web服务器的工作原理
Web服务器的工作原理 Web服务器工作原理概述 很多时候我们都想知道,web容器或web服务器(比如Tomcat或者jboss)是怎样工作的?它们是怎样处理来自全世界的http请求的?它们在幕后做了 ...
- Asp.Net工作原理
1. ASP.NET页面的的一般处理过程: 客户请求WEB页面 WEB服务寻找指令文件(.ASPX) ASP.NET代码被发送给CLR进行编译 HTML流返回给浏览器和指令 浏览器处理HTML并显示页 ...
- SPI协议及工作原理分析
说明.文章摘自:SPI协议及其工作原理分析 http://blog.csdn.net/skyflying2012/article/details/11710801 一.概述. SPI, Serial ...
- web服务器工作原理
Web服务器工作原理概述 转载自http://www.importnew.com/15020.html 很多时候我们都想知道,web容器或web服务器(比如Tomcat或者jboss)是怎样工作的?它 ...
- hibernate的工作原理
hibernate的工作原理1.Hibernate 的初始化.读取Hibernate 的配置信息-〉创建Session Factory1)创建Configeration类的实例.它的构造方法:将配置信 ...
- Orchard工作原理
概述 本文翻译仅供学习之用,了解Orchard工作原理设计思想.技术点及关键词,如有缺漏请不吝指正.鉴于能力有限定有诸多曲解或不完整的地方,请海涵.不定时完善整理. CMS不像常规的web程序,它更像 ...
随机推荐
- shell $? 状态码含义
Linux 使用了$? 来保存上个执行的命令的退出状态码. 0 命令成功结束 1 通用未知错误 2 误用she ...
- Linux命令(八)之安装Jdk、Tomcat
.personSunflowerP { background: rgba(51, 153, 0, 0.66); border-bottom: 1px solid rgba(0, 102, 0, 1); ...
- net Entityframerwork+sqlite 数据库迁移配置(采坑日记)
1首先在app.config配置写入add 1:<provider invariantName="System.Data.SQLite.EF6" type="Sys ...
- CVE-2021-21978 VMware View Planner 远程代码执行漏洞通告 | 附 POC
漏洞简介 VMware 是一家云基础架构和移动商务解决方案厂商,View Planner 是他旗下推出的一款针对view桌面的测试工具.2021年03月02日,VMware 官方披露了 CVE-202 ...
- Linux通过命令增加IPV6地址
第一步:输入nmcli connection modify "eth0" ipv6.method manual ipv6.address ipv6地址/64 ifname et ...
- NLP与深度学习(一)NLP任务流程
1. 自然语言处理简介 根据工业界的估计,仅有21% 的数据是以结构化的形式展现的[1].在日常生活中,大量的数据是以文本.语音的方式产生(例如短信.微博.录音.聊天记录等等),这种方式是高度无结构化 ...
- JS获取对象在内存中计算后的样式
通过obj.style的方式只能取得"内联style"的值,对于<style></style>中的css属性值,则无能为力 . 我们可以用obj.curre ...
- Visual Studio 2019 使用C语言创建动态链接库(Dll)并使用C语言和C#实现调用
参考网址:https://blog.csdn.net/weixin_34976988/article/details/99625533 一.创建DLL1.建立动态链接库项目 2.创建头文件和源文件 删 ...
- COM笔记-Widows 注册表
Widows 注册表 HKEY_CLASSES_ROOT在此关键字之下,可以看到有一个CLSID关键字.在CLSID关键字之下列有系统中安装的所有组件的CLSID.注册表CLSID是一个具有如下格式的 ...
- 使用JS获取SessionStorage的值
参考:https://www.jb51.net/article/132729.htm 获取sessionStorage的意义 首先获取它是为了将获得的信息输出或者alert():让人容易看到, 其次, ...