【CCNA学习笔记】STP

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

1.1 冗余拓扑中存在的问题

图1-1 单一链路的拓扑

图1-2 有冗余链路的拓扑

图1-1中,PC1和PC2只通过单一链路传输,如果该链路出现故障,会导致通信中断。

图1-2中,加入了冗余链路,解决了SW1和SW2单链路故障引起的网络中断。

但是图1-2中,可能存在的问题:

1、广播风暴

存在广播通过f1/1口出去,然后又通过f1/2口回来,再出去,再回来的,回环问题。

2、MAC地址表不稳定

3、重复帧拷贝

1.2 STP介绍

通过冗余可以解决由于单链路或单交换机故障引起的网络中断,提高网络的可用性,但是在第二层采用冗余时,又会带来广播风暴、MAC地址不稳定、重复帧拷贝等问题,STP被用来解决上述问题。

1.2.1 STP算法

STP通过阻塞冗余路径上的一些端口,确保到达任何目的地址只有一条逻辑链路。STP使用STA(Spanning Tree Algorithm,生成树算法)决定交换机上的哪些端口被阻塞来防止环路的发生。STA选择一台交换机作为根交换机,也称根桥(Root Bridge),以该交换机作为参考点计算所有的路径。所有交换机交换BPDU(Bridge Protocol Data Unit,桥接数据单元),BPDU中包括BID(Bridge ID,桥ID),BID用来识别是哪台交换机发出的BPDU。

1、根交换机选举

BID一般由3部分组成:优先级、发送交换机的MAC地址和Extended System ID(扩展的系统ID,可选项)。

SW1#show spanning-tree (brief)             查看生成树

BID由优先级和MAC组成(老交换机,里面集成了很多MAC)

BID由优先级、Extended System ID(扩展的系统ID)和MAC地址组成(新交换机)

默认情况下,选取同一个VLAN中BID最小的交换机作为根交换机。

SW1(config)#spanning-tree vlan 1 priority (4096的倍数)        更改优先级
SW(config)#spanning-tree vlan 1 root primary                  设置该交换机为新的根交换机

2、端口花费和路径花费

(1)端口花费默认和带宽有关:

速度 花费
10Gb/s 2
1Gb/s 4
100Mb/s 19
10Mb/s 100

端口花费修改:

SW(config)#int fa 1/1
SW(config-if)#spanning-tree cost <1-65535>

(2)路径花费等于从根交换机到达最终交换机前进方向上进入方向的端口花费总和。

1.2.2 BPDU

交换机间通过交换BPDU来选择根桥。


Bytes

Field 解释
2 Protocol ID
1 Version
1 Message type
1 Flags 标记域。包含这些信息:TC(Topology Change,拓扑改变)比特位,表示拓扑发生改变事件;TCA(Topology Change Acknowledgment,拓扑改变确认)比特位,表示收到了拓扑变化通知,进行确认
8 Root ID 根交换机的BID
4 Cost of path 到根交换机的路径花费
8 Bridge ID
转发BPDU的交换机的BID

2 Port ID 转发BPDU的交换机的端口PID,等于端口优先级(默认是128)+端口编号
2 Message age BPDU已经存在的时间
2 Max age BPDU的最大存在时间
2 Hellotime 根桥发送配置信息的间隔时间,这个默认是2秒
2 Forward delay 转发延迟

1.2.3 端口角色

当STA决定使用哪一条路径后,STA配置交换机的端口角色,端口角色描述了它与根桥的关系和是否允许转发流量。交换机的端口角色有:

(1)根端口(Root Port,简称RP)。非根交换机上离根交换机最近的端口称作根端口,每个非根交换机有且仅有一个根端口。处于Forwarding(转发)状态。

(2)指派端口(Designated Port,简称DP)。每个网段都有一个指派端口,指派端口是该网段到根交换机最近的交换机的端口。处于Forwarding(转发)状态。

(3)非指派端口。既不是根端口,也不是指派端口的激活端口称作非指派端口。处于Blocking(阻塞)状态

(4)禁用端口。shutdown端口,不参与生成树算法。

1.2.4 端口状态和BPDU时间。

1、端口状态转换

端口状态:Down、Blocking、Listening、Learning、Forwarding5种。

①Down(禁用)状态。可以使用“no shut”命令和插入网线进行激活。

②Blocking(阻塞)状态。链路激活,端口转换到Blocking状态,这个状态逗留20秒左右,主要用来决定该端口的角色,如果该端口是根端口或者指派端口,将转换到下一状态;如果该端口是非指派端口,状态将继续停留在Blocking状态;本来处在Blocking状态的端口,如果接收不到BPDU了,也会装换到下一状态。

③Listening(侦听)状态。除了接收BPDU外,还向邻居交换机发送BPDU,通知邻居交换机它将参与激活拓扑。这个状态会逗留大约15秒。

④Learning(学习)状态。开始学习MAC地址。这个状态逗留约15秒。

⑤Forwarding(转发)状态。端口可以转发数据帧。

2、端口所处状态功能

接收BPDU 发送BPDU 学习MAC 转发DATA
Down × × × ×
Blocking × × ×
Listening × ×
Learning ×
Forwarding

3、BPDU的时间

BPDU中相关的时间参数有:Hello time(2秒)、Max age(20秒)、Forward delay(15秒)。

SW(config)#spanning-tree vlan 1 max-age 30    不建议修改

1.3 STP收敛

  收敛就是整个网络达到一个稳定的状态:选举出根交换机,并决定出所有端口的角色,排除所有潜在的环路。

1.3.1 生成树的选举

为了使采用STP的网络最终收敛为一个逻辑上没有环路的网络拓扑,需要通过以下4步实现。

①每个广播域只能有一个根交换机

②每个非根交换机有且只有一个根端口 花费>发送者的BID>发送者的PID

③每个网段有且只有一个指派端口

④既不是根端口,也不是指派端口的端口将被阻塞

1.3.2  增强的STP功能

在连接主机的端口上配置快速端口。可以立即进入转发状态。

SW(config-if)#spanning-tree portfast 
%Warning: portfast should only be enabled on ports connected to a single
host. Connecting hubs, concentrators, switches, bridges, etc... to this
interface  when portfast is enabled, can cause temporary bridging loops.
Use with CAUTION

%Portfast has been configured on FastEthernet0/1 but will only
have effect when the interface is in a non-trunking mode.

1.4 高级的STP

思科私有
PVST(Per-VLAN STP,每个VLAN一个生成树协议)

支持ISL封装协议

每个VLAN有一个生成树实例

能够实现第二层的负载均衡

支持BackhomeFast、UplinkFast和PortFast特性


PVST+(Per-VLAN STP plus,每个VLAN一个生成树协议加)

支持ISL和302.1Q封装协议

支持思科STP私有属性的扩展

增加了BPDU guard和Root guard功能


Rapid-PVST+(Rapid per-VLAN STP,快速的每个VLAN一个生成树协议)

基于快速生成树的标准

比802.1D收敛的速度更快

支持BackhomeFast、UplinkFast和PortFast特性

IEEE标准
RSTP(Rapid STP,快速生成树协议)

1982年被提出,比802.1D收敛的速度更快

实现思科普通私有属性的扩展

IEEE把RSTP合成到802.1D中,叫做IEEE 802.1D-2004规范


MSTP(Multiple STP,多生成树协议)

多个VLAN被映射到同一个生成树实例

IEEE 802.1Q-2003现在包含MSTP

SW(config)#spanning-tree mode ?            查看该交换机支持的生成树协议
时间: 2024-08-28 05:34:02

【CCNA学习笔记】STP的相关文章

CCNA学习笔记三——STP生成树协议

广播风暴:当网络中存在物理环路,会产生广播风暴 STP协议:Spanning Tree Protocol(生成树协议) 逻辑上断开环路,防止广播风暴的产生 STP算法:(所有选择都是比小-小的当选) 选择根网桥(Root Bridge):在网络中的所有交换机中选择一台 选择依据:网桥ID(网桥优先级+MAC地址) 选择根端口(Root Ports):在所有非根网桥中选择一个 选择依据:(1)根路径成本最低 (2)直连网桥ID最小 (3)端口ID最小 选择指定端口(Designated Ports

CCNA学习笔记二——VTP协议

VTP协议:VLAN Trunk Protocol 从一个控制点,维护整个网络上VLAN的添加,删除和重命名工作 VTP域:相同的域名,通过Trunk相互连接的一组交换机 VTP模式: 服务器模式(Server):默认 客户机模式(Client) 透明模式(Transparent) VTP通告: 客户机通告请求-获取VLAN信息 交换机重新启动 VTP域名变更后 交换机接收到了配置修订号大的汇总通告 服务器的通告响应-发送VLAN信息 汇总通告-用于通知邻接的Catalyst交换机目前的VTP域

CCNA学习笔记四——Telnet CDP

CDP协议:Cisco发现协议 show cdp show cpd neighbors:查看当前设备连接了哪些Cisco设备 cdp timer:修改发送间隔时间 cdp holdtime:修改保留时间 cdp advertise-2:修改版本号 debug cdp packets show cdp traffic:查看有关cdp包的统计信息 show cdp interface:查看端口cdp信息 show cdp entry:查看所有邻居的详细信息 cdp run:全局开启所有接口cdp协议

CCNA 学习笔记(二)--CISCO设备初接触

CCNA 学习笔记(二)--初识CISCO设备 上一章我们认识到网络方面的基础知识了,现在我们正式接触CISCO设备. 1.首先我们先了解一台CISCO设备里的主要组件: ROM(只读存储器):主要保存着开机自检软件.保存路由器启动引导程序. RAM(随机存储器):断电会把数据丢失.可以存储配置文件.>>>相当于PC的内存 NVRAM(非易失存储器):断电不会丢失.用来保存用户配置文件.IP.startup-config.主机名.路由协议等等. FLASH(闪存):主要是保存完整的   

CCNA学习笔记一

cisco三层模型:接入层-集散层(分布层)-核心层 OSI七层模型功能: 第七层:应用层 数据 用户接口,提供用户程序“接口”. 第六层:表示层 数据 数据的表现形式,特定功能的实现,如数据加密. 第五层:会话层 数据 允许不同机器上的用户之间建立会话关系,如WINDOWS 第四层:传输层 段 实现网络不同主机上用户进程之间的数据通信,可靠 与不可靠的传输,传输层的错误检测,流量控制等. 第三层:网络层 包 提供逻辑地址(IP).选路,数据从源端到目的端的 传输 第二层:数据链路层 帧 将上层

CCNA学习笔记五——ip地址子网划分

ip地址作用:用来标识一个节点的网络地址 ip地址的分类: A类:0NNNNNNN(1-126)  私有地址:10.0.0.0-10.255.255.255 B类:10NNNNNN(128-191)  私有地址:172.16.0.0-172.31.255.255 C类:110NNNNN(192-223)  私有地址:192.168.0.0-192.168.255.255 D类:1110NNNN(224-239) 子网掩码中1对应的为ip地址位为网络位,0对应的为主机位 划分子网:通过将子网掩码变

CCNA学习笔记七——路由概述

静态路由协议: 动态路由协议:AS(自治系统):执行统一路由策略的一组设备的集合 EGP(外部网关协议): BGP:边界网关协议 IGP(内部网关协议): 距离矢量协议: RIP:V1,V2 IGRP EIGRP 链路状态路由协议: OSPF IS-IS 静态路由: 特点: 路由表是手工设置的 除非网络管理员干预,否则静态路由不会发生变化 路由表的形成不需要占用网络资源 适合环境 一般用于网络规模很小,拓扑结构固定的网络中 默认路由: 特点: 在所有路由类型中,默认路由优先级最低 适用环境: 一

CCNA 学习笔记(三)--路由选择协议(静态路由协议)

CCNA 学习笔记(三)--路由选择协议(静态路由协议) 上一章,我们对CISCO的设备有了一定的了解,那现在我们开始去学习下路由选择协议. 静态路由: 1.什么时候是路由? 答:A.路由就是数据包从一端传输到另一端所选择的一条路径.B.数据包的转发. 2.路由器的工作内容? 答:A.路由器首先要知道要到达的目标地址. B.能发现到达目标地址所有可能经过的路由或者节点. C.选择最佳路径. D.维护路由表. 3.查看路由表的命令:show ip route 由上面我们可以看到当前的路由器只是有一

CCNA学习笔记之一---VLAN实验组网

VLAN实验用的是Cisco Packet Tracer模拟器做的实验,实验拓扑如下图 1.Switch1配置如下 Switch>en                                    进入特权模式 Switch#conf t                                进入全局配置模式 Switch(config)#host Switch1                  给设备命名 Switch1(config)#no ip domain-lookup