网络之路26:STP生成树协议

简介: 网络之路26:STP生成树协议


6、以太网交换基础实验

学习过了基础的网络实验配置,我们应该对网络实验有了简单的了解。接下来,我们继续学习交换机相关的二层技术配置,在H3C认证课程中,该系列课程为构建高性能园区网络,我们先介绍其中比较简单的部分。

6.1、生成树协议

前面介绍VLAN的时候网络之路24:VLAN基础实验,我们提过,如果在实际网络环境中,因为接线不当等原因,可能会出现网络环路的情况。

大概像上图这样,多台设备首尾相连,此时广播报文就会在几台设备之间不断传播,在传播的同时又在生成新的报文。在这种网络中,过不了多久,网络里的流量就达到设备的性能瓶颈了,出现性能显著下降,甚至网络不可用等问题,影响正常业务报文的转发;这种情况,我们一般称之为“广播风暴”

我们一般将交换机分为傻瓜交换机(二层交换机)和可管理交换机(三层交换机),可管理交换机大部分都可以支持STP(Spanning Tree Protocol,生成树协议),生成树协议是一种二层管理协议,它通过选择性地阻塞网络中的冗余链路来消除二层环路,同时还具备链路备份的功能。

然后我们使用HCL构造一个下图这样的网络拓扑网络之路11:认识网络设备模拟器HCL

在不区分VLAN的情况下,要从PC4访问到PC6,可能的路径有以下3条:

1、PC4→SW1→GE0/1→SW2→PC6

2、PC4→SW1→GE0/4→SW2→PC6

3、PC4→SW1→GE0/2→SW3→SW2→PC6

同时我们也能明显的看到,图里面存在环路,此时STP就派上用场了。在H3C的交换机设备上,默认是全局开启了STP的,我们可以通过命令进行查看。

STP采用的协议报文是BPDU(Bridge Protocol Data Unit,桥协议数据单元),也称为配置消息,STP通过在设备之间传递BPDU来确定网络的拓扑结构,同时确定端口的角色和状态。STP的端口状态有3种,主要状态为Forwarding(该状态下的端口可以接收和发送BPDU,也转发用户流量)和Discarding(该状态下的端口可以接收和发送BPDU,但不转发用户流量),还有一种过渡状态Learning,该状态下的端口可以接收和发送BPDU,但不转发用户流量。

我们看一下SW2的端口角色和状态。

再看一下SW3的端口角色和状态。

那么此时的链路状态如下所示:

一共4条链路,SW2和SW3的互联线路不转发数据,SW1和SW2的其中一条互联线路不转发数据,虽然接口的物理状态还是UP的,但现在逻辑上已经不存在环路了。

然后我们看一下SW2上出现的3种端口角色:

1、GE1/0/1为根端口(Root Port),对应Role为ROOT,是指非根桥设备上离根桥最近的端口,用于在非根桥上负责向根桥方向转发数据。那什么是根桥呢?STP认为树形的网络结构必须有树根,于是便引入了根桥的概念,根桥会根据网络拓扑的变化实时选举改变,但是一个STP中有且只有一个根桥,其他设备则称为叶子结点。以此拓扑为例,非根桥设备SW2和SW3上有且只有一个根端口,而根桥设备SW1上没有根端口。

2、GE1/0/2为指定端口(Designated Port),对应Role为DESI,与根端口相反,指定端口负责向下游网段或设备转发数据的端口。

3、GE1/0/4为替换端口(Alternate Port),对应Role为ALTE,是根端口(STP)和主端口(MST)的备份端口。当根端口或主端口被阻塞后,替换端口将成为新的根端口或主端口。

通过命令,我们可以查看生成树端口角色计算的历史信息。

我们可以看到接口GE1/0/1的变化过程为DISA→DESI→ROOT,而GE1/0/4的变化过程为DISA→DESI→ALTE,这就说明了根桥的选举过程。

在网络初始化过程中,所有设备都视自己为根桥,生成各自的配置BPDU并周期性地向外发送,BPDU的关键信息包括根桥ID、根路径开销、指定桥ID、指定端口ID等等,通过前面的计算历史我们可以看出,这些ID基本上都由端口的优先级和MAC地址组成。缺省情况下,设备的优先级都是32768,端口的优先级都是128,所以根桥一般都是由MAC地址确定的。只要设备的生产符合规则,没有任何两台设备的MAC地址是一样的,所以MAC地址小的设备发送的BPDU优先级就会更高,在选举的第一步就会直接选举成为根桥,也就不会进入到根路径开销等选举过程。当网络拓扑稳定以后,只有根桥设备才会向外发送配置BPDU,其他设备则对其进行转发。

以SW1为例,它的根桥ID就是32768.acb6-e75e-0100,因为它是第一台创建的设备,正常来讲它的MAC地址就是最小的。同时我们可以看到BPDU的发送周期Hello Time为2秒,那我们接下来就可以测一下STP的链路备份功能了。

现在计算PC4到PC6的路径为PC4→SW1→GE0/1→SW2→PC6,那么我们在PC4上发起长ping,然后DOWN掉SW1的GE1/0/1接口,看看报文的中断情况。

一个报文都没丢,我们看一下SW2的状态变化。

从日志来看,整个切换过程一共只有5 MS。

从生成树端口角色计算的历史信息来看,接口GE1/0/1的状态DOWN掉之后,接口GE1/0/4马上切换为ROOT根端口,负责向根桥SW1方向转发数据,使得业务中断未引起明显的业务感知。

此时,网络中还存在一条冗余链路呢。

我们查看SW3的端口状态,此时GE1/0/1仍然是替换端口,PC4到PC6的路径为PC4→SW1→GE0/4→SW2→PC6。

那么我们在PC4上发起长ping,然后DOWN掉SW2的GE1/0/4接口,看看报文的中断情况。

一个报文都没丢,我们看一下SW2的状态变化。

看一下SW3的端口角色计算历史信息,SW2的接口的状态变化之后,SW3的接口GE1/0/1马上切换为DESI指定端口,负责向下游设备SW2转发数据的端口转发数据,使得业务中断未引起明显的业务感知。

通过两次测试,均没有丢包,也没有引起明显的时延跳变,说明STP的收敛速度确实很快。然后我们把两个接口都恢复,再看看生成树的状态会变成什么样。

状态也是很快就切换了,没有丢包也没有引起明显的时延跳变,SW2的端口角色和状态与之前完全一致。

SW3的端口角色和状态也与之前完全一致。只是收敛速度太快,都看不到LEARNING的状态,而且日志也没有记录,只有TC的报文,谁能给个显示状态变化日志的方法?


相关文章
|
26天前
|
机器学习/深度学习 数据采集 人工智能
基于Huffman树的层次化Softmax:面向大规模神经网络的高效概率计算方法
层次化Softmax算法通过引入Huffman树结构,将传统Softmax的计算复杂度从线性降至对数级别,显著提升了大规模词汇表的训练效率。该算法不仅优化了计算效率,还在处理大规模离散分布问题上提供了新的思路。文章详细介绍了Huffman树的构建、节点编码、概率计算及基于Gensim的实现方法,并讨论了工程实现中的优化策略与应用实践。
66 15
基于Huffman树的层次化Softmax:面向大规模神经网络的高效概率计算方法
|
10天前
|
前端开发 网络协议 安全
【网络原理】——HTTP协议、fiddler抓包
HTTP超文本传输,HTML,fiddler抓包,URL,urlencode,HTTP首行方法,GET方法,POST方法
|
13天前
|
网络协议 安全 网络安全
探索网络模型与协议:从OSI到HTTPs的原理解析
OSI七层网络模型和TCP/IP四层模型是理解和设计计算机网络的框架。OSI模型包括物理层、数据链路层、网络层、传输层、会话层、表示层和应用层,而TCP/IP模型则简化为链路层、网络层、传输层和 HTTPS协议基于HTTP并通过TLS/SSL加密数据,确保安全传输。其连接过程涉及TCP三次握手、SSL证书验证、对称密钥交换等步骤,以保障通信的安全性和完整性。数字信封技术使用非对称加密和数字证书确保数据的机密性和身份认证。 浏览器通过Https访问网站的过程包括输入网址、DNS解析、建立TCP连接、发送HTTPS请求、接收响应、验证证书和解析网页内容等步骤,确保用户与服务器之间的安全通信。
62 1
|
2月前
|
安全 搜索推荐 网络安全
HTTPS协议是**一种通过计算机网络进行安全通信的传输协议
HTTPS协议是**一种通过计算机网络进行安全通信的传输协议
75 11
|
2月前
|
监控 网络协议 网络性能优化
网络通信的核心选择:TCP与UDP协议深度解析
在网络通信领域,TCP(传输控制协议)和UDP(用户数据报协议)是两种基础且截然不同的传输层协议。它们各自的特点和适用场景对于网络工程师和开发者来说至关重要。本文将深入探讨TCP和UDP的核心区别,并分析它们在实际应用中的选择依据。
63 3
|
2月前
|
网络协议 网络安全 网络虚拟化
本文介绍了十个重要的网络技术术语,包括IP地址、子网掩码、域名系统(DNS)、防火墙、虚拟专用网络(VPN)、路由器、交换机、超文本传输协议(HTTP)、传输控制协议/网际协议(TCP/IP)和云计算
本文介绍了十个重要的网络技术术语,包括IP地址、子网掩码、域名系统(DNS)、防火墙、虚拟专用网络(VPN)、路由器、交换机、超文本传输协议(HTTP)、传输控制协议/网际协议(TCP/IP)和云计算。通过这些术语的详细解释,帮助读者更好地理解和应用网络技术,应对数字化时代的挑战和机遇。
120 3
|
20天前
|
SQL 安全 网络安全
网络安全与信息安全:知识分享####
【10月更文挑战第21天】 随着数字化时代的快速发展,网络安全和信息安全已成为个人和企业不可忽视的关键问题。本文将探讨网络安全漏洞、加密技术以及安全意识的重要性,并提供一些实用的建议,帮助读者提高自身的网络安全防护能力。 ####
59 17
|
30天前
|
存储 SQL 安全
网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享
随着互联网的普及,网络安全问题日益突出。本文将介绍网络安全的重要性,分析常见的网络安全漏洞及其危害,探讨加密技术在保障网络安全中的作用,并强调提高安全意识的必要性。通过本文的学习,读者将了解网络安全的基本概念和应对策略,提升个人和组织的网络安全防护能力。
|
1月前
|
SQL 安全 网络安全
网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享
随着互联网的普及,网络安全问题日益突出。本文将从网络安全漏洞、加密技术和安全意识三个方面进行探讨,旨在提高读者对网络安全的认识和防范能力。通过分析常见的网络安全漏洞,介绍加密技术的基本原理和应用,以及强调安全意识的重要性,帮助读者更好地保护自己的网络信息安全。
49 10
|
1月前
|
SQL 安全 网络安全
网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享
在数字化时代,网络安全和信息安全已成为我们生活中不可或缺的一部分。本文将介绍网络安全漏洞、加密技术和安全意识等方面的内容,并提供一些实用的代码示例。通过阅读本文,您将了解到如何保护自己的网络安全,以及如何提高自己的信息安全意识。
61 10

热门文章

最新文章