CN104813637A - 移动网络中的没有持久性tcp连接情况下的推送服务 - Google Patents
移动网络中的没有持久性tcp连接情况下的推送服务 Download PDFInfo
- Publication number
- CN104813637A CN104813637A CN201380061991.8A CN201380061991A CN104813637A CN 104813637 A CN104813637 A CN 104813637A CN 201380061991 A CN201380061991 A CN 201380061991A CN 104813637 A CN104813637 A CN 104813637A
- Authority
- CN
- China
- Prior art keywords
- mobile device
- push
- client
- tcp
- propelling movement
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/029—Firewall traversal, e.g. tunnelling or, creating pinholes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/146—Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/55—Push-based network services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/12—Messaging; Mailboxes; Announcements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W68/00—User notification, e.g. alerting and paging, for incoming communication, change of service or the like
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/562—Brokering proxy services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W76/00—Connection management
- H04W76/10—Connection setup
- H04W76/11—Allocation or use of connection identifiers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mobile Radio Communication Systems (AREA)
- Telephonic Communication Services (AREA)
- Information Transfer Between Computers (AREA)
Abstract
用于移动网络中的非TCP推送服务的方法、系统和制造产品包括:在没有持续TCP连接的情况下,在推送服务器处通过第一内部接口接收来自推送客户端的对应于移动设备的注册信息。所述注册信息包括对应于移动设备的私有IP地址,以及与移动设备上的应用客户端实例相关联的移动设备会话标识。在推送服务器处通过暴露于服务提供商防火墙外部的第二接口接收与应用服务器的事件相关联的推送触发。所述推送触发包括推送触发会话标识。当推送触发会话标识与移动设备会话标识匹配时,确定推送触发与移动设备上的应用客户端实例相关联,并且在没有持续TCP连接的情况下将其传送到推送客户端。
Description
技术领域
本公开内容总体上涉及移动网络,更具体来说涉及移动网络推送服务。
背景技术
移动设备应用通常运行在客户端-服务器模型中,其中移动设备上的应用客户端接收并且处理来自一台或多台基于网络的应用服务器的数据。为了获得来自服务器的数据,应用客户端可以使用拉取或推送模式。在拉取模式下,应用客户端周期性地轮询应用服务器的新数据。在推送模式下,应用服务器在新数据可用时将数据“推送”到应用客户端,而无需应用客户端进行轮询。
常常轮询网络的应用可以受益于推送服务。推送服务包括传统的电子邮件(例如,用于在新的电子邮件到达服务器时向移动设备发送推送通知)、短消息服务(例如,用于在SMS消息到达服务器时发送推送通知)、互联网协议承载语音(VoIP)(例如,用于通知传入呼叫)、web浏览(其例如用于通知何时刷新网页)以及用于3G/4G智能移动设备的不断增长的视频应用。对应于此类视频应用的推送事件通知的示例包括但不限于网络环境改变、策略改变以及可能需要应用客户端响应的其他通知。
推送模式对于运行在蜂窝网络上的移动设备特别重要。通常来说,当移动设备没有数据要发送或接收时,其可以进入空闲(例如休眠、睡眠)模式,以便节省电池电力以及与该设备的无线电操作相关联的空中资源。无线电接入网维护空闲设备的位置状态信息,并且在针对所述设备的数据到达时,使用由相应的蜂窝接入技术标准定义的寻呼机制来唤醒该移动设备。
相反地,拉取模式需要移动设备在应用客户端需要轮询应用服务器新数据时周期性地退出空闲模式,而不管服务器是否具有这样的新数据,从而导致移动设备电池资源的浪费和不必要的空中通信。此外,改进应用响应时间要求提高轮询频率,从而浪费更多的电池和空中资源。降低轮询频率可能导致应用客户端对应用服务器事件响应的更多延迟。
对于使用所有基于IP的数据服务的3G和4G网络,用于当前蜂窝服务提供商的典型网络架构为移动设备提供使用私有IP地址,其在服务提供商核心网络与公共因特网之间存在防火墙。这对推送实现方式构成了严峻挑战。位于(具有私有IP地址的)移动设备上的应用客户端与应用服务器之间的、具有网络地址翻译(NAT,Network Address Translation)的典型防火墙只允许应用客户端与应用服务器之间的、基于传输控制协议(TCP,Transmission Control Protocol)的客户端发起的通信。但是在应用客户端与应用服务器之间维持这样的TCP连接需要周期性“心跳”,其实质上等效于拉取模式(必须周期性地交换源自客户端的TCP分组),并且对于移动设备空闲模式具有与拉取模式类似的影响。
对位于防火墙后方的具有私有IP地址的应用客户端,如果没有防火墙中的特殊“孔洞”,则位于防火墙外的应用服务器无法向该应用客户端发送IP分组,这是因为无法从服务提供商的网络外部到达客户端的私有IP地址。这样的“防火墙中的孔洞”通常是在由应用客户端发起与应用服务器的TCP连接时被自动产生。防火墙NAT功能在客户端发送的TCP/IP分组中,将<来源IP地址,来源TCP端口号>对替换为<许多客户端所共有的公共IP地址+唯一的新来源TCP端口号>对,并且在特定一段时间内创建<来源IP地址,来源TCP端口号>对与<唯一的新来源TCP端口号>之间的映射,从而允许把来自应用服务器的、寻址到<许多客户端所共有的公共IP地址+唯一的新来源TCP端口号>的分组转发到应用客户端的<来源IP地址,来源TCP端口号>。这样的映射在防火墙中产生一个“孔洞”,从而允许应用服务器向应用客户端发送分组。在没有TCP通信量的情况下(例如当客户端进入空闲模式时),所述映射过时(age out),并且客户端变为无法从服务器到达。然而,通过发送周期性TCP通信量以刷新该映射来维持持续的TCP连接的做法的成本较高,并且需要移动设备周期性地退出空闲状态以生成这样的通信量。此外,不同的防火墙的“时效”计时器配置可能有所不同,从而导致针对此类通信量的需求不必要地过于频繁。
现有的解决方案表明了防火墙问题的重要性,而且还表明对于服务提供商网络与公共因特网之间的防火墙的推送实现方式不存在单一的令人满意的方法。
举例来说,基于TCP的移动操作系统(OS)或者移动设备供应商推送服务通常包括位于因特网中别处(在无线服务提供商的受到防火墙保护的核心的外部)的推送服务器,与移动设备OS耦合的推送客户端中间件,以及特定于移动设备OS、被暴露给应用客户端和服务器以登记和接收推送服务的API集合。但是,持续的TCP连接必须穿过防火墙维持。维持这样的连接要求在移动设备与推送服务器之间交换周期性TCP通信量,从而导致电池寿命和空中资源的浪费。基于TCP保持活动(keep-alive)(其在某些情况下是每秒钟)和/或防火墙时效刷新交换的频率,移动设备或者完全无法进入空闲模式(如果保持活动交换过于频繁的话),或者被迫周期性地退出空闲模式以进行保持活动交换。TCP交换的频率通常由特定于OS的考虑因素(例如TCP保持活动或其他机制,其允许服务器在移动设备断电或突然离开无线覆盖范围时检测到死亡TCP连接),以及对应于从服务器到客户端的反向TCP通信量的防火墙孔洞时效计时器来决定。此外,维持与数以千万计的移动设备的持续TCP连接需要分配大量服务器资源。此外,这种方法可能会对于移动设备用户产生隐私问题,这是因为其可能允许第三方推送服务器跟踪移动设备及他们应用的使用。
图1示出了用于实施基于持续TCP连接的供应商控制的推送服务的移动网络的功能图示。网络100通常通过使用对应于一个或多个移动设备102的私有IP地址来提供移动网络服务(例如语音、文字、视频和其他数据服务)。移动设备102被配置来运行移动设备操作系统(OS)以及利用定制的、供应商实施的推送服务的各种移动网络服务应用。网络100包括移动服务提供商的核心网络106与公共因特网108之间的具有网络地址翻译(NAT)的防火墙104。核心网络106包括通常被用于实施LTE移动通信系统的组件,比如分组数据网络网关(PDN-GW,Packet DataNetwork gateway)110、本地用户服务器(HSS,Home Subscriber Server)112、移动性管理实体(MME,Mobility Management Entity)114、服务网关(S-GW,Serving gateway)116以及一个或多个基站(eNodeB)蜂窝接入点118。然而,核心网络106可以是2G、3G(例如WCDMA-UMTS、CDMA)或4G(例如LTE、WiMAX)网络,其具有被配置来实施任何此类标准定义的网络架构的组件。因此,虽然图1示出了LTE移动通信系统,但是本领域技术人员将认识到,可以添加或组合这些组件当中的一项或更多项以及各种其他众所周知的组件,用于实施2G、3G、4G或者其他移动通信系统网络架构。
网络100还可以包括可以通过防火墙104外部的公共因特网108访问的推送服务器120。移动设备102可以包括推送客户端122(例如与移动设备操作系统(OS,Operating System)耦合的中间件)以及一个或多个应用编程接口(API)124,所述应用编程接口被暴露于应用客户端126和应用服务器128,以便通过基于TCP的持续连接来注册和接收特定于移动设备操作系统(OS)供应商的推送服务。举例来说,移动设备102可以周期性地“苏醒”以便发送心跳类型的通信从而维持基于TCP的连接。
在网络100中,在没有防火墙中的特殊“孔洞”的情况下,应用服务器128无法向具有私有IP地址的移动设备102发送IP分组(亦即,无法从服务提供商的核心网络106的外部到达客户端的私有IP地址)。举例来说,防火墙104中的此类“孔洞”可以在由移动设备102发起与应用服务器128的基于TCP的连接时被自动创建。具体来说,防火墙NAT功能将由移动设备102发送的TCP/IP分组中的私有地址/端口号对(例如<来源IP地址,来源TCP端口号>),替换为公共地址/端口号对(例如<许多移动设备所共有的公共IP地址+唯一的新来源TCP端口号>),并且(例如对于特定持续时间)创建<来源IP地址,来源TCP端口号>对与所述唯一的新来源TCP端口号之间的映射。这样,应用服务器128可以发送寻址到<许多客户端所共有的公共IP地址+唯一的新来源TCP端口号>的分组,其可以被转发到特定移动设备102的私有地址/端口号对,即<来源IP地址,来源TCP端口号>。被定义成在防火墙中创建“孔洞”的这一映射过程允许应用服务器128向应用客户端126发送分组。然而,在没有基于TCP的通信量的情况下(例如当移动设备102切换到空闲模式时),所述公共/私有映射可能会到期,这意味着应用客户端126将变为无法从应用服务器128到达。
基于用户数据报协议的会话发起协议(基于UDP的SIP)模型需要特殊的会话边界控制器设备与防火墙相结合地操作来“动态地”在防火墙中“穿孔”,以便在网络上的移动设备注册期间到达移动设备。这种方法允许移动设备接收传入呼叫。然而,基于UDP的SIP模型可能还需要针对每一项新应用的专用的会话边界控制功能,并且每当市场上出现新应用时重新配置该会话边界控制器。
SMS消息还可以被用于对非SMS即时消息应用的推送通知。然而,许多服务提供商计划针对接收SMS消息向用户收费。因此,将SMS用于推送通知可能对于具有此类计划的用户导致意料之外的并且是不受欢迎的收费。
发明内容
本发明公开了用于无线服务提供商核心网络中的推送服务的方法、系统和制造产品,所述推送服务与在2G/3G/4G移动性网络上接收服务的设备的空闲(例如,睡眠或休眠)模式要求兼容。在一个实施例中,推送服务器包括两个接口。第一接口处在防火墙后方的服务提供商的私有网络之内,从而可以利用移动设备的私有IP地址从推送服务器到达该移动设备。第二接口是公共的(也就是说暴露于服务提供商的防火墙外部),从而使得位于防火墙外部的应用服务器可以发起推送触发。
这种架构使得不再需要推送服务器与移动设备之间的持续TCP连接。举例来说,推送服务器与移动设备内的推送客户端之间的接口可以支持具有针对可靠性的一些附加确认消息的非连接(例如UDP)协议或者非持续的TCP连接,其由推送服务器发起以用于递送单一推送通知。
在应用服务器上没有新数据的情况下,移动设备可以进入空闲(例如睡眠或休眠)模式以便保存电池电力,并且与移动设备对应的蜂窝接入网可以维持特定于网络的(亦即原生的)位置更新机制,从而当来自推送服务器的分组需要被传送到处于空闲状态的移动设备时,所述位置更新机制可以唤醒移动设备并且允许其接收来自推送服务器的推送触发。
在一个实施例中,一种方法包括:在没有持续TCP连接的情况下,在推送服务器处通过第一内部接口接收来自推送客户端的对应于移动设备的注册信息。所述注册信息包括对应于移动设备的私有IP地址,以及与移动设备上的应用客户端实例相关联的移动设备会话标识。随后在推送服务器处通过暴露于服务提供商防火墙外部的第二接口接收与应用服务器的事件相关联的推送触发,其中所述推送触发包括推送触发会话标识。当推送触发会话标识与移动设备会话标识匹配时,推送触发被确定为与移动设备上的应用客户端的实例相关联,并且当推送触发会话标识与移动设备会话标识匹配时,该推送触发被推送服务器向移动设备上的推送客户端传送。可以通过内部第一接口(如果移动设备是通过蜂窝2G-3G-4G接口连接的话)或外部第二接口(如果移动设备是通过Wi-Fi接口连接的话)的其中之一向推送客户端传送推送触发,并且可以利用UDP或非持续TCP通过内部第一接口传送推送触发。与推送客户端的TCP链接可以由推送服务器发起以便递送推送触发,并且随后在递送了推送触发后终止该TCP连接。
根据一个实施例,会话标志通过特定于应用的客户端-服务器通信从应用客户端被传送至应用服务器。所述通信可以基于TCP。
根据一个实施例,在会话标志被传送至应用服务器之后,将移动设备设定到空闲状态。当在推送客户端处接收到与推送触发相关联的寻呼消息时,将移动设备设定到非空闲状态。
根据一个实施例,推送触发在推送客户端处被接收并且被传送到应用客户端,其中利用推送触发中的会话标识来识别应用客户端实例。
根据一个实施例,推送触发在应用客户端处被接收,并且特定于应用的基于TCP的连接在应用客户端与应用服务器之间被建立,以便接收与所述推送触发相关联的数据。
根据一个实施例,当移动设备从第一接入网移动到第二接入网时,如果所述私有IP地址或会话标识在第一和第二接入网之间改变,则注册信息被传送。
通过参照后面的详细描述和附图,本领域技术人员将会认识到前述和其他优点。
附图说明
图1示出了用于实施基于TCP的持久性连接的供应商控制的推送服务的移动网络的功能图示;
图2示出了根据一个实施例的用于在没有持续TCP连接的情况下实施推送服务的移动网络的功能图示;
图3示出了根据一个实施例的推送服务实现方式流程图;
图4示出了根据一个实施例的用于在没有持续TCP连接的情况下实施替换推送服务的移动网络的功能图示;
图5示出了根据一个实施例的用于在没有持续TCP连接的情况下实施另一种替换推送服务的移动网络的功能图示;以及
图6示出了可以被用于在没有持续TCP连接的情况下实施推送服务的示例性计算机的高层级方框图。
具体实施方式
许多当前的移动网络(例如3G/4G/LTE)正在使用基于传输控制协议(TCP,Transmission Control Protocol)/互联网协议(IP,Internet Protocol)的数据服务,其被用来提供各种供应商控制的推送服务。当应用客户端处在防火墙后方,比如处在服务提供商网络中时,必须常常针对新数据轮询网络服务器的应用可以受益于这里所公开的建立推送服务的非TCP方式。这样的应用的实例包括传统的电子邮件(在新的电子邮件到达服务器时向移动设备发送推送通知)、SMS(在SMS到达服务器时发送推送通知)、VoIP(针对传入呼叫的推送通知)、web浏览(针对何时刷新网页的推送通知)以及不断增多的针对3G/4G智能移动设备的视频应用。对应于此类视频应用的推送事件通知的实例包括而不限于网络环境改变、策略改变以及可能要求鲁棒的应用客户端响应的其他通知。
这里所提供的各个实施例详细描述了在没有持续TCP连接的情况下无线服务提供商的核心网络中的推送服务。图2示出了根据一个实施例的用于在没有持续TCP连接的情况下实施推送服务的移动网络200的功能图示。图2中示出的推送服务与在2G/3G/4G或其他移动性网络上接收服务的移动设备102的空闲模式的要求兼容。举例来说,非TCP推送服务器202具有两个通信接口。第一接口204是公共的,也就是说暴露于服务提供商的防火墙外部,从而使得防火墙104外部的应用服务器128可以发起推送触发(亦即关于应用服务器事件的通知)。第二内部接口206处在防火墙104后方的服务提供商的私有网络106内,从而可以利用移动设备102的私有IP地址从非TCP推送服务器202到达该移动设备102。
这种架构使得不再需要推送服务器与移动设备102之间的基于TCP的持续连接。举例来说,非TCP推送服务器202与移动设备102内的非TCP推送客户端208之间的接口可以是基于UDP或另一种非持续连接。本领域技术人员将认识到,在一个实施例中,基于UDP的非持续连接可以包括针对可靠性的确认消息。此外,用于推送服务的、没有持续TCP连接的任一种通信协议,可被用于非TCP推送客户端208与非TCP推送服务器202之间的通信。这里所使用的术语“非TCP”指的是不使用TCP的连接或通信(例如基于UDP的连接或通信)以及还有非持续TCP连接或通信,其中,例如,TCP连接被创建以便传送单一消息,并且随后被终止。
在应用服务器128上没有新数据的情况下,移动设备102可以切换到空闲模式以便保存电池电力。举例来说,移动接入网106可以维持相应的无线接入技术定义的(即原生的)位置更新机制,以定位移动设备。因此,当来自非TCP推送服务器202的分组需要被传送到处于空闲状态的移动设备102时,原生的寻呼机制可以唤醒该移动设备102并且允许其接收来自非TCP推送服务器202的推送触发。
图3示出了根据一个实施例的推送服务实现方式流程图。在步骤300处,通过无线服务提供商网络的IP连接性被建立,并且移动设备102接收私有IP地址。在步骤301处,在由应用客户端126进行会话发起时,应用客户端126通过生成唯一的会话标识(ID),针对推送服务向移动设备102上的非TCP推送客户端208进行注册。本领域技术人员将认识到,为了此处的目的,可以通过许多不同的ID生成算法来生成所述会话ID。会话ID被用来:(a)允许非TCP推送服务器202识别移动设备102以便传播推送触发;以及(b)允许非TCP推送客户端208,在接收到来自非TCP推送服务器202的推送触发之后,识别移动设备102上相应的应用客户端实例,并且向特定的应用客户端126传播所述传入推送触发。
在步骤302处,推送客户端208利用,例如具有针对可靠性确认的基于UDP的连接,向非TCP推送服务器202注册(来自步骤301的)会话ID和(来自步骤300的)IP地址。或者,可以对于单一操作(例如注册会话ID或发送单独的消息)建立非持续TCP连接,并且随后在所述操作完成之后终止所述非持久性TCP连接。
在步骤303处,应用客户端126(例如,利用用于与网络中应用服务器128的基于TCP的通信的原生应用)建立应用会话并且向应用服务器128注册会话ID,从而使得应用服务器128可以在必要时传送推送触发。
当应用会话完成时,应用客户端126与应用服务器128之间的基于TCP的连接被终止,并且移动设备102在步骤304处切换到空闲模式以节省电池电力。在一个实施例中,移动设备102可以在空闲模式下保留与步骤300中接收到的相同的IP地址。移动网络106随后可以使用位置更新功能来维持移动设备位置信息。或者,如果移动设备IP地址需要改变(例如,由于网络之间的移动性事件),各种3G和4G联网标准(3GPP、3GPP2、WiMAX)将需要移动设备切换出空闲模式并且变为活跃,以重新传送新分配的IP地址。
在步骤305处,网络200中的应用服务器128接收触发事件,或者请求更新移动设备数据或状态信息的新数据。所述触发事件可以是任何种类的事件(例如,对于电子邮件应用接收到的新电子邮件;应用服务器数据库的内容被更新,并且应用客户端126被订阅接收自动更新;网络已变得不再拥塞,并且可以由应用下载或上传较大的视频文件;应用服务器128接收到策略更新,其需要被传播到应用客户端126从而影响正在进行的视频会话等等)。应用服务器128向暴露于服务提供商防火墙104外部的非TCP推送服务器202的公共IP地址发送推送触发,其中包括应用服务器128在步骤303中接收到的会话ID。本领域技术人员将认识到,应用服务器128可以通过任何方式获得非TCP推送服务器202的IP地址(例如,所述IP地址可以是众所周知的或者公开的IP地址)。或者,可以由具有步骤303中的会话ID的应用服务器128接收非TCP推送服务器202的IP地址。
在步骤306处,非TCP推送服务器202利用会话ID与在步骤300中分配的移动设备IP地址之间的映射确定与推送触发相关联的移动设备102,利用基于UDP的消息(例如,具有确认消息)向移动设备102上的非TCP推送客户端208传送推送触发。举例来说,如果移动设备102处于空闲状态,则可以由移动接入网106调用常规寻呼机制,以在检测到寻址到移动设备102的推送触发时唤醒该移动设备102。此外,如果初始分组被丢失,则非TCP推送服务器202可以向移动设备102重新传送推送触发。
在步骤307处,移动设备102上的非TCP推送客户端208接收推送触发,并且利用在步骤301中生成的会话ID将推送触发传送到应用客户端126。举例来说,非TCP推送客户端208可以利用推送触发中的会话ID识别应用客户端实例,并且将推送触发转发到应用客户端126。
在步骤308处,在接收到推送触发时,应用客户端126与应用服务器128建立新的基于TCP的连接,并且下载与推送触发相关联的数据(即触发事件)。
在另一个实施例中,图2的推送服务适用在标准定义的受信任的3G/4G移动网络的多接入互通的情况中。图4示出了根据一个实施例的用于在没有持续TCP连接的情况下实施替换推送服务的移动网络的功能图示。在图4中,3G/4G网络106被显示为与具有一个或多个非3GPP基站402、的受信任非3GPP接入网400互通。出于该实施例的目的,互通按照3GPP标准来定义(亦即,利用共同的PDN GW 110作为IP锚点)。对于图4中的没有持续TCP连接的推送服务可以利用前面在图3中描述的相同机制,其中PDN GW 110锚定针对移动设备102的IP访问。在一个实施例中,每当移动设备102IP地址改变或者新的会话ID被生成时(例如,当应用客户端126重新启动或者启动应用客户端的新实例时),可以发生推送客户端-推送服务器重新注册。
图5示出了根据一个实施例的用于在没有持续TCP连接的情况下实施另一种替换推送服务的移动网络的功能图示。在图5中,所述推送服务支持具有本地疏导(local breakout)的Wi-Fi接入。具体来说,PDN GW110不是通过Wi-Fi接入点500锚定IP会话。相反,当通过Wi-Fi接入点500建立IP会话时(通常有用于Wi-Fi接入的独立防火墙502),推送客户端208利用推送服务器202的外部可用的公共IP地址通过Wi-Fi与推送服务器202建立并维持基于TCP的持续连接504。其结果是,当移动设备102是通过移动网络连接时,可以通过非TCP连接506传播推送触发,从而在处于移动网络106上时允许空闲模式的所有益处。当移动设备102通过Wi-Fi接入点500连接时,维持基于TCP的持续连接504。由于对于Wi-Fi接入不存在空闲模式,因此通过Wi-Fi的此类基于TCP的持续连接504没有严重的负面影响。
各个实施例提供了一种使得网络运营商减少与设立连接相关联的信令负荷的独特方式。当前这些连接或者被配置来轮询服务器的数据(拉取模型),或者来发送周期性心跳以便维持基于TCP的持续连接(竞争推送模型)。通过使用基于UDP的连接或者这里所提出的基于TCP的非持续连接来消除全部这两项,减少了支持给定水平的网络通信量所需要的运营商投资。
此外,这种方法解决了针对基于TCP的推送服务的其他一般问题。在各个实施例中,具有由无线服务提供商托管的推送服务有助于缓解能够获得对应于移动设备顾客的跟踪信息的第三方企业的隐私问题。尽管跟踪信息对于实施各个实施例来说是必要的,然而无线服务提供商作为与顾客的理解服务合约的一部分跟踪移动设备以便提供移动服务。此外,通过利用在非TCP推送服务器202与非TCP推送客户端208之间的非TCP(例如基于UDP的)连接解决了关于数据通信量容量的推送服务器可伸缩性问题,这是因为UDP是无连接、非持续协议。
所述实施例还通过延长移动电池寿命使得用户受益,这是因为移动设备102将不再需要被配置用于到网络服务器的不必要的连接,比如用于心跳或轮询目的的连接。此外,所述实施例为服务提供商给出了托管独立于移动供应商的推送服务的机会。这对于应用提供商特别具有吸引力,这是因为其不再需要实施移动设备供应商或特定于操作系统的机制来向移动设备发送内容。
上面描述的方法步骤,包括被描述成由移动设备或服务器实施的那些步骤,可以被实施在使用众所周知的计算机处理器、存储器单元、存储设备、计算机软件和其他组件的计算机上。图6是可以被用于在没有持续TCP连接的情况下实施推送服务的示例性计算机的高层级方框图。计算机600包含处理器610,其通过执行定义计算机600的总体操作的计算机程序指令来控制此类操作。所述计算机程序指令可以被存储在存储设备620(例如磁盘)中,并且在希望执行所述计算机程序指令时被加载到存储器630中。因此,图3的方法的各个步骤可以由存储在存储器630和/或存储装置620中的计算机程序指令定义,并且由执行所述计算机程序指令的处理器610控制。计算机600可以包括一个或多个网络接口640,其用于通过网络与其他设备通信以便实施图3的方法的各个步骤。计算机600还可以包括其他输入/输出设备650(例如显示器、键盘、鼠标、扬声器、按钮等等),其允许与计算机600进行用户交互。本领域技术人员将认识到,实际计算机的实现方式还可以包含其他组件,并且图6是出于说明性目的的此类计算机的其中一些组件的高层级表示。
前面的具体实施方式部分应当被理解成在每一方面都是说明性和示例性而非限制性的,并且这里所公开的本发明的范围不应当从具体实施方式部分确定,而是应当从根据适用的专利法所允许的完全范围来解释的权利要求书确定。应当理解的是,这里所示出并且描述的实施例仅仅是说明本发明的原理,并且在不背离本发明的范围和精神的情况下,本领域技术人员可以实施各种修改。在不背离本发明的范围和精神的情况下,本领域技术人员可以实施各种其他特征组合。
Claims (10)
1.一种方法,其包括:
在没有持续传输控制协议(TCP)连接的情况下,在推送服务器处通过第一内部接口接收来自推送客户端的对应于移动设备的注册信息,所述注册信息包括对应于移动设备的私有互联网协议(IP)地址以及与移动设备上的应用客户端实例相关联的移动设备会话标识;
在推送服务器处通过暴露于服务提供商防火墙外部的第二接口接收与应用服务器的事件相关联的推送触发,其中所述推送触发包括推送触发会话标识;
当推送触发会话标识与移动设备会话标识匹配时,确定推送触发与移动设备上的应用客户端实例相关联;以及
向推送客户端传送所述推送触发。
2.权利要求1的方法,其中,经由没有持续TCP连接的第一内部接口或者通过蜂窝网络的其中之一向推送客户端传送推送触发。
3.权利要求1的方法,其中,经由第一内部接口的推送服务器与推送客户端之间的连接是基于用户数据报协议(UDP,User DatagramProtocol)的连接。
4.权利要求1的方法,其中,经由第一内部接口的推送服务器与推送客户端之间的连接是非持续TCP连接。
5.权利要求1的方法,其还包括:
经由支持特定于应用的TCP连接的接口从应用客户端向应用服务器传送移动设备会话标识。
6.权利要求4的方法,其中,在向应用服务器传送会话标识符并且没有应用数据要传送之后,将移动设备设定到空闲状态。
7.权利要求5的方法,其中,当在推送客户端处接收到与推送触发相关联的寻呼消息时,将移动设备设定到非空闲状态。
8.权利要求1的方法,其还包括:
在推送客户端处接收推送触发;以及
将推送触发传送到应用客户端。
9.权利要求7的方法,其还包括:
在应用客户端处接收推送触发;以及
在应用客户端与应用服务器之间建立特定于应用的基于TCP的连接,以便接收与所述推送触发相关联的数据。
10.权利要求1的方法,其还包括:当移动设备从第一接入网移动到第二接入网时,如果所述私有IP地址或会话标识在第一和第二接入网之间改变,则从推送服务器传送注册信息。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/686,659 US9148765B2 (en) | 2012-11-27 | 2012-11-27 | Push service without persistent TCP connection in a mobile network |
US13/686,659 | 2012-11-27 | ||
PCT/US2013/069105 WO2014085056A1 (en) | 2012-11-27 | 2013-11-08 | Push service without persistent tcp connection in a mobile network |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104813637A true CN104813637A (zh) | 2015-07-29 |
CN104813637B CN104813637B (zh) | 2017-12-08 |
Family
ID=49640205
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380061991.8A Expired - Fee Related CN104813637B (zh) | 2012-11-27 | 2013-11-08 | 移动网络中的没有持久性tcp连接情况下的推送服务 |
Country Status (6)
Country | Link |
---|---|
US (1) | US9148765B2 (zh) |
EP (1) | EP2926518A1 (zh) |
JP (1) | JP6091644B2 (zh) |
KR (1) | KR101697080B1 (zh) |
CN (1) | CN104813637B (zh) |
WO (1) | WO2014085056A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106385491A (zh) * | 2016-09-05 | 2017-02-08 | 努比亚技术有限公司 | 一种控制推送消息的系统、方法、移动终端和推送服务器 |
CN110225084A (zh) * | 2019-05-06 | 2019-09-10 | 北京口袋时尚科技有限公司 | 一种保持tcp长连接的方法及装置 |
CN111245874A (zh) * | 2018-11-28 | 2020-06-05 | 杭州海康威视数字技术股份有限公司 | 信息推送方法、装置、服务器及存储介质 |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8611895B2 (en) * | 2009-10-30 | 2013-12-17 | Apple Inc. | Methods for optimizing paging mechanisms using device context information |
US8788881B2 (en) * | 2011-08-17 | 2014-07-22 | Lookout, Inc. | System and method for mobile device push communications |
US9143550B2 (en) * | 2012-12-01 | 2015-09-22 | Qualcomm Innovation Center, Inc. | Graceful degradation of websocket connections to nonpersistent HTTP-based communications |
EP2763372B1 (en) * | 2013-02-01 | 2017-05-10 | HTC Corporation | Electronic apparatus, computer-readable medium and data synchronization method |
US9232339B2 (en) * | 2013-02-07 | 2016-01-05 | Oracle International Corporation | Mobile push notification |
CN104301353B (zh) * | 2013-07-18 | 2019-10-08 | 腾讯科技(深圳)有限公司 | 一种订阅长尾类信息的方法、装置和系统 |
KR20150032018A (ko) * | 2013-09-17 | 2015-03-25 | 삼성전자주식회사 | 전자 장치 및 전자 장치의 정보 전송 방법, 정보 전송 시스템 |
WO2015157986A1 (zh) * | 2014-04-18 | 2015-10-22 | 华为技术有限公司 | 接收推送信息的方法及相关装置和系统 |
CN104320425A (zh) * | 2014-08-28 | 2015-01-28 | 海视云(北京)科技有限公司 | 消息的接收与发送方法及装置 |
CN104683360B (zh) * | 2015-03-27 | 2017-11-10 | 北京理想固网科技股份有限公司 | Ip语音通信系统 |
CN105681385B (zh) * | 2015-05-22 | 2019-01-01 | 深圳Tcl数字技术有限公司 | 信息推送方法及装置 |
TWI578747B (zh) * | 2015-07-07 | 2017-04-11 | 樹德科技大學 | 雲端推播服務系統及方法 |
JP2017033375A (ja) * | 2015-08-04 | 2017-02-09 | 富士通株式会社 | 並列計算システム、マイグレーション方法、及びマイグレーションプログラム |
CN106487864B (zh) * | 2015-09-02 | 2019-09-27 | 华为终端有限公司 | 数据连接的建立方法、服务端及移动终端 |
US10404807B2 (en) | 2015-10-16 | 2019-09-03 | Hewlett-Packard Development Company, L.P. | Notification systems |
DE112015007093B4 (de) * | 2015-11-05 | 2022-02-17 | Mitsubishi Electric Corporation | Kommunikationsvorrichtung und kommunikationsverfahren |
US10021589B2 (en) | 2016-01-26 | 2018-07-10 | Sprint Communications Company L.P. | Wireless data system that associates internet protocol ports with quality-of-service for user applications |
US11290425B2 (en) * | 2016-02-01 | 2022-03-29 | Airwatch Llc | Configuring network security based on device management characteristics |
US20180077681A1 (en) * | 2016-09-15 | 2018-03-15 | Huawei Technologies Co., Ltd. | Method and apparatus for paging an application on a user equipment |
AR106244A1 (es) * | 2016-09-30 | 2017-12-27 | Esteban Benitez Carlos | Dispositivo de ciber-protección personal portátil |
KR102371951B1 (ko) * | 2017-01-10 | 2022-03-07 | 텔레폰악티에볼라겟엘엠에릭슨(펍) | Pdu 세션 관리 |
US10911954B2 (en) * | 2018-03-01 | 2021-02-02 | The Boeing Company | Dynamic data package access for mobile device |
JPWO2022045061A1 (zh) * | 2020-08-31 | 2022-03-03 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020138622A1 (en) * | 2001-03-21 | 2002-09-26 | Motorola, Inc. | Apparatus and method of using long lived addresses in a private network for push messaging to mobile devices |
US20100161741A1 (en) * | 2008-12-24 | 2010-06-24 | Juniper Networks, Inc. | Using a server's capability profile to establish a connection |
CN102833698A (zh) * | 2004-03-10 | 2012-12-19 | 核心无线许可有限公司 | 使用网络发起的数据服务技术推送内容给终端的系统和方法 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7552200B2 (en) | 2000-10-19 | 2009-06-23 | Cisco Technology | Apparatus and methods for requesting an event notification over a network |
EP1618697A2 (en) * | 2003-03-10 | 2006-01-25 | THOMSON Licensing | An identity mapping mechanism in wlan access control with public authentication servers |
KR100842589B1 (ko) * | 2004-01-29 | 2008-07-01 | 삼성전자주식회사 | 고속 데이터 전송을 위한 이동통신 시스템에서 이동단말에 대한 푸시 서비스 제공 방법과 이를 위한 푸시서버 장치 |
US8099764B2 (en) * | 2007-12-17 | 2012-01-17 | Microsoft Corporation | Secure push and status communication between client and server |
US8228848B2 (en) * | 2008-11-17 | 2012-07-24 | Sierra Wireless, Inc. | Method and apparatus for facilitating push communication across a network boundary |
US20100138501A1 (en) * | 2008-12-03 | 2010-06-03 | Microsoft Corporation | End-to-end validation in a push environment |
US8264997B2 (en) * | 2009-02-05 | 2012-09-11 | Samsung Electronics Co., Ltd. | System and method for providing message push service in wireless communication system |
US8275890B2 (en) * | 2009-06-03 | 2012-09-25 | International Business Machines Corporation | Detecting an inactive client during a communication session |
CN102316423B (zh) * | 2010-07-06 | 2014-03-12 | 华为技术有限公司 | 一种信息推送方法、装置和系统 |
US8744500B2 (en) * | 2011-04-19 | 2014-06-03 | Samsung Electronics Co., Ltd | Method and apparatus for managing push service |
US8649768B1 (en) * | 2011-08-24 | 2014-02-11 | Cellco Partnership | Method of device authentication and application registration in a push communication framework |
KR20140032542A (ko) * | 2012-08-30 | 2014-03-17 | 삼성전자주식회사 | 무선 네트워크에서 푸시 서비스의 hearthbeat 주기 결정 방법 및 장치 |
-
2012
- 2012-11-27 US US13/686,659 patent/US9148765B2/en not_active Expired - Fee Related
-
2013
- 2013-11-08 EP EP13795384.0A patent/EP2926518A1/en not_active Withdrawn
- 2013-11-08 WO PCT/US2013/069105 patent/WO2014085056A1/en active Application Filing
- 2013-11-08 CN CN201380061991.8A patent/CN104813637B/zh not_active Expired - Fee Related
- 2013-11-08 JP JP2015545063A patent/JP6091644B2/ja not_active Expired - Fee Related
- 2013-11-08 KR KR1020157013427A patent/KR101697080B1/ko active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020138622A1 (en) * | 2001-03-21 | 2002-09-26 | Motorola, Inc. | Apparatus and method of using long lived addresses in a private network for push messaging to mobile devices |
CN102833698A (zh) * | 2004-03-10 | 2012-12-19 | 核心无线许可有限公司 | 使用网络发起的数据服务技术推送内容给终端的系统和方法 |
US20100161741A1 (en) * | 2008-12-24 | 2010-06-24 | Juniper Networks, Inc. | Using a server's capability profile to establish a connection |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106385491A (zh) * | 2016-09-05 | 2017-02-08 | 努比亚技术有限公司 | 一种控制推送消息的系统、方法、移动终端和推送服务器 |
CN106385491B (zh) * | 2016-09-05 | 2019-10-29 | 努比亚技术有限公司 | 一种控制推送消息的系统、方法和移动终端 |
CN111245874A (zh) * | 2018-11-28 | 2020-06-05 | 杭州海康威视数字技术股份有限公司 | 信息推送方法、装置、服务器及存储介质 |
CN111245874B (zh) * | 2018-11-28 | 2023-12-05 | 杭州海康威视数字技术股份有限公司 | 信息推送方法、装置、服务器及存储介质 |
CN110225084A (zh) * | 2019-05-06 | 2019-09-10 | 北京口袋时尚科技有限公司 | 一种保持tcp长连接的方法及装置 |
CN110225084B (zh) * | 2019-05-06 | 2022-06-14 | 北京口袋时尚科技有限公司 | 一种保持tcp长连接的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
KR20150074138A (ko) | 2015-07-01 |
CN104813637B (zh) | 2017-12-08 |
JP6091644B2 (ja) | 2017-03-08 |
EP2926518A1 (en) | 2015-10-07 |
WO2014085056A1 (en) | 2014-06-05 |
US20140148205A1 (en) | 2014-05-29 |
US9148765B2 (en) | 2015-09-29 |
KR101697080B1 (ko) | 2017-01-17 |
JP2016506645A (ja) | 2016-03-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104813637A (zh) | 移动网络中的没有持久性tcp连接情况下的推送服务 | |
EP2713641B1 (en) | Method for receiving data, method for transmitting data, mobile terminal, and server | |
CN102395119B (zh) | 一种支持应用客户端永久在线的方法、系统及装置 | |
JP6697570B2 (ja) | データ伝送方法、装置及びシステム | |
KR101447792B1 (ko) | Ussd 이동 방법 및 장치 | |
CN101637055B (zh) | 无线网络中的保持活动处理 | |
CN103312766B (zh) | 一种支持应用客户端永久在线的方法、系统及装置 | |
JP2017076988A (ja) | 移動局上で実行されるアプリケーションの「キープアライブ」メッセージ頻度を交渉するための方法および装置 | |
WO2012155651A1 (zh) | 实现终端应用的在线处理系统及方法 | |
WO2016155261A1 (zh) | 终端节电方法及装置 | |
CN103096435A (zh) | 连接保持方法、装置、移动终端及数据传输方法 | |
KR101944556B1 (ko) | 무선부에서의 절전 모드 제어 방법 | |
CN102655669B (zh) | 手机及其接收呼叫的方法 | |
CN105554000A (zh) | 一种网络电话唤醒方法 | |
WO2020088091A1 (zh) | 状态上报、消息接收方法及装置、存储介质、电子装置 | |
KR20200099949A (ko) | 5G 이동통신 시스템에서 셀룰러 IoT 서비스를 위해 단말을 제어하는 방법 | |
WO2019074032A1 (ja) | IoT機器とのデータの送受信を行うための装置、方法及びプログラム | |
JP6509413B1 (ja) | IoT機器とのデータの送受信を行うための装置、方法及びプログラム | |
US20210099499A1 (en) | Local area network architecture for supporting multiple ip services | |
Rutishauser | Energy-efficiency in Mobile DHTs | |
JP2024525198A (ja) | I/oデバイスを介したユーザへの通信サービスの提供 | |
WO2023098993A1 (en) | Early acknowledgement for data transmitted from wireless device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20171208 Termination date: 20181108 |
|
CF01 | Termination of patent right due to non-payment of annual fee |