KR101602186B1 - Apparatus for push server cloud and communication service of using push server cloud - Google Patents

Apparatus for push server cloud and communication service of using push server cloud Download PDF

Info

Publication number
KR101602186B1
KR101602186B1 KR1020120050074A KR20120050074A KR101602186B1 KR 101602186 B1 KR101602186 B1 KR 101602186B1 KR 1020120050074 A KR1020120050074 A KR 1020120050074A KR 20120050074 A KR20120050074 A KR 20120050074A KR 101602186 B1 KR101602186 B1 KR 101602186B1
Authority
KR
South Korea
Prior art keywords
push
server
client
push server
service
Prior art date
Application number
KR1020120050074A
Other languages
Korean (ko)
Other versions
KR20130092937A (en
Inventor
김윤식
안태효
Original Assignee
주식회사 케이티
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 주식회사 케이티 filed Critical 주식회사 케이티
Publication of KR20130092937A publication Critical patent/KR20130092937A/en
Application granted granted Critical
Publication of KR101602186B1 publication Critical patent/KR101602186B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/18Service support devices; Network management devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • H04L65/4061Push-to services, e.g. push-to-talk or push-to-video
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/06Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services
    • H04W4/10Push-to-Talk [PTT] or Push-On-Call services

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Telephonic Communication Services (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명은 푸시 서버 클라우드 및 이를 이용한 통신 서비스를 제공하는 방법에 관한 발명이다.
본 발명의 일 실시예는 푸시 서버를 클라우드 방식으로 계층적 혹은 유기적으로 연동한다.
본 명세서의 일 실시예에 의한 푸시 서버 클라우드 및 이를 이용한 통신 서비스 제공 방법은, 모바일 단말에서 구동하는 푸시 클라이언트 (Push Client)가 푸시 서버(Push Server)가 포함된 푸시 서비스 시스템에 상기 푸시 클라이언트의 식별 정보를 송신하는 단계, 및 상기 푸시 클라이언트는 백업 푸시 서버(Back Push Server) 또는 상기 푸시 서버로부터 푸시 데이터를 수신하는 단계를 포함하며, 상기 푸시 서버가 상기 푸시 데이터를 송신하지 못할 경우, 상기 푸시 클라이언트는 상기 백업 푸시 서버로부터 상기 푸시 데이터를 수신하는 것을 특징으로 한다.
The present invention relates to a method of providing a push server cloud and a communication service using the push server cloud.
One embodiment of the present invention interlocks push servers in a hierarchical or organic way in a cloud manner.
According to an embodiment of the present invention, a push server cloud and a method of providing a communication service using the push server include a push client operating in a mobile terminal, a push server, Wherein the push client includes receiving push data from a back push server or the push server, and when the push server fails to transmit the push data, Is characterized in that the push data is received from the backup push server.

Figure R1020120050074
Figure R1020120050074

Description

푸시 서버 클라우드 및 이를 이용한 통신 서비스 제공 방법{APPARATUS FOR PUSH SERVER CLOUD AND COMMUNICATION SERVICE OF USING PUSH SERVER CLOUD}TECHNICAL FIELD [0001] The present invention relates to a push server cloud and a communication service providing method using the push server cloud.

스마트폰의 보급에 따라 트래픽이 급증 하고 있으며 다양한 앱(Application, APP)의 수행으로 인하여, 통신망에 가중되는 부하가 증가하고 있다. 이러한 망 부하를 줄이기 위한 서버의 구성 및 통신 서비스를 제시한다. Traffic is increasing rapidly due to the spread of smartphones, and the load on the network is increasing due to the execution of various applications (APP, APP). We propose a server configuration and communication service to reduce the network load.

스마트폰 또는 아이폰 등과 같이 어플리케이션이 다양하게 실행되는 장치의 보급에 따라 트래픽(Traffic)이 급증 하고 있으며 푸시(Push)형 앱(SNS, 메일 등)의 증가로 망부하가 심각해져 가고 있다. 특히 안드로이드(Android) OS 앱이 과도한 앱시그널링 발생시키고 있다. 과다한 앱시그널링을 살펴보면, 특정한 앱이 시간당 50~300회의 시그널링을 발생시키고 있다. 이에 따라 3%미만 과다 시그널링앱이 10~20%의 망부하 유발하고 있으며, 일부 무선망은 이러한 과도한 앱 시그널링 트래픽에 의해 기능이 마비되기도 하였다.
Traffic is rapidly increasing due to the spread of devices that are used for various applications such as a smart phone or an iPhone, and network load is becoming serious due to an increase in push-type applications (SNS, mail, etc.). In particular, Android OS apps are causing excessive app signaling. If you look at excessive app signaling, certain apps are generating 50 to 300 signaling times per hour. Thus, less than 3% excess signaling apps are causing 10 ~ 20% network load, and some wireless networks have been paralyzed by these excessive appsignaling traffic.

본 명세서에서는 이러한 개별적으로 운용되는 각 통신사, 조직 및 OS 벤더들의 푸시 서버(push server)를 유기적으로 연동하도록 함으로써 앱이 유발하는 트래픽 부하 문제들을 해결하고, 통신사에게 탄력적인 서버 운용을 가능하도록 하고, 개별 서버의 운용과 비교하여 새로운 차원의 향상된 서비스 안정성을 제공하고자 한다.
In this specification, it is possible to solve the traffic load problems caused by the app by organically linking the push servers of the individual operating companies, organizations and OS vendors, to enable flexible operation of the server, And to provide a new level of improved service stability compared to the operation of individual servers.

본 발명의 일 실시예는 푸시 서버를 클라우드 방식으로 계층적 혹은 유기적으로 연동한다.One embodiment of the present invention interlocks push servers in a hierarchical or organic way in a cloud manner.

본 발명의 일 실시예에 의한 푸시 서버 클라우드는 MNO, GSMA, OS 벤더들이 운영하는 푸시 서버들의 계층적 구조를 제공한다.The push server cloud according to an exemplary embodiment of the present invention provides a hierarchical structure of push servers operated by MNO, GSMA, and OS vendors.

본 발명의 일 실시예에 의한 푸시 서버 클라우드는 MNO(Mobile Network Operator)가 관리하는 푸시 서버를 프라이머리 푸시 서버로 하며, 이에 대한 백업 푸시 서버로 GSMA(GSM Association) 푸시 서버를 제공하며, 또한 GSMA 푸시 서버에 대한 백업 푸시 서버로 OS 벤더 푸시 서버로 구현한다. 본 명세서의 일 실시예에 의한 푸시 서버 클라우드 및 이를 이용한 통신 서비스 제공 방법은, 모바일 단말에서 구동하는 푸시 클라이언트 (Push Client)가 푸시 서버(Push Server)가 포함된 푸시 서비스 시스템에 상기 푸시 클라이언트의 식별 정보를 송신하는 단계, 및 상기 푸시 클라이언트는 백업 푸시 서버(Back Push Server) 또는 상기 푸시 서버로부터 푸시 데이터를 수신하는 단계를 포함하며, 상기 푸시 서버가 상기 푸시 데이터를 송신하지 못할 경우, 상기 푸시 클라이언트는 상기 백업 푸시 서버로부터 상기 푸시 데이터를 수신하는 것을 특징으로 한다.The push server cloud according to an exemplary embodiment of the present invention uses a push server managed by a MNO (Mobile Network Operator) as a primary push server, a GSMA (GSM Association) push server as a backup push server for the push server, It is implemented as an OS vendor push server as a backup push server for push servers. According to an embodiment of the present invention, a push server cloud and a method of providing a communication service using the push server include a push client operating in a mobile terminal, a push server, Wherein the push client includes receiving push data from a back push server or the push server, and when the push server fails to transmit the push data, Is characterized in that the push data is received from the backup push server.

본 명세서의 다른 실시예에 의한 푸시 서버 클라우드 및 이를 이용한 통신 서비스 제공 방법은, 푸시 서버(Push Server) 및 백업 푸시 서버(Backup Push Server)로 구성된 푸시 서비스 시스템에 있어서, 상기 푸시 서비스 시스템이 모바일 단말에서 구동하는 푸시 클라이언트(Push Client)의 식별 정보를 수신하는 단계, 및 상기 푸시 클라이언트에 상기 백업 푸시 서버 또는 상기 푸시 서버가 푸시 데이터를 송신하는 단계를 포함하며,상기 푸시 서버가 상기 푸시 데이터를 송신하지 못할 경우, 상기 백업 푸시 서버가 상기 푸시 클라이언트에게 상기 푸시 데이터를 송신하는 것을 특징으로 한다.According to another aspect of the present invention, there is provided a push service system comprising a push server and a backup push server, the push service system comprising: Receiving a push client identification information of a push client running on the push server, and transmitting the push data to the push client by the backup push server or the push server, wherein the push server transmits the push data If not, the backup push server sends the push data to the push client.

본 명세서의 또다른 실시예에 의한 푸시 서버 클라우드를 이용하는 모바일 단말은, 푸시 서비스를 이용함에 있어서, 푸시 서비스를 이용하여 어플리케이션을 수정 또는 변경하거나 데이터를 추가하는 어플리케이션 제어부, 상기 모바일 단말에 설치된 어플리케이션의 푸시 서비스를 제어하는 푸시 클라이언트(Push Client), 상기 푸시 클라이언가 푸시 서버(Push Server)가 포함된 푸시 서비스 시스템에 상기 푸시 클라이언트의 식별 정보를 송신하도록 제어하며, 상기 푸시 클라이언트는 백업 푸시 서버(Back Push Server) 또는 상기 푸시 서버로부터 푸시 데이터를 수신하도록 제어하는 송수신부를 포함하며, 상기 푸시 서버가 상기 푸시 데이터를 송신하지 못할 경우, 상기 푸시 클라이언트는 상기 백업 푸시 서버로부터 상기 푸시 데이터를 수신하는 것을 특징으로 한다.According to another embodiment of the present invention, a mobile terminal using a push server cloud includes an application control unit for using the push service to modify or change an application using a push service or to add data, A push client for controlling a push service; a push client for sending identification information of the push client to a push service system including a push server, the push client being a push push server Wherein the push client receives the push data from the backup push server when the push server fails to transmit the push data, wherein the push client receives the push data from the push server, The.

본 명세서의 또다른 실시예에 의한 푸시 서버 클라우드를 구성하는 푸시 서버는, 푸시 서비스 시스템을 구성함에 있어서, 푸시 서비스에 이용할 푸시 데이터를 저장하는 저장부, 모바일 단말에서 구동하는 푸시 클라이언트(Push Client)의 식별 정보를 상기 푸시 클라이언트 또는 상기 푸시 서비스 시스템을 구성하는 제 2의 서버로부터 수신하며 상기 푸시 클라이언트에 푸시 데이터를 송신하는 송수신부, 및 상기 푸시 서비스를 이용할 푸시 클라이언트를 검증하는 클라이언트 검증부를 포함하며, 상기 푸시 서버가 상기 푸시 데이터를 송신하지 못할 경우, 상기 푸시 서비스 시스템을 구성하는 백업 푸시 서버가 상기 푸시 클라이언트에게 상기 푸시 데이터를 송신하는 것을 특징으로 한다.
According to another embodiment of the present invention, a push server constituting a push server cloud includes a storage unit for storing push data to be used for a push service, a push client for driving the mobile terminal, And a client verification unit for verifying the push client that uses the push service, and a client verification unit for receiving the identification information of the push client from the second server constituting the push client or the push service system and transmitting the push data to the push client, And when the push server fails to transmit the push data, a backup push server constituting the push service system transmits the push data to the push client.

본 발명의 푸시 서버 클라우드 또는 푸시 서버 네트워크를 구현할 경우, 이전에 개별적으로 운용되는 각 통신사, 조직 및 OS 벤더들의 푸시 서버(push server)를 유기적으로 연동하도록 함으로써 앱이 유발하는 트래픽 부하 문제들을 해결하고, 통신사에게 탄력적인 서버 운용을 가능하도록 한다.
When implementing the push server cloud or push server network of the present invention, it is possible to solve the traffic load problems caused by the application by organically linking the push server of each previously operated carrier, organization and OS vendors , Enabling flexible operation of the server.

도 1은 개별적인 푸시 서버를 이용하는 서비스 구성을 보여주는 도면이다.
도 2는 개별적인 푸시 서버를 사용하는 구성을 보여주는 도면이다.
도 3은 본 명세서의 일 실시예에 의한 푸시 서버 클라우드의 구성을 보여주는 도면이다.
도 4는 본 명세서의 일 실시예에 의한 푸시 서버 클라우드 또는 푸시 서버 네트워크의 구성을 보여주는 도면이다.
도 5는 본 명세서의 일 실시예에 의한 푸시 서버들을 3계층으로 구성한 도면이다.
도 6은 본 명세서의 일 실시예에 의한 시그널링을 보여주는 도면이다.
도 7은 본 명세서의 다른 실시예에 의한 시그널링을 보여주는 도면이다.
도 8은 본 명세서의 또다른 실시예에 의한 시그널링을 보여주는 도면이다.
도 9는 본 명세서의 또다른 실시예에 의한 시그널링을 보여주는 도면이다.
도 10은 본 명세서의 일 실시예에 의한 도면이다.
도 11은 하나의 푸시 서버로 구성된 경우를 보여주는 도면이다.
도 12는 본 명세서의 일 실시예에 의한 중앙 관리 서버를 보여주는 도면이다.
도 13은 본 명세서의 다른 실시예에 의한 중앙 관리 서버를 보여주는 도면이다.
도 14는 본 명세서의 또다른 실시예에 의한 중앙 관리 서버를 보여주는 도면이다.
도 15는 본 명세서의 또다른 실시예에 의한 중앙 관리 서버를 보여주는 도면이다.
도 16은 본 발명의 일 실시예에 의한 백업 푸시 서버를 보여주는 도면이다.
도 17은 본 발명의 다른 실시예에 의한 백업 푸시 서버를 보여주는 도면이다.
도 18은 본 발명의 일 실시예에 의한 푸시 클라이언트와 푸시 서비스 시스템에서 이루어지는 프로세스를 보여주는 도면이다.
도 19는 본 명세서의 일 실시예에 의한 모바일 단말의 구성을 보여주는 도면이다.
도 20은 본 명세서의 일 실시예에 의한 푸시 서버의 구성을 보여주는 도면이다.
1 is a diagram showing a service configuration using an individual push server.
2 is a diagram showing a configuration using an individual push server.
3 is a diagram illustrating a configuration of a push server cloud according to an embodiment of the present invention.
FIG. 4 is a diagram illustrating the configuration of a push server cloud or push server network according to an embodiment of the present invention.
FIG. 5 is a diagram illustrating push servers according to an embodiment of the present invention in three layers.
6 is a diagram illustrating signaling according to an embodiment of the present invention.
7 is a diagram illustrating signaling according to another embodiment of the present disclosure.
8 is a diagram illustrating signaling according to another embodiment of the present disclosure.
9 is a diagram illustrating signaling according to another embodiment of the present disclosure.
10 is a diagram according to an embodiment of the present invention.
11 is a diagram showing a case where the push server is composed of one push server.
12 is a diagram illustrating a central management server according to an embodiment of the present invention.
13 is a view showing a central management server according to another embodiment of the present invention.
14 is a view showing a central management server according to another embodiment of the present invention.
15 is a view showing a central management server according to another embodiment of the present invention.
16 is a diagram illustrating a backup push server according to an embodiment of the present invention.
17 is a diagram illustrating a backup push server according to another embodiment of the present invention.
18 is a diagram illustrating a process in a push client and a push service system according to an embodiment of the present invention.
19 is a diagram illustrating a configuration of a mobile terminal according to an embodiment of the present invention.
20 is a diagram illustrating a configuration of a push server according to an embodiment of the present invention.

이하, 본 발명의 일부 실시 예들을 예시적인 도면을 통해 상세하게 설명한다. 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.Hereinafter, some embodiments of the present invention will be described in detail with reference to exemplary drawings. It should be noted that, in adding reference numerals to the constituent elements of the drawings, the same constituent elements are denoted by the same reference numerals whenever possible, even if they are shown in different drawings. In the following description of the present invention, a detailed description of known functions and configurations incorporated herein will be omitted when it may make the subject matter of the present invention rather unclear.

또한, 본 발명의 구성 요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 접속될 수 있지만, 각 구성 요소 사이에 또 다른 구성 요소가 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다.In describing the components of the present invention, terms such as first, second, A, B, (a), and (b) may be used. These terms are intended to distinguish the constituent elements from other constituent elements, and the terms do not limit the nature, order or order of the constituent elements. When a component is described as being "connected", "coupled", or "connected" to another component, the component may be directly connected or connected to the other component, Quot; may be "connected," "coupled," or "connected. &Quot;

본 명세서에서는 통신 서비스에서의 푸시 서버를 클라우드로 구성하는 방안 및 이를 통한 통신 서비스, 서버 장치 등을 중심으로 설명한다. 그러나, 본 명세서에서 설명하고 있는 발명은 좁은 의미의 통신 서비스에 국한되는 것이 아니며, 데이터의 송수신을 가능하게 하는 광의의 통신 서비스에 적용 가능하다. 본 명세서에서의 앱(APP) 또는 어플리케이션(Application)은 통신 단말에 설치되는 프로그램 또는 소프트웨어를 통칭하는 것이며, 특정한 회사 혹은 특정한 통신 방식에 한정되지 않는다.
In this specification, a method of configuring a push server in a communication service as a cloud, a communication service through the push server, and a server device will be described. However, the invention described in the present specification is not limited to a communication service in a narrow sense, and is applicable to a broad communication service enabling data transmission and reception. The application (APP) or application in this specification refers to a program or software installed in a communication terminal, and is not limited to a specific company or a specific communication method.

앞서 살펴본 바와 같이, 푸시형 앱의 증가로 인해 망에 대한 부하는 증가하고 있으며, 이에 따라 개별적인 푸시 서버(push server)를 구축하여 문제를 완화하는 방법이 있다. As we have seen, the load on the network is increasing due to the increase in push type apps, and there is a way to alleviate the problem by building a separate push server.

그러나 개별적인 푸시 서버를 구축하는 것에는 다음과 같은 문제점을 가지고 있다.However, building individual push servers has the following problems.

각 통신사별로 각기 다른 방법을 사용하므로 각 통신사별로 앱 개발 방법이 달라져야 하고 이에 따라 앱 개발시에 개발자에게 푸시 서버의 사용을 강제하기 힘들다. 또한, 각 통신사별로 각기 다른 신뢰성, 안정성과 응답시간 등 QoS(Quality of Service)를 제공하므로, 개발자의 신뢰를 받기 힘들며, 스마트폰에서 실행되는 앱의 안정성에도 문제가 있을 수 있다.
Since each communication company uses different methods, it is difficult to force the developer to use the push server when developing an app. In addition, since each communication company provides QoS (Quality of Service) such as reliability, stability and response time, it is difficult to obtain the trust of the developer and the stability of the app running on the smartphone may be a problem.

도 1은 개별적인 푸시 서버를 이용하는 서비스 구성을 보여주는 도면이다. 1 is a diagram showing a service configuration using an individual push server.

기존의 푸시형 앱들(110)은 지속적으로 앱 서버(App Server)(190)에 새로운 데이터가 있는지를 확인하기 위한 신호들(130, 140), 예를 들어 인 킵-얼라이브 메시지(Keep-Alive message) 또는 리트라이 메시지(Retry message)를 보낸다. 이러한 트래픽을 경감시키기 위해 푸시 서버(100)가 개발되었으며, 각 통신사 및 OS 벤더(Operating System Vendor)은 도 2와 같이 독자적으로 운영할 수 있다.
Existing push-type apps 110 continue to receive signals 130 and 140 to confirm that there is new data in the app server 190, e.g., a keep-alive message ) Or a retry message. To reduce such traffic, a push server 100 has been developed, and each of the carriers and OS vendors can independently operate as shown in FIG.

도 2는 개별적인 푸시 서버를 사용하는 구성을 보여주는 도면이다. 세 대의 푸시 서버들(210, 220, 230)은 독자적인 서비스 서버(211, 221, 231)과 동작하고 있다.
2 is a diagram showing a configuration using an individual push server. The three push servers 210, 220, and 230 are operating with their own service servers 211, 221, and 231.

본 발명에서는 도 1, 2의 구성과 달리 각 업체에서 운용되는 푸시 서버를 연동하여 푸시 서버 클라우드(Push Server Cloud)를 구축한다. 애플리케이션 관점에서는 푸시 서버 클라우드 서비스를 네트워크 API를 호출하는 방식(network API call)으로 구현하면 모든 처리는 실제로는 어떤 서버에 의해 실행되는지, 혹은 어떤 서버가 장애가 생기더라도 관계없이 앱의 입장에서는 동일한 서비스를 이용가능 하게 된다.
In the present invention, a Push Server Cloud is constructed by linking push servers operated by respective vendors, unlike the configurations shown in FIGS. From an application point of view, implementing a push server cloud service as a network API call means that all processing is actually executed by the server, or even if a server fails, Becomes available.

도 3은 본 명세서의 일 실시예에 의한 푸시 서버 클라우드의 구성을 보여주는 도면이다. 푸시 서버 클라우드 또는 푸시 서버 네트워크(Push Server network)(300)에 앱서버(App Server)(310)가 시그널링을 전달하면, 푸시 서버 클라우드 또는 푸시 서버 네트워크(300)는 푸시 알림(Push notification)(305)를 앱(어플리케이션)(330)으로 전달한다.
3 is a diagram illustrating a configuration of a push server cloud according to an embodiment of the present invention. The push server cloud or the push server network 300 transmits push notification 305 to the push server cloud 300 or the push server network 300 when the app server 310 transmits signaling to the push server cloud or the push server network 300. [ To the application (application) 330.

도 3과 같은 구성의 이러한 서비스 이용을 위해, 해당 통신 사업자는 푸시 서버의 주소들(primary, backup and OS vendor push server addresses)을 핸드폰의 통신사업자 데이터(data) 영역에 저장하고, 개발자들이 앱에서 통신사업자 또는 다른 푸시 서버에 푸시 서비스(push service)를 요청하는 것을 가능하도록 해주는 API 함수(API function)를 제공한다.In order to use such a service as shown in FIG. 3, the communication service provider stores the addresses of the push server (primary, backup, and OS vendor push server addresses) in the data area of the carrier's mobile phone, And provides an API function that enables a service provider or another push server to request a push service.

이를 이용하여, 앱 개발자는 간단한 네트워크 API 함수(network API function) 호출만으로 안정적인 푸시 서비스의 이용이 가능하며, 개발하는 앱의 특성에 따라 인액티브 타이머(inactive timer), 킵얼라이브 간격(keep alive interval) 및 푸시 알림 메시지의 간격(push notification message interval) 등을 결정 할 수 있다. 인액티브 타이머(Inactive timer)는 단말과 앱 서버간의 논리적인 통신 연결을 끊기 위한 시간을 의미한다. 킵얼라이브 간격(keep alive interval)은 킵얼라이브 메시지를 받기 위한 시간 간격을 결정한다. 최소 푸시 알림 메시지의 간격(The minimum push notification message interval)은 해당 앱이 푸시 서버로부터 푸시 알림 메시지를 받기 위한 최소 시간을 의미한다. 즉, 앱 서버에서 푸시 서버로 푸시 알림을 보낸다고 해서 즉시 업데이트 하는 것이 아니라 지정된 푸시 알림 메시지의 간격(push notification message interval)마다 푸시 알림이 전송된다.Using this, an app developer can use a stable push service by simply calling a network API function. In addition, an inactive timer, a keep alive interval, And a push notification message interval of the push notification message. An inactive timer is a time for disconnecting a logical communication connection between a terminal and an application server. The keep alive interval determines the time interval for receiving the keepalive message. The minimum push notification message interval means the minimum time for the application to receive a push notification message from the push server. That is, the push notification is sent every push notification message interval of the designated push notification message rather than immediately updating the push notification from the app server to the push server.

Figure 112012037699180-pat00001
Figure 112012037699180-pat00001

개발자가 앱 내에서 이렇게 네트워크 API 함수(network API function)를 호출하게 되면, 해당 함수는 휴대폰의 운영 정보(Operator information)에서 프라이머리 푸시 서버(primary push server) 주소를 가져와서 등록 요청 메시지(registration request message)를 인증을 위한 AAA 서버(Authorization, Authentication and Accounting server)를 경유하여 해당 프라이머리 푸시 서버(primary push server)에 전송한다. 이 메시지를 받은 푸시 서버는 해당 앱에 대한 푸시 서버 엔트리(push service entry)를 만들어 푸시 서버 리스트(push server list)에 추가하여 관리하고, 해당 요청 메시지(request message)에 포함된 킵 얼라이브 간격(Keep Alive interval) 정보를 백업 푸시 서버(backup push server)에 전달한다. 만약 추후에 프라이머리 푸시 서버(primary push server)가 동작이 불가능 하게 되는 경우, 해당 앱은 백업 푸시 서버(backup push server)로부터의 킵 얼라이브 메시지를 받아 새로운 푸시 서버에 푸시 서비스를 등록하거나 해당 백업 푸시 서버(backup push server)에 푸시 서비스를 등록하게 된다.When the developer calls the network API function in the application, the function fetches the primary push server address from the mobile operator's operating information and sends a registration request message message to the corresponding primary push server via an Authorization, Authentication and Accounting (AAA) server for authentication. The push server receiving this message creates a push service entry for the corresponding app and adds it to the push server list and manages it. When the push server receives the keep alive interval (Keep) included in the request message, Alive interval information to the backup push server. If the primary push server becomes unavailable in the future, the application receives the keepalive message from the backup push server and registers the push service with the new push server, The push service is registered to the server (backup push server).

프라이머리 푸시 서버는 해당 통신 사업자가 운영하는 푸시 서버일 수도 있지만, GSMA(Global System for Mobile communication Association)와 같은 통신사업자들의 연합체 또는 구글(Google)과 같은 OS 벤더일 수도 있다. 프라이머리 푸시 서버가 어떤 것이 될지는 해당 통신사업자가 지정 가능하다. 만약 프라이머리 푸시 서버가 해당 통신사업자가 운영하는 푸시 서버라고 해도 해당 푸시 서버가 고장나거나 로드가 집중되어 더 이상 푸시 서비스를 제공할 수 없는 경우, 해당 푸시 서버로의 푸시 서비스 요청(push service request)는 백업 푸시 서버로 전달 될 수 있다. 백업 푸시 서버 또한 고장나거나 로드가 집중되어 더 이상 푸시 서비스를 제공할 수 없는 경우, 해당 푸시 서버로의 푸시 서비스 요청은 상위 백업 푸시 서버로 전달 될 수 있다.
The primary push server may be a push server operated by the carrier, but may be a carrier of a carrier such as Global System for Mobile Communications Association (GSMA) or an OS vendor such as Google. The primary push server can be specified by the carrier. If the primary push server is a push server operated by the carrier, if the push server fails or the load is concentrated and can no longer provide the push service, a push service request to the push server, May be forwarded to the backup push server. If the backup push server also fails or is heavily loaded and can no longer provide the push service, the push service request to that push server can be forwarded to the upstream backup push server.

도 4는 본 명세서의 일 실시예에 의한 푸시 서버 클라우드 또는 푸시 서버 네트워크의 구성을 보여주는 도면이다. FIG. 4 is a diagram illustrating the configuration of a push server cloud or push server network according to an embodiment of the present invention.

푸시 서버(Push server)는 GGSN을 통해 IP기반 모바일 네트워크(IP-based mobile network)(450)와 연결된 인터넷 망에 구성 가능하다. 이 때 UMTS 네트워크와 푸시 서버를 연결하는 GGSN(Gateway GPRS Supporting Node)은 Ga 와 AAA 인터페이스를 통해 연결되므로 만약 푸시 서비스를 제공하는 푸시 서버의 운영주체가 푸시 서비스에 대해 요금을 받는다고 해도 요금 정산도 가능하다. The push server is configurable in the Internet network connected to the IP-based mobile network 450 via the GGSN. In this case, the Gateway GPRS Supporting Node (GGSN), which connects the UMTS network and the push server, is connected through the AA and AA interface. Therefore, even if the push server providing the push service receives a charge for the push service, It is possible.

예를 들어, 스마트폰에서 동작하는 앱에서 해당 통신사업자의 푸시 서버(431)로 푸시 서비스 등록 요청 메시지(push service registration request message)를 보내면, 해당 통신사업자의 푸시 서버(431)에서 푸시 서비스를 제공하게 된다. 이때 해당 모바일 네트워크(450)과 해당 푸시 서버(431)를 연결하는 GGSN이 해당 푸시 서버의 고장 또는 오버로드(overload) 상태를 파악하기 위해 해당 등록 요청 메시지(registration request message)를 지정된 해당 푸시 서버(431)에 보내고, 만약 일정 시간 내에 ACK 응답이 없으면, 해당 푸시 서버(431)를 고장으로 판단한다. 만약 BUSY 메시지를 응답으로 받으면, 해당 푸시 서버(431)를 오버로드로 판단한다. 해당 푸시 서버(431)가 고장 또는 오버로드인 경우, 해당 GGSN은 해당 푸시 서버로의 푸시 서비스 요청(push service request)를 백업 푸시 서버(backup push server)(432) 전달한다. 만약 마찬가지로 GGSN에서 백업 푸시 서버(432) 또한 고장나거나 로드가 집중되어 더 이상 푸시 서버를 제공할 수 없다고 판단하는 경우, 해당 푸시 서버로의 푸시 서비스 요청은 상위 백업 푸시 서버인 OS 벤더 푸시 서버(OS vendor push server)(410)로 전달 될 수 있다.For example, when a push service registration request message is sent from a smart phone to a push server 431 of a corresponding communication provider, the push server 431 of the corresponding service provider provides a push service . At this time, the GGSN connecting the mobile network 450 and the corresponding push server 431 transmits a registration request message to the corresponding push server (i.e., a push server) to identify a failure or an overload state of the push server 431, and if the ACK response is not received within a predetermined time, the push server 431 is determined as a failure. If the BUSY message is received in response, the push server 431 is judged as an overload. If the push server 431 is malfunctioning or overloaded, the GGSN forwards a push service request to the push server to the backup push server 432. If the backup push server 432 in the GGSN likewise determines that the backup push server 432 also fails or is under load and can no longer provide the push server, the push service request to that push server is forwarded to the OS vendor push server vendor push server 410).

이때 만약 해당 통신 사업자가 푸시 서버(push server)를 구축하지 않고 상위의 백업 푸시서버(backup push server)의 서비스를 이용하는 경우에는, 위의 타임아웃(time out)에 의한 지연(delay)을 없애기 위하여 가상 푸시 서버(virtual push server)를 구축하여 앱(app)으로부터의 푸시 서비스 요청(push service request)이 오는 경우 바로 이 요청을 상위 백업 푸시 서버(backup push server) 의 GGSN (gateway) 에 전달(forwarding)하거나 또는 해당 가상 푸시 서버(virtual push server) 앞단의 GGSN 에 BUSY 또는 네거티브 메시지(Negative message)를 보내 앱(app)으로부터의 푸시 서비스 요청(push service request)을 상위 백업 푸시서버(backup push server) 의 GGSN (gateway) 에 전달(forwarding)하도록 할 수 있다.In this case, if the service provider uses the service of the backup push server without building a push server, in order to eliminate the delay caused by the above time out, When a push service request comes from an app (app) by constructing a virtual push server, this request is forwarded to the GGSN (gateway) of the backup push server ) Or sends a push service request from the app to the upper backup push server by sending a BUSY or a negative message to the GGSN in front of the corresponding virtual push server. To the GGSN (gateway) of the GGSN.

푸시 서비스를 받는 중에 해당 푸시 서버에 문제가 생기는 경우에도 서비스를 안정적으로 제공하기 위해, 본 명세서에서는 다음의 2가지 방법이 사용 가능하다. In order to reliably provide the service even when the push server experiences a problem while receiving the push service, the following two methods are available in this specification.

첫 번째 방법으로, 해당 앱에서 지정된 킵 얼라이브 시간 내에 해당 푸시 서버에서 푸시 알림(push notification)이 오지 않는 경우, 스스로 해당 푸시 서버에 푸시 알림 서비스 등록 요청(push notification service registration request)를 다시 보내어 해당 푸시 서버가 제대로 동작하는지 확인하고, 제대로 동작하지 않는 경우, 백업 푸시 서버(backup push server)에 푸시 알림 서비스 등록 요청(push notification service registration request)를 보내어 서비스를 이용할 수 있다. 이 방법은 앱마다 각각 푸시 서버의 동작 상태를 모니터링하므로, 관련 시그널링 트래픽(signaling traffic)을 증가시키는 단점이 있고, 앱이 지속적으로 상태를 모니터링해야 하므로, 단말기의 로드가 증가하고, 배터리 사용시간이 짧아지는 단점이 있으나, 구현이 비교적 간편한 장점이 있다.As a first method, if a push notification is not received from the corresponding push server within a predetermined keep-alive time, the push notification service registration request is sent back to the corresponding push server by itself, If the server is not functioning properly, the service can be used by sending a push notification service registration request to the backup push server. This method has the disadvantage of increasing the signaling traffic associated with each of the apps because it monitors the operation status of the push server for each app, and because the app continuously monitors the status, the load of the terminal increases, However, it is relatively easy to implement.

두 번째 방법은 앱에서 푸시 알림 서비스 등록 요청(push notification service registration request)를 보낼 때 이를 받은 프라이머리 푸시 서버(primary push server)에서 해당 푸시 서버(primary push server)의 백업 푸시 서버(backup push server)에 이 값을 등록하고, 해당 백업 푸시 서버(backup push server)가 등록된 킵 얼라이브 간격(keep alive interval) 값들 중 최소의 값에 해당하는 주기로 푸시 서버(primary push server)의 동작을 확인하여 푸시 서버(primary push server)가 문제가 있다고 판단되는 경우, 킵 얼라이브 메시지(keep alive message)를 해당 앱에 보내 백업 푸시 서버(backup push server)에서 푸시 알림 서비스(push notification service)를 받도록 한다. 두 번째 방법을 사용하는 경우, 앱마다 각각 푸시 서버의 동작 상태를 모니터링 하는 대신, 백업 푸시 서버(backup push server)에서만 푸시 서버의 동작 상태를 모니터링 하므로, 관련 시그널링 트래픽을 감소시킬 수 있는 장점이 있다.
In the second method, when the application sends a push notification service registration request, the application receives a backup push server of the corresponding primary push server from a primary push server, The backup push server confirms the operation of the primary push server at a cycle corresponding to the minimum value of the keep alive interval values registered in the backup push server, (primary push server) has a problem, a keep alive message is sent to a corresponding application to receive a push notification service from a backup push server. In the second method, instead of monitoring the operation status of the push server for each application, the operation status of the push server is monitored only by the backup push server, thereby reducing the related signaling traffic .

도 5는 본 명세서의 일 실시예에 의한 푸시 서버들을 3계층으로 구성한 도면이다.FIG. 5 is a diagram illustrating push servers according to an embodiment of the present invention in three layers.

도 5의 실시예에서는 개념적으로, 푸시 서버들은 계층적으로 다음과 같이 3 계층으로 구성되어 운영된다. 일반적으로, 푸시 서비스는 통신사업자들이 운영하는 해당 지역에 구축된 푸시 서버들(MNO Push Server)(541, 542, 543, 551, 552, 553)에 의해 제공되며, 통신사업자들이 운영하는 푸시 서버들은 GSMA와 같은 통신사업자들이 구성한 단체에 의해 운영되는 전세계에 걸쳐 구축된 백업 푸시 서버(backup push servers)(521, 522)에 의해 백업된다. 그리고, 이러한 백업 푸시 서버는 다시 구글과 같은 OS 벤더들에 의해 운영되는 백업 푸시 서버(510)에 의해 백업된다. In the embodiment of FIG. 5, the push servers are hierarchically structured to operate in three layers as follows. In general, the push service is provided by push servers (MNO Push Servers) 541, 542, 543, 551, 552, and 553 installed in a corresponding region operated by communication carriers, and push servers operated by communication carriers Are backed up by backup push servers 521 and 522 built around the globe that are operated by organizations that are composed of carriers such as the GSMA. This backup push server is then backed up by the backup push server 510, which is again operated by OS vendors such as Google.

그러나, 본 명세서의 실시예를 적용함에 있어서 통신사업자들이 통신사업자 자체의 푸시 서버를 운용하지 않고, 앱들이 기본적으로 GSMA의 푸시 서버(521, 522)를 이용하도록 할 수도 있고, 앱들이 통신사업자정보의 푸시 서버들을 이용하지 않고, 바로 OS 벤더의 푸시 서버(510)를 이용하는 것도 가능하다. 따라서 도 5의 계층 구조는 일 실시예가 되며, 푸시 서버를 1계층으로, 혹은 2, 3, 4, 5 이상의 계층으로 구현되도록 할 수도 있다. 물론 MNO 푸시 서버들도 자체적으로 계층화를 시켜서 그 내부에 푸시 서버를 가지도록 구현할 수 있다.However, in applying the embodiment of the present invention, it is possible that the telecommunication carriers do not operate the push server of the telecommunication carrier itself but the apps basically use the GSMA push server 521, 522, It is also possible to use the push server 510 of the OS vendor directly without using push servers of the OS vendor. Therefore, the hierarchical structure of FIG. 5 is an embodiment, and the push server may be implemented as one layer, or two, three, four, five or more layers. Of course, MNO push servers can also be layered by themselves and implemented with a push server inside.

도 5와 같은 푸시 서버 네트워크 구조(push server network architecture)는 다음과 같은 장점을 갖는다. The push server network architecture shown in FIG. 5 has the following advantages.

1) 네트워크 부하문제 때문에 통신 사업자들의 입장에서는 시급히 푸시 서버가 필요한 시간적 요구사항을 만족시킬 수 있다. 1) Due to the network load problem, it is possible for the service providers to meet the time requirement that urgently needs the push server.

2) 통신사업자들은 각자의 상황에 따라 독자적인 푸시 서버를 운용하거나 또는 독자적인 푸시 서버없이, 필요한 경우에만, GSMA 또는 OS 벤더의 푸시 서버를 이용 가능하다.2) Operators can use their own push servers according to their own situation, or push servers of GSMA or OS vendors only when necessary, without proprietary push servers.

3) 서비스 제공을 위한 서버들이 표준화 되어 위와 같이 구축되면, 서버의 고장이나 지역적인 자연재해에도 서비스가 끊김없이(seamless) 제공 가능하므로, 서비스의 신뢰성이 높아진다. 3) When the servers for service provision are standardized and constructed as described above, the service can be seamlessly provided even in the event of a server failure or a local natural disaster, thereby enhancing the reliability of the service.

4) 각 사업자들이 서버 실패에 대비하기 위한 자체적인 서버 이중화 대신 전세계적인 백업 서버 네트워크(backup server network) 구축으로 비용 절감이 가능하다.4) It is possible to reduce costs by establishing a worldwide backup server network instead of the own server redundancy for each operator to prepare for server failure.

5) 개발자들의 입장에서도 통신사업자의 푸시 서버이든, OS 벤더의 푸시 서버이든 동일한 방법으로 푸시 알림 서비스(push notification service) 이용이 가능하게 되어, 개발이 쉬워지며, 푸시 서버의 안정성이 높아져 앱에 의해 제공되는 서비스의 신뢰성이 높아진다. 5) For developers, it is possible to use the push notification service in the same way as the push server of the communication carrier or the OS vendor, so that the development becomes easier, the stability of the push server becomes higher, The reliability of the provided service is enhanced.

6) 개발자들이 지금까지와는 달리 푸시 알림 서비스(push notification service)와 관련한 파라메터(parameter)들을 네트워크 API를 통해 직접 설정 가능하므로, 보다 앱에 최적화된 푸시 알림 서비스(push notification service) 이용이 가능하게 되어, 앱의 실행환경이 최적화된다. 그러나 이러한 파라메터들은 네트워크 로드나 통신사업자의 정책에 따라 사전에 합의된 기준에 따라 변경될 수 있다.
6) It is possible for the developers to set the parameters related to the push notification service directly through the network API, so that it is possible to use the push notification service more optimized for the application, Your app's execution environment is optimized. However, these parameters can be changed according to the network load or carrier's policy and agreed upon in advance.

도 6은 본 명세서의 일 실시예에 의한 시그널링을 보여주는 도면이다.6 is a diagram illustrating signaling according to an embodiment of the present invention.

앞서 살펴본 푸시 서버 네트워크 구조를 이용하는 서비스 제공을 위한 구성 요소 들 간의 시그널링은 다음과 같다. 스마트폰에서 동작하는 앱(610)에서 해당 통신사업자의 프라이머리 푸시 서버(primary push server)(630)로 푸시 알림 서비스 등록 요청 메시지(push notification service registration request message)를 보낸다(S671, S672). 해당 통신사업자의 푸시 서버(630)는 현재 부하상태를 체크하고(S673), 현재 부하가 여유가 있을 경우는, 해당 앱 서버(App Server)(640)에게 연결 요청(connection request)을 보내어 연결을 맺고(S674, S675), 킵 얼라이브 간격(keep alive interval)을 백업 푸시 서버(backup push server)(650)에 등록한 후(S676, S677), ACK 메시지를 보내어(S678, S679), 푸시 서비스를 제공하게 된다. 이때, 푸시 알림 서비스 등록 요청 메시지는 다음의 정보를 포함한다. 앞서 S673 단계는 로드를 체크해서 요청된 아이템을 서비스 리스트에 등록하는 것을 의미한다(Check load and register the requested item to the service list)Signaling among the components for providing the service using the push server network structure as described above is as follows. The application 610 operating in the smartphone sends a push notification service registration request message to the primary push server 630 of the corresponding communication provider (S671, S672). The push server 630 of the corresponding communication company checks the current load state at step S673 and if there is a current load, the push server 630 sends a connection request to the corresponding app server 640, (S674, S675), registers the keep alive interval in the backup push server 650 (S676, S677), sends an ACK message (S678, S679), and provides the push service . At this time, the push notification service registration request message includes the following information. In step S673, the load is checked and the requested item is registered in the service list (Check load and register the requested item to the service list)

[푸시 알림 서비스 등록 요청 메시지에 포함되는 정보(push notification service registration request message)][Push notification service registration request message]

app_id, mobile_id, app_server_IP_address, InactiveTimer, KeepAliveInterval, PushIntervalapp_id, mobile_id, app_server_IP_address, InactiveTimer, KeepAliveInterval, PushInterval

이때 앱 서버(App Server)가 가짜가 아니라 실제 앱 서버(App Server)인지를 확인하기 위해 앱(App)은 푸시 서비스 요청(push service request) 시에 실행코드 내에 저장된 소정의 비밀키 (secret key)값을 보내고, 푸시 서버(push server)는 앱 서버(app server)로부터 해당 키 값을 받아 비교하는 절차를 거칠 수 있다.At this time, in order to confirm whether the app server is not a fake but an actual app server, the app stores a predetermined secret key stored in the executable code at the time of push service request, Value, and the push server may receive the key value from the app server and compare the key value.

도 6을 정리하면, 푸시 서비스를 제공하는 과정에서 프라이머리 푸시서버(630)에 부하가 있을 경우, 백업 푸시 서버(backup push server)(650)에서 푸시 서비스를 제공할 수 있다.
Referring to FIG. 6, if there is a load on the primary push server 630 in the process of providing the push service, the backup push server 650 can provide a push service.

도 7은 본 명세서의 다른 실시예에 의한 시그널링을 보여주는 도면이다.7 is a diagram illustrating signaling according to another embodiment of the present disclosure.

해당 모바일 네트워크와 해당 푸시 서버를 연결하는 GGSN(720)이 해당 푸시 서버(730)의 고장 또는 오버 로드상태를 파악하기 위해 해당 등록 요청 메시지(registration request message)를 지정된 해당 푸시 서버(730)에 보내고(S781, S782), 만약 일정 시간(time t) 내에 ACK 응답이 없으면, 해당 푸시 서버(730)를 고장으로 판단한다(S783). 만약 BUSY 메시지를 응답으로 받으면, 해당 푸시 서버(730)를 오버로드로 판단한다(S783). 해당 푸시 서버(730)가 고장 또는 오버로드인 경우, 해당 GGSN(720, 740)은 해당 푸시 서버(730)로의 푸시 서비스 요청(push service request)을 백업 푸시 서버(750)로 전달한다. 만약 마찬가지로 GGSN(720, 740)에서 백업 푸시 서버(750) 또한 고장나거나 로드가 집중되어 더 이상 푸시 서비스를 제공할 수 없다고 판단하는 경우, 해당 푸시 서버로의 푸시 서비스 요청은 상위 백업 푸시 서버인 OS 벤더 푸시 서버(770)으로 전달 될 수 있다. 도 7에는 3 개의 푸시 서버(730, 750, 770)이 있으며, 각 푸시 서버의 부하에 따라 푸시 서비스는 상위 계층으로 전달된다.
The GGSN 720 connecting the mobile network and the corresponding push server sends a registration request message to the designated push server 730 in order to grasp the failure or overload state of the push server 730 (S781, S782). If there is no ACK response within a predetermined time (time t), it is determined that the corresponding push server 730 has failed (S783). If the BUSY message is received in response, the push server 730 is determined to be an overload (S783). The corresponding GGSN 720 and 740 delivers a push service request to the corresponding push server 730 to the backup push server 750 if the corresponding push server 730 fails or is overloaded. If the GGSN 720, 740 also determines that the backup push server 750 also fails or is under load and can no longer provide push services, the push service request to that push server is forwarded to the OS To the vendor push server 770. In FIG. 7, there are three push servers 730, 750, and 770, and the push service is delivered to the upper layer according to the load of each push server.

도 8은 본 명세서의 또다른 실시예에 의한 시그널링을 보여주는 도면이다.8 is a diagram illustrating signaling according to another embodiment of the present disclosure.

푸시 알림 서비스(Push notification service)가 제공되는 중에 해당 백업 푸시 서버(backup push server)(850)는 등록된 킵 얼라이브 간격(keep alive interval)값들 중 최소의 값에 해당하는 주기로 프라이머리 푸시 서버(primary push server) (830)의 동작을 확인한다(S861, S862, S863). 상위 계층의 푸시 서버는 하위 계층의 푸시 서버의 동작을 확인하여, 상기 상위 계층의 푸시 서버보다 푸시 서비스의 요청을 먼저 받게 되는 하위 계층의 푸시 서버에서 푸시 서비스가 제대로 동작될 수 있는지를 체크할 수 있다.
While the push notification service is being provided, the backup push server 850 may send a primary push server (primary) to the primary push server in a period corresponding to a minimum of the registered keep alive interval values push server 830 (S861, S862, S863). The push server of the upper layer confirms the operation of the push server of the lower layer and can check whether the push service can be properly operated in the push server of the lower layer which receives the push service request first than the push server of the upper layer have.

도 9는 본 명세서의 또다른 실시예에 의한 시그널링을 보여주는 도면이다.9 is a diagram illustrating signaling according to another embodiment of the present disclosure.

프라이머리 푸시 서버(primary push server)(930)가 문제가 있다고 판단되는 경우(S961, S962), 킵 얼라이브 메시지(keep alive message)를 해당 앱에 보낸다(S963). 해당 메시지를 받은 앱(910)은 앞서 설명한 바와 같이, 수신한 푸시 알림 서비스 등록 요청(push notification service registration request) 메시지를 다시 프라이머리 푸시 서버(primary push server)(930)에 보내어 서비스를 다시 이용하게 된다(S964, S965). If the primary push server 930 determines that there is a problem (S961, S962), it sends a keep alive message to the corresponding application (S963). The application 910 receiving the message sends the received push notification service registration request message to the primary push server 930 again to use the service again (S964, S965).

앱(app)에서 푸시 서버(push server)에서 비밀키(secret key)를 받아 앱 서버(app server)에 보내고, 다시 비밀키(secret key)를 앱 서버(app server)에 보내 앱 서버(app server)에서 푸시 서버(push server)와의 연결을 맺게 되는 경우 메시지 플로우(message flow)는 다음과 같이 수정된다. 이때 앱 서버(app server)가 가짜가 아니라 실제 앱 서버(app server)인지를 확인하기 위해 앱(App)은 푸시 서비스 요청(push service request) 시에 푸시 서버(push server)에서 받은 소정의 키 (secret key)값을 보내고, 푸시 서버(push server)는 앱 서버(app server)로부터 해당 키 값을 받아 비교하는 절차를 거칠 수 있다. In the app, a secret key is received from the push server and sent to the app server. The secret key is sent to the app server to send the app server ), The message flow is modified as follows when a connection with a push server is established. At this time, in order to check whether the app server is not a fake but an actual app server, the app stores a predetermined key received from a push server at a push service request secret key value, and the push server can receive the key value from the app server and compare the key value.

또는 통신사업자는 백업 푸시 서버(backup push server)의 비밀키(secret key)만을 발행하는 가상 서버(virtual server)만을 운영하고, 앱(app)에서 푸시 서비스(push service)를 요청하는 경우, 푸시 서버(push server)의 비밀키(secret key)를 발행하고 이를 백업 푸시 서버(backup push server)의 IP 주소(IP address)와 함께 app에 전송하여 해당 앱(app)이 바로 백업 푸시 서버(backup push server)의 푸시 서비스(push service)를 사용하도록 할 수 도 있다.Alternatively, the communication service provider may operate only a virtual server that issues only a secret key of a backup push server, and when a push service is requested in an app, the application sends a secret key of the push server and transmits it to the app together with the IP address of the backup push server so that the app can be directly connected to the backup push server ) Push service may be used.

또한 통신사업자는 앱(app)에서 푸시 서비스(push service)를 요청하는 경우, 해당 요청을 바로 백업 푸시 서버로 전달하는 가상 서버(virtual server)만을 운영하여, 이후 비밀키(secret key)를 발행하는 단계부터 해당 앱(app)이 바로 백업 푸시 서버(backup push server)의 푸시 서비스(push service)를 사용하도록 할 수 도 있다.Further, when a service provider requests a push service from an app, the service provider operates only a virtual server that directly transmits the request to the backup push server, and then issues a secret key The application may allow the push service of the backup push server to be used immediately.

도 9의 프로세스에서 프라이머리 푸시서버(930)에 오류가 발생한 후, 앱들이 푸시 서비스를 받을 수 있도록 연결을 재설정하는 과정에서, 백업 푸시 서버(950)이 새로운 프라이머리 푸시 서버의 정보를 앱에게 제공할 수 있다. 이는 프라이머리 푸시 서버(930)를 새로운 프라이머리 푸시 서버로 교체하는 경우 적용할 수 있다. In the process of FIG. 9, after an error has occurred in the primary push server 930, in the process of resetting the connection so that the apps can receive the push service, the backup push server 950 sends the information of the new primary push server to the app . This can be applied when replacing the primary push server 930 with a new primary push server.

도 10은 본 명세서의 일 실시예에 의한 도면이다. 10 is a diagram according to an embodiment of the present invention.

도 10에서는 가상 서버(virtual server)에서 요청(request)을 다음 단으로 포워딩(forwarding)하는 대신 regID+push server address를 발행하여 바로 백업 푸시 서버(backup push server)의 서비스를 이용가능 하도록 한다. 도 10에서는 앱(1010)이 할당받은 백업 푸시 서버(1050)의 주소로 새로이 접속하되 이러한 접속의 보안성을 유지하기 위하여 앱(1010)이 보안 통신을 수행하여 백업 푸시 서버(1050)로 접속을 수행할 수 있도록 한다.
In FIG. 10, the service of the backup push server is made available by issuing the regID + push server address instead of forwarding the request from the virtual server to the next step. 10, in order to maintain the security of the connection, the application 1010 performs secure communication and connects to the backup push server 1050 by newly connecting to the address of the backup push server 1050 allocated by the application 1010 To be performed.

또한 앱(app)(1010)과 앱 서버(app server)(1040)와의 보안통신을 위한 PKI (Public Key Infrastructure) 구성을 위해 푸시 서비스 요청(push service request) 시에 푸시 서버(push server)에서 인코딩(encoding)과 디코딩(decoding)을 위한 키 페어(key pair)를 보낼 수도 있다.Also, in order to configure a PKI (Public Key Infrastructure) for secure communication between an app (app) 1010 and an app server (1040), a push server a key pair for encoding and decoding may be sent.

즉, 도 10에서 앱(App)(1010)에 비밀키(secret key)를 보낼 때 그리고 앱 서버(app server)(1040)에게 ack를 보낼 때 인코딩(encoding)과 디코딩(decoding)을 위한 키 페어(key pair)를 보낼 수도 있다.
That is, when transmitting a secret key to an app 1010 and sending an ack to an app server 1040 in FIG. 10, a key pair for encoding and decoding, (key pair).

참고로, PKI(Public Key Infrastructure)에 대해 간략히 살펴보면 다음과 같다. For reference, PKI (Public Key Infrastructure) will be briefly described as follows.

이는 인터넷 사용자가 보유한 암호를 이용해 거래자 신원 확인하는 방식으로, 암호화와 복호화 키로 구성된 공개키(Public Key)를 이용해 송, 수신 데이터를 암호화하고 디지털 인증서를 통해 사용자를 인증하는 시스템이다. This is a system that identifies a trader by using a password possessed by an Internet user, encrypts the transmitted and received data using a public key composed of encryption and decryption keys, and authenticates the user through a digital certificate.

암호화 알고리즘 RSA(비대칭키 암호화), 데이터 B, 키값 C 입력받아 암호화된 데이터 B_C만들어낼 수 있다. 예를 들어, 다음과 같이 진행된다.
Encryption algorithm RSA (asymmetric key encryption), data B, and key value C to generate encrypted data B_C. For example, proceed as follows.

RSA(B,C)=B_C
RSA (B, C) = B_C

공개키 C_pub, 개인키 C_pri 유일하게 존재하며, 인증기관에서 관리한다.Public key C_pub, and private key C_pri, and is managed by the certification authority.

RSA(B, C_pub) = B_C_pub, RSA(B, C_pri) = B_C_pri 이면RSA (B, C_pub) = B_C_pub, and RSA (B, C_pri) = B_C_pri

RSA(B_C_pub, C_pri) = RSA(B_C_pri, C_pub) = B 인 성질을 가진다.RSA (B_C_pub, C_pri) = RSA (B_C_pri, C_pub) = B.

개인키로 암호화한 것은 공개키로 풀리고, 공개키로 암호화한 것은 개인키로 풀리게 된다. The private key is decrypted with the public key, and the public key is decrypted with the private key.

공개키 C_pub 알림은 다음과 같다. The public key C_pub notification is as follows.

송신자--(C_pri로 암호화)-->수신자(C_pub로 풀림: 송신자가 보냈음을 확인)Sender - (encrypted with C_pri) -> receiver (unpacked with C_pub: confirm sender sent)

송신자--(C_pub로 암호화)-->수신자(C_pri로 풀림: 수신자(나)에게 보낸 것이 맞는지 확인) Sender - (Encrypted with C_pub) -> Recipient (Unpacked with C_pri: Make sure it is sent to the recipient (B))

데이터 암호화하는 방법은 다음과 같다. Here's how to encrypt your data:

비밀키는 송, 수신자 양측에서 똑같은 비밀키를 공유한다.The secret key shares the same secret key on both sides of the sender and receiver.

공개키는 암호화와 복호화 키가 다르기 때문에 데이터를 암호화하고 이를 다시 풀 수 있는 열쇠가 달라 거의 완벽한 데이터 보안이 가능하고 정보유출의 가능성이 적은 시스템이다.
Since public keys have different encryption and decryption keys, they have the key to encrypt and re-encrypt the data, making it possible to secure almost complete data security and less information leakage.

이하, 본 발명을 구현하기 위한 세부 실시예를 살펴보고자 한다.Hereinafter, detailed embodiments for implementing the present invention will be described.

도 11은 하나의 푸시 서버로 구성된 경우를 보여주는 도면이다. 11 is a diagram showing a case where the push server is composed of one push server.

도 11에서 사용 가능한 옵션은 다음과 같다.The options available in FIG. 11 are as follows.

1110은 본 명세서의 일 실시예에 의한, 하나의 푸시 서버 동작을 보여주는 도면이다. 통상의 푸시 서버 동작을 보여준다. 어플리케이션(APP)(1111)이 푸시 클라이언트(push client)(1112)를 통하여 사용자 계정 정보(User Account)를 푸시 서버(1115)에게 제공하면, 푸시 서버(1115)는 등록 식별 정보(Reg ID)를 어플리케이션(1111)에게 제공한다. 어플리케이션(1111)은 수신한 등록 식별 정보(Reg ID)와 사용자 계정 정보(User Account)를 앱 서버(1118)에게 제공하면, 앱 서버(1118)는 등록 식별 정보(Reg ID)와 푸시 서비스로 제공할 데이터를 푸시 서버(1115)에게 제공하고, 푸시 서버(1115)는 상기 데이터를 해당하는 푸시 클라이언트(1112)에게 제공한다. 1110 is a diagram illustrating one push server operation according to an embodiment of the present invention. It shows the normal push server operation. When the application (APP) 1111 provides the user account information to the push server 1115 through the push client 1112, the push server 1115 transmits the registration ID information (Reg ID) And provides it to the application 1111. When the application 1111 provides the received registration identification information (Reg ID) and user account information (User Account) to the application server 1118, the application server 1118 transmits the registration identification information (Reg ID) The push server 1115 provides the data to the push server 1115, and the push server 1115 provides the data to the corresponding push client 1112. [

한편, 이 과정에서 표준화할 수 있는 인터페이스로는, 1120과 같이, 앱(1121)과 푸시 클라이언트(1122)간의 인터페이스(In Between App-Push Client), 푸시 클라이언트(1122)와 푸시 서버(1125)간의 인터페이스(In Between Push Client-Push Server), 그리고, 푸시 서버(1125)와 앱 서버(1128) 간의 인터페이스(In Between Push Server - App Server)가 존재할 수 있다. 또한, 푸시 서버 구조에 따라 푸시 클라이언트의 인터페이스가 필요할 수 있다. The interface standardized in this process includes an interface between the application 1121 and the push client 1122 and an interface between the push client 1122 and the push server 1125, Interface between the push server 1125 and the application server 1128, and an interface between the push server 1125 and the application server 1128 (In Between Push Server and App Server). Also, depending on the push server architecture, a push client interface may be required.

푸시 서버 표준화(Push server standardization)에 있어서, 표준화 할것인지 말 것인지(Standardize or not), 만약 표준화를 한다면 어떻게 할 것인지(If standardize, how to do that?), 푸시 서버 간의 인터오퍼레이션을 위한 구현 옵션은 무엇인지?(Implementation options for interoperation of push servers), 이 경우, 중앙 관리 서버(Central Management Server)와 백업 푸시 서버(Backup Push Server)를 고려할 수 있다.
For push server standardization, standardize or not, if standardize, how to do that, and implementation options for interoperation between push servers, In this case, a central management server and a backup push server may be considered.

중앙 관리 서버(Central Management Server)의 역할은 다음과 같다.The role of the Central Management Server is as follows.

해당하는 푸시 서버의 IP 주소에 대한 정보를 제공하여, 각각의 앱들이 해당하는 푸시 서버에 의해 푸시 서비스를 받을 수 있도록 한다(Provides information about the IP address of the corresponding push server so that each app can use the push service provided by the corresponding push server.). 그리고 앱과 앱 서버 인증 서비스를 제공한다(Provides app and app server authentication service)Provide information about the IP address of the corresponding push server so that each application can receive the push service by the corresponding push server. push service provided by the corresponding push server. Provides app and app server authentication service (Provides app and app server authentication service)

중앙 관리 서버(Central Management Server)의 장점은 다음과 같다.The advantages of the Central Management Server are as follows.

심플하며 간단한 구조를 가능하게 한다(Enables more simple and straightforward architecture.) 또한, 앱 서버 인증을 위한 PKI 없이 앱을 가장 쉽게 개발할 수 있도록 한다(Enables easier app development without PKI(Public Key Infrastructure) for app server authentication). 또한 MNO가 하나의 공통된 푸시 클라이언트를 이용할 수 있도록 한다(Enables MNOs to use one single common push client.)
Enables the simplest and simplest structure (Enables more simple and straightforward architecture.) It also makes it easiest to develop an app without a PKI for app server authentication (Enables easier app development without PKI ). It also allows MNOs to use a common push client (Enables MNOs to use a single common push client.)

도 12는 본 명세서의 일 실시예에 의한 중앙 관리 서버를 보여주는 도면이다. 12 is a diagram illustrating a central management server according to an embodiment of the present invention.

앱 개발자들은 그들의 앱과 앱 서버를 중앙 관리 서버에 미리 등록해야 한다(App developers should register theirs App and App Server to the Central Management Server in advance.) 보다 상세히 살펴보면 다음과 같다.App developers should register their apps and app servers with the central management server in advance (App developers should register their apps and apps to the Central Management Server in advance.)

도 12의 주요 개체는 중앙 관리 서버(Central Management Server, 1280), 앱 서버(App Server, 1290), 그리고 MNO A의 푸시서버(MNO A Push server, 1230), MNO B의 푸시 서버(MNO B Push Server, 1240)과 공통의 푸시 클라이언트(Common push client, 1210)이 존재한다. 이들 간의 정보 교환 과정을 살펴보면 다음과 같다.12 includes a central management server 1280, an app server 1290, and a push server MNO A Push server 1230, a push server MNO B Push Server 1240, and a common push client 1210 exist. The process of exchanging information among them is as follows.

1. 푸시 클라이언트(1210)에서 중앙 관리 서버(1280)로 "푸시 서비스 요청(Push Service Request)" 메시지를 송신한다.1. Push client 1210 sends a "Push Service Request" message to central management server 1280.

2. 중앙 관리 서버(1280)는 푸시 클라이언트(1210)에게 "푸시 서버 IP 주소(Push Serve IP Address)"를 제공한다.2. The central management server 1280 provides the push client 1210 with a "push server IP address ".

3. 푸시 클라이언트(1210)는 MNO A의 푸시서버(1230)에게 "사용자 계정 정보와 앱 식별 정보(User Account + App ID)"를 제공한다. 3. Push client 1210 provides "user account information and app identification information (User Account + App ID)" to push server 1230 of MNO A.

4. MNO A의 푸시서버(1230)는 푸시 클라이언트(1210)에게 "등록 식별 정보(Reg ID)"를 제공한다.4. Push server 1230 of MNO A provides "registration identification information (Reg ID)" to push client 1210.

5. 푸시 클라이언트(1210)는 앱 서버(App Server, 1290)에게 "사용자 계정 정보와 등록 식별 정보(User Account + Reg ID)"를 제공한다. 5. The push client 1210 provides "User account information and registration identification information (User Account + Reg ID)" to the app server (App Server)

6. 앱 서버(App Server, 1290)는 MNO A의 푸시서버(1230)에게 "등록 식별 정보, 인증 정보, 데이터(Reg ID + Auth ID + Data)"를 제공한다. 상기 데이터는 푸시 서비스로 제공할 데이터이다.6. The app server 1290 provides "registration ID information, authentication information, data (Reg ID + Auth ID + Data)" to the push server 1230 of the MNO A. The data is data to be provided to the push service.

B_4. 한편 앱 서버(App Server, 1290)는 MNO B의 푸시서버(1240)에게도 " 등록 식별 정보, 인증 정보, 데이터(Reg ID + Auth ID + Data)"를 제공한다.B_4. On the other hand, the app server 1290 also provides "registration identification information, authentication information, data (Reg ID + Auth ID + Data)" to the push server 1240 of the MNO B.

B_5. MNO B의 푸시서버(1240)는 중앙 관리 서버(1280)에게 인증 정보(Auth ID)를 제공한다.B_5. The push server 1240 of MNO B provides authentication information (Auth ID) to the central management server 1280.

B_6. 중앙 관리 서버(1280)는 MNO B의 푸시서버(1240)에게 인증 정보를 확인한다. B_6. The central management server 1280 confirms the authentication information to the push server 1240 of the MNO B. [

7. MNO A의 푸시서버(1230)는 중앙 관리 서버(1280)에게 "앱 식별 정보, 인증 정보(App ID+ Auth ID)를 제공한다.7. Push server 1230 of MNO A provides "app identification information, authentication information (App ID + Auth ID)" to central management server 1280.

8. 중앙 관리 서버(1280)는 MNO A의 푸시서버(1230)에게 제공받은 정보를 확인(Confirm)한다.8. The central management server 1280 confirms the information provided to the push server 1230 of the MNO A.

9. MNO A의 푸시서버(1230)는 푸시 클라이언트(1210)에게 데이터를 제공한다.
9. Push server 1230 of MNO A provides data to push client 1210.

도 13은 본 명세서의 다른 실시예에 의한 중앙 관리 서버를 보여주는 도면이다.13 is a view showing a central management server according to another embodiment of the present invention.

도 13에서는 푸시 서버 1에 대한 대안적 접근을 보여준다(An alternative approach for routing to the push server 1).Figure 13 shows an alternative approach to push server 1 (an alternative approach to routing server 1).

앱 개발자들은 반드시 그들의 앱과 앱서버를 하나 이상의 MNO에 등록하며, 모든 푸시 서버는 해당하는 MNO의 인증 서버를 인증을 위해 요청한다(App developers should register their App and App Server to one or more MNOs. Every push server should ask the corresponding MNO’s authentication server for authentication.). 모든 MNO는 자신의 푸시 클라이언트를 개발한다(Every MNO should develop its own push client.)App developers must register their apps and app servers with one or more MNOs, and all push servers request authentication for their MNO's authentication server (App developers should register their App and App Server to one or more MNOs. Every push server should ask for the corresponding MNO's authentication server for authentication. Every MNO develops its push client (Every MNO should develop its own push client.)

도 13에서 MNO A에서 동작하는 푸시 클라이언트(Push Client for MNO A, 1311)과 MNO B에서 동작하는 푸시 클라이언트(Push Client for MNO B, 1312)는 각각 MNO A의 푸시 서버(MNO A Push server, 1330), MNO B의 푸시 서버(MNO B Push server, 1340)과 푸시 서비스를 이용한다. 13, a push client (MNO A) 1311 operating in the MNO A and a push client (MNO B) 1312 operating in the MNO B are respectively connected to a MNO A push server 1330 ), A push server (MNO B Push server, 1340) of the MNO B, and a push service.

1_A, 1_B. 각각의 푸시 클라이언트(1311 1312)는 각각의 푸시 서버(1330, 1340)에게 "사용자 계정 정보(User Account)"를 제공한다. 1_A, 1_B. Each push client 1311 1312 provides "User Account Information" to each push server 1330,1340.

2_A, 2_B. 각각의 푸시 서버(1330, 1340)는 각각의 푸시 클라이언트(1311 1312)에게 식별 정보(Reg ID)를 제공한다.2_A, 2_B. Each push server 1330, 1340 provides identification information (Reg ID) to each push client 1311 1312.

3_A, 3_B. 각각의 푸시 클라이언트(1311 1312)는 계정 정보와 등록 식별 정보(User Account+ RegID)를 앱 서버(1390)에게 제공한다.3_A, 3_B. Each push client 1311 1312 provides account information and registration identification information (User Account + RegID) to the app server 1390.

4_A, 4_B. 앱 서버(1390)는 각각의 푸시 서버(1330, 1340)에게 등록 식별 정보와 푸시 서비스로 제공할 데이터(Reg ID + Data)를 제공한다.4_A, 4_B. The app server 1390 provides registration ID information and data (Reg ID + Data) to be provided as a push service to each of the push servers 1330 and 1340.

5_A, 5_B. 각각의 푸시 서버(1330, 1340)는 각각의 푸시 클라이언트(1311 1312)에게 푸시 서비스로 제공할 데이터(Data)를 제공한다.
5_A, 5_B. Each push server 1330, 1340 provides data (Data) to provide to each push client 1311 1312 as a push service.

도 14는 본 명세서의 또다른 실시예에 의한 중앙 관리 서버를 보여주는 도면이다.14 is a view showing a central management server according to another embodiment of the present invention.

앱 서버 인증에 대한 대안적 접근(1)이다(An alternative approach for app server authentication 1). 모든 개발자는 반드시 그들의 앱과 앱서버를 하나 이상의 MNO에 등록하며, 모든 푸시 서버는 해당하는 MNO의 인증 서버를 인증을 위해 요청한다(App developers should register their App and App Server to one or more MNOs. Every push server should ask the corresponding MNO’s authentication server for authentication.)This is an alternative approach for app server authentication (1). All developers must register their apps and app servers with one or more MNOs, and all push servers will ask for authentication of their MNO's authentication server (App developers should register their App and App Server to one or more MNOs. Every push server should ask for the corresponding MNO's authentication server for authentication.)

1. 푸시 클라이언트(1410)는 MNO A의 푸시서버(1430)에게 "사용자 계정 정보와 앱 식별 정보(User Account + App ID)"를 제공한다. 1. Push client 1410 provides "user account information and app identification information (User Account + App ID)" to push server 1430 of MNO A.

2. MNO A의 푸시서버(1430)는 푸시 클라이언트(1410)에게 "등록 식별 정보(Reg ID)"를 제공한다.2. The push server 1430 of the MNO A provides "registration identification information (Reg ID)" to the push client 1410.

3. 푸시 클라이언트(1410)는 앱 서버(App Server, 1490)에게 "사용자 계정 정보와 등록 식별 정보(User Account + Reg ID)"를 제공한다. 3. The push client 1410 provides "user account information and registration identification information (User Account + Reg ID)" to the app server (App Server) 1490.

4. 앱 서버(App Server, 1490)는 MNO A의 푸시서버(1430)에게 "등록 식별 정보, 인증 정보, 데이터(Reg ID + Auth ID + Data)"를 제공한다. 상기 데이터는 푸시 서비스로 제공할 데이터이다. 상기 인증 정보는 홈 푸시 서버에 대한 정보(Home Push Server Information)를 포함한다. 4. The app server 1490 provides "registration ID information, authentication information, data (Reg ID + Auth ID + Data)" to the push server 1430 of the MNO A. The data is data to be provided to the push service. The authentication information includes information about a home push server (Home Push Server Information).

5. MNO A의 푸시서버(1430)는 MNO B의 푸시서버(1440)에게 앱 식별 정보와 인증 정보(App ID+Auth ID)를 제공한다.5. Push server 1430 of MNO A provides app identification information and authentication information (App ID + Auth ID) to push server 1440 of MNO B. [

6. MNO B의 푸시서버(1440)는 MNO A의 푸시서버(1430)에게 제공받은 정보를 확인(Confirm)한다.6. The push server 1440 of the MNO B confirms the information provided to the push server 1430 of the MNO A.

7. MNO A의 푸시서버(1430)는 푸시 클라이언트(1410)에게 푸시 서비스로 제공할 데이터(Data)를 제공한다.
7. Push server 1430 of MNO A provides data (Data) to be provided to push client 1410 as a push service.

도 15는 본 명세서의 또다른 실시예에 의한 중앙 관리 서버를 보여주는 도면이다.15 is a view showing a central management server according to another embodiment of the present invention.

앱 서버 인증 에 대한 대안적 접근(2)이다(An alternative approach for app server authentication 2).An alternative approach to app server authentication is (2).

앱을 위한 별도의 인증은 없다. 푸시 서버는 단지 요청에 따라 푸시 서비스를 제공한다. 앱 개발자는 앱 서버와 앱 간에 PKI를 이용한 보안 통신에 대해서만 책임을 진다. (No authentication for app servers. Push servers just provide push service whenever it is requested. App developers are responsible for the security communication between the App Server and the App using PKI.)There is no separate authentication for the app. The push server provides a push service only upon request. The app developer is solely responsible for secure communication between the app server and the app using PKI. (No authentication for app servers.) Push servers provide a push service whenever it is requested.

도 15에서 푸시 클라이언트(1410)와 앱 서버(1590) 간에는 PKI 통신을 수행한다. In FIG. 15, PKI communication is performed between the push client 1410 and the application server 1590.

1. 푸시 클라이언트(1410)는 MNO A의 푸시서버(1530)에게 "사용자 계정 정보 (User Account)"를 제공한다. 1. Push client 1410 provides "User Account" to push server 1530 of MNO A.

2. MNO A의 푸시서버(1530)는 푸시 클라이언트(1510)에게 "등록 식별 정보(Reg ID)"를 제공한다.2. The push server 1530 of the MNO A provides the push client 1510 with "registration identification information (Reg ID) ".

3. 푸시 클라이언트(1510)는 앱 서버(App Server, 1590)에게 "사용자 계정 정보와 등록 식별 정보(User Account + Reg ID)"를 제공한다. 3. Push client 1510 provides "User account information and registration identification information (User Account + Reg ID)" to App server 1590.

4. 앱 서버(App Server, 1590)는 MNO A의 푸시서버(1530)에게 "등록 식별 정보, 데이터(Reg ID + Data)"를 제공한다. 상기 데이터는 푸시 서비스로 제공할 데이터이다.4. App server 1590 provides "registration ID information, data (Reg ID + Data)" to push server 1530 of MNO A. The data is data to be provided to the push service.

5. MNO A의 푸시서버(1530)는 푸시 클라이언트(1510)에게 푸시 서비스로 제공할 데이터(Data)를 제공한다.
5. Push server 1530 of MNO A provides data (Data) to be provided to push client 1510 as a push service.

백업 푸시 서버Backup Push Server)에 대해 살펴보면 다음과 같다.Backup Push Server) is as follows.

백업 푸시 서버의 롤(role)은 MNO 푸시 서버를 이용할 수 없거나 존재하지 않는 경우 푸시 서비스를 제공한다(Provides push service when MNO push server is not available or does not exist)The backup push server role provides a push service when the MNO push server is unavailable or does not exist (Provide push service when MNO push server is not available or does not exist)

백업 푸시 서버의 장점으로는 다음과 같다. Advantages of the backup push server include:

MNO가 지역적 재해 또는 거대한 트래픽으로 인한 네트워크 붕괴가 일어난 경우 푸시 서버를 이용할 수 있다(Enables MNOs to use push server in case of regional disasters or network collapse due to excessive traffic.)MNOs can use a push server in the event of a local disaster or a network collapse due to massive traffic. (Enables MNOs to use push servers in regional disasters or network collapse due to excessive traffic.)

MNO는 선택적으로 푸시 서비스를 제공할 수 있다(Enables MNOs to optionally provide push service.)MNOs can optionally provide push services (Enables MNOs to provide provide push service.)

MNO가 그들만의 푸시 서버를 구동하지 않도록 옵션을 정할 수 있다Gives MNOs an option not to operate their own push server. )MNOs can set options so that they do not run their own push servers. )

MNO가 개발, 구현, 동작과 관련한 비용을 절감할 수 있다(Enables MNOs to save expenses for development, implementation and operation. )
MNOs can reduce development, implementation, and operational costs (Enables MNOs to save expenses for implementation and operation.)

도 16은 본 발명의 일 실시예에 의한 백업 푸시 서버를 보여주는 도면이다.16 is a diagram illustrating a backup push server according to an embodiment of the present invention.

도 16에서는 MNO가 그들만의 푸시 서버를 구동하지 않도록 옵션을 제공한 경우(Provides options not to operate MNO’s own push server)를 보여준다.Figure 16 shows the MNO's own push server when the MNO provides an option not to drive their own push server.

도 16에서 MNO B의 푸시 서버(1630)는 가상 푸시 서버(Virtual Push Server)이다. In FIG. 16, push server 1630 of MNO B is a virtual push server.

1_A, 1_B. 각각의 푸시 클라이언트(1611 1612)는 각각의 푸시 서버(1630, 1640)에게 "사용자 계정 정보(User Account)"를 제공한다. 1_A, 1_B. Each push client 1611 1612 provides "User Account Information" to each push server 1630,1640.

2_A, 2_B. 각각의 푸시 서버(1630, 1640)는 각각의 푸시 클라이언트(1611 1612)에게 식별 정보(Reg ID)를 제공한다.2_A, 2_B. Each push server 1630, 1640 provides identification information (Reg ID) to each push client 1611, 1612.

3_A, 3_B. 각각의 푸시 클라이언트(1611 1612)는 계정 정보와 등록 식별 정보(User Account+ RegID)를 앱 서버(1690)에게 제공한다.3_A, 3_B. Each push client 1611 1612 provides account information and registration identification information (User Account + RegID) to the app server 1690.

4_A, 앱 서버(1690)는 MNO A 푸시 서버(1630)에게는 상기 등록 식별 정보와 푸시 서비스로 제공할 데이터(Reg ID + Data)를 제공한다.4_A and the app server 1690 provide the registration identification information and data (Reg ID + Data) to be provided to the MNO A push server 1630 as a push service.

4_B. 반면, MNO B의 푸시 서버(1630)는 가상 푸시 서버이므로, 앱 서버(1690)는 백업 푸시 서버(Backup Push Server, 1670)에게 상기 등록 식별 정보와 푸시 서비스로 제공할 데이터(Reg ID + Data)를 제공한다.4_B. The push server 1630 of the MNO B is a virtual push server and the app server 1690 transmits the registration identification information and the data (Reg ID + Data) to be provided as a push service to the backup push server 1670, Lt; / RTI >

5_A, MNO A 푸시 서버(1630)는 푸시 클라이언트(1611)에게 푸시 서비스로 제공할 데이터(Data)를 제공한다. 5_A, the MNO A push server 1630 provides the push client 1611 with data (Data) to be provided as a push service.

5_B. 백업 푸시 서버(1670)는 푸시 클라이언트(16123)에게 푸시 서비스로 제공할 데이터(Data)를 제공한다. 5_B. The backup push server 1670 provides the push client 16123 with data (Data) to provide as a push service.

도 16에서 MNO B는 푸시 서버를 운영하지 않거나, 혹은 푸시 서버의 동작에 문제가 발생하는 경우 등에 백업 푸시 서버를 통하여 MNO B의 푸시 클라이언트들이 푸시 서비스를 받을 수 있도록 한다.
In FIG. 16, the MNO B allows the push clients of the MNO B to receive the push service through the backup push server when the push server is not operated or a problem occurs in the operation of the push server.

도 17은 본 발명의 다른 실시예에 의한 백업 푸시 서버를 보여주는 도면이다.17 is a diagram illustrating a backup push server according to another embodiment of the present invention.

MNO가 지역적 재해 또는 네트워크 붕괴가 일어난 경우 푸시 서버를 이용하는 경우(Provides push service in case of regional disaster or network collapse)를 보여준다.If the MNO has a local disaster or a network collapse, it shows the push server in case of regional disaster or network collapse.

도 17에서는 MNO가 제공하는 백업 서버로부터 푸시 서비스가 제공되지 않는 경우, 백업 푸시 서버를 통해 푸시 서비스를 받는 과정을 보여주는 도면이다. FIG. 17 is a diagram showing a process of receiving a push service through a backup push server when a push service is not provided from a backup server provided by the MNO.

M_1. 푸시 클라이언트(1710)는 MNO A의 푸시서버(1730)에게 "사용자 계정 정보 (User Account)"를 제공한다. M_1. Push client 1710 provides "User Account Information" to push server 1730 of MNO A.

그러나, 상기 사용자 계정 정보를 제공하였음에도, MNO A의 푸시서버(1730)에 부하 혹은 에러 등으로 일정기간 이내에 등록 식별 정보를 푸시 클라이언트(1710)가 받지 못하는 경우(Time Out), 다음과 같이 프로세스가 진행된다.However, if the push client 1710 does not receive the registration identification information within a predetermined period due to a load or an error in the push server 1730 of the MNO A (Time Out) even though the user account information has been provided, It proceeds.

1. 푸시 클라이언트(1710)는 백업 푸시서버(1770)에게 "사용자 계정 정보 (User Account)"를 제공한다. 1. Push client 1710 provides "User Account Information" to backup push server 1770. [

2. 백업 푸시서버(1730)는 푸시 클라이언트(1710)에게 "등록 식별 정보(Reg ID)"를 제공한다.2. Backup push server 1730 provides "registration identification information (Reg ID)" to push client 1710.

3. 푸시 클라이언트(1710)는 앱 서버(App Server, 1790)에게 "사용자 계정 정보와 등록 식별 정보(User Account + Reg ID)"를 제공한다. 3. The push client 1710 provides "user account information and registration identification information (User Account + Reg ID)" to the application server (App Server)

4. 앱 서버(App Server, 1790)는 백업 푸시서버(1730)에게 "등록 식별 정보, 데이터(Reg ID + Data)"를 제공한다. 상기 데이터는 푸시 서비스로 제공할 데이터이다.4. The app server 1790 provides "registration ID information, data (Reg ID + Data)" to the backup push server 1730. The data is data to be provided to the push service.

5. 백업 푸시서버(1730)는 푸시 클라이언트(1710)에게 푸시 서비스로 제공할 데이터(Data)를 제공한다.
5. Backup push server 1730 provides push client 1710 with data (Data) to provide as a push service.

도 18은 본 발명의 일 실시예에 의한 푸시 클라이언트와 푸시 서비스 시스템에서 이루어지는 프로세스를 보여주는 도면이다. 도 18에서의 푸시 클라이언트는 앞서 살펴본 도 3 내지 도 17에서 살펴본 푸시 클라우드 서비스를 이용하는 푸시 클라이언트이며, 푸시 서비스 시스템은 푸시 서비스를 제공하는 푸시 클라우드를 구성하는 다수의 서버들로 이루어진 시스템을 의미한다. 푸시 클라이언트는 모바일 단말에서 구동되는 프로그램 혹은 모듈을 의미한다. 18 is a diagram illustrating a process in a push client and a push service system according to an embodiment of the present invention. The push client in FIG. 18 is a push client using the push cloud service shown in FIGS. 3 to 17, and the push service system is a system including a plurality of servers constituting a push cloud that provides a push service. A push client refers to a program or module that is run on a mobile terminal.

푸시 클라이언트(1810)는 푸시 서비스 시스템(1820)에게 푸시 클라이언트의 식별 정보를 송신한다(S1850). 이는 푸시 서비스를 받고자 하는 어플리케이션의 사용자 식별 정보가 될 수도 있고, 상기 푸시 클라이언트가 설치된 모바일 단말의 식별 정보가 될 수도 있다. The push client 1810 transmits the identification information of the push client to the push service system 1820 (S1850). This may be user identification information of an application to receive a push service or identification information of a mobile terminal installed with the push client.

그리고 푸시 서비스 시스템(1820)에서는 푸시 서비스를 제공할 푸시 서버 또는 백업 푸시 서버를 결정한다(S1860). 이는 앞서 살펴본 바와 같이, MNO 푸시 서버, MNO의 상위 계층의 GSMA 백업 푸시 서버, OS 벤더에서의 백업 푸시 서버 등이 될 수 있으며, 또한, 도 16과 같이 가상 MNO 푸시 서버를 포함한다. 또한, 푸시 클라이언트와 관련된 앱 제공자가 운영하는 푸시 서버가 될 수도 있다. 또한, 푸시 서버를 결정함에 있어서, 푸시 클라우드 하의 계층적 구조하에서 상기 푸시 클라이언트가 탑재된 모바일 단말에 통신 서비스를 제공하는 MNO(Mobile Network Operator)에서 관리하는 MNO 푸시 서버에 장애가 발생한 경우에 상기 백업 푸시 서버가 동작하도록 구현할 수 있다. The push service system 1820 determines a push server or a backup push server to provide the push service (S1860). As described above, the MNO push server, the GSMA backup push server in the upper layer of the MNO, the backup push server in the OS vendor, and the like also include a virtual MNO push server as shown in FIG. It may also be a push server operated by an app provider associated with the push client. In addition, in determining the push server, when a failure occurs in an MNO push server managed by a mobile network operator (MNO) that provides a communication service to a mobile terminal equipped with the push client under a hierarchical structure under a push cloud, The server can be implemented to operate.

상기 S1860의 결정 이후, 결정된 푸시 서버 또는 백업 푸시 서버에서 푸시 데이터(Push Data)를 송신한다(S1870).After the determination in S1860, push data is transmitted from the determined push server or backup push server (S1870).

보다 상세하게, 도 12, 13, 15의 실시예에서 살펴본 바와 같이, S1850 이후에 푸시 클라이언트는 상기 푸시 서버로부터 등록 식별 정보(Registration ID)를 수신하여 이를 앱 서버에 송신할 수 있다. 앱 서버 역시 푸시 서비스 시스템을 구성할 수 있다. More specifically, as shown in FIGS. 12, 13, and 15, the push client receives the registration ID from the push server after S1850 and transmits the registration ID to the app server. The app server can also configure the push service system.

또한, 도 12에서 살펴본 바와 같이, S1850 이후에 상기 푸시 클라이언트는 중앙 관리 서버(Central Management Server)에 푸시 서비스를 요청하는 메시지를 송신하여 상기 푸시 서버의 IP 주소를 수신할 수 있다. Also, as shown in FIG. 12, after pushing the S1850, the push client may receive a push service request message to the Central Management Server to receive the push server IP address.

또한, 도 15에서 살펴본 바와 같이, 상기 앱 서버는 상기 푸시 서버에 상기 푸시 클라이언트에 대한 인증 정보(Authorization ID)를 제공할 수 있다.
Also, as shown in FIG. 15, the app server may provide authentication information (Authorization ID) for the push client to the push server.

본 명세서의 일 실시예에 의한 푸시 서버 또는 백업 푸시 서버는 푸시 클라이언트로부터 푸시 서비스의 요청이 있을 경우, 해당 푸시 클라이언트가 푸시 서비스를 받을 권한이 있는 푸시 클라이언트인지 검증하고, 푸시 클라이언트에게 푸시 데이터를 제공한다. 푸시 데이터란, 푸시 서비스를 통해, 푸시 클라이언트가 수신하고자 하는 데이터로, 예를 들어, 뉴스 어플리케이션인 경우, 새로운 기사가 될 수 있고, 업그레이드용 파일이거나, 혹은 알림 메시지 등이 될 수도 있다. The push server or the backup push server according to an embodiment of the present invention verifies whether the push client is a push client authorized to receive the push service when a push service is requested from the push client and provides push data to the push client do. The push data may be a new article, a file for upgrade, a notification message, or the like when the push client receives data to be received by the push client, for example, a news application.

백업 푸시 서버가 푸시 클라이언트로부터 상기 푸시 클라이언트의 식별 정보(예를 들어 User Account와 App ID)를 수신할 수 있고, 이 값은 중앙 관리 서버 또는 앱 서버를 통해 인증 과정을 거친 후, 푸시 클라이언트에게 푸시 데이터를 제공할 수 있다. 이 과정에서, 푸시 클라이언트가 최초로 푸시 서비스를 요청했던 MNO가 관리하는 서버 외에도 푸시 클라우드 서버가 될 수도 있으며, 상기 MNO가 관리하는 서버는 단지 푸시 서비스 요청 메시지를 실제로 푸시 서비스를 제공하는 백업 푸시 서버로 전달하는 가상의 푸시 서버(도 16의 경우)가 될 수도 있다.
The backup push server can receive the identification information (e.g., User Account and App ID) of the push client from the push client, and this value is authenticated through the central management server or the app server, Data can be provided. In this process, the push client may be a push cloud server in addition to the server managed by the MNO that originally requested the push service, and the server managed by the MNO merely transmits the push service request message to the backup push server (In the case of FIG. 16).

도 19는 본 명세서의 일 실시예에 의한 모바일 단말의 구성을 보여주는 도면이다. 도 19에서 설명하는 구성요소는 모바일 단말이 푸시 클라우드 서비스를 이용하기 위해 제공하는 구성 요소에 대해 상세히 설명하였으며, 그 외에, 본 발명의 구현과 직접적인 관련성이 없는 부분은 생략하였다. 모바일 단말(1900)은 푸시 서비스를 이용하며, 앞서 살펴본 바와 같이, 푸시 클라우드 서비스를 이용할 수 있다. 19 is a diagram illustrating a configuration of a mobile terminal according to an embodiment of the present invention. The components described in FIG. 19 have been described in detail with respect to the components that the mobile terminal provides for using the push-cloud service, and other portions that are not directly related to the implementation of the present invention are omitted. The mobile terminal 1900 uses a push service, and as described above, can use a push cloud service.

어플리케이션 제어부(1910)는 푸시 서비스를 이용하여 어플리케이션을 수정 또는 변경하거나 데이터를 추가한다. 어플리케이션 제어부(1910)는 어플리케이션 그 자체가 될 수도 있고, 상기 어플리케이션에 푸시 데이터를 결합하거나 업그레이드하기 위한 작업을 수행할 수 있다. The application control unit 1910 uses the push service to modify or change the application or add data. The application control unit 1910 may be an application itself or may perform an operation for combining or upgrading push data to the application.

푸시 클라이언트(Push Client)(1920)는 상기 모바일 단말에 설치된 어플리케이션의 푸시 서비스를 제어한다. 푸시 서버 혹은 백업 푸시 서버의 접속 주소를 수신하거나, 푸시 서비스를 위해 필요한 식별 정보를 제공할 수 있다. 구현 방식에 따라, 어플리케이션 제어부(1910)와 푸시 클라이언트(1920)는 하나의 프로그램으로 구현될 수 있다. A push client 1920 controls a push service of an application installed in the mobile terminal. It can receive the connection address of the push server or the backup push server, or provide the identification information necessary for the push service. According to the implementation method, the application control unit 1910 and the push client 1920 can be implemented as a single program.

송수신부(1930)는 모바일 네트워크 또는 무선 네트워크, 혹은 근거리 통신망 등을 이용하여 모바일 단말이 외부와 데이터를 송수신할 수 있도록 한다. 도 19에서는 보다 상세히, 상기 송수신부(1930)는 상기 푸시 클라이언가 푸시 서버(Push Server)가 포함된 푸시 서비스 시스템에 상기 푸시 클라이언트의 식별 정보를 송신하도록 제어하며, 상기 푸시 클라이언트는 백업 푸시 서버(Back Push Server) 또는 상기 푸시 서버로부터 푸시 데이터를 수신하도록 제어한다. The transmission / reception unit 1930 enables a mobile terminal to transmit and receive data to / from the outside using a mobile network, a wireless network, or a local area network. 19, the transmission / reception unit 1930 controls the push client to transmit the identification information of the push client to the push service system including the push server, and the push client is connected to the backup push server Push Server) or push data from the push server.

또한, 상기 푸시 서버가 상기 푸시 데이터를 송신하지 못할 경우, 상기 푸시 클라이언트(1920)는 상기 백업 푸시 서버로부터 상기 푸시 데이터를 수신하게 된다. 푸시 클라이언트(1920)가 백업 푸시 서버 또는 푸시 클라우드 등을 통하여 푸시 서비스를 이용하는 방식은 앞서 설명하였으므로 생략한다.
Further, when the push server fails to transmit the push data, the push client 1920 receives the push data from the backup push server. The manner in which the push client 1920 uses the push service through the backup push server, the push cloud, or the like has been described above and will be omitted.

도 20은 본 명세서의 일 실시예에 의한 푸시 서버의 구성을 보여주는 도면이다. 도 20에서 설명하는 구성요소는 푸시 클라우드 서비스를 제공하기 위해 필요한 구성 요소에 대해 상세히 설명하였으며, 그 외에, 본 발명의 구현과 직접적인 관련성이 없는 부분은 생략하였다. 푸시 서버(2000)는 MNO가 운영하는 푸시 서버가 될 수 있고, GSMA가 운영하는 백업 푸시 서버가 될 수 있으며, 또한 OS 벤더가 운영하는 백업 푸시 서버가 될 수도 있다. 또한, 앞서 살펴본 MNO가 운영하는 가상의 서버로부터 푸시 서비스를 요청 받아 푸시 서비스를 제공하는 백업 푸시 서버 또는 푸시 클라우드를 구성하는 다수의 푸시 서버들 중 하나일 수 있다. 20 is a diagram illustrating a configuration of a push server according to an embodiment of the present invention. The components described in FIG. 20 have been described in detail in order to provide a push-cloud service, and other components not directly related to the implementation of the present invention have been omitted. The push server 2000 may be a push server operated by the MNO, a backup push server operated by the GSMA, or a backup push server operated by an OS vendor. Also, it may be one of a backup push server that provides a push service from a virtual server operated by the MNO as described above, or a plurality of push servers that constitute a push cloud.

푸시 서버의 구성요소로는 푸시 서비스에 이용할 푸시 데이터를 저장하는 저장부(2020)와 푸시 클라이언트(Push Client)의 식별 정보를 상기 푸시 클라이언트 또는 상기 푸시 서비스 시스템을 구성하는 제 2의 서버로부터 수신하며 상기 푸시 클라이언트에 푸시 데이터를 송신하는 송수신부(2030), 그리고, 상기 푸시 서비스를 이용할 푸시 클라이언트를 검증하는 클라이언트 검증부(2010)를 포함한다. As a component of the push server, a storage unit 2020 for storing push data to be used for a push service and identification information of a push client are received from the push client or a second server constituting the push service system A transmission / reception unit 2030 for transmitting push data to the push client, and a client verification unit 2010 for verifying a push client to use the push service.

상기 제 2의 서버로부터 푸시 클라이언트의 식별정보를 수신하는 경우는 도 20의 푸시 서버가 백업 서버로 동작하거나, 앱서버 또는 중앙 관리 서버를 통하여 선택되어 푸시 서비스를 제공하는 경우를 포함한다. 또한, 푸시 클라이언트가 MNO가 운영하는 푸시 서버로부터 별도의 푸시 서비스를 받지 못할 경우, 내재적으로 설정되거나, 앱 서버 등을 통하여 수신한 백업 푸시 서버의 IP 주소를 이용하여 푸시 클라이언트가 직접 백업 푸시 서버에게 식별 정보를 송신할 수 있다. When receiving the identification information of the push client from the second server, the push server of FIG. 20 may be operated as a backup server, or may be selected through an app server or a central management server to provide a push service. If the push client does not receive a separate push service from the push server operated by the MNO, the push client may directly set it to the backup push server by using the IP address of the backup push server received through the app server or the like Identification information can be transmitted.

또한, 푸시 서버(2000)가 상기 푸시 데이터를 송신하지 못할 경우, 상기 푸시 서비스 시스템을 구성하는 또다른 백업 푸시 서버가 상기 푸시 클라이언트에게 상기 푸시 데이터를 송신할 수 있다. Further, when the push server 2000 fails to transmit the push data, another backup push server constituting the push service system may transmit the push data to the push client.

이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시 예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시 예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
The foregoing description is merely illustrative of the technical idea of the present invention and various changes and modifications may be made by those skilled in the art without departing from the essential characteristics of the present invention. Therefore, the embodiments disclosed in the present invention are intended to illustrate rather than limit the scope of the present invention, and the scope of the technical idea of the present invention is not limited by these embodiments. The scope of protection of the present invention should be construed according to the following claims, and all technical ideas within the scope of equivalents thereof should be construed as falling within the scope of the present invention.

Claims (14)

모바일 단말에서 구동하는 푸시 클라이언트(Push Client)가 푸시 서버(Push Server)가 포함된 푸시 서비스 시스템에 상기 푸시 클라이언트의 식별 정보를 송신하는 단계;
상기 푸시 클라이언트는 상기 푸시 서버로부터 등록 식별 정보(Registration ID)를 수신하여 이를 앱 서버에 송신하는 단계; 및
상기 푸시 클라이언트는 백업 푸시 서버(Back Push Server) 또는 상기 푸시 서버로부터 푸시 데이터를 수신하는 단계를 포함하며,
상기 푸시 서버가 상기 푸시 데이터를 송신하지 못할 경우, 상기 푸시 클라이언트는 상기 백업 푸시 서버로부터 상기 푸시 데이터를 수신하는 것을 특징으로 하는, 푸시 서버 클라우드 및 이를 이용한 통신 서비스 제공 방법.
Transmitting a push client identification information to a push service system including a push server, the push client operating in the mobile terminal;
The push client receiving registration ID from the push server and transmitting the registration ID to the app server; And
Wherein the push client comprises receiving push data from a back push server or the push server,
And if the push server fails to transmit the push data, the push client receives the push data from the backup push server, and the push server cloud and method of providing a communication service using the same.
제 1항에 있어서,
상기 푸시 서버는 상기 푸시 클라이언트가 탑재된 모바일 단말에 통신 서비스를 제공하는 MNO(Mobile Network Operator)에서 관리하는 MNO 푸시 서버이며,
상기 백업 푸시 서버는 상기 하나 이상의 MNO 푸시 서버에 대하여 백업 푸시 서비스를 제공하는 백업 서버인 것을 특징으로 하는, 푸시 서버 클라우드 및 이를 이용한 통신 서비스 제공 방법.
The method according to claim 1,
The push server is an MNO push server managed by an MNO (Mobile Network Operator) that provides a communication service to a mobile terminal equipped with the push client,
Wherein the backup push server is a backup server that provides a backup push service to the one or more MNO push servers.
제 2항에 있어서,
상기 백업 푸시 서버는 상기 푸시 클라이언트와 관련된 앱 제공자 또는 상기 푸시 클라이언트가 탑재된 모바일 단말의 운영 체계(Operating System) 제공자에서 운영하는 푸시 서버인 것을 특징으로 하는, 푸시 서버 클라우드 및 이를 이용한 통신 서비스 제공 방법.
3. The method of claim 2,
Wherein the backup push server is a push server operated by an operating system provider of an application provider associated with the push client or a mobile terminal equipped with the push client, and a method of providing a communication service using the push server cloud .
삭제delete 제 1항에 있어서,
상기 푸시 클라이언트의 식별 정보를 송신하는 단계 이전에
상기 푸시 클라이언트는 중앙 관리 서버(Central Management Server)에 푸시 서비스를 요청하는 메시지를 송신하여 상기 푸시 서버의 IP 주소를 수신하는 단계를 더 포함하는, 푸시 서버 클라우드 및 이를 이용한 통신 서비스 제공 방법.
The method according to claim 1,
Before the step of transmitting the identification information of the push client
Wherein the push client further comprises a step of transmitting a push service request message to the central management server to receive an IP address of the push server, and a method for providing a communication service using the push server cloud.
제 1항에 있어서,
상기 앱 서버는 상기 푸시 서버에 상기 푸시 클라이언트에 대한 인증 정보(Authorization ID)를 제공하는 것을 특징으로 하는, 푸시 서버 클라우드 및 이를 이용한 통신 서비스 제공 방법.
The method according to claim 1,
Wherein the application server provides authentication information (Authorization ID) to the push server to the push server, and a method of providing a communication service using the push server cloud.
푸시 서버(Push Server) 및 백업 푸시 서버(Backup Push Server)로 구성된 푸시 서비스 시스템의 푸시 서버 클라우드 및 이를 이용한 통신 서비스 제공 방법에 있어서,
상기 푸시 서비스 시스템이 모바일 단말에서 구동하는 푸시 클라이언트(Push Client)의 식별 정보를 수신하는 단계;
상기 푸시 서비스 시스템은 상기 푸시 클라이언트에게 등록 식별 정보(Registration ID)를 송신하는 단계; 및
상기 푸시 클라이언트에 상기 백업 푸시 서버 또는 상기 푸시 서버가 푸시 데이터를 송신하는 단계를 포함하며,
상기 푸시 서버가 상기 푸시 데이터를 송신하지 못할 경우, 상기 백업 푸시 서버가 상기 푸시 클라이언트에게 상기 푸시 데이터를 송신하고,
상기 푸시 클라이언트는 상기 등록 식별 정보를 앱 서버로 송신하는 것을 특징으로 하는, 푸시 서버 클라우드 및 이를 이용한 통신 서비스 제공 방법.
A method of providing a push server cloud and a communication service using the push server in a push service system including a push server and a backup push server,
The push service system receiving identification information of a push client driven by a mobile terminal;
The push service system transmitting registration ID to the push client; And
Wherein the backup push server or the push server transmits push data to the push client,
If the push server fails to send the push data, the backup push server sends the push data to the push client,
Wherein the push client transmits the registration identification information to the app server.
제 7항에 있어서,
상기 푸시 서버는 상기 푸시 클라이언트가 탑재된 모바일 단말에 통신 서비스를 제공하는 MNO(Mobile Network Operator)에서 관리하는 MNO 푸시 서버이며,
상기 백업 푸시 서버는 상기 하나 이상의 MNO 푸시 서버에 대하여 백업 푸시 서비스를 제공하는 백업 서버인 것을 특징으로 하는, 푸시 서버 클라우드 및 이를 이용한 통신 서비스 제공 방법.
8. The method of claim 7,
The push server is an MNO push server managed by an MNO (Mobile Network Operator) that provides a communication service to a mobile terminal equipped with the push client,
Wherein the backup push server is a backup server that provides a backup push service to the one or more MNO push servers.
제 8항에 있어서,
상기 백업 푸시 서버는 상기 푸시 클라이언트와 관련된 앱 제공자 또는 상기 푸시 클라이언트가 탑재된 모바일 단말의 운영 체계(Operating System) 제공자에서 운영하는 푸시 서버인 것을 특징으로 하는, 푸시 서버 클라우드 및 이를 이용한 통신 서비스 제공 방법.
9. The method of claim 8,
Wherein the backup push server is a push server operated by an operating system provider of an application provider associated with the push client or a mobile terminal equipped with the push client, and a method of providing a communication service using the push server cloud .
삭제delete 제 7항에 있어서,
상기 푸시 클라이언트의 식별 정보를 수신하는 단계 이전에
중앙 관리 서버(Central Management Server)가 상기 푸시 클라이언트로부터 푸시 서비스를 요청하는 메시지를 수신하여 상기 푸시 서버의 IP 주소를 상기 푸시 클라이언트에게 송신하는 단계를 더 포함하는, 푸시 서버 클라우드 및 이를 이용한 통신 서비스 제공 방법.
8. The method of claim 7,
Before the step of receiving the identification information of the push client
Further comprising: receiving a push service request message from the push client and transmitting the push server's IP address to the push client, and a communication service using the push server cloud Way.
제 7항에 있어서,
상기 앱 서버는 상기 푸시 서버에 상기 푸시 클라이언트에 대한 인증 정보(Authorization ID)를 제공하는 것을 특징으로 하는, 푸시 서버 클라우드 및 이를 이용한 통신 서비스 제공 방법.
8. The method of claim 7,
Wherein the application server provides authentication information (Authorization ID) to the push server to the push server, and a method of providing a communication service using the push server cloud.
푸시 서비스를 이용하는 모바일 단말에 있어서,
푸시 서비스를 이용하여 어플리케이션을 수정 또는 변경하거나 데이터를 추가하는 어플리케이션 제어부;
상기 모바일 단말에 설치된 어플리케이션의 푸시 서비스를 제어하는 푸시 클라이언트(Push Client);
상기 푸시 클라이언트가 푸시 서버(Push Server)가 포함된 푸시 서비스 시스템에 상기 푸시 클라이언트의 식별 정보를 송신하도록 제어하며, 상기 푸시 클라이언트는 백업 푸시 서버(Back Push Server) 또는 상기 푸시 서버로부터 푸시 데이터를 수신하도록 제어하는 송수신부를 포함하며,
상기 푸시 서버가 상기 푸시 데이터를 송신하지 못할 경우, 상기 푸시 클라이언트는 상기 백업 푸시 서버로부터 상기 푸시 데이터를 수신하는 것을 특징으로 하고,
상기 송수신부는,
상기 푸시 클라이언트가 상기 푸시 서버로부터 등록 식별 정보(Registration ID)를 수신하여 이를 앱 서버에 송신하도록 제어하는, 푸시 서버 클라우드를 이용하는 모바일 단말.
In a mobile terminal using a push service,
An application control unit for modifying or changing an application or adding data using a push service;
A push client for controlling a push service of an application installed in the mobile terminal;
Wherein the push client controls to transmit identification information of the push client to a push service system including a push server, the push client receives push data from a backup push server or the push server And a transmitting /
Characterized in that if the push server fails to transmit the push data, the push client receives the push data from the backup push server,
The transmitting /
Wherein the push client controls the push server to receive the registration ID from the push server and send it to the app server.
푸시 서비스 시스템을 구성하는 푸시 서버에 있어서,
푸시 서비스에 이용할 푸시 데이터를 저장하는 저장부;
모바일 단말에서 구동하는 푸시 클라이언트(Push Client)의 식별 정보를 상기 푸시 클라이언트 또는 상기 푸시 서비스 시스템을 구성하는 제 2의 서버로부터 수신하며 상기 푸시 클라이언트에 푸시 데이터를 송신하는 송수신부; 및
상기 푸시 서비스를 이용할 푸시 클라이언트를 검증하는 클라이언트 검증부를 포함하며,
상기 푸시 서버가 상기 푸시 데이터를 송신하지 못할 경우, 상기 푸시 서비스 시스템을 구성하는 백업 푸시 서버가 상기 푸시 클라이언트에게 상기 푸시 데이터를 송신하고,
상기 송수신부는, 상기 푸시 클라이언트가 앱 서버로 전송하는 등록 식별 정보(Registration ID)를 상기 푸시 클라이언트로 송신하는 것을 특징으로 하는, 푸시 서버 클라우드를 구성하는 푸시 서버.




A push server constituting a push service system,
A storage unit for storing push data to be used for a push service;
A transceiver for receiving identification information of a push client running on a mobile terminal from a push server or a second server constituting the push service system and transmitting push data to the push client; And
And a client verification unit for verifying a push client that uses the push service,
Wherein when the push server fails to transmit the push data, a backup push server constituting the push service system transmits the push data to the push client,
Wherein the sending / receiving unit transmits registration ID information (Registration ID) transmitted by the push client to the app server to the push client.




KR1020120050074A 2012-02-13 2012-05-11 Apparatus for push server cloud and communication service of using push server cloud KR101602186B1 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR1020120014508 2012-02-13
KR20120014508 2012-02-13
KR20120041145 2012-04-19
KR1020120041145 2012-04-19

Publications (2)

Publication Number Publication Date
KR20130092937A KR20130092937A (en) 2013-08-21
KR101602186B1 true KR101602186B1 (en) 2016-03-10

Family

ID=49217503

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120050074A KR101602186B1 (en) 2012-02-13 2012-05-11 Apparatus for push server cloud and communication service of using push server cloud

Country Status (1)

Country Link
KR (1) KR101602186B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102141057B1 (en) * 2013-10-11 2020-08-04 에스케이플래닛 주식회사 Terminal and service providing device, authentication system comprising the same, control method thereof and computer readable medium having computer program recorded therefor

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008538242A (en) * 2005-03-30 2008-10-16 株式会社リコー Method and system for providing backup server function

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101639661B1 (en) * 2009-02-05 2016-07-15 삼성전자주식회사 System and method for supporting message push service in wireless communication system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008538242A (en) * 2005-03-30 2008-10-16 株式会社リコー Method and system for providing backup server function

Also Published As

Publication number Publication date
KR20130092937A (en) 2013-08-21

Similar Documents

Publication Publication Date Title
US20220272620A1 (en) Apparatus, system and method for enhancements to network slicing and the policy framework of a 5g network
US11457070B2 (en) Virtual hosting device and service to provide software-defined networks in a cloud environment
AU2017223831B2 (en) Platform for computing at the mobile edge
US9843585B2 (en) Methods and apparatus for large scale distribution of electronic access clients
EP3800909B1 (en) Remote management method, and device
KR102406757B1 (en) A method of provisioning a subscriber profile for a secure module
KR101474096B1 (en) Method and apparatus for network personalization of subscriber devices
CN109076102A (en) User equipment container and network slice
CN104956638A (en) Restricted certificate enrollment for unknown devices in hotspot networks
US20230131703A1 (en) Systems and methods for configuring a network function proxy for secure communication
CN107332817B (en) Mobile device supporting multiple access control clients and corresponding method
CN112514328A (en) Communication system, provider node, communication node and method for providing virtual network functionality to a customer node
JP2023519997A (en) Method and communication apparatus for securing terminal parameter updates
KR101602186B1 (en) Apparatus for push server cloud and communication service of using push server cloud

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant