网络初级篇之STP(实验验证)
一、根桥的选举。
1、优先级相等时。

(图1-1)

(图1-2)
在上面1-1图中,已经标出桥的mac地址,桥的优先级为默认优先级(缺省:32768)。任意一端口抓包,查看STP数据包内包含的信息,根桥的mac地址为LSW1的MAC地址(图1-2),所以LSW1为根桥。对比三个桥的mac地址,LSW1的MAC地址最小。
2、优先级不相等时。
还是在上图1-1中,在LSW2中,将LSW2的优先级更改为4096(优先级必须为4096的倍数;使用命令:[LSW2]stp priority 4096)。

(图1-3)
此时任意一端口抓包,STP数据包中包含的根桥的MAC地址变为LSW2的MAC地址(图1-3所示),所以此时LSW2为根桥。
3、结论:根桥的选举先对比桥的优先级,优先级最小的选举为根桥;当优先级都相当时,根据桥MAC地址选举,MAC地址小的为根桥。
二、根端口的选举。
根端口的选举有以下几个情景:
1、累计根路开销不相等时

(图2-1-1)

(图2-1-2)

(图2-1-3)
由根桥的选举我们得知,当优先级都相等时,LSW1为根桥(图2-1-1)。
假设,相邻两设备之间的根路开销都为1(同一设备的不同端口根路开销为0)
LSW2的G0/0/1端口的累计根路开销为1;G0/0/2端口的累计根路开销为2。则LSW2的G0/0/1端口为根端口(图2-1-2)。
LSW3的G0/0/1端口的累计根路开销为2;G0/0/2端口的累计根路开销为1。则LSW3的G0/0/2端口为根端口(图2-1-3)。
2、累计根路开销相等,对端BID不相等时。

(图2-2-1)

(图2-2-2)
如图2-2-1所示,LSW4为根桥,根据累计根路开销,我们可以得出LSW2与LSW3的根端口。但是,LSW1的两端口累计根路开销一样,无法通过此方法得出根端口。这时候就需要对端BID进行选举(上一文章讲了BID组成)。LSW1对端的两台设备中LSW2的MAC地址小,所以LSW1与LSW2相连的LSW1上的端口为根端口(图2-2-2)。
3、累计根路开销相等,对端BID相等,对端PID不相等时。

(图2-3-1)

(图2-3-2)

(图2-3-3)

(图2-3-4)
如图2-3-1所示,LSW1为根桥。LSW3无法通过累计根路开销、对端的BID来进行根端口的选举。这时只能通过对端PID来进行端口选举(所做实验中端口优先级全部为默认优先级:128)。
在图2-3-1中,LSW2的G0/0/1端口的对端PID为128.1;G0/0/2端口的对端PID为128.2。由图2-3-2得知,LSW2上的G0/0/1端口为根端口。
在图2-3-3中,LSW2的G0/0/1端口的对端PID为128.2;G0/0/2端口的对端PID为128.1。由图2-3-4得知,LSW2上的G0/0/2端口为根端口。
以上两条得出结论:在根端口的选举中,累计根路开销与对端BID都相等时,是根据对端PID来进行根端口的确认;对端PID小的端口为根端口。
4、累计根路开销相等,对端BID相等,对端PID相等,本端PID不相等。

(图2-4-1)

(图2-4-2)
如图2-4-1所示,LSW1为根桥。此时,对于LSW2上的端口,累计根路开销相等、对端BID相等、对端PID相等。这时候可以通过本端的PID来进行根端口的选举.
如图2-4-2所示,LSW2上的G0/0/1端口为根端口。此时,LASW2上的G0/0/1端口的本端PID为128.1;G0/0/2端口的本端PID为128.2
由此得出结论:在根端口选举中,累计根路开销、对端BID、对端PID都相等时,对比本端PID,本端PID小的为根端口。
三、指定端口的选举。

(图3-1-1)

(图3-1-2)
1、根据累计根路开销选举指定端口
如图3-1-1中,LSW1为根桥。根桥上的端口到根桥的累计根路开销为0。
在LSW1的G0/0/1端口与LSW2的G0/0/1端口中,前者的累计根路开销小于后者的累计根路开销,所以LSW1的G0/0/1端口选举为指定端口(图3-1-2)。
在LSW1的G0/0/2端口与LSW3的G0/0/2端口中,前者的累计根路开销小于后者的累计根路开销,所以LSW1的G0/0/2端口选举为指定端口(图3-1-2)。
PS:根桥上的所有端口都为指定段口。

(图3-1-3)
2、累计根路开销相等,根据BID选举指定端口。
在LSW2的G0/0/2端口与LSW3的G0/0/1端口中,两者到根桥的累计根路开销一样,此时,就需要对比BID的大小来选举指定端口。
对比LSW2与LSW3的MAC地址(优先级都为默认),我们可以得出:LSW2的BID小于LSW3的BID,则LSW2的G0/0/2端口为指定端口(图3-1-3)。
3、累计根路开销相等、BID相等,根据PID选举指定端口(非常特殊的情况下)。

(图3-1-4)
如上图3-1-4,LSW1的G0/0/1端口与G0/0/2端口的累计根路开销一致,BID一致,此时需要对比PID的大小来选举指定端口。
G0/0/1端口的PID为:128.1
G0/0/2端口的PID为:128.2
所以G0/0/1端口为指定端口
四、阻塞端口

(图4-1-1)

(图4-1-2)
当根端口与指定端口选举完成,剩余的便是阻塞端口(图4-1-1)。之后便会形成如图4-1-2的拓扑。此时,由于其中的阻塞端口,使其环路被破坏,防止了广播风暴的出现。
网络初级篇之STP(实验验证)的更多相关文章
- 网络初级篇之STP(概念原理)
一.什么是STP 生成树协议(Spanning Tree Protocol,STP),是一种工作在OSI网络模型中的第二层(数据链路层)的通信协议,基本应用是防止交换机冗余链路产生的环路.用于确保以太 ...
- 网络初级篇之STP(BPDU详解与STP故障恢复)
一.BPDU包含的参数 通过STP的原理,我们学习了红色部分的字段(根桥ID.根路径开销.桥ID.端口ID).现在讲解一下黄色部分的字段(类型.计时器.老化时间.访问时间) 1.(BPDU Type) ...
- 网络初级篇之配置telnet登录网络设备(实验)
一.作用 在日常工作中,登录网络设备,对其进行配置主要有几种方式:console.Telnet与ssh.这样可以实现远程(只要网络可达)控制,极大的方便了工作.今天主要讲解一下配置Telnet ...
- 网络初级篇之网络设备的FTP(原理与实验)
一.什么是FTP FTP就是文件传输协议.用于互联网双向传输.二.FTP的作用 控制文件下载空间在服务器复制文件从本地计算机或本地上传文件复制到服务器上的空间,主要的作用就是文件的传输,保 ...
- 网络初级篇之DHCP原理与配置(原理与实验)
一.什么是DHCP DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)通常被应用在大型的局域网络环境中,主要作用是集中的管理.分配IP地址,使网络环境 ...
- 网络初级篇之OSPF(二)实验
一.实验目的: 下面关于OSPF的实验,仔细看配置过程,以增加对OSPF的理解. 二.实现目标: 使用OSPF实现所有主机之间的通信 三.配置过程: 1.AR1的配置过程: ...
- 网络初级篇之RSTP(原理与配置)
一.RSTP的产生 前面的文章写到了当网络拓扑发生变化时,STP的收敛速度大约需要花费30秒-50秒的时间才会继续转发数据.这样在实际生产环境中花费的时间是非常长的,这样RSTP(快速生成树协议)便应 ...
- 网络初级篇之VLAN(原理)
一.早期网络的问题 1.若某时刻有多个节点同时试图发送数据,极易产生冲突域,这样使得网络传输效率大大降低. 2.从一节点发送的数据都会被送到各个节点,极易形成广播域,这样会使得产生太多的广播流量而耗费 ...
- 网络初级篇之OSPF(一)原理
一.OSPF是什么 Open Shortest Path First, 开放最短路径优先协议,是一种开源的使用最短路径优先(SPF)算法的内部网关协议(IGP).常用于路由器的动态选路. 二.OSPF ...
随机推荐
- Java排序方法
下面是用JAVA代码实现的数据结构中的7种基本排序算法,希望对你有所帮助. (1)直接插入排序 /** 直接插入排序 **/ /** 数组是引用类型,元素值将被改变 **/ public static ...
- Linux (Ubuntu)安装nexus,搭建maven私有服务器
下载 nexus oos(开源版)https://www.sonatype.com/download-oss-sonatype 2 将下载的压缩包上传到/opt/nexus/文件夹下面 3 解压文件 ...
- Java泛型(10):泛型与异常
由于擦除的原因,将泛型运用于异常是非常受限的.catch语句不能捕获泛型类型的异常,因为在编译期和运行期都必须知道异常的确切类型.但是,类型参数可能会在一个方法的throw子句中用到.这使得你可以编写 ...
- SpringBoot: 5.访问静态资源(转)
springboot默认从项目的resources里面的static目录下或者webapp目录下访问静态资源 方式一:在resources下新建static文件(文件名必须是static) 在浏览器中 ...
- 小林的VB6動態壁紙模擬程序
本項目參考了以下資料[這可能對你理解程序運行有幫助]: https://github.com/Yinmany/WinWallpaper https://blog.csdn.net/breaksoftw ...
- 记录运行时间 StopWatch
- 如何写出优雅耐看的JavaScript代码
参考链接:https://segmentfault.com/a/1190000020444918?utm_medium=hao.caibaojian.com&utm_source=hao.ca ...
- 前端控制台 JavaScript函数报错 SyntaxError: expected expression, got ';' SyntaxError: expected expression, got 'if'
在火狐浏览器下调试时, 页面报错SyntaxError: expected expression, got ';'或者SyntaxError: expected expression, got 'if ...
- Linux文件属性之Linux文件删除重要原理详解
Linux下文件删除的原理 只要dongdaxiafile(源文件).服务进程.dongdaxiaflie_hard_link(硬链接文件)三个中的任意一个存在文件不会被删除.
- 2019牛客暑期多校训练营(第四场)- J free
题目链接:https://ac.nowcoder.com/acm/contest/884/J 题意:给定一个无向图,有n个点,m条边(n,m<=1e3),起点S.终点T,在可以将k条边的权值变为 ...