KR20090098919A - Mbms 파일 복구시 파일 버저닝을 지원하는 방법 - Google Patents

Mbms 파일 복구시 파일 버저닝을 지원하는 방법 Download PDF

Info

Publication number
KR20090098919A
KR20090098919A KR1020097016514A KR20097016514A KR20090098919A KR 20090098919 A KR20090098919 A KR 20090098919A KR 1020097016514 A KR1020097016514 A KR 1020097016514A KR 20097016514 A KR20097016514 A KR 20097016514A KR 20090098919 A KR20090098919 A KR 20090098919A
Authority
KR
South Korea
Prior art keywords
file
version
client
recovery
server
Prior art date
Application number
KR1020097016514A
Other languages
English (en)
Inventor
이메드 보우아지지
Original Assignee
노키아 코포레이션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 노키아 코포레이션 filed Critical 노키아 코포레이션
Publication of KR20090098919A publication Critical patent/KR20090098919A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H20/00Arrangements for broadcast or for distribution combined with broadcast
    • H04H20/53Arrangements specially adapted for specific applications, e.g. for traffic information or for mobile receivers
    • H04H20/57Arrangements specially adapted for specific applications, e.g. for traffic information or for mobile receivers for mobile receivers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/189Arrangements for providing special services to substations for broadcast or conference, e.g. multicast in combination with wireless systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1863Arrangements for providing special services to substations for broadcast or conference, e.g. multicast comprising mechanisms for improved reliability, e.g. status reports
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications

Abstract

파일 복구 요청시 파일 버전의 명확한 식별을 가능하게 하도록 하는 파일 복구 기능으로의 변경을 지원하는 시스템 및 방법이 제공된다. 복구 요청은 전체적이고 또 파일 다운로드 세션과 무관하게 파일의 버전을 식별할 수 있는 정보에 의해 확장된다. 본 발명의 일 실시예에 따르면, 파일의 최종 변경 날짜가 파일의 URL과 함께 활용되어 파일과 그 버전을 식별하도록 할 수 있다. 본 발명의 또 다른 실시예에 따르면, 파일의 해시 값이 파일의 URL과 함께 활용되어 파일과 그 버전을 식별하도록 할 수 있다.

Description

MBMS 파일 복구시 파일 버저닝을 지원하는 방법 {Method for supporting file versioning in MBMS file repair}
본 발명은 일반적으로 모바일 브로드캐스트/멀티캐스트 서비스 (MBMS)에 관한 것이다. 더 상세히 말해, 본 발명은 MBMS와 공동으로 사용되는 파일 복구 기능 특성에 관한 것이다.
이 부분은 청구범위에 언급되는 본 발명에 대한 배경 또는 상황을 제공하기 위한 것이다. 여기에서의 내용은 추구될 수는 있으나, 앞서 반드시 인지되었다거나 추구되었던 것들이라고는 할 수 없는 개념들을 포함할 수 있다. 따라서, 이 명세서에서 달리 지시되지 않는다면, 이 부분에 기술된 내용은 이 출원의 상세설명 및 청구항들에 대한 선행 기술이 아니며, 이 부분에 포함되어 있다고 선행 기술이라고 인정되는 것은 아니다.
모바일 멀티캐스트 및 브로드캐스트 시스템들은 최근들어 3GPP (3rd Generation Partnership Project) MBMS (Multimedia broadcast/Multicast Service), DVB (Digital Video Broadcasting) CBMS (Convergence of Broadcast and Mobile Services), 및 OMA (Open Mobile Alliance) 모바일 BCAST (Broadcst Services) 기구들 같은 다양한 기구들에 의해 표준화되어 왔다. 그러한 멀티캐스 트/브로드캐스트 솔루션들에 의해 지원되는 두 개의 주요한 서비스들이 스트리밍 (streaming)과 파일 전송 서비스(file delivery service)들이다. 스트리밍 서비스들은 테크놀로지의 주요 드라이버 (가령, 모바일 TV 어플리케이션)라고 간주되나, 파일 전송은 상당량의 트래픽 및 상당한 수익량을 발생하는 것으로 기대되고 있다. 예를 들어, 음악 및 비디오 클립들의 전달시, 파일 전송은 주요 어플리케이션 컴포넌트를 포함할 수 있다. 다른 대안으로서, 파일 전송이 리치 미디어 어플리케이션들 및 재핑 (zapping) 스트림들 같이 어플리케이션의 이차 컴포넌트일 수 있다.
파일 전송의 경우, FLUTE (File Delivery over Unidirectional Transport)가 파일 전송 프로토콜로서 사용될 수 있다. www.ietf.org/rfc/rfc3926.txt에서 찾을 수 있고 여기 그 전체가 참고의 형태로 포함되는 네트워크 워킹 그룹의 RFC (Request for Comments) 3926에서 논의된 바와 같이, FLUTE는 IETF (Internet Engineering Task Force)에 의해 규정된 것으로, 그 문서의 개정이 현재 진행중이다. FLUTE는 RFC 3450 (전체가 참고 형태로 여기 포함되는 www.ietf.org/rfc/rfc3450.txt)에서 찾을 수 있는 ALC (Asynchonous Layered Coding) 프로토콜 인스턴스화 (instantiaton)에 기반한다. ALC는 RFC 3451 (전체가 참고 형태로 여기 포함되는 www.ietf.org/rfc/rfc3451.txt)에서 찾을 수 있는 LCT (Layered Coding Transport) 블록과 같은 일련의 빌딩 블록들 및 RFC 3452 (전체가 참고 형태로 여기 포함되는 www.ietf.org/rfc/rfc3452.txt)에서 찾을 수 있는 FEC (Forward Error Correction) 빌딩 블록을 포함한다. FLUTE는 다른 무엇보다 FLUTE 세션의 콘텐츠를 기술하기 위한 메커니즘들을 규정함으로써 ALC를 확장한다. 이것은 0에 해당하는 TOI (Transport Object Identifier)를 가진 잘 알려진 오브젝트를 도입하고 FDT 인스턴스를 전달함으로써 달성된다. FDT 인스턴스는 일련의 파일들 및 이들의 해당 전송 옵션들을 나열한다. FDT는 FLUTE 사양에 정의된 스키마를 따르는 XML 파일로, 여기서 FDT의 의미구조는 주로 HTTP 1.1 프로토콜 (전체가 참고 형태로 여기 포함되는 www.ietf.org/rfc/rfc2626.txt에서 찾을 수 있는 것)로부터 가져온다.
3GPP는 현재 MBMS (Multimedia Broadcast/Multicast Service) 파일 다운로드 및 스트리밍 방식들의 확장에 대한 사양화 작업을 하고 있다 (전체가 참고 형태로 여기 포함되는 ETSI TS 126 346, UMTS (Universal Mobile Telecommunications System); MBMS (Multimedia Broadcast/Multicast Service; 프로토콜들 및 코덱들). 이러한 확장의 목적 중 하나가 유니캐스트 (unicast) 세션을 통한 서비스 전달을 가능하게 하는 데 있다. 이것은 특히, 사용자들이 우연히 멀티캐스트 적용범위를 떠나게 되고 유일하게 데이터 수신이 가능한 유니캐스트 채널만을 가지는 상황에 있어서 중요하게 된다. 유니케스트 세션을 통한 서비스 전달은, 멀티캐스트/브로드캐스트 세션과 같은 콘텐츠를 전달하는 다른 유니캐스트 세션의 존속을 수신자에게 지시하도록 적절한 시그날링을 제공함으로써 수행된다.
파일 다운로드 세션의 존속기간 중에, 새 파일 버전들을 사용하게 될 수 있고 이들은 구 파일 버전을 대체하도록 수신자들에게 전달된다. 그러한 서비스의 예가 현재의 주가 업데이트치를 수신자에게 전달하는 주식 시장 정보 서비스일 수 있다. 수신된 인코딩 심볼들 및 FEC 복구 심볼들로부터 파일을 복구하는데 실패한 수신자들은 결여된 인코딩 심볼들을 회수하기 위해 파일 복구 동작을 수행하려고 시도할 수 있다.
위에서 주지된 3GPP TS 26.346 사양에 정의된 것 같은 현재의 파일 복구 신택스는 수신자로 하여금 요청과 관련된 것이 어떤 파일 버전인지를 특정할 수 없게 한다. 허용되는 파일의 유일한 식별자는 파일의 모든 버전들에 대해 동일한, 파일 URL (Uniform Resouce Locator)이다. 결론적으로, 다른 버전의 인코딩 심볼들이 복구 서버/서비스로부터 회수될 때 파일의 복구는 에러가 날 수 있다.
도 1은 파일 복구 요청과 연계하여 그러한 모호함이 일어날 때의 예를 도시한 것이다. 도 1에 도시된 시스템은 적어도 파일 전송 서버(100), 파일 전송 서버(100)로부터 파일을 수신/다운로드하고자 하는 클라이언트(110), 및 가령 파일 다운로드 중에 클라이언트(110)에 의해 수신되지 못한 누락된 인코딩 심볼들을 전송하기 위한 복구 서버(120)를 포함한다. 파일 전송 서버(100)로부터 클라이언트(110)로의 FDT n 전달이 130으로 표현되어 있으며, 여기서 FDT n은 Version 1 (버전 1)인 File 1 (파일 1)을 포함한다. Version 1인 File 1을 클라이언트(110)로 전송하는 것이 135로 표현되어 있다. 140에서는 수신되지 못한, Version 1인 File 1의 일부, 예를 들자면 File 1의 마지막 부분이 표시된다. 이와 달리, 140이 Version 1인 File 1의 마지막 부분이 가령 결함있는 것으로 수신되었다는 것을 나타낼 수도 있다. 클라이언트(110)에 의해 복구 서버(120)로 발의된 File 1의 복구 요청이 145에 표시되고 있다.
복구 요청의 전송 및, File 1의 마지막 부분을 나타내는 누락된 인코딩 심볼 들의 전송 사이의 어떤 시간에, 새 버전, 즉 Version 2인 File 1이 사용될 수 있다. Version 2인 File 1을 포함하는 FDT n+1을 클라이언트(110)로 전송하는 것이 150에 의해 표현된다. 가령 Version 1인 File 1의 마지막 부분의 전송이 완료되지 못한 것과 같은 이유로, 클라이언트(110)에게 결국 전달되지 못한 Version 2인 File 1의 인코딩 심볼들의 전달이 155에 표현되어 있다. 160에서, 클라이언트(110)로의 Version 2인 File 1의 전달을 위한 "Repair Request File 1, Version 2" 메시지가 보여진다. 그러나, Version 2인 File 1은 실제로 클라이언트에 의해 요청되지 않았다. 오히려 그것은 Version 1인 File 1에 대한 복구 요청이었다. 그러므로, 복구 요청이 지시하는 것이 특정 파일의 어느 버전인지를 가리키기 위한 메커니즘이 존재하지 않기 때문에 복구 요청이 모호하게 된다.
따라서, 파일 복구 기능이 바르게 작동한다는 것을 확실히 하기 위해 파일의 버전을 고유하게 식별하는 기술을 정의할 필요성이 있다. 모호함의 문제를 다루기 위해 두 가지 상이한 솔루션이 앞서 제안되었다. 제1솔루션은 타이밍의 고려를 수반한다. DVB CDP 구축 가이드라인에 채택되었던 제안서 (IP Datacast over DVB-H: Content Delivery Protocols (CDP) Implementation Guidelines TM-CBMS 1483/TM 3460 Rev.3)는 파일 복구 인터벌들을 어떤 파일의 상이한 버전들에 대해 중첩되지 않도록 하는 방식으로 선택하기 위한 프로세스를 제안한다. 복구 요청들은 통상적으로 그러한 파일 복구 인터벌들 안에서만 발의된다고 추정되기 때문에, 요청한 파일 버전이 고유하게 식별될 수 있다. 그러나, 이러한 제1솔루션의 결점은, 서비스 공표시 수신자에게 시그날링되어야 하는 복구 요청들의 시간 인터벌들에 대한 제한 /요건들이 설정되어야 한다는 것이다. 그러면 수신자는 파일 복구 요청 인터벌들 밖의 시간대에서 복구 요청들을 전송하는 것이 허용되지 않는다.
제2솔루션은 복구 요청시 파일의 TOI를 포함하는 방식을 수반한다. 그러면 TOI가 누락되거나 결함이 있는 요청된 인코딩 심볼들이 속하는 파일의 버전을 식별하는데 사용된다. 그러나, 이것은 단지 불완전한 솔루션으로의 결과로 이어지는데, 이는 TOI는 여전히 관련 TSI (Transport Session Identifier) 및 센더 (sender) 어드레스에 의해 범주화되어야 하기 때문이다. 상이한 파일 버전들을 참조하는데 동일한 값의 TOI가 여러 FLUTE 서버들에 의해 사용될 수 있어, 하나의 TOI 값만으로는 충분치 않게 된다. 이러한 파라미터들을 요청 URL에 부가하더라도 추가 파라미터들의 산입에 따라 요청 라인의 사이즈가 크게 증가되기 때문에 만족한 솔루션으로 귀결되지 못한다. 또, 그러한 솔루션은 복구 서버를 구현하기 위한 가능한 수단들을 제한하는데, 여기서 복구 서버는 주어진 파일뿐 아니라 모든 파일 다운로드 세션들 각각에서 사용되는 상이한 TOI 값들을 운반하는 모든 파일 다운로드 세션들의 리스트를 유지할 필요가 있다.
본 발명의 다양한 실시예들은 파일 복구 요청시 파일 버전의 명확한 식별을 가능하게 하도록 하는 파일 복구 기능으로의 변경을 지원한다. 복구 요청은 전체적이고 또 파일 다운로드 세션과 무관하게 파일의 버전을 식별할 수 있는 정보에 의해 확장된다. 본 발명의 일 실시예에 따르면, 파일의 최종 변경 날짜가 파일의 URL과 함께 활용되어 파일과 그 버전을 식별하도록 할 수 있다. 본 발명의 또 다른 실시예에 따르면, 파일의 해시 값이 파일의 URL과 함께 활용되어 파일과 그 버전을 식별하도록 할 수 있다.
본 발명의 다양한 실시예들은 FLUTE를 통한 파일 다운로드 세션시 전달되는 파일 버전들을 식별하는 보다 강력한 방법을 생성한다는 이점을 지닌다. 또, 본 발명의 다양한 실시예들은 파일 복구 서비스를 구현/구축함에 있어 더 많은 융통성을 허용하는데, 이는 파일 전송 서버와 파일 복구 서버를 동기시키는데 필요한 동기화에 대한 수고가 최소화되기 때문이다.
본 발명의 상기 및 다른 이점들과 특성들은 그 구성 및 동작 방식과 함께, 이하에 설명하는 전체에 걸쳐 유사 구성요소들이 유사 참조부호를 가지는 첨부된 도면들과 같이 취한 이하의 상세한 설명으로부터 자명해질 것이다.
도 1은 모호한 파일 복구 요청의 메시지 플로 표현을 도시한 것이다.
도 2는 본 발명의 일 실시예에 따른 MD5 첵섬 사용의 메시지 플로 표현을 도시한 것이다.
도 3은 본 발명의 또 다른 실시예에 따라 구현되는 최종 수정 날짜 특징의 메시지 흐름 표현을 도시한 것이다.
도 4는 본 발명이 구현될 수 있는 시스템의 개략도이다.
도 5는 본 발명의 구현시 사용될 수 있는 모바일 기기의 입체도이다.
도 6은 도 5의 모바일 기기의 장치 회로에 대한 개략적 표현이다.
본 발명의 다양한 실시예들은 (전체가 참고의 형태로 여기 포함되는 www.3gpp.org/ftp/Specs/archive/26_series/26.346/에서 찾을 수 있는 것 같은) 3GPP TS 26.346에서 찾을 수 있는 프로토콜들 및 코덱들에 규정된 파일 복구 기능을 향상시킨다. 따라서, 본 발명의 다양한 실시예들은 파일 복구 요청이 발의된 파일과 결부된 버전의 명확한 식별을 지원한다. 파일 버전의 명확한 식별은 전체적이고 또 파일 다운로드 세션과 무관하게 파일의 버전을 식별할 수 있는 정보와 함께 복구 요청을 확장함으로써 달성된다.
본 발명의 한 전형적 실시예에 따르면, 파일과 파일 버전을 식별하기 위해 파일의 마지막 수정 날짜가 파일의 URL과 함께 사용될 수 있다. 본 발명의 또 다른 전형적 실시예에 따르면, 파일과 파일 버전을 식별하기 위해 파일의 해시 (hash) 값이 파일의 URL과 함께 사용될 수도 있다. 파일의 URL은 주어진 파일을 고유하게 식별한다. 파일의 URL이 파일의 마지막 수정 날짜 및/또는 파일의 해시 값과 결합될 때, 파일 및 파일 버전이 고유하게 식별될 수 있다.
파일의 최종 수정 날짜는 파일의 특정 버전이 생성되었을 때를 나타낸다. 같은 파일의 두 개의 버전이 동일한 수정 날짜를 공유하지는 못할 것임을 추측할 수 있다. 또, 수정 날짜는 예를 들어 특정 캘린더 날짜 및 시간을 의미할 수 있음을 알아야 한다. 이런 방식으로 수정 날짜를 정의하는 것은, 동일한 파일의 두 가지 버전이 같은 수정 날짜를 공유하지 못할 것임을 명확히 하는데 추가적으로 도움이 된다.
파일의 해시 값은 전체 파일과 관련해/절체 파일에 대해 산출될 수 있는 값 이다. 따라서, 파일의 해시 값은 파일의 버전을 고유하게 식별하는데 사용될 있는데, 이는 파일의 두 가지 버전은 동일한 해시 값을 도출하지 못할 것임을 알 수 있기 때문이다.
본 발명의 다양한 실시예들을 구현하는 것은 수신자들에게 파일 버전의 식별자를 시그날링하기 위한 프로세스를 포함한다. 파일 버전의 시그날링은 FDT 안에서 일어남이 바람직하지만, 다른 어디에서라도 일어날 수 있다. 해시 값은 RFC 1321 (전체가 참고 형태로 여기 포함되는 www.ietf.org/rfc/rfc1321.txt)에서 찾을 수 있는 Message-Digest 알고리즘 5 (MD5) 첵섬 (checksum)의 형태로 FDT 안에 이미 정의되어 있다. MD5 값을 가진 FDT의 예가 아래의 신택스를 가지고 구현된다:
Figure 112009048256615-PCT00001
MD5 해시 값은 base64 인코딩을 사용해 인코딩되나, 다른 인코딩 테크닉들도 사용될 수 있다는 것을 알아야 한다. 또, 다른 해시 값 알고리즘들 역시 사용될 수 있다.
다른 대안으로서, 위에서 기술한 것과 같이, "Last-Modified (최종 수정)" 엘리먼트가 파일 안에 도입될 수 있으며, 그 엘리먼트는 파일의 현재 버전의 생성 및/또는 수정 날짜 (date)와 시간 (time)을 나타내는 타임스탬프를 보유한다. Last-Modified 엘리먼트를 가진 FDT가 아래의 신택스를 가지고 구현된다:
Figure 112009048256615-PCT00002
Last-Modified 엘리먼트는 NTP (Network Time Protocol) 타임스탬프이거나, HTTP 1.1에 규정된 것 같은 날짜와 시간 값일 수 있다는 것을 주지해야 할 것이다. 한 특정 실시예에서, 그러한 날짜 및 시간 표시의 분해도 (resolution)는 적어도 초 단위 (seconds)이다. 임의의 희망하는 분해도가 구현될 수 있으나, 더 좁은 분해도일수록 두 가지 상이한 파일 버전들이 동일한 생성 날짜를 공유하지 않을 것임을 더 잘 보장할 수 있다. 예를 들어, 상술한 것과 같이, 일일 (days) 단위 분해도는 파일의 한 개를 넘는 버전이 하루 동안에 수정되는 결과를 쉽게 초래할 수 있을 것이다.
본 발명의 다양한 실시예들을 구현하는 것은 또, 파일 버전의 표시와 함께 복구 요청을 제기하는 프로세스를 포함한다. 이를 수행하기 위해, 파일 복구 요청은 요청된 파일 버전에 대한 표시를 포함하도록 수정될 수 있다. FDT에 포함된 파일 설명 (description)에 따라, 수정 날짜 및 해시 값 중 적어도 하나가 그 표시로서 사용된다.
MD5 해시 값을 이용하는 파일 복구 요청의 예가 아래에 보여진다:
Figure 112009048256615-PCT00003
도 2는 파일 복구 요청 프로세스를 도시한 메시지 다이어그램을 보인 것으로, 여기서 MD5 해시 값이 FDT 안에서 전송된다. 도 2에 도시된 시스템들은 도 1에 도시된 시스템처럼 파일 전송 서버(100), 클라이언트(110), 및 복구 서버(120)를 포함한다. 파일 전송 서버(100)로부터 클라이언트(110)까지, File 1, Version 1 (버전 1인 파일 1)을 포함하는 FDT n의 전송이 170으로 표현된다. 또, FDT는 X인 MD5 해시 값을 포함한다. File 1, Version 1을 클라이언트(110)로 전달하는 것이 175로 표현된다. 클라이언트(110)에 의해 수신되지 못한 File 1, Version 1의 일부가 180에서 보여진다. 이와 달리, 180은 File 1, Version 1의 일부가 가령 결함이 있음을 가리킬 수도 있다.
파일 복구 요청의 전송 및 File 1의 마지막 부분을 나타내는 누락된 인코딩 심볼들의 전송 사이의 어떤 시간에, 새 버전, 즉 File 1, Version 2가 사용될 수 있다. File 1, Version 2 및 Y인 MD5 해시 값을 포함하는 FDT n+1의 클라이언트(110)로의 전송이 190으로 표시된다. 결국 클라이언트에게 전달되지 못한 File 1, Version 2의 인코딩 심볼들에 대한 전송은 195로 표시된다. 그러나 도 1에 도시된 모호한 파일 복구 요청과는 다르게, 185에서 클라이언트(110)에 의해 복구 서 버(120)로 발의된 File 1의 파일 복구 요청이 표시되며, 여기서 이 요청은 요청된 File 1 버전이 Version 1이라는 MD5 해시 값 표시자 또한 포함한다. 따라서, 복구 서버(120)는 파일 복구 요청에 대해 File 1의 적절한 버전, 즉 Version 1으로 응답하는데, File 1, Version 1 및 File 1, Version 2가 각각 X 및 Y인 이들 각자의 MD5 해시 값들을 통해 차별화될 수 있기 때문이다.
복구 요청에 대한 응답은, 복구 서버가 File 1, Version 1과 관련된 요청된 인코딩 심볼들을 클라이언트(110)로 전달하는 동작을 포함한다. 일 실시예에서, 요청된 파일, 즉 File 1, Version 1이, 가령 복구 서버(120) 및 파일 전송 서버(100) 사이에서의 이전 상호동작을 통한 파일 복구 세션 시작 전에, 복구 서버(120)에서 이미 사용될 수 있다. 복구 서버(120)는 오리지널 서버, 즉 파일 전송 서버(100)에서 FLUTE 세션에 따라 요청된 인코딩 심볼들을 재생할 수 있도록 파일을 소스 블록들로 나누는데 사용되는 알맞은 블록화 알고리즘에 관한 정보를 포함할 수도 있다. 다른 대안으로서, 복구 서버(120)가 파일 전송 서버(100)로부터의 FLUTE 세션의 수신자가 될 수도 있다. 파일 전송 서버(100)로부터 파일들을 획득하기 위한 복구 서버(120)의 동작은 구현방식에 고유한 것임을 주지해야 할 것이다. 스케일러빌리티 (scalability) 목적에 있어서, 복구 서버(120)는, 반드시 그럴 필요는 없지만, 복구, 가령 누락된 인코딩 심볼들의 재전송 요청들을 파일 전송 서버(100)로 전달할 필요 없이, 국지적으로 이용가능한 파일들을 포함할 수 있다.
Last-Modified 엘리먼트를 안에 포함하는 파일 복구 요청의 예가 아래에 보여진다:
Figure 112009048256615-PCT00004
도 3은 Last-Modified 엘리먼트가 FDT 안에서 전송되는 파일 복구 요청 프로세스를 예시한 메시지 다이어그램을 보인다. 도 3에 도시된 시스템은 적어도 파일 전송 서버(100), 클라이언트(110), 및 복구 서버(120)를 포함한다. 파일 전송 서버(100)로부터 클라이언트(110)로 File 1, Version 1 (Version 1인 File 1)을 포함하는 FDTn의 전송이 210으로 표현되어 있다. 또, FDT는 X인 Last-Modified 값을 포함하는데, 여기서 X는 상술한 바와 같이 NTP 타임스탬프 또는 기타 날짜 및 시간 값을 가리키는 것일 수 있다. 클라이언트(110)로의 File 1, Version 1의 전송은 215로 표현되고 있다. 220은 클라이언트(110)에 의해 수신되지 못한 File 1, Version 1의 일부를 표시한다. 다른 대안으로서 220이, File 1, Version 1의 그 일부가 결함을 지닌채 수신되었음을 나타낼 수도 있다.
파일 복구 요청의 전송 및 File 1의 마지막 부분을 나타내는 누락된 인코딩 심볼들의 전송 사이의 어떤 시간에, 새 버전, 즉 Version 2인 File 1의 마지막 부분이 사용될 수 있다. 230은, File 1, Version 2 및 Y에 해당하는 값을 가진 Last-Modified 엘리먼트를 포함하는 FDT n+1의 클라이언트(110)로의 전송을 표시된다. 결국 클라이언트에게 전달되지 못한 File 1, Version 2의 인코딩 심볼들에 대한 전송은 235로 표시된다. 225는 클라이언트(110)에 의해 복구 서버(120)로 발의된 File 1의 파일 복구 요청을 표시하며, 여기서 이 요청은 요청된 File 1 버전이 Version 1이라는 것을 식별하는 X인 Last-Modifed 엘리먼트 값을 또한 포함한다. 따라서, 복구 서버(120)는 파일 복구 요청에 대해 File 1의 적절한 버전, 즉 Version 1으로 응답하는데, File 1, Version 1 및 File 1, Version 2가 각각 X 및 Y인 이들 각자의 Last-Modified 엘리먼트 값들을 통해 차별화될 수 있기 때문이다.
본 발명의 다양한 실시예들은 FLUTE를 통한 파일 다운로드 세션시 전달되는 파일 버전들을 식별하는 보다 강력한 방법을 생성한다는 이점을 지닌다. 또, 본 발명의 다양한 실시예들은 파일 복구 서비스를 구현/구축함에 있어 더 많은 융통성을 허용하는데, 이는 파일 전송 서버와 파일 복구 서버를 동기시키는데 필요한 동기화에 대한 수고가 최소화되기 때문이다. 파일 전송 서버, 가령, 파일 전송 서버(100)는 통상적으로 요구되는 것보다 더 많은 FED 내 파일 관련 정보를 포함하도록 요구되지만, 이것은 파일 전송 서버에 의해 업데이트되는 것으로 예상되는 파일들에 대해서만 필요한 것일 뿐이다.
도 4는 네트워크를 통해 통신할 수 있는 여러 통신 기기들을 포함하고 본 발명이 활용될 수 있는 시스템(10)을 도시한 것이다. 시스템(10)은 모바일 전화 네트워크, 무선 랜 (wireless Local Area Network), 블루투스 퍼스널 영역 네트워크, 이더넷 랜, 토큰 링 랜, 광역 네트워크, 인터넷 등의 비한정 요소들을 포함하는 유무선 네트워크의 임의 조합을 포함할 수 있다. 시스템(10)은 유선 및 무선 통신 기기들을 둘 다 포함할 수 있다.
실례로서, 도 4에 도시된 시스템(10)은 모바일 전화 네트워크(11) 및 인터넷(28)을 포함한다. 인터넷(28)에 대한 접속은 장거리 무선 접속, 단거리 무선 접 속, 및 전화선, 케이블선, 전력선 등등의 비한정 요소들을 포함하는 다양한 유선 접속을 포함할 수 있으며, 그 접속이 나열한 것에 한정되는 것은 아니다.
시스템(10)의 전형적 통신 기기들은, 모바일 기기(12), PDA 및 모바일 전화 결합기(14), PDA(16), 통합 메시징 기기 (IMD, integrated messaging device)(18), 데스크탑 컴퓨터(20), 및 노트북 컴퓨터(22)를 포함할 수 있으나, 거기에 한정되는 것은 아니다. 통신 기기들은 고정기이거나, 이동중인 개인에 의해 보유되는 모바일일 수 있다. 통신 기기들은 또한 비한정적 예로서 자동차, 트럭, 택시, 버스, 배, 비행기, 자전거, 오토바이 등등을 포함하는 운송 모드에 위치될 수도 있다. 통신 기기들의 일부나 전부는 기지국(24)으로의 무선 접속(25)을 거쳐 통화 및 메시지를 송수신하고 서비스 제공자들과 통신할 수 있다. 기지국(24)은 모바일 전화 네트워크(11) 및 인터넷(28) 사이의 통신을 가능하게 하는 네트워크 서버(26)에 연결될 수 있다. 시스템(10)은 추가 통신 기기들 및 서로 다른 종류의 통신 기기들을 포함할 수 있다.
통신 기기들은 CDMA (Code Division Multiple Access), GSM (Global System for Mobile Communications), UMTS (Universal Mobile Telecommunications System), TDMA (Time Division Multiple Access), FDMA (Frequency Division Multiple Access), TCP/IP (Transmission Control Protocol/Internet Protocol), SMS (Short Messaging Service), MMS (Multimedia Messaging Service), 이메일, IMS (Instant Messaging Service), 블루투스, IEEE 802.11 등등을 포함하는 다양한 전송 기술들을 이용해 통신할 수 있으며, 상기 나열된 기술들에만 국한되는 것은 아니다. 통신 기기는 라디오, 적외선, 레이저, 유선 접속 등등을 포함하는 다양한 미디어를 이용해 통신할 수 있으며, 상기 나열된 미디어들에 국한되는 것은 아니다.
도 5 및 도 6은 본 발명이 구현될 수 있는 한 대표적 모바일 기기(12)를 도시한다. 그러나, 본 발명이 전자 기기의 한 특정 유형에만 국한되는 것으로 의도된 것은 아님을 알아야 한다. 도 5 및 6의 모바일 기기(12)는 하우징(30), 액정 디스플레이 형식의 디스플레이(32), 키패드(34), 마이크로폰(36), 이어폰(38), 패터리(40), 적외선 포트(42), 안테나(44), 본 발명의 일 실시예에 따른 UICC 형식의 스마트 카드(46), 카드 리더(48), 라디오 인터페이스 회로(52), 코덱 회로(54), 컨트롤러(56) 및 메모리(58)를 포함한다. 개개의 회로들 및 구성요소들은 모두, 노키아 모바일 전화기들의 범위와 같이 이 기술 분야에서 잘 알려져 있는 종류의 것들이다.
본 발명은 컴퓨터 판독가능 매체 상에서 구현되고 네트워크 환경하의 컴퓨터들에 의해 실행되는 프로그램 코드 같은 컴퓨터 실행가능 명령들을 포함하는 프로그램 제품을 통해 일 실시예로서 구현될 수 있는 방법의 단계들이라는 일반적 맥락 내에서 개시되었다. 컴퓨터 판독가능 매체는 착탈형/탈착불가형 저장 장치들을 포함할 수 있으며, 그러한 장치들에는 ROM (Read Only Memory), RAM (Read Access Memory), CD (compact disc), DVD (digital versatile disc) 등등이 포함되나 그 예들에 국한되지 않는다. 일반적으로, 프로그램 모듈들에는 특정 작업들을 수행하거나 특정 추상화 데이터 타입들을 구현하는 루틴들, 프로그램들, 오브젝트들, 컴 포넌트들, 데이터 구조들 등이 포함된다. 컴퓨터 실행가능 명령들, 관련 데이터 구조들, 및 프로그램 모듈들은 여기 개시된 방법들의 단계들을 실행하기 위한 프로그램 코드의 예들을 나타낸다. 그러한 실행가능 명령들이나 관련 데이터 구조들의 특정 시퀀스는 그러한 단계들에서 나타낸 기능들을 구현하기 위한 해당 동작들의 예들을 나타낸다.
여러 실시예들의 소프트웨어 및 웹 구현방식은 다양한 데이터베이스 검색 단계들이나 프로세스들, 상관 단계들이나 프로세스들, 비교 단계들이나 프로세스들 및 결정 단계들이나 프로세스들을 이행하기 위한 규칙 기반 로직 및 기타 로직을 가진 표준 프로그래밍 기술들을 가지고 이행될 수 있다. 명세서와 청구항들에서 사용하는 "컴포넌트" 및 "모듈"이라는 말들은 한 줄 이상의 소프트웨어 코드, 및/또는 하드웨어 구현방식, 및/또는 수동 입력을 수취하기 위한 도구를 사용하는 구현방식을 포괄하도록 의도되었다는 것 역시 주지해야 할 것이다.
본 발명의 실시예들에 대한 상술한 내용은 예시와 설명의 목적으로 제시되었다. 상기 내용이 개시된 것과 정확히 일치하는 형식으로 본 발명을 제한하기 위해 의도되지는 않았으며, 상술한 내용에 비춰 그 변형 및 치환이 가능하거나 본 발명의 실시로부터 획득될 수도 있다. 본 발명의 원리 및 그 실질적 어플리케이션을 설명하여 이 분야의 당업자로 하여금 본 발명을 숙고된 특정 용도에 적합한 다양한 실시예들 및 다양한 변형예들과 함께 활용할 수 있도록 실시예들이 선택되고 개시되었다. 여기 개시된 실시예들의 구성은 방법, 장치, 모듈, 시스템 및 컴퓨터 프로그램 제품들의 가능한 모든 결합체 안에서 조합될 수 있을 것이다.

Claims (67)

  1. 유니캐스트 (unicast) 세션 도중에, 제1파일 버전 표시자를 포함하는 제1파일 전송 테이블, 및 파일의 제1버전을 클라이언트 및 파일 복구 서버로 전송하는 단계;
    상기 파일의 제2버전이 존재한다고 판단할 때, 제2파일 버전 표시자를 포함하는 제2파일 전송 테이블 및 파일의 제2버전을 클라이언트로 전송하는 단계를 포함함을 특징으로 하는 방법.
  2. 제1항에 있어서,
    상기 파일의 제1버전의 적어도 한 부분이 상기 클라이언트에 의해 수신되지 못했거나 결함이 있는 경우, 상기 제1파일 버전 표시자를 포함하는 파일 복구 요청을 상기 클라이언트로부터 상기 파일 복구 서버로 전송하는 단계를 더 포함함을 특징으로 하는 방법.
  3. 제2항에 있어서,
    상기 파일 복구 서버로부터 전달되는 상기 파일 복구 요청을 수신하는 단계; 및
    상기 파일의 제1버전의 상기 적어도 한 부분을 나타내는 인코딩 심볼들을 상기 클라이언트로 전송하는 단계를 더 포함함을 특징으로 하는 방법.
  4. 제2항에 있어서, 상기 파일 복구 서버는 상기 유니캐스트 세션에 따라 상기 인코딩 심볼들을 재생하기 위한 블록화 알고리즘에 대한 정보를 포함함을 특징으로 하는 방법.
  5. 제4항에 있어서,
    상기 클라이언트로 인코딩 심볼들을 전송하는 단계를 더 포함하고,
    상기 인코딩 심볼들은 상기 파일의 제1버전의 상기 적어도 한 부분을 나타냄을 특징으로 하는 방법.
  6. 제1항에 있어서, 상기 제1 및 제2파일 버전 표시자들은 각각, 상기 파일의 제1 및 제2버전들에 대한 해시 (hash) 값들 및 최종 수정 엘리먼트들 (last modified elements) 가운데 하나를 포함함을 특징으로 하는 방법.
  7. 제6항에 있어서, 상기 해시 값들은 MD 5 알고리즘 (message digest algorithm 5)에 따른 값들을 포함함을 특징으로 하는 방법.
  8. 제6항에 있어서, 상기 최종 수정 엘리먼트들은, 상기 파일의 제1버전 및 제2버전 각각이 생성되었을 때의 최종 순간에 관한 타임스탬프 값들을 포함함을 특징으로 하는 방법.
  9. 컴퓨터 판독가능 매체상에 구현되는 것으로, 제1항의 단계들을 포함하는 컴퓨터 프로그램 제품.
  10. 프로세서; 및
    상기 프로세서에 교류가능하게 연결된 메모리 유닛을 포함하고,
    상기 메모리 유닛은,
    유니캐스트 (unicast) 세션 도중에, 제1파일 버전 표시자를 포함하는 제1파일 전송 테이블, 및 파일의 제1버전을 클라이언트 및 파일 복구 서버로 전송하도록 하는 컴퓨터 코드;
    상기 파일의 제2버전이 존재한다고 판단할 때, 제2파일 버전 표시자를 포함하는 제2파일 전송 테이블 및 상기 파일의 제2버전을 클라이언트로 전송하도록 하는 컴퓨터 코드를 포함함을 특징으로 하는 장치.
  11. 제10항에 있어서, 상기 클라이언트는,
    상기 파일의 제1버전의 적어도 한 부분이 상기 클라이언트에 의해 수신되지 못했거나 결함이 있는 경우, 상기 제1파일 버전 표시자를 포함하는 파일 복구 요청을 상기 파일 복구 서버로 전송하도록 하는 컴퓨터 코드를 더 포함함을 특징으로 하는 장치.
  12. 제11항에 있어서, 상기 메모리 유닛은,
    상기 파일 복구 서버로부터 전달되는 상기 파일 복구 요청을 수신하기 위한 컴퓨터 코드; 및
    상기 파일의 제1버전의 상기 적어도 한 부분을 나타내는 인코딩 심볼들을 상기 클라이언트로 전송하도록 하는 컴퓨터 코드를 더 포함함을 특징으로 하는 장치.
  13. 제11항에 있어서, 상기 파일 복구 서버는 상기 유니캐스트 세션에 따라 상기 인코딩 심볼들을 재생하기 위한 블록화 알고리즘에 대한 정보를 포함함을 특징으로 하는 장치.
  14. 제13항에 있어서, 상기 파일 복구 서버는, 상기 클라이언트로 인코딩 심볼들을 전송하기 위한 컴퓨터 코드를 포함하고,
    상기 인코딩 심볼들은 상기 파일의 제1버전의 적어도 한 부분을 나타냄을 특징으로 하는 장치.
  15. 제11항에 있어서, 상기 제1 및 제2파일 버전 표시자들은 각각, 상기 파일의 제1 및 제2버전들에 대한 해시 (hash) 값들 및 최종 수정 엘리먼트들 (last modified elements) 가운데 하나를 포함함을 특징으로 하는 장치.
  16. 제15항에 있어서, 상기 해시 값들은 MD 5 알고리즘 (message digest algorithm 5)에 따른 값들을 포함함을 특징으로 하는 장치.
  17. 제15항에 있어서, 상기 최종 수정 엘리먼트들은, 상기 파일의 제1버전 및 제2버전 각각이 생성되었을 때의 최종 순간에 관한 타임스탬프 값들을 포함함을 특징으로 하는 장치.
  18. 유니캐스트 (unicast) 세션 도중에, 제1파일 버전 표시자를 포함하는 제1파일 전송 테이블, 및 파일의 제1버전을 수신하는 단계;
    상기 파일의 제1버전의 적어도 한 부분이 클라이언트에 의해 수신되지 않거나 결함이 있는 경우 파일 복구 서버로, 제1파일 버전 표시자를 포함하는 파일 복구 요청을 전송하는 단계; 및
    상기 파일의 제1버전의 적어도 한 부분을 나타내는 인코딩 심볼들을 포함하는 파일 복구 응답을 수신하는 단계를 포함함을 특징으로 하는 방법.
  19. 제18항에 있어서,
    파일 전송 서버로부터 제2파일 버전 표시자를 포함하는 제2파일 전송 테이블 및 상기 파일의 제2버전을 전송하는 단계를 더 포함함을 특징으로 하는 방법.
  20. 제19항에 있어서, 상기 제2파일 버전 표시자는, 상기 파일의 제2버전의 해시 값 및 최종 수정 엘리먼트 중 하나를 포함함을 특징으로 하는 방법.
  21. 제20항에 있어서, 상기 해시 값은 MD5 알고리즘에 따른 값을 포함함을 특징으로 하는 방법.
  22. 제20항에 있어서, 상기 최종 수정 엘리먼트는, 상기 파일의 제2버전이 생성된 최종 순간에 관한 타임스탬프 값을 포함함을 특징으로 하는 방법.
  23. 제18항에 있어서, 상기 파일 복구 응답은 인코딩 심볼들을 포함하고,
    상기 인코딩 심볼들은 상기 파일의 제1버전의 적어도 한 부분을 나타낸 것임을 특징으로 하는 방법.
  24. 제18항에 있어서, 상기 파일 복구 응답은 상기 파일 복구 서버로부터 수신됨을 특징으로 하는 방법.
  25. 제24항에 있어서, 상기 파일 복구 서버는 상기 유니캐스트 세션에 따라 상기 인코딩 심볼들을 재생하기 위한 블록화 알고리즘에 관한 정보를 포함함을 특징으로 하는 방법.
  26. 제18항에 있어서, 상기 파일 복구 응답은 파일 전송 서버로부터 수신되고,
    상기 파일 복구 요청은 상기 파일 복구 서버로부터 전달되고 상기 파일의 제 1버전의 적어도 한 부분을 나타내는 인코딩 심볼들을 포함함을 특징으로 하는 방법.
  27. 제18항에 있어서, 상기 제1파일 버전 표시자는 상기 파일의 제1버전의 해시 값 및 최종 수정 엘리먼트 중 하나를 포함함을 특징으로 하는 방법.
  28. 제27항에 있어서, 상기 해시 값은 MD 5 알고리즘에 따른 값을 포함함을 특징으로 하는 방법.
  29. 제27항에 있어서, 상기 최종 수정 엘리먼트는 상기 파일의 제1버전이 생성된 최종 순간에 관한 타임스탬프 값을 포함함을 특징으로 하는 방법.
  30. 컴퓨터 판독가능 매체상에 구현되는 것으로, 제18항의 단계들을 포함하는 컴퓨터 프로그램 제품.
  31. 프로세서; 및
    상기 프로세서에 교류가능하게 연결된 메모리 유닛을 포함하고,
    상기 메모리 유닛은,
    유니캐스트 (unicast) 세션 도중에, 제1파일 버전 표시자를 포함하는 제1파일 전송 테이블, 및 파일의 제1버전을 수신하기 위한 컴퓨터 코드;
    상기 파일의 제1버전의 적어도 한 부분이 클라이언트에 의해 수신되지 않거나 결함이 있는 경우 파일 복구 서버로, 제1파일 버전 표시자를 포함하는 파일 복구 요청을 전송하도록 하는 컴퓨터 코드; 및
    상기 파일의 제1버전의 적어도 한 부분을 나타내는 인코딩 심볼들을 포함하는 파일 복구 응답을 수신하도록 하는 컴퓨터 코드를 포함함을 특징으로 하는 장치.
  32. 제31항에 있어서, 파일 전송 서버는,
    클라이언트로, 제2파일 버전 표시자를 포함하는 제2파일 전송 테이블 및 상기 파일의 제2버전을 전송하기 위한 컴퓨터 코드를 포함함을 특징으로 하는 장치.
  33. 제32항에 있어서, 상기 제2파일 버전 표시자는, 상기 파일의 제2버전의 해시 값 및 최종 수정 엘리먼트 중 하나를 포함함을 특징으로 하는 장치.
  34. 제33항에 있어서, 상기 해시 값은 MD5 알고리즘에 따른 값을 포함함을 특징으로 하는 장치.
  35. 제33항에 있어서, 상기 최종 수정 엘리먼트는, 상기 파일의 제2버전이 생성된 최종 순간에 관한 타임스탬프 값을 포함함을 특징으로 하는 장치.
  36. 제31항에 있어서, 상기 파일 복구 응답은 인코딩 심볼들을 포함하고,
    상기 인코딩 심볼들은 상기 파일의 제1버전의 적어도 한 부분을 나타낸 것임을 특징으로 하는 징치.
  37. 제31항에 있어서, 상기 파일 복구 응답은 상기 파일 복구 서버로부터 수신됨을 특징으로 하는 장치.
  38. 제37항에 있어서, 상기 파일 복구 서버는 상기 유니캐스트 세션에 따라 상기 인코딩 심볼들을 재생하기 위한 블록화 알고리즘에 관한 정보를 포함함을 특징으로 하는 장치.
  39. 제31항에 있어서, 상기 파일 복구 응답은 파일 전송 서버로부터 수신되고,
    상기 파일 복구 요청은, 상기 파일 복구 서버로부터 전달되고 상기 파일의 제1버전의 적어도 한 부분을 나타내는 인코딩 심볼들을 포함함을 특징으로 하는 장치.
  40. 제31항에 있어서, 상기 제1파일 버전 표시자는 상기 파일의 제1버전의 해시 값 및 최종 수정 엘리먼트 중 하나를 포함함을 특징으로 하는 장치.
  41. 제40항에 있어서, 상기 해시 값은 MD 5 알고리즘에 따른 값을 포함함을 특징 으로 하는 장치.
  42. 제40항에 있어서, 상기 최종 수정 엘리먼트는 상기 파일의 제1버전이 생성된 최종 순간에 관한 타임스탬프 값을 포함함을 특징으로 하는 장치.
  43. 클라이언트로부터 파일의 제1버전의 제1파일 버전 표시자를 포함하는 파일 복구 요청을 수신하는 단계; 및
    상기 파일의 제1버전의 적어도 한 부분이 상기 클라이언트에 의해 수신되지 않거나 결함이 있다고 판단될 때, 상기 클라이언트로 파일 복구 응답을 전송하는 단계를 포함함을 특징으로 하는 방법.
  44. 제43항에 있어서, 파일 전송 서버는 제2파일 버전 표시자를 포함하는 제2파일 전송 테이블, 및 상기 파일의 제2버전을 상기 클라이언트로 전송함을 특징으로 하는 방법.
  45. 제44항에 있어서, 상기 제2파일 버전 표시자는, 상기 파일의 제2버전의 해시 값 및 최종 수정 엘리먼트 중 하나를 포함함을 특징으로 하는 방법.
  46. 제45항에 있어서, 상기 해시 값은 MD 5 알고리즘에 따른 값을 포함함을 특징으로 하는 방법.
  47. 제45항에 있어서, 상기 최종 수정 엘리먼트는 상기 파일의 제2버전이 생성된 최종 순간에 관한 타임스탬프 값을 포함함을 특징으로 하는 방법.
  48. 제43항에 있어서,
    상기 파일 복구 요청을 파일 전송 서버로 전달하는 단계를 더 포함하고,
    상기 파일 복구 응답은, 상기 클라이언트로 전송되고 상기 파일의 제1버전의 적어도 한 부분을 나타내는 인코딩 심볼들을 포함함을 특징으로 하는 방법.
  49. 제43항에 있어서, 상기 파일 복구 응답은 상기 파일 복구 서버에 의해 상기 클라이언트로 전송되고,
    상기 파일 복구 응답은 상기 파일의 제1버전의 적어도 한 부분을 나타내는 인코딩 심볼들을 포함함을 특징으로 하는 방법.
  50. 제49항에 있어서,
    유니캐스트 세션에 따라 상기 인코딩 심볼들을 재생하기 위한 블록화 알고리즘을 앞서 수신하는 단계를 더 포함함을 특징으로 하는 방법.
  51. 제43항에 있어서, 상기 제1파일 버전 표시자는 상기 파일의 제1버전의 해시 값 및 최종 수정 엘리먼트 중 하나를 포함함을 특징으로 하는 방법.
  52. 제51항에 있어서, 상기 해시 값은 MD 5 알고리즘에 따른 값을 포함함을 특징으로 하는 방법.
  53. 제51항에 있어서, 상기 최종 수정 엘리먼트는 상기 파일의 제1버전이 생성된 최종 순간에 관한 타임스탬프 값을 포함함을 특징으로 하는 방법.
  54. 컴퓨터 판독가능 매체상에 구현되는 것으로, 제43항의 단계들을 포함하는 컴퓨터 프로그램 제품.
  55. 프로세서; 및
    상기 프로세서에 교류가능하게 연결된 메모리 유닛을 포함하고,
    상기 메모리 유닛은,
    클라이언트로부터 파일의 제1버전의 제1파일 버전 표시자를 포함하는 파일 복구 요청을 수신하기 위한 컴퓨터 코드; 및
    상기 파일의 제1버전의 적어도 한 부분이 상기 클라이언트에 의해 수신되지 않거나 결함이 있다고 판단될 때, 상기 클라이언트로 파일 복구 응답을 전송하도록 하는 컴퓨터 코드를 포함함을 특징으로 하는 장치.
  56. 제55항에 있어서, 파일 전송 서버는 제2파일 버전 표시자를 포함하는 제2파 일 전송 테이블, 및 상기 파일의 제2버전을 상기 클라이언트로 전송하기 위한 컴퓨터 코드를 포함함을 특징으로 하는 장치.
  57. 제56항에 있어서, 상기 제2파일 버전 표시자는, 상기 파일의 제2버전의 해시 값 및 최종 수정 엘리먼트 중 하나를 포함함을 특징으로 하는 장치.
  58. 제57항에 있어서, 상기 해시 값은 MD 5 알고리즘에 따른 값을 포함함을 특징으로 하는 장치.
  59. 제57항에 있어서, 상기 최종 수정 엘리먼트는 상기 파일의 제2버전이 생성된 최종 순간에 관한 타임스탬프 값을 포함함을 특징으로 하는 장치.
  60. 제55항에 있어서, 상기 메모리 유닛은,
    상기 파일 복구 요청을 파일 전송 서버로 전달하는 것을 더 포함하고,
    상기 파일 복구 응답은, 상기 클라이언트로 전송되고 상기 파일의 제1버전의 적어도 한 부분을 나타내는 인코딩 심볼들을 포함함을 특징으로 하는 장치.
  61. 제55항에 있어서, 상기 파일 복구 응답은 상기 파일 복구 서버에 의해 상기 클라이언트로 전송되고,
    상기 파일 복구 응답은 상기 파일의 제1버전의 적어도 한 부분을 나타내는 인코딩 심볼들을 포함함을 특징으로 하는 장치.
  62. 제61항에 있어서, 상기 메모리 유닛은,
    유니캐스트 세션에 따라 상기 인코딩 심볼들을 재생하기 위한 블록화 알고리즘을 앞서 수신하기 위한 컴퓨터 코드를 더 포함함을 특징으로 하는 장치.
  63. 제55항에 있어서, 상기 제1파일 버전 표시자는 상기 파일의 제1버전의 해시 값 및 최종 수정 엘리먼트 중 하나를 포함함을 특징으로 하는 장치.
  64. 제63항에 있어서, 상기 해시 값은 MD 5 알고리즘에 따른 값을 포함함을 특징으로 하는 장치.
  65. 제63항에 있어서, 상기 최종 수정 엘리먼트는 상기 파일의 제1버전이 생성된 최종 순간에 관한 타임스탬프 값을 포함함을 특징으로 하는 장치.
  66. 유니캐스트 (unicast) 세션 도중에, 제1파일 버전 표시자를 포함하는 제1파일 전송 테이블, 및 파일의 제1버전을 전송하고, 상기 파일의 제2버전이 존재한다고 판단할 때, 제2파일 버전 표시자를 포함하는 제2파일 전송 테이블 및 파일의 제2버전을 전송하도록 구성된 파일 전송 서버;
    상기 파일 전송 서버로부터 상기 제1파일 전송 테이블, 상기 파일의 제1버 전, 및 상기 제1파일 버전 표시자를 수신하고, 상기 파일의 제1버전의 적어도 한 부분이 수신되지 않거나 결함이 있다고 판단할 때, 상기 제1파일 버전 표시자를 포함하는 파일 복구 요청을 전송하도록 구성된 클라이언트; 및
    상기 클라이언트로부터 상기 파일 복구 요청을 수신한 후, 상기 클라이언트로 파일 복구 응답을 전송하도록 구성된 파일 복구 서버를 포함함을 특징으로 하는 시스템.
  67. 제66항에 있어서, 상기 파일 복구 응답은, 상기 파일 복구 요청이 파일 전송 서버로 전달되고 그에 따라 상기 파일의 제1버전의 적어도 일부를 나타내는 인코딩 심볼들을 포함하는 파일 복구 응답이 클라이언트로 전송되게 되는 것과; 상기 파일 복구 서버로부터 직접 상기 클라이언트로, 상기 파일의 제1버전의 적어도 한 부분을 나타내는 인코딩 심볼들을 포함하는 파일 복구 응답이 전송되는 것 가운데 하나임을 특징으로 하는 시스템.
KR1020097016514A 2007-01-09 2007-12-13 Mbms 파일 복구시 파일 버저닝을 지원하는 방법 KR20090098919A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US88419107P 2007-01-09 2007-01-09
US60/884,191 2007-01-09

Publications (1)

Publication Number Publication Date
KR20090098919A true KR20090098919A (ko) 2009-09-17

Family

ID=39608406

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020097016514A KR20090098919A (ko) 2007-01-09 2007-12-13 Mbms 파일 복구시 파일 버저닝을 지원하는 방법

Country Status (8)

Country Link
US (1) US20080313191A1 (ko)
EP (1) EP2122874A1 (ko)
KR (1) KR20090098919A (ko)
CN (1) CN101669323A (ko)
CA (1) CA2675135A1 (ko)
RU (1) RU2009127603A (ko)
TW (1) TW200845635A (ko)
WO (1) WO2008084348A1 (ko)

Cited By (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101456987B1 (ko) * 2009-09-22 2014-11-04 퀄컴 인코포레이티드 시그널링 또는 블록 생성을 이용하는 개선된 블록-요청 스트리밍 시스템
US8887020B2 (en) 2003-10-06 2014-11-11 Digital Fountain, Inc. Error-correcting multi-stage code generator and decoder for communication systems having single transmitters or multiple transmitters
US8918533B2 (en) 2010-07-13 2014-12-23 Qualcomm Incorporated Video switching for streaming video data
US8958375B2 (en) 2011-02-11 2015-02-17 Qualcomm Incorporated Framing for an improved radio link protocol including FEC
US9136983B2 (en) 2006-02-13 2015-09-15 Digital Fountain, Inc. Streaming and buffering using variable FEC overhead and protection periods
US9136878B2 (en) 2004-05-07 2015-09-15 Digital Fountain, Inc. File download and streaming system
US9178535B2 (en) 2006-06-09 2015-11-03 Digital Fountain, Inc. Dynamic stream interleaving and sub-stream based delivery
US9185439B2 (en) 2010-07-15 2015-11-10 Qualcomm Incorporated Signaling data for multiplexing video components
US9191151B2 (en) 2006-06-09 2015-11-17 Qualcomm Incorporated Enhanced block-request streaming using cooperative parallel HTTP and forward error correction
US9237101B2 (en) 2007-09-12 2016-01-12 Digital Fountain, Inc. Generating and communicating source identification information to enable reliable communications
US9236976B2 (en) 2001-12-21 2016-01-12 Digital Fountain, Inc. Multi stage code generator and decoder for communication systems
US9236885B2 (en) 2002-10-05 2016-01-12 Digital Fountain, Inc. Systematic encoding and decoding of chain reaction codes
US9240810B2 (en) 2002-06-11 2016-01-19 Digital Fountain, Inc. Systems and processes for decoding chain reaction codes through inactivation
US9246633B2 (en) 1998-09-23 2016-01-26 Digital Fountain, Inc. Information additive code generator and decoder for communication systems
US9253233B2 (en) 2011-08-31 2016-02-02 Qualcomm Incorporated Switch signaling methods providing improved switching between representations for adaptive HTTP streaming
US9264069B2 (en) 2006-05-10 2016-02-16 Digital Fountain, Inc. Code generator and decoder for communications systems operating using hybrid codes to allow for multiple efficient uses of the communications systems
US9270299B2 (en) 2011-02-11 2016-02-23 Qualcomm Incorporated Encoding and decoding using elastic codes with flexible source block mapping
US9270414B2 (en) 2006-02-21 2016-02-23 Digital Fountain, Inc. Multiple-field based code generator and decoder for communications systems
US9281847B2 (en) 2009-02-27 2016-03-08 Qualcomm Incorporated Mobile reception of digital video broadcasting—terrestrial services
US9288010B2 (en) 2009-08-19 2016-03-15 Qualcomm Incorporated Universal file delivery methods for providing unequal error protection and bundled file delivery services
US9294226B2 (en) 2012-03-26 2016-03-22 Qualcomm Incorporated Universal object delivery and template-based file delivery
US9319448B2 (en) 2010-08-10 2016-04-19 Qualcomm Incorporated Trick modes for network streaming of coded multimedia data
US9380096B2 (en) 2006-06-09 2016-06-28 Qualcomm Incorporated Enhanced block-request streaming system for handling low-latency streaming
US9386064B2 (en) 2006-06-09 2016-07-05 Qualcomm Incorporated Enhanced block-request streaming using URL templates and construction rules
US9419749B2 (en) 2009-08-19 2016-08-16 Qualcomm Incorporated Methods and apparatus employing FEC codes with permanent inactivation of symbols for encoding and decoding processes
US9485546B2 (en) 2010-06-29 2016-11-01 Qualcomm Incorporated Signaling video samples for trick mode video representations
US9596447B2 (en) 2010-07-21 2017-03-14 Qualcomm Incorporated Providing frame packing type information for video coding
US9843844B2 (en) 2011-10-05 2017-12-12 Qualcomm Incorporated Network streaming of media data
US9917874B2 (en) 2009-09-22 2018-03-13 Qualcomm Incorporated Enhanced block-request streaming using block partitioning or request controls for improved client-side handling

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8224868B2 (en) * 2008-07-31 2012-07-17 Verizon Patent And Licensing Inc. Network coding with last modified dates for P2P web caching
WO2010020710A1 (en) * 2008-08-20 2010-02-25 Nokia Corporation Method and apparatus for parental control of wireless broadcast content
WO2010021526A2 (en) * 2008-08-22 2010-02-25 Lg Electronics Inc. A method for processing additional information related to an announced service or content in an nrt service and a broadcast receiver
EP2312437A1 (en) * 2009-09-30 2011-04-20 Thomson Licensing Detecting client software versions
US9213605B2 (en) * 2012-01-23 2015-12-15 Intel Corporation IP multimedia subsystem and method for MBMS file repair using HTTP servers
CN104782078B (zh) * 2012-07-27 2019-02-26 爱立信(中国)通信有限公司 执行文件修复过程的用户设备节点、服务器节点以及方法
US10127263B2 (en) * 2013-05-30 2018-11-13 Qualcomm Incorporated Full file repair using schedule description fragment in eMBMS
US9177123B1 (en) * 2013-09-27 2015-11-03 Emc Corporation Detecting illegitimate code generators
US20150172066A1 (en) * 2013-12-13 2015-06-18 Qualcomm Incorporated Practical implementation aspects of unicast fetch for http streaming over embms
US9621618B2 (en) * 2014-12-22 2017-04-11 Telefonaktiebolaget Lm Ericsson (Publ) Packet analyzer device and method to measure a video quality of transmitted IP multicast media
US10063894B2 (en) * 2017-01-10 2018-08-28 Disney Enterprises, Inc. Systems and methods for differential media distribution
US11582125B2 (en) * 2019-10-01 2023-02-14 Qualcomm Incorporated Repair mechanism for adaptive bit rate multicast

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6178429B1 (en) * 1997-11-26 2001-01-23 Cisco Technology, Inc. Mechanism for ensuring SCM database consistency on multi-part operation boundaries
US6269080B1 (en) * 1999-04-13 2001-07-31 Glenayre Electronics, Inc. Method of multicast file distribution and synchronization
US20020049760A1 (en) * 2000-06-16 2002-04-25 Flycode, Inc. Technique for accessing information in a peer-to-peer network
US7043637B2 (en) * 2001-03-21 2006-05-09 Microsoft Corporation On-disk file format for a serverless distributed file system
US7231404B2 (en) * 2003-01-31 2007-06-12 Nokia Corporation Datacast file transmission with meta-data retention
KR100595646B1 (ko) * 2004-01-09 2006-07-03 엘지전자 주식회사 Mbms서비스를 제공하는 무선통신 시스템
TWI325732B (en) * 2006-07-31 2010-06-01 Ind Tech Res Inst File repair mechanism for mbms and umts network

Cited By (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9246633B2 (en) 1998-09-23 2016-01-26 Digital Fountain, Inc. Information additive code generator and decoder for communication systems
US9236976B2 (en) 2001-12-21 2016-01-12 Digital Fountain, Inc. Multi stage code generator and decoder for communication systems
US9240810B2 (en) 2002-06-11 2016-01-19 Digital Fountain, Inc. Systems and processes for decoding chain reaction codes through inactivation
US9236885B2 (en) 2002-10-05 2016-01-12 Digital Fountain, Inc. Systematic encoding and decoding of chain reaction codes
US8887020B2 (en) 2003-10-06 2014-11-11 Digital Fountain, Inc. Error-correcting multi-stage code generator and decoder for communication systems having single transmitters or multiple transmitters
US9236887B2 (en) 2004-05-07 2016-01-12 Digital Fountain, Inc. File download and streaming system
US9136878B2 (en) 2004-05-07 2015-09-15 Digital Fountain, Inc. File download and streaming system
US9136983B2 (en) 2006-02-13 2015-09-15 Digital Fountain, Inc. Streaming and buffering using variable FEC overhead and protection periods
US9270414B2 (en) 2006-02-21 2016-02-23 Digital Fountain, Inc. Multiple-field based code generator and decoder for communications systems
US9264069B2 (en) 2006-05-10 2016-02-16 Digital Fountain, Inc. Code generator and decoder for communications systems operating using hybrid codes to allow for multiple efficient uses of the communications systems
US9191151B2 (en) 2006-06-09 2015-11-17 Qualcomm Incorporated Enhanced block-request streaming using cooperative parallel HTTP and forward error correction
US9209934B2 (en) 2006-06-09 2015-12-08 Qualcomm Incorporated Enhanced block-request streaming using cooperative parallel HTTP and forward error correction
US9432433B2 (en) 2006-06-09 2016-08-30 Qualcomm Incorporated Enhanced block-request streaming system using signaling or block creation
US9178535B2 (en) 2006-06-09 2015-11-03 Digital Fountain, Inc. Dynamic stream interleaving and sub-stream based delivery
US9628536B2 (en) 2006-06-09 2017-04-18 Qualcomm Incorporated Enhanced block-request streaming using cooperative parallel HTTP and forward error correction
US11477253B2 (en) 2006-06-09 2022-10-18 Qualcomm Incorporated Enhanced block-request streaming system using signaling or block creation
US9386064B2 (en) 2006-06-09 2016-07-05 Qualcomm Incorporated Enhanced block-request streaming using URL templates and construction rules
US9380096B2 (en) 2006-06-09 2016-06-28 Qualcomm Incorporated Enhanced block-request streaming system for handling low-latency streaming
US9237101B2 (en) 2007-09-12 2016-01-12 Digital Fountain, Inc. Generating and communicating source identification information to enable reliable communications
US9281847B2 (en) 2009-02-27 2016-03-08 Qualcomm Incorporated Mobile reception of digital video broadcasting—terrestrial services
US9419749B2 (en) 2009-08-19 2016-08-16 Qualcomm Incorporated Methods and apparatus employing FEC codes with permanent inactivation of symbols for encoding and decoding processes
US9288010B2 (en) 2009-08-19 2016-03-15 Qualcomm Incorporated Universal file delivery methods for providing unequal error protection and bundled file delivery services
US9876607B2 (en) 2009-08-19 2018-01-23 Qualcomm Incorporated Methods and apparatus employing FEC codes with permanent inactivation of symbols for encoding and decoding processes
US9660763B2 (en) 2009-08-19 2017-05-23 Qualcomm Incorporated Methods and apparatus employing FEC codes with permanent inactivation of symbols for encoding and decoding processes
US11743317B2 (en) 2009-09-22 2023-08-29 Qualcomm Incorporated Enhanced block-request streaming using block partitioning or request controls for improved client-side handling
US10855736B2 (en) 2009-09-22 2020-12-01 Qualcomm Incorporated Enhanced block-request streaming using block partitioning or request controls for improved client-side handling
KR101456987B1 (ko) * 2009-09-22 2014-11-04 퀄컴 인코포레이티드 시그널링 또는 블록 생성을 이용하는 개선된 블록-요청 스트리밍 시스템
US9917874B2 (en) 2009-09-22 2018-03-13 Qualcomm Incorporated Enhanced block-request streaming using block partitioning or request controls for improved client-side handling
US11770432B2 (en) 2009-09-22 2023-09-26 Qualcomm Incorporated Enhanced block-request streaming system for handling low-latency streaming
US9992555B2 (en) 2010-06-29 2018-06-05 Qualcomm Incorporated Signaling random access points for streaming video data
US9485546B2 (en) 2010-06-29 2016-11-01 Qualcomm Incorporated Signaling video samples for trick mode video representations
US8918533B2 (en) 2010-07-13 2014-12-23 Qualcomm Incorporated Video switching for streaming video data
US9185439B2 (en) 2010-07-15 2015-11-10 Qualcomm Incorporated Signaling data for multiplexing video components
US9596447B2 (en) 2010-07-21 2017-03-14 Qualcomm Incorporated Providing frame packing type information for video coding
US9602802B2 (en) 2010-07-21 2017-03-21 Qualcomm Incorporated Providing frame packing type information for video coding
US9456015B2 (en) 2010-08-10 2016-09-27 Qualcomm Incorporated Representation groups for network streaming of coded multimedia data
US9319448B2 (en) 2010-08-10 2016-04-19 Qualcomm Incorporated Trick modes for network streaming of coded multimedia data
US8958375B2 (en) 2011-02-11 2015-02-17 Qualcomm Incorporated Framing for an improved radio link protocol including FEC
US9270299B2 (en) 2011-02-11 2016-02-23 Qualcomm Incorporated Encoding and decoding using elastic codes with flexible source block mapping
US9253233B2 (en) 2011-08-31 2016-02-02 Qualcomm Incorporated Switch signaling methods providing improved switching between representations for adaptive HTTP streaming
US9843844B2 (en) 2011-10-05 2017-12-12 Qualcomm Incorporated Network streaming of media data
US9294226B2 (en) 2012-03-26 2016-03-22 Qualcomm Incorporated Universal object delivery and template-based file delivery

Also Published As

Publication number Publication date
CA2675135A1 (en) 2008-07-17
TW200845635A (en) 2008-11-16
RU2009127603A (ru) 2011-02-20
US20080313191A1 (en) 2008-12-18
CN101669323A (zh) 2010-03-10
WO2008084348A1 (en) 2008-07-17
EP2122874A1 (en) 2009-11-25

Similar Documents

Publication Publication Date Title
KR20090098919A (ko) Mbms 파일 복구시 파일 버저닝을 지원하는 방법
CN100559791C (zh) 用于下载所推送内容的系统、方法和计算机程序产品
RU2436245C2 (ru) Система и способ для осуществления хэндовера mbms во время доставки в режиме загрузки
CA2573388C (en) Grouping of session objects
US8495228B2 (en) System and method for optimizing download user service delivery to roaming clients
KR101232441B1 (ko) 모바일 브로드캐스트 네트워크를 통해 브로드캐스트 서비스를 반송하는 시스템 및 방법
US8351363B2 (en) Method and apparatus for enhanced file distribution in multicast or broadcast
US8248983B2 (en) Method and system for controlling the provision of media content to mobile stations
US8935420B2 (en) Method and apparatus for synchronizing notification messages
US9215265B2 (en) Caching directives for a file delivery protocol
JP2009515456A (ja) リッチメディアアプリケーションにおけるリモート対話のためのフィードバック及びフォワード送信を与えるシステム及び方法
CA2667516A1 (en) System and method for providing advanced session control of a unicast session
WO2009036624A1 (fr) Système et procédé pour actualiser les différences d'un guide électronique des services
CN104270406A (zh) 用于上载内容的系统和关联终端、方法及计算机程序产品
CN101543015A (zh) 使得能够在psse信道之间快速切换的系统和方法
KR20080072926A (ko) 리치 미디어 서비스를 통한 데이터 전송을 위해 품질피드백 메트릭들을 제공하는 시스템 및 방법
KR102381335B1 (ko) 모바일 사용자 장치들에 컨텐츠를 전송하는 방법
WO2009001238A2 (en) Method and apparatus for signaling updates to notification session in ip datacast
US20090303255A1 (en) Systems and methods for providing information in a rich media environment
KR100902855B1 (ko) 세션 객체들의 그룹화
WO2021064664A1 (en) Method for broadcasting dash/hls hybrid multimedia streams
WO2009050621A1 (en) Method and apparatus for the aggregation and indexing of message parts in multipart mime objects

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
NORF Unpaid initial registration fee