KR101219909B1 - 네트워크 상태에 응답하여 네트워크 통신을 최적화하기 위한 방법 및 시스템 - Google Patents

네트워크 상태에 응답하여 네트워크 통신을 최적화하기 위한 방법 및 시스템 Download PDF

Info

Publication number
KR101219909B1
KR101219909B1 KR1020077026438A KR20077026438A KR101219909B1 KR 101219909 B1 KR101219909 B1 KR 101219909B1 KR 1020077026438 A KR1020077026438 A KR 1020077026438A KR 20077026438 A KR20077026438 A KR 20077026438A KR 101219909 B1 KR101219909 B1 KR 101219909B1
Authority
KR
South Korea
Prior art keywords
timeout
data change
timeout period
network
adjusting
Prior art date
Application number
KR1020077026438A
Other languages
English (en)
Other versions
KR20080012292A (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 KR20080012292A publication Critical patent/KR20080012292A/ko
Application granted granted Critical
Publication of KR101219909B1 publication Critical patent/KR101219909B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/224Monitoring or handling of messages providing notification on incoming messages, e.g. pushed notifications of received messages
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/58Message adaptation for wireless communication

Abstract

모바일 장치와 네트워크 애플리케이션 간의 통신을 용이하게 해주는 시스템 및 방법이 제공된다. 모바일 장치는 타임아웃 구간(time out interval)을 포함하는 데이터 변경 정보에 대한 요청을 전송한다. 네트워크 애플리케이션은 그 요청을 수신하고 데이터 변경 요청의 수신 이후로 경과된 시간을 측정한다. 네트워크 애플리케이션이 타임아웃 구간이 만료되었다는 통지를 모바일 장치 클라이언트로 전송하거나 네트워크 지정 타임아웃(network specified time out)이 일어난다. 통지가 수신되거나 네트워크 타임아웃이 검출될 때, 모바일 클라이언트 장치는 차후의 데이터 변경 요청에 대한 타임아웃 구간을 조정한다.
모바일 장치, 네트워크 통신, 푸시 데이터 모델, 풀 데이터 모델, 타임아웃 구간

Description

네트워크 상태에 응답하여 네트워크 통신을 최적화하기 위한 방법 및 시스템{SYSTEM AND METHOD FOR OPTIMIZING NETWORK COMMUNICATION IN RESPONSE TO NETWORK CONDITIONS}
본 발명은 일반적으로 모바일 장치, 컴퓨터 소프트웨어 및 통신 장치에 관한 것으로서, 상세하게는 네트워크 조건에 응답하여 네트워크 통신을 최적화하는 시스템 및 방법에 관한 것이다.
일반적으로 말하면, 이동 전화 및 핸드-헬드 장치 등의 모바일 장치는 다른 모바일 장치 및/또는 컴퓨터 장치와 데이터를 교환하기 위해 통신 네트워크를 이용한다. 일반적인 실시예에서, 모바일 장치는 데이터를 전송 및 수신하기 위해 무선 통신 네트워크 및 여러가지 네트워크 프로토콜을 이용할 수 있다. 이러한 실시예에서, 모바일 장치는 모바일 장치를 갖는 사용자가 전자 메일을 수신 및 전송할 수 있게 해주기 위해 연속적인(continuous) 또는 반연속적인(semi-continuous) 무선 연결을 유지할 수 있다. 컴퓨팅 장치 처리 자원 및 무선 네트워크 통신 대역폭이 계속하여 증가함에 따라, 전자 메일을 수신/전송하기 위해 무선 지원 모바일 장치(wireless enabled mobile device)를 사용하는 일이 상당히 증가하였다.
도 1은 셀룰러 통신 네트워크를 통해 모바일 장치로 전자 메일 데이터를 전 송하는 일을 용이하게 해주는 시스템(100)을 나타낸 블록도이다. 시스템(100)은 일반적으로 "푸시" 데이터 모델(push data model)이라고 하며, 이 경우 전자 메일 메시지 등의 데이터가 수신될 때 그 데이터가 클라이언트로 전송된다. 도 1을 참조하면, 시스템(100)은 어떤 형태의 무선(예를 들어, 셀룰러) 전송 기능을 포함하는 이동 전화, 핸드-헬드 장치, 기타 등등의 복수의 클라이언트(102)를 포함한다. 도 1에 나타낸 바와 같이, 모바일 장치(102) 각각은 몇개의 모바일 장치 통신사업자(mobile device operator)(104) 중 하나와 무선 통신을 하고 있다. 일반적으로 말하면, 모바일 장치 통신사업자(104)는 임의의 수의 모바일 장치(102)와 무선 주파수 기반 통신을 계속하는 서비스 제공자이다. 셀룰러 통신 네트워크 등을 통한 모바일 장치(102)와 모바일 장치 통신사업자(104) 간의 무선 통신은 잘 알려져 있으며, 더 상세히 기술하지 않을 것이다.
계속하여 도 1을 참조하면, 각각의 모바일 장치 통신사업자(104)는 또한 데이터 서비스 제공자(106)와도 통신을 하고 있다. 일반적인 데이터 서비스 제공자(106)는 식별된 모바일 사용자에 대응하는 메시지를 전송하도록 구성되어 있는 서버 컴퓨터일 수 있다. 이하에서 보다 상세히 설명하게 되는 바와 같이, 데이터 서비스 제공자(106)는 들어오는 데이터(예를 들어, 전자 메일 메시지)가 있는지 모니터링을 하고 선택된 모바일 장치(102)로 전송하기 위해 그 데이터를 대응하는 모바일 장치 통신사업자(104)로 푸시(push)한다. 데이터 서비스 제공자(106)와 모바일 통신사업자(104) 간의 네트워크 연결은 무선 통신 네트워크 및/또는 유선 통신 네트워크를 통할 수 있다. 데이터 서비스 제공자(106)는 또한 다수의 전자 메일 인터페이스 컴퓨팅 장치(108)와도 통신을 하고 있다. 전자 메일 인터페이스 컴퓨팅 장치(108)는 일반적으로 로컬 네트워크 메일 저장소(local network mail repository)(110)와 데이터 서비스 제공자(106) 간의 인터페이스로서 역할하는 특별히 구성된 컴퓨팅 장치에 대응한다.
실제로, 새로운 전자 메일 등의 갱신된 정보가 네트워크 메일 저장소(110)에 수신될 때, 전자 메일 인터페이스 컴퓨팅 장치(108)는 그 메일의 복사본을 획득하고 데이터 서비스 제공자(106)에게 통지를 전달한다. 데이터 서비스 제공자(106)는 들어오는 메시지 통지를 처리하여 그 메일을 수신할 모바일 장치(102)를 식별한다. 이어서, 데이터 서비스 제공자(106)는 통지 및/또는 그 메일을 대응하는 모바일 통신사업자(104)로 전달하고, 이 모바일 통신사업자(104)는 그 정보를 선택된 모바일 장치(102)로 전송한다.
이 방식에서, 데이터가 데이터 서비스 제공자(106)에 의해 수신될 때, 모바일 장치(102)는 통지/데이터를 수신한다. 이 방식이 모바일 장치(102)로의 데이터의 실시간 또는 거의 실시간 전송을 제공하지만, 이 방식은 다수의 특수화된 컴퓨팅 장치 애플리케이션 및/또는 특수화된 비지니스 관계(business relationship)를 필요로 한다. 예를 들어, 일반적인 실시예에서, 각각의 로컬 네트워크는 들어오는 메시지 통지를 데이터 서비스 제공자(106)로 전달하기 위해 전자 메일 인터페이스 컴퓨팅 장치(108)를 유지할 필요가 있다. 그에 부가하여, 시스템(100)은, 일반적으로 각각의 모바일 장치 사용자에게 서비스 요금을 부과하는 중앙집중식 정보 수집 및 분배 센터(centralized information collection and distribution center)(예를 들어, 데이터 서비스 제공자(106))를 필요로 한다. 게다가, 이 방식에서는, 데이터 서비스 제공자가 선택된 모바일 장치(102)와 접촉을 개시할 수 있도록 해주기 위해, 데이터 서비스 제공자(106)가 다수의 모바일 통신사업자와 특수화된 소프트웨어 등의 적절한 통신 인터페이스 및 특수화된 비지니스 관계를 유지해야만 한다.
도 2는 셀룰러 통신 네트워크를 통해 전자 메일 데이터를 모바일 장치로 전송하는 것을 용이하게 해주는 대안적인 시스템(200)을 나타낸 블록도이다. 이 시스템(200)은 일반적으로 "풀" 데이터 모델(pull data model)이라고 하며, 이 경우 클라이언트가 새로운 데이터를 요청한 것에 응답하여 전자 메일 메시지 등의 데이터가 모바일 장치 등의 클라이언트로 전송된다. 시스템(100)(도 1)과 유사하게, 시스템(200)은 어떤 형태의 무선 전송 기능(예를 들어, 셀룰러 통신 기능)을 갖는 복수의 모바일 장치 클라이언트(202)를 포함한다. 모바일 장치(202) 각각은 몇개의 모바일 장치 통신사업자(204) 중 하나와 무선 통신을 하고 있다. 다른 대안으로서, 모바일 장치(202)는 또한 IEEE 802.11 통신 표준에 정의된 것 등의 단거리 무선 연결(short range wireless connection)을 통해 네트워크 통신을 설정할 수 있다.
양 실시예에서, 모바일 장치 통신사업자(204)와 각각의 모바일 장치(202) 간의 무선 통신 링크는 전자 메일 메시지를 전송하기 위한 특수화된 통신 링크가 아니다. 그 대신에, 이 통신 링크는 인터넷 등의 원거리 통신망(wide area network, WAN)(206)과의 종래의 데이터 전송 통신 링크이다. 예를 들어, 한 통상의 실시예 에서, 무선 지원 모바일 장치(202)는 TCP/IP(Transmission Control Protocol/Internet Protocol) 프로토콜에 따라 인터넷을 통해 데이터를 전송할 수 있다. 모바일 장치(202)는 로컬 전자 메일 인터페이스 컴퓨팅 장치(208)와 직접 인터페이스하기 위해 네트워크 연결(206)을 이용한다.
실제로, 모바일 장치(202)는, 일반적으로 보안 데이터 전송 프로토콜(secure data transmission protocol)을 통해, 전자 메일 인터페이스 컴퓨팅 장치(208)와 통신 링크를 설정한다. 이어서, 모바일 장치(202)는 임의의 갱신된 정보(예를 들어, 새로운 전자 메일)를 수신하라는 요청을 전자 메일 인터페이스 컴퓨팅 장치(208)로 직접 전송한다. 모바일 장치 사용자에 대한 새로운 데이터가 있는 경우, 전자 메일 인터페이스 컴퓨팅 장치(208)는 전자 메일 인터페이스 컴퓨팅 장치(208)로부터 그 데이터를 풀(pull)하라고 모바일 장치(202)에 지시하는 적절한 응답을 발생한다. 새로운 데이터가 없는 경우, 전자 메일 인터페이스 컴퓨팅 장치(208)는 요청측 모바일 장치(202)에 대해 부정적인 응답을 발생한다. 모바일 장치 응답이 처리되면, 모바일 장치(202)와 전자 메일 인터페이스 컴퓨팅 장치(208) 간의 통신 링크가 종료된다.
네트워크 연결을 통해 모바일 장치(202)와 전자 메일 인터페이스 컴퓨팅 장치(208) 간의 직접 통신 채널(direct communication channel)을 가능하게 해줌으로써, 시스템(200)은 각각의 모바일 통신사업자(204)에서 각각의 로컬 네트워크에 대한 특수화된 소프트웨어/컴퓨팅 장치의 필요성을 완화시킨다. 그렇지만, "풀" 데이터 모델을 사용하는 종래의 시스템은 들어오는 데이터가 수신될 때 그 데이터가 동시에 전달될 수 없다는 점에서 결점이 있을 수 있다. 이 결점이 모바일 장치(202)가 상기한 데이터 변경 요청을 발생하는 빈도수를 증가시킴으로써 감소될 수 있지만, 모바일 장치(202)와 전자 메일 인터페이스 컴퓨팅 장치(208) 간의 통신 링크를 설정하는 일반적인 방법은 모바일 장치의 전원 자원(power resource)을 소모한다. 예를 들어, 모바일 장치(202)가 모바일 통신사업자에의 양호한 데이터 연결을 갖지 않는 경우, 새로운 데이터에 대한 반복적인 요청이 불필요하게 서비스의 전원 자원을 소모하게 된다.
따라서, 컴퓨팅 장치의 전원 자원 소모의 완화가 균형을 이루게 하면서, 데이터가 수신될 때 들어오는 데이터 통지를 동시에 전달하는 네트워크 애플리케이션과 컴퓨팅 장치 간의 통신을 용이하게 해주는 시스템 및 방법이 필요하다.
모바일 장치와 네트워크 애플리케이션 간의 통신을 용이하게 해주는 시스템 및 방법이 제공된다. 모바일 장치는 타임아웃 구간(time out interval)을 포함하는 데이터 변경 정보에 대한 요청을 전송한다. 네트워크 애플리케이션은 그 요청을 수신하고 데이터 변경 요청의 수신 이후로 경과된 시간을 측정한다. 네트워크 애플리케이션이 타임아웃 구간이 만료되었다는 통지를 모바일 장치 클라이언트로 전송하거나 네트워크 지정 타임아웃(network specified time out)이 일어난다. 통지가 수신되거나 네트워크 타임아웃이 검출될 때, 모바일 클라이언트 장치는 차후의 데이터 변경 요청에 대한 타임아웃 구간을 조정한다.
본 발명의 한 측면에 따르면, 모바일 장치와 네트워크 애플리케이션 간의 통신을 용이하게 해주는 방법이 제공된다. 이 방법에 따르면, 모바일 장치가 제1 데이터 변경 요청을 전송한다. 이 데이터 변경 요청은 응답을 반환하기 위한 제1 타임아웃 구간을 포함한다. 모바일 장치는 상기 제1 데이터 변경 요청에 대응하는 이벤트가 발생했는지를 판정하고 상기 제1 데이터 변경 요청에 대응하는 이벤트에 기초하여 응답을 반환하기 위한 제2 타임아웃 구간을 발생한다. 모바일 장치는 데이터 변경 없음 통지(no data change notification)의 수신에 기초하여 상기 제1 타임아웃 구간을 조정하거나 네트워크 지정 타임아웃 이벤트를 검출함으로써 응답을 반환하기 위한 상기 제2 타임아웃 구간을 발생한다. 모바일 장치는 이어서 응답을 반환하기 위한 상기 제2 타임아웃 구간을 포함하는 제2 데이터 변경 요청을 전송한다.
본 발명의 다른 측면에 따르면, 모바일 장치와 네트워크 애플리케이션 간의 통신을 용이하게 해주는 방법이 제공된다. 이 방법에 따르면, 모바일 장치는 응답을 반환하기 위한 제1 타임아웃 구간을 포함하는 제1 데이터 변경 요청을 전송한다. 모바일 장치는 상기 제1 데이터 변경 요청에 대응하는 이벤트가 발생했는지를 판정하고, 일련의 조정 기준을 상기 제1 데이터 변경 요청에 대응하는 상기 이벤트에 연관시킨다. 모바일 장치는 상기 일련의 조정 기준으로부터의 시간 상수(time constant)를 적용함으로써 응답을 반환하기 위한 제2 타임아웃 구간을 발생한다. 모바일 장치는 이어서 응답을 반환하기 위한 상기 제2 타임아웃 구간을 포함하는 제2 데이터 변경 요청을 전송한다.
본 발명의 또다른 측면에 따르면, 모바일 장치와 네트워크 애플리케이션 간의 통신을 용이하게 해주는 컴퓨터 실행가능 컴포넌트를 갖는 컴퓨터 판독가능 매체가 제공된다. 컴퓨터 실행가능 컴포넌트는 데이터 변경 요청을 상기 네트워크 애플리케이션으로 전송하고 이전의 데이터 변경 요청에 대응하는 이벤트를 수신하는 통신 컴포넌트(communication component)를 포함한다. 상기 데이터 변경 요청은 응답을 제공하기 위한 타임아웃 구간을 포함한다. 컴퓨터 실행가능 컴포넌트는 또한 이전의 데이터 변경 요청에 대응하는 이벤트에 기초하여 응답을 반환하기 위한 타임아웃 구간을 발생하는 프로세싱 컴포넌트(processing component)를 포함한다. 상기 프로세싱 컴포넌트는 상기 통신 컴포넌트에 의해 수신된 이전의 데이터 변경 요청에 대응하는 상기 이벤트에 일련의 조정 기준을 적용함으로써 응답을 반환하기 위한 상기 타임아웃 구간을 발생한다.
도 1은 푸시 데이터 모델(push data model)에 따라 셀룰러 통신 네트워크를 통해 모바일 장치로 전자 메일 데이터를 전송하는 것을 용이하게 해주는 시스템의 블록도.
도 2는 풀 데이터 모델(pull data model)에 따라 셀룰러 통신 네트워크를 통해 모바일 장치로 전자 메일 데이터를 전송하는 것을 용이하게 해주는 시스템의 블록도.
도 3a는 본 발명의 한 측면에 따라 모바일 장치가 타임아웃 구간을 포함하는 데이터 변경 요청을 발생하는 것을 나타내는 도 2의 시스템의 블록도.
도 3b는 본 발명의 한 측면에 따라 네트워크 애플리케이션이 데이터 변경의 통지를 전송하는 것을 나타내는 도 2의 시스템의 블록도.
도 3c는 본 발명의 한 측면에 따라 네트워크 애플리케이션이 타임아웃 구간 만료 통지를 전송하는 것을 나타내는 도 2의 시스템의 블록도.
도 3d는 본 발명의 한 측면에 따라 모바일 장치가 타임아웃 구간 만료를 처리하는 것을 나타내는 도 2의 시스템의 블록도.
도 4는 본 발명의 한 측면에 따라 모바일 장치 클라이언트에 의해 구현되는 데이터 변경 요청 전송 및 모니터링 루틴을 나타낸 흐름도.
도 5a는 본 발명의 한 측면에 따라 모바일 장치 클라이언트에 의해 구현되는 타임아웃 구간 조정 서브루틴을 나타낸 흐름도.
도 5b는 본 발명의 한 측면에 따라 모바일 장치 클라이언트에 의해 구현되는 성공적인 요청 조정 서브루틴을 나타낸 흐름도.
도 5c는 본 발명의 한 측면에 따라 모바일 장치 클라이언트에 의해 구현되는 대안의 성공적인 요청 조정 서브루틴을 나타낸 흐름도.
도 5d는 본 발명의 한 측면에 따라 모바일 장치 클라이언트에 의해 구현되는 네트워크 타임아웃 조정 서브루틴을 나타낸 흐름도.
도 6은 본 발명에 따라 네트워크 애플리케이션에 의해 구현되는 클라이언트 데이터 변경 요청 처리 루틴을 나타낸 흐름도.
본 발명의 상기한 측면들 및 부수 이점들 중 다수는 첨부 도면과 관련하여 기술되어 있는 이하의 상세한 설명을 참조하면 더 잘 이해될 것이다.
일반적으로 말하면, 본 발명은 클라이언트 장치와 네트워크 애플리케이션 간의 통신을 최적화하는 시스템 및 방법에 관한 것이다. 보다 구체적으로는, 본 발명은 무선 네트워크를 통한 모바일 장치와 네트워크 애플리케이션 간의 통신을 최적화하는 시스템 및 방법에 관한 것이다. 모바일 장치가 네트워크 애플리케이션에 전자 메일 메시지 형태로 데이터 변경 정보를 요청하는 풀 데이터 모델(pull data model)을 포함하는 아키텍처와 관련하여 본 발명이 기술될 것이다. 게다가, 모바일 장치와 네트워크 애플리케이션 간의 통신 링크를 유지하기 위해 타임아웃 구간을 이용하는 것과 관련하여 본 발명이 기술될 것이다. 비록 본 발명이 모바일 장치, 무선 통신 네트워크 및/또는 전자 메일 전송과 관련하여 기술될 것이지만, 당업자라면 개시된 실시예들이 사실상 예시적인 것이고 제한적인 것으로 해석되어서는 안된다는 것을 잘 알 것이다.
본 발명의 예시적인 실시예에서, 모바일 장치(202) 등의 클라이언트와 전자 메일 인터페이스 컴퓨팅 장치(208) 등의 네트워크 애플리케이션 간의 정보의 전송을 용이하게 해주기 위해 시스템(200)(도 2) 등의 풀 데이터 모델을 구현하는 시스템이 이용될 수 있다. 모바일 장치(202) 및 전자 메일 인터페이스 컴퓨팅 장치(208)는 인터넷 등의 일반적인 네트워크 데이터 연결(206)을 통해 정보를 전송한다. 네트워크(206)로부터 모바일 장치(202)로의 연결은 모바일 장치 통신사업자(204)(예를 들어, 무선 통신 링크를 통한 데이터 연결)를 통해 또는 네트워크로의 직접 무선 연결(예를 들어, 블루투스 프로토콜 무선 연결)을 통해 용이하게 행해질 수 있다.
본 발명에 따르면, 모바일 장치는 전자 메일 인터페이스 컴퓨팅 장치(208)에 데이터 변경 요청을 발행한다. 이 데이터 변경 요청은 전자 메일 인터페이스 컴퓨팅 장치(208)에 도착한 새로운 데이터(예를 들어, 새로운 이메일 메시지)에 대한 등록 요청(registration request) 및 타임아웃 구간(time-out interval)을 포함할 수 있다. 이 타임아웃 구간은 전자 메일 인터페이스 컴퓨팅 장치(208)가 새로운 데이터에 대한 등록 요청에 대해 긍정적 또는 부정적 응답을 제공해야만 하는 시간을 규정한다. 종래의 데이터 변경 요청과 달리, 전자 메일 인터페이스 컴퓨팅 장치(208)는, 새로운 데이터가 이용가능하지 않은 경우, 데이터 변경 요청에 대해 즉각적인 응답을 제공하지 않는다. 그 대신에, 전자 메일 인터페이스 컴퓨팅 장치(208)는 정보 변경(예를 들어, 새로운 전자 메일의 도착) 또는 타임아웃 구간의 만료를 검출할 때까지 모바일 장치(202)와 통신 링크를 유지한다. 어느 한 이벤트가 발생할 시에, 전자 메일 인터페이스 컴퓨팅 장치(208)는 적절한 응답을 모바일 장치(202)로 전송한다. 차례로, 모바일 장치(202)는 여러가지 네트워크 조건에 따라 타임아웃 구간을 갱신하고 갱신된 타임아웃 구간과 함께 차후의 데이터 변경 요청을 전송할 수 있다. 여러가지 네트워크 조건 변화에 맞게 타임아웃 구간을 갱신할 수 있는 것은 전원 자원 소모 유지(power resource consumption maintenance)를 용이하게 해준다.
이제부터 도 3a 내지 도 3d를 참조하여, 본 발명에 따라 타임아웃 구간을 갖는 클라이언트 요청을 처리하는 여러가지 실시예들에 대해 기술할 것이다. 도 3a를 참조하면, 이 프로세스는 모바일 장치 상의 클라이언트가 등록 요청 및 타임아 웃 구간을 발생하는 것으로 시작된다. 본 발명의 예시적인 실시예에서, 이 등록 요청은 클라이언트가 수신하고자 하는 정보의 유형 및 여러가지 구성 정보(통지 우선 순위(notification preference), 클라이언트 인증 정보, 기타 등등)의 등록을 포함할 수 있다. 이하에서 보다 상세히 기술하게 되는 바와 같이, 타임아웃 구간은 고정된 기간 형태이거나 타임아웃 구간의 계산에 대비한 일련의 기준으로 되어 있을 수 있다. 타임아웃 구간은 모바일 장치 클라이언트 애플리케이션, 모바일 장치 통신사업자(204) 및 전자 메일 인터페이스 컴퓨팅 장치(208)에 의해 설정된 기본 기간(default period)일 수 있다.
일반적인 실시예에서, 모바일 장치 통신사업자(204)는 통신 네트워크 타임아웃 구간을 유지할 수 있으며, 이 구간으로 인해 모바일 장치(202)로/로부터 데이터가 전송되지 않는 경우 통신 링크가 단절(drop)된다. 네트워크 지정 타임아웃은 여러가지 네트워크 통신 장비(예를 들어, 스위치, 기타 등등)에 의존할 수 있으며, 통신 네트워크의 서로 다른 부분들을 따라 다를 수 있다. 게다가, 네트워크 지정 타임아웃은 하루 중의 시간 및/또는 네트워크 부하에 따라 다를 수 있다. 종종, 네트워크 지정 타임아웃은 모바일 장치(202)가 모르고 있을 수 있거나 변할 수 있다. 따라서, 본 발명의 한 측면에 따르면, 네트워크와의 통신 링크가 "양호(good)"한 것으로 생각되는 경우, 모바일 장치(202)는 모바일 장치 지정 타임아웃 구간을 네트워크 지정 타임아웃 구간에 이르도록 조정함으로써 가장 통상적인 네트워크 지정 타임아웃 구간을 알아낼 수 있다. 본 발명의 다른 측면에 따르면, 네트워크와의 통신 링크가 "양호하지 않은(poor)" 것으로 생각되는 경우, 모바일 장치(202)는 통신 장애를 보다 즉각적으로 해결하기 위해 타임아웃 구간을 최소화하려고 시도할 수 있다. 이 등록 요청 및 타임아웃 구간은 네트워크(206)를 통해 전송되고 전자 메일 인터페이스 컴퓨팅 장치(208) 또는 전자 메일 인터페이스 컴퓨팅 장치(208) 상의 특수화된 애플리케이션에 의해 수신된다.
등록 요청을 처리할 시에, 전자 메일 인터페이스 컴퓨팅 장치(208)는, 허가된 바에 따라, 모든 요청된 정보의 수신을 위한 모바일 장치 클라이언트를 등록한다. 상기한 바와 같이, 등록된 클라이언트가 현재 이용할 수 있는 새로운 데이터가 없는 경우, 전자 메일 인터페이스 컴퓨팅 장치(208)는 부정적 응답을 모바일 장치(202)에 자동적으로 전송하지 않는다. 그렇지만, 데이터 변경 요청이 계속 보류 중이기 때문에, 통신 링크가 즉각 종료되지는 않는다.
이제 도 3b를 참조하면, 일 실시예에서, 전자 메일 인터페이스 컴퓨팅 장치(208)는 모바일 장치(202)로 전달될 필요가 있는, 데이터 변경이 행해졌다는 통지를 수신한다. 본 발명의 예시적인 실시예에서, 이 통지는 모바일 장치(202)에 대응하는 사용자가 새로운 전자 메일을 수신했다는 전자 메일 서버/클라이언트 등의 전자 메일 저장소로부터의 통지를 포함할 수 있다. 전자 메일 인터페이스 컴퓨팅 장치(208)는 새로운 데이터가 이용가능하다는 통지를 네트워크(206)를 거쳐 모바일 장치(202)로 전송한다. 본 발명의 예시적인 실시예에서, 이 통지는 그 데이터가 검색될 것인지 여부를 결정하기 위해 사용자 및/또는 모바일 장치에 의해 사용될 수 있는 설명 정보 또는 다른 기준을 포함할 수 있다. 데이터가 검색되어야 하는 경우, 모바일 장치(202)는 "HTTP(Hypertext Transfer Protocol)" 등의 종래의 공지의 데이터 프로토콜(이에 대해서는 더 상세히 기술하지 않음)에 따라 데이터 검색 요청을 전자 메일 인터페이스 컴퓨팅 장치(208)로 전송한다. 데이터가 검색되었으면, 도 3a에 도시된 프로세스는 모바일 장치(202)가 새로운 데이터 등록 요청 및 타임아웃 구간을 전송하는 것에 의해 반복될 수 있다.
이제 도 3c를 참조하면, 다른 실시예에서, 전자 메일 인터페이스 컴퓨팅 장치(208)는 각각의 등록된 모바일 장치 클라이언트에 대한 마지막 통신 이후로 경과된 기간을 계속 모니터링한다. 전자 메일 인터페이스 컴퓨팅 장치(208)는, 등록된 클라이언트에 대한 타임아웃 구간이 만료되었음을 검출하는 경우, 타임아웃 구간이 만료되었고 새로운 데이터 없음 통지가 수신되었다는 통지를 모바일 장치(202)로 전송한다. 타임아웃 구간 만료 통지를 전송함으로써, 전자 메일 인터페이스 컴퓨팅 장치(208)는 모바일 장치(202)와의 통신 링크가 모바일 장치 통신사업자(204)에 의해 종료 또는 단절되는 것을 방지한다.
이하에서 더 상세히 설명하게 되는 바와 같이, 타임아웃 구간 만료 통지의 수신 시에, 모바일 장치(202)는 이전의 타임아웃 구간을 갱신할 수 있다. 본 발명의 예시적인 실시예에서, 모바일 장치(202)는 각종의 네트워크 조건 중 하나를 측정 또는 관찰함으로써 타임아웃 구간을 갱신한다. 이어서, 모바일 장치(202)는 타임아웃 구간이 측정된 또는 관찰된 네트워크 조건 및/또는 이전에 관찰된 네트워크 조건의 이력에 기초하여 조정되어야만 하는지 여부를 판정한다. 타임아웃 구간을 조절 또는 조정할 시에, 모바일 장치(202)는 네트워크(206)를 통해 갱신된 타임아웃 구간과 함께 새로운 등록 요청을 전송한다. 전자 메일 인터페이스 컴퓨팅 장 치(208)는 새로운 요청을 받고 갱신된 타임아웃 구간을 사용하여 등록 프로세스 및 타임아웃 클럭 측정을 반복한다.
이제 도 3d를 참조하면, 추가적인 실시예에서, 모바일 장치(202)는 또한 이전의 등록 요청의 전송 이후에 경과된 시간을 모니터링한다. 모바일 장치(202)가 타임아웃 구간의 만료를 검출하고 전자 메일 인터페이스 컴퓨팅 장치(208)로부터 새로운 데이터 없음 통지를 수신하지 않은 경우, 모바일 장치(202)는 통신 링크가 예기치 않게 종료되었거나(예를 들어, 네트워크 에러) 다른 방식으로 종료된 것으로(예를 들어, 네트워크 타임아웃 구간의 만료에 기초한 네트워크 타임아웃) 가정한다. 일 실시예에서, 그 종료가 통신 네트워크 타임아웃에 기초한 것인 경우, 모바일 장치(202)는 타임아웃 구간을 갱신하고 네트워크(206)를 통해 갱신된 타임아웃 구간과 함께 등록 요청을 전송한다. 전자 메일 인터페이스 컴퓨팅 장치(208)는 새로운 요청을 받고 갱신된 타임아웃 구간을 사용하여 등록 프로세스 및 타임아웃 클럭 측정을 반복한다. 상기한 바와 같이, 모바일 장치(202)는 또한 새로운 요청과 연관되어 있는 갱신된 타임아웃 구간을 모니터링한다. 다른 실시예에서, 그 종료가 통신 네트워크 타임아웃에 기초한 것이 아닌 경우, 모바일 장치(202)는 통신을 재시도하려고 한다.
도 4를 참조하여, 본 발명에 따라 전자 메일 인터페이스 컴퓨팅 장치(208)로 데이터 변경 요청을 전송하고 이를 모니터링하기 위해 모바일 장치(202)에 의해 구현되는 루틴(400)을 나타낸 흐름도에 대해 설명한다. 블록(402)에서, 모바일 장치는 전자 메일 인터페이스 컴퓨팅 장치(208)로 등록 요청 및 타임아웃 구간을 전송 한다. 본 발명의 예시적인 실시예에서, 이 등록 요청은 하나 이상의 데이터 유형, 특정의 데이터 파일, 또는 애플리케이션 프로그램(이로부터 모바일 장치가 갱신된 정보를 수신하고자 할 수 있음)의 선택에 대응할 수 있다. 예를 들어, 등록은 새로운 전자 메일이 수신될 때 또는 특정의 문서가 갱신되었을 때 사용자가 통지를 수신하고자 한다는 것을 나타낼 수 있다. 등록 요청은 또한 모바일 장치로 어느 데이터를 전송해야 하는지를 선택하기 위한 규칙 또는 키워드 등의 기준에 대응할 수 있다. 등록 요청은 또한 갱신된 정보를 수신하기 위해 필요하게 될 수 있는 자격 증명 또는 기타 인증 정보를 포함할 수 있다.
본 발명의 예시적인 실시예에 따르면, 타임아웃 구간 정보는 현재의 하루 중 시간에 부가될 고정된 만료 기간 또는 길이의 지정을 포함할 수 있다. 다른 대안으로서, 타임아웃 구간 정보는 타임아웃 기간 또는 만료 기간의 발생을 용이하게 해주는 선택적 기준으로 지정될 수 있다. 블록(404)에서, 모바일 장치(202)는 모바일 장치(202)에 의한 등록 요청의 전송 또는 전자 메일 인터페이스 컴퓨팅 장치(208)에 의한 등록 요청의 수신으로부터 경과된 시간을 측정하는 타임아웃 클럭을 시작한다. 이 경과된 시간은 각종의 방법 중 임의의 방법으로 측정될 수 있다.
결정 블록(406)에서, 모바일 장치(202)가 전자 메일 인터페이스 컴퓨팅 장치(208)로부터 데이터 변경 통지를 수신했는지를 판정하기 위해 테스트가 수행된다. 모바일 장치(202)가 데이터 변경 통지를 수신한 경우, 블록(408)에서, 모바일 장치는 전자 메일 인터페이스 컴퓨팅 장치(208)로 데이터 요청을 전송한다. 본 발명의 예시적인 실시예에서, 이 데이터 요청은 HTTP 데이터 요청 등의 전자 메일 인 터페이스 컴퓨팅 장치(208)에 대한 실제 데이터의 요청에 대응한다. 블록(410)에서, 모바일 장치(202)는 전자 메일 인터페이스 컴퓨팅 장치(208)로부터 요청된 데이터를 받는다. 루틴(400)은 이어서 블록(416)으로 진행하여 이전에 제공된 타임아웃 구간을 조정하며, 이에 대해서는 이하에서 더 상세히 기술할 것이다. 다른 대안으로서, 루틴(400)은 블록(402)으로 되돌아가서 타임아웃 구간의 조정 없이 새로운 데이터 등록 요청을 전송한다.
결정 블록(406)으로 돌아가서, 모바일 장치(202)가 전자 메일 인터페이스 컴퓨팅 장치(208)로부터 데이터 변경 통지를 수신하지 않은 경우, 결정 블록(412)에서, 모바일 장치가 전자 메일 인터페이스 컴퓨팅 장치(208)로부터 타임아웃 구간 만료 통지를 수신했는지 여부를 판정하기 위해 테스트가 수행된다. 타임아웃 구간 만료 통지가 수신된 경우, 루틴(400)은 블록(416)으로 진행하며, 이에 대해서는 이하에서 더 상세히 설명할 것이다.
결정 블록(412)으로 돌아가서, 모바일 장치가 전자 메일 인터페이스 컴퓨팅 장치(208)로부터 타임아웃 구간 만료 통지를 수신하지 않은 경우, 블록(414)에서, 네트워크 타임아웃 에러가 검출되었는지 여부를 판정하기 위해 테스트가 수행된다. 상기한 바와 같이, 블록(404)에서, 모바일 장치는 등록 요청의 전송 이후로 경과된 시간을 측정한다. 모바일 장치(202)가 타임아웃 구간이 만료되었음을 검출하는 경우, 전자 메일 인터페이스 컴퓨팅 장치(208)가 타임아웃 구간 만료 통지를 전송하지 못한 것으로 및/또는 전자 메일 인터페이스 컴퓨팅 장치(208)와의 통신 링크가 만료된 것으로 가정할 수 있다. 본 발명의 예시적인 실시예에서, 모바일 장 치(202)는 타임아웃 구간의 만료를 네트워크-기반 타임아웃 구간으로서 또는 통신 네트워크 고장(예를 들어, 호 중단)으로 볼 수 있다.
데이터 변경 통지 및/또는 타임아웃 구간 통지를 수신하지 못한 것이 네트워크 타임아웃에 기초한 것이라고 모바일 장치(202)가 판정하는 경우, 루틴(400)은 블록(416)으로 진행하여 이전에 제공된 타임아웃 구간을 조정한다. 블록(416)에 대해서는 서브루틴(500)(도 5a)과 관련하여 더 상세히 설명할 것이다. 타임아웃 구간이 조정되었으면, 루틴(400)은 블록(402)으로 되돌아가서, 모바일 장치는 조정된 타임아웃 구간과 함께 새로운 등록 요청을 전송한다. 다른 대안으로서, 데이터 변경 통지 및/또는 타임아웃 구간 통지를 수신하지 못한 것이 네트워크 타임아웃에 기초한 것이 아니라고 모바일 장치(202)가 판정하는 경우, 모바일 장치(202)는 통신 네트워크와의 통신을 재설정하려고 하는 통신 재시도 모드(retry communication mode)에 들어간다. 이어서, 루틴(400)은 블록(402)으로 돌아갈 수 있다.
이제부터 도 5a를 참조하여, 블록(416)(도 4)에 대응하는, 타임아웃 구간을 조정하기 위해 모바일 장치(202)에 의해 구현되는 예시적인 서브루틴(500)에 대해 기술할 것이다. 본 발명의 예시적인 실시예에서, 타임아웃 구간의 조정(tuning)은 네트워크 통신 이벤트(예를 들어, 연속적인 조정 이벤트)의 조사에 기초한 네트워크 통신 세기(network communication strength)의 판정에 대응한다. 차례로, 타임아웃 구간은 검출된 통신 품질에 따라 조절된다. 서브루틴(500)으로 가서, 블록(502)에서, 모바일 장치(202)는 마지막 통신 요청의 결과를 획득한다. 타임아웃 구간을 조정하기 위해, 마지막 통신 요청의 결과는 데이터 변경 통지의 수신, 타임 아웃 구간 만료 통지의 수신, 또는 통신 네트워크 타임아웃의 검출을 포함할 수 있다.
결정 블록(504)에서, 마지막 통신 결과가 성공적이었는지 여부를 판정하기 위해 테스트가 수행된다. 본 발명의 예시적인 실시예에서, 성공적인 통신 결과는 전자 메일 인터페이스 컴퓨팅 장치(208)로부터의 타임아웃 구간 통지의 수신을 포함한다. 그에 부가하여, 데이터 변경 통지의 수신은 또한 성공적인 통신으로 생각될 수 있다. 통신 결과가 성공적인 경우, 서브루틴(500)은 블록(506)으로 진행하여 성공적인 통신 요청에 따라 타임아웃 구간을 조정한다. 블록(506)에 대해서는 도 5b 및 도 5c와 관련하여 더 상세히 기술할 것이다. 통신 결과가 성공적이지 않은 경우(예를 들어, 네트워크 타임아웃이 검출된 경우), 서브루틴(500)은 블록(508)으로 진행하여 네트워크 타임아웃의 만료에 따라 타임아웃 구간을 조정한다. 블록(508)에 대해서는 도 5d와 관련하여 더 상세히 기술될 것이다. 조정 서브루틴(506, 508) 중 어느 하나의 완료 시에, 서브루틴(500)은 블록(510)에서 복귀(return)한다.
이제부터 도 5b를 참조하여, 성공적인 통신 요청의 수신에 기초하여 타임아웃 구간을 조정하는 서브루틴(520)에 대해 기술할 것이다. 본 발명의 예시적인 실시예에 따르면, 서브루틴(520)은 네트워크와의 양호한 통신을 나타내는 특정의 기준(criterion)이 발생했는지를 판정함으로써 타임아웃 구간을 조정한다. 당업자라면 적용되는 기준이 양호한 통화권 계속(continued good coverage), 양호하지 않은 통화권(bad coverage)에서 양호한 통화권으로 이동, 또는 네트워크 지정 타임아웃 구간에 근접 등의 서로 다른 통신 시나리오를 식별하려고 시도할 수 있다는 것을 잘 알 것이다. 결정 블록(522)에서, 서브루틴(500)의 이전의 반복 동안에 타임아웃 구간이 증가되었는지 여부를 판정하기 위해 테스트가 수행된다. 타임아웃 구간이 이전에 증가되었다면, 서브루틴은 블록(528)으로 진행하고, 이에 대해서는 이하에서 더 상세히 기술할 것이다. 타임아웃 구간이 서브루틴(500)의 이전의 반복에서 이전에 증가되지 않았다면, 결정 블록(524)에서, 타임아웃 구간이 최소로 설정되어 있는지 여부를 판정하기 위해 테스트가 수행된다. 타임아웃 구간이 최소로 설정되어 있는 경우, 서브루틴은 블록(528)으로 진행하고, 이에 대해서는 이하에서 더 상세히 기술할 것이다. 타임아웃 구간이 최소가 아닌 경우, 결정 블록(526)에서, 모바일 장치(202)가 일련의 성공적인 통신을 완료했는지 여부를 판정하기 위해 테스트가 수행된다. 본 발명의 예시적인 실시예에서, 성공적인 통신은 등록 요청의 전송 및 데이터 변경 없음 통지의 수신에 대응할 수 있다. 새로운 데이터 통신의 수신이 반드시 성공적인 통신으로 간주될 수 있는 것은 아니다. 예를 들어, 모바일 장치(202)는 5개의 연속적인 데이터 변경 없음 통지에 대해 테스트할 수 있다. 그에 부가하여, 결정 블록(526)에서, 모바일 장치(202)는 모바일 장치 상에서의 신호 세기의 판정 등의 부가적인 외부 기준을 이용할 수 있다. 일련의 성공적인 통신 요청이 수신된 경우, 서브루틴은 블록(528)으로 진행하고, 이에 대해서는 이하에서 더 상세히 기술할 것이다. 다른 대안으로서, 서브루틴(520)은 타임아웃 구간을 증가시키지 않고 블록(530)에서 복귀한다.
계속하여 도 5b를 참조하면, 결정 블록(522, 524, 526)에 대응하는 기준들 중 어느 하나가 만족되면, 블록(528)에서, 모바일 장치(202)는 타임아웃 구간을 증가시킨다. 본 발명의 예시적인 실시예에서, 모바일 장치(202)는 타임아웃 구간을 고정된 상수(fixed constant)만큼 증가시킨다. 성공적인 양호한 통신 동안에 네트워크 타임아웃 구간에 더 가까이 다가가려고 시도하면서 최소 타임아웃 구간으로부터 더 빠르게 증가할 수 있게 해주는 고정된 상수가 선택될 수 있다.
이제부터 도 5c를 참조하면, 본 발명의 대안적인 실시예에서, 블록(416)(도 4)에 대응하는, 타임아웃 구간을 선택적으로 조정하기 위해 서브루틴(540)이 이용될 수 있다. 이 대안적인 실시예에서, 각각의 기준을 만족시킨 결과로서, 아마도 타임아웃 구간을 증가시키기 위해 서로 다른 상수가 이용된다. 결정 블록(542)에서, 서브루틴(500)의 이전의 반복 동안에 타임아웃 구간이 증가되었는지 여부를 판정하기 위해 테스트가 수행된다. 타임아웃 구간이 이전에 증가되었다면, 블록(546)에서, 모바일 장치(202)는 서브루틴(500)의 이전의 반복 동안에 이전에 이용된 상수를 사용하여 타임아웃 구간을 증가시킨다.
서브루틴(500)의 이전의 반복에서 타임아웃 구간이 이전에 증가되지 않았다면, 결정 블록(546)에서, 타임아웃 구간이 최소로 설정되어 있는지 여부를 판정하기 위해 테스트가 수행된다. 타임아웃 구간이 최소로 설정되어 있는 경우, 모바일 장치(202)는 제1 상수를 사용하여 타임아웃 구간을 증가시킨다. 본 발명의 예시적인 실시예에서, 타임아웃 구간이 최소 타임아웃 구간으로부터 더 빠른 속도로 증가할 수 있도록 하기 위해 제1 상수가 선택되며, 이는 모바일 장치의 전원 자원을 더욱 소진시킨다. 그에 부가하여, 본 발명의 대안적인 실시예에서, 타임아웃 구간이 과거에 달성된 가장 높은 타임아웃 구간으로 자동적으로 설정될 수 있도록 제1 상수가 선택될 수 있다. 각각의 특정의 장치 및/또는 각각의 특정의 네트워크에 대해 과거 데이터가 유지될 수 있다.
타임아웃 구간이 최소가 아닌 경우, 결정 블록(550)에서, 모바일 장치(202)가 일련의 성공적인 통신을 완료했는지 여부를 판정하기 위해 테스트가 수행된다. 상기한 바와 같이, 성공적인 통신은 등록 요청의 전송 및 데이터 변경 없음 통지의 수신에 대응할 수 있다. 일련의 성공적인 통신 요청이 수신된 경우, 모바일 장치(202)는 제2 상수를 사용하여 타임아웃 구간을 증가시킨다. 본 발명의 예시적인 실시예에서, 네트워크 타임아웃 구간을 넘어 너무 빠르게 급등하지 않고 타임아웃 구간이 네트워크 타임아웃 구간에 도달할 수 있게 해주기 위해 제2 상수가 선택된다. 결정 블록(546)과 유사하게, 대안의 실시예에서, 연속적인 다수의 성공적인 통신 요청 이후에 과거에 달성된 가장 높은 타임아웃 구간으로 자동적으로 설정될 수 있게 해주기 위해 제2 상수가 선택될 수 있다. 타임아웃 구간이 블록(544, 548, 522) 중 어느 하나에서 증가되었거나 또는 모바일 장치가 일련의 성공적인 통신을 검출하지 않은 경우, 서브루틴(540)은 블록(554)에서 복귀한다.
이제부터 도 5d를 참조하여, 블록(508)(도 5a)에 대응하는, 네트워크 타임아웃의 만료에 따라 타임아웃 구간을 조정하는 서브루틴(560)에 대해 기술할 것이다. 결정 블록(562)에서, 서브루틴(500)의 이전의 반복에서 타임아웃 구간이 증가되었는지 여부를 판정하기 위해 테스트가 수행된다. 타임아웃 구간이 이전에 증가되지 않은 경우, 블록(564)에서, 모바일 장치(202)는 타임아웃 구간을 최소값으로 설정 한다. 본 발명의 예시적인 실시예에서, 모바일 장치(202)는 양호하지 않은 셀룰러 통화권으로의 이동을 해결하기 위해 타임아웃을 최소로 설정한다. 다른 대안으로서, 타임아웃 구간이 이전에 증가된 경우, 블록(566)에서, 모바일 장치(202)는 타임아웃 구간을 그의 이전의 값으로 되돌린다. 본 발명의 예시적인 실시예에서, 모바일 장치(202)는 타임아웃 구간을 네트워크 지정 타임아웃 구간에 가깝게 이전의 값으로 되돌린다. 대안적인 실시예에서, 블록(566)에서 모바일 장치(202)는 타임아웃 구간을 과거에 달성된 가장 높은 타임아웃 구간으로 설정할 수 있다. 게다가, 모바일 장치(202)가 과거에 달성된 가장 높은 타임아웃 구간을 여러번 넘어서려고 한 경우, 타임아웃 구간은 일련의 성공하지 못한 시도 이후에 과거에 달성된 가장 높은 타임아웃 구간에 로크 또는 고정될 수 있다. 블록(568)에서, 서브루틴(560)이 복귀한다.
이제부터 도 6을 참조하여, 모바일 장치 등록 요청을 처리하기 위해 전자 메일 인터페이스 컴퓨팅 장치(208) 등의 네트워크 애플리케이션에 의해 구현되는 루틴(600)에 대해 설명할 것이다. 블록(602)에서, 전자 메일 인터페이스 컴퓨팅 장치(208)는 타임아웃 구간을 포함하는 모바일 장치 등록 요청을 받는다. 블록(604)에서, 전자 메일 인터페이스 컴퓨팅 장치(208)는 요청된 데이터에 대한 모바일 장치(202)를 등록한다. 본 발명의 예시적인 실시예에서, 이 등록은 전자 메일 인터페이스 컴퓨팅 장치(208)가 새로운 데이터의 통지를 수신할 수 있게 해주기 위해 전자 메일 서버 등의 임의의 적절한 로컬 네트워크 컴포넌트와 통신하는 것에 대응할 수 있다. 그에 부가하여, 이 등록은 등록 요청이 적절한 타임아웃 구간을 계산 하기 위한 기준을 포함한 경우 타임아웃 구간을 계산하는 것에 대응할 수 있다. 등록 요청이 다수의 데이터 변경 요청에 대응하는 경우에, 전자 메일 인터페이스 컴퓨팅 장치(208)는 모바일 장치(202) 정보를 전달하기 위한 기준을 추적하는 테이블을 유지할 수 있다.
블록(606)에서, 전자 메일 인터페이스 컴퓨팅 장치(208)는 등록 요청의 수신/처리 이후에 경과한 시간을 측정하는 타임아웃 구간 클럭을 시작한다. 본 발명의 예시적인 실시예에서, 타임아웃 구간 클럭은 등록 요청의 수신 이후에 경과한 시간을 측정하는 내부 카운팅 장치에 대응할 수 있다. 다른 대안으로서, 타임아웃 클럭은 전자 메일 인터페이스 컴퓨팅 장치(208)에 의한 표준의 하루 중 시간 측정치(standard time of day measurement)와 비교하기 위한 등록 요청이 수신된 하루 중 시간의 기록에 대응할 수 있다. 당업자라면 등록 요청의 수신/처리 이후에 경과한 시간을 계산 또는 다른 방식으로 추적하기 위해 임의의 수의 부가적인 방법들이 이용될 수 있다는 것을 잘 알 것이다.
결정 블록(608)에서, 전자 메일 인터페이스 컴퓨팅 장치(208)가 데이터 변경의 통지를 수신했는지 여부를 판정하기 위해 테스트가 수행된다. 본 발명의 예시적인 실시예에서, 데이터 변경의 통지는 전자 메일 서버로부터 새로운 메일 통지를 수신하는 것에 대응할 수 있다. 그에 부가하여, 데이터 변경의 통지는 특정의 데이터 파일이 수정, 액세스되거나 기타 등등이 행해졌다는 통지에 대응할 수 있다. 데이터 변경 통지가 수신되면, 블록(610)에서, 전자 메일 인터페이스 컴퓨팅 장치(208)는 데이터 변경 통지를 모바일 장치(202)로 전송한다. 본 발명의 예시적인 실시예에서, 데이터 변경 통지는 전자 메일 인터페이스 컴퓨팅 장치(208)로 데이터 요청을 전송하도록 모바일 장치(202)에 지시하는 일반 메시지(generic message)를 포함할 수 있다. 그에 부가하여, 데이터 변경 통지는 모바일 장치가 후속하는 데이터 요청을 전송할지 여부를 모바일 장치(202)가 선택할 수 있게 해주는 여러가지 메타 데이터 또는 설명 정보를 포함할 수 있다. 예를 들어, 이 통지는 사용자가 전체 메시지를 검색하고자 하는지를 판정하기 위해 사용자가 메시지의 적어도 일부분을 미리보기할 수 있게 해주는 전자 메일 메시지 헤더 정보를 포함할 수 있다. 다른 예에서, 이 통지는 모바일 장치(202)가 데이터 변경을 요청할지 여부를 자동적으로 판정할 수 있게 해주는 특정의 기준을 포함할 수 있다. 블록(612)에서, 루틴(600)은 그 다음 등록 요청이 전자 메일 인터페이스 컴퓨팅 장치(208)에 의해 수신될 때까지 종료된다.
결정 블록(608)에서, 데이터가 변경되었다는 통지가 수신되지 않은 경우, 결정 블록(614)에서, 등록 요청의 수신/처리 이후에 경과된 시간이 타임아웃 구간을 초과하는지 여부를 판정하기 위해 테스트가 수행된다. 타임아웃 구간이 초과되지 않은 경우(예를 들어, 만료되지 않은 경우), 루틴(600)은 결정 블록(608)으로 되돌아간다. 타임아웃이 만료된 경우, 블록(616)에서, 전자 메일 인터페이스 컴퓨팅 장치(208)는 타임아웃 구간 만료 통지를 모바일 장치(202)로 전송한다. 본 발명의 예시적인 실시예에서, 타임아웃 구간 만료 통지는 통신 링크를 유지하고 또 모바일 장치(202)에 의한 갱신된 등록 요청을 유도하는 메시지에 대응한다. 그에 부가하여, 타임아웃 구간 만료 통지는 차후의 타임아웃 구간을 조정하는 데 이용될 수 있 는 네트워크 이벤트 정보 또는 네트워크 특성 정보(예를 들어, 가용 대역폭, 네트워크 품질 등급, 기타) 등의 부가적인 정보를 포함할 수 있다. 블록(618)에서, 루틴(600)은 종료한다.
본 발명의 예시적인 실시예들에 대해 예시하고 설명하였지만, 본 발명의 정신 및 범위를 벗어나지 않고 본 발명에 여러가지 변경이 행해질 수 있다는 것을 잘 알 것이다.

Claims (20)

  1. 모바일 장치와 네트워크 애플리케이션 간의 통신을 용이하게 해주는 방법으로서,
    제1 데이터 변경 요청을 전송하는 단계 - 상기 제1 데이터 변경 요청은 전자 메일 인터페이스에 도착한 새로운 데이터에 대한 등록 요청(registration request)을 포함하고, 상기 제1 데이터 변경 요청은 응답을 반환하기 위한 제1 타임아웃 구간(time out interval)을 포함하고, 상기 제1 타임아웃 구간은 상기 응답을 요하는 시간을 규정함 -;
    상기 제1 데이터 변경 요청에 대응하는 이벤트를 결정하는 단계;
    상기 제1 데이터 변경 요청에 대응하는 이벤트에 기초하여 응답을 반환하기 위한 제2 타임아웃 구간을 발생하는 단계 - 상기 응답을 반환하기 위한 제2 타임아웃 구간을 발생하는 단계는 데이터 변경 없음 통지(no data change notification)의 수신에 기초하여 상기 제1 타임아웃 구간을 조정하는 단계 또는 네트워크 지정 타임아웃 이벤트를 검출하는 단계를 포함함 -; 및
    제2 데이터 변경 요청을 전송하는 단계 - 상기 제2 데이터 변경 요청은 응답을 반환하기 위한 상기 제2 타임아웃 구간을 포함함 - 를 포함하는 방법.
  2. 제1항에 있어서,
    상기 데이터 변경 없음 통지의 수신에 기초하여 상기 제1 타임아웃 구간을 조정하는 단계는 특정의 기준에 따라 상기 제1 타임아웃 구간을 조정하는 단계를 포함하는 것인 방법.
  3. 제2항에 있어서,
    상기 특정의 기준은, 상기 제1 타임아웃 구간이 이전에 증가되었는지, 상기 제1 타임아웃 구간이 최소 타임아웃 구간에 대응하는지 및 상기 데이터 변경 없음 통지의 수신이 일련의 데이터 변경 없음 통지에 대응하는지로 이루어지는 그룹으로부터 선택되는 것인 방법.
  4. 제2항에 있어서,
    상기 제1 타임아웃 구간을 조정하는 단계는 조정 상수(adjustment constant)를 각각의 기준과 연관시키고 어느 기준이 만족되었는지에 따라 상기 제1 타임아웃 구간을 조정하는 단계를 포함하는 것인 방법.
  5. 제1항에 있어서,
    상기 제1 타임아웃 구간을 조정하는 단계는,
    과거에 결정된 상기 제1 데이터 변경 요청에 대응하는 이벤트에 기초하여 상기 제1 타임아웃 구간을 과거에 달성된 가장 높은 타임아웃 구간값(highest known time out interval value)으로 조정하는 단계를 포함하는 것인 방법.
  6. 제1항에 있어서,
    상기 제1 타임아웃 구간을 조정하는 단계는, 네트워크 지정 타임아웃 이벤트(network specified time out event)가 검출되는 경우, 상기 제1 타임아웃 구간을 네트워크 최소값(network minimum)으로 조정하는 단계를 포함하는 것인 방법.
  7. 제1항에 있어서,
    상기 제1 타임아웃 구간을 조정하는 단계는, 네트워크 지정 타임아웃 이벤트가 검출되는 경우, 상기 제1 타임아웃 구간을 이전의 값으로 조정하는 단계를 포함하는 것인 방법.
  8. 제1항에 있어서,
    상기 제1 타임아웃 구간을 조정하는 단계는, 네트워크 지정 타임아웃 이벤트가 검출되는 경우, 과거에 결정된 상기 제1 데이터 변경 요청에 대응하는 이벤트에 기초하여 상기 제1 타임아웃 구간을 과거에 달성된 가장 높은 타임아웃 구간값으로 조정하는 단계를 포함하는 것인 방법.
  9. 모바일 장치와 네트워크 애플리케이션 간의 통신을 용이하게 해주는 방법으로서,
    제1 데이터 변경 요청을 전송하는 단계 - 상기 제1 데이터 변경 요청은 전자 메일 인터페이스에 도착한 새로운 데이터에 대한 등록 요청을 포함하고, 상기 제1 데이터 변경 요청은 응답을 반환하기 위한 제1 타임아웃 구간을 포함하고, 상기 제1 타임아웃 구간은 상기 응답을 요하는 시간을 규정함 -,
    상기 제1 데이터 변경 요청에 대응하는 이벤트를 결정하는 단계,
    일련의 조정 기준을 상기 제1 데이터 변경 요청에 대응하는 상기 이벤트에 연관시키는 단계,
    응답을 반환하기 위한 제2 타임아웃 구간을 발생하는 단계 - 상기 응답을 반환하기 위한 제2 타임아웃 구간을 발생하는 단계는 상기 일련의 조정 기준으로부터의 시간 상수(time constant)를 적용함으로써 상기 제1 타임아웃 구간을 조정하는 단계를 포함함 -, 및
    제2 데이터 변경 요청을 전송하는 단계 - 상기 제2 데이터 변경 요청은 응답을 반환하기 위한 상기 제2 타임아웃 구간을 포함함 - 를 포함하는 방법.
  10. 제9항에 있어서,
    상기 조정 기준은, 상기 제1 타임아웃 구간이 이전에 증가되었는지, 상기 제1 타임아웃 구간이 최소 타임아웃 구간에 대응하는지, 데이터 변경 없음 통지의 수신이 일련의 데이터 변경 없음 통지에 대응하는지 및 네트워크 지정 타임아웃이 검출되는지로 이루어지는 그룹으로부터 선택되는 것인 방법.
  11. 제10항에 있어서,
    상기 일련의 조정 기준으로부터의 시간 상수를 적용함으로써 상기 제1 타임아웃 구간을 조정하는 단계는 어느 조정 기준이 만족되는지에 관계없이 동일한 시간 상수에 의해 상기 제1 타임아웃 구간을 조정하는 단계를 포함하는 것인 방법.
  12. 제10항에 있어서,
    상기 일련의 조정 기준으로부터의 시간 상수를 적용함으로써 상기 제1 타임아웃 구간을 조정하는 단계는 어느 조정 기준이 만족되는지에 대응하는 서로 다른 시간 상수에 의해 상기 제1 타임아웃 구간을 조정하는 단계를 포함하는 것인 방법.
  13. 제9항에 있어서,
    상기 일련의 조정 기준으로부터의 시간 상수를 적용함으로써 상기 제1 타임아웃 구간을 조정하는 단계는, 데이터 변경 없음 통지가 수신되는 경우, 과거에 결정된 상기 제1 데이터 변경 요청에 대응하는 이벤트에 기초하여 상기 제1 타임아웃 구간을 과거에 달성된 가장 높은 타임아웃 구간값으로 조정하는 단계를 포함하는 것인 방법.
  14. 제9항에 있어서,
    상기 제1 타임아웃 구간을 조정하는 단계는, 네트워크 지정 타임아웃 이벤트가 검출되는 경우, 상기 제1 타임아웃 구간을 네트워크 최소값으로 조정하는 단계를 포함하는 것인 방법.
  15. 제9항에 있어서,
    상기 제1 타임아웃 구간을 조정하는 단계는, 네트워크 지정 타임아웃 이벤트가 검출되는 경우, 상기 제1 타임아웃 구간을 이전의 값으로 조정하는 단계를 포함하는 것인 방법.
  16. 제1항에 있어서,
    상기 제1 타임아웃 구간을 조정하는 단계는, 네트워크 지정 타임아웃 이벤트가 검출되는 경우, 과거에 결정된 상기 제1 데이터 변경 요청에 대응하는 이벤트에 기초하여 상기 제1 타임아웃 구간을 과거에 달성된 가장 높은 타임아웃 구간값으로 조정하는 단계를 포함하는 것인 방법.
  17. 모바일 장치와 네트워크 애플리케이션 간의 통신을 용이하게 해주는 컴퓨터 실행가능 컴포넌트를 갖는 컴퓨터 판독가능 기록 매체로서, 상기 컴퓨터 실행가능 컴포넌트는,
    데이터 변경 요청을 상기 네트워크 애플리케이션으로 전송하고 이전의 데이터 변경 요청에 대응하는 이벤트를 수신하는 통신 컴포넌트(communication component) - 상기 데이터 변경 요청은 전자 메일 인터페이스에 도착한 새로운 데이터에 대한 등록 요청을 포함하고, 상기 데이터 변경 요청은 응답을 제공하기 위한 타임아웃 구간을 포함하고, 상기 타임아웃 구간은 상기 응답을 요하는 시간을 규정함 -, 및
    이전의 데이터 변경 요청에 대응하는 이벤트에 기초하여 응답을 반환하기 위한 타임아웃 구간을 발생하는 프로세싱 컴포넌트(processing component)를 포함하며,
    상기 프로세싱 컴포넌트는 상기 통신 컴포넌트에 의해 수신된 이전의 데이터 변경 요청에 대응하는 상기 이벤트에 일련의 조정 기준을 적용함으로써 응답을 반환하기 위한 상기 타임아웃 구간을 발생하는 것인 컴퓨터 판독가능 기록 매체.
  18. 제17항에 있어서,
    상기 일련의 조정 기준은, 상기 제1 타임아웃 구간이 이전에 증가되었는지, 상기 제1 타임아웃 구간이 최소 타임아웃 구간에 대응하는지, 상기 데이터 변경 없음 통지의 수신이 일련의 데이터 변경 없음 통지에 대응하는지 및 네트워크 지정 타임아웃이 검출되는지로 이루어지는 그룹으로부터 선택되는 것인 컴퓨터 판독가능 기록 매체.
  19. 제17항에 있어서,
    상기 일련의 조정 기준은, 상기 제1 타임아웃 구간이 이전에 증가되었는지, 상기 제1 타임아웃 구간이 최소 타임아웃 구간에 대응하는지 및 상기 데이터 변경 없음 통지의 수신이 일련의 데이터 변경 없음 통지에 대응하는지로 이루어지는 그룹으로부터 선택되는 것인 컴퓨터 판독가능 기록 매체.
  20. 제17항에 있어서,
    상기 프로세싱 컴포넌트는 어느 기준이 만족되는지에 대응하는 시간 상수를 적용하는 것인 컴퓨터 판독가능 기록 매체.
KR1020077026438A 2005-05-20 2006-04-28 네트워크 상태에 응답하여 네트워크 통신을 최적화하기 위한 방법 및 시스템 KR101219909B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/134,671 2005-05-20
US11/134,671 US7809357B2 (en) 2005-05-20 2005-05-20 System and method for optimizing network communication in response to network conditions
PCT/US2006/016229 WO2007027227A2 (en) 2005-05-20 2006-04-28 System and method for optimizing network communication in response to network conditions

Publications (2)

Publication Number Publication Date
KR20080012292A KR20080012292A (ko) 2008-02-11
KR101219909B1 true KR101219909B1 (ko) 2013-01-18

Family

ID=37448922

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020077026438A KR101219909B1 (ko) 2005-05-20 2006-04-28 네트워크 상태에 응답하여 네트워크 통신을 최적화하기 위한 방법 및 시스템

Country Status (6)

Country Link
US (1) US7809357B2 (ko)
EP (1) EP1869914B1 (ko)
JP (1) JP5021630B2 (ko)
KR (1) KR101219909B1 (ko)
CN (1) CN101208969B (ko)
WO (1) WO2007027227A2 (ko)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7437169B2 (en) 2004-06-07 2008-10-14 Microsoft Corporation System and method for optimizing network communication in response to network conditions
GB0600417D0 (en) * 2006-01-10 2006-02-15 Level 5 Networks Inc Virtualisation support
US8532628B2 (en) * 2006-06-16 2013-09-10 Fmr Llc Registering actionable alerts
KR101398908B1 (ko) * 2007-05-22 2014-05-26 삼성전자주식회사 모바일 아이피를 사용하는 이동 통신 시스템에서 단말의이동성 관리 방법 및 시스템
JP5438043B2 (ja) * 2011-02-09 2014-03-12 株式会社Nttドコモ 移動局、通信アプリケーション及び移動通信方法
US8566625B2 (en) * 2011-07-01 2013-10-22 Intel Corporation System and method for determining transmitting frequency to maintain remote application server connectivity
GB2507816A (en) 2012-11-13 2014-05-14 Ibm Calculating timeout for remote task execution from network delays and processing duration on local application/hardware replica
CN103546248B (zh) * 2013-09-27 2016-09-07 昆山创通微电子有限公司 一种ack超时时间自动调节方法
CN105847184A (zh) * 2016-02-22 2016-08-10 乐视移动智能信息技术(北京)有限公司 用于android操作系统的网络请求方法、装置和系统
JP7081344B2 (ja) * 2018-07-02 2022-06-07 富士通株式会社 監視装置,監視制御方法および情報処理装置
CN112887432B (zh) * 2021-03-31 2023-07-18 中国工商银行股份有限公司 分布式系统重建运维方法、运维节点及系统

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5966714A (en) 1995-04-28 1999-10-12 Intel Corporation Method and apparatus for scaling large electronic mail databases for devices with limited storage

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5177780A (en) * 1990-10-18 1993-01-05 At&T Bell Laboratories Method of voice mail notification for cellular telephone systems
US5436960A (en) * 1991-05-20 1995-07-25 Campana, Jr.; Thomas J. Electronic mail system with RF communications to mobile processors and method of operation thereof
US5337044A (en) * 1991-10-08 1994-08-09 Nomadic Systems, Inc. System for remote computer control using message broadcasting system
US5509000A (en) * 1994-06-10 1996-04-16 Motorola, Inc. Method and apparatus for routing information in a communication system
US5742905A (en) * 1994-09-19 1998-04-21 Bell Communications Research, Inc. Personal communications internetworking
US5699511A (en) * 1995-10-10 1997-12-16 International Business Machines Corporation System and method for dynamically varying low level file system operation timeout parameters in network systems of variable bandwidth
US5905777A (en) * 1996-09-27 1999-05-18 At&T Corp. E-mail paging system
US6138908A (en) * 1997-09-19 2000-10-31 Ericsson Inc. Method for updating communications facilitation data
US6259892B1 (en) * 1997-09-19 2001-07-10 Richard J. Helferich Pager transceiver and methods for performing action on information at desired times
DE69931692T2 (de) * 1998-05-27 2007-05-31 Nec Corp. Funkkommunikationsgerät mit Aktualisierungsmitteln eines Dienstenmenüs mit Wahlinformation
US6219694B1 (en) * 1998-05-29 2001-04-17 Research In Motion Limited System and method for pushing information from a host system to a mobile data communication device having a shared electronic address
US6490444B1 (en) * 1998-10-06 2002-12-03 Ameritech Corporation Method and telecommunication system for indicating the receipt of a data message
US6249807B1 (en) * 1998-11-17 2001-06-19 Kana Communications, Inc. Method and apparatus for performing enterprise email management
JP2001189749A (ja) * 2000-01-04 2001-07-10 Matsushita Electric Ind Co Ltd 通信システムにおける情報着信の通知方法及び情報着信通知システム、情報通信端末、並びに情報記録媒体
US6684238B1 (en) * 2000-04-21 2004-01-27 International Business Machines Corporation Method, system, and program for warning an email message sender that the intended recipient's mailbox is unattended
US20020055350A1 (en) * 2000-07-20 2002-05-09 Ash Gupte Apparatus and method of toggling between text messages and voice messages with a wireless communication device
JP3866506B2 (ja) * 2000-12-04 2007-01-10 株式会社エヌ・ティ・ティ・ドコモ 電子メールの配信制御方法及びメールサーバ
US7568001B2 (en) * 2001-01-30 2009-07-28 Intervoice, Inc. Escalated handling of non-realtime communications
US20030013430A1 (en) * 2001-07-11 2003-01-16 Palm, Inc. Wireless messaging registration system and method
AU2003209194A1 (en) * 2002-01-08 2003-07-24 Seven Networks, Inc. Secure transport for mobile communication network
JP2003333271A (ja) * 2002-05-17 2003-11-21 Sharp Corp ネットワーク通信装置
JP4214793B2 (ja) * 2003-02-19 2009-01-28 日本電気株式会社 無線通信システム、サーバ、基地局、移動端末及びそれらに用いる再送タイムアウト時間決定方法
US7548886B2 (en) * 2003-06-12 2009-06-16 International Business Machines Corporation System and method for early detection and prevention of identity theft
JP3992658B2 (ja) * 2003-07-11 2007-10-17 株式会社日立製作所 通信システムの情報提供方法、通信端末および情報提供サーバ
US7359947B2 (en) * 2003-07-31 2008-04-15 International Business Machines Corporation Autonomic e-mail processing system and method
JP2005086426A (ja) * 2003-09-08 2005-03-31 Mitsubishi Electric Corp 携帯情報端末、並びにソフトウェア入れ替えシステム及び方法
US7653816B2 (en) * 2003-12-30 2010-01-26 First Information Systems, Llc E-mail certification service
US7437169B2 (en) * 2004-06-07 2008-10-14 Microsoft Corporation System and method for optimizing network communication in response to network conditions
US7751836B2 (en) * 2004-09-10 2010-07-06 Tekelec Methods, systems, and computer program products for short message service (SMS) spam filtering using e-mail spam filtering resources
US8655957B2 (en) * 2004-12-16 2014-02-18 Apple Inc. System and method for confirming that the origin of an electronic mail message is valid
US8532628B2 (en) * 2006-06-16 2013-09-10 Fmr Llc Registering actionable alerts
WO2008102447A1 (ja) * 2007-02-22 2008-08-28 Fujitsu Limited 監視装置、監視方法、監視プログラム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5966714A (en) 1995-04-28 1999-10-12 Intel Corporation Method and apparatus for scaling large electronic mail databases for devices with limited storage

Also Published As

Publication number Publication date
CN101208969A (zh) 2008-06-25
WO2007027227A3 (en) 2007-11-08
US7809357B2 (en) 2010-10-05
CN101208969B (zh) 2012-05-30
EP1869914A2 (en) 2007-12-26
US20060264203A1 (en) 2006-11-23
JP5021630B2 (ja) 2012-09-12
JP2008546242A (ja) 2008-12-18
WO2007027227A2 (en) 2007-03-08
KR20080012292A (ko) 2008-02-11
EP1869914A4 (en) 2013-07-10
EP1869914B1 (en) 2015-05-20

Similar Documents

Publication Publication Date Title
KR101219909B1 (ko) 네트워크 상태에 응답하여 네트워크 통신을 최적화하기 위한 방법 및 시스템
EP2306677B1 (en) System and method for optimizing network communication in response to network conditions
US7515538B2 (en) Probabilistic estimation of achievable maximum throughput from wireless interface
US8375134B2 (en) Determining an efficient keep-alive interval for a network connection
US20050254435A1 (en) Method and system for selecting network connections in a multi-network environment
US20070025304A1 (en) System and method for prioritizing transmission legs for precaching data
KR101330631B1 (ko) 통신 환경에 대한 정보를 이용한 데이터 전송 방법 및 장치
CN113472606A (zh) 一种心跳超时检测方法、服务器及电子设备
TW201006272A (en) Method and apparatus for maintaining communications connections over a distributed wireless network
US7516135B2 (en) Dynamically managing data conveyance between computing devices
EP2622823B1 (en) System and method of establishing transmission control protocol connections
CN116848835A (zh) 实现区域连续代理服务
EP2756632B1 (en) Systems and methods for network quality estimation, connectivity detection, and load management
CN106471847B (zh) 用于在无线电接入网络之间传送数据通信会话的方法和设备
US20070005741A1 (en) Facilitating radio communications in a mobile device
JP2003115795A (ja) 通信システム、この通信システムに用いるサーバ、エージェント制御方法、エージェント制御プログラム
JP6555627B2 (ja) 情報配信装置、プッシュ通知送信方法、及び、コンピュータプログラム

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20151217

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20161220

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20171219

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee