CN104125088A - Drni中同一端内系统之间交互信息的方法和系统 - Google Patents
Drni中同一端内系统之间交互信息的方法和系统 Download PDFInfo
- Publication number
- CN104125088A CN104125088A CN201310155668.9A CN201310155668A CN104125088A CN 104125088 A CN104125088 A CN 104125088A CN 201310155668 A CN201310155668 A CN 201310155668A CN 104125088 A CN104125088 A CN 104125088A
- Authority
- CN
- China
- Prior art keywords
- session
- native system
- distribution
- native
- key value
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/12—Discovery or management of network topologies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/24—Multipath
- H04L45/245—Link aggregation, e.g. trunking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/28—Routing or path finding of packets in data switching networks using route fault recovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/41—Flow control; Congestion control by acting on aggregated flows or links
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/14—Multichannel or multilink protocols
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Communication Control (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种分布式弹性网络互连中同一端内系统之间交互信息的方法及系统,所述方法应用于链路聚合组端点中的每一个系统,包括:通过内链接口发送分布式中继控制协议(DRCP)协议报文,其中至少携带本系统的系统信息;在接收到邻接系统发来的DRCP协议报文后,如判断出本系统与所述邻接系统能形成分布式弹性网络互连的一个端点,则确定本系统的操作Key值。所述系统包括:发送状态机、接收状态机、协商状态机、同步状态机及周期发送状态机。采用本发明后,实现了分布式链路聚合组中一端多个系统之间的控制通信,能够有效的实现多个系统聚合为一个聚合组后,实现互连接口上的保护,不仅是链路上的保护,而且实现了节点级保护。
Description
技术领域
本发明涉及网络通信保护技术,尤其涉及一种DRNI(Distributed ResilientNetwork Interconnected,分布式弹性网络互连)中同一端内系统之间交互信息的方法和系统。
背景技术
随着宽带业务的飞速发展,网络与网络之间的互连使用得越来越多,承载了更多的业务。根据所采用的技术,网络内部可有多种方法对链路及其上的节点实现保护。随着对流量的保护需求越来越强烈,要求越来越高,运营商提出了在网络互连上进行保护的需求。这里的保护可以通过采用端口聚合的方式来实现,常用的方式可以是端口聚合,也可以是环路保护。在IEEE(Institute of Electrical and Electronics Engineers,美国电气和电子工程师协会)现有标准802.1AX中,链路聚合目前支持的是一个节点上的端口聚合,因此仅能用于链路保护,无法实现对网络边缘接口上的节点进行保护。
因此,为了适用于网络与网络互连区域组网方式的多样化,并能实现不仅对链路的保护,而且实现对边缘节点的保护,IEEE标准组织提出了扩展链路聚合,通过一种分布式的链路聚合组DRNI来实现链路和节点双冗余的网络互连保护需求,即聚合组的端点处由多个节点组成,该多个节点的聚合链路组成一个链路聚合组(Link Aggregation Group,简称LAG)。如图1所示,链路聚合组的两个端点(Portal)A、B分别由2个及3个系统组成:端点A中包含系统1及系统2,端点B中包含系统3、系统4及系统5,这5个系统的多条链路聚合在一起,形成了一个分布式LAG。通过这个分布式LAG,能够实现链路和节点的双重保护。
端点A中的系统1和系统2需要通过内链链路连接,从而保证端点B看到其通过链路聚合组连接的端点A是一个逻辑节点;同理,端点B中的系统3、系统4及系统5之间也需要通过内链链路连接,从而保证端点A看到其通过链路聚合组连接的端点B是一个逻辑节点。端点A的逻辑节点和端点B的逻辑节点之间互连的多条链路通过LACP(Link Aggregation ControlProtocol,链路汇聚控制协议)的控制报文交互后,形成分布式链路聚合组。
DRNI就是通过分布式中继(Distributed Relay,简称为DR)将两个以上的系统互连起来,这里的每个系统都运行链路聚合,从而形成一个Portal。对于与该Portal相连的对端系统而言,该对端系统认为自身所连接的是一个模拟的系统。为了达到这个目的,一个Portal内的各个系统需要通过分布式中继进行交互协商,以达到这些系统之间的参数统一,并通告给LACP协议与链路聚合组的另一端进行交互。
DR上有3种接口,分别是:网关接口、内链接口及聚合接口。DR的功能就是将从聚合接口收到的报文(UP报文)发往网关或丢弃,并且将从网关接口收到的报文(DOWN报文)发送到聚合器或丢弃。DR根据接收到的报文所属的会话决定是转发该报文还是丢弃该报文,网关算法和端口算法的配置也是依据会话进行操作的。每一个会话流量最多分配一个网关链路,每个会话流量也最多对应一个聚合接口。当一个portal内的多个系统中的DR对报文的分发方式不统一,则会引起报文乱序、成环或丢包等问题,因此在多个系统之间存在分发方式不一致的情况时,也需要通过分布式中继进行交互,统一不同系统上的分发方式或隔离分发方式不统一的业务流量。
发明内容
本发明的目的在于提供一种DRNI中同一端内系统之间交互信息的方法及系统,以实现多个系统的链路聚合。
为解决上述问题,本发明提供了一种分布式弹性网络互连中同一端内系统之间交互信息的方法,应用于链路聚合组端点中的每一个系统,包括:
通过内链接口发送分布式中继控制协议(DRCP)协议报文,其中至少携带本系统的系统信息;
在接收到邻接系统发来的DRCP协议报文后,如判断出本系统与所述邻接系统能形成分布式弹性网络互连的一个端点,则确定本系统的操作Key值。
进一步地,所述方法还包括:
在确定本系统的操作Key值后,在本系统内建立分布式中继通道。
进一步地,所述方法还包括:
在确定本系统的操作Key值后,与所述邻接系统协商统一的会话分发方式。
进一步地,
所述判断出本系统与所述邻接系统能形成同一个端点,具体包括:
对接收到的所述DRCP协议报文中携带的所述邻接系统的系统信息与本系统的系统信息进行匹配性检查,若所述匹配性检查通过,则判断出本系统与所述邻接系统能形成同一个端点。
进一步地,
所述对接收到的所述DRCP协议报文中携带的所述邻接系统的系统信息与本系统的系统信息进行匹配性检查,具体包括:
判断本系统的端点标识和所述邻接系统的端点标识是否一致;和/或判断本系统的虚拟系统标识和所述邻接系统的虚拟系统标识是否一致;
所述匹配性检查通过,具体包括:
所述本系统与所述邻接系统的端点标识相同,和/或所述本系统与所述邻接系统的虚拟系统标识相同。
进一步地,
所述对接收到的所述DRCP协议报文中携带的所述邻接系统的系统信息与本系统的系统信息进行匹配性检查,还包括:
判断本系统的系统编号(System Number)与所述邻接系统的SystemNumber是否冲突;
所述匹配性检查通过,具体包括:
所述本系统与所述邻接系统的端点标识和/或虚拟系统标识分别相同,且本系统与所述邻接系统的System Number不冲突。
进一步地,所述方法还包括:
若匹配性检查通过,则保存所述DRCP协议报文中携带的所述邻接系统的系统信息。
进一步地,
所述发送DRCP协议报文,具体包括:
周期性地发送所述DRCP协议报文;
所述方法还包括:
每当接收到邻接系统发来的DRCP协议报文后,启动一个定时器;
若在所述定时器超时时,未收到所述邻接系统发来的DRCP协议报文,或者在所述定时器超时前收到了所述邻接系统发来的DRCP协议报文,但匹配性检查未通过,则确定本系统与所述邻接系统不能再形成分布式弹性网络互连的一个端点。
进一步地,
所述发送DRCP协议报文,具体包括:
在本系统的系统信息中有参数更新时,发送所述DRCP协议报文。
进一步地,
所述确定本系统的操作Key值,具体包括:
如判断出本系统的操作Key值与所述邻接系统的操作Key值相同,则维持本系统的操作Key值不变。
进一步地,
所述确定本系统的操作Key值,具体包括:
如判断出本系统的操作Key值与所述邻接系统的操作Key值不同,则依据策略,修改本系统的操作Key值或者维持本系统的操作Key值不变。
进一步地,
所述确定本系统的操作Key值,具体包括:
根据本系统的管理Key值及接收到的所述邻接系统的管理Key值,计算出本系统的操作Key值。
进一步地,所述方法还包括:
在确定本系统的操作Key值后,将本系统的操作Key值通过链路汇聚控制协议(LACP)报文发送给分布式弹性网络互连的对端。
进一步地,
所述与所述邻接系统协商统一的会话分发方式,具体包括:
对所述邻接系统发来的所述DRCP协议报文中携带的会话分法方式与本系统的会话分发方式进行协商,依据协商好的会话分发方式来配置本系统内分布式中继的流量分发方式;
所述会话分发方式包括下述两个参数中任意一个或任意组合:网关系统选择和聚合器/聚合端口选择。
进一步地,
所述对所述邻接系统发来的所述DRCP协议报文中携带的会话分法方式与本系统的会话分发方式进行协商,具体包括:
将所述邻接系统发来的DRCP协议报文中携带的会话分发方式与本系统的会话分发方式进行对比,对于在会话分发方式达到一致的会话,则分布式中继按一致的会话分发方式进行所述会话流量的分发,对于在会话分发方式有冲突的会话,则分布式中继过滤或丢弃所述会话分发方式有冲突的会话流量。
进一步地,
所述在本系统内建立分布式中继通道,具体包括:
对分布式中继在网关和聚合器/聚合端口上会话分发做出配置,配置后所述分布式中继在本系统上的网关和聚合器/聚合端口之间转发会话流量。
进一步地,
在与所述邻接系统协商统一的会话分发方式之前,还包括:
关闭与所述邻接系统之间的内链链路的数据流量转发功能;
当与所述邻接系统统一会话分发方式后协商完成,统一了分发算法,开启所述内链链路的数据流量转发功能。
进一步地,所述方法还包括:
若确定本系统与所述邻接系统不能再形成分布式弹性网络互连的一个端点,则依据策略确定是否需要对本系统的系统信息进行修改;如需要修改,则对本系统的系统信息中至少部分LACP参数进行修改,并将修改后的LACP参数通过LACP报文发送给分布式弹性网络互连的对端;其中,修改后本系统的LACP参数与所述邻接系统的LACP参数至少不完全相同。
进一步地,
所述对本系统的系统信息中至少部分LACP参数进行修改,具体包括:
对本系统的操作key值和/或系统标识进行修改,或者将操作Key值恢复为管理Key值。
进一步地,
当与所述邻接系统之间的内链链路发生故障或者所述内链链路不可用时,则将所述分布式中继恢复为协商前的会话分发方式的配置。
进一步地,
通过所述内链接口发送的所述DRCP协议报文中还携带有与本系统相连接的其他邻接系统的系统信息和/或会话分发方式。
相应地,本发明还提供了一个分布式弹性网络互连中实现分布式中继控制的系统,其特征在于,包括:
发送状态机用于在本系统的其他状态机指示需要发送或者需周期发送时,发送分布式中继控制协议(DRCP)协议报文;
接收状态机用于接收邻接系统发来的DRCP协议报文,对本系统和所述邻接系统的系统信息进行匹配性检查,在匹配性检查通过后记录所述DRCP协议报文中的信息,启动定时器判断是否定时接收到所述邻接系统再次发来的DRCP协议报文;
协商状态机用于确定本系统的操作Key值,确保和所述邻接系统的操作Key值一致;
同步状态机用于建立聚合器/聚合端口和网关之间的转发通道,按需与所述邻接系统协商统一的会话分发方式,配置分布式中继的会话分发方式;
周期发送状态机用于决定所述发送状态机周期发送DRCP协议报文。
进一步地,
所述接收状态机用于对本系统和所述邻接系统的系统信息进行匹配性检查,具体包括:
所述接收状态机用于判断本系统的端点标识和所述邻接系统的端点标识是否一致;和/或判断本系统的虚拟系统标识和所述邻接系统的虚拟系统标识是否一致;
所述匹配性检查通过,具体包括:
所述本系统与所述邻接系统的端点标识相同,和/或所述本系统与所述邻接系统的虚拟系统标识相同。
进一步地,
所述接收状态机用于对本系统和所述邻接系统的系统信息进行匹配性检查,还包括:
所述接收状态机用于判断本系统的系统编号(System Number)与所述邻接系统的System Number是否冲突;
所述匹配性检查通过,具体包括:
所述本系统与所述邻接系统的端点标识和/或虚拟系统标识分别相同,且邻接系统的System Number合法,或者,本系统与所述邻接系统的SystemNumber不冲突。
进一步地,
所述协商状态机用于确定本系统的操作Key值,确保和所述邻接系统的操作Key值一致,具体包括:
所述协商状态机用于在判断出本系统的操作Key值与所述邻接系统的操作Key值相同时,维持本系统的操作Key值不变;还用于在判断出本系统的操作Key值与所述邻接系统的操作Key值不同时,依据策略,修改本系统的操作Key值或者维持本系统的操作Key值不变。
进一步地,
所述协商状态机用于确定本系统的操作Key值,确保和所述邻接系统的操作Key值一致,具体包括:
所述协商状态机用于根据本系统的管理Key值及接收到的所述邻接系统的管理Key值,计算出本系统的操作Key值。
进一步地,所述方法还包括:
所述协商状态机还用于在确定本系统的操作Key值后,将本系统的操作Key值通过链路汇聚控制协议(LACP)报文发送给分布式弹性网络互连的对端。
进一步地,
所述与所述邻接系统协商统一的会话分发方式,具体包括:
所述同步状态机用于对所述邻接系统发来的所述DRCP协议报文中携带的会话分法方式与本系统的会话分发方式进行协商,依据协商好的会话分发方式来配置本系统内分布式中继的流量分发方式。
进一步地,
所述同步状态机用于对所述邻接系统发来的所述DRCP协议报文中携带的会话分法方式与本系统的会话分发方式进行协商,具体包括:
所述同步状态机用于将所述邻接系统发来的DRCP协议报文中携带的会话分发方式与本系统的会话分发方式进行对比,对于在会话分发方式达到一致的会话,则按一致的会话分发方式进行所述会话流量的分发,对于在会话分发方式有冲突的会话,则过滤或丢弃所述会话分发方式有冲突的会话流量。
进一步地,
所述会话分发方式包括下述两个参数中任意一个或任意组合:网关系统选择和聚合器/聚合端口选择。
进一步地,
同步状态机还用于在与所述邻接系统协商统一的会话分发方式之前,关闭与所述邻接系统之间的内链链路的数据流量转发功能;
还用于当与所述邻接系统统一会话分发方式后协商完成,统一了分发算法,开启所述内链链路的数据流量转发功能。
进一步地,
所述接收状态机还用于如未定时收到所述邻接系统再次发来的DRCP协议报文或者接收到的所述邻接系统再次发来的DRCP协议报文没有通过匹配性检查,则依据策略确定是否需要对本系统的系统信息进行修改;如需要修改,则还用于对本系统的系统信息中至少部分LACP参数进行修改,并将修改后的LACP参数通过LACP报文发送给分布式弹性网络互连的对端;其中,修改后本系统的LACP参数与所述邻接系统的LACP参数至少不完全相同。
进一步地,
所述接收状态机用于对本系统的系统信息中至少部分LACP参数进行修改,具体包括:
所述接收状态机用于对本系统的操作key值和/或系统标识进行修改,或者将操作Key值恢复为管理Key值。
进一步地,
所述同步状态机还用于在与所述邻接系统之间的内链链路发生故障或者所述内链链路不可用时,将所述分布式中继恢复为协商前的会话分发方式的配置。
进一步地,
所述发送状态机通过所述内链接口发送的所述DRCP协议报文中还携带有与本系统相连接的其他邻接系统的系统信息和/或会话分发方式。
采用本发明后,实现了分布式链路聚合组中一端多个系统之间的控制通信,能够有效的实现多个系统聚合为一个聚合组后,实现互连接口上的保护,不仅是链路上的保护,而且实现了节点级保护。
附图说明
图1是现有技术中网络互连节点连接示意图;
图2是本发明实施例中分布式中继控制协议状态事件流程示意图;
图3是本发明实施例中分布式中继控制协议参数传递示意图;
图4是本发明实施例中接收状态机的处理流程示意图;
图5是本发明实施例中Check功能的流程图;
图6是本发明实施例中协商状态机的处理流程示意图;
图7是本发明实施例中同步状态机的一种处理流程示意图;
图8是本发明实施例中同步状态机的另一种处理流程示意图;
图9是本发明实施例中NeedtoCoordination功能的流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
为了能更好的描述分布式中继控制协议的控制过程和运行状态,下面将从控制协议状态机的角度来描述。
如图2所示,系统内的分布式中继控制协议(Distributed Relay ControlProtocol,简称DRCP)主要包括:接收状态机、同步状态机以及发送状态机,还可以包括:协商状态机和周期发送状态机。
接收状态机主要用于接收邻接系统发来的DRCP协议报文。接收到的DRCP协议报文中包括了发送该报文的邻接系统的系统信息(Actor_Info),也有可能包含了发送该报文的邻接系统所保存的与该邻接系统连接的其他系统的系统信息(Partner_Info)。接收状态机的主要任务有:
a)接收邻接系统发来的DRCP协议报文;
b)每接收到一次邻接系统发来的DRCP协议报文,就启动一次定时器,如果在定时器超时时(Expire)仍没有收到上述邻接系统发来的DRCP协议报文,则认为和该邻接系统失去了联系,进入失去联系状态;
c)如判断出本系统与该邻接系统能形成分布式弹性网络互连的一个端点,则保存接收到的DRCP协议报文中携带的Actor_Info,如果该DRCP协议报文中携带有Partner_Info,则亦保存之。其中,采用以下步骤判断本系统与该邻接系统是否能形成分布式弹性网络互连的一个端点,包括:
步骤1:先比较接收到的DRCP协议报文中携带的Portal ID与本系统所属端点的Portal ID是否一致,如果二者一致则表示双方的确属于同一端点(Portal),执行步骤2;如果二者不一致,则丢弃该DRCP协议报文;
步骤2:比较上述DRCP协议报文中携带的虚拟系统标识(EmulatedSystem ID)与本系统的Emulated System ID值是否一致;如二者一致,则执行步骤3;如果二者不一致,则丢弃该DRCP协议报文;其中,各系统在发出LACP协议报文时,在该报文中所携带的System ID字段的值为该系统的Emulated System ID值;
在某些情况下,系统中的Portal ID与Emulated System ID的值是一致的。因此,上述流程可以仅比较两个系统间的Portal ID或Emulated System ID是否一致即可。
步骤3:检查上述DRCP协议报文中携带的发送该DRCP协议报文的系统的System Number与本系统的System Number是否冲突,即判断二者是否相同。若二者不相同,则说明两个系统已经具备了聚合为一个DRNI接口的条件,即两个系统可以组成一个逻辑系统,即端点(Portal)。
当判断出发送该DRCP协议报文的系统的System Number与本系统的System Number不相冲突时(即二者不相同),则表示匹配性检查通过,设置本系统与发送上述DRCP协议报文的邻接系统的内链链路协议状态为已聚合,即设置DRCP.State=Contact。在具体实现时,为避免异常情况,还可以进一步判断发送该DRCP协议报文的系统的System Number是否合法,即System Number的取值是否在合理的取值范围内,当判断出发送该DRCP协议报文的系统的System Number合法、且与本系统的System Number不冲突时,表示匹配性检查通过。
d)若在定时器超时之前未收到已与本系统聚合的另一系统发来的DRCP协议报文,或者在定时器超时之前接收到的该DRCP协议报文没有通过步骤c)中的匹配性检查(即相当于没有收到该另一系统发来的合格的DRCP协议报文),则表示本系统和该另一系统已失去了联系,此时两系统之间无法再聚合,则需要采取相关的动作进行解聚合,将这两个系统分离开来。
协商状态机用于与确定本系统的Operational Key(操作Key),确保得到一个与发送上述DRCP协议报文的邻接系统统一的Operational Key值,该Operational Key为LACP协议报文中携带的参数。在协商一致后,设置DRCP.State=Synchronization。
同步状态机主要是用于建立DR通道、进行DRNI接口的数据转发以及系统间的流量分配。主要包括:
a)建立DR通道。DR通道建立之后,建立了本系统的DRNI接口和其他端口的转发通道,即可以通过DRNI接口发送数据流量,或接收数据流量并转发到其他接口上。此时,DR通道只是将数据在本系统的DRNI接口和其他端口上进行转发,但并不分发给邻接系统。
b)如果DR通道不仅用于数据的中转,还要具有数据分发功能,即双方系统需要协商统一的会话分发方式,确定特定会话的报文从本系统的哪些DRNI接口上的链路进行转发。这里的数据分发过程有可能需要通过内链链路参与数据的转发来实现,此时需要同步状态机进行两系统之间会话分发方式的协商。当两者能协商达到统一,则表示双方统一了特定会话流量应该走哪个系统,此时设置DRCP.State=Forward。
c)当DR通道可以在不同系统上对流量进行分发时,数据流量有可能需要在内链链路上进行传输,此时应该打开内链链路上端口的内连链路传输数据流量功能,使得数据流量能够通过内链链路在同一Portal内的系统中进行转发。并且,对内链链路上端口上流量的进出进行配置,从而保证不同的会话流量能走特定的系统和特定的聚合端口。自此,各系统上的DR通道将依据协商后的会话分发方式来进行流量的分发。
当DRCP.state=Synchronization时,则触发同步状态机进行处理,当DRCP.State=Contact时,则触发协商状态机进行处理。当原内链链路的物理链路出现故障或者被用作其他用途,而无法再作为内链链路被DRNI使用时,设置IPL(Intra-Portal Link,内链链路).State=Down,此时无法也不能通过内链链路进行数据报文的转发,如果这时系统处于同步状态,即DRCP.State=Synchronization,则需要关闭IPL的数据转发功能,并且恢复为协商前DR通道的会话分发方式,即本系统收到的数据报文也从本系统转发出去,而不再经过内链链路进行分发。
发送状态机用于通过内链接口发送DRCP协议报文,这里发送DRCP协议报文可以由来自其它状态机发出的命令来触发,也可以是由周期发送状态机触发发送。当系统中Actor_Info中至少部分参数发生变化时,需要重新进行协商,则也可以触发发送DRCP协议报文。
周期发送状态机用于决定本系统何时发送DRCP协议报文,以传递相关信息及维持与其他系统的连接性。一般来说周期发送状态机内部有个定时器,每当定时器到时,将产生一个NTT(Need to transmit,需要发送),触发发送状态机发送DRCP协议报文。
分布式中继控制协议在进行状态切换的过程中,需要将一些信息在这些状态机中进行传递。如图3所示,包括:
1.接收状态机接收到了对方系统通过DRCP协议报文发来的系统信息并保存作为自己的Partner信息;
2.将本系统的操作Key(Actor_OperKey)值以及发送上述DRCP协议报文的系统的操作Key(Partner_OperKey)值在协商状态机中进行判断和处理。如果Actor_OperKey和Partner_OperKey不一致,则需要根据策略确定是否修改本系统的Actor_OperKey,然后触发发送状态机将Actor_OperKey和Partner_OperKey发送到对方系统。只有保证两系统的操作Key值是一致的,才能进一步保证两系统能聚合为一个聚合组;
3.同步状态机可能需要协商统一的会话分发方式。如果需要,则接收状态机接收到DRCP协议报文后,对于其中携带的邻接系统的会话分发方式的参数,即网关系统选择(Actor_GW&Partner_GW,表示某个会话流量应该走哪个网关链路)和聚合器系统选择(Actor_Agg&Partner_Agg,表示某个会话流量应该走哪个聚合端口/聚合器)这两个信息进行判断和处理。在同步状态机中利用最后协商好的会话分发方式来决定并配置本系统内的会话分发方式,同时对内链链路的端口做出相应配置,会话将按配置的会话分发方式进行转发。
下面结合实施例和附图对本发明所述的DRNI一端的分布式中继控制协议控制方法和流程进行具体说明。
这里以图1中的端点A中系统1和系统2之间的协议交互流程为例做进一步的说明。假设系统1认为自己是Actor,并且认为系统2是Partner。同理,系统2认为自己是Actor,并且认为系统1是Partner。系统1收到系统2发来的Actor信息,并将该Actor信息作为自己的Partner信息进行保存。
针对系统1中的接收状态机,其具体流程如图4所示,包括:
1.初始化,对一些参数变量进行初始化。
超时标识Expire设置为False,表示还没有超时;
记录初始值功能RecordDefault(),用于将系统1的一些LACP系统参数设置为系统1所认为系统2的LACP系统参数,即:
Partner_PortalID=Actor_PortalID
Partner_EmulatedSystemID=Actor_EmulatedSystemID
等等。
将系统1认为的系统2的数据分发参数设置为空,即:
Partner_GW=Null
Partner_Agg=Null
设置需要发送标识NTT为False,即:
NTT=False;
设置分布式中继控制协议的状态DRCP.state为Uncontact,表示目前双方还没有联系上,即:
DRCP.state=Uncontact;
2.当接收状态机收到了系统2发来的分布式中继控制协议报文DRCP DU(Digital Unit,数字单元),则进入处理状态。
记录下收到的协议报文RecordPDU(),将系统2发来的DRCPDU中的Actor信息作为本系统1的Partner信息记录下来。
设置DRCP DU超时检测的定时器,即:
DRCP.timer=Short_timer
并开始启动定时器,对下次接收到系统2发来的DRCP DU进行计时,即:
StartTimer(DRCP.timer)
对接收到的信息进行匹配性检查Check(Actor,Partner)。如果在定时器超时前再次接收到了系统2发来的DRCP DU,则重新进入处理状态中,重新启动定时器,重新计时,并继续上述步骤进行处理检查。
Check(Actor,Partner)的功能主要是对多个参数进行匹配性检查,如图5所示,包括:
进入Check功能后,对用于标识系统1和系统2的参数进行检查,判断系统1和系统2是否可以聚合为一个逻辑系统,其上的聚合组是否可以聚合为一个DRNI。主要包括:
1)检查本系统的PortalID和系统2的PortalID是否一致,检查本系统的EmulatedSystemID和系统2的EmulatedSystemID是否一致。如果均一致,说明系统1和系统2可能可以聚合为一个逻辑系统,该逻辑系统的System ID就是两系统的一致的Emulated System ID。
2)如果通过步骤1)比较后系统1和系统2的两个参数是一致的,则继续比较系统1和系统2的System Number参数是否冲突。一般来说,DRNI的一端中的多个系统(一般是小于等于3个系统)中给每一个系统都会有一个编号,这个编号就是System Number。比如系统1的System Number=01,系统2的System Number=02。这个一般是配置给系统的,用于区分一个portal中的不同系统。因此需要确定两系统的System Number是不同的。
3)如果本系统的PortalID和系统2的PortalID、本系统的EmulatedSystemID和系统2的EmulatedSystemID均是一致的,并且他们的System Number并不冲突,则表示两系统联系上了,具备了聚合为一个逻辑系统的前提条件,因此如果此时DRCP.State不在Contact(联系)状态,则将DRCP状态置为Contact状态,即:DRCP.State=Contact,并且该功能返回成功(Success),表示匹配性检查通过;如果此时已经不是处于UnContact状态了,即DRCP.State=Contact或者DRCP.State=Synchronization了,则直接返回成功Success,表示匹配性检查通过,但并不需要做其它处理。
反之,如果上述有任意一个检查没有通过,则说明两系统不具备聚合为一个逻辑系统的条件,因此无论此时分布式中继控制协议处于什么状态中,都将其状态回退到Uncontact,即设置:
DRCP.State=Uncontact
并该功能返回Fail,表示匹配性检查失败。
3.如果在定时器超时时仍没有再次接收到系统2发来的DRCP DU,或者在Check功能中匹配性检查没有通过,则系统1会认为出现了Split Brain(端点分裂)的错误,进入异常状态。在异常状态中,两系统无法再聚合为一个逻辑节点,需要重新将分布式中继控制协议状态设置为Uncontact,即:
DRCP.State=Uncontact
并作出异常出错告警,即:
ExceptionReport()
采取相应动作来进行处理,将两系统解聚合,即:
SplitBrain()
其中,SplitBrain()主要完成的工作有:
依据策略,可选择修改本系统的LACP参数,例如系统1可以修改回自己的Operational Key为协商之前设定的Administration Key,也可以修改回自己的System ID为系统初始的系统ID,而不是Emulated System ID。在具体实现时,上述策略可以是系统1和系统2各自进行修改,也可以是系统1保持不变,系统2修改,反之也一样,从而保证系统1和系统2在LACP的系统参数上是有差异的,至少不完全相同。
在执行完上述操作后,从端点B来看,系统1和系统2不再聚合为一个逻辑系统了。
4.如果在初始化后发现分布式中继控制协议是禁止的DRCP_Disabled,则进入不可用状态。设置分布式中继控制协议状态为Uncontact,即:
DRCP.State=Uncontact
一旦分布式中继控制协议的状态被置为了Contact,将触发协商状态机对本系统的Operational Key进行处理。具体流程如图6所示,包括:
1)比较本端系统(系统1,即Actor)和邻接系统(系统2,即Partner)的LACP参数Operational Key。
Same=CompareKey(Actor.OperKey,Partner.OperKey)
这里必须保证系统1和系统2的Operational Key值都达到一致后,才能保证系统1和系统2通过LACP协议和DRNI的另一端端点B交互后,端点B可能将和端点A连接的聚合链路聚合为一个分布式聚合组,形成DRNI。
2)最初,系统1和系统2的Operational Key值可能是不同的,它们各自等于这两个系统的Administration Key,因此如果比较之后系统1的Operational Key和系统2的Operational Key的值是不同的,则依据相关策略,比如依据System Priority(系统优先级)这个参数进行修改,如果系统2的System Priority的优先级要高于系统1的System Priority,则系统1会将自己的Operational Key修改为系统2的Operational Key;当策略是根据管理Key值进行修改时,系统1可以根据本系统的管理Key和接收到的系统2的管理Key值,按照一定的算法计算出相应的Operational Key,将其取值作为本系统的Operational Key;其中,该算法可以按照具体情况进行设置,只要保证交互双发(在本实施例中指系统1和系统2)所选取的算法相同即可。
修改Operational Key的功能由ModifyKey()来实现,即:
ModifyKey(Actor.OperKey,Partner.OperKey)。
如果这时DRCP协议还处于同步状态,即DRCP.State=Synchronization,则需要将其状态退回到Contact,即设置
DRCP.State=Contact,重新进行Operational Key的确定。
如果本系统为了达到统一,修改了自己的Operational Key,则需要发出NTT,触发发送状态机将修改后的Operational Key发送给系统2,以通知系统2。
3)一旦系统1收到的系统2的Operational Key和自己的Operational Key是一致的,并且此时DRCP协议状态是Contact,即
Same=True & DRCP.State=Contact
则:
a)启动LACP,向DRNI的另一端点B发送LACP协议报文,并且该LACP协议报文中携带的参数是DRCP协议协商并确定后的参数,包括了:
Actor.EmulatedSystemID
Actor.OperKey
等等;
b)将分布式中继控制协议状态设置为Synchronization,即DRCP.State=Synchronization;
4)除此之外(ELSE),反复进行Operational Key的比较,避免错误发生,以免系统2的Operational Key发生改变时,系统1无法感知。一旦Operational Key值发生改变,将导致两系统无法聚合。
系统1中的同步状态机的处理流程,如图7所示,包括:
1.DR的初始化。在系统1和系统2建立好联系且协商好LACP参数之前,流量是无法通过DRNI接口来做数据转发的。这时系统1中用于建立转发和聚合组接口的DR应该还没有建立起来,即:
Disable_DR()
取消内链链路的数据流转发功能,即:
Disable_IPLForwarding();
并且,触发NTT=True,以通知系统2本系统的DR还没建立好。
2.DR建立。当处于联系状态中的分布式中继控制协议的状态DRCP.State被设置为了Synchronization,即同步状态机检测到了DRCP.State=Synchronization,并且经过LACP协议交互后系统1通过LACP已和端点B完成聚合,其聚合器已经建立起来,即:Aggregator_Setup=Up,则进入DR建立的状态。在本状态中,将会:
首先对本系统上的网关(GW)和聚合器做出配置,这里的配置原则是本系统收到的报文就在本系统转发,即不会通过内链链路来进行数据的分发,具体的确定方式和设备的具体实现相关:
ForwardingConf()
使能DR,即:
Enable_DR()
至此,DR已经可以用于数据的转发。DRNI已经可以正常工作了。
本功能将建立起转发和聚合组接口之间的连接,从而保证了DRNI接口可以接收和发送数据报文。
系统1的DR建立完成后,可以触发NTT发送告知系统2。
至此,一个分布式的链路聚合组建立起来,数据流量已经可以正常的在DRNI上进行转发了。
3.分发协商。有时为了提高系统在流量分配上的可控性,使得DRNI技术能够更好的满足负载均衡、保护的需求,DRCP控制协议可能还需要进一步加强对数据流量的分发功能,即能够在系统1和系统2之间转发流量,这就需要通过IPL来传输数据报文了,但这需要系统1和系统2就数据流的网关和聚合器的选择达成一致,否则将出现混乱,甚至环路网络风暴等严重问题。
因此在协商一致之前,需要先关闭IPL的数据流量转发功能,避免流量的错误转发:
Disable_IPLForwarding()
然后系统1开始和系统2在DR进行针对流量分发的协商:
Complete=NeedtoCoordination(Actor.GW,Actor.Agg,Partner.GW,Partner.Agg)
该功能的具体流程参见下文相关描述,在此不再进行赘述。
当Complete=Yes时,则进入DR分发,数据流量将按新的分发算法来进行数据流的分发;如果协商失败,即Complete=No,则重复进行分发协商过程。
4.DR分发。当协商后达到了统一,即Complete=Yes,则DR需要开启连接系统1和系统2的内链链路的数据流量转发功能,打开内链链路上端口的转发功能,并且配置系统1和系统2的流量分配方式及其对应的相关变量,包括:
a)首先对DR的流量分发按照之前的协商结果进行相关的配置
DistributionConf(Actor.GW,Actor_Info.Agg,Partner.GW,Partner.Agg)
这里的数据流量是按流量的会话ID来进行分配的。
这里以系统1的流量会话分配方式为例,根据Actor_Agg和Partner_Agg,以及Actor_GW和Partner_GW的信息,修改系统1上的DR的分发方式如下表1所示:
表1系统1上的DR的分发方式
对于流量会话ID=100,其当前的网关选择是系统1,聚合器选择是系统2,因此在系统1上的内链链路端口对于会话ID=100的流量需要配置为通过(即IPL.Conversation[100]=Pass);系统2上的内链链路端口对于话ID=100的流量也需要配置为通过(IPL.Conversation[100]=Pass)。
对于流量会话ID=200,其当前的网关选择是系统1,聚合器选择也是系统1,因此该会话流量无需通过内链链路转发,其内链链路端口对于会话ID=200的流量需要配置为不通过(即IPL.Converstation[200]=Discard)。
b)配置完成后打开IPL的数据流转发功能,即:
Enable_IPLForwarding()
自此,数据流可以依据配置在系统1和系统2之间进行数据流量的转发。
以上工作只有在系统1和系统2之间互连的这条链路是内链链路的角色并可用于数据转发的时候,即IPL.State=Up的时候,分布式中继控制协议才能处于转发状态,并且DR按照系统1和系统2协商之后的分发方式来进行流量的分发。
5.一旦该链路出现故障,或者被其他机制抢占为其他用途,不再作为内链链路用于数据流量的转发,即IPL.State=Down的时候,系统1和系统2之间无法再有数据流量的互转,则有两种选择:
a)按照之前协商好的分发算法重新调整流量的分发,各个会话流量不再经过内链链路进行转发;
b)回归到分发协商子状态,关闭IPL的数据流转发功能,系统1和系统2中的DR回到各自之前的协商前状态来转发数据流量。
具体选择哪种方式需要根据系统1和系统2之间协商的DR分发算法内容来决定。如果它们协商的DR分发算法不仅包括了IPL.State=Up时的会话流量分发信息,而且包括了IPL.State=Down时的会话流量分发信息,则采取a)方法;如果仅包含了IPL.State=Up时的会话流量分发信息,则需采取b)方法,回到分发协商子状态,按协商之前的方式来转发数据流量。
在另一种实施方式下,系统1中的同步状态机也可以按下述流程进行处理,如图8所示:
1.DR的初始化。在系统1和系统2建立好联系且协商好LACP参数之前,流量是无法通过DRNI接口来做数据转发的。这时系统1中用于建立转发和聚合组接口的DR应该还没有建立起来,即:
Disable_DR()
取消内链链路的数据流转发功能,即:
Disable_IPLForwarding()
并且,触发NTT=True,以通知系统2本系统的DR还没建立好。
2.分发协商。当处于联系状态中的分布式中继控制协议的状态DRCP.State被置为了Synchronization,即同步状态机检测到了DRCP.State=Synchronization时,先进行会话分发算法的协商。
首先将IPL的数据转发功能关闭,即系统1和系统2之间不能通过IPL分流数据:
Disable_IPLForwarding()
然后开始进行系统1和系统2的会话分发算法的协商:
Complete=NeedtoCoordination(Actor.GW,Actor.Agg,Partner.GW,Partner.Agg)
该功能的具体流程参见下文相关描述,在此不再进行赘述。
当Complete=Yes,且聚合器已经建立完成即Aggregator_Ready=True时,进入DR分发子状态,数据流量将按新的分发算法来进行数据流的分发;
如果协商由于一些原因没有完成,即Complete=No,并且聚合器也已经建立完成,即Aggregator_Ready=True,则进入DR转发子状态,数据流量按系统1和系统2的各自DR决定的网关选择和聚合器选择进行转发,这里的配置原则是本系统收到的报文就在本系统转发,即不会通过内链链路来进行数据的分发,具体的确定方式和设备的具体实现相关。
3.在DR转发子状态中,首先系统1和系统2的各自DR决定的网关选择和聚合器选择,这里的配置原则是本系统收到的报文就在本系统进行转发,即
ForwardingConf()
使能DR,即:
Enable_DR()
至此,DR已经可以用于数据的转发。DRNI已经可以正常工作了。
4.在DR分发子状态中,对DR的流量分发按照之前的协商结果进行相关的配置,即:
DistributionConf(Actor.GW,Actor_Info.Agg,Partner.GW,Partner.Agg)
这里的数据流量是按流量的会话ID来进行分配的。
这里以系统1的流量会话分配方式为例,根据Actor_Agg和Partner_Agg,以及Actor_GW和Partner_GW的信息,修改系统1上的DR的分发方式如上表1所示。
对于流量会话ID=100,其当前的网关选择是系统1,聚合器选择是系统2,因此在系统1上的内链链路端口对于会话ID=100的流量需要配置为通过(即IPL.Conversation[100]=Pass);系统2上的内链链路端口对于话ID=100的流量也需要配置为通过(IPL.Conversation[100]=Pass)。
对于流量会话ID=200,其当前的网关选择是系统1,聚合器选择也是系统1,因此该会话流量无需通过内链链路转发,其内链链路端口对于会话ID=200的流量需要配置为不通过(即IPL.Converstation[200]=Discard)。
b)配置完成后打开IPL的数据流转发功能,即:
Enable_IPLForwarding()
自此,数据流可以依据配置在系统1和系统2之间进行数据流量的转发。
c)并且,使能DR,即:
Enable_DR()
从而DR可以正式按照之前协商后的分发配置的方法来进行流量的分发了。
DR分发子状态的工作只有在系统1和系统2之间互连的这条链路是内链链路的角色,并可用于数据转发的时候,即IPL.State=Up的时候,分布式中继控制协议才能处于转发状态,并且DR按照系统1和系统2协商之后的分发方式来进行流量的分发。
5.一旦该链路出现故障,或者被其他机制抢占为其他用途,不再作为内链链路用于数据流量的转发,即IPL.State=Down的时候,系统1和系统2之间无法再有数据流量的互转,则有两种选择:
a)按照之前协商好的分发算法重新调整流量的分发,各个会话流量不再经过内链链路进行转发。
b)回归到分发协商子状态,关闭IPL的数据流转发功能,由于IPL.State=Down,协商不成功,因此系统1和系统2中的DR重新进入到DR转发子状态来转发流量。
NeedtoCoordination()功能用于系统1和系统2在流量分配上的统一。一般来说,DRNI有两个方向的数据流量,一个是从其他网络端口发往聚合端口的数据流量,另一个是聚合端口接收到的发往其他网络端口的数据流量。第一个方向的流量在DR处需要选择是从系统1的聚合器aggregator发往聚合端口,还是从系统2的聚合器aggregator发往聚合端口,这时的流量分配由Actor_Info.Agg来决定;第二个方向的流量在DR处需要选择是从系统1发往其他网络端口,还是经由内链链路发送到系统2后再发往其他网络端口,这时的流量分配由Actor_Info.GW来决定。因此NeedtoCoordination()功能就是用于Actor_Info.Agg和Partner_Info.Agg,以及Actor_Info.GW和Partner_Info.GW的统一,防止出现冲突的问题。具体流程如图9所示,包括:
1.判断是否需要在本系统和邻接系统之间进行网关选择和聚合器选择的交互,如果不需要,则直接返回不交互,设置Complete=False;如果需要则需要进一步判断;
2.判断IPL是否是可以作为内链链路角色用于数据的转发,即IPL.State是否是Up的,如果此时IPL的状态还是Down的,即不能用于系统1和系统2之间数据流的转发,因此返回不交互,Complete=False;如果IPL.State=Up,则执行下一步骤;
3.开始将本系统1的网关选择、聚合器选择和系统2的网关选择、聚合器选择的信息进行比对;
4.判断两系统在会话流量的分配上是否是一致的,即系统1和系统2在流量分配上的决策是否是一样的。如果是一致的则表示交互完成,即Complete=True;
5.如果不一致,则做下列处理:
a)按既定的策略来确定Acto.GW和Actor.Agg的信息;
b)将Actor.GW、Actor.Agg、Partner.Agg,以及Partner.GW信息通过触发NTT让发送状态机发送给系统2。
处理之后,重新回到开始处再次进行判断对比,直到该功能返回True或者False。
这里的既定的策略包括但不限于包括以下2种:
a)系统1完全接受系统2在网关选择和聚合器选择的信息,即经过交互修改后,系统1和系统2在网关选择和聚合器选择上完全一致;
b)系统1和系统2只选择出他们一致的部分,并只对达成一致的会话流量进行分发,对于在网关选择、聚合器选择上有冲突的会话流量采取丢弃的方式。也可以将有冲突的会话流量上报告警,由高层协议或者网络管理员来做出相应的调整。一旦原冲突的会话流量在调整后达到了一致,又可恢复这些会话流量的分发。
本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本发明不限制于任何特定形式的硬件和软件的结合。
以上所述仅为本发明的优选实施例而已,并非用于限定本发明的保护范围。根据本发明的发明内容,还可有其他多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (35)
1.一种分布式弹性网络互连中同一端内系统之间交互信息的方法,应用于链路聚合组端点中的每一个系统,包括:
通过内链接口发送分布式中继控制协议(DRCP)协议报文,其中至少携带本系统的系统信息;
在接收到邻接系统发来的DRCP协议报文后,如判断出本系统与所述邻接系统能形成分布式弹性网络互连的一个端点,则确定本系统的操作Key值。
2.如权利要求1所述的方法,其特征在于,还包括:
在确定本系统的操作Key值后,在本系统内建立分布式中继通道。
3.如权利要求2所述的方法,其特征在于,还包括:
在确定本系统的操作Key值后,与所述邻接系统协商统一的会话分发方式。
4.如权利要求1所述的方法,其特征在于:
所述判断出本系统与所述邻接系统能形成同一个端点,具体包括:
对接收到的所述DRCP协议报文中携带的所述邻接系统的系统信息与本系统的系统信息进行匹配性检查,若所述匹配性检查通过,则判断出本系统与所述邻接系统能形成同一个端点。
5.如权利要求4所述的方法,其特征在于:
所述对接收到的所述DRCP协议报文中携带的所述邻接系统的系统信息与本系统的系统信息进行匹配性检查,具体包括:
判断本系统的端点标识和所述邻接系统的端点标识是否一致;和/或判断本系统的虚拟系统标识和所述邻接系统的虚拟系统标识是否一致;
所述匹配性检查通过,具体包括:
所述本系统与所述邻接系统的端点标识相同,和/或所述本系统与所述邻接系统的虚拟系统标识相同。
6.如权利要求5所述的方法,其特征在于:
所述对接收到的所述DRCP协议报文中携带的所述邻接系统的系统信息与本系统的系统信息进行匹配性检查,还包括:
判断本系统的系统编号(System Number)与所述邻接系统的SystemNumber是否冲突;
所述匹配性检查通过,具体包括:
所述本系统与所述邻接系统的端点标识和/或虚拟系统标识分别相同,且本系统与所述邻接系统的System Number不冲突。
7.如权利要求4~6中任意一项所述的方法,其特征在于,还包括:
若匹配性检查通过,则保存所述DRCP协议报文中携带的所述邻接系统的系统信息。
8.如权利要求1、4或5所述的方法,其特征在于:
所述发送DRCP协议报文,具体包括:
周期性地发送所述DRCP协议报文;
所述方法还包括:
每当接收到邻接系统发来的DRCP协议报文后,启动一个定时器;
若在所述定时器超时时,未收到所述邻接系统发来的DRCP协议报文,或者在所述定时器超时前收到了所述邻接系统发来的DRCP协议报文,但匹配性检查未通过,则确定本系统与所述邻接系统不能再形成分布式弹性网络互连的一个端点。
9.如权利要求1所述的方法,其特征在于:
所述发送DRCP协议报文,具体包括:
在本系统的系统信息中有参数更新时,发送所述DRCP协议报文。
10.如权利要求1所述的方法,其特征在于:
所述确定本系统的操作Key值,具体包括:
如判断出本系统的操作Key值与所述邻接系统的操作Key值相同,则维持本系统的操作Key值不变。
11.如权利要求10所述的方法,其特征在于:
所述确定本系统的操作Key值,具体包括:
如判断出本系统的操作Key值与所述邻接系统的操作Key值不同,则依据策略,修改本系统的操作Key值或者维持本系统的操作Key值不变。
12.如权利要求1所述的方法,其特征在于:
所述确定本系统的操作Key值,具体包括:
根据本系统的管理Key值及接收到的所述邻接系统的管理Key值,计算出本系统的操作Key值。
13.如权利要求1、10、11或12所述的方法,其特征在于,还包括:
在确定本系统的操作Key值后,将本系统的操作Key值通过链路汇聚控制协议(LACP)报文发送给分布式弹性网络互连的对端。
14.如权利要求3所述的方法,其特征在于:
所述与所述邻接系统协商统一的会话分发方式,具体包括:
对所述邻接系统发来的所述DRCP协议报文中携带的会话分法方式与本系统的会话分发方式进行协商,依据协商好的会话分发方式来配置本系统内分布式中继的流量分发方式;
所述会话分发方式包括下述两个参数中任意一个或任意组合:网关系统选择和聚合器/聚合端口选择。
15.如权利要求14所述的方法,其特征在于:
所述对所述邻接系统发来的所述DRCP协议报文中携带的会话分法方式与本系统的会话分发方式进行协商,具体包括:
将所述邻接系统发来的DRCP协议报文中携带的会话分发方式与本系统的会话分发方式进行对比,对于在会话分发方式达到一致的会话,则分布式中继按一致的会话分发方式进行所述会话流量的分发,对于在会话分发方式有冲突的会话,则分布式中继过滤或丢弃所述会话分发方式有冲突的会话流量。
16.如权利要求2所述的方法,其特征在于:
所述在本系统内建立分布式中继通道,具体包括:
对分布式中继在网关和聚合器/聚合端口上会话分发做出配置,配置后所述分布式中继在本系统上的网关和聚合器/聚合端口之间转发会话流量。
17.如权利要求2所述的方法,其特征在于:
在与所述邻接系统协商统一的会话分发方式之前,还包括:
关闭与所述邻接系统之间的内链链路的数据流量转发功能;
当与所述邻接系统统一会话分发方式后协商完成,统一了分发算法,开启所述内链链路的数据流量转发功能。
18.如权利要求8所述的方法,其特征在于,还包括:
若确定本系统与所述邻接系统不能再形成分布式弹性网络互连的一个端点,则依据策略确定是否需要对本系统的系统信息进行修改;如需要修改,则对本系统的系统信息中至少部分LACP参数进行修改,并将修改后的LACP参数通过LACP报文发送给分布式弹性网络互连的对端;其中,修改后本系统的LACP参数与所述邻接系统的LACP参数至少不完全相同。
19.如权利要求12或18所述的方法,其特征在于:
所述对本系统的系统信息中至少部分LACP参数进行修改,具体包括:
对本系统的操作key值和/或系统标识进行修改,或者将操作Key值恢复为管理Key值。
20.如权利要求14或15所述的方法,其特征在于:
当与所述邻接系统之间的内链链路发生故障或者所述内链链路不可用时,则将所述分布式中继恢复为协商前的会话分发方式的配置。
21.如权利要求1所述的方法,其特征在于:
通过所述内链接口发送的所述DRCP协议报文中还携带有与本系统相连接的其他邻接系统的系统信息和/或会话分发方式。
22.一个分布式弹性网络互连中实现分布式中继控制的系统,其特征在于,包括:
发送状态机用于在本系统的其他状态机指示需要发送或者需周期发送时,发送分布式中继控制协议(DRCP)协议报文;
接收状态机用于接收邻接系统发来的DRCP协议报文,对本系统和所述邻接系统的系统信息进行匹配性检查,在匹配性检查通过后记录所述DRCP协议报文中的信息,启动定时器判断是否定时接收到所述邻接系统再次发来的DRCP协议报文;
协商状态机用于确定本系统的操作Key值,确保和所述邻接系统的操作Key值一致;
同步状态机用于建立聚合器/聚合端口和网关之间的转发通道,按需与所述邻接系统协商统一的会话分发方式,配置分布式中继的会话分发方式;
周期发送状态机用于决定所述发送状态机周期发送DRCP协议报文。
23.如权利要求22所述的系统,其特征在于:
所述接收状态机用于对本系统和所述邻接系统的系统信息进行匹配性检查,具体包括:
所述接收状态机用于判断本系统的端点标识和所述邻接系统的端点标识是否一致;和/或判断本系统的虚拟系统标识和所述邻接系统的虚拟系统标识是否一致;
所述匹配性检查通过,具体包括:
所述本系统与所述邻接系统的端点标识相同,和/或所述本系统与所述邻接系统的虚拟系统标识相同。
24.如权利要求23所述的系统,其特征在于:
所述接收状态机用于对本系统和所述邻接系统的系统信息进行匹配性检查,还包括:
所述接收状态机用于判断本系统的系统编号(System Number)与所述邻接系统的System Number是否冲突;
所述匹配性检查通过,具体包括:
所述本系统与所述邻接系统的端点标识和/或虚拟系统标识分别相同,且邻接系统的System Number合法,或者,本系统与所述邻接系统的SystemNumber不冲突。
25.如权利要求22所述的系统,其特征在于:
所述协商状态机用于确定本系统的操作Key值,确保和所述邻接系统的操作Key值一致,具体包括:
所述协商状态机用于在判断出本系统的操作Key值与所述邻接系统的操作Key值相同时,维持本系统的操作Key值不变;还用于在判断出本系统的操作Key值与所述邻接系统的操作Key值不同时,依据策略,修改本系统的操作Key值或者维持本系统的操作Key值不变。
26.如权利要求22所述的方法,其特征在于:
所述协商状态机用于确定本系统的操作Key值,确保和所述邻接系统的操作Key值一致,具体包括:
所述协商状态机用于根据本系统的管理Key值及接收到的所述邻接系统的管理Key值,计算出本系统的操作Key值。
27.如权利要求25或26所述的系统,其特征在于,还包括:
所述协商状态机还用于在确定本系统的操作Key值后,将本系统的操作Key值通过链路汇聚控制协议(LACP)报文发送给分布式弹性网络互连的对端。
28.如权利要求22所述的系统,其特征在于:
所述与所述邻接系统协商统一的会话分发方式,具体包括:
所述同步状态机用于对所述邻接系统发来的所述DRCP协议报文中携带的会话分法方式与本系统的会话分发方式进行协商,依据协商好的会话分发方式来配置本系统内分布式中继的流量分发方式。
29.如权利要求28所述的系统,其特征在于:
所述同步状态机用于对所述邻接系统发来的所述DRCP协议报文中携带的会话分法方式与本系统的会话分发方式进行协商,具体包括:
所述同步状态机用于将所述邻接系统发来的DRCP协议报文中携带的会话分发方式与本系统的会话分发方式进行对比,对于在会话分发方式达到一致的会话,则按一致的会话分发方式进行所述会话流量的分发,对于在会话分发方式有冲突的会话,则过滤或丢弃所述会话分发方式有冲突的会话流量。
30.如权利要求8或29所述的系统,其特征在于:
所述会话分发方式包括下述两个参数中任意一个或任意组合:网关系统选择和聚合器/聚合端口选择。
31.如权利要求22所述的系统,其特征在于:
同步状态机还用于在与所述邻接系统协商统一的会话分发方式之前,关闭与所述邻接系统之间的内链链路的数据流量转发功能;
还用于当与所述邻接系统统一会话分发方式后协商完成,统一了分发算法,开启所述内链链路的数据流量转发功能。
32.如权利要求22所述的系统,其特征在于:
所述接收状态机还用于如未定时收到所述邻接系统再次发来的DRCP协议报文或者接收到的所述邻接系统再次发来的DRCP协议报文没有通过匹配性检查,则依据策略确定是否需要对本系统的系统信息进行修改;如需要修改,则还用于对本系统的系统信息中至少部分LACP参数进行修改,并将修改后的LACP参数通过LACP报文发送给分布式弹性网络互连的对端;其中,修改后本系统的LACP参数与所述邻接系统的LACP参数至少不完全相同。
33.如权利要求26或32所述的系统,其特征在于:
所述接收状态机用于对本系统的系统信息中至少部分LACP参数进行修改,具体包括:
所述接收状态机用于对本系统的操作key值和/或系统标识进行修改,或者将操作Key值恢复为管理Key值。
34.如权利要求28或29所述的系统,其特征在于:
所述同步状态机还用于在与所述邻接系统之间的内链链路发生故障或者所述内链链路不可用时,将所述分布式中继恢复为协商前的会话分发方式的配置。
35.如权利要求22所述的系统,其特征在于:
所述发送状态机通过所述内链接口发送的所述DRCP协议报文中还携带有与本系统相连接的其他邻接系统的系统信息和/或会话分发方式。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310155668.9A CN104125088B (zh) | 2013-04-28 | 2013-04-28 | Drni中同一端内系统之间交互信息的方法和系统 |
JP2016510922A JP6105155B2 (ja) | 2013-04-28 | 2014-04-16 | Drniにおける同一端内システムの間で情報を交換する方法及びシステム |
PCT/CN2014/075462 WO2014176975A1 (zh) | 2013-04-28 | 2014-04-16 | Drni中同一端内系统之间交互信息的方法和系统 |
EP14791616.7A EP2981026B1 (en) | 2013-04-28 | 2014-04-16 | Method and system for information interaction among systems in the same portal in drni |
US14/787,596 US9749186B2 (en) | 2013-04-28 | 2014-04-16 | Method and system for information interaction among systems in the same end in DRNI |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310155668.9A CN104125088B (zh) | 2013-04-28 | 2013-04-28 | Drni中同一端内系统之间交互信息的方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104125088A true CN104125088A (zh) | 2014-10-29 |
CN104125088B CN104125088B (zh) | 2019-05-10 |
Family
ID=51770360
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310155668.9A Active CN104125088B (zh) | 2013-04-28 | 2013-04-28 | Drni中同一端内系统之间交互信息的方法和系统 |
Country Status (5)
Country | Link |
---|---|
US (1) | US9749186B2 (zh) |
EP (1) | EP2981026B1 (zh) |
JP (1) | JP6105155B2 (zh) |
CN (1) | CN104125088B (zh) |
WO (1) | WO2014176975A1 (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104243259A (zh) * | 2013-06-20 | 2014-12-24 | 中兴通讯股份有限公司 | 分布式弹性网络互连系统中协作方法和系统 |
CN106878164A (zh) * | 2016-12-13 | 2017-06-20 | 新华三技术有限公司 | 一种报文传输方法和装置 |
CN107249047A (zh) * | 2017-06-09 | 2017-10-13 | 上海斐讯数据通信技术有限公司 | 基于网络协议的数据传送方法、装置及计算机处理设备 |
CN107547398A (zh) * | 2017-05-23 | 2018-01-05 | 新华三技术有限公司 | 报文转发方法、装置和设备 |
CN108737189A (zh) * | 2018-05-25 | 2018-11-02 | 新华三技术有限公司 | Dr设备角色更新方法及装置 |
CN109194521A (zh) * | 2018-09-29 | 2019-01-11 | 新华三技术有限公司 | 一种流量转发方法及设备 |
CN110708275A (zh) * | 2018-12-18 | 2020-01-17 | 新华三技术有限公司 | 一种协议报文的处理方法和装置 |
CN111835560A (zh) * | 2020-06-29 | 2020-10-27 | 新华三信息安全技术有限公司 | 一种分布式弹性网络互连系统及其部署方法 |
US11025492B2 (en) | 2013-04-23 | 2021-06-01 | Telefonaktiebolaget Lm Ericsson (Publ) | Packet data unit (PDU) structure for supporting distributed relay control protocol (DRCP) |
US11038804B2 (en) | 2013-04-23 | 2021-06-15 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and system of implementing conversation-sensitive collection for a link aggregation group |
WO2021238508A1 (zh) * | 2020-05-29 | 2021-12-02 | 华为技术有限公司 | 一种数据处理的方法、装置和设备 |
CN115333974A (zh) * | 2022-08-10 | 2022-11-11 | 杭州云合智网技术有限公司 | Drni网络中基于vsi的环路检测方法及装置 |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108259348B (zh) * | 2017-05-24 | 2020-05-12 | 新华三技术有限公司 | 一种报文传输方法和装置 |
CA3095862A1 (en) | 2018-04-05 | 2019-10-10 | Telefonaktiebolaget Lm Ericsson (Publ) | Adaptation layer setup and configuration in integrated access backhauled networks |
CN112929417B (zh) * | 2021-01-22 | 2022-05-27 | 新华三信息安全技术有限公司 | 报文处理方法及装置 |
CN114172690B (zh) * | 2021-11-11 | 2023-12-26 | 新华三大数据技术有限公司 | 一种终端认证方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030061533A1 (en) * | 2001-09-24 | 2003-03-27 | Perloff Ronald S. | Multi-device link aggregation |
CN101252459A (zh) * | 2008-03-24 | 2008-08-27 | 中兴通讯股份有限公司 | 一种设置链路端口的协议状态的方法及其监控方法 |
CN102752187A (zh) * | 2011-04-21 | 2012-10-24 | 中兴通讯股份有限公司 | 弹性网络接口的实现方法和系统 |
CN103023686A (zh) * | 2011-09-28 | 2013-04-03 | 中兴通讯股份有限公司 | 一种分布式链路聚合组系统中节点间的交互方法及节点 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8213296B2 (en) * | 2009-05-14 | 2012-07-03 | Verizon Patent And Licensing Inc. | Link aggregation protection |
US8913489B2 (en) * | 2010-08-04 | 2014-12-16 | Alcatel Lucent | System and method for virtual fabric link failure recovery |
CN102014019B (zh) * | 2010-11-04 | 2015-12-16 | 中兴通讯股份有限公司 | 聚合链路切换方法及装置 |
CN102316039B (zh) * | 2011-09-09 | 2017-12-05 | 中兴通讯股份有限公司 | 基于聚合体优先级策略的聚合体逻辑选择的方法及系统 |
JP6046241B2 (ja) * | 2012-05-15 | 2016-12-14 | テレフオンアクチーボラゲット エルエム エリクソン(パブル) | リンクアグリゲーショングループにおけるスプリットブレイン問題を検知し、それに対処するための方法及び装置 |
US9509556B2 (en) * | 2013-04-23 | 2016-11-29 | Telefonaktiebolaget L M Ericsson (Publ) | Method and system for synchronizing with neighbor in a distributed resilient network interconnect (DRNI) link aggregation group |
-
2013
- 2013-04-28 CN CN201310155668.9A patent/CN104125088B/zh active Active
-
2014
- 2014-04-16 WO PCT/CN2014/075462 patent/WO2014176975A1/zh active Application Filing
- 2014-04-16 US US14/787,596 patent/US9749186B2/en active Active
- 2014-04-16 EP EP14791616.7A patent/EP2981026B1/en active Active
- 2014-04-16 JP JP2016510922A patent/JP6105155B2/ja active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030061533A1 (en) * | 2001-09-24 | 2003-03-27 | Perloff Ronald S. | Multi-device link aggregation |
CN101252459A (zh) * | 2008-03-24 | 2008-08-27 | 中兴通讯股份有限公司 | 一种设置链路端口的协议状态的方法及其监控方法 |
CN102752187A (zh) * | 2011-04-21 | 2012-10-24 | 中兴通讯股份有限公司 | 弹性网络接口的实现方法和系统 |
CN103023686A (zh) * | 2011-09-28 | 2013-04-03 | 中兴通讯股份有限公司 | 一种分布式链路聚合组系统中节点间的交互方法及节点 |
Cited By (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11949599B2 (en) | 2013-04-23 | 2024-04-02 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and system of implementing conversation-sensitive collection for a link aggregation group |
US11811605B2 (en) | 2013-04-23 | 2023-11-07 | Telefonaktiebolaget Lm Ericsson (Publ) | Packet data unit (PDU) structure for supporting distributed relay control protocol (DRCP) |
US11038804B2 (en) | 2013-04-23 | 2021-06-15 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and system of implementing conversation-sensitive collection for a link aggregation group |
US11025492B2 (en) | 2013-04-23 | 2021-06-01 | Telefonaktiebolaget Lm Ericsson (Publ) | Packet data unit (PDU) structure for supporting distributed relay control protocol (DRCP) |
CN104243259A (zh) * | 2013-06-20 | 2014-12-24 | 中兴通讯股份有限公司 | 分布式弹性网络互连系统中协作方法和系统 |
CN106878164A (zh) * | 2016-12-13 | 2017-06-20 | 新华三技术有限公司 | 一种报文传输方法和装置 |
CN106878164B (zh) * | 2016-12-13 | 2020-04-03 | 新华三技术有限公司 | 一种报文传输方法和装置 |
CN107547398A (zh) * | 2017-05-23 | 2018-01-05 | 新华三技术有限公司 | 报文转发方法、装置和设备 |
CN107249047B (zh) * | 2017-06-09 | 2020-11-17 | 区动(上海)网络科技有限公司 | 基于网络协议的数据传送方法、装置及计算机处理设备 |
CN107249047A (zh) * | 2017-06-09 | 2017-10-13 | 上海斐讯数据通信技术有限公司 | 基于网络协议的数据传送方法、装置及计算机处理设备 |
CN108737189A (zh) * | 2018-05-25 | 2018-11-02 | 新华三技术有限公司 | Dr设备角色更新方法及装置 |
CN109194521B (zh) * | 2018-09-29 | 2021-12-07 | 新华三技术有限公司 | 一种流量转发方法及设备 |
CN109194521A (zh) * | 2018-09-29 | 2019-01-11 | 新华三技术有限公司 | 一种流量转发方法及设备 |
CN110708275B (zh) * | 2018-12-18 | 2020-11-06 | 新华三技术有限公司 | 一种协议报文的处理方法和装置 |
WO2020125624A1 (zh) * | 2018-12-18 | 2020-06-25 | 新华三技术有限公司 | 协议报文的处理 |
CN110708275A (zh) * | 2018-12-18 | 2020-01-17 | 新华三技术有限公司 | 一种协议报文的处理方法和装置 |
US11936762B2 (en) | 2018-12-18 | 2024-03-19 | New H3C Technologies Co., Ltd. | Processing protocol packet |
WO2021238508A1 (zh) * | 2020-05-29 | 2021-12-02 | 华为技术有限公司 | 一种数据处理的方法、装置和设备 |
CN111835560A (zh) * | 2020-06-29 | 2020-10-27 | 新华三信息安全技术有限公司 | 一种分布式弹性网络互连系统及其部署方法 |
CN111835560B (zh) * | 2020-06-29 | 2024-02-09 | 新华三信息安全技术有限公司 | 一种分布式弹性网络互连系统及其部署方法 |
CN115333974A (zh) * | 2022-08-10 | 2022-11-11 | 杭州云合智网技术有限公司 | Drni网络中基于vsi的环路检测方法及装置 |
CN115333974B (zh) * | 2022-08-10 | 2023-08-11 | 杭州云合智网技术有限公司 | Drni网络中基于vsi的环路检测方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
EP2981026B1 (en) | 2019-11-27 |
EP2981026A1 (en) | 2016-02-03 |
JP6105155B2 (ja) | 2017-03-29 |
EP2981026A4 (en) | 2016-09-07 |
WO2014176975A1 (zh) | 2014-11-06 |
CN104125088B (zh) | 2019-05-10 |
US20160105324A1 (en) | 2016-04-14 |
US9749186B2 (en) | 2017-08-29 |
JP2016517252A (ja) | 2016-06-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104125088A (zh) | Drni中同一端内系统之间交互信息的方法和系统 | |
RU2620995C2 (ru) | Способ и система для обновления состояний распределенного отказоустойчивого сетевого межсоединения (drni) | |
US8817594B2 (en) | Technique establishing a forwarding path in a network system | |
US9819572B2 (en) | Multiple ring identification and configuration protocol | |
EP2911355B1 (en) | Method and device for flow path negotiation in link aggregation group | |
CN105376154A (zh) | 渐进式mac地址学习 | |
CN104488238A (zh) | 用于网络环境中集群链路聚合控制的系统和方法 | |
CN104104570A (zh) | Irf系统中的聚合处理方法及装置 | |
US20110222440A1 (en) | Methods, systems and computer readable media for utilizing a standard spanning tree protocol to indicate an active switching fabric in a network node | |
CN105656645A (zh) | 堆叠系统的故障处理的决策方法和装置 | |
US9338060B2 (en) | Multiple ring identification and configuration protocol | |
CN112769614B (zh) | 一种按需vpn的自动管理方法和异构网络的互通系统 | |
EP3039830A1 (en) | Network switching systems and methods | |
GB2534962A (en) | Method of operating a network node, network node, system and computer-readable medium | |
CN114157533A (zh) | 一种基于clos架构的报文跨板组播复制转发方法和系统 | |
CN103731303A (zh) | 一种纵向融合架构接口实现多活性实体检测的方法及设备 | |
CN103490921A (zh) | 网络保护方法、装置、下环节点及系统 | |
CN104104596B (zh) | 一种irf分裂处理方法和装置 | |
CN112995002B (zh) | 一种交换机环网的设计方法、交换机及存储介质 | |
WO2014075594A1 (zh) | 基于多环结构网络相交环的业务的传输保护方法及装置 | |
CN105519058B (zh) | 控制器、服务节点和数据包转发方法 | |
CN109743316A (zh) | 数据传输方法、出口路由器、防火墙及双台防火墙系统 | |
CN103746912B (zh) | 一种基于子环链路的数据报文传输方法和设备 | |
CN105049367A (zh) | 一种聚合链路的流量分配方法和接入设备 | |
CN102857423A (zh) | 一种分布式链路聚合系统中业务流转发方法及节点 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |