预览加载中,请您耐心等待几秒...
1/6
2/6
3/6
4/6
5/6
6/6

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

生成树协议(STPPVSTCSTRSTPMSTP)笔记 和其他协议一样,生成树协议也是随着网络的不断发展而不断更新换代的。本文按照技术发展的 主线,介绍了生成树协议的发展历程、近期热点和未来的发展方向。 生成树协议是一种二层管理协议,它通过有选择性地阻塞网络冗余链路来达到消除网络二层 环路的目的,同时具备链路的备份功能。 由于生成树协议本身比较小,所以并不像路由协议那样广为人知。但是它却掌管着端口的转 发大权—“小树枝抖一抖,上层协议就得另谋生路”。真实情况也确实如此,特别是在和别的协 议一起运行的时候,生成树就有可能断了其他协议的报文通路,造成种种奇怪的现象。 生成树协议和其他协议一样,是随着网络的不断发展而不断更新换代的。本文标题中的“生 成树协议”是一个广义的概念,并不是特指IEEE802.1D中定义的STP协议,而是包括STP以及 各种在STP基础上经过改进了的生成树协议。 在生成树协议发展过程中,老的缺陷不断被克服,新的特性不断被开发出来。按照大功能点 的改进情况,我们可以粗略地把生成树协议的发展过程划分成三代,下面一一道来。 开天辟地的第一代生成树协议: STP/RSTP 在网络发展初期,透明网桥是一个不得不提的重要角色。它比只会放大和广播信号的集线器 聪明得多。它会悄悄把发向它的数据帧的源MAC地址和端口号记录下来,下次碰到这个目的MAC 地址的报文就只从记录中的端口号发送出去,除非目的MAC地址没有记录在案或者目的MAC地址 本身就是多播地址才会向所有端口发送。通过透明网桥,不同的局域网之间可以实现互通,网络 可操作的范围得以扩大,而且由于透明网桥具备MAC地址学习功能而不会像Hub那样造成网络报 文冲撞泛滥。 但是,金无足赤,透明网桥也有它的缺陷,它的缺陷就在于它的透明传输。透明网桥并不能 像路由器那样知道报文可以经过多少次转发,一旦网络存在环路就会造成报文在环路内不断循环 和增生,甚至造成恐怖的“广播风暴”。之所以用“恐怖”二字是因为在这种情况下,网络将变 得不可用,而且在大型网络中故障不好定位,所以广播风暴是二层网络中灾难性的故障。 在这种大环境下,扮演着救世主角色的STP(SpanningTreeProtocol)协议来到人间,其 中以IEEE的802.1D版本最为流行。 图1生成树工作过程示意图 STP协议的基本思想十分简单。大家知道,自然界中生长的树是不会出现环路的,如果网络 也能够像一棵树一样生长就不会出现环路。于是,STP协议中定义了根桥(RootBridge)、根端 口(RootPort)、指定端口(DesignatedPort)、路径开销(PathCost)等概念,目的就在于通 过构造一棵自然树的方法达到裁剪冗余环路的目的,同时实现链路备份和路径最优化。用于构造 这棵树的算法称为生成树算法SPA(SpanningTreeAlgorithm)。 要实现这些功能,网桥之间必须要进行一些信息的交流,这些信息交流单元就称为配置消息 BPDU(BridgeProtocolDataUnit)。STPBPDU是一种二层报文,目的MAC是多播地址01-80- C2-00-00-00,所有支持STP协议的网桥都会接收并处理收到的BPDU报文。该报文的数据区里携 带了用于生成树计算的所有有用信息。 要了解生成树协议的工作过程也不难,首先进行根桥的选举。选举的依据是网桥优先级和网 桥MAC地址组合成的桥ID(BridgeID),桥ID最小的网桥将成为网络中的根桥。在图1所示 的网络中,各网桥都以默认配置启动,在网桥优先级都一样(默认优先级是32768)的情况下, MAC地址最小的网桥成为根桥,例如图1中的SW1,它的所有端口的角色都成为指定端口,进入 转发状态。 接下来,其他网桥将各自选择一条“最粗壮”的树枝作为到根桥的路径,相应端口的角色 就成为根端口。假设图1中SW2和SW2、SW3之间的链路是千兆GE链路,SW1和SW3之间的链路 是百兆FE链路,SW3从端口1到根桥的路径开销的默认值是19,而从端口2经过SW2到根桥的 路径开销是4+4=8,所以端口2成为根端口,进入转发状态。同理,SW2的端口2成为根端口, 端口1成为指定端口,进入转发状态。 根桥和根端口都确定之后一棵树就生成了,如图中实线所示。下面的任务是裁剪冗余的环路。 这个工作是通过阻塞非根桥上相应端口来实现的,例如SW3的端口1的角色成为禁用端口,进入 阻塞状态(图中用“×”表示)。 生成树经过一段时间(默认值是30秒左右)稳定之后,所有端口要么进入转发状态,要么 进入阻塞状态。STPBPDU仍然会定时从各个网桥的指定端口发出,以维护链路的状态。如果网络 拓扑发生变化,生成树就会重新计算,端口状态也会随之改变。 当然生成树协议还有很多