CN102347967B - 一种推送设备间的协作方法及装置 - Google Patents

一种推送设备间的协作方法及装置 Download PDF

Info

Publication number
CN102347967B
CN102347967B CN201010244030.9A CN201010244030A CN102347967B CN 102347967 B CN102347967 B CN 102347967B CN 201010244030 A CN201010244030 A CN 201010244030A CN 102347967 B CN102347967 B CN 102347967B
Authority
CN
China
Prior art keywords
push
propelling movement
client
address
sign
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.)
Expired - Fee Related
Application number
CN201010244030.9A
Other languages
English (en)
Other versions
CN102347967A (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201010244030.9A priority Critical patent/CN102347967B/zh
Priority to PCT/CN2011/074345 priority patent/WO2011137792A1/zh
Publication of CN102347967A publication Critical patent/CN102347967A/zh
Priority to US13/753,833 priority patent/US9247018B2/en
Application granted granted Critical
Publication of CN102347967B publication Critical patent/CN102347967B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types
    • H04L61/103Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5076Update or notification mechanisms, e.g. DynDNS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/618Details of network addresses
    • H04L2101/65Telephone numbers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0892Network architectures or network communication protocols for network security for authentication of entities by using authentication-authorization-accounting [AAA] servers or protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明实施例提供了公开了一种推送设备间的协作方法及装置,用于提高IP连接的有效性和可达性。其中,一种推送设备间的协作方法包括:Push代理获取Push客户端的Push标识和地址;Push代理保存上述的Push客户端的Push标识和地址的映射关系;若Push客户端的地址发生变化,则Push代理更新上述的映射关系中的地址。本发明实施例能够提高IP连接的有效性和可达性,进而能够提高Push消息的实时性和可靠性。

Description

一种推送设备间的协作方法及装置
技术领域
本发明涉及通信技术领域,具体涉及一种推送设备间的协作方法及装置。
背景技术
在客户端/服务器模式中,除非用户登录应用服务器并向应用服务器提供其网际协议(Internet Protocol,IP)地址,否则应用服务器无法主动找到用户终端并向之发送信息。由此,推送(Push)技术应运而生。
Push技术是一种基于客户端/服务器机制、由应用服务器主动将信息发往客户端的技术,即Push事务是由应用服务器发起的,而无须用户事先登录应用服务器。Push技术的本质在于让信息去主动的寻找用户,因此其优势在于信息的主动性和及时性,通过使用该技术,可以尽快的将信息推送到用户设备。
目前,苹果公司(Apple,Inc)推出了Push通知(Notification)方案,应用于i-phone。该方案采取Push技术,当用户某一应用有事件到达时(如收到新的邮件),直接将该事件推送给客户端,而无需客户端时时刻刻应用在线,或者定时去应用服务器查看是否有新的事件发生。其中,Push Notification方案的工作过程可以概括为:
1、应用服务器把要发送的应用消息、目的i-phone标识打包并通过Notification消息发给Push服务器;
2、Push服务器在已注册Push服务的i-phone列表中,查找目的i-phone的IP地址,并将Notification消息转换成Push消息,将发到目的i-phone。
3、目的i-phone把发来的Push消息传递给相应的客户端应用程序,并且按照设定弹出Push通知。
其中,Push服务器判断Push消息应该发送给哪一个i-phone的依据是一个“目的i-phone标识”,这个标识称为设备令牌(device token)。在i-phone入网后会与Push服务器建立持久的IP连接,连接建立后,i-phone向Push服务器注册,Push服务器会把设备令牌发送给i-phone,i-phone通过客户端应用程序再把这个设备令牌发给应用服务器。后续,应用服务器若需要向i-phone发送应用消息,就会把对应的设备令牌和应用消息一起发送给Push服务器,而Push服务器再依据设备令牌找到相应的目的i-phone,并发送相应的Push消息。
当没有数据传递时,Push服务器和i-phone之间每隔十几分钟进行一次心跳操作,以维持IP连接的有效性。其中,Push服务器在i-phone连接建立过程中记录IP连接信息,IP连接信息中包含i-phone的地址和端口。如果i-phone和Push服务器之间存在网络地址转换(Network Address Translation,NAT),则Push服务器记录的是i-phone经过NAT转换之后的公网地址和端口。
上述的方案无法保证IP连接的有效性和可达性,从而导致Push消息推送失败或串到其他终端,影响Push消息的实时性和可靠性。
发明内容
本发明实施例中提供了一种推送设备间的协作方法及装置,用于提高IP连接的有效性和可达性。
本发明实施例中提供了一种推送设备间的协作方法,包括:
推送代理获取推送客户端的推送标识和地址;
推送代理保存所述推送客户端的推送标识和地址的映射关系;
若所述推送客户端的地址发生变化,则推送代理更新所述映射关系中对应的地址。
本发明实施例中提供了另一种推送设备间的协作方法,包括:
推送代理获取推送客户端的推送标识、网络内部标识和地址;
推送代理保存所述推送客户端的推送标识、网络内部标识和地址的映射关系;
若所述推送客户端的地址发生变化,则推送代理更新所述映射关系中对应的地址。
本发明实施例中提供了一种推送设备间的协作装置,包括:
第一获取模块,用于获取推送客户端的推送标识和地址;
第一保存模块,用于保存所述推送客户端的推送标识和地址的映射关系;
第一更新模块,用于在所述推送客户端的地址发生变化时,更新所述映射关系中对应的地址。
本发明实施例中提供了另一种推送设备间的协作装置,包括:
第二获取模块,用于获取推送客户端的推送标识、网络内部标识和地址;
第二保存模块,用于保存所述推送客户端的推送标识、网络内部标识和地址的映射关系;
第二更新模块,用于在所述推送客户端的地址发生变化时,更新所述映射关系中对应的地址。
与现有的技术相比,本发明实施例具有以下有益效果:
本发明实施例中,由Push代理获取Push客户端的Push标识和地址,并保存Push客户端的Push标识和地址的映射关系,在Push客户端的地址发生变化时,Push代理可以及时地更新Push客户端的地址,能够提高IP连接的有效性和可达性,从而能够提高Push消息的实时性和可靠性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中提供的一种推送设备间的协作方法流程图;
图2、图3为本发明实施例中提供的获取Push客户端的Push标识和地址的方法的流程图;
图4、图5为本发明实施例中提供的Push注册方法的流程图;
图6为本发明实施例中提供的一种Push消息转发方法的流程图;
图7、图8为本发明实施例中提供的Push客户端的地址更新方法的流程图;
图9为本发明实施例中提供的Push客户端的地址释放方法的流程图;
图10~图12为本发明实施例中提供的Push去注册方法的流程图;
图13为本发明实施例中提供的另一种推送设备间的协作方法的流程图;
图14~图16为本发明实施例中提供的Push注册方法的流程图;
图17为本发明实施例中提供的另一种Push消息转发方法的流程图;
图18~图26为本发明实施例中提供的推送设备间的协作装置的结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例在运营商网络中部署Push代理,作为Push服务器和Push客户端的中转,处理Push服务器和Push客户端之间的信令,并将Push服务器发送的Push消息转发给Push客户端。与此同时,Push代理可以在Push客户端的地址发生变化时,无需心跳操作即可及时地对其保存的Push客户端的地址进行更新,从而能够提高Push客户端的IP连接的有效性和可达性,进而能够提高Push消息的实时性和可靠性。
其中,Push服务器是指能够提供Push业务的服务器;Push客户端是指入网时定制Push业务的终端,例如个人计算机(Personal Computer,PC)、移动手机、掌上电脑(Personal Digital Assistant,PDA)等等。Push客户端的地址既可以指IP地址,也可以指IP地址和端口。
其中,Push代理是逻辑实体,在物理设备上可以与网络侧网元位于同一设备,也可以独立地部署在不同的设备。其中,网络侧网元可以是数据网关节点、归属位置寄存器(Home Location Register,HLR),或归属用户服务器(Home Subscriber Server,HSS),或认证、授权以及计费(Authentication、Authorization、Accounting,AAA)服务器。其中,数据网关节点可以是第三代(3rd-Generation,3G)网络中的网关通用分组无线服务支持节点(GatewayGPRS Support Node,GGSN),也可以是长期演进(Long Term Evolution,LTE)网络中的分组数据网网关(Packet Data Network Gateway,PDNGW),还可以是全球微波互联接入(Worldwide Interoperability for MicrowaveAccess,WIMAX)网络中的家乡代理(Home agent,HA)或其他网络中的对等实体。当Push代理和网络侧网元(如数据网关节点)位于同一设备时,两者之间的交互或触发为内部交互或触发,如通过进程间通信、函数调用等方式来交行或触发。如果Push代理和网络侧网元(如数据网关节点)共享数据,则两者之间的交互或触发步骤可以省略。
实施例一:
请参阅图1,图1为本发明实施例中提供的一种推送设备间的协作方法的流程图。如图1所示,该方法可以包括以下步骤:
101、Push代理获取Push客户端的Push标识和地址;
本实施例中,Push客户端的地址可以是Push客户端的IP地址,或是IP地址和端口。
其中,Push客户端的Push标识可以是Push客户端的设备令牌(devicetoken),或者可以是其他可以表示Push客户端身份的参数或标识。在Push客户端入网后会与Push服务器建立持久的IP连接,连接建立后,Push客户端向Push服务器注册,Push服务器会把设备令牌发送给Push客户端。
102、Push代理保存Push客户端的Push标识和地址的映射关系;
其中,Push代理中可以保存多个Push客户端的Push标识和地址的映射关系,构成一个Push标识和地址的映射表。在映射表中,每一个Push客户端的Push标识互不相同,一般地,每一个Push客户端的地址也互不相同。
103、若Push客户端的地址发生变化,则Push代理更新上述的映射关系中对应的地址。
本实施例中,Push代理可以通过以下2种方式来获取Push客户端的Push标识和地址:
方式一:Push代理通过接收并中转Push客户端的Push注册请求消息来获取Push客户端的Push标识和地址。如图2所示,可以包括以下步骤:
201、Push代理接收Push客户端发送的Push注册请求消息,其中,该Push注册请求消息或其数据包头携带Push客户端的地址,另外还可以携带Push服务器的地址;
其中,上述的数据包是Push注册请求消息的数据包。
202、Push代理解析上述的Push注册请求消息或其数据包头,获得Push客户端的地址;
203、Push代理将上述的Push注册请求消息后发送至Push服务器;
可选地,Push代理可以将其地址写入Push注册请求消息,一起发送至Push服务器。举例来说,Push代理可以将上述的Push注册请求消息中携带的Push客户端的地址更新为Push代理的地址,实现Push代理的地址写入上述的Push注册请求消息;或者,Push代理也可以直接在上述的Push注册请求消息增加Push代理的地址,不影响本发明实施例的实现。
204、Push代理接收Push服务器发送的Push注册请求响应消息,其中,该Push注册请求响应消息携带Push服务器为Push客户端分配的Push标识;
其中,Push服务器在接收到Push代理发送的Push注册请求消息后,为Push客户端分配的Push标识,并通过Push代理的地址将为Push客户端分配的Push标识携带在Push注册请求响应消息中发送至Push代理。
优选地,Push服务器为Push客户端分配Push标识之后,可以保存该Push客户端的Push标识与Push代理的地址的映射关系。
205、Push代理解析上述的Push注册请求响应消息,获得Push客户端的Push标识。
本实施例中,上述步骤201中Push代理接收的Push客户端发送的Push注册请求消息中可以进一步携带Push客户端的认证信息,认证信息用于向Push服务器证明Push客户端的身份,包括证书、帐户名、密码、用密钥材料生成的消息摘要等等。
相应地,在上述的步骤202中Push代理还可以通过解析上述的Push注册请求消息,获得Push客户端的认证信息。
相应地,Push服务器在接收到Push代理发送的Push注册请求消息后,根据Push客户端的认证信息认证Push客户端的身份合法后再为Push客户端分配的Push标识,并通过Push代理的地址将为Push客户端分配的Push标识携带在Push注册请求响应消息中发送至Push代理。
方式二:Push代理无需通过中转Push客户端的Push注册请求消息来获取Push客户端的Push标识和地址。如图3所示,可以包括以下步骤:
301、Push代理接收Push客户端发送的代理注册请求消息,其中,该代理注册请求消息或其数据包头携带Push客户端的Push标识和地址;
302、Push代理解析上述的代理注册请求消息或其数据包头,获得Push客户端的Push标识和地址。
其中,Push代理通过上述的方式二获取Push客户端的Push标识和地址的前提是,Push客户端需要事先向Push服务器进行注册,获取Push客户端的Push标识。其中,Push客户端向Push服务器注册,并获取Push客户端的Push标识具体为:
1)Push客户端发送Push注册请求消息至Push服务器;
其中,Push客户端发送的Push注册请求消息或其数据包头携带Push客户端的地址,另外还可以携带Push服务器的地址。
可选地,Push客户端发送的Push注册请求消息还可以携带Push客户端的认证信息,使得Push服务器在接收到Push客户端发送的Push注册请求消息后,根据Push客户端的认证信息认证Push客户端的身份合法再为Push客户端分配的Push标识。
2)Push客户端接收Push服务器发送的Push注册请求响应消息,其中,该Push注册请求响应消息携带Push服务器为Push客户端分配的Push标识;
可选地,上述步骤1)中Push客户端发送的Push注册请求消息还可以携带Push代理的地址,使得Push服务器为Push客户端分配Push标识之后,可以保存Push客户端的Push标识与Push代理的地址的映射关系。
其中,Push代理的地址可以在Push客户端中事先配置或者由Push客户端通过动态主机设置协议(Dynamic Host Configuration Protocol,DHCP)、域名系统(Domain Name System,DNS)等方法动态发现,还可以是Push客户端在向Push服务器建立连接或注册过程中由Push服务器重定向确定。
3)Push客户端解析上述的Push注册请求响应消息,获得Push客户端的Push标识。
本实施例中,上述的步骤103中若Push客户端的地址发生变化,则Push代理更新上述的映射关系中的Push客户端的地址。具体地,Push客户端的地址变化可以包括地址更新和释放两种情况:
情况一、由网络侧网元启动Push客户端的地址更新,具体过程如下:
1)Push代理接收网络侧网元发送的地址更新消息,其中,该地址更新消息携带网络侧网元感知的Push客户端的原地址以及变化后的新地址;
本实施例中,上述的网络侧网元可以为数据网关节点,也可以是归属位置寄存器(HLR),或归属用户服务器(HSS),或认证、授权以及计费(AAA)服务器。
2)Push代理根据上述的原地址查询保存的Push客户端的Push标识和地址的映射关系,并将上述的新地址更新映射关系中对应的地址。
其中,在情况一的场景下,Push代理需要事先告知网络侧网元,在网络侧网元感知Push客户端的地址发生变化时及时通知Push代理。举例如下:
Push代理发送触发消息至网络侧网元,其中,触发消息携带Push客户端的地址,用于触发网络侧网元在感知到Push客户端的地址发生变化时通知Push代理。
可选地,本实施例中,Push代理和网络侧网元可以位于同一设备,此时两者之间的交互或触发为内部交互或触发,如可以通过进程间通信、函数调用等方式来进行交行或触发。即Push代理通过内部触发机制(如可以通过进程间通信、函数调用等方式)发送触发消息,以触发网络侧网元在感知到Push客户端的地址发生变化时通知Push代理。如果Push代理和网络侧网元共享数据,则两者之间的交互或触发步骤可以省略。
情况二、由Push客户端启动Push客户端的地址更新,具体过程如下:
1)Push代理接收Push客户端发送的地址更新消息,其中,该地址更新消息携带Push客户端的Push标识以及Push客户端感知的变化后的新地址;
2)Push代理根据Push客户端的Push标识查询保存的Push客户端的Push标识和地址的映射关系,并将上述的新地址更新映射关系中对应的地址。
情况三、由网络侧网元启动Push客户端的地址释放,具体过程如下:
1)Push代理接收网络侧网元发送的地址释放消息,其中,该地址释放消息携带网络侧网元感知的Push客户端的释放前地址;
2)Push代理根据该地址查询保存的Push客户端的Push标识和地址的映射关系,并将映射关系中的地址的标记为未获取或特殊值。
其中,特殊值可以用0或1表示,用于表示Push标识对应的Push客户端的地址尚未获取。
其中,在情况三的场景下,Push代理也需要事先告知网络侧网元,在网络侧网元感知Push客户端的地址发生变化时及时通知Push代理。当Push代理和网络侧网元位于同一设备时,此时两者之间的交互或触发为内部交互或触发,如Push代理可以通过内部触发机制(如可以通过进程间通信、函数调用等方式)发送触发消息,以触发网络侧网元在感知到Push客户端的地址发生变化时通知Push代理。
情况四、由Push客户端启动Push客户端的地址释放,具体过程如下:
1)Push代理接收Push客户端发送的地址释放消息,其中,该地址释放消息携带Push客户端的释放前地址;
2)Push代理根据该地址查询保存的Push客户端的Push标识和地址的映射关系,并将映射关系中的地址的标记为未获取或特殊值。
本实施例中,由网络侧网元或Push客户端启动Push客户端的地址更新操作,使得Push代理可以及时更新Push客户端的Push标识和地址的映射关系中的Push客户端的地址,提高IP连接的有效性和可达性。
本发明实施例提供的推送设备间的协作方法中,Push代理在保存了Push客户端的Push标识和地址的映射关系的基础上,可以将Push服务器发送的Push消息转发给Push客户端。具体过程如下:
1)Push代理接收Push服务器发送Push消息,其中,该Push消息携带Push客户端的Push标识;
2)Push代理根据Push客户端的Push标识,从保存的Push客户端的Push标识和地址的映射关系中获取Push客户端的地址;
3)Push代理根据Push客户端的地址,将Push消息发送至Push客户端。
可选地,在将Push消息发送至Push客户端之前,Push代理可以将Push消息转换格式以适应Push客户端的接口。Push代理可以将不同Push服务器发送的不同格式的Push消息转换统一格式的Push消息发送给Push客户端,使得Push服务不局限于特定的Push客户端。
本发明实施例提供的推送设备间的协作方法中,如果Push客户端不再需要Push服务或者退网时,可以由Push客户端或网络侧网元向Push服务器发起去注册过程。其中,去注册过程可以分以下几种场景:
场景一:Push客户端向Push服务器发起去注册过程,过程如下:
1)Push客户端向Push服务器发送去注册请求消息,其中,该去注册请求消息至少携带Push客户端的Push标识,使Push服务器删除与Push客户端的Push标识相关的上下文,例如,删除该Push客户端的Push标识与Push代理的地址的映射关系;
2)Push代理接收Push客户端发送的去注册请求消息,其中,该去注册请求消息至少携带Push客户端的Push标识;
3)Push代理发送去注册请求响应消息至Push客户端,并删除保存的Push客户端的Push标识和地址的映射关系。
场景二:Push客户端向Push服务器发起去注册过程,过程如下:
1)Push代理接收Push客户端发送的去注册请求消息,其中,该去注册请求消息或其数据包头至少携带Push客户端的Push标识,可选地,该去注册请求消息或其数据包头还可以携带Push服务器的地址;
2)Push代理将该去注册请求消息发送至Push服务器;
可选地,Push代理可以将Push客户端发送的去注册请求消息转换格式,以适应Push服务器的接口。
3)Push代理接收Push服务器发送的去注册请求响应消息并发送至Push客户端,删除保存的Push客户端的Push标识和地址的映射关系。
场景三:网络侧网元向Push服务器发起去注册过程,过程如下:
1)Push代理接收网络侧网元发送的去注册请求消息,其中,该去注册请求消息或其数据包头至少携带Push客户端的地址;
2)Push代理根据Push客户端的地址,从保存的Push客户端的Push标识和地址的映射关系中获得Push客户端的Push标识并写入去注册请求消息后发送给Push服务器,使Push服务器删除与Push客户端的Push标识相关的上下文,例如,删除该Push客户端的Push标识与Push代理的地址的映射关系;
3)Push代理接收Push服务器发送的去注册请求响应消息,删除保存的Push客户端的Push标识和地址的映射关系。
本实施例一中,Push代理在获取Push客户端的Push标识和地址之后,可以保存Push客户端的Push标识和地址的映射关系,在Push客户端的地址发生变化时,可及时地对其保存的Push客户端的地址进行更新,从而能够提高Push客户端的IP连接的有效性和可达性,进而能够提高Push消息的实时性和可靠性。更进一步地,Push代理可以将不同Push服务器发送的不同格式的Push消息转换统一格式的Push消息发送给Push客户端,使得Push服务不局限于特定的Push客户端。
实施例二:
本实施例提供的推送设备间的协作方法中,Push代理作为Push服务器和Push客户端的中转,可以用于完成包括Push客户端的Push注册、Push消息转发、Push客户端的地址更新或释放、Push去注册、Push代理模拟心跳以及网络异常通知等过程。下面,结合附图说明分别对本实施例中提供的推送设备间的协作方法包括的各过程进行详细说明。
过程一、Push客户端的Push注册:
为使用Push服务,Push客户端的首先需要向Push服务器发起Push注册过程。其中,根据Push代理是否中转注册信令,可以有以下几种注册方式:
方式A)、Push代理中转注册信令,如图4所示,该注册过程可以包括以下步骤:
401、Push客户端和Push代理之间建立连接;
例如,Push客户端和Push代理之间可以建立传输控制协议(TransmissionControl Protocol,TCP)连接。其中,Push代理的地址可以在Push客户端事先配置或者由Push客户端通过DHCP、DNS等方法动态发现,还可以是Push客户端在向Push服务器建立连接时由Push服务器重定向确定。
402、Push客户端向Push代理发送Push注册请求消息,其中,该注册请求消息或其数据包头中携带Push客户端的地址以及Push服务器的地址;
可选地,Push客户端向Push代理发送的Push注册请求还可以携带Push客户端的认证信息。其中,认证信息用于向Push服务器证明Push客户端身份,这些认证信息可以包含但不限于证书、帐户名、密码、用密钥材料生成的消息摘要等。
可选地,上述的步骤402中,Push客户端也可以向Push服务器发送Push注册请求,由Push服务器将该注册请求重定向到相应的Push代理。
403、Push代理解析上述的Push注册请求消息或其数据包头,获得Push客户端的地址并保存;
可选地,若Push客户端向Push代理发送的Push注册请求还携带了Push客户端的认证信息,则Push代理还可以获取Push客户端的认证信息并保存。
404、Push代理根据上述的Push注册请求消息中携带的Push服务器的地址将Push注册请求消息转发给Push服务器,其中,Push代理将上述的Push注册请求消息携带的Push客户端的地址更新为Push代理的地址;
可选地,Push代理也可以直接在上述的Push注册请求消息增加Push代理的地址,而无需删除或更新Push客户端的地址,不影响本发明实施例的实现。
可选地,Push代理在转发Push注册请求之前,可以将Push客户端将Push注册请求转换格式以适应Push服务器接口。
405、Push服务器接收到Push代理转发的Push注册请求消息后,发送Push注册请求响应消息给Push代理,其中,该Push注册请求响应消息中携带Push服务器为Push客户端分配的Push标识。同时,Push服务器保存Push标识和Push代理地址的映射关系;
可选地,若Push代理转发的Push注册请求消息还携带了Push客户端的认证信息,则Push服务器接收到Push代理转发的Push注册请求消息后,根据Push客户端的认证信息认证Push客户端的身份合法后再为Push客户端分配的Push标识,并通过Push代理的地址将为Push客户端分配的Push标识携带在Push注册请求响应消息中发送至Push代理。
406、Push代理解析Push服务器发送的Push注册请求响应消息,保存Push标识和Push客户端的地址的映射关系;
其中,上述的步骤406可以放在步骤407之后。
407、Push代理根据Push客户端的地址,将Push服务器发送的Push注册请求响应消息转发给Push客户端;
可选地,在转发Push服务器发送的Push注册请求响应消息之前,Push代理可以将Push服务器发送的Push注册请求响应消息转换格式以适应Push客户端接口。
408、Push代理发送触发消息至数据网关节点,其中,触发消息携带Push客户端的地址,用于触发数据网关节点在Push客户端的地址更新或释放地址时通知Push代理。
此外,Push代理还可以向数据网关节点、HLR、HSS、AAA服务器等网元发送携带Push客户端的地址的触发消息,用于触发这些网络侧网元在Push客户端退网(即去注册)时通知Push代理。
其中,上述的步骤406、407和408没有顺序限定,只要在步骤405之后执行即可。
方式B)、Push代理不中转注册信令,如图5所示,该注册过程可以包括以下步骤:
501、Push客户端发送Push注册请求消息至Push服务器;其中,Push客户端发送的Push注册请求消息或其数据包头至少携带Push客户端的地址以及Push服务器的地址;
可选地,上述步骤501中的Push客户端发送的Push注册请求消息还可以携带Push代理的地址。其中,Push代理的地址在Push客户端事先配置或者由Push客户端通过DHCP、DNS等方法动态发现。
502、Push服务器为Push客户端分配Push标识,并向Push客户端返回Push注册请求响应消息,其中,该Push注册请求响应消息中携带Push服务器为Push客户端分配的Push标识;
可选地,若上述步骤501中的Push客户端发送的Push注册请求消息没有携带Push代理的地址,则步骤502中的Push服务器向Push客户端返回的Push注册请求响应消息还可以携带Push代理的地址。其中,Push代理地址是Push服务器根据上述步骤501中的Push注册请求消息中携带的Push客户端的地址查询本地配置表获得的。同时,Push服务器保存为Push客户端分配的Push标识和Push代理地址的映射关系。
可选地,上述步骤501中的Push客户端发送的Push注册请求消息还可以携带Push客户端的认证信息,使得Push服务器在接收到Push客户端发送的Push注册请求消息后,根据Push客户端的认证信息认证Push客户端的身份合法再为Push客户端分配的Push标识。
503、Push客户端获取Push标识后,向Push代理发送代理注册请求消息,其中,该代理注册请求消息中或其数据包头携带Push客户端的Push标识和地址;
可选地,该代理注册请求中也可以携带Push客户端的认证信息。
504、Push代理保存Push客户端的Push标识和地址的映射关系;
505、Push代理向Push客户端返回代理注册请求响应消息;
506、Push代理发送触发消息至数据网关节点,其中,触发消息携带Push客户端的地址,用于触发数据网关节点在Push客户端的地址更新或释放地址时通知Push代理。
此外,Push代理还可以向数据网关节点、HLR/HSS/AAA等网元发送携带Push客户端的地址的触发消息,用于触发这些网络侧网元在终端退网(即去注册)时通知Push代理。
其中,上述的步骤504、505和506没有顺序限定,只要在步骤503之后执行即可。
507、Push客户端收到Push代理注册请求响应后,向Push服务器发送注册确认消息。
过程二、Push消息转发:
通过上述的过程一所描述的Push注册,Push代理可以保存Push客户端的Push标识和地址的映射关系,继而Push代理可以将Push服务器发送的Push消息转发给Push客户端。其中,Push服务器通过接收应用服务器发送的应用消息来触发Push消息的发送。如图6所示,Push消息转发的过程如下:
601、应用服务器向Push服务器发送应用消息,其中,该应用消息中携带Push客户端的Push标识;
其中,Push服务器的地址和Push客户端的Push标识可以由Push服务器在Push客户端的Push注册完成后通知应用服务器的。
602、Push服务器根据应用服务器发送的应用消息生成Push消息,其中,该Push消息中携带Push客户端的Push标识,并根据注册过程保存的Push标识和Push代理地址的映射关系向Push代理发送该Push消息;
603、Push代理解析Push服务器发送的Push消息中的Push标识,并根据保存的Push客户端的Push标识和地址的映射关系将该Push消息转发给Push客户端。
可选的,Push代理可以将Push服务器发送的Push消息转换格式以适应Push客户端接口。从而,Push代理可以实现可以将不同Push服务器发送的不同格式的Push消息转换统一格式的Push消息发送给Push客户端,使得Push服务不局限于特定的Push客户端。
例如,Push代理将Google C2DM服务器发送的C2DM Push消息转换成SIP Push消息或者WAP Push消息,并发送给Push客户端。
过程三、Push客户端的地址更新或释放:
通过上述的过程一所描述的Push注册,Push代理可以保存Push客户端的Push标识和地址的映射关系,继而在Push客户端的地址更新或释放时,Push代理可以及时地对映射关系中的地址进行更新。
其中,Push客户端的地址更新是指,Push客户端由于移动或其它网络异常的原因发生地址变化。Push客户端的地址更新有以下2种方式:
方式A)Push客户端启动地址更新:
其中,方式A)是Push客户端感知其地址发生变化,并主动通知Push代理,如图7所示,包括以下步骤:
701、Push客户端感知其地址变化,发送地址更新消息给Push代理,其中,该地址更新消息或其数据包头中携带Push客户端的Push标识和新地址;
702、Push代理更新保存的Push客户端的Push标识和地址的映射关系,以新地址代替原地址;
703、Push代理返回更新响应给Push客户端。
方式B)网络侧网元启动Push客户端的地址更新:
其中,方式B)是由网络侧网元(如数据网关节点)感知Push客户端的地址发生变化,并通知Push代理。其中,方式B)需要网络侧网元(如数据网关节点)事先接收Push代理发送的触发消息,该触发消息用于在网络侧网元感知Push客户端的地址发生变化时通知Push代理。如Push代理和网络侧网元(如数据网关节点)共享数据则不需要触发。如图8所示,包括以下步骤:
801、网络侧网元感知Push客户端的地址变化后,发送地址更新消息给Push代理,其中,该地址更新消息携带网络侧网元感知的Push客户端的原地址以及变化后的新地址;
802、Push代理根据Push客户端的原地址查询保存的Push客户端的Push标识和地址的映射关系,并将上述的新地址更新映射关系中的地址。
其中,Push客户端的地址释放:
本实施例中,Push客户端的地址释放适用于非LTE的网络(如3G网络),其中,Push客户端的地址释放不会影响Push客户端与网络侧的电路承载(CS)域的连接。Push客户端的地址释放有以下2种方式:
方式A)网络侧网元启动Push客户端的地址释放:
其中,方式A)需要网络侧网元(如数据网关节点)事先接收Push代理发送的触发消息,该触发消息用于在网络侧网元感知Push客户端的地址发生变化时通知Push代理。如Push代理和网络侧网元(如数据网关节点)共享数据则不需要触发。如图9所示,包括以下步骤:
901、网络侧网元感知Push客户端的所有分组数据协议(Package DataProtocol,PDP)释放或地址释放后,发送的地址释放消息给Push代理,其中,该地址释放消息携带网络侧网元感知的Push客户端的地址;
902、Push代理根据地址释放消息携带的Push客户端的地址查询保存的Push客户端的Push标识和地址的映射关系,并将映射关系中的地址的标记为未获取或特殊值。
方式B)Push客户端启动地址释放,包括以下步骤:
1)Push客户端发送地址释放消息给Push代理,其中,该地址释放消息中携带Push客户端的地址;
2)Push代理更新保存的Push客户端的Push标识和地址的映射关系,将映射关系中的Push客户端的地址标记为未获取或特殊值。
过程四、Push客户端的Push去注册:
通过上述的过程一所描述的Push注册,Push代理可以保存Push客户端的Push标识和地址的映射关系。如果Push客户端不再需要Push服务或者退网时,可以由Push客户端或网络侧网元向Push服务器发起去注册过程。其中,考虑到Push代理是否中转以及去注册过程的发起者的不同,有以下几种方式:
方式A)Push客户端发起Push去注册过程,Push代理中转去注册信令;如图10所示,方式A)的Push去注册过程可以包括如下步骤:
1001、Push客户端向Push代理发送去注册请求消息,其中,该去注册请求消息或其数据包头中携带Push客户端的Push标识;可选地还可以携带Push服务器的地址;
1002、Push代理向Push服务器发送去注册请求消息;
可选地,Push代理可以将Push客户端发送的去注册请求消息转换格式,以适应Push服务器的接口,使得Push客户端可以和不同的Push服务器进行交互,使Push服务不局限于特定的Push客户端。
1003、Push服务器返回去注册请求响应消息给Push代理;
1004、Push代理转发去注册请求响应消息给Push客户端,并删除保存的Push客户端的Push标识和地址的映射关系。
可选地,Push代理可以将Push服务器返回的去注册请求响应消息转换格式,以适应Push客户端的接口,使得不同的Push服务器可以和Push客户端进行交互,使Push服务不局限于特定的Push服务器。
方式B)Push客户端发起Push去注册过程,Push代理不中转去注册信令;如图11所示,方式B)的Push去注册过程可以包括如下步骤:
1101、Push客户端向Push服务器发送去注册请求消息,其中,该去注册请求消息携带Push客户端的Push标识,使Push服务器删除与Push客户端的Push标识相关的上下文,例如,删除该Push客户端的Push标识与Push代理的地址的映射关系;
1102、Push客户端向Push代理发送去注册请求消息,其中,该去注册请求消息携带Push客户端的Push标识;
1103、Push代理发送去注册请求响应消息至Push客户端,并删除保存的Push客户端的Push标识和地址的映射关系。
方式C)网络侧网元发起Push去注册过程;
其中,方式C)需要网络侧网元(如数据网关节点)事先接收Push代理发送的触发消息,该触发消息用于在网络侧网元感知Push客户端退网时通知Push代理。如Push代理和网络侧网元(如数据网关节点)共享数据则不需要触发。如图12所示,方式C)的Push去注册过程可以包括如下步骤:
1201、网络侧网元发现Push客户端退网时,向Push代理发送去注册请求消息,其中,该去注册请求消息携带Push客户端的地址;
1202、Push代理根据Push客户端的地址,从保存的Push客户端的Push标识和地址的映射关系中获得Push客户端的Push标识并写入去注册请求消息后发送给Push服务器,使Push服务器删除与Push客户端的Push标识相关的上下文,例如,删除该Push客户端的Push标识与Push代理的地址的映射关系;
1203、Push服务器返回去注册请求响应消息给Push代理,Push代理删除Push客户端的Push标识和地址的映射关系。
可选地,Push代理还可以将根据Push客户端的认证信息删除。
过程五、Push代理模拟心跳:
当Push代理保存有Push客户端的认证信息并且Push客户端已经在Push服务器注册时,Push代理可以模拟Push客户端定期地向Push服务器发送心跳,以符合Push服务器现有机制。
过程六、网络异常通知:
当Push代理收到Push服务器发送给Push客户端的Push消息时,如发现Push消息中的Push标识对应的Push客户端位于繁忙或异常网络区域时,则向Push服务器返回一个繁忙或者异常响应,以便于Push服务器作相应的处理。
在此之前,Push代理可以和数据网关节点进行交互,获取与Push客户端的地址对应的网络区域标识,该网络区域标识可以是SGSN或GW等连接数据网关节点的网元地址。Push代理根据这些网络区域标识与网络状态数据库交互以获得这些网络区域的忙/闲/异常等的状态,具体可以是周期性获取状态,也可以是事件触发网络状态数据库向Push代理汇报。
本实施例提供的推送设备间的协作方法中,Push代理在获取Push客户端的Push标识和地址之后,可以保存Push客户端的Push标识和地址的映射关系,在Push客户端的地址发生变化时,无需心跳操作即可及时地对其保存的Push客户端的地址进行更新,从而能够提高Push客户端的IP连接的有效性和可达性,进而能够提高Push消息的实时性和可靠性。另外,消除Push客户端和Push服务器之间的心跳,可以节省Push客户端能量和网络侧资源。因为,在无线网络中,Push客户端为发送心跳包需要间歇地进行空闲态和激活态的转换,频繁的心跳需要大量消耗Push客户端能量和网络侧资源,特别是Push客户端数目庞大时容易造成网络侧信令风暴。更进一步地,Push代理可以将不同Push服务器发送的不同格式的Push消息转换统一格式的Push消息发送给Push客户端,使得Push服务不局限于特定的Push客户端。
实施例三:
请参阅图13,图13为本发明实施例中提供的另一种推送设备间的协作方法的流程图。如图13所示,该方法可以包括以下步骤:
1301、Push代理获取Push客户端的推送Push标识、网络内部标识和地址;
本实施例中,Push客户端的地址可以是Push客户端的IP地址,或是IP地址和端口。
其中,Push客户端的网络内部标识的包括但不限于Push客户端的国际移动用户识别码(International Mobile Subscriber Identity,IMSI)、移动用户国际号码(Mobile Station ISDN,MSISDN)、网络访问标识符(Network AccessIdentifier,NAI)等。
1302、Push代理保存Push客户端的Push标识、网络内部标识和地址的映射关系;
1303、若Push客户端的地址发生变化,则Push代理更新上述映射关系中对应的地址。
本实施例中,Push代理获取Push客户端的推送Push标识、网络内部标识和地址具体可以采用以下方式:
方式一:
1)Push代理接收Push客户端发送的Push注册请求消息,其中,该Push注册请求消息或其数据包头携带Push客户端的地址,还可以携带Push服务器的地址;
2)Push代理解析上述的Push注册请求消息或其数据包头,获得Push客户端的地址,并根据获得的Push客户端的地址向网络侧网元查询对应的网络内部标识,该网络侧网元为数据网关节点,或归属位置寄存器HLR,或归属用户服务器HSS,或认证、授权以及计费AAA服务器;
3)Push代理将Push注册请求消息发送至Push服务器;
4)Push代理接收Push服务器发送的Push注册请求响应消息,其中,该Push注册请求响应消息携带Push服务器为Push客户端分配的Push标识;
5)Push代理解析上述的Push注册请求响应消息,获得Push客户端的Push标识。
方式二:
1)Push代理接收Push客户端发送的Push注册请求消息,该Push注册请求消息或其数据包头中携带Push客户端的Push标识、网络内部标识、地址;
2)Push代理解析上述的Push注册请求或其数据包头,获得Push客户端的Push标识、网络内部标识、地址。
方式三:
1)Push代理接收网络侧网元发送的Push客户端入网通知,该Push客户端入网通知携带Push客户端的地址、网络内部标识;该网络侧网元为数据网关节点,或归属位置寄存器HLR,或归属用户服务器HSS,或认证、授权以及计费AAA服务器;
2)Push代理根据网络内部标识本地查询或者向用户信息数据库获取Push客户端认证信息、Push服务器地址,并向Push服务器发送Push注册请求消息;
3)Push代理接收Push服务器发送的Push注册请求响应消息,该Push注册请求响应消息携带Push服务器为Push客户端分配的Push标识;
4)Push代理解析上述的Push注册请求响应消息,获得Push客户端的Push标识。
本实施例中,若Push客户端的地址发生变化,则Push代理更新上述映射关系中的地址具体可以为:
1)Push代理接收网络侧网元发送的地址更新消息,其中,该地址更新消息携带Push客户端的网络内部标识以及网络侧网元感知的Push客户端的变化后的新地址;
其中,网络侧网元为数据网关节点,或归属位置寄存器(HLR),或归属用户服务器(HSS),或认证、授权以及计费(AAA)服务器。
2)Push代理根据网络内部标识查询保存的Push客户端的Push标识、网络内部标识和地址的映射关系,并将新地址更新映射关系中对应的地址。
本实施例提供的推送设备间的协作方法中,Push代理在获取Push客户端的Push标识、网络内部标识和地址之后,可以保存Push客户端的Push标识、网络内部标识和地址的映射关系,在Push客户端的地址发生变化时,无需心跳操作即可及时地对其保存的Push客户端的地址进行更新,从而能够提高Push客户端的IP连接的有效性和可达性,进而能够提高Push消息的实时性和可靠性。
实施例四:
本实施例提供的推送设备间的协作方法中,Push代理作为Push服务器和Push客户端的中转,结合Push客户端的网络内部标识可以完成包括Push客户端的Push注册、Push消息转发、Push客户端的地址更新或释放、Push去注册、Push代理模拟心跳以及网络异常通知等过程,丰富Push代理的功用。下面,结合附图说明分别对本实施例中提供的推送设备间的协作方法包括的各过程进行详细说明。
过程一、Push客户端的Push注册:
方式A)、Push代理中转注册信令,如图14所示,该注册过程可以包括以下步骤:
1401、与实施例二中的步骤401相同;
1402、Push客户端向Push代理发送Push注册请求消息,其中,该注册请求消息或其数据包头中携带Push客户端的地址、网络内部标识以及Push服务器的地址,其中网络内部标识为可选携带;
1403、Push代理解析上述的Push注册请求消息或其数据包头,获得Push客户端的地址和网络内部标识并保存;
1404、Push代理根据Push服务器的地址,将Push注册请求消息发送至Push服务器;在此之前,如原Push注册请求消息中携带网络内部标识,则将该网络内部标识删除;
1405、Push服务器接收到Push代理转发的Push注册请求消息后,发送Push注册请求响应消息给Push代理,其中,该Push注册请求响应消息中携带Push服务器为Push客户端分配的Push标识。同时,Push服务器保存Push标识和Push代理地址的映射关系;
1406、Push代理如还未获取Push客户端的网络内部标识,则向数据网关节点进行网络内部标识查询交互,交互过程中Push代理向数据网关节点发送Push客户端的地址,数据网关节点返回相应的网络内部标识;
其中,若Push代理已经通过前面的步骤获取Push客户端的网络内部标识,则步骤1406可以省略。
1407、Push代理解析Push服务器发送的Push注册请求响应消息,保存Push客户端的Push标识、网络内部标识和地址的映射关系;
1408、Push代理根据Push客户端的地址,将Push服务器发送的Push注册请求响应消息转发给Push客户端;
1409、Push代理发送触发消息至数据网关节点,其中,触发消息携带Push客户端的网络内部标识,用于触发数据网关节点在Push客户端的地址更新或释放地址时通知Push代理。
此外,Push代理还可以向数据网关节点、HLR/HSS/AAA等网元发送携带Push客户端的网络内部标识的触发消息,用于触发这些网络侧网元在Push客户端退网(即去注册)时通知Push代理。
方式B)、Push代理不中转注册信令,如图15所示,该注册过程可以包括以下步骤:
1501、与实施例二中的步骤501相同;
1502、与实施例二中的步骤502相同;
1503、Push客户端获取Push标识后,向Push代理发送代理注册请求消息,其中,该代理注册请求消息或其数据包头中携带Push客户端的Push标识、网络内部标识和地址,其中网络内部标识为可选携带;
1504、Push代理如还未获取Push客户端的网络内部标识,则向数据网关节点进行网络内部标识查询交互,交互过程中Push代理向数据网关节点发送Push客户端的地址,数据网关节点返回相应的网络内部标识;
其中,若Push代理已经通过前面的步骤获取Push客户端的网络内部标识,则步骤1504可以省略。
1505、Push代理保存Push客户端的Push标识、网络内部标识和地址的映射关系;
1506、Push代理向Push客户端返回代理注册请求响应消息;
1507、Push代理发送触发消息至数据网关节点,其中,触发消息携带Push客户端的网络内部标识,用于触发数据网关节点在Push客户端的地址更新或释放地址时通知Push代理。
此外,Push代理还可以向数据网关节点、HLR/HSS/AAA等网元发送携带Push客户端的网络内部标识的触发消息,用于触发这些网络侧网元在终端退网(即去注册)时通知Push代理。
方式C)、Push代理发起Push注册,如图16所示,该注册过程可以包括以下步骤:
1601、Push客户端入网,数据网关节点为Push客户端分配地址,并且向Push代理发送Push客户端入网通知,该通知中携带Push客户端的网络内部标识及地址;
其中,可以事先在数据网关节点中配置Push代理的地址。
1602、Push客户端和Push代理之间建立连接;
例如,Push客户端和Push代理之间可以建立TCP连接。
1603、Push代理如还未获取Push客户端的网络内部标识,则向数据网关节点进行网络内部标识查询交互,交互过程中Push代理向数据网关节点发送Push客户端的地址,数据网关节点返回相应的网络内部标识;
其中,若Push代理已经通过前面的步骤获取Push客户端的网络内部标识,则步骤1603可以省略。
1604、Push代理获知Push客户端入网或者Push客户端和Push代理建立连接后,根据获得的网络内部标识本地查询或者向用户信息数据库获取Push服务器的地址,并向Push服务器发送Push注册请求消息;
可选地,Push代理发送的Push注册请求消息还可以携带Push客户端的认证信息。
1605、Push服务器接收到Push代理发送的Push注册请求消息后,发送Push注册请求响应消息给Push代理,其中,该Push注册请求响应消息携带Push服务器为Push客户端分配的Push标识;
可选地,若上述步骤1604的Push代理发送的Push注册请求消息还携带Push客户端的认证信息,则在步骤1605中,Push服务器先认证Push客户端身份合法后再发送携带Push标识的Push注册请求响应消息给Push代理。
1606、Push代理保存Push客户端的Push标识、网络内部标识和地址的映射关系;
1607、与上述步骤1507相同;
1608、Push代理将Push注册请求响应消息转发给Push客户端。
过程二、Push消息转发:如图17所示,Push消息转发的过程如下:
1701、与上述的步骤601相同;
1702、与上述的步骤602相同;
1703、Push代理将Push消息转换成短消息服务(Short Messaging Service,SMS)消息或无线应用协议(Wireless Application Protocol,WAP)Push消息,并发送给短消息服务中心(Short Message Service Center,SMSC)或WAPPush代理网关,其中,SMS消息或WAP Push消息中携带与Push标识对应的网络内部标识;
其中,SMSC或WAP代理网关的地址在Push代理为预配置。
1704、SMSC或WAP代理网关将SMS消息或WAP Push消息发送给Push客户端。
过程三、Push客户端的地址更新或释放:
通过上述的过程一所描述的Push注册,Push代理可以保存Push客户端的Push标识、网络内部标识和地址的映射关系,继而在Push客户端的地址更新或释放时,Push代理可以及时地对映射关系中的地址进行更新。其中,Push客户端的地址更新有以下2种方式:
方式A)Push客户端启动地址更新:
其中,方式A)是Push客户端感知其地址发生变化,并主动通知Push代理,具体过程为:
1)Push客户端感知其地址变化时,发送地址更新消息给Push代理,其中,该地址更新消息携带Push客户端Push标识、网络内部标识和新地址;
2)Push代理更新保存的Push标识、网络内部标识和地址的映射关系,以新地址代替原地址;
3)Push代理返回更新响应给Push客户端。
方式B)网络侧网元启动Push客户端的地址更新:
其中,方式B)是由网络侧网元(如数据网关节点)感知Push客户端的地址发生变化,并通知Push代理。其中,方式B)需要网络侧网元(如数据网关节点)事先接收Push代理发送的触发消息,该触发消息用于在网络侧网元感知Push客户端的地址发生变化时通知Push代理。如Push代理和网络侧网元(如数据网关节点)共享数据则不需要触发。具体过程为:
1)网络侧网元感知Push客户端的地址变化后,发送地址更新消息给Push代理,其中,该地址更新消息携带网络侧网元感知的Push客户端的网络内部标识以及变化后的新地址;
2)Push代理根据Push客户端的网络内部标识查询保存的Push客户端的Push标识、网络内部标识和地址的映射关系,并将上述的新地址更新映射关系中的地址。
其中,Push客户端的地址释放:
本实施例中,Push客户端的地址释放不会影响Push客户端与网络侧的CS域的连接。Push客户端的地址释放为:
1)网络侧网元感知Push客户端的所有PDP释放或地址释放后,发送的地址释放消息给Push代理,其中,该地址释放消息携带网络侧网元感知的Push客户端的网络内部标识;
2)Push代理根据地址释放消息携带的Push客户端的网络内部标识查询保存的Push客户端的Push标识、网络内部标识和地址的映射关系,并将映射关系中的地址的标记为未获取或特殊值。
过程四、Push客户端的Push去注册:
其中,Push客户端的Push去注册的具体过程为:
1)Push客户端向Push代理发送去注册请求消息,其中,该去注册请求消息或其数据包头中携带Push客户端的网络内部标识以及Push服务器的地址;
2)Push代理根据去注册请求消息或其数据包头中携带的Push服务器的地址,向Push服务器发送去注册请求;
可选地,Push代理可以将Push客户端发送的去注册请求消息转换格式,以适应Push服务器的接口,使得Push客户端可以和不同的Push服务器进行交互,使Push服务不局限于特定的Push客户端。
3)Push服务器返回去注册请求响应消息给Push代理;
4)Push代理转发去注册请求响应消息给Push客户端,并删除保存的Push客户端的Push标识、网络内部标识和地址的映射关系。
可选地,Push代理可以将Push服务器返回的去注册请求响应消息转换格式,以适应Push客户端的接口,使得不同的Push服务器可以和Push客户端进行交互,使Push服务不局限于特定的Push服务器。
本实施例提供的推送设备间的协作方法中,Push代理在获取Push客户端的Push标识、网络内部标识和地址之后,可以保存Push客户端的Push标识网络内部标识和地址的映射关系,在Push客户端的地址发生变化时,无需心跳操作即可及时地对其保存的Push客户端的地址进行更新,从而能够提高Push客户端的IP连接的有效性和可达性,进而能够提高Push消息的实时性和可靠性。另外,消除Push客户端和Push服务器之间的心跳,可以节省Push客户端能量和网络侧资源。更进一步地,Push代理可以将不同Push服务器发送的不同格式的Push消息转换统一格式的Push消息发送给Push客户端,使得Push服务不局限于特定的Push客户端。
实施例五:
请参阅图18,图18为本发明实施例中提供的一种推送设备间的协作装置的结构图,用于实现上述实施例一、实施例二中的Push代理的功能。如图18所示,该协作装置可以包括:
第一获取模块1801,用于获取Push客户端的Push标识和地址;
第一保存模块1802,用于保存上述的Push客户端的Push标识和地址的映射关系;
第一更新模块1803,用于在Push客户端的地址发生变化时,更新上述的映射关系中对应的地址。
本实施例中,Push客户端的地址可以是Push客户端的IP地址,或是IP地址和端口。
请参阅图19,图19为本发明实施例中提供的另一种推送设备间的协作装置的结构图。其中,图19所示的协作装置是对图18所示的协作装置进行优化得到的,其中,第一获取模块1801可以包括:
第一接收单元18011,用于接收Push客户端发送的Push注册请求消息,其中,该Push注册请求消息或其数据包头携带Push客户端的地址;可选地,还可以携带Push服务器的地址;
第一解析单元18012,用于解析上述的Push注册请求消息或其数据包头,获得Push客户端的地址;
第一发送单元18013,用于将上述的Push注册请求消息后发送至Push服务器;
其中,第一接收单元18011,还用于接收Push服务器发送的Push注册请求响应消息,该Push注册请求响应消息携带Push服务器为Push客户端分配的Push标识;
相应地,第一解析单元18012还用于解析上述的Push注册请求响应消息,获得Push客户端的Push标识。
相应地,第一保存模块1802可以用于保存第一解析单元18012获得的Push客户端的Push标识和地址的映射关系。
请参阅图20,图20为本发明实施例中提供的另一种推送设备间的协作装置的结构图。其中,图20所示的协作装置是对图18所示的协作装置进行优化得到的,其中,第一获取模块1801可以包括:
第二接收单元18014,用于接收Push客户端发送的代理注册请求消息,该代理注册请求消息或其数据包头携带Push客户端的Push标识和地址;
第二解析单元18015,用于解析上述的代理注册请求消息或其数据包头,获得Push客户端的Push标识和地址。
相应地,第一保存模块1802可以用于保存第二解析单元18015获得的Push客户端的Push标识和地址的映射关系。
请参阅图21,图21为本发明实施例中提供的另一种推送设备间的协作装置的结构图。其中,图21所示的协作装置是对图18所示的协作装置进行优化得到的,其中,第一更新模块1803可以包括:
第一处理单元18031,用于接收网络侧网元发送的地址更新消息,该地址更新消息携带网络侧网元感知的Push客户端的原地址以及变化后的新地址;
本实施例中,网络侧网元为数据网关节点,或HLR,或HSS,或AAA服务器。
第二处理单元18032,用于根据Push客户端的原地址查询保存的Push客户端的Push标识和地址的映射关系,并将上述的新地址更新映射关系中对应的地址。即,将新地址更新Push客户端的原地址。
其中,第二处理单元18032具体用于根据Push客户端的原地址查询第一保存模块1802保存的Push客户端的Push标识和地址的映射关系,并将上述的新地址更新映射关系中对应的地址。
可选地,图21所示的协作装置中,第一获取模块1801的结构可以与图19或图20中的第一获取模块1801的结构相同,本实施例不作限定。
可选地,图21所示的协作装置中,第二处理单元18032还用于发送触发消息至网络侧网元,该触发消息携带Push客户端的地址,用于触发网络侧网元在感知到Push客户端的地址发生变化时通知第一处理单元18031。
请参阅图22,图22为本发明实施例中提供的另一种推送设备间的协作装置的结构图。其中,图22所示的协作装置是对图18所示的协作装置进行优化得到的,其中,第一更新模块1803可以包括:
第三处理单元18033,用于接收Push客户端发送的地址更新消息,该地址更新消息携带Push客户端的Push标识以及Push客户端感知的变化后的新地址;
第四处理单元18034,用于根据Push客户端的Push标识查询第一保存模块1802保存的Push客户端的Push标识和地址的映射关系,并将新地址更新上述映射关系中对应的地址。
可选地,图22所示的协作装置中,第一获取模块1801的结构可以与图19或图20中的第一获取模块1801的结构相同,本实施例不作限定。
请参阅图23,图23为本发明实施例中提供的另一种推送设备间的协作装置的结构图。其中,图23所示的协作装置是对图18所示的协作装置进行优化得到的,该协作装置除了包括第一获取模块1801、第一保存模块1802以及第一更新模块1803之外,还包括:
第一控制模块1804,用于接收Push服务器发送Push消息,该Push消息携带Push客户端的Push标识;
第二控制模块1805,用于根据上述的Push客户端的Push标识,从第一保存模块1802保存的Push客户端的Push标识和地址的映射关系中获取Push客户端的地址并通知第一控制模块1804;
相应地,第一控制模块1804还用于根据第二控制模块1805通知的Push客户端的地址,将Push服务器发送的Push消息发送至Push客户端。
可选地,第一控制模块1804在将Push服务器发送的Push消息发送送至Push客户端之前,可以先将Push消息转换格式以适应Push客户端的接口,使得Push服务不局限于特定的Push客户端。
可选地,图23所示的协作装置中,第一获取模块1801的结构可以与图19或图20中的第一获取模块1801的结构相同,第一更新模块1803的结构可以与图21或图22中的第一更新模块1803的结构相同,本实施例不作限定。
第三控制模块1806,用于接收网络侧网元发送的地址释放消息,该地址释放消息携带网络侧网元感知的Push客户端的释放前地址;
其中,网络侧网元为数据网关节点,或HLR,或HSS,或AAA服务器。
第四控制模块1807,用于根据上述地址查询第一保存模块1802保存的Push客户端的Push标识和地址的映射关系,并标记映射关系中对应的地址为未获取或特殊值。
可选地,图23所示的协作装置中,第三控制模块1806还可以用于接收Push客户端发送的去注册请求消息,该去注册请求消息至少携带Push客户端的Push标识;
相应地,第四控制模块1807还可以用于发送去注册请求响应消息至Push客户端,并删除第一保存模块1802保存的Push客户端的Push标识和地址的映射关系。
可选地,图23所示的协作装置中,第三控制模块1806还可以用于接收Push客户端发送的去注册请求消息,该去注册请求消息至少携带Push客户端的Push标识;可选地,还可以携带Push服务器的地址;
相应地,第四控制模块1807还可以用于将去注册请求消息发送至Push服务器;接收Push服务器发送的去注册请求响应消息并发送至Push客户端,并删除第一保存模块1802保存的Push客户端的Push标识和地址的映射关系。
本实施例提供的推送设备间的协作装置中,第一保存模块1802可以保存上述的Push客户端的Push标识和地址的映射关系,第一更新模块1803在Push客户端的地址发生变化时,无需心跳操作即可及时地对其保存的Push客户端的地址进行更新,从而能够提高Push客户端的IP连接的有效性和可达性,进而能够提高Push消息的实时性和可靠性。另外,消除Push客户端和Push服务器之间的心跳,可以节省Push客户端能量和网络侧资源。更进一步地,协作装置可以将不同Push服务器发送的不同格式的Push消息转换统一格式的Push消息发送给Push客户端,使得Push服务不局限于特定的Push客户端。
实施例六:
请参阅图24,图24为本发明实施例中提供的另一种推送设备间的协作装置的结构图,用于实现上述实施例三、实施例四中的Push代理的功能。如图24所示,该协作装置可以包括:
第二获取模块2401,用于获取Push客户端的Push标识、网络内部标识和地址;
第二保存模块2402,用于保存上述的Push客户端的Push标识、网络内部标识和地址的映射关系;
第二更新模块2403,用于在上述的Push客户端的地址发生变化时,更新上述映射关系中对应的地址。
请参阅图25,图25为本发明实施例中提供的另一种推送设备间的协作装置的结构图。其中,图25所示的协作装置是对图24所示的协作装置进行优化得到的,其中,第二获取模块2401可以包括:
第三接收单元24011,用于接收Push客户端发送的Push注册请求消息,该Push注册请求消息或其数据包头携带Push客户端的地址;可选地,还可以携带Push服务器的地址;
第三解析单元24012,用于解析上述的Push注册请求消息或其数据包头,获得Push客户端的地址,并根据Push客户端的地址查询网络侧网元获得Push客户端的网络内部标识,该网络侧网元为数据网关节点,或归属位置寄存器HLR,或归属用户服务器HSS,或认证、授权以及计费AAA服务器;
第三发送单元24013,用于将Push注册请求消息发送至Push服务器;
相应地,第三接收单元24011还用于接收Push服务器发送的Push注册请求响应消息,该Push注册请求响应消息携带Push服务器为Push客户端分配的Push标识;
相应地,第三解析单元24012还用于解析上述的Push注册请求响应消息,获得Push客户端的Push标识。
请参阅图26,图26为本发明实施例中提供的另一种推送设备间的协作装置的结构图。其中,图26所示的协作装置是对图24所示的协作装置进行优化得到的,其中,第二更新模块2403可以包括:
第五处理单元24031,用于接收网络侧网元发送的地址更新消息,该地址更新消息携带Push客户端的网络内部标识以及网络侧网元感知的Push客户端的变化后的新地址;
其中,网络侧网元为数据网关节点,或HLR,或HSS,或AAA服务器。
第六处理单元24032,用于根据上述的网络内部标识查询第二保存模块2402保存的Push客户端的Push标识、网络内部标识和地址的映射关系,并将新地址更新映射关系中对应的地址。
可选地,图26所示的协作装置中,第二获取模块2401的结构可以与图25中的第二获取模块2401的结构相同,本实施例不作限定。
如图26所示,本实施例提供的协作装置还可以包括:
第五控制模块2404,用于接收Push服务器发送Push消息,该Push消息携带Push客户端的Push标识;
第六控制模块2405,根据Push客户端的Push标识,从第二保存模块2402保存的Push客户端的Push标识、网络内部标识和地址的映射关系中获取Push客户端的网络内部标识;并将该Push消息转换成SMS消息或WAP Push消息,将转换后的消息发送给SMSC或WAP Push代理网关,其中,转换后的消息中携带与Push标识对应的网络内部标识。
本实施例提供的推送设备间的协作装置中,第二保存模块2402可以保存上述的Push客户端的Push标识、网络内部标识和地址的映射关系,第二更新模块2403在Push客户端的地址发生变化时,无需心跳操作即可及时地对其保存的Push客户端的地址进行更新,从而能够提高Push客户端的IP连接的有效性和可达性,进而能够提高Push消息的实时性和可靠性。另外,消除Push客户端和Push服务器之间的心跳,可以节省Push客户端能量和网络侧资源。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:只读存储器(ROM)、随机存取器(RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上对本发明实施例所提供的一种推送设备间的协作方法及装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上,本说明书内容不应理解为对本发明的限制。

Claims (30)

1.一种推送设备间的协作方法,其特征在于,包括:
推送代理获取推送客户端的推送标识和地址;
推送代理保存所述推送客户端的推送标识和地址的映射关系;
若所述推送客户端的地址发生变化,则推送代理更新所述映射关系中对应的地址;
所述方法还包括:
推送代理接收推送服务器发送推送消息,所述推送消息携带所述推送客户端的推送标识;
推送代理根据所述推送客户端的推送标识,从保存的所述推送客户端的推送标识和地址的映射关系中获取所述推送客户端的地址;
根据所述推送客户端的地址,将所述推送消息发送至所述推送客户端。
2.根据权利要求1所述的方法,其特征在于,所述推送代理获取推送客户端的推送标识和地址包括:
推送代理接收推送客户端发送的推送注册请求消息,所述推送注册请求消息或其数据包头携带所述推送客户端的地址;
解析所述推送注册请求消息或其数据包头,获得所述推送客户端的地址;
将所述推送注册请求消息发送至推送服务器;
接收所述推送服务器发送的推送注册请求响应消息,所述推送注册请求响应消息携带所述推送服务器为所述推送客户端分配的推送标识;
解析所述推送注册请求响应消息,获得所述推送客户端的推送标识。
3.根据权利要求1所述的方法,其特征在于,所述推送代理获取推送客户端的推送标识和地址包括:
推送代理接收推送客户端发送的代理注册请求消息,所述代理注册请求消息或其数据包头携带所述推送客户端的推送标识和地址;
解析所述代理注册请求消息或其数据包头,获得所述推送客户端的推送标识和地址。
4.根据权利要求3所述的方法,其特征在于,所述推送客户端的推送标识是所述推送客户端通过以下方式获得的:
推送客户端发送推送注册请求消息至推送服务器;
推送客户端接收所述推送服务器发送的推送注册请求响应消息,所述推送注册请求响应消息携带所述推送服务器为所述推送客户端分配的推送标识;
推送客户端解析所述注册请求响应消息,获得所述推送客户端的推送标识。
5.根据权利要求1所述的方法,其特征在于,若所述推送客户端的地址发生变化,则推送代理更新所述映射关系中对应的地址包括:
推送代理接收网络侧网元发送的地址更新消息,所述地址更新消息携带所述网络侧网元感知的所述推送客户端的原地址以及变化后的新地址;所述网络侧网元为数据网关节点,或归属位置寄存器HLR,或归属用户服务器HSS,或认证、授权以及计费AAA服务器;
根据所述原地址查询保存的所述推送客户端的推送标识和地址的映射关系,并将所述新地址更新所述映射关系中对应的地址。
6.根据权利要求5所述的方法,其特征在于,推送代理在接收网络侧网元发送的地址更新消息之前,还包括:
推送代理发送触发消息至网络侧网元,所述触发消息携带所述推送客户端的地址,用于触发所述网络侧网元在感知到所述推送客户端的地址发生变化时通知推送代理。
7.根据权利要求6所述的方法,其特征在于,所述推送代理与所述网络侧网元位于同一设备上,所述触发消息是通过内部触发机制发送的。
8.根据权利要求1所述的方法,其特征在于,若所述推送客户端的地址发生变化,则推送代理更新所述映射关系中对应的地址包括:
推送代理接收推送客户端发送的地址更新消息,所述地址更新消息携带所述推送客户端的推送标识以及所述推送客户端感知的变化后的新地址;
根据所述推送客户端的推送标识查询保存的所述推送客户端的推送标识和地址的映射关系,并将所述新地址更新所述映射关系中对应的地址。
9.根据权利要求1所述的方法,其特征在于,在将所述推送消息发送至所述推送客户端之前,还包括:
将所述推送消息转换格式以适应所述推送客户端的接口。
10.根据权利要求1所述的方法,其特征在于,还包括:
推送代理接收网络侧网元发送的地址释放消息,所述地址释放消息携带所述网络侧网元感知的所述推送客户端的释放前地址;所述网络侧网元为数据网关节点,或归属位置寄存器HLR,或归属用户服务器HSS,或认证、授权以及计费AAA服务器;
根据所述地址查询保存的所述推送客户端的推送标识和地址的映射关系,并标记所述映射关系中对应的地址为未获取或特殊值。
11.根据权利要求1所述的方法,其特征在于,还包括:
推送代理接收推送客户端发送的去注册请求消息,所述去注册请求消息至少携带所述推送客户端的推送标识;
推送代理发送去注册请求响应消息至所述推送客户端,并删除保存的所述推送客户端的推送标识和地址的映射关系。
12.根据权利要求1所述的方法,其特征在于,还包括:
推送代理接收推送客户端发送的去注册请求消息,所述去注册请求消息至少携带所述推送客户端的推送标识;
将所述去注册请求消息发送至推送服务器;
接收所述推送服务器发送的去注册请求响应消息并发送至所述推送客户端,删除保存的所述推送客户端的推送标识和地址的映射关系。
13.一种推送设备间的协作方法,其特征在于,包括:
推送代理获取推送客户端的推送标识、网络内部标识和地址;
推送代理保存所述推送客户端的推送标识、网络内部标识和地址的映射关系;
若所述推送客户端的地址发生变化,则推送代理更新所述映射关系中对应的地址;
所述方法还包括:
推送代理接收推送服务器发送推送消息,所述推送消息携带所述推送客户端的推送标识;
推送代理根据所述推送客户端的推送标识,从保存的所述推送客户端的推送标识、网络内部标识和地址的映射关系中获取所述推送客户端的网络内部标识;
将推送消息转换成SMS消息或WAP Push消息,并将转换后的消息发送给SMSC或WAP Push代理网关,所述转换后的消息中携带与推送标识对应的网络内部标识。
14.根据权利要求13所述的方法,其特征在于,所述推送代理获取推送客户端的推送标识、网络内部标识和地址包括:
推送代理接收推送客户端发送的推送注册请求消息,所述推送注册请求消息或其数据包头携带所述推送客户端的地址;
解析所述推送注册请求消息或其数据包头,获得所述推送客户端的地址;
根据所述地址查询网络侧网元获得所述推送客户端的网络内部标识,所述网络侧网元为数据网关节点,或归属位置寄存器HLR,或归属用户服务器HSS,或认证、授权以及计费AAA服务器;
将所述推送注册请求消息发送至推送服务器;
接收所述推送服务器发送的推送注册请求响应消息,所述推送注册请求响应消息携带所述推送服务器为所述推送客户端分配的推送标识;
解析所述推送注册请求响应消息,获得所述推送客户端的推送标识。
15.根据权利要求13所述的方法,其特征在于,所述推送代理获取推送客户端的推送标识、网络内部标识和地址包括:
推送代理接收推送客户端发送的代理注册请求消息,所述代理注册请求消息或其数据包头中携带所述推送客户端的推送标识、网络内部标识、地址;
解析所述代理注册请求或其数据包头,获得所述推送客户端的推送标识、网络内部标识、地址。
16.根据权利要求13所述的方法,其特征在于,所述推送代理获取推送客户端的推送标识、网络内部标识和地址包括:
推送代理接收网络侧网元发送的推送客户端入网通知,所述推送客户端入网通知携带所述推送客户端的地址、网络内部标识;所述网络侧网元为数据网关节点,或归属位置寄存器HLR,或归属用户服务器HSS,或认证、授权以及计费AAA服务器;
根据所述网络内部标识本地查询或者向用户信息数据库获取推送客户端认证信息、推送服务器地址,并向推送服务器发送推送注册请求消息;
接收所述推送服务器发送的推送注册请求响应消息,所述推送注册请求响应消息携带所述推送服务器为所述推送客户端分配的推送标识;
解析所述推送注册请求响应消息,获得所述推送客户端的推送标识。
17.根据权利要求13所述的方法,其特征在于,若所述推送客户端的地址发生变化,则推送代理更新所述映射关系中对应的地址包括:
推送代理接收网络侧网元发送的地址更新消息,所述地址更新消息携带所述推送客户端的网络内部标识以及所述网络侧网元感知的所述推送客户端的变化后的新地址;所述网络侧网元为数据网关节点,或归属位置寄存器HLR,或归属用户服务器HSS,或认证、授权以及计费AAA服务器;
根据所述网络内部标识查询保存的所述推送客户端的推送标识、网络内部标识和地址的映射关系,并将所述新地址更新所述映射关系中对应的地址。
18.一种推送设备间的协作装置,其特征在于,包括:
第一获取模块,用于获取推送客户端的推送标识和地址;
第一保存模块,用于保存所述推送客户端的推送标识和地址的映射关系;
第一更新模块,用于在所述推送客户端的地址发生变化时,更新所述映射关系中对应的地址;
第一控制模块,用于接收推送服务器发送推送消息,所述推送消息携带所述推送客户端的推送标识;
第二控制模块,用于根据所述推送客户端的推送标识,从所述第一保存模块保存的所述推送客户端的推送标识和地址的映射关系中获取所述推送客户端的地址并通知所述第一控制模块;
所述第一控制模块,还用于根据所述推送客户端的地址,将所述推送消息发送至所述推送客户端。
19.根据权利要求18所述的协作装置,其特征在于,所述第一获取模块包括:
第一接收单元,用于接收推送客户端发送的推送注册请求消息,所述推送注册请求消息或其数据包头携带所述推送客户端的地址;
第一解析单元,用于解析所述推送注册请求消息或其数据包头,获得所述推送客户端的地址;
第一发送单元,用于将所述推送注册请求消息发送至推送服务器;
所述第一接收单元,还用于接收所述推送服务器发送的推送注册请求响应消息,所述推送注册请求响应消息携带所述推送服务器为所述推送客户端分配的推送标识;
所述第一解析单元,还用于解析所述推送注册请求响应消息,获得所述推送客户端的推送标识。
20.根据权利要求18所述的协作装置,其特征在于,所述第一获取模块包括:
第二接收单元,用于接收推送客户端发送的代理注册请求消息,所述代理注册请求消息或其数据包头携带所述推送客户端的推送标识和地址;
第二解析单元,用于解析所述代理注册请求消息或其数据包头,获得所述推送客户端的推送标识和地址。
21.根据权利要求18所述的协作装置,其特征在于,所述第一更新模块包括:
第一处理单元,用于接收网络侧网元发送的地址更新消息,所述地址更新消息携带所述网络侧网元感知的所述推送客户端的原地址以及变化后的新地址;所述网络侧网元为数据网关节点,或归属位置寄存器HLR,或归属用户服务器HSS,或认证、授权以及计费AAA服务器;
第二处理单元,用于根据所述原地址查询保存的所述推送客户端的推送标识和地址的映射关系,并将所述新地址更新所述映射关系中对应的地址。
22.根据权利要求21所述的协作装置,其特征在于,
所述第二处理单元,还用于发送触发消息至网络侧网元,所述触发消息携带所述推送客户端的地址,用于触发所述网络侧网元在感知到所述推送客户端的地址发生变化时通知所述第一处理单元。
23.根据权利要求18所述的协作装置,其特征在于,所述第一更新模块包括:
第三处理单元,用于接收推送客户端发送的地址更新消息,所述地址更新消息携带所述推送客户端的推送标识以及所述推送客户端感知的变化后的新地址;
第四处理单元,用于根据所述推送客户端的推送标识查询保存的所述推送客户端的推送标识和地址的映射关系,并将所述新地址更新所述映射关系中对应的地址。
24.根据权利要求18所述的协作装置,其特征在于,
所述第一控制模块,还用于在将所述推送消息发送至所述推送客户端之前,先将所述推送消息转换格式以适应所述客户端的接口。
25.根据权利要求18所述的协作装置,其特征在于,还包括:
第三控制模块,用于接收网络侧网元发送的地址释放消息,所述地址释放消息携带所述网络侧网元感知的所述推送客户端释放前的地址;所述网络侧网元为数据网关节点,或归属位置寄存器HLR,或归属用户服务器HSS,或认证、授权以及计费AAA服务器;
第四控制模块,用于根据所述地址查询所述第一保存模块保存的所述推送客户端的推送标识和地址的映射关系,并标记所述映射关系中对应的地址为未获取或特殊值。
26.根据权利要求25所述的协作装置,其特征在于,
所述第三控制模块,还用于接收推送客户端发送的去注册请求消息,所述去注册请求消息至少携带所述推送客户端的推送标识;
所述第四控制模块,还用于发送去注册请求响应消息至所述推送客户端,并删除所述第一保存模块保存的所述推送客户端的推送标识和地址的映射关系。
27.根据权利要求26所述的协作装置,其特征在于,
所述第三控制模块,还用于接收推送客户端发送的去注册请求消息,所述去注册请求消息至少携带所述推送客户端的推送标识;
所述第四控制模块,还用于将所述去注册请求消息发送至推送服务器;接收所述推送服务器发送的去注册请求响应消息并发送至所述推送客户端,并删除所述第一保存模块保存的所述推送客户端的推送标识和地址的映射关系。
28.一种推送设备间的协作装置,其特征在于,包括:
第二获取模块,用于获取推送客户端的推送标识、网络内部标识和地址;
第二保存模块,用于保存所述推送客户端的推送标识、网络内部标识和地址的映射关系;
第二更新模块,用于在所述推送客户端的地址发生变化时,更新所述映射关系中对应的地址;
第五控制模块,用于接收推送服务器发送推送消息,所述推送消息携带所述推送客户端的推送标识;
第六控制模块,根据所述推送客户端的推送标识,从保存的所述推送客户端的推送标识、网络内部标识和地址的映射关系中获取所述推送客户端的网络内部标识;并将推送消息转换成SMS消息或WAP Push消息,并将转换后的消息发送给SMSC或WAP Push代理网关,所述转换后的消息中携带与推送标识对应的网络内部标识。
29.根据权利要求28所述的协作装置,其特征在于,所述第二获取模块包括:
第三接收单元,用于接收推送客户端发送的推送注册请求消息,所述推送注册请求消息或其数据包头携带所述推送客户端的地址;
第三解析单元,用于解析所述推送注册请求消息或其数据包头,获得所述推送客户端的地址;并根据所述地址查询网络侧网元获得所述推送客户端的网络内部标识,所述网络侧网元为数据网关节点,或归属位置寄存器HLR,或归属用户服务器HSS,或认证、授权以及计费AAA服务器;
第三发送单元,用于将所述推送注册请求消息发送至推送服务器;
所述第三接收单元,还用于接收所述推送服务器发送的推送注册请求响应消息,所述推送注册请求响应消息携带所述推送服务器为所述推送客户端分配的推送标识;
所述第三解析单元,还用于解析所述推送注册请求响应消息,获得所述推送客户端的推送标识。
30.根据权利要求28或29所述的协作装置,其特征在于,所述第二更新模块包括:
第五处理单元,用于接收网络侧网元发送的地址更新消息,所述地址更新消息携带所述推送客户端的网络内部标识以及所述网络侧网元感知的所述推送客户端的变化后的新地址;所述网络侧网元为数据网关节点,或归属位置寄存器HLR,或归属用户服务器HSS,或认证、授权以及计费AAA服务器;
第六处理单元,用于根据所述网络内部标识查询所述第二保存模块保存的所述推送客户端的推送标识、网络内部标识和地址的映射关系,并将所述新地址更新所述映射关系中对应的地址。
CN201010244030.9A 2010-07-30 2010-07-30 一种推送设备间的协作方法及装置 Expired - Fee Related CN102347967B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201010244030.9A CN102347967B (zh) 2010-07-30 2010-07-30 一种推送设备间的协作方法及装置
PCT/CN2011/074345 WO2011137792A1 (zh) 2010-07-30 2011-05-19 一种推送设备间的协作方法及装置
US13/753,833 US9247018B2 (en) 2010-07-30 2013-01-30 Method and apparatus for cooperation between push devices

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201010244030.9A CN102347967B (zh) 2010-07-30 2010-07-30 一种推送设备间的协作方法及装置

Publications (2)

Publication Number Publication Date
CN102347967A CN102347967A (zh) 2012-02-08
CN102347967B true CN102347967B (zh) 2014-01-01

Family

ID=44903602

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010244030.9A Expired - Fee Related CN102347967B (zh) 2010-07-30 2010-07-30 一种推送设备间的协作方法及装置

Country Status (3)

Country Link
US (1) US9247018B2 (zh)
CN (1) CN102347967B (zh)
WO (1) WO2011137792A1 (zh)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8099764B2 (en) * 2007-12-17 2012-01-17 Microsoft Corporation Secure push and status communication between client and server
GB201109312D0 (en) * 2011-06-03 2011-07-20 Vodafone Ip Licensing Ltd Machine to machine communications
CN103139733B (zh) * 2011-11-25 2015-12-09 中国移动通信集团公司 通过短信拉起离线应用程序的系统与方法
CN103152374B (zh) * 2011-12-07 2016-08-10 华为终端有限公司 获知终端在线状态的方法与装置
US9295020B2 (en) * 2012-03-26 2016-03-22 Harris Corporation Systems and methods registration and maintenance of wireless clients via a proxy wireless network service
JP6044009B2 (ja) * 2013-06-27 2016-12-14 富士通株式会社 情報処理装置、宛先情報更新方法、およびプログラム
CN104468649B (zh) * 2013-09-16 2018-06-05 北大方正集团有限公司 服务器、终端、数据推送系统和数据推送方法
US9736256B2 (en) * 2014-02-13 2017-08-15 Microsoft Technology Licensing, Llc Implementing server push at server stack
CN104348905B (zh) * 2014-09-01 2016-09-14 腾讯科技(深圳)有限公司 一种离线推送消息的方法及装置
WO2016078006A1 (zh) * 2014-11-19 2016-05-26 华为技术有限公司 一种定向统计流量的方法、设备及系统
GB2543312A (en) * 2015-10-14 2017-04-19 Smartpipe Tech Ltd Network identification as a service
CN105657000A (zh) * 2015-12-25 2016-06-08 北京奇虎科技有限公司 消息传送方法及装置
CN106941509B (zh) * 2016-01-05 2020-06-30 阿里巴巴集团控股有限公司 用户信息流的请求方法及装置
US10523565B2 (en) * 2016-08-25 2019-12-31 Ford Global Technologies, Llc Mobile device network address server update
JP6888266B2 (ja) * 2016-10-06 2021-06-16 富士通株式会社 表示制御方法、表示制御装置及び表示制御プログラム
CN113852695A (zh) * 2016-11-01 2021-12-28 鲸彩在线科技(大连)有限公司 一种信息推送方法及网络架构
CN106412138B (zh) * 2016-12-21 2019-11-19 广州四三九九信息科技有限公司 一种无标签精准推送的方法和设备
CN108337156B (zh) * 2017-01-20 2020-12-18 阿里巴巴集团控股有限公司 一种信息推送方法及装置
CN108881354B (zh) * 2017-05-09 2021-11-09 腾讯科技(深圳)有限公司 一种推送信息存储方法、装置、服务器和计算机存储介质
CN108989264B (zh) * 2017-05-31 2020-04-03 华为技术有限公司 一种直播方法、系统以及相关设备
CN109819285B (zh) * 2017-11-21 2021-09-21 北京乐我无限科技有限责任公司 一种直播方法、装置、电子设备及存储介质
US11089133B1 (en) 2017-11-22 2021-08-10 Amazon Technologies, Inc. Synchronizing data with delayed subscriptions
US11126610B1 (en) 2017-11-22 2021-09-21 Amazon Technologies, Inc. Conflict resolution in a data proxy
US10891282B1 (en) 2017-11-22 2021-01-12 Amazon Technologies, Inc. Mutations with immediate feedback
US11159634B1 (en) * 2017-11-22 2021-10-26 Amazon Technologies, Inc. Subscription fan out
CN109905312B (zh) * 2017-12-08 2021-07-23 北京新媒传信科技有限公司 消息推送方法、装置及系统
KR20200124761A (ko) * 2018-03-23 2020-11-03 오팡가 네트웍스, 인크. 가상 네트워크 환경에서 조정된 데이터 공유
CN112615938B (zh) * 2020-12-30 2022-11-04 四川巧夺天工信息安全智能设备有限公司 一种基于tcp的物联网客户端的跨平台协同工作方法

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FI108195B (fi) * 1998-10-19 2001-11-30 Nokia Networks Oy Mekanismi verkon aloittamaa informaation siirtoa varten
AUPR459901A0 (en) * 2001-04-27 2001-05-24 Sharinga Networks Inc. Instant messaging
US6885861B2 (en) * 2001-08-24 2005-04-26 Nokia Corporation Service mobility and recovery in communication networks
ATE377331T1 (de) * 2001-08-29 2007-11-15 Research In Motion Ltd System und verfahren zur adressierung eines mobilen gerätes in einem ip-basierten drahtlosen netzwerk
US7254614B2 (en) * 2001-11-20 2007-08-07 Nokia Corporation Web services push gateway
MXPA04005406A (es) * 2001-12-06 2004-10-11 Access Co Ltd Sistema y metodo para proporcionar servicios de contenido de subscripcion a dispositivos moviles.
US7289462B1 (en) * 2001-12-26 2007-10-30 Nortel Networks Limited Method and apparatus for network-initiated context activation using dynamic DNS updates
US6985479B2 (en) * 2002-03-04 2006-01-10 Qualcomm Incorporated Method and apparatus for processing internet protocol transmissions
US20030210678A1 (en) * 2002-05-10 2003-11-13 Nokia Corporation Functionality split between mobile terminal and terminal equipment for internet protocol multimedia signal exchange
US7640300B2 (en) * 2002-06-10 2009-12-29 Microsoft Corporation Presence and notification system for maintaining and communicating information
US20040185888A1 (en) * 2003-03-18 2004-09-23 Nokia Corporation Solving mobile station identity in a multi-SIM situation
US7177628B2 (en) * 2003-03-21 2007-02-13 Motorola, Inc. Method for enabling IP push capability to wireless devices on a wireless network
US7769866B2 (en) * 2003-07-14 2010-08-03 Microsoft Corporation Virtual connectivity with subscribe-notify service
US7324474B2 (en) * 2003-10-21 2008-01-29 Qualcomm Incorporated Methods and apparatus for Network Initiated Data Services
US8856346B2 (en) * 2004-01-15 2014-10-07 Unwired Planet, Llc Stateful push notifications
KR100842589B1 (ko) * 2004-01-29 2008-07-01 삼성전자주식회사 고속 데이터 전송을 위한 이동통신 시스템에서 이동단말에 대한 푸시 서비스 제공 방법과 이를 위한 푸시서버 장치
SE527871C2 (sv) * 2004-03-09 2006-06-27 Ericsson Telefon Ab L M Metod och system för hantering av webbtjänster
US8085741B2 (en) * 2004-03-10 2011-12-27 Core Wireless Licensing S.A.R.L. System and method for pushing content to a terminal utilizing a network-initiated data service technique
CN100345425C (zh) 2004-05-25 2007-10-24 中国移动通信集团公司 从信息系统向移动终端推送信息的方法及系统
FI20041634A0 (fi) * 2004-12-20 2004-12-20 Nokia Corp Tarjontaistunnon muodostaminen kommunikaatiojärjestelmässä
WO2006109202A1 (en) 2005-04-11 2006-10-19 Nokia Corporation Method and entities for performing a push session in a communication system
EP1872522B1 (en) * 2005-04-18 2012-12-05 Research In Motion Limited System and method for enabling asynchronous push-based applications on a wireless device
CN100428719C (zh) * 2006-01-23 2008-10-22 北京交通大学 一种基于身份与位置分离的互联网接入方法
CN101222414B (zh) * 2007-01-11 2012-08-08 华为技术有限公司 实现组播通信的装置、系统和方法
CN101163157A (zh) 2007-10-30 2008-04-16 华为技术有限公司 一种离线推送实现方法、系统及无线应用协议网关
CN101437202B (zh) * 2007-11-13 2010-08-25 华为技术有限公司 一种多终端时业务消息处理方法、系统和装置
US8099764B2 (en) * 2007-12-17 2012-01-17 Microsoft Corporation Secure push and status communication between client and server
US20100138501A1 (en) * 2008-12-03 2010-06-03 Microsoft Corporation End-to-end validation in a push environment
US8064896B2 (en) * 2009-03-09 2011-11-22 Apple Inc. Push notification service
CN101730101B (zh) 2009-04-15 2012-07-04 中兴通讯股份有限公司 身份标识与位置分离的实现方法、系统及装置
EP2254309A1 (en) * 2009-05-20 2010-11-24 Thomson Licensing Method for sending data of a service
US8364810B2 (en) * 2009-11-06 2013-01-29 Research In Motion Limited Method, system and apparatus for management of push content when changing computing devices

Also Published As

Publication number Publication date
US9247018B2 (en) 2016-01-26
US20130144954A1 (en) 2013-06-06
WO2011137792A1 (zh) 2011-11-10
CN102347967A (zh) 2012-02-08

Similar Documents

Publication Publication Date Title
CN102347967B (zh) 一种推送设备间的协作方法及装置
KR102247485B1 (ko) 사물 인터넷 통신 방법, 장치 및 시스템
CN102316423B (zh) 一种信息推送方法、装置和系统
US11451510B2 (en) Method and apparatus for processing service request
CN102907164B (zh) 用于通信网络中的连接建立的装置和方法
US9439026B2 (en) Method and system for communication between machine to machine M2M service provider networks
EP2583415B1 (en) Method, diameter node, and computer readable medium for providing dynamic origination-based routing key registration in a diameter network
CN102333105B (zh) 业务通信的方法、系统、推送客户端和用户设备
CN102577457B (zh) 移动终止通信方法及相关装置
EP1847076B1 (en) Methods, systems, and computer program products for supporting database access in an internet protocol multimedia subsystem (IMS) network environment
US20060015513A1 (en) System, network entities and computer programs for configuration management of a dynamic host configuration protocol framework
CN105430059A (zh) 智能客户端路由
US8782743B2 (en) Methods and apparatus for use in a generic bootstrapping architecture
EP2652994B1 (en) Enabling a communication server to use msc-s related functions
CN104168545A (zh) 一种实现即时消息与短信/彩信互通的方法及系统
CN102577453B (zh) 用于能够实现ims域与cs域之间消息输送的方法
CN109561004B (zh) 报文转发方法、装置及交换机
US9237439B2 (en) Method and apparatus for configuring service settings for a mobile subscriber
CN108881019B (zh) 一种终端接入方法及设备
KR102185665B1 (ko) All-IP 환경에서 IPv6 주소 기반의 통신을 위한 사용자 식별 서버, 단말, 방법, 및 기록 매체
CN101742431B (zh) 一种消息发送方法,装置及系统
WO2022049380A1 (en) Internet of things distributed network with non-ip data delivery

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
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20140101

Termination date: 20200730