zoukankan      html  css  js  c++  java
  • OSI模型第二层数据链路层-STP协议

    1.stp协议的由来。

    在二层网络中,交换机起到了很重要的作用,如果有一台交换机出现故障会影响网络的使用,为了避免存在单点故障,在实际的二层链路中会采用链路冗余,也就是采用交换设备之间多条联络连接,即多台交换机之间都有连接,这样即使一台交换机故障了,也可以使用其他交换机。这就是链路冗余。

    链路冗余会------带来环路。

    1.1环路影响一----广播风暴。

    上图主机A发送arp报文,交换机B收到后,除接收端口外,其余端口都发送一份。B-->A-->C--->B这样循环(外圈)

    交换机A收到交换机C的报文后又发给交换价B。B-->C-->A--B(内圈)

    由于交换价没有TTL值,所以这些报文一直这样循环,占用交换机资源。

    而且主机B会收到2份报文。试想你下了一份手机壳的单,过来两份手机壳,还是货到付款的。

    1.2环路影响二---mac地址震荡。

    上图,主机A发送arp报文。交换机B首先是学习主机A的mac地址在G0-0-3上。并且交换机B吧数据帧发给A--->C---->B并且从G0-0-2口又学习到同一mac地址。

    交换机以后学习到的mac地址为准,(因为平时办公室用笔记本电脑,直接吧网线拔了,去另个办公室插上,还能上网。)

    就会产生mac地址在两个端口跳。导致交换机获取mac地址不稳定。

    2.生成树计算过程

    2.1根交换机的选举。

    1.选桥(交换机是由网桥演变过来的)ID小的为根交换机,上图中SWA最小,选为根。

    2.每个交换机刚启动的时候都认为自己是根交换机,然后在和网络中发送BPDU报文和交换设备比桥ID。

    3.桥ID的组成32768(优先级).00e0-fc16-ee43(mac地址)  其中优先级可以修改,取值范围为0-65535里面4096*n也就是4096倍数 (n取0及正整数)

    2.2非根交换机的根端口选举。

    1.选开销小的(带宽越大,开销越小)距离根交换机越近。

    2.邻居桥ID小的。

    3.端口ID(端口号)(上游的端口)选小的

    2.3选举网段的指定端口

     

    0.这个网段是指数据链路段,比如交换机B和C之间的连线就是网段。

    1.选开销小的(带宽越大,开销越小)距离根交换机越近。

    2.邻近交换机 桥ID小的。

    3.端口ID(端口号)(上游的端口)选小的

    剩余交换机端口进行阻塞。

    3.交换机端口的角色

    交换机端口状态:

    各个状态的转换

    开机后从disabled转listenning,listenning状态默认停留15秒,如何接收到的bpdu被告知需要blocking,就直接进入阻塞状态。

    否则进入learning状态,默认停留15秒,如果需要阻塞,直接进入blocking状态,否则进入forwarding状态就成为正常使用端口。

    如果需要阻塞,直接进入blocking状态。

    根交换机每隔两秒中发送一个bpdu报文,告知非根交换机状态(是否还活着)。非根交换机20s收不到根交换机报文,则视为根交换机已死,重新选举根交换机

  • 相关阅读:
    STM32 --- 什么时候打开复用IO的时钟(比如RCC_APB2Periph_AFIO)
    STM32 一直进入串口接收中断
    printf 中的 %.*s
    形参定义为二级指针,可以修改实参指针本身的值
    结构体和联合体配合使用
    自定义注解的实现思路
    log4j application.properties 配置文件
    外观设计模式
    适配器设计模式
    模版方法设计模式
  • 原文地址:https://www.cnblogs.com/cui0x01/p/6285807.html
Copyright © 2011-2022 走看看