[发明专利]智能心跳保活方法及智能心跳保活系统有效
申请号: | 201410298978.0 | 申请日: | 2014-06-26 |
公开(公告)号: | CN104144159A | 公开(公告)日: | 2014-11-12 |
发明(设计)人: | 左岗;谢春生;叶润桂 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | H04L29/06 | 分类号: | H04L29/06;H04L29/08 |
代理公司: | 广州华进联合专利商标代理有限公司 44224 | 代理人: | 黄晓庆;王茹 |
地址: | 518000 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 智能 心跳 方法 系统 | ||
技术领域
本发明涉及通信技术领域,特别涉及一种智能心跳保活方法及智能心跳保活系统。
背景技术
在目前的网络通信技术中,由于IPv4的IP地址有限,因此,在移动通信时,运营商分配给移动终端的IP地址是运营商内网的IP地址。在移动终端需要连网时,通过运营商的网关做一个网络地址转换(Network Address Translation,NAT),以此实现移动终端的网络通信。为了能够保证有效的对内网IP地址进行运用,目前大部分移动网络运营商的网关都会在通信链路一段时间没有进行数据通讯时,会淘汰NAT表中的对应项,造成通信链路中断,而且移动终端不会感知到通信链路中断的场景,这个时间称为NAT老化时间。为了能够保活移动终端与后台服务器之间的连接,客户端需要向服务器发送应用层定义的协议包,称为心跳。而智能心跳是指根据网络类型和稳定程度动态调整心跳的频率,在尽可能保持网络链接存活的前提下,动态的降低心跳频率,减少对网络资源的占用。
在目前的智能心跳保活技术中,Google的消息推送框架GCM(Google Cloud Message)会通过对网络类型进行区分,针对不同类型的网络分别采用不同的固定间隔的心跳来保活网络链接链接,在WIFI下使用15分钟心跳间隔,在数据网络下使用28分钟心跳间隔。而其他的移动终端类应用也都采用固定的心跳策略,典型的心跳值有3分20秒、4分30秒、4分45秒、7分钟、15分钟、28分钟等等。
目前的移动终端保活心跳技术,大多采用固定的心跳间隔,虽然实现比较简单,但是大多使用心跳经验值,对网络的适应性差,如果采用较小的心跳间隔,会导致费电费流量浪费网络资源,如果采用较大的心跳间隔,将不能长时间保活连接,不能及时感知到通信连接的断开,导致收取消息的不及时。
发明内容
基于此,针对上述现有技术中存在的问题,本发明的在于提供一种智能心跳保活方法、一种智能心跳保活客户端,其可以自适应的找出保活网络连接的尽可能大的心跳间隔。
为达到上述目的,本发明实施例采用以下技术方案:
一种智能心跳保活方法,包括步骤:
在监测到满足智能心跳自适应计算条件时,采用当前心跳包时间间隔进行心跳测试,并在满足测试成功条件时,将当前心跳包时间间隔加上预定心跳增加步长作为新的当前心跳包时间间隔,返回采用当前心跳包时间间隔进行心跳测试的步骤,在满足测试失败条件时,根据当前心跳包时间间隔确定稳定心跳包时间间隔。
一种智能心跳保活系统,包括:
监测模块,用于监测是否满足智能心跳自适应计算条件;
心跳测试模块,用于在所述监测模块监测到满足自适应计算条件时,或者根据步长增加模块的结果,采用当前心跳包时间间隔进行心跳测试;
测试成功条件判定模块,用于根据所述心跳测试模块的测试结果判定是否满足测试成功条件;
步长增加模块,用于在所述测试成功条件判定模块判定满足测试成功条件时,将当前心跳包时间间隔加上预定心跳增加步长作为新的当前心跳包时间间隔;
测试失败条件判定模块,用于根据所述心跳测试模块的测试结果判定是否满足测试失败条件;
稳定心跳包确定模块,用于在所述测试失败条件判定模块判定满足测试失败条件时,根据当前心跳包时间间隔确定稳定心跳包时间间隔。
根据本发明方案,其是通过对智能心跳自适应计算条件进行监测,并在满足智能心跳自适应计算条件时,通过进行心跳测试逐步对心跳包时间间隔进行调整,直至找到合适的稳定心跳包时间间隔,从而不仅可以得到与当前网络环境相适应的、能保持网络连接的尽可能大的心跳包时间间隔,由于心跳包时间间隔是尽可能大的,因而也可以在一定程度上节省电量、流量以及网络资源。
附图说明
图1是本发明的智能心跳保活方法实施例的流程示意图;
图2是本发明一个具体示例中各状态之间切换过程的示意图;
图3是本发明一个具体示例中自适应确定稳定心跳包时间间隔的流程示意图;
图4是本发明一个具体示例中用稳定心跳包时间间隔发送心跳包时动态调整的流程示意图;
图5是本发明一个具体示例中延迟心跳测试实施例的流程示意图;
图6是本发明一个具体示例中动态调整心跳包时间间隔的流程示意图;
图7是本发明另一个具体示例中动态调整心跳包时间间隔的流程示意图;
图8是本发明的智能心跳保活系统实施例一的结构示意图;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410298978.0/2.html,转载请声明来源钻瓜专利网。