生成树协议应用的原因是从逻辑上阻塞交换机在物理上形成的环路。大家都知道交换机工作在二层,也就是数据链路层,根据mac地址识别主机,对三层网络无法识别,因此交换机不能隔离广播。但是在日常的工作中,为了达到数据链路的可靠性,通常都会冗余备份链路,也即是物理环路。为了避免广播风暴的产生,同时又能提高链路的可靠性,就需要在现有的环路上使用生成树协议。而生成树协议的本质就是生成树算法,只要学会了生成树算法,就学完了生成树协议。

大家都知道交换机实质上就是多端口的网桥,由于网桥是通过软件来隔离冲突域,因此在转发时会有瓶颈出现。而交换机是通过硬件来隔离冲突域,背板带宽大,通过一定的算法来转发数据,所以性能远远大于网桥,从而到最后完全取代网桥。还有就是随着交换机的发展,到最后直接收购网桥,由于对网桥使用的习惯,好多知识点还是按着网桥来定义的。生成树协议的三个步骤是:1,根网桥的选定;2,根端口的选定;3,指定端口的选定.其中根网桥指的就是根交换机的意思。

根网桥的选定实际上是最低网桥ID(BID Bridge ID)

-每个网络只能有一个根桥,根桥具有最低的桥ID,根桥上的所有端口都是指定端口,网桥ID组成:

所有交换机出厂的优先级缺省值都是32768,所有交换机出厂都只有全球唯一的一个Mac地址,根据交换机的优先级和Mac地址确定根网桥,第一步到此已经完成。

从图可见,交换机A为根桥,B、C交换机为非根桥

接下来说第二步,根端口的选定。

根端口实际上就是非根桥与根桥进行数据交换的端口,存在与非根桥上。根端口的选定由三点确定:1,首先是根路径成本最低(cost值);2,直连网桥的网桥ID最小(BID);3,直连网桥的端口ID最小(端口ID)

根路径成本cost是根据单链路宽带大小来确定的,我们一般规定1g带宽根路径成本为4,100M根路径成本为19,10M根路径成本为100,根路径成本是所有链路路径成本的总和。

如上图,交换机B的2端口为根端口,交换机C的2端口也为根端口

如上图所示,交换机A为根桥,其余交换机为非根桥,根据根路径成本大小,可知B交换机和C交换机的3端口为根端口。D交换机的根路径成本相同,则比较直连网桥的BID,优先级相同,则Mac地址小的交换机连接的端口为根端口,由此可知D交换机的3端口为根端口。

如上图所示,交换机A为根网桥,交换机B为非根桥,交换机B的根路径成本相同,直连网桥的桥ID也相同,这时需要比较直连网桥的端口ID,端口ID较小的为根端口,由图可知交换机B的2端口为根端口。

上面已经确定了根网桥,根端口,接下来最后一步,找出指定端口。

在每个网段上都有一个指定端口,根端口和指定端口一般处于forwarding状态,非指定端口一般是blocked状态。

指定端口的选择分为4种情况:1,根桥上的端口全是指定端口;2,非根桥上的指定端口又分为3种情况,一,根路径成本最小;二,端口所在的网桥的ID值较小;三,直连网桥的端口ID值较小

由图可知,A交换机的端口2、3为指定端口,B交换机的3端口为指定端口,C交换机的3端口既不是指定端口也不是根端口,故堵塞。其中B交换机的指定端口的确定是先比较根路径成本,因为根路径成本相同,故比较端口所在网桥的ID值,因为B交换机的3端口的所在的桥ID较小,故B交换机3端口为指定端口。

生成树协议stp的更多相关文章

  1. 第2层交换和生成树协议(STP)__第2层的3种交换功能

    地址学习(Address Learning):第2层交换机和网桥能够记住在一个接口上所收到的每个帧的源设备硬件地址,而且它们会将这个硬件地址信息输入到被称为转发/过滤表的MAC数据库中. 转发/过滤决 ...

  2. 第2层交换和生成树协议(STP)__MAC地址表

    1.MAC(Media Access Control, 介质访问控制)地址是识别LAN节点的标识.网卡的物理地址通常是由网卡生产厂家烧入网卡的EPROM(一种闪存芯片,通常可以通过程序擦写),它存储的 ...

  3. 第2层交换和生成树协议(STP)__散知识点

    1.交换式服务 网桥是基于软件的,而交换机使用专用集成电路(ASIC)来创建并维护其过滤表.2层交换机和网桥转发数据的速度比路由器快一些,因为它们不查看网络层报头的信息,不对数据包做任何修改.相反,在 ...

  4. STP 生成树协议 RSTP 快速生成树

    STP(Spanning Tree Protocol)是生成树协议的英文缩写 该协议可应用于在网络中建立树形拓扑,消除网络中的环路,并且可以通过一定的方法实现路径冗余,但不是一定可以实现路径冗余.生成 ...

  5. CISCO交换机STP实验(生成树协议)

    目录 一.前言:生成树协议(STP) 二.CISCO交换机STP命令汇总 三.运用STP搭建简单拓扑 四.实战:STP综合实验 五.结语 一.前言:生成树协议(STP) 计算机网络中,我们为了减少网络 ...

  6. s4-7 生成树协议

    Spanning Tree :为了可靠,采用冗余结构:但是透明网桥 会产生无休止循环的问题 冗余交换拓扑可能带来的问题  广播风暴  多帧传送  MAC地址库不稳定 生成树协议  STP:sp ...

  7. 生成树协议(STP)

    首先了解一下环路问题: 两个交换机将两个局域网同时连接起来的时候,不幸地出现了环路: 这两个交换机还是都能够收到广播包的.交换机 A 一开始是不知道机器 2 在哪个局域网的,所以它会把广播消息放到局域 ...

  8. CCNA 之 九 STP生成树协议

    STP生成树 在上一次实验中,使用了单臂路由是两个不同的VLAN之间进行通信,而单臂路由的这种网络拓扑,当一条链路或者路由设备出现故障的时候,整个网络就会瘫痪. 称此网络为:不健壮的,无冗余的网络环境 ...

  9. STP:生成树协议解决网络冗余问题

    STP(Spanning Tree Protocol)是生成树协议的英文缩写,可应用于计算机网络中树形拓扑结构建立,主要作用是防止网桥网络中的冗余链路形成环路工作.但某些特定因素会导致STP失败,要排 ...

随机推荐

  1. 使用PgBouncer连接池

    1.pgbouncer 的介绍 pgbouncer是一个针对PostgreSQL数据库的轻量级连接池,任何目标应用都可以把 pgbouncer 当作一个 PostgreSQL/Greenplum 服务 ...

  2. 关于Kafka producer管理TCP连接的讨论

    在Kafka中,TCP连接的管理交由底层的Selector类(org.apache.kafka.common.network)来维护.Selector类定义了很多数据结构,其中最核心的当属java.n ...

  3. 一个简易的netty udp服务端

    netty号称java高性能网络库,为人帮忙中,研究了下,写了一个demo.反复调试,更改,局域网两个客户端同时for循环发10000个20字节的数据包,入库mysql,居然没丢. 思路,netty的 ...

  4. 案例源码解读及思路:RabbitMQ在springboot中的配置

    程序员的高级之处不是什么都会,而是对自己不会的进行抽象,然后完成自己的工作.比如对于RabbitMQ,按照字面理解,就将其看成Message Queue,也就是用来容纳对象的集合.很多功能都拆分给一个 ...

  5. Nestjs 缓存

    Docs: https://docs.nestjs.com/techniques/caching yarn add @nestjs/mongoose mongoose yarn add cache-m ...

  6. weblogic反序列化漏洞CVE-2018-2628-批量检测脚本

    #coding=utf-8 import socket import time import re,os,sys,codecs type = 'utf-8' reload(sys) sys.setde ...

  7. vue-cli创建第一个项目(用git bash解决上下键移动选择问题)

    我电脑是windows:(nodejs已经有了) 1 下载vue-cli cmd 打开命令行,或者是gitbash.最好是用cnpm比较快. 2   创建项目: dos命令,cd 你的希望创建的文件夹 ...

  8. 360自带--JS开发工具箱

    360自带–JS开发工具箱 360自带–JS开发工具箱 360自带–JS开发工具箱

  9. [daily][mathematica][fcitx] mathematica 无法输入中文的问题

    mathematica无法输入中文, 我的输入法使用 fcitx 于是我给fcitx的作者提了issue https://github.com/fcitx/fcitx/issues/372 数日之后, ...

  10. PTA天梯地图

    本题要求你实现一个天梯赛专属在线地图,队员输入自己学校所在地和赛场地点后,该地图应该推荐两条路线:一条是最快到达路线:一条是最短距离的路线.题目保证对任意的查询请求,地图上都至少存在一条可达路线. 输 ...