在本文中,我们将学习STP计时器以及设置它们所需遵循的步骤。另外,我们将描述两种BPDU类型,它们在构建和转换拓扑数据库时交换交换信息。
STP计时器
运行STP的交换机交换BPDU来构建和收敛拓扑数据库。以下三个计时器对于STP流程很重要:
Hello计时器:此计时器确定交换机发送BPDU的频率。缺省情况下,每2秒发送一次BPDU。
转发延迟计时器: 它确定端口在侦听和学习状态下必须花费的时间。
- 引入此延迟时间可确保STP有足够的时间来检测并消除环路。
- 默认情况下,转发延迟为15秒。 由于端口必须通过两个步骤(侦听和学习)来转发流量,因此总延迟时间将为30秒。
MAX Age定时器: 该定时器指示交换机等待从邻居交换机接收BPDU的时间。
- 如果交换机在最长使用期限内未能从邻居交换机接收到Hello BPDU,则将假定交换拓扑发生了变化。请记住,当根端口或指定端口处于UP状态时会使用MAX老化时间,但是由于某些原因,交换机无法接收BPDU数据包。
- MAX年龄计时器的默认值为20秒。
定时器值可以调节。必须在根桥上更改计时器。根网桥会将新的更新计时器值发送到所有交换机。
STP直径
术语“直径”是指一个数据包从网络的一端到另一端必须经过的最大交换机数量。每个STP计时器的默认值基于交换拓扑的直径。
默认情况下,STP认为切换直径为7。这也是最大直径。直径命令调整hello,转发延迟和最大使用时间
计时器。建议使用此方法来调整计时器,因为已将计时器专门调整到交换网络的直径。
前面的示例的直径为4个开关
STP拓扑变化
在构建和聚合拓扑数据库时,交换机交换两种类型的BPDU:
- 配置消息
- 拓扑更改通知(TCN)BPDU。
配置BPDU用于选择根网桥,根端口和指定端口。但是将在两种情况下发送TCN:
- 端口转换为转发状态时。
- 转发或学习时,端口将转换为阻塞或关闭状态。
发生拓扑更改时,交换机将从其根端口发往根网桥的位置发送TCN BPDU。TCN不包含有关更改的信息-仅指示发生更改。
考虑以下示例:
如果交换机D上连接到交换机C的端口掉线:
- 交换机D会将TCN从其根端口发送到交换机E。
- 交换机E将通过以设置了拓扑更改确认(TCA)标志的TCN进行响应来确认该TCN 。
- 然后,交换机E将TCN从其根端口转发到交换机A,即根网桥。
根网桥一旦收到TCN,它将向配置了拓扑更改(TC)标志的所有交换机发送配置BPDU。这样可以确保将更改通知STP拓扑中的所有交换机。
当交换机收到此根BPDU时,它将CAM老化计时器从300秒暂时减少到等于转发延迟计时器的值(默认为15秒)。这允许将任何错误的MAC地址快速从CAM表中清除。