CN102857430B - 一种esadi协议的实例状态管理方法和系统 - Google Patents
一种esadi协议的实例状态管理方法和系统 Download PDFInfo
- Publication number
- CN102857430B CN102857430B CN201110184351.9A CN201110184351A CN102857430B CN 102857430 B CN102857430 B CN 102857430B CN 201110184351 A CN201110184351 A CN 201110184351A CN 102857430 B CN102857430 B CN 102857430B
- Authority
- CN
- China
- Prior art keywords
- esadi
- drb
- equipment
- neighbours
- state
- 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.)
- Active
Links
Abstract
本发明公开了一种ESADI协议的实例状态管理方法和系统,均可针对ESADI设备定义不同的实例状态;不同实例状态间的切换由不同的事件驱动;实现不同实例状态下的协议处理。本发明的ESADI协议的实例状态管理技术,通过引入ESADI设备的实例状态,由事件驱动实例状态跃迁;使得网络出现变动后,ESADI设备需要执行的动作清晰明了,便于管理和实现。因而解决了因DRB的不稳定导致的网络振荡,保证了DRB的稳定性,提高了网络的稳定性和可操作性。
Description
技术领域
本发明涉及通信领域,具体涉及一种ESADI(End Station Address DistributionInformation,端系统地址分发信息)协议的实例状态管理方法和系统。
背景技术
TRILL(Transparent Interconnection over Lots of Links,多链接透明互连)是IETF(互联网工程任务组)推荐的连接层(L2)网络标准,用于解决大型数据中心中STP(Spanning Tree protocol,生成树协议)的不足。在L2网络中,STP通过阻塞冗余链路来避免环路,但同时也造成了冗余链路带宽的浪费。TRILL通过将IS-IS(Intermediate Systemto Intermediate System)路由协议引入L2网络,解决了L2环路问题,同时保留了L2多路径。
应用ESADI协议的设备为ESADI设备,ESADI设备的形式多种多样,如:在TRILL网络中,运行TRILL协议的设备称为RBridge(路由网桥,RB),挂接在RBridge上的主机、服务器等设备称为端系统(End Station,ES)。在TRILL网络的出入口处,RBridge需要对ES提供端系统服务,因此RBridge需要获取MAC的信息以对网络中ES的MAC信息有一定了解。
在TRILL网络中,启用ESADI协议的RBridge在物理上并非直接连接在一起,而是通过虚链路(Virtual Link)在逻辑上连接在一起。在大型TRILL网络上,虚链路上连接的RBridge可能达到成千上百。为了减少启用ESADI协议的RBridge之间的报文交互、降低对TRILL网络的报文冲击,ESADI协议只提供了与PDU(Protocol Data Unit,协议数据单元)相关的LSP(Link State PDU,链路状态协议处理单元)、CSNP(Complete Sequence NumberPDU,完全序列号PDU)和PSNP(Partial Sequence Number PDU,部分序列号PDU)三类报文。同时,为了保证网络的稳定性,运行ESADI的RBridge需要在虚链路上选举一个指定路由网桥(Designed RBridge,DRB),通过周期性的发送CSNP报文,实现虚链路上RBridge之间的链路实例状态数据库同步。虚链路上的其他RBridge,只有认可CSNP的发送者是DRB时,才会用收到的CSNP进行链路实例状态数据库同步。
ESADI邻居的发现机制是基于LSP报文的,而LSP刷新时间间隔较长,不能够及时地发现邻居,从而导致较长时间内邻居的链路实例状态数据库不一致,此时就需要由DRB周期发送CSNP报文来保证整个网络中ESADI链路实例状态数据库的一致,因此DRB的稳定对网络的稳定性有着至关重要的作用。但是,目前网络中的某些因素(比如新加入的RBrideg优先级更高)会导致现有DRB失效,引起DRB的振荡,带来网络的不稳定。
发明内容
有鉴于此,本发明的主要目的在于提供一种ESADI协议的实例状态管理方法和系统,以解决因DRB的不稳定导致的网络振荡,保证DRB的稳定性,提高网络的稳定性和可操作性。
为达到上述目的,本发明的技术方案是这样实现的:
一种ESADI协议的实例状态管理方法,该方法包括:
针对ESADI设备定义不同的实例状态;不同实例状态间的切换由不同的事件驱动;实现不同实例状态下的协议处理。
所述实例状态包括指定路由网桥DRB、非指定路由网桥Not-DRB、关闭Down、初始Initial;其中,
DRB:ESADI设备处于该实例状态时,该ESADI设备就是DRB;
Not-DRB:ESADI设备处在该实例状态时,能够根据收到的报文完成链路实例状态数据库的同步;发现邻居且不处在DRB实例状态的ESADI设备的实例状态为Not-DRB实例状态;
Down:该实例状态为管理down,ESADI设备处于该实例状态时,不接收和发送任何ESADI报文;
Initial:启用Up但未发现邻居的ESADI设备处在该实例状态,处在Initial实例状态的ESADI设备正常收发ESADI协议报文。
该方法还包括:
处于DRB实例状态时,ESADI设备在收到更优邻居发送的ESADI协议报文时从DRB实例状态回退到Not-DRB实例状态;
处于Not-DRB实例状态时,超时收不到DRB发送的完全序列号协议数据单元CSNP报文,处在该实例状态下的ESADI设备跃迁到DRB实例状态;
不处于Down实例状态时,管理Down事件引起ESADI设备从更高的实例状态回退到Down实例状态;
处于Initial实例状态时,ESADI设备在发现邻居时从Initial实例状态跃迁到Not-DRB实例状态;
不处于Initial实例状态时,所有邻居的丢失导致ESADI设备从更高的实例状态回退到Initial实例状态。
所述不同的实例状态下的协议处理,包括确定DRB:
根据包括优先级在内的参数,比较ESADI邻居列表中被标识为DRB的邻居与当前ESADI设备的优劣性,将相对更优的ESADI设备作为最终的DRB。
所述ESADI邻居列表,用于除当前ESADI设备以外的其它邻居确认DRB,以使所有邻居对DRB的身份具有一致的认识;
所述ESADI邻居列表包括本地ESADI设备所发现的ESADI邻居信息,包括:系统标识符System ID和/或别名Nickname、优先级、保持时间Holding Time和等待时间WaitingTime的周期以及指定路由网桥标记DRB-flag;其中System ID和/或Nickname用于唯一标识一位邻居,优先级用于选举DRB,DRB-flag用于标记本地ESADI设备所认可的DRB。
ESADI邻居列表中还满足下列两个约束条件:
至少含有一条条目,即记录当前ESADI设备的ESADI信息的条目;以及,
在任意时刻,表中至多只能有一条条目的DRB-flag为1,即该条目对应的ESADI设备被本地ESADI设备确认为DRB。
该方法还包括:启动等待定时器,并在等待定时器超时后将DRB-flag为1的那条条目对应的邻居确认为DRB。
驱动不同实例状态间的切换的所述事件至少包括以下之一:
E1:管理up;
E2:设备发现第一个邻居;
E3:Holding Timer超时;
E4:收到更优邻居发送的协议数据单元PDU;
E5:收到不比当前ESADI设备更优的邻居发送的PDU;
E6:丢失最后一个邻居;
E7:管理down。
一种ESADI协议的实例状态管理系统,该系统包括实例状态维护单元、协议处理单元;其中,
所述实例状态维护单元,用于针对ESADI设备定义不同的实例状态;不同实例状态间的切换由不同的事件驱动;
所述协议处理单元,用于实现不同实例状态的协议处理。
所述实例状态包括DRB、Not-DRB、Down、Initial;其中,
DRB:ESADI设备处于该实例状态时,该ESADI设备就是DRB;
Not-DRB:ESADI设备处在该实例状态时,能够根据收到的报文完成链路实例状态数据库的同步;发现邻居且不处在DRB实例状态的ESADI设备的实例状态为Not-DRB实例状态;
Down:该实例状态为管理down,ESADI设备处于该实例状态时,不接收和发送任何ESADI报文;
Initial:Up但未发现邻居的ESADI设备处在该实例状态,处在Initial实例状态的ESADI设备正常收发ESADI协议报文。
处于DRB实例状态时,所述实例状态维护单元用于在收到更优邻居发送的ESADI协议报文时,控制ESADI设备从DRB实例状态回退到Not-DRB实例状态;
处于Not-DRB实例状态时,所述实例状态维护单元用于在超时收不到DRB发送的CSNP报文时,控制处在该实例状态下的ESADI设备跃迁到DRB实例状态;
不处于Down实例状态时,所述实例状态维护单元用于根据管理Down事件引起ESADI设备从更高的实例状态回退到Down实例状态;
处于Initial实例状态时,所述实例状态维护单元用于在发现邻居时,控制ESADI设备从Initial实例状态跃迁到Not-DRB实例状态;
不处于Initial实例状态时,所述实例状态维护单元用于在所有邻居丢失时,控制ESADI设备从更高的实例状态回退到Initial实例状态。
所述协议处理单元在实现不同实例状态的协议处理时,用于确定DRB:
根据包括优先级在内的参数,比较ESADI邻居列表中被标识为DRB的邻居与当前ESADI设备的优劣性,将相对更优的ESADI设备作为最终的DRB。
所述ESADI邻居列表,用于除当前ESADI设备以外的其它邻居确认DRB,以使所有邻居对DRB的身份具有一致的认识;
所述ESADI邻居列表包括本地ESADI设备所发现的ESADI邻居信息,包括:SystemID和/或Nickname、优先级、Holding Time和Waiting Time的周期以及DRB-flag;其中System ID和/或Nickname用于唯一标识一位邻居,优先级用于选举DRB,DRB-flag用于标记本地ESADI设备所认可的DRB。
ESADI邻居列表中还满足下列两个约束条件:
至少含有一条条目,即记录当前ESADI设备的ESADI信息的条目;以及,
在任意时刻,表中至多只能有一条条目的DRB-flag为1,即该条目对应的ESADI设备被本地ESADI设备确认为DRB。
该系统还包括等待定时器,用于在超时后将DRB-flag为1的那条条目对应的邻居确认为DRB。
驱动不同实例状态间的切换的所述事件至少包括以下之一:
E1:管理up;
E2:设备发现第一个邻居;
E3:Holding Timer超时;
E4:收到更优邻居发送的PDU;
E5:收到不比当前ESADI设备更优的邻居发送的PDU;
E6:丢失最后一个邻居;
E7:管理down。
本发明的ESADI协议的实例状态管理技术,通过引入ESADI设备的实例状态,由事件驱动实例状态跃迁;使得网络出现变动后,ESADI设备需要执行的动作清晰明了,便于管理和实现。因而解决了因DRB的不稳定导致的网络振荡,保证了DRB的稳定性,提高了网络的稳定性和可操作性。
附图说明
图1为本发明实施例的ESADI设备实例状态跃迁与事件关系示意图;
图2为本发明实施例的ESADI网络拓扑图;
图3为本发明实施例的LSP报文处理流程图;
图4为本发明实施例的CSNP处理流程图;
图5为本发明实施例的PSNP处理流程图;
图6为本发明实施例的ESADI协议的实例状态管理流程简图;
图7为本发明实施例的ESADI协议的实例状态管理系统图。
具体实施方式
在TRILL网络中,为了解决ESADI指定路由网桥的选举,并将邻居有效的管理起来,从而使网络中设备ESADI链路实例状态数据库快速达到同步一致,可以针对ESADI设备设定不同的实例状态,并在不同的实例状态下执行相应的协议处理。需要说明的是,不同实例状态间的切换可以由不同的事件驱动。之后,还可以通过不同实例状态的切换确定DRB。
具体而言,ESADI设备的基本实例状态为DRB和非指定路由网桥(NOT-DRB)实例状态,可以增加关闭(Down)和初始(Initial)实例状态。其中,
DRB:ESADI设备处于该实例状态时,该ESADI设备就是DRB,执行DRB的功能,比如周期性发送CNSP报文,接收并用LSP响应PSNP报文等。收到更优邻居发送的ESADI协议报文会导致ESADI设备从DRB实例状态回退到Not-DRB实例状态。
Not-DRB:ESADI设备处在该实例状态时,会接收DRB发送来的CSNP报文,完成链路实例状态数据库的同步。发现邻居且不处在DRB实例状态的ESADI设备的实例状态为Not-DRB实例状态。一段时间内收不到DRB发送的CSNP报文,会导致处在该实例状态下的ESADI设备跃迁到DRB实例状态。
另外,根据需要,还可以定义Down实例状态和Initial实例状态。
Down:该实例状态为管理down,ESADI设备处于该实例状态时,不接收和发送任何ESADI报文;管理Down事件会引起ESADI设备从更高的实例状态回退到Down实例状态。
Initial:启用(Up)但未发现邻居的ESADI设备处在该实例状态,发现邻居会导致ESADI设备从Initial实例状态跃迁到Not-DRB实例状态。处在Initial实例状态的ESADI设备正常收发LSP和PSNP报文等ESADI协议报文,并启动保持时间定时器(Holding Timer),并在超时时重置;所有邻居的丢失会导致ESADI设备从更高的实例状态回退到该实例状态。
在当前路由网桥不是DRB的情况下,为了利用DRB的CSNP报文完成链路实例状态数据库同步,ESADI设备还需要确认虚链路上的DRB,为此,还可以引入ESADI邻居列表,用于其它邻居确认DRB的身份,使所有邻居对DRB的身份具有一致的认识。
具体而言,ESADI邻居列表中存储了本地RBridge所发现的ESADI邻居信息(包括本地的ESADI信息),所述ESADI邻居信息包括:系统标识符(System ID)和/或别名(Nickname)、优先级、保持时间(Holding Time)和等待时间(Waiting Time)的周期以及指定路由网桥标记(DRB-flag)。其中System ID和/或Nickname用于唯一标识一位邻居,优先级用于选举DRB,DRB-flag用于标记本地RBridge所认可的DRB。
另外,ESADI邻居列表中必须满足下列两个约束条件:
至少含有一条条目,即记录当前路由网桥的ESADI信息的条目;以及,
在任意时刻,表中至多只能有一条条目的DRB-flag为1(即该条目对应的RBridge被本地RBridge认为是DRB)。
再有,还可以添加等待定时器(Waiting Timer),用于消除DRB重新选举时带来的网络振荡。
具体而言,Waiting Timer可以是非周期定时器。如果ESADI邻居列表中某条目的DRB-flag发生了变化,且Waiting Timer未启动,则启动Waiting Timer。当Waiting Timer定时器超时后,DRB-flag为1的条目所对应的邻居被本地RBridg确认为DRB。只有被确认为DRB的RBridge所发送的CSNP报文才被用来进行链路实例状态数据库同步,并且利用该DRB的LSP零分片中携带的Holding Time和Waiting Time值同步虚链路上其他RBridge的Holding Time和Waiting Time的值。
需要说明的是,LSP的接收和删除影响ESADI邻居列表中邻居的增删。比如:如果LSP的发送者未出现在ESADI邻居列表中,新的邻居将被添加到ESADI邻居列表中。另外,LSP报文的接收还会影响邻居DRB-flag的修改。
除了用于链路实例状态数据库的同步外,CNSP和PSNP报文还用于ESADI邻居列表中邻居的保活。当收到每个邻居发送来的CSNP或PSNP报文后,确认该邻居的有效性,并进行优劣比较以设置邻居的DRB-flag标记。只有被认可的DRB所发送的CSNP报文,才用于链路实例状态数据库同步。
可见,通过比较优先级、系统ID等参数选出的较优的设备为DRB,若网络中某个邻居的参数变化,或有新的邻居加进来,则可能会导致DRB发生变化。影响邻居实例状态的事件主要包括:
E1:管理up;
E2:设备发现第一个邻居;
E3:Holding Timer超时;
E4:收到更优邻居发送的PDU;
E5:收到不比当前路由网桥更优的邻居发送的PDU;
E6:丢失最后一个邻居;
E7:管理down;
实例状态的跃迁由上述事件驱动,详细驱动关系见图1。需要说明的是,每个设备只关注自身的实例状态,根据不同的事件进行相应实例状态的跃迁,而不需要关注邻居设备的实例状态。
设备处于不同的实例状态,执行的动作也会有相应不同,如下:
Down:处于该状态时,设备不接收和发送任何ESADI报文;
Initial:处于该状态时,设备可以发送LSP和PSNP报文,可以接收LSP和CSNP报文,并启动Holding Timer,若Holding Timer超时则重置;
NOT-DRB:处于该实例状态时,设备可以发送LSP和PSNP报文,可以接收LSP和CSNP报文并更新ESADI邻居列表,若该实例状态下Holding Timer超时,则实例状态跃迁至DRB实例状态,并取消Holding Timer;若接收到比当前路由网桥更优(通过比较优先级、系统ID等参数实现)的LSP或CSNP,则重置Holding Timer;
DRB:处于该实例状态时,设备可以发送LSP和CSNP报文,可以接收LSP、CSNP和PSNP报文,并响应PSNP报文,若接收到比当前路由网桥更优的LSP或CSNP,则退出DRB实例状态,并启动Holding Timer和等待定时器。
在已经稳定的网络中添加一个较优的ESADI设备(后简称新设备)时,ESADI设备实例状态的跃迁原理如图2所示。需要说明的是,所述新设备并不一定是新添加的设备,也可能是已经在网络中运行的设备启用了ESADI功能。
进行所述跃迁时,可以执行如下步骤:
步骤1、新设备启动ESADI功能,则此时为Initial实例状态,向外通告自身LSP,并启动Holding Timer;
步骤2、其他邻居收到新邻居的LSP后,则会向外通告自身的LSP。此时新设备会收到其他邻居的LSP,即至少发现了一个邻居(即E2事件),则实例状态跃迁至NOT-DRB实例状态,且由于新设备的LSP较优,则此时原来网络中的DRB设备退出DRB实例状态(即E4事件),并启动Holding Timer;
步骤3、由于此时网络中已经没有DRB,且新设备的LSP最优,没有重置HoldingTimer的事件发生,因此新设备的Holding Timer会超时(即E3事件),则新设备的实例状态跃迁为DRB实例状态;
步骤4、新设备此时已经替代了原来网络中的DRB,执行DRB的功能,实现了DRB的平滑过渡,保证了网络的稳定性。
下面以新的RBridge加入ESADI虚链路为例,结合ESADI协议报文的接收,结合附图对ESADI中ESADI邻居列表的管理、DRB选举过程中的确认机制以及ESADI协议报文的处理加以描述。
下面结合图3,描述接收到LSP报文的处理流程,该流程包括以下步骤:
步骤1、接收到新的LSP,解析出该LSP的发送者A的System-Id或/和Nickname,以此为索引在ESADI邻居列表中检索该邻居;
步骤2、判断A是否在ESADI邻居列表中,如果不在,继续步骤3,否则转至步骤4;
步骤3、将A添加到ESADI邻居列表中,同时将A的System-Id或/和Nickname、优先级、Holding Time和Waiting Time等参数保存到新添加的条目中;
步骤4、比较ESADI邻居列表中DRB-flag为1的邻居B与A的优劣性,通过比较两者的优先级等参数确定两者的优劣性;
步骤5、如果A优于B,继续步骤6,否则转至步骤9;
步骤6、将A的DRB-flag置为1,并将B的DRB-flag清为0,继续步骤7;
步骤7、如果等待定时器未启动,继续步骤8,否则转至步骤9;
步骤8、启动等待定时器;
步骤9、结束。
下面结合图4,对RBridge接收到CNSP报文后的处理过程加以描述,该处理过程包括以下步骤:
步骤1、收到CSNP报文,在ESADI邻居列表中查找其产生者A,即通过解析报文获取该报文发送者的System-Id或/和Nickname,以此为索引在ESADI邻居列表中检索A;
步骤2、如果ESADI邻居列表中存在A,继续步骤3,否则转至步骤4;
步骤3、通过比较当前路由网桥和A的优先级等参数,判断A和当前路由网桥的优劣性,如果A并不优于当前路由网桥,继续步骤4,否则转至步骤5;
步骤4、丢弃所述CSNP报文,转至步骤11;
步骤5、判断A是否是经过确认的DRB,如果是,继续步骤6,否则转至步骤7;
步骤6、利用所述CSNP报文进行链路实例状态数据库同步,转至步骤11;
步骤7、处理ESADI邻居列表中的DRB-flag,即将A的DRB-flag置为1,并将其他邻居的DRB-flag清为0,继续步骤8;
步骤8、判断ESADI邻居列表中的DRB-flag是否发生了变化,如果发生了变化,继续步骤9,否则转至步骤11;
步骤9、判断等待定时器是否启动,如果没有启动,继续步骤10,否则转至步骤11;
步骤10、启动等待定时器;
步骤11、结束。
下面再结合图5,描述一下RBridge收到PSNP报文的处理流程,该处理流程包括以下步骤:
步骤1、收到其他RBridge发送来的PSNP报文;
步骤2、判断当前路由网桥是否为DRB,如果当前路由网桥是经过确认的DRB,继续步骤3,否则转至步骤4;
步骤3、用LSP响应所述PSNP报文,用LSP响应该PSNP请求的LSP,转至步骤10;
步骤4、在ESADI邻居列表中查找所述PSNP报文的发送者A,即根据A的System-Id和/或Nickname检索ESADI邻居列表;
步骤5、如果在ESADI邻居列表中检索到A并且A更优,继续步骤6,否则转至步骤9;
步骤6、处理ESADI邻居列表中各个条目的DRB-flag,即将A的DRB-flag置1,其他条目的DRB-flag清0,继续步骤7;
步骤7、判断等待定时器是否已启动,如果已启动,转至步骤9,否则继续步骤8;
步骤8、启动等待定时器,以便对新的DRB进行确认;
步骤9、丢弃所述PSNP报文;
步骤10、结束。
结合以上各实施例可见,进行本发明的ESADI协议的实例状态管理时,可以应用如图6中的流程所示的操作思路,该流程包括以下步骤:
步骤610:针对ESADI设备定义不同的实例状态;不同实例状态间的切换由不同的事件驱动。
步骤620:实现不同实例状态下的协议处理。
为了保证上述各实施例以及操作思路能够顺利实现,可以进行如图7所示的设置。参见图7,图7为本发明实施例的ESADI协议的实例状态管理系统图,该系统包括相连的实例状态维护单元、协议处理单元。
在实际应用时,实例状态维护单元能够针对ESADI设备定义不同的实例状态;不同实例状态间的切换由不同的事件驱动。协议处理单元则能够实现不同实例状态下的协议处理。
综上所述可见,无论是方法还是系统,本发明的ESADI协议的实例状态管理技术,通过引入ESADI设备的实例状态,由事件驱动实例状态跃迁;使得网络出现变动后,ESADI设备需要执行的动作清晰明了,便于管理和实现。因而解决了因DRB的不稳定导致的网络振荡,保证了DRB的稳定性,提高了网络的稳定性和可操作性。
再有,通过引入ESADI邻居列表,定义对ESADI邻居列表的更新规则,以及添加DRB的Waiting Timer确认机制,解决了ESADI的DRB发生变化(比如DRB选举过程中)过程中,DRB身份确认不准确所引起的ESADI报文风暴,以及影响链路实例状态数据库同步的问题。
另外,与现有的ESADI协议相比,本发明的ESADI设备的实例状态、ESADI邻居列表的维护、ESADI协议报文的处理规则以及DRB的Waiting Timer确认机制等,均具有本地特征,即在没有其他RBridge协助的情况下也能发挥作用。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
Claims (14)
1.一种端系统地址分发信息ESADI协议的实例状态管理方法,其特征在于,该方法包括:
针对ESADI设备定义不同的实例状态;不同实例状态间的切换由不同的事件驱动;实现不同实例状态下的协议处理;其中,所述实例状态至少包括指定路由网桥DRB和非指定路由网桥Not-DRB两种实例状态;且,处于所述DRB实例状态的ESADI设备用于发送、接收和响应报文;处于所述Not-DRB实例状态的ESADI设备为发现邻居且不处在所述DRB实例状态的ESADI设备,用于根据收到的报文完成链路实例状态数据库的同步;所述事件包括:E1:管理up;E2:设备发现第一个邻居;E3:Holding Timer超时;E4:收到更优邻居发送的PDU;E5:收到不比当前路由网桥更优的邻居发送的PDU;E6:丢失最后一个邻居;E7:管理down。
2.根据权利要求1所述的方法,其特征在于,所述实例状态还包括关闭Down和初始Initial;其中,处于所述Down实例状态的ESADI设备不接收和发送任何ESADI报文;处于所述Initial实例状态的ESADI设备为启用Up但未发现邻居的ESADI设备,用于正常收发ESADI协议报文。
3.根据权利要求1或2所述的方法,其特征在于,该方法还包括:
处于DRB实例状态时,ESADI设备在收到更优邻居发送的ESADI协议报文时从DRB实例状态回退到Not-DRB实例状态;
处于Not-DRB实例状态时,超时收不到DRB发送的完全序列号协议数据单元CSNP报文,处在该实例状态下的ESADI设备跃迁到DRB实例状态;
不处于Down实例状态时,管理Down事件引起ESADI设备从更高的实例状态回退到Down实例状态;
处于Initial实例状态时,ESADI设备在发现邻居时从Initial实例状态跃迁到Not-DRB实例状态;
不处于Initial实例状态时,所有邻居的丢失导致ESADI设备从更高的实例状态回退到Initial实例状态。
4.根据权利要求1所述的方法,其特征在于,所述不同的实例状态下的协议处理,包括确定DRB:
根据包括优先级在内的参数,比较ESADI邻居列表中被标识为DRB的邻居与当前ESADI设备的优劣性,将相对更优的ESADI设备作为最终的DRB。
5.根据权利要求4所述的方法,其特征在于,
所述ESADI邻居列表,用于除当前ESADI设备以外的其它邻居确认DRB,以使所有邻居对DRB的身份具有一致的认识;
所述ESADI邻居列表包括本地ESADI设备所发现的ESADI邻居信息,包括:系统标识符System ID和/或别名Nickname、优先级、保持时间Holding Time和等待时间Waiting Time的周期以及指定路由网桥标记DRB-flag;其中SystemID和/或Nickname用于唯一标识一位邻居,优先级用于选举DRB,DRB-flag用于标记本地ESADI设备所认可的DRB。
6.根据权利要求5所述的方法,其特征在于,ESADI邻居列表中还满足下列两个约束条件:
至少含有一条条目,即记录当前ESADI设备的ESADI信息的条目;以及,
在任意时刻,表中至多只能有一条条目的DRB-flag为1,即该条目对应的ESADI设备被本地ESADI设备确认为DRB。
7.根据权利要求6所述的方法,其特征在于,该方法还包括:启动等待定时器,并在等待定时器超时后将DRB-flag为1的那条条目对应的邻居确认为DRB。
8.一种ESADI协议的实例状态管理系统,其特征在于,该系统包括实例状态维护单元、协议处理单元;其中,
所述实例状态维护单元,用于针对ESADI设备定义不同的实例状态;不同实例状态间的切换由不同的事件驱动;
所述协议处理单元,用于实现不同实例状态的协议处理;
其中,所述实例状态至少包括指定路由网桥DRB和非指定路由网桥Not-DRB两种实例状态;且,处于所述DRB实例状态的ESADI设备用于发送、接收和响应报文;处于所述Not-DRB实例状态的ESADI设备为发现邻居且不处在所述DRB实例状态的ESADI设备,用于根据收到的报文完成链路实例状态数据库的同步;所述事件包括:E1:管理up;E2:设备发现第一个邻居;E3:Holding Timer超时;E4:收到更优邻居发送的PDU;E5:收到不比当前路由网桥更优的邻居发送的PDU;E6:丢失最后一个邻居;E7:管理down。
9.根据权利要求8所述的系统,其特征在于,所述实例状态还包括关闭Down和初始Initial;其中,处于所述Down实例状态的ESADI设备不接收和发送任何ESADI报文;处于所述Initial实例状态的ESADI设备为启用Up但未发现邻居的ESADI设备,用于正常收发ESADI协议报文。
10.根据权利要求8或9所述的系统,其特征在于,
处于DRB实例状态时,所述实例状态维护单元用于在收到更优邻居发送的ESADI协议报文时,控制ESADI设备从DRB实例状态回退到Not-DRB实例状态;
处于Not-DRB实例状态时,所述实例状态维护单元用于在超时收不到DRB发送的CSNP报文时,控制处在该实例状态下的ESADI设备跃迁到DRB实例状态;
不处于Down实例状态时,所述实例状态维护单元用于根据管理Down事件引起ESADI设备从更高的实例状态回退到Down实例状态;
处于Initial实例状态时,所述实例状态维护单元用于在发现邻居时,控制ESADI设备从Initial实例状态跃迁到Not-DRB实例状态;
不处于Initial实例状态时,所述实例状态维护单元用于在所有邻居丢失时,控制ESADI设备从更高的实例状态回退到Initial实例状态。
11.根据权利要求8所述的系统,其特征在于,所述协议处理单元在实现不同实例状态的协议处理时,用于确定DRB:
根据包括优先级在内的参数,比较ESADI邻居列表中被标识为DRB的邻居与当前ESADI设备的优劣性,将相对更优的ESADI设备作为最终的DRB。
12.根据权利要求11所述的系统,其特征在于,
所述ESADI邻居列表,用于除当前ESADI设备以外的其它邻居确认DRB,以使所有邻居对DRB的身份具有一致的认识;
所述ESADI邻居列表包括本地ESADI设备所发现的ESADI邻居信息,包括:System ID和/或Nickname、优先级、Holding Time和Waiting Time的周期以及DRB-flag;其中System ID和/或Nickname用于唯一标识一位邻居,优先级用于选举DRB,DRB-flag用于标记本地ESADI设备所认可的DRB。
13.根据权利要求12所述的系统,其特征在于,ESADI邻居列表中还满足下列两个约束条件:
至少含有一条条目,即记录当前ESADI设备的ESADI信息的条目;以及,
在任意时刻,表中至多只能有一条条目的DRB-flag为1,即该条目对应的ESADI设备被本地ESADI设备确认为DRB。
14.根据权利要求13所述的系统,其特征在于,该系统还包括等待定时器,用于在超时后将DRB-flag为1的那条条目对应的邻居确认为DRB。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110184351.9A CN102857430B (zh) | 2011-07-01 | 2011-07-01 | 一种esadi协议的实例状态管理方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110184351.9A CN102857430B (zh) | 2011-07-01 | 2011-07-01 | 一种esadi协议的实例状态管理方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102857430A CN102857430A (zh) | 2013-01-02 |
CN102857430B true CN102857430B (zh) | 2017-09-12 |
Family
ID=47403633
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110184351.9A Active CN102857430B (zh) | 2011-07-01 | 2011-07-01 | 一种esadi协议的实例状态管理方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102857430B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101453413A (zh) * | 2007-12-04 | 2009-06-10 | 华为技术有限公司 | 一种pbb网络中自动拓扑发现及资源管理的方法和装置 |
CN101483558A (zh) * | 2008-01-10 | 2009-07-15 | 华为技术有限公司 | 网络设备接入分组交换网络的方法、系统及装置 |
CN101552769A (zh) * | 2008-03-31 | 2009-10-07 | 华为技术有限公司 | 捆绑链路取消回环后自动协商成功的方法和系统 |
-
2011
- 2011-07-01 CN CN201110184351.9A patent/CN102857430B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101453413A (zh) * | 2007-12-04 | 2009-06-10 | 华为技术有限公司 | 一种pbb网络中自动拓扑发现及资源管理的方法和装置 |
CN101483558A (zh) * | 2008-01-10 | 2009-07-15 | 华为技术有限公司 | 网络设备接入分组交换网络的方法、系统及装置 |
CN101552769A (zh) * | 2008-03-31 | 2009-10-07 | 华为技术有限公司 | 捆绑链路取消回环后自动协商成功的方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN102857430A (zh) | 2013-01-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100555948C (zh) | 一种用于在堆栈交换机系统内耦合的交换设备 | |
CN101425961B (zh) | 实现链路状态数据库同步方法、路由器及线路板、主控板 | |
CN101517998B (zh) | 一种通告自治系统边界连接信息的方法和边界节点 | |
CN102197627B (zh) | 组播流量收敛的改善 | |
CN100505692C (zh) | 高性能路由器bgp路由协议分布并行实现方法 | |
CN101394354B (zh) | 一种避免中间系统邻居关系震荡的方法和一种中间系统 | |
US20090086622A1 (en) | Method and Apparatus for Performing a Graceful Restart in a NSF-Capable Router Without Enhancing Link State Routing Protocols | |
CN105340230A (zh) | 虚拟机架拓扑管理 | |
CN101304340A (zh) | 一种资源状态监控方法及装置以及通信网络 | |
CN102404189B (zh) | 支持多拓扑路由的设备进行主备倒换的方法及主控板 | |
CN102387065A (zh) | 具有数据库削减以及控制速率的状态恢复的基于泛洪的路由协议 | |
WO2014097002A1 (en) | Method and system for efficient graceful restart in an open shortest path first (ospf) network | |
CN102137024A (zh) | 报文处理方法、出口路由设备及边界路由设备 | |
CN103166750A (zh) | 时钟时间同步源配置方法及装置 | |
CN102404818B (zh) | 一种卫星网络路由表的生成与更新方法 | |
CN102325080B (zh) | 一种ospf协议平滑重启方法和装置 | |
CN103516612A (zh) | 分布式路由器中生成路由表项的方法及分布式路由器 | |
CN101461196A (zh) | 在本地节点运行中断期间不间断的网络控制消息生成 | |
CN106470154A (zh) | 边界网关协议bgp路由源处理方法及装置 | |
CN102136957B (zh) | 一种标签交换路径监控的实现方法、装置和系统 | |
CN101699791A (zh) | 虚拟专用网管理装置及方法 | |
CN102724097A (zh) | 一种esadi处理方法和系统 | |
CN103236990A (zh) | 一种路由信息同步的方法和设备 | |
CN100596087C (zh) | Ftn匹配管理方法 | |
CN105915458A (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 | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20201229 Address after: 224006 Rongtai Road, Yangxu village, panhuang street, Yandu District, Yancheng City, Jiangsu Province Patentee after: Yancheng Meili Yangxu Tourism Development Co.,Ltd. Address before: 518057 Ministry of justice, Zhongxing building, South Science and technology road, Nanshan District hi tech Industrial Park, Shenzhen, Guangdong Patentee before: ZTE Corp. |