连接保持方法、装置、移动终端及数据传输方法

文档序号:7955563阅读:194来源:国知局
专利名称:连接保持方法、装置、移动终端及数据传输方法
技术领域
本申请涉及移动通信领域,尤其涉及应用程序客户端与应用服务器的连接保持方法、装置、包含该装置的移动终端及移动通信网络向移动终端传输数据的方法。
背景技术
如今,随着通信网络的高速发展以及智能移动终端的进一步普及,用户可以使用更多业务,获得更多体验。一些永远在线业务可实现用户与网络的及时通信。如图1所示,用户通过移动终端101使用永远在线业务时,需通过基站102接入到移动运营商核心网103,再由核心网的网关如公共数据网网关PGW 104通过核心网防火墙105,访问该业务的应用服务器106。对于保持永远在线业务而言,当用户处于空闲状态或没有业务数据需要传输时,为了让应用服务器能够获知客户端的状态,应用程序客户端需要以预定的时间间隔,即心跳周期,向应用服务器发送心跳数据包,以告知应用服务器当前业务仍处于活跃状态。当前很多应用程序如即时通信软件QQ、MSN等都会定时向其应用服务器发送心跳数据包。然而,在无线通信中,发送心跳数据包需要在移动终端与网络之间建立通信信道,包括分配无线资源和核心网资源等。如果以几秒或几十秒为周期频繁地发送心跳数据包将占用大量的通信资源,特别是在同一终端上同时运行多个永远在线业务且各业务的心跳周期不同时尤为如此。在这种情况下,对终端而言,这将会增加能耗;对网络而言,这将频繁占用无线信道,从而影响其他实时性要求更高的业务,如话音业务、IMS业务等。

发明内容
根据本申请的第一方面,提供了一种应用程序客户端与应用服务器的连接保持方法。该方法包括:移动终端从移动通信网络获取心跳周期的参考值;所述移动终端基于所述心跳周期的参考值确定心跳周期的实际值;以及所述移动终端基于所述心跳周期的实际值触发已注册的应用程序客户端向其相应的应用服务器发送心跳数据包。根据本申请的第二方面,提供了一种应用程序客户端与应用服务器的连接保持装置。该装置包括:确定模块,从移动通信网络获取心跳周期的参考值,并基于所述心跳周期的参考值确定心跳周期的实际值;计时模块,从所述确定模块获取所述心跳周期的实际值以作为计时初值进行计时;以及触发模块,响应于所述计时模块的计时期满通知,触发应用程序客户端向其相应的应用服务器发送心跳数据包。根据本申请的第三方面,提供了一种移动终端。该移动终端包括根据本申请第二方面的应用程序客户端与应用服务器的连接保持装置。根据本申请的第四方面,提供了一种移动通信网络向移动终端传输数据的方法。该方法包括将心跳周期的参考值发送到移动终端。根据上述的应用程序客户端与应用服务器的连接保持方法、装置、移动终端及移动通信网络向移动终端传输数据的方法,在移动终端上驻留有多个应用程序客户端时,通过从移动通信网络中获取心跳周期的参考值而确定出心跳周期的实际值,多个应用程序客户端由移动终端统一触发和调度心跳,在同一时间、以相同的时间间隔向各自的应用服务器发送心跳数据包,有效减轻了多个应用程序客户端频繁地异步发送心跳包带来的移动终端能耗和无线资源占用的消耗。而且,通过移动通信网络将心跳周期的参考值告知移动终端,实现了网络与移动终端的协调配合。


图1为移动通信网络的整体架构图;图2为根据本申请第一方面的一个实施方案的应用程序客户端与应用服务器的连接保持方法的流程图;图3为根据本申请第一方面的另一个实施方案的应用程序客户端与应用服务器的连接保持方法的流程图;图4为根据本申请第二方面的应用程序客户端与应用服务器的连接保持装置的示意性框图;以及图5为根据本申请第三方面的一个可选实施方案的移动终端的示意性框图。
具体实施例方式如前所述,例如手机等的移动终端上可安装有一个或多个即时通信软件如QQ、MSN等的应用程序客户端,这些应用程序客户端会以预定的时间间隔(以下简称心跳周期)向其各自的应用服务器发送心跳数据包以保持连接。根据本申请,移动终端可统一调度驻留在终端上的各应用程序客户端,使其能够同步发送心跳数据包,以节省终端的能耗,减少无线资源的频繁分配和释放。下面将参照图2和图3详细描述根据本申请的第一方面的应用程序客户端与应用服务器的连接保持方法。在如图2所示的应用程序客户端与应用服务器的连接保持方法中,首先在步骤2001中,移动终端从移动通信网络获取心跳周期的参考值。可以理解,在演进的分组核心网(简称EPC)中,分组数据网网关(简称PGW)是核心网接入到分组数据网(简称TON)进行业务访问的接口实体。PGW通过防火墙中的或独立于防火墙的网络地址转换(NAT)模块与应用服务器之间进行通信,在NAT模块中保存了移动终端在核心网的内部地址与外部地址之间的一个映射表。该映射表有一个保活时长,如果驻留在移动终端上的应用程序客户端与应用服务器间的空闲时间超过了该保活时长,则NAT模块中的地址映射项将被删除。在映射项被删除后,即NAT模块中不再存在该移动终端内部地址与外部地址的映射信息,应用服务器将不能识别该移动终端,因而驻留在该移动终端上的应用程序客户端将无法与应用服务器进行交互。还可以理解,移动终端在经PGW由核心网接入TON时,PGW会给该移动终端分配一个核心网内部地址,该内部地址具有保活时长,超过该保活时长,PGW将释放为该移动终端分配的内部地址。因此,驻留在移动终端上的应用程序客户端向应用服务器发送心跳数据包的时间间隔(即心跳周期)的取值,可以以上述两个保活时长中的较小者作为参考。即,心跳周期的參考值可以为上述两个时长中的较小者。作为ー个具体实施例,移动终端可以通过网络侧信令获取心跳周期的參考值。例如,可以在PGW的创建会话响应(Create Session Response)消息的协议配置项(ProtocolConfiguration Option,简称PC0)中,预先设置所述心跳周期的參考值,或者在创建会话响应消息中预先增加一个新的信元来携带该參考值,当移动终端与PDN建立连接吋,PGW响应于移动终端的连接建立请求,将上述预先设置有心跳周期的參考值的创建会话响应消息发送给该移动终端。这样,通过移动通信网络的网络侧信令将心跳周期的參考值告知移动终端,实现了网络与移动终端的协调配合。然后,在步骤2002,移动终端基于所述心跳周期的參考值确定心跳周期的实际值。例如,所述心跳周期的实际值可小于或等于所述心跳周期的參考值。也就是说,所述心跳周期的实际值可以小于或等于NAT模块中移动终端的核心网内部地址与外部地址之间的映射表的保活时长与该移动终端的核心网内部地址的保持时长中的较小者。可以理解,将心跳周期的实际值确定为小于或等于上述两个时长中的较小者,既不会因为心跳周期过短而频繁向应用服务器发送心跳数据包,也不会因为心跳周期过长而导致NAT模块中的地址映射项失活。接下来,在步骤2003中,移动终端基于所述心跳周期的实际值触发已注册的应用程序客户端向其相应的应用服务器发送心跳数据包以保持连接。換言之,移动终端以所述心跳周期的实际值为时间间隔触发已注册的所有应用程序客户端向各自相应的应用服务器发送心跳数据包。根据ー个实施方案,移动终端在触发已注册的所有应用程序客户端向各自相应的应用服务器发送心跳数据包时可向所有应用程序客户端发送消息,所有应用程序客户端可响应于该消息按照现有的方式向各自相应的应用服务器发送其特定的心跳数据包。根据另ー实施方案,移动终端在触发已注册的所有应用程序客户端向各自相应的应用服务器发送心跳数据包时,移动终端通过调用应用程序客户端上的触发程序来触发驻留在其上的应用程序客户端向其相应的应用服务器发送心跳数据包。可以理解,应用程序客户端仅在移动终端触发时才向其相应的应用服务器发送心跳数据包。下面參照图3描述根据另ー实施方案的应用程序客户端与应用服务器的连接保持方法。在如图3所示的应用程序客户端与应用服务器的连接保持方法中,首先在步骤3001中,移动终端从移动通信网络获取心跳周期的參考值。然后,在步骤3002,移动终端基于所述心跳周期的參考值确定心跳周期的实际值。然后,在步骤3003中,应用程序客户端从移动终端获取心跳周期的实际值并将其告知应用服务器,以便应用服务器可获知该应用程序客户端相关的心跳周期。接下来,在步骤3004,移动终端基于所述心跳周期的实际值触发已注册的应用程序客户端向其相应的应用服务器发送心跳数据包以保持连接。根据ー个实施方案,移动终端在触发已注册的所有应用程序客户端向各自相应的应用服务器发送心跳数据包时可向所有应用程序客户端发送消息,所有应用程序客户端可响应于该消息按照现有的方式向各自相应的应用服务器发送其特定的心跳数据包。根据另ー实施方案,移动终端在触发已注册的所有应用程序客户端向各自相应的应用服务器发送心跳数据包时,移动终端通过调用应用程序客户端上的触发程序来触发驻留在其上的应用程序客户端向其相应的应用服务器发送心跳数据包。可以理解,应用程序客户端仅在移动终端触发时才向其相应的应用服务器发送心跳数据包。还可以理解,在本申请的应用程序客户端与应用服务器的连接保持方法中,心跳数据包仍然由应用程序客户端发出,并不涉及对心跳数据包的修改。下面将參照图4详细描述根据本申请的第二方面的应用程序客户端与应用服务器的连接保持装置。如图4所示,应用程序客户端与应用服务器的连接保持装置40包括确定模块401、计时模块402和触发模块403。确定模块401从移动通信网络获取心跳周期的參考值,并基于所述心跳周期的參考值确定心跳周期的实际值。如前所述,所述心跳周期的參考值可以为移动通信网络中的网络地址转换模块中移动终端的核心网内部地址与外部地址之间的映射表的保活时长与该移动终端的核心网内部地址的保持时长中的较小者。作为ー种选择,所述心跳周期的实际值可小于或等于述心跳周期的參考值。计时模块402从确定模块401获取所述心跳周期的实际值以作为计时初值进行计时。触发模块403响应于计时模块402的计时期满通知,触发应用程序客户端向其应用服务器发送心跳数据包。根据ー个实施方案,连接保持装置40进ー步包括注册模块404。注册模块404接收需要向其应用服务器发送心跳数据包的应用程序客户端的注册请求,并记录应用程序客户端的注册信息。如前所述,应用程序客户端向注册模块404发送注册请求时,例如可向注册模块404提供其ID等注册信息,注册模块404中可建立列表以记录已注册的应用程序客户端ID等信息。而且,触发模块403可查询注册模块404的注册信息列表里记录了哪些应用程序客户端的ID,井向与查询到的应用程序客户端ID对应的应用程序客户端发送消息,以触发该应用程序客户端向其应用服务器发送心跳数据包。作为ー种选择,触发模块403可进ー步被配置为向已注册的应用程序客户端发送消息以触发已注册的应用程序客户端向其相应的应用服务器发送心跳数据包。作为ー种选择,注册模块404可进ー步被配置为在应用程序客户端退出时接收应用程序客户端的取消注册请求,并响应于该请求删除该应用程序客户端的注册信息。可以理解,在本申请的应用程序客户端与应用服务器的连接保持装置中,计时模块的计时初值即心跳周期的实际值是恒定不变的,无需区分移动终端当前是处于活跃状态还是空闲状态,且不会与应用服务器之间频繁进行心跳周期时长的协商。根据本申请的第三方面,提供了一种移动終端,该移动終端包括可按照如图4所示那样配置的应用程序客户端与应用服务器的连接保持装置40。根据ー个实施方案,所述移动终端还可进ー步包括驻留在其上的客户端模块。如图5所示,移动终端50包括应用程序客户端与应用服务器的连接保持装置501和驻留在移动通信終端上的客户端模块502。客户端模块502包括判断单元5021、注册单元5022和发送单元5023。判断单元5021在客户端模块502启动时判断客户端模块是否需要向其应用服务器发送心跳数据包。注册单元5022在判断単元5021判断客户端模块502需要向其应用服务器发送心跳数据包时向连接保持装置501中的注册模块404发送注册请求以进行注册。如前所述,注册单元5022向注册模块404发送注册请求时,例如可向注册模块404提供客户端模块502的ID等注册信息,注册模块404中可建立列表以记录已注册的客户端模块的ID等信息。发送单元5023响应于连接保持装置501中的触发模块的触发消息,向客户端模块对应的应用服务器发送心跳数据包。 作为ー种选择,注册单元5022可进ー步被配置为在客户端模块502退出时向连接保持装置501中的注册模块404发送取消注册请求。注册模块404可响应于该取消注册请求删除该客户端模块的注册信息。根据本申请的第四方面,提供了一种移动通信网络向移动终端传输数据的方法,该方法包括将心跳周期的參考值发送到移动终端。在该方法中,将心跳周期的參考值发送到移动终端的步骤包括将所述心跳周期的參考值添加在分组数据网网关的创建会话响应消息的协议配置项中。这样,通过移动通信网络将心跳周期的參考值告知移动终端,实现了网络与移动终端的协调配合。根据ー个实施方案,心跳周期的參考值为移动通信网络中的网络地址转换模块中移动终端的核心网内部地址与外部地址之间的映射表的保活时长与该移动终端的核心网内部地址的保持时长中的较小者。可以理解,将心跳周期的实际值确定为小于或等于上述两个时长中的较小者,既不会因为心跳周期过短而频繁向应用服务器发送心跳数据包,也不会因为心跳周期过长而导致NAT模块中的地址映射项失活。以上參照附图对本申请的示例性的实施方案进行了描述。本领域技术人员应该理解,上述实施方案仅仅是为了说明的目的而所举的示例,而不是用来进行限制。凡在本申请的教导和权利要求保护范围下所作的任何修改、等同替换等,均应包含在本申请要求保护的范围内。
权利要求
1.用程序客户端与应用服务器的连接保持方法,包括: 移动终端从移动通信网络获取心跳周期的参考值; 所述移动终端基于所述心跳周期的参考值确定心跳周期的实际值;以及 所述移动终端基于所述心跳周期的实际值触发已注册的应用程序客户端向其相应的应用服务器发送心跳数据包。
2.按权利要求1所述的方法,其中,所述应用程序客户端仅在所述移动终端触发时才向其相应的应用服务器发送心跳数据包。
3.按权利要求1所述的方法,进一步包括: 所述应用程序客户端在向所述移动终端发送注册请求之后,从所述移动终端获取所述心跳周期的实际值并将其告知相应的应用服务器。
4.按权利要求1所述的方法,其中,所述移动终端触发驻留在其上的应用程序客户端向其相应的应用服务器发送心跳数据包的步骤包括:所述移动终端同时向驻留在其上的所有应用程序客户端发送消息,所有应用程序客户端响应于该消息向各自相应的应用服务器发送心跳数据包。
5.按权利要求1所述的方法,其中,所述移 动终端触发驻留在其上的应用程序客户端向其相应的应用服务器发送心跳数据包的步骤包括:所述移动终端通过调用应用程序客户端上的触发程序来触发驻留在其上的应用程序客户端向其相应的应用服务器发送心跳数据包。
6.按权利要求1至5中任一项所述的方法,其中,移动终端从移动通信网络获取心跳周期的参考值的步骤包括从网络侧信令中获取所述心跳周期的参考值。
7.按权利要求6所述的方法,其中,移动终端从网络侧信令中获取心跳周期的参考值的步骤包括从分组数据网网关的创建会话响应消息的协议配置项中获取所述心跳周期的参考值,或者从所述创建会话响应消息中新增加的信元中获取所述心跳周期的参考值。
8.按权利要7所述的方法,其中,所述心跳周期的实际值小于或等于所述心跳周期的参考值。
9.按权利要求8所述的方法,其中,所述心跳周期的参考值为移动通信网络中的网络地址转换模块中移动终端的核心网内部地址与外部地址之间的映射表的保活时长与该移动终端的核心网内部地址的保持时长中的较小者。
10.用程序客户端与应用服务器的连接保持装置,包括: 确定模块,从移动通信网络获取心跳周期的参考值,并基于所述心跳周期的参考值确定心跳周期的实际值; 计时模块,从所述确定模块获取所述心跳周期的实际值以作为计时初值进行计时;以及 触发模块,响应于所述计时模块的计时期满通知,触发应用程序客户端向其相应的应用服务器发送心跳数据包。
11.按权利要求10所述的装置,进一步包括注册模块,所述注册模块被配置为接收需要向其应用服务器发送心跳数据包的应用程序客户端的注册请求,并记录应用程序客户端的注册信息;所述触发模块进一步被配置为向所述注册模块查询应用程序客户端的注册信息,并基于所述注册信息触发已注册的应用程序客户端向其相应的应用服务器发送心跳数据包。
12.按权利要求11所述的装置,其中,所述注册模块进一步被配置为在所述应用程序客户端退出时接收所述应用程序客户端的取消注册请求,并响应于该取消注册请求删除所述应用程序客户端的注册信息。
13.按权利要求12所述的装置,其中,所述应用程序客户端的注册信息包括应用程序客户端的ID。
14.按权利要求11所述的装置,其中,所述触发模块进一步被配置为向已注册的应用程序客户端发送消息以触发已注册的应用程序客户端向其相应的应用服务器发送心跳数据包。
15.一种移动终端,包括如权利要求12至16中任一项所述的应用程序客户端与应用服务器的连接保持装置。
16.按权利要求15所述的移动终端,进一步包括客户端模块,所述客户端模块驻留在所述移动终端上并且包括: 判断单元,在所述客户端模块启动时判断所述客户端模块是否需要向其应用服务器发送心跳数据包; 注册单元,在所述判断单元判断所述客户端模块需要向其应用服务器发送心跳数据包时向所述移动终端发送注册请求以进行注册; 发送单元,响应于所述连接保持装置中的触发模块的触发消息,向所述客户端模块对应的应用服务器发送心跳数据包。
17.按权利要求16所述的移动终端,其中,所述注册单元进一步被配置为在所述客户端模块退出时向所述装置中的注册模块发送取消注册请求。
18.动通信网络向移动终端传输数据的方法,包括: 将心跳周期的参考值发送到移动终端。
19.按权利要求18所述的方法,其中,将心跳周期的参考值发送到移动终端的步骤包括:将所述心跳周期的参考值添加在分组数据网网关的创建会话响应消息的协议配置项中。
20.按权利要求19所述的方法,其中,所述心跳周期的参考值为移动通信网络中的网络地址转换模块中移动终端的核心网内部地址与外部地址之间的映射表的保活时长与该移动终端的核心网内部地址的保持时长中的较小者。
全文摘要
本申请公开了应用程序客户端与应用服务器的连接保持方法、装置、包含该装置的移动终端及移动通信网络向移动终端传输数据的方法。该方法包括移动终端从移动通信网络获取心跳周期的参考值;所述移动终端基于所述心跳周期的参考值确定心跳周期的实际值;以及所述移动终端基于所述心跳周期的实际值触发已注册的应用程序客户端向其相应的应用服务器发送心跳数据包。根据本申请,驻留在移动终端上的多个应用程序客户端由移动终端统一触发和调度心跳,在同一时间、以相同的时间间隔向各自的应用服务器发送心跳数据包,有效减轻了多个应用程序客户端频繁地异步发送心跳包带来的移动终端能耗和无线资源占用的消耗。
文档编号H04W76/02GK103096435SQ20111033686
公开日2013年5月8日 申请日期2011年10月31日 优先权日2011年10月31日
发明者孙滔, 邓辉, 刘大鹏, 曹振 申请人:中国移动通信集团公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1