当前位置:文档之家› mstp协议简介

mstp协议简介

MSTP协议简介数通研发部何凤清录概述.............协议背景 (3)STP协议的发展 (3)相关文档 (3)缩写词汇 (3)STP (3)协议介绍 (3)STP协议中的基本概念 (3)STP协议中的端口状态 (3)STP报文格式 (3)Configuration BPDU (3)topology change notification BPDU (3)STP协议交互过程 (3)树的生成过程 (3)拓扑改变收敛过程 (3)RSTP (3)协议介绍 (3)RSTP协议中的基本概念 (3)端口状态和端口角色 (3)RSTP报文格式 (3)端口状态的快速切换 (3)握手过程 (3)MSTP (3)协议介绍 (3)MSTP的基本概念 (3)MSTP的端口角色和端口状态 (3)MSTP报文格式 (3)MST BPDU parameters and format (3)MSTI Configuration Messages (3)域和生成树实例 (3)概述协议背景在二层交换网络中,一旦网络中存在有环路,就会造成报文在环路中不断的增生循环,产生广播风暴占用所有的有效带宽,造成网络的瘫痪。

STP协议根据网络中的拓扑结构,将网络中的节点按照一定的算法生成一个树形的拓扑结构,从而避免网络中环路的存在。

当网络中拓扑结构发生变化时,STP算法会根据新的网络拓扑重新计算树,生成新的树形结构,这样既提供了环路保护的功能,同时可以提供链路冗余的功能。

这是STP协议最初产生时提供的功能。

STP协议的发展STP协议和其他网络协议一样,是随着网络的不断发展而不断更新换代的。

最初被广泛应用的是IEEE802.1D 1998版本,随后又出现了IEEE802.1W RSTP协议、IEEE802.1s MSTP协议。

RSTP协议提供了端口状态的快速转换功能,使网络拓扑的收敛时间大为减少。

MSTP协议在RSTP协议的基础上引入了域和实例的概念,首先将网络中不同的桥设备及其LAN划分为不同的域内,在域内设定各个VLAN到生成树实例的映射关系,这样既提供了快速收敛的能力,同时也在域内对网络冗余的网络带宽进行了有效应用。

相关文档IEEE802.1D 1998版本STP协议IEEE802.1W 2001版本RSTP协议IEEE802.1s 2002版本MSTP协议IEEE802.1D 2004版本STP+RSTP协议IEEE协议于2004年将IEEE802.1D1998版本和IEEE802.1W2001版本合并为一个文档,是为IEEE802.1D2004版本。

缩写词汇STP协议介绍STP协议是一个单生成树协议,所谓单生成树协议,就是在网络中将所有的桥设备放到单个生成树拓扑中,保证网络连接的全联通性和无循环链路。

STP协议首先会为生成树选定一个跟,然后根据每个桥设备到根的距离来确定该桥到根的路径,这样由根、桥设备以及各个桥到根的路径组成了一个全联通且无循环的生成树。

STP协议通过BPDU(桥协议数据单元)进行协议数据的交互。

STP BPDU是一种二层报文,目的MAC是多播地址01-80-C2-00-00-00,所有支持STP协议的网桥都会接收并处理收到的BPDU报文,BPDU报文不会被转发。

STP协议中的基本概念Bridge identifier(BID):每个桥有1个identifier,该BID由两部分组成。

前两个字节表示优先级,默认为32768可取值范围在0-65535。

后6个字节由bridge的MAC地址组成。

确保网络中每个bridge的BID具有唯一性。

Root Bridge(跟桥):网络中作为生成树树根的bridge,该bridge具有最小的BID。

Root identifier(RID):跟桥具有的identifier。

Path cost:数据包在网络中传输所需的路径开销。

该开销根据局域网类型(带宽+双工模式)来确定数据包在网络中的路径开销。

该开销是用来确定最优生成树的关键参数。

Port identifier(PID):每个桥的每个端口具有一个PID,该PID由两部分组成,共16个bits。

(前6个bits表示优先级,后10个bit表示端口名称,没看到官方文件说明)。

Root path cost:数据包到达跟桥的路径开销。

Root port(根端口):非跟桥上到达跟桥路径开销最小的端口。

Designated port(指定端口):连接到某局域网中的所有端口中具有最小根路径开销的端口。

该端口被称为该局域网的指定端口。

Designated bridge:局域网的指定端口所在的bridge被称为该局域网的指定端口。

Alternate port:备份端口。

STP协议中的端口状态Blocking(阻塞状态):该端口处于使能状态,但根据STP算法的计算结果,该端口不属于生成树的有效组成端口。

(既有其他路径可以生成生成树结构,同时比该端口所在的路径具有更优的结构)。

处于阻塞状态的端口只接受STP BPDU报文,不转发STP BPDU报文;不接收和转发其他业务报文。

Listening(监听状态):该端口处于使能状态,同时该端口已经被选为生成树的有效组成端口,但为了防止网络拓扑结构的动荡变化造成生成树的不稳当,在blocking 和forwarding状态之间添加了listening状态,该状态监听网络中的BPDU报文判断是否有更优的路径,同时该端口开始将FDB表中的相关表项进行清除,该状态接受转发STP BPDU报文,不接受和转发普通业务报文。

Learning(学习状态):该端口处于使能状态,同时该端口已经被选为生成树的有效组成端口。

但为了防止网络拓扑结构的动荡变化造成生成树的不稳当,在blocking 和forwarding状态之间添加了learning状态,在端口保持在listening状态一定时间(forward timer)之后,若没有发现其他更优路径,则该端口有listening状态转换到learning状态。

该状态监听网络中的BPDU报文判断是否有更优的路径,同时端口接受和转发STP BPDU报文,接收普通业务报文,并学习报文MAC地址,不转发普通业务报文。

Forwarding(转发状态):该端口处于使能状态,同时该端口已经被选为生成树的有效组成端口。

在端口处于listening状态一定时间之后(forward timer),若没有发现其他更优路径,该端口有learning状态转换到forwarding状态。

该状态接受和转发STP BPDU报文,同时接受和转发普通业务报文。

Disable(禁用状态):该状态可以认为是物理上没有联通的端口。

STP报文格式STP协议使用BPDU报文承载协议所需的交互信息。

STP协议报文共有两种,配置报文(configuration BPDU)和拓扑结构更改报文(topology change notification BPDU)。

BPDU报文格式如下图。

BPDU采用01-80-c2-00-00-00目标多播地址作为目标地址。

Configuration BPDUProtocol identifier:占用1-2两个字节,STP协议的对应值为0000 0000 0000 0000。

Protocol version identifier:占用第三个字节,STP协议的对应值是0000 0000BPDU Type:占用第四个字节,configuration BPDU对应值是0000 0000Flag:占用第五个字节,它的最高bit位(bit 8)标识Topology Change Acknowledgment flag。

最低bit位(bit 1)标识Topology Change flag。

其余bit 位保留未定义。

Root Identifier:树的根桥ID,每个桥发送BPDU时都会将该桥当前认为的跟桥ID 放在这里。

占用6-13八个字节。

前两个字节是优先级,后6个字节是跟桥对应的MAC地址。

Root Path Cost:发送BPDU的桥到跟桥的最短路径开销,占用14-17四个字节。

Bridge Identifier:发送BPDU的桥的桥ID。

占用18-25八个字节。

Port Identifier:发送BPDU报文的指定端口的端口ID。

占用26-27两个字节。

Message Age timer:消息年龄,用法还不清楚,占用28-29两个字节。

Max Age timer:消息寿命。

占用30-31两个字节。

Hello Time:根hello时间,占用32-33两个字节,表示根发送BPDU报文的时间间隔。

Forward delay:转发延迟,端口进行状态转换的延迟时间(端口有listening-learning和有learning到forwarding状态的转换都需要等待一个forward delay延迟的时间)。

topology change notification BPDU如上图所示是TCN BPDU报文的格式。

Protocol identifier:占用1-2两个字节,STP协议的对应值为0000 0000 0000 0000。

Protocol version identifier:占用第三个字节,STP协议的对应值是0000 0000 BPDU Type:占用第四个字节,configuration BPDU对应值是1000 0000STP协议交互过程树的生成过程1、在初始阶段,每个桥设备都会认为自己是根,然后发送自己的configuration message。

2、桥在收到其他桥发送的configuration message时,就会和自己的configuration message进行比较,如果更优收到的configuration message,则替换自己的configuration message。

选择根端口和指定端口,然后重新计算configuration message进行转发。

3、当网络中所有的桥设备都知道了跟桥是谁,并计算出了自己的根端口和指定端口,则生成树就生成了。

拓扑改变收敛过程1、当桥设备发现有拓扑改变发生时,会通过根端口向根桥发送TCN BPDU。

2、根端口在接收到TCN BPDU时,会设置configuration message的TC Flag,通知全网络发生了拓扑改变,进行网络拓扑的重新计算。

3、新的网络拓扑计算完成以后新的指定端口和根端口进入转发状态。

RSTP协议介绍针对STP协议收敛时间太长的确定,IEEE定义了802.1w RSTP协议。

该协议通过引入边缘端口,替换端口,备份端口等概念,使得端口状态的改变在某些情况下可以快速进行切换,从而实现生成树的快速收敛。

相关主题