一种发送心跳消息的方法、系统、终端及网络设备的制作方法

文档序号:7773814阅读:302来源:国知局
一种发送心跳消息的方法、系统、终端及网络设备的制作方法
【专利摘要】本发明公开了一种发送心跳消息的方法、系统、终端及网络设备;所述方法包括:终端提取在预定时间长度内待发送的具有相同作用的多个心跳消息中任一个的载荷,提取所述多个心跳消息的头部信息,将所述头部信息前后相连成一个整合头部,加上所述载荷形成整合心跳包;将整合心跳包发送给网络设备;网络设备将整合心跳包的头部拆分为多个单独的头部信息,将整合心跳包的载荷复制成多个,分别将每个载荷和一个拆分出的头部信息组成一个心跳消息;分别根据各心跳消息的头部信息中的地址,将各心跳消息发送给相应的应用程序服务器。本发明能避免频繁地发送心跳消息,降低心跳消息对网络的压力。
【专利说明】一种发送心跳消息的方法、系统、终端及网络设备
【技术领域】
[0001]本发明涉及网络领域,尤其涉及一种发送心跳消息的方法、系统、终端及网络设备。
【背景技术】
[0002]随着移动互联网的飞速发展,移动终端的应用程序数量也快速增长。当前智能手机上App应用种类繁多,用户群非常庞大,很多程序的下载量达到数千万。大多数应用程序都有一些常规性的小流量心跳消息需要发送,比如腾讯QQ的在线、离线状态消息等,这些消息流量很小,但是发送十分频繁。虽然类似的消息种类很多,但是大多数消息具有相似性,也就是说不同应用程序都会发送类似的心跳消息。例如,许多应用程序为了保持用户常在线,常需要发送保持在线的心跳消息,告知应用程序服务器客户端的在线状态。无论是哪种目的的心跳消息,移动终端每次发送时,都需要竞争申请无线资源,争用无线信道。
[0003]由于心跳消息单次传输数据量小,发送频率高,并且多种应用程序都有各自的心跳发送需求,因此,当智能终端上安装了多种具有心跳发送需求的应用程序后,为同一目的,不同的应用程序将分别发送心跳消息,频繁申请无线信道争用宝贵的无线信道,这势必会占用很多信令资源和数据资源,极有可能造成信令风暴,给网络造成了巨大的负担,甚至影响了正常的网络通信服务。

【发明内容】

[0004]本发明要解决的技术问题是如何避免频繁地发送心跳消息,降低心跳消息对网络的压力。
[0005]为了解决上述问题,本发明提供了一种发送心跳消息的方法,包括:
[0006]终端提取在预定时间长度内待发送的具有相同作用的多个心跳消息中任一个的载荷;
[0007]所述终端提取所述多个心跳消息的头部信息,将所述头部信息前后相连成一个整合头部,加上所述载荷形成整合心跳包;
[0008]所述终端将所述整合心跳包发送给网络设备;
[0009]所述网络设备将所述整合心跳包的头部拆分为多个单独的头部信息;
[0010]所述网络设备将所述整合心跳包的载荷复制成多个,分别将每个载荷和一个拆分出的头部信息组成一个心跳消息;
[0011]所述网络设备分别根据各心跳消息的头部信息中的地址,将各心跳消息发送给相应的应用程序服务器。
[0012]可选地,所述终端将所述整合心跳包发送给网络设备的步骤前还包括:
[0013]所述终端在所述整合心跳包的头部中加入预定标识;
[0014]所述网络设备将所述整合心跳包的头部拆分为多个单独的头部信息的步骤前还包括:CN 103532784 A



2/9页
[0015]所述网络设备判断从所述终端接收到的数据包的头部是否包含所述预定标识;如 果包含,则进行所述将所述整合心跳包的头部拆分为多个单独的头部信息的步骤。
[0016]可选地,终端提取在预定时间长度内待发送的具有相同作用的多个心跳消息中任 一个的载荷的步骤前还包括:
[0017]当所述终端获知一个应用程序需要发送心跳消息时,判断其它应用程序是否需要 在预定时间长度内发送相同作用的心跳消息,如果需要,则进行所述终端提取在预定时间 长度内待发送的具有相同作用的多个心跳消息中任一个的载荷的步骤。
[0018]本发明还提供了一种发送心跳消息的方法,包括:
[0019]终端提取在预定时间长度内待发送的具有相同作用的多个心跳消息中任一个的 载荷;
[0020]所述终端提取所述多个心跳消息的头部信息,将所述头部信息前后相连成一个整 合头部,加上所述载荷形成整合心跳包;
[0021]所述终端将所述整合心跳包发送给网络设备。
[0022]可选地,终端在预定时间长度内提取待发送的具有相同作用的多个心跳消息中任 一个的载荷的步骤前还包括:
[0023]当所述终端获知一个应用程序需要发送心跳消息时,判断其它应用程序是否需要 在预定时间长度内发送相同作用的心跳消息,如果需要,则进行所述终端提取在预定时间 长度内待发送的具有相同作用的多个心跳消息中任一个的载荷的步骤。
[0024]本发明还提供了一种发送心跳消息的方法,包括:
[0025]网络设备将整合心跳包的头部拆分为多个单独的头部信息;
[0026]所述网络设备将所述整合心跳包的载荷复制成多个,分别将每个载荷和一个拆分 出的头部信息组成一个心跳消息;
[0027]所述网络设备分别根据各心跳消息的头部信息中的地址,将各心跳消息发送给相 应的应用程序服务器。
[0028]可选地,所述网络设备将所述整合心跳包的头部拆分为多个单独的头部信息的步 骤前还包括:
[0029]所述网络设备判断从所述终端接收到的数据包的头部是否包含所述预定标识;如 果包含,则进行所述将所述整合心跳包的头部拆分为多个单独的头部信息的步骤。
[0030]本发明还提供了一种发送心跳消息的系统,包括:终端和网络设备;
[0031]所述终端包括:
[0032]采集模块,用于提取在预定时间长度内待发送的具有相同作用的多个心跳消息中 任一个的载荷;
[0033]合并模块,用于提取所述多个心跳消息的头部信息,将所述头部信息前后相连成 一个整合头部,加上所述载荷形成整合心跳包;
[0034]发送模块,用于将所述整合心跳包发送给网络设备;
[0035]所述网络设备包括:
[0036]拆分模块,用于将所述整合心跳包的头部拆分为多个单独的头部信息;
[0037]重组模块,用于将所述整合心跳包的载荷复制成多个,分别将每个载荷和一个拆 分出的头部信息组成一个心跳消息;
6[0038]消息发送模块,用于分别根据各心跳消息的头部信息中的地址,将各心跳消息发送给相应的应用程序服务器。
[0039]可选地,所述发送模块还用于在所述整合心跳包的头部中加入预定标识;
[0040]所述拆分模块还用于判断从所述终端接收到的数据包的头部是否包含所述预定标识;如果包含,则进行所述将所述整合心跳包的头部拆分为多个单独的头部信息的操作。
[0041]可选地,所述采集模块还用于当收到一个应用程序发送来的心跳消息时,判断其它应用程序是否需要在预定时间长度内发送相同作用的心跳消息,从需要发送的应用程序接收心跳消息并转发给所述合并模块。
[0042]本发明还提供了一种终端,包括:
[0043]采集模块,用于提取在预定时间长度内待发送的具有相同作用的多个心跳消息中任一个的载荷;
[0044]合并模块,用于提取所述多个心跳消息的头部信息,将所述头部信息前后相连成一个整合头部,加上所述载荷形成整合心跳包;
[0045]发送模块,用于将所述整合心跳包发送给网络设备。
[0046]可选地,所述采集模块还用于当收到一个应用程序发送来的心跳消息时,判断其它应用程序是否需要在预定时间长度内发送相同作用的心跳消息,从需要发送的应用程序接收心跳消息并转发给所述合并模块。
[0047]本发明还提供了一种网络设备,包括:
[0048]拆分模块,用于将所述整合心跳包的头部拆分为多个单独的头部信息;
[0049]重组模块,用于将所述整合心跳包的载荷复制成多个,分别将每个载荷和一个拆分出的头部信息组成一个心跳消息;
[0050]消息发送模块,用于分别根据各心跳消息的头部信息中的地址,将各心跳消息发送给相应的应用程序服务器。
[0051]可选地,所述拆分模块还用于判断从所述终端接收到的数据包的头部是否包含所述预定标识;如果包含,则进行所述将所述整合心跳包的头部拆分为多个单独的头部信息的操作。
[0052]本发明的至少一个实施例通过压缩不同应用程序相同作用的心跳消息,实现了终端上不同应用程序在一段时间内发送同一作用的心跳消息时,终端只需要发送一个心跳包,争用一次无线信道;能够减少移动终端使用无线资源的频率,提高了发送效率,减小终端发送心跳消息申请无线信道的次数,降低发送心跳包的数据量,减少争用无线信道的频率,避免网络拥塞和信令风暴的发生。本发明的又一个实施例通过与终端上各应用程序的交互,将发送时间邻近的心跳消息合并,进一步提高了发送心跳消息的效率。
【专利附图】

【附图说明】
[0053]图1为实施例一的发送心跳消息的方法的流程示意图;
[0054]图2为整合心跳包的示意图;
[0055]图3为实施例四的例子中合并心跳消息的流程图;
[0056]图4为实施例四的例子中拆分心跳消息的流程图;
[0057]图5为实施例五中终端的示意框图。【具体实施方式】
[0058]下面将结合附图及实施例对本发明的技术方案进行更详细的说明。
[0059]需要说明的是,如果不冲突,本发明实施例以及实施例中的各个特征可以相互结合,均在本发明的保护范围之内。另外,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
[0060]实施例一、一种发送心跳消息的方法,如图1所示,包括:
[0061]101、终端提取在预定时间长度内待发送的具有相同作用的多个心跳消息中任一个的载荷;
[0062]102、所述终端提取所述多个心跳消息的头部信息,将所述头部信息前后相连成一个整合头部,加上所述载荷形成整合心跳包;
[0063]103、所述终端将所述整合心跳包发送给网络设备;
[0064]104、所述网络设备将所述整合心跳包的头部拆分为多个单独的头部信息;
[0065]105、所述网络设备将所述整合心跳包的载荷复制成多个,分别将每个载荷和一个拆分出的头部信息组成一个心跳消息;
[0066]106、所述网络设备分别根据各心跳消息的头部信息中的地址,将各心跳消息发送给相应的应用程序服务器。
[0067]本实施例中,具有相同作用的多个心跳消息是指这多个心跳消息的载荷内容相同,或者是指这多个心跳消息中用于指示本心跳消息作用的标识相同,该标识可以位于心跳消息的头部信息或载荷中。
[0068]所述网络设备既可以复用网络中已有的服务器等设备,也可以采用一个新增的设备。
[0069]所述预定时间长度可以根据不同网络和应用的具体情况自行设置,对于不同作用的心跳消息,预定时间长度也可以不同;比如某一个应用程序服务器5分钟收不到用于说明客户端在线的心跳消息就会判断客户端不在线,而另一个应用程序服务器20分钟收不到心跳消息用于说明客户端在线的心跳消息才会判断客户端不在线,此时可以将预定时间长度设为分钟级,比如I?3分钟。由于很多的应用发送心跳消息的周期很短(比如30秒等),而且心跳消息的作用的类型并不多,因此在预定时间长度中非常有可能存在多个待发送且作用相同的心跳消息。
[0070]本实施例考虑到大多数应用程序发送的心跳消息往往作用类似,如果每个应用程序都独自发送相同的内容,势必会多次重复发送具有相同作用的心跳消息,造成无线资源利用率低且对网络的冲击较大。
[0071]有鉴于此,并且考虑到稍许推迟或提早发送心跳消息给应用程序服务器并不会产生实质影响,本实施例在终端将预定时间长度内具有相同作用的不同应用程序的心跳消息进行压缩合并,只保留有差异的头部信息和一份心跳消息的载荷,压缩合并后作为一个整合心跳包进行发送,由网络设备负责将整合心跳包解压拆分,为每个单独的头部独自形成一个新的心跳包的头部,再将合并包中的载荷部分进行复制,形成几个含有相同载荷内容、不同头部信息的心跳包,然后根据头部信息中的地址信息,分别发送给各个目的应用程序服务器。[0072]本实施例中虽然所述整合心跳包的头部变长了,但是相比较每个应用程序单独发送心跳消息,实现相同作用的不同应用程序的心跳消息只会被发送一次,只会争用一次无线信道,无线资源得到了很好的利用,减小终端发送心跳消息申请无线信道的次数,降低发送心跳包的数据量,减少争用无线信道的频率,避免网络拥塞和信令风暴的发生。
[0073]本实施例的一种实施方式中,所述步骤103前还可以包括:
[0074]所述终端在所述整合心跳包的头部中加入预定标识;
[0075]所述步骤104前还可以包括:
[0076]所述网络设备判断从所述终端接收到的数据包的头部是否包含所述预定标识;如果包含,则进行所述将所述整合心跳包的头部拆分为多个单独的头部信息的步骤。
[0077]所述预定标识可以包括两种状态,分别表示合并多个心跳消息的整合心跳包、及只包括独立心跳消息的心跳包。
[0078]在不加入预定标识的方案中,所述网络设备也可以通过判断发来的心跳包头部中具有几个独立的目的地址信息,从而判断所收到的心跳包是否为整合心跳包。其中,每个头部信息可以分别包含起始、终止位置的标志位,用于供所述网络设备拆分所述整合心跳包。 如果心跳包中只有一个独立的心跳消息,则网络设备直接将该心跳包发送至相应的应用程序服务器。
[0079]本实施方式的一种备选方案中,所述预定标识可以但不限于为该整合心跳包所合并的心跳消息的个数,也就相当于该整合心跳包中所包含的所述头部信息的个数。
[0080]本备选方案中,所述整合心跳包如图2所示,包括整合头部和载荷;所述整合头部包括合并数量(所合并的心跳消息的个数),以及分属于不同心跳消息的第一头部信息、第
二头部信息、第三头部信息……。
[0081]本实施例的一种实施方式中,所述步骤101前还可以包括:
[0082]当所述终端获知一个应用程序需要发送心跳消息时,判断其它应用程序是否需要在所述预定时间长度内发送具有相同作用的心跳消息,如果需要,则进行步骤101。如果不需要,那么这个心跳消息将被单独发送。
[0083]本实施方式中,可以在所述终端中设置特定的模块统计、记录本终端上各应用程序发送心跳消息的时刻及作用,根据该记录获知是否有应用程序将在所述预定时间长度内发送具有相同作用的心跳消息。也可以在终端中设置特定的模块询问本终端上各应用程序,从而获知是否有应用程序将在所述预定时间长度内发送具有相同作用的心跳消息;比如在询问时携带所述预定时间长度和/或作用(载荷内容或表示作用的标识),由各应用程序自行判断后反馈判断结果给该特定的模块;再比如询问各应用程序是否要发送心跳消息,应用程序反馈将要发送心跳消息的时刻及作用,由该特定的模块进行判断。在其它实施方式中,也可以直接根据对各应用程序心跳消息的记录,获知在每个预定时间长度中将会发送的心跳消息,直接对其中具有相同作用的心跳消息进行合并和发送。比如预定时间长度是3分钟,由于心跳消息是周期性发送的,因此根据对各应用程序心跳消息作用及发送时刻的记录,可以得知各长度为3分钟的时间段中会有哪些应用程序发送心跳消息,还可以根据该记录得知其中哪些心跳消息的作用相同。
[0084]实施例二、一种发送心跳消息的方法,包括:
[0085]201、终端提取在预定时间长度内待发送的具有相同作用的多个心跳消息中任一CN 103532784 A



6/9页
个的载荷;
[0086]202、所述终端提取所述多个心跳消息的头部信息,将所述头部信息前后相连成一 个整合头部,加上所述载荷形成整合心跳包;
[0087]203、所述终端将所述整合心跳包发送给网络设备;
[0088]本实施例的一种实施方式中,所述步骤201前还可以包括:
[0089]当所述终端获知一个应用程序需要发送心跳消息时,判断其它应用程序是否需要 在预定时间长度内发送相同作用的心跳消息,如果需要,则进行步骤201。
[0090]如果不需要,那么这个心跳消息将被单独发送。
[0091]本实施例的一种实施方式中,所述步骤203前还可以包括:
[0092]所述终端在所述整合心跳包的头部中加入预定标识。
[0093]本实施方式的一种备选方案中,所述预定标识可以但不限于为该整合心跳包所合 并的心跳消息的个数,也就相当于该整合心跳包中所包含的所述头部信息的个数。
[0094]实施例三、一种接收心跳消息的方法,包括:
[0095]网络设备将整合心跳包的头部拆分为多个单独的头部信息;
[0096]所述网络设备将所述整合心跳包的载荷复制成多个,分别将每个载荷和一个拆分 出的头部信息组成一个心跳消息;
[0097]所述网络设备分别根据各心跳消息的头部信息中的地址,将各心跳消息发送给相 应的应用程序服务器。
[0098]本实施例的一种实施方式中,所述网络设备将所述整合心跳包的头部拆分为多个 单独的头部信息的步骤前还可以包括:
[0099]所述网络设备判断从所述终端接收到的数据包的头部是否包含所述预定标识;如 果包含,则进行所述将所述整合心跳包的头部拆分为多个单独的头部信息的步骤。
[0100]实施例四、一种发送心跳消息的系统,包括:
[0101]终纟而和网络设备;
[0102]所述终端包括:
[0103]采集模块,用于提取在预定时间长度内待发送的具有相同作用的多个心跳消息中 任一个心跳消息的载荷;
[0104]合并模块,用于提取所述多个心跳消息的头部信息,将所述头部信息前后相连成 一个整合头部,加上所述载荷形成整合心跳包;
[0105]发送模块,用于将所述整合心跳包发送给网络设备;
[0106]所述网络设备包括:
[0107]拆分模块,用于将所述整合心跳包的头部拆分为多个单独的头部信息;
[0108]重组模块,用于将所述整合心跳包的载荷复制成多个,分别将每个载荷和一个拆 分出的头部信息组成一个心跳消息;
[0109]消息发送模块,用于分别根据各心跳消息的头部信息中的地址,将各心跳消息发 送给相应的应用程序服务器。
[0110]本实施例的一种实施方式中,所述发送模块还可以用于在所述整合心跳包的头部 中加入预定标识;
[0111]所述拆分模块还可以用于判断从所述终端接收到的数据包的头部是否包含所述
10预定标识;如果包含,则进行所述将所述整合心跳包的头部拆分为多个单独的头部信息的操作。
[0112]本实施方式的一种备选方案中,所述预定标识可以但不限于为该整合心跳包所合并的心跳消息的个数,也就相当于该整合心跳包中所包含的所述头部信息的个数。
[0113]本实施例的一种实施方式中,所述采集模块还可以用于当收到一个应用程序发送来的心跳消息时,判断其它应用程序是否需要在预定时间长度内发送相同作用的心跳消息,采集模块可以通过询问各应用程序判断,也可以通过统计、记录各应用程序的心跳消息的发送时刻和作用进行判断;采集模块从需要发送的应用程序接收心跳消息并转发给所述合并1吴块。
[0114]如果其它应用程序均不需要发送类似的心跳消息,那么这个心跳消息将被单独发送。网络设备在判断其为一个独立的心跳消息,则直接发送至对应应用程序服务器。省去了其中合并、拆分心跳包的过程。
[0115]本实施方式中所述采集模块负责对需要在预定时间长度内发送相同作用的心跳消息的应用程序进行统计,合并模块整合它们将要发送的心跳消息,只保留有差异的头部信息,载荷部分只保留一份(作用相同的心跳消息的载荷具有相同内容),实现消息的压缩、合并发送。
[0116]下面用一个具体的例子进行说明,假设该例子中提及的心跳消息的作用是说明应用程序客户端在线,是以保持常在线状态为目的而发送的心跳消息。其它类似的具有常规性功能的心跳消息的整合、拆分过程相同。
[0117]该例子中心跳消息的整合过程如图3所示,包括步骤301?307:
[0118]301、某应用程序发送客户端在线状态的心跳消息到所述采集模块。
[0119]302、采集模块阻止其单独发送心跳消息,把该心跳消息的头部信息和载荷分开,查询载荷的作用,发现是为了保持常在线状态的心跳消息。
[0120]303、为了提高心跳消息发送效率,询问移动终端上正在运行或后台运行的其它应用程序,是否需要在预定时间长度内发送相同作用(本例中即保持在线状态)的心跳消息,假设其它(假设为两个)两个应用程序回应,需要在预定时间长度内发送相同作用的心跳消息,剩余应用程序则回复不需要发送。由于存在需要在预定时间长度内发送相同作用的移动终端,因此进行步骤304,否则单独发送该心跳消息。
[0121]304、需要在预定时间长度内发送心跳消息的那两个应用程序将发送自己保持在线状态的心跳消息到采集模块,头部可能包含了应用程序的标识以及对应的应用程序服务器的地址信息。
[0122]305、合并模块收集到了这两个应用程序发来的心跳消息,将头部信息与载荷分离,把两个应用程序的头部信息与第一个应用程序心跳消息的头部信息组合,形成一个含有三个应用程序的头部信息的新的整合头部,至此产生了一个载荷为空的、具有较长头部的整合心跳包。
[0123]306、合并模块再将采集模块提取出的第一个应用程序(或步骤304中两个应用程序中的任一个)发来的心跳消息的载荷填入所述整合心跳包;所述整合心跳包包含了一个较长的头部和唯一的载荷。所述头部中每一部分分别标识了每个应用程序的标识和对应的应用程序服务器的地址信息。CN 103532784 A



8/9页
[0124]307、所述整合心跳包将送至发送模块,由发送模块争用无线信道,将所述整合心 跳包发送出去;还可以在所述整合心跳包的头部中加入预定标识,以表示该数据包为整合 心跳包。
[0125]该例子中心跳消息的拆分过程如图4所示,包括步骤401?405 :
[0126]401、网络设备收到心跳包。
[0127]402、首先判断心跳包中的标识信息,以判断该心跳包是否为一个整合心跳包,如 果是则进行步骤403 ;如果不是则直接进行步骤405。
[0128]403、根据不同应用程序的标识将头部拆分,分成几个单独的头部信息,各头部信 息分别作为一个载荷为空的心跳包。
[0129]404、再将所述整合心跳包的载荷部分进行复制,分别放入每个单独的心跳包的载 荷中,形成几个内容、作用相同,目的地址不同的心跳包。
[0130]405、将心跳包根据头部信息发往相应的应用程序服务器。实现了应用程序为了保 持常在线状态而发送心跳消息的目的。
[0131]实施例五、一种终端,如图5所示,包括:
[0132]采集模块51,用于提取在预定时间长度内待发送的具有相同作用的多个心跳消息 中任一个心跳消息的载荷;
[0133]合并模块52,用于提取所述多个心跳消息的头部信息,将所述头部信息前后相连 成一个整合头部,加上所述载荷形成整合心跳包;
[0134]发送模块53,用于将所述整合心跳包发送给网络设备。
[0135]本实施例的一种实施方式中,所述采集模块51还可以用于当收到一个应用程序 发送来的心跳消息时,判断其它应用程序是否需要在预定时间长度内发送相同作用的心跳 消息,从需要发送的应用程序接收心跳消息并转发给所述合并模块。
[0136]本实施例的一种实施方式中,所述发送模块53还可以用于在所述整合心跳包的 头部中加入预定标识。
[0137]本实施方式的一种备选方案中,所述预定标识可以但不限于为该整合心跳包所合 并的心跳消息的个数,也就相当于该整合心跳包中所包含的所述头部信息的个数。
[0138]实施例六、一种网络设备,包括:
[0139]拆分模块,用于将所述整合心跳包的头部拆分为多个单独的头部信息;
[0140]重组模块,用于将所述整合心跳包的载荷复制成多个,分别将每个载荷和一个拆 分出的头部信息组成一个心跳消息;
[0141]消息发送模块,用于分别根据各心跳消息的头部信息中的地址,将各心跳消息发 送给相应的应用程序服务器。
[0142]本实施例的一种实施方式中,所述拆分模块还可以用于判断从所述终端接收到的 数据包的头部是否包含所述预定标识;如果包含,则进行所述将所述整合心跳包的头部拆 分为多个单独的头部信息的操作。
[0143]实施例四?六建立在应用程序与移动终端操作系统及采集模块、合并模块和发送 模块深度合作的基础上,应用程序应该将自己的心跳消息上报到采集模块,可以由所述采 集模块对各应用程序进行统计和记录,由所述合并模块对具有相同作用的心跳消息进行整 合并通过所述发送模块传输给所述网络设备。如果合作进一步发展,那么可以将一些常规
12性的动作,比如向服务器汇报客户端的在线状态,提供自己的地址信息,以及其它一些各应用程序均有的心跳消息,用统一的表达方式发送,例如可以统一用一种编码方式或语法表达,或可以用统一的标识来表示本心跳消息的作用,使得采集模块能够获知应用程序发送的心跳消息的具体作用,以便采集其它需要发送且具有相同作用的心跳消息的头部信息。
[0144]本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本发明不限制于任何特定形式的硬件和软件的结合。
[0145]当然,本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明的权利要求的保护范围。
【权利要求】
1.一种发送心跳消息的方法,包括:终端提取在预定时间长度内待发送的具有相同作用的多个心跳消息中任一个的载荷;所述终端提取所述多个心跳消息的头部信息,将所述头部信息前后相连成一个整合头部,加上所述载荷形成整合心跳包;所述终端将所述整合心跳包发送给网络设备; 所述网络设备将所述整合心跳包的头部拆分为多个单独的头部信息;所述网络设备将所述整合心跳包的载荷复制成多个,分别将每个载荷和一个拆分出的头部信息组成一个心跳消息;所述网络设备分别根据各心跳消息的头部信息中的地址,将各心跳消息发送给相应的应用程序服务器。
2.如权利要求1所述的方法,其特征在于,所述终端将所述整合心跳包发送给网络设备的步骤前还包括:所述终端在所述整合心跳包的头部中加入预定标识;所述网络设备将所述整合心跳包的头部拆分为多个单独的头部信息的步骤前还包括:所述网络设备判断从所述终端接收到的数据包的头部是否包含所述预定标识;如果包含,则进行所述将所述整合心跳包的头部拆分为多个单独的头部信息的步骤。
3.如权利要求1所述的方法,其特征在于,终端提取在预定时间长度内待发送的具有相同作用的多个心跳消息中任一个的载荷的步骤前还包括:当所述终端获知一个应用程序需要发送心跳消息时,判断其它应用程序是否需要在预定时间长度内发送相同作用的心跳消息,如果需要,则进行所述终端提取在预定时间长度内待发送的具有相同作用的多个心跳消息中任一个的载荷的步骤。
4.一种发送心跳消息的方法,包括:终端提取在预定时间长度内待发送的具有相同作用的多个心跳消息中任一个的载荷;所述终端提取所述多个心跳消息的头部信息,将所述头部信息前后相连成一个整合头部,加上所述载荷形成整合心跳包;所述终端将所述整合心跳包发送给网络设备。
5.如权利要求4所述的方法,其特征在于,终端在预定时间长度内提取待发送的具有相同作用的多个心跳消息中任一个的载荷的步骤前还包括:当所述终端获知一个应用程序需要发送心跳消息时,判断其它应用程序是否需要在预定时间长度内发送相同作用的心跳消息,如果需要,则进行所述终端提取在预定时间长度内待发送的具有相同作用的多个心跳消息中任一个的载荷的步骤。
6.一种发送心跳消息的方法,包括:网络设备将整合心跳包的头部拆分为多个单独的头部信息;所述网络设备将所述整合心跳包的载荷复制成多个,分别将每个载荷和一个拆分出的头部信息组成一个心跳消息;所述网络设备分别根据各心跳消息的头部信息中的地址,将各心跳消息发送给相应的应用程序服务器。
7.如权利要求6所述的方法,其特征在于,所述网络设备将所述整合心跳包的头部拆分为多个单独的头部信息的步骤前还包括: 所述网络设备判断从所述终端接收到的数据包的头部是否包含所述预定标识;如果包含,则进行所述将所述整合心跳包的头部拆分为多个单独的头部信息的步骤。
8.一种发送心跳消息的系统,包括:终端和网络设备; 其特征在于,所述终端包括: 采集模块,用于提取在预定时间长度内待发送的具有相同作用的多个心跳消息中任一个的载荷; 合并模块,用于提取所述多个心跳消息的头部信息,将所述头部信息前后相连成一个整合头部,加上所述载荷形成整合心跳包; 发送模块,用于将所述整合心跳包发送给网络设备; 所述网络设备包括: 拆分模块,用于将所述整合心跳包的头部拆分为多个单独的头部信息; 重组模块,用于将所述整合心跳包的载荷复制成多个,分别将每个载荷和一个拆分出的头部信息组成一个心跳消息; 消息发送模块,用于·分别根据各心跳消息的头部信息中的地址,将各心跳消息发送给相应的应用程序服务器。
9.如权利要求8所述的系统,其特征在于: 所述发送模块还用于在所述整合心跳包的头部中加入预定标识; 所述拆分模块还用于判断从所述终端接收到的数据包的头部是否包含所述预定标识;如果包含,则进行所述将所述整合心跳包的头部拆分为多个单独的头部信息的操作。
10.如权利要求8所述的系统,其特征在于: 所述采集模块还用于当收到一个应用程序发送来的心跳消息时,判断其它应用程序是否需要在预定时间长度内发送相同作用的心跳消息,从需要发送的应用程序接收心跳消息并转发给所述合并模块。
11.一种终端,其特征在于,包括: 采集模块,用于提取在预定时间长度内待发送的具有相同作用的多个心跳消息中任一个的载荷; 合并模块,用于提取所述多个心跳消息的头部信息,将所述头部信息前后相连成一个整合头部,加上所述载荷形成整合心跳包; 发送模块,用于将所述整合心跳包发送给网络设备。
12.如权利要求11所述的终端,其特征在于: 所述采集模块还用于当收到一个应用程序发送来的心跳消息时,判断其它应用程序是否需要在预定时间长度内发送相同作用的心跳消息,从需要发送的应用程序接收心跳消息并转发给所述合并模块。
13.—种网络设备,其特征在于,包括: 拆分模块,用于将所述整合心跳包的头部拆分为多个单独的头部信息; 重组模块,用于将所述整合心跳包的载荷复制成多个,分别将每个载荷和一个拆分出的头部信息组成一个心跳消息;消息发送模块,用于分别根据各心跳消息的头部信息中的地址,将各心跳消息发送给相应的应用程序服务器。
14.如权利要求13所述的网络设备,其特征在于:所述拆分模块还用于判断从所述终端接收到的数据包的头部是否包含所述预定标识; 如果包含,则进行所述将所述整合心跳包的头部拆分为多个单独的头部信息的操作。
【文档编号】H04L12/951GK103532784SQ201310487989
【公开日】2014年1月22日 申请日期:2013年10月17日 优先权日:2013年10月17日
【发明者】解冰, 张凤全, 盛明哲 申请人:中国联合网络通信集团有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1