学习笔记——交换——STP(生成树)简介

一、技术背景

1、生成树技术背景

交换机单线路组网,存在单点故障(上左图),上行线路及设备都不具备冗余性,一旦链路或上行设备发生故障,业务将会中断。

为了使得网络更加健壮、更具有冗余性,将拓扑修改为(上右图)接入层交换机采用双链路,联到两台汇聚设备,构成一个物理链路冗余的二层环境,解决了单链路及单设备故障问题。

但是这样也带来了一个大问题,就是二层物理环境存在环路。

2、二层环路带来的问题

(1)典型问题一:广播风暴

网络中如若存在二层环路,一旦出现广播数据帧,这些数据帧将被交换机不断进行泛洪,从而在网络中造成广播风暴。(上左图)

**广播风暴对网络的危害:**将严重消耗设备资源及网络带宽,最终导致网络瘫痪。

(2)典型问题二:MAC地址漂移

1.PC发送数据帧给Server;

2.SW3的MAC地址表中没有匹配目的MAC的表项,于是将数据帧进行泛洪;

3.SW1及SW2都会收到这个数据帧并学习源MAC,同时将数据帧进一步泛洪;SW1及SW2又从自己另一个接口收到这个数据帧,于是MAC表又一次发生改变,如此往复。

(上右图)以SW1为例,5489-98EE-788A会不断的在GE0/0/1与GE0/0/2接口之间来回切换,这被称为MAC地址漂移 现象。

即使不是人为搭建冗余的物理环境而导致的环路,网络也有可能因为种种原因出现二层环路引发的故障。

交换机环路带来的问题: 广播风暴、mac地址表不稳定、网络卡顿、网络不稳定、过多占用交换机的cpu和内存等等。

3、有没有什么办法解决环路的问题呢?

生成树(Spanning-tree)协议就是用于解决环路这个问题的。

什么是生成树?

1、解决二层环路。

2、防止广播风暴。 广播风暴造成的结果是什么? 造成广播风暴的原因是什么?

广播报文在两个或多个交换机间大量的、重复的、无休止的传递。洪范、冗余链路。

3、防止MAC地址表的不稳定。

4、防止数据帧的重复拷贝。

通过在交换网络中部署生成树(Spanning-tree)技术,能够防止网络中出现二层环路。

STP运行后,如果网络中存在环路,那么STP通过阻塞(Block)特定的接口从而打破环路 ,并且在网络出现拓扑变更时及时收敛,以保证网络的冗余性。(如上边左图所示)

当拓扑发生变更的时候,生成树协议能够探测到这些变化,并且及时自动的调整接口状态,从而适应网络拓扑的变化,实现链路冗余。(如上边右图所示)

4、生成树协议在园区网络中的应用位置

5、二层环路与三层环路

**常见环路主要分为:**二层环路和三层环路。

(1)三层环路 (2)二层环路

常见原因 :路由环路 **常见原因:**网络中部署了二层冗余环境,或人为的误接线缆导致;

防环方法: 防环方法:

1、通过动态路由协议防环。 1、需借助特定的协议或机制实现二层防环;

2、IP报文头部中的TTL字段用于防止报 2、二层帧头中并没有任何信息可用于防止数据帧被无

文被无止尽地转发。 止尽地转发。

二、STP简介

1、STP概述

STP(spanning tree protocol,生成树协议) STP是一个用于局域网中消除数据链路层物理环路的协议,标准名称是 802.1D

运行该协议的设备通过彼此交互信息而发现网络中的环路,对某些接口进行阻塞以消除环路。

STP在网络中运行后会持续监控网络的状态,当网络出现拓扑变更时,STP能够感知并且进行自动响应,从而使得网络状态适应新的拓扑结构,保证网络可靠性。(下左图)

注意: 在华为的交换机上,开机默认自动运行。

2、STP(生成树)作用

STP通过阻塞端口来消除二层交换机环路(交换机与交换机间),并能够实现链路备份的目的。

**消除环路:**通过阻塞冗余链路消除网络中可能存在的网络通信环路。

**链路备份:**当前活动的路径发生故障时,激活冗余备份链路,恢复网络连通性。

**解决方案:**逻辑性阻塞某个接口. 使用STP来逻辑的阻塞某一个接口,使其只接收流量,不发送流量从而防止环路。

3、标准STP的缺陷

(1)收敛时间长

在默认情况下,STP的收敛时间为30s(侦听(Listening)+学习(learning)各15s),在某些场景下,收敛时间更是长达50s(例如根桥故障,不向外发送BPDU,交换机需要先等待20s的老化时间,再加上30s的侦听(Listening)+学习(learning)),在这个时间段内,会导致网络长时间的中断。

(2)拓扑变化时收敛机制不灵活

当企业上下班时间,每个员工将自己的PC进行开关机的操作,现网当中就会出现大量的TCN(拓扑变更) BPDU,影响设备的性能,而PC机器其实不需要参加到生成树计算当中。

BPDU转发时,唯一不变的是根桥的ID。

交换机只有在发送BPDU时,才会算上自己的开销,接受BPDU时,不会算上自己的开销(cost)。

**指定端口(DP):**发送最优的BPDU

**根端口(RP):**收最优的BPDU

**阻塞端口(AP):**既不是指定端口,又不是根端口,则为阻塞端口


整个华为数通学习笔记系列中,本人是以网络视频与网络文章的方式自学的,并按自己理解的方式总结了学习笔记,某些笔记段落中可能有部分文字或图片与网络中有雷同,并非抄袭。完处于学习态度,觉得这段文字更通俗易懂,融入了自己的学习笔记中。如有相关文字涉及到某个人的版权利益,可以直接联系我,我会把相关文字删除。【VX:czlingyun 暗号:CSDN】

相关推荐
剑走偏锋o.O1 小时前
Spring MVC 框架学习笔记:从入门到精通的实战指南
学习·spring·springmvc
sealaugh321 小时前
aws(学习笔记第二十九课) aws cloudfront hands on
笔记·学习·aws
FakeOccupational2 小时前
【计算社会学】 多智能体建模 ABM Agent Based Modeling 笔记
笔记
虾球xz2 小时前
游戏引擎学习第117天
学习·游戏引擎
夏莉莉iy2 小时前
[MDM 2024]Spatial-Temporal Large Language Model for Traffic Prediction
人工智能·笔记·深度学习·机器学习·语言模型·自然语言处理·transformer
StickToForever2 小时前
第4章 信息系统架构(三)
经验分享·笔记·学习·职场和发展
零星_AagT3 小时前
Apache-CC6链审计笔记
java·笔记·apache·代码审计
陈无左耳、4 小时前
HarmonyOS学习第4天: DevEco Studio初体验
学习·华为·harmonyos
挣扎与觉醒中的技术人4 小时前
网络安全入门持续学习与进阶路径(一)
网络·c++·学习·程序人生·安全·web安全
技术小齐5 小时前
网络运维学习笔记 017HCIA-Datacom综合实验01
运维·网络·学习