首页 STP生成树协议原理及配置

STP生成树协议原理及配置

举报
开通vip

STP生成树协议原理及配置STP生成树协议原理及配置—从入门到精通生成树协议(Spanning-TreeProtocol,以下简称STP)是一个用于在局域网中消除环路的协议。运行该协议的交换机通过彼此交互信息而发现网络中的环路,并适当对某些端口进行阻塞以消除环路。由于局域网规模的不断增长,STP已经成为了当前最重要的局域网协议之一。STP的算法STP将一个环形网络生成无环拓朴的步骤:选择根网桥(RootBridge)选择根端口(RootPorts)选择扌旨定端口(DesignatedPorts)选择根网桥的依据网桥ID(BID)网桥ID是唯...

STP生成树协议原理及配置
STP生成树协议原理及配置—从入门到精通生成树协议(Spanning-TreeProtocol,以下简称STP)是一个用于在局域网中消除环路的协议。运行该协议的交换机通过彼此交互信息而发现网络中的环路,并适当对某些端口进行阻塞以消除环路。由于局域网规模的不断增长,STP已经成为了当前最重要的局域网协议之一。STP的算法STP将一个环形网络生成无环拓朴的步骤:选择根网桥(RootBridge)选择根端口(RootPorts)选择扌旨定端口(DesignatedPorts)选择根网桥的依据网桥ID(BID)网桥ID是唯一的,交换机之间选择BID值最小的交换机作为网络中的根网桥STP选择根网桥举例根据网桥ID选择根网桥选择根端口的依据在非根网桥上选择一个到根网桥最近的端口作为根端口选择根端口的依据是:根路径成本最低直连(上游)的网桥ID最小端口(上游)ID最小根路径成本根路径成本(开销)一是网桥到根网桥的路径上所有链路的成本之和,默认10M/100M自适应的路径开销为200000STP选择根端口举例在非根桥上,选择一个根端口(RP)选择指定端口的依据在每个网段上,选择1个指定端口根桥上的端口全是指定端口非根桥上的指定端口:根路径成本最低端口所在的网桥的ID值较小端口ID值较小STP选择指定端口举例在每个网段选择1个指定端口(DP)STP计算结果经过STP计算,最终的逻辑结构为无环拓朴STP举例经过STP计算后的逻辑拓朴BPDU(桥协议数据单元)交换机之间使用BPDU来交换STP信息BPDUBridgeProtocolDataUnit一桥协议数据单元使用组播发送BPDU,组播地址为:01-80-C2-00-00-00BPDU分为2种类型:配置BPDU-用于生成树计算拓朴变更通告(TCN)BPDU-用于通告网络拓朴的变化BPDU包含的关键字段STP使用BPDU选择根网桥2-1交换机启动时,假定自己是根网桥,在向外发送的BPDU中,根网桥ID字段填写自己的网桥IDSTP使用BPDU选择根网桥2-2当接收到其他交换机发出的BPDU后,比较网桥ID,选择较小的添加到根网桥ID中STP使用BPDU计算根路径成本2-1根网桥发送根路径成本为0的BPDUSTP使用BPDU计算根路径成本2-2其他交换机接收到根网桥的BPDU后,在根路径成本上添加接收接口的路径成本,然后转发生成树端口的状态生成树计时器STP状态机在STP选举过程中,端口是不能转发用户数据的。端口一开始处于阻塞状态,这个状态只能接收BPDU;一个接口20秒没收到BPDU,也就是到了最大时间,端口会进入侦听状态,这时接口可以接收BPDU,并开始发送BPDU;发送15秒的BPDU,接口将会为转发用户数据做准备,也开始学习MAC地址,这个状态叫学习状态;再经过15秒的学习后,端口进入转发状态,转发状态是一个正常的接口。spanning-tree设置STP(Spanning-TreeProtocol)aFO/1■Fll/23FO/24FO/24Fll/23在上图所示的网络环境中,当交换机之间连有多条链路时,将存在一定的问 快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题 ,如SW1的MAC地址表中会显示接口F0/1与主机A相对应,而当数据发往SW2后,SW2的MAC地址表则记录接口FO/23与主机A相对应,当SW2再次将流量从接口F0/24发回SW1时,SW1的MAC地址表又会记录接口F0/24与主机A相对应。因此可以看出,当交换机之间存在多条活动链路时,交换机将从不正常的接口上学习到MAC地址,导致MAC地址表的不正确与不稳定,并且还会导致重复的数据包在网络中传递,引起广播风暴,使网络不稳定。为了防止交换机之间由于多条活动链路而导致的网络故障,必须将多余的链路置于非活动状态,即不转发用户数据包,而只留下单条链路作为网络通信,当唯一的活动链路不能工作时,再启用非活动链路,从而达到网络的冗余性。要实现此功能,需要依靠生成树协议(STP)来完成,STP将交换网络中任何两个点之间的多余链路置于Blocking(关闭)状态,而只留一条活动链路,当使用中的活动链路失效时,立即启用被Block的链路,以此来提供网络的冗余效果。STP并非思科私有协议,STP为IEEE标准协议,并且有多个协议版本,版本与协议号的对应关系如下:CommonSpanningTree(CST)=IEEE802.1DRapidSpanningTreeProtocol(RSTP)=IEEE802.1wPer-VLANSpanning-Treeplus(PVST+)=Per-VLANEEE802.1DRapidPVST+=Per-VLANIEEE802.1wMultipleSpanningTreeProtocol(MSTP)=IEEE802.1s下面来详细介绍STP协议:请观察如下网络环境:在如上所示的网络环境中,不难看出,当所有主机都使用单条链路与一台核心相连时,只要不再增加其它额外设备与链路,就不可能存在环路。交换机就当相于Hub一样连接了多台主机,而这样的网络结构,被称为hub-spoke网络结构,只要主机与Hub是连通的,那么就表示主机之间是连通的。基于此原因,STP借助了hub-spoke网络结构无环的网络思想,将一个拥有多台交换机通过多条链路相连的网络,通过Block掉任意两点之间多余的链路而只留下单条链路,最终修整出一个hub-spoke的网络环境,创造一个无环的交换网络。在上图的交换网络中,由于存在多台交换机,并且交换机之间有多条冗余链路,因此,只要在网络中找一台交换机充当核心,也就是相当于hub-spoke网络中的Hub,而其它交换机则留出一条活动链路到核心交换机即可,其它链路全部被block,当留出的活动链路失效之后,再启用block链路作为备份。上图中SW1被选作交换网络中的核心,而其它交换机则只留一条活动链路到核心交换机,只要其它交换机与核心交换机是通的,就证明交换机之间一定是通的。图中红色的连路表示被留出的普通交换机到核心交换机的活动链路,蓝色链路表示被block掉的链路,只要红色链路是通的,就表示整个网络都是通的,当某条红色链路断掉以后,只要启用相应的蓝色链路代替即可,也就实现了网络的冗余功能。通过上述的解释,STP要构建出无环的交换网络,就必须在网络中选出一台交换机做为核心交换机,STP称其为Root,也就是根,功能相当于hub-spoke网络中的Hub。其它不是Root的交换机则需要留出一条活动链路去往根交换机,因为只要普通交换机到根是通的,到其它交换机也就是通的。需要说明的是,只有在一个三层网络中,广播能够到达的范围内,才需要进行相同的STP计算与选举,也就是一个广播域内独立选举STP:上图中,因为网络被路由器分割成两个广播域,所以在两个网段中,需要进行独立的STP计算与选举。STP在计算与选举时,只会留下唯一一条活动链路,将其它所有多余链路全部block,所以STP要确定两点之间是否存在多条链路,因为只有两点之间有多条链路时,才有链路需要被block。要确认两点之间网络是否通畅,只要发送数据作个测试即可得到答案,而要确认两点之间是否有多条链路,方法还是发送数据作个测试就能得到答案。当然,要测试两点之间是否有多条链路,需要发送特殊的数据来做测试,比如给数据包都做上相同的标记,然后发出去,如果交换机同时从多个接口收到相同标记的数据包,很显示,交换机与发送者之间就是存在多条链路的,因此需要靠STP计算来断开多余链路。STP在发送数据包测试网络是否有多条链路,是靠发送bridgeprotocoldataunits(BPDUs)来完成的,同台交换机发出去的BPDU都被做上了相同的标记,只要任何交换机从多个接口收到相同标记的BPDU,就表示网络中有冗余链路,因此需要STP断开多余链路。BPDU数据包里面有以下信息:根交换机的bridgeID。发送交换机的bridgeID。到根交换机的PathCost。发送接口以及优先级。Hello、forwarddelay、max-age时间。同台交换机发出的BPDU,bridgeID都是一样的,因为是用来标识自己的,其中bridgeID由两部分组成:Bridge优先级和MAC地址,默认优先级为32678。交换机上的每个端口也是有优先级的,默认为128,范围为0-255。注:在STP协议中,所有优先级数字越小,表示优先级越高,数字越大,优先级越低。STP在计算网络时,需要在网络中选举出根交换机(Root),根端口(RootPort),以及指定端口(DesignatedPort),才能保证网络的无环,选举规则分别如下:根交换机(Root)在同一个三层网络中需要选举,即一个广播域内要选举,并且一个网络中只能选举一台根交换机。Birdge-ID中优先级最高(即数字最小)的为根交换机,优先级范围为0-65535,如果优先级相同,则MAC地址越小的为根交换机。根端口(RootPort)所有非根交换机都要选举,非根交换机上选举的根端口就是普通交换机去往根交换机的唯一链路,选举规则为到根交换机的PathCost值最小的链路,如果多条链路到达根交换机的PathCost值相同,则选举上一跳交换机Bridge-ID最小的链路,如果是经过的同一台交换机,则上一跳交换机Bridge-ID也是相同的,再选举对端端口优先级最小的链路,如果到达对端的多个端口优先级相同,最后选举交换机对端端口号码最小的链路。指定端口(DesignatedPort)在每个二层网段都要选举,也就是在每个冲突域需要选举,简单地理解为每条连接交换机的物理线路的两个端口中,有一个要被选举为指定端口,每个网段选举指定端口后,就能保证每个网段都有链路能够到达根交换机,选举规则和选举根端口一样,即:到根交换机的PathCost值最小的链路,如果多条链路到达根交换机的PathCost值相同,则选举上一跳交换机Bridge-ID最小的链路,如果是经过的同一台交换机,则上一跳交换机Bridge-ID也是相同的,再选举对端端口优先级最小的链路,如果到达对端的多个端口优先级相同,最后选举交换机对端端口号码最小的链路。在STP选出根交换机,根端口以及指定端口后,其它所有端口全部被Block,为了防止环路,所以Block端口只有在根端口或指定端口失效的时候才有可能被启用。交换机上的端口,根据端口的带宽不同,PathCost值也不同,以下参数为标准:10Mb/s:100100Mb/s:191000Mb/s:410000Mb/s:2可以看出,带宽越高,被选为根端口和指定端口的几率就越大,所以经过STP选举后,活动的链路总是性能最好的,其它被Block掉的端口,将在活动端口失效时被启用。以下图为例来看STP计算:128128FO/23Fll/19126F0720f128FO/24上图的网络环境中,运行STP后,则选举如下角色:(所有链路为100Mb/s,即PathCost值为19)根交换机(Root)因为4台交换机的优先级分别为SW1(4096),SW2(24576),SW3(32768),SW4(32768),选举优先级最高的(数字最低的)为根交换机,所以SW1被选为根交换机,如果优先级相同,则比较MAC地址。根端口(RootPort)根端口需要在除SW1外的非根交换机上选举。SW2上从端口F0/23到达根的PathCost值为19,从F0/19和F0/20到达根的PathCost值都为19X3=57。因此,F0/23被选为根端口。SW3上从端口F0/19到达根的PathCost值为19,从F0/23和F0/24到达根的PathCost值都为19X3=57。因此,F0/19被选为根端口。SW4上从所有端口到达根的PathCost值都为19X2=38,所以从比较PathCost值,无法选出根端口,接下来比较上一跳交换机Bridge-ID,也就是比较SW2与SW3的Bridge-ID,所以选择往SW2的方向,然而通过端口F0/19和F0/20都可以从SW2到达根交换机,所以接下来比较端口F0/19和F0/20对端交换机端口的优先级,因为SW2的F0/19端口优先级为128,而F0/20的端口优先级为112,所以SW4选择连接SW2的F0/20的端口为根端口,即SW4的F0/20为根端口,如果此步还选不出,SW4将根据对端端口号做出决定,也就是F0/19和F0/20,数字小的为根端口,也就是F0/19。指定端口(DesignatedPort)每个网段(每个冲突域),或理解为每条线路都要选举指定端口。在根交换机SW1连接SW2的网段与连接SW3的网段中,当然是根自己的端口离自己最近,所以这两个网段中,选举根交换机上的端口为指定端口,因此,根交换机上所有的端口都应该是指定端口。在SW3连接SW4的两个网段中,同样也是SW3上的两个端口离根交换机最近,所以在这两个网段中,选举SW3上的端口为指定端口。在SW2连接SW4的两个网段中,同样也是SW2上的两个端口离根交换机最近,所以在这两个网段中,选举SW2上的端口为指定端口。注:根交换机上所有的端口最终都为指定端口。其它既不是根端口,也不是指定端口的落选的端口,就是SW4上的F0/19,F0/23,F0/24,都将被STP放入Blocking状态,不为用户提供数据转发,以此来防止环路。最终的网络,构建出了任何两点之间,都是单链路的环境,不会有环路,当使用中的链路失效时,Blocking的端口可以代替原端口。上图的STP选举结果如下:根交换机(Root)SW1根端口(RootPort)SW2:F0/23SW3:F0/19SW4:F0/20指定端口(DesignatedPort)SW1:F0/19,F0/23SW2:F0/19,F0/20SW3:F0/23,F0/24Blocking端口SW4:F0/19,F0/23,F0/24结果图如下:8FO/23FO/190/73F0/111/19J28128^F0/2I128FO/23128I/24128LEO/19128F0Z2£PI0Z24128F0Z2UI11?■M优题32768优题4096Q根峯口.指定也Hacking罐口Root128优题32768注:一个端口,在STP中只能处于一种角色,不可能是两种角色。在交换机启动后,端口要过渡到转发状态,需要经历以下的状态从initialization(初始化)到blocking从blocking到listening或disabled从listening到learning或disabled从learning到forwarding或disabled被Disabled的接口相当于关闭了,每个状态有如下功能:Blocking丢弃所有收到的数据帧,不学习MAC地址,能收BPDU但不发BPDU。Listening丢弃所有收到的数据帧,不学习MAC地址,能收BPDP的处理BPDU,并进行STP计算。Learning丢弃所有收到的数据帧,会学习MAC地址,能收BPDU和处理BPDU。Forwarding也就是正常转发状态,能转发收到的数据帧,能学习MAC地址,接收并处理BPDU。Disabled丢弃所有收到的数据帧,不学习MAC地址,能收BPDU,除此之外不会再做其它的。当交换机启动后,都认为自己是根交换机,然后从所有接口向网络中发送BPDU,称为configurationBPDU,所以configurationBPDU是根交换机发出的。当交换机收到更优Bridge-ID的configurationBPDU,会将它从自己所有接口转发出去,并保存在接口,如果收到差的configurationBPDU,则全部丢掉,所以在交换网络中,只有根交换机的BPDU在转发,其它普通交换机的BPDU不会出现在网络中。根交换机的BPDU会在每个hello时间往网络中发送一次,hello时间默认为2秒钟,也就是交换机的BPDU会在每2秒钟往网络中发送一次,如果普通交换机在max-age时间内没有收到根交换机的BPDU,则认为根交换机已经失效,便开始重新选举BPDU,默认max-age时间为20秒,即10倍hello时间。除了hello时间和max-age时间外,还有一个forwarddelay时间,默认为15秒,接口在经过Listening和Learning状态时,都会分别停留一个forwarddelay时间,也就是说接口从Listening状态到Learning状态,最后变成转发状态,需要经过两个forwarddelay时间共计30秒。
本文档为【STP生成树协议原理及配置】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
lipeng1013
暂无简介~
格式:doc
大小:188KB
软件:Word
页数:15
分类:
上传时间:2022-12-26
浏览量:0