节点和网络的制作方法_4

文档序号:9379994阅读:来源:国知局
中的存活节点作为被怀疑节点的信息。
[0143]在一个实施方式中,中央处理器920还可以被配置为:在该节点没有启动针对该第一存活消息所包含的存活节点的诊断的情况下,将该第一存活消息存储到存活消息表中。
[0144]在本实施例中,例如节点已经接收过第一存活消息并存储在存活消息表中,则在该节点发现无法与第一存活消息中的存活节点通信,即要启动对该存活节点的诊断时,该中央处理器920还可以被配置为:在该节点发现无法与第一存活消息中的存活节点通信时,判断该存活消息表中是否包含该第一存活消息;在判断结果为是时,诊断该第一存活消息所包含的存活节点与该节点之间的故障为链路故障;否则广播第二存活消息,该第二存活消息包含以该节点为存活节点,该第一存活消息中的存活节点为被怀疑节点的信息。
[0145]在另一个实施方式中,也可以将上述故障诊断功能配置在与中央处理器920连接的芯片上,通过中央处理器920的控制来实现故障诊断功能。
[0146]在本实施例中,节点900还可以包括:传感器901,其用于检测该节点与其邻居节点是否正常通信,其中,在传感器901检测到该节点无法与某个邻居节点正常通信时,通知中央处理器920执行上述处理。
[0147]此外,如图9所示,节点900还可以包括:收发器904和电源模块905等;其中,上述部件的功能与现有技术类似,此处不再赘述。值得注意的是,节点900也并不是必须要包括图9中所示的所有部件;此外,节点900还可以包括图9中没有示出的部件,可以参考现有技术。
[0148]通过本实施例的节点,接收到存活消息的被怀疑节点完成了故障诊断,能够在保障故障诊断准确性的前提下尽可能降低诊断开销。
[0149]在本发明实施例中,实施例4?6可以单独实施,也可以通过组合任意一个以上的实施例合并实施,例如实施例4与实施例5组合实施时,该节点既可以作为根节点又可以同时作为中间节点,例如实施例4与实施例6组合实施时,该节点既可以作为根节点又可以同时作为被怀疑节点,例如组合实施例4、5和6时,该节点可以同时作为根节点、中间节点或被怀疑节点。
[0150]实施例7
[0151]本发明实施例7还提供一种多跳系统,该系统包括:第一节点,所述第一节点用于广播第一存活消息,所述第一存活消息包含存活节点和被怀疑节点的信息,所述存活节点为所述第一节点;在第一预定时间内没有接收到所述被怀疑节点的第二存活消息且在经过第二预定时间后所述第一节点与所述被怀疑节点之间的链路仍未恢复时,建立针对所述被怀疑节点的诊断树,以进一步诊断故障原因,其中,所述第二存活消息包含以所述被怀疑节点作为存活节点,以所述第一节点作为被怀疑节点的信息。
[0152]在本实施例中,所述网络还可以包括第二节点,所述第二节点用于接收诊断消息;并判断接收到的所述诊断消息是存活消息或建树消息;在接收到的所述诊断消息是所述第一存活消息时,单播转发所述第一存活消息;在接收到的所述诊断消息是建树消息时,所述第二节点加入诊断树。
[0153]在本实施例中,其中,所述网络还包括第三节点,所述第三节点是所述第二节点的邻居节点;所述第三节点接收到所述第二节点转发的所述第一存活消息,且所述第三节点是该第一存活消息中的被怀疑节点,且所述第三节点已经启动针对所述第一节点的诊断且不超过第三预定时间的情况下,诊断所述第一节点与所述第三节点之间的故障为链路故障。
[0154]在本实施例中,其中,所述第二预定时间大于所述第一预定时间。
[0155]在本实施例中,第一节点的【具体实施方式】可参考实施例5中的节点,第二节点的【具体实施方式】可参考实施例6中的节点,第三节点的【具体实施方式】可参考实施例7中的节点,其内容被合并于此,在此不再赘述。其中,该多跳网络可以包括至少一个第一节点,至少一个第二节点和至少一个第三节点。
[0156]图10是本发明实施例的多跳网络的构成示意图,如图10所示,节点A是该第一节点、节点B是该第三节点、节点C、D、E是该第二节点,其中,节点A发现与节点B不能通信,即怀疑与节点B发生故障,即节点A作为根节点发起诊断过程,节点B作为被怀疑节点,节点C、D根据节点A发来的诊断消息执行相应的诊断操作,节点E根据节点D转发的诊断消息执行相应的诊断操作,其中节点C、E是节点B的邻居节点,节点D不是节点B的邻居节点,其中节点C、D、E为树节点,以下针对图10对本实施例的故障诊断方法进行说明。
[0157]在节点A侧:
[0158]图11是本实施例中节点A侧的故障诊断方法流程图,如图11所示,该方法包括:
[0159]步骤1101,节点A怀疑与节点B发生故障,向其邻居节点发送存活消息;
[0160]其中,节点A怀疑节点B故障,且在节点B已经启动了针对节点A的诊断时,节点A直接诊断A和B之间的故障为链路故障,否则向其邻居节点发送存活消息。
[0161]步骤1102,节点A设定并开启疑似链路故障定时器Tl和疑似节点故障定时器T2,其中Τ2ΧΓ1 ;
[0162]步骤1103,判断在Tl结束前,节点A是否接收到来自节点B的存活消息,在判断结果为是的情况下执行步骤1104、1107,否则执行步骤1105?1107 ;
[0163]步骤1104,终止定时器Tl和T2,并确定节点A和节点B之间链路故障;
[0164]步骤1105,在T2结束时,向其邻居节点B、C、D广播建树消息,建立诊断树;
[0165]步骤1106,接收到来自邻居节点上报的诊断消息,对其进行融合后得出诊断结果,在至少有一个邻居节点表明与节点B间链路正常时,诊断A和B之间的故障为链路故障,否则诊断为节点B故障。
[0166]步骤1107,在没有上报过上述诊断结果时,向网关节点上报所述诊断结果。
[0167]在节点C、D、E侧
[0168]图12是本实施例中节点C、D、E侧的故障诊断方法流程图,如图12所示,该方法包括:
[0169]步骤1201,节点C、D、E接收到诊断消息;
[0170]步骤1202,判断该诊断消息是存活消息还是建树消息,在判断结果为存活消息时,执行步骤1203?1204,否则执行步骤1205?1207 ;
[0171 ] 在该步骤中,节点C和D是直接接收节点A广播的诊断消息,节点E是接收经过节点D转发的诊断消息。
[0172]步骤1203,节点C、D、E判断存活消息中的被怀疑节点B是否是自身的邻居节点,在判断结果为是时,执行步骤1204,否则结束操作;
[0173]在该步骤中,节点C和E判断节点B是自身的邻居节点,则继续执行步骤1204,节点D判断节点B不是自身的邻居节点,则结束操作。
[0174]步骤1204,节点C或节点E向节点B单播转发该存活消息;
[0175]步骤1205,节点C、D、E加入诊断树,记录包含在建树消息中的根节点A、被怀疑节点B和诊断树父节点信息D ;
[0176]步骤1206,节点C、D、E广播转发该建树消息;
[0177]步骤1207,分别向诊断树父节点或根节点发送与被怀疑节点B间的状态。
[0178]在节点B侧
[0179]图13是本实施例中节点B侧的故障诊断方法流程图,如图13所示,该方法包括:
[0180]步骤1301,节点B接收到节点C单播转发的存活消息,该存活消息以节点A为存活节点,节点B为被怀疑节点;
[0181]步骤1302,节点B判断自身是否启动了对节点A的故障诊断,在判断结果为是时执行步骤1305,否则执行步骤1303?1304 ;
[0182]步骤1303,将该存活消息存储至节点B本地的存活消息表中;
[0183]在该步骤中,如果节点B之后启动针对节点A的诊断时,可以通过查询存活消息表中是否存储过该存活消息,如果存在则可以直接执行步骤1305。
[0184]步骤1304,广播以节点B为存活节点、以节点A为被怀疑节点的存活消息,并结束操作;
[0185]步骤1305,在节点B已经启动诊断节点A的诊断,且没有超过第三预定时间的情况下,确定节点B和节点A之间链路故障,在没有上报过上述诊断结果时,向网关节点上报所述诊断结果。
[0186]在本实施例中,节点A侧的实施方式可参照实施例1,节点C、D、E侧的实施方式可参照实施例2,节点B侧的实施方式可参考实施例3,此处不再重复。
[0187]通过本实施例的故障诊断方法,以基于被动侦听的方法对链路故障进行筛选,当该方法无法准确判定链路故障时,再启动基于诊断树的方法进一步准确诊断,因此能够在保障故障诊断准确性的前提下尽可能降低诊断开销。
[0188]本发明实施例还提供一种计算机可读程序,其中当在节点中执行所述程序时,所述程序使得计算机在所述节点中执行如上面实施例1或实施例2或实施例3或实施例4所述的故障诊断方法。
[0189]本发明实施例还提供一种存储有计算机可读程序的存储介质,其中所述计算机可读程序使得计算机在节点中执行上面实施例1或实施例2或实施例3或实施例4所述的故障诊断方法。
[0190]以上参照附图描述了本发明的优选实施方式。这些实施方式的许多特征和优点根据该详细的说明书是清楚的,因此所附权利要求旨在覆盖这些实施方式的落入其真实精神和范围内的所有这些特征和优点。此外,由于本领域的技术人员容易想到很多修改和改变,因此不是要将本发明的实施方式限于所例示和描述的精确结构和操作,而是可以涵盖落入其范围内的所有合适修改和等同物。
[0191]应当理解,本发明的各部分可以用硬件、软件、固件或者它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可以用本领域共知的下列技术中的任一项或者他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
[0192]关于包括以上多个实施例的
当前第4页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1