STP协议 与 STP树的生成
STP协议
由于环路的存在,会导致
- 广播风暴
- 多帧复制
- mac地址震荡
STP协议应运而生
STP协议的原理
在一个具有环路的交换网络中,交换机会运行STP协议,自动生成一个没有环路的工作拓扑(工作的时候不存在回路)
这个无环工作拓扑又称作STP树(STP Tree)
其中,树的节点是 交换机,树的树枝是 链路
一个STP树只有一个根节点,其它节点到根节点的路径是唯一的,并且是最优的(感觉有那么一点哈夫曼树的影子了哈哈)
STP树是动态的,为什么,因为当网络拓扑中发生一些变化时(如:某条链路损坏)STP树,也会自动做出相应的变化
简而言之:具有环路的拓扑结构,会导致广播风暴、多帧复制、mac地址震荡,但是因为STP协议的存在,这些问题也得以解决!
STP树是如何生成的呢?(三步骤)
- 选举根桥(根交换机)
- 确定根端口 和 确定指定端口(指定端口是关于网段的)
- 阻塞 备用端口
选举根桥
判断对象:所有运行STP协议的交换机中选出一个
根桥(根交换机)是STP树的根节点,要生成STP树,就必须首先确定谁是根桥
根桥是整个交换网络的逻辑中心,但不一定是长久的,如果网络拓扑环境发生变化,根桥可能会变成其它交换机
运行了STP协议的交换机,可以称之为STP交换机,网络拓扑中的各个STP交换机之间会交换STP协议帧,这些协议帧里头的数据载荷是 BPDU(网桥协议数据单元)
BPDU是由交换机自己本身生产、接收、处理。和上层的网络层毫无关系!更别提终端的计算机了
STP交换机刚开始启动的时候,都会误认为自己就是根桥!并且在发送给别的交换机的BPDU中,会
宣告自己就是根桥(蜜汁自信)
一台交换机向其它交换机发出BPDU的同时,也会收到其它交换机发送过来的BPDU,这时候交换机就会
将 收到的BPDU那所谓宣告自己是根桥的交换机的BID 和 自己的BID 进行比较。交换机们不断地交互BPDU
,大家也都同时对 BID 进行比较 ,最终选出一台BID最小的交换机作为根桥
根桥确定后,其它没有成为根桥的交换机 称之为 非根桥
由于非根桥设备上(不是根桥的交换机)可能有多个端口 与 网络相连 ,为了保证 非根桥设备 到 根桥设备的 工作路径是最优 且 唯一! 就必须在非根桥设备的众多端口中 选出一个 “根端口“ ,根端口是 非根桥设备 跟 根桥设备进行报文交互的端口。 一台非根桥设备 只有一个 根端口。
(指定端口:DP;根端口:RP;备用端口:AP)
确定根端口
判断对象:非根网桥交换机上的不同端口之间
怎么确定根端口呢?
一个重要依据是 ” 根路径开销 “ 即:某个(非根桥的端口)交换机的端口 到 根桥 的路径开销(RPC)
根路径开销(RPC),和端口的转发速率有关
端口转发速率越大,则路径开销(RPC)越小!
当出现根路径开销(RPC)相同时,按照如下进行 选举 根端口
确定指定端口
即:在每一个物理网段的不同端口之间选举出一个指定端口。
上图可以简化成
显然只需要比较S2的 3、4 端口 的 PID,RSP相同和BID相同
假设3的PID比4的PID小,所以选举3为指定端口,其它的指定端口也是假设BID是最小的!
也就是说,所有端口都是使用下图的比较流程来 选举 指定端口
阻塞备用端口
判定对象:既非根端口又非指定端口的为备用端口
STP协议会对这些备用端口进行 逻辑阻塞
所谓 逻辑阻塞 ,就是这些备用端口不能转发由终端计算机产生并发送出来的帧,即用户数据帧!
虽然备用端口不能转发 用户数据帧,但是可以接受并处理 STP协议帧
与备用端口不同的是,根端口 和 指定端口 可以转发,接收,处理 STP协议帧、用户数据帧
参考:《华为HCIA》
我觉得这个博主关于STP生成树的博文写得不错
STP协议 与 STP树的生成相关推荐
- 生成树生成森林c语言中文网,生成树协议(STP)基本知识及实验(使用eNSP)
1.基本知识--摘至<网络之路--交换专题> (1)生成树的作用:在链路层消除环路上可能出现的广播风暴. (2)生成树的工作由三部分组成:选举过程.拓扑计算.端口行为确定. 选举过程:在二 ...
- STP协议(生成树协议)
1.STP协议概述 生成树协议(spanning tree protocol),是一种工作在OSI网络模型中第二层(数据链路层)的通信协议,是一种由交换机运行的,基本应用是防止交换机冗余链路产生的环路 ...
- 生成树协议(STP)原理与配置PVST+实现负载均衡
交换网络环路的产生 在实际网络环境中,物理环路可以提高网络的可靠性,当一条线路断掉时,另一条线路仍然可以传输数据.但是,当交换机收到广播请求时,交换机就根据转发原理(交换机从除收到该广播帧之外的所有端 ...
- LLDP协议、STP协议 笔记
参考: 数据链路层学习之LLDP 生成树协议 LLDP协议.STP协议 笔记 LLDP 提出背景: 随着网络技术的发展,接入网络的设备的种类越来越多,配置越来越复杂,来自不同设备厂商的设备也往往会增加 ...
- 华为交换机 STP 协议
一.STP简介 以太网交换网络中为了进行链路备份,提高网络可靠性,通常会使用冗余链路.但是使用冗余链路会在交换网络上产生环路,引发广播风暴以及MAC地址表不稳定等故障现象,从而导致用户通信质量较差,甚 ...
- MSTP和STP协议详解
STP: STP - Spanning Tree Protocol(生成树协议) 1.逻辑上断开环路,防止广播风暴的产生 2.当线路故障时,阻塞接口被激活,恢复通信,起到备份作用 交换网络环路的产生: ...
- 网络协议分析-生成树协议(STP)分析
目录 一.生成树协议(英语:Spanning Tree Protocol,STP) 二.包结构 1.BPDU消息格式: 2. DMA 3. SMA 4. L/T 5. LLC Header 6. Pa ...
- 交换机生成树协议(STP)
STP STP:生成协议(Spanning-tree-protocol) STP产生的背景: 为了提高网络可靠性,交换网络中通常会使用冗余链路,然而,冗余链路会给交换网络带来环路风险,并且导致广播风暴 ...
- 以前的学习笔记整理:第二层交换和生成树协议(STP)
Talen Hao LINUX 学习笔记系列■■■■■ 第8章 第二层交换和生成树协议(STP) 系统:cisco 一:打开cisco交换机管理功能(即管理VLAN) 进入接口模式vlan 1: Sw ...
最新文章
- Hooq 登陆新加坡,“亚洲版 Netflix ”要与对标公司抢夺东南亚视频市场
- 你负责人工智能哪部分?人工那部分:知识图谱的构建主要靠人工还是机器?...
- Ribbon负载均衡策略配置
- Spring @Transactional踩坑记
- 再问数据中台 - 数据中台和业务中台服务有什么区别 应该如何去界定和划分?
- vue中router-link绑定click失效
- 安卓学习笔记04:安卓平台架构
- html加css绘制oprea的logo,拾人牙慧 – CSS3实现Opera浏览器的logo
- 孔维滢201771010110《面向对象程序设计(java)》第一周学习总结
- 开发者最讨厌的编程语言:Perl 名列第一,PHP、Objective-C 和 Ruby 都在其中
- cts测试终于全测了一遍了
- 自学python能干些什么副业-她把摄影当副业:月薪3000,副业收入上万
- 小苹果 html,定时轮播.html
- 8.6 归纳式迁移学习
- 400多款微信公众号小游戏源码集合源码
- html+css+js制作520表白网页,全屏的爱心和表白语网页动画代码,浪漫的520爱心表白动画特效。...
- 隔壁老王都找我要的33款开源爬虫框架,《记得收藏哦!不然看着看着就不见了》
- Go语言核心之美-必读
- iphone4s在ios7下解决卡顿问题
- 数字图像处理——红眼去除(Python)