一种局域网即时通信网络节点异常离线的处理方法及系统转让专利

申请号 : CN201910848760.0

文献号 : CN110460500B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 张华胡康桥

申请人 : 核芯互联科技(青岛)有限公司

摘要 :

本发明实施例公开了一种局域网即时通信网络节点异常离线的处理方法、系统及设备,包括:在本地建立实时在线列表和异常离线列表;获知实时在线列表中存在异常离线的网络节点的信息;将所述异常离线的网络节点从本地的实时在线列表中删除,并将所述异常离线的网络节点加入本地的异常离线列表当中;向实时在线列表中的其他网络节点发布预警广播,在预警广播中公告所述异常离线的网络节点;接收实时在线列表中其他网络节点发布的预警广播。与现有技术相比,本发明能够发现即时通信网络节点异常离线的情况,并把离线情况广播给其他参与即时通信的网络节点,避免广播风暴,减少流量开销和网络功耗。

权利要求 :

1.一种局域网即时通信网络节点异常离线的处理方法,包括:

在本地建立实时在线列表和异常离线列表;

获知实时在线列表中存在异常离线的网络节点的信息,具体包括:在与本地的实时在线列表中的其他各个网络节点之间进行即时通信业务时,如果与其中某个网络节点的之间的即时通信业务往来失败,则获知所述其中某个网络节点为异常离线的网络节点及其信息;

向实时在线列表中的其他网络节点发布预警广播,在预警广播中公告所述异常离线的网络节点的信息;

接收实时在线列表中其他网络节点发布的预警广播;

通过预警广播的公告内容获知实时在线列表中存在的异常离线的网络节点的信息;

将所述异常离线的网络节点的信息从本地的实时在线列表中删除,并将所述异常离线的网络节点的信息加入本地的异常离线列表当中。

2.根据权利要求1所述的局域网即时通信网络节点异常离线的处理方法,其特征在于,所述方法还包括定时单播询问所述异常离线列表中的网络节点,如果获得应答,则将应答的网络节点的信息从异常离线列表中删除并添加至实时在线列表,恢复其即时通信的业务。

3.根据权利要求1所述的局域网即时通信网络节点异常离线的处理方法,其特征在于,所述实时在线列表用于记录所有在线的参与即时通信的网络节点的节点名称、节点号码和节点IP地址。

4.根据权利要求1所述的局域网即时通信网络节点异常离线的处理方法,其特征在于,所述异常离线列表用于记录所有异常离线的网络节点的节点名称、节点号码和节点IP地址。

5.一种局域网即时通信网络节点异常离线的处理系统,其特征在于,包括建立列表模块、获知异常离线的网络节点模块、发布广播模块、列表更新模块;

所述建立列表模块,用于在本地建立实时在线列表和异常离线列表;

所述获知异常离线的网络节点模块,用于获知实时在线列表中存在异常离线的网络节点的信息,具体包括:在与本地的实时在线列表中的其他各个网络节点之间进行即时通信业务时,如果与其中某个网络节点的之间的即时通信业务往来失败,则获知所述其中某个网络节点为异常离线的网络节点及其信息;

所述发布广播模块,用于向实时在线列表中的其他网络节点发布预警广播,在预警广播中公告异常离线的网络节点的信息;

所述获知异常离线的网络节点模块还用于接收实时在线列表中其他网络节点发布的预警广播;通过预警广播的公告内容获知实时在线列表中存在的异常离线的网络节点的信息;

所述列表更新模块,用于将所述异常离线的网络节点的信息从实时在线列表中删除,并将所述异常离线的网络节点的信息加入异常离线列表当中。

6.一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1-4中任一项所述的方法。

7.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序当被处理器执行时使所述处理器执行权利要求1-4中任一项所述的方法。

说明书 :

一种局域网即时通信网络节点异常离线的处理方法及系统

技术领域

[0001] 本发明涉及局域网即时通信技术领域,具体涉及一种局域网即时通信网络节点异常离线的处理方法及系统。

背景技术

[0002] 如图1所示的局域网中,每一个参与即时通信的网络节点在其本地都要建立并保存一个列表,如表1,这个列表中记录了当前网络上参与即时通信的网络节点的情况:
[0003] 表1
[0004] 节点名称 节点号码 节点IP地址Test1 1 192.168.0.1
Test2 2 192.168.0.2
Test3 3 192.168.0.3
Test4 4 192.168.0.4
Test5 5 192.168.0.5
Test6 6 192.168.0.6
… … …
[0005] 假如网络节点在其本地没有这个列表,那么一个参与即时通信的网络节点每次通信之前都要做一次广播设备发现,这是非常低效耗费流量的做法,是不宜采用的。
[0006] 但即使每个网络节点在本地都存有一个记录参与即时通信业务的网络节点的本地列表,但也会存在一个问题:表格记录的信息和当前的网络状况是否实时同步的问题。也就是网络状况的任何一点变动是否能够实时反应到每个参与即时通信的网络节点的本地列表上,比如有网络节点退出,有新的网络节点加入等等。
[0007] 当所述即时通信网络中的一个网络节点异常退出时,如号码为06,名称为Test6的网络节点的电源线突然被拔掉了,这个时候节点Test6无法通知其他网络节点,现有技术中一般会采用如下三种方式进行处理:
[0008] 方式一、每个网络节点定时广播自己的存在,其他参与即时通信业务往来的网络节点定时接收;如果某个网络节点超过一定时间没收到其他网络节点的存在广播,则说明所述其他网络节点异常离线了,接收广播的网络节点在本地列表中将这个异常离线的网络节点删除。
[0009] 但是方式一存在两个弱点:
[0010] 1、会导致出现广播风暴,这种方式由于每个参与即时通信的网络节点都每隔一段时间,比如1秒,广播一次自己的存在,如果这个网络中有253个参与即时通信的网络节点,那1秒钟就出现253个广播包,并且每个参与即时通信的网络节点1秒钟要处理253个广播包,更新自己的本地定时器。这样导致整个网络的功耗非常高,效率非常低。
[0011] 2、会造成业务往来失败,由于一个参与即时通信的网络节点实际上已经离线而系统仍旧把它当成在线进行业务往来,导致即时通信业务失败。假设即时通信间隔是1秒钟,在上次通信完成后0.01秒的时候网络节点A异常离线,0.1秒的时候网络节点B要与网络节点A进行在线业务往来,这个时候网络节点A已经离线,但是B要等到1秒时才会发现这个问题。
[0012] 方式二、每个网络节点定时广播询问“请问现在有谁在网上”其他参与即时通信的网络节点应答。如果原来应答的网络节点现在不应答,则认为这个网络节点已经异常离线了,就从本地在线列表中将这个异常离线的网络节点删除。
[0013] 方式二同样会存在如方式一所述的广播风暴和业务往来失败的问题。
[0014] 方式三、不处理网络节点的异常离线状况;只要有一次网络节点与其他某个网络节点即时通信成功,那么所述其他某个网络节点就一直存在该网络节点的本地列表中,直到本次开机运行结束。在下一次开机运行时更新本地列表。网络节点的本地列表在一次开机运行中只增不减。如果某个网络节点存在本地列表中,实际上却已经离线,那么与这个离线的网络节点进行即时通信业务往来以失败结束。
[0015] 这种方式存在两个明显的弱点:
[0016] 1、用户体验不好,一个网络节点已经离线,却还存在本地在线列表中,这显然和实际网络状况不符,用户不能及时阻止因网络节点异常离线而引发的即时通信业务往来失败,降低了即时通信业务往来的成功率;
[0017] 2、当即时通信网络节点不在网络里却还存在本地在线列表中时,进行业务往来的代码可能会引起宕机。

发明内容

[0018] 为此,本发明实施例提供一种局域网即时通信网络节点异常离线的处理方法,以解决现有技术在处理参与即时通信的网络节点异常离线时导致的广播风暴的问题,同时避免因即时通信业务往来失败导致的宕机的问题。
[0019] 为了实现上述目的,本发明实施例提供如下的局域网即时通信网络节点异常离线的处理方法,包括:
[0020] 在本地建立实时在线列表和异常离线列表;
[0021] 获知实时在线列表中存在异常离线的网络节点的信息;
[0022] 将所述异常离线的网络节点的信息从本地的实时在线列表中删除,并将所述异常离线的网络节点的信息加入本地的异常离线列表当中;
[0023] 向实时在线列表中的其他网络节点发布预警广播,在预警广播中公告所述异常离线的网络节点的信息。
[0024] 进一步地,本发明实施例所述的方法还包括接收实时在线列表中其他网络节点发布的预警广播。
[0025] 进一步地,本发明实施例所述的方法还包括定时单播询问所述异常离线列表中的网络节点,如果获得的应答,则将应答的网络节点的信息从异常离线列表中删除并添加至实时在线列表,恢复其即时通信的业务。
[0026] 进一步地,所述实时在线列表用于记录所有在线的即时通信网络节点的节点名称、节点号码和节点IP地址。
[0027] 进一步地,所述异常离线列表用于记录所有异常离线的网络节点的节点名称、节点号码和节点IP地址。
[0028] 进一步地,所述获知实时在线列表中存在异常离线的网络节点的信息,具体包括:在与本地实时在线列表中的其他各个网络节点之间进行即时通信业务时,如果与其中某个网络节点的之间的即时通信业务往来失败,则所述其中某个网络节点为异常离线的网络节点。
[0029] 进一步地,所述在获知实时在线列表中存在异常离线的网络节点的信息,具体包括:通过预警广播的公告内容获知实时在线列表中存在异常离线的网络节点。
[0030] 根据本发明实施例的第二方面提供一种局域网即时通信网络节点异常离线的处理系统,包括建立列表模块、获得异常离线的网络节点模块、发布广播模块、接收广播模块、列表更新模块和接收预警广播模块;
[0031] 所述建立列表模块,用于建立实时在线列表和异常离线列表;
[0032] 所述获知异常离线的网络节点模块,用于在即时通信时获知实时在线列表中存在异常离线的网络节点的信息;
[0033] 所述列表更新模块,用于将所述异常离线的网络节点的信息从实时在线列表中删除,并将所述异常离线的网络节点的信息加入异常离线列表当中;
[0034] 所述发布广播模块,用于向实时在线列表中的其他网络节点发布预警广播,在预警广播中公告异常离线的网络节点的信息。
[0035] 根据本发明实施例的第三方面提供一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述的方法。
[0036] 根据本发明实施例的第四方面提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序当被处理器执行时使所述处理器执行上述任一项所述的方法。
[0037] 与现有技术相比,本发明实施例具有如下优点:
[0038] 1、本发明实施例所述的局域网即时通信网络节点异常离线的处理方法,能够及时发现即时通信网络节点异常离线的情况,并把离线情况广播给其他参与即时通信的网络节点,通过离线列表的方式避免与异常离线的网络节点进行业务往来;
[0039] 2、本发明实施例所述的局域网即时通信网络节点异常离线的处理方法,能够避免广播风暴的问题,减少流量开销和网络功耗;
[0040] 3、本发明实施例所述的局域网即时通信网络节点异常离线的处理方法,能够及时发现重新上线的即时通信网络节点,恢复所述网络节点正常的业务往来;
[0041] 4、本发明实施例所述的局域网即时通信网络节点异常离线的处理方法,能够使基于本发明所述方法的即时通信软件的健壮性得以大大提高。

附图说明

[0042] 为了更清楚地说明本发明的实施方式或现有技术中的技术方式,下面将对实施方式或现有技术描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是示例性的,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图引申获得其它的实施附图。
[0043] 本说明书所绘示的结构、比例、大小等,均仅用以配合说明书所揭示的内容,以供熟悉此技术的人士了解与阅读,并非用以限定本发明可实施的限定条件,故不具技术上的实质意义,任何结构的修饰、比例关系的改变或大小的调整,在不影响本发明所能产生的功效及所能达成的目的下,均应仍落在本发明所揭示的技术内容能涵盖的范围内。
[0044] 图1为现有技术的局域网示意图;
[0045] 图2为本发明实施例的局域网中参与即时通信的网络节点的示意图,其中深色的节点代表参与即时通信的网络节点;
[0046] 图3为本发明实施例的局域网出现异常离线的网络节点后的示意图,其中深色的节点代表参与即时通信的网络节点。

具体实施方式

[0047] 以下由特定的具体实施例说明本发明的实施方式,熟悉此技术的人士可由本说明书所揭露的内容轻易地了解本发明的其他优点及功效,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0048] 本发明实施例提出一种局域网即时通信网络节点异常离线的处理方法,具体步骤包括:
[0049] 步骤1)每个参与即时通信业务的网络节点在其本地建立两个列表:一个是实时在线列表如表2所示,一个是异常离线列表如表所示。所述实时在线列表用于记录所有在线的参与即时通信业务的网络节点的节点名称、节点号码和节点IP地址。所述异常离线列表用于记录所有异常离线的网络节点的节点名称、节点号码和节点IP地址。所述异常离线的网络节点不参与即时通信业务。
[0050] 表2实时在线列表:
[0051]节点名称 节点号码 节点IP地址
Test1 1 192.168.0.1
Test2 2 192.168.0.2
Test3 3 192.168.0.3
Test4 4 192.168.0.4
Test5 5 192.168.0.5
Test6 6 192.168.0.6
… … …
[0052] 表3异常离线列表
[0053]节点名称 节点号码 节点IP地址
     
[0054] 步骤2)实时在线列表中的各个网络节点之间正常进行即时通信的业务往来,比如聊天,传文件。如图2所示,其中深色的节点代表参与即时通信业务的在线的网络节点。如果一个网络节点发现与其本地实时在线列表中的其他某个网络节点的即时通信业务往来失败,即认为所述其他某个网络节点已经异常离线了,如图3所示。比如参与即时通信的网络节点Test1在和网络节点Test6进行业务往来时失败,网络节点Test1将所述异常离线的网络节点Test6从本地的实时在线列表中删除,并将所述异常离线的网络节点Test6加入异常离线列表当中;网络节点Test1向更新后的实时在线列表中的各个网络节点发布预警广播,在广播中公告网络节点Test6异常离线,公告信息中包括所述异常离线的网络节点Test6的节点名称、节点号码和节点IP地址,以便在线的其他网络节点能够获知异常离线的网络节点Test6的信息并更新实时在线列表和异常离线列表。
[0055] 进一步地,网络节点Test1也可以通过接收其他网络节点发布的预警广播,根据预警广播中的公告内容获知异常离线的网络Test6的信息,更新其本地的实时在线列表和异常离线列表。
[0056] 步骤3)收到预警广播的各个参与即时通信业务的网络节点更新本地的实时在线列表和离线列表,如表4和表5所示:
[0057] 表4更新的实时在线列表
[0058]节点名称 节点号码 节点IP地址
Test1 1 192.168.0.1
Test2 2 192.168.0.2
Test3 3 192.168.0.3
Test4 4 192.168.0.4
Test5 5 192.168.0.5
… … …
… … …
[0059] 表5更新的异常离线列表
[0060]节点名称 节点号码 节点IP地址
Test6 6 192.168.0.06
… … …
[0061] 被列入异常离线列表中的网络节点Test6,因为不出现在实时在线列表里,无法进行正常业务往来。
[0062] 通过步骤3)及时发现参与即时通信的网络节点的异常离线的情况,把离线情况广播给其他参与即时通信的网络节点,更新实时在线列表和异常离线列表避免与异常离线的网络节点进行业务往来,从而能够避免广播风暴,减少流量开销和网络功耗;并减少即时通信业务往来失败引起的宕机问题,降低即时通信业务往来的失败率;
[0063] 步骤4)实时在线列表中的每个网络节点定时单播询问其本地的异常离线列表中的各个网络节点,看它是否能够应答。如果获得应答则将这个即时通信网络节点从其本地的异常离线列表移至实时在线列表,询问间隔可以是1秒,5秒,10秒等任意间隔,具体实现视效果而定。
[0064] 通过步骤4)定时单播询问本地的异常离线列表中的各个网络节点的在线情况,能够及时发现重新上线的网络节点,恢复所述重新上线的网络节点正常的即时通信业务往来;
[0065] 采用本发明上述实施例所述方法能够使即时通信软件的健壮性大大提高。
[0066] 本发明实施例的第二方面提供了一种局域网即时通信网络节点异常离线的处理系统,包括建立列表模块、获知异常离线的网络节点模块、列表更新模块和发布广播模块;
[0067] 所述建立列表模块,用于每个即时通信网络节点在其本地建立实时在线列表和异常离线列表;
[0068] 所述获知异常离线的网络节点模块,用于每个网络节点获知实时在线列表中存在异常离线的网络节点的信息;
[0069] 所述列表更新模块,用于每个网络节点将所述异常离线的网络节点的信息从实时在线列表中删除,并将所述异常离线的网络节点的信息加入异常离线列表当中;
[0070] 所述发布广播模块,用于每个网络节点向实时在线列表中的其他网络节点发布预警广播,在预警广播中公告异常离线的网络节点的信息;
[0071] 所述接收预警广播模块,用于每个网络节点接收实时在线列表中其他网络节点发布的预警广播。
[0072] 根据本发明实施例的第三方面提供一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述中任一项所述的方法。
[0073] 根据本发明实施例的第四方面提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序当被处理器执行时使所述处理器执行上述中任一项所述的方法。
[0074] 虽然,上文中已经用一般性说明及具体实施例对本发明作了详尽的描述,但在本发明基础上,可以对之作一些修改或改进,这对本领域技术人员而言是显而易见的。因此,在不偏离本发明精神的基础上所做的这些修改或改进,均属于本发明要求保护的范围。