连接中断原因也可能是增加了新的链路,导致其中一台交换机重新选举根端口,最终认为新链路所连端口是根端口,RSTP在点到点链路上使用提议/同意(Proposal/Agreement)过程,让类似这种链路迅速开始工作,并且不会造成临时的交换环路,也不会造成明显的通信中断。
新链路端口选为根端口,其他端口为指定端口。邻居还没来得及被告知这种变更,于是两边都是指定端口,造成环路。要避免这种环路可以在将新的根端口置为转发状态之前,把所有非边界指定端口置为丢弃状态。这可以保证无环但也会造成明显的通信中断。需要等待一定时间。
 
提议/ 同意( Proposal/ Agreement)。
提议表示一个端口想要成为指定转发端口的意愿,而同意表示允许立即执行。在两台交换机之间增加了新的点到点链路后,两端的端口一开始都是指定丢弃状态,这是非边界端口的默认角色和状态。
任何处于丢弃或学习状态的指定端口需要发送设置了提议位的BPDU。因此两台交换机都会尝试交换设置了提议位的BPDU(或简称为提议),假设它们都有权成为指定端口。
然而,如果其中一个接收到提议的端口发现这个提议构成了这台交换机收到的最优结果BPDU,这个端口的角色就会从指定端口变为根端口(状态仍保持为丢弃状态)。交换机上的其他端口也会随之更新。
进一步说,交换机如果在根端口接收到了提议,它会立刻把所有非边界指定端口设置为丢弃状态。这个操作称为同步(Sync)。处于同步状态的交换机被从网络中隔离,避免任何交换环路穿其而过:它的根端口仍处于丢弃状态(即使已处于转发状态,邻居的指定端口也仍处于丢弃或学习状态),它的指定端口被有意设置为了丢弃状态。现在可以安全地将新根端口移至转发状态,并通知上行交换机:可以将指定端口从转发或学习状态变更为转发状态了。这是在交换机在执行同步之后,通过其根端口发送设置了同意位BPDU(或简称为同意)实现的。上行交换机在指定丢弃端口或指定学习端口上收到协议BPDU时,会立刻把端口变为转发状态,完成两台交换机之间的提议/同意交换。
因为所有的指定转发端口和指定学习端口都会发送提议,提议/同意交换过程其实是从“上层”交换机移至“下层”(根交换机是生成树的“顶”),造成传递的效果,

在交换网络中造成运行中断的原因可以是直接链路故障(交换机失去了根端口)、间接链路故障(邻居失去了根端口)、增加新的根链路,或变更了根交换机。RSTP对于每种事件都有响应机制:针对直接链路故障,把最优的替换端口变为新的根端口;针对间接链路故障,允许接受来自指定交换机的次优BPDU;针对增加新的根链路,使用提议/同意机制进行应对;针对根交换机的更替,由以上机制组合处理。
在提议/同意的交换过程中,所有非边界指定端口都会被移至丢弃状态(也就是同步操作)。如果工程师没有使用接口命令spanning-tree portfast,或全局命令spanning-tree portfast default(都只对Access端口有效),将面向终端主机的端口明确配置为边界端口,它们将在同步过程的中被设置为丢弃状态。因为终端主机不能发送RSTP协议,因此这些端口会在两个转发延迟间隔之后,再次变为转发状态,终端主机将经历明显的连接性中断。在RSTP中,将面向终端主机的端口配置为边界端口是至关重要的;否则网络的性能可能比802.1D STP还差。
 

STP-8-RSTP中的提议/同意过程的更多相关文章

  1. STP详解-STP、RSTP、MSTP

    STP详解 01 冗余链路中存在的问题 如图所示LSW1和LSW2之间有两条线路相连,它们之间任何一条链路出现故障另外一条线路可以马上顶替出现故障的那条链路,这样可以很好的解决单链路故障引起的网络中断 ...

  2. JVM中对象的创建过程

    JVM中对象的创建过程如以下流程图中所示: 对其主要步骤进行详细阐述: 为新生对象分配内存: 内存的分配方式: 指针碰撞:假设Java堆中内存是绝对规整的,所有用过的内存放在一边,空闲的内存在另一边, ...

  3. Android中View的绘制过程 onMeasure方法简述 附有自定义View例子

    Android中View的绘制过程 onMeasure方法简述 附有自定义View例子 Android中View的绘制过程 当Activity获得焦点时,它将被要求绘制自己的布局,Android fr ...

  4. Android系统在新进程中启动自定义服务过程(startService)的原理分析

    在编写Android应用程序时,我们一般将一些计算型的逻辑放在一个独立的进程来处理,这样主进程仍然可以流畅地响应界面事件,提高用户体验.Android系统为我们提供了一个Service类,我们可以实现 ...

  5. 【转】Android中View的绘制过程 onMeasure方法简述 附有自定义View例子

    Android中View的绘制过程 当Activity获得焦点时,它将被要求绘制自己的布局,Android framework将会处理绘制过程,Activity只需提供它的布局的根节点. 绘制过程从布 ...

  6. Android Multimedia框架总结(二十二)MediaCodec中C++中创建到start过程及状态变换

    上一章介绍MediaCodec中创建到start过程(到jni部分),从今天开始,将深入源码中看看其c++过程,看下Agenda如下: mediacodec.h CreateByType initMe ...

  7. JVM中对象的回收过程

      当我们的程序开启运行之后就,就会在我们的java堆中不断的产生新的对象,而这是需要占用我们的存储空间的,因为创建一个新的对象需要分配对应的内存空间,显然我的内存空间是固定有限的,所以我们需要对没有 ...

  8. 有谁知道Delphi中"窗口"的创建过程?

      求助:有谁知道Delphi中窗口的创建过程,此“窗口”不仅仅指 TForm 类型, 还包括一般的窗口控件,如TButton,TEdit等等,希望有能够十分详细的运作 过程,比如说CreatPara ...

  9. oracle中使用函数控制过程是否执行(结合job使用)

    oracle中使用函数控制过程是否执行(结合job使用时候,循环时间不好写的时候,可以此种方法比较方便) CREATE OR REPLACE FUNCTION wsbs_pk_date_validat ...

随机推荐

  1. Zabbix的snmp监控一些snmp常用的一些OID (KEY)

    摘自: http://www.iyunv.com/thread-167287-1-1.html System Group sysDescr 1.3.6.1.2.1.1.1 sysObjectID 1. ...

  2. ansible playbook学习

    摘自: http://www.ywnds.com/?p=6064 https://github.com/ansible/ansible-examples

  3. Zeppelin- Linux下安装Zeppelin

    前期部署: 下载,解压,配置PATH环境(编辑/etc/profile文件,记得source一下该文件) zepplin配置参考文档:https://zeppelin.apache.org/docs/ ...

  4. iOS审核总被拒?腾讯教你提升iOS审核通过率!

    作者:Jamie,腾讯开发工程师,在iOS预审和ASO优化领域从事专项测试相关工作,为腾讯游戏近100个产品提供专项服务. 商业转载请联系腾讯WeTest获得授权,非商业转载请注明出处. WeTest ...

  5. jQuery Validate 插件为表单提供了强大的验证功能

    之前项目开发中,表单校验用的jQuery Validate 插件,这个插件为表单提供了强大的验证功能,让客户端表单验证变得更简单,同时提供了大量的定制选项,满足应用程序各种需求.该插件捆绑了一套有用的 ...

  6. hdu-5862 Counting Intersections(线段树+扫描线)

    题目链接: Counting Intersections Time Limit: 12000/6000 MS (Java/Others)     Memory Limit: 65536/65536 K ...

  7. ACM学习历程——POJ3321 Apple Tree(搜索,线段树)

          Description There is an apple tree outside of kaka's house. Every autumn, a lot of apples will ...

  8. 51nod 1218 最长递增子序列 V2——LIS+思路(套路)

    题目:http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1218 自己怎么连这种 喜闻乐见的大水题 都做不出来了…… 好像见过 ...

  9. poj3662Telephone Lines——二分+最短路

    题目:http://poj.org/problem?id=3662 二分答案找出符合条件的最小长度: 假设了每个长度后,以这个为标准对每条边赋值,0为小于等于,1为大于,然后按这个值来跑最短路,在看看 ...

  10. Python实例浅谈之五Python守护进程和脚本单例运行

    一.简介 守护进程最重要的特性是后台运行:它必须与其运行前的环境隔离开来,这些环境包括未关闭的文件描述符.控制终端.会话和进程组.工作目录以及文件创建掩码等:它可以在系统启动时从启动脚本/etc/rc ...