首页> 中国专利> 一种基于RRPP的MVRP实现方法和设备

一种基于RRPP的MVRP实现方法和设备

摘要

本发明提供了一种基于快速环网保护协议(RRPP)的多虚拟局域网注册协议(MVRP)实现方法,该方法包括:MVRP运行在各个RRPP域上,在RRPP域的RRPP环上设备的阻塞端口,对MVRP报文携带的该RRPP域的域保护VLAN属性进行丢弃,在RRPP域的RRPP环上设备的非阻塞端口,对MVRP报文携带的该RRPP域的域保护VLAN进行广播,并按照RRPP的转发拓扑发送该RRPP域的域保护VLAN。本发明基于与方法同样的发明构思,还提出了一种基于RRPP的MVRP实现设备,解决了MVRP与RRPP协议协同工作的问题。

著录项

  • 公开/公告号CN102130912A

    专利类型发明专利

  • 公开/公告日2011-07-20

    原文格式PDF

  • 申请/专利权人 杭州华三通信技术有限公司;

    申请/专利号CN201110056134.1

  • 发明设计人 徐鹏飞;

    申请日2011-03-09

  • 分类号H04L29/06(20060101);H04L12/24(20060101);H04L12/56(20060101);H04L12/437(20060101);

  • 代理机构11018 北京德琦知识产权代理有限公司;

  • 代理人谢安昆;宋志强

  • 地址 310053 浙江省杭州市高新技术产业开发区之江科技工业园六和路310号华为杭州生产基地

  • 入库时间 2023-12-18 03:00:25

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-05-10

    专利权人的姓名或者名称、地址的变更 IPC(主分类):H04L29/06 变更前: 变更后: 申请日:20110309

    专利权人的姓名或者名称、地址的变更

  • 2013-12-25

    授权

    授权

  • 2011-10-05

    实质审查的生效 IPC(主分类):H04L29/06 申请日:20110309

    实质审查的生效

  • 2011-07-20

    公开

    公开

说明书

技术领域

本发明涉及移动通信技术,尤其涉及一种基于快速环网保护协议(RRPP)的多虚拟局域网注册协议(MVRP)实现方法和设备。

背景技术

多虚拟局域网注册协议(MVRP,Multiple Vlan Register Protocol)是多注册协议(MRP)应用的一种,它基于MRP的工作机制来维护设备中的VLAN动态注册信息,并将该信息向其它设备传播。当设备启动了MVRP之后,就能够接收来自其它设备的VLAN注册信息,并动态更新本地的VLAN注册信息,包括当前的VLAN成员及这些VLAN成员可通过哪个端口到达等;此外,设备还能够将本地的VLAN注册信息向其它设备传播,从而使同一局域网内所有设备的VLAN信息都达成一致。MVRP传播的VLAN注册信息既包括本地手工配置的静态注册信息,也包括来自其它设备的动态注册信息。其中,通过手工创建的VLAN称为静态VLAN,通过MVRP协议创建的VLAN称为动态VLAN。

MVRP用于在设备间发布并学习VLAN配置信息,使得设备能够自动同步VLAN配置,减少网管人员的配置工作。在网络拓扑变化后,MVRP根据新的拓扑重新发布及学习VLAN,做到实时与网络拓扑同步更新。

MVRP的总体功能与GVRP类似,但基于GVRP作了如下方面的改进:

1)报文简练,可以在一个多Vlan注册协议数据单元(MVRPDU)中携带4K VLAN的属性消息;

2)与拓扑协议配合紧密,能够更高效地感知并处理拓扑变化。

快速环网保护协议(RRPP,Rapid Ring Protection Protocol)是一个专门应用于以太网环的链路层拓扑协议。它在以太网环完整时能够防止数据环路引起的广播风暴,而当以太网环上一条链路故障时能迅速恢复环网上各个节点之间的通信通路,具备较高的收敛速度。

以太网环上每一台交换机设备都称为一个节点,每个RRPP环上有一个且只有一个主节点,它是RRPP环上的主要决策和控制节点。RRPP环上除主节点之外的其它节点都可以称为传输节点。主节点是环网状态主动检测机制(Polling机制)的发起者,也是网络拓扑发生改变后执行操作的决策者。传输节点负责监测自己的直连RRPP链路的状态,并把链路变化通知主节点,然后由主节点来决策如何处理。

主节点和传输节点接入以太网环的两个端口中,一个为主端口,另一个为副端口,端口的角色由用户的配置决定。主节点有两种状态:完整(Complete)状态和故障(Failed)状态。Complete状态说明RRPP环网上所有的链路都处于UP状态,Failed状态说明RRPP环网上有的链路处于Down状态。传输节点有三种状态:Link-Up状态、Link-Down状态和临时阻塞(Preforwarding)状态。Link-Up状态说明传输节点的主端口和副端口都处于UP状态,Link-Down状态说明传输节点的主端口或副端口处于Down状态,Preforwarding状态说明传输节点的主端口或副端口处于阻塞状态。

参见图1,图1为RRPP组网示意图。图1中环1和环2的级别分别配置为0和1,则环1为主环,环2为子环。设备A为环1的主节点,设备B、设备C和设备D为环1的传输节点;设备E为环2的主节点,设备B为环2的边缘节点,设备C为环2的辅助边缘节点。主节点的主端口为11,主节点的副端口为12;设备B、设备C同时位于环1和环2上,设备B的主端口13和副端口14是接入主环的端口,因此是公共端口。设备B的端口21只接入子环,因此是边缘端口。

现有技术中通过发送RRPP报文来维持RRPP环网的状态正常。RRPP报文有很多种类型,例如,环路状态检测(HELLO)报文、链路UP(LINK-UP)报文、链路DOWN(LINK-DOWN)报文、刷新转发数据库(COMMON-FLUSH-FDB)报文、环网恢复刷新转发数据库(COMPLETE-FLUSH-FDB)报文等等。

下面详细介绍RRPP的运行机制,一个RRPP环或多个RRPP环,可以配置在一个域或多个域中,其中多个RRPP环之间可以有一个共同节点,也可以有多个共同节点。

1)轮询机制是RRPP环的主节点主动检测环网健康状态的机制。

主节点周期性地从其主端口发送Hello报文,依次经过各传输节点在环上传播。如果环路是健康的,主节点的副端口将在定时器超时前收到Hello报文,主节点将保持副端口的阻塞状态。如果环路是断裂的,主节点的副端口在定时器超时前无法收到Hello报文,主节点将解除数据VLAN在副端口的阻塞状态,同时发送Common-Flush-FDB报文通知所有传输节点,使其更新各自的MAC表项和ARP/ND表项。

2)链路DOWN告警机制,当传输节点、边缘节点或者辅助边缘节点发现自己任何一个属于RRPP域的端口down时,都会立刻发送Link-Down报文给主节点。主节点收到Link-Down报文后立刻解除数据VLAN在其副端口的阻塞状态,并发送Common-Flush-FDB报文通知所有传输节点、边缘节点和辅助边缘节点,使其更新各自的MAC表项和ARP/ND表项。各节点更新表项后,数据流则切换到正常的链路上。

3)环路恢复时,传输节点、边缘节点或者辅助边缘节点上属于RRPP域的端口重新up后,主节点可能会隔一段时间才能发现环路恢复。这段时间对于数据VLAN来说,网络有可能形成一个临时的环路,从而产生广播风暴。

为了防止产生临时环路,非主节点在发现自己接入环网的端口重新up后,立即将其临时阻塞(只允许控制VLAN的报文通过),在确信不会引起环路后,才解除该端口的阻塞状态。

4)主环链路down,多归属子环广播风暴抑制机制。

参见图2,图2为双归属环示意图。如图2所示,假设环1为主环,环2和环3为子环。当边缘节点和辅助边缘节点之间的两条主环链路均处于down状态时,子环2和子环3的主节点会放开各自的副端口,导致设备B、设备C、设备E和设备F之间形成环路,从而产生广播风暴。

为了防止该环路的产生,在此种情况下边缘节点会临时阻塞边缘端口,在确信不会引起环路后,才解除该边缘端口的阻塞状态。

5)负载分担机制,在同一个环网中,可能同时存在多个VLAN的数据流量,RRPP可以实现流量的负载分担,即不同VLAN的流量沿不同的路径进行转发。

通过在同一个环网上配置多个RRPP域,不同RRPP域发送不同VLAN(称为保护VLAN)的流量,实现不同VLAN的数据流量在该环网中的拓扑不同,从而达到负载分担的目的。

参见图3,图3为环负载分担组网示意图。如图3所示,域1和域2都配置环1为主环,两个RRPP域所保护的VLAN不同。设备A为域1中环1的主节点;设备B为域2中环1的主节点。通过配置,可以实现不同VLAN分别阻塞不同的链路,从而实现单环的负载分担。

6)快速检测机制,RRPP的快速收敛依赖于传输节点能够快速检测到链路故障,并立即发出通知。而在RRPP的实际运用中,环网中的某些设备并不支持RRPP协议,由于无法感知到这些设备之间的链路故障,RRPP只能通过超时机制进行链路切换,但这将导致流量中断时间过长,不能达到用户毫秒级切换的需要。

RRPP快速检测机制可以解决上述问题。在配置了快速检测功能之后,当RRPP在检测以太网环的链路状况时:

主节点会以Fast-Hello定时器周期性地从主端口发送Fast-Hello报文:在Fast-Fail定时器超时前,若其副端口收到了该报文,就认为环路处于健康状态;否则,认为环路处于断裂状态。

边缘节点会以最高精度定时器周期性地从公共端口发送Fast-Edge-Hello报文:在三倍于最高精度定时器值的时间间隔内,若辅助边缘节点没有收到该报文,就认为子环在主环上的传输通道处于断裂状态。

RRPP的正常运行依赖于用户正确的配置。下面介绍几种典型的组网。

参见图4,图4为单环组网示意图。如图4所示,网络拓扑中只有一个环,此时只需要定义一个RRPP域,图4中定义该RRPP域为域1。

参见图5,图5为相切环组网示意图,如图5所示,网络拓扑中有环1和环2,两环之间只有一个公共节点,即设备B,此时需针对环1定义域1,环2定义域2,当网络拓扑中有两个以上的相切环时,需针对每个环单独定义一个RRPP域。

如图1所示,网络拓扑中有两个环,各环之间有两个公共点,此时只需定义一个RRPP域,即域1,选择环1为主环,环2为子环。当有两个以上环的时候,选择其中一个为主环,其它为子环。

网络拓扑中有两个或两个以上的环,各环之间有两个公共节点,且这两个公共节点都相同,此时可定义一个RRPP域,选择其中一个为主环,其它环为子环。如图2所示,环1、环2和环3之间分别有设备B和设备C两个公共节点,定义域1,选择环1为主环,环2和环3为子环。

在单环网络拓扑中,可以通过配置多域实现链路的负载分担。

如图3所示,域1和域2都配置环1为主环,两个域所保护的VLAN不同。设备A为域1中Ring 1的主节点;设备B为域2中环1的主节点。通过配置,可以实现不同VLAN分别阻塞不同的链路,从而实现单环的负载分担。

在相交环网络拓扑中,也可以通过配置多域实现链路的负载分担。

参见图6,图6为相交环负载分担组网示意图。如图6所示,域1和域2都配置环1和环2分别为其主环和子环,两个域所保护的VLAN不同。设备A为域1中环1的主节点;设备D为域2中环1的主节点;设备E分别为域1和域2中子环环2的主节点,但阻塞的端口不同。通过配置,可以实现不同VLAN的流量分别在子环和主环通过不同的链路,从而实现相交环的负载分担。

综上所述,在现有实现中,还未提出基于RRPP的MVRP实现方法,MVRP与RRPP未能协同工作。

发明内容

有鉴于此,本发明主要目的是提供一种基于RRPP的MVRP实现方法,解决MVRP与RRPP协议协同工作的问题。该方法包括:RRPP以域为单位进行拓扑计算,每个RRPP域维护一个转发拓扑,MVRP运行于RRPP的各个域上,RRPP域的RRPP环上设备的阻塞端口收到MVRP报文,将该MVRP报文按虚拟局域网VLAN属性进行解析,从解析的VLAN中筛选出该RRPP域的域保护VLAN,并将所述域保护VLAN属性丢弃;

RRPP环上设备的非阻塞端口收到MVRP报文,将该MVRP报文按VLAN属性进行解析,从解析的VLAN中筛选出该RRPP域的域保护VLAN,并将所述域保护VLAN广播给该RRPP域的RRPP环上设备本地的其它端口,所述其它端口按照RRPP的转发拓扑发送所述域保护VLAN。

其中,所述将所述域保护VLAN广播给该RRPP环上设备本地的其它端口时,如果所述RRPP环上设备本地的其它端口有阻塞所述域保护VLAN的阻塞端口,则阻止所述域保护VLAN广播给所述RRPP环上设备本地的阻塞端口。

所述RRPP环上设备的非阻塞端口从解析的VLAN中筛选出该RRPP域的域保护VLAN,之后进一步包括:判断之前是否在所述RRPP环上设备本地创建过该RRPP域的域保护的动态VLAN,如果是,将所述非阻塞端口加入所述RRPP域的域保护的动态VLAN中;否则,在本地创建所述RRPP域的域保护的动态VLAN,并将所述设备的非阻塞端口加入所述RRPP域的域保护的动态VLAN中。

当该RRPP域中的RRPP的转发拓扑发生变化,生成刷新转发数据库Flush-FDB消息时,将创建的所述RRPP域的域保护的动态VLAN全部注销,将加入所述RRPP域的域保护的动态VLAN的RRPP的非阻塞端口退出所述RRPP域的域保护的动态VLAN,并快速重新声明设备的静态VLAN及通过非RRPP端口学习的动态VLAN。

所述Flush-FDB消息为环路消失刷新转发数据库Common-Flush-FDB消息时,表示链路发生故障引起的RRPP转发拓扑的变化;或,

所述Flush-FDB消息为环网恢复刷新转发数据库Complete-Flush-FDB消息时,表示故障链路恢复引起的RRPP转发拓扑的变化。

本发明的另一个主要目的是提供一种基于RRPP的MVRP实现设备,解决MVRP与RRPP协议协同工作的问题。RRPP以域为单位进行拓扑计算,每个RRPP域维护一个转发拓扑,MVRP运行于RRPP的各个域上,该设备具有阻塞端口,该阻塞端口包括:接收模块、解析模块、筛选模块、丢弃模块;

所述接收模块,与所述解析模块相连,用于接收其它端口发来的MVRP报文,并将该MVRP报文发送给所述解析模块;

所述解析模块,与所述筛选模块相连,用于将所述接收模块发来的MVRP报文根据虚拟局域网VLAN属性进行解析,并将解析后的VLAN发送给所述筛选模块;

所述筛选模块,与所述丢弃模块相连,用于从所述解析模块发来的解析后的VLAN中筛选出该RRPP域的域保护VLAN,将该域保护VLAN发送给所述丢弃模块;

所述丢弃模块,用于丢弃所述筛选模块发来的域保护VLAN的属性。

本发明的另一个主要目的是提供一种基于快速环网保护协议RRPP的多虚拟局域网注册协议MVRP实现设备,解决MVRP与RRPP协议协同工作的问题。RRPP以域为单位进行拓扑计算,每个RRPP域维护一个转发拓扑,MVRP运行于RRPP的各个域上,该设备具有非阻塞端口,该非阻塞端口包括:接收模块、解析模块、筛选模块、广播转发模块;

所述接收模块,与所述解析模块相连,用于接收MVRP报文,并将该MVRP报文发送给所述解析模块;

所述解析模块,与所述筛选模块相连,用于将所述接收模块发来的MVRP报文根据虚拟局域网VLAN属性进行解析,并将解析后的VLAN发送给所述筛选模块;

所述筛选模块,与所述广播转发模块相连,用于从所述解析模块发来的VLAN中筛选出该RRPP域的域保护VLAN,并将该RRPP域的域保护VLAN发送给所述广播转发模块;

所述广播转发模块,收到所述筛选模块发来的所述RRPP域的域保护VLAN,将其广播给设备本地的其它端口,所述设备的其它端口按照RRPP的转发拓扑发送该RRPP域的域保护VLAN。

其中,所述非阻塞端口进一步包括:判断模块、创建模块和加入模块;

所述判断模块,与所述筛选模块、所述创建模块和所述加入模块相连,用于判断之前是否在设备本地创建过所述筛选模块筛选出的该RRPP域的域保护的动态VLAN,如果是,将所述RRPP域保护VLAN发送给所述加入模块;否则,将所述RRPP域保护VLAN发送给所述创建模块;

所述创建模块,与所述加入模块相连,收到所述判断模块发来的RRPP域的域保护VLAN,在本地创建该RRPP域的域保护的动态VLAN,并将该RRPP域的域保护VLAN发送给所述加入模块;

所述加入模块,收到所述判断模块或所述创建模块发来的RRPP域的域保护VLAN,将所述加入模块所在的RRPP端口加入该RRPP域的域保护的动态VLAN中。

所述非阻塞端口进一步包括:检查模块和阻止模块;

所述检查模块,与所述筛选模块和所述阻止模块相连,检查到设备本地有阻塞所述筛选模块筛选出的RRPP域的域保护VLAN的阻塞端口,则将该阻塞端口信息发送给所述阻止模块;

所述阻止模块,与所述筛选广播模块相连,收到所述检查模块发来的阻塞端口的信息后,阻止所述筛选广播模块将所述RRPP域的域保护VLAN广播给设备本地的阻塞端口。

所述非阻塞端口进一步包括:消息生成模块和注销声明模块;

所述消息生成模块,与所述注销声明模块相连,当该RRPP域中的RRPP的转发拓扑发生变化时,所述消息生成模块生成刷新转发数据库Flush-FDB消息,并将该消息发送所述注销声明模块;

所述注销声明模块,与所述创建模块和所述加入模块相连,收到所述消息生成模块发来的消息后,将所述创建模块创建的该RRPP域的域保护的动态VLAN全部注销,将所述加入模块所在的非阻塞端口退出该RRPP域的域保护的动态VLAN,并快速重新声明设备的静态VLAN及通过非RRPP端口学习的动态VLAN。

所述Flush-FDB消息为环路消失刷新转发数据库Common-Flush-FDB消息时,表示链路发生故障引起的RRPP转发拓扑的变化;或,

所述Flush-FDB消息为环网恢复刷新转发数据库Complete-Flush-FDB消息时,表示故障链路恢复引起的RRPP转发拓扑的变化。

由上可见,本发明MVRP运行在RRPP的各个域上,在RRPP环设备的阻塞端口,对MVRP报文携带的域保护VLAN进行阻塞,在RRPP环设备的非阻塞端口,对MVRP报文携带的域保护VLAN进行广播,并按照RRPP的转发拓扑发送该RRPP域的域保护VLAN。解决了MVRP与RRPP协议协同工作的问题。

附图说明

图1为RRPP组网示意图;

图2为双归属环示意图;

图3为单环负载分担组网示意图;

图4为单环组网示意图;

图5为相切环组网示意图;

图6为相交环负载分担组网示意图;

图7为基于RRPP域MVRP转发方法流程图;

图8为本发明实施例单环负载分担组网示意图;

图9为设备C和设备D间链路故障示意图;

图10为基于RRPP的MVRP实现的阻塞端口结构示意图;

图11基于RRPP的MVRP实现的非阻塞端口结构示意图。

具体实施方式

为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本发明所述方案作进一步地详细说明。

本发明的基本思想为:MVRP运行于RRPP的各个域上,RRPP环上设备的阻塞端口收到MVRP报文,将该MVRP报文按虚拟局域网VLAN属性进行解析,从解析的VLAN中筛选出该RRPP域的域保护VLAN,并将该域保护VLAN属性丢弃;RRPP环上设备的非阻塞端口收到MVRP报文,将该MVRP报文按VLAN属性进行解析,从解析的VLAN中筛选出该RRPP域的域保护VLAN,并广播给该RRPP环上设备本地的其它端口,按照RRPP的转发拓扑发送该RRPP域的域保护VLAN。

RRPP以域为单位进行拓扑计算,每个RRPP域维护一个转发拓扑,MVRP运行于RRPP的各个域上。

下面参照附图,举具体实施例,详细说明基于RRPP的MVRP报文转发。

参见图7,图7为基于RRPP域MVRP转发方法流程图。具体步骤为:

步骤701,MVRP运行于RRPP的各个域上。

步骤702,RRPP域的RRPP环上设备的阻塞端口收到MVRP报文,将该MVRP报文按虚拟局域网VLAN属性进行解析。

步骤703,从解析的VLAN中筛选出该RRPP域的域保护VLAN,并将该RRPP域的域保护VLAN属性丢弃。

在步骤703中将该RRPP域的域保护VLAN属性丢弃,即表示将该VLAN注销,不对其做其它处理,如本地学习,或者将其广播等。

步骤704,RRPP域的RRPP环上设备的非阻塞端口收到MVRP报文,将该MVRP报文按VLAN属性进行解析。

步骤705,从解析的VLAN中筛选出该RRPP域的域保护VLAN,并广播给该RRPP环上设备本地的其它端口,按照RRPP的转发拓扑发送该RRPP域的域保护VLAN。

在步骤705中,按照RRPP的转发拓扑发送该RRPP域的域保护VLAN,与现有技术对VLAN的转发一致,在这里不再赘述。

在配置的时候,一个环或多个环可能配置在一个域中,也可能配置在多个域中,其中多个环之间可以有一个共同节点,也可以有多个共同节点。下面以单环配置两个域为例来介绍MVRP的报文转发。

参见图8,图8为本发明实施例单环负载分担组网示意图。图8中,RRPP物理环中配置了两个域:域1和域2。域1中,环的阻塞端口以右斜双竖线标记,域2中,环的阻塞端口以左斜双竖线标记,域1中的环形成“u”形转发拓扑,而域2中的环形成“n”形转发拓扑。

在图8所示的网络中,MVRP以域1和域2中生成的转发拓扑为基础,分别在域1和域2中进行MVRP报文转发。以域1为例,来说明MVRP报文在域1中的传播。

域1中设备A的阻塞端口收到MVRP报文后,将该MVRP报文按VLAN属性进行解析,从解析的VLAN中筛选出域1的域保护VLAN,将该域保护VLAN的属性丢弃。

域1中设备B的端口81为非阻塞端口,域1中设备B的端口81收到MVRP报文后,将该MVRP报文按VLAN属性进行解析,由于设备B的端口81为非阻塞端口,因此,从解析的VLAN中筛选出域1的域保护VLAN,判断之前是否在设备B本地创建过域1的域保护的动态VLAN,如果是,将设备B的端口81加入域1的域保护的动态VLAN中;否则,在设备B本地创建域1的域保护的动态VLAN,并将设备B的端口81加入域1的域保护的动态VLAN中。同时将域1的域保护VLAN广播给设备B本地的其它端口,其它端口按照RRPP的转发拓扑发送该域1的域保护VLAN,具体转发过程如下:

如端口82,收到该域1的域保护VLAN且是与该域1的域保护VLAN的目的端口连接的端口,将该域保护VLAN组装在MVRP报文中,转发给目的端口。此转发过程和现有技术一致,不再赘述。

如果设备B上的本地其它端口,如端口82为阻塞域1的域保护VLAN的阻塞端口,则阻止域1的域保护VLAN向该阻塞端口82广播。设备C和设备D的端口处理方式和设备B的端口一致,不再赘述。

对于域2来说,只是阻塞点设置位置不同,处理同上述所描述域1中MVRP报文转发一致,这里不再赘述。

RRPP的转发拓扑在环链路状态发生变化时会相应变化,拓扑变化由Flush-FDB消息进行通知。由于MVRP协议的传播过程是先本地学习,再继续传播,当RRPP域中的RRPP的转发拓扑发生变化,生成刷新转发数据库(Flush-FDB)(包括Complete-Flush-FDB和Common-Flush-FDB)消息时,将在RRPP端口学习到的该RRPP域的域保护的动态VLAN全部注销,将加入该RRPP域的非阻塞端口退出该RRPP域的域保护的动态VLAN,并快速重新声明设备的静态VLAN及通过非RRPP端口学习的动态VLAN。

其中,Flush-FDB消息为Common-Flush-FDB消息时,表示链路发生故障引起的RRPP转发拓扑的变化;Flush-FDB消息为Complete-Flush-FDB消息时,表示故障链路恢复引起的RRPP转发拓扑的变化。

下面以图9为例,详细描述RRPP转发拓扑发生变化时,对基于RRPP的MVRP实现的影响。

参见图9,图9为设备C和设备D间链路故障示意图。图9中,阻塞端口在设备A的一个端口处,设备C和设备D间的链路故障,转发拓扑为“n”,此时原阻塞端口不再对域保护VLAN进行阻塞。

在设备C和设备D间路径故障时,即域1的转发拓扑变化时,产生Common-Flush-FDB消息,因而MVRP协议在各RRPP设备上,可以以Common-Flush-FDB作为触发点,完成RRPP端口创建的域1的域保护的动态VLAN的注销,将加入域1的RRPP端口退出域1的域保护的动态VLAN,并开始快速地声明设备的静态VLAN及通过非RRPP端口学习的动态VLAN,使得VLAN属性能在新的拓扑下快速更新并稳定。

当设备C和设备D间路径故障恢复时,设备A的阻塞端口重新对域保护VLAN进行阻塞,形成新的转发拓扑为“u”形。即域1的转发拓扑变化,产生Complete-Flush-FDB消息,因而MVRP协议在各RRPP设备上,可以以Complete-Flush-FDB作为触发点,完成RRPP端口创建的域1的域保护的动态VLAN的注销,将加入域1的RRPP端口退出域1的域保护的动态VLAN,并开始快速地声明设备的静态VLAN及通过非RRPP端口学习的动态VLAN,使得VLAN属性能在新的拓扑下快速更新并稳定。

在设备C和设备D之间的链路故障时,设备A会学习到设备B的静态VLAN信息,比如说VLAN100,在路径故障恢复时,该VLAN100会被注销,因此,VLAN100不会继续向设备D发布,不会形成VLAN信息的发布环路,不会产生多余的VLAN信息。

基于与上述方法同样的发明思想,本发明还提出一种基于RRPP的MVRP实现设备。

一种基于RRPP的MVRP实现设备,RRPP以域为单位进行拓扑计算,每个RRPP域维护一个转发拓扑,MVRP运行于RRPP的各个域上,该设备具有阻塞端口,下面参见附图,详细描述该阻塞端口的结构。

参见图10,图10为一种基于RRPP的MVRP实现的阻塞端口结构示意图,该阻塞端口包括:接收模块1001、解析模块1002、筛选模块1003、丢弃模块1004。

接收模块1001,与解析模块1002相连,用于接收其它端口发来的MVRP报文,并将该MVRP报文发送给解析模块1002。

解析模块1002,与筛选模块1003相连,用于将接收模块1001发来的MVRP报文根据VLAN属性进行解析,并将解析后的VLAN发送给筛选模块1003。

筛选模块1003,与丢弃模块1004相连,用于从解析模块1002发来的解析后的VLAN中筛选出该RRPP域的域保护VLAN,将该域保护VLAN发送给丢弃模块1004;

丢弃模块1004,用于丢弃筛选模块1003发来的域保护VLAN的属性。

一种基于RRPP的MVRP实现设备,RRPP以域为单位进行拓扑计算,每个RRPP域维护一个转发拓扑,MVRP运行于RRPP的各个域上,该设备具有非阻塞端口,下面参见附图,详细描述该非阻塞端口的结构。

参见图11,图11为基于RRPP的MVRP实现的非阻塞端口结构示意图。该非阻塞端口包括:接收模块1101、解析模块1102、筛选模块1103和广播转发模块1104。

接收模块1101,与解析模块1102相连,用于接收其它端口发来的MVRP报文,并将该MVRP报文发送给解析模块1102。

解析模块1102,与筛选模块1103相连,用于将接收模块1101发来的MVRP报文根据VLAN属性进行解析,并将解析后的VLAN发送给筛选模块1103。

筛选模块1103,与广播转发模块1104相连,用于从解析模块1102发来的VLAN中筛选出该RRPP域的域保护VLAN,并将该RRPP域保护VLAN发送给广播转发模块1104。

广播转发模块1104,收到筛选模块1103发来的该RRPP域的域保护VLAN,将其广播给设备本地的其它端口,这些其它端口按照RRPP的转发拓扑发送该RRPP域的域保护VLAN。

该非阻塞端口进一步包括:判断模块1105、创建模块1106和加入模块1107。

判断模块1105,与筛选模块1103、创建模块1106和加入模块1107相连,用于判断之前是否在设备本地创建过筛选模块1103筛选出的RRPP域的域保护的动态VLAN,如果是,将该RRPP域保护VLAN发送给加入模块1107;否则,将该RRPP域保护VLAN发送给创建模块1106。

创建模块1106,与加入模块1107相连,收到判断模块1105发来该RRPP域的域保护VLAN,在设备本地创建该RRPP域的域保护的动态VLAN,并将该RRPP域保护VLAN发送给加入模块1107。

加入模块1107,收到判断模块1105或创建模块1106发来的该RRPP域的域保护VLAN,将加入模块1107所在的RRPP端口加入该RRPP域的域保护的动态VLAN中。

该非阻塞端口进一步包括:检查模块1108和阻止模块1109。

检查模块1108,与筛选模块1103和阻止模块1109相连,检查到设备本地有阻塞筛选模块1103筛选出的RRPP域的域保护VLAN的阻塞端口,将该阻塞端口信息发送给阻止模块1109。

阻止模块1109,与筛选模块1103相连,收到检查模块1109发来的阻塞端口信息后,阻止筛选模块1103筛选出的该RRPP域保护VLAN广播给设备本地的阻塞端口。

该非阻塞端口进一步包括:消息生成模块1110和注销声明模块1111。

消息生成模块1110与注销声明模块1111相连,当RRPP域中的RRPP的转发拓扑发生变化时,消息生成模块1110生成Flush-FDB消息,并将该消息发送注销声明模块1111。

其中,Flush-FDB消息为环路消失刷新转发数据库Common-Flush-FDB消息时,表示链路发生故障引起的RRPP转发拓扑的变化;

Flush-FDB消息为环网恢复刷新转发数据库Complete-Flush-FDB消息时,表示故障链路恢复引起的RRPP转发拓扑的变化。

注销声明模块1111,与消息生成模块1110、创建模块1106和加入模块1107相连,收到消息生成模块1110发来的消息后,将创建模块1106创建的该RRPP域的域保护的动态VLAN全部注销,将加入模块1107所在的非阻塞端口退出该RRPP域的域保护的动态VLAN,并快速重新声明设备的静态VLAN及通过非RRPP端口学习的动态VLAN。

综上所述,本发明在RRPP域中阻塞端口对MVRP报文携带的域保护VLAN进行阻塞,与阻塞端口直连的端口不向该阻塞端口转发该域保护VLAN。实现基于RRPP拓扑协议上下文的MVRP报文转发方法,解决了MVRP与RRPP协议协同工作的问题;在RRPP拓扑发生变化,即链路故障或者恢复故障的时候,将在RRPP端口学习到的动态VLAN全部注销,并快速重新声明设备的静态VLAN及通过非RRPP端口学习的动态VLAN,不会形成VLAN信息的发布环路,不产生多余的信息。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号