一种分布式网络的拓扑信息收集方法

文档序号:7710898阅读:180来源:国知局
专利名称:一种分布式网络的拓扑信息收集方法
技术领域
本发明涉及通信领域,尤其涉及一种分布式网络的拓扑信息收集方法。
背景技术
P2P(Peer-to-Peer,对等互联,或点对点)技术可以让用户直接连接到其他用户 的计算机,进行文件共享与交换,同时P2P在深度搜索、分布计算、协同工作等方面也大有 用途。由大量计算机设备组成的P2P网络具备多种多样的拓扑结构关系,目前主流 的拓扑结构关系的划分形式有如下四种中心化拓扑(CentralizedTopology),全分 布式非结构化拓扑(Decentralized Unstructured Topology),全分布式结构化拓扑 (Decentralized Structure Topology),以及半分布式J石扑(Partially Decentralized Topology)。其中,中心化拓扑结构是以中心服务器(目录系统)为中心,所有节点(Peer)围 绕中心节点设置。采用中心化拓扑结构的网络维护简单,节点发现效率高,但是整个网络过 度依赖于中心服务器,容易造成瓶颈,因此只适用于小型网络,并不适于大型网络应用。全分布式非结构化拓扑结构中没有中心服务器,网络中的设备采用随机方式组 织,采用全分布式非结构化拓扑结构的网络能够较快发现目的节点,容错能力强,能够支持 复杂查询,模糊查询等。全分布式结构化拓扑结构是采用分布式散列表(DHT)的完全分布式结构化网络。 DHT能够提供精确发现操作,只要目的节点存在于网络中,就一定能够被发现。半分布式结构拓扑结构融合了中心化拓扑结构与全分布式结构化拓扑结构的优 点,选择其中性能较强(信息处理能力强)的节点作为超级节点,每个超级节点负责一组普 通节点间消息的转发,同时超级节点完成消息在超级节点间的转发。四种拓扑结构中,除了中心化拓扑结构,以及少数采用一跳路由算法的结构化网 络外(一跳路由算法同样只适用于较小型网络),在进行消息路由时,都存在一个共同点, 即每个节点都只存储网络路由表的一部分,任何一个节点收到一个资源查找请求时,总是 将其转发给离该目的节点“更近”的节点,直至找到目的节点。图1是全分布式结构化拓扑结构网络中各节点具备的网络拓扑信息示意图。图1 中每个圆圈表示叠加网络中的一个节点,虚线表示节点与节点之间具备的逻辑联系关系, 每个节点只知晓具备逻辑联系关系的节点。如图1所示,节点1只能获知节点2、节点3、节点4和节点5四个节点的存在;节 点6可以获知节点4、节点5、节点7和节点8四个节点的存在;如果网络发生变化,例如节 点5退出了叠加网,节点1与节点6会立即获知节点5的退出,将会分别根据算法选择新的 节点替代节点5。由上可知,在整个网络中,所有节点都只能获知叠加网络中特定部分的拓扑信息, 而没有任何节点能获知整个网络的拓扑信息。因此,在收集整网拓扑信息时,通常都是先选取叠加网中特定的节点,从这些节点分别获取拓扑信息后,组合成完整的网络拓扑信息。但 是,采用上述方法收集拓扑信息时,需要预先获知网络的拓扑结构,根据网络的拓扑结构来 选取特定的节点来完成拓扑信息的收集。目前P2P技术的应用非常广泛,针对不同场景和需求所采用的拓扑结构和路由算 法的种类繁多、千差万别,如果采用以上方法收集整网拓扑信息,需要对所有类型的拓扑结 构和路由算法进行研究后才能进行。现有技术中还没有一种能够适用于所有拓扑结构和路 由算法的网络拓扑信息的收集方法。

发明内容
本发明所要解决的技术问题是,克服现有技术的不足,提供一种不依赖与网络拓 扑结构和路由算法的分布式网络的拓扑信息收集方法。为了解决上述问题,本发明提供一种分布式网络的拓扑信息收集方法,该方法包 括分布式网络中的起始节点向其相邻节点发送拓扑收集请求消息;分布式网络中的任一节点X在接收到拓扑收集请求消息后,进行如下处理节点X向该节点的M个相邻节点发送拓扑收集请求消息;所述M个相邻节点为节 点X的相邻节点中除向节点X发送拓扑收集请求消息的节点以外的其它节点;接收到上述M个相邻节点返回的拓扑收集响应消息、或到达预先设定的时间后, 如果接收到的至少一个拓扑收集响应消息中包含网络拓扑信息,则节点X将本节点记录的 网络拓扑信息和本节点接收到的拓扑收集响应消息中的网络拓扑信息包含在拓扑收集响 应消息中,返回给向其发送拓扑收集请求消息的节点中的一个;其中,MS 1。此外,如果除向其发送拓扑收集请求消息的节点以外,节点X没有其它相邻节点, 则节点X将本节点的网络拓扑信息包含在拓扑收集响应消息中,返回给向其发送拓扑收集 请求消息的节点中的一个。此外,如果节点X接收到的所有拓扑收集响应消息中都不包含网络拓扑信息,则 节点X将本节点的网络拓扑信息包含在拓扑收集响应消息中返回给向其发送拓扑收集请 求消息的节点中的一个。此外,节点X将所述包含网络拓扑信息的拓扑收集响应消息返回给该节点接收到 的第一个拓扑收集请求消息的发送节点。此外,节点X在接收到拓扑收集请求消息后,判断该消息是否为接收到的第一个 拓扑收集请求消息,如果不是,则向该消息的发送节点返回不包含网络拓扑信息的拓扑收 集响应消息。此外,所述本节点的网络拓扑信息中仅包含本节点的节点标识。此外,节点X在接收到拓扑收集请求消息后,根据该消息中包含的转发限制标识 判断是否允许向该节点的相邻节点发送拓扑收集请求消息;如果不允许,则节点X向发送 该拓扑收集请求消息的节点返回拓扑收集响应消息;所述拓扑收集响应消息中包含网络拓 扑信息,所述网络拓扑信息中包含所述M个相邻节点是尚未转发拓扑收集请求消息的节点 的标识;
所述起始节点接收到包含所述M个相邻节点是尚未转发拓扑收集请求消息的节 点的标识后,向所述M个相邻节点发送拓扑收集请求消息。此外,向其相邻节点发送拓扑收集请求消息前,所述起始节点将转发限制标识N 的初始值设置为N0,并将所述转发限制标识包含在所述拓扑收集请求消息中发送给其相邻 节点; 分布式网络中的任一节点X在接收到拓扑收集请求消息后,根据该消息中的N值 是否小于等于N1、或是否大于等于N2来判断是否允许向该节点的相邻节点发送拓扑收集请 求消息;如果允许,则将该N值减η后,将其包含在拓扑收集请求消息中发送给该节点的相 邻节点;其中,n> 0 且N0 > N1,或 n < 0 且 N0 < Ν2。此外,所述拓扑收集请求消息中包含用于唯一标识当前的拓扑信息收集操作的拓 扑信息收集标识。此外,所述拓扑信息收集标识中包含所述起始节点的标识和消息序号。综上所述,分布式网络中的任意节点都可以通过采用本发明提供的方法获取整网 拓扑信息,并且该方法适用于采用任意拓扑结构、任意路由算法的分布式网络。同时由于本 发明的拓扑信息收集采用请求分级复制下发,响应分级汇总、上报的机制,能够有效控制网 络局部流量,从而不对网络造成大的冲击。


图1是全分布式结构化拓扑结构网络中各节点具备的网络拓扑信息示意图;图2是本发明第一实施例分布式网络的拓扑信息收集方法流程图;图3为采用本发明第一实施例的方法进行拓扑信息收集的网络的拓扑结构示意 图;图4是本发明第一实施例在图3所示的场景下起始节点进行拓扑信息收集的消息 交互图;图5是本发明第一实施例在图3所示的场景下中间节点进行拓扑信息收集的消息 交互图;图6是本发明第一实施例在图3所示的场景下末梢节点进行拓扑信息收集的消息 交互图;图7是本发明第二实施例分布式网络的拓扑信息收集方法流程图。
具体实施例方式本发明的核心思想是,分布式网络中的起始节点向其相邻节点发送拓扑收集请求 消息,启动拓扑信息收集后,分布式网络中的任一中间节点(包括起始节点的相邻节点)在 接收到拓扑收集请求消息后,向该节点的相邻节点转发拓扑收集请求消息,接收到返回的 拓扑收集响应消息后,将本节点的网络拓扑信息(即本节点的路由表中包含的信息)和拓 扑收集响应消息包含在拓扑收集响应消息返回给上一节点,最终,起始节点收集到了网络 中各节点的拓扑信息。下面将结合附图和实施例对本发明进行详细描述。
第一实施例图2是本发明第一实施例分布式网络的拓扑信息收集方法流程图。在图2所示流程中,根据分布式网络中各节点在拓扑信息收集过程中的不同作 用,将各节点分别定义为起始节点、中间节点与末梢节点;其中,起始节点是发起拓扑信 息收集的节点,中间节点是需要汇总并上报本节点及相邻节点的拓扑信息的节点,末梢节 点是仅需上报本节点的拓扑信息、无需收集相邻节点的拓扑信息的节点。以下将结合图2 分别对上述三类节点在拓扑信息的收集过程中的处理流程进行描述。起始节点的主要处理步骤包括S201a)期望获取网络拓扑信息的起始节点查询本节点的路由表,向路由表中关联 的所有节点(称为相邻节点)发送拓扑收集请求消息,并等待相邻节点返回的拓扑收集响应消息;S202a)起始节点接收到所有相邻节点返回的拓扑收集响应消息后,将该消息中包 含的拓扑信息和本节点路由表中包含的拓扑信息组合成完整的全网拓扑信息,完成本次拓 扑信息的收集过程。中间节点的主要处理步骤包括S201b)接收到上一节点(可能是中间节点或起始节点)发送的拓扑收集请求消息 后,为了避免广播风暴,中间节点验证该消息是否为首次收到的拓扑收集请求消息;如果不 是首次收到的拓扑收集请求消息,则该中间节点向上一节点返回拓扑收集失败响应消息, 并结束中间节点的处理流程;否则执行下一步;为了便于各节点获知先前是否已收到过相同的拓扑收集请求消息,起始节点可以 为每一次拓扑信息收集生成一个唯一的拓扑信息收集标识(例如,该拓扑信息收集标识中 包含起始节点的标识和唯一的消息序号),并将其插入到拓扑收集请求消息中发送给各 相邻节点,各中间节点在转发拓扑收集请求消息时必须携带该标识。各节点收到拓扑收集 请求消息后,从消息中读取该标识,然后在本节点存储的已经接收到的拓扑信息收集标识 列表中进行搜索,如未搜索到相同的拓扑信息收集标识,则表明该拓扑收集请求消息为首 次接收到的拓扑收集请求消息。上述拓扑收集失败响应消息可以是不包含任何拓扑信息的拓扑收集响应消息。S202b)中间节点查询本节点的路由表,向路由表中除已向该中间节点发送拓扑收 集请求消息的节点以外的其它相邻节点发送拓扑收集请求消息,并等待相应的拓扑收集响 应消息;当然,在本步骤中,中间节点也可以向路由表中的所有相邻节点发送拓扑收集请 求消息,但是,由于已向该中间节点发送拓扑收集请求消息的相邻节点先前一定接收到过 其它节点发送的拓扑收集请求消息,因此会向该中间节点返回拓扑收集失败响应消息。S203b)中间节点接收到全部的拓扑收集响应消息(包括拓扑收集失败响应消息 和拓扑收集成功响应消息)后,将响应消息中包含的拓扑信息与本节点的拓扑信息后进行 组合后,生成该中间节点负责部分的网络拓扑信息;假设中间节点向N个相邻节点发送了拓扑收集请求消息,接收到M个节点返回的 拓扑收集失败响应消息,那么当接收到N-M个节点返回的拓扑收集成功响应消息后,该中 间节点获知已接收到全部的拓扑收集响应消息。
S204b)中间节点将其负责部分的网络拓扑信息包含在拓扑收集响应消息中返回 给上一节点,完成本节点的拓扑信息收集任务。末梢节点的主要处理步骤包括S201c)接收到上一节点(可能是中间节点或起始节点)发送的拓扑收集请求消息 后,为了避免广播风暴,末梢节点验证该消息是否为首次收到的拓扑收集请求消息;如果不 是首次收到的拓扑收集请求消息,则该末梢节点向上一节点返回拓扑收集失败响应消息, 并结束末梢节点的处理流程;否则执行下一步;S202c)末梢节点查询本节点的路由表,向路由表中除已向该末梢节点发送拓扑收 集请求消息的节点以外的其它相邻节点发送拓扑收集请求消息,但是所有接收到拓扑收集 请求消息的相邻节点都返回拓扑收集失败响应消息,则本节点确定自己为末梢节点;S203c)末梢节点向上一节点返回拓扑收集响应消息,该消息中的网络拓扑信息中 可以仅包含用于表明该节点为末梢节点的标识,完成本节点的拓扑信息收集任务。 上述标识可以就是末梢节点的节点标识自身。此外,末梢节点也可以将本节点路由表中包含的全部拓扑信息返回给上一节点。此外,如果除向其发送拓扑收集请求消息的节点外,某一节点没有其它相邻节点,则该节点也是末梢节点。图3为采用本发明第一实施例的方法进行拓扑信息收集的网络的拓扑结构示意图;如图3所示,各行的箭头依次表明拓扑收集请求消息的分发级别,分别为第一级分发到 第四级分发。图3中的实线箭头表示拓扑收集请求消息的首次分发;虚线箭头表示向已经 收到拓扑收集请求消息的节点再次发送拓扑收集请求消息。在图3中,节点1为起始节点,向节点2、节点3、节点4和节点5发送拓扑收集请求消息。节点4为中间节点,将拓扑收集请求消息下发给了节点6、节点9和节点A三个节 点;其中,接收到节点4下发的拓扑收集请求消息前,节点6已经从节点5收到具有相同拓 扑信息收集标识的拓扑收集请求消息,节点6向节点4返回拓扑收集失败响应消息。当节 点9收到拓扑收集请求消息,准备下发给节点8和节点B时,节点8和节点B已经分别从节 点6和节点A获得了拓扑收集请求消息,所以向节点9返回了拓扑收集失败响应消息,因此 节点9成为了末梢节点的一员。在图3所示场景下的具体流程将在下文中详细说明。图4是本发明第一实施例在图3所示的场景下起始节点进行拓扑信息收集的消息交互图,包括如下步骤S401) S404)起始节点(节点1)检查本节点的路由表,发现有4个相邻节点,分别为节点2、节点3、节点4和节点5,于是分别向这4个相邻节点发送具有相同拓扑信息收 集标识的拓扑收集请求消息,并且节点1存储一条记录,记录该请求消息由节点1发起(即 记录本节点为起始节点);起始节点记录的上述信息可以在预先设定的时间(如3600秒)后删除,以下中间节点、末梢节点记录的相应信息也可以在在预先设定的时间后删除。S405)成功发送拓扑收集请求消息后,起始节点进入拓扑收集响应等待状态,等待4个相邻节点返回的拓扑收集响应消息;S406) S409) 4个相邻节点完成拓扑收集后,分别向节点1返回携带部分网络拓扑信息的拓扑收集响应消息;
S410)节点1将接收到的拓扑收集响应消息中包含的拓扑信息和本节点的路由表 中的拓扑信息组合成为完整的叠加网拓扑信息,完成一次全网拓扑信息的收集过程。图5是本发明第一实施例在图3所示的场景下中间节点进行拓扑信息收集的消息 交互图,包括如下步骤S501)中间节点(节点4)收到前一节点(节点1)发送的拓扑收集请求消息;S502)节点4从拓扑收集请求消息中提取拓扑信息收集标识,并以该标识为索引 在本地查找相同的标识,本步骤中节点4未能查找到相同的标识,节点4确定该拓扑收集请 求消息为首次收到,节点4存储该标识,记录已经收到该拓扑收集请求消息;S503) S505)节点4检查本节点的路由表,发现除了节点1以外还有3个相邻节 点,分别为节点6、节点9和节点A,于是向这3个相邻节点分别发送拓扑收集请求消息,该 消息中的拓扑信息收集标识与节点1发送的一致;S506)成功发送拓扑收集请求消息后,节点4进入拓扑收集响应等待状态,等待上 述3个相邻节点返回拓扑收集响应消息;S507) S509)上述3个邻近节点完成拓扑信息收集后,分别向节点4返回携带部 分网络拓扑信息的拓扑收集响应消息;S510)节点4将接收到的拓扑收集响应消息中包含的拓扑信息和本节点路由表中 的拓扑信息组合成部分拓扑信息;S511)节点4将组合生成的部分拓扑信息包含在拓扑收集响应消息中返回给上一 节点(节点1),节点4完成了本次拓扑收集任务。图6是本发明第一实施例在图3所示的场景下末梢节点进行拓扑信息收集的消息 交互图,包括如下步骤S601)节点9收到前一节点(节点4)发送的拓扑收集请求消息;S602)节点9从拓扑收集请求消息中提取拓扑信息收集标识,并以该标识为索引 在本地查找相同的标识,这里节点9未能查找到相同的标识,确定该拓扑收集请求消息为 首次收到,节点9存储该标识,记录已经收到该请求消息;S603) S604)节点9检查本节点的路由表,发现除了节点4以外还有两个相邻节 点,分别为节点8和节点B,于是向这2个相邻节点分别发送拓扑收集请求消息,该消息中的 拓扑信息收集标识与节点4发送的一致;S605)成功发送拓扑收集请求消息后,节点9进入拓扑收集响应等待状态,等待上 述2个相邻节点返回拓扑收集响应消息;S606)与步骤S602类似,节点8接收到拓扑收集请求消息后,对该消息中的拓扑信 息收集标识进行检测,发现已经收到过具有相同拓扑信息收集标识的拓扑收集请求消息;S607)节点8向节点9返回拓扑收集失败响应消息,告知节点9本节点已经收到过 该拓扑收集请求消息,节点8不对该消息作进一步处理;S608)节点B接收到拓扑收集请求消息后,对该消息中的拓扑信息收集标识进行 检测,发现已经收到过具有相同拓扑信息收集标识的拓扑收集请求消息;S609)节点B向节点9发送拓扑收集失败响应消息,告知节点9本节点已经收到过 该拓扑收集请求消息,节点B不对该消息作进一步处理;S609)节点9收到2个相邻节点返回的拓扑收集失败响应消息后,发现所有相邻节点都已经接收并处理了拓扑收集请求消息,因此判定本节点为末梢节点;S610)节点9向节点4返回拓扑收集响应消息,该消息中的网络拓扑信息中可以仅 包含用于表示本节点为末梢节点的标识,节点9完成了本次拓扑收集任务。当然,节点9也可以将本节点路由表中包含的全部拓扑信息返回给节点4。第二实施例当叠加网中包含的节点非常多时,从起始节点到末梢节点可能会需要许多跳(即 起始节点与末梢节点之间包含了许多中间节点),而跳数越多,意味着起始节点将需要等待 很长时间才能收到拓扑收集响应消息;同时,叠加网中包含的节点越多意味着拓扑信息的 信息量越大,采用本发明第一实施例所述的方法收集拓扑信息时,拓扑收集响应消息的报 文也就越大;因此对于包含很多节点的叠加网,本方法还提出了限制单次拓扑收集跳数,通 过多次拓扑收集来收集整网拓扑信息的优化方案。图7是本发明第二实施例分布式网络的拓扑信息收集方法流程图,该方法包括如 下步骤S701)起始节点(节点1)检查本节点的路由表,发现有4个相邻节点,分别为节点 2、节点3、节点4和节点5,于是向这4个相邻节点分别发送具有相同拓扑信息收集标识的 拓扑收集请求消息(这里为了表述方便,图7中仅示出节点4);同时,节点1在拓扑收集请 求消息中标识该消息最大传递次数(即允许的跳数)为N次;S702)节点4收到拓扑收集请求消息,并确定该消息不是重复接收的拓扑收集请 求消息后,将该消息转发给下一节点,保持拓扑信息收集标识不变,将该消息中包含的最大 传递次数减1变为N-I次;S703)当拓扑收集请求消息经过N-I次传递后,该消息中的最大传递次数变为1 时,该消息发送到节点H上;S704)节点H确定该消息不是重复接收的拓扑收集请求消息后,发现路由表中有 相邻节点(节点J)需要转发拓扑收集请求消息,但此时已经不允许再次转发,因此节点H 只能将自己作为末梢节点;S705) S707)节点H将路由表中包含的拓扑信息(其中包含节点J为尚未转发 拓扑收集请求消息的节点的信息)通过拓扑收集响应消息返回给上一节点,节点H的拓扑 信息(其中包含节点J为尚未转发拓扑收集请求消息的节点的信息)经过多个节点的转 发,最终到达起始节点;S708)节点1将接收到的拓扑收集响应消息中包含的拓扑信息和本节点路由表中 的拓扑信息进行组合时,发现拓扑信息有缺失,缺失的节点为节点J ;S709)起始节点向节点J发送具有与步骤S701中相同的拓扑信息收集标识的拓扑 收集请求消息,并在该消息中标识最大传递次数为N次;S710)接收到起始节点发送的拓扑收集请求消息后,节点J作为中间节点或末梢 节点完成拓扑收集任务,向节点1返回拓扑收集响应消息,节点1根据节点J返回的拓扑收 集响应消息完成完整的叠加网拓扑信息的拼装,完成一次全网拓扑信息的收集过程。由上可知,采用本发明提供的方法,起始节点可以获取整个叠加网的拓扑信息,并 组成完整的叠加网拓扑图,同时并没有给叠加网带来消息阻塞、消息风暴等问题。根据本发明的基本原理,上述实施例还可以有多种变换方式,例如
(一 )在上述实施例中,各节点在接收到重复的拓扑收集请求消息后,会向该消息 的发送节点返回拓扑收集失败响应消息;发送拓扑收集请求消息的节点根据接收到的拓扑 收集成功响应消息和拓扑收集失败响应的总数来判断是否已接收到全部的拓扑收集响应 消息,并在判定已接收到全部的拓扑收集响应消息后,向第一个接收到的拓扑收集请求消 息的发送节点返回拓扑收集响应消息;在本发明的其它实施例中,接收到重复的拓扑收集请求消息后,该消息的接收节 点可以直接丢弃该消息,不向该消息的发送节点返回拓扑收集失败响应消息;在这种情况 下,该消息的发送节点需要设置一定时器,定时器超时后即进行拓扑信息的组合,并返回拓 扑收集响应消息,不再等待剩余的拓扑收集响应消息。采用本方法时,只要定时器的时长设 置合理,通常不会遗漏节点的拓扑信息。当然,也可以采用多次发送拓扑收集响应的方式向 上一节点发送定时器超时后接收到的拓扑收集响应消息中的网络拓扑信息。如果在定时器超时后不再等待剩余的拓扑收集响应消息,也可以将没有收到的拓 扑收集响应消息所对应的节点标示为缺失的节点,以便起始节点本发明第二实施例的方法 再次向该缺失的节点发送拓扑收集请求消息。(二)在上述实施例中,中间节点和末梢节点将其收集的网络拓扑信息(即将拓扑 收集成功响应消息)返回给首次向其发送拓扑收集请求消息的节点;在本发明的其它实施例中,中间节点和末梢节点可以将其收集的网络拓扑信息 (即将拓扑收集成功响应消息)返回给任意一个向其发送拓扑收集请求消息的节点,例如, 最后一个向其发送拓扑收集请求消息的节点。(三)在本发明的第二实施例中,由起始节点设置拓扑收集请求消息的最大转发 次数N的初始值,并将其包含在拓扑收集请求消息中发送给相邻节点,接收到该拓扑收集 请求消息的节点在转发该消息前将N值减η (η > 0),当N值小于等于1时表示不能继续转 发该拓扑收集请求消息;在本发明的其它实施例中,也可以在拓扑收集请求消息中设置其它的标识来表示 是否允许继续转发该拓扑收集请求消息;例如,起始节点设置转发计数标识L,其初值为0, 起始节点将L值包含在拓扑收集请求消息中发送给相邻节点,接收到该拓扑收集请求消息 的节点在转发该消息前将L值加1 (1 > 0),当L值大于等于预先设置的最大转发次数上限 值L1时表示不能继续转发该拓扑收集请求消息。上述最大转发次数和转发计数标识可以统称为转发限制标识。此外,上述转发限制标识也可以由对等叠加网中的任一中间节点设置。
权利要求
一种分布式网络的拓扑信息收集方法,其特征在于,该方法包括分布式网络中的起始节点向其相邻节点发送拓扑收集请求消息;分布式网络中的任一节点X在接收到拓扑收集请求消息后,进行如下处理节点X向该节点的M个相邻节点发送拓扑收集请求消息;所述M个相邻节点为节点X的相邻节点中除向节点X发送拓扑收集请求消息的节点以外的其它节点;接收到上述M个相邻节点返回的拓扑收集响应消息、或到达预先设定的时间后,如果接收到的至少一个拓扑收集响应消息中包含网络拓扑信息,则节点X将本节点记录的网络拓扑信息和本节点接收到的拓扑收集响应消息中的网络拓扑信息包含在拓扑收集响应消息中,返回给向其发送拓扑收集请求消息的节点中的一个;其中,M≥1。
2.如权利要求1所述的方法,其特征在于,如果除向其发送拓扑收集请求消息的节点以外,节点χ没有其它相邻节点,则节点χ将 本节点的网络拓扑信息包含在拓扑收集响应消息中,返回给向其发送拓扑收集请求消息的 节点中的一个。
3.如权利要求1所述的方法,其特征在于,如果节点X接收到的所有拓扑收集响应消息中都不包含网络拓扑信息,则节点X将本 节点的网络拓扑信息包含在拓扑收集响应消息中返回给向其发送拓扑收集请求消息的节 点中的一个。
4.如权利要求1至3中任一权利要求所述的方法,其特征在于,节点X将所述包含网络拓扑信息的拓扑收集响应消息返回给该节点接收到的第一个 拓扑收集请求消息的发送节点。
5.如权利要求4所述的方法,其特征在于,节点X在接收到拓扑收集请求消息后,判断该消息是否为接收到的第一个拓扑收集请 求消息,如果不是,则向该消息的发送节点返回不包含网络拓扑信息的拓扑收集响应消息。
6.如权利要求2或3所述的方法,其特征在于,所述本节点的网络拓扑信息中仅包含本节点的节点标识。
7.如权利要求1所述的方法,其特征在于,节点X在接收到拓扑收集请求消息后,根据该消息中包含的转发限制标识判断是否允 许向该节点的相邻节点发送拓扑收集请求消息;如果不允许,则节点X向发送该拓扑收集 请求消息的节点返回拓扑收集响应消息;所述拓扑收集响应消息中包含网络拓扑信息,所 述网络拓扑信息中包含所述M个相邻节点是尚未转发拓扑收集请求消息的节点的标识;所述起始节点接收到包含所述M个相邻节点是尚未转发拓扑收集请求消息的节点的 标识后,向所述M个相邻节点发送拓扑收集请求消息。
8.如权利要求7所述的方法,其特征在于,向其相邻节点发送拓扑收集请求消息前,所述起始节点将转发限制标识N的初始值设 置为Ntl,并将所述转发限制标识包含在所述拓扑收集请求消息中发送给其相邻节点;分布式网络中的任一节点X在接收到拓扑收集请求消息后,根据该消息中的N值是否 小于等于N1、或是否大于等于N2来判断是否允许向该节点的相邻节点发送拓扑收集请求消 息;如果允许,则将该N值减η后,将其包含在拓扑收集请求消息中发送给该节点的相邻节其中,η > 0 且 Ntl > N1,或 η < 0 且 Ntl < Ν2。
9.如权利要求1所述的方法,其特征在于,所述拓扑收集请求消息中包含用于唯一标识当前的拓扑信息收集操作的拓扑信息收 集标识。
10.如权利要求9所述的方法,其特征在于,所述拓扑信息收集标识中包含所述起始节点的标识和消息序号。
全文摘要
一种分布式网络的拓扑信息收集方法,分布式网络中的起始节点向其相邻节点发送拓扑收集请求消息;分布式网络中的任一节点X在接收到拓扑收集请求消息后,进行如下处理节点X向该节点的M个相邻节点发送拓扑收集请求消息;所述M个相邻节点为节点X的相邻节点中除向节点X发送拓扑收集请求消息的节点以外的其它节点;接收到上述M个相邻节点返回的拓扑收集响应消息、或到达预先设定的时间后,如果接收到的至少一个拓扑收集响应消息中包含网络拓扑信息,则节点X将本节点记录的网络拓扑信息和本节点接收到的拓扑收集响应消息中的网络拓扑信息包含在拓扑收集响应消息中,返回给向其发送拓扑收集请求消息的节点中的一个;其中,M≥1。
文档编号H04L12/56GK101989995SQ20091016108
公开日2011年3月23日 申请日期2009年8月7日 优先权日2009年8月7日
发明者胡永生, 陈志峰 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1