CN103563305B - 提供推送服务以减小网络负载的系统和方法 - Google Patents
提供推送服务以减小网络负载的系统和方法 Download PDFInfo
- Publication number
- CN103563305B CN103563305B CN201280022955.6A CN201280022955A CN103563305B CN 103563305 B CN103563305 B CN 103563305B CN 201280022955 A CN201280022955 A CN 201280022955A CN 103563305 B CN103563305 B CN 103563305B
- Authority
- CN
- China
- Prior art keywords
- client
- client device
- push
- push service
- service equipment
- 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.)
- Active
Links
Classifications
-
- 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/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1034—Reaction to server failures by a load balancer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/21—Monitoring or handling of messages
- H04L51/224—Monitoring or handling of messages providing notification on incoming messages, e.g. pushed notifications of received messages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
- H04L41/0668—Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure
-
- 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/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1029—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers using data related to the state of servers by a load balancer
-
- 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/142—Managing session states for stateless protocols; Signalling session states; State transitions; Keeping-state mechanisms
-
- 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
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/08—Load balancing or load distribution
- H04W28/0846—Load balancing or load distribution between network providers, e.g. operators
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer And Data Communications (AREA)
Abstract
公开了一种提供推送服务的系统和方法,所述系统包括:客户端,该客户端用于接收由服务提供设备提供的推送消息并且提供推送服务;以及推送服务设备,该推送服务设备用于向客户端发送由所述服务提供设备提供的推送消息,其中在所述客户端与所述推送服务设备之间的连接异常终止的情况下,根据预定基准尝试相互重新连接,由此具有减小由于重新连接的尝试而导致的网络负载。
Description
技术领域
本公开涉及一种提供推送服务的系统和方法,并且更具体地说,涉及这样一种提供推送服务的系统和方法,在服务提供设备通过推送服务设备向客户端设备发送推送消息的同时当推送服务设备与客户端设备之间的连接由于推送服务提供商的错误而断开时,该推送服务允许推送服务设备或客户端设备有选择地尝试重新连接。
背景技术
由于智能电话已经遍布并且由于智能电话环境已经出现各种应用,无线电资源的使用已显着增加。具体地说,总是被访问以从网络接收实时推送消息或推送通知的一直开着的应用,诸如即时消息(IM)服务、网络服务和窗口小部件服务,目前高速增多。一直开着的应用总是准备接收推送服务,同时保持与服务提供商的连接,从而生成了过多流量并且加速了电池消耗。
为了解决上述问题,采用了一种方法,在该方法中,当服务提供商通过在客户端内配置的守护程序保持与推送服务器的连接而无需服务提供商与客户端之间的直接连接并发送推送消息或推送通知时,在中心的推送服务器接收推送消息或者推送通知并且向对应的客户端发送所述推送消息或者推送通知。
图1是已知推送服务提供系统的配置的图。
根据现有技术,由于网关20和承载器(carrier)30位于多个服务提供商10与多个终端40之间,安装在多个终端40内的应用与承载器30和网关20相连接,并且因此与服务提供商10相连接而不需要单独地连接到服务提供商10。
网关20是用于执行与多个服务提供商10的连接的中继设备,并且承载器30是用于执行与多个终端40的连接的设备。根据服务提供商10和终端40的增多,网关 20和承载器30具有可扩展的结构。
然而,根据图1的现有技术,基于区域来管理终端40,从而当终端40与承载器 30相互作用时,将终端40分配给根据预设信息而确定的承载器30。这种方法具有快速的处理速度。然而,当同一区域内的终端40迅速增多时,一个承载器30所容纳的终端40全部由这一个承载器30支持,从而该承载器30容易变得超载。
具体地说,当与终端40的连接由于承载器30的错误而被异常终止时,重新尝试承载器30与终端40之间的连接。由于承载器30和终端40同时尝试连接,因此由于承载器30或终端40的数目增加而生成了瞬间网络负载。
因此,当使用推送服务的终端(客户端)和服务提供商增多时,有效地分散服务器的负载的方法是一个重要问题。因此,需要分散在服务提供商和终端与推送服务器连接时所生成的负载的方法。
具体地说,本公开公开了一种分散由于推送服务器与终端之间的异常断开而生成的网络负载的方法。
发明内容
发明所要解决的问题
因此,已经提出了本公开以解决现有技术中出现的上述问题,并且本公开提供了一种提供推送服务的系统和方法,其中,当与客户端设备的连接因执行与所述客户端设备的连接的推送服务设备的错误而被断开时,所述推送服务设备或者所述客户端设备有选择地尝试重新连接,从而减小由于尝试所述推送服务设备与所述客户端设备之间的重新连接而引起的网络负载。
用于解决问题的手段
根据本公开的第一方面,提供了一种提供推送服务的系统,所述系统包括:客户端设备,所述客户端设备被配置为接收由服务提供设备提供的推送消息并且提供推送服务;以及推送服务设备,所述推送服务设备被配置为向所述客户端设备发送由所述服务提供设备提供的所述推送消息,其中,当所述客户端设备与所述推送服务设备之间的连接被异常终止时,所述客户端设备或所述推送服务设备根据预定基准尝试相互重新连接。
所述预定基准可以是所述推送服务设备具有向所述客户端设备发送的新的推送消息,或者为了确认所述客户端设备到所述推送服务设备之间的有效连接而指定的保持连接时间。
根据本公开的第二方面,提供了一种推送服务设备,所述推送服务设备包括:服务提供商(SP)相互作用单元,所述SP相互作用单元被配置为与服务提供设备相连接;客户端相互作用单元,所述客户端相互作用单元被配置为与客户端设备相连接,以向一个或更多个客户端设备发送从所述SP相互作用单元接收到的推送消息;以及控制器,所述控制器被配置为在所述客户端相互作用单元与所述客户端设备之间的连接被异常终止的状态下,当从所述SP相互作用单元接收到要被发送到所述客户端设备的新的推送消息或者从所述客户端设备接收到保持连接消息时,尝试通过所述客户端相互作用单元与所述客户端设备重新连接。
所述推送服务设备还可以包括辅助客户端相互作用单元,所述辅助客户端相互作用单元被配置为,当所述客户端相互作用单元发生故障时,接收发生故障的所述客户端相互作用单元的备份的设置信息,并且代替所述客户端相互作用单元的功能。
根据本公开的第三方面,提供了一种推送服务设备,所述推送服务设备包括:服务提供商(SP)相互作用单元,所述SP相互作用单元被配置为与服务提供设备相连接;客户端相互作用单元,所述客户端相互作用单元被配置为与客户端设备相连接,以向所述客户端设备发送从所述SP相互作用单元接收到的推送消息;以及辅助客户端相互作用单元,所述辅助客户端相互作用单元被配置为接收备份的所述客户端相互作用单元的设置信息,并且代替所述客户端相互作用单元的功能;以及控制器,所述控制器被配置为当所述客户端相互作用单元与一个或更多个客户端设备之间的连接由于所述客户端相互作用单元的错误而异常终止时,将发生错误的所述客户端相互作用单元的设置信息备份到所述辅助客户端相互作用单元。其中,当在从所述客户端相互作用单元备份了所述设置信息的状态下从所述客户端设备接收到保持连接消息时,所述辅助客户端相互作用单元通过向所述客户端设备发送响应于所述保持连接消息的响应消息来执行与所述客户端设备的重新连接。
所述辅助客户端相互作用单元可以按照相当于预设的保持连接时间的周期接收所述保持连接消息。
根据本公开的第四个方面,提供了一种提供推送服务的方法,所述方法包括:连接到客户端设备,以由推送服务设备向所述客户端设备发送从服务提供设备接收到的推送消息的推送消息发送步骤;由所述推送服务设备通过识别与所述客户端设备的连接由于错误而被异常终止来识别异常终止的异常终止识别步骤;通过由所述推送服务设备识别是否从所述服务提供设备接收到将要被发送到所述客户端设备的推送消息,或者为了确认所述客户端设备到所述推送服务设备之间的有效连接而指定的保持连接时间,来确定重新连接的重新连接确定步骤;以及当所述推送服务设备接收到要被发送到所述客户端设备的所述推送消息时或者当所述保持连接时间到来时,由所述推送服务设备或者所述客户端设备尝试相互重新连接的尝试重新连接的步骤。
识别所述异常终止的步骤可以包括:当识别出与所述客户端设备的连接被异常终止时,备份和与所述客户端设备的连接有关的设置信息。
尝试重新连接的步骤可以包括:当从所述服务提供设备接收到要被发送到所述客户端设备的推送消息时,由所述推送服务设备基于所备份的设置信息发送用于重新连接到所述客户端设备的消息,执行与所述客户端设备的重新连接。
尝试重新连接的方法可以包括:当所述保持连接时间到来时,由所述客户端设备向具有所备份的设置信息的所述推送服务设备发送保持连接消息,并且基于响应于所发送的保持连接消息的响应消息执行与所述推送服务设备的重新连接。
发明效果
根据减小网络负载的提供推送服务的系统和方法,当与客户端设备的连接由于执行与该客户端设备的连接的推送服务设备的错误而断开时,所述推送服务设备或者所述客户端设备有选择地尝试重新连接。因此,具有减小由于尝试在推送服务设备与客户端设备之间重新连接而引起的网络负载的效果。
附图说明
图1是已知推送服务提供系统的配置的图。
图2是根据本公开的实施方式的推送服务提供系统的网络配置的图。
图3是根据本公开的实施方式的推送服务设备的详细配置的图;
图4是根据本公开的实施方式的推送服务设备与客户端设备之间的连接设置配置的图。
图5是根据本公开的一个实施方式的用于减小网络负载的推送服务提供方法的流程图。
图6是根据本公开的另一个实施方式的用于减小网络负载的推送服务提供方法的流程图。
图7是描述根据本公开的效果的图。
具体实施方式
在下文中,将参照附图来描述本公开的实施方式。将通过下面的详细描述将清楚地理解本公开的配置和对应效果。在详细描述之前,相同的元件将由相同的附图标记标示,尽管它们是在不同的附图中示出的,并且当合并到本文的对已知功能和配置的详细描述可能使本公开的主题非常不清楚时,将省略对已知功能和配置的该详细描述。
本公开公开了两个实施方式,其中,当由于推送服务设备的错误而使推送服务设备与客户端设备之间的连接异常终止时,不直接或立即进行与客户端设备的连接,但是使用推送服务设备的辅助设备有选择地尝试推送服务设备与客户端设备之间的连接。
图2是例示根据本公开的实施方式的推送服务提供系统的网络配置的图。
如图2所示,根据本公开的实施方式的推送服务提供系统100被配置为包括多个服务提供设备100-1至100-N(100)、推送服务设备300和多个客户端设备400-1至 400-K(400),并且被配置为具有这样的结构,其中,通过位于中心的中心推送服务设备300将服务提供设备100和客户端设备400彼此连接。
客户端设备400是能够与通信网络200相连接的终端,并且例如可以被配置为包括个人计算机、笔记本计算机、智能电话、个人数字助理(PDA)、平板PC、导航仪、便携式多媒体播放器(PMP)、电子词典、MP3播放器等。客户端设备400加载有客户端应用程序,该客户端应用程序被配置为通过与通信网络200的连接来发送和接收数据(尤其是,推送消息或推送通知等)。
多个服务提供设备100指代向多个客户端设备400发送推送消息以提供服务的服务器或终端。
基本上,推送服务设备300收集从多个服务提供设备100发送的推送消息并且向对应的客户端设备400发送所收集的推送消息。
此时,推送服务设备300被配置为管理服务提供设备100与客户端设备400之间的互联,并且根据内部负载来分散多个服务提供设备100与多个客户端设备400的不均匀分布。此外,推送服务设备300进行处理以使得向对应的客户端设备400提供从服务提供设备100所发送的推送消息。
推送服务设备300针对每种功能独立地实施,即,由独立设备单独地实施服务提供设备100与客户端设备400之间相互作用的功能、在相互作用时分散负载的功能、以及对推送消息进行处理的功能。因此,当服务提供设备100和/或客户端设备400 增多时,也可以针对每种功能逐个地扩展推送服务设备300。
图3是例示根据本公开的实施方式的推送服务设备的详细配置的图。
根据本公开的推送服务设备300包括SP相互作用单元310、控制器320,客户端相互作用单元330、负载分散单元340和辅助客户端相互作用单元350。
SP相互作用单元310被配置为与多个服务提供设备100相连接,以从多个服务提供设备100接收将要向客户端设备400发送的推送消息。这里,推送消息包括新信息、更新的信息或事件信息等等。
客户端相互作用单元330被配置为与多个客户端设备400相连接,以向所述多个客户端设备400发送从SP相互作用单元310接收到的推送消息。
相当于客户端相互作用单元330的辅助设备的辅助客户端相互作用单元350被配置为:当客户端相互作用单元330发生故障并且直接执行发生故障的客户端相互作用单元330的功能时,对客户端相互作用单元330的设置信息进行备份。客户端相互作用单元330的设置信息包括:客户端设备与控制器320之间的映射信息、与处理来自客户端设备的连接请求有关的信息、与将控制器320接收到的推送消息路由至对应的客户端设备有关的信息等等。
这时,根据与相互作用单元310和330中的每一个相连接的服务提供设备100 或者客户端设备400的连接的数目,SP相互作用单元310和客户端相互作用单元330 的数目可以是多个。通常,由于可被相互作用单元310和330中的每一个接受的终端的数目是预定的,因此可以基于可接受的终端的数目来增加相互作用单元310和330。
此外,SP相互作用单元310和客户端相互作用单元330中的每一个在每个预定周期上向负载分散单元340提供其自身的状态信息。状态信息包括与SP相互作用单元310和客户端相互作用单元330相连接的订户的数目(或者称为连接的数目)、每秒交易数(TPS)等等。
然后,负载分散单元340从SP相互作用单元310或客户端相互作用单元330接收其自身的状态信息,计算与相互作用单元中的每一个有关的负载信息,以表格形式构造计算出的负载信息,并且存储该表格。
此外,当存在来自多个服务提供设备100或者多个客户端设备400的连接请求时,参照预先存储的相互作用单元的负载信息,负载分散单元340将各个可连接的相互作用单元分配给服务提供设备或者客户端设备。因此,负载分散单元340用于分散相互作用单元310和330中的每一个的负载。
控制器320对多个SP相互作用单元310和客户端相互作用单元330进行管理,并且特别是,针对每个客户端设备管理与可连接的客户端相互作用单元330有关的路由信息。这里,针对每个客户端设备的可连接的客户端相互作用单元330指代其连接状态由客户端设备保持的客户端相互作用单元并且包括通过负载分散单元340分配的客户端相互作用单元。
因此,当控制器320从SP相互作用单元310接收推送消息时,控制器320通过包括在推送消息中的客户端信息来提取与能够对应的客户端设备相连接的客户端相互作用单元330,并且向所提取的客户端相互作用单元330发送该推送消息。
此时,如图4所示,当在客户端相互作用单元330中生成错误时,客户端相互作用单元330与客户端设备400之间的连接被异常终止,并且因此客户端相互作用单元330不能在①中发送推送消息。
在这种情况下,控制器320在②中将客户端相互作用单元330的设置信息备份到辅助客户端相互作用单元350中,并且辅助客户端相互作用单元350基于所备份的设置信息与客户端设备400有选择地连接并且在③中发送推送消息。此时,可以由辅助客户端相互作用单元350或者客户端设备400进行辅助客户端相互作用单元350与客户端设备400之间的有选择的连接。
例如,当客户端相互作用单元330与客户端设备400之间的连接被异常终止并且然后推送服务设备接收到要被发送到客户端设备的推送消息时,为了发送接收到的推送消息,辅助客户端相互作用单元350尝试连接到客户端设备400。这种方法是由辅助客户端相互作用单元350进行连接尝试的一个示例性方法。
另一种示例性方法在由客户端设备进行连接尝试时使用保持连接(keep alive)时间。即,当客户端相互作用单元330与客户端设备400之间的连接被异常终止并且然后保持连接时间到来时,客户端设备400向辅助客户端相互作用单元350发送保持连接消息以尝试辅助客户端相互作用单元350与客户端设备400之间的连接。
保持连接消息指代用于通知两个或更多个设备之间的有效状态的发送/接收的消息。根据本公开,通过在推送服务设备的客户端相互作用单元330或辅助客户端相互作用单元350与客户端设备400之间交换保持连接消息,可以识别相互连接状态。在诸如60秒、30分钟或60分钟等的每个预设的保持连接时间内周期性地发送保持连接消息。
在下文中,将详细描述推送服务提供方法,该推送服务提供方法可以通过使用以上两种方法在推送服务设备与客户端设备之间的连接来防止网络的超载。
图5是例示根据本公开的一个实施方式的用于减小网络负载的推送服务提供方法的流程图,并且图6是例示根据本公开的另一个实施方式的用于减小网络负载的推送服务提供方法的流程图。
首先,将参照图5来描述通过尝试推送服务设备与客户端设备之间的连接的推送服务提供方法。
当在步骤S200中在推送服务设备300内的客户端相互作用单元330中生成错误时,在步骤S210客户端相互作用单元330与客户端设备400之间的连接被异常终止。
根据控制器(图3中的320)的控制,客户端相互作用单元330复制该客户端相互作用单元330的设置信息并将所复制的设置信息备份到在推送服务设备300中额外地配置的辅助客户端相互作用单元350。从这个角度看,辅助客户端相互作用单元350 代替客户端相互作用单元330等效地执行客户端相互作用单元330的功能。
之后,推送服务设备400的SP相互作用单元310在推送服务设备300与客户端设备400之间的连接被终止的状态下从服务提供设备100接收到推送消息发送请求时,SP相互作用单元310在步骤S230中通过控制器(图3的320)向辅助客户端相互作用单元350发送推送消息发送请求,并且在步骤S240中向对应的服务提供设备 100发送与推送消息发送有关的响应消息。
然后,推送服务设备300的辅助客户端相互作用单元350通过发送文本消息尝试与客户端设备400连接,以重新连接到客户端设备400,在步骤S250中推送消息将被发送到客户端设备400。用于重新连接的文本消息以短消息类型或另一种特定消息格式来发送,并且提供了用于重新发起与客户端设备400的连接的迂回路由(detour route)。
因此,当推送服务设备300与客户端设备之间的连接被终止并且随后存在要被发送到客户端设备的推送消息时,辅助客户端相互作用单元350识别出与对应的客户端设备的连接被断开并尝试与对应的客户端设备重新连接。因此,当连接终止时,可以防止由于立即尝试重新连接而生成的瞬间网络超载。
接下来,参照图6,当像图5中那样在S100中在推送服务设备300的客户端相互作用单元330中生成错误时,在步骤S110中异常终止客户端相互作用单元330与客户端设备400之间的连接。
在步骤S120中,根据控制器(图3中的320)的控制,客户端相互作用单元330 复制该客户端相互作用单元330的设置信息并将所复制的设置信息备份到在推送服务设备300中额外地配置的辅助客户端相互作用单元350。从这个角度看,辅助客户端相互作用单元350代替客户端相互作用单元330等效地执行客户端相互作用单元 330的功能。
之后,在步骤S130中,客户端设备400检查保持连接时间是否到来。当保持连接时间到来时,在步骤S140中,客户端设备400向客户端相互作用单元330做出针对保持连接消息的请求,但是由于客户端设备400不能直接地识别出与客户端相互作用单元330的连接被断开,因此不能接收针对保持连接消息的请求的响应。
当客户端设备400没有从客户端相互作用单元330接收针对保持连接消息的请求的响应时,客户端设备400识别出与客户端相互作用单元330的连接被断开。然后,客户端设备400向辅助客户端相互作用单元350发送注册消息,以建立会话,并且然后在步骤S150中客户端设备400向辅助客户端相互作用单元350做出针对保持连接消息的请求。
之后,客户端设备400在步骤S160中从辅助客户端相互作用单元350接收针对保持连接消息的请求的响应,并且通过在步骤S170中的这一处理与辅助客户端相互作用单元350相连接。
如上所述,根据通过图5和图6的本公开,当推送服务设备与客户端设备之间的连接被异常终止并且推送服务设备或者客户端设备识别出连接被断开时,推送服务设备或者客户端设备根据是否存在推送消息或者保持连接时间是否到来而有选择地尝试重新连接,如图7中的 (b)所示。
例如,当推送服务设备在识别出断开之后早于保持连接时间接收到推送消息时,推送服务设备尝试与客户端设备相连接而不管保持连接时间。相反,当在识别出断开之后到达保持连接时间时,客户端设备首先尝试连接而不管推送消息的接收情况。
因此,如图7中的 (a)所示,可以防止由于在连接被终止之后,立即尝试客户端设备与推送服务设备之间的重新连接而生成的瞬间网络超载。
以上描述仅仅对应于示例并且可以在不脱离本发明要求保护的范围的情况下由本领域技术人员进行各种修改。因此,在本公开的本说明书中公开的实施方式不限制本公开。本公开的范围应当由所附权利要求解释,并且权利要求的等同范围内的所有技术都应当解释为被包括在本公开的范围内。
工业可应用性
由于应当被推送服务容纳的终端随着服务提供商和客户端设备的连接的数目的增多而增多,因此已知的推送服务提供系统生成了过多负载。但是本公开具有这样的效果,当通过推送服务设备向客户端设备提供从服务提供设备接收到的推送消息时,在与客户端设备的连接由于推送服务设备的错误而断开之后,通过在必要时有选择地尝试连接而不是立即连接来减小网络负载。因此,本公开是工业可应用的并且有用的,因为本公开具有足够的可能性被用在相关的技术和构造应用服务器和业务的领域中,并且具有足够的可能性在现实中被清楚地实施,因为本公开克服了已知推送服务器的限制。
Claims (6)
1.一种提供推送服务的系统,所述系统包括:
客户端设备,所述客户端设备被配置为接收由服务提供设备提供的推送消息并且提供推送服务;以及
推送服务设备,所述推送服务设备被配置为向所述客户端设备发送由所述服务提供设备提供的所述推送消息,
其中,当所述客户端设备与所述推送服务设备之间的连接被异常终止时,所述客户端设备或所述推送服务设备被配置为不是立即尝试所述客户端设备与所述推送服务设备之间的重新连接,而是根据预定基准尝试相互重新连接,
其中,所述预定基准是所述推送服务设备具有向所述客户端设备发送的新的推送消息,或者为了确认所述客户端设备到所述推送服务设备之间的有效连接而指定的保持连接时间,当所述推送服务设备在识别出异常终止之后早于所述保持连接时间接收到所述推送消息时,所述推送服务设备尝试与所述客户端设备重新连接而不管所述保持连接时间,相反,当在识别出异常终止之后到达所述保持连接时间时,所述客户端设备首先尝试重新连接而不管所述推送消息的接收情况,并且
其中,当识别出与所述客户端设备的连接被异常终止时,所述推送服务设备备份和与所述客户端设备的连接有关的设置信息。
2.一种推送服务设备,所述推送服务设备包括:
服务提供商SP相互作用单元,所述SP相互作用单元被配置为与服务提供设备相连接;
客户端相互作用单元,所述客户端相互作用单元被配置为与客户端设备相连接,以向一个或更多个客户端设备发送从所述SP相互作用单元接收到的推送消息;
控制器,所述控制器被配置为在所述客户端相互作用单元与所述客户端设备之间的连接被异常终止的状态下,不是立即尝试所述客户端设备与所述推送服务设备之间的重新连接,而是当从所述SP相互作用单元接收到要被发送到所述客户端设备的新的推送消息或者从所述客户端设备接收到保持连接消息时,尝试通过所述客户端相互作用单元与所述客户端设备重新连接,当所述推送服务设备在识别出异常终止之后早于预设的保持连接时间接收到所述推送消息时,所述推送服务设备尝试与所述客户端设备重新连接而不管所述保持连接时间,相反,当在识别出异常终止之后到达所述保持连接时间时,所述客户端设备首先尝试重新连接而不管所述推送消息的接收情况;以及
辅助客户端相互作用单元,所述辅助客户端相互作用单元被配置为,当所述客户端相互作用单元发生故障时,接收发生故障的所述客户端相互作用单元的备份的设置信息,并且代替所述客户端相互作用单元的功能,
其中,所述辅助客户端相互作用单元被配置为按照相当于所述保持连接时间的周期接收所述保持连接消息。
3.一种推送服务设备,所述推送服务设备包括:
服务提供商SP相互作用单元,所述SP相互作用单元被配置为与服务提供设备相连接;
客户端相互作用单元,所述客户端相互作用单元被配置为与客户端设备相连接,以向所述客户端设备发送从所述SP相互作用单元接收到的推送消息;以及
辅助客户端相互作用单元,所述辅助客户端相互作用单元被配置为接收所述客户端相互作用单元的备份的设置信息,并且代替所述客户端相互作用单元的功能;以及
控制器,所述控制器被配置为当所述客户端相互作用单元与一个或更多个客户端设备之间的连接由于所述客户端相互作用单元的错误而异常终止时,不是立即尝试所述客户端设备与所述推送服务设备之间的重新连接,而是将发生错误的所述客户端相互作用单元的设置信息备份到所述辅助客户端相互作用单元,当所述推送服务设备在识别出异常终止之后早于预设的保持连接时间接收到所述推送消息时,所述推送服务设备尝试与所述客户端设备重新连接而不管所述保持连接时间,相反,当在识别出异常终止之后到达所述保持连接时间时,所述客户端设备首先尝试重新连接而不管所述推送消息的接收情况,
其中,所述辅助客户端相互作用单元被配置为:当在从所述客户端相互作用单元备份了所述设置信息的状态下从所述客户端设备接收到保持连接消息时,通过向所述客户端设备发送响应于所述保持连接消息的响应消息来执行与所述客户端设备的重新连接,并且
其中,所述辅助客户端相互作用单元被配置为按照相当于所述保持连接时间的周期接收所述保持连接消息。
4.一种提供推送服务的方法,所述方法包括:
连接到客户端设备,以由推送服务设备向所述客户端设备发送从服务提供设备接收到的推送消息的推送消息发送步骤;
由所述推送服务设备识别与所述客户端设备的连接由于错误而被异常终止的异常终止识别步骤,其中,当识别出所述客户端设备与所述推送服务设备之间的连接被异常终止时,不立即尝试所述客户端设备与所述推送服务设备之间的重新连接;
通过由所述推送服务设备识别是否从所述服务提供设备接收到将要被发送到所述客户端设备的推送消息,或者为了确认所述客户端设备到所述推送服务设备之间的有效连接而指定的保持连接时间,来确定重新连接的重新连接确定步骤;
当所述推送服务设备接收到要被发送到所述客户端设备的所述推送消息时或者当所述保持连接时间到来时,由所述推送服务设备或者所述客户端设备尝试相互重新连接的尝试重新连接的步骤,其中,当所述推送服务设备在识别出异常终止之后早于所述保持连接时间接收到所述推送消息时,所述推送服务设备尝试与所述客户端设备重新连接而不管所述保持连接时间,并且当在识别出异常终止之后到达所述保持连接时间时,所述客户端设备首先尝试重新连接而不管所述推送消息的接收情况;以及
当在所述异常终止识别步骤中识别出与所述客户端设备的连接被异常终止时,备份和与所述客户端设备的连接有关的设置信息。
5.根据权利要求4所述的方法,其中,尝试重新连接的步骤包括:当从所述服务提供设备接收到要被发送到所述客户端设备的推送消息时,由所述推送服务设备基于所备份的设置信息发送用于重新连接到所述客户端设备的消息,并且由所述推送服务设备执行与所述客户端设备的重新连接。
6.根据权利要求4所述的方法,其中,尝试重新连接的步骤包括:当所述保持连接时间到来时,由所述客户端设备向具有所备份的设置信息的所述推送服务设备发送保持连接消息,并且基于响应于所述客户端设备所发送的保持连接消息的响应消息,由所述客户端设备执行与所述推送服务设备的重新连接。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2011-0045902 | 2011-05-16 | ||
KR1020110045902A KR101407597B1 (ko) | 2011-05-16 | 2011-05-16 | 망 부하 감소를 위한 푸시 서비스 제공 시스템 및 방법 |
PCT/KR2012/003793 WO2012157939A2 (ko) | 2011-05-16 | 2012-05-15 | 망 부하 감소를 위한 푸시 서비스 제공 시스템 및 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103563305A CN103563305A (zh) | 2014-02-05 |
CN103563305B true CN103563305B (zh) | 2018-10-09 |
Family
ID=47177473
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201280022955.6A Active CN103563305B (zh) | 2011-05-16 | 2012-05-15 | 提供推送服务以减小网络负载的系统和方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9491132B2 (zh) |
KR (1) | KR101407597B1 (zh) |
CN (1) | CN103563305B (zh) |
WO (1) | WO2012157939A2 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160227042A1 (en) * | 2014-03-18 | 2016-08-04 | Gubagoo, Inc. | Systems and methods for call backup and takeover using web and mobile interfaces |
KR102665749B1 (ko) * | 2018-10-09 | 2024-05-16 | 구글 엘엘씨 | 클라우드 저하 모드에서 지속적인 디바이스 동작 안정성을 보장하기 위한 방법 및 장치 |
CN112398752B (zh) * | 2020-11-16 | 2022-04-26 | 广州华多网络科技有限公司 | 消息推送控制方法及其装置、设备、介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101034996A (zh) * | 2006-03-09 | 2007-09-12 | 腾讯科技(深圳)有限公司 | 即时消息推送方法及其系统 |
WO2008048075A1 (en) * | 2006-10-19 | 2008-04-24 | Insprit Co., Ltd. | System of providing integrated push service and method therof |
CN101184019A (zh) * | 2006-11-14 | 2008-05-21 | 中兴通讯股份有限公司 | 一种向多终端动态推送业务信息的系统 |
CN101588384A (zh) * | 2008-05-19 | 2009-11-25 | 北京亿企通信息技术有限公司 | 一种给企业用户推送信息的方法和系统 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001082098A1 (en) * | 2000-04-27 | 2001-11-01 | Fortress Technologies, Inc. | Network interface device having primary and backup interfaces for automatic dial backup upon loss of a primary connection and method of using same |
JP2003288298A (ja) * | 2002-03-27 | 2003-10-10 | Hitachi Ltd | プッシュサービス情報中継装置およびプッシュサービス情報中継方法 |
MXPA05004765A (es) * | 2002-11-04 | 2005-08-02 | Research In Motion Ltd | Metodo y sistema para mantener una conexion de datos inalambrica. |
US7475142B2 (en) * | 2002-12-06 | 2009-01-06 | Cisco Technology, Inc. | CIFS for scalable NAS architecture |
US20040219925A1 (en) * | 2003-04-30 | 2004-11-04 | Motorola, Inc. | Image data transfer over a dispatch voice channel |
US7355975B2 (en) * | 2004-04-30 | 2008-04-08 | International Business Machines Corporation | Method and apparatus for group communication with end-to-end reliability |
US8055711B2 (en) * | 2004-10-29 | 2011-11-08 | Emc Corporation | Non-blocking commit protocol systems and methods |
GB2420044B (en) * | 2004-11-03 | 2009-04-01 | Pedagog Ltd | Viewing system |
KR100695212B1 (ko) * | 2006-03-09 | 2007-03-14 | 에스케이 텔레콤주식회사 | 푸쉬 메시지를 자동 저장하는 방법 및 이동통신 단말기 |
US7693953B2 (en) * | 2007-01-12 | 2010-04-06 | Microsoft Corporation | Providing Web services for wireless communication devices |
US8548433B1 (en) * | 2007-06-27 | 2013-10-01 | Smith Micro Software, Inc. | Voice messaging service for network-based instant connect systems |
US8099764B2 (en) * | 2007-12-17 | 2012-01-17 | Microsoft Corporation | Secure push and status communication between client and server |
-
2011
- 2011-05-16 KR KR1020110045902A patent/KR101407597B1/ko active IP Right Grant
-
2012
- 2012-05-15 WO PCT/KR2012/003793 patent/WO2012157939A2/ko active Application Filing
- 2012-05-15 CN CN201280022955.6A patent/CN103563305B/zh active Active
-
2013
- 2013-10-11 US US14/052,029 patent/US9491132B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101034996A (zh) * | 2006-03-09 | 2007-09-12 | 腾讯科技(深圳)有限公司 | 即时消息推送方法及其系统 |
WO2008048075A1 (en) * | 2006-10-19 | 2008-04-24 | Insprit Co., Ltd. | System of providing integrated push service and method therof |
CN101184019A (zh) * | 2006-11-14 | 2008-05-21 | 中兴通讯股份有限公司 | 一种向多终端动态推送业务信息的系统 |
CN101588384A (zh) * | 2008-05-19 | 2009-11-25 | 北京亿企通信息技术有限公司 | 一种给企业用户推送信息的方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
KR101407597B1 (ko) | 2014-06-13 |
KR20120128031A (ko) | 2012-11-26 |
WO2012157939A2 (ko) | 2012-11-22 |
WO2012157939A3 (ko) | 2013-01-24 |
CN103563305A (zh) | 2014-02-05 |
US9491132B2 (en) | 2016-11-08 |
US20140040380A1 (en) | 2014-02-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101233263B1 (ko) | 피드백 메시지를 이용한 푸시 서비스 제공 시스템 및 방법 | |
WO2007149745A4 (en) | Methods, systems and protocols for application to application communications | |
US20090052651A1 (en) | Communication control system, call control server, and communication control method | |
CN103563305B (zh) | 提供推送服务以减小网络负载的系统和方法 | |
CN113824723A (zh) | 一种应用于音视频数据传输的端到端系统解决方法 | |
US11831703B2 (en) | System and method for supporting permanent HTTP connections | |
CN104468380A (zh) | 一种接入点设备与服务器交互的接口通信方法 | |
JP2008225644A (ja) | ゲートウェイ装置、ゲートウェイ装置の負荷分散方法及びゲートウェイ装置の負荷分散プログラム | |
CN109510878A (zh) | 一种长连接会话保持方法和装置 | |
CN104144124A (zh) | 数据转发方法、装置及系统 | |
CN113037599A (zh) | 一种报文处理的方法、设备及存储介质 | |
CN116319732A (zh) | 一种基于RabbitMQ的消息队列集中配置管理系统及方法 | |
CN105681122B (zh) | 用于电信设备监视的方法和系统 | |
CN103391303B (zh) | 服务故障公告方法及使用该方法的服务器 | |
US20210359880A1 (en) | Securing a connection from a device to a server | |
EP2949083B1 (en) | Receiving a communication event | |
EP3941029A1 (en) | Voice communication system and redundancy method for call control server | |
CN106169999A (zh) | 会话备份的方法及装置 | |
CN109660370A (zh) | 一种数字广播系统的设备通信方法 | |
CN102255716A (zh) | 一种对协议状态的设备间备份的方法及系统 | |
EP2405618B1 (en) | Email system including synchronization server(s) providing synchronization based upon synchronization indicators stored on mobile devices and related methods | |
CN103069782B (zh) | 通信系统以及用于通过该通信系统进行通信的方法 | |
CN103222255B (zh) | 自动启动用于文本通信的通信终端设备的方法和装置 | |
CN106161580A (zh) | 一种连接状态控制方法、装置及系统 | |
JP3549762B2 (ja) | 通信回線警報通知装置及び通信回線警報通知方法 |
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 |