1.选择根交换机
2.确定根端口
3.确定指定端口
 
 

1.选择根交换机
 
stp中只有一台交换机能成为根(Root),每台交换机按自己的STP逻辑,先发一个hello称自己为根,如果收到了比自己更优的hello,它会停止产生hello,以停止声明自己是根。然后交换机开始转发更优的hello。逐渐地,除了拥有最低网桥ID的交换机外,所有交换机停止生成自己的hello,最终这台交换机赢得选举,成为根交换机。
 
原802.1D网桥ID中有两个字段:
2字节的优先级,6字节的MAC
原8021.D网桥ID的定义记录在802.1t修正案中,后整合到802.1D-2004中,下为原始格式与新格式
 
 

格式的改变主要是因为出现了PVST+和MST支持的多生成树。
如果使用旧格式,使用每vlan生成树,vlan让物理交换机像多台逻辑交换机一样操作,则网桥ID都是一样的(逻辑为多层拓扑),违背802.1D设计要求:每个交换机使用不同的网桥ID。所以就为每个vlan使用不同的mac地址,但这同时也消耗了每台交换机中的大量预留MAC地址
 
使用新格式后,结合vlan id,就不需要为每台交换机都预留那么多mac了。通过全局命令spanning-tree extend system-id,可以查看交换机上使用的系统ID拓展。
 
2.确定根端口
 
在选择出根交换机后,其他交换机需要确定他们各自的根端口(RP),过程如下
(1).根交换机每隔hello间隔(默认2秒)发送一个hello,hello中的RBID和SBID为根ID,RPC为0,SPID为出端口标识符
(2).每台非根交换机在每个端口上收到一个bpdu后,就会将端口的开销值加到这个bpdu的RPC值中,并得到结果bpdu(Resulting BPDU)。然后收到最优结果bpdu的端口被选举为根端口。
(3).非根交换机在根端口上收到hello,在更新完其中的RPC,SBID,SPID和消息老化字段之后,会通过其他指定端口转发这个hello,非根交换机在其他端口上收到的hello,只会被处理,但不转发。
(4)交换机不会从根端口和阻塞端口转发出hello。
 
在最新的Catalyst交换机上使用PVST或快速PVST时,使用的开销值对应于802.1D-1998版本标准;使用MSTP时,对应于802.1D-2004版本。对于PVST和快速PVST,工程师可以使用全局配置命令spanning-tree pathcost method long启用802.1D-2004开销。默认配置为spanning-tree pathcost method short,即使用旧版本的开销。
 
以下是默认端口开销
 

3.确定指定端口
 
在收敛完成的STP拓扑中,只有一台交换机负责转发Hello到每个LAN网段。转发Hello到LAN网段的交换机称为该网段的指定交换机,指定交换机上用来转发Hello到网段的端口称为指定端口(DP)。交换机上所有既不是根端口也不是指定端口的其他端口将被移至阻塞状态。
 
选举规则如下:
1.去往根的路径开销最低的交换机;
2.网桥ID最低的邻居交换机;
3.网桥ID最低的邻居上端口ID最低的端口。

STP-2-三个选择的更多相关文章

  1. Java语言程序设计(基础篇) 第三章 选择

    第三章 选择 3.8 计算身体质量指数 package com.chapter3; import java.util.Scanner; public class ComputeAndInterpret ...

  2. Java语法基础(三)----选择结构的if语句、switch语句

    [前言] 流程控制语句: 在一个程序执行的过程中,各条语句的执行顺序对程序的结果是有直接影响的.也就是说程序的流程对运行结果有直接的影响.所以,我们必须清楚每条语句的执行流程.而且,很多时候我们要通过 ...

  3. Java 第三章 选择结构

    第三章   选择结构 if基本语法: if(条件){// 表达式 // 代码块 } eg: int a = 10; if(a > 1){ System.out.println("内容& ...

  4. 排序算法总结(三)选择排序【Select Sort】

    一.原理 选择排序的原理非常简单,就是选出最小(大)的数放在第一位,在剩下的数中,选出最小(大)的数,放在第二位......重复上述步骤,直到最后一个数. 二.过程 原始数据 第一次排序,选出最小的数 ...

  5. Jquery学习(三)选择

    1.Jquery最重要的是选择. 学习要点:        1.简单选择器        2.进阶选择器        3.高级选择器 ①简单选择器. 最简单的也就是最经常使用的,最经常使用的一般也是 ...

  6. Python基础三(选择,循环)

    序 首先我们知道程序的执行有三种结构:顺序.选择.循环三种结构,而为了方便我们书写和多次利用我们就需要把一段代码封装器来,这就是方法.今天我就说的是程序的基本结构的格式和方法. 注:所有的程序都可以通 ...

  7. Java基础(三)选择和循环结构

    一.选择结构,条件判断 1.if 语句 一个 if 语句包含一个布尔表达式和一条或多条语句.如果布尔表达式的值为 true,则执行 if 语句中的代码块,否则执行 if 语句块后面的代码. impor ...

  8. DL基础补全计划(三)---模型选择、欠拟合、过拟合

    PS:要转载请注明出处,本人版权所有. PS: 这个只是基于<我自己>的理解, 如果和你的原则及想法相冲突,请谅解,勿喷. 前置说明   本文作为本人csdn blog的主站的备份.(Bl ...

  9. Java 第三章 选择结构1

    选择结构(一) 会使用基本的 if 选择结构 掌握逻辑运算符,掌握多重 if 选择结构 , 掌握嵌套 if 选择 结构 为什么需要 if 选择结构 例如: 如果张浩的 java 考试成绩大于 98分, ...

  10. 使用java理解程序逻辑 第三章 选择结构一

    if 选择结构: if(条件){       代码块  //条件成立后要执行的代码.可以是一条语句,也可以是一组语句 } 可以处理单一或组合条件的情况. if-else 选择结构: if(条件){   ...

随机推荐

  1. 调用远程service aidl接口定义

    Android studio 查看aidl定义的文件:当你进入你的AIDL文件并编写好了之后,点击AS上方菜单栏中的Build->Make Project,之后便可以在当前工程的app/buil ...

  2. iOS 开发中的一些注意点(安全、当前语言、时间格式化)

    1.重复运行项目,不重复构建项目(来自Heath Borders) 假如你一直在不停地调试同一个问题,你可以在不重复构建的情况下运行你的APP,这样:“Product>Perform Actio ...

  3. .net2.0 C# Json反序列化

    http://cjl20082002.blog.163.com/blog/static/120827332009511103457637/ 去:http://json.codeplex.com/下载  ...

  4. legend2---开发日志12(vue如何进一步学习)

    legend2---开发日志12(vue如何进一步学习) 一.总结 一句话总结:还是得找教程(比如视频),自己摸索太浪费时间,也容易踩坑和抓不住重点 还是得找教程(比如视频),自己摸索太浪费时间,也容 ...

  5. Myeclipse项目内容没有报错但是项目上面却有红色叉叉

    当src文件夹为空的时候,git是不提交空文件夹的,所以check出来的项目中没有src文件夹,这个时候也会出现此问题.

  6. LSH-局部敏感哈希

    LSH的基本思想是: 将原始数据空间中的两个邻近数据点通过某种映射或变换,使得这两个数据点在变换后的数据空间中仍然相邻的概率很大,而不相邻的数据点被映射到同一个桶的概率很小. 因此,最最重要的就变成了 ...

  7. Django (2006, 'MySQL server has gone away') 本地重现与解决

    最近我们的Django项目供Java Sofa应用进行tr调用时, 经常会出现一个异常: django.db.utils.OperationalError: (2006, 'MySQL server ...

  8. 杂项:MIS

    ylbtech-杂项:MIS 1.返回顶部 1. 管理信息系统(Management Information System,简称MIS)是一个以人为主导,利用计算机硬件.软件.网络通信设备以及其他办公 ...

  9. httpclient:Ip 代理

    参考:http://blog.csdn.net/sdfiiiiii/article/details/70432060  http://blog.csdn.net/qy20115549/article/ ...

  10. Flutter实战视频-移动电商-34.列表页_小BUG的修复

    34.列表页_小BUG的修复 当高粱酒的子类没有数据返回的时候就会报错. 解决接口空数据报错的问题 没有数据的时候,给用户一个友好的提示, 我们没有数据的时候还要告诉用户,提示一下他没有数据,在我们的 ...