2.STP基本计算过程

目录

2.1 选举根交换机

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

2.3 选举网段的指定端口


2.1 选举根交换机

  • 为了计算生成树,交换机之间需要交换相关信息和参数,这些信息和参数被封装在配置BPDU(Configuration Bridge Protocol Data Unit)中,在交换机之间传递。
  • BPDU是指桥接协议数据单元,泛指交换机之间运行的协议交互信息时使用的数据单元。配置BPDU是BPDU的一种。
  • 生成树计算的第一步是选举根交换机,根交换机的选举基于交换机标识(Bridge ID)
    • 交换机标识由两部分组成:两字节长度的交换机优先级六字节长度MAC地址
    • 交换机优先级是可以配置的,取值范围是0~65535,默认值为32768。
    • 网络中交换机标识最小的成为根交换机,首先比较优先级,如果优先级相同则比较MAC地址,值越小越优先。

  • 本例中,三个交换机的优先级是相同的,由于SWA的MAC地址值最小,因此SWA为根交换机。

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

  • STP为每个非根交换机选举根端口(Root Port)。
  • 交换机的每个端口都有一个端口开销(Port Cost)的参数,此参数表示数据从该端口发送时的开销值,也即出端口的开销。STP认为从一个端口接收数据是没有开销的。端口的开销和端口的带宽有关,带宽越高,开销越小,VRP平台中,百兆端口的开销值为200。从一个非根交换机到达根交换机的路径可能有多条,每一条路径都有一个总的开销值,此开销值是该路径上所有出端口的端口开销总和。

  • 根端口是指从一个非根交换机到根交换机总开销最小的路径所经过的本地端口
    • 这个最小的总开销值称为交换机的根路径开销(Root Path Cost)
    • 如果这样的端口有多个,则比较端口上所连接的上行交换机的交换机标识,越小越优先,
    • 如果端口上所连接的上行交换机的交换机标识相同,则比较端口上所连接的上行端口的端口标识(Port Identifier),越小越优先。
      • 端口标识由两部分组成:一字节长度的端口优先级一字节长度的端口号。一字节长度的端口优先级是可配置的,默认为128。
  • 本例中,假设所有端口都是百兆端口,使用相同的开销值200。

2.3 选举网段的指定端口

  • STP为每个网段选出一个指定端口(Designated Port)指定端口为每个网段转发发往根交换机方向的数据,并且转发由根交换机方向发往该网段的数据。指定端口所在的交换机称为该网段的指定交换机
  • 为每个网段选举指定端口和指定交换机的时候,
    • 首先比较该网段所连接的端口所属交换机的根路径开销,越小越优先;
    • 如果根路径开销相同,则比较所连接的端口所属交换机的交换机标识,越小越优先;
    • 如果根路径开销相同,交换机标识也相同,则比较所连接的端口的端口标识,越小越优先。

拓扑描述

  • 对于根交换机来说,所有端口都是所连网段的指定端口。因此LANA和LANB的指定端口都在SWA上。
  • LAND和LANE都只连接了一个交换机端口,此端口即为指定端口。
  • 对于LANC来说,同时连接到两个交换机端口,并且两个交换机的根路径开销相同,因此需要比较两个端口所在交换机的交换机标识,由于SWB的交换机标识比SWC小(二者交换机优先级一致,但SWB的MAC地址更小),因此LANC的指定端口在SWB上。

  • 既不是根端口也不是指定端口的交换机端口称为Alternate Port(预备端口),预备端口不转发数据,处于阻塞状态

相关推荐

  1. 计算机系统基础 练习题 2

    2024-02-22 12:58:02       33 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-02-22 12:58:02       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-02-22 12:58:02       106 阅读
  3. 在Django里面运行非项目文件

    2024-02-22 12:58:02       87 阅读
  4. Python语言-面向对象

    2024-02-22 12:58:02       96 阅读

热门阅读

  1. 间隔分区表导出指定的分区数据

    2024-02-22 12:58:02       44 阅读
  2. 零基础到高级:Android音视频开发技能路径规划

    2024-02-22 12:58:02       46 阅读
  3. Redis降低内存占用(二)分片结构

    2024-02-22 12:58:02       51 阅读
  4. 【 OpenGL 教程06 】 关于着色器(01)

    2024-02-22 12:58:02       43 阅读
  5. 腾讯云主机Ubuntu22.04安装Odoo17

    2024-02-22 12:58:02       57 阅读
  6. 求逆序对

    2024-02-22 12:58:02       49 阅读
  7. Oracle普通用户启停JOB报错ORA 27486权限不足

    2024-02-22 12:58:02       50 阅读