路由交换-----STP

STP协议(生成树协议)逻辑上断开环路,防止二层网络的广播风暴的产生。
为什么需要STP协议?
假设有这样一个拓扑:

现在PC1ping网关192.168.1.3,而这个网关是不存在的,同时在LSW2上进行抓包。

可以看到这个网络里现在充斥着大量的重复包,形成了广播风暴,这种时候交换机的性能急剧下降,因为从PC1出去的包在LSW2上没有找到目标地址的MAC地址,这时交换机会将这个单播帧向除了源端口之外的其它端口转发,转发到其它交换机上,其它的交换机又会重复这个步骤,使得这个网络形成了环路,导致广播风暴,这时就引入了STP协议。

STP的作用

  • 消除环路,通过阻断冗余链路来消除网络中可能存在的环路。
  • 链路备份:当活动路径发生故障时,激活备份链路,即使恢复网络的连通性。

根桥选举
在STP网络中,会存在一个交换机为根桥,其他的交换机为非根桥,根桥是STP网络的逻辑中心,当根桥出现故障时,非根桥之间会交互BPDU信息并重新选举根桥。

在STP中有三种端口角色:根端口、指定端口、预备端口。
根端口:非根桥去往根桥路径最短的端口。
指定端口:是指所连网络转发配置BDPU的端口,根桥的每个端口都是指定端口。
预备端口:一个端口不是跟端口也不是指定端口,俺么这个端口就是预备端口,预备端口是被阻塞的。

根桥选举的依据是桥ID,桥ID是由桥优先级和MAC地址构成的,默认的桥优先级是32768,优先级的数值越小越优先也最容易被选举为根桥,如果优先级相同那么就比较MAC地址,MAC地址有效越优先。
默认情况下,每个交换机默认自己是根桥,然后通过指定端口向外发送BPDU报文,然后收到BPDU报文的交换机会将报文里的桥ID与自己的比较,相互比较之后选举出根桥。

根端口选举
每个非根桥都要选举一个根端口,即距离根桥最近的那个端口。选举根端口的过程是:

  • 非根交换机到根桥的链路开销。
  • 如果开销一样,比较上一级发送者的桥ID,选出发送者桥ID最小的对应端口。
  • 如果上一级发送者桥ID一样就比较发送端口的优先级,选出优先级最小的对应端口。
  • 如果发送端口的优先级也一样,再比较发送端口的端口号。

指定端口选举
指定端口就是发送BPDU报文的端口,指定端口的选举是这样的:

  • 首先比较路径开销,开销最小的为指定端口。
  • 如果开销相同比较端口所在交换机的桥ID,桥ID最新的端口选举为指定端口。
  • 如果桥ID比较不出来接着比较端口ID,端口ID最小的选举为指定端口。

路由交换04-----STP的更多相关文章

  1. 华为路由交换综合实验 ---IA阶段

    目录 华为路由交换综合实验 ---IA阶段 实验拓扑 实验需求 华为路由交换综合实验 ---IA阶段 实验拓扑 实验需求 根据拓扑合理规划IP地址以及VLANIf地址(PC1属于运营部,PC2属于市场 ...

  2. 路由交换02-----ARP协议

    路由交换协议-----ARP ARP协议 ARP(Address Resolution Protocol),是根据IP地址获取MAC地址的一个TCP/IP协议,即将IP地址对应到物理地址,从而实现数据 ...

  3. 路由交换01-----ICMP协议

    路由交换协议------ICMP ICMP协议 ICMP (InternetControl Message Protocol)协议是TCP/IP协议簇的核心协议之一,用来在网络设备之间传递各种差错和控 ...

  4. 自研DCI网络路由交换协议DCIP-白牌交换机时代的企业网络

    一转眼从听华为3Com的路由交换课程到如今已经13年有余了,依稀记得第一节课的时候我带着老婆去听的课(老婆是日语系的.那时还是女朋友,并不懂网络,仅仅是跟着我去上课的).抢了个头排,讲师宋岩老师提问了 ...

  5. 网络基础Cisco路由交换三

    热备份路由协议HSRP:Cisco私有协议 确保了当网络边缘设备或接入链路出现故障时,用户通信能迅速并透明地恢复,以此为ip网络提供余性,通过使用同意虚拟ip地址和虚拟mac地址,LAN网段上的两台或 ...

  6. 网络基础Cisco路由交换二

    三层交换技术 作用: 使用三层交换技术实现VLAN间通信. 三层交换=二层交换+三层转发 基于CEF的快速转发 主要包含两个转发用的信息表: 转发信息库(FIB):FIB类似于路由表,包含路由表中转发 ...

  7. 华为eNSP路由交换实验-生成树之RSTP

    RSTP基础配置 实验拓扑图 实验步骤 1.基本配置 根据实验编址表进行相应的基本IP配置. 2.配置RSTP基本功能. (1)把生成树模式由默认的MSTP(华为交换机默认开启)改为RSTP. [FW ...

  8. H3C路由交换常用命令

    1.查看Linux下查看端口状态 root@root:~# netstat -an|grep -E "6002|6003" 2.H3C交换机显示当前配置 [H3C]display ...

  9. 网络基础Cisco路由交换四

    NAT及静态转换 概述(NAT:网络地址转化) 作用: 通过将内部网络的私有ip地址翻译成全球唯一的公网ip地址, 使内部网络可以连接到互联网等外部网络上. NATA的特性 优点: 节省公有合法ip地 ...

随机推荐

  1. Android_自适应布局

    1.屏幕相关概念1.1分辨率是指屏幕上有横竖各有多少个像素1.2屏幕尺寸指的是手机实际的物理尺寸,比如常用的2.8英寸,3.2英寸,3.5英寸,3.7英寸android将屏幕大小分为四个级别(smal ...

  2. DeepLab 使用 Cityscapes 数据集训练模型

    原文地址:DeepLab 使用 Cityscapes 数据集训练模型 0x00 操作环境 OS: Ubuntu 16.04 LTS CPU: Intel® Core™ i7-4790K GPU: Ge ...

  3. 从零开始学 Web 之 ES6(三)ES6基础语法一

    大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...

  4. Docker容器的创建、启动、和停止

    1.容器是独立运行的一个或一组应用,及他们的运行环境.容器是Docker中的一个重要的概念. 2.docker容器的启动有三种方式a.交互方式,基于镜像新建容器并启动例如我们可以启动一个容器,打印出当 ...

  5. ClickHouse之集群搭建以及数据复制

    前面的文章简单的介绍了ClickHouse,以及也进行了简单的性能测试.本次说说集群的搭建以及数据复制,如果复制数据需要zookeeper配合. 环境: 1. 3台机器,我这里是3台虚拟机.都安装了c ...

  6. Hibernate学习(四)———— 双向多对多映射关系

    一.小疑问的解答 问题一:到这里,有很多学习者会感到困惑,因为他不知道使用hibernate是不是需要自己去创建表,还是hibernate全自动,如果需要自己创建表,那么主外键这种设置也是自己设置吗? ...

  7. Trie(字典树)解析及其在编程竞赛中的典型应用举例

    摘要: 本文主要讲解了Trie的基本思想和原理,实现了几种常见的Trie构造方法,着重讲解Trie在编程竞赛中的一些典型应用. 什么是Trie? 如何构建一个Trie? Trie在编程竞赛中的典型应用 ...

  8. [牛客小白月赛4 H] 相邻的糖果

    Description 有n个盒子摆成一排,每个盒子内都有ai个糖果. 现在你可以执行以下操作: ·你可以选择任意一个盒子,在选择的盒子内吃掉一个糖果. 对你的要求如下: ·任何m个相邻的盒子内糖果数 ...

  9. 微信公众号开发--.Net Core实现微信消息加解密

    1:准备工作 进入微信公众号后台设置微信服务器配置参数(注意:Token和EncodingAESKey必须和微信服务器验证参数保持一致,不然验证不会通过). 2:基本配置 设置为安全模式 3.代码实现 ...

  10. 【Quartz】问题记录注意事项【四】

    记录一:queartz 在同时启动多个任务是,触发器名称不能设置一致,不然第二次启动会不成功 记录二:quartz 在使用任务与触发器分离写法时,任务必须要带(.StoreDurably()) IJo ...