本实验只讨论CST(公共的生成树)

一、实验前先理解生成树决策的4 个步骤:

二、实验拓扑

1. 实验描述:

由于业务的要求,要有可靠的链路,要对链路实现冗余,但链路的冗余有可能给网络带来广播风暴,重复帧,MAC 地址表不稳定的问题,Spanning Tree protocol 在可以实现冗余的同时又可以解决以上三个问题.

2.实验1:验证CST(公共生成树)

CST 是IEEE 在虚拟局域网上处理生成树的特有方法,这是一种VLAN 解决方案,称为单一或者公共生成树。生成树协议运行在VLAN1 即缺省的VLAN 上。所有的交换机都举出同一个根网桥,并建立与该根网桥的关系

CISCO 的交换机默认就启用了生成树Spanning Tree protocol,不需配置就可以实现链路冗余能力.

实验拓扑:

实验

实验拓扑描述:

在以上交换网络拓扑中只有交换机默认存在的 VLAN1,交换机默认情况下所有端口属于VLAN1。

根据以上拓扑,也就是只有 VLAN1 存在的情况下我们来验证CST(公共生成树)

建议手工配置 SW1,SW2 的F0/23,F0/24 接口的trunk 模式

配置 SW1

SW1(config)#int range fastEthernet 0/23 – 24 -----注:进入一个接口范围,同时对多个端口进行配置

SW1(config-if-range)#switchport mode trunk

SW1(config-if-range)#no shutdown

配置SW2

SW2(config)#int range fastEthernet 0/23 - 24

SW2(config-if-range)#switchport mode trunk

SW2(config-if-range)#no shutdown

SW1 上用show spanning-tree 验证生成树:

SW1#show spanning-tree

VLAN0001

Spanning tree enabled protocol ieee

Root ID Priority 32769

Address 0008.20ff.6400

This bridge is the root ------------------------注: SW1 为根网桥

Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec

-------------注:根交换机的网桥ID

Bridge ID Priority 32769 (priority 32768 sys-id-ext 1)

Address 0008.20ff.6400

Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec

Aging Time 15 ------注: SW1 的网桥ID

Interface Role Sts Cost Prio.Nbr Type

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

Fa0/23 Desg FWD 19 128.23 P2p

-------------------------------注: Desg:表示F0/23 为指定端口

FWD 表示:端口的生树成状态

为转发状态表示 F0/23 到根网桥

的花费为 19 128.23:这里128 表

示端口优先级,23 表示端口号,

这里可以先不用考虑这个。

Fa0/24 Desg FWD 19 128.24 P2p

<Desg 表示指定端口>

注: CST 是IEEE 在虚拟局域网上处理生成树的特有方法,这是一种VLAN 解决方案,称为单一

或者公共生成树。生成树协议运行在VLAN1 即缺省的VLAN 上。

SW2 上用show spanning-tree 验证生成树:

SW2#show spanning-tree

VLAN0001

Spanning tree enabled protocol ieee

Root ID Priority 32769 -----------------------------注:根交换机的网桥ID

Address 0008.20ff.6400

Cost 19

Port 23 (FastEthernet0/23)

Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec

Bridge ID Priority 32769 (priority 32768 sys-id-ext 1)

Address 000d.bce7.5940

Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec

Aging Time 300 ------------------- SW2 的网桥ID

Interface Role Sts Cost Prio.Nbr Type

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

Fa0/23 Root FWD 19 128.23 P2p

Fa0/24 Altn BLK 19 128.24 P2p

注:解释:F0/24 为altn(后备端口),端口的生成树状态为BLK(blocking)状态,Root 表示根端口,Altn 表示

后备端口。

回顾生成树决策的4 个步骤:

通过在 SW1,SW2 上show spanning-tree 得到以下结果.

SW1(根交换机)

F0/23-------------------指定端口

F0/24-------------------指定端口

SW2(非根交换机)

F0/23-------------------根端口

F0/24-------------------blocking 端口

生成树决策过程:

·选根交换机:

One root bridge per network(每个网络只有一个根桥)

根桥的选举:Lowest BID (最小的BID)

SW1 的竞选根交换机参数:

Bridge ID: Priority 32768

MAC Address 0008.20ff.6400

SW2 的竞选根交换机参数:

Bridge ID: Priority 32768

MAC Address 000d.bce7.5940

选择根交换机第一个条件先看优先级 Priority 再看MAC 地址,缺省SW1 和SW2 的优先级都是32768,通

过优先级无法选择根交换机,只能通过MAC 地址选择,交换机的MAC 地址可以通过show version 查看.

SW1 的MAC 地址0008.20ff.6400 比SW2 的MAC 地址000d.bce7.5940 小,越小越优先,所以SW1 为根

交换机

·选根端口:

One root port per nonroot bridge(每个非根桥都有一个根端口)

根端口(RP):Lowest path cost to root bridge 每个非根桥有且只有一个根端口,非根桥到达根桥所需

开销最小的那个端口即为根端口。(可转发流量)

选举RP/DP的方法:(RP—根端口 ,DP—指定端口)

1.Lowest RID(最小的RID) 这里是(根桥)的BID

2.Lowest path cost to root bridge(到达根的最小路径开销)

3.lowest sender BID (最小的发送BID)

4.Lowest sender port ID 当两台交换机之间有两条线路直连时会用到这一项来选 (比如本实验中

批定端口的选择就会用到这一项)

SW1 为根桥,不会有根端口,因为只有非根桥有根端口:

SW2 为非根桥,根端口肯定是F0/23 ,F0/24 的其中一个:

F0/23 ,F0/24 这个两个端口选举根端口的条件: (非根桥到达根桥所需开销最小的那个端口即为根端口)

F0/23 到达根网桥的开销(cost)为19

F0/24 到达根网桥的开销(cost)为19

通过非根桥到达根桥所需开销最小这个条件没法选出根端口,只能再看生成树决策的第3个条件即

lowest sender BID (最小的发送BID)

通过lowest sender BID (最小的发送BID)选举,但F0/23,F0/24 都是在SW2(非根桥)上的两个端口

lowest sender BID 都是:

Bridge ID: Priority 32768

MAC Address 000d.bce7.5940

所以这里无法通过lowest sender BID选出根端口,只能再看生成树决策的第4个条件Lowest sender port

ID,当两台交换机之间有两条线路直连时会用到这一项(端口号越小越优先)

F0/23比F0/24小,所以F0/23优先.最终可以选出根端口F0/23

SW2上剩下F0/24的就是blocking端口

在SW2上show spanning-tree验证:

SW2#show spanning-tree

VLAN0001

Spanning tree enabled protocol ieee

Root ID Priority 32769

Address 0008.20ff.6400

Cost 19

Port 23 (FastEthernet0/23)

Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec

Bridge ID Priority 32769 (priority 32768 sys-id-ext 1)

Address 000d.bce7.5940

Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec

Aging Time 300

Interface Role Sts Cost Prio.Nbr Type

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

Fa0/23 Root FWD 19 128.23 P2p --------------注: F0/23 为根端口

Fa0/24 Altn BLK 19 128.24 P2p ------注: SW2 上F0/24 就是blocking 端口

总结:

看上图,从SW2到SW1的所有数据流量最终通过线点1到达,SW2的F0/24处于备份状态,在SW2上show spanning-tree可以看到F0/24的端口角色为Altn,即线路2作为线路1上备份链路.

CST 的缺点:最终有一条链路总是处在备份的状态,就像本实验中线路2 处在备份的状态,我们想象假如线路1 永远不会出问题,如果这样,那好像线路2 的存在是多余的,于是我们有个想法就是能不能两条链路都利用起来,比如说一部分流量走线路1,另一部分流量走线路2,其实是可以的,CISCO的PVST+产生就由来于此,我们将在下个实验中介绍PVST+。

CST 公共生成树的更多相关文章

  1. 实施生成树 STP 高级

    一.生成树协议的演化 生成树协议可以识别防止二层环路 本节介绍每VLAN快速生成树增强版 PVRST+   和多生成树MST   如何配置协议   以及配置生成树系诶稳定性机制 1.生成树协议的演化 ...

  2. 计算机网络学习笔记--数据链据层之MAC子层(整理)

    概述: 为什么需要介质访问控制子层(MAC)? 介质访问控制子层(MAC)是局域网体系结构中划分的子层,多路访问链路采用共享介质连接所有站点.发送站点通过广播方式发送数据并占用整个带宽,如果有多个站点 ...

  3. 1.二层常用技术-STP

    1.STP定义: STP(Spanning Tree Protocol)是生成树协议的英文缩写.STP在IEEE 802.1D文档中定义,该协议的原理是按照树的结构来构造网络拓扑,消除网络中的环路,避 ...

  4. HCNP Routing&Switching之MSTP

    前文我们了解了RSTP保护相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/16255918.html:今天我们来了解下MSTP相关话题: MSTP技术背 ...

  5. 2.4-EN_STP

    2.4-EN_STP     增强型生成树协议(EN_STP): Spannig Tree port states: blocking 20s+listening 15s+learning 15s最后 ...

  6. MSTP-多生成树协议

    多生成树协议MSTP(Multiple Spanning Tree Protocol)是IEEE 802.1s中定义的一种新型生成树协议.简单说来,STP/RSTP是基于端口的,PVST+是基于VLA ...

  7. bzoj2467: [中山市选2010]生成树

    Description 有一种图形叫做五角形圈.一个五角形圈的中心有1个由n个顶点和n条边组成的圈.在中心的这个n边圈的每一条边同时也是某一个五角形的一条边,一共有n个不同的五角形.这些五角形只在五角 ...

  8. BZOJ 2467: [中山市选2010]生成树 [组合计数]

    2467: [中山市选2010]生成树 Time Limit: 5 Sec  Memory Limit: 128 MBSubmit: 638  Solved: 453[Submit][Status][ ...

  9. [BZOJ2467] [中山市选2010] 生成树 (排列组合)

    Description 有一种图形叫做五角形圈.一个五角形圈的中心有1个由n个顶点和n条边组成的圈.在中心的这个n边圈的每一条边同时也是某一个五角形的一条边,一共有n个不同的五角形.这些五角形只在五角 ...

随机推荐

  1. php 模拟浏览器get和post提交处理

    文件夹test下index.php <?phpheader("Content-Type: text/html;charset=gb2312"); function cUrlG ...

  2. Asynchronous JS: Callbacks, Listeners, Control Flow Libs and Promises

    非常好的文章,讲javascript 的异步编程的. ------------------------------------------------------------------------- ...

  3. 制作、烧写根文件系统,使用NFS,编译使用驱动程序

    制作YAFFS2.JFFS2文件系统映象文件制作文件系统映象非常简单.① 制作YAFFS2文件系统映象文件对于YAFFS2,要用到mkyaffs2image工具,它在/work/linux/tools ...

  4. QTP使用小技巧

    1.创建action template.     当希望在每一个新建action时都增加一些头部说明,比如作者.创建日期.说明等,用action template     来实现最简单快捷.      ...

  5. Header,Tab,ListView三个在线性布局中,ListView向上滑动时,Tab标签悬停在顶部,然后Header向上滑出去,这个效果的做法

    效果如图: 这个效果可以用一个框架来做,首先在网上搜关键字,然后搜索的结果在这里:http://stackoverflow.com/questions/20906964/viewpager-with- ...

  6. CSS3秘笈:第四章

    第四章  继承 1.继承:应用在一个标签上的CSS样式被传到其内嵌标签上的过程. 2.继承的局限性: (1)有些属性不会被继承,如:CSS. (2)以下情况不会严格执行继承: ·影响网页元素位置的属性 ...

  7. Codeforces Round #354 (Div. 2)_Vasya and String(尺取法)

    题目连接:http://codeforces.com/contest/676/problem/C 题意:一串字符串,最多改变k次,求最大的相同子串 题解:很明显直接尺取法 #include<cs ...

  8. hdu 1212 Big Number(大数取模)

    Problem Description As we know, Big Number is always troublesome. But it's really important in our A ...

  9. DLL调试方法

    1.已经做好的dll不能设置:你可以用AfxMessageBox把信息打印出来.2.哪个地方调用的函数 把DLL重新编译一次 在把DLL放到工程里 从新添加一下 然后在你工程调用DLL内容的地方设置断 ...

  10. Git 怎么创建本地库,向本地库提交文件

    创建版本库是非常简单的,首先选择一个自己想放的位置,创建一个空目录: (用windows的git bash,这个工具的操作命令和linux下类似) $ mkdir gitRespository     ...