CN104135460A - 一种推送通道保活方法和推送服务器 - Google Patents
一种推送通道保活方法和推送服务器 Download PDFInfo
- Publication number
- CN104135460A CN104135460A CN201310161909.0A CN201310161909A CN104135460A CN 104135460 A CN104135460 A CN 104135460A CN 201310161909 A CN201310161909 A CN 201310161909A CN 104135460 A CN104135460 A CN 104135460A
- Authority
- CN
- China
- Prior art keywords
- access
- keepalive period
- heartbeat keepalive
- described client
- client
- 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
Links
Landscapes
- Mobile Radio Communication Systems (AREA)
Abstract
本发明提供一种推送通道保活方法和推送服务器,涉及通信领域,能够实现根据客户端的接入网络配置来设置心跳保活周期,相比现有技术中将心跳保活周期固定的设置成小于全网的老化时间,延长了心跳保活周期,降低了客户端电量和流量的消耗。其方法为:客户端向推送服务器发送心跳保活周期获取请求,使推送服务器根据接收到的客户端的心跳保活周期获取请求中的接入网络配置信息获取与接入网络配置信息对应的心跳保活周期并推送给客户端。本发明实施例用于推送通道保活。
Description
技术领域
本发明涉及通信领域,尤其涉及一种推送通道保活方法和推送服务器。
背景技术
随着移动App(Application,应用)的流行,App运营商会适时地运营向用户Push(推送)一些通知、消息时,能够有效地激活用户更多地使用App,更少地卸载App应用。在运用Push技术时,需要维持客户端与服务器之间TCP(Transmission Control Protocol,传输控制协议)长连接,比如:可以通过在客户端与服务器之间定期心跳保活的方式维持TCP(Transmission Control Protocol,传输控制协议)长连接,以节省电量、流量。如果用户设置了心跳,在维持客户端与服务器之间的TCP长连接期间,客户端与服务器之间就会在一定的时间内发送用户设置的次数的心跳。所谓“心跳”就是客户端定时发送一个自定义的结构体(心跳包或心跳帧),让服务器知道客户端在线,以确保长连接的有效性以确保连接的有效性。推送是服务器实时地将更新的信息传送到客户端,无需客户端主动向服务器获取信息的一种技术。
在现有技术中,因为受IPv4(网际网路通讯协定第4版)的IP(Internet Protocol,互联网协议)地址数量的限制,运营商分配给客户端的IP地址是运营商内网的IP地址,客户端要连接互联网,需要通过运营商的网关做一个NAT(Network Address Translation,网络地址转换)处理,即通过NAT处理后,可以将私网IP转换成公网IP。处理NAT的NAT设备在维护每个TCP连接的会话时,对于每个会话都设置有“老化”时间,且不同运营商、不同区域的NAT设备的老化时间各不相同,且相差较大。其中,为了保证网络的安全性,防火墙对于每个会话都设置有一个生存时间,可以理解为一个时间长度的阈值,这个生存时间即被称作老化时间,当一个会话的两个连续报文到达防火墙的时间间隔大于该会话的老化时间时,防火墙就从会话列表中将该会话删除。
因此,为了保证客户端在各种网络环境都能正常工作,在现有技术中,将心跳保活周期设置的小于全网NAT设备中最短的老化时间,但是这样会导致:客户端频繁的进行心跳保活,增大耗电量、使客户端待机时间变短、增大了客户端流量耗费、增加了用户的费用。
发明内容
本发明的实施例提供一种推送通道保活方法和推送服务器,解决了客户端待机时间变短和流量耗费的问题。
为达到上述目的,本发明的实施例采用如下技术方案:
第一方面,提供一种推送通道保活方法,所述方法包括:
接收客户端发送的心跳保活周期获取请求,所述心跳保活周期获取请求包括客户端的接入网络配置信息;
根据接入网络配置信息与心跳保活周期的对应关系,获取与所述客户端的接入网络配置信息对应的心跳保活周期;
向所述客户端发送与所述客户端的接入网络配置信息对应的心跳保活周期。
结合第一方面,在第一种可能的实现方式中,所述接入网络配置信息包括所述客户端的接入点类型和/或所述客户端的接入IP信息;
所述根据接入网络配置信息与心跳保活周期的对应关系,获取与所述客户端的接入网络配置信息对应的心跳保活周期包括:
若所述接入网络配置信息为所述客户端的接入点类型,则根据接入点类型获取与心跳保活周期的对应关系获取与所述客户端的接入点类型对应的心跳保活周期;或
若所述接入网络配置信息为所述客户端的接入IP信息,则根据接入IP信息获取与心跳保活周期的对应关系获取与所述客户端的接入IP信息对应的心跳保活周期;或
若所述接入网络配置信息为所述客户端的接入点类型和接入IP信息,则根据接入点类型获取与心跳保活周期的对应关系获取与所述客户端的接入点类型对应的心跳保活周期,若无法获取与所述客户端的接入点类型对应的心跳保活周期,则根据接入IP信息获取与心跳保活周期的对应关系获取与所述客户端的接入IP信息对应的心跳保活周期;或者,根据接入IP信息获取与心跳保活周期的对应关系获取与所述客户端的接入IP信息对应的心跳保活周期,若无法获取与所述客户端的接入IP信息对应的心跳保活周期,则根据接入点类型获取与心跳保活周期的对应关系获取与所述客户端的接入点类型对应的心跳保活周期。
结合第一方面或第一方面的第一种可能的实现方式,所述接入点类型包括有线接入点和无线接入点;所述无线接入点包括无线相容认证网络WiFi、第3代移动通信网络3G、第2代移动通信网络2G、长期演进网络LTE;
所述接入IP信息包括所述客户端的接入IP地址和子网掩码长度。
结合第一方面的第二种可能的实现方式,在第三种可能的实现方式中,所述根据接入IP信息获取与心跳保活周期的对应关系获取与所述客户端的接入IP信息对应的心跳保活周期包括:
根据所述客户端的接入IP地址和子网掩码长度获取所述客户端的IP地址的网络号;
根据IP地址的网络号、子网掩码长度与心跳保活周期的对应关系获取与所述客户端的IP地址的网络号、子网掩码长度对应的心跳保活周期;
其中,与所述客户端的IP地址的网络号和子网掩码长度对应的心跳保活周期是根据心跳保活周期与网络地址转换设备老化时间的对应关系配置的。
结合第一方面的第三种可能的实现方式,在第四种可能的实现方式中,所述心跳保活周期与网络地址转换设备老化时间的对应关系包括:
Th=Max(kTn,Tn-T),其中,Th为所述心跳保活周期,Tn为所述网络地址转换设备老化时间,k为系数,T为与Tn单位相同的时间常数。
结合第一方面的第四种可能的实现方式,在第五种可能的实现方式种,若无法获取与所述客户端的接入网络配置信息对应的心跳保活周期,则所述方法还包括:
向所述客户端发送缺省心跳保活周期。
第二方面,提供一种推送服务器,所述服务器包括:
请求接收单元,用于接收客户端发送的心跳保活周期获取请求,所述心跳保活周期获取请求包括客户端的接入网络配置信息,并将所述客户端的接入网络配置信息发送至周期配置单元;
周期配置单元,用于根据接入网络配置信息与心跳保活周期的对应关系,获取与所述客户端的接入网络配置信息对应的心跳保活周期,并将与所述客户端的接入网络配置信息对应的心跳保活周期发送至推送单元;
推送单元,用于接收所述周期配置单元发送的与所述客户端的接入网络配置信息对应的心跳保活周期,并向所述客户端发送与所述客户端的接入网络配置信息对应的心跳保活周期。
结合第二方面,在第一种可能的实现方式中,接收到的所述客户端的接入网络配置信息包括所述客户端的接入点类型和/或所述客户端的接入IP信息;
所述周期配置单元具体用于:
若所述接入网络配置信息为所述客户端的接入点类型,则根据接入点类型获取与心跳保活周期的对应关系获取与所述客户端的接入点类型对应的心跳保活周期;或
若所述接入网络配置信息为所述客户端的接入IP信息,则根据接入IP信息获取与心跳保活周期的对应关系获取与所述客户端的接入IP信息对应的心跳保活周期;或
若所述接入网络配置信息为所述客户端的接入点类型和接入IP信息,则根据接入点类型获取与心跳保活周期的对应关系获取与所述客户端的接入点类型对应的心跳保活周期,若无法获取与所述客户端的接入点类型对应的心跳保活周期,则根据接入IP信息获取与心跳保活周期的对应关系获取与所述客户端的接入IP信息对应的心跳保活周期;或者,根据接入IP信息获取与心跳保活周期的对应关系获取与所述客户端的接入IP信息对应的心跳保活周期,若无法获取与所述客户端的接入IP信息对应的心跳保活周期,则根据接入点类型获取与心跳保活周期的对应关系获取与所述客户端的接入点类型对应的心跳保活周期。
结合第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,所述周期配置单元具体用于:
根据所述客户端的接入IP地址和子网掩码长度获取所述客户端的IP地址的网络号;
根据IP地址的网络号、子网掩码长度与心跳保活周期的对应关系获取与所述客户端的IP地址的网络号、子网掩码长度对应的心跳保活周期;
其中,与所述客户端的IP地址的网络号和子网掩码长度对应的心跳保活周期是根据心跳保活周期与网络地址转换设备老化时间的对应关系配置的。
结合第二方面,在第三种可能的实现方式中,所述推送单元还用于:
若无法获取与所述客户端的接入网络配置信息对应的心跳保活周期,则向所述客户端发送缺省心跳保活周期。
本发明的实施例提供一种推送通道保活方法和推送服务器,根据接收到的客户端的心跳保活周期获取请求中的接入网络配置信息获取与接入网络配置信息对应的心跳保活周期,能够实现根据客户端的接入网络配置来设置心跳保活周期,相比现有技术中将心跳保活周期固定的设置成小于全网的老化时间,延长了心跳保活周期,减少了客户端与服务器的心跳交互次数,从而降低了客户端电量和流量的消耗。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种推送通道保活方法的流程示意图;
图2为本发明实施例提供的另一种推送通道保活方法的流程示意图;
图3为本发明实施例提供的一种推送服务器的结构示意图;
图4为本发明实施例提供的另一种推送服务器的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供一种推送通道保活方法,如图1所示,该方法包括:
101、推送服务器接收客户端发送的心跳保活周期获取请求,心跳保活周期获取请求包括客户端的接入网络配置信息。
其中,在客户端向推送服务器发送心跳保活周期获取请求之前,首先要和推送服务器建立TCP连接。上述客户端的接入网络配置信息可以为客户端的接入点类型,比如客户端接入点可以为WiFi(Wireless Fidelity,无线相容认证网络)或者Wired(有线连接),或者接入IP信息,该接入IP信息可以包括客户端的接入IP地址以及子网掩码长度。
102、推送服务器根据接入网络配置信息与心跳保活周期的对应关系,获取与客户端的接入网络配置信息对应的心跳保活周期。
其中,接入网络配置信息与心跳保活周期的对应关系可以是一个关系映射表,该表可以预先设置在推送服务器中。当然,接入网络配置信息与心跳保活周期的对应关系也可以设置成其他形式。
103、推送服务器向客户端发送与客户端的接入网络配置信息对应的心跳保活周期。
本发明的实施例提供一种推送通道保活方法,根据接收到的客户端的心跳保活周期获取请求中的接入网络配置信息获取与接入网络配置信息对应的心跳保活周期,能够实现根据客户端的接入网络配置来设置心跳保活周期,相比现有技术中将心跳保活周期固定的设置成小于全网的老化时间,延长了心跳保活周期,减少了客户端与服务器的心跳交互次数,从而降低了客户端电量和流量的消耗。
为了使本领域技术人员能够更清楚地理解本发明实施例提供的技术方案,下面通过具体的实施例,对本发明实施例提供的另一种推送通道保活方法进行详细说明,如图2所示,该方法包括:
201、客户端与推送服务器建立TCP连接。
当网络通信采用TCP协议时,在客户端与推送服务器产生数据交互之前,客户端与推送服务器之间必须先建立一个TCP连接,在本发明实施例中的TCP连接通常指的是TCP长连接,即客户端与推送服务器之间建立的这个TCP连接不会主动关闭,后续的数据交互可能会继续使用这个链接,所以需要获取心跳保活周期,在心跳保活周期内来维持这个TCP长连接。
202、客户端向推送服务器发送心跳保活周期获取请求,该心跳保活周期获取请求携带有客户端的接入网络配置信息。
上述客户端的接入网络配置信息可以为客户端的接入点类型,比如客户端接入点可以为无线连接,比如WiFi、3G(3rd Generation,第3代移动通信网络)、2G(2nd Generation,第2代移动通信网络)、LTE(Long Term Evolution,长期演进网络)等,客户端接入点也可以为有线接入点,或者接入网络配置信息可以为客户端的接入IP信息,该接入IP信息可以包括客户端的接入IP地址以及子网掩码长度。
在步骤202后,步骤203与204之间没有固定的顺序,可以先执行步骤203,若执行步骤203成功,则下一步直接执行步骤206;若执行步骤203失败,则继续执行步骤204,若执行步骤204成功,则下一步执行步骤206,若执行步骤204失败,则下一步执行步骤205。
或者,也可以先执行步骤204,若执行步骤204成功,则下一步直接执行步骤206;若执行步骤204失败,则继续执行步骤203,若执行步骤203成功,则下一步执行步骤206,若执行步骤203失败,则下一步执行步骤205。其中,本实施例是以先执行步骤203为例的。
203、推送服务器根据接入点类型与心跳保活周期的对应关系,获取与客户端的接入点类型对应的心跳保活周期。
示例性的,在推送服务器端中可以存储接入点类型与心跳保活周期的对应关系的记录表,该记录表中记录了与各种接入点类型对应的心跳保活周期,这里可以将这个记录表称为心跳周期表,推送服务器在获取客户端的接入点类型后,只需查找该心跳周期表就能够获取与接入点类型对应的心跳保活周期。例如,记录客户端的接入点类型与心跳保活周期对应关系的心跳周期表可以如表1所示:
表1
当推送服务器根据表1无法获取与客户端的接入点类型对应的心跳保活周期时,表示根据客户端的接入点类型来获取心跳保活周期失败了,此时可以执行步骤204。
204、推送服务器根据接入IP信息与心跳保活周期的对应关系,获取与客户端的接入IP信息对应的心跳保活周期。
示例性的,接入IP信息可以包括客户端的接入IP地址和子网掩码长度。
示例性的,在接收到的客户端的接入IP地址和子网掩码长度后,先根据接入IP地址和子网掩码长度获取客户端的IP地址的网络号。
具体的,客户端的IP地址的网络号可以通过以下方式获取:
第一步,将客户端的接入IP地址转换为二进制,假设客户端的接入IP地址为192.9.200.13,则转为二进制的值为11000000 0000100111001000 00001101;
第二步,将客户端的子网掩码长度转换为二进制,假设客户端的子网掩码长度为24位,转换为二进制的值为11111111 1111111111111111 00000000(即前24位为1);
第三步,将“11000000 00001001 11001000 00001101”和“11111111 11111111 11111111 00000000”进行逻辑与运算,得到11000000 00001001 11001000 00000000,再将11000000 0000100111001000 00000000转换为10进制得到192.9.200.0,该192.9.200.0即为客户端的IP地址的网络号。
在推送服务器端中可以存储IP地址的网络号和子网掩码长度与心跳保活周期的对应关系的心跳周期表,推送服务器只需查找该心跳周期表就能够获取与IP地址的网络号和子网掩码长度对应的心跳保活周期。例如,记录客户端的IP地址的网络号和子网掩码长度与心跳保活周期对应关系的心跳周期表可以如表2所示:
表2
根据表2中IP地址网络号与心跳保活周期的对应关系就可以查出客户端的IP地址的网络号为“192.9.200.0”、子网掩码长度为24对应的心跳保活周期为900秒。
其中,表2中的心跳保活周期是根据NAT设备的老化时间配置好的。具体的配置方法可以包括:
先根据客户端的接入IP地址确定与接入IP地址对应的NAT设备老化时间,再根据NAT设备老化时间计算出对应的心跳保活周期,计算公式如下所示:
Th=Max(kTn,Tn-T),其中,Th为心跳保活周期,Tn为NAT设备老化时间,k为系数,T为与Tn单位相同的时间常数。示例性的,NAT设备老化时间Tn的单位可以为分钟,此时T的单位也为分钟,比如T可以为10分钟,k可以为0.9,当然,T、k也可以为其他值,具体需根据实际需要来设置,此处不做限定。
另外,当推送服务器根据表2无法获取与客户端的接入IP信息对应的心跳保活周期时,表示获取与客户端的接入IP信息对应的心跳保活周期也失败了,此时可以执行步骤205。
205、推送服务器获取缺省(Default)心跳保活周期。
推送服务器配置的缺省心跳保活周期相对根据接入点类型或者接入IP信息获取的心跳保活周期而言比较短,以适应各种复杂网络的最短保活周期。
另外,除了上述无法根据接入点类型或者接入IP信息获取的心跳保活周期的情况外,对于没有向推送服务器发送心跳保活周期获取请求的,推送服务器也可以令其使用缺省心跳保活周期。
206、推送服务器将获取的心跳保活周期推送给客户端。
207、客户端以从推送服务器接收到的心跳保活周期进行推送通道的心跳保活处理。
本发明的实施例提供一种推送通道保活方法,根据接收到的客户端的心跳保活周期获取请求中的接入网络配置信息获取与接入网络配置信息对应的心跳保活周期,能够实现根据客户端的接入网络配置来设置心跳保活周期,相比现有技术中将心跳保活周期固定的设置成小于全网的老化时间,延长了心跳保活周期,减少了客户端与服务器的心跳交互次数,从而降低了客户端电量和流量的消耗。
本发明实施例还提供一种推送服务器1,如图3所示,推送服务器1包括:
请求接收单元11,用于接收客户端发送的心跳保活周期获取请求,心跳保活周期获取请求包括客户端的接入网络配置信息,并将客户端的接入网络配置信息发送至周期配置单元12;
周期配置单元12,用于接收请求接收单元11发送的客户端的接入网络配置信息,根据接入网络配置信息与心跳保活周期的对应关系,获取与客户端的接入网络配置信息对应的心跳保活周期,并将与客户端的接入网络配置信息对应的心跳保活周期发送至推送单元13;
推送单元13,用于接收周期配置单元12发送的与客户端的接入网络配置信息对应的心跳保活周期,并向客户端发送与客户端的接入网络配置信息对应的心跳保活周期。
可选的,推送单元13还可以用于:
若无法获取与客户端的接入网络配置信息对应的心跳保活周期,则向客户端发送缺省心跳保活周期。
其中,推送服务器1接收到的接入网络配置信息包括客户端的接入点类型和/或客户端的接入IP信息。
可选的,周期配置单元12可以具体用于:
若接入网络配置信息为客户端的接入点类型,则根据接入点类型获取与心跳保活周期的对应关系获取与客户端的接入点类型对应的心跳保活周期;或
若接入网络配置信息为客户端的接入IP信息,则根据接入IP信息获取与心跳保活周期的对应关系获取与客户端的接入IP信息对应的心跳保活周期;或
若接入网络配置信息为客户端的接入点类型和接入IP信息,则根据接入点类型获取与心跳保活周期的对应关系获取与客户端的接入点类型对应的心跳保活周期,若无法获取与客户端的接入点类型对应的心跳保活周期,则根据接入IP信息获取与心跳保活周期的对应关系获取与客户端的接入IP信息对应的心跳保活周期;或者,根据接入IP信息获取与心跳保活周期的对应关系获取与客户端的接入IP信息对应的心跳保活周期,若无法获取与客户端的接入IP信息对应的心跳保活周期,则根据接入点类型获取与心跳保活周期的对应关系获取与客户端的接入点类型对应的心跳保活周期。
其中,上述接入点类型包括有线接入点和无线接入点;无线接入点包括WiFi、3G、2G、LTE等。
可选的,当根据接入IP信息与心跳保活周期的对应关系,获取与客户端的接入IP信息对应的心跳保活周期时,周期配置单元12可以具体用于:
根据客户端的接入IP地址和子网掩码长度获取客户端的IP地址的网络号;
根据IP地址的网络号、子网掩码长度与心跳保活周期的对应关系获取与客户端的IP地址的网络号、子网掩码长度对应的心跳保活周期;
其中,与客户端的IP地址的网络号和子网掩码长度对应的心跳保活周期是根据心跳保活周期与网络地址转换设备老化时间的对应关系配置的。
其中,心跳保活周期与网络地址转换设备老化时间的对应关系包括:
Th=Max(kTn,Tn-T),其中,Th为心跳保活周期,Tn为网络地址转换设备老化时间,k为系数,T为与Tn单位相同的时间常数。
本发明的实施例提供一种推送服务器,该推送服务器根据接收到的客户端的心跳保活周期获取请求中的接入网络配置信息获取与接入网络配置信息对应的心跳保活周期,能够实现根据客户端的接入网络配置来设置心跳保活周期,相比现有技术中将心跳保活周期固定的设置成小于全网的老化时间,延长了心跳保活周期,减少了客户端与服务器的心跳交互次数,从而降低了客户端电量和流量的消耗。
本发明实施例还提供另一种推送服务器3,如图4所示,该推送服务器3包括总线31,以及连接在总线31上的接口32、存储器33和处理器34;其中,接口32用于与网元通信,存储器33用于存储程序331,处理器34执行程序331用于:
接收客户端发送的心跳保活周期获取请求,心跳保活周期获取请求包括客户端的接入网络配置信息;
根据接入网络配置信息与心跳保活周期的对应关系,获取与客户端的接入网络配置信息对应的心跳保活周期;
向客户端发送与客户端的接入网络配置信息对应的心跳保活周期。
可选的,处理器34执行程序331还可以用于:若无法获取与客户端的接入网络配置信息对应的心跳保活周期,则向客户端发送缺省心跳保活周期。
其中,客户端的接入网络配置信息包括客户端的接入点类型和/或客户端的接入IP信息。
可选的,处理器34执行程序331还可以具体用于:
若接入网络配置信息为客户端的接入点类型,则根据接入点类型获取与心跳保活周期的对应关系获取与客户端的接入点类型对应的心跳保活周期;或
若接入网络配置信息为客户端的接入IP信息,则根据接入IP信息获取与心跳保活周期的对应关系获取与客户端的接入IP信息对应的心跳保活周期;或
若接入网络配置信息为客户端的接入点类型和接入IP信息,则根据接入点类型获取与心跳保活周期的对应关系获取与客户端的接入点类型对应的心跳保活周期,若无法获取与客户端的接入点类型对应的心跳保活周期,则根据接入IP信息获取与心跳保活周期的对应关系获取与客户端的接入IP信息对应的心跳保活周期;或者,根据接入IP信息获取与心跳保活周期的对应关系获取与客户端的接入IP信息对应的心跳保活周期,若无法获取与客户端的接入IP信息对应的心跳保活周期,则根据接入点类型获取与心跳保活周期的对应关系获取与客户端的接入点类型对应的心跳保活周期。
其中,上述接入点类型包括有线接入点和无线接入点;无线接入点包括WiFi、3G、2G、LTE等。
可选的,处理器34执行程序331还可以具体用于:
根据客户端的接入IP地址和子网掩码长度获取客户端的IP地址的网络号;
根据IP地址的网络号、子网掩码长度与心跳保活周期的对应关系获取与客户端的IP地址的网络号、子网掩码长度对应的心跳保活周期;
其中,与客户端的IP地址的网络号和子网掩码长度对应的心跳保活周期是根据心跳保活周期与网络地址转换设备老化时间的对应关系配置的。
其中,心跳保活周期与网络地址转换设备老化时间的对应关系包括:
Th=Max(kTn,Tn-T),其中,Th为心跳保活周期,Tn为网络地址转换设备老化时间,k为系数,T为与Tn单位相同的时间常数。
本发明的实施例提供一种推送服务器,该推送服务器根据接收到的客户端的心跳保活周期获取请求中的接入网络配置信息获取与接入网络配置信息对应的心跳保活周期,能够实现根据客户端的接入网络配置来设置心跳保活周期,相比现有技术中将心跳保活周期固定的设置成小于全网的老化时间,延长了心跳保活周期,减少了客户端与服务器的心跳交互次数,从而降低了客户端电量和流量的消耗。
在本申请所提供的几个实施例中,应该理解到,所揭露的方法和设备,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理包括,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (10)
1.一种推送通道保活方法,其特征在于,所述方法包括:
接收客户端发送的心跳保活周期获取请求,所述心跳保活周期获取请求包括客户端的接入网络配置信息;
根据接入网络配置信息与心跳保活周期的对应关系,获取与所述客户端的接入网络配置信息对应的心跳保活周期;
向所述客户端发送与所述客户端的接入网络配置信息对应的心跳保活周期。
2.根据权利要求1所述的方法,其特征在于,所述接入网络配置信息包括所述客户端的接入点类型和/或所述客户端的接入IP信息;
所述根据接入网络配置信息与心跳保活周期的对应关系,获取与所述客户端的接入网络配置信息对应的心跳保活周期包括:
若所述接入网络配置信息为所述客户端的接入点类型,则根据接入点类型获取与心跳保活周期的对应关系获取与所述客户端的接入点类型对应的心跳保活周期;或
若所述接入网络配置信息为所述客户端的接入IP信息,则根据接入IP信息获取与心跳保活周期的对应关系获取与所述客户端的接入IP信息对应的心跳保活周期;或
若所述接入网络配置信息为所述客户端的接入点类型和接入IP信息,则根据接入点类型获取与心跳保活周期的对应关系获取与所述客户端的接入点类型对应的心跳保活周期,若无法获取与所述客户端的接入点类型对应的心跳保活周期,则根据接入IP信息获取与心跳保活周期的对应关系获取与所述客户端的接入IP信息对应的心跳保活周期;或者,根据接入IP信息获取与心跳保活周期的对应关系获取与所述客户端的接入IP信息对应的心跳保活周期,若无法获取与所述客户端的接入IP信息对应的心跳保活周期,则根据接入点类型获取与心跳保活周期的对应关系获取与所述客户端的接入点类型对应的心跳保活周期。
3.根据权利要求1或2所述的方法,其特征在于,所述接入点类型包括有线接入点和无线接入点;所述无线接入点包括无线相容认证网络WiFi、第3代移动通信网络3G、第2代移动通信网络2G、长期演进网络LTE;
所述接入IP信息包括所述客户端的接入IP地址和子网掩码长度。
4.根据权利要求3所述的方法,其特征在于,所述根据接入IP信息获取与心跳保活周期的对应关系获取与所述客户端的接入IP信息对应的心跳保活周期包括:
根据所述客户端的接入IP地址和子网掩码长度获取所述客户端的IP地址的网络号;
根据IP地址的网络号、子网掩码长度与心跳保活周期的对应关系获取与所述客户端的IP地址的网络号、子网掩码长度对应的心跳保活周期;
其中,与所述客户端的IP地址的网络号和子网掩码长度对应的心跳保活周期是根据心跳保活周期与网络地址转换设备老化时间的对应关系配置的。
5.根据权利要求4所述的方法,其特征在于,所述心跳保活周期与网络地址转换设备老化时间的对应关系包括:
Th=Max(kTn,Tn-T),其中,Th为所述心跳保活周期,Tn为所述网络地址转换设备老化时间,k为系数,T为与Tn单位相同的时间常数。
6.根据权利要求1所述的方法,其特征在于,若无法获取与所述客户端的接入网络配置信息对应的心跳保活周期,则所述方法还包括:
向所述客户端发送缺省心跳保活周期。
7.一种推送服务器,其特征在于,所述服务器包括:
请求接收单元,用于接收客户端发送的心跳保活周期获取请求,所述心跳保活周期获取请求包括客户端的接入网络配置信息,并将所述客户端的接入网络配置信息发送至周期配置单元;
周期配置单元,用于接收所述请求接收单元发送的所述客户端的接入网络配置信息,根据接入网络配置信息与心跳保活周期的对应关系,获取与所述客户端的接入网络配置信息对应的心跳保活周期,并将与所述客户端的接入网络配置信息对应的心跳保活周期发送至推送单元;
推送单元,用于接收所述周期配置单元发送的与所述客户端的接入网络配置信息对应的心跳保活周期,并向所述客户端发送与所述客户端的接入网络配置信息对应的心跳保活周期。
8.根据权利要求7所述的服务器,其特征在于,接收到的所述客户端的接入网络配置信息包括所述客户端的接入点类型和/或所述客户端的接入IP信息;
所述周期配置单元具体用于:
若所述接入网络配置信息为所述客户端的接入点类型,则根据接入点类型获取与心跳保活周期的对应关系获取与所述客户端的接入点类型对应的心跳保活周期;或
若所述接入网络配置信息为所述客户端的接入IP信息,则根据接入IP信息获取与心跳保活周期的对应关系获取与所述客户端的接入IP信息对应的心跳保活周期;或
若所述接入网络配置信息为所述客户端的接入点类型和接入IP信息,则根据接入点类型获取与心跳保活周期的对应关系获取与所述客户端的接入点类型对应的心跳保活周期,若无法获取与所述客户端的接入点类型对应的心跳保活周期,则根据接入IP信息获取与心跳保活周期的对应关系获取与所述客户端的接入IP信息对应的心跳保活周期;或者,根据接入IP信息获取与心跳保活周期的对应关系获取与所述客户端的接入IP信息对应的心跳保活周期,若无法获取与所述客户端的接入IP信息对应的心跳保活周期,则根据接入点类型获取与心跳保活周期的对应关系获取与所述客户端的接入点类型对应的心跳保活周期。
9.根据权利要求8所述服务器,其特征在于,所述周期配置单元具体用于:
根据所述客户端的接入IP地址和子网掩码长度获取所述客户端的IP地址的网络号;
根据IP地址的网络号、子网掩码长度与心跳保活周期的对应关系获取与所述客户端的IP地址的网络号、子网掩码长度对应的心跳保活周期;
其中,与所述客户端的IP地址的网络号和子网掩码长度对应的心跳保活周期是根据心跳保活周期与网络地址转换设备老化时间的对应关系配置的。
10.根据权利要求7所述的服务器,其特征在于,所述推送单元还用于:
若无法获取与所述客户端的接入网络配置信息对应的心跳保活周期,则向所述客户端发送缺省心跳保活周期。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310161909.0A CN104135460B (zh) | 2013-05-03 | 2013-05-03 | 一种推送通道保活方法和推送服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310161909.0A CN104135460B (zh) | 2013-05-03 | 2013-05-03 | 一种推送通道保活方法和推送服务器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104135460A true CN104135460A (zh) | 2014-11-05 |
CN104135460B CN104135460B (zh) | 2017-11-24 |
Family
ID=51807984
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310161909.0A Active CN104135460B (zh) | 2013-05-03 | 2013-05-03 | 一种推送通道保活方法和推送服务器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104135460B (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104243719A (zh) * | 2013-06-08 | 2014-12-24 | ***通信集团公司 | 移动通信网络中长连接的心跳周期确定方法、***和装置 |
CN105071956A (zh) * | 2015-07-23 | 2015-11-18 | 苏州汉明科技有限公司 | 一种用于商业wifi的通信方法与*** |
CN105897813A (zh) * | 2015-06-10 | 2016-08-24 | 乐视致新电子科技(天津)有限公司 | 心跳消息发送方法、接收方法及装置 |
CN106535309A (zh) * | 2016-10-28 | 2017-03-22 | 珠海市魅族科技有限公司 | 一种保持网络连接的方法及装置 |
CN106803833A (zh) * | 2015-11-26 | 2017-06-06 | 北京百度网讯科技有限公司 | 长连接中心跳的处理方法、装置及*** |
WO2017215614A1 (zh) * | 2016-06-16 | 2017-12-21 | 中兴通讯股份有限公司 | 心跳保活的实现方法、装置及*** |
CN108234578A (zh) * | 2016-12-22 | 2018-06-29 | 航天信息股份有限公司 | 一种推送的方法及装置 |
CN111857863A (zh) * | 2020-06-19 | 2020-10-30 | 微梦创科网络科技(中国)有限公司 | 一种动态配置方法及*** |
CN111917581A (zh) * | 2020-07-31 | 2020-11-10 | 深圳乐播科技有限公司 | 通信连接的维护方法、装置、设备及存储介质 |
CN112202626A (zh) * | 2020-08-04 | 2021-01-08 | 长春创世麒麟科技有限公司 | 一种实时数据通信心跳包推送方法 |
CN114390453A (zh) * | 2022-02-09 | 2022-04-22 | 福建天泉教育科技有限公司 | 一种消息推送的优化方法及终端 |
CN114697377A (zh) * | 2022-04-07 | 2022-07-01 | 深信服科技股份有限公司 | 一种客户端产品的保活方法、***、装置及可读存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1870646A (zh) * | 2006-02-17 | 2006-11-29 | 华为技术有限公司 | 一种媒体网关控制协议中心跳机制的改进方法 |
US20100015974A1 (en) * | 2008-07-15 | 2010-01-21 | Kevin Stubbings | Method and apparatus for reducing push-to-talk (ptt) latency in a wcdma network |
CN102149215A (zh) * | 2010-02-05 | 2011-08-10 | 华为技术有限公司 | 传输保活信息的方法及终端和网络设备 |
CN102523178A (zh) * | 2011-12-20 | 2012-06-27 | 华为技术有限公司 | 一种基于推送的心跳消息发送方法和终端 |
WO2012110103A1 (en) * | 2011-02-18 | 2012-08-23 | Birdstep Technology | Method, gateway, and client for optimizing keep-alive message handling |
CN102685768A (zh) * | 2011-03-08 | 2012-09-19 | 华为技术有限公司 | 心跳消息的处理方法、心跳周期的获取方法及接入网设备 |
CN103037483A (zh) * | 2011-09-30 | 2013-04-10 | 联想(北京)有限公司 | 网络服务器以及维持其与应用服务器的连接的方法 |
CN103209089A (zh) * | 2012-01-17 | 2013-07-17 | 华为技术有限公司 | 心跳周期的获取方法及终端、服务器 |
-
2013
- 2013-05-03 CN CN201310161909.0A patent/CN104135460B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1870646A (zh) * | 2006-02-17 | 2006-11-29 | 华为技术有限公司 | 一种媒体网关控制协议中心跳机制的改进方法 |
US20100015974A1 (en) * | 2008-07-15 | 2010-01-21 | Kevin Stubbings | Method and apparatus for reducing push-to-talk (ptt) latency in a wcdma network |
CN102149215A (zh) * | 2010-02-05 | 2011-08-10 | 华为技术有限公司 | 传输保活信息的方法及终端和网络设备 |
WO2012110103A1 (en) * | 2011-02-18 | 2012-08-23 | Birdstep Technology | Method, gateway, and client for optimizing keep-alive message handling |
CN102685768A (zh) * | 2011-03-08 | 2012-09-19 | 华为技术有限公司 | 心跳消息的处理方法、心跳周期的获取方法及接入网设备 |
CN103037483A (zh) * | 2011-09-30 | 2013-04-10 | 联想(北京)有限公司 | 网络服务器以及维持其与应用服务器的连接的方法 |
CN102523178A (zh) * | 2011-12-20 | 2012-06-27 | 华为技术有限公司 | 一种基于推送的心跳消息发送方法和终端 |
CN103209089A (zh) * | 2012-01-17 | 2013-07-17 | 华为技术有限公司 | 心跳周期的获取方法及终端、服务器 |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104243719A (zh) * | 2013-06-08 | 2014-12-24 | ***通信集团公司 | 移动通信网络中长连接的心跳周期确定方法、***和装置 |
CN105897813A (zh) * | 2015-06-10 | 2016-08-24 | 乐视致新电子科技(天津)有限公司 | 心跳消息发送方法、接收方法及装置 |
CN105071956A (zh) * | 2015-07-23 | 2015-11-18 | 苏州汉明科技有限公司 | 一种用于商业wifi的通信方法与*** |
CN106803833A (zh) * | 2015-11-26 | 2017-06-06 | 北京百度网讯科技有限公司 | 长连接中心跳的处理方法、装置及*** |
WO2017215614A1 (zh) * | 2016-06-16 | 2017-12-21 | 中兴通讯股份有限公司 | 心跳保活的实现方法、装置及*** |
CN106535309A (zh) * | 2016-10-28 | 2017-03-22 | 珠海市魅族科技有限公司 | 一种保持网络连接的方法及装置 |
CN106535309B (zh) * | 2016-10-28 | 2019-11-15 | 珠海市魅族科技有限公司 | 一种保持网络连接的方法及装置 |
CN108234578A (zh) * | 2016-12-22 | 2018-06-29 | 航天信息股份有限公司 | 一种推送的方法及装置 |
CN111857863A (zh) * | 2020-06-19 | 2020-10-30 | 微梦创科网络科技(中国)有限公司 | 一种动态配置方法及*** |
CN111857863B (zh) * | 2020-06-19 | 2023-10-27 | 微梦创科网络科技(中国)有限公司 | 一种动态配置方法及*** |
CN111917581A (zh) * | 2020-07-31 | 2020-11-10 | 深圳乐播科技有限公司 | 通信连接的维护方法、装置、设备及存储介质 |
CN112202626A (zh) * | 2020-08-04 | 2021-01-08 | 长春创世麒麟科技有限公司 | 一种实时数据通信心跳包推送方法 |
CN114390453A (zh) * | 2022-02-09 | 2022-04-22 | 福建天泉教育科技有限公司 | 一种消息推送的优化方法及终端 |
CN114390453B (zh) * | 2022-02-09 | 2023-09-08 | 福建天泉教育科技有限公司 | 一种消息推送的优化方法及终端 |
CN114697377A (zh) * | 2022-04-07 | 2022-07-01 | 深信服科技股份有限公司 | 一种客户端产品的保活方法、***、装置及可读存储介质 |
CN114697377B (zh) * | 2022-04-07 | 2023-09-05 | 深信服科技股份有限公司 | 一种客户端产品的保活方法、***、装置及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN104135460B (zh) | 2017-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104135460A (zh) | 一种推送通道保活方法和推送服务器 | |
US10392823B2 (en) | Synthetic client | |
WO2017215614A1 (zh) | 心跳保活的实现方法、装置及*** | |
US10154106B2 (en) | Method for sending heartbeat message and mobile terminal | |
CN102355479B (zh) | 一种多nat网关流量转发的方法和设备 | |
CN103209089A (zh) | 心跳周期的获取方法及终端、服务器 | |
JP6013598B2 (ja) | デバイス発見後の即時接続 | |
CN103916879A (zh) | 设备发现方法、装置及*** | |
US9241007B1 (en) | System, method, and computer program for providing a vulnerability assessment of a network of industrial automation devices | |
CN104320328A (zh) | 一种消息同步方法、终端和服务器 | |
CN102333335A (zh) | 一种无线局域网wlan中业务恢复的方法、设备和*** | |
CN105188056A (zh) | 一种WiFi设备与接入点的连接方法及装置 | |
JP2012083891A (ja) | フェイルオーバシステム、記憶処理装置及びフェイルオーバ制御方法 | |
US20130182718A1 (en) | Communication apparatus using super frame to reconfigure dynamic protocol, and message exchanging method of sensor node and hub device to reconfigure dynamic protocol | |
US20110258270A1 (en) | Apparatus and method for establishing partnership with a peer-to-peer (p2p) service based on gossip | |
CN103068052B (zh) | 资源动态配置方法、***和Portal服务器 | |
JP2014513453A (ja) | 無線端末及びホストデバイスのための通信方法、無線端末、及びホストデバイス | |
CN104243473B (zh) | 一种数据传输的方法以及装置 | |
EP2874375B1 (en) | Method, apparatus and computer program product for managing storage system | |
CN109600436A (zh) | 一种分布式iscsi服务实现方法、***及相关装置 | |
CN102882906A (zh) | 受限应用协议中数据通信的方法和装置 | |
CN104969521A (zh) | 数据发送处理方法及路由器 | |
CN104065519A (zh) | 提升会话交互性能的方法及自动配置服务器 | |
CN104333615A (zh) | 一种地址溯源方法及装置 | |
CN104333872A (zh) | 一种基于双向转发检测技术的建立会话的方法及*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20200211 Address after: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen Patentee after: HUAWEI TECHNOLOGIES Co.,Ltd. Address before: 210012 HUAWEI Nanjing base, 101 software Avenue, Yuhuatai District, Jiangsu, Nanjing Patentee before: Huawei Technologies Co.,Ltd. |