用于保持连接的心跳方法和系统技术方案

技术编号:13782904 阅读:64 留言:0更新日期:2016-10-04 23:37
本发明专利技术涉及一种用于保持连接的心跳方法和系统,分为终端和云服务器两个方面,通过终端采集最大心跳包周期并上传到云服务器,再由云服务器统计出最优心跳包周期;当终端处于某网络状态下,服务器下发对应的最优心跳包周期,以此作为初始心跳包周期,用于保活网络链路,这样能避免不必要的试探和浪费终端流量和电量。

【技术实现步骤摘要】

本专利技术涉及通信
,尤其涉及一种保持连接的心跳方法和系统。
技术介绍
目前,绝大部分终端是由运营商或企业为终端分配内网地址后,通过网关做一个网络地址转换(Network Address Translation,NAT),再连接外部互联网。网关为了保证内网地址上网体验,对一段时间内不活跃的联网通道,回收映射资源,并断开网络。而终端为了保持活跃的联网通道,向服务器端周期发送协议包,称为心跳包。服务器根据接收心跳包的情况来确定网关设备的工作状态,即在线或离线。现有技术中心跳包的发送方式包括固定周期时间和实时动态调整周期时间这两种方式。采用固定周期时间的发送方式,虽然实现简单,但是不能自动适应网络。如果心跳包发送的间隔小,则会浪费流量和电量;如果心跳包发送的间隔大,则不能即时响应网络变化,进而降低用户体验。此外,在网关设备繁忙时,不能执行定期心跳包的发送,从而导致服务器误操作。采用实时动态的调整周期时间的发送方式,虽然能提升用户体验,但是在相同的网络情况下,依然要重复试探旧终端、重新试探新终端,这会大量消耗终端设备(如手机等移动设备)的电量,同时也会浪费终端的网络流量。
技术实现思路
鉴于上述的分析,本专利技术旨在提供一种用于保持连接的心跳方法和系统,用以解决现有方法需要重复试探、消耗终端设备(如手机等移动设备)的电量和网络流量的问题。本专利技术的目的主要是通过以下技术方案实现的:用于云服务器的保持连接的心跳方法,包括以下步骤:S1.云服务器向各终端下发采集与上传策略,所述采集与上传策略为采集终端的最大心跳包周期,并向云服务器上传最大心跳包周期及对应终端的标识信息,;S2.云服务器接收各终端上传的终端最大心跳包周期及终端的标识信息;S3.云服务器根据标识信息及对应的最大心跳包周期统计最优心跳周期,并保存;S4.在终端重复登录或者首次登录情况下,根据终端登录时上传的标识信息,云服务器下发对应的最优心跳周期。其中,标识信息包括终端的地理位置、网络类型和运营商类型;最优心跳周期的统计是采用分组统计,以及取平均值的方式、且统计可以是进行定时的。用于终端的保持连接的心跳方法,包括以下步骤:S1.终端接收云服务器下发的采集与上传策略;S2.终端根据所接收到的采集与上传策略采集最大心跳包周期;S3.终端向云服务器上传终端最大心跳包周期及终端的标识信息,再由云服务器端进行数据处理;S4.在终端重复登录或者首次登录情况下,接收云服务器下发的最优心跳周期,该最优心跳周期是与终端登录时上传的标识信息对应的最优心跳周期。其中,步骤S2中采集最大心跳包周期进一步包括:当满足智能心跳包采集试探条件下,以当前网络心跳包周期加入一步长作为试探周期,向服务器发送试探心跳包,再不断加大步长并发送试探心跳包,直到因为周期过长而导致发送心跳包无服务器响应的失败,这时以最近成功的试探周期作为最大心跳包周期;当网络条件发生变化,出现业务包发送的异常情况,则中断试探过程。步骤S3中,终端向云服务器上传终端最大心跳包周期和标识信息进一步包括:当有成功获取的最长心跳包周期,则根据当前采集与上传策略和网络状态,选取上传方式:当终端处于移动网络下,则先将上传信息缓存,等待非收费网络再上传;当终端处于非收费网络下,则立即上传信息;当上传失败后,再次进行上传,默认3次最大失败次数;步骤S4中,在终端重复登录或者首次登录情况下,接收云服务器根据终端登录时上传的标识信息下发对应最优心跳周期的步骤进一步包括:当终端位置变化或者网络变化时,终端主动上报或者由业务包捎带上报变化信息,服务器根据变化信息,下发当前网络状态下的最优心跳包周期;如果服务器没有下发最优心跳包周期,终端将按照终端内置的默认心跳包策略,发送心跳包。本专利技术还提供一种用于云服务器的实现心跳方法的系统,包括:云服务器策略下发模块,其用于向各终端下发采集与上传策略;云服务器接收模块,其用于接收各终端上传到云服务器的终端最大心跳包周期及各终端的标识信息;云服务器统计心跳包
周期模块,其用于根据标识信息及对应的最大心跳包周期统计最优心跳周期;云服务器心跳包周期下发模块,其用于在终端重复登录或者首次登录情况下,根据终端登录时上传的标识信息下发对应的最优心跳周期。本专利技术还提供一种用于终端的实现心跳方法的系统,包括:策略接收模块,其用于接收云服务器下发的采集与上传策略;自适应网络心跳采集模块,其用于根据所接收到的采集与上传策略采集最大心跳包周期;上传模块,其用于终端缓存或者向云服务器上传最大心跳包周期及终端的标识信息;心跳包周期接收模块,其用于在终端重复登录或者首次登录情况下,接收云服务器根据终端登录时上传的标识信息下发的对应最优心跳周期。本专利技术有益效果如下:用于保持连接的心跳方法和系统,通过终端采集最大心跳包周期并上传到云服务器,再由云服务器统计出最优心跳包周期;当终端处于某网络状态下,服务器下发对应的最优心跳包周期作为初始心跳包周期,用于保活网络链路,这样能避免不必要的试探和浪费终端流量和电量。本专利技术的其他特征和优点将在随后的说明书中阐述,并且,部分的从说明书中变得显而易见,或者通过实施本专利技术而了解。本专利技术的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。附图说明附图仅用于示出具体实施例的目的,而并不认为是对本专利技术的限制,在整个附图中,相同的参考符号表示相同的部件。图1为云服务器统计最优心跳包周期的流程图2为云服务器下发最优心跳包周期的流程图3为终端的自适应心跳包采集的流程图4为终端缓存与上传心跳包周期的流程具体实施方式下面结合附图来具体描述本专利技术的优选实施例,其中,附图构成本申请一部分,并与本专利技术的实施例一起用于阐释本专利技术的原理。本专利技术的一个具体实施例,公开了一种用于保持连接的心跳方法,用于云服务器,具体包括如下步骤:S1.云服务器策略下发模块向各终端下发采集与上传策略,所述采集与上传策略为:采集终端的最大心跳包周期,并向云服务器上传最大心跳包周期及对应终端的标识信息;所述标识信息包括终端的地理位置、网络类型和运营商类型;地理位置、网络类型和运营商类型是终端的状态属性,三者之间是并列关系,其中网络类型是Wifi、2G网络、3G网络、4G网络、Lan等,运营商类型是移动、电信、联通、歌华等;S2.云服务器接收模块接收各终端上传的终端最大心跳包周期及终端标识信息;S3.云服务器统计心跳包周期模块根据各终端上传的终端最大心跳包周期及终端的标识信息统计最优心跳周期并保存,可以将最优心跳周期保存在网络最优心跳包周期结果表中;具体地,如图1所示,当满足统计心跳包周期的触发条件时,云服务器端根据地理位置、网络类型和运营商类型,分组统计某一区域范围内、或某一网络类型下、或某运营商下的最优心跳周期;其中,触发条件可以是定时触发,统计方式通常采用取平均值的方式,分组统计是指地理位置、网络类型和运营商类型三者的多种排列组合,如望京、4G网络、移动通信;S4.在终端重复登录或者首次登录情况下(登录过程中终端会向服务器上传标识信息),如图2所示,当达到智能心跳包周期下发触发条件时,云服务器心跳包周期下发模块根据该终端的标识信息,下发最优心跳周期,作为初始心跳包周期,用于保活网络链路;其本文档来自技高网
...

【技术保护点】
一种用于保持连接的心跳方法,用于云服务器,其特征在于,包括以下步骤:S1.云服务器向各终端下发采集与上传策略,所述采集与上传策略为采集终端的最大心跳包周期,并向云服务器上传最大心跳包周期及对应终端的标识信息;S2.云服务器接收各终端上传的终端最大心跳包周期及终端的标识信息;S3.云服务器根据标识信息及对应的最大心跳包周期统计最优心跳周期,并保存;S4.在终端重复登录或者首次登录情况下,根据终端登录时上传的标识信息,云服务器下发对应的最优心跳周期。

【技术特征摘要】
1.一种用于保持连接的心跳方法,用于云服务器,其特征在于,包括以下步骤:S1.云服务器向各终端下发采集与上传策略,所述采集与上传策略为采集终端的最大心跳包周期,并向云服务器上传最大心跳包周期及对应终端的标识信息;S2.云服务器接收各终端上传的终端最大心跳包周期及终端的标识信息;S3.云服务器根据标识信息及对应的最大心跳包周期统计最优心跳周期,并保存;S4.在终端重复登录或者首次登录情况下,根据终端登录时上传的标识信息,云服务器下发对应的最优心跳周期。2.根据权利要求1所述的用于保持连接的心跳方法,其特征在于,标识信息包括终端的地理位置、网络类型和运营商类型;最优心跳周期的统计采用分组统计方式。3.根据权利要求1或2所述的用于保持连接的心跳方法,其特征在于,最优心跳周期的统计采用取平均值的方式。4.一种用于保持连接的心跳方法,用于终端,其特征在于,包括以下步骤:S1.终端接收云服务器下发的采集与上传策略,所述采集与上传策略为采集终端最大心跳包周期,并向云服务器上传最大心跳包周期及对应终端的标识信息;S2.终端根据所接收到的采集与上传策略采集最大心跳包周期;S3.终端向云服务器上传终端最大心跳包周期及终端的标识信息,再由云服务器端进行数据处理;S4.在终端重复登录或者首次登录情况下,接收云服务器根据终端登录时上传的标识信息下发的对应最优心跳周期。5.根据权利要求4所述的用于保持连接的心跳方法,其特征在于,采集最大心跳包周期进一步包括:当满足智能心跳包采集试探条件下,以当前网络心跳包周期加入一步长作为试探周期,向服务器发送试探心跳包,再不断加大步长并发送试探心跳包,直到因为周期过长而导致发送心跳包无服务器响应的失败,这时以最近成功的试探周期作为最大心跳包周期;当网络条件发生变化,出现业务包发送的异常情况,则中断试探过程。6.根据权利要求4所述的用于...

【专利技术属性】
技术研发人员:张俊良
申请(专利权)人:北京容联易通信息技术有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1