CN102223257A - 一种心跳间隔调整方法、服务器、客户端及通信系统 - Google Patents

一种心跳间隔调整方法、服务器、客户端及通信系统 Download PDF

Info

Publication number
CN102223257A
CN102223257A CN201110209584XA CN201110209584A CN102223257A CN 102223257 A CN102223257 A CN 102223257A CN 201110209584X A CN201110209584X A CN 201110209584XA CN 201110209584 A CN201110209584 A CN 201110209584A CN 102223257 A CN102223257 A CN 102223257A
Authority
CN
China
Prior art keywords
eartbeat interval
value
heartbeat
client
server
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201110209584XA
Other languages
English (en)
Other versions
CN102223257B (zh
Inventor
赵亮
丁瑞彭
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tong Yi (Beijing) Technology Co., Ltd.
Original Assignee
MO YAJING
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by MO YAJING filed Critical MO YAJING
Priority to CN201110209584.XA priority Critical patent/CN102223257B/zh
Publication of CN102223257A publication Critical patent/CN102223257A/zh
Application granted granted Critical
Publication of CN102223257B publication Critical patent/CN102223257B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Telephonic Communication Services (AREA)
  • Telephone Function (AREA)

Abstract

本发明提供一种心跳间隔调整方法、服务器、客户端及通信系统,所述心跳间隔调整方法包括:服务器与客户端的本次连接建立完成后,所述服务器接收所述客户端发送的心跳协商消息,所述心跳协商消息中携带有用于表征上一次连接断开的原因的原因值以及所述客户端在上一次连接中最后使用的心跳间隔值;所述服务器根据所述原因值确定上一次连接是因为链路僵死或网络异常而断开时,将所述心跳间隔值递减后通过协商响应消息下发给所述客户端;所述服务器根据所述原因值确定上一次连接是因为拨打电话、应用暂停或应用切换而断开时,将所述心跳间隔值递增后通过协商响应消息下发给所述客户端。本发明能够有效地降低客户端的电能消耗。

Description

一种心跳间隔调整方法、服务器、客户端及通信系统
技术领域
本发明涉及通信领域,特别涉及一种心跳间隔调整方法、服务器、客户端及通信系统。
背景技术
客户端与服务器进行通信时,为了保证消息能够及时传达,目前主要采用的方案是IP push(推送)技术,即在客户端与服务器之间保持一条长连接,这样能够使得服务器在接收到消息时,可以即时将该消息推送给客户端。为了确保此长连接处于健康状态,通常采用由客户端向服务器定时发送一个数据包(心跳包),以表明此长连接的链路可用。服务器在设定的时间内未收到该心跳包,则表明该链路无法使用。
但是这样的方式在移动终端中实现时,因为移动终端的网络环境不尽相同,在网络环境较好时,客户端也需要定时发送心跳包,则其对移动终端的资源消耗较大,特别是对移动终端的电能消耗较大。
发明内容
本发明所要解决的技术问题是提供一种心跳间隔调整方法、服务器、客户端及通信系统,通过对心跳间隔值进行动态调整,使得心跳间隔值与当前的网络环境相适应,从而能够有效地降低客户端的电能消耗。
为解决上述技术问题,本发明的实施例提供一种心跳间隔调整方法,包括:
服务器与客户端的本次连接建立完成后,所述服务器接收所述客户端发送的心跳协商消息,所述心跳协商消息中携带有用于表征上一次连接断开的原因的原因值以及所述客户端在上一次连接中最后使用的心跳间隔值;
所述服务器根据所述原因值确定上一次连接是因为链路僵死或网络异常而断开时,将所述心跳间隔值递减后通过协商响应消息下发给所述客户端;
所述服务器根据所述原因值确定上一次连接是因为拨打电话、应用暂停或应用切换而断开时,将所述心跳间隔值递增后通过协商响应消息下发给所述客户端。
上述的心跳间隔调整方法,其中,还包括:所述服务器根据所述原因值确定本次连接为第一次连接时,将默认的心跳间隔值通过协商响应消息下发给所述客户端。
上述的心跳间隔调整方法,其中,还包括:所述服务器每次接收到所述客户端发送的心跳包时,将一初始值为零的计数值增加1,然后判断所述计数值是否大于预设的计数门限,若是,将上一次的心跳间隔值递增后通过心跳响应包下发给所述客户端,并将所述计数值清零,否则,直接将上一次的心跳间隔值通过心跳响应包下发给所述客户端。
上述的心跳间隔调整方法,其中,还包括:
所述服务器每次接收到所述客户端发送的心跳包时,若本次连接为第一次连接,则将上一次的心跳间隔值递增后通过心跳响应包下发给所述客户端;
若本次连接不是第一次连接,则将一初始值为零的计数值增加1,然后判断所述计数值是否大于预设的计数门限,若是,将上一次的心跳间隔值递增后通过心跳响应包下发给所述客户端,并将所述计数值清零,否则,直接将上一次的心跳间隔值通过心跳响应包下发给所述客户端。
上述的心跳间隔调整方法,其中:
所述服务器在对心跳间隔值进行递增之前还包括:判断递增后的心跳间隔值是否大于预设的心跳间隔上限,若是,不执行所述递增操作,直接将所述心跳间隔上限下发给所述客户端;
所述服务器在对心跳间隔值进行递减之前还包括:判断递减后的心跳间隔值是否小于预设的心跳间隔下限,若是,不执行所述递减操作,直接将所述心跳间隔下限下发给所述客户端。
本发明的实施例还提供一种服务器,包括:
第一接收模块,用于当服务器与客户端的本次连接建立完成后,接收所述客户端发送的心跳协商消息,所述心跳协商消息中携带有用于表征上一次连接断开的原因的原因值以及所述客户端在上一次连接中最后使用的心跳间隔值;
第一处理模块,用于当根据所述原因值确定上一次连接是因为链路僵死或网络异常而断开时,将所述心跳间隔值递减后通过协商响应消息下发给所述客户端,以及,当根据所述原因值确定上一次连接是因为拨打电话、应用暂停或应用切换而断开时,将所述心跳间隔值递增后通过协商响应消息下发给所述客户端。
上述的服务器,其中,所述第一处理模块还用于:当根据所述原因值确定本次连接为第一次连接时,将默认的心跳间隔值通过协商响应消息下发给所述客户端。
上述的服务器,其中,还包括:
第二接收模块,用于接收所述客户端发送的心跳包;
第二处理模块,用于当所述第二接收模块接收到所述客户端发送的心跳包时,将一初始值为零的计数值增加1,然后判断所述计数值是否大于预设的计数门限,若是,将上一次的心跳间隔值递增后通过心跳响应包下发给所述客户端,并将所述计数值清零,否则,直接将上一次的心跳间隔值通过心跳响应包下发给所述客户端。
上述的服务器,其中,所述第二处理模块还用于:
当所述第二接收模块接收到所述客户端发送的心跳包时,若本次连接为第一次连接,则将上一次的心跳间隔值递增后通过心跳响应包下发给所述客户端;
若本次连接不是第一次连接,则将一初始值为零的计数值增加1,然后判断所述计数值是否大于预设的计数门限,若是,将上一次的心跳间隔值递增后通过心跳响应包下发给所述客户端,并将所述计数值清零,否则,直接将上一次的心跳间隔值通过心跳响应包下发给所述客户端。
上述的服务器,其中:
所述第一处理模块在对心跳间隔值进行递增之前还判断递增后的心跳间隔值是否大于预设的心跳间隔上限,若是,不执行所述递增操作,直接将所述心跳间隔上限下发给所述客户端;
所述第一处理模块在对心跳间隔值进行递减之前还判断递减后的心跳间隔值是否小于预设的心跳间隔下限,若是,不执行所述递减操作,直接将所述心跳间隔下限下发给所述客户端。
所述第二处理模块在对心跳间隔值进行递增之前还判断递增后的心跳间隔值是否大于预设的心跳间隔上限,若是,不执行所述递增操作,直接将所述心跳间隔上限下发给所述客户端。
本发明的实施例还提供一种客户端,包括:
第一发送模块,用于当服务器与客户端的本次连接建立完成后,发送心跳协商消息到所述服务器,所述心跳协商消息中携带有用于表征上一次连接断开的原因的原因值以及所述客户端在上一次连接中最后使用的心跳间隔值,以使所述服务器根据所述原因值和所述心跳间隔值确定客户端在本次连接中使用的心跳间隔值;
第三接收模块,用于接收所述服务器发送的携带有心跳间隔值的心跳协商响应消息;
第二发送模块,用于根据所述心跳协商响应消息中携带的所述心跳间隔值,向所述服务器发送心跳包。
本发明的实施例还提供一种通信系统,包括服务器和客户端,其中:
所述客户端用于:当所述服务器与所述客户端的本次连接建立完成后,发送心跳协商消息到所述服务器,所述心跳协商消息中携带有用于表征上一次连接断开的原因的原因值以及所述客户端在上一次连接中最后使用的心跳间隔值;
所述服务器用于:接收所述客户端发送的心跳协商消息,当根据所述原因值确定上一次连接是因为链路僵死或网络异常而断开时,将所述心跳间隔值递减后通过协商响应消息下发给所述客户端,以及,当根据所述原因值确定上一次连接是因为拨打电话、应用暂停或应用切换而断开时,将所述心跳间隔值递增后通过协商响应消息下发给所述客户端。
与现有技术采用固定的心跳间隔值相比,本发明实施例的上述技术方案通过对心跳间隔值进行动态调整,使得心跳间隔值与当前的网络环境相适应,从而能够有效地降低客户端的系统资源、流量,特别是电能的消耗。
附图说明
图1为本发明实施例的心跳间隔调整方法的流程图;
图2为本发明实施例的通信系统的结构示意图;
图3为本发明实施例的服务器的结构示意图;
图4为本发明实施例的客户端的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图及具体实施例对本发明进行详细描述。
参照图1,本发明实施例的心跳间隔调整方法,包括如下步骤:
步骤101:服务器与客户端的本次连接建立完成后,所述客户端发送心跳协商消息到所述服务器;
其中,所述心跳协商消息中携带有用于表征上一次连接断开的原因的原因值以及所述客户端在上一次连接中最后使用的心跳间隔值。在本实施例中,心跳间隔值的单位为秒。
在具体实现时,当本次连接是第一次连接时,所述心跳协商消息中携带的所述原因值为“null”,且该心跳协商消息中不携带所述心跳间隔值(即心跳间隔值信息为空),这里,所谓第一次连接是指,客户端刚完成了安装或重置后第一次登录服务器时,与所述服务器建立的连接。
当本次连接不是第一次连接时,则所述心跳协商消息中携带所述原因值和所述客户端在上一次连接中最后使用的心跳间隔值。举例如下:
当上次连接是由于网络异常(例如手机无信号)而断开,则所述心跳协商消息中携带的所述原因值为“Exception”。
当上次连接是由于拨打电话而断开,则所述心跳协商消息中携带的所述原因值为“Call”。
当上次连接是由于应用暂停或应用切换而断开,则所述心跳协商消息中携带的所述原因值为“Pause”。
当上次连接是由于链路僵死或网络阻塞而断开,则所述心跳协商消息中携带的所述原因值为“Choke”。引起链路僵死的主要起因是客户端“长时间”占用空的连接,没有发送数据包,导致当前移动网关认为此连接不再需要进行数据传输,断开了该连接的中间路由,此时服务器和客户端均无法得知此链路是否僵死,链路僵死后,客户端再次发送心跳包时,会立即收到例如网关的通知,告知该链路已被断开。
步骤102:所述服务器接收到所述心跳协商消息后,根据所述心跳协商消息中携带的信息确定客户端在本次连接中使用的初始心跳间隔值,并将所述初始心跳间隔值通过协商响应消息下发给所述客户端;
其中,所述服务器根据所述原因值确定上一次连接是因为链路僵死或网络异常而断开时,将所述心跳间隔值递减后作为初始心跳间隔值通过协商响应消息下发给所述客户端;
所述服务器根据所述原因值确定上一次连接是因为拨打电话、应用暂停或应用切换而断开时,将所述心跳间隔值递增后作为初始心跳间隔值通过协商响应消息下发给所述客户端;
所述服务器根据所述原因值确定本次连接为第一次连接时,将默认的心跳间隔值作为初始心跳间隔值通过协商响应消息下发给所述客户端。
在本发明实施例中,对心跳间隔值进行递增是指,对心跳间隔值按照设定的步长进行增加,设定的步长可以为1,即每次增加1秒,设定的步长还可以是大于1的整数,例如20,则每次增加20秒;
类似地,对心跳间隔值进行递减是指,对心跳间隔值按照设定的步长进行减小,设定的步长可以为1,即每次减小1秒,设定的步长还可以是大于1的整数,例如20,则每次减小20秒。
所述默认的心跳间隔值预先在所述服务器中设置并存储,例如,可以设置所述默认的心跳间隔值为120秒。
步骤103:所述客户端接收到所述心跳协商响应消息时,根据所述心跳协商响应消息中携带的心跳间隔值,向所述服务器发送心跳包;
客户端会使用服务器提供的心跳间隔值作为定时器的定时参数进行定时,定时时间到时,触发下一次心跳,即向所述服务器发送心跳包。
步骤104:所述服务器接收到所述客户端发送的心跳包时,重新确定下一次心跳所使用的心跳间隔值,并将该心跳间隔值通过心跳响应包下发给所述客户端。
然后,所述客户端接收到所述服务器发送的心跳响应包时,会根据所述心跳响应包中携带的心跳间隔值,向所述服务器发送心跳包端。
其中,所述服务器确定下一次心跳所使用心跳间隔值的方式有如下两种:
方式一
所述服务器每次接收到所述客户端发送的心跳包时,将一初始值为零的计数值增加1,然后判断所述计数值是否大于预设的计数门限,例如100,若是,将上一次的心跳间隔值递增后通过心跳响应包下发给所述客户端,并将所述计数值清零,否则,直接将上一次的心跳间隔值通过心跳响应包下发给所述客户端。
方式二
所述服务器每次接收到所述客户端发送的心跳包时,若本次连接为第一次连接,则将上一次的心跳间隔值递增后通过心跳响应包下发给所述客户端;
若本次连接不是第一次连接,则将一初始值为零的计数值增加1,然后判断所述计数值是否大于预设的计数门限,例如100,若是,将上一次的心跳间隔值递增后通过心跳响应包下发给所述客户端,并将所述计数值清零,否则,直接将上一次的心跳间隔值通过心跳响应包下发给所述客户端。
方式一与方式二的区别在于,在方式一中,对第一次连接和非第一次连接做相同的处理,即每接收到若干个心跳包后,对心跳间隔值进行一次递增,这有利于连接的稳定;
在方式二中,对第一次连接和非第一次连接做不同的处理,对于第一次连接,每接收到一个心跳包,就对心跳间隔值进行递增处理,这样,有利于将心跳间隔值尽快调整到网络环境支持的心跳间隔上限。
可选地,在进行心跳间隔调整时,还将心跳间隔值限制在一个范围之内。具体地,当所述服务器需要对心跳间隔值进行递增时,首先判断对该心跳间隔值进行递增之后的值是否大于预设的心跳间隔上限,若是,不执行所述递增操作,直接将所述心跳间隔上限下发给所述客户端;
当所述服务器需要对心跳间隔值进行递减时,首先判断对该心跳间隔值进行递减后的值是否小于预设的心跳间隔下限,若是,不执行所述递减操作,直接将所述心跳间隔下限下发给所述客户端。
服务器设置了一个心跳间隔上限和心跳间隔下限,例如,分别为360和60。设置一个心跳间隔上限的目的是在网络状况较好时,尽量减小客户端心跳消耗,同时也使得该链路继续有效。设置一个心跳间隔下限的目的是在网络状况较差时,客户端不必时刻发送心跳,减小客户端的心跳消耗。
根据移动网络状态的不同,每个移动终端的当前网络都有一个心跳间隔上限,网络较差时,则心跳间隔上限较低,网络较好时,则心跳间隔上限较高。例如在WIFI网络下,这个上限可能达到几千,假设我们服务器配置的心跳间隔上限为360,最后,客户端会按360作为心跳间隔来发送心跳。
需要说明的是,上述步骤101至步骤104有可能是循环执行的,即当服务器对心跳间隔值进行调整后,服务器与客户端之间的连接有可能会断开,此时,会重新执行从步骤101开始的步骤。通过采用上述心跳间隔调整方法,能够保证客户端的心跳间隔尽可能提高到网络环境支持的上限,从而能够有效降低客户端的系统资源、流量,特别是电能的消耗。
图2为本发明实施例的通信系统的结构示意图,参照图2,所述通信系统包括服务器1和客户端2,其中:
所述客户端2用于:当所述服务器1与所述客户端2的本次连接建立完成后,发送心跳协商消息到所述服务器1,所述心跳协商消息中携带有用于表征上一次连接断开的原因的原因值以及所述客户端2在上一次连接中最后使用的心跳间隔值;
所述服务器1用于:接收所述客户端2发送的心跳协商消息,当根据所述原因值确定上一次连接是因为链路僵死或网络异常而断开时,将所述心跳间隔值递减后通过协商响应消息下发给所述客户端2;当根据所述原因值确定上一次连接是因为拨打电话、应用暂停或应用切换而断开时,将所述心跳间隔值递增后通过协商响应消息下发给所述客户端2;当根据所述原因值确定本次连接为第一次连接时,将默认的心跳间隔值通过协商响应消息下发给所述客户端2。
以下给出上述通信系统中服务器1与客户端2的具体结构。
参照图3,本发明实施例的服务器1包括:
第一接收模块11,用于当服务器1与客户端2的本次连接建立完成后,接收所述客户端2发送的心跳协商消息,所述心跳协商消息中携带有用于表征上一次连接断开的原因的原因值以及所述客户端2在上一次连接中最后使用的心跳间隔值;
第一处理模块12,用于当根据所述原因值确定上一次连接是因为链路僵死或网络异常而断开时,将所述心跳间隔值递减后作为初始心跳间隔值通过协商响应消息下发给所述客户端,以及,当根据所述原因值确定上一次连接是因为拨打电话、应用暂停或应用切换而断开时,将所述心跳间隔值递增后作为初始心跳间隔值通过协商响应消息下发给所述客户端2。
优选地,所述第一处理模块12还用于:
当根据所述原因值确定本次连接为第一次连接时,将默认的心跳间隔值作为初始心跳间隔值通过协商响应消息下发给所述客户端2。
优选地,所述服务器还包括:
第二接收模块13,用于接收所述客户端2发送的心跳包;
第二处理模块14,用于当所述第二接收模块13接收到所述客户端发送的心跳包时,将一初始值为零的计数值增加1,然后判断所述计数值是否大于预设的计数门限,若是,将上一次的心跳间隔值递增后通过心跳响应包下发给所述客户端2,并将所述计数值清零,否则,直接将上一次的心跳间隔值通过心跳响应包下发给所述客户端2。
可选地,所述第二处理模块14还用于:
当所述第二接收模块13接收到所述客户端发送的心跳包时,若本次连接为第一次连接,则将上一次的心跳间隔值递增后通过心跳响应包下发给所述客户端2;
若本次连接不是第一次连接,则将一初始值为零的计数值增加1,然后判断所述计数值是否大于预设的计数门限,若是,将上一次的心跳间隔值递增后通过心跳响应包下发给所述客户端2,并将所述计数值清零,否则,直接将上一次的心跳间隔值通过心跳响应包下发给所述客户端2。
其中,所述第一处理模块12在对心跳间隔值进行递增之前还判断递增后的心跳间隔值是否大于预设的心跳间隔上限,若是,不执行所述递增操作,直接将所述心跳间隔上限下发给所述客户端2;
所述第一处理模块12在对心跳间隔值进行递减之前还判断递减后的心跳间隔值是否小于预设的心跳间隔下限,若是,不执行所述递减操作,直接将所述心跳间隔下限下发给所述客户端2。
所述第二处理模块14在对心跳间隔值进行递增之前还判断递增后的心跳间隔值是否大于预设的心跳间隔上限,若是,不执行所述递增操作,直接将所述心跳间隔上限下发给所述客户端2。
参照图4,本发明实施例的客户端2包括:
第一发送模块21,用于当服务器1与客户端2的本次连接建立完成后,发送心跳协商消息到所述服务器,所述心跳协商消息中携带有用于表征上一次连接断开的原因的原因值以及所述客户端2在上一次连接中最后使用的心跳间隔值,以使所述服务器1根据所述原因值和所述心跳间隔值确定客户端2在本次连接中使用的心跳间隔值;
第三接收模块22,用于接收所述服务器1发送的携带有心跳间隔值的心跳协商响应消息;
第二发送模块23,用于根据所述心跳协商响应消息中携带的所述心跳间隔值,向所述服务器2发送心跳包。
根据以上所述可知,本发明实施例的上述通信系统具有如下的特性:
在网络较好时,能够提高心跳间隔值;
在网络较差时,能够降低心跳间隔值;
能够保持侦测到的合适心跳间隔值。
最后应当说明的是,以上实施例仅用以说明本发明的技术方案而非限制,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神范围,其均应涵盖在本发明的权利要求范围当中。

Claims (12)

1.一种心跳间隔调整方法,其特征在于,包括:
服务器与客户端的本次连接建立完成后,所述服务器接收所述客户端发送的心跳协商消息,所述心跳协商消息中携带有用于表征上一次连接断开的原因的原因值以及所述客户端在上一次连接中最后使用的心跳间隔值;
所述服务器根据所述原因值确定上一次连接是因为链路僵死或网络异常而断开时,将所述心跳间隔值递减后通过协商响应消息下发给所述客户端;
所述服务器根据所述原因值确定上一次连接是因为拨打电话、应用暂停或应用切换而断开时,将所述心跳间隔值递增后通过协商响应消息下发给所述客户端。
2.如权利要求1所述的心跳间隔调整方法,其特征在于,还包括:
所述服务器根据所述原因值确定本次连接为第一次连接时,将默认的心跳间隔值通过协商响应消息下发给所述客户端。
3.如权利要求2所述的心跳间隔调整方法,其特征在于,还包括:
所述服务器每次接收到所述客户端发送的心跳包时,将一初始值为零的计数值增加1,然后判断所述计数值是否大于预设的计数门限,若是,将上一次的心跳间隔值递增后通过心跳响应包下发给所述客户端,并将所述计数值清零,否则,直接将上一次的心跳间隔值通过心跳响应包下发给所述客户端。
4.如权利要求2所述的心跳间隔调整方法,其特征在于,还包括:
所述服务器每次接收到所述客户端发送的心跳包时,若本次连接为第一次连接,则将上一次的心跳间隔值递增后通过心跳响应包下发给所述客户端;
若本次连接不是第一次连接,则将一初始值为零的计数值增加1,然后判断所述计数值是否大于预设的计数门限,若是,将上一次的心跳间隔值递增后通过心跳响应包下发给所述客户端,并将所述计数值清零,否则,直接将上一次的心跳间隔值通过心跳响应包下发给所述客户端。
5.如权利要求1至4中任一项所述的心跳间隔调整方法,其特征在于:
所述服务器在对心跳间隔值进行递增之前还包括:判断递增后的心跳间隔值是否大于预设的心跳间隔上限,若是,不执行所述递增操作,直接将所述心跳间隔上限下发给所述客户端;
所述服务器在对心跳间隔值进行递减之前还包括:判断递减后的心跳间隔值是否小于预设的心跳间隔下限,若是,不执行所述递减操作,直接将所述心跳间隔下限下发给所述客户端。
6.一种服务器,其特征在于,包括:
第一接收模块,用于当服务器与客户端的本次连接建立完成后,接收所述客户端发送的心跳协商消息,所述心跳协商消息中携带有用于表征上一次连接断开的原因的原因值以及所述客户端在上一次连接中最后使用的心跳间隔值;
第一处理模块,用于当根据所述原因值确定上一次连接是因为链路僵死或网络异常而断开时,将所述心跳间隔值递减后通过协商响应消息下发给所述客户端,以及,当根据所述原因值确定上一次连接是因为拨打电话、应用暂停或应用切换而断开时,将所述心跳间隔值递增后通过协商响应消息下发给所述客户端。
7.如权利要求6所述的服务器,其特征在于,所述第一处理模块还用于:
当根据所述原因值确定本次连接为第一次连接时,将默认的心跳间隔值通过协商响应消息下发给所述客户端。
8.如权利要求7所述的服务器,其特征在于,还包括:
第二接收模块,用于接收所述客户端发送的心跳包;
第二处理模块,用于当所述第二接收模块接收到所述客户端发送的心跳包时,将一初始值为零的计数值增加1,然后判断所述计数值是否大于预设的计数门限,若是,将上一次的心跳间隔值递增后通过心跳响应包下发给所述客户端,并将所述计数值清零,否则,直接将上一次的心跳间隔值通过心跳响应包下发给所述客户端。
9.如权利要求8所述的服务器,其特征在于,所述第二处理模块还用于:
当所述第二接收模块接收到所述客户端发送的心跳包时,若本次连接为第一次连接,则将上一次的心跳间隔值递增后通过心跳响应包下发给所述客户端;
若本次连接不是第一次连接,则将一初始值为零的计数值增加1,然后判断所述计数值是否大于预设的计数门限,若是,将上一次的心跳间隔值递增后通过心跳响应包下发给所述客户端,并将所述计数值清零,否则,直接将上一次的心跳间隔值通过心跳响应包下发给所述客户端。
10.如权利要求6至9中任一项所述的服务器,其特征在于:
所述第一处理模块在对心跳间隔值进行递增之前还判断递增后的心跳间隔值是否大于预设的心跳间隔上限,若是,不执行所述递增操作,直接将所述心跳间隔上限下发给所述客户端;
所述第一处理模块在对心跳间隔值进行递减之前还判断递减后的心跳间隔值是否小于预设的心跳间隔下限,若是,不执行所述递减操作,直接将所述心跳间隔下限下发给所述客户端。
所述第二处理模块在对心跳间隔值进行递增之前还判断递增后的心跳间隔值是否大于预设的心跳间隔上限,若是,不执行所述递增操作,直接将所述心跳间隔上限下发给所述客户端。
11.一种客户端,其特征在于,包括:
第一发送模块,用于当服务器与客户端的本次连接建立完成后,发送心跳协商消息到所述服务器,所述心跳协商消息中携带有用于表征上一次连接断开的原因的原因值以及所述客户端在上一次连接中最后使用的心跳间隔值,以使所述服务器根据所述原因值和所述心跳间隔值确定客户端在本次连接中使用的心跳间隔值;
第三接收模块,用于接收所述服务器发送的携带有心跳间隔值的心跳协商响应消息;
第二发送模块,用于根据所述心跳协商响应消息中携带的所述心跳间隔值,向所述服务器发送心跳包。
12.一种通信系统,包括服务器和客户端,其特征在于:
所述客户端用于:当所述服务器与所述客户端的本次连接建立完成后,发送心跳协商消息到所述服务器,所述心跳协商消息中携带有用于表征上一次连接断开的原因的原因值以及所述客户端在上一次连接中最后使用的心跳间隔值;
所述服务器用于:接收所述客户端发送的心跳协商消息,当根据所述原因值确定上一次连接是因为链路僵死或网络异常而断开时,将所述心跳间隔值递减后通过协商响应消息下发给所述客户端,以及,当根据所述原因值确定上一次连接是因为拨打电话、应用暂停或应用切换而断开时,将所述心跳间隔值递增后通过协商响应消息下发给所述客户端。
CN201110209584.XA 2011-07-25 2011-07-25 一种心跳间隔调整方法、服务器、客户端及通信系统 Expired - Fee Related CN102223257B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110209584.XA CN102223257B (zh) 2011-07-25 2011-07-25 一种心跳间隔调整方法、服务器、客户端及通信系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110209584.XA CN102223257B (zh) 2011-07-25 2011-07-25 一种心跳间隔调整方法、服务器、客户端及通信系统

Publications (2)

Publication Number Publication Date
CN102223257A true CN102223257A (zh) 2011-10-19
CN102223257B CN102223257B (zh) 2014-02-19

Family

ID=44779690

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110209584.XA Expired - Fee Related CN102223257B (zh) 2011-07-25 2011-07-25 一种心跳间隔调整方法、服务器、客户端及通信系统

Country Status (1)

Country Link
CN (1) CN102223257B (zh)

Cited By (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102395119A (zh) * 2011-11-15 2012-03-28 华为技术有限公司 一种支持应用客户端永久在线的方法、系统及装置
CN103139008A (zh) * 2011-11-23 2013-06-05 中兴通讯股份有限公司 检测报文心跳周期的自适应方法和装置
CN103150205A (zh) * 2011-10-31 2013-06-12 株式会社Pfu 信息处理系统、信息处理装置、以及客户终端
CN103188771A (zh) * 2011-12-27 2013-07-03 腾讯科技(深圳)有限公司 长链接的断开、恢复的方法和装置
WO2013107137A1 (zh) * 2012-01-17 2013-07-25 华为技术有限公司 心跳周期的获取方法及终端、服务器
WO2013185642A1 (zh) * 2012-06-15 2013-12-19 华为终端有限公司 用于处理应用代理客户端异常的方法和装置
CN103491512A (zh) * 2012-06-12 2014-01-01 腾讯科技(深圳)有限公司 消息推送的实现方法和装置
CN103856954A (zh) * 2012-11-28 2014-06-11 中国电信股份有限公司 探测游牧终端心跳周期的方法、系统、游牧终端与服务器
US9137268B2 (en) 2012-01-17 2015-09-15 Huawei Technologies Co., Ltd. Method, terminal, and server for obtaining heartbeat period
CN105577507A (zh) * 2014-11-10 2016-05-11 中国移动通信集团广东有限公司 一种心跳包发送间隔的调整方法、装置及服务器
CN105610913A (zh) * 2015-12-22 2016-05-25 用友网络科技股份有限公司 通信网络中长连接的心跳保活方法及装置
CN103716323B (zh) * 2013-12-31 2016-11-30 厦门悦讯信息科技有限公司 一种发送心跳包维持长连接的方法
CN106375148A (zh) * 2016-08-30 2017-02-01 北京北信源软件股份有限公司 即时通讯中的动态网络心跳处理方法及终端
CN107645529A (zh) * 2016-07-21 2018-01-30 腾讯科技(深圳)有限公司 心跳包发送方法及装置
CN107786383A (zh) * 2016-08-30 2018-03-09 北京国双科技有限公司 心跳数据包的发送方法及装置
CN108173709A (zh) * 2017-12-19 2018-06-15 广州视源电子科技股份有限公司 保活长连接方法、装置、终端设备及存储介质
CN109905259A (zh) * 2017-12-08 2019-06-18 中国电信股份有限公司 通信连接维持方法、系统和相关设备
CN110612747A (zh) * 2017-03-15 2019-12-24 开利公司 无线事件通知系统
WO2020000124A1 (zh) * 2018-06-25 2020-01-02 深圳市大疆创新科技有限公司 激光雷达连接状态的监测方法、激光雷达及上位机
CN112104527A (zh) * 2020-11-19 2020-12-18 启迪国信(北京)信息技术有限公司 最优心跳间隔确定方法、装置、电子设备及可读存储介质
CN112134645A (zh) * 2020-08-04 2020-12-25 国电南瑞科技股份有限公司 一种分布式终端通信质量监控方法、存储介质和计算设备
CN112422646A (zh) * 2020-11-05 2021-02-26 杭州萤石软件有限公司 一种udp动态心跳的实现方法、装置及存储介质
CN113242611A (zh) * 2021-05-18 2021-08-10 展讯通信(上海)有限公司 调整PoC心跳包发送间隔的方法及装置
CN115137447A (zh) * 2022-09-02 2022-10-04 深圳北芯医疗科技有限公司 治疗仪的部件保护方法、设备和治疗仪
CN115334141A (zh) * 2022-08-03 2022-11-11 上海艺赛旗软件股份有限公司 一种基于心跳机制的双向数据传输系统、方法及装置
WO2023066125A1 (zh) * 2021-10-22 2023-04-27 杭州研极微电子有限公司 降低通信设备休眠状态下功耗的方法、装置、设备及介质
CN116566973A (zh) * 2023-06-20 2023-08-08 北京中宏立达科技发展有限公司 一种基于对等网络的文件传输系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1501636A (zh) * 2002-11-19 2004-06-02 华为技术有限公司 一种检测web认证用户是否在线的方法
CN101115313A (zh) * 2007-08-23 2008-01-30 中兴通讯股份有限公司 一种软心跳检测方法及系统
CN102014416A (zh) * 2010-12-03 2011-04-13 中兴通讯股份有限公司 一种对连接进行双向检测的方法及系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1501636A (zh) * 2002-11-19 2004-06-02 华为技术有限公司 一种检测web认证用户是否在线的方法
CN101115313A (zh) * 2007-08-23 2008-01-30 中兴通讯股份有限公司 一种软心跳检测方法及系统
CN102014416A (zh) * 2010-12-03 2011-04-13 中兴通讯股份有限公司 一种对连接进行双向检测的方法及系统

Cited By (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103150205A (zh) * 2011-10-31 2013-06-12 株式会社Pfu 信息处理系统、信息处理装置、以及客户终端
US9413851B2 (en) 2011-10-31 2016-08-09 Pfu Limited Information processing system, information processing device, client terminal, and computer readable medium
CN102395119A (zh) * 2011-11-15 2012-03-28 华为技术有限公司 一种支持应用客户端永久在线的方法、系统及装置
CN102395119B (zh) * 2011-11-15 2014-11-19 华为技术有限公司 一种支持应用客户端永久在线的方法、系统及装置
CN103139008A (zh) * 2011-11-23 2013-06-05 中兴通讯股份有限公司 检测报文心跳周期的自适应方法和装置
CN103188771A (zh) * 2011-12-27 2013-07-03 腾讯科技(深圳)有限公司 长链接的断开、恢复的方法和装置
WO2013107137A1 (zh) * 2012-01-17 2013-07-25 华为技术有限公司 心跳周期的获取方法及终端、服务器
US9137268B2 (en) 2012-01-17 2015-09-15 Huawei Technologies Co., Ltd. Method, terminal, and server for obtaining heartbeat period
CN103491512A (zh) * 2012-06-12 2014-01-01 腾讯科技(深圳)有限公司 消息推送的实现方法和装置
CN103491512B (zh) * 2012-06-12 2017-08-08 腾讯科技(深圳)有限公司 消息推送的实现方法和装置
CN103517250A (zh) * 2012-06-15 2014-01-15 华为终端有限公司 用于处理应用代理客户端异常的方法和装置
WO2013185642A1 (zh) * 2012-06-15 2013-12-19 华为终端有限公司 用于处理应用代理客户端异常的方法和装置
US10069671B2 (en) 2012-06-15 2018-09-04 Huawei Device (Dongguan) Co., Ltd. Method and apparatus for processing abnormality of application proxy client
CN103856954A (zh) * 2012-11-28 2014-06-11 中国电信股份有限公司 探测游牧终端心跳周期的方法、系统、游牧终端与服务器
CN103856954B (zh) * 2012-11-28 2017-11-28 中国电信股份有限公司 探测游牧终端心跳周期的方法、系统、游牧终端与服务器
CN103716323B (zh) * 2013-12-31 2016-11-30 厦门悦讯信息科技有限公司 一种发送心跳包维持长连接的方法
CN105577507A (zh) * 2014-11-10 2016-05-11 中国移动通信集团广东有限公司 一种心跳包发送间隔的调整方法、装置及服务器
CN105610913A (zh) * 2015-12-22 2016-05-25 用友网络科技股份有限公司 通信网络中长连接的心跳保活方法及装置
CN107645529A (zh) * 2016-07-21 2018-01-30 腾讯科技(深圳)有限公司 心跳包发送方法及装置
CN107786383A (zh) * 2016-08-30 2018-03-09 北京国双科技有限公司 心跳数据包的发送方法及装置
CN106375148A (zh) * 2016-08-30 2017-02-01 北京北信源软件股份有限公司 即时通讯中的动态网络心跳处理方法及终端
CN106375148B (zh) * 2016-08-30 2019-05-21 北京北信源软件股份有限公司 即时通讯中的动态网络心跳处理方法及终端
CN110612747A (zh) * 2017-03-15 2019-12-24 开利公司 无线事件通知系统
CN109905259A (zh) * 2017-12-08 2019-06-18 中国电信股份有限公司 通信连接维持方法、系统和相关设备
CN109905259B (zh) * 2017-12-08 2022-02-15 中国电信股份有限公司 通信连接维持方法、系统和相关设备
CN108173709A (zh) * 2017-12-19 2018-06-15 广州视源电子科技股份有限公司 保活长连接方法、装置、终端设备及存储介质
WO2020000124A1 (zh) * 2018-06-25 2020-01-02 深圳市大疆创新科技有限公司 激光雷达连接状态的监测方法、激光雷达及上位机
CN112134645A (zh) * 2020-08-04 2020-12-25 国电南瑞科技股份有限公司 一种分布式终端通信质量监控方法、存储介质和计算设备
CN112134645B (zh) * 2020-08-04 2024-03-29 国电南瑞科技股份有限公司 一种分布式终端通信质量监控方法、存储介质和计算设备
CN112422646A (zh) * 2020-11-05 2021-02-26 杭州萤石软件有限公司 一种udp动态心跳的实现方法、装置及存储介质
CN112422646B (zh) * 2020-11-05 2023-04-18 杭州萤石软件有限公司 一种udp动态心跳的实现方法、装置及存储介质
CN112104527A (zh) * 2020-11-19 2020-12-18 启迪国信(北京)信息技术有限公司 最优心跳间隔确定方法、装置、电子设备及可读存储介质
CN113242611A (zh) * 2021-05-18 2021-08-10 展讯通信(上海)有限公司 调整PoC心跳包发送间隔的方法及装置
WO2023066125A1 (zh) * 2021-10-22 2023-04-27 杭州研极微电子有限公司 降低通信设备休眠状态下功耗的方法、装置、设备及介质
CN115334141A (zh) * 2022-08-03 2022-11-11 上海艺赛旗软件股份有限公司 一种基于心跳机制的双向数据传输系统、方法及装置
CN115137447A (zh) * 2022-09-02 2022-10-04 深圳北芯医疗科技有限公司 治疗仪的部件保护方法、设备和治疗仪
CN116566973A (zh) * 2023-06-20 2023-08-08 北京中宏立达科技发展有限公司 一种基于对等网络的文件传输系统
CN116566973B (zh) * 2023-06-20 2023-11-07 北京中宏立达科技发展有限公司 一种基于对等网络的文件传输系统

Also Published As

Publication number Publication date
CN102223257B (zh) 2014-02-19

Similar Documents

Publication Publication Date Title
CN102223257B (zh) 一种心跳间隔调整方法、服务器、客户端及通信系统
US9246785B2 (en) Method and apparatus for adaptive network heartbeat message for TCP channel
US10893474B2 (en) Communications method and apparatus
KR101978404B1 (ko) 단말-개시 전력 모드 스위칭
JP5058086B2 (ja) 低消費電力で着呼を待ち受ける方法、構内交換装置、移動端末及びプログラム
US9451067B2 (en) Portable terminal auxiliary device having satellite communication function
CN103874035A (zh) 一种移动终端消息推送方法及设备
GB2513313A (en) Infrastructure equipment, mobile communications network and method
US8468225B2 (en) Roaming TCP connections between changing physical networks
US9083847B2 (en) Video communication method and terminal
EP4247060A1 (en) Communication configuration method and apparatus
CN102480673B (zh) Cs与ps并发的实现方法及装置
KR101544439B1 (ko) 휴대용 단말기에서 네트워크 연결을 확인하기 위한 장치 및 방법
WO2022033083A1 (zh) 译码方法、译码系统、电子装置和存储介质
CN102984158B (zh) Voip网络切换方法、系统和装置
CN102340430A (zh) 一种个人网设备连接管理方法及系统
CN104683607A (zh) 一种提升软电话接通率的方法及其装置
CN107846403B (zh) 一种sim卡与应用服务器通信方法及系统
CN103582035B (zh) 一种无线资源配置的管理方法和系统
CN104954438A (zh) 基于padt报文的会话处理方法和设备
CN101990092B (zh) 无线视频通讯系统中差错控制的方法、装置及系统
CN102082948B (zh) 视频信息获取系统、方法及设备
JP4697594B2 (ja) Pdpコンテキスト制御システム、方法、プログラム及び携帯端末
JP2002305534A (ja) 交換機、通信システム、通信方法および状態遷移方法
CN111934957B (zh) 支持WiFi和离线语音的应用系统及方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20160314

Address after: 122400 Jianping Chaoyang City County of Liaoning province Yebaishou Street Xiangyang Street cottage No. 21-53

Patentee after: Yu Pengfei

Address before: 100020, 25 floor, building A, PAX building, 20 East Road, workers' Stadium, Chaoyang District, Beijing

Patentee before: Mo Yajing

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20170119

Address after: 100020 Beijing City West Road No. 12 Chaoyang District Building No. 2 (national advertising Industrial Park incubator No. 25260)

Patentee after: Tong Yi (Beijing) Technology Co., Ltd.

Address before: 122400 Jianping Chaoyang City County of Liaoning province Yebaishou Street Xiangyang Street cottage No. 21-53

Patentee before: Yu Pengfei

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20140219

Termination date: 20200725

CF01 Termination of patent right due to non-payment of annual fee