一种进行激活vlan协商的方法和边缘设备的制作方法

文档序号:7862020阅读:182来源:国知局
专利名称:一种进行激活vlan协商的方法和边缘设备的制作方法
技术领域
本申请涉及网络通信技术领域,特别涉及一种进行激活VLAN协商的方法和边缘设备。
背景技术
随着Internet的高速发展,网络的地域跨度越来越大。为了更好地提供服务,通常会在异地部署数据中心,而这些数据中心之间往往是通过虚拟机进行自由迁移来实现负载分担和高可靠性的。由于虚拟机迁移过程对用户透明,不能改变IP地址,因此,必须要求异地数据中心之间实现二层网络互联。

以太网虚拟化互联(EVI,Ethernet Virtualization Interconnection)解决方案将整体网络划分为核心网络(公网)和站点网络(私网)两个部分,站点间建立隧道,通过IS-IS协议学习远端站点的MAC地址,从而实现不同站点间的数据转发。具体而言,首先,在各个站点的边缘设备(ED,Edge Device)之间建立隧道,实现点对点的EVI隧道通信,各站点的ED通过EVI邻居发现协议学习远端站点的边缘设备信息,然后,各个站点的ED通过IS-IS协议学习所有远端站点内设备的MAC信息,从而,二层转发流量通过GRE隧道进行二层转发,发送到远端站点。为保证与远端站点数据传输的可靠性,并同时实现负载分担,同一站点内往往会使用多个ED,并在各个ED上按虚拟局域网(VLAN)来划分设备承载的流量,使每个VLAN所有的本地流量都从同一个ED进出公网。如图1,站点SiteA中使用了 2个ED,这是典型的双归属组网结构。本地扩展VLAN (LEV, Local Extended VLANs)是用户配置的需要扩充的VLAN列表;本地授权VLAN(LAV,Local Authorized VLANs),也称为激活 VLAN,是指通过EVI IS-ISHello报文协商之后,由指定边缘设备(DED)分配的需要本ED分担的VLAN,LAV是LEV的子集。在双归属组网情况下,激活VLAN的协商过程为首先,双归属ED之间在二层链路通过指定 VLAN(Designated VLAN)交互 EVI IS-IS Hello 报文,以选举 DED,该“指定 VLAN”是一个特殊的专用VLAN,专用于在双归属ED间进行激活VLAN的协商;然后,由DED来分配各ED的激活VLAN,DED尽可能将VLAN平均分配给各ED,从而实现流量的负载分担。例如,如图I所示,在IP-A和IP-B上同时配置了扩展VLAN为1-100,一种激活VLAN的分配可能为=IP-A 上的激活 VLAN 为 1-50,IP-B 上的激活 VLAN 为 51-100,此时,Site A 下 VLAN1-50内的MAC信息通过IP-A与IP-C之间建立的EVI link (以下记为EVI IinkO)通告给SiteB的边缘设备IP-C,Site A下VLAN51-100内的MAC信息通过IP-B与IP-C之间建立的EVIlink (以下记为EVI Iinkl)通告给Site B的边缘设备IP-C,IP-C上记录这些远端MAC信息,用于将本地站点的报文转发到远端站点。在如图I所示的组网中,虽然通过双归属很好地实现了数据流量的负载分担,有效地利用了网络资源。但是,在该组网中存在一种风险当IP-A和IP-B之间用于激活VLAN协商的二层链路出现故障时,两个ED之间将无法进行激活VLAN协商,这将导致所有配置的扩展VLAN 1-100在IP-A和IP-B均成为激活VLAN,IP-A和IP-B均会将VLAN 1-100的MAC信息通告给SiteB的IP-C,从而导致IP-C上的EVI远端MAC表项的出接口不断地在EVIIinkO和EVI Iinkl间切换,从而导致表项的震荡。

发明内容
本申请提供了一种进行激活VLAN协商的方法及边缘设备,以在双归属组网情况下,当双归属ED之间用于激活VLAN协商的二层链路出现故障时,避免远端站点的EVI远端MAC表项震荡的问题。本申请提供的一种进行激活VLAN协商的方法,包括A、判断本ED和与本ED构成双归属ED的另一 ED之间的二层链路是否可达,在不可达时,执行B ; B、通过本ED与所述另一 ED之间的EVI link,向所述另一 ED发送用于进行激活VLAN 协商的 EVIIS-IS Hello 报文。较佳地,所述B可以包括BI、构造EVI IS-IS Hello报文,在所述EVI IS-IS Hello报文中携带表示指定VLAN是临时激活VLAN的标志位,并将所述EVI IS-IS Hello报文的外层VLAN标签Tag置为所述指定VLAN ;所述指定VLAN为专用于在所述双归属ED之间进行激活VLAN协商的VLAN ;B2、将所构造的EVI IS-IS Hello报文加上EVI隧道封装之后,通过与所述另一ED之间的EVI link发送给所述另一 ED。较佳地,所述A中判断本ED和与本ED构成双归属ED的另一 ED之间的二层链路是否可达的方式可以包括当本ED与所述另一 ED之间的二层链路的出端口去激活Down时,判定本ED与所述另一 ED之间的二层链路不可达;当本ED在第一定时器超时之前没有收到来自所述另一ED的未携带所述标志位的EVI IS-IS Hello报文时,判定本ED与所述另一 ED之间的二层链路不可达。进一步地,该方法可以包括当本ED和所述另一 ED之间的二层链路不可达时,在所述双归属ED所对应的EVI组网实例的所有处于激活UP状态的隧道口,将所述指定VLAN设置为临时激活VLAN ;当从隧道口收到EVI IS-IS Hello报文时,判断所述EVI IS-IS Hello报文的外层VLAN Tag是否在所述隧道口被设置为临时激活VLAN,如果是,处理所述EVI IS-ISHello报文,并且,不转发所述EVI IS-IS Hello报文;当本ED与所述另一 ED之间的二层链路的出端口由Down恢复为UP时,通过所述二层链路向所述另一 ED发送未携带所述标志位的EVI IS-IS Hello报文。较佳地,处理所述EVI IS-IS Hello报文可以包括判断所述EVI IS-IS Hello报文中是否携带有表示指定VLAN是临时激活VLAN的标志位,如果携带有,判定本ED与所述另一 ED之间的二层链路继续不可达;如果未携带,判定本ED与所述另一 ED之间的二层链路由不可达变成可达,在所述双归属ED所对应的EVI组网实例的所有处于UP状态的隧道口,撤销对所述指定VLAN的临时激活VLAN设置。
较佳地,当本ED和所述另一 ED之间的二层链路不可达时,在将所述指定VLAN设置为临时激活VLAN之前,可以进一步包括重置第一定时器,如果本ED在所述第一定时器超时之前没有收到来自所述另一 ED的未携带所述标志位的EVI IS-IS Hello报文,则执行所述在所述双归属ED所对应的EVI组网实例的所有处于UP状态的隧道口,将所述指定VLAN设置为临时激活VLAN的操作。本申请提供的一种边缘设备,包括判断模块和EVI模块;其中判断模块,用于判断本ED和与本ED构成双归属ED的另一 ED之间的二层链路是否可达;在判断模块判定本ED和与本ED构成双归属ED的另一 ED之间的二层链路不可达时,EVI模块用于通过本ED与所述另一 ED之间的EVI link,向所述另一 ED发送用于进行激活VLAN协商的EVI IS-IS Hello报文。
所述EVI模块中可以进一步包括报文构造单元和报文发送单元,其中所述报文构造单元,用于构造EVI IS-IS Hello报文,在所述EVI IS-IS Hello报文中携带表示指定VLAN是临时激活VLAN的标志位,并将所述EVI IS-IS Hello报文的外层VLAN标签Tag置为所述指定VLAN ;所述指定VLAN为专用于在所述双归属ED之间进行激活VLAN协商的VLAN ;所述报文发送单元,用于将报文构造单元所构造的EVI IS-IS HelIo报文加上EVI隧道封装之后,通过与所述另一 ED之间的EVI link发送给所述另一 ED。较佳地,当本ED与所述另一 ED之间的二层链路的出端口去激活Down时,所述判断模块判定本ED与所述另一 ED之间的二层链路不可达;当本ED在第一定时器超时之前没有收到来自所述另一 ED的未携带所述标志位的EVI IS-IS Hello报文时,所述判断模块判定本ED与所述另一 ED之间的二层链路不可达;当本ED与所述另一 ED之间的二层链路的出端口由Down恢复为UP时,所述报文构造单元还用于构造未携带所述标志位的EVI IS-IS Hello报文;所述报文发送单元还用于通过所述二层链路向所述另一 ED发送所述未携带所述标志位的EVI IS-IS Hello报文。所述EVI模块中可以进一步包括设置单元和报文解析单元;当本ED和所述另一 ED之间的二层链路不可达时,所述设置单元用于在所述双归属ED所对应的EVI组网实例的所有处于激活UP状态的隧道口,将所述指定VLAN设置为临时激活VLAN ;当本ED从隧道口收到EVI IS-IS Hello报文时,所述报文解析单元用于解析所述EVI IS-IS Hello报文,并判断所述EVI IS-IS Hello报文的外层VLAN Tag是否在所述隧道口被设置为临时激活VLAN,如果是,处理所述EVI IS-IS Hello报文,并且,不转发所述EVI IS-IS Hello 报文。较佳地,所述报文解析单元对所述EVI IS-IS Hello报文的处理包括判断所述EVI IS-IS Hello报文中是否携带有表示指定VLAN是临时激活VLAN的标志位,如果携带有,判定本ED与所述另一 ED之间的二层链路继续不可达;如果未携带,判定本ED与所述另一 ED之间的二层链路由不可达变成可达,并通知所述设置单元;所述设置单元,进一步用于根据所述报文解析单元的通知,在所述双归属ED所对应的EVI组网实例的所有处于UP状态的隧道口,撤销对所述指定VLAN的临时激活VLAN设置。较佳地,当本ED和所述另一 ED之间的二层链路不可达时,所述设置单元在将所述指定VLAN设置为临时激活VLAN之前,还用于重置第一定时器,如果本ED在所述第一定时器超时之前没有收到来自所述另一 ED的未携带所述标志位的EVI IS-IS Hello报文,则执行所述在所述双归属ED所对应的EVI组网实例的所有处于UP状态的隧道口,将所述指定VLAN设置为临时激活VLAN的操作。由上述技术方案可见,本申请提供的进行VLAN协商的方法及边缘设备,在本ED和与本ED构成双归属ED的另一 ED之间的二层链路不可达时,通过本ED与所述另一 ED之间的EVI link,向所述另一 ED发送用于进行激活VLAN协商的EVI IS-IS Hello报文,使得双归属ED之间能够正常地进行激活VLAN协商,从而在双归属ED之间的二层链路不可达时,避免远端站点的EVI远端MAC表项震荡的问题。·


图I为现有典型的EVI双归属组网结构示意图;图2为EVI IS-IS Hello报文中的标志位示意;图3为本申请一较佳维护邻居状态表中的邻居状态的方法示意图;图4为本申请一较佳边缘设备的组成结构示意图。
具体实施例方式为使本申请的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本申请作进一步详细说明。本申请提出的进行VLAN协商的技术方案的主要思想是在本ED和与本ED构成双归属ED的另一 ED之间的二层链路不可达时,通过本ED与所述另一 ED之间的EVI I ink,向所述另一 ED发送用于进行激活VLAN协商的EVIIS-IS Hello报文,使得双归属ED之间能够正常地进行激活VLAN协商,从而在双归属ED之间的二层链路不可达时,避免远端站点的EVI远端MAC表项震荡的问题。对EVI IS-IS Hello报文发送者而言,当本ED和与本ED构成双归属ED的另一 ED之间的二层链路不可达时,为了区分此时发送的EVIIS-IS Hello报文与二层链路可达时发送的EVIIS-IS Hello报文,在构造EVI IS-IS Hello报文时,可以在该EVI IS-IS Hello报文中携带表示指定VLAN是临时激活VLAN的标志位,并将该EVI IS-IS Hello报文的外层VLAN标签(Tag)置为该指定VLAN ;然后,将所构造的EVIIS-IS Hello报文加上EVI隧道封装之后,通过与该另一 ED之间的EVIlink发送给该另一 ED。如前所述,指定VLAN是指专用于在该双归属ED之间进行激活VLAN协商的VLAN。这里,临时激活VLAN是一种新的VLAN状态,这种VLAN状态有别于激活VLAN和非激活VLAN,用于将EVI IS-IS Hello报文通过双归属ED间的EVI link进行交互。较佳地,可以将EVIIS-IS Hello报文的特殊VLAN和标志位子TLV(Special VLANsand Flags (VLAN-Flags) sub-TLV)中的保留字段中的其中一位用作所述标志位,如图2所示。图2是EVIIS-IS Hello报文的特殊VLAN和标志位子TLV,图2所示示例中,将最后2字节中的第2位用作本申请所述标志位,当某EVI IS-IS Hello报文中的该标志位F的取值为I时,表示该EVIIS-IS Hello报文的外层VLAN Tag所对应的VLAN为临时激活VLAN ;该EVIIS-IS Hello报文中的该标志位F的取值为O时,认为该EVIIS-IS Hello报文未携带该标志位,是一个普通的EVI IS-IS Hello报文。图2中其他各比特的物理意义同现有技术,在此不再赘述。对EVI IS-IS Hello报文接收者而言,当本ED和与本ED构成双归属ED的另一 ED之间的二层链路不可达时,为了使底层模块能够正确处理此时接收的EVI IS-IS Hello报文与二层链路可达时接收的EVIIS-IS Hello报文,可以进一步在该双归属ED所对应的EVI组网实例的所有处于激活(UP)状态的隧道口,将指定VLAN设置为临时激活VLAN ;这样,当从隧道口收到EVI IS-IS Hello报文时,首先判断该EVI IS-IS HelIo报文的外层VLAN Tag是否在该隧道口被设置为临时激活VLAN,如果是,则仅处理该EVIIS-IS Hello报文,但不转发该EVIIS-IS Hello报文。上述处理EVIIS-IS Hello报文具体包括判断该EVIIS-IS Hello报文中是否携 带有表示指定VLAN是临时激活VLAN的标志位,如果携带有,判定本ED与该另一 ED之间的二层链路继续不可达;如果未携带,判定本ED与该另一 ED之间的二层链路由不可达变成可达,在该双归属ED所对应的EVI组网实例的所有处于UP状态的隧道口,撤销对该指定VLAN的临时激活VLAN设置。根据如上描述,本申请中判断本ED和与本ED构成双归属ED的另一 ED之间的二层链路是否可达的方式包括当本ED与该另一 ED之间的二层链路的出端口去激活(Down )时,本ED中的相关模块需要响应接口去激活事件,从而判定本ED与该另一 ED之间的二层网络出现故障,本ED与该另一 ED之间的二层链路由可达变成不可达;当由于双归属ED间的二层网络拥塞等原因导致本ED在第一定时器超时之前没有收到来自该另一 ED的未携带本申请所述标志位的EVI IS-IS Hello报文时,判定本ED与该另一 ED之间的二层链路不可达。当本ED与该另一 ED之间的二层链路的出端口由Down恢复为UP时,通过该二层链路向该另一 ED发送未携带本申请所述标志位的EVI IS-IS Hello报文;如果该另一 ED能够正常收到该EVIIS-IS Hello报文,则表示两者之间的二层链路由不可达变成可达,如前所述,该另一 ED将在该双归属ED所对应的EVI组网实例的所有处于UP状态的隧道口,撤销对该指定VLAN的临时激活VLAN设置。一种改进的技术方案是当本ED和与本ED构成双归属ED的另一ED之间的二层链路不可达时,不立即将指定VLAN设置为临时激活VLAN,而是重置第一定时器,如果本ED在第一定时器超时之前仍然没有收到来自该另一 ED的未携带所述标志位的EVIIS-IS Hello报文,则执行在双归属ED所对应的EVI组网实例的所有处于UP状态的隧道口,将指定VLAN设置为临时激活VLAN的操作。根据本申请,临时激活VLAN可以在多个隧道口下同时下发,当指定VLAN在某个隧道口下的状态为临时激活状态时,EVI IS-IS Hello报文将通过双归属ED间的EVIlink进行发送,也就是说,EVIIS-IS Hello报文将在公网侧进行发送。在具体实现时,可以在双归属ED的各个ED上维护一张邻居状态表,如表I所示,用于记录双归属ED间是否二层可达,这里,二层可达包括二层链路可达和二层EVI link可达。
权利要求
1.一种进行激活虚拟局域网VLAN协商的方法,其特征在于,包括 A、判断本边缘设备ED和与本ED构成双归属ED的另一ED之间的二层链路是否可达,在不可达时,执行B ; B、通过本ED与所述另一ED之间的以太网虚拟化互联链路EVI link,向所述另一 ED发送用于进行激活VLAN协商的以太网虚拟化互联中间系统到中间系统心跳EVI IS-IS He I Io报文。
2.根据权利要求I所述的方法,其特征在于,所述B包括 BI、构造EVI IS-IS Hello报文,在所述EVI IS-IS Hello报文中携带表示指定VLAN是临时激活VLAN的标志位,并将所述EVI IS-IS Hello报文的外层VLAN标签Tag置为所述指定VLAN ;所述指定VLAN为专用于在所述双归属ED之间进行激活VLAN协商的VLAN ; B2、将所构造的EVI IS-IS Hello报文加上EVI隧道封装之后,通过与所述另一 ED之 间的EVI link发送给所述另一 ED。
3.根据权利要求2所述的方法,其特征在于 所述A中判断本ED和与本ED构成双归属ED的另一 ED之间的二层链路是否可达的方式包括 当本ED与所述另一 ED之间的二层链路的出端口去激活Down时,判定本ED与所述另一 ED之间的二层链路不可达;当本ED在第一定时器超时之前没有收到来自所述另一 ED的未携带所述标志位的EVI IS-IS Hello报文时,判定本ED与所述另一 ED之间的二层链路不可达。
4.根据权利要求3所述的方法,其特征在于,该方法进一步包括 当本ED和所述另一 ED之间的二层链路不可达时,在所述双归属ED所对应的EVI组网实例的所有处于激活UP状态的隧道口,将所述指定VLAN设置为临时激活VLAN ; 当从隧道口收到EVI IS-IS Hello报文时,判断所述EVI IS-IS Hello报文的外层VLANTag是否在所述隧道口被设置为临时激活VLAN,如果是,处理所述EVI IS-ISHell0报文,并且,不转发所述EVI IS-IS Hello报文; 当本ED与所述另一 ED之间的二层链路的出端口由Down恢复为UP时,通过所述二层链路向所述另一 ED发送未携带所述标志位的EVI IS-IS Hello报文。
5.根据权利要求4所述的方法,其特征在于处理所述EVIIS-IS Hello报文包括 判断所述EVI IS-IS Hello报文中是否携带有表示指定VLAN是临时激活VLAN的标志位,如果携带有,判定本ED与所述另一 ED之间的二层链路继续不可达;如果未携带,判定本ED与所述另一 ED之间的二层链路由不可达变成可达,在所述双归属ED所对应的EVI组网实例的所有处于UP状态的隧道口,撤销对所述指定VLAN的临时激活VLAN设置。
6.根据权利要求4所述的方法,其特征在于 当本ED和所述另一 ED之间的二层链路不可达时,在将所述指定VLAN设置为临时激活VLAN之前,进一步包括重置第一定时器,如果本ED在所述第一定时器超时之前没有收到来自所述另一 ED的未携带所述标志位的EVI IS-IS Hello报文,则执行所述在所述双归属ED所对应的EVI组网实例的所有处于UP状态的隧道口,将所述指定VLAN设置为临时激活VLAN的操作。
7.—种边缘设备,其特征在于,包括判断模块和以太网虚拟化互联链路EVI模块;其中 判断模块,用于判断本边缘设备ED和与本ED构成双归属ED的另一 ED之间的二层链路是否可达; 在判断模块判定本ED和与本ED构成双归属ED的另一 ED之间的二层链路不可达时,EVI模块用于通过本ED与所述另一ED之间的以太网虚拟化互联链路EVI link,向所述另一ED发送用于进行激活VLAN协商的以太网虚拟化互联中间系统到中间系统心跳EVI IS-ISHello报文。
8.根据权利要求7所述的边缘设备,其特征在于,所述EVI模块中进一步包括报文构造单元和报文发送单元,其中 所述报文构造单元,用于构造EVI IS-IS Hello报文,在所述EVI IS-IS Hello报文 中携带表示指定VLAN是临时激活VLAN的标志位,并将所述EVI IS-IS Hello报文的外层VLAN标签Tag置为所述指定VLAN ;所述指定VLAN为专用于在所述双归属ED之间进行激活VLAN协商的VLAN ; 所述报文发送单元,用于将报文构造单元所构造的EVI IS-IS Hello报文加上EVI隧道封装之后,通过与所述另一 ED之间的EVI link发送给所述另一 ED。
9.根据权利要求8所述的边缘设备,其特征在于 当本ED与所述另一 ED之间的二层链路的出端口去激活Down时,所述判断模块判定本ED与所述另一 ED之间的二层链路不可达;当本ED在第一定时器超时之前没有收到来自所述另一 ED的未携带所述标志位的EVI IS-IS Hello报文时,所述判断模块判定本ED与所述另一 ED之间的二层链路不可达; 当本ED与所述另一 ED之间的二层链路的出端口由Down恢复为UP时,所述报文构造单元还用于构造未携带所述标志位的EVI IS-IS Hello报文; 所述报文发送单元还用于通过所述二层链路向所述另一 ED发送所述未携带所述标志位的 EVI IS-IS Hello 报文。
10.根据权利要求9所述的边缘设备,其特征在于,所述EVI模块中进一步包括设置单元和报文解析单元; 当本ED和所述另一 ED之间的二层链路不可达时,所述设置单元用于在所述双归属ED所对应的EVI组网实例的所有处于激活UP状态的隧道口,将所述指定VLAN设置为临时激活 VLAN ; 当本ED从隧道口收到EVI IS-IS Hello报文时,所述报文解析单元用于解析所述EVIIS-IS Hello报文,并判断所述EVI IS-IS Hello报文的外层VLAN Tag是否在所述隧道口被设置为临时激活VLAN,如果是,处理所述EVI IS-IS Hello报文,并且,不转发所述EVIIS-IS Hello 报文。
11.根据权利要求10所述的边缘设备,其特征在于 所述报文解析单元对所述EVI IS-IS Hello报文的处理包括判断所述EVIIS-ISHello报文中是否携带有表示指定VLAN是临时激活VLAN的标志位,如果携带有,判定本ED与所述另一 ED之间的二层链路继续不可达;如果未携带,判定本ED与所述另一 ED之间的二层链路由不可达变成可达,并通知所述设置单元; 所述设置单元,进一步用于根据所述报文解析单元的通知,在所述双归属ED所对应的EVI组网实例的所有处于UP状态的隧道口,撤销对所述指定VLAN的临时激活VLAN设置。
12.根据权利要求10所述的边缘设备,其特征在于 当本ED和所述另一 ED之间的二层链路不可达时,所述设置单元在将所述指定VLAN设置为临时激活VLAN之前,还用于重置第一定时器,如果本ED在所述第一定时器超时之前没有收到来自所述另一 ED的未携带所述标志位的EVI IS-IS Hello报文,则执行所述在所述双归属ED所对应的EVI组网实例的所有处于UP状态的隧道口,将所述指定VLAN设置为临时激活VLAN的操作。
全文摘要
本申请公开了一种进行激活VLAN协商的方法,该方法包括判断本边缘设备ED和与本ED构成双归属ED的另一ED之间的二层链路是否可达,在不可达时,通过本ED与所述另一ED之间的以太网虚拟化互联链路EVI link,向所述另一ED发送用于进行激活VLAN协商的EVI IS-IS Hello报文。本申请还公开了一种边缘设备。应用本申请公开的技术方案,能够避免远端站点的EVI远端MAC表项震荡的问题。
文档编号H04L12/757GK102857401SQ201210374810
公开日2013年1月2日 申请日期2012年9月27日 优先权日2012年9月27日
发明者汪平安, 杨斌, 陆璐 申请人:杭州华三通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1