RSTP快速生成树协议的配置课程设计

石河子大学 信息科学与技术学院 <网络技术>课程设计成果报告
2014—2015 学年第一学期
题目名称:
利用快速生成树协议(RSTP) 实现现交换机之间的冗余链路备份
专 班 学
业: 级: 号:
计算机科学与技术 计科 2012(一)班 2012508013 蒋 曹 能 传 凯 东
学生姓名: 指导教师:
完成日期:二○一五

一 月 七




一 课题介绍 ......................................................................................................................................................... - 3 1.1 课题名称 ............................................................................................................................................... - 3 1.2 课题简介 ............................................................................................................................................... - 3 1.3 课题拓展 ............................................................................................................................................... - 3 二 RSTP 简介....................................................................................................................................................... - 3 三 实验环境介绍 ................................................................................................................................................. - 5 3.1 实验软硬件环境 ................................................................................................................................... - 5 3.2 实验参数 ............................................................................................................................................... - 5 3.3 实验拓扑图 ........................................................................................................................................... - 8 四 实验内容 ......................................................................................................................................................... - 8 五 实验详细步骤 ................................................................................................................................................. - 9 5.1 绘制实验拓扑 ....................................................................................................................................... - 9 5.2 交换机及 PC 的基本配置 .................................................................................................................... - 9 5.3 Spanning-tree 的配置 .......................................................................................................................... - 13 5.3 链路测试 ............................................................................................................................................. - 14 六 课题总结 ....................................................................................................................................................... - 17 附录 A 参考文献................................................................................................................................................ - 18 -

一 课题介绍
1.1 课题名称
配置利用快速生成树协议(RSTP)实现交换机之间的冗余链路备份
1.2 课题简介
要求在 CISCO Packet Tracer 模拟配置软件中仅使用命令窗口,不能使用对话框配置,本 任务要求使用三台交换机(两种型号)两两之间构建冗余的两条链路,并通过修改设备优先 级、 最短路径开销、 端口优先级等人为调整 RSTP 快速生成树协议过程, 记录使用 show、 ping -t 命令查看某条路径断开后的情况。
1.3 课题拓展
在实现基本的三台交换机实现同一 VLAN 中主机通信的链路备份后,尝试三台以上,两 个以上 VLAN 主机间通信链路的备份,设置端口优先级来指定默认链路,但是由于最短路径 开销无法再 Cisco Packet Tracer 上模拟,故此项功能在实验中无法完成。
二 RSTP 简介
生成树协议(spanning-tree),作用是在交换网络中提供冗余备份链路,并且解决交换网 络中的环路问题。 生成树协议是利用 SPA 算法(生成树算法)在存在交换环路的网络中生成一个没有环路 的树形网络。运用该算法将交换网络冗余的备份链路逻辑上断开,当主要链路出现故障时, 能够自动的切换到备份链路,保证数据的正常转发。 生成树协议目前常见的版本有 STP(生成树协议 IEEE802.1d)、RSTP(快速生成树协议 IEEE802.1w)、MSTP(多生成树协议 IEEE802.1s)。 生成树协议的特点是收敛时间长。当主要链路出现故障以后,到切换到备份链路需要 50 秒的时间。快速生成树协议(RSTP)在生成树协议的基础上增加了两种端口角色:替换端口 (alternate Port) 和备份端口 (backup Port) , 分别做为根端口 (root Port) 和指定端口 (designed Port)的冗余端口。当根端口或指定端口出现故障时,冗余端口不需要经过 50 秒的收敛时间, 可以直接切换到替换端口或备份端口。从而实现 RSTP 协议小于 1 秒的快速收敛。RSTP 可以

和早前的 STP 协议共同工作。不过,需要指出的是当与早期的网桥互操作时,802.1w 会失去 其固有的快速收敛的好处。 每一个端口都维护着一个变量,用于定义相应网段的协议。在端口激活时,一个 3 秒的 迁移延时定时器也会同时启动。当定时器运行时,端口当前的 STP 或 RSTP 模式会被锁定。 当迁移定时器过期时,端口会适应为它所收到的下一个 BPDU 的相应模式。如果端口是由于 收到 BPDU 而改变操作模式,迁移延时会重新开始。这就限制了可能的频繁改变模式。
图 1 RSTP 演示 举例来说,假设上图中桥 A 和 B 在运行 RSTP,桥 A 为该段的 Designated 端口。一个运行早 期 STP 的桥 C 被引入该链路。 由于 802.1D 网桥忽略 RSTP BPDU 并丢弃它们,C 认为该段中 没有其他的网桥,并开始发送它的次优的 802.1D 格式的 BPDU。当桥 A 收到这些 BPDU,最 大两倍 hello-time 以后, 该端口会改变为 802.1D 模式。 因此, 现在 C 可以理解桥 A 的 BPDU, 并接收 A 作为该段的指定网桥。
图 2 RSTP 演示 注意在特定情况下,如果移去桥 C,桥 A 的那个端口仍然运行在 STP 模式,尽管它和它唯一 的邻居 B 运行 RSTP 会更有效。这是因为桥 A 不知道桥 C 从网段中移去。对这种特殊(而很 少见)的情况,需要用户手工干预以重启该端口的协议探测。 当一个端口运行在 802.1D 兼容模式时,它可以处理拓扑改变通知(TCN)BPDU 和设置了 TC 或 TCA 标志位的 BPDU。 RSTP ( IEEE 802.1w )生来就包括大部分思科对 802.1D 生成树的私有增强,比如 BackboneFast, UplinkFast 和 PortFast。RSTP 在正确配置的网络中可以获得快速的收敛,有时 在几百毫秒左右。传统的 802.1D 定时器,比如转发延时和最大老化时间,仅仅用于备用。如 果点对点和边缘端口被正确的识别和被管理员正确设定,就不再需要这些定时器。而且,如

果不用与早期的网桥互通,这些定时器也不再需要。
三 实验环境介绍
3.1 实验软硬件环境
本次实验是在 Microsoft Windows 7 操作系统上利用 Cisco Packet Tracer 模拟软件实现 的,利用 RSTP 协议完成多路由器之间的冗余链路备份,在模拟的过程中,需要模拟出如下 的设备: 1. 交换机(三台):2950-25 2960-24TT 2960-24TT; 2. PC 机四台:PC-PT; 3. 交叉线: 3 条; 4. 直通线: 4 条。
3.2 实验参数
1. 交换机参数 本实验要求使用三台交换机,并且至少含有两种型号,因此本实验采用了 2950-25 、 2960-24TT 两种型号的交换机,其中 2960-24TT 采用两台,按照题目要求,这三台交换机两 两相连,交换机的参数如表 1 所示。

编号
型号
端口使用情况
所含 VLAN
FastEthernet0/1
连接到 SwitchB
FastEthernet0/2 SwitchA 2950-25 FastEthernet0/4
连接到 PC0 VLAN 2 连接到 PC1
FastEthernet0/3
连接到 SwitchC
FastEthernet0/1 SwitchB 2960-24TT FastEthernet0/1
连接到 SwitchA VLAN2 连接到 SwitchC
FastEthernet0/1
连接到 PC3
FastEthernet0/2 SwitchC 2960-24TT FastEthernet0/3
连接到 SwitchB VLAN 2 连接到 SwitchA
FastEthernet0/4
连接到 PC2
表 1 三台交换机的参数 2. PC 参数 本实验使用了四台相同型号的 PC,分别连接到 SwitchA,和 SwitchC 上,这四台 PC 机同属一个 VLAN,他们的参数如表 2 所示。 表 2 四台 PC 的参数 名称 IP 子网掩码 默认网关 所属 VLAN

PC0 PC1 PC2 PC3
192.168.1.2 192.168.1.3 192.168.1.4 192.168.1.5
255.255.255.0 255.255.255.0 255.255.255.0 255.255.255.0
192.168.1.1 192.168.1.1 192.168.1.1 192.168.1.1 VLAN 2

3.3 实验拓扑图
图 3 实验拓扑 三台交换机两两相连,四台 PC 机中, PC0 、 PC1 连在 SwitchA 的 FastEthernet0/2 、 FastEthernet0/4 端口上,利用 SwitchB 作为冗余链路,当 SwitchA 与 SwitchC 之间的链路断掉 以后,可以使用 SwitchB 这条链路继续通信。
四 实验内容
本次实验主要是利用三台交换机实现同一 VLAN 不在同一交换机上的四台 PC 机之间通 信链路的冗余备份,并通过设置端口优先级来指定默认链路,要求掌握交换机的基本配置方 法,VLAN 划分的方法,重点是掌握 Spanning-tree 的配置,以及 Spanning-tree 的重要理论 知识,具体实验内容如下: 1. 使用 Cisco Packet Tracer 模拟器构造出实验所需的拓扑。 注意相同设备之间的连接应该 用交叉线,不同设备之间的连接使用直通线,路由器和 PC 相连使用交叉线。 2. 分别在三台交换机上划分 VLAN,并把相应的端口归入 VLAN 中。 3. 为 4 台 PC 分配 IP。 4. 设置交换机的中继端口(Trunk)和访问端口(Access)。 5. 配置快速生成树协议(RSTP),指定协议模式,协议算法。 6. 配置快速生成树协议(RSTP)的根路由,备用根路由,以及各端口开销。

7. 对配置好的网络进行测试,采用断路测试的方法。
五 实验详细步骤
5.1 绘制实验拓扑
打开 Packet Tracer 5.3 , 进入工作界面, 实验要求采用三台至少两种型号的交换机, 因此, 我们选择了 2950-25、 2960-24TT 两种型号的交换机, 其中 2960-24TT 两台, 他们在 Packet Tracer 中的图标如下:
图 4 交换机图标 实验拓扑的绘制十分简单,这里不再赘述,应注意的只有两点: 1. 设备连接线的选择。相同设备之间的连接应该用交叉线,不同设备之间的连接使用 直通线,路由器和 PC 相连使用交叉线。 2. 在连接交换机的时候, 为了便于分别, 应该让相同标号的端口连在一起, 如: SwitchA 的 fa0/1 端口应该连在 SwitchB 的 fa0/1 端口。
5.2 交换机及 PC 的基本配置
1. 给 PC 分配 IP、子网掩码、默认网关 按照 3.2 节《实验参数 》的设计,对四台 PC 进行配置。单击拓扑中的 PC,弹出 PC 的 配置页面,单击“桌面”选项卡,再单击“IP 配置图标”,在弹出的对话框中一次填入 IP 地 址,子网掩码,默认网关,PC1 的配置如图 5 所示。
图 5 PC1 的配置信息

2. 划分 VLAN,配置端口角色 根据 3.2 节《实验参数》的设计,应在三台主机上分别创建 VLAN2,详细的设置参数请 参见表 3 。 表 3 交换机详细配置方案
交换机编号 配置方案 四个端口都归入 VLAN2 , SwitchA Fa0/2、fa0/4 为访问端口 Fa0/1、fa0/3 为中继端口 SwitchB 两个端口都归入 VLAN2 且均为中继端口 四个端口都归入 VLAN2 SwitchC Fa0/1、fa0/4 为访问端口 Fa0/2、fa0/3 为中继端口
Switch A 的配置 Switch>enable Switch#config t Switch(config)#hostname SwitchA SwitchA(config)#vlan 2 SwitchA(config-vlan)#exit SwitchA(config)#interface range fastEthernet 0/1-4 SwitchA(config-if)#switchport access vlan 2 SwitchA(config-if)#exit SwitchA#config t SwitchA(config)#interface fa0/1 SwitchA(config-if)#switchport mode trunk //将端口 fa0/1,fa0/3 设置成 trunk 模式 //设置完成后端口自动重启 //对端口 1-4 进行统一配置 //将端口归入到 vlan 2 // 进入特权模式 // 进入全局配置模式 // 为交换机重命名为 SwitchA //创建 vlan 2
%LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/1, changed state to down

%LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/1, changed state to up
SwitchA(config-if)#exit SwitchA(config)#interface fa0/3 SwitchA(config-if)#switchport mode trunk
%LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/3, changed state to down
%LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/3, changed state to up
SwitchA(config-if)#exit SwitchA(config)#span mode r SwitchA(config)#span mode rapid-pvst //配置生成树协议为快速生成树协议 //配置生成树算法
配置完成
SwitchB 的配置 Switch>enable Switch#config terminal //进入特权模式 //进入全局配置模式
Enter configuration commands, one per line. End with CNTL/Z. Switch(config)#hostname SwitchB SwitchB(config)#vlan 2 SwitchB(config)#interface range fa0/1-2 //将两个端口归入 VLAN2 //重命名为 SwitchB
SwitchB(config-if-range)#switchport access vlan 2 SwitchB(config)#interface range fa0/1-2 SwitchB(config-if-range)#switchport mode trunk //将两个端口都配置成 trunk 模式

%LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/2, changed state to down
%LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/2, changed state to up
SwitchB(config-if-range)#exit
SwitchB(config)#spann mode r SwitchB(config)#spann mode rapid-pvst SwitchB(config)# 配置完成 Switch C 的配置 Switch>enable Switch#config t Switch#config terminal
//配置生成树协议为快速生成树协议 //配置生成树算法
//配置方法与 SwitchA 无异
Enter configuration commands, one per line. End with CNTL/Z. Switch(config)#hostname SwitchC SwitchC(config)#vlan 2 SwitchC(config-vlan)#exit SwitchC(config)#interface range fa0/1-4 SwitchC(config-if-range)#switchport access vlan 2 SwitchC(config-if)#exit SwitchC(config)#interface range fa0/2-3 SwitchC(config-if-range)#switchport mode trunk SwitchC(config-if-range)#exit SwitchC(config)#spann mode r SwitchC(config)#spann mode rapid-pvst SwitchC(config)# 配置完成

5.3 Spanning-tree 的配置
1. 根网桥的指定 SwitchA#config terminal //进入配置模式 //将 Sw2 指定为 Vlan1 的主根网桥
SwitchA(config)#spanning-tree vlan 2 root primary SwitchA#exit SwitchB#config terminal //回到特权模式 //进入配置模式
SwitchB(config)#spanning-tree vlan 2 root secondary 网桥
//将 Sw2 指定为 Vlan1 的备用根
在配置完成后,可以用在交换机 SwitchB 与 SwitchA 上使用 show spanning-tree 命令查看 生成树的相关信息,包括当前网桥 ID、根网桥 ID、端口角色、端口状态、端口优先级以及生 成树有关计时器等信息。还可以用 Debug spanning-tree events 命令来观察生成树运行中的动态 变化事件。 2. 端口优先级与端口成本的修改(端口成本无法在 PacketTracer 上完成) SwitchA#config terminal SwitchA(config)#interface fa0/1 //进入配置模式 // 进入接口配置模式 //指定接口 Fa0/1 的端口成本为 10
SwitchA(config-if)#spanning-tree vlan 1 cost 10 SwitchA#exit SwitchB#config terminal SwitchB(config)#interface fa0/4 //回到特权模式 //进入配置模式
//进入接口配置模式 //指定接口 Fa0/4 的端口优先
SwitchB(config-if)#spanning-tree vlan 1 port-priority 96 级为 96 SwitchB#exit //回到特权模式
在配置完成后,可以用在交换机 SwitchB 与 SwitchA 上使用 show spanning-tree 命令查看 生成树相关信息的变化,主要是端口角色与端口状态的变化。还可以用 Debug spanning-tree events 命令来观察生成树运行中的动态变化事件。 3.快速生成树模式的配置 SwitchA#config terminal //进入配置模式 //指定快速生成树模式 //所有访问端口定义为边缘端口
SwitchA(config)#spanning-tree mode rapid-pvst SwitchA(config)#spanning-tree portfast default SwitchB#config terminal //进入配置模式

SwitchB(config)#spanning-tree mode rapid-pvst SwitchB(config)#spanning-tree portfast default SwitchB#config terminal //进入配置模式
//指定快速生成树模式 //所有访问端口定义为边缘端口
SwitchC(config)#spanning-tree mode rapid-pvst SwitchC(config)#spanning-tree portfast default 配置完成
//指定快速生成树模式 //所有访问端口定义为边缘端口
5.3 链路测试
配置完成后在 PC1 上测试 RSTP 的快速收敛功能,实验拓扑图请参见图 3 。 第一步:在 PC1 上执行 ping -t 192.168.1.3,检查与 PC0 的通路情况,由于位于统一交换 机的同一子网内,无论何时,他们都是通的。
图 6 在 PC1 上测试与 PC0 的导通情况 第二步:在 PC1 上执行 Ping -t 192.168.1.4 ,测试与 PC2 的导通情况,由于 PC2 与 PC1 虽然同处一个子网当中,但是由于不在同一交换机上,所以需要通过中继链路通信,通过第 四章的配置,这条路也是通的。

图 7 在 PC1 上测试与 PC2 的导通性 第三步:所有的主见间都可以通信,现在测试 RSTP 的快速收敛功能,具体方法是,先打 开 PC1 与 PC2 之间的 ping 通信 (ping -t 192.168.1.4) , 监测网络的连通性, 然后断开 SwitchA 与 SwitchC 之间的通路,查看通路的情况,然后在断开 SwitchA 与 SwitchB 之间的通路,在 连上 SwitchA 与 SwitchB 之间的通路,效果如图 8 所示。
图 8 断开 SwitchA 与 SwitchC

可以看到,断开 SwitchA 与 SwitchC 之间的通路对网络没有丝毫影响,只是通信时间从 42ms 跃升至 125ms ,很快恢复了通信。开启 AC 间的通路,然后断开 AB 间的通路,情况如 图 9 所示。
图 9 断开 A、B 之间的通路 通路短暂停止,但是马上恢复,只丢了一个包。
再断开备份链路 SwitchA--> SwitchB-->SwitchC 中 A 与 B 之间的通路, 两条链路都断了, 通信立即停止。
图 10 同时断开 A--> B 、A--> C 之间的链路

六 课题总结
RSTP 协议和 STP 协议没有很大的区别, 最大的区别就在于收敛速度的不同, STP 的收敛 时间为 60s,但是 RSTP 的收敛时间是 1s。STP 不能快速迁移,即使是在点对点链路或边缘 端口(边缘端口指的是该端口直接与用户终端相连,而没有连接到其它设备或共享网段上), 也必须等待 2 倍的 ForwardDelay 的时间延迟,端口才能迁移到转发状态。RSTP(Rapid Spanning Tree Protocol,快速生成树协议)是 STP 协议的优化版。其“快速”体现在,当一 个端口被选为根端口和指定端口后,其进入转发状态的延时在某种条件下大大缩短,从而缩 短了网络最终达到拓扑稳定所需要的时间。RSTP 可以快速收敛,但是和 STP 一样存在以下 缺陷:局域网内所有网桥共享一棵生成树,不能按 VLAN 阻塞冗余链路,所有 VLAN 的报 文都沿着一棵生成树进行转发。STP 与 RSTP 的几个定时器数值范围均相同,都是可配置的, 其中一个不同表现在边缘端口上。如果要测试边远端口在两个协议下的情况,不能使用同一 个端口,因为交换机会学习到 mac 地址,在同一个端口上拔掉网线再插上都是直接转发,换 端口才能体现出区别。 在实验的过程中经常会被一些很简单的问题困扰,比如说,怎样设置端口的优先级,很 多资料上说可以用 Spanning-tree port-priority [数值(16 的倍数)],但是不能使用,我以为是 生成树协议没有打开的问题,但是后来一查才发现,生成树协议默认是打开的,这个问题困 扰了很久,最后终于在一个文档的案例中发现,生成树协议一般都是在 vlan 上定义的,这时 候可以用 Spanning-tree vlan 2 port-priority [数值(16 的倍数)]来设置优先级,如果没有划分 vlan,这时候就要用默认的 vlan 1 来设置,书上的指令介绍的都很简单,在用到的时候才发 现很多事不可行的,网上有很多资料都是老的,比如说,set 命令在我用到的两种型号的交换 机中就都不能使用。 在配置备用链路的时候也碰到了许多问题,我在 A 和 B 上配置了 vlan 2 ,并且在 A、B、 C 上都配置了 Rapid Spanning-tree 协议,没有配置 RSTP 协议之前是可以通信的,一旦配置 了协议,网络就变得很奇怪,时断时续,偶尔能通上一会,但是大部分时候是不能通信的, 一直找不到答案,晚上回宿舍用同学的电脑重新做的时候,为了把问题集中在 Spanning-tree 上,没有配置 vlan,就够畅通无阻,和预期的结果一模一样。经过我的分析,可能是因为在 没有配置 vlan 的情况下,所有的端口都是默认在一个 vlan 1 中的,但是我配置了 vlan,这样 的话 SwitchB 中就不存在 vlan 2 ,因为我在 B 中没有配置 vlan,导致了这种奇怪的问题。回 到实验室,我把 B 中也配置了一个 vlan 2 ,并且把 用到的两个端口 fa0/1-2 都加到了 vlan 2 中,果然,一切问题迎刃而解,所有的配置都成功了。

附录 A 参考文献
[1] 谢希仁等. 计算机网络第六版[M]. 北京:电子工业出版社. 2009 [2] 韩毅刚. 刘佳黛, 翁明俊等. 计算机网络与通信[M]. 沈阳:机械工业出版社. 2013
[3] 武新华. 唐坚明,段玲华等. 计算机网络典型应用案例精选[M]. 北京:中国铁道出版 社 2006 [4] 百度文库. 交换机快速生成树协议配置[EB/OL]. https://www.360docs.net/doc/2515456823.html,/link?url=wFS19mcATQIE2dZ31hsaS9-6hO5Po-z2CRzLYKJhg9ng Rru_dsn8b0aL1-ZI5dvT9fLf-kHXhyFLOL9v5hdlU2VqLzf2I3vyz9zP3rkHq3y [5] 鸿鹄论坛. 鸿鹄论坛_rstp[EB/OL]. https://www.360docs.net/doc/2515456823.html,

STP生成树协议原理及配置--从入门到精通

STP生成树协议原理及配置—从入门到精通 生成树协议(Spanning-Tree Protocol,以下简称STP)是一个用于在局域网中消除环路的协议。运行该协议的交换机通过彼此交互信息而发现网络中的环路,并适当对某些端口进行阻塞以消除环路。由于局域网规模的不断增长,STP已经成为了当前最重要的局域网协议之一。 STP的算法 STP将一个环形网络生成无环拓朴的步骤: 选择根网桥(Root Bridge) 选择根端口(Root Ports) 选择指定端口(Designated Ports) 选择根网桥的依据 网桥ID(BID) 网桥ID是唯一的,交换机之间选择BID值最小的交换机作为网络中的根网桥 STP选择根网桥举例 根据网桥ID选择根网桥 选择根端口的依据 在非根网桥上选择一个到根网桥最近的端口作为根端口 选择根端口的依据是: 根路径成本最低 直连(上游)的网桥ID最小 端口(上游)ID最小 根路径成本 根路径成本(开销)-是网桥到根网桥的路径上所有链路的成本之和,默认10M/100M自适应的路径开销为200000 STP选择根端口举例 在非根桥上,选择一个根端口(RP) 选择指定端口的依据 在每个网段上,选择1个指定端口 根桥上的端口全是指定端口 非根桥上的指定端口: 根路径成本最低

端口所在的网桥的ID值较小 端口ID值较小 STP选择指定端口举例 在每个网段选择1个指定端口(DP) STP计算结果 经过STP计算,最终的逻辑结构为无环拓朴 STP举例 经过STP计算后的逻辑拓朴 BPDU(桥协议数据单元) 交换机之间使用BPDU来交换STP信息 BPDU Bridge Protocol Data Unit -桥协议数据单元 使用组播发送BPDU,组播地址为: 01-80-c2-00-00-00 BPDU分为2种类型: 配置BPDU -用于生成树计算 拓朴变更通告(TCN)BPDU -用于通告网络拓朴的变化 BPDU包含的关键字段 STP使用BPDU选择根网桥2-1 交换机启动时,假定自己是根网桥,在向外发送的BPDU中,根网桥ID 字段填写自己的网桥ID STP使用BPDU选择根网桥2-2 当接收到其他交换机发出的BPDU后,比较网桥ID,选择较小的添加到根网桥ID中 STP使用BPDU计算根路径成本2-1 根网桥发送根路径成本为0的BPDU STP使用BPDU计算根路径成本2-2 其他交换机接收到根网桥的BPDU后,在根路径成本上添加接收接口的路径成本,然后转发 生成树端口的状态 生成树计时器 STP状态机 在STP选举过程中,端口是不能转发用户数据的。端口一开始处于阻塞状态,这个状态只能接收BPDU;

STP.RSTP协议理解

STP/RSTP 协议理解 拟制 Prepared by 沈岭 Date 日期 2004-11-03 评审人 Reviewed by Date 日期 yyyy-mm-dd 批准 Approved by Date 日期 yyyy-mm-dd 华为三康技术有限公司 Huawei-3Com Technologies Co., Ltd. 版权所有 侵权必究 All rights reserved

修订记录Revision Record

目录 1 S TP 生成树协议 (7) 1.1STP的主要作用 (7) 1.2STP的基本原理: (7) 1.3STP端口的角色和状态 (8) 1.4端口状态: (9) 1.5STP算法 (9) 1.5.1问题1 (12) 1.5.2问题2 (13) 1.6STP的计时器: (13) 1.7STP拓扑结构改变 (14) 1.8问题讨论 (16) 1.8.1问题3的答案: (16) 1.8.2附加题: (16) 2 RSTP 快速生成树协议 (19) 2.1RSTP的改进 (19) 2.2P/A协商 (22) 2.3拓扑结构变化 (23) 2.3.1问题1: (24) 2.3.2问题2: (25) 2.3.3问题3 (25) 2.3.4问题4: (25) 2.3.5附加题 (26) 2.4RSTP新增特性 (26) 2.4.1BPDU Guard (26) 2.4.2Root Guard (27)

2.4.3Root Primary/Secondary (27) 2.4.4Loop Guard (27) 2.4.5STP Mcheck (28) 2.4.6STP TC-protection (28) 推荐资料: (29) 参考资料: (29)

最小生成树问题课程设计报告

数据结构课程设计 目录 一. 设计目的.................................................................................................. 错误!未定义书签。 二. 设计内容 (1) 三.概要设计 (1) 1、功能模块图 (1) 2、各个模块详细的功能描述 (2) 四.详细设计 (3) 1.主函数和其他函数的伪码算法 (3) 2、主要函数的程序流程图 (7) 3、函数之间的调用关系图 (15) 五.测试数据及运行结果 (15) 1.正常测试数据及运行结果 (16) 2、非正常测试数据及运行结果 (17) 六.调试情况,设计技巧及体会 (18) 七.参考文献 (19) 八.附录:源代码 (19)

一. 设计目的 课程设计是软件设计的综合训练,包括问题分析、总体结构设计、用户界面设计、程序设计基本技能和技巧。能够在设计中逐步提高程序设计能力,培养科学的软件工作方法。而且通过数据结构课程设计能够在下述各方面得到锻炼: 1、能根据实际问题的具体情况,结合数据结构课程中的基本理论和基本算法,正确分析出数据的逻辑结构,合理地选择相应的存储结构,并能设计出解决问题的有效算法。 2、提高程序设计和调试能力。通过上机实习,验证自己设计的算法的正确性。学会有效利用基本调试方法,迅速找出程序代码中的错误并且修改。 3、培养算法分析能力。分析所设计算法的时间复杂度和空间复杂度,进一步提高程序设计水平。 二. 设计内容 最小生成树问题: 设计要求:在n个城市之间建设网络,只需保证连通即可,求最经济的架设方法。存储结构采用多种。求解算法多种。 三.概要设计 1、功能模块图

最小生成树实验报告

数据结构课程设计报告题目:最小生成树问题 院(系):计算机工程学院 学生姓名: 班级:学号: 起迄日期: 指导教师: 2011—2012年度第 2 学期 一、需求分析

1.问题描述: 在n个城市之间建设网络,只需保证连通即可,求最经济的架设方法。存储结构采用多种。求解算法多种。 2.基本功能 在n个城市之间建设网络,只需要架设n-1条线路,建立最小生成树即可实现最经济的架设方法。 程序可利用克鲁斯卡尔算法或prim算法生成最小生成树。 3.输入输出 以文本形式输出最小生成树,同时输出它们的权值。通过人机对话方式即用户通过自行选择命令来输入数据和生成相应的数据结果。 二、概要设计 1.设计思路: 因为是最小生成树问题,所以采用了课本上介绍过的克鲁斯卡尔算法和 prim算法两种方法来生成最小生成树。根据要求,需采用多种存储结构,所以我选择采用了邻接表和邻接矩阵两种存储结构。 2.数据结构设计: 图状结构: ADT Graph{ 数据对象V:V是具有相同特性的数据元素的集合,称为顶点集。 数据关系R:R={VR} VR={|v,w∈V且P(v,w),表示从v到w的弧, 谓词P(v,w)定义了弧的意义或信息} 基本操作: CreateGraph( &G, V, VR ) 初始条件:V是图的顶点集,VR是图中弧的集合。 操作结果:按V和VR的定义构造图G。 DestroyGraph( &G ) 初始条件:图G存在。 操作结果:销毁图G。 LocateVex( G, u ) 初始条件:图G存在,u和G中顶点有相同特征。 操作结果:若G中存在顶点u,则返回该顶点在图中位置;否则返 回其它信息。 GetVex( G, v ) 初始条件:图G存在,v是G中某个顶点。

理解快速生成树协议(RSTP)

快速生成树协议(802.1w) 注:本文译自思科的白皮书Understanding Rapid Spanning Tree Protocol(802.1w). ---------------------------------------------------------------------------------------------------------------------- 介绍 Catalyst 交换机对RSTP的支持 新的端口状态和端口角色 端口状态(Port State) 端口角色(Port Roles) 新的BPDU格式 新的BPDU处理机制 BPDU在每个Hello-time发送 信息的快速老化 接收次优BPDU 快速转变为Forwarding状态 边缘端口 链路类型 802.1D的收敛 802.1w的收敛 Proposal/Agreement 过程 UplinkFast 新的拓扑改变机制 拓扑改变的探测 拓扑改变的传播 与802.1D兼容 结论 ---------------------------------------------------------------------------------------------------------------------- 介绍 在802.1d 生成树(STP)标准设计时,认为网络失效后能够在1分钟左右恢复,这样的性能是足够的。随着三层交换引入局域网环境,桥接开始与路由解决方案竞争,后者的开放最短路由协议(OSPF)和增强的内部网关路由协议(EIGRP)能在更短的时间提供备选的路径。 思科引入了Uplink Fast、Backbone Fast和Port Fast等功能来增强原始的802.1D标准以缩短桥接网络的收敛时间,但这些机制的不足之处在于它们是私有的,并且需要额外的配置。快速生成树协议(RSTP;IEEE802.1w)可以看作是802.1D标准的发展而不是革命。802.1D 的术语基本上保持相同,大部分参数也没有改变,这样熟悉802.1D的用户就能够快速的配置新协议。在大多数情况下,不经任何配置RSTP的性能优于思科的私有扩展。802.1w能够基于端口退回802.1D以便与早期的桥设备互通,但这会失去它所引入的好处。

数据结构课程设计最小生成树问题

数据结构与算法 课程设计报告 课程设计题目:最小生成树问题 专业班级:信息与计算科学1001班 姓名:谢炜学号:100701114 设计室号:理学院机房 设计时间: 2011-12-26 批阅时间: 指导教师:杜洪波成绩: 一、摘要: 随着社会经济的发展,人们的生活已经越来越离不开网络,网络成为人们社 会生活的重要组成部分。我们希望拥有一个宽松的上网环境,以便更好的进行信 息的交流,在此我们有必要提升我们的网络传播速度。从某种程度上来说网络传

播速度代表着一个国家网络化程度的高低。 为了解决网络传输速度的问题我们希望在各个城市之间多架设一些通信网络线路,以缓解网络不够流畅不够便捷的问题。而在城市之间架设网络线路受到资金因素等的限制,我们希望找到一条捷径这样我们即达到了连接了各个城市网络的目的又节省了建设成本。 通过以上的分析我们得出解决此问题的关键在于找到一个短的路径完成网络的假设。在此我们想将各个城市抽象成为一个个节点,连接各个城市之间的网络作为连接各个节点的边。于是我们就将城市的空间分布抽象成为一个网络图,再将各条边的距离抽象成为各节点之间的权值。在原来的基础上建立一个带有权值的网络图。于是原有的问题就转化为找图的最小生成树问题。 我们利用普利姆算法和卡鲁斯卡尔算法找到我们所需要的最小的生成树。 二、问题分析 在n个城市间建立通信网络,需架设n-1条路线。求解如何以最低的经济代价建设此通信网,这是一个最小生成树问题。我们可以利用普利姆算法或者克鲁斯卡尔算法求出网的最小生成树,输入各城市的数目以及各个城市之间的距离。将城市之间的距离当做网中各点之间的权值。 三、实现本程序需要解决的问题 (1)如何选择存储结构去建立一个带权的网络; (2)如何在所选存储结构下输出这个带权网络; (3)如何实现普利姆算法的功能; (4)如何从每个顶点开始找到所有的最小生成树的顶点; (5)如何输出最小生成树的边及其权值 此问题的关键就是利用普利姆算法,找到一个最小上的生成树,在一个就是输出我们所需要的信息,在此我们将各个城市看做是网中的各个顶点城市之间的距离看做是个顶点之间的权值。现在我们问题做如下的分析: 这个问题主要在于普利姆算法的实现。我们将各个城市的空间分布抽象成一个带有权值的网络,这个权值就是任意两个城市之间,各个城市就看做是网络的各个顶点。 我们建立的输入的数据格式为:首先提示输入带权的顶点数目,我定义为整形的数据型,然后输入每条边的信息,即边的两个顶点之间的权值,以十进制整数类型数据,这样我们就建立了一个带权的网络。 问题的输出我是将我们所得到的最小生成树的路线输出出来。 题目的要求就是我们在n个城市之间架设网络得到的最为经济的架设方法,我们进行以上的工作就是在找我们所需要的最小生成树,已解决我们的问题。 四、算法思想 普利姆算法求最小生成树的主要思想 假设N=(V,{E})是连通网,TE是N上最小生成树中边的集合。算法从U={u0}( u0∈V),TE={}开始,重复执行下述操作:在所有u∈U,v∈V-U的边(u,v)∈E中找一条代价最小的边(u0,v0)并入集合TE,同时v0并入U,直至U=V为止。此时TE中必有n-1条边,则T=(V,{E})为N的最小生成树。

最小生成树的Prim算法提高型实验报告

黄冈师范学院 提高型实验报告 实验课题最小生成树的Prim算法 (实验类型:□综合性■设计性□应用性) 实验课程算法程序设计 实验时间 2010年12月24日 学生姓名周媛鑫 专业班级计科 0801 学号 200826140110

一.实验目的和要求 (1)根据算法设计需要, 掌握连通网的灵活表示方法; (2)掌握最小生成树的Prim算法; (3)熟练掌握贪心算法的设计方法; 二.实验条件 (1)硬件环境:实验室电脑一台 (2)软件环境:winTC 三.实验原理分析 (1)最小生成树的定义: 假设一个单位要在n个办公地点之间建立通信网,则连通n个地点只需要n-1条线路。可以用连通的无向网来表示n个地点以及它们之间可能设置的通信线路,其中网的顶点表示城市,边表示两地间的线路,赋于边的权值表示相应的代价。对于n个顶点的连通网可以建立许多不同的生成树,每一棵生成树都可以表示一个通信网。其中一棵使总的耗费最少,即边的权值之和最小的生成树,称为最小生成树。 (2)构造最小生成树可以用多种算法。其中多数算法利用了最小生成树的下面一种简称为MST的性质:假设N=(V,{E})是一个连通网,U是顶点集V的一个非空子集。若(u,v)是一条具有最小权值(代价)的边,其中u∈U,v∈V-U,则必存在一棵包含边 (u.v)的最小生成树。 (3)普里姆(Prim)算法即是利用MST性质构造最小生成树的算法。算法思想如下: 假设N=(V,{E})和是连通网,TE是N上最小生成树中边的集合。算法从U={u0}( u0∈V),TE={}开始,重复执行下述操作:在所有u∈U,v∈V-U的边(u, v) ∈E 中找一条代价最小的边(u0, v0)并入集合TE,同时v0并入U,直到U=V为止。此时TE中必有n-1条边,则T=(V,{TE})为N的最小生成树。 四.实验步骤 (1)数据结构的设计: 采用邻接矩阵的存储结构来存储无向带权图更利于实现及操作: 邻接矩阵的抽象数据结构定义: #define INFINITY INT_MAX //最大值 #define MAX_ERTEX_NUM 20 //最大顶点数 typedef enum {DG,DN,UDG,UDN}GraphKind;//{有向图,有向网,无向网,无向图} typedef struct Arc Cell{ VRType adj ; // VRType 是顶点关系的类型。对无权图用1和0表示相邻否;InfoType * info; //该弧相关信息的指针 }ArcCell ,AdjMatrix [ MAX_VERTEX_NUM][MAX_VERTEX_NUM]; Typedef struct { VertexType vexs [ MAX_VERTEX_NUM] ; //顶点向量

华为stp生成树协议笔记

STP 为什么会有stp 为了保证可靠,设计了一种环网拓扑,又因为交换机的工作原理,会出现环路问题,为了解决环路,才有了stp生成树 1 mac地址表震荡 2 广播风暴 作用:在保证可靠的基础上,解决环路问题 原理:阻塞端口(预备端口)通过选举阻塞端口,来防止环路 1 根桥(根交换机): 1 比较每台交换机上的网桥id (优先级+mac地址)越小越优先 默认优先级 32768 修改优先级修改的时候要改成4096的倍数 交换机上有默认的stp版本为mstp (多实例生成树)stp (生成树)rstp (快速生成树) [系统]stp mode stp 修改stp的模式 Stp priority 4096 修改优先级 2 根端口:非根交换机到达根交换机的最优端口 比较规则 1 路径开销值 2 对端网桥id 3 对端对口id 4 本端端口id (hub) 3 指定端口:每条链路上到达根交换机最优端口根交换机上所有端口都是指定端口 比较规则 1 路径开销 2 本端网桥id

3 本端端口id (端口优先级和端口编号)端口优先级默认是128 4 剩下的端口就叫做阻塞端口 Stp中的报文交互 BPDU 桥协议数据单元 两种bpdu 1 配置bpdu 作用:用于角色(端口)选举 维护网络拓扑 2秒1次最多20秒20 秒没有根的回应,则认为根down掉 2 tcn bpdu 拓扑变化bpdu 作用:当拓扑发生变化时,会发tcn bpdu Bpdu 字段 1 bpdu flsges标识字段 Tca 位拓扑变化确认位 Tc 位拓扑变化位 发生变化时置1 2 root identifier 根网桥id 3 root path cost 到达根的开销值 4 bridge id 本交换机的网桥id 5 port id 端口id 0x8001 前面的80 代表优先级128 , 01代表端口号 6 message age 消息寿命每经过一台交换机message age +1 7 max age 最大寿命 20 秒 8 hello time 2秒 9 forward delay 转发延迟 15秒 端口的状态变化 1 disable 开启stp时特点:不进行stp计算 2 blocking 阻塞端口直接进入blocking 状态 3 listening 非阻塞端口才进入侦听状态特点:加速mac地址表老化 中间有15秒的间隔时间,目的是为了加速mac地址表老化,mac地址表老化时间300秒 4 learning 学习状态 中间有相隔15秒的时间,加速mac地址表的学习 5 forwarding 转发状态

RSTP快速生成树协议的配置课程设计

石河子大学 信息科学与技术学院 <网络技术>课程设计成果报告
2014—2015 学年第一学期
题目名称:
利用快速生成树协议(RSTP) 实现现交换机之间的冗余链路备份
专 班 学
业: 级: 号:
计算机科学与技术 计科 2012(一)班 2012508013 蒋 曹 能 传 凯 东
学生姓名: 指导教师:
完成日期:二○一五

一 月 七




一 课题介绍 ......................................................................................................................................................... - 3 1.1 课题名称 ............................................................................................................................................... - 3 1.2 课题简介 ............................................................................................................................................... - 3 1.3 课题拓展 ............................................................................................................................................... - 3 二 RSTP 简介....................................................................................................................................................... - 3 三 实验环境介绍 ................................................................................................................................................. - 5 3.1 实验软硬件环境 ................................................................................................................................... - 5 3.2 实验参数 ............................................................................................................................................... - 5 3.3 实验拓扑图 ........................................................................................................................................... - 8 四 实验内容 ......................................................................................................................................................... - 8 五 实验详细步骤 ................................................................................................................................................. - 9 5.1 绘制实验拓扑 ....................................................................................................................................... - 9 5.2 交换机及 PC 的基本配置 .................................................................................................................... - 9 5.3 Spanning-tree 的配置 .......................................................................................................................... - 13 5.3 链路测试 ............................................................................................................................................. - 14 六 课题总结 ....................................................................................................................................................... - 17 附录 A 参考文献................................................................................................................................................ - 18 -

数据结构课程设计报告java最小生成树

上海电力学院 数据结构(JAVA)课程设计 题目:____最小生成树_______ 学生姓名:_****___________ 学号:_____*******_______ 院系:计算机科学与技术学院 专业年级: ______*****___级 20**年 *月**日

目录 1.设计题目 (1) 2.需求分析 (1) 1)运行环境 (1) 2)输入的形式和输入值的范围 (1) 3)输出的形式描述 (1) 4)功能描述 (1) 5)测试数据 (1) 3.概要设计 (1) 1)抽象数据类型定义描述 (1) .2)功能模块设计 (1) 3)模块层次调用关系图 (2) 4.详细设计。实现概要设计中定义的所有的类的定义及类中成员函数,并对主要的模块写出伪码算法。 (2) 5.调试分析。包括调试过程中遇到的问题及解决的方法、算法的时间空间复杂性分析、经验体会。 (6) 6.用户使用说明。详细列出每一步的操作说明。 (7) 7. 测试结果 (7) 8.附录:程序设计源代码 (9)

一、设计题目 1).问题描述 若要在 n 个城市之间建设通信网络,只需要架设n-1 条线路即可。如何以最低的经济代价建设这个通信网,是一个网的最小生成树问题。 2). 基本要求 以邻接多重表存储无向带权图,利用克鲁斯卡尔算法或普瑞姆算法求网的最小生成树。 二、需求分析 1)运行环境 软件在JDK运行,硬件支持windows系统 2)输入的形式和输入值的范围 自动生成顶点数据在10~20之间;各个顶点之间权值在25~50之间;通过程序改动亦可生成已知顶点权值之间的最小生成树,需将随机生成代码改为edge edge[]={new edge(0,1,16),new(0,2,18)......}; 将已知顶点、权值通过其函数输入再生成其所对应最小生成树。 3)输出的形式描述 输出随机生成顶点个数以及各个顶点之间权值;然后输出本次生成顶点之间构成的最小生成树。

STP 生成树协议配置

实验八生成树配置 实验1 【实验名称】 生成树协议STP 【实验目的】 理解生成树协议STP的配置及原理。 【背景描述】 某学校为了开展计算机教学和网络办公,建立了一个计算机教室和一个校办公区,这两处的计算机网络通过两台交换机互连组成内部校园网,为了提高网络的可靠性,网络管理员用2条链路将交换机互连,现要在交换机上做适当配置,使网络避免环路。 本实验以2台S2126G交换机为例,2台交换机分别命名为SwitchA, SwitchB。PC1与PC2在同一个网段,假设IP地址分别为192.168.0.137,192.168.0.136,网络掩码为255.255.255.0 。 【实现功能】 使网络在有冗余链路的情况下避免环路的产生,避免广播风暴等。 【实验拓扑】 F0/3F0/3 【实验设备】 S2126G(2台) 【实验步骤】

第一步:在每台交换机上开启生成树协议.例如对SwitchA做如下配置: SwitchA#configure terminal !进入全局配置模式 SwitchA(config)#spanning-tree !开启生成树协议 SwitchA(config)#end 验证测试:验证生成树协议已经开启 SwitchA#show spanning-tree !显示交换机生成树的状态 StpVersion : MSTP SysStpStatus : Enabled BaseNumPorts : 24 MaxAge : 20 HelloTime : 2 ForwardDelay : 15 BridgeMaxAge : 20 BridgeHelloTime : 2 BridgeForwardDelay : 15 MaxHops : 20 TxHoldCount : 3 PathCostMethod : Long BPDUGuard : Disabled BPDUFilter : Disabled ###### MST 0 vlans mapped : All BridgeAddr : 00d0.f8ef.9e89 Priority : 32768 TimeSinceTopologyChange : 0d:0h:0m:8s TopologyChanges : 0 DesignatedRoot : 800000D0F8EF9D09 RootCost : 200000 RootPort : Fa0/1 CistRegionRoot : 800000D0F8EF9E89 CistPathCost : 0 SwitchA#show spanning-tree interface fastthernet 0/1 !显示交换机接口fastthernet 0/1的状态 PortAdminPortfast : Disabled PortOperPortfast : Disabled PortAdminLinkType : auto PortOperLinkType : point-to-point PortBPDUGuard: Disabled PortBPDUFilter: Disabled

最小生成树数据结构课程设计报告

河北科技大学 课程设计报告 学生姓名:白云学号:Z110702301 专业班级:计算机113班 课程名称:数据结构课程设计 学年学期: 2 01 3—2 014学年第2学期指导教师:郑广 2014年6月

课程设计成绩评定表

目录 一、需求分析说明 (1) 1.1最小生成树总体功能要求 (1) 1.2基本功能 (1) 1.3 模块分析 (1) 二、概要设计说明 (1) 2.1设计思路 (1) 2.2模块调用图 (2) 2.3数据结构设计 (2) 2.3.1.抽象数据类型 (2) 2.3.2方法描述 (2) 三、详细设计说明 (3) 3.1主函数模块 (3) 3.2邻接表输出子模块 (3) 3.3邻接矩阵输出子模块 (3) 3.4创建邻接矩阵子模块 (3) 3.5创建邻接表子模块 (3) 3.6 Prim子模块 (3) 3.7 Kruscal子模块 (4) 四、调试分析 (4) 4.1实际完成情况说明 (4) 4.2 出现的问题及解决方案 (4) 4.3程序中可以改进的地方 (4) 六、课程设计总结 (7) 七、测试数据 (7) 八、参考书目 (7)

一、需求分析说明 1.1最小生成树总体功能要求 在n个城市之间建设网络,只需保证连通即可,求最经济的架设方法。存储结构采用多种。求解算法多种。 1.2基本功能 在n个城市之间建设网络,只需要架设n-1条线路,建立最小生成树即可实现最经济的架设方法。 程序可利用克鲁斯卡尔算法或prim算法生成最小生成树。 1.3 模块分析 主模块:用于生成界面和调用各个子模块。 Kruscal模块:以kruscal算法实现最小生成树。 Prim模块:以prim算法实现最小生成树。 邻接表模块:用邻接表方式存储图。 邻接表输出模块:输出邻接表。 邻接矩阵模块:用邻接矩阵方式存储图。 邻接矩阵模块:输出邻接矩阵。 二、概要设计说明 2.1设计思路 问题的解决分别采用普利姆算法以及克鲁斯卡尔算法。 1) 普利姆算法就是先选择根,把它放入一个集合U中,剩余的顶点放在集合V中。然后选择该顶点与V中顶点之间权值最小的一条边,以此类推,如果达到最后一个则返回上一个顶点。 2) 克鲁斯卡尔算法就是写出所有的顶点,选择权最小的边,然后写出第二小的,以此类推,最终要有一个判断是否生成环,不生成则得到克鲁斯卡尔的最小生成树。

实验报告

算法与数据结构 实验报告 系(院):计算机科学学院 专业班级:软工11102 姓名:潘香杰 学号: 201104449 班级序号: 18 指导教师:詹泽梅老师 实验时间:2013.6.17 - 2013.6.29 实验地点:4号楼5楼机房

目录 1、课程设计目的...................................... 2、设计任务.......................................... 3、设计方案.......................................... 4、实现过程.......................................... 5、测试.............................................. 6、使用说明.......................................... 7、难点与收获........................................ 8、实现代码.......................................... 9、可改进的地方.....................................

算法与数据结构课程设计是在学完数据结构课程之后的实践教学环节。本实践教学是培养学生数据抽象能力,进行复杂程序设计的训练过程。要求学生能对所涉及问题选择合适的数据结构、存储结构及算法,并编写出结构清楚且正确易读的程序,提高程序设计基本技能和技巧。 一.设计目的 1.提高数据抽象能力。根据实际问题,能利用数据结构理论课中所学到的知识选择合适的逻辑结构以及存储结构,并设计出有效解决问题的算法。 2.提高程序设计和调试能力。学生通过上机实习,验证自己设计的算法的正确性。学会有效利用基本调试方法,迅速找出程序代码中的错误并且修改。 3.初步了解开发过程中问题分析、整体设计、程序编码、测试等基本方法和技能。二.设计任务 设计一个基于DOS菜单的应用程序。要利用多级菜单实现各种功能。内容如下: ①创建无向图的邻接表 ②无向图的深度优先遍历 ③无向创建无向图的邻接矩阵 ④无向图的基本操作及应用 ⑤图的广度优先遍历 1.有向图的基本操作及应用 ①创建有向图的邻接矩阵 ②创建有向图的邻接表 ③拓扑排序 2.无向网的基本操作及应用 ①创建无向网的邻接矩阵 ②创建无向网的邻接表 ③求最小生成树 3.有向网的基本操作及应用 ①创建有向网的邻接矩阵 ②创建有向网的邻接表 ③关键路径 ④单源最短路径 三.设计方案 第一步:根据设计任务,设计DOS菜单,菜单运行成果如图所示:

交换机生成树协议原理

交换机生成树协议原理 方便用户连接服务器或高速主干网。用户也可以通过设计多台服务器(进行业务划分)或追加多个网卡来消除瓶颈。交换机还可支持生成树算法,方便用户架构容错的冗余连接。 1.网络中的广播帧 目前广泛使用的网络操作系统有Netware、WindowsNT等,而LanServer的服务器是通过发送网络广播帧来向客户机提供服务的。这类局域网中广播包的存在会大大降低交换机的效率,这时可以利用交换机的虚拟网功能(并非每种交换机都支持虚拟网)将广播包限制在一定范围内。 每台文交换机的端口都支持一定数目的MAC地址,这样交换机能够“记忆”住该端口一组连接站点的情况,厂商提供的定位不同的交换机端口支持MAC数也不一样,用户使用时一定要注意交换机端口的连接端点数。 如果超过厂商给定的MAC数,交换机接收到一个网络帧时,只有其目的站的MAC地址不存在于该交换机端口的MAC地址表中,那么该帧会以广播方式发向交换机的每个端口。 2.虚拟网的划分 虚拟网是交换机工作原理的重要功能,通常虚拟网的实现形式有三种: (1)静态端口分配

静态虚拟网的划分通常是网管人员使用网管软件或直接设置交换机的端口,使其直接从属某个虚拟网。这些端口一直保持这些从属性,除非网管人员重新设置。这种方法虽然比较麻烦,但比较安全,容易配置和维护。 (2)动态虚拟网 支持动态虚拟网的端口,可以借助智能管理软件自动确定它们的从属。端口是通过借助网络包的MAC地址、逻辑地址或协议类型来确定虚拟网的从属。当一网络节点刚连接入网时。 交换机工作原理端口还未分配,于是交换机通过读取网络节点的MAC地址动态地将该端口划入某个虚拟网。这样一旦网管人员配置好后,用户的计算机可以灵活地改变交换机端口,而不会改变该用户的虚拟网的从属性,而且如果网络中出现未定义的MAC地址,则可以向网管人员报警。 (3)多虚拟网端口配置 该配置支持一用户或一端口可以同时访问多个虚拟网。这样可以将一台网络服务器配置成多个业务部门(每种业务设置成一个虚拟网)都可同时访问,也可以同时访问多个虚拟网的资源,还可让多个虚拟网间的连接只需一个路由端口即可完成。 但这样会带来安全上的隐患。虚拟网的业界规范正在制定当中,因而各个公司的产品还谈不上互操作性。Cisco公司开发了 Inter-SwitchLink(ISL)虚拟网络协议,该协议支持跨骨干网(ATM、FDDI、FastEther)的虚拟网。但该协议被指责为缺乏安全性上的考虑。

实验13 快速生成树协议RSTP

实验十三快速生成树协议RSTP 实验名称 快速生成树协议RSTP。 实验目的 理解生成树协议的配置及原理。 实现功能 使网络在有冗余链路的情况下避免环路的产生,避免广播风暴等。 实验设备 锐捷S2126(或S3550)交换机2台,网线4根。 实验步骤 1.用2根网线从交换机(除了1和2号端口)分别连到2台计算机,这两台计算机的IP 地址设为同一个网段地址。 2.连到交换机1,对交换机1进行配置。 3.对交换机1开启生成树协议。 configure terminal(进入交换机全局配置模式) spanning-tree(开启生成树协议) spanning-tree mode rstp(设置生成树模式为802.1W) spanning-tree priority 8192(设置此交换机的生成树优先级为8192) end show spanning-tree(显示交换机生成树的状态) StpVersion : RSTP

SysStpStatus : Enabled BaseNumPorts : 24 MaxAge : 20 HelloTime : 2 ForwardDelay : 15 BridgeMaxAge : 20 BridgeHelloTime : 2 BridgeForwardDelay : 15 MaxHops : 20 TxHoldCount : 3 PathCostMethod : Long BPDUGuard : Disabled BPDUFilter : Disabled BridgeAddr : 00d0.f8b8.1c5b Priority : 8192 TimeSinceTopologyChange : 0d:0h:7m:24s TopologyChanges : 0 DesignatedRoot : 200000D0F8B81C5B RootCost : 0 RootPort : 0 freezing1# 4.连到交换机2,对交换机2进行配置。 5.对交换机2开启生成树协议。 configure terminal(进入交换机全局配置模式) spanning-tree(开启生成树协议) spanning-tree mode rstp(设置生成树模式为802.1W) spanning-tree priority 16384(设置此交换机的生成树优先级为16384) end

最小生成树-实验报告

实验五最小生成树 一、需求分析 1、本程序の目の是要建设一个最经济の网,,输出相应の最小生成树。在这里都用整型数来代替。 2、测试数据 见下程序。 二、概要设计 主程序: int main() { 初始化; while (条件) { 接受命令; 处理命令; } return 0; } 三、详细设计 #include//头文件 using namespace std; #define MAX_VERTEX_NUM 20//最大结点数 #define MAX 200 typedef struct Close//结构体

{ char adjvex; int lowcost; }Close,close[MAX_VERTEX_NUM]; typedef struct ArcNode { int adjvex; ArcNode *nextarc; int info; }ArcNode; typedef struct VNode { char data; ArcNode *firstarc; }VNode,AdjList[MAX_VERTEX_NUM]; typedef struct { AdjList verties; int vexnum,arcnum; }ALGraph; ALGraph G;//对象G int LocateVek(ALGraph ,char );//返回结点位置 int minimum(close);//返回最小数 void MinSpanTree_PRIM(ALGraph,char);//最小生成树 void Create(ALGraph &);//创建邻接表 int main() { char a;int i=1; Create(G); /*for(int i=1;i<=G.vexnum;i++) { for(s=G.verties[i].firstarc;s!=NULL;s=s->nextarc) cout<adjvex].data<<"===="<info<>a; MinSpanTree_PRIM(G,a); cout<<"如果结束输入'0',否则输入'1':"; cin>>i; } return 0; }

相关文档
最新文档