第11章-生成树协议(STP)技术课件_第1页
第11章-生成树协议(STP)技术课件_第2页
第11章-生成树协议(STP)技术课件_第3页
第11章-生成树协议(STP)技术课件_第4页
第11章-生成树协议(STP)技术课件_第5页
已阅读5页,还剩109页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第11章生成树协议(STP)技术11.1STP的产生11.2生成树协议(STP)的基本原理11.3快速生成树协议(RSTP)简介11.4多生成树协议(MSTP)简介小结第11章生成树协议(STP)技术11.1STP的产生

主要内容:

STP协议的基本工作原理的产生及解决的问题

STP协议

STP协议的类型主要内容:

 STP协议的基本工作原理的产生及解

单点故障会导致整个网络瘫痪。为了保证整个网络的可靠性和安全性,可以引入冗余链路或备份链路。物理上的备份链路会产生物理环路(或多重环路),从而导致广播风暴、重复帧以及MAC地址表不稳定(MAC地址漂移)等问题。同时,在实际的组网应用中经常会形成复杂的多环路连接。面对如此复杂的环路,网络设备必须有一种解决办法在存在物理环路的情况下阻止两层环路的发生。11.1STP的产生

单点故障会导致整个网络瘫痪。为了保证整个网络的可此时,为了保证网络可靠安全,同时又不产生环路问题,可以通过生成树协议来实现,即将路由器或交换机的某些端口置于阻塞状态,从而防止在冗余结构的网络拓扑中产生回路。此时,为了保证网络可靠安全,同时又不产生环路问题,可以通过生11.1.1广播风暴

我们可以通过图11-1来分析广播风暴是如何形成的。11.1.1广播风暴

我们可以通过图11-1来分析广

图11-1广播风暴(1)

图11-1广播风暴(1)在一个存在物理环路的两层网络中,主机X(Server/hostA)发送了一个广播数据帧,交换机A(SwitchA)从上方的端口接收到广播帧,做洪泛处理,转发至下面的端口。通过下面的连接,广播帧将到达交换机B(SwitchB)的下方端口。

交换机在下方的端口上收到了一个广播数据帧,将做洪泛处理,通过上方的端口转发此帧,交换机A将在上方端口重新接收到这个广播数据帧,如图11-2所示。

由于交换机执行的是透明桥的功能,转发数据帧时不对帧做任何处理。所以对于再次到来的广播帧,交换机A不能识别出此数据帧已经被转发过,交换机A还将对此广播帧做洪泛的操作。在一个存在物理环路的两层网络中,主机X(Server/h

图11-2广播风暴(2)

图11-2广播风暴(2)广播帧到达交换机B后会做同样的操作,并且此过程会不断进行下去,无限循环。以上分析的只是广播被传播的一个方向,实际环境中会在两个不同的方向上产生这一过程。在很短的时间内大量重复的广播帧被不断循环转发,消耗掉整个网络的带宽,而连接在这个网段上的所有主机设备也会受到影响,CPU将不得不产生中断来处理不断到来的广播帧,极大地消耗系统的处理能力,严重时可能导致死机。如图11-3所示。广播帧到达交换机B后会做同样的操作,并且此过程会不断进行

图11-3广播风暴(3)

图11-3广播风暴(3)一旦产生广播风暴系统将无法自动恢复,必须由系统管理员人工干预恢复网络状态。(某些设备在端口上可以设置广播限制,一旦特定时间内检测到广播帧超过了预先设置的阈值,即可进行某些操作,如关闭此端口一段时间,以减轻广播风暴对网络带来的损害。但这种方法并不能真正消除两层环路带来的危害。)一旦产生广播风暴系统将无法自动恢复,必须由系统管理员人工11.1.2数据帧的重复复制

我们可以通过图11-4来分析一个数据帧被多次复制的情况。

主机X(Server/hostX)发送一单播数据帧,目的为路由器Y(RouterY)的本地接口,而此时路由器Y的本地接口的MAC地址对于交换机(Switch)A与B都是未知的。

数据帧通过上方的网段直接到达路由器Y,同时到达交换机A上方的端口。11.1.2数据帧的重复复制

我们可以通过图11-4

图11-4数据帧复制(1)

图11-4数据帧复制(1)当交换机对于帧的目的MAC地址未知时,交换机会进行洪泛的操作。

交换机A会将此数据帧从下方的端口转发出来,数据帧到达交换机B的下方端口,交换机B的情况与交换机A相同,也会对此数据帧进行洪泛的操作,从上方的端口将此数据帧转发出来,同样的数据帧再次到达路由器Y的本地接口。如图11-5所示。

根据上层协议与应用的不同,同一个数据帧被传输多次可能导致应用程序的错误。当交换机对于帧的目的MAC地址未知时,交换机会进行洪泛的

图11-5数据帧复制(2)

图11-5数据帧复制(2)11.1.3MAC地址漂移

我们可以通过图11-6分析MAC地址表不稳定的问题。

主机X发送一单播数据帧,目的为路由器Y的本地接口,而此时路由器Y的本地接口的MAC地址对于交换机A与B都是未知的。

数据帧通过上方的网段到达交换机A与交换机B上方的端口。交换机A与交换机B将此数据帧的源MAC地址,即主机X的MAC地址与各自的port

0相关联并记录到MAC地址表中。11.1.3MAC地址漂移

我们可以通过图11-6分

图11-6MAC地址漂移(1)

图11-6MAC地址漂移(1)而此时两个交换机对此数据帧的目的MAC地址是未知的,当交换机对帧的目的MAC地址未知时,交换机会进行洪泛的操作。两台交换机都会将此数据帧从下方的port1转发出来并将到达对方的port1。

两个交换机都从下方的port1收到一个数据帧,其源地址为主机X的MAC地址,交换机会认为主机X连接在port1所在网段而意识不到此数据帧是经过其他交换机转发的,所以会将主机X的MAC地址改为与port1相关联并记录到MAC地址表中。交换机学习到了错误的信息,并且造成交换机MAC地址表的不稳定。这种现象也被称为MAC地址漂移,如图11-7所示。而此时两个交换机对此数据帧的目的MAC地址是未知的,当交

图11-7MAC地址漂移(2)

图11-7MAC地址漂移(2)

用生成树协议(Spanning-TreeProtocol,STP)可以在有物理环路的网络中阻止两层环路的产生,如图11-8所示。生成树协议能够自动发现冗余网络拓扑中的环路,保留一条最佳链路做转发链路,阻塞其他冗余链路,并且在网络拓扑结构发生变化的情况下重新计算,保证所有网段可达且无环路。11.2生成树协议(STP)的基本原理

用生成树协议(Spanning-TreePSTP协议的基本思想十分简单。大家知道,自然界中生长的树一般情况下是不会出现环路的,如果网络也能够像一棵树一样生长,就不会出现环路。于是,STP协议中定义了根桥(RootBridge)——生成树的参考点、根端口(RootPort)——非根桥到达根桥的最近端口、指定端口(DesignatedPort)——连接各网段的转发端口、路径开销(PathCost)——整个路径上端口开销之和等概念,目的就在于通过构造一棵自然树的方法达到裁剪冗余环路的目的,同时实现链路备份和路径最优化。用于构造这棵树的算法称为生成树算法SPA(SpanningTreeAlgorithm)。STP协议的基本思想十分简单。大家知道,自然界中生长的树一般

图11-8STP的作用

图11-8STP的作用11.2.1生成树协议STP的运作过程

1.根桥的选择

网桥之间必须要进行一些信息的交流。这些信息交流单元就称为配置消息BPDU(BridgeProtocolDataUnit)。STPBPDU是一种两层报文,目的MAC是多播地址0180C2000000,缺省情况下每2秒发出。所有支持STP的网桥都会接收并处理收到的BPDU报文。该报文的数据区里携带了用于生成树计算的所有有用信息。BPDU的作用除了在STP刚开始运行时选举根桥外,其他的作用还包括检测发生环路的位置,通告网络状态的改变,监控生成树的状态等。

BPDU数据单元的组成如图11-9所示。11.2.1生成树协议STP的运作过程

1.根桥的

图11-9BPDU数据单元的组成

图11-9BPDU数据单元的组成根桥选举的依据是网桥优先级和网桥MAC地址组合成的桥ID(BridgeID)。桥ID最小的网桥将成为网络中的根桥。各网桥都以默认配置启动,在网桥优先级都一样(默认优先级是32768)的情况下,MAC地址最小的网桥成为根桥,它的所有端口的角色都成为指定端口,进入转发状态;其他的网桥均为非根桥。如图11-10所示,两个网桥的优先级是一样的,此时,交换机X(SwitchX)的MAC地址较小,则为根桥;交换机Y(SwitchY)为非根桥。根桥选举的依据是网桥优先级和网桥MAC地址组合成的桥ID

图11-10根桥的选择图11-10根桥的选择开始启动STP时,所有交换机将根桥ID设置为与自己的桥ID相同,即认为自己是根桥,如图11-11所示。

当收到其他交换机发出的BPDU并且其中包含比自己的桥ID小的根桥ID时,交换机将此学习到的具有最小桥ID的交换机作为STP的根桥。

当所有交换机都发出BPDU后,具有最小桥ID的交换机被选择作为整个网络的根桥。根桥选举出以后,在正常情况下只有根桥每隔2秒从所有指定端口发出BPDU。开始启动STP时,所有交换机将根桥ID设置为与自己的桥I

图11-11根桥的产生图11-11根桥的产生

2. STP的端口类型的确定

STP的端口类型包括指定端口、根端口以及阻塞端口三种。

1)指定端口的选择规则

(1)根桥上的端口均是指定端口;

(2)每条链路上有且只有一个指定端口DP;

(3)判断:

路径开销

+

BridgeID(优先级

+

MAC地址)

其中,路径开销

=

100

Mb/s/链路带宽;当拓扑结构比较复杂时,指定端口的确定要通过路径开销的大小来确定。2. STP的端口类型的确定

STP的端口类型包括2)根端口、阻塞端口的选择规则

(1)根端口是针对非根桥而言的;

(2)每个非根桥上有且只有一个根端口RP;

(3)根端口是到根桥最近的端口;

(4)判断:

路径开销

+

BridgeID(优先级

+

MAC地址)

+

PortID

除了指定端口和根端口以外,剩余的端口就是阻塞端口,从而有效阻止了两层环路的形成,保证了整个网络的可靠性和安全性。如图11-12所示。2)根端口、阻塞端口的选择规则

(1)根端口是针

图11-12STP的端口类型的确定

图11-12STP的端口类型的确定根路径是根据BPDU中根路径开销、传输桥ID、端口ID进行选择的。

端口ID由1字节端口优先级与1字节端口号组成。根路径开销为到达根桥所经过的所有端口开销的总和。

当非根桥检测到了环路的存在后,必须保留一条链路做转发链路,阻塞掉其他冗余链路。选择转发链路的方式为:选择链路开销最小的链路做转发链路,如果存在多条链路开销相等且具有最小开销的链路,则选择有最小转发桥ID的链路;如果存在多条桥ID相同的有最小链路开销的链路,则选择有最小转发端口ID的链路,如图11-13和图11-14所示。根路径是根据BPDU中根路径开销、传输桥ID、端口ID进

图11-13STP的端口类型的产生图11-13STP的端口类型的产生

图11-14STP的端口类型的产生

图11-14STP的端口类型的产生11.2.2STP的端口状态

如图11-15所示,交换机的端口在STP环境中共有5种状态:阻塞(Blocking)、倾听(Listening)、学习(Learning)、转发(Forwarding)、关闭(Off)。关闭状态为交换机非工作状态(休息),图11-15未画出。

交换机上一个原来被阻塞掉的端口由于在最大老化时间内没有收到BPDU,从阻塞状态转变为倾听状态,倾听状态经过一个转发延迟(15s)到达学习状态,经过一个转发延迟时间的MAC地址学习过程后进入转发状态。

如果到达倾听状态后发现本端口在新的生成树中不应该由此端口转发数据,则直接回到阻塞状态。11.2.2STP的端口状态

如图11-15所示,

图11-15STP的端口状态

图11-15STP的端口状态11.2.3STP的计时器(Timer)

STP时间Timer如图11-16所示。

最大的老化时间(MaxAgeTime):数值范围为6~40s,缺省为20s。

如果在超出最大老化时间之后,还没有从原来转发的端口收到根桥发出的BPDU,那么交换机认为链路或端口发生了故障,需要重新计算生成树,打开一个原来阻塞掉的端口。11.2.3STP的计时器(Timer)

STP时间如果交换机在超出最大老化时间之后没有在任何端口收到BPDU,说明此交换机与根桥失去了联系,此交换机将充当根桥,向其它所有的交换机发出BPDU数据包。如果该交换机确实具有最小的桥ID,那么它将成为根桥。

当拓扑发生变化时,新的配置消息要经过一定的时延才能传播到整个网络,这个时延称为转发延迟(ForwardDelay),协议默认值是15s。如果交换机在超出最大老化时间之后没有在任何端口收到BPD

图11-16STP时间Timer类型

图11-16STP时间Timer类型在所有网桥收到这个变化的消息之前,若旧拓扑结构中处于转发的端口还没有发现自己应该在新的拓扑中停止转发,则可能存在临时环路。为了解决临时环路的问题,生成树使用了一种定时器策略,即在端口从阻塞状态到转发状态中间加上一个只学习MAC地址但不参与转发的中间状态,两次状态切换的时间长度都是转发延迟,这样就可以保证在拓扑变化时不会产生临时环路。但由此导致STP的切换时间比较长,典型的切换时间为最大的老化时间加2次转发延迟时间,约为50s。在所有网桥收到这个变化的消息之前,若旧拓扑结构中处于转发对于运行STP的交换机来说,收敛(Convergence)的含义就是指所有的交换机的端口都处于Forwarding或Blocking状态,状态稳定,没有拓扑结构发生变化。

当网络拓扑发生变化时,交换机必须重新计算生成树,在新的生成树没有完全计算、生成之前,为了防止临时环路的产生,所有链路都不转发数据。从发现状态改变到新的生成树计算完成的这段时间叫做收敛时间。通常STP的收敛时间约为50s。

由于标准STP的收敛时间较长,导致很多应用在切换过程中受影响。针对这个问题提出了RSTP(IEEE802.1w),即快速生成树协议,可以显著减少收敛时间。对于运行STP的交换机来说,收敛(Convergence

RSTP(RapidSpanningTreeProtocol)称为快速生成树协议,它比STP(即SSTP模式)提供了更快的收敛速度,即在网络拓扑发生变化时,原来冗余的交换机端口在点对点的连接条件下,端口状态可以迅速迁移(Discarding→Forword)。11.3快速生成树协议(RSTP)简介

RSTP(RapidSpanningTr11.3.1端口角色

RSTP靠指派端口角色和判断活跃拓扑来提供生成树的快速收敛。RSTP建立于IEEE802.1DSTP来选择有最高交换机优先级(最低数字的优先级值)的交换机作为根交换机,正如“根交换机选择”部分中描述的那样。接着,RSTP指派这些端口角色中的一个给特定端口:

根端口——当交换机转发数据包给根交换机时,提供最好路径(最低开销)。

指定端口——连接指定交换机,当从局域网转发数据包到根交换机时,该指定交换机拥有最短路径开销。这个把指定交换机连在局域网上的端口被称为指定端口。11.3.1端口角色

RSTP靠指派端口角色和判断活供选择端口——提供一条由当前根部端口提供的到该根交换机的供选择路径。

备份端口——作为由一个指定端口提供的到生成树叶节点(末端节点)路径的备份。当两个端口被一个点到点链路的一个环回(Loopback)连在一起时,或者当一个交换机有两个或多个到共享局域网段的连接时,一个备份端口才能存在。

禁用端口——在生成树运行中不担当任何角色。

一个有根端口或指定接口角色的端口被包含在活跃拓扑中。一个有供选择或备份端口角色的端口不被包含在活跃拓扑中。供选择端口——提供一条由当前根部端口提供的到该根交换机的在整个网络都有协调的端口角色的一个稳定拓扑中,RSTP确保每个根端口和指定端口立即转换为转发状态,同时所有的冗余和备份端口总是在丢弃状态(对等于802.1D中的阻断)。端口状态控制转发和学习有步骤地运行。表11-1提供了一个STP(802.1D)和RSTP端口状态的对比。指定端口始于监听状态。在整个网络都有协调的端口角色的一个稳定拓扑中,RSTP确

表11-1端口状态对比表11-1端口状态对比11.3.2快速收敛

RSTP提供交换机,一个交换端口,或者一个局域网失效后的可连通性的快速恢复。它为边缘端口、新根端口以及下面通过点到点链路而连接的端口提供了快速收敛。

边缘端口——如果用户在一个RSTP交换机上用接口配置命令配置一个端口为边缘端口,该边缘端口立即转换为转发状态。一个边缘端口就像一个未启动STP的端口,并且用户应该只在连接了一个单独的末端站点的端口上启用它。

根端口——如果RSTP选择了一个新端口,则它阻断旧根端口并且立即转换新根端口为转发状态。11.3.2快速收敛

RSTP提供交换机,一个交换端点到点链路——如果通过一个点到点链路连接一个端口到另一个端口,并且本地端口成为一个指定端口,它使用计划—同意握手(Proposal-AgreementHandshake)的其它端口协商一个快速转换来确保一个无环路的拓扑。

假设有两个交换机A、B用一条链路相连,交换机A通过点到点链路被连接到交换机B,并且所有端口都为阻断状态。假设交换机A有一个和交换机B一样的优先级数字值。交换机A发送一个计划(Proposal)消息(一个带有Proposal标志设置的BPDU)给交换机B,计划它自身作为指定交换机。点到点链路——如果通过一个点到点链路连接一个端口到另一个在收到交换机B的同意(Agreement)消息后,交换机A立即也转换它自己的指定端口为转发状态。因为交换机B阻断了所有它自己的非边缘端口,并且在交换机A和交换机B之间有一条点到点的链路,所以无环路的网络被构成。

当交换机C被连接到交换机B时,一个类似的握手消息设置被交换。交换机C选择连接交换机B的端口作为它自己的根端口,并且两个端点都立即转换为转发模式。随着这个握手过程的每次重复,更多的交换机加入到活跃拓扑中。就像网络收敛一样,这个计划—同意握手过程从根一直到生成树的叶节点(末端节点)。

在收到交换机B的同意(Agreement)消息后,交换机交换机从端口双工模式判断链路类型:一个全双工端口被认为有一个点到点的连接;一个半双工的端口被认为有一个共享连接。交换机从端口双工模式判断链路类型:一个全双工端口被认为有

多生成树协议(MultipleSpanningTreeProtocol,MSTP)增加了实例和VLAN映射的概念,SSTP模式和RSTP模式均可以当作MSTP模式的一种特例。

MSTP模式还提供了VLAN环境的快速聚合和负载均衡。11.4多生成树协议(MSTP)简介

多生成树协议(MultipleSpanni在SSTP模式和RSTP模式下,没有VLAN的概念,每个端口的状态只有一种,即端口在不同VLAN中的转发状态是一致的。而在MSTP模式下,可以存在多个SpanningTree实例,端口在不同VLAN下的转发状态可以不同;在MST区域内部可以形成多个独立的子树实例,实现负载均衡。

基于多实例的多生成树协议(MSTP)如图11-17所示。在SSTP模式和RSTP模式下,没有VLAN的概念,每个

图11-17多生成树协议(MSTP)图11-17多生成树协议(MSTP)传统的STP属于CST,即CommonSpanningTree(公共生成树),无论存在多少VLAN,只运行一个生成树进程,这种方式对环路的处理方式是保留一条链路转发数据,阻塞其余所有冗余链路,所有的数据转发必须通过处于转发状态的链路,其余链路处于阻塞状态,不能转发数据。设备无法分成利用多个端口、多条链路的处理能力。

MSTP是基于多实例(instance)的多生成树协议。在网络中可以设置多个实例,每个实例运行一个STP进程,将VLAN分组,加入到不同的实例中。

传统的STP属于CST,即CommonSpanning每个实例运行一个生成树进程。通过人为调节参数可以使同一个端口在不同的实例中的状态不同,比如对于图11-17所述情况,Port1在instance1中处于转发状态,在instance2中处于阻塞状态,而Port2正好相反。

正常情况下,处于instance1中的所有VLAN通过Port1转发,处于instance2中的所有VLAN通过Port2转发。可以充分利用设备端口与线路的转发能力,网络流量在多条线路上进行负载均衡。每个实例运行一个生成树进程。通过人为调节参数可以使同一个一旦链路或端口发生故障,比如下面的链路发生故障而无法转发数据,对处于instance1中的所有VLAN的数据转发没有影响,而instance2的STP检测到状态变化,重新计算后将打开原来阻塞的Port1,完成状态的切换。

采用MSTP的优点是避免环路故障,自动切换的同时可以实现二层的负载均衡。而且与PVST(PerVlanSpanningTree,每VLAN生成树)相比,不必为每个VLAN运行一个独立的生成树进程,可以节省交换机与网络的处理能力与资源。一旦链路或端口发生故障,比如下面的链路发生故障而无法转发数据

本章主要讲述了:

(1)

STP协议的产生及解决的问题;

(2)

STP协议的基本工作原理;

(3)

RSTP与MSTP(简介)。小结

本章主要讲述了:

(1) STP协议的第11章生成树协议(STP)技术11.1STP的产生11.2生成树协议(STP)的基本原理11.3快速生成树协议(RSTP)简介11.4多生成树协议(MSTP)简介小结第11章生成树协议(STP)技术11.1STP的产生

主要内容:

STP协议的基本工作原理的产生及解决的问题

STP协议

STP协议的类型主要内容:

 STP协议的基本工作原理的产生及解

单点故障会导致整个网络瘫痪。为了保证整个网络的可靠性和安全性,可以引入冗余链路或备份链路。物理上的备份链路会产生物理环路(或多重环路),从而导致广播风暴、重复帧以及MAC地址表不稳定(MAC地址漂移)等问题。同时,在实际的组网应用中经常会形成复杂的多环路连接。面对如此复杂的环路,网络设备必须有一种解决办法在存在物理环路的情况下阻止两层环路的发生。11.1STP的产生

单点故障会导致整个网络瘫痪。为了保证整个网络的可此时,为了保证网络可靠安全,同时又不产生环路问题,可以通过生成树协议来实现,即将路由器或交换机的某些端口置于阻塞状态,从而防止在冗余结构的网络拓扑中产生回路。此时,为了保证网络可靠安全,同时又不产生环路问题,可以通过生11.1.1广播风暴

我们可以通过图11-1来分析广播风暴是如何形成的。11.1.1广播风暴

我们可以通过图11-1来分析广

图11-1广播风暴(1)

图11-1广播风暴(1)在一个存在物理环路的两层网络中,主机X(Server/hostA)发送了一个广播数据帧,交换机A(SwitchA)从上方的端口接收到广播帧,做洪泛处理,转发至下面的端口。通过下面的连接,广播帧将到达交换机B(SwitchB)的下方端口。

交换机在下方的端口上收到了一个广播数据帧,将做洪泛处理,通过上方的端口转发此帧,交换机A将在上方端口重新接收到这个广播数据帧,如图11-2所示。

由于交换机执行的是透明桥的功能,转发数据帧时不对帧做任何处理。所以对于再次到来的广播帧,交换机A不能识别出此数据帧已经被转发过,交换机A还将对此广播帧做洪泛的操作。在一个存在物理环路的两层网络中,主机X(Server/h

图11-2广播风暴(2)

图11-2广播风暴(2)广播帧到达交换机B后会做同样的操作,并且此过程会不断进行下去,无限循环。以上分析的只是广播被传播的一个方向,实际环境中会在两个不同的方向上产生这一过程。在很短的时间内大量重复的广播帧被不断循环转发,消耗掉整个网络的带宽,而连接在这个网段上的所有主机设备也会受到影响,CPU将不得不产生中断来处理不断到来的广播帧,极大地消耗系统的处理能力,严重时可能导致死机。如图11-3所示。广播帧到达交换机B后会做同样的操作,并且此过程会不断进行

图11-3广播风暴(3)

图11-3广播风暴(3)一旦产生广播风暴系统将无法自动恢复,必须由系统管理员人工干预恢复网络状态。(某些设备在端口上可以设置广播限制,一旦特定时间内检测到广播帧超过了预先设置的阈值,即可进行某些操作,如关闭此端口一段时间,以减轻广播风暴对网络带来的损害。但这种方法并不能真正消除两层环路带来的危害。)一旦产生广播风暴系统将无法自动恢复,必须由系统管理员人工11.1.2数据帧的重复复制

我们可以通过图11-4来分析一个数据帧被多次复制的情况。

主机X(Server/hostX)发送一单播数据帧,目的为路由器Y(RouterY)的本地接口,而此时路由器Y的本地接口的MAC地址对于交换机(Switch)A与B都是未知的。

数据帧通过上方的网段直接到达路由器Y,同时到达交换机A上方的端口。11.1.2数据帧的重复复制

我们可以通过图11-4

图11-4数据帧复制(1)

图11-4数据帧复制(1)当交换机对于帧的目的MAC地址未知时,交换机会进行洪泛的操作。

交换机A会将此数据帧从下方的端口转发出来,数据帧到达交换机B的下方端口,交换机B的情况与交换机A相同,也会对此数据帧进行洪泛的操作,从上方的端口将此数据帧转发出来,同样的数据帧再次到达路由器Y的本地接口。如图11-5所示。

根据上层协议与应用的不同,同一个数据帧被传输多次可能导致应用程序的错误。当交换机对于帧的目的MAC地址未知时,交换机会进行洪泛的

图11-5数据帧复制(2)

图11-5数据帧复制(2)11.1.3MAC地址漂移

我们可以通过图11-6分析MAC地址表不稳定的问题。

主机X发送一单播数据帧,目的为路由器Y的本地接口,而此时路由器Y的本地接口的MAC地址对于交换机A与B都是未知的。

数据帧通过上方的网段到达交换机A与交换机B上方的端口。交换机A与交换机B将此数据帧的源MAC地址,即主机X的MAC地址与各自的port

0相关联并记录到MAC地址表中。11.1.3MAC地址漂移

我们可以通过图11-6分

图11-6MAC地址漂移(1)

图11-6MAC地址漂移(1)而此时两个交换机对此数据帧的目的MAC地址是未知的,当交换机对帧的目的MAC地址未知时,交换机会进行洪泛的操作。两台交换机都会将此数据帧从下方的port1转发出来并将到达对方的port1。

两个交换机都从下方的port1收到一个数据帧,其源地址为主机X的MAC地址,交换机会认为主机X连接在port1所在网段而意识不到此数据帧是经过其他交换机转发的,所以会将主机X的MAC地址改为与port1相关联并记录到MAC地址表中。交换机学习到了错误的信息,并且造成交换机MAC地址表的不稳定。这种现象也被称为MAC地址漂移,如图11-7所示。而此时两个交换机对此数据帧的目的MAC地址是未知的,当交

图11-7MAC地址漂移(2)

图11-7MAC地址漂移(2)

用生成树协议(Spanning-TreeProtocol,STP)可以在有物理环路的网络中阻止两层环路的产生,如图11-8所示。生成树协议能够自动发现冗余网络拓扑中的环路,保留一条最佳链路做转发链路,阻塞其他冗余链路,并且在网络拓扑结构发生变化的情况下重新计算,保证所有网段可达且无环路。11.2生成树协议(STP)的基本原理

用生成树协议(Spanning-TreePSTP协议的基本思想十分简单。大家知道,自然界中生长的树一般情况下是不会出现环路的,如果网络也能够像一棵树一样生长,就不会出现环路。于是,STP协议中定义了根桥(RootBridge)——生成树的参考点、根端口(RootPort)——非根桥到达根桥的最近端口、指定端口(DesignatedPort)——连接各网段的转发端口、路径开销(PathCost)——整个路径上端口开销之和等概念,目的就在于通过构造一棵自然树的方法达到裁剪冗余环路的目的,同时实现链路备份和路径最优化。用于构造这棵树的算法称为生成树算法SPA(SpanningTreeAlgorithm)。STP协议的基本思想十分简单。大家知道,自然界中生长的树一般

图11-8STP的作用

图11-8STP的作用11.2.1生成树协议STP的运作过程

1.根桥的选择

网桥之间必须要进行一些信息的交流。这些信息交流单元就称为配置消息BPDU(BridgeProtocolDataUnit)。STPBPDU是一种两层报文,目的MAC是多播地址0180C2000000,缺省情况下每2秒发出。所有支持STP的网桥都会接收并处理收到的BPDU报文。该报文的数据区里携带了用于生成树计算的所有有用信息。BPDU的作用除了在STP刚开始运行时选举根桥外,其他的作用还包括检测发生环路的位置,通告网络状态的改变,监控生成树的状态等。

BPDU数据单元的组成如图11-9所示。11.2.1生成树协议STP的运作过程

1.根桥的

图11-9BPDU数据单元的组成

图11-9BPDU数据单元的组成根桥选举的依据是网桥优先级和网桥MAC地址组合成的桥ID(BridgeID)。桥ID最小的网桥将成为网络中的根桥。各网桥都以默认配置启动,在网桥优先级都一样(默认优先级是32768)的情况下,MAC地址最小的网桥成为根桥,它的所有端口的角色都成为指定端口,进入转发状态;其他的网桥均为非根桥。如图11-10所示,两个网桥的优先级是一样的,此时,交换机X(SwitchX)的MAC地址较小,则为根桥;交换机Y(SwitchY)为非根桥。根桥选举的依据是网桥优先级和网桥MAC地址组合成的桥ID

图11-10根桥的选择图11-10根桥的选择开始启动STP时,所有交换机将根桥ID设置为与自己的桥ID相同,即认为自己是根桥,如图11-11所示。

当收到其他交换机发出的BPDU并且其中包含比自己的桥ID小的根桥ID时,交换机将此学习到的具有最小桥ID的交换机作为STP的根桥。

当所有交换机都发出BPDU后,具有最小桥ID的交换机被选择作为整个网络的根桥。根桥选举出以后,在正常情况下只有根桥每隔2秒从所有指定端口发出BPDU。开始启动STP时,所有交换机将根桥ID设置为与自己的桥I

图11-11根桥的产生图11-11根桥的产生

2. STP的端口类型的确定

STP的端口类型包括指定端口、根端口以及阻塞端口三种。

1)指定端口的选择规则

(1)根桥上的端口均是指定端口;

(2)每条链路上有且只有一个指定端口DP;

(3)判断:

路径开销

+

BridgeID(优先级

+

MAC地址)

其中,路径开销

=

100

Mb/s/链路带宽;当拓扑结构比较复杂时,指定端口的确定要通过路径开销的大小来确定。2. STP的端口类型的确定

STP的端口类型包括2)根端口、阻塞端口的选择规则

(1)根端口是针对非根桥而言的;

(2)每个非根桥上有且只有一个根端口RP;

(3)根端口是到根桥最近的端口;

(4)判断:

路径开销

+

BridgeID(优先级

+

MAC地址)

+

PortID

除了指定端口和根端口以外,剩余的端口就是阻塞端口,从而有效阻止了两层环路的形成,保证了整个网络的可靠性和安全性。如图11-12所示。2)根端口、阻塞端口的选择规则

(1)根端口是针

图11-12STP的端口类型的确定

图11-12STP的端口类型的确定根路径是根据BPDU中根路径开销、传输桥ID、端口ID进行选择的。

端口ID由1字节端口优先级与1字节端口号组成。根路径开销为到达根桥所经过的所有端口开销的总和。

当非根桥检测到了环路的存在后,必须保留一条链路做转发链路,阻塞掉其他冗余链路。选择转发链路的方式为:选择链路开销最小的链路做转发链路,如果存在多条链路开销相等且具有最小开销的链路,则选择有最小转发桥ID的链路;如果存在多条桥ID相同的有最小链路开销的链路,则选择有最小转发端口ID的链路,如图11-13和图11-14所示。根路径是根据BPDU中根路径开销、传输桥ID、端口ID进

图11-13STP的端口类型的产生图11-13STP的端口类型的产生

图11-14STP的端口类型的产生

图11-14STP的端口类型的产生11.2.2STP的端口状态

如图11-15所示,交换机的端口在STP环境中共有5种状态:阻塞(Blocking)、倾听(Listening)、学习(Learning)、转发(Forwarding)、关闭(Off)。关闭状态为交换机非工作状态(休息),图11-15未画出。

交换机上一个原来被阻塞掉的端口由于在最大老化时间内没有收到BPDU,从阻塞状态转变为倾听状态,倾听状态经过一个转发延迟(15s)到达学习状态,经过一个转发延迟时间的MAC地址学习过程后进入转发状态。

如果到达倾听状态后发现本端口在新的生成树中不应该由此端口转发数据,则直接回到阻塞状态。11.2.2STP的端口状态

如图11-15所示,

图11-15STP的端口状态

图11-15STP的端口状态11.2.3STP的计时器(Timer)

STP时间Timer如图11-16所示。

最大的老化时间(MaxAgeTime):数值范围为6~40s,缺省为20s。

如果在超出最大老化时间之后,还没有从原来转发的端口收到根桥发出的BPDU,那么交换机认为链路或端口发生了故障,需要重新计算生成树,打开一个原来阻塞掉的端口。11.2.3STP的计时器(Timer)

STP时间如果交换机在超出最大老化时间之后没有在任何端口收到BPDU,说明此交换机与根桥失去了联系,此交换机将充当根桥,向其它所有的交换机发出BPDU数据包。如果该交换机确实具有最小的桥ID,那么它将成为根桥。

当拓扑发生变化时,新的配置消息要经过一定的时延才能传播到整个网络,这个时延称为转发延迟(ForwardDelay),协议默认值是15s。如果交换机在超出最大老化时间之后没有在任何端口收到BPD

图11-16STP时间Timer类型

图11-16STP时间Timer类型在所有网桥收到这个变化的消息之前,若旧拓扑结构中处于转发的端口还没有发现自己应该在新的拓扑中停止转发,则可能存在临时环路。为了解决临时环路的问题,生成树使用了一种定时器策略,即在端口从阻塞状态到转发状态中间加上一个只学习MAC地址但不参与转发的中间状态,两次状态切换的时间长度都是转发延迟,这样就可以保证在拓扑变化时不会产生临时环路。但由此导致STP的切换时间比较长,典型的切换时间为最大的老化时间加2次转发延迟时间,约为50s。在所有网桥收到这个变化的消息之前,若旧拓扑结构中处于转发对于运行STP的交换机来说,收敛(Convergence)的含义就是指所有的交换机的端口都处于Forwarding或Blocking状态,状态稳定,没有拓扑结构发生变化。

当网络拓扑发生变化时,交换机必须重新计算生成树,在新的生成树没有完全计算、生成之前,为了防止临时环路的产生,所有链路都不转发数据。从发现状态改变到新的生成树计算完成的这段时间叫做收敛时间。通常STP的收敛时间约为50s。

由于标准STP的收敛时间较长,导致很多应用在切换过程中受影响。针对这个问题提出了RSTP(IEEE802.1w),即快速生成树协议,可以显著减少收敛时间。对于运行STP的交换机来说,收敛(Convergence

RSTP(RapidSpanningTreeProtocol)称为快速生成树协议,它比STP(即SSTP模式)提供了更快的收敛速度,即在网络拓扑发生变化时,原来冗余的交换机端口在点对点的连接条件下,端口状态可以迅速迁移(Discarding→Forword)。11.3快速生成树协议(RSTP)简介

RSTP(RapidSpanningTr11.3.1端口角色

RSTP靠指派端口角色和判断活跃拓扑来提供生成树的快速收敛。RSTP建立于IEEE802.1DSTP来选择有最高交换机优先级(最低数字的优先级值)的交换机作为根交换机,正如“根交换机选择”部分中描述的那样。接着,RSTP指派这些端口角色中的一个给特定端口:

根端口——当交换机转发数据包给根交换机时,提供最好路径(最低开销)。

指定端口——连接指定交换机,当从局域网转发数据包到根交换机时,该指定交换机拥有最短路径开销。这个把指定交换机连在局域网上的端口被称为指定端口。11.3.1端口角色

RSTP靠指派端口角色和判断活供选择端口——提供一条由当前根部端口提供的到该根交换机的供选择路径。

备份端口——作为由一个指定端口提供的到生成树叶节点(末端节点)路径的备份。当两个端口被一个点到点链路的一个环回(Loopback)连在一起时,或者当一个交换机有两个或多个到共享局域网段的连接时,一个备份端口才能存在。

禁用端口——在生成树运行中不担当任何角色。

一个有根端口或指定接口角色的端口被包含在活跃拓扑中。一个有供选择或备份端口角色的端口不被包含在活跃拓扑中。供选择端口——提供一条由当前根部端口提供的到该根交换机的在整个网络都有协调的端口角色的一个稳定拓扑中,RSTP确保每个根端口和指定端口立即转换为转发状态,同时所有的冗余和备份端口总是在丢弃状态(对等于802.1D中的阻断)。端口状态控制转发和学习有步骤地运行。表11-1提供了一个STP(802.1D)和RSTP端口状态的对比。指定端口始于监听状态。在整个网络都有协调的端口角色的一个稳定拓扑中,RSTP确

表11-1端口状态对比表11-1端口状态对比11.3.2快速收敛

RSTP提供交换机,一个交换端口,或者一个局域网失效后的可连通性的快速恢复。它为边缘端口、新根端口以及下面通过点到点链路而连接的端口提供了快速收敛。

边缘端口——如果用户在一个RSTP交换机上用接口配置命令配置一个端口为边缘端口,该边缘端口立即转换为转发状态。一个边缘端口就像一个未启动STP的端口,并且用户应该只在连接了一个单独的末端站点的端口上启用它。

根端口——如果RSTP选择了一个新端口,则它阻断旧根端口并且立即转换新根端口为转发状态。11.3.2快速收敛

RSTP提供交换机,一个交换端点到点链路——如果通过一个点到点链路连接一个端口到另一个端口,并且本地端口成为一个指定端口,它使用计划—同意握手(Proposal-AgreementH

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论