CN102957559B - 一种链路故障时更新连接的方法及系统 - Google Patents
一种链路故障时更新连接的方法及系统 Download PDFInfo
- Publication number
- CN102957559B CN102957559B CN201110254420.9A CN201110254420A CN102957559B CN 102957559 B CN102957559 B CN 102957559B CN 201110254420 A CN201110254420 A CN 201110254420A CN 102957559 B CN102957559 B CN 102957559B
- Authority
- CN
- China
- Prior art keywords
- node
- path
- self
- connection
- link
- 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.)
- Expired - Fee Related
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种链路故障时更新连接的方法及系统,属于通信网络领域。所述方法包括:通信网络中的端节点从所述通信网络接收所述故障链路的标识,并根据所述故障链路的标识判断自身的连接所选用的路径是否经过所述故障链路,如果否,则丢弃所述故障链路的标识;如果是,则通过所述连接的备用路径或冗余路径进行自恢复;如果自恢复成功,则利用所述自恢复的路径通信;如果自恢复失败,则重新寻由得到新路径来恢复所述连接。所述系统由节点组成,其中承担信源和信宿角色的节点被称为端节点。本发明能够减少每个节点的存储资源,减少分配节点标识的成本以及实现连接的快速更新。
Description
技术领域
本发明涉及通信网络领域,特别涉及一种链路故障时更新连接的方法及系统。
背景技术
通信网络由节点和链路组成,节点之间通过物理链路连接起来。在有连接的通信网络中,每个端节点可以与其他的端节点建立连接,然后通过已建立好的连接与其他端节点进行通信。任意两个端节点之间的连接需要经过一条或多条链路,当某条链路发生故障时,所有经过该条链路上的连接都需要进行更新,以确保每条连接能够正常通信。
现有技术提供了一种更新连接的方法,具体为:通信网络中的节点需要预先存储与自身相连的每条链路以及经过每条链路上的所有连接的信息,然后每个节点周期性地检测与自身相连的每条链路,如果检测出某条链路发生故障,则根据已存储的与该链路有关的连接信息定位连接关联的端节点,发送通知给连接两端的端节点,端节点接收到通知后,更新经过故障链路上的连接。
在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
通信网络中的每个节点需要存储经过与自身相连的每条链路上的连接,而每条链路上可能经过多条连接,如此需要占用每个节点的大量存储资源。而且网络拓扑变化快,故障恢复时间慢等都是迫切需要解决的问题。
发明内容
为了在链路故障时,以较低成本实现快速的通信连接恢复,本发明提供了一种链路故障时更新连接的方法及系统。所述技术方案如下:
一种链路故障时更新连接的方法,所述方法包括:
通信网络中的节点按随机的方式为自己分配节点标识;
所述通信网络中的端节点在开始通信前,与所有待联系的目的端节点建立连接,为所述连接通过寻由过程得到一条或多条路径,并存储所述连接包括的一条或多条路径,其中,用所述路径经过节点的节点标识组成的排列来表示所述路径,且为所述连接选用自身包括的全部或部分路径进行通信,剩下未选用的路径作为所述连接的备用路径;
当与所述通信网络中的节点相连的链路发生故障时,所述节点根据与所述故障链路相连的端口,从本地获取与所述故障链路相连的对面节点的节点标识,将自身的节点标识和所述对面节点的节点标识的排列作为所述故障链路的标识,广播所述故障链路的标识;
所述通信网络中的端节点从所述通信网络接收所述故障链路的标识,并根据所述故障链路的标识判断自身的连接所选用的路径是否经过所述故障链路,如果否,则丢弃所述故障链路的标识;如果是,则通过所述连接的备用路径或冗余路径进行自恢复;如果自恢复成功,则利用所述自恢复的路径通信;如果自恢复失败,则重新寻由得到新路径来恢复所述连接。
所述与所有待联系的目的端节点建立连接,为所述连接通过寻由过程得到一条或多条路径,并存储所述连接包括的一条或多条路径,包括:
针对任一个待联系的目的端节点,所述端节点与所述待联系的目的端节点建立连接,并通过呼叫寻由过程与所述待联系的目的端节点建立一条或多条路径得到所述连接包括的路径,将所述连接包括的路径存储在生成树EntireTree中,其中,所述EntireTree用于存储所述端节点与所有待联系的目的端节点之间的路径,且在所述EntireTree中所述端节点为根节点,所述目的端节点为叶子节点。
根据所述故障链路的标识判断自身的连接所选用的路径是否经过所述故障链路,包括:
所述端节点判断所述故障链路的标识包括的两个节点的节点标识的排列是否为自身的连接所选用路径包括的节点标识的排列的子字符串,如果是,则判断出所述连接所选用的路径经过所述故障链路。
通过所述连接的备用路径进行自恢复,包括:
从经过所述故障链路的路径中获取目的端节点;
查找所述连接的备用路径中是否还存在所述端节点与所述目的端节点之间的路径且所述查找的路径不同于经过所述故障链路的路径;
如果存在,则自恢复成功且通过所述查找的路径恢复所述连接;如果不存在,则自恢复不成功。
所述通过冗余路径进行自恢复,包括:
从经过所述故障链路的路径中获取目的端节点;
查找所述冗余路径中是否还存在所述端节点与所述目的端节点之间的路径且所述查找的路径不同于经过所述故障链路的路径;
如果存在,则自恢复成功且通过所述查找的路径恢复所述连接;如果不存在,则自恢复不成功;
其中,所述冗余路径包括BackupTrees、MultiCastTree和UniCastPath,其中,所述BackupTrees包括已淘汰的EntrieTree,所述MultiCastTree为所述已淘汰的EntrieTree和所述EntrieTree的子集,所述UniCastPath为已淘汰的所述EntrieTree和所述EntrieTree中的单条路径。
所述节点根据与所述故障链路相连的端口,从本地获取与所述故障链路相连的对面节点的标识之前,还包括:
所述节点从与链路相连的端口处发送检测消息,如果在预设的时间内检测出未收到响应的端口,则判断与所述未收到响应的端口相连的链路发生故障。
一种链路故障时更新连接的系统,所述系统包括通信网络的节点和端节点;
所述通信网络的节点,用于按随机的方式为自己分配节点标识;当与所述通信网络中的节点相连的链路发生故障时,所述节点根据与所述故障链路相连的端口,从本地获取与所述故障链路相连的对面节点的节点标识,将自身的节点标识和所述对面节点的节点标识的排列作为所述故障链路的标识,广播所述故障链路的标识;
所述端节点,用于在开始通信前,与所有待联系的目的端节点建立连接,为所述连接通过寻由过程得到一条或多条路径,并存储所述连接包括的一条或多条路径,其中,用所述路径经过节点的节点标识组成的排列来表示所述路径,且为所述连接选用自身包括的全部或部分路径进行通信,剩下未选用的路径作为所述连接的备用路径;当从所述通信网络接收所述故障链路的标识时,根据所述故障链路的标识判断自身的连接所选用的路径是否经过所述故障链路,如果否,则丢弃所述故障链路的标识;如果是,则通过所述连接的备用路径或冗余路径进行自恢复;如果自恢复成功,则利用所述自恢复的路径通信;如果自恢复失败,则重新寻由得到新路径来恢复所述连接。
在本发明中,通信网络中的每个节点按随机的方式为自己分配节点标识,每个节点当判断出与自身相连的链路发生故障时,获取对面节点的节点标识,将自身的节点标识与对面节点的标识的排列作为故障链路的标识,广播发生故障链路的标识,端节点接收故障链路的标识,并根据故障链路的标识判断出经过故障链路的连接,启用快速的自我恢复过程。如此,通信网络的每个节点都不需要存储经过与自身相连的链路上的连接,如此减少了对存储资源的占用以及快速恢复连接,按随机的方式分配通信网络中的每个节点的节点标识,可以减少分配节点标识的成本。另外,统一长度的随机标识便于存储到高效的生成树中,便于计算机进行快速的检索或子串匹配,降低计算复杂度,提高处理效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例1提供的一种链路故障时更新连接的方法流程图;
图2是本发明实施例2提供的第一种网络架构示意图;
图3是本发明实施例2提供的第二种网络架构示意图;
图4是本发明实施例2提供的一种链路故障时更新连接的方法流程图;
图5是本发明实施例2提供的第三种网络架构示意图;
图6是本发明实施例2提供的一种生成树的示意图;
图7是本发明实施例2提供的一种向量网地址编码示意图;
图8是本发明实施例3提供的一种链路故障时更新连接的系统示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述,首先阐明一些概念。
实施例1
如图1所示,本发明实施例提供了一种链路故障时更新连接的方法,包括:
步骤101:通信网络中的节点按随机的方式为自己分配节点标识;
步骤102:通信网络中的端节点在开始通信前,与所有待联系的目的端节点建立连接,为所述连接通过寻由过程得到一条或多条路径,并存储所述连接包括的一条或多条路径;
其中,用所述路径经过节点的节点标识组成的排列来表示所述路径,且为所述连接选用自身包括的全部或部分路径进行通信,剩下未选用的路径作为所述连接的备用路径;
步骤103:当与通信网络中的节点相连的链路发生故障时,所述节点根据与所述故障链路相连的端口,从本地获取与所述故障链路相连的对面节点的节点标识,将自身的节点标识和所述对面节点的节点标识的排列作为所述故障链路的标识,广播所述故障链路的标识;
步骤104:通信网络中的端节点从所述通信网络接收所述故障链路的标识,并根据所述故障链路的标识判断自身的连接所选用的路径是否经过所述故障链路,如果否,则丢弃所述故障链路的标识;如果是,则执行步骤105;
步骤105:所述端节点通过所述连接的备用路径或冗余路径进行自恢复;如果自恢复成功,则利用所述自恢复的路径通信;如果自恢复失败,则重新寻由得到新路径来恢复所述连接。
在本发明实施例中,通信网络中的每个节点按随机的方式为自己分配节点标识,每个节点当判断出与自身相连的链路发生故障时,获取对面节点的节点标识,将自身的节点标识与对面节点的标识的排列作为故障链路的标识,广播发生故障链路的标识,端节点接收故障链路的标识,并根据故障链路的标识判断出经过故障链路的连接,利用自我恢复机制快速更新经过故障链路的连接。如此,通信网络的每个节点都不需要存储经过与自身相连的链路上的连接,如此减少了对存储资源的占用;按随机的方式分配通信网络中的每个节点的节点标识,可以减少分配节点标识的成本。另外,统一长度的随机标识便于存储到高效的生成树中,便于计算机进行快速的检索或子串匹配,降低计算复杂度,提高处理效率。
实施例2
本发明实施例提供了一种当链路故障时更新连接的方法。如图2和3所示,为本发明应用的网络示例,在该网络示例中,端节点直接连接在通信网络上,通信网络由节点组成,通过物理链路将通信网络中的节点连接成网络,每个端节点可以在通信网络中与其他端节点建立连接。参图4该方法包括:
步骤201:通信网络中的每个节点采用随机的方式为自己分配节点标识;
进一步地,运营商可以通过人工生成的方式为通信网络中的每个节点分配节点标识。
步骤202:通信网络中的端节点在开始通信前,与所有待联系的目的端节点建立连接,为建立的连接通过寻由过程得到一条或多条路径,并存储建立的连接包括的一条或多条路径;
具体地,针对任一个待联系的目的端节点,端节点与待联系的目的端节点建立连接,并通过呼叫寻由过程与待联系的目的端节点建立一条或多条路径得到建立的连接包括的路径,将建立的连接包括的路径存储在EntireTree(生成权)中,其中,EntireTree用于存储端节点与所有待联系的目的端节点之间的路径,且在EntireTree中端节点为根节点,每个目的端节点为叶子节点。
其中,用路径经过节点的节点标识组成的排列来表示路径,端节点为建立连接选用自身包括的全部或部分路径进行通信,剩下未选用的路径作为建立的连接的备用路径。另外,在本实施例中,承担信源和信宿角色的节点被称为端节点,端节点可以终端。
其中,每个端节点存在一个MMC(Module Maintaining Connection,连接维持模块),每个端节点的MMC可以在自身与其他端节点之间建立连接,并存储建立的每条连接包括的路径。每个端节点可以将自身对应的MMC放置在自身内,也可以放置在通信网络的入口处实现。
例如,在如图3所示的网络架构中,如果端节点A的MMC与端节点C建立一条连接,且通过通过路由寻呼的方式为该条连接建立路径,其中,该路径经过节点1、2和3,节点1、2和3的节点标识分别为ID1、ID2和ID3,假设节点A的MMC标识为IDA以及节点C的MMC的标识为IDC,节点A在建立连接时获取节点1、2和3的节点标识分别为ID1、ID2和ID3以及端节点C的MMC的标识IDC,端节点A用自身的MMC的标识IDA、节点1的节点标识ID1、节点2的节点标识ID2、节点3的节点标识ID3以及端节点C的MMC的标识IDC的排列,即用[IDA、ID1、ID2、ID3、IDC]表示端节点A与C之间建立的路径,所以在端节点A存储[IDA、ID1、ID2、ID3、IDC]。
其中,每个端节点都存储自身与其他端节点之间的连接包括的路径。对于任意一个端节点,该端节点可能与多个其他的端节点建立连接,且在通信网络中可能存在多条连接包括的路径经过同一个链路,所以为了提高每个端节点存储连接的效率,每个端节点可以用EntireTree来存储与自身相连的每条连接包括的路径。对于任意一个端节点,该端节点的EntireTree的根节点为该端节点的MMC,与该端节点相连的其他端节点为该EntireTree的叶子节点。
其中,对于端节点存储的EntrieTree,如果EntrieTree发生损坏而被淘汰时,端节点将EntrieTree作为BackupTree并存储BackupTree,所以BackupTree由已淘汰的EntrieTree组成。如果端节点同时与几个目的端节点联系时,则端节点从EntrieTree中获取端节点分别到几个目的端节点之间的连接,将获取的连接组成MultiCastTree,所以MultiCastTree为EntrieTree的子集,且在端节点中存储每次组成的MultiCastTree,所以端节点中存储的MultiCastTree为已淘汰的EntrieTree和当前的EntrieTree的子集;如果端节点与一个目的端节点联系时,端节点从EntrieTeee中获取一条端节点到目的端节点之间的一条连接,并将其作为UniCastPath,所以UniCastPath为EntrieTree的一条单条连接,且端节点存储每次得到的UniCastPath,因此UniCastPath为已淘汰的EntrieTree和当前EntrieTree中的单条连接。
其中,在本实施例中,可以端节点中的BackupTree、MultiCastTree和UniCastPath可以作为冗余连接。
步骤203:通信网络中的每个节点实时检测与自身直接相连的链路,如果检测出发生故障的链路,则从本地获取故障链路的标识;
具体地,通信网络中的每个节点周期性地从与链路相连的端口处发送检测消息,如果在预设的时间内从该端口处接收到与链路相连的对面节点回复的响应消息,则与该端口相连的链路未发生故障;如果在预设的时间内从该端口处未接收到与链路相连的对面节点回复的响应消息,则检测出与该端口相连的链路发生故障,并从本地获取对面节点的节点标识,将自身的节点标识和对面节点的节点标识的排列作为故障链路的标识。
其中,在通信网络中,每个节点都有自身的节点标识,每个节点的端口可以连接一条物理链路。在通信网络中,可以用链路两端的节点来表示一条链路,所以对于某条链路的标识可以为该条链路两端节点的节点标识的排列来表示。
其中,每个节点可以事先存储端口号与对面节点的节点标识的对应关系或每个节点的端口中可以存储对面节点的节点标识。
相应地,获取对面节点的标识的操作,具体为如下的两种方式,包括:
第一、获取未接收到对面节点的响应消息的端口的端口号,根据获取的端口号,从已存储的端口号与对面节点的节点标识的对应关系中,查找出对面节点的节点标识;
第二、从未收到对面节点的响应消息的端口中获取存储的对面节点的节点标识。
例如,如图3所示的网络架构中,端节点A、B、C和D直接与通信网络相连,通信网络包括节点1、2、3、4、5和6,节点1、2、3、4、5和6的节点标识分别为ID1、ID2、ID3、ID4、ID5和ID6,每个节点的端口都可以连接一条物理链路。对于通信网络中的任一条链路,假设,对于节点1和2之间的链路,该链路的标识可以用该链路的两端的节点1和2的节点标识排列,即为[ID1,ID2]。
例如,假设节点2检测出自身与节点3之间的链路发生故障,则节点2根据与该条故障链路相连端口,从本地获取对面节点3的节点标识为ID3,将自身的节点标识ID2以及对面节点的节点标识ID3的排列[ID2、ID3]作为该条故障链路的标识。
其中,在本实施例中,由于通信网络中的每个节点的节点标识都由节点随机分配得到的,因此,可以允许部分节点的节点标识重名;如果每个节点的李点标识为8比特,则任意两个节点的节点标识重名的概率为1/256,对应的链路标识重名的概率为1/32768。
步骤204:检测出故障链路的节点广播获取的故障链路的标识;
例如,检测出故障链路的节点2广播获取的故障链路的标识[ID2、ID3]。
步骤205:每个端节点从通信网络中接收故障链路的标识,并根据接收的故障链路的标识判断自身的连接选用的路径是否经过故障链路;
具体地,每个端节点从通信网络中接收故障链路的标识,并针对自身存储的任一条连接选用的路径,判断故障链路的标识包括的两节点的排列是否该条连接选用的路径包括每个节点的排列的子字符串,如果是,则判断出该条连接选用的路径经过故障链路,如果否,则判断出该条连接选用的路径没有经过故障链路;按上述相同的方法判断自身存储的其他连接选用的路径是否经过故障链路。
例如,假设,端节点A接收的节点2广播的故障链路的标识[ID2、ID3],针对自身存储的端节点A与C之间的连接选用的路径[IDA、ID1、ID2、ID3、IDC],判断出故障链路的标识[ID2、ID3]为该条连接选用的路径[IDA、ID1、ID2、ID3、IDC]的子字符串,则判断出该条连接选用的路径经过故障链路。
其中,对于判断出自身存储的连接选用的路径不存在经过故障链路的端节点,则直接丢弃接收的故障链路的标识,且结束操作;对于判断出自身存储的连接中存在经过故障链路的端节点还继续执行步骤206。
步骤206:如果端节点判断出存在经过故障链路的连接,则该端节点通过该连接备用路径或冗余路径对该连接进行自恢复,如果自恢复成功,则利用自恢复的连接通信,如果自恢复不成功,则重新建立连接。
具体地,从经过故障链路的路径中获取目的端节点,查找该连接的备用路径中是否还存在端节点与该目的端节点之间的路径且查找的路径不同于经过故障链路的路径,如果存在,则自恢复成功且通过查找的路径恢复该连接;如果不存在,则自恢复不成功;或者,从经过故障链路的路径中获取目的端节点,查找冗余路径中是否还存在端节点与该目的端节点之间的路径且查找的路径不同于经过故障链路的路径,如果存在,则自恢复成功且通过查找的路径恢复该连接;如果不存在,则自恢复不成功。
其中,冗余路径包括BackupTrees、MultiCastTree和UniCastPath。
进一步地,该端节点和对面端节点存储建立的新连接,并且删除经过故障链路的连接。
其中,本实施例提供的方法可以应用于向量网,在中国发明专利“一种向量网络地址编码方法”(授权专利号:ZL 200610089302.6)定义了向量网。在向量网中定义了通信网络的信源设备和转发设备,其中,端节点作为发送信息的角色时称其为信源设备,而通信网络中的节点作为传输信息的中间节点被称为转发设备。
其中,向量网的网络地址编码依据数据传输路径方向上的信源设备和转发设备的输出端口号进行地址编码,每个输出端口号作为一个分量地址,这些分量地址依路径方向次序组成一个序列,这个序列就是向量网络地址编码的编码结果,即向量地址。更具体地说,向量地址编码的编码结果就是下列有限序列:序列的第一分量地址是信源设备的输出端口号;序列的第二分量地址是数据传输路径上的第一个转发设备的输出端口号;序列的第三分量地址是第二个转发设备的输出端口号;以此类推,序列的最后一个分量地址是最后一个转发设备的输出端口号。
比如图5,从A到C的向量地址编码是{1,2,3,2},写成二进制为{1,10,011,10}=>11001110。
向量网的转发设备转发程序如下:转发设备的每个输入端口当收到一个数据包时,该转发程序就执行一次,它只有3步基本操作:(i)从数据包的向量网络地址中分离出当前转发操作的输出端口号,即向量网络地址的第一个分量地址,记为To;(ii)修改数据包把To从数据包中删除;(iii)把修改后的数据包发到输出端口To。
针对向量网给出具体的生成树和通信路径的表示,即树结点项和路径项,首先,向量网的分量地址是向量地址的分量,是节点的输出端口号,而路径项的组成是:
Ll,n,ID1,ID2,....,IDn,分量地址1,分量地址2,......,分量地址n;
其中:
Ll---8位,表示所有分量地址的总长度,以字节为单位。
n---8位,表示路径项的分量地址个数。
ID1---8位,表示路径项的第1个节点的ID值。
IDi---8位,表示路径项的第i个节点的ID值。
分量地址1---表示路径项的第1个节点关联的分量地址,以比特为单位。为了保证所有分量地址的长度为整字节,分量地址1之前有填充位,在此没有显式给出。
分量地址i---表示路径项的第i个节点关联的分量地址,以比特为单位。
树结点项的组成如下:
L,m,路径项1,树结点项1;路径项2,树结点项2;......,路径项m,树结点项m;
树结点项的边界形式是
L,m,TerminalID;
其中:
L---8位或16位,表示不包括L本身的整个树结点的总长度,以字节为单位。
m---8位,表示树结点的分支个数。边界情况时m=0。
树结点项i---表示本树结点项的第i个子树结点项,可以是子树结点项本身,或其索引。
路径项i---表示本树结点项到树结点项i对应的路径项。
TerminalID---树叶节点的身份标识,是呼叫寻由的目标。
端站设备到所有需要联系的其它端站设备的生成树表示就是包括完整树枝的树结点项。以图6为例说明生成树表示,设A,B,C,D,E,F,G是各个节点的身份标识,a,b,c,d,e,f,g是对应节点的节点标识ID,图中所标数字是节点输出端口号,即向量地址的分量地址,则终端设备A存储的到三个所有需要联系的其它端站设备B、C和D的生成树表示EntireTree如图7所示,图中有三行(1)(2)(3),下边行是上边行的一部分,竖虚线给出它们的对齐关系。按照顺序说明该生成树表示如下:第(1)行开始的X是除了X本身外的整个EntireTree的字节数;1表明树根只有一个分支;Y是路径项三个分量地址的字节长度,3是分量地址个数,“a,e,f”是树根到分支节点G路径上的ID序列;“1,3,1”是树根A到分支节点G的向量地址;之后的部分见图中第(2)行,Z是除了Z本身外Z之后的所有数据的字节数;3表明分支节点有三个分支;之后的部分见图中第(3)行,“M,1;g,1;2,0;B”是第一个分支对应的路径项和树结点项,M是本路径项唯一一个分量地址“1”作为一个向量地址的字节长度,应该为M=1,M之后的1是分量地址个数,g是ID,1是通向树叶节点B的向量地址,2表示“0;B”的长度为2字节,0表示“2,0;B”是一个“树结点项的边界形式”,“B”指明树叶节点B的身份标识。“M,1;g,2;2,0;C”和“M,1;g,3,2,0;D”的解释类似,通向C和D的向量地址分别为2和3。
这样整个MMC维持以下连接信息:
一个生成树表示EntireTree;
若干个路径项UniCastPath:
若干个生成树表示MuliCastTree;
若干个生成树表示BackupTree;
在一个生成树Tree中搜索匹配链路标识的方法:
遍历Tree搜索ID1,如果成功则在ID1前和后进一步匹配ID2。注意,ID1前面的ID可能位于父亲树结点项,ID1后面的ID可能位于儿子树结点项。如果ID2也匹配成功,则结论是匹配成功,否则结论是匹配不成功。
在一个路径表示Path中搜索匹配链路标识的方法:
从头到尾在Path搜索ID1,如果成功则在ID1前和后进一步匹配ID2,如果ID2也匹配成功,则结论是匹配成功,否则结论是匹配不成功。
其它方法步骤:
修剪EntireTree方法是删除匹配成功表明失效的树分支;从Tree推导Path的方法是以Path的目标点为目标遍历Tree,成功时复制连接Root到目标点的路径即可;从Tree推导子树Subtree(比如从EntireTree推导子树MuliCastTree)的方法是以Subtree的所有叶节点为目标遍历Tree,全部叶节点匹配成功时复制出Subtree即可;
从BackupTree抽取信息完善EntireTree的方法是,以EntireTree丢失的叶节点为目标,在BackupTree查找通向它们的路径或子树,如果全部找到,则把这些路径或子树链接补充到EntireTree即可。
修复EntireTree的呼叫寻由方法。以下说明小规模网络(比如1000千个用户)条件下用洪泛呼叫生成EntireTree的方法。使用控制洪泛方法(controlledflooding),控制参数是目标节点的身份标识清单和专门设置的信令序列号,每个节点只暂时记忆洪泛状态,支持最优路径代价和多径寻由。
在本发明实施例中,通信网络中的每个节点按随机的方式为自己分配节点标识,每个节点当判断出与自身相连的链路发生故障时,获取对面节点的节点标识,将自身的节点标识与对面节点的标识的排列作为故障链路的标识,广播发生故障链路的标识,端节点接收故障链路的标识,并根据故障链路的标识判断出自身的连接选用的路径经过故障链路,更新该连接。如此,通信网络的每个节点都不需要存储经过与自身相连的链路上的连接,如此减少了对存储资源的占用;按随机的方式分配通信网络中的每个节点的节点标识,可以减少分配节点标识的成本。另外,统一长度的随机标识便于存储到高效的生成树中,便于计算机进行快速的检索或子串匹配,降低计算复杂度,提高处理效率。
实施例3
如图8所示,本发明实施例提供了一种链路故障时更新连接的系统包括通信网络的节点301和端节点302;
所述通信网络的节点301,用于按随机的方式为自己分配节点标识;当与所述通信网络中的节点相连的链路发生故障时,所述节点根据与所述故障链路相连的端口,从本地获取与所述故障链路相连的对面节点的节点标识,将自身的节点标识和所述对面节点的节点标识的排列作为所述故障链路的标识,广播所述故障链路的标识;
所述端节点302,用于在开始通信前,与所有待联系的目的端节点建立连接,为所述连接通过寻由过程得到一条或多条路径,并存储所述连接包括的一条或多条路径,其中,用所述路径经过节点的节点标识组成的排列来表示所述路径,且为所述连接选用自身包括的全部或部分路径进行通信,剩下未选用的路径作为所述连接的备用路径;当从所述通信网络接收所述故障链路的标识时,根据所述故障链路的标识判断自身的连接所选用的路径是否经过所述故障链路,如果否,则丢弃所述故障链路的标识;如果是,则通过所述连接的备用路径或冗余路径进行自恢复;如果自恢复成功,则利用所述自恢复的路径通信;如果自恢复失败,则重新寻由得到新路径来恢复所述连接。
在本发明实施例中,通信网络中的每个节点按随机的方式为自己分配节点标识,每个节点当判断出与自身相连的链路发生故障时,获取对面节点的节点标识,将自身的节点标识与对面节点的标识的排列作为故障链路的标识,广播发生故障链路的标识,端节点接收故障链路的标识,并根据故障链路的标识判断出经过故障链路的连接,更新经过故障链路的连接。如此,通信网络的每个节点都不需要存储经过与自身相连的链路上的连接,如此减少了对存储资源的占用;按随机的方式分配通信网络中的每个节点的节点标识,可以减少分配节点标识的成本。另外,统一长度的随机标识便于存储到高效的生成树中,便于计算机进行快速的检索或子串匹配,降低计算复杂度,提高处理效率。
本领域技术人员可以理解附图只是一个优选实施例的示意图,附图中的或流程并不一定是实施本发明所必须的。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (5)
1.一种链路故障时更新连接的方法,其特征在于,所述方法包括:
通信网络中的节点按随机的方式为自己分配节点标识;
所述通信网络中的端节点在开始通信前,与所有待联系的目的端节点建立连接,为所述连接通过寻由过程得到一条或多条路径,并存储所述连接包括的一条或多条路径,其中,所述端节点用所述路径经过节点的节点标识组成的排列来表示所述路径,且为所述连接选用自身包括的全部或部分路径进行通信,剩下未选用的路径作为所述连接的备用路径;
当与所述通信网络中的节点相连的链路发生故障时,所述节点根据与所述故障链路相连的端口,从本地获取与所述故障链路相连的对面节点的节点标识,将自身的节点标识和所述对面节点的节点标识的排列作为所述故障链路的标识,广播所述故障链路的标识;
所述通信网络中的端节点从所述通信网络接收所述故障链路的标识,并根据所述故障链路的标识判断自身的连接所选用的路径是否经过所述故障链路,如果否,则丢弃所述故障链路的标识;如果是,则通过所述连接的备用路径或冗余路径进行自恢复;如果自恢复成功,则利用所述自恢复的路径通信;如果自恢复失败,则重新寻由得到新路径来恢复所述连接;
其中,所述与所有待联系的目的端节点建立连接,为所述连接通过寻由过程得到一条或多条路径,并存储所述连接包括的一条或多条路径,包括:
针对任一个待联系的目的端节点,所述端节点与所述待联系的目的端节点建立连接,并通过呼叫寻由过程与所述待联系的目的端节点建立一条或多条路径得到所述连接包括的路径,将所述连接包括的路径存储在生成树EntireTree中,其中,所述EntireTree用于存储所述端节点与所有待联系的目的端节点之间的路径,且在所述EntireTree中所述端节点为根节点,所述目的端节点为叶子节点;
其中,所述通过冗余路径进行自恢复,包括:
从经过所述故障链路的路径中获取目的端节点;
查找所述冗余路径中是否还存在所述端节点与所述目的端节点之间的路径且所述查找的路径不同于经过所述故障链路的路径;
如果存在,则自恢复成功且通过所述查找的路径恢复所述连接;如果不存在,则自恢复不成功;
其中,所述冗余路径包括BackupTrees、MultiCastTree和UniCastPath,其中,所述BackupTrees包括已淘汰的EntrieTree,所述MultiCastTree为所述已淘汰的EntrieTree和所述EntrieTree的子集,所述UniCastPath为已淘汰的所述EntrieTree和所述EntrieTree中的单条路径。
2.如权利要求1所述的方法,其特征在于,根据所述故障链路的标识判断自身的连接所选用的路径是否经过所述故障链路,包括:
所述端节点判断所述故障链路的标识包括的两个节点的节点标识的排列是否为自身的连接所选用路径包括的节点标识的排列的子字符串,如果是,则判断出所述连接所选用的路径经过所述故障链路。
3.如权利要求1所述的方法,其特征在于,通过所述连接的备用路径进行自恢复,包括:
从经过所述故障链路的路径中获取目的端节点;
查找所述连接的备用路径中是否还存在所述端节点与所述目的端节点之间的路径且所述查找的路径不同于经过所述故障链路的路径;
如果存在,则自恢复成功且通过所述查找的路径恢复所述连接;如果不存在,则自恢复不成功。
4.如权利要求1或2所述的方法,其特征在于,所述节点根据与所述故障链路相连的端口,从本地获取与所述故障链路相连的对面节点的标识之前,还包括:
所述节点从与链路相连的端口处发送检测消息,如果在预设的时间内检测出未收到响应的端口,则判断与所述未收到响应的端口相连的链路发生故障。
5.一种链路故障时更新连接的系统,其特征在于,所述系统包括通信网络的节点和端节点;
所述通信网络的节点,用于按随机的方式为自己分配节点标识;当与所述通信网络中的节点相连的链路发生故障时,所述节点根据与所述故障链路相连的端口,从本地获取与所述故障链路相连的对面节点的节点标识,将自身的节点标识和所述对面节点的节点标识的排列作为所述故障链路的标识,广播所述故障链路的标识;
所述端节点,用于在开始通信前,与所有待联系的目的端节点建立连接,为所述连接通过寻由过程得到一条或多条路径,并存储所述连接包括的一条或多条路径,其中,用所述路径经过节点的节点标识组成的排列来表示所述路径,且为所述连接选用自身包括的全部或部分路径进行通信,剩下未选用的路径作为所述连接的备用路径;当从所述通信网络接收所述故障链路的标识时,根据所述故障链路的标识判断自身的连接所选用的路径是否经过所述故障链路,如果否,则丢弃所述故障链路的标识;如果是,则通过所述连接的备用路径或冗余路径进行自恢复;如果自恢复成功,则利用所述自恢复的路径通信;如果自恢复失败,则重新寻由得到新路径来恢复所述连接;
其中,所述与所有待联系的目的端节点建立连接,为所述连接通过寻由过程得到一条或多条路径,并存储所述连接包括的一条或多条路径,包括:
针对任一个待联系的目的端节点,所述端节点与所述待联系的目的端节点建立连接,并通过呼叫寻由过程与所述待联系的目的端节点建立一条或多条路径得到所述连接包括的路径,将所述连接包括的路径存储在生成树EntireTree中,其中,所述EntireTree用于存储所述端节点与所有待联系的目的端节点之间的路径,且在所述EntireTree中所述端节点为根节点,所述目的端节点为叶子节点;
其中,所述通过冗余路径进行自恢复,包括:
从经过所述故障链路的路径中获取目的端节点;
查找所述冗余路径中是否还存在所述端节点与所述目的端节点之间的路径且所述查找的路径不同于经过所述故障链路的路径;
如果存在,则自恢复成功且通过所述查找的路径恢复所述连接;如果不存在,则自恢复不成功;
其中,所述冗余路径包括BackupTrees、MultiCastTree和UniCastPath,其中,所述BackupTrees包括已淘汰的EntrieTree,所述MultiCastTree为所述已淘汰的EntrieTree和所述EntrieTree的子集,所述UniCastPath为已淘汰的所述EntrieTree和所述EntrieTree中的单条路径。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110254420.9A CN102957559B (zh) | 2011-08-31 | 2011-08-31 | 一种链路故障时更新连接的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110254420.9A CN102957559B (zh) | 2011-08-31 | 2011-08-31 | 一种链路故障时更新连接的方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102957559A CN102957559A (zh) | 2013-03-06 |
CN102957559B true CN102957559B (zh) | 2015-06-24 |
Family
ID=47765827
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110254420.9A Expired - Fee Related CN102957559B (zh) | 2011-08-31 | 2011-08-31 | 一种链路故障时更新连接的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102957559B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103647710A (zh) * | 2013-11-01 | 2014-03-19 | 华为技术有限公司 | 一种路径配置方法及装置 |
EP3136661B1 (en) | 2014-05-09 | 2019-09-18 | Huawei Technologies Co., Ltd. | Path switching method and device |
CN105764106B (zh) * | 2016-02-03 | 2019-06-11 | 宇龙计算机通信科技(深圳)有限公司 | 一种传输路径的更新方法、终端和系统 |
CN105743704B (zh) * | 2016-03-30 | 2019-11-19 | 凯通科技股份有限公司 | 一种通信链路的故障分析方法和装置 |
CN107666402B (zh) * | 2016-07-27 | 2020-07-07 | 新华三技术有限公司 | 网络服务控制方法和装置 |
US10972384B2 (en) | 2016-07-27 | 2021-04-06 | New H3C Technologies Co., Ltd. | Processing of data stream |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101335701A (zh) * | 2008-07-10 | 2008-12-31 | 华南理工大学 | 一种多跳无线自组织网络的按需路由动态维护方法 |
-
2011
- 2011-08-31 CN CN201110254420.9A patent/CN102957559B/zh not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101335701A (zh) * | 2008-07-10 | 2008-12-31 | 华南理工大学 | 一种多跳无线自组织网络的按需路由动态维护方法 |
Non-Patent Citations (5)
Title |
---|
《向量网位置架构的研究》;孙振斌;《万方数据库学位论文》;20100316;第13-18页 * |
《向量网的移动性分析及向量网技术在Ad Hoc网络中的应用》;武可新;《万方数据库学位论文》;20080811;第四章第28-33页 * |
《多径寻由及其在向量网中的应用》;张浩;《万方数据库学位论文》;20100319;第18页 * |
Jinxin Zhang等.《The Third of Communication Network》.《IEEE Future Computer and Communication(ICFCC),2010 2nd International Conference on》.2010,第2卷第764-768页. * |
S.shah等."Extreme Networks Ethernet Automatic Protection Switching(EAPS) version 1".《IETF Network working Group》.2003,第2-4页. * |
Also Published As
Publication number | Publication date |
---|---|
CN102957559A (zh) | 2013-03-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102957559B (zh) | 一种链路故障时更新连接的方法及系统 | |
CN100459569C (zh) | 网络节点设备路由快速切换的方法及装置 | |
CN101582834B (zh) | 以太网业务传送中转发表的更新方法和系统 | |
CN101119324B (zh) | 网络地址转换属性自适应方法及装置 | |
CN101436976B (zh) | 一种转发数据帧的方法、系统和设备 | |
CN103428090B (zh) | 一种用于异构网络的动态路由方法、路由服务器及系统 | |
CN101645801A (zh) | 基于集群管理的软件版本升级方法及命令交换机 | |
CN101222364B (zh) | 一种自动交换光网络中本地跨段网状网恢复的方法 | |
CN101764751A (zh) | 无线用户终端跨vlan漫游报文转发的方法、系统及设备 | |
CN103023773B (zh) | 多拓扑网络中转发报文的方法、装置和系统 | |
US20020141334A1 (en) | Dynamic protection bandwidth allocation in BLSR networks | |
JP2005354299A (ja) | フレーム転送処理方法及び装置 | |
CN101848114A (zh) | 故障检测方法和装置 | |
CN101848171A (zh) | 一种基于gre隧道的数据传输方法、设备和系统 | |
CN101714944A (zh) | 用于恢复网络中的连接的方法 | |
CN102123091A (zh) | 多链接透明传输互连转发表生成方法、装置及网络设备 | |
CN101582902A (zh) | 链路聚合方法及装置 | |
CN103201987A (zh) | 区分路由信息更新的优先级 | |
CN101834772B (zh) | 一种基于以太环网的介质访问控制地址分类方法和装置 | |
CN102075419A (zh) | 三层虚拟专用网等价路由的生成及转发方法和边缘路由器 | |
JPH088972A (ja) | パス設定制御システム | |
CN107277187A (zh) | Arp热备份快速同步的系统及方法 | |
CN101414972B (zh) | 信息更新方法及其更新装置 | |
US6765908B1 (en) | System and method for transferring packets in a “connectionless” network | |
CN102065508A (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 | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20150624 Termination date: 20190831 |