KR20150074138A - 이동 네트워크에서 지속적인 tcp 접속 없는 푸시 서비스 - Google Patents

이동 네트워크에서 지속적인 tcp 접속 없는 푸시 서비스 Download PDF

Info

Publication number
KR20150074138A
KR20150074138A KR1020157013427A KR20157013427A KR20150074138A KR 20150074138 A KR20150074138 A KR 20150074138A KR 1020157013427 A KR1020157013427 A KR 1020157013427A KR 20157013427 A KR20157013427 A KR 20157013427A KR 20150074138 A KR20150074138 A KR 20150074138A
Authority
KR
South Korea
Prior art keywords
push
mobile device
client
application
server
Prior art date
Application number
KR1020157013427A
Other languages
English (en)
Other versions
KR101697080B1 (ko
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 KR20150074138A publication Critical patent/KR20150074138A/ko
Application granted granted Critical
Publication of KR101697080B1 publication Critical patent/KR101697080B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/12Messaging; Mailboxes; Announcements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/029Firewall traversal, e.g. tunnelling or, creating pinholes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/146Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
    • H04L67/26
    • H04L67/28
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W68/00User notification, e.g. alerting and paging, for incoming communication, change of service or the like
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/562Brokering proxy services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • H04W76/11Allocation or use of connection identifiers

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Telephonic Communication Services (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

이동 네트워크에서 비-TCP 푸시 서비스에 대한 방법들, 시스템들, 및 제작 물품들은 푸시 서버에서 지속적인 TCP 접속 없이 제 1 내부 인터페이스를 통해 푸시 클라이언트로부터 이동 디바이스에 대한 등록 정보를 수신하는 단계를 포함한다. 등록 정보는 이동 디바이스에 대한 사설 IP 어드레스 및 이동 디바이스에서 애플리케이션 클라이언트의 인스턴스와 연관된 이동 디바이스 세션 식별자를 포함한다. 애플리케이션 서버의 이벤트와 연관된 푸시 트리거는 서비스 제공자 방화벽의 외측에 노출된 제 2 인터페이스를 통해 푸시 서버에서 수신된다. 푸시 트리거는 푸시 트리거 세션 식별자를 포함한다. 푸시 트리거 세션 식별자가 이동 디바이스 세션 식별자와 일치할 때, 푸시 트리거는 이동 디바이스상의 애플리케이션 클라이언트의 인스턴스와 연관되도록 결정되고 지속적인 TCP 접속 없이 푸시 클라이언트로 송신된다.

Description

이동 네트워크에서 지속적인 TCP 접속 없는 푸시 서비스{PUSH SERVICE WITHOUT PERSISTENT TCP CONNECTION IN A MOBILE NETWORK}
본 발명은 일반적으로 이동 네트워크들에 관한 것이고 특히 이동 네트워크 푸시 서비스들에 관한 것이다.
이동 디바이스 애플리케이션들은 일반적으로 클라이언트-서버 모델에서 동작하고, 이동 디바이스상의 애플리케이션 클라이언트는 하나 이상의 네트워크 기반 애플리케이션 서버들로부터 데이터를 수신 및 처리한다. 서버로부터 데이터를 획득하기 위해, 애플리케이션 클라이언트는 풀 또는 푸시 모드를 사용할 수 있다. 풀 모드에서, 애플리케이션 클라이언트는 새로운 데이터에 대하여 애플리케이션 서버에 주기적으로 폴링한다. 푸시 모드에서, 애플리케이션 서버는, 새로운 데이터가 이용가능할 때, 애플리케이션 클라이언트가 폴링할 필요 없이 애플리케이션 클라이언트에 데이터를 "푸시한다".
네트워크에 종종 폴링하는 애플리케이션들은 푸시 서비스들로부터 이익을 얻을 수 있다. 푸시 서비스들은 종래의 이메일(예를 들면, 새로운 이메일이 서버에 도달할 때 푸시 통지를 이동 디바이스에 전송하기 위해), 단문 메시징 서비스(SMS)(예를 들면, SMS 메시지가 서버에 도달할 때 푸시 통지를 전송하기 위해), 보이스 오버 인터넷 프로토콜(VoIP)(예를 들면, 착신 호의 통지를 위해), 웹 브라우징(예를 들면, 웹 페이지를 리프레시할 때의 통지를 위해), 및 3G/4G 스마트 이동 디바이스들을 위한 증가하는 비디오 애플리케이션들을 포함한다. 이러한 비디오 애플리케이션들에 대한 푸시 이벤트 통지들을 위한 예들은 네트워크 상태 변경들, 정책 변경들, 및 애플리케이션 클라이언트 응답을 요구할 수 있는 다른 통지들을 포함하지만 그로 제한되지 않는다.
푸시 모드는 셀룰러 네트워크들에 걸쳐 동작하는 이동 디바이스들에 대해 특히 중요하다. 일반적으로, 이동 디바이스가 전송하거나 또는 수신할 데이터를 가지지 않을 때, 디바이스의 무선 동작과 연관된 오버-디-에어 자원들 및 배터리 전력을 절약하기 위해 유휴(예를 들면, 휴면, 휴지) 모드에 들어갈 수 있다. 무선 액세스 네트워크는 유휴 디바이스의 위치 상태 정보를 유지하고 데이터가 디바이스에 도착할 때 이동 디바이스를 웨이크 업하기 위해 대응하는 셀룰러 액세스 기술 표준으로 규정된 페이징 메커니즘들을 사용한다.
반대로, 풀 모드는, 애플리케이션 클라이언트가 서버가 이러한 새로운 데이터를 갖든지 안 갖든지에 상관없이 새로운 데이터에 대해 애플리케이션 서버에 폴링할 필요가 있을 때, 이동 디바이스가 유휴 모드를 주기적으로 종료하는 것을 요구하여, 이동 디바이스 배터리 자원들 및 불필요한 오버 디 에어 통신들의 낭비를 초래한다. 또한, 애플리케이션 응답 시간을 개선하는 것은 낭비되는 더 많은 배터리 및 오버 디 에어 자원들과 함께 증가하는 폴링 빈도를 요구한다. 폴링 빈도를 감소시키는 것은 애플리케이션 서버 이벤트들에 대한 애플리케이션 클라이언트 응답들에서 더 많은 지연들을 초래할 수 있다.
모든 IP 기반 데이터 서비스들을 사용하는 3G 및 4G 네트워크들에 의해, 현재 셀룰러 서비스 제공자들에 대한 일반적인 네트워크 아키텍처는 서비스 제공자 코어 네트워크와 공중 인터넷 사이에 방화벽을 갖는 이동 디바이스들에 대한 사설 IP 어드레스들을 사용한다. 이는 푸시 실행들을 위해 중요한 도전 과제를 나타낸다. 이동 다비이스 상의 애플리케이션 클라이언트(사설 IP 어드레스를 갖는)와 애플리케이션 서버 사이에 위치된 네트워크 어드레스 변환(NAT)을 갖는 일반적인 방화벽은 애플리케이션 클라이언트와 애플리케이션 서버 사이의 송신 제어 프로토콜(TCP) 기반 클라이언트-개시된 통신들에만 허용한다. 그러나, 애플리케이션 클라이언트와 애플리케이션 서버 사이의 이러한 TCP 접속들을 유지하는 것은 이동 디바이스 유휴 모드에 풀 모드로서 유사한 영향을 갖는 풀 모드(클라이언트 기원된 TCP 패킷들은 주기적으로 교환되어야 함)와 반드시 동등한 주기적 "하트-비팅(heart-beating)"을 요구한다.
방화벽 뒤에 사설 IP 어드레스를 갖는 애플리케이션 클라이언트를 갖고, 방화벽 외측에 위치된 애플리케이션 서버는, 클라이언트의 사설 IP 어드레스가 서비스 제공자의 네트워크의 외측으로부터 도달가능하지 않기 때문에, 방화벽에서 특정한 "홀(hole)" 없이 IP 패킷들을 애플리케이션 클라이언트에 전송할 수 없다. 이러한 "방화벽의 홀"은 일반적으로, 애플리케이션 서버와의 TCP 접속이 애플리케이션 클라이언트에 의해 기원될 때, 자동으로 생성된다. 방화벽 NAT 기능은, TCP/IP 패킷을 전송한 클라이언트에서, 쌍 <소스 IP 어드레스, 소스 TCP 포트 번호>를 <많은 클라이언트들에 대해 공통인 공중 IP 어드레스 + 고유한 새로운 소스 TCP 포트 번호>로 교체하고, 특정 시간의 지연 동안 쌍 <소스 IP 어드레스, 소스 TCP 포트 번호>와 <고유한 새로운 소스 TCP 포트 번호> 사이에 맵핑을 생성하고, 그에 따라 <많은 클라이언트들에 대해 공통인 공중 IP 어드레스 + 고유한 새로운 소스 TCP 포트 번호>로 어드레스된 애플리케이션 서버로부터의 패킷들이 애플리케이션 클라이언트의 <소스 IP 어드레스, 소스 TCP 포트 번호>로 전송되게 한다. 이러한 맵핑은 애플리케이션 서버가 패킷들을 애플리케이션 클라이언트에 전송하게 하는 방화벽 내 "홀"을 생성한다. TCP 트래픽의 부재시(예를 들면, 클라이언트가 유휴 모드로 갈 때), 맵핑은 낡은 것이 되고 클라이언트는 서버로부터 도달가능하지 않게 된다. 그러나, 이러한 맵핑을 리프레시하기 위해 주기적 TCP 트래픽을 전송함으로써 지속적인 TCP 접속을 유지하는 것은 많은 비용이 들고 이동 디바이스가 이러한 트래픽을 생성하기 위해 주기적으로 유휴 상태를 중단할 것을 요구한다. 또한 "낡은" 타이머 구성은 상이한 방화벽들에 대해 변할 수 있고, 이러한 트래픽이 불필요하게 빈번하게 되는 요건을 초래한다.
기존 해결책들은 방화벽 문제들의 중요성을 나타내지만, 또한 서비스 제공자 네트워크와 공중 인터넷 사이의 방화벽을 갖고 푸시 실행을 위해 어떠한 만족스러운 방식도 없다는 것을 나타낸다.
예를 들면, TCP-기반 모바일 운영 시스템(OS) 또는 이동 디바이스 벤더 푸시 서비스는 일반적으로 인터넷에서 어딘가(무선 서비스 제공자들 방화벽 보호된 코어의 외측)에 위치된 푸시 서버, 이동 디바이스 OS와 결합된 푸시 클라이언트 미들웨어, 및 푸시 서비스를 등록 및 수신하기 위해 애플리케이션 클라이언트들 및 서버들에 노출되는 이동 디바이스 OS에 특정된 일 세트의 API들로 구성된다. 그러나, 지속적인 TCP 접속은 방화벽을 통해 유지되어야 한다. 이러한 접속을 유지하는 것은 이동 디바이스와 푸시 서버 사이에서 주기적 TCP 트래픽이 교환되는 것을 요구하여, 배터리 수명 및 오버-디-에어 자원들 모두의 낭비를 야기한다. TCP 킵-얼라이브의 빈도(몇몇 경우들에서, 매초) 및/또는 방화벽 에이징 리프레시 교환들에 의존하여, 이동 디바이스는 유휴 모드에 들어가는 것을 완전히 방지하거나(킵-얼라이브 교환이 너무 잦은 경우) 또는 킵-얼라이브 교환을 위해 유휴 모드를 주기적으로 중단하는 것이 강제된다. TCP 교환의 빈도는, 일반적으로 서버로부터 클라이언트로의 역 TCP 트래픽을 위한 방화벽 홀 에이징 타이머뿐만 아니라 OS 특정 고려 사항들(예를 들면, 이동 디바이스가 전원 차단하거나 갑자기 무선 커버리지 범위 밖으로 갈 때, 서버가 데드 TCP 접속을 검출하게 하는 TCP 킵-얼라이브 또는 다른 메커니즘들)에 의해 영향을 받는다. 또한, 수천만의 모바일 클라이언트들과의 지속적인 TCP 접속들을 유지하는 것은 상당한 서버 자원들이 할당될 것을 요구한다. 또한, 이러한 방법은, 제 3 자 푸시 서버가 이동 디바이스들 및 그들의 애플리케이션들의 사용을 추적하게 할 수 있게 때문에, 이동 디바이스 사용자들에 대한 프라이버시 문제들을 생성할 수 있다.
본 발명의 목적은 이동 네트워크에서 지속적인 TCP 접속 없이 푸시 서비스를 제공하는 방법을 제공하는 것이다.
도 1은 지속적인 TCP 접속-기반 벤더-제어된 푸시 서비스를 실행하기 위한 이동 네트워크의 기능도를 도시한다. 네트워크(100)는 일반적으로 하나 이상의 이동 디바이스들(102)에 대한 사설 IP 어드레스들의 사용을 통해 이동 네트워크 서비스들(예를 들면, 음성, 텍스트, 비디오, 및 다른 데이터 서비스들)을 제공한다. 이동 디바이스들(102)은 이동 디바이스 운영 시스템(OS)을 구동하고, 맞춤화된, 벤더-실행된 푸시 서비스들을 이용하는 다수의 이동 네트워크 서비스 애플리케이션들을 구동하도록 구성된다. 네트워크(100)는 모바일 서비스 제공자의 코어 네트워크(106)와 공중 인터넷(108) 사이에 네트워크 어드레스 변환(NAT)을 갖는 방화벽(104)을 포함한다. 코어 네트워크(106)는 패킷 데이터 네트워크 게이트웨이(PDN-GW; 110), 홈 가입자 서버(HSS; 112), 이동 관리 엔티티(MME; 114), 서빙 게이트웨이(S-GW; 116), 및 하나 이상의 eNodeB 셀룰러 액세스 포인트들(118)과 같은 LTE 이동 통신 시스템을 실행하기 위해 일반적으로 사용된 구성 요소들을 포함한다. 그러나, 코어 네트워크(106)는 임의의 이러한 표준-규정된 네트워크 아키텍처를 실행하도록 구성된 구성 요소들을 갖는 2G, 3G(예를 들면, WCDMA-UMTS, CDMA) 또는 4G(예를 들면, LTE, WiMAX) 네트워크일 수 있다. 그러므로, 도 1은 LTE 이동 통신 시스템을 도시하지만, 당업자는 이들 구성 요소들 중 하나 이상 및 다수의 다른 잘 알려진 구성 요소들이 2G, 3G, 4G, 또는 다른 이동 통신 시스템 네트워크 아키텍처를 실행하기 위해 추가되거나 또는 조합될 수 있다는 것을 인식할 것이다.
네트워크(100)는 방화벽(104)의 외부의 공중 인터넷(108)을 통해 액세스가능한 푸시 서버(120)를 추가로 포함할 수 있다. 이동 디바이스들(102)은 푸시 클라이언트(122)(예를 들면, 이동 디바이스 운영 체계(OS)와 결합된 미들웨어), 및 지속적인 TCP-기반 접속을 통해 이동 디바이스/OS 벤더들에 특정된 푸시 서비스들을 등록 및 수신하기 위한 애플리케이션 서버(128) 및 애플리케이션 클라이언트(126)에 노출되는 하나 이상의 애플리케이션 프로그래밍 인터페이스들(APIs; 124)을 포함할 수 있다. 예를 들면, 이동 디바이스(102)는 TCP 기반 접속을 유지하기 위해 하트-비트형 통신을 전송하기 위해 주기적으로 "웨이크 업"할 수 있다.
네트워크(100)에서, 애플리케이션 서버(128)는 방화벽에서 특별한 "홀" 없이 사설 IP 어드레스를 갖는 이동 디바이스(102)에 IP 패킷들을 전송할 수 없다(즉, 클라이언트의 사설 IP 어드레스는 서비스 제공자의 코어 네트워크(106) 외측으로부터 도달가능하지 않다). 예를 들면, 방화벽(104)의 이러한 "홀"은, 애플리케이션 서버(128)와의 TCP-기반 접속이 이동 디바이스(102)에 의해 발생될 때 자동으로 생성될 수 있다. 특히, 방화벽 NAT 기능은, 이동 디바이스(102)에 의해 전송된 TCP/IP 패킷에서, 사적 어드레스/포트 번호 쌍, 예를 들면, <소스 IP 어드레스, 소스 TCP 포트 번호>을 공중 어드레스/포트 번호 쌍, 예를 들면, <다수의 이동 디바이스들에 공통인 공중 IP 어드레스 + 고유한 새로운 소스 TCP 포트 번호>로 교체하고, 쌍, <소스 IP 어드레스, 소스 TCP 포트 번호>와 고유한 새로운 소스 TCP 포트 번호 사이의 맵핑을 (예를 들면, 시간의 일정한 지속 기간 동안) 생성한다. 이와 같이, 애플리케이션 서버(128)는 특정 이동 디바이스(102)의 사설 어드레스/포트 번호 쌍, <소스 IP 어드레스, 소스 TCP 포트 번호>에 전송될 수 있는 <다수의 클라이언트들에 공통인 공중 IP 어드레스 + 고유한 새로운 소스 TCP 포트 번호>에 어드레스된 패킷들을 전송할 수 있다. 방화벽에서 "홀"을 생성하는 것으로 규정된 이러한 맵핑 절차는 애플리케이선 서버(128)가 패킷들을 애플리케이션 클라이언트(126)에 전송하는 것을 허용한다. 그러나, TCP 기반 통신 트래픽의 부재시(예를 들면, 이동 디바이스(102)가 유휴 모드로 토글링할 때), 공중/사설 맵핑은 만료될 수 있고, 이것은 애플리케이션 클라이언트(126)가 애플리케이선 서버(128)로부터 도달가능하지 않게 될 것이라는 것을 의미한다.
사용자 데이터그램 프로토콜-기반 세션 개시 프로토콜(UDP-기반 SIP) 모델은 네트워크상에 이동 디바이스 등록 동안 이동 디바이스에 도달하기 위해 방화벽에 홀들을 동적으로 "펀칭"하기 위해 특정 세션 경계 제어기 디바이스가 방화벽과 협력하여 동작할 것을 요구한다. 이러한 방법은 이동 디바이스가 착신 호들을 수신하게 한다. 그러나, UDP-기반 SIP 모델은 또한 새로운 애플리케이션이 시장에 나타날 때마다 각각의 새로운 애플리케이션에 대한 특수화된 세션 경계 제어 기능 및 세션 경계 제어기의 재구성을 요구할 수 있다.
SMS 메시지들은 또한 비-SMS 인스턴트 메시지 애플리케이션들에 대해 푸시 통지들을 위해 이용될 수 있다. 그러나, 많은 서비스 제공자 플랜들은 사용자들에게 SMS 메시지들의 수신에 대해 과금을 계획한다. 그러므로, 푸시 통지들을 위해 SMS를 사용하는 것은 이러한 플랜들에 의해 사용자에게 예상치 않고 달갑지않은 과금들을 야기할 수 있다.
2G/3G/4G 이동 네트워크들상에 서비스를 수신하는 디바이스들의 유휴(예를 들면, 휴지 또는 휴면) 모드 요구 사항들과 호환 가능한 무선 서비스 제공자 코어 네트워크에서 푸시 서비스를 위한 제작의 방법들, 시스템들, 및 물품들이 개시된다. 일 실시예에서, 푸시 서버는 두 개의 인터페이스들을 포함한다. 제 1 인터페이스는, 이동 디바이스가 이동 디바이스의 사설 IP 어드레스를 사용하여 푸시 서버로부터 도달가능하도록, 방화벽 뒤에 서비스 제공자의 사설 네트워크 내에 있다. 제 2 인터페이스는 방화벽 외측에 위치된 애플리케이션 서버들이 푸시 트리거들을 개시할 수 있도록 공개된다(서비스 제공자의 방화벽 외측에 노출됨).
이러한 아키텍처는 푸시 서버와 이동 디바이스 사이의 영구적인 TCP 접속에 대한 필요성을 제거한다. 예를 들면, 푸시 서버와 이동 디바이스 내 푸시 클라이언트 사이의 인터페이스는 단일 푸시 통지를 전달하기 위해 푸시 서버에 의해 개시된 비-지속적인 TCP 접속 또는 신뢰성을 위한 몇몇의 추가된 수신 확인 메시지들로 접속 없는(예를 들면, UDP) 프로토콜을 지원할 수 있다.
애플리케이션 서버상에 새로운 데이터의 부재시, 이동 디바이스는 배터리 전력을 절약하기 위해 유휴(예를 들면, 휴지 또는 휴면) 모드로 들어갈 수 있고, 이동 디바이스에 대응하는 셀룰러 액세스 네트워크는 네트워크-특정(즉, 내재된) 위치 갱신 메커니즘을 유지할 수 있어서, 푸시 서버로부터의 패킷들이 유휴 상태의 이동 디바이스에 전송될 것이 필요할 때, 위치 갱신 메커니즘은 이동 디바이스를 웨이크-업할 수 있고, 푸시 서버로부터 푸시 트리거를 수신하는 것을 허용할 수 있다.
일 실시예에서, 방법은, 푸시 서버에서, 지속적인 TCP 접속 없이 제 1 내부 인터페이스를 통해 푸시 클라이언트로부터 이동 디바이스에 대한 등록 정보를 수신하는 단계를 포함한다. 등록 정보는 이동 디바이스에 대한 사설 IP 어드레스 및 이동 디바이스상에 애플리케이션의 인스턴스와 연관된 이동 디바이스 세션 식별자를 포함한다. 나중에 애플리케이션 서버의 이벤트와 연관된 푸시 트리거가 서비스 제공자 방화벽의 외부에 노출된 제 2 인터페이스를 통해 푸시 서버에서 수신되고, 푸시 트리거는 푸시 트리거 세션 식별자를 포함한다. 푸시 트리거는 푸시 트리거 세션 식별자가 이동 디바이스 세션 식별자와 일치할 때 이동 디바이스상의 애플리케이션 클라이언트의 인스턴스와 연관된다고 결정되고, 푸시 트리거 세션 식별자가 이동 디바이스 세션 식별자와 일치할 때, 푸시 트리거는 푸시 서버에 의해 이동 디바이스상의 푸시 클라이언트에 송신된다. 푸시 트리거는 내부 제 1 인터페이스(이동 디바이스가 셀룰러 2G-3G-4G 인터페이스를 통해 접속되는 경우) 또는 외부 제 2 인터페이스(이동 디바이스가 Wi-Fi 인터페이스를 통해 접속되는 경우) 중 하나를 통해 푸시 클라이언트에 송신될 수 있고, 내부 제 1 인터페이스를 통한 푸시 트리거는 UDP 또는 비-지속적인 TCP를 사용하여 송신될 수 있다. 푸시 클라이언트와의 TCP 접속은 푸시 트리거를 전달하기 위해 푸시 서버에 의해 비롯될 수 있고 이후 푸시 트리거가 전달된 후 종료될 수 있다.
일 실시예에 따라, 세션 식별자는 애플리케이션 특정 클라이언트-서버 통신을 통해 애플리케이션 클라이언트로부터 애플리케이션 서버로 송신된다. 통신은 ICP에 기초할 수 있다.
일 실시예에 따라, 세션 식별자가 애플리케이션 서버에 송신된 후, 이동 디바이스는 유휴 상태로 설정된다. 이동 디바이스는, 푸시 트리거와 연관된 페이징 메시지가 푸시 클라이언트에서 수신될 때, 비-유휴 상태로 설정된다.
일 실시예에 따라, 푸시 트리거는 애플리케이션 클라이언트 인스턴스를 식별하기 위한 푸시 트리거에서 세션 식별자를 사용하여 푸시 클라이언트에서 수신되고 애플리케이션 클라이언트에 전달된다.
일 실시예에 따라, 푸시 트리거는 애플리케이션 클라이언트에서 수신되고 애플리케이션 특정 TCP-기반 접속은 푸시 트리거와 연관된 데이터를 수신하기 위해 애플리케이션 클라이언트와 애플리케이션 서버 사이에 확립된다.
일 실시예에 따라, 이동 디바이스가 제 1 액세스 네트워크로부터 제 2 액세스 네트워크로 이동할 때, 사설 IP 어드레스 또는 세션 식별자가 제 1 및 제 2 액세스 네트워크들 사이에서 변경되는 경우, 등록 정보가 송신된다.
이들 및 다른 이점들은 다음의 상세한 설명 및 첨부하는 도면들을 참조함으로써 당업자들에게 명백할 것이다.
본 발명은 이동 네트워크에서 지속적인 TCP 접속 없이 푸시 서비스를 제공하는 방법을 제공한다.
도 1은 지속적인 TCP 접속-기반 벤더-제어된 푸시 서비스를 실행하기 위한 이동 네트워크의 기능도.
도 2는 일 실시예에 따라 지속적인 TCP 접속 없이 푸시 서비스를 실행하기 위한 이동 네트워크의 기능도.
도 3은 일 실시예에 따라 푸시 서비스 실행 플로차트.
도 4는 일 실시예에 따라 지속적인 TCP 접속 없이 대안적인 푸시 서비스를 실행하기 위한 이동 네트워크의 기능도.
도 5는 일 실시예에 따라 지속적인 TCP 접속 없이 다른 대안적인 푸시 서비스를 실행하기 위한 이동 네트워크의 기능도.
도 6은 지속적인 TCP 접속 없이 푸시 서비스를 실행하기 위해 사용될 수 있는 예시적인 컴퓨터의 고레벨 블록도.
다수의 현재 이동 네트워크들(예를 들면, 3G/4G/LTE)은 다수의 벤더-제어된 푸시 서비스들을 제공하기 위해 사용된 송신 제어 프로토콜(TCP)/인터넷 프로토콜(IP) 기반 데이터 서비스들을 사용하고 있다. 애플리케이션 클라이언트가 서비스 제공자 네트워크에서와 같이 방화벽 뒤에 존재할 때, 새로운 데이터에 대한 네트워크 서버를 종종 폴링해야 하는 애플리케이션들이 여기에 개시된 푸시 서비스를 확립하는 비-TCP 방식으로부터 이익을 얻을 수 있다. 이러한 애플리케이션들의 예들은 종래의 이메일(새로운 메일이 서버에 도착할 때, 푸시 통지가 이동 디바이스에 전송된다), SMS(SMS가 서버에 도달할 때, 푸시 통지가 전송된다), VoIP(착신 호에 대한 푸시 통지), 웹 브라우징(웹 페이지를 리프레시할 때 푸시 통지), 및 증가하는 수의 3G/4G 스마트 이동 디바이스들을 위한 비디오 애플리케이션들을 포함한다. 이러한 비디오 애플리케이션들에 대한 푸시 이벤트 통지들의 예들은 네트워크 상태 변경들, 정책 변경들, 및 견고한 애플리케이션 클라이언트 응답을 요구하는 다른 통지들을 포함하지만, 그로 제한되지 않는다.
여기에 제공된 다수의 실시예들은 무선 서비스 제공자의 코어 네트워크에서 지속적인 TCP 접속 없이 푸시 서비스를 상세히 설명한다. 도 2는 일 실시예에 따라 지속적인 TCP 접속 없이 푸시 서비스를 실행하기 위한 이동 네트워크(200)의 기능도를 도시한다. 도 2에 도시된 푸시 서비스는 2G/3G/4G 또는 다른 이동성 네트워크들상에 서비스를 수신하는 이동 디바이스들(102)의 유휴 모드 요구 사항들과 호환 가능하다. 예를 들면, 비-TCP 푸시 서버(202)는 두 개의 통신 인터페이스들을 갖는다. 제 1 인터페이스(204)는 공개, 즉, 서비스 제공자의 방화벽 외측에 노출되어서, 방화벽(104)의 외측에 애플리케이션 서버(128)는 푸시 트리거(즉, 애플리케이션 서버 이벤트의 통지)를 개시할 수 있다. 제 2 내부 인터페이스(206)는 방화벽(104) 뒤에 서비스 제공자의 사설 네트워크(106) 내에 있어서, 이동 디바이스(102)는 이동 디바이스(102)의 사설 IP 어드레스를 사용하여 비-TCP 푸시 서버(202)로부터 도달가능하다.
이러한 아키텍처는 푸시 서버와 이동 디바이스(102) 사이의 지속적인 TCP-기반 접속에 대한 필요를 제거한다. 예를 들면, 이동 디바이스(102)의 비-TCP 푸시 클라이언트(208)와 비-TCP 푸시 서버(202) 사이의 인터페이스는 UDP 또는 다른 비-지속적인 접속에 기초할 수 있다. 당업자는, 일 실시예에서, UDP-기반 비-지속적인 접속이 신뢰성을 위한 수신 확인 메시지들을 포함할 수 있다는 것을 인식할 것이다. 또한, 지속적인 TCP 접속 없이 푸시 서비스들을 위해 다수의 통신 프로토콜들 중 어느 것이 비-TCP 푸시 클라이언트(208)와 비-TCP 푸시 서버(202) 사이에 통신들을 위해 사용될 수 있다. 여기서 사용되는 바와 같이, 용어 비-TCP는 TCP를 사용하지 않은 접속들 또는 통신들(예를 들면, UDP-기반 접속들 또는 통신들) 및 또한 비-지속적인 TCP 접속들 또는 통신들을 말하고, 예를 들면, TCP 접속은 단일 메시지를 송신하기 위해 확립되고 이후 종료된다.
애플리케이션 서버(128)상의 새로운 데이터의 부재시, 이동 디바이스(102)는 배터리 전력을 절약하기 위해 유휴 모드로 토글링할 수 있다. 예를 들면, 이동 액세스 네트워크(106)는 이동 디바이스들의 위치 찾기를 위해 대응하는 무선 액세스 기술 규정된(즉, 내재된) 위치 갱신 메커니즘을 유지할 수 있다. 이와 같이, 비-TCP 푸시 서버(202)로부터의 패킷들이 유휴 상태에서 이동 디바이스(102)로 송신될 필요가 있을 때, 내재된 페이징 메커니즘은 이동 디바이스(102)를 웨이크 업하고 그가 비-TCP 푸시 서버(202)로부터 푸시 트리거를 수신하게 할 수 있다.
도 3은 일 실시예에 따라 푸시 서비스 실행 플로차트를 도시한다. 단계(300)에서, 무선 서비스 제공자 네트워크를 통한 IP 접속이 확립되고, 이동 디바이스(102)는 사설 IP 어드레스를 수신한다. 단계(301)에서, 애플리케이션 클라이언트(126)에 의한 세션 개시시, 애플리케이션 클라이언트(126)는 고유한 세션 식별자(ID)를 생성함으로써 푸시 서비스에 대해 이동 디바이스(102)상에 비-TCP 푸시 클라이언트(208)를 등록한다. 당업자는 세션 ID가 여기에 목적들을 위한 알고리즘들을 생성하는 임의의 수의 상이한 ID에 의해 생성될 수 있다는 것을 인식할 것이다. 세션 ID는 (a) 비-TCP 푸시 서버(202)가 푸시 트리거를 전파하기 위해 이동 디바이스(102)를 식별하게 하고, (b) 비-TCP 푸시 서버(202)로부터 푸시 트리거를 수신한 후, 비-TCP 푸시 클라이언트(208)가 이동 디바이스(102)상에 대응하는 애플리케이션 클라이언트 인스턴스를 식별하고 착신 푸시 트리거를 특정 애플리케이션 클라이언트(126)에 전파하게 하기 위해 사용된다.
단계(302)에서, 푸시 클라이언트(208)는, 예를 들면, 신뢰를 위해 수신 확인들을 갖는 UDP-기반 접속을 사용하여 세션 ID(단계(301)로부터) 및 IP 어드레스(단계(300)로부터)를 비-TCP 푸시 서버(202)에 등록한다. 대안적으로, 비-지속적인 TCP 접속은 단일 동작(예를 들면, 세션 ID의 등록 또는 개별적인 메시지를 전송)을 위해 확립될 수 있고, 이후 동작이 완료된 후 종료될 수 있다.
단계(303)에서, 애플리케이션 클라이언트(126)(예를 들면, 네트워크에서 애플리케이션 서버(128)와 TCP-기반 통신들을 위해 내재된 애플리케이션을 사용하는)는 애플리케이션 세션을 확립하고 세션 ID를 애플리케이션 서버(128)에 등록해서, 애플리케이션 서버(128)는 필요할 때 푸시 트리거를 송신할 수 있다.
애플리케이션 세션이 행해질 때, 애플리케이션 클라이언트(126)와 애플리케이션 서버(128) 사이의 TCP-기반 접속이 종료되고, 이동 디바이스(102)는 단계(304)에서 배터리 전력을 절약하기 위해 유휴 모드로 토글링한다. 일 실시예에서, 이동 디바이스(102)는 단계(300)에서 유휴 모드에서 수신된 동일한 IP 어드레스를 저장할 수 있다. 이후, 이동 네트워크(106)는 이동 디바이스 위치 정보를 유지하기 위해 위치 갱신 기능을 사용할 수 있다. 대안적으로, 이동 디바이스 IP 어드레스 변경이 요구되는 경우(예를 들면, 네트워크들 사이에 이동 이벤트에 의해), 다수의 3G 및 4G 네트워킹 표준들(3GPP, 3GPP2, WiMAX)은 이동 디바이스가 유휴 모드 밖으로 토글링할 것을 요구하고 새롭게 할당된 IP 어드레스를 재송신하기 위해 활성으로 될 것이다.
단계(305)에서, 네트워크(200)에서 애플리케이션 서버(128)는 트리거 이벤트, 또는 이동 디바이스 데이터 또는 상태 정보의 갱신을 요구하는 새로운 데이터를 수신한다. 트리거 이벤트는 임의의 종류의 이벤트(예를 들면, 새로운 이메일이 이-메일 애플리케이션에 대해 수신되고; 애플리케이션 서버 데이터베이스의 콘텐트들이 갱신되고 애플리케이션 클라이언트(126)가 자동 갱신들을 수신하기 위해 가입되고; 네트워크가 덜 혼잡해지고 큰 비디오 파일은 애플리케이션에 의해 다운로드되거나 업로드될 수 있고; 애플리케이션 서버(128)는 진행하는 비디오 세션에 대한 영향을 갖고 애플리케이션 클라이언트(126)로 전달될 필요가 있는 정책 갱신을 수신하는 등)일 수 있다. 애플리케이션 서버(128)는 애플리케이션 서버(128)가 단계(303)에서 수신한 세션 ID를 포함하는 서비스 제공자 방화벽(104)의 외측에 노출된 비-TCP 푸시 서버(202)의 공중 IP 어드레스에 대한 푸시 트리거를 전송한다. 당업자는 애플리케이션 서버(128)가 임의의 수단에 의해 비-TCP 푸시 서버(202)의 IP 어드레스(예를 들면, IP 어드레스는 잘 알려져 있거나 공개된 IP 어드레스일 수 있다)를 획득할 수 있다는 것을 인식할 것이다. 대안적으로, 비-TCP 푸시 서버(202)의 IP 어드레스는 단계(303)에서 세션 ID에 의해 애플리케이션 서버(128)에 의해 수신될 수 있다.
단계(306)에서, 푸시 트리거와 연관된 이동 디바이스(102)를 결정하기 위해 단계(300)에서 할당된 세션 IP와 이동 디바이스 IP 어드레스 사이에 맵핑을 사용하는 비-TCP 푸시 서버(202)는 UDP-기반 메시지들(예를 들면, 수신 확인을 갖는)을 사용하여 이동 디바이스(102)상의 비-TCP 푸시 클라이언트(208)에 푸시 트리거를 송신한다. 예를 들면, 이동 디바이스(102)가 유휴 상태에 있을 경우, 정규 페이징 메커니즘은 이동 액세스 네트워크(106)에 의해 이동 디바이스(102)에 어드레스된 푸시 트리거를 검출할 때 이동 디바이스(102)를 웨이크 업하도록 작동될 수 있다. 또한, 초기 패킷이 손실되는 경우, 비-TCP 푸시 서버(202)는 이동 디바이스(102)에 푸시 트리거를 재송신한다.
단계(307)에서, 이동 디바이스(102)상의 비-TCP 푸시 클라이언트(208)는 푸시 트리거를 수신하고, 단계(301)에서 생성된 세션 ID를 사용하여 애플리케이션 클라이언트(126)에 푸시 트리거를 전달한다. 예를 들면, 비-TCP 푸시 클라이언트(208)는 푸시 트리거에서 세션 ID를 사용하여 애플리케이션 클라이언트 인스턴스를 식별하고 애플리케이션 클라이언트(126)에 푸시 트리거를 전송할 수 있다.
단계(308)에서, 푸시 트리거를 수신하면, 애플리케이션 클라이언트(126)는 애플리케이션 서버(128)와 새로운 TCP-기반 접속을 확립하고 푸시 트리거와 연관된 데이터(즉, 트리거 이벤트)를 다운로드한다.
다른 실시예에서, 도 2의 푸시 서비스는 신뢰된 3G/4G 이동 네트워크들의 다중 액세스 상호 연동을 규정한 표준들의 경우에 적용가능하다. 도 4는 일 실시예에 따라 지속적인 TCP 접속 없이 대안적인 푸시 서비스를 실행하기 위한 이동 네트워크의 기능도를 도시한다. 도 4에서, 3G/4G 네트워크(106)는 하나 이상의 비-3GPP 기지국들(402)을 갖는 신뢰된 비-3GPP 액세스 네트워크(400)와 상호 연동하고 있는 것으로 도시된다. 실시예의 목적들을 위해, 상호 연동은 3GPP 표준(즉,공통 PDN GW(100)를 IP 앵커로서 사용하는)에서와 같이 규정된다. 상기 도 3에 기술된 동일한 메커니즘이 IP 액세스를 이동 디바이스(102)에 앵커링하는 PDN GW(110)를 갖고, 도 4에서 지속적인 TCP 접속 없는 푸시 서비스를 위해 이용될 수 있다. 일 실시예에서, 푸시 클라이언트-푸시 서버 재등록은 이동 디바이스(102) IP 어드레스가 변하거나 또는 새로운 ID가 생성될 때마다(예를 들면, 애플리케이션 클라이언트(126)는 재시작하거나 또는 애플리케이션 클라이언트의 새로운 인스턴스가 시작될 때) 발생할 수 있다.
도 5는 일 실시예에 따라 지속적인 TCP 접속 없이 다른 대안적인 푸시 서비스를 실행하기 위한 이동 네트워크의 기능도를 도시한다. 도 5에서, 푸시 서비스는 로컬 브레이크아웃을 갖는 Wi-Fi 액세스를 지원한다. 특히, PDN GW(110)은 Wi-Fi 액세스 포인트(500)를 통해 IP 세션을 앵커링하지 않는다. 오히려, IP 세션이 Wi-Fi 액세스 포인트(500)를 통해 확립될 때(일반적으로 Wi-Fi 액세스를 위해 독립적인 방화벽(502)이 존재), 푸시 클라이언트(208)가 확립되고, 푸시 서버(202)의 외부에서 이용가능한 공중 IP 어드레스를 사용하여 푸시 서버(202)와의 Wi-Fi를 통한 지속적인 TCP-기반 접속(504)을 유지한다. 결과로서, 이동 디바이스(102)가 이동 네트워크를 통해 접속될 때, 푸시 트리거는, 이동 네트워크(106)상에 있을 때, 유휴 모드의 완전한 이점들을 허용하는 비-TCP 접속(506)을 통해 전파될 수 있다. 이동 디바이스(102)가 Wi-Fi 액세스 포인트(500)를 통해 접속될 때, 지속적인 TCP-기반 접속(504)이 유지된다. Wi-Fi 액세스에 대한 유휴 모드가 존재하지 않기 때문에, Wi-Fi를 통한 이러한 지속적인 TCP-기반 접속(504)은 커다란 부정적인 영향을 갖지 않는다.
다수의 실시예들은 접속들을 설정하는 것에 연관된 시그널링 부하를 감소시키기 위해 네트워크 운영자들에게 고유한 방식을 제공한다. 현재 이들 접속들은 데이터에 대하여 서버들에게 폴링(풀 모델)하거나, 또는 지속적인 TCP-기반 접속들을 유지하기 위해 주기적인 하트비트들을 전송(경쟁하는 푸시 모델)하도록 구성된다. 여기에서 제안된 UDP-기반 또는 비-지속적인 TCP-기반 접속들을 사용함으로써 이들 모두를 제거하는 것은 주어진 레벨의 네트워크 트래픽을 지원하기 위해 필요한 요구되는 운영자 투자를 감소시킨다.
또한, 이러한 방식은 TCP-기반 푸시 서비스들에 대한 다른 일반적인 문제들을 처리한다. 다수의 실시예들에서, 무선 서비스 제공자에 의해 호스팅된 푸시 서비스를 갖는 것은 이동 디바이스 고객들에 대한 추적 정보에 액세스를 얻는 제 3 자 회사의 프라이버시 문제를 완화시키는 것을 돕는다. 추적 정보는 다수의 실시예들을 실행하기 위해 필요하고, 무선 서비스 제공자들은 모바일 서비스들을 제공하기 위해 고객들과의 합의된 서비스 계약의 일부로서 이동 디바이스들을 추적한다. 또한, 비-TCP 푸시 서버(202)와 비-TCP 푸시 클라이언트(208) 사이의 비-TCP(예를 들면, UDP-기반) 접속을 사용하는 것은, UDP가 접속 없는, 비-지속적인 프로토콜이기 때문에, 데이터 트래픽 용량에 관한 푸시 서버 크기 조절 문제들을 해결한다.
실시예들은 또한, 이동 디바이스들(102)이 하트 비팅 또는 폴링 목적들을 위해서와 같은 네트워크 서버들에 필수적이지 않은 접속들을 위해 더 이상 구성될 필요가 없을 것이기 때문에, 모바일 배터리 수명을 연장함으로써 가입자들에게 이익이 된다. 또한, 실시예들은 모바일 벤더-독립적 푸시 서비스들을 호스트하기 위한 기회를 서비스 제공자들에게 제공한다. 이는, 애플리케이션 제공자들이 이동 디바이스 벤더 또는 이동 디바이스들에 콘텐트를 전송하기 위한 운영 시스템-특정 메커니즘들을 더 이상 실행하지 않아도 되기 때문에, 그들에게 특히 매력적이다.
이동 디바이스 또는 서버에 의해 실행되는 것과 같은 기술된 이들 단계들을 포함하는 상기 기술된 방법 단계들은 잘 알려진 컴퓨터 프로세서들, 메모리 유닛들, 저장 디바이스들, 컴퓨터 소프트웨어, 및 다른 구성요소들을 사용하여 컴퓨터상에 실행될 수 있다. 도 6은 지속적인 TCP 접속 없이 푸시 서비스를 실행하기 위해 사용될 수 있는 일 예시적인 컴퓨터의 고레벨 블록도이다. 컴퓨터(600)는 이러한 동작을 규정하는 컴퓨터 프로그램 명령들을 실행함으로써 컴퓨터(600)의 전체 동작을 제어하는 프로세서(610)를 포함한다. 컴퓨터 프로그램 명령들은 저장 디바이스(620)(예를 들면, 자기 디스크)에 저장될 수 있고, 컴퓨터 프로그램 명령들의 실행이 요구될 때, 메모리(630)로 로딩될 수 있다. 따라서, 도 3의 방법의 단계들은 메모리(630) 및/또는 저장소(620)에 저장된 컴퓨터 프로그램 명령들로 규정될 수 있고, 컴퓨터 프로그램 명령들을 실행하는 프로세서(610)에 의해 제어될 수 있다. 컴퓨터(600)는 도 3의 방법의 단계들을 실행하기 위해 네트워크를 통해 다른 디바이스들과 통신하기 위한 하나 이상의 네트워크 인터페이스들(640)을 포함할 수 있다. 컴퓨터(600)는 또한 컴퓨터(600)와 사용자 상호 작용을 가능하게 하는 다른 입력/출력 디바이스들(650)(예를 들면, 디스플레이, 키보드, 마우스, 스피커들 버튼들, 등)을 포함할 수 있다. 당업자는 실제 컴퓨터의 실행이 다른 구성 요소들을 또한 포함할 수 있고, 도 6은 예시적인 목적들을 위해 이러한 컴퓨터의 구성 요소들 중 일부의 고레벨 표현이라는 것을 인식할 것이다.
전술한 상세한 설명은 모든 점에서 도시적이고 예시적인 것이지만, 제한적이지 않은 것으로 이해되어야 하고, 여기에 개시된 본 발명의 범위는 상세한 설명으로부터가 아니고, 오히려 청구항으로부터 적용가능한 특허법에 의해 허용된 완전한 범위에 따라 결정되는 것으로 이해되어야 한다. 여기에 도시되고 기술된 실시예들은 본 발명의 원리들의 단순히 예시하는 것이고 다수의 변형들이 본 발명의 범위 및 정신을 벗어나지 않고 당업자들에 의해 실행될 수 있다는 것이 이해되어야 한다. 당업자들은 본 발명의 범위 및 정신을 벗어나지 않고 다수의 다른 특징 조합들을 실행할 수 있다.
104 : 방화벽 106 : 셀룰러 액세스
108 : 인터넷 126 : APP 클라이언트
128 : App 서버 202 : 푸시 서버
208 : 푸시 클라이언트

Claims (10)

  1. 푸시 서버에서, 지속적인 송신 제어 프로토콜(TCP) 접속 없이 제 1 내부 인터페이스를 통해 푸시 클라이언트로부터 이동 디바이스에 대한 등록 정보를 수신하는 단계로서, 상기 등록 정보는 상기 이동 디바이스에 대한 사설 인터넷 프로토콜(IP) 어드레스 및 상기 이동 디바이스상에 애플리케이션 클라이언트의 인스턴스와 연관된 이동 디바이스 세션 식별자를 포함하는, 상기 등록 정보를 수신하는 단계;
    상기 푸시 서버에서, 서비스 제공자 방화벽의 외측에 노출된 제 2 인터페이스를 통해 애플리케이션의 이벤트와 연관된 푸시 트리거를 수신하는 단계로서, 상기 푸시 트리거는 푸시 트리거 세션 식별자를 포함하는, 상기 푸시 트리거를 수신하는 단계;
    상기 푸시 트리거 세션 식별자가 상기 이동 디바이스 세션 식별자에 일치할 때, 상기 푸시 트리거가 상기 이동 디바이스상의 상기 애플리케이션 클라이언트의 상기 인스턴스와 연관된다는 것을 결정하는 단계; 및
    상기 푸시 트리거를 상기 푸시 클라이언트에 전송하는 단계를 포함하는, 방법.
  2. 제 1 항에 있어서,
    상기 푸시 트리거는 지속적인 TCP 접속 없이 상기 제 1 내부 인터페이스 중 하나를 통해 또는 셀룰러 네트워크를 통해 상기 푸시 클라이언트에 송신되는, 방법.
  3. 제 1 항에 있어서,
    상기 제 1 내부 인터페이스를 통해 상기 푸시 서버와 상기 푸시 클라이언트 사이의 접속은 사용자 데이터그램 프로토콜(UDP)-기반 접속인, 방법.
  4. 제 1 항에 있어서,
    상기 제 1 내부 인터페이스를 통해 상기 푸시 서버와 상기 푸시 클라이언트 사이의 접속은 비-지속적인 TCP 접속인, 방법.
  5. 제 1 항에 있어서,
    애플리케이션 특정 TCP 접속을 지원하는 인터페이스를 통해 상기 애플리케이션 클라이언트로부터 상기 애플리케이션 서버로 상기 이동 디바이스 세션 식별자를 송신하는 단계를 추가로 포함하는, 방법.
  6. 제 4 항에 있어서,
    상기 세션 식별자가 상기 애플리케이션 서버에 송신되고 송신될 애플리케이션 데이터가 존재하지 않은 후, 상기 이동 디바이스가 유휴 상태로 설정되는, 방법.
  7. 제 5 항에 있어서,
    상기 푸시 트리거와 연관된 페이징 메시지가 상기 푸시 클라이언트에서 수신될 때, 상기 이동 디바이스가 비-유휴 상태로 설정되는, 방법.
  8. 제 1 항에 있어서,
    상기 푸시 클라이언트에서 상기 푸시 트리거를 수신하는 단계; 및
    상기 푸시 트리거를 상기 애플리케이션 클라이언트에 전달하는 단계를 추가로 포함하는, 방법.
  9. 제 7 항에 있어서,
    상기 애플리케이션 클라이언트에서 상기 푸시 트리거를 수신하는 단계; 및
    상기 푸시 트리거와 연관된 데이터를 수신하기 위해 상기 애플리케이션 클라이언트와 상기 애플리케이션 서버 사이에 애플리케이션 특정 TCP-기반 접속을 확립하는 단계를 추가로 포함하는, 방법.
  10. 제 1 항에 있어서,
    상기 이동 디바이스가 상기 제 1 액세스 네트워크로부터 제 2 액세스 네트워크로 이동할 때, 상기 사설 IP 어드레스 또는 상기 세션 식별자가 상기 제 1 및 제 2 액세스 네트워크들 사이에서 변할 경우, 상기 푸시 서버로부터 상기 등록 정보를 송신하는 단계를 추가로 포함하는, 방법.
KR1020157013427A 2012-11-27 2013-11-08 이동 네트워크에서 지속적인 tcp 접속 없는 푸시 서비스 KR101697080B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/686,659 2012-11-27
US13/686,659 US9148765B2 (en) 2012-11-27 2012-11-27 Push service without persistent TCP connection in a mobile network
PCT/US2013/069105 WO2014085056A1 (en) 2012-11-27 2013-11-08 Push service without persistent tcp connection in a mobile network

Publications (2)

Publication Number Publication Date
KR20150074138A true KR20150074138A (ko) 2015-07-01
KR101697080B1 KR101697080B1 (ko) 2017-01-17

Family

ID=49640205

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020157013427A KR101697080B1 (ko) 2012-11-27 2013-11-08 이동 네트워크에서 지속적인 tcp 접속 없는 푸시 서비스

Country Status (6)

Country Link
US (1) US9148765B2 (ko)
EP (1) EP2926518A1 (ko)
JP (1) JP6091644B2 (ko)
KR (1) KR101697080B1 (ko)
CN (1) CN104813637B (ko)
WO (1) WO2014085056A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210118247A (ko) * 2017-01-10 2021-09-29 텔레폰악티에볼라겟엘엠에릭슨(펍) Pdu 세션 관리

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8611895B2 (en) * 2009-10-30 2013-12-17 Apple Inc. Methods for optimizing paging mechanisms using device context information
US8788881B2 (en) * 2011-08-17 2014-07-22 Lookout, Inc. System and method for mobile device push communications
US9143550B2 (en) * 2012-12-01 2015-09-22 Qualcomm Innovation Center, Inc. Graceful degradation of websocket connections to nonpersistent HTTP-based communications
EP2763372B1 (en) * 2013-02-01 2017-05-10 HTC Corporation Electronic apparatus, computer-readable medium and data synchronization method
US9232339B2 (en) * 2013-02-07 2016-01-05 Oracle International Corporation Mobile push notification
CN104301353B (zh) * 2013-07-18 2019-10-08 腾讯科技(深圳)有限公司 一种订阅长尾类信息的方法、装置和系统
KR20150032018A (ko) * 2013-09-17 2015-03-25 삼성전자주식회사 전자 장치 및 전자 장치의 정보 전송 방법, 정보 전송 시스템
US20160165644A1 (en) * 2014-04-18 2016-06-09 Huawei Technologies Co., Ltd. Method for Receiving Push Information and Related Apparatus and System
CN104320425A (zh) * 2014-08-28 2015-01-28 海视云(北京)科技有限公司 消息的接收与发送方法及装置
CN104683360B (zh) * 2015-03-27 2017-11-10 北京理想固网科技股份有限公司 Ip语音通信系统
CN105681385B (zh) * 2015-05-22 2019-01-01 深圳Tcl数字技术有限公司 信息推送方法及装置
TWI578747B (zh) * 2015-07-07 2017-04-11 樹德科技大學 雲端推播服務系統及方法
JP2017033375A (ja) * 2015-08-04 2017-02-09 富士通株式会社 並列計算システム、マイグレーション方法、及びマイグレーションプログラム
CN106487864B (zh) * 2015-09-02 2019-09-27 华为终端有限公司 数据连接的建立方法、服务端及移动终端
EP3363131B1 (en) 2015-10-16 2021-08-18 Hewlett-Packard Development Company, L.P. Notification systems
WO2017077613A1 (ja) * 2015-11-05 2017-05-11 三菱電機株式会社 通信装置及び通信方法
US10021589B2 (en) 2016-01-26 2018-07-10 Sprint Communications Company L.P. Wireless data system that associates internet protocol ports with quality-of-service for user applications
CN106385491B (zh) * 2016-09-05 2019-10-29 努比亚技术有限公司 一种控制推送消息的系统、方法和移动终端
US20180077681A1 (en) * 2016-09-15 2018-03-15 Huawei Technologies Co., Ltd. Method and apparatus for paging an application on a user equipment
AR106244A1 (es) * 2016-09-30 2017-12-27 Esteban Benitez Carlos Dispositivo de ciber-protección personal portátil
US10911954B2 (en) * 2018-03-01 2021-02-02 The Boeing Company Dynamic data package access for mobile device
CN111245874B (zh) * 2018-11-28 2023-12-05 杭州海康威视数字技术股份有限公司 信息推送方法、装置、服务器及存储介质
CN110225084B (zh) * 2019-05-06 2022-06-14 北京口袋时尚科技有限公司 一种保持tcp长连接的方法及装置
EP4207727A4 (en) * 2020-08-31 2024-03-06 Sony Group Corp INFORMATION PROCESSING DEVICE, INFORMATION PROCESSING METHOD, COMMUNICATION SYSTEM AND ENTITY

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020138622A1 (en) * 2001-03-21 2002-09-26 Motorola, Inc. Apparatus and method of using long lived addresses in a private network for push messaging to mobile devices

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7552200B2 (en) 2000-10-19 2009-06-23 Cisco Technology Apparatus and methods for requesting an event notification over a network
US20060264201A1 (en) * 2003-03-10 2006-11-23 Thomson Licensing S.A. Identity mapping mechanism in wlan access control with public authentication servers
KR100842589B1 (ko) * 2004-01-29 2008-07-01 삼성전자주식회사 고속 데이터 전송을 위한 이동통신 시스템에서 이동단말에 대한 푸시 서비스 제공 방법과 이를 위한 푸시서버 장치
US8085741B2 (en) * 2004-03-10 2011-12-27 Core Wireless Licensing S.A.R.L. System and method for pushing content to a terminal utilizing a network-initiated data service technique
US8099764B2 (en) * 2007-12-17 2012-01-17 Microsoft Corporation Secure push and status communication between client and server
US8228848B2 (en) * 2008-11-17 2012-07-24 Sierra Wireless, Inc. Method and apparatus for facilitating push communication across a network boundary
US20100138501A1 (en) * 2008-12-03 2010-06-03 Microsoft Corporation End-to-end validation in a push environment
US8224976B2 (en) * 2008-12-24 2012-07-17 Juniper Networks, Inc. Using a server's capability profile to establish a connection
US8264997B2 (en) * 2009-02-05 2012-09-11 Samsung Electronics Co., Ltd. System and method for providing message push service in wireless communication system
US8275890B2 (en) * 2009-06-03 2012-09-25 International Business Machines Corporation Detecting an inactive client during a communication session
CN102316423B (zh) * 2010-07-06 2014-03-12 华为技术有限公司 一种信息推送方法、装置和系统
US8744500B2 (en) * 2011-04-19 2014-06-03 Samsung Electronics Co., Ltd Method and apparatus for managing push service
US8649768B1 (en) * 2011-08-24 2014-02-11 Cellco Partnership Method of device authentication and application registration in a push communication framework
KR20140032542A (ko) * 2012-08-30 2014-03-17 삼성전자주식회사 무선 네트워크에서 푸시 서비스의 hearthbeat 주기 결정 방법 및 장치

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020138622A1 (en) * 2001-03-21 2002-09-26 Motorola, Inc. Apparatus and method of using long lived addresses in a private network for push messaging to mobile devices

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210118247A (ko) * 2017-01-10 2021-09-29 텔레폰악티에볼라겟엘엠에릭슨(펍) Pdu 세션 관리
US11412473B2 (en) 2017-01-10 2022-08-09 Telefonaktiebolaget Lm Ericsson (Publ) PDU session management

Also Published As

Publication number Publication date
JP6091644B2 (ja) 2017-03-08
CN104813637A (zh) 2015-07-29
US20140148205A1 (en) 2014-05-29
WO2014085056A1 (en) 2014-06-05
JP2016506645A (ja) 2016-03-03
CN104813637B (zh) 2017-12-08
US9148765B2 (en) 2015-09-29
KR101697080B1 (ko) 2017-01-17
EP2926518A1 (en) 2015-10-07

Similar Documents

Publication Publication Date Title
KR101697080B1 (ko) 이동 네트워크에서 지속적인 tcp 접속 없는 푸시 서비스
US8503300B2 (en) Efficient messaging over internet protocol
US9247018B2 (en) Method and apparatus for cooperation between push devices
US8437757B2 (en) Systems for providing peer-to-peer communications
KR101447792B1 (ko) Ussd 이동 방법 및 장치
CN104429037B8 (zh) 用于连接到通信设备的方法、设备及系统
EP2060085B1 (en) Sending keep-alive messages on behalf of another device via keep-alive proxy
US20090252072A1 (en) Method and Apparatus for Maintaining Long-Lived Connections Between a Mobile Client and a Server
AU2008333411B2 (en) Mobile access to internet-based application with reduced polling
US9565635B2 (en) Activating a mobile terminal from mobile network side
JP2019525553A (ja) 低頻度の小さいデータのための効率的な送達方法および装置
CN113491148A (zh) 用于支持事件监视的方法和装置
EP1661314B1 (en) Providing address information for reaching a wireless terminal
US8914049B2 (en) Method for managing a status of a mobile station in a wireless network
KR20090114421A (ko) 이종 통신 시스템에서의 핫라이닝을 위한 방법 및 장치
US20080082612A1 (en) Methods handset and system for downloadable ims middleware
WO2015119003A1 (ja) サービス制御システム、ユーザ装置、及びサービス制御方法
JP6971118B2 (ja) IoT機器とのデータの送受信を行うための装置、方法及びプログラム
EP1614271A2 (en) Proxy support of mobile ip
JP7262550B2 (ja) IoT機器とのデータの送受信を行うための装置、方法及びプログラム
KR20130023971A (ko) 트래픽 제어 게이트웨이 및 이를 이용한 트래픽 제어 방법

Legal Events

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