当前位置:文档之家› 神州数码生成树实验

神州数码生成树实验

实验二十一、生成树实验

一、 实验目的

1、了解生成树协议的作用。

2、熟悉生成树协议的配置。

二、 应用环境

交换机之间具有冗余链路本来是一件很好的事情,但是它有可能引起的问题比它能够解决的问题还要多。如果你真的准备两条以上的路,就必然形成了一个环路,交换机并不知道如何处理环路,只是周而复始地转发帧,形成一个“死循环”,这个死循环会造成整个网络处于阻塞状态,导致网络瘫痪。

采用生成树协议可以避免环路。

生成树协议的根本目的是将一个存在物理环路的交换网络变成一个没有环路的逻辑树形网络。IEEE802.1d协议通过在交换机上运行一套复杂的算法STA(spanning-tree algorithm),使冗余端口置于“阻断状态”,使得接入网络的计算机在与其他计算机通讯时,只有一条链路生效,而当这个链路出现故障无法使用时,IEEE802.1d协议会重新计算网络链路,将处于“阻断状态”的端口重新打开,从而既保障了网络正常运转,又保证了冗余能力。

三、 实验设备

1、DCS-3926S交换机2台

2、PC机2台

3、Console线1-2根

4、直通网线4-8根

四、 实验拓扑

五、 实验要求

IP地址设置:

设备IP Mask

255.255.255.0

交换机A 10.1.157.100

255.255.255.0

交换机B 10.1.157.101

255.255.255.0

PC1 10.1.157.113

255.255.255.0

PC2 10.1.157.114

网线连接:

交换机A e0/0/1 交换机B e0/0/3

交换机A e0/0/2 交换机B e0/0/4

PC1 交换机A e0/0/24

PC2 交换机B e0/0/23

如果生成树成功,则PC1可以ping 通PC2。

六、 实验步骤

第一步:正确连接网线,恢复出厂设置之后,做初始配置

交换机A:

switch#config

switch(Config)#hostname switchA

switchA(Config)#interface vlan 1

switchA(Config-If-Vlan1)#ip address 10.1.157.100 255.255.255.0

switchA(Config-If-Vlan1)#no shutdown

switchA(Config-If-Vlan1)#exit

switchA(Config)#

交换机B:

switch#config

switch(Config)#hostname switchB

switchB(Config)#interface vlan 1

switchB(Config-If-Vlan1)#ip address 10.1.157.101 255.255.255.0

switchB(Config-If-Vlan1)#no shutdown

switchB(Config-If-Vlan1)#exit

switchB(Config)#

第二步:“PC1 ping PC2 –t ”观察现象

1、ping不通;

2、所有连接网线的端口的绿灯很频繁地闪烁,表明该端口收发数据量很大,已经在交

换机内部形成广播风暴。

第三步:在两台交换机中都使用启用生成树协议

switchA(Config)#spanning-tree mode stp

MSTP is starting now, please wait...........

MSTP is enabled successfully.

switchA(Config)#

switchB(Config)#spanning-tree mode stp

MSTP is starting now, please wait...........

MSTP is enabled successfully.

switchB(Config)#

验证配置:

switchA#show spanning-tree

-- MSTP Bridge Config Info --

Standard : IEEE 802.1s

Bridge MAC : 00:03:0f:01:25:28

Bridge Times : Max Age 20, Hello Time 2, Forward Delay 15

Force Version: 3

########################### Instance 0 ###########################

Self Bridge Id : 32768 - 00:03:0f:01:25:28

Root Id : this switch

Ext.RootPathCost : 0

Region Root Id : this switch

Int.RootPathCost : 0

Root Port ID : 0

Current port list in Instance 0:

Ethernet0/0/1 Ethernet0/0/2 (Total 2)

PortName ID ExtRPC IntRPC State Role DsgBridge DsgPort -------------- ------- --------- --------- --- ---- ------------------ ------- Ethernet0/0/1 128.001 0 0 FWD DSGN 32768.00030f012528 128.001 Ethernet0/0/2 128.002 0 0 FWD DSGN 32768.00030f012528 128.002 switchA#

switchB#show spanning-tree

-- MSTP Bridge Config Info --

Standard : IEEE 802.1s

Bridge MAC : 00:03:0f:01:7d:b0

Bridge Times : Max Age 20, Hello Time 2, Forward Delay 15

Force Version: 3

########################### Instance 0 ###########################

Self Bridge Id : 32768 - 00:03:0f:01:7d:b0

Root Id : 32768.00:03:0f:01:25:28

Ext.RootPathCost : 200000

Region Root Id : this switch

Int.RootPathCost : 0

Root Port ID : 128.4

Current port list in Instance 0:

Ethernet0/0/3 Ethernet0/0/4 Ethernet0/0/23 (Total 3)

PortName ID ExtRPC IntRPC State Role DsgBridge DsgPort -------------- ------- --------- --------- --- ---- ------------------ ------- Ethernet0/0/3 128.003 0 0 BLK ALTR 32768.00030f012528 128.002 Ethernet0/0/4 128.004 0 0 FWD ROOT 32768.00030f012528 128.001 Ethernet0/0/23 128.023 200000 0 FWD DSGN 32768.00030f017db0 128.023

从show中可以看出,交换机A是根交换机,交换机B的4端口是根端口。

第九步:继续使用“PC1 ping PC2 –t ”观察现象

1、拔掉交换机B端口4的网线,观察现象,写在下方:

2、再插上交换机B端口4的网线,观察现象,写在下方:

七、 注意事项和排错

1、如果想在交换机上运行MSTP,首先必须在全局打开MSTP开关。在没有打开全局MSTP

开关之前,打开端口的MSTP开关是不允许的。

2、MSTP定时器参数之间是有相关性的,错误配置可能导致交换机不能正常工作。各定

时器之间的关联关系为:

3、2×(Bridge_Forward_Delay – 1.0 seconds) >= Bridge_Max_Age

4、Bridge_Max_Age >= 2 ×(Bridge_Hello_Time + 1.0 seconds)

5、用户在修改MSTP参数时,应该清楚所产生的各个拓扑。除了全局的基于网桥的参数

配置外,其它的是基于各个实例的配置,在配置时一定要注意配置参数对应的实例

是否正确。

6、DCS-3926S交换机的端口MSTP功能与端口MAC绑定、802.1x和设置端口为路由端口功

能互斥。当端口已经配置MAC绑定、802.1x或设置为路由端口时,无法在该端口启

动MSTP功能。

八、 配置序列

九、 课后练习

1、使用4根网线连接两台交换机,观察根端口的选择,观察备份线路启用时候的debug

信息。

2、使用“spanning-tree mode mstp”来进行上面的实验,体验备份链路启用和断开

所需要的时间长短。

十、 共同思考

1、生成树协议怎样选取根端口和指定端口。

2、MSTP通过怎样的策略可以使备份链路实现快速启用。

十一、 相关配置命令详解

abort

命令:abort

功能:放弃本次对MSTP域的配置,并且退出MST配置模式回到全局配置模式。

参数:无

命令模式:MSTP域配置模式

使用指南:当使用本命令退出MST配置模式时,本次对MSTP域做的配置不生效,生效的仍然是前一次保留MSTP域配置。

举例:退出MST配置模式,并且不保留本次配置。

Switch(Config-Mstp-Region)#abort

Switch(Config)#

exit

命令:exit

功能:保存本次对MSTP域的配置,并且退出MSTP域配置模式回到全局配置模式。

参数:无

命令模式:MSTP域配置模式

使用指南:当使用本命令退出MST配置模式时,本次对MSTP域做的配置即时生效。

举例:退出MST配置模式,并且保留本次配置。

Switch(Config-Mstp-Region)#exit

Switch(Config)#

instance vlan

命令:instance vlan

no instance [vlan ]

功能:在MST配置模式下,创建Instance及配置VLAN与Instance的映射关系或添加VLAN 表项与指定Instance映射关系;本命令的no操作为删除指定的Instance或删除某些VLAN 表项与指定Instance的映射关系。

参数:对于非no命令,为Instance号,取值范围为0~48;对于no命令,为Instance号,取值范围为1-48。为连续的或不连续的VLAN号,支持表示连续的“-”符号和不连续的“;”符号。

命令模式:MSTP域配置模式

缺省情况:在没有创建任何Instance时,交换机只有Instance 0,且VLAN1~4094均属于Instance 0。

使用指南:本命令用于设置VLAN与Instance的映射关系,只有所有的映射关系都相同且其他MSTP域的参数也相同,交换机才能认为彼此是在相同的MSTP域中。在没有配置任何Instance时,所有的VLAN都属于Instance 0。MSTP最多支持48个MSTI(除了CIST 之外)。可以把CIST理解为MSTI0,其余实例为MSTI1~48。具体个数依照产品规格而定。48只是最大的规格值。

举例:配置VLAN1-10;100-110与Instance 1的映射关系;

Switch(Config)#spanning-tree mst configuration

Switch(Config-Mstp-Region)#instance 1 vlan 1-10;100-110

name

命令:name

no name

功能:在MST配置模式下,配置MSTP域的名字;本命令的no操作为删除MSTP域的名字。

参数:为MSTP域名字,取值范围不超过32字节的字符串。

命令模式:MSTP域配置模式

缺省情况:缺省MSTP域为该交换机最小VLAN的MAC。

使用指南:本命令用于设置MSTP域的名字,只有MSTP域的名字相同且其他MSTP域的参数也相同,交换机才能认为彼此是在相同的MSTP域中。

举例:配置MSTP域的名字为DC-mstp-test。

Switch(Config)#spanning-tree mst configuration

Switch(Config-Mstp-Region)#name DC-mstp-test

revision-level

命令:revision-level

no revision-level

功能:在MST配置模式下,配置用于计算MST配置标识的修正数值;本命令的no操作为恢复修正数值的缺省值0。

参数:为修正数值,取值范围为0~65535。

命令模式:MSTP域配置模式

缺省情况:缺省修正数值为0。

使用指南:本命令用于设置计算MST配置标识时用到的修正数值,只有修正数值相同且其他MSTP域的参数也相同,交换机才能认为彼此是在相同的MSTP域中。

举例:配置修正数值为2000。

Switch(Config)#spanning-tree mst configuration

Switch(Config-Mstp-Region)# revision-level 2000

spanning-tree

命令:spanning-tree

no spanning-tree

功能:在交换机的全局配置模式和端口配置模式下分别启动MSTP协议的命令;本命令的no操作为关闭MSTP协议。

参数:无

命令模式:全局配置模式和端口配置模式

缺省情况:系统缺省不运行MSTP协议。但如果在全局配置模式下启动了MSTP协议,所有的端口缺省都打开MSTP协议。

使用指南:用户若要进行MSTP参数的配置,必须在全局模式下首先启动MSTP协议。

举例:在全局模式打开MSTP,并且在端口0/0/2模式关闭MSTP。

Switch(Config)#spanning-tree

Switch(Config)#interface ethernet 0/0/2

Switch(Config-Ethernet0/0/2)#no spanning-tree

spanning-tree forward-time

命令:spanning-tree forward-time

no spanning-tree forward-time

功能:设置交换机转发延时的时间值;本命令的no操作为恢复缺省值。

参数:

命令模式:全局配置模式

缺省情况:转发延时缺省为15秒。

使用指南:当网络拓扑发生变换时,端口状态从阻塞状态转变到监听状态的这段延时称为转发延时。转发延时和Hello时间值、最大老化时间之间是有关联的,用户在配置MSTP时间参数时必须满足如下条件,否则会影响MSTP的正确工作:

2×(Bridge_Forward_Delay – 1.0 seconds) >= Bridge_Max_Age

Bridge_Max_Age >= 2 ×(Bridge_Hello_Time + 1.0 seconds)

举例:在全局模式配置MSTP转发延时时间为20秒。

Switch(Config)#spanning-tree forward-time 20

spanning-tree hello-time

命令:spanning-tree hello-time

no spanning-tree hello-time

功能:设置交换机Hello 时间值;本命令的no操作为恢复缺省值。

参数:

命令模式:全局配置模式

缺省情况:Hello时间缺省为2秒。

使用指南:交换机发送BPDU的时间间隔成为Hello时间。Hello时间和转发延时、最大老化时间之间是有关联的,用户在配置MSTP时间参数时必须满足如下条件,否则会影响MSTP的正确工作:

2×(Bridge_Forward_Delay – 1.0 seconds) >= Bridge_Max_Age

Bridge_Max_Age >= 2 ×(Bridge_Hello_Time + 1.0 seconds)

举例:在全局模式配置MSTP Hello时间为5秒。

Switch(Config)#spanning-tree hello-time 5

spanning-tree link-type p2p

命令:spanning-tree link-type p2p {auto|force-true|force-false}

no spanning-tree link-type

功能:设置与当前端口相连的链路类型;本命令的no操作恢复当前端口的链路类型为自动检测。

参数:auto表示由系统自动检测链路类型,force-true表示强制为点对点类型,force-false 表示强制为非点对点类型。

命令模式:端口配置模式

缺省情况:缺省情况下为auto,MSTP协议会自动检测端口相连的链路类型。

使用指南:当端口工作在全双工模式下,MSTP协议会自动认为与该端口相连的链路类型为点对点类型;当端口工作在半双工模式下,MSTP协议会自动认为与该端口相连的链路类型为共享型。

举例:强制交换机的端口0/0/7-8为点到点连接。

Switch(Config)#interface ethernet 0/0/7-8

Switch(Config-Port-Range)#spanning-tree link-type p2 force-true

spanning-tree maxage

命令:spanning-tree maxage

no spanning-tree maxage

功能:设置交换机BPDU信息的最大老化时间值;本命令的no操作为恢复缺省值。

参数:

命令模式:全局配置模式

缺省情况:最大老化时间缺省为20秒。

使用指南:BPDU的生命周期成为最大老化时间。最大老化时间和转发延时、Hello时间之间是有关联的,用户在配置MSTP时间参数时必须满足如下条件,否则会影响MSTP的正确工作:

2×(Bridge_Forward_Delay – 1.0 seconds) >= Bridge_Max_Age

Bridge_Max_Age >= 2 ×(Bridge_Hello_Time + 1.0 seconds)

举例:在全局模式配置maxage时间为25秒。

Switch(Config)#spanning-tree maxage 25

spanning-tree max-hop

命令:spanning-tree max-hop

no spanning-tree max-hop

功能:设置BPDU支持在MSTP域中传输的最大跳数;本命令的no操作为恢复缺省值。

参数:为最大跳数,取值范围为1~40。

命令模式:全局配置模式

缺省情况:最大跳数缺省为20。

在MSTP协议中不仅保留Max-age表示BPDU的生命周期,在MSTP域中还增加了Max-hop 表示BPDU的生命周期,Max-hop在网络中的传输呈递减状态。从MSTI的根网桥发出时Max-hop为最大值,BPDU每被接收一次,该BDPU的Max-hop值就减少一跳,当交换机端口接收到Max-hop为0的BPDU时,该端口就会丢弃该BPDU,并且将本端口作为指定端口发送BDPU。

举例:设置最大跳数为32。

Switch(Config)#spanning-tree max-hop 32

spanning-tree mcheck

命令:spanning-tree mcheck

功能:迫使交换机端口迁移到MSTP模式下运行。

参数:无

命令模式:以太网端口配置模式和Port channel接口模式。

缺省情况:端口运行在MSTP模式下。

使用指南:如果在与当前以太网端口相连的网段内存在运行IEEE 802.1D STP协议的网桥,该端口会迁移到STP兼容模式下运行。在网络比较稳定的情况下,虽然网段内运行STP协议的网桥被拆离,但与之相连的运行MSTP协议的交换机的端口仍然会运行在STP兼容模式下,此时可以通过该命令迫使其迁移到MSTP模式下运行。端口迁移到MSTP模式下运行后,如果再次收到新的STP报文,端口又会回到STP兼容模式下。

该命令必须在交换机运行在IEEE802.1s MSTP模式下时进行配置,如果交换机的协议运行模式被配置为IEEE802.1D STP模式,则该命令无效。

举例:强制端口0/0/2迁移到MSTP模式下运行。

Switch(Config-Ethernet0/0/2)#spanning-tree mcheck

spanning-tree mode

命令:spanning-tree mode {mstp|stp}

no spanning-tree mode

功能:设置交换机运行Spanning Tree的模式;本命令的no操作为恢复交换机缺省的模式。参数:mstp为设置交换机运行IEEE802.1s的MSTP模式;stp为设置交换机运行IEEE802.1D STP模式。

命令模式:全局配置模式

缺省情况:交换机缺省运行MSTP模式。

使用指南:当交换机运行IEEE802.1D STP模式时,只能发送标准的802.1D BPDU帧和TCN BPDU,对接收到的任何MSTP BPDU都将丢弃。

举例:设置交换机运行STP模式。

Switch(Config)#spanning-tree mode stp

spanning-tree mst configuration

命令:spanning-tree mst configuration

no spanning-tree mst configuration

功能:进入交换机的MST配置模式,在交换机的MST配置模式下,可配置交换机有关MSTP

域的参数;本命令的no操作为恢复交换机的MSTP域参数的缺省值。

参数:无

命令模式:全局配置模式

缺省情况:用户在没有进入MST配置模式之前,MSTP域的参数缺省如下:

MSTP域参数参数缺省值

Instance 只有实例0存在,且VLAN1~4094均映射在实例0;

Name 取本交换机端口的最小MAC;

Revision 0。

使用指南:无论交换机是否启动了MSTP协议,都可以进入MSTP域配置模式,并在配置

后保存当前配置。当交换机运行MSTP模式时,系统会根据配置的MSTP域参数计算出本

交换机的MST配置标识(MST Configuration Identifier),只有MSTP域配置标识相同的交换

机才会认为是在同一个MSTP域中,且能进行MSTI的计算。

举例:进入交换机的MST配置模式。

Switch(Config)#spanning-tree mst configuration

Switch(Config-Mstp-Region)#

spanning-tree mst cost

命令:spanning-tree mst cost

no spanning-tree mst cost

功能:设置当前以太网端口指定实例的端口路径代价;本命令的no操作为恢复缺省值。

参数:为指定实例的实例Id,取值范围为1~48;为路径代价值,取值范

围为1~200,000,000。

命令模式:端口配置模式

缺省情况:缺省情况下,端口的路径代价与端口的带宽相关。

端口类型缺省路径开销建议取值范围

10Mbps 2000000 2000000~20000000 100Mbps 200000 200000~2000000

1Gbps 20000 20000~200000 10Gbps 2000 2000~20000

对汇聚端口,端口缺省路径代价如下:

缺省路径开销

端口类型汇聚端口个数(在允许汇聚的

个数范围内)

10Mbps N 2000000/N

100Mbps N 200000/N

1Gbps N 20000/N

10Gbps N 2000/N

使用指南:通过配置端口路径代价可以控制该实例端口到根网桥的根路径代价,从而控制该

实例根端口、指定端口等的选举。

举例:在端口0/0/2上设置实例2对应的MSTP度路径代价为3000000。

Switch(Config-Ethernet0/0/2)# spanning-tree mst 2 cost 3000000

spanning-tree mst port-priority

命令:spanning-tree mst port-priority

no spanning-tree mst port-priority

功能:设置当前端口的优先级值;本命令的no操作为恢复缺省端口的优先级值。

参数:为指定实例的实例Id,取值范围为1~48;为端口优先级值,取值范围为0~240之间的16倍数,即取值范围为0、16、32、48…240。

命令模式:端口配置模式

缺省情况:端口缺省优先级值为128。

使用指南:通过配置端口优先级可以控制指定实例的端口ID,进而影响该实例的根端口、指定端口等选举。端口优先级值越小,优先级越高。

举例:在端口0/0/2设置实例1的端口优先级为32。

Switch(Config)#interface ethernet 0/0/2

Switch(Config-ethernet0/0/2)#spanning-tree mst 1 port-priority 32

spanning-tree mst priority

命令:spanning-tree mst priority

no spanning-tree mst priority

功能:设置交换机指定实例的优先级;本命令的no操作为恢复交换机指定实例的缺省优先级值。

参数:为指定实例的实例Id,取值范围为1~48;为交换机的优先级,取值范围为0~61440之间的4096的倍数,即取值范围为0、4096、8192…61440。命令模式:全局配置模式

缺省情况:交换机缺省的优先级为32768。

使用指南:通过配置交换机优先级可以改变指定实例的网桥ID,进而用于该实例的根网桥、指定端口等选举。交换机优先级值越小,优先级越高。

举例:配置交换机实例2的优先级为4096。

Switch(Config)#spanning-tree mst 2 priority 4096

spanning-tree portfast

命令:spanning-tree portfast

no spanning-tree portfast

功能:设置当前端口为边缘端口;本命令的no操作为设置当前端口为非边缘端口。

参数:无

命令模式:端口配置模式

缺省情况:所有端口在初始启动MSTP时均为非边缘端口。

使用指南:当端口被配置为边缘端口时,可以从Discarding状态立即转变到Forwarding状

态,无须转发延时。一旦边缘端口接收到BPDU后,该端口就自动变化为非边缘端口。

举例:配置交换机的端口0/0/5-6为边缘端口。

Switch(Config)#interface ethernet 0/0/5-6

Switch(Config-Port-Range)#spanning-tree portfast

show spanning-tree

命令:show spanning-tree [mst []] [interface ] [detail]

功能:显示MSTP协议及各实例信息。

参数:为端口列表。

命令模式:特权模式

使用指南:通过show spanning-tree命令可以查看该网桥及各实例的MSTP信息,域配置信息以及端口的MSTP信息等。

举例:显示网桥MSTP信息,显示信息内容如下表所示。

SW1#sh spanning-tree

-- MSTP Bridge Config Info --

Standard : IEEE 802.1s

Bridge MAC : 00:03:0f:01:0e:30

Bridge Times : Max Age 20, Hello Time 2, Forward Delay 15

Force Version: 3

########################### Instance 0 ###########################

Self Bridge Id : 32768 - 00:03:0f:01:0e:30

Root Id : 16384.00:03:0f:01:0f:52

Ext.RootPathCost : 200000

Region Root Id : this switch

Int.RootPathCost : 0

Root Port ID : 128.1

Current port list in Instance 0:

Ethernet0/0/1 Ethernet0/0/2 (Total 2)

PortName ID ExtRPC IntRPC State Role DsgBridge DsgPort

-------------- ------- --------- --------- --- ---- ------------------ -------

Ethernet0/0/1 128.001 0 0 FWD ROOT 16384.00030f010f52 128.007

Ethernet0/0/2 128.002 0 0 BLK ALTR 16384.00030f010f52 128.011

########################### Instance 3 ###########################

Self Bridge Id : 0.00:03:0f:01:0e:30

Region Root Id : this switch

Int.RootPathCost : 0

Root Port ID : 0

Current port list in Instance 3:

Ethernet0/0/1 Ethernet0/0/2 (Total 2)

PortName ID IntRPC State Role DsgBridge DsgPort

-------------- ------- --------- --- ---- ------------------ -------

Ethernet0/0/1 128.001 0 FWD MSTR 0.00030f010e30 128.001

Ethernet0/0/2 128.002 0 BLK ALTR 0.00030f010e30 128.002

########################### Instance 4 ###########################

Self Bridge Id : 32768.00:03:0f:01:0e:30

Region Root Id : this switch

Int.RootPathCost : 0

Root Port ID : 0

Current port list in Instance 4:

Ethernet0/0/1 Ethernet0/0/2 (Total 2)

PortName ID IntRPC State Role DsgBridge DsgPort

-------------- ------- --------- --- ---- ------------------ -------

Ethernet0/0/1 128.001 0 FWD MSTR 32768.00030f010e30 128.001

Ethernet0/0/2 128.002 0 BLK ALTR 32768.00030f010e30 128.002

显示内容解释

网桥信息

Standard STP版本

Bridge MAC 代表本网桥的MAC

Bridge Times 本网桥Max Age,Hello Time及Forward Delay的配置值Force Version 当前运行stp协议的Version值

实例信息

Self Bridge Id 该实例对应的本网桥优先级及MAC

Root Id 该实例对应的根网桥优先级及MAC

Ext.RootPathCost 网桥到整个网络总根的路径代价

Int.RootPathCost 网桥到该实例域根的路径代价

Root Port ID 网桥上该实例的根端口

该实例上MSTP协议生

效的端口列表

PortName 端口名字

ID端口优先级及端口index索引值

ExtRPC 端口到整个网络总根的路径代价

IntRPC 端口到该实例域根的路径代价

State 该实例对应的端口状态

Role 该实例对应的端口角色

DsgBridge 该实例端口对应的上游指定网桥

DsgPort 该实例端口对应的上游指定端口

show mst configuration

命令:show spanning-tree mst config

功能:在特权模式下显示生效的MSTP域的参数配置情况。

参数:无

命令模式:特权配置模式

使用指南:在特权配置模式下,输入本命令可以查看MSTP域生效的当前参数,如MSTP 域名、修正数值、VLAN和Instance的映射情况。

举例:显示交换机的MSTP域的配置情况。

Switch #show spanning-tree mst config

Name digitalChina

Revision 0

Instance Vlans Mapped

----------------------------------

00 1-29, 31-39, 41-4094

03 30

04 40

----------------------------------

show mst-pending

命令:sh mst-pending

功能:在MSTP域配置模式下显示当前配置的未生效的MSTP域的参数配置情况。

命令模式:MSTP域配置模式

参数:无

使用指南:在MSTP域配置模式下,输入本命令可以查看未生效的MSTP域当前参数,如MSTP 域名字、修正数值、VLAN和Instance的映射情况。

举例:显示交换机的MSTP域当前未生效的参数配置情况。

Switch (Config)#spanning-tree mst configuration

SW1(Config-Mstp-Region)#show mst-pending

Name digitalChina

Revision 0

Instance Vlans Mapped

----------------------------------

00 1-29, 31-39, 41-4093

03 30

04 40

05 4094

----------------------------------

SW1(Config-Mstp-Region)#

debug spanning-tree

命令:debug spanning-tree

no debug spanning-tree

功能:打开MSTP的调试信息;本命令的no操作为关闭MSTP调试信息。

参数:无

命令模式:特权模式

使用指南:该命令是MSTP 庞大复杂debug功能的总开关,逐级打开需要debug的相应信息开关后再打开此总开关就能够输出debug打印信息了。各级debug开关的功能包括:查看MSTP协议运行中bpdu报文的发送接收、事件的处理、状态机、计时器等等。一般情况下,这些调试信息是给技术人员调试使用,用户不需要关注。

举例:打开端口e0/0/1接收BPDU报文的debug信息。

Switch#debug spanning-tree

Switch#debug spanning-tree bpdu rx interface e0/0/1

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中某个顶点。

生成树协议STP的应用实验1

实验四、生成树协议 STP的应用实验 【相关知识】 1.生成树协议 STP简介 在局域网中,为了提高网络连接可靠性,经常提供冗余链路。所谓冗余链路就像公路、铁路一 样,条条道路通北京,这条不通走那条。例如在大型企业网中,多半在核心层配置备份交换机(网 桥),则与汇聚层交换机形成环路,这样做使得企业网具备了冗余链路的安全优势。但原先的交换机 并不知道如何处理环路,而是将转发的数据帧在环路里循环转发,使得网络中出现广播风暴,最终 导致网络瘫痪。 为了解决冗余链路引起的问题, IEEE802 通过了 IEEE 802.1d协议, 即生成树协议 (Spanning Tree Protocol,STP)。IEEE 802.1d协议通过在交换机上运行一套复杂的算法,使冗余端口置于“阻塞状 ,从而使网络中的计算机通信时只有一条链路生效,而当这个链路出现故障时,STP 将会重新计 态” 算出网络的最优链路,将“阻塞状态”的端口重新打开,从而确保网络连接的稳定可靠。 生成树协议和其它协议一样,是随着网络的不断发展而不断更新换代的。在生成树协议发展的 过程中,老的缺陷不断被克服,新的特性不断被开发出来。按照功能特点的改进情况,习惯上生成 树协议的发展过程被分为三代: 第一代生成树协议:STP/RSTP 第二代生成树协议:PVST/PVST+ 第三代生成树协议:MISTP/MSTP 2.IEEE 801.1D生成树协议简介 生成树协议(Spanning Tree Protocol,STP)最初是由美国数字设备公司(DEC)开发的,后经 IEEE 修改并最终制定了 IEEE 802.1d标准。 STP 协议的主要思想是当网络中存在备份链路时,只允许主链路激活,如果主链路失效,备份 链路才会被打开。大家知道,自然界中生长的树是不会出现环路的,如果网络也能够像树一样生长 就不会出现环路。STP 协议的本质就是利用图论中的生成树算法,对网络的物理结构不加改变,而 在逻辑上切断环路,封闭某个网桥,提取连通图,形成一个生成树,以解决环路所造成的严重后果。 为了理解生成树协议,必先了解以下概念: (1)桥协议数据单元(Bridge Protocol Data Unit,BPDU):交换机通过交换 BPDU来获得建立 最佳树型拓扑结构所需的信息。生成树协议运行时, 交换机使用共同的组播地址 “01-80-C2-00-00-00”来发送 BPDU; (2)每个交换机有唯一的桥标识符(Brideg ID),由桥优先级和 MAC 地址组成; (3)每个交换机的端口有唯一的端口标识符(Port ID),由端口优先级和端口号组成; (4)对生成树的配置时,对每个交换机配置一个相对的优先级,对每个交换机的每个端口也配 置一个相对的优先级,该值越小优先级越高; (5)具有最高优先级的交换机被称为根桥(Root Bridge),如果所有设备都具有相同的优先级, 则具有最低 MAC 地址的设备将成为根桥; (6)网络中每个交换机端口都有一个根路径开销(Root Path Cost),根路径开销是某交换机到 根桥所经过的路径开销(与链路带宽有关)的总和; (7)根端口是各个交换机通往根桥的根路径开销最低的端口,若有多个端口具有相同的根路径 开销,则端口标识符小的端口为根端口; (8)在每个 LAN 中都有一个交换机被称为指定交换机(Designated Bridge),它是该 LAN 中与 根桥连接而且根路径开销最低的交换机; (9)指定交换机和 LAN 连接的端口被称为指定端口(Designated Port)。如果指定桥中有两个 以上的端口连在这个 LAN 上,则具有最高优先级的端口被选为指定端口。根桥上的端口都可以成为

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

数据结构与算法 课程设计报告 课程设计题目:最小生成树问题 专业班级:信息与计算科学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] ; //顶点向量

最小生成树-实验报告

实验五最小生成树 一、需求分析 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; }

生成树协议故障排除

附件2: 北京理工大学珠海学院实验报告 ZHUHAI CAMPAUS OF BEIJING INSTITUTE OF TECHNOLOGY 班级学号姓名指导教师成绩实验题目生成树协议故障排除实验时间 拓扑图 地址表

端口分配- S2 学习目标 ?观察所有中继的初始状态 ?更正存在的错误 ?记录交换机配置 场景 拓扑图所示的冗余交换 LAN 由您负责维护。您和您的用户发现在网络高峰期延时会变长,经过分析,您怀疑是中继拥塞所致。您发现在所配置的六条中继中,只有两条在当前运行的默认 STP 配置中转发数据包。要解决此问题,就需要提高对可用中继的使用率。 任务1:观察所有中继的初始状态 在每台交换机上,使用show spanning-tree命令列出其上的生成树表。注意观察每台交换机上的转发端口,找出在默认配置中哪些中继没有被使用。您可以使用网络拓扑图来记录所有中继端口的初始状态。 任务2:更正存在的错误 修改生成树配置,使所有三条中继都能用上。假设三个用户LAN(10、20 和30)承载等量的流量。尝试找出一个解决方案,使三个用户VLAN 中的每一个都使用不同的一组端口进行转发。 要使本次练习得到正确评分,您必须满足以下条件: ?S1 成为VLAN 10 的根桥(优先级4096)、VLAN 20 的备用根桥(优先级16384)?S2 成为VLAN 20 的根桥(优先级4096)、VLAN 30 的备用根桥(优先级16384)?S3 成为VLAN 30 的根桥(优先级4096)、VLAN 10 的备用根桥(优先级16384) 任务3:记录交换机配置 实施完毕您的解决方案后,在每台交换机上捕获show run命令的输出并保存在文本文件中。

理解快速生成树协议(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以便与早期的桥设备互通,但这会失去它所引入的好处。

数据结构课程设计报告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)输出的形式描述 输出随机生成顶点个数以及各个顶点之间权值;然后输出本次生成顶点之间构成的最小生成树。

Prim最小生成树算法实验报告材料

算法分析与设计之Prim 学院:软件学院学号:201421031059 :吕吕 一、问题描述 1.Prim的定义 Prim算法是贪心算法的一个实例,用于找出一个有权重连通图中的最小生成树,即:具有最小权重且连接到所有结点的树。(强调的是树,树是没有回路的)。 2.实验目的 选择一门编程语言,根据Prim算法实现最小生成树,并打印最小生成树权值。 二、算法分析与设计 1.Prim算法的实现过程 基本思想:假设G=(V,E)是连通的,TE是G上最小生成树中边的集合。算法从U ={u0}(u0∈V)、TE={}开始。重复执行下列操作: 在所有u∈U,v∈V-U的边(u,v)∈E中找一条权值最小的边(u0,v0)并入集合TE中,同时v0并入U,直到V=U为止。 此时,TE中必有n-1条边,T=(V,TE)为G的最小生成树。 Prim算法的核心:始终保持TE中的边集构成一棵生成树。 2.时间复杂度 Prim算法适合稠密图,其时间复杂度为O(n^2),其时间复杂度与边得数目无关,N 为顶点数,而看ruskal算法的时间复杂度为O(eloge)跟边的数目有关,适合稀疏图。 三、数据结构的设计 图采用类存储,定义如下: class Graph { private: int *VerticesList; int **Edge; int numVertices; int numEdges; int maxVertices; public: Graph(); ~Graph(); bool insertVertex(const int vertex); bool insertEdge(int v1,int v2,int cost); int getVertexPos(int vertex); int getValue(int i); int getWeight(int v1,int v2); int NumberOfVertices();

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 -

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

河北科技大学 课程设计报告 学生姓名:白云学号: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菜单,菜单运行成果如图所示:

07_生成树实验

0分计。 4. 实验报告文件以PDF 格式提交。 【实验题目】生成树协议 【实验目的】理解快速生成树协议的配置及原理。使网络在有冗余链路的情况下避免环路的产生,避免广播风暴等。 【实验内容】 (1)完成实验教程实例3-8的实验,回答实验提出的问题及实验思考。(P117) (2)抓取生成树协议数据包,分析桥协议数据单元(BPDU )。 (3)在实验设备上查看VLAN 生成树,并学会查看其它相关重要信息。 【实验要求】 一些重要信息需给出截图。 注意实验步骤的前后对比! 【实验记录】(如有实验拓扑请自行画出, 要求自行画出拓扑图) (1) 实例3-8 实验拓扑图如下:

步骤0: 将PC1和PC2配置好IP地址和掩码后按照拓扑图连接实验设备。 在PC1上启动Wireshark 软件观察包的数量变化如下: 此时已经产生了广播风暴。 两台交换机此时的生成树配置信息如下: 无生成树配置信息。 用PC1pingPC2时包增长情况如下:

可见此时包增长的更快,已经产生广播风暴,但是PC并未发生死锁。步骤1: 配置交换机A: 步骤2: 配置交换机B: 步骤3: 配置两交换机的快速生成树协议:

再按照拓扑图连接实验设备,此时包增长情况如下: 此时两PC间可以相互ping通,且无广播风暴。由此可见生成树协议的作用为避免网络中存在交换环路的时候产生广播风暴,确保在网络中有环路时自动切断环路。

步骤4:验证测试 SwitchA的生成树信息: SwitchB的生成树信息:

步骤5:设置交换机的优先级 将SwitchA的优先级设置为4096 步骤6: 验证SwitchA的优先级 当两个端口都连在一个共享介质上,交换机会选择一个高优先级的端口进入

计算机网络实验三 生成树的协议配置

惠州学院《计算机网络》实验报告 实验三生成树的协议配置 一.实验目的 在掌握环路产生的原因及危害性的基础上,学习STP的功能、原理及配置方法,从而了解利用冗余链路来提高网络安全性和可靠性的相关技术。 二.实验环境 1.交换机2台,二层三层均可,本实验使用的是二层交换机 2.实验用PC机2台 3.Console电缆2根 4.直连双绞线2根 5.交叉双绞线2根 三.实验内容和要求 (1)掌握链路冗余的重要性。 (2)了解广播风暴对网络性能造成的影响。 (3)掌握STP、RSTP和MSTP的概念以及相互之间的区别。 (4)学习生成树协议的配置方法。 四.网络拓扑图 五、实验步骤 生成树协议在部分交换机(如思科)上是自动打开的,管理员不需要进行配置。但在一些交换机(如锐捷)上默认是关闭的,如果网络中存在环路,则必须手动开启。根据如上的拓扑图,具体配置如下: 1.在交换机A上创建一个VLAN,然后将与PC1连接的端口添加到VLAN 10中。同时,将用于交换机之间连接的两个端口设置为tag模式。 Switch-A#configure terminal Switch-A(config)#vlan 10

Switch-A(config-vlan)#name test Switch-A(config-vlan)#exit Switch-A(config)#interface FastEthernet 0/6 Switch-A(config-if)#switchport access vlan 10 Switch-A(config-if)#end Switch-A(config)#interface FastEthernet 0/3 Switch-A(config-if)#Switchport mode trunk Switch-A(config-if)#exit Switch-A(config)#interface FastEthernet 0/4 Switch-A(config-if)#Switchport mode trunk Switch-A(config-if)#end 2.在交换机B上创建一个VLAN,然后将与PC2连接的端口添加到VLAN 10中。同时,将用于交换机之间连接的两个端口设置为tag模式。 Switch-B#configure terminal Switch-B(config)#vlan 10 Switch-B(config-vlan)#name test Switch-B(config-vlan)#exit Switch-B(config)#interface FastEthernet 0/6 Switch-B(config-if)#switchport access vlan 10 Switch-B(config-if)#end Switch-B(config)#interface FastEthernet 0/3 Switch-B(config-if)#Switchport mode trunk Switch-B(config-if)#exit Switch-B(config)#interface FastEthernet 0/4 Switch-B(config-if)#Switchport mode trunk Switch-B(config-if)#end 3.如果该交换机没有启用生成树协议,则分别在A和B交换机上启用相应的协议,以免产生环路。Cisco交换机开启生成树协议的命令为:spanning-tree vlan 1 Switch-A(config)#spanning-tree vlan 1 Switch-B(config)#spanning-tree vlan 1 锐捷交换机开启生成树协议的命令为:spanning-tree mode rstp 六、实验截图

相关主题
文本预览
相关文档 最新文档