KR20060092264A - 푸쉬 콘텐츠 다운로드를 위한 시스템, 방법, 및 컴퓨터프로그램 생성물 - Google Patents

푸쉬 콘텐츠 다운로드를 위한 시스템, 방법, 및 컴퓨터프로그램 생성물 Download PDF

Info

Publication number
KR20060092264A
KR20060092264A KR1020067009715A KR20067009715A KR20060092264A KR 20060092264 A KR20060092264 A KR 20060092264A KR 1020067009715 A KR1020067009715 A KR 1020067009715A KR 20067009715 A KR20067009715 A KR 20067009715A KR 20060092264 A KR20060092264 A KR 20060092264A
Authority
KR
South Korea
Prior art keywords
content
download
terminal
data packets
receiving
Prior art date
Application number
KR1020067009715A
Other languages
English (en)
Other versions
KR100812343B1 (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 KR20060092264A publication Critical patent/KR20060092264A/ko
Application granted granted Critical
Publication of KR100812343B1 publication Critical patent/KR100812343B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates

Landscapes

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

Abstract

푸시된 콘텐츠를 다운로드하기 위해 제공된 시스템은 다운로드 콘텐츠를 식별하고 디지털 서명을 가진 서비스 로딩 콘텐츠를 수신할 수 있는 단말을 포함한다. 단말은 디지털 서명에 기초해 서비스 로딩 콘텐츠를 인증할 수 있고, 만일 서비스 로딩 콘텐츠가 인가되면, 단말로 다운로드 콘텐츠를 풀링(pulling)할 수 있다. 이와 관련해, 단말은 서비스 로딩 콘텐츠를 인증할 수 있고, 서비스 로딩 콘텐츠를 수신한 것에 응하여 단말 사용자로부터의 인터랙션(interaction)과 무관하게 다운로드 콘텐츠를 풀링할 수 있다. 단말은 또, 다운로드 콘텐츠 수신시 인터럽트가 발생하여 전체 다운로드 콘텐츠보다 적은 콘텐츠를 수신하게 되었는지를 판단할 수도 있다. 인터럽트가 발생하면, 단말은 복수의 데이터 패킷들을 수신하도록 다운로드 콘텐츠를 복구할 수 있다.

Description

푸쉬 콘텐츠 다운로드를 위한 시스템, 방법, 및 컴퓨터 프로그램 생성물{System, method and computer program product for downloading pushed content}
본 발명은 일반적으로 콘텐츠를 다운로드 하기 위한 시스템 및 방법에 관한 것으로서, 보다 상세하게는 콘텐츠의 토큰 베이스 다운로드를 위한 시스템, 방법, 및 컴퓨터 프로그램 생성물에 관한 것이다.
현재의 통신 시대는 유무선 네트워크의 어마어마한 확장을 가져왔다. 컴퓨터 네트워크, 텔레비전 네트워크, 및 전화 통신 네트워크는 소비자 요구에 의해 가열된 전례없는 기술적 확장을 거치고 있다. 무선 및 모바일 네트워킹 기술은 관련된 소비자 요구들에 관심을 기울이는 한편, 정보 전송에 대한 더 많은 유연성과 즉시성을 제공하고 있다.
현재와 앞으로의 네트워킹 기술들은 정보 전송의 용이성과 사용자들의 편의성를 계속해서 도모하고 있다. 인터넷처럼, 국지적(local), 지역적(regional), 그리고 세계적 네트워크들의 확산이 사회에 정보의 홍수를 제공해왔다. 네트워킹 기술은 점차 더 많은 무선 및 모바일 기술들을 포함하도록 확장되어 왔다. 이러한 네트워크들을 통해, 정보가 데스크탑 시스템, 무선 시스템, 모바일 시스템 등으로 다운로드 될 수 있다. 이를테면, 인터넷을 통해 입수가능한 정보는 이제 셀룰라 전화, PDA(personal digital assistant), 랩탑 컴퓨터 등의 모바일 무선 유닛들로 다운로드될 수 있게 되었다. 인터넷 콘텐츠의 무선 장치들로/로부터의 전송을 지원하는 그러한 한 기술이 무선 어플리케이션 프로토콜(WAP)으로서, 이것은 인터넷과 다른 네트워크들을 무선 네트워크 플랫폼에 통합시킨다. 일반적으로, WAP은 인터넷 표준과 무선 서비스 표준 모두에 대한 특성 및 기능을 고려한 프로토콜들의 집합이다. 그것은 무선 네트워크 표준과 무관한 것으로, 개방형(open) 표준으로서 설계된다. WAP은 유선 인터넷 패러다임과 무선 도메인 사이의 간극을 중재하여, 무선 장치 사용자들이 양 플랫폼들 상에서 인터넷의 혜택을 누릴 수 있게 한다.
흔히 2G 무선 서비스라 불리는 2세대 무선 서비스가 회선 교환 방식 기술에 기반하는 현재의 무선 서비스이다. 이와 관련해, 이동 통신을 위한 글로벌 시스템(GSM) 및 퍼스널 통신 서비스(PCS) 같은 2G 시스템들은, 1 세대 모바일 기술들을 뛰어 넘는 개선된 품질을 가진 광범위한 서비스들을 위해 디지털 무선 기술을 활용한다. 흔히 3G 무선 서비스로 불리는 3 세대 무선 서비스는, 단말과 네트워크 사이에 새로운 패킷 기반 전송 방식을 사용하여 용량, 스피드, 및 효율에서의 향상을 약속하는 일련의 디지털 기술들을 말한다. 3G 장치 및 네트워크 사용자들은 VOD(video-on-demand, 주문형 비디오), 화상 회의, 고속 웹 액세스 및 파일 전송 같은 멀티미디어 서비스들에 접근하게 될 것이다. 기존의 서비스와 앞으로의 서비스들은 네트워크를 통해 모바일 장치 사용자들이 서비스와 어플리케이션들을 이용할 수 있게 하는 네트워크 서비스 운영자들에 의해 제공되고 있고, 앞으로 계속해 서 제공될 것이다.
정보를 전송하기 위해 현재 이용 가능한 한 가지 특징적 서비스 특성이 "푸시(push)" 특성 ("통지" 특성 또는 "경고" 특성으로도 알려짐)이다. 통상의 클라이언트/서버 모델에서, 클라이언트는 서버로부터의 서비스나 정보를 요청하고, 그러면 서버가 클라이언트에 정보를 전송하는 응답을 행한다. 이것을 일반적으로 "풀(pull)" 기술이라 부르며, 이를 통해 클라이언트는 서버로부터 정보를 가져오게 된다. 이를테면, 서버로 하여금 관련 정보를 검색하도록 서버로 보내지는, 클라이언트 장치에서의 URL (Uniform Resource Locator)이 입력(entry)이 풀(pull) 트랜잭션이다.
반대로, "푸시" 기술은 일반적으로 이전의 사용자 액션 없이 하나 이상의 장치들로 정보를 전송하는 수단을 말한다. 그로써, 서버가 자신의 정보를 전송하기 전에 클라이언트로부터 아무런 명시적 요청이 존재하지 않으며, 따라서 푸시 기술은 실질적으로 서버 주도 (server-initiated) 트랜잭션들을 포함한다. 푸시 기술들은 다양한 프로토콜들 및 통신 기술들과 관련하여 사용될 수 있다. 예를 들어, 어떤 대표적 푸시 기술들에, SMS (Short Message Service, 단문 메시지 서비스), WAP (Wireless Application Protocol, 무선 어플리케이션 프로토콜) 푸시, MMS (Multimedia Messaging Service, 멀티미디어 메시징 서비스), SIP (Session Initiation Protocol, 세션 개시 프로토콜), 및 그외 다른 것들을 포함한다.
WAP 푸시 구조에 따르면, 가령, 콘텐츠 전송은 푸시 개시자 (서버)를 통해 유발되어, 푸시 메시지를 클라이언트로 보냄으로써 클라이언트한테, 들어오는 전송 에 대해 알린다. 그러면, 클라이언트는 푸시 메시지 내 파라미터들에 기반하여, 다운로딩 프로세스를 시작해, 푸시 개시자로부터 콘텐츠를 다운로드 받는다. 더 자세히 말하면, 다운로드 세션이 클라이언트와 푸시 개시자 사이에 설정된 다음에, 서비스 표시가 클라이언트로 전달될 수 있고, 이때 서비스 표시의 콘텐츠가 클라이언트의 사용자에게 제공될 수 있다 (예를 들어, "광고가 들어올 것입니다, 수신하겠습니까?"). 그러면 그 사용자에게 제공된 서비스 표시에 기반해, 사용자는 그 서비스를 수용하거나 거부할 수 있다. 서비스가 수용되면, 푸시 개시자로부터 클라이언트로 콘텐츠가 다운로드될 수 있다. WAP 푸시 구조에 관한 더 자세한 정보는 무선 어플리케이션 프로토콜 포럼, WAP 푸시 구조 개괄, WAP-250-PushArchOverview-20010703-a 등을 참조해 알 수 있고, 그 내용들의 전부가 여기 참조 형태로 포함된다.
전통적인 푸시 기술들은, 콘텐츠를 클라이언트들에게 미는데 적합한 한편으로 단점들 역시 가지고 있다. 그와 관련해, WAP 푸시 구조를 통해 제공되는 것 같은 일반적인 푸시 기술들은 푸시 개시자로부터 클라이언트로 콘텐츠 다운로드를 일으키기 위해 클라이언트 (또는 클라이언트의 사용자) 인터랙션(interaction)을 필요로 한다 (즉, 콘텐츠 전송 전에 최종 사용자가 그 푸시된 콘텐츠를 수용할 필요가 있다). 따라서 여러 서비스들과 콘텐츠에 있어서, 최종 사용자에게 다운로드 시점에서 콘텐츠를 명확히 수용할 것을 요구하지 않고 클라이언트들에게 콘텐츠를 미는(푸시하는) 것이 바람직할 것이다.
푸시된 콘텐츠를 수신하기 위해 최종 사용자 인터랙션을 필요로 한다는 결점 에 대한 해법으로서, WAP을 통해 정의된 것 같은 서비스 로딩 기술들이 클라이언트에 의해 활용되어져 최종 사용자 인터랙션 없이 콘텐츠를 다운로드하게 한다. WAP에 따라, 서비스 로딩은 클라이언트들이 사용자 개입 없이 콘텐츠를 수신할 수 있게 한다. 이와 관련해, 푸시 개시자는 클라이언트에게 서비스 로딩 콘텐츠를 푸시하는데, 이 서비스 로딩 콘텐츠를 수신하자마자 클라이언트는 원 서버로부터 서비스 로딩 콘텐츠에 의해 식별된 콘텐츠를 자동으로 다운로드(즉 "풀(pull)")한다. WAP 서비스 로딩 구조에 관한 더 자세한 정보는 무선 어플리케이션 프로토콜 포럼, 서비스 로딩, WAP-168-ServiceLoad-20010731-a 등을 참조해 알 수 있고, 그 내용들의 전부가 여기 참조 형태로 포함된다.
서비스 로딩 기술들이 콘텐츠 수신을 위해 최종 사용자 인터랙션을 필요로 한다는 결점을 해결하고는 있으나, 그 기술들 역시 결점을 가지고 있다. 이와 관련해, 가입/비가입 푸시 타입 서비스들 (가령, 이메일)은 스팸에 취약하다. 잘 알려져 있다시피, 스팸이란 일반적으로 벌크 이메일과 같이 쓸데없는 서비스들을 수신하는 것을 말한다. 따라서, 쓸데없는 서비스나 콘텐츠를 수신할 가능성을 줄이면서 최종 사용자 인터랙션 없이 클라이언트에게 콘텐츠를 푸시하는 시스템 및 방법을 개발하는 것이 요망된다고 할 것이다.
잘 알려졌다시피, 전파 공간을 통해(OTA, Over the Air) 콘텐츠를 다운로드하기 위한 현재의 많은 기술들은, 적어도 어느 정도까지, 그러한 콘텐츠가 하나의 통신, 또는 다운로드, 세션 안에서 다운로드된다는 것을 전제한다. 이를테면, OTA 프로토콜에 따라 콘텐츠를 다운로드 하기 위한 현재의 오픈 모바일 연합 (OMA, Open Mobile Alliance) 기술들은 적어도 어느 정도까지는 그러한 콘텐츠가 하나의 다운로드 세션 안에서 다운로도된다는 것을 전제하고 있다. 그러나, 클라이언트가 대량의 콘텐츠를 다운로드하고 있으면, 콘텐츠를 다운로드할 시간이 통상적으로 증가되기 때문에, 클라이언트가 다운로드 프로세스 도중 어떤 유형의 전송 에러나 방해를 받게 될 가능성이 커지게 된다. 예를 들어, 최종 사용자들이 콘텐츠를 수신하지 않고 한 어플리케이션을 동작시키고자 하는 등의 다른 목적을 위해 클라이언트를 이용하고자 할 때, 이 최종 사용자들은 다운로드되는 콘텐츠의 전송을 중단시킬 수 있다(interrupt). 또 다른 예로서, 클라이언트 에러 (가령, 배터리가 죽거나, 멈추거나 고장 나는 등)나 네트워크 오류 (가령, 지리적 적용 범위를 벗어나는 등)와 같은 예상치 못한 사건이 다운로드되는 콘텐츠의 전송을 차단할 수 있다.
통상적으로, 콘텐츠가 단일한 다운로드 세션 안에서 다운로드될 때, 전송 에러나 인터럽트가 그 다운로드 프로세스 중에 발생되면, 클라이언트는 콘텐츠를 완전하게 다운로드하기 위해 다운로드 프로세스를 재시작해야 한다. 예를 들어, 클라이언트가 GPRS (General Packet Radio Services) 네트워크를 통해 32 메가 바이트 크기의 콘텐츠를 다운로드하는 중에 어떤 에러나 기타 인터럽트를 당하게 되면, 클라이언트가 그 에러나 인터럽트 전에 이미 콘텐츠의 상당 부분을 다운로드했다고 하더라도 보통은 콘텐츠 수신 다운로드를 재시작해야만 한다. 파일 전송 프로토콜 (FTP) 기술과 같은 여러 기술들이 에러나 인터럽트를 당한 다운로드 세션을 복구하기 위해 개발되어 왔다. 그러나, 그러한 기술들은 단지 네트워크 접속 에러 (가령, 모뎀 고장)를 당한 다운로드 세션을 복구하도록 설계되었고, 다른 이유로 중단 된 다운로드 세션들을 복구하지는 못하고 있다. 따라서, 쓸데없는 서비스나 콘텐츠를 수신할 가능성을 줄이면서 최종 사용자 인터랙션 없이 클라이언트에게 콘텐츠를 푸시할 수 있을 뿐만 아니라, 부가적으로, 혹은 대안적으로, 클라이언트 에러와 네트워크 에러를 경험한 다운로드 세션을 복구할 수도 있는 시스템 및 방법을 개발하는 것이 요망되고 있다. 그러한 시스템 및 방법은, 콘텐츠를 수신하고 사용자가 그 콘텐츠나 서비스에 대한 권리를 가졌다는 것을 정당화고자 하는 사용자의 빠른 인증을 제공할 수 있어야 한다는 것이 더 요망되고 있다. 또한, 이 시스템은, 사용가 이미 지불을 끝낸 콘텐츠의 다운로드 세션이 어떤 에러를 경험하는 경우 그 콘텐츠에 대해 재지불할 필요 없이 그 콘텐츠를 수신하는 것을 도울 수 있어야 함이 더 요망된다.
상술한 배경에 비추어, 본 발명의 실시예들은 푸시 콘텐츠를 다운로드하기 위한 보다 개선된 시스템, 방법, 및 컴퓨터프로그램 생성물을 제공한다. 이러한 본 발명의 실시예들인 시스템, 방법, 및 컴퓨터 프로그램 생성물은 단말이 쓸데없는 콘텐츠를 수신할 가능성을 줄이면서 최종 사용자 인터랙션 없이 단말로 콘텐츠를 푸시할 수 있다. 이와 관련하여, 본 발명의 실시예들에 따르면, 상기 시스템, 방법, 및 컴퓨터 프로그램 생성물은 푸시(push) 개시자, 원 서버, 및 토큰 베이스 인증 기술 등에 따라 원 서로보부터 단말로 푸시되는 콘텐츠 중 한 개 이상을 인증할 수 있다. 바람직한 것은, 상기 시스템, 방법, 및 컴퓨터 프로그램 생성물이, 서비스 로딩 기술에 따라 보통 원 서버로부터 단말로 콘텐츠가 푸시되기 전에, 푸시 개시자, 원 서버 및/또는 콘텐츠를 인증할 수 있다는 것이다. 서비스 로딩 기술에 따라 단말로 콘텐츠를 푸시함으로써, 콘텐츠는 최종 사용자 인터랙션 없이 단말로 푸시될 수 있다. 또한 단말에 푸시 개시자를 인가하도록 요청함으로써, 원 서버 및/또는 콘텐츠, 시스템, 방법, 및 컴퓨터 프로그램 생성물은 원치않는 (즉, 인가되지 않은) 콘텐츠를 단말이 수신할 가능성을 줄일 수 있다.
원치않는 콘텐츠를 수신할 가능성을 줄이면서 사용자 인터랙션 없이 단말로 콘텐츠를 푸시할 수 있는데 더하여, 본 발명의 실시예들에 따른 시스템, 방법, 및 컴퓨터 프로그램 생성물은 단말 에러 및 네트워크 에러를 경험한 다운로드 세션을 복구할 수 있다. 이와 관련해, 다운로드 콘텐츠의 수신된 부분들은, 다운로드 콘텐츠의 크기 및 그 다운로드 콘텐츠의 상태를 나타내는 다운로드 서술자(descriptor), 정보 패킷 등과 나란히 비휘발성 캐시에 저장될 수 있다. 따라서, 콘텐츠 다운로드의 방해가 발생시 다운로드 서술자 및/또는 정보 패킷들이 사용되어 나머지 부분을 다운로드 받을 수 있도록 콘텐츠 다운로드를 완료하기 위해 콘텐츠의 남은 부분을 결정할 수 있다.
본 발명의 제1양상에 따라, 푸시된 콘텐츠를 다운로드하기 위한 시스템이 제공된다. 이 시스템은 다운로드 콘텐츠를 식별하고 디지털 서명을 포함하는 서비스 로딩(탑재) 콘텐츠를 수신할 수 있는 단말을 포함한다. 단말은 디지털 서명에 기반해 서비스 로딩 콘텐츠를 인증할 수 있고, 서비스 로딩 콘텐츠가 인가되면 다운로드 콘텐츠를 단말로 가져온다(풀링, pulling). 예를 들어, 단말은 공공 키 (public key)를 사용해 디지털 서명을 검증하여 서비스 로딩 콘텐츠를 인증할 수 있다. 이와 관련해, 시스템은 공공 키와 결부되어 있는 사설 키 (private key)로서 서비스 로딩 콘텐츠를 디지털 서명할 수 있고, 그런 다음 서비스 로딩 콘텐츠를 단말로 전송하는 푸시 개시자 (push initiator)를 또한 포함할 수 있다. 그러나, 단말이 서비스 로딩 콘텐츠를 인가하는 방법과 무관하게, 단말은 서비스 로딩 콘텐츠를 인가하고, 그 서비스 로딩 콘텐츠를 수신함에 따라 단말 사용자로부터의 인터랙션과 무관하게 그 다운로드 콘텐츠를 풀링할 수 있다.
다운로드 콘텐츠 이외에, 서비스 로딩 콘텐츠는 그 다운로드 콘텐츠와 결부된 원 서버를 식별할 수 있다. 따라서 시스템은 그 식별된 원 서버 역시 포함할 수 있다. 그 경우, 단말은 서비스 로딩 콘텐츠가 인가될 때 원 서버로 콘텐츠 다운로드 요청을 전송하고, 그런 다음 그 요청에 따른 원 서버로부터의 다운로드 콘텐츠를 수신함으로써, 다운로드 콘텐츠를 풀링할 수 있다. 더 상세하게 말하면, 단말은 다운로드 서술자를 수신하고, 그 다음 다운로드 콘텐츠를 수신할 수 있다. 다운로드 콘텐츠 역시 복수의 데이터 패킷들로 이뤄진다. 이와 관련해, 단말은 복수의 데이터 패킷들을 수신할 때 인터럽트가 발생하여 단말이 다운로드 콘텐츠의 복수의 데이터 패킷들보다 적은 량을 수신하는지를 판단할 수 있다. 또 복수의 데이터 패킷들을 수신하는 중에 인터럽트가 발생하면, 단말은 그 인터럽트 전에 성공적으로 보내졌던 데이터 패킷들이 재전송될 필요 없이 복수의 데이터 패킷들을 다 수신하도록 다운로드 콘텐츠를 복구할 수 있다. 단말은 또한, 단말에서 수신될 적어도 한 개의 나머지 데이터 패킷을 결정함으로써 다운로드 콘텐츠의 복수의 데이터 패킷들 모두의 수신을 완료할 수 있다. 그런 다음 단말은 원 서로에, 그 적어도 한 개의 나머지 데이터 패킷을 송신할 것을 지시할 수 있고, 그런 다음 복수의 데이터 패킷들을 모두 수신하도록 적어도 한 개의 나머지 데이터 패킷을 수신할 수 있다.
다운로드 콘텐츠가 복수의 데이터 패킷들로 되었을 때, 단말은 그 복수의 데이터 패킷들을 수신할 수 있고, 한 개 이상의 데이터 패킷들로 된 한 개 이상의 그룹들과 관련한 한 개 이상의 정보 패킷들을 수신할 수 있다. 이 경우, 단말은 적어도 한 정보 패킷에 기반하여, 단말이 다운로드 콘텐츠의 복수의 데이터 패킷들 모두 보다 적은 량을 수신하게 되는 어떤 인터럽트가 그 복수의 데이터 패킷 수신 중에 발생했는지를 판단하기 위해, 수신된 데이터 패킷들을 모니티링할 수 있다. 그래서, 복수의 데이터 패킷들 수신 중에 인터럽트가 발생했으면, 단말은 인터럽트 전에 이미 성공적으로 전송되었던 데이터 패킷들이 재전송되게 할 필요 없이 단말이 그 모든 복수의 데이터 패킷들을 수신할 수 있도록 다운로드 콘텐츠를 복구할 수 있다.
본 발명의 다른 양태들에 따라, 푸시된 콘텐츠를 다운로드하기 위한 방법 및 컴퓨터 프로그램 생성물이 제공된다. 따라서, 본 발명의 실시예들은 푸시된 콘텐츠를 다운로드하기 위한 개선된 시스템, 방법, 및 컴퓨터 프로그램 생성물을 제안한다. 단말로 콘텐츠를 푸시하기 위한 일반적인 기술들과는 달리, 본 발명의 실시예들에 따른 시스템, 방법, 및 컴퓨터 프로그램 생성물은 엔드-유저 인터랙션 없이 단말로 콘텐츠를 푸시할 수 있다. 또한, 종래의 기술들과는 달리, 본 발명의 실시예에 따른 시스템, 방법, 및 컴퓨터 프로그램 생성물은, 스팸성 콘텐츠 같은 원치않는 콘텐츠를 단말이 수신할 가능성을 줄이면서, 단말로 콘텐츠를 푸시할 수 있다. 푸시된 콘텐츠를 다운로드하는 일반적인 기술들과는 또 달리, 본 발명의 실시에들에 따른 시스템, 방법, 및 컴퓨터 프로그램 생성물은 단말 에러, 및 네트워크 에러에 맞닥뜨린 다운로드 세션을 복구할 수가 있다. 따라서, 본 발명의 실시예들에 따른 단말 및 관련 시스템과 방법이 종래 기술들에서 확인된 문제들을 해결하며, 거기에 부가적인 이점까지 제공한다.
일반적인 용어로서 본 발명을 설명함에 있어, 반드시 그려진 크기일 필요는 없는 첨부된 도면들을 참조할 것이다:
도 1은 본 발명의 일실시예에 따른, 단말이 무선 RF 링크들을 통해 양방향으로 연결되는 셀룰라 네트워크 및 데이터 네트워크를 포함하는, 무선 통신 시스템의 개략적 블록도이다.
도 2는 본 발명의 실시예들에 따른, 단말, 푸시 프록시/GTW, 방법 프록시/GTW, 푸시 개시자 및/또는 원 서버로서 동작할 수 있는 개체의 개략적 블록도이다.
도 3은 본 발명의 실시예들에 따른, 단말로서 동작할 수 있는 모바일 스테이션의 개략적 블록도이다.
도 4는 본 발명의 실시예들에 따른, 푸시된 콘텐츠를 다운로드하기 위한 방법에 의해 동작하는 시스템의 구성요소들에서의 제어 흐름도이다.
도 5는 원 서버 원 서버로부터 콘텐츠를 다운로드하는 단말의 기능 블록도이 다.
도 6은 본 발명의 실시예들에 따른, 인터럽트된 다운로드 세션을 복구하기 위한 방법에 의해 동작하는 시스템 구성요소들에서의 제어 흐름도이다.
도 7은 본 발명의 실시예들에 따른, 한 개 이상의 데이터 패킷들과, 패킷 스트림에 추가되는 한 개 이상의 정보 패킷들로 된 여러 그룹들 또는 블록들로 분해된 다운로드 콘텐츠를 도시한 것이다.
이제부터 본 발명의 바람직한 실시예들이 도시된 첨부된 도면을 참조해 본 발명이 보다 상세하게 설명될 것이다. 그러나, 본 발명은 여러 다양한 형태들로서 실싱될 수 있으며, 여기 설명된 실시예들에 한정되는 것으로서 해석되어서는 안되며, 이 실시예들은 그 개시 사항을 철저하고 완전하게 하면서 이 분야의 당업자에게 본 발명의 범위를 충분히 전달할 수 있게 하기 위해 제공되는데 불과하다. 동일한 참조부호들은 동일한 구성요소들을 나타낸다.
도 1을 참조하면, 본 발명의 이익을 향유할 수 있는 한 가지 유형의 단말 및 시스템에 대한 도면이 제공된다. 본 발명의 시스템, 단말 및 방법은 주로 모바일 통신 어플리케이션들과 연계해 설명될 것이다. 그러나, 본 발명의 시스템 및 방법이 모바일 통신 산업계 안팎의 다른 여러 종류의 어플리케이션들과도 관련하여 적용될 수 있다는 것을 알아야 한다. 이를테면, 본 발명의 시스템 및 방법은 유선 및/또는 무선 (가령, 인터넷) 어플리케이션들과 연계되어 이용될 수가 있다.
보이다시피, 단말(10)은 베이스 기지, 또는 베이스 스테이션 (BS)(14)으로부 터 신호를 송수신하기 위한 안테나(12)를 포함할 수 있다. 베이스 스테이션은 모바일 스위칭 센터 (MSC)(16) 같이, 네트워크를 운영하는데 필요로 되는 구성요소들을 포함하는 셀룰라 네트워크의 한 부분이다. 이 분야의 당업자들에게 잘 알려져 있다시피, 셀룰라 네트워크는 베이스 스테이션/MSC/인터워킹 기능(BMI)으로도 불릴 수 있다. 동작시, MSC는 단말이 통화(call)를 발신 및 수신할 때 단말로/로부터 통화 및 메시지들을 라우팅할 수 있다. MSC는 또한 단말이 어떤 통화에 관여할 때, 지상선 트렁크들(채널들)로의 접속 역시 제공한다. MSC는 무선 어플리케이션 프로토콜 (WAP) GTW 같은 서버 게이트웨이 (GTW)에 연결될 수 있다. WAP 게이트웨이는 푸시 프록시/GTW(18) 및 방법 프록시/GTW(20) 같은, 한 개 이상의 게이트웨이들을 포함할 수 있다.
MSC(16)는 로컬 영역 네트워크(LAN), 대도시 지역 네트워크(MAN), 및/또는 광대역 네트워크(WAN) 같은 데이터 네트워크에 연결될 수 있다. MSC는 데이터 네트워크에 직접 연결되고/거나 WAN GTW를 거쳐 (가령, 푸시 푸록시/GTW(18) 및/또는 방법 프록시/GTW(20)를 거쳐) 간접적으로 연결될 수 있다. 프로세싱 요소들 (가령, 퍼스널 컴퓨터들, 서버 컴퓨터들 등) 같은 장치들이 인터넷을 통해 단말(10)에 연결될 수 있다. 예를 들어, 이하에서 설명되는 바와 같이, 프로세싱 요소들은 푸시 개시자(24)와 연관된 한 개 이상의 프로세싱 요소들뿐 아니라, 한 개 이상의 원 서버와 결부된 한 개 이사의 프로세싱 요소들을 포함할 수 있으며, 이들 각각이 도 1에 도시되어 있다.
MSC(16) 외에, BS(14)가 시그날링 GPRS (General Packet Radio Service) 지 원 노드 (SGSN)(28)에 연결될 수 있다. 이 분야의 당업자라면 알 수 있다시피, SGSN은 통상적으로 패킷 교환 방식 서비스들에 대해 MSC(16)와 유사한 기능들을 수행할 수 있다. MSC 처럼, SGSN은 인터넷(22) 같은 데이터 네트워크에 연결될 수 있다. SGSN은 데이터 네트워크에 바로 연결될 수 있다. 보다 일반적인 실시예들에서는, 그러나, SGSN은 GPRS 코어 네트워크(33) 같은 패킷 교환 방식 코어 네트워크에 연결된다. 패킷 교환 방식 코어 네트워크는 그러면 GTW GPRS 지원 노드(GGSN)(30)과 같은 다른 GTW에 연결되고, GGSN은 인터넷에 연결된다. GGSN 이외에, 패킷 교환 방식 코어 네트워크 역시 WAN GTW (가령, 푸시 프록시/GTW(18) 및/또는 방법 프록시/GTW(20))에 연결될 수 있다.
SGSN(28)을 GPRS 코어 네트워크(33) 및 GGSN(30)에 연결함으로써, 원 서버들(26) 같은 장치들은 인터넷(22), SGSN 및 GGSN을 통해 단말(10)에 연결될 수 있다. 이와 관련하여, 원 서버들 같은 장치들은 SGSN, GPRS, 및 GGSN을 통해 단말과 통신할 수 있다. 예를 들어, 원 서버들은 멀티미디어 브로드캐스트 멀티캐스트 서비스(MBMS) 등에 따라, 단말로 콘텐츠를 제공할 수 있다. MBMS에 대한 더 자세한 정보는 3세대 협동 프로젝트(3GPP) 기술 사양 3GPP TS 22.146, 표제: 멀티미디어 브로드캐스트 멀티캐스트 서비스( MBMS )를 참조할 수 있고, 그 내용 전체를 참조함으로써 그 내용이 여기 포함된다.
BS(14)와 연결되는 것 말고도, 단말(10)은 한 개 이상의 무선 액세스 포인트(AP)들(30)과 무선으로 연결될 수 있다. AP들은 가령, 라디오 주파수(RF), 블루투스(BT), 적외선 방식(IrDA), 또는 WLAN 기술을 포함하는 수많은 다양한 무선 네 트워킹 기술들 중 어느 하나 등과 같은 기술들에 따라 통신하도록 설정된 액세스 포인트들을 포함할 수 있다. AP들은 인터넷(22)에 연결될 것이다. MSC(16)에서와 같이, AP들은 인터넷에 바로 연결될 수 있다. 그러나, 바람직한 한 실시예에서, AP들은 푸시 프록시/GTW 및/또는 방법 프록시/GTW를 포함하는 WAP GTW를 통해 인터넷에 간접적으로 연결된다. 예상할 수 있다시피, 직접적으로든 간접적으로든 단말 및 푸시 개시자(24), 원 서버(26) 뿐 아니라 여러 다른 장치들 중 어느 하나를 인터넷에 연결함으로써, 단말들이 푸시 개시자, 원 서버 등등, 및 단말들끼리 통신할 수 있게 되어, 데이터, 콘텐츠 등을 푸시 개시자, 원 서버 등과 송수신하는 등 단말의 여러 기능들을 수행할 수 있게 된다.
또, 단말(10)은, 부가적으로나 대안적으로, 지상의 디지털 비디오 브로드캐스팅(가령, DVB-T, DVB-H, ISDB-T, ATSC 등) 네트워크 같은 디지털 브로드캐스트 네트워크를 통해 디지털 브로드캐스터(34)에 연결될 수 있다. 예상할 수 있다시피, 직간접적으로 단말들과 디지털 브로드캐스터를 연결함으로써, 단말들은 디지털 브로드캐스터로부터 하나 이상의 텔레비전, 라디오 및/또는 데이터 채널들에 대한 콘텐츠 등을 수신할 수 있다. 이와 관련하여, 디지털 브로드캐스터는 DVB-T TX 같은 송신기(TX)(36)를 포함하거나 그것에 연결될 수 있다. 마찬가지로, 단말은 DVB-T 수신기(미도시) 같은 수신기를 포함할 수 있다. 단말은 수많은 다양한 방법들 가운데 어느 하나 이상의 방법으로 수많은 다양한 개체들 중 어느 것으로부터 콘텐츠를 수신할 수 있다. 가령, 일실시예에서, 단말은 DVB (가령, DVB-T, DVB-H 등) 기술뿐 아니라 셀룰라 (가령, 1G, 2G, 2.5G, 3G 등) 통신 기술에 따라 데이터, 콘텐츠 등을 송수신할 수 있는 단말(10')을 포함할 수 있다. 이러한 실시예에서, 단말(10')은 TX로부터 콘텐츠를 수신하기 위한 안테나(12A), 및 BS(14)와 신호를 송수신하기 위한 다른 안테나(12B)를 포함할 것이다. 이러한 단말에 대한 더 상세한 정보를 얻으려면, 2001년 6월 29일 출원된 특허 출원 번호 09/894,532를 참조할 수 있고, 그 내용은 전체적으로 참조 형태로서 이 명세서에 포함된다.
단말(10)을 TX(36)를 통해 디지털 브로드캐스터(34)로 바로 연결하는 것 외에, 혹은 그 대신에, 단말이 디지털 브로드캐스트 수신 단말(38)에 연결될 수 있고, 그 수신 단말(38)은 다시 직접적으로 및/또는 TX를 통해 디지털 브로드캐스트(34)에 연결될 수 있다. 이 경우, 디지털 브로드캐스트 수신 단말은 셋탑 박스(set top box) 형태로 된 DVB-T 수신기 같은 DVB-T 수신기를 포함할 수 있다. 단말은 개인 영역 네트워크 등을 통해, 디지털 브로드캐스트 수신 단말에 국지적으로 연결될 수 있다. 그러나, 바람직한 한 실시예에서, 단말은 부가적으로나 대안적으로 인터넷(22)을 통해 디지털 브로드캐스트 수신 단말에 간접적으로 연결될 수 있다.
DVB-T 같은 수많은 디지털 브로드캐스팅 기술들에 따라, 인터넷 프로토콜(IP) 데이터캐스트 (IPDC)가 오디오, 비디오 및/또는 다른 콘텐츠를 단말들(10)로 제공하는데 활용될 수 있다. 이와 관련해, 디지털 브로드캐스터(34)는 디지털 브로드캐스팅 기술을 이용하여 IP 데이터캐스팅 콘텐츠를 단말로 제공할 수 있다. 이 분야의 당업자라면 예상할 수 있다시피, DVB-T 같은 디지털 브로드캐스팅 기술들은 수많은 다양한 셀들 각각과 연관된 전송 사이트를 가진, 성질상 실질적인 셀 룰라 기술들이다. DVB-T는 이를테면, MPEG-2 전송 스트림들을 이용하며, 그에 따라 IP 데이터는 디지털 브로드캐스터, 또는 보다 특정해서 TX(36)로부터 전송된 DVB 전송 신호들 안으로 엔캐슐레이트된다(encapsulate). IP 데이터그램드을 포함하는 데이터 스트림들이 여러 소스들로부터 제공될 수 있고, IP 엔캡슐레이터(encapsulator, 미도시)에 의해 엔캡슐레이트될 수 있다. IP 엔캡슐레이터는 다시 그 엔캡슐레이트된 IP 데이터 스트림들을 데이터 브로드캐스팅 (가령, DVB-T) 네트워크로 공급할 수 있다.
그리고 나서 엔캡슐레이트된 IP 데이터 스트림들이 한 개 이상의 전송 사이트들로 전송될 수 있고, 이때 전송 사이트들은 데이터 브로드캐스팅 네트워크의 셀들을 형성한다. 이를테면, 엔캡슐레이트된 IP 데이터 스트림들이, 전파 공간을 통해 단말들이나 혹은 한 개 이상의 단말들에 서비스하는 수신기 스테이션으로 직접 순차 전송되기 위해, MPEG-2 전송 스트림을 통해 한 개 이상의 전송 사이트들로 전송될 수 있다. 이해할 수 있다시피, MPEG-2 전송 스트림은, IP 엔캡슐레이트에 의한 발생으로부터 단말이나 수신기 스테이션에 의한 수신까지, 성격상 보통 단일 방향성이다. 이와 관련하여, 데이터를 포함하는 IP 패킷들이, 전송 스트림 패킷들 내에서 전송되는 멀티 프로토콜 엔캡슐레이션 (MPE) 섹션들에 내장될 수 있다.
IP 패킷들 외에, MPE 섹션들은 포워드 에러 정정(FEC) 정보 및 타임 슬라이싱(slicing) 정보 또한 포함할 수 있다. 그러한 타임 슬라이싱 정보를 포함함으로써, 데이터는 수신기 (가령, 단말(10))에 불연속적으로 전달될 수 있고, 그에 따라 수신기로 전송되는 데이터가 없을 때 수신기는 스위치 오프됨으로써 배터리 전력을 절약할 수 있게 된다. 달리 말하면, 연속적인 디지털 브로드캐스팅 (가령, DVB-T) 전송이라는 현재의 디폴트 방식을 사용하는 대신 한 타임 슬라이싱 기술에 따라, 시간 분할 다중화 타입의 할당 기술이 사용될 수 있다 (가령 DVB-H 표준 참조). 이러한 방식을 통해, 서비스들은 버스트들로서 제공될 수 있어, 수신기로 하여금 수신기가 데이터를 수신하지 않고 있을 때 전력을 낮추도록 할 수 있고, 필요할 때 데이터 패킷을 수신하기 위해 전력을 높이도록 할 수 있다.
이제 도 2를 참조하면, 단말(10), 푸시 프록시/GTW(18), 방법 프록시/GTW(20), 푸시 개시자(24) 및/또는 원 서버(26)로서 동작할 수 있는 개체의 블록도가 본 발명의 일실시예에 따라 그려진다. 별개의 개체들로서 그려지고는 있지만, 어떤 실시예들에서는, 한 개 이상의 개체들이 내부에서(locally) 분리되어 있으나 개체(들) 안에 함께 위치하는, 단말, 푸시 프록시/GTW, 방법 프록시/GTW, 푸시 개시자 및/또는 원 서버 중 한 개 이상을 지원할 수 있다. 이를테면, 하나의 개체가 내부적으로는 분리되어 있으나 함께 위치하는 푸시 프록시 GTW를 방법 프록시/GTW와 함께 지원할 수 있다. 또, 가령, 하나의 개체가 내부에서는 별개이나 함께 위치된 푸시 개시자와 원 서버를 함께 지원할 수도 있다.
보여진 것처럼, 단말(10), 푸시 프록시/GTW(18), 방법 프록시/GTW(20), 푸시 개시자(24) 및/또는 원 서버(26)로서 동작할 수 있는 개체는 일반적으로 메모리(42)와 인터페이스(44)를 포함할 수 있다. 메모리는 휘발성 및/또는 비휘발성 메모리를 포함할 것이고, 통상적으로 소프트웨어 어플리케이션, 명령어 등을 포함하여 프로세서로 하여금 본 발명의 실시예들에 따른 개체의 동작 관련 단계들을 수 행하도록 한다. 이를테면, 한 단말로서, 메모리는 HTTP(hypertext transfer protocol), 파일 전송(가령, FTP) 어플리케이션, 텔넷(Telnet) 어플리케이션, 피어-투-피어(peer-to-peer) 액세스 어플리케이션 등에 따라 통신하기 위한 일반적인 웹 브라우저 등의 사용자나 호스트 어플리케이션들을 포함할 것이다. 메모리는 또, 이하에서 설명되는 것과 같이, 단말로의 콘텐츠 다운로드 완료를 지원할 수 있는 소프트웨어 다운로드 에이전트 또한 포함할 수 있다. 부가적으로, 이하에서 설명되는 것처럼, 메모리는 불완전하게 다운로드된 콘텐츠의 저장을 위한 비휘발성 메모리 캐시(42A), 및 완전히 다운로드된 콘텐츠 같은 콘텐츠의 저장을 위한 비휘발성 메모리(42B)를 포함할 수 있다.
이제, 본 발명의 실시예들에 따라, 단말(10)로서 동작할 수 있는 모바일 스테이션의 기능적 도면이 도시된 도 3을 참조할 것이다. 이렇게 도시되어 이하에서 설명될 모바일 스테이션은 단지 본 발명의 이익을 향유할 수 있는 한 가지 타입의 단말을 예시한 것일 뿐이므로, 본 발명의 범위를 제한하는 것으로 받아들여져서는 안된다. 여러 가지 모바일 스테이션의 실시예들이 도시되어 이하에서 예로 들 목적으로 설명될 것이지만, PDA, 호출기, 랩탑 컴퓨터 및 다른 타입의 음성 및 텍스트 통신 시스템들 같은 다른 타입의 모바일 스테이션들 역시 당연히 본 발명을 적용할 수 있다.
모바일 스테이션은 송신기(44), 수신기(46), 및 송수신기와 신호들을 주고 받는 제어기(48)를 포함한다. 이 신호들에는 적용가능한 셀룰라 시스템의 전파 공간 인터페이스 표준에 따른 시그날링 정보와, 사용자 말(speech) 및/또는 사용자가 생성한 데이터를 포함한다. 이와 관련해, 모바일 스테이션은 하나 이상의 전파 공간 인터페이스 표준, 통신 프로토콜, 변조 타입, 및 액세스 타입들을 가지고 동작할 수 있다. 보다 상세히 말하면, 모바일 스테이션은 여러 1세대(1G), 2세대(2G), 2.5G 및/또는 3세대(3G) 통신 프로토콜들 중 어느 하나에 따라 동작될 수 있다. 예를 들어, 모바일 스테이션은 2G 무선 통신 프로토콜 IS-136 (TDMA), GSM, 및IS-95 (CDMA)에 따라 동작할 수 있다. 모바일 스테이션은 부가적으로나 대안적으로, DVB 기술 (가령, DVB-T, ETSI 표준 EN 300 744)같은 수많은 서로 다른 디지털 브로드캐스팅 기술들에 따라 동작할 수 있다. 모바일 스테이션은 또한 MBMS 기술 (가령, 3GPP TS 22.146) 같은 수많은 상이한 브로드캐스트 및/또는 멀티캐스트 기술들 중 하나에 따라 동작할 수도 있다. 또, 모바일 스테이션은 ISDB-T (일본 지상파 통합형 서비스 디지털 브로드캐스팅), DAB(디지털 오디오 브로드캐스팅), ATSC(고급형 텔레비전 시스템 위원회) 기술 등에 따라 동작할 수도 있다. 어떤 협대역 AMPS (NAMPS), 및 TACS, 모바일 단말들 역시, 듀얼 또는 그 이상의 모드로 동작하는 전화기들 (가령, 디지털/아날로그 또는 TDMA/CDMA/아날로그 전화기들)과 같이, 본 발명의 개념으로부터 이익을 향유할 수 있다.
제어기(48)는 모바일 스테이션의 오디오 및 로직 기능들을 구현하는데 필요한 회로를 포함한다. 예를 들어, 제어기는 디지털 신호 처리 장치, 마이크로프로세서 장치, 및 다양한 아날로그-디지털 변환기들, 디지털-아날로그 변환기들, 그리고 기타 지원 회로들로 이뤄질 수 있다. 모바일 스테이션의 제어 및 신호 처리 기능들이 이러한 장치들 사이에서 이 장치들의 관련 기능들에 따라 할당된다. 제어 기는 변조 및 전송에 앞서 메시지를 컨볼루션 방식으로(convolutionally) 부호화하고 인터리브(interleave)하는 기능 역시 포함한다. 제어기는 이에 더하여 내부 음성 코더(VC)(48A)를 포함할 수 있고, 내부 데이터 모뎀(DM)(48B)를 포함할 수도 있다. 또, 제어기는 메모리에 저장되어 있을 한 개 이상의 소프트웨어 어플리케이션들을 작동시키기 위한 기능을 포함할 수 있다.
모바일 스테이션은 또, 일반적인 이어폰이나 스피커(50), 링어(ringer)(52), 마이크로폰(54), 디스플레이(56), 및 사용자 입력 인터페이스와 같이, 모두 제어기(48)에 연결된 사용자 인터페이스를 포함한다. 모바일 스테이션으로 하여금 데이터를 받을 수 있게 하는 사용자 입력 인터페이스는, 키패드(58), 터치 디스플레이(미도시), 또는 다른 입력 장치 같이, 모바일 스테이션이 데이터를 받을 수 있게 하는 여러 장치들 중 어느 하나를 포함할 수 있다. 키패드를 포함한 실시예들에서, 그 키패드는 일반적인 숫자(0-9) 및 관련 키(#, *), 및 모바일 스테이션을 조작하는데 사용되는 다른 키들을 포함한다.
모바일 스테이션은 수많은 다양한 유무선 기술들에 따라, 다른 단말(10), 원 서버(26), AP(32), 디지털 브로드캐스트 수신 단말(38), 디지털 브로드캐스터(34) 등과 같은 한 개 이상의 전자 기기와 로컬 통신하기 위한 한 개 이상의 수단 또한 포함할 수 있다. 이를테면, 모바일 스테이션은 라디오 주파수 및/또는 적외선 기술들에 따라 로컬 통신할 수 있도록, 라디오 주파수(RF) 트랜시버(60) 및/또는 적외선(IR) 트랜시버(62)를 포함할 수 있다. 또, 가령, 모바일 스테이션은, 블루투스 전송 기술에 따라 로컬 통신할 수 있도록, 블루투스(BT) 트랜시버(64)를 포함할 수 있다. 도시되지는 않았으나, 모바일 스테이션은 부가적으로나 대안적으로, LAN 및/또는 WLAN 기술들을 포함하는 수많은 다양한 유무선 네트워킹 기술들에 따라, 전자 기기들과 데이터를 송수신할 수 있다. 이와 관련해, 단말(10')과 관련해 도 1에 도시된 바와 같이, 모바일 스테이션은 부가적 안테나 등을 포함하여 상기 전자 기기들 (가령, 디지털 브로드캐스터)과 데이터를 송수신할 수 있다.
모바일 스테이션은 가입자 신원 모듈(SIM)(66), 탈부착가능 사용자 신원 모듈(R-UIM) 등과 같이, 일반적으로 모바일 가입자와 관련된 정보 요소들을 저장하는 메모리를 더 포함할 수 있다. SIM 이외에, 모바일 스테이션은 다른 메모리를 포함할 수 있다. 이와 관련해, 모바일 스테이션은 일시적 데이터 저장을 위한 캐시 영역을 포함하는 휘발생 램(RAM) 같은, 휘발성 메모리(68)를 포함할 수 있다. 모바일 스테이션은 내장 및/또는 탈부착 가능한 다른 비휘발성 메모리(70) 역시 포함할 수 있다. 비휘발성 메모리는 부가적으로나 대안적으로 EEPROM, 플래시 메모리, 하드 디스크 등을 포함할 수 있다. 메모리들은 모바일 스테이션에 의해 사용되어 모바일 스테이션의 기능을 구현시키는, 여러 종류의 정보들 가운데 어느 것과, 데이터를 저장할 수 있다. 예를 들어, 메모리들은 HTTP, 파일 전송(가령, FTP) 어플리케이션, 텔넷 어플리케이션, 피어-투-피어 액세스 어플리케이션 등에 따라 통신하는 일반적인 웹 브라우저 같은 사용자 또는 호스트 어플리케이션들을 포함할 수 있다. 메모리는 또한, 이하에서 설명하는 바와 같이, 단말로의 콘텐츠 다운로드 완료를 도모할 수 있는 소프트웨어 다운로드 에이전트를 포함할 수도 있다. 또, 이하에서 설명되는 것과 같이, 비휘발성 메모리는 불완전 다운로드된 콘텐츠를 저장 하기 위한 캐시(미도시)를 포함할 수 있다. 또, 비휘발성 메모리는 완전히 다운로드된 콘텐츠 같은 다른 콘텐츠의 저장을 위한 부분을 포함할 수 있다.
본 발명의 실시예들에 따르면, 시스템은 하나 이상의 기술들에 따라 동작할 수 있다. 위의 배경 기술 부분에서 설명한 것과 같이, WAP 푸시 구조에 의해 제공되는 것 같은 일반적인 푸시 기술들은 푸시 개시자로부터 클라이언트로 콘텐츠 다운로드를 실행하기 위해 클라이언트 (또는 클라이언트의 사용자) 인터랙션(interaction)을 필요로 한다. 일반적인 서비스 로딩 기술들은 최종 사용자 인터랙션 없이 콘텐츠를 푸시할 수 있는 반면에 가입/비가입된 푸시 타입 서비스들 (가령, 이메일)과 관련한 스팸에도 취약하다. 그에 따라 본 발명의 실시예들은, 최종 사용자 인터랙션 없이 단말(10)로 콘텐츠를 푸시할 수 있으면서, 단말이 원치않는 콘텐츠를 수신할 가능성을 줄일 수 있다. 여기서 말하는 콘텐츠는, 단말에 의해 푸시되거나 제공되거나, 또는 수신될 수 있는 여러 다양한 콘텐츠, 서비스 등을 의미할 수 있다.
더 특정할 때, 본 발명의 실시예들에 의한 단말(10)은 푸시 개시자(24), 원 서버(26), 및 토큰 베이스(token-based) 인증 기술 등에 따라 원 서버로부터 단말로 푸시된 콘텐츠를 인증할 수 있다. 바람직하게도, 단말은, 컨텐츠가 통상적으로 서비스 로딩 기술에 의해 원 서버로부터 단말로 푸시되기 전에, 푸시 개시자, 원 서버, 및/또는 콘텐츠를 인증할 수 있다. 그 후, 단말이 푸시 개시자, 원 서버 및/또는 콘텐츠를 인가했으면, 단말은 그 푸시된 콘텐츠를 수신할 수 있다. 그러나 만약 단말이 푸시 개시자, 원 서버 및/또는 콘텐츠의 인증에 실패하였으면, 단말은 푸시된 콘텐츠 수신을 거부할 수 있다. 단말로 하여금 푸시 개시자, 원 서버 및/또는 콘텐츠를 인증하라고 요구하고, 다말이 푸시 개시자, 원 서버 및/또는 콘텐츠를 인증했을 때 서비스 로딩 기술에 따라 단말로 콘텐츠를 푸시함으로써, 단말이 최종 사용자 인터랙션 없이 그 푸시된 콘텐츠를 수신하는 한편으로, 원치않는 (즉, 비인가된) 콘텐츠를 단말이 수신할 가능성이 감소될 수 있다.
이제, 본 발명의 일실시예에 따라 단말(10)로 푸시된 콘텐츠를 다운로드하는 방법을 수행하는 시스템의 여러 구성요소들에서의 제어 흐름도를 도시한 도 4를 참조한다. 도시되어 설명되는 것처럼, 이 방법은 푸시 개시자(24)를 인증하는 동작을 포함한다. 그러나, 이 방법은 본 발명의 개념과 범위에서 벗어나지 않는 범위에서, 부가적으로나 대안적으로 단말로 콘텐츠를 제공하는 원 서버(26) 및/또는 그 제공된 콘텐츠를 인증하는 동작을 포함할 수 있다는 것을 알아야 한다. 또, 도시되고 설명되는 것처럼, 이 방법은 토큰 베이스 인증 기술에 따라 푸시 개시자를 인증하는 동작을 포함한다. 그러나, 이 방법이, 본 발명의 개념과 범주로부터 벗어나지 않는 범위에서, 여러 다양한 공공 키 또는 사설 키 암호화 기술들 같은 여러 다양한 인증 기술들 가운데 하나에 의해 푸시 개시자 (원 서버, 및/또는 제공된 콘텐츠)를 인증할 수 있다는 것 역시 알아야 한다.
도 4에 도시된 바와 같이, 푸시된 콘텐츠를 단말(10)로 다운로드하는 방법은 단말이 가입 요청을 푸시 개시자(24)로 전송하여 인증 토큰이나 인증서, 또는 다르게 말할 때 공공 키를 수신하는 동작을 포함한다. 가입 요청에는 그러한 공공 키를 요청하기 적합한 여러 다양한 정보들 가운데 하나가 포함될 수 있다. 그러나, 일실시예에서, 그 가입 요청은, 단말이 푸시 개시자에 의해 주도된 푸시된 콘텐츠를 수신하기 위해 그 푸시 개시자를 인증하고 싶어한다는 표시를 포함한다. 그러한 표시 외에, 가입 요청은 푸시된 콘텐츠를 수신하기 앞서 추가로 인증하고자 하는, 한 개 이상의 원 서버들(26) 및/또는 콘텐츠를 식별할 수 있다.
가입 요청을 수신할 때, 푸시 개시자(24)는 공공 키를 단말(10)로 전송하는 것으로서 응답할 수 있는데, 이때 공공 키는 가입 요청과 연관되어 있는 것이다. 그러면 단말이 그 공공 키를 메모리(42) 등에 저장할 수 있고, 이때 공공 키는 (단말이 둘 이상의 푸시 개시자를 인증하는 경우 등에 있어서) 가입 요청과의 관계와 함께 저장될 수 있다. 이 기술 분야의 당업자라면 예상할 수 있다시피, 가입 요청과 결부되는 것 외에 (푸시 개시자 및/또는 단말에서) 공공 키는 어떤 관련된 사설 키도 포함한다. 이와 관련하여, 푸시 개시자는 사적인(private) 방법으로 그 사설 키를 관리하지만, 공공 (비밀이 아닌) 키는 단말이 입수 가능하게 한다. 이하에서 설명되는 것과 같이, 푸시 개시자는 사설 키를 이용하여, 단말로 전송되는 데이터를 디지털 서명할 수 있다. 그러면 단말은 그 디지털 서명 및 또는 공공 키에 기반하여, 인증된 푸시 개시자로부터 상기 데이터가 발생되었음을 검증할 수 있게 된다.
푸시 개시자(24)가 공공 키를 단말(10)로 전송한 후 아무 시점에서나, 푸시 개시자는 WAP 서비스 로딩 구조 등의 서비스 로딩 구조에 따라 단말과 통신할 수 있고, 그에 따라 단말로 콘텐츠 전송을 개시할 수 있게 된다. 이와 관련해, 푸시 개시자는 푸시 액세스 프로토콜 (PAP) 등에 따라 푸시 프록시/GTW(18)로 서비스 로 딩 콘텐츠를 전송하고, 푸시 프록시/GTW에 명령하여 그 서비스 로딩 콘텐츠를 단말(10)로 전송하도록 할 수 있다. 그러나, 서비스 로딩 콘텐츠를 푸시 프록시/GTW로 전송하기 전에, 푸시 개시자는 사설 키를 이용하여 이 기술 분야의 당업자에게 알려진 어떤 기술 등을 통해, 서비스 로딩 콘텐츠에 디지털 서명을 행한다. 디지털 서명 외에, 서비스 로딩 콘텐츠는 보통 단말에 의해 수신될 콘텐츠의 단일 자원 식별기(URI)를 포함한다.
예상할 수 있다시피, 여러 경우들에서, 푸시 개시자(24), 또는 푸시 개시자를 제어할 수 있는 다른 장치, 서버 등은, 단말(10)에 대해, 한 개 이상의 인가된 원 서버들 및/또는 인가된 콘텐츠, 및/또는 차단된 원 서버들 및/또는 차단된 콘텐츠를 포함하는 제한된 리스트를 포함할 수 있다. 이러한 경우, 푸시 개시자가 푸시 프록시/GTW(18)로 서비스 로딩 콘텐츠를 전송하기 전에, 그리고 푸시 개시자가 그 서비스 로딩 콘텐츠에 디지털 서명을 하기 전에, 그 제한된 리스트가, 그 제한된 리스트를 보유하는 푸시 개시자나 다른 장치, 서버 등에 의해 체크되어, 원 서버 및/또는 콘텐츠가 허가된다는 것 및/또는 원 서버 및/또는 콘텐츠가 차단되지 않는다는 것이 보장된다. 제한된 리스트를 체크함으로써, 그 서비스 로딩 콘텐츠, 또는 보다 상세히 말해, 서비스 로딩 콘텐츠에 의해 식별된 원 서버 및 콘텐츠가 그 제한된 리스트를 만족하는 경우, 푸시 개시자는 그 서비스 로딩 콘텐츠를 단말로 전송할 수 있다.
푸시 개시자가 디지털 서명된 서비스 로딩 콘텐츠를 전송한 다음에, 단말(10)은 그 디지털 서명된 서비스 로딩 콘텐츠 수신시 사용자 인터랙션 없이 URI 에 의해 식별되는 콘텐츠를 풀링할(가져올) 수 있다. 그러나 콘텐츠를 풀링하기 전에, 단말은 여전히 사용자 인터랙션 없이, 디지털 서명이 그 서비스 로딩 콘텐츠의 것임을 검증함으로써 자동으로 서비스 로딩 콘텐츠를 인증할 수 있다. 이와 관련하여, 단말은 푸시 개시자가 단말로 보냈던 공공 키를 이용하여, 디지털 서명을 검증할 수 있다. 디지털 서명을 검증함으로써, 단말은, 가입 요청에 지시되어 있었던 경우, 서비스 로딩 콘텐츠가, 인가된 원 서버(26)의 인가된 콘텐츠와 같다는 것을 검증할 수 있다.
만일, 단말이 디지털 서명이 서비스 로딩 콘텐츠의 것인지를 검증하는데 실패하는 등, 서비스 로딩 콘텐츠 인증에 실패하게 되면, 단말(10)은 수많은 다양한 방법들 가운데 하나를 통해 응답을 행할 수 있다. 이를테면, 단말은 푸시 프록시/GTW(18)와의 통신을 중단할 수 있다. 부가적으로나 대안적으로, 단말은 푸시 개시자(24), 푸시 프록시/GTW 및/또는 단말 사용자에, 단말이 수신된 서비스 로딩 콘텐츠 검증에 실패했고, 또 원하는 경우, 그 실패가 단말의 스팸밍(spamming)에 기인한 것일 수 있다는 것을 통지할 수 있다.
단말(10)이 디지털 서명이 서비스 로딩 콘텐츠의 것임을 검증함으로써 그 서비스 로딩 콘텐츠를 성공적으로 인증한 경우, 단말은 상기 서비스 로딩 콘텐츠를 통해 확인된 콘텐츠를 풀링 또는 다운로드할 수 있다. 이와 관련하여, 단말은 무선 세션 프로토콜 (WSP) 등에 따라 방법 프록시/GTW(20)와 통신할 수 있다. 더 특정하면, 단말은 방법 프록시/GTW에 지시하여 그 확인된 콘텐츠와 관련되거나 그렇지 않으면 그 콘텐츠에 대한 액세스를 제어하는 (URI에 의해서도 확인된) 원 서버(26) 로부터 URI에 의해 확인된 콘텐츠를 요청하도록 할 수 있다. 그러면 이 방법 프록시/GTW는 HTTP 등을 통해 원 서버와 통신하여 그 확인된 콘텐츠를 요청할 수 있다. 확인된 콘텐츠에 대한 요청을 수신하자마자, 원 서버는 그 확인된 콘텐츠를 무선 마크업 언어(WML) 등에 따라, 방법 프록시/GTW로 전송하는 동작을 통해 그에 응답할 수 있다. 그러면 방법 프록시/GTW는 그 확인된 콘텐츠를 단말로 전송할 수 있다.
배경 기술 부분에서 설명한 것과 같이, 만일 단말(10)이 원 서버(26) 등으로부터 (방법 프록시/GTW(20))를 통해 대용량 콘텐츠를 다운로드하고 있으면, 그 콘텐츠를 다운로드할 시간이 증가되고, 그에 따라 단말이 다운로드 프로세스 중에 어떤 유형의 전송 에러나 인터럽트를 경험할 가능성이 높아질 것이다. 일반적으로, 콘텐츠가 단일 다운로드 세션 안에서 다운로드될 때, 다운로드 프로세스 중에 전송 에러나 인터럽트가 발생하면, 단말은 콘텐츠를 완전하게 다운로드 하기 위해 그 다운로드 프로세스를 재시작해야 한다. 따라서, 본 발명의 실시예들은, 최종 사용자 인터랙션 없이 클라이언트에게 컨텐츠를 푸시하면서 원치않는 서비스나 콘텐츠를 수신할 가능성도 줄일 수 있을 뿐만 아니라, 단말 에러 및 네트워크 에러와 맞닥뜨린 다운로드 세션을 복구할 수도 있다.
여기 설명되는 것과 같이, 시스템은 방법 프록시/GTW(20)를 경유한 원 서버(26)과 단말(10) 사이의 다운로드 세션을 복구할 수 있다. 그러나, 이 시스템이 본 발명의 개념과 범위에서 벗어나지 않는 범위 안에서, 단말과, 이 단말과 통신할 수 있는 어떤 장치, 서버 등의 사이에서의 다운로드 세션도 복구할 수 있다는 것을 알아야 한다. 이를테면, 이 시스템은 단말과, 원 서버, 다운로드 서버, 디지털 브로드캐스터(34)(도 1 참조) 등의 사이에서의 다운로드 세션을 복구할 수 있다. 또한 이 시스템은 단말과 어떤 다른 장치 사이의 다운로드 세션을 복구할 수 있고, 이때 다운로드 콘텐츠는 포인트-투-포인트, 유니캐스트, 멀티캐스트, 및 브로드캐스트 콘텐츠 중 하나 이상을 포함함도 역시 알아야 한다.
이제, 본 발명의 일실시예에 따라, 원 서버(26)로부터 콘텐츠를 다운로드하는 단말(10)의 기능적 블록도를 도시한 도 5를 참조할 것이다. 보여진 대로, 단말은 HTTP 등에 의해 콘텐츠(74)를 수신할 수 있는 일반적인 웹 브라우저 같은 어플리케이션(72)을 작동시킬 수 있다. 단말은 또, 그 어플리케이션으로 콘텐츠를 전달할 수 있는 다운로드 에이전트(76)를 작동시킬 수도 있다. 이와 관련하여, 다운로드 에이전트는 통상적으로, 콘텐츠 스토리지(78) (가령, 도 3의 스토리지(42B)) 및, 불완전하게 다운로드된 콘텐츠 스토리지(80) (가령, 도 3의 캐시(42A))를 액세스할 수 있고, 이때 바람직한 실시예에 따른, 불완전하게 다운로드된 콘텐츠 스토리지는 비휘발성 메모리임을 포함함이 바람직하다.
이하에서 더 상세히 설명하다시피, 본 발명의 일실시예에 따르면, 변형된 OMA (Open Mobile Alliance) 다운로드 OTA (Over-The-Air) 세션이 다운로드 복구에 이용된다. MAM OTA 구조에 대한 더 자세한 정보는, 오픈 모바일 연합, Generic Content Download Over the Air, OMA-다운로드-OTA-v1_0-20030221-C를 참조하면 되며, 그 내용의 전체가 참조의 형태로 여기에 모두 병합된다.
도 6의 흐름도를 참조할 때, 본 발명의 일실시예에 따른 다운로드 복구 방법 은 일반적으로 단말(10)이, 원 서버로부터 콘텐츠(74)를 다운로드하기 위해, 방법 프록시/GTW(20) 등을 통해 원 서버(26)를 액세스하는 동작을 포함한다. 단말이 원 서버를 액세스하는 것을 원할 때, 단말은 수많은 다양한 방법들 가운데 하나에 따라, 원 서버에 대해 인증될 수 있다. 또, 단말이 원 서버를 액세스할 때, 단말은 콘텐츠를 다운로드할 어플리케이션(72)을 이용하여 원 서버와 관련되거나 원 서버에 의해 통제되는 콘텐츠를 액세스하고, 그 콘텐츠가 다운로드될 것인지를 확인할 수 있다.
원 서버(26)로부터 콘텐츠(74)를 다운로드하기 위해, 어플리케이션(72)은, GetContent (콘텐츠 가져오기) 메시지를 다운로드 에이전트로 보냄으로써, 다운로드 에이전트(76)에 콘텐츠에 대한 요청을 보낼 수 있다. 그러면, 다운로드 에이전트가 원 서버로 그 콘텐츠에 대한 요청 (가령, GetContent 메시지)을 보낼 수 있다. 콘텐츠 요청을 수신하면, 원 서버는 단말(10)로 다운로드 서술자(82)를 전송할 수 있다. 다운로드 에이전트가 그 다운로드 서술자를 수신하여, 그 다운로드 서술자를 불완전 다운로드 스토리지(80)에 저장할 수 있다. 다운로드 서술자에는 단말이 그 요청한 콘텐츠를 다운로드하는 것을 지원하는 여러 다양한 정보들이 포함될 수 있으나, 한 실시예에서, 다운로드 서술자는 요청된 콘텐츠의 크기 및 그 콘텐츠를 검색할 위치에 대한 URI 같은 속성들을 포함한다. 또한, 다운로드 서술자는 요청된 콘텐츠를 다운로드함에 있어 원하는 시간, 장소, 및 사용 기술에 관한 정보를 포함할 수 있다.
다운로드 서술자(82)를 수신한 후에, 다운로드 에이전트(76)는, 다운로드 서 술자(82)에서 명시한 URI로 GetMediaObject 명령을 전송하는 등에 의해, 원 서버(26)에 그 요청된 콘텐츠(74)를 검색하도록 명령할 수 있다. 다운로드 에이전트로부터 그러한 명령을 수신하면, 원 서버는 그 요청된 콘텐츠를 단말(10), 더 상세하게는 다운로드 에이전트로 전송할 수 있다. 이와 관련하여, 콘텐츠는 원 서버로부터 다운로드 에이전트로 여러 개의 콘텐츠 데이터 패킷들 (741, 742, ... 74n)로서 전송될 수 있다. 그러면 다운로드 에이전트는 각 패킷을 받을 때마다 불완전 다운로드 스토리지(80)에 그 각각의 패킷을 저장할 수 있다. 예상할 수 있다시피, 원 서버는 그 콘텐츠를 단일한 방향이나 양방향성 네트워크를 통해 다운로드 에이전트로 전송할 수 있다. 또 알 수 있다시피, 원 서버는 도 4와 관련해 상술한 방법 등에서와 같이, 단말이 공공 키를 요청하거나, 수신하거나 사용하는 것과 무관한 콘텐츠를 전송할 수 있다.
하나 이상의 패킷들로 된 그룹들이나 블록들(84) 사이에서의 다운로드 세션 도중에, 도 7에서 도시된 것처럼 정보 패킷이 패킷 스트림에 부가될 수 있다. 이와 관련해, 다운로드 에이전트(76)가 각 정보 패킷을 수신한 다음 불완전 다운로드 스토리지(80) 등에 저장하여, 다운로드 복구를 지원하도록 할 수 있다. 각각의 정보 패킷에는 일반적으로, 다음 정보 패킷에 앞서 다운로드 에이전트가 수신을 예상한, 패킷 블록 내 패킷들의 개수에 대한 정보, 또는 한 개 이상의 주기적 중복 코드 (CRC)들의 시퀀스와 같은 패킷들과 관련된 다른 정보가 포함될 수 있다. 이와 달리, 각 정보 패킷에는, 이전 정보 패킷 다음에 다운로드 에이전트가 수신했어야 하는 패킷 블록 내 패킷들의 개수에 대한 정보, 또는 그 패킷들에 대한 다른 정보가 포함될 수도 있다. 정보 패킷 전이나 뒤의, 패킷 블록 내 패킷들의 수에 대한 정보 외에, 각 정보 패킷은 그 정보 패킷 전이나 뒤의 패킷들을 고유하게 나타내는 정보 (가령 패킷 CRC들의 시퀀스), 및 단말(10), 그 정보 패킷, 요청된 콘텐츠 및/또는 다운로드 세션을 식별하는 한 개 이상의 식별자들을 포함할 수 있다.
사용자 데이터그램 프로토콜(UDP) 같은 다양한 프로토콜들에 따라, 패킷들은 원 서버(26)가 그 패킷들을 전송했던 순서와는 다른 순서로 다운로드 에이전트(76)에 도달할 수도 있다. 그러나, 보통은, UDP 같은 프로토콜을 따르는 패킷들은 그 패킷들의 시퀀스에 관한 정보나 요청된 콘텐츠에 포함된 총 데이터 패킷들의 수를 포함하지 않는다. 따라서, 한 정보 패킷의 앞이나 뒤의 패킷 블록 내 패킷들의 수 이외에, 각 정보 패킷은 콘텐츠의 다른 데이터 패킷들과 관련하여 각 데이터 패킷의 위치를 확인하는 식별자를 포함할 수 있다. 이와 달리, 각 정보 패킷은 각 정보 패킷의 앞이나 뒤의 패킷 블록, 각 정보 패킷에 의해 참조되는 각 패킷, 및 패킷들의 올바른 순서를 고유하게 식별하는 테이블을 포함할 수도 있다. 이를테면, 각 정보 패킷은 CRC들이나, 각자의 정보 패킷 전이나 후의 패킷 블록 내 패킷들에 대한 다른 고유하게 표현된 데이터 필드들을 포함할 수 있다. 데이터 패킷들의 순서를 직접적으로나 간접적으로 확인함으로써, 다운로드 에이전트는 원 서버가 패킷들을 전송한 것과 같은 순서로 패킷들을 순차적으로 정렬시킬 수 있다.
예상할 수 있다시피, 패킷(들)의 블록들은 각각 같은 수의 패킷들을 포함할 수도 있고, 아니면 각 패킷(들)의 블록 내 패킷들의 수가 블록마다 다를 수도 있 다. 또 알 수 있다시피, 패킷(들)의 블록들이 같은 수의 패킷들을 포함하는 경우, 정보 패킷은, 그럴 필요는 없더라도, 다운로드 세션 시작시 딱 한 번 전송될 수 있다. 또, 원 서버(26)가 데이터 패킷(들)의 블록들 사이에 정보 패킷들을 포함할 수 있다고 하나, 보통 정보 패킷들에 포함된 정보는 그와 다르게 한 개 이상의 데이터 패킷들에 부가될 수 있다. 또, 상술한 바와 같이, 다운로드 에이전트(76)가 각각의 정보 패킷을 수신하고 그 다음에 이들을 저장하여, 다운로드 복구를 지원하게 할 수 있다. 그러나, 다운로드 에이전트는 수신한 정보 패킷들 모두를 스토리지 안에 보유할 필요는 없다. 예를 들어, 다운로드 에이전트는 가장 최근에 수신한 한 개 이상의 정보 패킷들만을 수신하도록 구성될 수 있다. 다운로드 세션 도중에, 다운로드 에이전트(76)는 정보 패킷들을 이용해, 수신되는 데이터 패킷들을 모니터링할 수 있다. 더 특정하자면, 다운로드 에이전트는 수신된 데이터 패킷들을 모니터링하여 수신된 패킷들, 패킷(들)의 블록들, 또는 요청된 콘텐츠의 일부분의 개수 및 정확도를 추적할 수 있다. 이와 관련해, 수신된 패킷들, 패킷(들)의 블록들, 또는 요청된 콘텐츠의 일부분의 개수가, 다운로드 세션 도중 한 번 이상의 시점에서, 요청된 콘텐츠의 크기나 들어온 패킷들의 확인된 개수와 비교될 수 있다. 수신된 패킷들, 패킷(들)의 블록들, 또는 요청된 콘텐츠의 일부분의 정확도는, 패킷들 각각의 CRC 데이터를 활용하는 등, 여러 다양한 방식들 중 하나를 통해 검증될 수 있다. 이와 유사하게, CRC나 다른 정확도 특성이 전송된 각각의 패킷, 패킷(들)의 블록, 또는 요청된 콘텐츠의 일부분에 포함될 수 있다.
수신된 패킷들의 개수와 정확도를 추적함으로써, 다운로드 에이전트(76)는 다운로드 세션이 인터럽트를 당했는지를 확인할 수 있다. 이와 관련해, 다운로드 세션 도중의 인터럽트는 수많은 다양한 방식들 가운데 어느 하나를 통해 확인될 수 있다. 예를 들어, 다운로드 세션은, 일반적으로 다운로드 서술자(72) 및/또는 한 개 이상의 정보 패킷들에 의해 확인될 수 있는, 수신된 패킷들, 패킷(들)의 블록들, 또는 요청된 콘텐츠의 일부분의 총 개수가, 다운로드 세션이 끝나거나 중지되었을 때 수신된 패킷들, 패킷(들)의 블록들의 총수나 요청된 콘텐츠의 크기와 같지 않은 경우 인터럽트 당했다고 간주될 수 있다. 또, 다운로드 세션은, 다운로드 세션이 끝날 때 소정 패킷 개수가 다운로드 콘텐츠 타입 (절대 수 또는 상대 수)에 좌우될 수 있는 경우, 다운로드 세션이 끝나거나 중지되었을 때 에러를 포함하는 수신된 패킷들이 상기 소정의 패킷 개수를 초과했을 때 인터럽트 당했다고 간주될 수 있다. 또, 다운로드 세션은, 단말(10)의 사용자가 다운로드 세션을 종료시켰거나, 다운로드 세션이 단말에 의해 정지되었을 때 (전력 공급 오류 등에 기인함), 인터럽트 당했다고 간주될 수 있다.
가령 세 번째 패킷을 전송하는 도중처럼, 요청된 콘텐츠(74)의 다운로드 중에 인터럽트가 발생했다고 가정하자. 인터럽트에 의해, 단말(10), 혹은 더 특정할 때 다운로드 에이전트(76)는 원 서버(26)와의 통신을 재설정할 수 있고, 원한다면다시 인증을 거칠 수 있다. 이와 관련해, 이 인터럽트가 원 서버로 신호 보내질 수 있다. 이 인터럽트가, 전력 오류에 기인하거나 단말이 원 서버와 통신을 재설정할 수는 없는 어떤 다른 경우들에 기인하는 것일 때, 한 개 이상의 정보 패킷들 및/또는 다운로드 서술자(82) 같이, 다운로드 세션의 복구를 지원할 수 있는 데이 터가 불완전 다운로드 스토리지(80)에 남아있을 수 있어, 단말이 통신을 재설정할 수 있고 단말 사용자가 다운로드 복구를 원할 때 통신이 재설정될 수 있게 된다.
원 서버와의 통신 재설정 후 같은, 다운로드 인터럽트 뒤에, 다운로드 에이전트는 불완전 다운로드 스토리지(80)로부터 다운로드 서술자(82) 및 하나 이상의 정보 패킷들을 검색할 수 있다. 직접적으로 결정되거나 정보 패킷(들)로부터 결정될 수 있는 불완전 다운로드 스토리지에 저장된 다운로드 서술자 및 완전 패킷들의 리스트로부터, 요청된 콘텐츠의 다운로드를 완료하도록 다운로드되어야 할 패킷들이 설정될 수 있다. 이와 관련하여, 어플리케이션(72)은 다운로드 에이전트로 GetInterruptedDL() 메시지를 전송하는 등에 의해, 불완전 다운로드 스토리지에 저장된 완전 패킷들의 리스트를 요청할 수 있다. 어플리케이션으로부터 그러한 요청을 수신할 때, 다운로드 에이전트는 완전 패킷들의 리스트를 어플리케이션으로 전송할 수 있다.
얼마나 많은 다운로드가 이행되었는지를 판단한 후, 다운로드 에이전트(76)는 콘텐츠 다운로드를 완료하기 위해, 그 인터럽트 된 패킷 뿐 아니라, 단말로(10) 전송되어야 할 나머지 패킷들을 복구하도록 지시받을 수 있다. 이와 관련해, 어플리케이션이 메시지 다운로드 재개와 같은 명령을 다운로드 에이전트로 보낼 수 있고, 그로써 다운로드 에이전트에 인터럽트된 패킷을 복구하고 나머지 패킷들을 다운로드 하도록 지시할 수 있게 된다. 그러면, 다운로드 에이전트는 메시지 다운로드 재개와 같은 명령을 다시 원 서버로 전송할 수 있다. 이와 관련해, 그 명령은 원 서버에 대해 다운로드 세션을 확인하는 세션 식별자, 요청된 콘텐츠를 확인하는 오브젝트 식별자, 및/또는 인터럽트된 패킷의 포인터(pointer)를 특정할 수 있다. 이 명령은 또한 단말을 확인하는 식별자, 및/또는 인터럽트 원인에 대한 설멸을 포함할 수도 있다.
단말(10), 보다 특정해서 다운로드 에이전트(76)로부터 명령을 수신할 때, 원 서버는 인터럽트된 패킷뿐 아니라 요청된 콘텐츠(74)의 나머지 패킷들을 다운로드 에이전트로 전송할 수 있다. 앞에서와 같이, 패킷들을 수신하면, 다운로드 에이전트는 그 패킷들을 불완전 다운로드 스토리지(80) 안에 저장할 수 있다. 그리고 나서, 다운로드 에이전트가 요청된 콘텐츠의 모든 패킷들을 수신한 뒤에, 다운로드 에이전트는, 반드시 해야하는 것은 아니지만, 원 서버로, 다운로드가 성공적으로 완료되었음을 나타내는 메시지를 전송할 수 있다. 다운로드 에이전트는 요청된 콘텐츠를 불완전 다운로드 스토리지로부터 콘텐츠 스토리지(78)로 이동하여, 어플리케이션(72)에 코텐츠가 성공적으로 다운로드 되었다는 것을 통보할 수 있다. 그에 따라 어플리케이션은 원할 때 그 콘텐츠를 이용할 수 있고, 단말 사용자에게 콘텐츠 다운로드가 완료되었음을 통보할 수 있다.
본 발명의 한 양태에 따르면, 단말(10), 푸시 개시자(24), 및/또는 원 서버(26)의 전부나 일부 같은, 본 발명의 시스템의 전부나 일부는 일반적으로 컨퓨터 프로그램 생성물 (가령, 다운로드 에이전트(76))의 제어하에 동작한다. 본 발명의 실시예들에 따른 방법을 수행하기 위한 컴퓨터 프로그램 생성물은, 비휘발성 매체 같은 컴퓨터 판독가능 스토리지 매체, 컴퓨터 판독가능 스토리지 매체에서 실시되는 일련의 컴퓨터 명령들 같은 컴퓨터 판독가능 프로그램 코드 부분들을 포함한다.
이와 관련해, 도 4 및 6은 본 발명에 따른 방법, 시스템, 및 프로그램 생성물의 제어 흐름도들이다. 제어 흐름도의 각 블록이나 단계, 그리고 제어 흐름도 블록들의 조합이 컴퓨터 프로그램 명령들을 통해 구현될 수 있음을 알 수 있을 것이다. 이러한 컴퓨터 프로그램 명령들은 컴퓨터나 다른 프로그래밍 가능한 장치로 로드되어, 컴퓨터나 기타 프로그래밍 가능한 장치 상에서 실행될 명령어들이 그 제어 흐름도 블록(들)이나 단계(들)에 명시된 기능들을 구현하기 위한 수단을 생성하도록하는, 기계어(machine)를 생성할 것이다. 이들 컴퓨터 프로그램 명령어들은 또한 컴퓨터 판독가능 메모리에 저장될 수도 있으며, 이 메모리는 컴퓨터나 다른 프로그래밍 가능한 장치로 하여금 컴퓨터 판독가능 메모리에 저장된 명령들이 상기 제어 흐름도 블록(들)이나 단계(들)에 명시된 기능을 구현하는 명령 수단을 포함하는 제품을 생산하게 하는 특정한 방식에 따라 동작하도록 지시할 수 있다. 컴퓨터 프로그램 명령어들은 컴퓨터나 다른 프로그래밍 가능한 장치로 로드되어, 일련의 동작 단계들이 컴퓨터나 다른 프로그램 가능한 장치상에서 수행되게 함으로써, 컴퓨터나 다른 프로그래밍 가능한 장치상에서 실행되는 명령어들이 상기 흐름도 블록(들) 또는 단계(들)에 명시된 기능들을 구현하기 위한 단계들을 제공하도록 하는 컴퓨터 구현 프로세스를 생성할 수 있게 된다.
따라서, 상기 제어 흐름도의 블록들이나 단계들은, 특정 기능들을 수행하는 수단들의 조합, 특정 기능들을 수행하기 위한 단계들의 조합, 및 특정 기능들을 수행하기 위한 프로그램 명령 수단을 지원한다. 제어 흐름도의 각 블록이나 단계, 및 제어 흐름도의 블록들이나 단계들의 조합이, 그 특정 기능들이나 단계들을 수행 하는 특별한 용도의 하드웨어 기반 컴퓨터 시스템들, 또는 특별 용도의 하드웨어와 컴퓨터 명령어들의 조합을 통해 구현될 수도 있다는 것을 알 수 있을 것이다.
본 발명이 속한 분야의 당업자라면, 본 발명에 대한 여러 가지 변형 및 다른 실시예들이 상술한 내용 및 관련 도면에서 제안된 개념들의 이익을 가진다는 것을 알 수 있을 것이다. 따라서, 본 발명은 여기 개시된 특정한 실시에들에 한정되지 않으며, 다른 실시예들이 이하의 청구항들의 범위 안에 포함될 수 있다는 것 역시 알아야 한다. 명세서 상에서 특정 용어들이 사용되었다고 해도, 이들은 일반적이고 서술적인 의미로서만 사용되었을 뿐, 한정할 목적으로 사용된 것이 아니다.

Claims (27)

  1. 푸시된 콘텐츠 (pushed content)를 다운로드하기 위한 시스템에 있어서,
    다운로드 콘텐츠를 식별하고 디지털 서명을 포함하는 서비스 로딩 콘텐츠를 수신할 수 있는 프로세서를 구비한 단말을 포함하고,
    상기 프로세서는 디지털 서명에 기초해 서비스 로딩 콘텐츠를 인증할 수 있고, 만일 서비스 로딩 콘텐츠가 인가되면, 단말로 다운로드 콘텐츠를 풀링(pulling)할 수 있고,
    상기 프로세서는 서비스 로딩 콘텐츠를 인증할 수 있고, 서비스 로딩 콘텐츠를 수신한 것에 응하여 단말 사용자로부터의 인터랙션(interaction)과 무관하게 다운로드 콘텐츠를 풀링함을 특징으로 하는 시스템.
  2. 제1항에 있어서, 상기 단말의 프로세서는 공공 키(public key)를 가지고 디지털 서명을 검증하고, 그에 따라 서비스 로딩 콘텐츠를 인증할 수 있음을 특징으로 하는 시스템.
  3. 제2항에 있어서,
    상기 공공 키와 결부된 사설 키(private key)를 이용해 서비스 로딩 콘텐츠를 디지털 서명할 수 있고, 그런 후에 상기 서비스 로딩 콘텐츠를 단말로 전송하는 푸시 개시자 (push initiator)를 더 포함함을 특징으로 하는 시스템.
  4. 제1항에 있어서,
    다운로드 콘텐츠와 연관된 원(origin) 서버를 더 포함하고,
    상기 서비스 로딩 콘텐츠는 다운로드 콘텐츠와 연관된 원 서버를 식별하고,
    상기 단말의 프로세서는 서비스 로딩 콘텐츠가 인가될 때 상기 원 서버로, 다운로드 콘텐츠 요청을 전송할 수 있고, 상기 프로세서는 그 요청에 대한 응답으로서 상기 원 서버로부터 다운로드 콘텐츠를 수신할 수 있음을 특징으로 하는 시스템.
  5. 제4항에 있어서, 상기 단말의 프로세서는 다운로드 에이전트를 동작시킬 수 잇고, 상기 다운로드 에이전트는 다운로드 서술자를 수신하고, 그 다음에 다운로드 콘텐츠를 수신할 수 있음을 특징으로 하는 시스템.
  6. 제5항에 있어서, 상기 다운로드 콘텐츠는 복수의 데이터 패킷들을 포함하고, 상기 다운로드 에이전트는 복수의 데이터 패킷들 수신시 인터럽트가 발생되어 다운로드 콘텐츠를 이루는 복수의 데이터 패킷 수 미만을 수신하게 되는지를 판단할 수 있고, 복수의 데이터 패킷들 수신시 인터럽트가 발생한 경우, 다운로드 에이전트가 상기 복수의 데이터 패킷들을 수신하도록 다운로드 콘텐츠를 복구할 수 있음을 특징으로 하는 시스템.
  7. 제6항에 있어서, 상기 다운로드 에이전트는, 다운로드 콘텐츠를 이루는 복수의 데이터 패킷들의 수신을 완료하도록, 다운로드 에이전트에 의해 수신될 적어도 한 개의 나머지 데이터 패킷을 정할 수 있고, 원 서버에 지시하여 상기 적어도 한 개의 나머지 데이터 패킷을 전송하도록 하고, 다운로드 에이전트가 복수의 데이터 패킷들을 수신할 수 있게 상기 적어도 한 개의 나머지 데이터 패킷을 수신할 수 있음을 특징으로 하는 시스템.
  8. 제4항에 있어서, 상기 다운로드 콘텐츠는 복수의 데이터 패킷들을 포함하고, 상기 단말의 프로세서는, 상기 복수의 데이터 패킷들을 수신하고 적어도 한 개의 데이터 패킷으로 된 적어도 한 그룹에 대한 적어도 한 정보 패킷을 수신할 수 있는 다운로드 에이전트를 동작시킬 수 있음을 특징으로 하는 시스템.
  9. 제8항에 있어서,
    상기 다운로드 에이전트는, 적어도 한 정보 패킷에 기반하여, 복수의 데이터 패킷들 수신시 인터럽트가 발생되어 다운로드 콘텐츠를 이루는 복수의 데이터 패킷 수 미만을 수신하게 되었는지를 판단하도록, 수신된 데이터 패킷들을 모니터링할 수 있고,
    상기 다운로드 에이전트는 복수의 데이터 패킷들 수신시 인터럽트가 발생한 경우 다운로드 에이전트가 복수의 데이터 패킷들을 수신할 수 있도록 다운로드 콘텐츠를 복구할 수 있음을 특징으로 하는 시스템.
  10. 푸시된 콘텐츠를 단말로 다운로드하는 방법에 있어서,
    단말에서, 다운로드 콘텐츠를 식별하고 디지털 서명을 가진 서비스 로딩 콘텐츠를 수신하는 단계;
    디지털 서명에 기초해 서비스 로딩 콘텐츠를 인증하는 단계;
    서비스 로딩 콘텐츠가 인가될 때, 다운로드 콘텐츠를 단말로 풀링하는 단계를 포함하고, 이때 서비스 로딩 콘텐츠 수신에 반응하여 단말 사용자로부터의 인터랙션과는 무관하게, 서비스 로딩 콘텐츠가 인가되고, 다운로드 콘텐츠가 풀링됨을 특징으로 하는 방법.
  11. 제10항에 있어서, 상기 서비스 로딩 콘텐츠를 인증하는 단계는, 공공 키를 가지고 디지털 서명을 검증하는 단계를 포함함을 특징으로 하는 방법.
  12. 제11항에 있어서,
    상기 공공 키와 결부된 사설 키를 가지고 서비스 로딩 콘텐츠를 디지털 서명하는 단계; 및
    상기 서비스 로딩 콘텐츠를 단말로 전송하는 단계를 더 포함함을 특징으로 하는 방법.
  13. 제10항에 있어서, 상기 서비스 로딩 콘텐츠는 다운로드 콘텐츠와 연관된 원 서버를 식별하고,
    상기 다운로드 콘텐츠를 풀링하는 단계는:
    서비스 로딩 콘텐츠가 인가될 때 원 서버로 다운로드 콘텐츠 요청을 전송하는 단계; 및
    단말에서, 상기 요청에 응한 원 서버로부터 다운로드 콘텐츠를 수신하는 단계를 포함함을 특징으로 하는 방법.
  14. 제13항에 있어서, 상기 다운로드 콘텐츠를 수신하는 단계는,
    다운로드 서술자를 수신하는 단계, 및 그 후 다운로드 콘텐츠를 수신하는 단계를 포함함을 특징으로 하는 방법.
  15. 제14항에 있어서, 상기 다운로드 콘텐츠는 복수의 데이터 패킷들을 포함하고,
    상기 다운로드 콘텐츠를 수신하는 단계는:
    상기 복수의 데이터 패킷들 수신시 인터럽트가 발생되어 다운로드 콘텐츠를 이루는 복수의 데이터 패킷 수 미만을 수신하게 되는지를 판단하는 단계; 및 복수의 데이터 패킷들 수신시 인터럽트가 발생한 경우,
    단말이 상기 복수의 데이터 패킷들을 수신하도록 다운로드 콘텐츠를 복구하는 단계를 더 포함함을 특징으로 하는 방법.
  16. 제15항에 있어서, 상기 다운로드 콘텐츠를 복구하는 단계는:
    다운로드 콘텐츠를 이루는 복수의 데이터 패킷들의 수신을 완료하도록, 상기 단말에서 수신될 적어도 한 개의 나머지 데이터 패킷을 정하는 단계;
    원 서버에 지시하여 상기 적어도 한 개의 나머지 데이터 패킷을 전송하도록 하는 단계; 및
    단말이 상기 복수의 데이터 패킷들을 수신할 수 있도록 상기 적어도 한 개의 나머지 데이터 패킷을 수신하는 단계를 포함함을 특징으로 하는 방법.
  17. 제13항에 있어서, 상기 다운로드 콘텐츠는 복수의 데이터 패킷들을 포함하고,
    상기 다운로드 콘텐츠를 수신하는 단계는, 상기 복수의 데이터 패킷들을 수신하고 적어도 한 개의 데이터 패킷으로 된 적어도 한 그룹에 대한 적어도 한 정보 패킷을 수신하는 단계를 포함함을 특징으로 하는 단말.
  18. 제17항에 있어서, 상기 복수의 데이터 패킷들을 수신하는 단계는,
    적어도 한 정보 패킷에 기반하여, 복수의 데이터 패킷들 수신시 인터럽트가 발생되어 다운로드 콘텐츠를 이루는 복수의 데이터 패킷 수 미만을 수신하게 되었는지를 판단하도록, 수신된 데이터 패킷들을 모니터링하는 단계; 및 상기 복수의 데이터 패킷들 수신시 인터럽트가 발생한 경우,
    상기 복수의 데이터 패킷들을 수신할 수 있도록 다운로드 콘텐츠를 복구하는 단계를 더 포함함을 특징으로 하는 시스템.
  19. 컴퓨터 판독가능 프로그램 코드 부분들을 저장한 적어도 한 개의 컴퓨터 판독가능 스토리지 매체를 구비하여, 푸시된 콘텐츠를 단말로 다운로드하기 위한 컴퓨터 프로그램 생성물에 있어서, 상기 컴퓨터 판독가능 프로그램 코드 부분들은,
    단말에서, 다운로드 콘텐츠를 식별하고 디지털 서명을 가진 서비스 로딩 콘텐츠를 수신하도록 하는 제1실행가능 부분;
    디지털 서명에 기초해 서비스 로딩 콘텐츠를 인증하게 하는 제2실행가능 부분;
    서비스 로딩 콘텐츠가 인가될 때, 다운로드 콘텐츠를 단말로 풀링하도록 하는 제3실행 가능 부분을 포함하고,
    이때 상기 서비스 로딩 콘텐츠 수신에 반응하고 단말 사용자로부터의 인터랙션과는 무관하게, 상기 제2실행가능 부분은 서비스 로딩 콘텐츠를 인가하도록 구성되고, 제3실행가능 부분은 다운로드 콘텐츠를 풀링하도록 구성됨을 특징으로 하는 컴퓨터 프로그램 생성물.
  20. 제19항에 있어서, 상기 제2실행가능 부분은, 공공 키를 가지고 디지털 서명을 검증하도록 구성됨을 특징으로 하는 컴퓨터 프로그램 생성물.
  21. 제20항에 있어서,
    상기 공공 키와 결부된 사설 키를 가지고 서비스 로딩 콘텐츠를 디지털 서명하도록 하는 제4실행 가능 부분; 및
    상기 서비스 로딩 콘텐츠를 단말로 전송하도록 하는 제5실행 부분을 더 포함함을 특징으로 하는 컴퓨터 프로그램 생성물.
  22. 제190항에 있어서, 상기 서비스 로딩 콘텐츠는 다운로드 콘텐츠와 연관된 원 서버를 식별하고,
    상기 제3실행 가능 부분은, 서비스 로딩 콘텐츠가 인가될 때 원 서버로 다운로드 콘텐츠 요청을 전송하고, 그런 다음 단말에서, 상기 요청에 응한 원 서버로부터 다운로드 콘텐츠를 수신하도록 구성됨을 특징으로 하는 컴퓨터 프로그램 생성물.
  23. 제22항에 있어서, 상기 제3실행 가능 부분은, 다운로드 서술자를 수신하고, 그 다음 다운로드 콘텐츠를 수신하도록 구성됨을 특징으로 하는 컴퓨터 프로그램 생성물.
  24. 제23항에 있어서, 상기 다운로드 콘텐츠는 복수의 데이터 패킷들을 포함하고,
    상기 제3실행 가능 부분은,
    상기 복수의 데이터 패킷들 수신시 인터럽트가 발생되어 다운로드 콘텐츠를 이루는 복수의 데이터 패킷 수 미만을 수신하게 되는지를 판단하고, 복수의 데이터 패킷들 수신시 인터럽트가 발생한 경우, 단말이 상기 복수의 데이터 패킷들을 수신하도록 다운로드 콘텐츠를 복구하도록 더 구성됨을 특징으로 하는 컴퓨터 프로그램 생성물.
  25. 제24항에 있어서, 상기 제3실행 가능 부분은, 다운로드 콘텐츠를 이루는 복수의 데이터 패킷들의 수신을 완료하도록, 상기 단말에서 수신될 적어도 한 개의 나머지 데이터 패킷을 정하고; 원 서버에 지시하여 상기 적어도 한 개의 나머지 데이터 패킷을 전송하도록 하며; 단말이 상기 복수의 데이터 패킷들을 수신할 수 있도록 상기 적어도 한 개의 나머지 데이터 패킷을 수신함으로써, 다운로드 콘텐츠를 복구하도록 구성됨을 특징으로 하는 컴퓨터 프로그램 생성물.
  26. 제22항에 있어서, 상기 다운로드 콘텐츠는 복수의 데이터 패킷들을 포함하고,
    상기 제3실행 가능 부분은, 상기 복수의 데이터 패킷들을 수신하고 적어도 한 개의 데이터 패킷으로 된 적어도 한 그룹에 대한 적어도 한 정보 패킷을 수신하도록 구성됨을 특징으로 하는 컴퓨터 프로그램 생성물.
  27. 제26항에 있어서, 상기 제3실행 가능 부분은,
    적어도 한 정보 패킷에 기반하여, 복수의 데이터 패킷들 수신시 인터럽트가 발생되어 다운로드 콘텐츠를 이루는 복수의 데이터 패킷 수 미만을 수신하게 되었는지를 판단하도록, 수신된 데이터 패킷들을 모니터링하고; 상기 복수의 데이터 패킷들 수신시 인터럽트가 발생한 경우, 상기 복수의 데이터 패킷들을 수신할 수 있도록 다운로드 콘텐츠를 복구하도록 더 구성됨을 특징으로 하는 컴퓨터 프로그램 생성물.
KR1020067009715A 2003-10-20 2004-10-19 푸쉬 콘텐츠 다운로드를 위한 시스템, 방법, 및 컴퓨터프로그램 생성물 KR100812343B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/689,396 2003-10-20
US10/689,396 US7721104B2 (en) 2003-10-20 2003-10-20 System, method and computer program product for downloading pushed content

Publications (2)

Publication Number Publication Date
KR20060092264A true KR20060092264A (ko) 2006-08-22
KR100812343B1 KR100812343B1 (ko) 2008-03-11

Family

ID=34465614

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020067009715A KR100812343B1 (ko) 2003-10-20 2004-10-19 푸쉬 콘텐츠 다운로드를 위한 시스템, 방법, 및 컴퓨터프로그램 생성물

Country Status (9)

Country Link
US (1) US7721104B2 (ko)
EP (1) EP1676416A2 (ko)
JP (1) JP2007509565A (ko)
KR (1) KR100812343B1 (ko)
CN (1) CN100559791C (ko)
BR (1) BRPI0415982A (ko)
CA (1) CA2542933A1 (ko)
TW (1) TWI253824B (ko)
WO (1) WO2005039146A2 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8370957B2 (en) 2006-12-05 2013-02-05 Samsung Electronics Co., Ltd Method and apparatus for transmitting contents with limited system permissions

Families Citing this family (79)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE602004030534D1 (de) 2003-01-28 2011-01-27 Cellport Systems Inc Ein System und ein Verfahren zum Steuern des Zugriffs von Anwendungen auf geschützte Mittel innerhalb eines sicheren Fahrzeugtelematiksystems
US20050125830A1 (en) * 2003-12-03 2005-06-09 Mikko Halttunen Methods and apparatuses for transmitting data in a television broadcast
US8856346B2 (en) * 2004-01-15 2014-10-07 Unwired Planet, Llc Stateful push notifications
US8359349B2 (en) * 2004-03-18 2013-01-22 Nokia Corporation System and associated terminal, method and computer program product for uploading content
US7346370B2 (en) * 2004-04-29 2008-03-18 Cellport Systems, Inc. Enabling interoperability between distributed devices using different communication link technologies
US20060059267A1 (en) * 2004-09-13 2006-03-16 Nokia Corporation System, method, and device for downloading content using a second transport protocol within a generic content download protocol
FR2875922B1 (fr) * 2004-09-27 2006-12-01 Gemplus Sa Gestion de telechargement dans des objets communicants portables pour operation unitaire pendant une campagne
FR2875921B1 (fr) * 2004-09-27 2006-12-01 Gemplus Sa Campagne de telechargement de donnees dans des objets communicants portables
US20060128331A1 (en) * 2004-12-13 2006-06-15 Rooyen Pieter V Method and system for mobile architecture supporting cellular or wireless networks and broadcast utilizing a single chip cellular and single chip broadcast silicon solution
US7864761B2 (en) * 2005-02-04 2011-01-04 Avaya Inc. Handling unsolicited content at a telecommunications terminal
CA2549438A1 (en) 2005-06-27 2006-12-27 Mark R. Swanson Wireless classroom response system
US20070002851A1 (en) * 2005-06-30 2007-01-04 Toni Paila Transmission and reception of session packets
US20070002870A1 (en) * 2005-06-30 2007-01-04 Nokia Corporation Padding time-slice slots using variable delta-T
US20070006274A1 (en) * 2005-06-30 2007-01-04 Toni Paila Transmission and reception of session packets
US20070022306A1 (en) * 2005-07-25 2007-01-25 Lindsley Brett L Method and apparatus for providing protected digital content
US8559350B2 (en) * 2005-12-20 2013-10-15 Microsoft Corporation Mechanism to convey discovery information in a wireless network
US8478300B2 (en) * 2005-12-20 2013-07-02 Microsoft Corporation Proximity service discovery in wireless networks
CN1988451B (zh) * 2005-12-23 2010-09-01 中兴通讯股份有限公司 一种网络调度型媒体文件分发方法
CN1988450B (zh) * 2005-12-23 2010-09-29 中兴通讯股份有限公司 一种网络调度型媒体文件的分发系统
AU2007203861B2 (en) 2006-01-05 2009-11-26 Interdigital Patent Holdings, Inc. Transmitting information in mobile communications system
KR101211807B1 (ko) 2006-01-05 2012-12-12 엘지전자 주식회사 이동통신 시스템에서 무선단말의 동기상태 관리방법
KR101203841B1 (ko) 2006-01-05 2012-11-21 엘지전자 주식회사 무선 통신 시스템에서의 페이징 메시지 전송 및 수신 방법
KR20070080552A (ko) 2006-02-07 2007-08-10 엘지전자 주식회사 이동 통신 시스템에서의 응답 정보 전송 방법
WO2007078171A2 (en) 2006-01-05 2007-07-12 Lg Electronics Inc. Method of transmitting feedback information in a wireless communication system
KR101265628B1 (ko) 2006-01-05 2013-05-22 엘지전자 주식회사 이동 통신 시스템에서의 무선 자원 스케줄링 방법
CN105515736A (zh) 2006-01-05 2016-04-20 Lg电子株式会社 在移动通信系统中发送数据
US20090077609A1 (en) * 2006-01-17 2009-03-19 Guillaume Bichot Gateway For Receiving Digital Television Broadcast Services, Terminal and Corresponding Methods
KR101216751B1 (ko) 2006-02-07 2012-12-28 엘지전자 주식회사 이동 통신 시스템에서 식별자를 이용한 충돌 회피 방법
KR101358469B1 (ko) 2006-02-07 2014-02-06 엘지전자 주식회사 무선 네트워크(network) 안에서 상향(uplink)및 하향(downlink) 대역폭(bandwidth)의선택 및 신호 방법
US8719391B2 (en) * 2006-03-07 2014-05-06 Nokia Corporation Method and system for controlling contextual information push services
KR101387475B1 (ko) 2006-03-22 2014-04-22 엘지전자 주식회사 복수의 네트워크 엔터티를 포함하는 이동 통신시스템에서의 데이터 처리 방법
US10681151B2 (en) 2006-05-15 2020-06-09 Microsoft Technology Licensing, Llc Notification framework for wireless networks
US20090094111A1 (en) * 2007-10-09 2009-04-09 Microsoft Corporation Advertising framework for wireless networks
KR20070121513A (ko) * 2006-06-21 2007-12-27 엘지전자 주식회사 이동통신 시스템의 상향 접속 방법
KR101369135B1 (ko) 2006-06-21 2014-03-05 엘지전자 주식회사 이동통신 시스템에서의 멀티미디어 및 방송서비스의 품질보장 방법 및 그 단말
WO2007148881A2 (en) 2006-06-21 2007-12-27 Lg Electronics Inc. Method of supporting data retransmission in a mobile communication system
US8570956B2 (en) 2006-06-21 2013-10-29 Lg Electronics Inc. Method of communicating data in a wireless mobile communications system using message separation and mobile terminal for use with the same
KR20070121505A (ko) 2006-06-21 2007-12-27 엘지전자 주식회사 무선링크 재설정 방법
KR100772498B1 (ko) * 2006-11-08 2007-11-01 주식회사 케이티프리텔 콘텐츠 푸쉬 서비스 제공 방법, 이를 위한 이동통신시스템및 이동 단말
US7937728B2 (en) * 2006-12-06 2011-05-03 International Business Machines Corporation Retrieving lost content for a scheduled program
GB0700358D0 (en) * 2007-01-09 2007-02-14 111 Pix Com Ltd Network download system
WO2008107824A1 (en) * 2007-03-08 2008-09-12 Koninklijke Philips Electronics N.V. A device and a method for transmitting notification messages and a corresponding device and method for receiving notification messages
CN101072095B (zh) * 2007-03-30 2010-11-24 腾讯科技(深圳)有限公司 一种文件下载的控制方法及装置
WO2008129471A2 (en) * 2007-04-23 2008-10-30 Nokia Corporation System and method for optimizing download user service delivery to roaming clients
US9198030B2 (en) * 2007-06-12 2015-11-24 Broadcom Corporation Method and system for a networked self-configuring communication device utilizing user preference information
US9918218B2 (en) 2007-06-12 2018-03-13 Avago Technologies General Ip (Singapore) Pte. Ltd. Method and system for a networked self-configuring communication device utilizing user preference information
FI121256B (fi) * 2007-06-25 2010-08-31 Eads Secure Networks Oy Tilaajan tunnisteinformaation kuljetus
US8027293B2 (en) * 2007-07-16 2011-09-27 Cellport Systems, Inc. Communication channel selection and use
US9109903B2 (en) * 2007-10-09 2015-08-18 Microsoft Technology Licensing, Llc Transmitting location data in wireless networks
US8819815B1 (en) * 2007-10-16 2014-08-26 Jpmorgan Chase Bank, N.A. Method and system for distributing and tracking information
US8099764B2 (en) * 2007-12-17 2012-01-17 Microsoft Corporation Secure push and status communication between client and server
KR100907613B1 (ko) * 2007-12-26 2009-07-14 에스케이 텔레콤주식회사 부가콘텐츠를 제공하는 콘텐츠 제공 서버, 시스템 및 방법
US20090182834A1 (en) * 2008-01-15 2009-07-16 Thomas Zettler Device and Method for Providing Data
US9105031B2 (en) * 2008-02-22 2015-08-11 Microsoft Technology Licensing, Llc Authentication mechanisms for wireless networks
WO2009135300A1 (en) * 2008-05-07 2009-11-12 Chalk Media Service Corp. A system and method for enabling a mobile content player to interface with multiple content servers
US8140842B2 (en) * 2008-05-29 2012-03-20 International Business Machines Corporation Client identification and authorization in an asynchronous request dispatching environment
US8925025B2 (en) * 2008-08-22 2014-12-30 At&T Intellectual Property I, L.P. System and method of providing access to content of an interrupted digital broadcast signal
CN101686228B (zh) * 2008-09-27 2013-12-11 中兴通讯股份有限公司 一种基于内容分片的多媒体分片切换方法及系统
WO2010091719A1 (en) * 2009-02-10 2010-08-19 Telefonaktiebolaget Lm Ericsson (Publ) Ip multimedia service provision
US10102352B2 (en) * 2009-08-10 2018-10-16 Arm Limited Content usage monitor
CA2782462C (en) * 2009-12-02 2016-12-13 Research In Motion Limited Reliable delivery of content to a push-state aware client device
US8446453B2 (en) * 2010-01-06 2013-05-21 Cisco Technology, Inc. Efficient and on demand convergence of audio and non-audio portions of a communication session for phones
CN102006567B (zh) * 2010-11-15 2013-03-27 中国联合网络通信集团有限公司 推消息处理方法、用于实现推消息处理方法的系统及设备
US9071616B2 (en) 2010-11-18 2015-06-30 Microsoft Technology Licensing, Llc Securing partner-enabled web service
US8407776B2 (en) 2011-02-11 2013-03-26 Good Technology Corporation Method, apparatus and system for provisioning a push notification session
CN102917078B (zh) * 2011-08-01 2016-05-18 华为软件技术有限公司 流媒体资源提供及获取方法、信令流服务器与终端设备
CN103297917A (zh) * 2012-03-02 2013-09-11 华为终端有限公司 基于无线局域网络的信息推送方法、装置及系统
CN103634361B (zh) 2012-08-28 2018-07-20 腾讯科技(深圳)有限公司 下载文件的方法和装置
CN103139307B (zh) * 2013-02-27 2015-12-02 广东欧珀移动通信有限公司 一种网络资源下载中断的恢复方法及下载系统
US9507609B2 (en) 2013-09-29 2016-11-29 Taplytics Inc. System and method for developing an application
CN103634667B (zh) * 2013-12-12 2018-02-09 珠海迈越信息技术有限公司 一种基于机顶盒的获取网络推送信息的方法和装置
CN105337948A (zh) * 2014-08-13 2016-02-17 中兴通讯股份有限公司 信息的处理方法及装置
US10355999B2 (en) * 2015-09-23 2019-07-16 Cisco Technology, Inc. Flow control with network named fragments
CN106027683A (zh) * 2016-07-29 2016-10-12 乐视控股(北京)有限公司 一种文件下载处理方法及装置
CN106341778A (zh) * 2016-08-24 2017-01-18 广西小草信息产业有限责任公司 一种网络接入系统和方法
CN106899493B (zh) * 2017-02-22 2020-04-24 广东网金控股股份有限公司 基于UDP与Https实现的消息推送方法及其装置
TWI745712B (zh) * 2019-07-08 2021-11-11 旭智科技股份有限公司 應用於移動載具之資訊投放方法及其裝置之結構
CN110661925B (zh) * 2019-08-30 2021-10-26 咪咕动漫有限公司 屏蔽方法、服务器及计算机可读存储介质
DE102021114409A1 (de) * 2021-06-03 2022-12-08 Bundesdruckerei Gmbh Übertragungsverfahren

Family Cites Families (60)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6807558B1 (en) * 1995-06-12 2004-10-19 Pointcast, Inc. Utilization of information “push” technology
US6123737A (en) * 1997-05-21 2000-09-26 Symantec Corporation Push deployment of software packages using notification transports
US6119167A (en) * 1997-07-11 2000-09-12 Phone.Com, Inc. Pushing and pulling data in networks
US6535855B1 (en) * 1997-12-09 2003-03-18 The Chase Manhattan Bank Push banking system and method
US6421781B1 (en) * 1998-04-30 2002-07-16 Openwave Systems Inc. Method and apparatus for maintaining security in a push server
WO1999060504A1 (en) * 1998-05-15 1999-11-25 Unicast Communications Corporation A technique for implementing browser-initiated network-distributed advertising and for interstitially displaying an advertisement
JP4296624B2 (ja) 1999-03-01 2009-07-15 ソニー株式会社 データ受信装置
US6725377B1 (en) * 1999-03-12 2004-04-20 Networks Associates Technology, Inc. Method and system for updating anti-intrusion software
US6223291B1 (en) * 1999-03-26 2001-04-24 Motorola, Inc. Secure wireless electronic-commerce system with digital product certificates and digital license certificates
SE9904683L (sv) 1999-12-17 2001-06-18 Ericsson Telefon Ab L M Metod och system för att etablera en radioförbindelse med kort räckvidd
JP2001243382A (ja) * 2000-02-28 2001-09-07 Sony Corp 携帯通信端末を用いた決済方法、決済システムおよび携帯通信端末
EP1630597B1 (en) 2000-03-01 2007-04-11 FUJIFILM Corporation Image scanning apparatus
WO2001091365A1 (fr) 2000-05-22 2001-11-29 Sanyo Electric Co., Ltd. Systeme de distribution de donnees
GB2364479A (en) 2000-06-30 2002-01-23 Nokia Oy Ab System for locating a terminal
GB2364211A (en) 2000-06-30 2002-01-16 Nokia Oy Ab A terminal comprising two receivers for receiving an encrypted first signal from a first network and a decryption second signal from a second network
JP4503794B2 (ja) 2000-07-19 2010-07-14 株式会社日立製作所 コンテンツ提供方法及び装置
SE517116C2 (sv) * 2000-08-11 2002-04-16 Ericsson Telefon Ab L M Metod och anordning för säkra kommunikationstjänster
GB2368233B (en) 2000-08-31 2002-10-16 F Secure Oyj Maintaining virus detection software
US7010578B1 (en) * 2000-09-21 2006-03-07 Akamai Technologies, Inc. Internet content delivery service with third party cache interface support
US20040003266A1 (en) * 2000-09-22 2004-01-01 Patchlink Corporation Non-invasive automatic offsite patch fingerprinting and updating system and method
US7111057B1 (en) * 2000-10-31 2006-09-19 Akamai Technologies, Inc. Method and system for purging content from a content delivery network
ATE552562T1 (de) * 2000-11-10 2012-04-15 Aol Musicnow Llc Verteilungs und -abonnementsystem für digitalen inhalt
JP4524480B2 (ja) * 2000-11-24 2010-08-18 三洋電機株式会社 データ端末装置
GB0028732D0 (en) 2000-11-24 2001-01-10 Nokia Oy Ab Improvements in and relating to a broadcast network
US7308487B1 (en) * 2000-12-12 2007-12-11 Igate Corp. System and method for providing fault-tolerant remote controlled computing devices
SE0004904D0 (sv) 2000-12-29 2000-12-29 Nokia Corp Method for storing information
US7631037B2 (en) * 2001-02-08 2009-12-08 Nokia Corporation Data transmission
US20020116472A1 (en) * 2001-02-20 2002-08-22 Niragonogo Inc. Method and system for pushing content through cellular network
US6778834B2 (en) 2001-02-27 2004-08-17 Nokia Corporation Push content filtering
US7080030B2 (en) * 2001-02-28 2006-07-18 Digonex Technologies, Inc. Digital online exchange
US20020131395A1 (en) * 2001-03-19 2002-09-19 Chenghui Wang Session initiation protocol (SIP) user agent in a serving GPRS support node (SGSN)
US7603703B2 (en) 2001-04-12 2009-10-13 International Business Machines Corporation Method and system for controlled distribution of application code and content data within a computer network
US6981062B2 (en) * 2001-04-20 2005-12-27 Sbc Technology Resources, Inc. World wide web content synchronization between wireless devices
FI20011342A0 (fi) 2001-06-25 2001-06-25 Nokia Corp Menetelmä ja laite tiedon hankkimiseksi
US7039037B2 (en) * 2001-08-20 2006-05-02 Wang Jiwei R Method and apparatus for providing service selection, redirection and managing of subscriber access to multiple WAP (Wireless Application Protocol) gateways simultaneously
US20030079030A1 (en) * 2001-08-22 2003-04-24 Cocotis Thomas A. Output management system and method for enabling access to private network resources
GB2380358B (en) * 2001-09-28 2006-04-05 Nokia Corp Capacity management
US20030084165A1 (en) 2001-10-12 2003-05-01 Openwave Systems Inc. User-centric session management for client-server interaction using multiple applications and devices
US7210168B2 (en) 2001-10-15 2007-04-24 Mcafee, Inc. Updating malware definition data for mobile data processing devices
US7506059B2 (en) 2001-10-26 2009-03-17 Nokia Corporation Mobile client provisioning web service
US6845230B2 (en) * 2001-10-26 2005-01-18 Ibiquity Digital Corporation System and method for a push-pull gateway-directed digital receiver
GB0126516D0 (en) 2001-11-05 2002-01-02 Nokia Corp A method and system for providing a service
KR100420265B1 (ko) * 2001-11-15 2004-03-02 한국전자통신연구원 무선 인터넷 망간 접속 방법
US7254614B2 (en) 2001-11-20 2007-08-07 Nokia Corporation Web services push gateway
WO2003044672A1 (fr) 2001-11-20 2003-05-30 Fujitsu Limited Programme fournisseur d'informations, programme d'utilisation d'informations et systeme fournisseur/d'utilisation d'informations
US20030147369A1 (en) * 2001-12-24 2003-08-07 Singh Ram Naresh Secure wireless transfer of data between different computing devices
US6701155B2 (en) 2002-01-11 2004-03-02 Nokia Corporation Network initialized packet data protocol context activation for multicast/broadcast services
JP4186466B2 (ja) * 2002-01-16 2008-11-26 ソニー株式会社 コンテンツ配信システム、コンテンツ配信方法、および情報処理装置、並びにコンピュータ・プログラム
US7299349B2 (en) * 2002-01-31 2007-11-20 Microsoft Corporation Secure end-to-end notification
US7743115B2 (en) * 2002-02-27 2010-06-22 Motorola, Inc. Software content downloading methods in radio communication networks
US6795419B2 (en) 2002-03-13 2004-09-21 Nokia Corporation Wireless telecommunications system using multislot channel allocation for multimedia broadcast/multicast service
JP2003271457A (ja) * 2002-03-14 2003-09-26 Sanyo Electric Co Ltd データ記憶装置
US7454785B2 (en) * 2002-12-19 2008-11-18 Avocent Huntsville Corporation Proxy method and system for secure wireless administration of managed entities
EP1453271B1 (en) * 2003-02-28 2018-05-30 Telefonaktiebolaget LM Ericsson (publ) Device-type authentication in communication systems
US7139372B2 (en) * 2003-03-07 2006-11-21 July Systems, Inc Authorized distribution of digital content over mobile networks
US20040181604A1 (en) * 2003-03-13 2004-09-16 Immonen Pekka S. System and method for enhancing the relevance of push-based content
US7394761B2 (en) * 2003-04-29 2008-07-01 Avocent Huntsville Corporation System and method for delivering messages using alternate modes of communication
US7194235B2 (en) * 2003-06-03 2007-03-20 Nokia Corporation System, method, and apparatus for facilitating media content channels
KR100539788B1 (ko) * 2003-06-13 2006-01-10 엘지전자 주식회사 이동 통신 단말기의 비표준 마임 타입 지원 방법
US7346168B2 (en) * 2003-09-29 2008-03-18 Avaya Technology Corp. Method and apparatus for secure wireless delivery of converged services

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8370957B2 (en) 2006-12-05 2013-02-05 Samsung Electronics Co., Ltd Method and apparatus for transmitting contents with limited system permissions

Also Published As

Publication number Publication date
CN100559791C (zh) 2009-11-11
CN1883180A (zh) 2006-12-20
BRPI0415982A (pt) 2007-01-23
CA2542933A1 (en) 2005-04-28
EP1676416A2 (en) 2006-07-05
JP2007509565A (ja) 2007-04-12
KR100812343B1 (ko) 2008-03-11
TW200522629A (en) 2005-07-01
US7721104B2 (en) 2010-05-18
WO2005039146A3 (en) 2005-07-21
WO2005039146A2 (en) 2005-04-28
TWI253824B (en) 2006-04-21
US20050083929A1 (en) 2005-04-21

Similar Documents

Publication Publication Date Title
KR100812343B1 (ko) 푸쉬 콘텐츠 다운로드를 위한 시스템, 방법, 및 컴퓨터프로그램 생성물
JP2007509565A5 (ko)
US20190334974A1 (en) System and associated terminal, method and computer program product for uploading content
US20060135127A1 (en) System, and associated terminal, method and computer program product for forwarding content and providing digital rights management of the same
US20080313191A1 (en) Method for the support of file versioning in file repair
KR101151935B1 (ko) Mbms 핸드오버 실행 방법, mbms 핸드오버 실행 장치, 컴퓨터 판독가능 저장 매체 및 mbms 핸드오버 실행 시스템
EP3414884B1 (en) Methods and apparatus for enhanced mbms content provisioning and content ingestion
JP2014220840A (ja) マルチキャスト通信またはブロードキャスト通信において拡張したファイル配信を行う方法および装置
US9215265B2 (en) Caching directives for a file delivery protocol
JP4511548B2 (ja) コンテンツ格納制御のためのシステムと方法
EP1676422B1 (en) System and associated terminal, method and computer program product for controlling the flow of content
WO2007042937A2 (en) System, method and computer program product for delivering a service guide of a first broadcast/multicast system as a program of a second broadcast/multicast system
KR100902855B1 (ko) 세션 객체들의 그룹화
EP2274891B1 (en) Method and apparatus for establishing a streamed media session

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
G170 Re-publication after modification of scope of protection [patent]
LAPS Lapse due to unpaid annual fee