07-生成树实验
生成树协议(STP)H3C_实验报告
二、RSTP
RSTP(Rapid Spanning Tree Protocol,快速生成树协议) 是STP协议的优化版。其“快速”体现在,当一个端口被 选为根端口和指定端口后,其进入转发状态的延时在某种 条件下大大缩短,从而缩短了网络最终达到拓扑稳定所需 要的时间。
快速生成树协议较STP的改进之处:
(1)根端口的快速切换
如果旧的根端口已经进入阻塞状态,而且新的根端口 连接的对端交换机的指定端口处于转发状态,在新的拓扑 结构中的根端口可以立刻进入转发状态。
(2)边缘端口概念的引入
在STP协议里,对于连接主机的端口的状态改变,会 引起网络的不稳定,实际上连接主机的端口是不会引起网 络环路的,因此在STP协议的计算中可以不考虑这种端口 状态的变化。所以在RSTP中引入了边缘端口的概念。
<Sysname> system-view
[Sysname] stp enable
[Sysname] interface Ethernet1/0/1
[Sysname-Ethernet1/0/1] stp disable
桥到达根桥的最佳路径。 (3)指定端口(Designated Port):每一个网段选择到根桥最
近的网桥作为指定网桥,该网桥到这一网段的端口为指定 端口。 (4)可选端口(Alternate Port):既不是指定端口,也不是 根端口的端口。
4.生成树协议工作过程 STP协议的工作原理主要包括三个部分,一是确定根
配置
[B2] stp region-configuration
[B2-mst-region] region-name MSTP_1
最小生成树 实验报告
最小生成树实验报告最小生成树实验报告一、引言最小生成树是图论中的一个重要概念,它在实际问题中有着广泛的应用。
本次实验旨在通过编程实现最小生成树算法,并通过实验数据对算法进行分析和评估。
二、算法介绍最小生成树算法的目标是在给定的带权无向图中找到一棵生成树,使得树上所有边的权重之和最小。
本次实验我们选择了两种经典的最小生成树算法:Prim 算法和Kruskal算法。
1. Prim算法Prim算法是一种贪心算法,它从一个顶点开始,逐步扩展生成树的规模,直到包含所有顶点为止。
算法的具体步骤如下:(1)选择一个起始顶点,将其加入生成树中。
(2)从与生成树相邻的顶点中选择一个权重最小的边,将其加入生成树中。
(3)重复上述步骤,直到生成树包含所有顶点。
2. Kruskal算法Kruskal算法是一种基于并查集的贪心算法,它首先将图中的边按权重从小到大进行排序,然后逐个加入生成树中,直到生成树包含所有顶点为止。
算法的具体步骤如下:(1)将图中的边按权重从小到大进行排序。
(2)逐个加入边,如果该边的两个顶点不在同一个连通分量中,则将其加入生成树中。
(3)重复上述步骤,直到生成树包含所有顶点。
三、实验过程本次实验我们使用C++语言实现了Prim算法和Kruskal算法,并通过随机生成的图数据进行了测试。
1. Prim算法的实现我们首先使用邻接矩阵表示图的结构,然后利用优先队列来选择权重最小的边。
具体实现过程如下:(1)创建一个优先队列,用于存储生成树的候选边。
(2)选择一个起始顶点,将其加入生成树中。
(3)将与生成树相邻的顶点及其边加入优先队列。
(4)从优先队列中选择权重最小的边,将其加入生成树中,并更新优先队列。
(5)重复上述步骤,直到生成树包含所有顶点。
2. Kruskal算法的实现我们使用并查集来维护顶点之间的连通关系,通过排序后的边序列来逐个加入生成树中。
具体实现过程如下:(1)将图中的边按权重从小到大进行排序。
cisco实验七 生成树配置
实验七生成树配置一、实验目的理解快速生成树协议RSTP的配置及原理。
二、实验课时2课时三、实验条件两台交换机、网线、控制线、计算机四、实验步骤步骤1:在每台交换机上开启生成树协议.例如对SwitchA做如下配置SwitchA#configure terminal !进入全局配置模式SwitchA(config)#spanning-tree !开启生成树协议SwitchA(config)#end步骤2:验证生成树协议已经开启SwitchA#show spanning-tree !显示交换机生成树的状态SwitchA#show spanning-tree interface fastthernet 0/1 !显示交换机接口fastthernet 0/1的状态SwitchA#show spanning-tree interface fastthernet 0/2 !显示交换机接口fastthernet 0/2的状态步骤3:设置生成树模式SwitchA(config)#spanning-tree rstp !设置生成树模式为802.1W步骤4:验证生成树协模式为802.1WSwitchA#show spanning-tree步骤5:设置交换机的优先级SwitchA(config)#spanning-tree priority 8192 !设置交换机SwithA的优先级为8192 步骤6:验证交换机SwithA的优先级SwitchA#show spanning-tree步骤7:综合验证测试1. 验证交换机SwitchB的端口1和2的状态SwitchB#show spanning-tree interface fastEthernet 0/1 !显示SwitchB的端口fastthernet 0/1的状态SwitchB#show spanning-tree interface fastEthernet 0/2!显示SwitchB的端口fastthernet 0/2的状态2. 如果SwitchA与SwitchB的端口F0/1之间的链路down掉,验证交换机SwitchB的端口2的状态,并观察状态转换时间SwitchB#show spanning-tree interface fastEthernet 0/2!显示SwitchB的端口fastthernet 0/2的状态3. 如果SwitchA与SwitchB之间的一条链路down掉(如拔掉网线),验证交换机PC1与PC2仍能互相ping通,并观察ping的丢包情况。
生成树STP基本概念与实验
二层交换:生成树STP基本概念与实验如果你把两台傻瓜式交换机之间连两根网线,那么这俩交换机就会出现环路从而产生广播风暴。
可能你会觉得好笑,但实际工作中,我却碰到了,一些不懂网络的装修包工头,就会这样做。
====================================================================生成树就是为了让交换网络中防环而出现的。
生成树最原始的版本是802.1d,也就是STP(Spanning Tree Protocol),但这个版本的标准是所有VLAN共用一个生成树,所以也叫CST(Common Spanning Tree)思科在此基础上增强了一下,发布了PVST+(Per Vlan Spanning Tree)802.1d的下一个版本是802.1w,也就是RSTP(Rapid STP),但还是共用生成树,搞不懂IEEE不长点记性。
于是思科又搞了一下,发布了PVRST+IEEE又基于思科的MISTP的方案,发布了802.1s(MSTP),这个就屌爆了,之后再说为何这么屌,凡是大一点的交换网络都用MSTP。
=====================================================================STP的基础要学习更高级的RSTP/MST,还是需要STP的基础,尽管现在已经很少用到STP。
STP的工作流程1. 在整个交换网段里选择一台做根桥,这根桥就是整棵树的根部,所有其他交换机就选一条到这个根桥的最短路径,其余的路径阻塞掉。
所有交换机中桥优先级最低的成为根桥。
2. 选择所有非根桥交换机的根端口,就是那条最短路径的接口。
如果有超过1条等价路径,则选择对端指定端口优先级最低的本地端口(有点绕口,通过实验来说明)3. 选择各网段的指定端口。
这个网段其实就是指一根链接,其中一头一定是指定端口,另外一头可能是根端口,也可能是非指定端口。
生成树实验
生成树实验一、为什么会产生生成树协议,他解决了什么问题概念及背景知识:1.1MAC地址介绍:单播MAC地址:第一个字节最低位为0,如3C-6A-A7-1A-2E-2B多播MAC地址:第一个字节最低位为1,如01-80-c2-00-00-00广播MAC地址:48位全部为1,如FF-FF-FF-FF-FF-FF1.2 二层转发介绍交换机二层的转发特性,符合802.1D网桥协议标准。
交换机的二层转发涉及到两个关键的线程:地址学习线程和报文转发线程地址学习线程如下:A)交换机接收网段上的所有数据帧,利用接收数据帧中的源MAC地址来建立MAC地址表;B)端口移动机制:交换机如果发现一个包文的入端口和报文中源MAC地址的所在端口(在交换机的MAC地址表中对应的端口)不同,就产生端口移动,将MAC地址重新学习到新的端口C)地址老化机制:如果交换机在很长一段时间之内没有收到某台主机发出的报文,在该主机对应的MAC地址就会被删除,等下次报文来的时候会重新学习。
转发线程如下:A)交换机在MAC地址表中查找数据帧中的MAC地址,如果找到,就将该数据帧发送到相应的端口,如果找不到就向所有的端口发送;B)如果交换机收到的报文中源MAC地址和目的MAC地址所在的端口相同,则丢弃该报文C)交换机向入端口以外的其它所有端口转发广播报文1.3 VLAN二层转发介绍报文转发线程:A)交换机在MAC地址表中查找数据帧中的目的MAC地址,如果找到(同时还要确保报文的入VLAN和出VLAN是一致的),就将该数据帧发送到相应的端口,如果找不到,就向(VLAN 内)所有的端口发送;B)如果交换机收到的报文中源MAC地址和目的MAC地址所在的端口相同,则丢弃该报文;C)交换机(VLAN内)入端口以外的其它所有端口转发广播报文。
1.4加入VLAN的好处:A)限制了局部的网络流量,在一定程度上可以提高整个网络的处理能力B)虚拟的工作组,通过灵活的VLAN设置,把不同的用户划分到工作组内;C)安全性,一个VLAN内的用户和其它VLAN内的用户不能互访,提高了安全性。
生成树_配置_实验报告
一、实验目的1. 理解生成树协议(STP)的基本原理和工作机制;2. 掌握生成树协议的配置方法;3. 通过实验验证生成树协议在网络中的实际应用效果。
二、实验环境1. 实验设备:两台华为S5700交换机、两台PC机;2. 实验软件:华为网络设备仿真软件;3. 实验拓扑:两台交换机通过一条物理链路连接,两台PC机分别连接到两台交换机上。
三、实验原理生成树协议(Spanning Tree Protocol,STP)是一种用于在网络中消除环路并实现冗余链路备份的协议。
当网络中出现环路时,STP会阻塞部分端口,形成一个没有环路的树形结构,确保网络的高可用性和容错能力。
STP通过交换机之间的BPDU(Bridge Protocol Data Unit)报文进行信息交互,选举根网桥,并确定每个交换机的根端口和指定端口。
根端口是连接到根网桥的端口,指定端口是连接到同一VLAN且路径最短的端口。
其余端口被阻塞,不参与数据转发。
四、实验步骤1. 配置交换机名称和密码;2. 配置交换机接口;3. 配置VLAN;4. 配置STP;5. 验证STP配置效果。
五、实验过程1. 配置交换机名称和密码```bashS1>display versionS1>sysname S1S1>display versionS1>enableS1#configure terminalS1(config)#username admin password simple 123456 S1(config)#exit```2. 配置交换机接口```bashS1>display ip interface briefS1#interface GigabitEthernet0/0/1S1(config-if)#ip address 192.168.1.1 24S1(config-if)#exitS1#interface GigabitEthernet0/0/2S1(config-if)#ip address 192.168.1.2 24S1(config-if)#exit```3. 配置VLAN```bashS1>display vlanS1#vlan 10S1(config-vlan)#name VLAN10S1(config-vlan)#exitS1#interface GigabitEthernet0/0/1S1(config-if)#port link-type access S1(config-if)#port default vlan 10 S1(config-if)#exitS1#interface GigabitEthernet0/0/2S1(config-if)#port link-type access S1(config-if)#port default vlan 10 S1(config-if)#exit```4. 配置STP```bashS1>display stpS1#stpmode stpS1>display stpS1#interface GigabitEthernet0/0/1S1(config-if)#port link-type access S1(config-if)#port default vlan 10 S1(config-if)#exitS1#interface GigabitEthernet0/0/2S1(config-if)#port link-type access S1(config-if)#port default vlan 10S1(config-if)#exit```5. 验证STP配置效果```bashS1>display stpS1>display stp interface GigabitEthernet0/0/1S1>display stp interface GigabitEthernet0/0/2S1>ping 192.168.1.2```六、实验结果与分析1. 实验结果通过实验,成功配置了生成树协议,并验证了STP在网络中的实际应用效果。
生成树STP
生成树协议
一.实验要求:
1.了解交换机中使用生成树的意义;
2.掌握STP的工作原理;
3.熟悉STP在园区网的部署;
4.掌握生成树协议的基本配置。
二.实验设备:
3台交换机
三.实验步骤:
1. 实验拓扑图:
将3台交换机通过制定的端口如图连接。
2. 配置trunk链路使交换机互联
注:配置trunk链路后,交换机Switch0默认的阻塞端口为:fa0/2,如拓扑图中所示3. 配置VTP,在Switch0下配置VTP服务模式,其他2台交换机配置Vtp客户模式VTP客户模式:
VTP服务模式:
4. 在交换机Switch0中划分3个VLAN,其他2台交换机会自动更新
5. 在交换机Switch0中通过配置生成树协议将VLAN2设置优先级
同理,在交换机1和2中分别设置VLAN3和VLAN4为优先。
6.在特权模式下,分别在3台交换机上通过命令:show spanning-tree 查看各自VLAN下的端口连通情况
四.实验结果:
在交换机0下查看得知:
在VLAN2中,端口fa0/1,fa0/2都是是畅通的。
在VLAN3中,端口fa0/1畅通,端口fa0/2阻塞。
在VLAN4中,端口fa0/1阻塞,端口fa0/2畅通。
在交换机1和2中查看3个VLAN结果一样,都是畅通的,因为未配置生成树协议时,这2个交换机的连接端口都是连通的,只有交换机0的端口fa0/2是阻塞的。
生成树协议简介及实验
生成树协议简介及实验第一部分:STP/RSTP协议简介一、STP协议1、STP协议简介生成树协议(STP)是一个用于局域网中消除环路的协议,协议运行原理是通过运行该协议的设备之间交互信息而发现网络中的环路,并适当对某些端口进行阻塞以消除环路。
生成树协议是局域网重要协议之一。
网络中出现环路会造成广播风暴导致网络瘫痪或MAC 地址表抖动导致MAC地址表项被破坏。
2、STP基本概念STP引入了根桥(Root Bridge)概念,对于一个STP网络,根桥在全网中只有一个,它是整个网络的逻辑中心,但不一定是物理中心。
根桥会根据网络拓扑的变化而动态变化。
网络收敛后,根桥会按照一定的时间间隔产生并向外发送配置BPDU,其他设备仅对该报文进行处理,传达拓扑变化记录,从而保证拓扑的稳定。
生成树的生成计算有两大基本度量依据:ID和路径开销。
ID又分为:BID(桥ID)和PID(端口ID)。
BID(桥ID):IEEE 802.1D标准中规定BID是由16位的桥优先级(Bridge Priority)与桥MAC地址构成。
BID桥优先级占据高16位,其余的低48位是MAC地址。
在STP网络中,桥ID最小的设备会被选举为根桥。
PID(端口ID):PID由两部分构成的,高4位是端口优先级,低12位是端口号。
PID只在某些情况下对选择指定端口有作用。
路径开销:路径开销(Path Cost)是一个端口变量,是STP协议用于选择链路的参考值。
STP协议通过计算路径开销,选择较为“强壮”的链路,阻塞多余的链路,将网络修剪成无环路的树形网络结构。
在一个STP网络中,某端口到根桥累计的路径开销就是所经过的各个桥上的各端口的路径开销累加而成,这个值叫做根路径开销(Root Path Cost)。
从环形网络拓扑结构到树形结构,总体来说有三个要素:根桥、根端口和指定端口。
根桥就是网桥ID最小的桥,通过交互配置BPDU协议报文选出最小的BID。
生成树协议实验报告总结
生成树协议实验报告总结《生成树协议实验报告总结》嘿,家人们!今天来给大家唠唠我做生成树协议实验的那些事儿,总结一下我的感受和见解,保证让你们感同身受呀。
一开始,看到这个实验的时候,我心里就犯嘀咕:“哎呀呀,这是啥玩意儿啊,咋感觉这么高深莫测呢。
”不过咱也不能退缩不是,硬着头皮就上了。
在做实验的过程中,那可真是状况百出啊。
一会儿这边连线出问题了,一会儿那边参数又设置错了,感觉自己就像个无头苍蝇到处乱撞。
不过还好,经过一番捣鼓,总算是有点眉目了。
然后呢,就开始观察实验现象啦。
嘿,你还别说,看着那些网络拓扑结构一点点变化,还真挺有意思的。
就好像在看一个小世界在我面前一点点构建起来一样。
这个生成树协议啊,就像是网络世界里的交通指挥员,指挥着数据流量该怎么走。
要是没有它呀,那可就乱套了,数据都不知道该往哪儿跑啦。
所以说,它的作用那是杠杠的呀!做这个实验,也让我深刻认识到了细节的重要性。
一个小小的参数设置错误,可能就导致整个实验失败。
这就好比盖房子,一块砖头没放好,整栋房子都可能歪了。
而且啊,团队合作也很重要。
我和小伙伴们一起讨论、一起解决问题,那感觉可带劲了。
要是自己一个人闷头干,估计还得费不少时间和精力呢。
最后,说一下我的经验教训吧。
首先,一定要认真看实验指导书,把每个步骤都搞清楚,不然肯定会出问题。
其次,遇到问题不要慌张,静下心来慢慢分析,总能找到解决办法的。
最后,就是要多和别人交流分享,说不定别人的一个小建议就能让你豁然开朗。
总之,这次生成树协议实验让我学到了不少东西,既有知识又有经验。
虽然过程有些曲折,但最后看到实验成功的时候,那种成就感真的是爆棚啊!希望我的这些感受和见解能对大家有所帮助,下次做实验的时候都能顺顺利利的啦!哈哈!。
图论生成树的概念与性质PPT课件
该定理给出了求连通图G的所有生成树的方法:
(1) 写出G的关联矩阵,进一步写出基本关联矩阵,记住参考点;
8
第8页/共32页
(2) 找出基本关联矩阵的非奇异主子阵,对每个这样的主子阵,画出相 应的生成树。
第19页/共32页
n 2 1
C
1
n 1
0 1
于是由矩阵树定理:
0
1
n 2
n 1 1 1 n 1 (Kn e) 1 1 1 1
1 1 1 1
n 1 1 1 n 2
n 1 1
1 1 n 1 1
1 0
1 n 1 1 1 1 n 1 1 0
1 1 n 1 1 1 1 n 1 0
1 1
例6 求下图G的回路空间的一个基底和它的全部元素。
25
第25页/共32页
a
f
cd
g
e
b
h
G
解:取G的一棵生成树T为:
a
d
g
b T
G对于生成树T的基本回路为:
C1 ,b, d, g, h C4 d, f , g
26
第26页/共32页
图形为:
a c
b
利用破圈法,显然也可以求出任意图的一个生成森林。
3
第3页/共32页
推论 若G是(n, m)连通图,则m≧n-1 连通图G的生成树一般不唯一!
(二)、生成树的计数
1、凯莱递推计数法 凯莱(Cayley 1821—1895): 剑桥大学数学教授,著名代数学家,发表
论文数仅次于Erdos ,Euler, Cauchy. 著名成果是1854年定义了抽象群,并 且得到著名定理:任意一个群都和一个变换群同构。同时,他也是一名出 色的律师,作律师14年期间,发表200多篇数学论文,著名定理也是在该 期间发表的。
生成树协议
实训七:生成树协议技能练习1.实验目的通过本实验可以掌握:1.生成树协议的使用2.实验拓扑:PC1的配置:PC2的配置:PC3的配置:3.配置步骤:ls1的配置:Switch>enSwitch#conf tEnter configuration commands, one per line. End with CNTL/Z. Switch(config)#host LLS1 重命名LS1(config)#no ip domain-lookup 取消域名查找LS1(config)#enable secret class 设置密文密码LS1(config)#line console 0 设置console 0的密码LS1(config-line)#password ciscoLS1(config-line)#loginLS1(config-line)#exitLS1(config)#line vty 0 4 设置vty的密码LS1(config-line)#password ciscoLS1(config-line)#loginLS1(config-line)#exitLS1(config)#int vlan 99LS1(config-if)#ip add 172.17.99.11 255.255.255.0 设置本征vlan 99LS1(config-if)#no shLS1(config)#vtp mode server 设置VTP模式为server模式Device mode already VTP SERVER.LS1(config)#vtp domain Lab5 设置VTP模式的域名Changing VTP domain name from lab5 to Lab5LS1(config)#vtp password cisco 设置VTP模式的密码Setting device VLAN database password to ciscoLS1(config)#vlan 10 创建vlanLS1(config-vlan)#name faculty-staff 重命名LS1(config-vlan)#exitLS1(config)#vlan 20 创建vlanLS1(config-vlan)#name students 重命名LS1(config)#vlan 30 创建vlanLS1(config-vlan)#name guest 重命名LS1(config-vlan)#exitLS1(config)#vlan 99 创建vlanLS1(config-vlan)#name management 重命名LS1(config)#int fa0/1 进入端口模式LS1(config-if)#switchport mode trunkLS1(config-if)#switchport trunk native vlan 99 将端口划分到本征vlan中LS1(config-if)#no shLS1(config-if)#int fa0/2进入端口模式LS1(config-if)#switchport mode trunkLS1(config-if)#switchport trunk native vlan 99 将端口划分到本征vlan中LS1(config-if)#no shLS1(config-if)#exitLS1(config)#int fa0/3 进入端口模式LS1(config-if)#switchport mode trunkLS1(config-if)#switchport trunk native vlan 99 将端口划分到本征vlan中LS1(config-if)#no shLS1(config-if)#exitLS1(config)#int fa0/4 进入端口模式LS1(config-if)#switchport mode trunkLS1(config-if)#switchport trunk native vlan 99 将端口划分到本征vlan中LS1(config-if)#no shLS1(config-if)#exitLS1(config)#int fa0/5 进入端口模式LS1(config-if)#sw mo trLS1(config-if)#sw tr native vlan 99 将端口划分到本征vlan中LS1(config-if)#no shLS1(config)#spanning-tree vlan 99 priority 4096 设置生成树协议LS2的配置:Switch>enSwitch#conf tEnter configuration commands, one per line. End with CNTL/Z.Switch(config)#host LS2 重命名LS2(config)#no ip domain-lookup 取消域名查找LS2(config)#line console 0 设置console 0端口LS2(config-line)#password cisco 设置console 0的密码LS2(config-line)#loginLS2(config-line)#exitLS2(config)#line vty 0 4 设置vty端口LS2(config-line)#password cisco 设置vty端口的密码LS2(config-line)#loginLS2(config-line)#exitLS2(config)#enable secret class 设置密文密码LS2(config)#exitLS2(config)#int vlan 99 设置本征vlan 99LS2(config-if)#ip add 172.17.99.12 255.255.255.0LS2(config-if)#no shLS2(config)#vtp mode client 设置vtp模式Setting device to VTP CLIENT mode.LS2(config)#vtp domain Lab5 设置vtp模式的域名Changing VTP domain name from NULL to Lab5LS2(config)#vtp password cisco 设置vtp模式的密码Setting device VLAN database password to ciscoLS2(config)#int fa0/1 进入端口LS2(config-if)#switchport mode trunkLS2(config-if)#switchport trunk native vlan 99 将端口划分到本征vlan99 中LS2(config-if)#no shLS2(config-if)#exitLS2(config)#int fa0/2 进入端口LS2(config-if)#switchport mode trunkLS2(config-if)#switchport trunk native vlan 99 将端口划分到本征vlan99 中LS2(config-if)#no shLS2(config-if)#exitLS2(config)#int fa0/3 进入端口LS2(config-if)#switchport mode trunkLS2(config-if)#switchport trunk native vlan 99 将端口划分到本征vlan99 中LS2(config-if)#no shLS2(config-if)#exitLS2(config)#int fa0/4 进入端口LS2(config-if)#switchport mode trunkLS2(config-if)#switchport trunk native vlan 99 将端口划分到本征vlan99 中LS2(config-if)#no shLS2(config-if)#exitLS2(config)#int fa0/5 进入端口LS2(config-if)#sw mo trLS2(config-if)#sw tr native vlan 99 将端口划分到本征vlan99 中LS2(config-if)#no shLS2(config-if)#exitLS2(config)#int fa0/11 进入端口LS2(config-if)#sw mo acLS2(config-if)#sw ac vlan 10 将端口划分到接口模式的vlan10中LS2(config-if)#no shLS2(config-if)#exitLS2(config)#int fa0/18 进入端口LS2(config-if)#sw mo ac 将端口划分到接口模式的vlan20中LS2(config-if)#sw ac vlan 20LS2(config-if)#no shLS2(config-if)#exitLS2(config)#int fa0/6 进入端口LS2(config-if)#sw mo acLS2(config-if)#sw ac vlan 30 将端口划分到接口模式的vlan30中LS2(config-if)#no shLS3的配置:Switch>enSwitch#conf tEnter configuration commands, one per line. End with CNTL/Z.Switch(config)#host LS3 重命名LS3(config)#no ip domain-lookup 取消域名查找LS3(config)#line console 0 设置console 0端口LS3(config-line)#password cisco 设置console 0的密码LS3(config-line)#loginLS3(config-line)#exitLS3(config)#enable secret class 设置密文密码LS3(config)#line vty 0 4 设置vty 0 4端口LS3(config-line)#password cisco 设置vty端口的密码LS3(config-line)#loginLS3(config-line)#exitLS3(config)#int vlan 99LS3(config-if)#ip add 172.17.99.13 255.255.255.0 设置本征vlan99LS3(config-if)#no shLS3(config)#vtp mode client 设置vtp模式Setting device to VTP CLIENT mode.LS3(config)#vtp domain Lab5 设置vtp模式的域名Changing VTP domain name from NULL to Lab5LS3(config)#vtp password ciscoSetting device VLAN database password to cisco 设置vtp模式的密码LS3(config)#int fa0/1 进入端口LS3(config-if)#switchport mode trunkLS3(config-if)#switchport trunk native vlan 99 将端口划分到本征vlan99 中LS3(config-if)#no shLS3(config-if)#exitLS3(config)#int fa0/2 进入端口LS3(config-if)#sw mo trLS3(config-if)#sw tr native vlan 99 将端口划分到本征vlan99 中LS3(config-if)#no shLS3(config-if)#exitLS3(config)#int fa0/3 进入端口LS3(config-if)#sw mo trLS3(config-if)#sw tr native vlan 99 将端口划分到本征vlan99 中LS3(config-if)#no shLS3(config-if)#exitLS3(config)#int fa0/4 进入端口LS3(config-if)#sw mo trLS3(config-if)#sw tr native vlan 99 将端口划分到本征vlan99 中LS3(config-if)#no shLS3(config-if)#exitLS3(config)#int fa0/5 进入端口LS3(config-if)#sw mo trLS3(config-if)#sw tr native vlan 99 将端口划分到本征vlan99 中LS3(config-if)#no sh测试结果:ls1>ping 172.17.99.13Type escape sequence to abort.Sending 5, 100-byte ICMP Echos to 172.17.99.13, timeout is 2 seconds:!!!!!Success rate is 100 percent (5/5), round-trip min/avg/max = 4/25/31 msls1>ping 172.17.99.12Type escape sequence to abort.Sending 5, 100-byte ICMP Echos to 172.17.99.12, timeout is 2 seconds:!!!!!Success rate is 100 percent (5/5), round-trip min/avg/max = 31/31/32 ms实训七2:配置STP学号:28姓名:刘丹指导老师:董会国实训时间:2011-5-41.实验目的通过本实验可以掌握:(1)、检查STP的默认状态(2)、配置根桥(3)、配置备用根桥(4)、完成STP配置2.实验拓扑:3.实验步骤:C1的配置:Switch>enSwitch#conf t 进入全局配置模式Enter configuration commands, one per line. End with CNTL/Z. Switch(config)#host C1 重命名为C1C1(config)#spanning-tree vlan 1 priority 4096 修改优先级为4096 C1(config)#exitC2的配置:Switch>enSwitch#conf tEnter configuration commands, one per line. End with CNTL/Z. Switch(config)#host C2C2(config)#spanning-tree vlan 1 priority 8192修改优先级为8192 C2(config)#exitD1的配置:Switch>enSwitch#conf tEnter configuration commands, one per line. End with CNTL/Z. Switch(config)#host D1D1(config)#spanning-tree vlan 1 priority 12288修改优先级为12288 D1(config)#D2的配置:Switch>enSwitch#conf tEnter configuration commands, one per line. End with CNTL/Z. Switch(config)#host D2D2(config)#spanning-tree vlan 1 priority 12288修改优先级为12288D3的配置:Switch>enSwitch#conf tEnter configuration commands, one per line. End with CNTL/Z. Switch(config)#host D3D3(config)#spanning-tree vlan 1 priority 12288 修改优先级为12288 D3(config)#D4的配置:Switch>enSwitch#conf tEnter configuration commands, one per line. End with CNTL/Z. Switch(config)#host D4D4(config)#spanning-tree vlan 1 priority 12288修改优先级为12288 D4(config)#实训八配置无线LAN 接入一、学习目标∙将无线路由器添加到网络中∙配置Linksys Setup(设置)选项卡中的选项∙配置Linksys Wireless(无线)选项卡中的选项∙配置Linksys Administration(管理)选项卡中的选项∙为PC 添加无线连接∙测试连通性二、拓扑结构三、实训步骤步骤1. 将一台Linksys WRT300N 设备添加到网络中。
7-7 树与生成树
实例
例 设G为n(n≥5)阶简单图,证明 或G的补图中必含 为 ( )阶简单图,证明G或 的补图中必含 圈。 设简单图G和其补图的边数分别为 和其补图的边数分别为m和 , 证 设简单图 和其补图的边数分别为 和m’,则 m+m’= n(n-1)/2 根据鸽巢原理, 与其补图必有一个边数 与其补图必有一个边数≥ 根据鸽巢原理,G与其补图必有一个边数 n(n-1)/4 , 不妨设G的边数 下面证G中必含有圈 中必含有圈。 不妨设 的边数m≥ n(n-1)/4 ,下面证 中必含有圈。 的边数 假设G中没有圈, 个连通分支, 假设 中没有圈,设G有w个连通分支,则每个连通分支 中没有圈 有 个连通分支 都是树, 分别为第i个连通分支 都是树,mi=ni-1,i=1,…,w,mi,ni分别为第 个连通分支 , , 的边数与阶数, 的边数与阶数,所以有
实例
下面两个正整数序列中, 例 下面两个正整数序列中,哪个能充当无向树的度 数序列?若能画出2棵非同构的无向树 棵非同构的无向树。 数序列?若能画出 棵非同构的无向树。 (1)1,1,1,1,2,3,3,4 ) (2)1,1,1,1,2,2,3,3 ) 解 (1)不可以,因为所有度数之和等于 ,而结点 )不可以,因为所有度数之和等于16, 数为8,假设可以构成树,则度数之和应为14, 数为 ,假设可以构成树,则度数之和应为 ,所 以不可以。 以不可以。 (2)可以。 )可以。
Go
(1)⇒(2)的证明 ⇒ 的证明
如果T是无回路的连通图, 中无回路且e=v− , 如果 是无回路的连通图,则G中无回路且 −1,其 中无回路且 是边数, 中e是边数,v是结点数 是边数 是结点数 归纳法。 证明 归纳法。 当v=2时,因为 连通无回路, 连通无回路, 时 因为T连通无回路 所以只有e=1,故e=v-1成立。 , 成立。 所以只有 成立 假设v=k-1时命题成立,当v=k时, 时命题成立, 假设 时命题成立 时 是无回路且连通, 的结点u, 因T是无回路且连通,则至少有一个度为 的结点 , 是无回路且连通 则至少有一个度为1的结点 设与其关联的边为(u,w),删去u,得到一个 个结点 ,删去 ,得到一个k-1个结点 设与其关联的边为 的连通无向图T’, 的连通无向图 ,
生成树实验报告
一、实验目的1. 理解生成树的概念和作用;2. 掌握Prim算法和Kruskal算法实现生成树的方法;3. 分析算法的时间复杂度和空间复杂度;4. 提高算法设计与分析能力。
二、实验原理生成树(Spanning Tree)是一个无向图的所有顶点构成的一棵树,且该树包含了原图的所有顶点。
生成树在计算机网络、电路设计等领域具有广泛的应用。
在无向图中,如果任意两个顶点之间都存在路径,则称该图是连通的。
对于连通图,一定存在一棵生成树。
Prim算法和Kruskal算法是两种常见的生成树算法,它们分别采用贪心策略和最小生成树算法实现。
三、实验内容1. Prim算法实现生成树(1)初始化:设置一个数组来记录每个顶点与当前生成树的连接情况,以及一个数组来记录每个顶点到生成树的距离。
(2)选择一个顶点作为起始顶点,将其距离设置为0,其他顶点距离设置为无穷大。
(3)在当前生成树上选择距离最小的顶点,将其加入生成树,并将该顶点与其他顶点的距离更新。
(4)重复步骤(3),直到所有顶点都被加入生成树。
2. Kruskal算法实现生成树(1)将所有边按照权值从小到大排序。
(2)创建一个并查集,用于判断两个顶点是否属于同一个集合。
(3)遍历排序后的边,对于每条边,判断其两个顶点是否属于同一个集合:(a)如果属于同一个集合,则跳过该边;(b)如果不属于同一个集合,则将这条边加入生成树,并将两个顶点所属的集合合并。
(4)重复步骤(3),直到生成树包含所有顶点。
四、实验步骤1. 创建一个无向图,包含若干顶点和边。
2. 使用Prim算法实现生成树,记录算法运行时间。
3. 使用Kruskal算法实现生成树,记录算法运行时间。
4. 分析两种算法的时间复杂度和空间复杂度。
五、实验结果与分析1. Prim算法实现生成树(1)顶点集合:V = {A, B, C, D, E, F}(2)边集合:E = {(A, B, 1), (A, C, 3), (A, D, 2), (B, C, 2), (B, D, 2), (C, D, 1), (C, E, 4), (D, E, 3), (D, F, 2), (E, F, 1)}(3)Prim算法运行时间:0.001秒2. Kruskal算法实现生成树(1)顶点集合:V = {A, B, C, D, E, F}(2)边集合:E = {(A, B, 1), (A, C, 3), (A, D, 2), (B, C, 2), (B, D, 2), (C, D, 1), (C, E, 4), (D, E, 3), (D, F, 2), (E, F, 1)}(3)Kruskal算法运行时间:0.001秒通过实验,我们可以得出以下结论:1. Prim算法和Kruskal算法均可以有效地实现生成树,且在时间复杂度和空间复杂度上表现良好。
生成树协议实验总结
生成树协议实验总结
嘿,朋友们!今天我来给大家分享一下生成树协议实验的总结。
一开始接触这个实验的时候,我就像只无头苍蝇,完全不知道从哪儿下手!(就好比你突然被扔到一个陌生的森林里,迷茫得很!)好在有老师和同学们的帮助。
我们小组在一起讨论得那叫一个火热,“这根线该接到哪儿啊?”“这个参数怎么设置呀?”(你一言我一语的,别提多热闹了。
)
真正开始做实验了,才发现每一步都不简单。
一会儿这里出错,一会儿那里又不对,真是急死人了!(感觉就像在走迷宫,老是碰到死胡同。
)但咱们可没轻易放弃!遇到问题就解决问题呗,我们一点一点地调试,一遍一遍地尝试。
记得有一次,就差那么一点点,眼看着就要成功了,结果又出了岔子,哎哟,那心情,简直低落到谷底了!(就像努力爬上山顶,却又一下子滑了下来。
)但是大家都相互打气,“没关系,再来一次!”终于,功夫不负有心人,我们成功啦!那种喜悦,真的无法用言语来形容!(就好像在黑暗中突然看到了曙光!)
通过这个实验,我深刻地明白了什么叫团队合作,每个人都不可或缺,大家一起努力,才能攻克难关。
(这就好比一艘船,只有大家齐心协力划桨,才能在大海中顺利前行!)而且做事情真的要有耐心,不能着急,一步一个脚印地走。
我觉得生成树协议实验真的让我收获满满,不仅学到了知识和技能,更重要的是体会到了和大家一起奋斗的快乐!这就是我的生成树协议实验总结,你们觉得怎么样呢?。
生成树协议实验报告演示文稿
生成树协议实验报告演示文稿一、引言生成树协议是计算机网络中用于解决广播风暴问题的一种重要协议。
通过构建一棵生成树,有效地控制广播消息的传输范围,提高网络性能和效率。
本文将介绍生成树协议的原理、实验目的、实验方法和实验结果,并对实验进行总结和展望。
二、生成树协议原理生成树协议是通过选举一个根节点,并由根节点向外扩展生成树的方式来限制广播消息的传播范围。
其中,有两种常用的生成树协议,即STP(Spanning Tree Protocol)和RSTP(Rapid Spanning Tree Protocol)。
STP协议通过选举根节点,然后每个节点依次按照一定规则选择自己的父节点,最终形成一棵生成树。
RSTP协议在STP基础上做了优化,加快了生成树的计算速度和收敛速度。
生成树协议的核心思想是,通过禁用某些链路,将网络构建成一个无环的拓扑结构,从而避免广播消息在网络中无限传播,造成网络拥塞。
三、实验目的本实验旨在通过搭建局域网实验环境,模拟生成树协议的运行过程,深入理解生成树协议的原理和工作机制,并验证生成树协议对于网络性能的优化效果。
四、实验方法1. 搭建实验环境:选取适当的网络拓扑结构,配置所需设备和软件环境。
2. 研究生成树协议:详细了解STP和RSTP协议的工作原理和消息交换过程,分析其优缺点。
3. 实验操作:在实验环境中运行生成树协议,观察生成树的构建过程和拓扑结构变化。
4. 测试性能:通过发送广播消息,记录网络拓扑变化和节点之间的通信情况,测试生成树协议对于网络性能的改善效果。
5. 结果分析:根据实验数据和观察结果,分析生成树协议的性能表现和优化效果。
五、实验结果经过实验测试和数据统计,我们得到以下实验结果:1. 生成树协议能够有效地限制广播消息的传播范围,避免广播风暴问题的发生。
2. STP协议的收敛速度较慢,当网络拓扑结构变化频繁时,可能导致网络性能下降。
3. RSTP协议通过优化生成树的计算和收敛过程,提高了网络的响应速度和性能稳定性。
最小生成树算法实验报告_2
作业1最小生成树的生成算法1.1算法应用背景在实际生活中, 图的最小花费生成树问题有着广泛的应用。
例如, 用图的顶点代表城市, 顶点与顶点之间的边代表城市之间的道路或通信线路, 用边的权代表道路的长度或通信线路的费用, 则最小花费生成树问题, 就表示为城市之间最短的道路或费用最小的通信线路问题。
其中普里姆算法是使用贪婪法策略设计的典型算法。
1.2算法原理在一给定的无向图G = (V, E) 中, (u, v) 代表连接顶点u 与顶点v 的边(即), 而w(u, v) 代表此边的权重, 若存在T 为E 的子集(即)且为无循环图, 使得的w(T) 最小, 则此T 为G 的最小生成树。
许多应用问题都是一个求无向连通图的最小生成树问题。
例如:要在n个城市之间铺设光缆, 主要目标是要使这n 个城市的任意两个之间都可以通信, 但铺设光缆的费用很高, 且各个城市之间铺设光缆的费用不同;另一个目标是要使铺设光缆的总费用最低。
这就需要找到带权的最小生成树。
1.3算法描述1)最小生成树之普里姆算法描述:令G=(V,E,W), 为简单期间, 令顶点集为V={0,1,2…, n-1}。
假定与顶点i, j相关联的边为ei, j, ei, j的权用c[i][j]表示, T是最小花费生成树的边集。
这个算法维护两个顶点集合S 和N, 开始时: 令T=Ф,S={0},N=V-S。
然后, 进行贪婪选择, 选取i∈S, j∈N, 并且c[i][j]最小的i和j;并使S=S∪S{j},N=N-{j},T=T∪{ei, j}.重复上述步骤, 直到N为空, 或找到n-1条边为止。
此时, T中的边集, 就是所要求取的G中的最小花费生成树。
由此, 可描述普里姆算法的步骤如下:(1)T=Ф, S={0},N=V-S。
(2)如果N为空, 算法结束;否则, 转步骤(3)。
(3)寻找使i∈S, j∈N, 并且c[i][j]最小的i和j。
(4)S=S∪S{j},N=N-{j},T=T∪{ei, j};转步骤(2)。
生成树协议(STP)基本知识及实验(使用eNSP)
⽣成树协议(STP)基本知识及实验(使⽤eNSP)1、基本知识--摘⾄《⽹络之路--交换专题》(1)⽣成树的作⽤:在链路层消除环路上可能出现的⼴播风暴。
(2)⽣成树的⼯作由三部分组成:选举过程、拓扑计算、端⼝⾏为确定。
选举过程:在⼆层⽹络中选举⼀个⽹桥作为根桥,⽤于指挥整⽹设备协同⼯作。
根桥只是负责统⼀计算的规则。
根桥统⼀⽹络中所有⽹桥的⾏为准则的原理:通过在某个恰当位置阻塞端⼝来阻⽌环路的发⽣。
从⼀台⽹桥的⾓度来说,它通过这样的法则进⾏判断,如果到达⽹络中的某⼀⽹桥只有⼀条路径,那么必定不存在环路;如果到达某⼀⽹桥的路径有两条或者多条,那么这两台⽹桥之间存在环路,只能保持⼀条通路。
(3)根桥的选举⽅式根桥是通过⽹络中所有⽹桥间相互⽐较产⽣的。
根桥只能由⽹络中桥ID最⼩者担当。
⼀开始时把⾃⼰当作根桥,根桥ID就是⾃⼰的桥ID,然后通过BPDU和⾃⼰的邻居交换拓扑信息,如果邻居的根桥ID⼩于⾃⼰的桥ID,则把邻居当作⾃⼰的根桥,然后向其他邻居通告这个新的根桥信息,直到⽹络中所有⽹桥的根桥ID都⼀样时,根桥就被选举了出来。
桥ID有8个字节,由两部分组成,分别是2字节的桥优先级字段和6字节的桥MAC字段。
桥优先级字段可⼿⼯设置,默认为0x8000;桥MAC即⽹桥的物理MAC。
(4)使⽹络中的⽹桥和根桥保持统⼀的⽅式通过⼀个独特的消息机制实现,当根桥被选举出来后,根桥会周期性的向所有邻居发送BPDU报⽂,这个周期被称为Hello Time,默认设置为2s。
邻居收到根桥发送来的BPDU 时,会更新⾃⼰的状态和定时器,然后转发出去。
在⽣成树协议中(STP)只有根桥有主动发送BPDU的权⼒。
快速⽣成树协议(RSTP)中所有⽹桥都会按照Hello Time的时间间隔主动从指定端⼝发送BPDU。
⽣成树协议中的BPDU报⽂有两种,⼀个被称为配置BPDU(Configuration BPDU),⼀种被称为拓扑变化通知BPDU(Topology Change Notification BPDU 或叫 TCN BPDU)配置BPDU报⽂格式如下:端⼝ID占2个字节,和桥ID类似分为两个部分,前8bits为优先级,默认值为0x80,可⼿⼯修改,后8bits为端⼝号,由设备指定,保证每个端⼝都不⼀样。
生成树实验报告总结
一、实验目的本次实验的主要目的是通过实际操作加深对生成树概念的理解,掌握生成树的构建方法,包括Kruskal算法和Prim算法,并学会使用程序解决实际问题。
二、实验内容1. Kruskal算法Kruskal算法是一种基于边优先的策略来构建最小生成树的算法。
它将所有边按照权值从小到大排序,然后依次选择权值最小的边,同时检查新加入的边是否会构成环。
若不会构成环,则将这条边加入最小生成树中。
2. Prim算法Prim算法是一种基于顶点优先的策略来构建最小生成树的算法。
它从一个顶点开始,逐步扩大最小生成树,直到所有顶点都被包含。
在每次迭代中,算法都会选择一个与已构建的最小生成树连接的最小权值边。
三、实验步骤1. 设计实验环境(1)搭建实验平台:使用C++编程语言,实现Kruskal算法和Prim算法。
(2)设计数据结构:邻接矩阵和邻接表。
2. 编写算法代码(1)Kruskal算法:```cpp// Kruskal算法实现void Kruskal(int n, adjmatrix a) {int i, j, k, u, v;for (i = 1; i <= n; i++) {for (j = i + 1; j <= n; j++) {if (a[i][j] != 0 && a[i][j] != INF) {// 初始化并查集 u = Find(i);v = Find(j);// 合并集合Union(u, v);}}}}```(2)Prim算法:```cpp// Prim算法实现void Prim(int n, adjmatrix a) { int i, j, k, u;int key[MaxNum];int inTree[MaxNum];for (i = 1; i <= n; i++) { key[i] = INF;inTree[i] = false;}key[1] = 0;inTree[1] = true;while (true) {k = -1;for (i = 1; i <= n; i++) {if (!inTree[i] && key[i] < INF) {if (k == -1 || key[i] < key[k]) {k = i;}}}if (k == -1) {break;}inTree[k] = true;for (j = 1; j <= n; j++) {if (!inTree[j] && a[k][j] != INF && a[k][j] < key[j]) { key[j] = a[k][j];}}}}```3. 编译并运行程序(1)使用C++编译器编译代码。
生成树协议的实验报告
实验名称:生成树协议的配置实验目的:掌握生成树的工作原理,手动建立根网桥、备份网桥,怎样选择根端口,指定端口的方法。
实验人:初晓一检查初使的生成树特权模式s how spanning-tree查看接口的汇总情况特权模式show spanning-tree summary。
手动的建立根网桥1、通过命令建立根网桥2、更改网桥优先级建立根网桥做实验之前小凡软件的准备:应该是3个当时忘点了就截图了实验一:当服务器不想让交换机C通过交换机B传送数据,占用他的带宽。
原先是在BC 段的交换机C的端口阻塞,,交换机B端口是指定端口,怎么做让他们接口颠倒过来,交换机C的接口是指定端口,而交换机B是堵塞端口。
(相当于指定端口怎么选择)通过修改端口优先级。
把交换机A和C之间的优先级改成小于19并且不是0(如果是0就会影响交换机B的根端口的选择)和19,优先级越高,桥ID越低,就是指定端口。
所以交换机C的接口是指定端口,而交换机B是堵塞端口。
这样交换机A和交换机C的开销小,交换机C就会走那一端.。
结果是F0/1是处于阻塞状态,F0/2是转发状态实验二:193919原先让pc机走的是交换机AC段。
BC段交换机C的接口是堵塞接口,AC段交换机C的接口是根端口,想让连接交换机C的PC机走交换机B到C段,不让他走交换机AC段。
做法就是BC段的交换机C的接口是根端口,AC段交换机C的接口是堵塞接口。
就是根端口的选择。
修改开销链路大于38,开销大,优先级低,桥ID越大就变成阻塞端口就,AC段的开销大所以AC段交换机C的端口就是堵塞端口,就不会走AC段修改端口成本查看端口信息先看原型什么也没做做完以后的。
生成树实训的实验报告
一、实验目的通过本次生成树实训,加深对生成树概念的理解,掌握生成树的构建方法,学习使用网络设备配置生成树协议,并分析生成树在网络中的重要作用。
二、实验环境1. 实验设备:两台交换机、一台计算机、网线。
2. 实验软件:网络仿真软件(如GNS3)或实际网络设备。
三、实验内容1. 了解生成树的基本概念和作用。
2. 学习生成树的构建方法,包括STP(Spanning Tree Protocol)和RSTP(Rapid Spanning Tree Protocol)。
3. 使用网络设备配置生成树协议。
4. 分析生成树在网络中的重要作用。
四、实验步骤1. 了解生成树的基本概念和作用生成树是一种无环的连通子图,它包含一个图的所有节点,但不包含任何环。
在计算机网络中,生成树主要用于防止网络中的环路,避免广播风暴和网络性能下降。
2. 学习生成树的构建方法生成树的构建方法主要有以下两种:(1)STP(Spanning Tree Protocol)STP是一种基于桥优先级的生成树协议。
在STP中,每个交换机都有一个桥优先级,该优先级由桥ID(桥优先级+MAC地址)决定。
桥ID越小,优先级越高。
STP通过以下步骤构建生成树:- 选择根桥:所有交换机通过比较桥ID确定根桥。
- 计算每个交换机的端口角色:根端口、指定端口和非指定端口。
- 选择每个交换机的根端口和指定端口。
(2)RSTP(Rapid Spanning Tree Protocol)RSTP是一种改进的STP协议,它提高了网络恢复速度。
RSTP通过以下步骤构建生成树:- 立即阻塞所有端口:所有端口初始时处于阻塞状态。
- 立即转发端口:当检测到端口状态变化时,立即将端口转换为转发状态。
- 优化端口状态转换:RSTP使用端口状态转换时间优化网络恢复速度。
3. 使用网络设备配置生成树协议以RSTP为例,配置生成树协议的步骤如下:(1)在交换机上配置RSTP协议:```Switch> enableSwitch# configure terminalSwitch(config)# spanning-tree mode rstp```(2)查看交换机生成树状态:```Switch(config)# show spanning-tree summary```4. 分析生成树在网络中的重要作用生成树在网络中的重要作用如下:- 防止环路:生成树通过阻塞部分端口,避免网络中的环路,从而防止广播风暴和网络性能下降。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1. 实验报告如有雷同,雷同各方当次实验成绩均以0分计。
2. 当次小组成员成绩只计学号、姓名登录在下表中的。
3. 在规定时间内未上交实验报告的,不得以其他方式补交,当次成绩按0分计。
4. 实验报告文件以PDF 格式提交。
【实验题目】生成树协议
【实验目的】理解快速生成树协议的配置及原理。
使网络在有冗余链路的情况下避免环路的产生,避免广播风暴等。
【实验内容】
(1)完成实验教程实例3-8的实验,回答实验提出的问题及实验思考。
(P117) (2)抓取生成树协议数据包,分析桥协议数据单元(BPDU )。
(3)在实验设备上查看VLAN 生成树,并学会查看其它相关重要信息。
【实验要求】
一些重要信息需给出截图。
注意实验步骤的前后对比!
【实验记录】(如有实验拓扑请自行画出, 要求自行画出拓扑图) (1) 实例3-8
实验拓扑图如下:
院系 班 级
组长 学号 学生
实验分工
陈 刘 3-8 、
宗良
警示
步骤0:
将PC1和PC2配置好IP地址和掩码后按照拓扑图连接实验设备。
在PC1上启动Wireshark 软件观察包的数量变化如下:
此时已经产生了广播风暴。
两台交换机此时的生成树配置信息如下:
无生成树配置信息。
用PC1pingPC2时包增长情况如下:
可见此时包增长的更快,已经产生广播风暴,但是PC并未发生死锁。
步骤1:
配置交换机A:
步骤2:
配置交换机B:
步骤3:
配置两交换机的快速生成树协议:
再按照拓扑图连接实验设备,此时包增长情况如下:
此时两PC间可以相互ping通,且无广播风暴。
由此可见生成树协议的作用为避免网络中存在交换环路的时候产生广播风暴,确保在网络中有环路时自动切断环路。
步骤4:验证测试
SwitchA的生成树信息:
SwitchB的生成树信息:
SwitchB中RootCost和RootPort值都为0,因此SwitchB为根交换机。
根端口为G0/1。
步骤5:设置交换机的优先级
将SwitchA的优先级设置为4096
步骤6: 验证SwitchA的优先级
当两个端口都连在一个共享介质上,交换机会选择一个高优先级的端口进入forwarding状态,低优先级的端口进入discarding状态。
步骤7:验证交换机SwitchB的G0/1,G0/2,端口的状态
由上图可知,SwitchB的G0/1端口处于转发状态,G0/2端口处于组阻塞状态。
步骤8:
步骤7后每个交换机的信息如下:
两交换机G0/1端口链路down之后SwitchB的端口2信息如下:
此时每个交换机的信息:
与之前相比,SwitchB的RootPort变为G0/2,其他均未变化。
说明一条链路down 之后,生成树协议启用了备用端口使得整个链路恢复数据传输。
SwitchA和SwitchB之间的一条链路down掉时,PC1和PC2仍然能相互ping通,但会丢包:
说明生成树在链路断掉后重新构筑,原先阻塞的链路已经变为转发状态,一个端口断开时会将流量切换到另一个端口上,中间有短暂的联路中段,丢包数为一个。
此时每个交换机的生成树信息如下:
与步骤8的(1)相比,SwitchB的根端口变为G0/2,转换时间大约为2秒。
实验思考
1)在实验开始产生广播风暴时,实验设备中存在环路,在生成树协议开启后不在存在环路,因为广播风暴现象已经消除。
2)冗余链路会引起MAC地址表不稳定和多帧复制等问题。
MAC表不稳定
当PC1发送数据到PC2时,如果Switch A和Switch B也是刚刚启动,这时候它们MAC表里都没有PC2的MAC地址
收到数据包后,Switch A就会广播该数据包,并把源MAC添加到MAC表,然后认为PC1在端口0
收到数据包后,Switch B就会广播该数据包,并把源MAC添加到MAC表,然后认为PC1在端口0
当Switch B在收到Switch A的广播包后又认为PC1在端口1
当Switch A在收到Switch B的广播包后又认为PC1在端口1
这时就会造成交换机MAC表的不稳定
多帧复制
在冗余链路中出现广播风暴后,当PC1向PC2发送数据报时,如果两个交换机刚刚启动,这时候它们的MAC地址表里都没有PC2的MAC地址,SwitchA将会广播该数据包,SwitchB收到SwichA的广播包之后发现自己的MAC地址表里也没有PC2的MAC地址,就会继续广播该数据包,如此循环PC2就会收到多个同样的数据包造成多帧复制。
(2)分析生成树协议数据包
STP协议传输过程中wireshark捕获到的STP数据包如下:
具体信息如下(frame1):
具体信息:
DMA 01:80:v2:00:00:00
SMA 58:69:6c:15:57:36
L/T 39
LLC Header
Payload信息如下:
具体信息如下:
协议号 0x0000
版本号 2
报文类型 0x02
标记 0x7c
根网桥号 4096/58:69:6c:15:57:36 根路径成本 0
发送网桥ID 4096/58:69:6c:15:57:36
端口ID 0x8003
呼叫时间 2s
转发延迟 15s
(3)VLAN生成树其它相关重要信息
全部实验步骤结束后的交换机生成树配置信息如下:
Switch A:
STP版本 RSTP
STP协议运行状态运行
最大生存时间 20
呼叫时间 2s
转发延迟 15s
网桥最大生存时间 20
网桥呼叫时间 2s
网桥转发延迟 15s
最大跳转次数 20
路径成本模式长
BPDUGuard 未运行
BPDUFilter 未运行
LoopGuardDef 未运行
网桥地址 5869.6c15.5736
优先级 4096
拓扑结构变动时间 1分4秒
拓扑结构变动数 3
指派端口 4096.5869.6c15.5736
根路径成本 0(本交换机为根)
根端口 0(本交换机为根)
Switch B
STP版本 RSTP
STP协议运行状态运行
最大生存时间 20
呼叫时间 2s
转发延迟 15s
网桥最大生存时间 20
网桥呼叫时间 2s
网桥转发延迟 15s
最大跳转次数 20
路径成本模式长
BPDUGuard 未运行
BPDUFilter 未运行
LoopGuardDef 未运行
网桥地址 5869.6c15.5730
优先级 32768
拓扑结构变动时间 46秒
拓扑结构变动数 6
指派端口 4096.5869.6c15.5736
根路径成本 20000
根端口 Gi0/2
交换机的端口状态:
Gi0/1:
默认端口加速不可用
操作端口加速不可用
自动配置默认端口不可用
自动配置操作端口不可用
默认连接类型自动
操作连接类型点对点
BPDUGuard 未运行
BPDUFilter 未运行
端口监视模式无
端口状态转发状态
端口优先级 128
根指派端口 32768.5869.6c15.5730
指派成本 0
指派网桥 32768.5869.6c15.5730
指派端口优先级 128
指派端口号 1
转发跳转数 2
默认路径成本 20000
操作路径成本 20000
矛盾状态正常
Gi0/2
默认端口加速不可用
操作端口加速不可用
自动配置默认端口不可用
自动配置操作端口不可用
默认连接类型自动
操作连接类型点对点
BPDUGuard 未运行
BPDUFilter 未运行
端口监视模式无
端口状态阻塞状态
端口优先级 128
根指派端口 32768.5869.6c15.5730
指派成本 0
指派网桥 32768.5869.6c15.5730
指派端口优先级 128
指派端口号 2
转发跳转数 0
默认路径成本 20000
操作路径成本 20000
矛盾状态正常
端口角色替换端口。