KR100902855B1 - Grouping of session objects - Google Patents
Grouping of session objects Download PDFInfo
- Publication number
- KR100902855B1 KR100902855B1 KR1020077003504A KR20077003504A KR100902855B1 KR 100902855 B1 KR100902855 B1 KR 100902855B1 KR 1020077003504 A KR1020077003504 A KR 1020077003504A KR 20077003504 A KR20077003504 A KR 20077003504A KR 100902855 B1 KR100902855 B1 KR 100902855B1
- Authority
- KR
- South Korea
- Prior art keywords
- objects
- session
- description
- groupings
- program code
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/40—Support for services or applications
Abstract
객체 배달 세션, 이를테면 단방향 전송을 통한 파일 배달(FLUTE) 세션에 가입되고 이 세션에 의해 제공된 복수 개의 객체들의 기술(description)이 제공된다. 이 기술은 복수 개의 객체들의 하나 이상의 그룹화를 나타낸다. 흥미있는 객체가 복수 개의 객체들로부터 결정된다. 흥미있는 객체 및 복수 개의 객체들의 기술에 기초하여, 복수 개의 객체들 중의 하나 이상이 다운로드를 위해 식별된다.
A subscription of an object delivery session, such as a file delivery (FLUTE) session via one-way transmission, and provided by the session is provided. This technique represents one or more groupings of a plurality of objects. The object of interest is determined from a plurality of objects. Based on the object of interest and the description of the plurality of objects, one or more of the plurality of objects are identified for download.
Description
이 출원은 "Grouping of Session Objects"라는 명칭으로 2004년 7월 14일자로 출원된 미국 출원 제10/890,273호를 우선권 주장하며, 그 내용은 완전히 여기에 통합된다.This application claims priority to US Application No. 10 / 890,273, filed July 14, 2004, entitled “Grouping of Session Objects,” the content of which is fully incorporated herein.
본 발명은 통신에 관한 것이다. 더 상세하게는, 본 발명은 통신 환경에서 전송되는 객체들의 그룹화에 관한 것이다.The present invention relates to communication. More specifically, the present invention relates to the grouping of objects transmitted in a communication environment.
파일 배달(또는 "이산 매체 배달")은 중요한 서비스이며, 종종 IP 멀티캐스트, 인터넷 프로토콜 기기 제어(IPDC), 및 멀티미디어 브로드캐스트/멀티캐스트 서비스(MBMS)와 같은 시스템들상의 일-대-다(또는 "멀티캐스트") 전송 토폴로지에 관련된다. 불행히도, 점-대-점 프로토콜들, 이를테면 파일 전송 프로토콜(FTP)과 하이퍼 텍스트 전송 프로토콜(HTTP)에 의해 제공된 바람직한 파일 배달 특징들의 대부분은 그러한 1-대-다 전송 시나리오에 대해 문제가 있다. 부가하여, 전송 제어 프로토콜(TCP)과 같이 수신확인들(ACK들)의 전송을 통해 파일들의 믿을만한 또는 보증되는 배달을 제공하는 프로토콜들은 그러한 1-대-다 전송 시나리오들에서 타당하지 않다.File delivery (or "discrete media delivery") is an important service and is often one-to-many on systems such as IP multicast, Internet Protocol Device Control (IPDC), and Multimedia Broadcast / Multicast Service (MBMS). Or "multicast") transmission topology. Unfortunately, most of the preferred file delivery features provided by point-to-point protocols, such as file transfer protocol (FTP) and hypertext transfer protocol (HTTP), are problematic for such one-to-many transfer scenarios. In addition, protocols that provide reliable or guaranteed delivery of files through the transmission of acknowledgments (ACKs), such as Transmission Control Protocol (TCP), are not feasible in such one-to-many transmission scenarios.
인터넷 엔지니어링 태스크 포스(IETF)의 신뢰성 멀티캐스트 전송(RMT) 워킹 그룹은 2 부류의 에러-내성 멀티캐스트 전송 프로토콜들을 표준화하는 과정에 있다. 첫 번째 부류에서, 신뢰도는 (예지적인) 순방향 오류 정정(FEC)의 사용을 통하여 구현된다. 두 번째 부류에서는, 수신기 피드백의 사용을 통해 이루어지고 있다. 비동기 계층 부호화(ALC)는 첫 번째 부류에 속하는 프로토콜 인스턴스화(instantiation)인 반면, NACK-향 신뢰성 멀티캐스트(NORM) 프로토콜은 두 번째 부류에 속한다. 이 프로토콜들은 다양한 네트워크들에서 사용될 수 있다. 예를 들어, 무선 다중 접속망들에 관해서, 이 프로토콜들은 범용 이동 통신 시스템(UMTS) 통신망들, 무선 근거리 통신망들(WLAN들), 직접 비디오 방송-위성(DVB-T) 통신망들, 및 직접 비디오 브로드캐스트-위성((DVB-S) 통신망들에서 이용될 수 있다. DVB 통신에 관한 정보는 인터넷상의 http://www.DVB.org.에서 찾을 수 있다.The Reliability Multicast Transport (RMT) working group of the Internet Engineering Task Force (IETF) is in the process of standardizing two classes of error-tolerant multicast transport protocols. In the first class, reliability is implemented through the use of (predictive) forward error correction (FEC). In the second class, this is achieved through the use of receiver feedback. Asynchronous layer coding (ALC) is a protocol instantiation belonging to the first class, while NACK-oriented reliable multicast (NORM) protocols belong to the second class. These protocols can be used in a variety of networks. For example, with respect to wireless multiple access networks, these protocols may include Universal Mobile Telecommunications System (UMTS) networks, wireless local area networks (WLANs), direct video broadcast-satellite (DVB-T) networks, and direct video broadcast. It can be used in Cast-Satellite (DVB-S) networks Information about DVB communications can be found at http://www.DVB.org.
단방향 전송을 통한 파일 배달(File Delivery over Unidirectional Transport; FLUTE)은 대규모 확장 가능 단방향 멀티캐스트 전송을 제공하는 전송 수단이다. 이 기능을 달성하기 위해, FLUTE는 FEC와 ALC 구축 블록들을 구축한다.File Delivery over Unidirectional Transport (FLUTE) is a means of transport that provides massively scalable unidirectional multicast transport. To achieve this functionality, FLUTE builds FEC and ALC building blocks.
전자 서비스 가이드(ESG)는 "프로그램들", 세션들, 서비스들, 및 방송 서비스가 제공하는 다른 정보를 기술하기 위해 사용되는 한 세트의 메타데이터이다. ESG는, 예를 들면, 프로그램들, 서비스들, 비용 등에 관한 정보를 기기 사용자에게 제공한다. ESG는 또한 기기가 서비스들을 받을 수 있도록 하는 정보를 기기에 제공한다.An electronic service guide (ESG) is a set of metadata used to describe "programs", sessions, services, and other information that a broadcast service provides. The ESG, for example, provides the device user with information about programs, services, costs, and the like. The ESG also provides the device with information that allows the device to receive services.
서비스 안내방송/기술(description)을 전송하기 위해 FLUTE를 사용할 때, 세션 레벨(또는 더 높거나 낮은) 그룹화 매개변수를 이용하여 ESG의 다른 단편들(또 는 부분들)을 그룹화하는(관련시키는) 방법을 가지는 것이 바람직하다. 부가하여, 메타데이터 외의 객체들과 ESG 요소들을 서로 관련시키는 것도 바람직하다. 일 예는 동일 세션에서 전송되고 함께 영화 애플리케이션을 형성하는 오디오 및 비디오 파일들이다. 불행히도, 그런 전송 방법들(뿐 아니라 수신기들 및 전송기들)은 그룹화 능력을 현재 제공하지 않는다.When using FLUTE to send service announcements / descriptions, group (relate) other fragments (or parts) of the ESG using session level (or higher or lower) grouping parameters. It is desirable to have a method. In addition, it is also desirable to relate ESG elements with objects other than metadata. One example is audio and video files transmitted in the same session and together forming a movie application. Unfortunately, such transmission methods (as well as receivers and transmitters) currently do not provide grouping capability.
본 발명은 객체 배달 세션, 이를테면 FLUTE 세션에 의해 제공되는 객체들을 그룹화하는 기법을 제공한다. 본 발명의 양태들에 따르면, 방법, 장치 및 컴퓨터 프로그램 생성물이 객체 배달 세션에 가입할 수도 있다. 이 세션으로부터, 세션에 의해 제공된 복수 개의 객체들의 기술(description)이 수신된다. 이 기술은 복수 개의 객체들의 하나 이상의 그룹화(grouping)을 표시한다. 흥미있는 객체는 복수 개의 객체들로부터 결정된다. 이 결정 하에, 복수 개의 객체들 중의 하나 이상은 흥미있는 객체 및 복수 개의 객체들의 기술에 기초하여 다운로딩을 위해 식별된다.The present invention provides a technique for grouping objects provided by an object delivery session, such as a FLUTE session. According to aspects of the present invention, a method, apparatus and computer program product may subscribe to an object delivery session. From this session, a description of a plurality of objects provided by the session is received. This technique represents one or more groupings of a plurality of objects. The object of interest is determined from a plurality of objects. Under this determination, one or more of the plurality of objects are identified for downloading based on the object of interest and the description of the plurality of objects.
본 발명의 추가 양태들에 따르면, 방법, 장치, 및 컴퓨터 프로그램 생성물은 객체 배달 세션에 가입할 수 있고, 그 세션으로부터 세션에 의해 제공되는 복수 개의 객체들의 기술을 수신할 수 있는데, 이 기술은 복수 개의 객체들의 하나 이상의 그룹화를 표시한다. 목록이 하나 이상의 그룹화들 중의 하나에 상응하여 저장된다. 이 목록은 복수 개의 객체들 중의 어느 것이 상응하는 그룹화에 속하는 지를 표시할 수 있다. 다르게는, 이 목록은 복수 개의 객체들 중의 어느 것이 상응하는 그룹화에 속하고 있고 현재 점유되지 않았음을 표시할 수 있다. 부가하여, 이 목록으로부터의 하나 이상의 객체는 선택되고 다운로드 될 수 있다.According to further aspects of the present invention, a method, apparatus, and computer program product may subscribe to an object delivery session and receive a description of a plurality of objects provided by the session from the session, wherein the technology Represents one or more groupings of objects. The list is stored corresponding to one of the one or more groupings. This list may indicate which of the plurality of objects belongs to the corresponding grouping. Alternatively, this list may indicate which of the plurality of objects belongs to the corresponding grouping and is not currently occupied. In addition, one or more objects from this list can be selected and downloaded.
또한, 본 발명은 정보원으로부터 객체 배달 세션에 의해 제공된 객체들에 상응하는 하나 이상의 식별자들을 수신하는 방법, 장치, 및 컴퓨터 프로그램 생성물을 제공한다. 이 정보원은 객체 배달 세션으로부터 대역 밖에 있다. 하나 이상의 식별자에 기초하여, 흥미있는 객체가 복수 개의 객체들로부터 결정된다. 부가하여, 객체 배달 세션에는 이 세션에 의해 제공된 복수 개의 객체들의 기술이 수신되도록 가입될지도 모른다. 이 기술은 복수 개의 객체들의 하나 이상의 그룹화를 표시한다. 흥미있는 객체와 복수 개의 객체들의 기술에 기초하여, 객체들 중의 하나 이상은 다운로딩을 위해 식별된다.The present invention also provides a method, apparatus, and computer program product for receiving one or more identifiers corresponding to objects provided by an object delivery session from an information source. This source is out of band from the object delivery session. Based on one or more identifiers, an object of interest is determined from the plurality of objects. In addition, an object delivery session may be subscribed to receive a description of a plurality of objects provided by this session. This technique represents one or more groupings of a plurality of objects. Based on the object of interest and the description of the plurality of objects, one or more of the objects are identified for downloading.
본 발명의 추가 양태들에 따르면, 기기는 디스플레이와 클라이언트를 구비한다. 디스플레이는 다수의 메타데이터 단편들을 가지는 전자 서비스 가이드(ESG)를 사용자에게 제공한다. 클라이언트는 객체 배달 세션(이를테면 FLUTE 세션)으로부터 메타데이터 단편들을 수신한다. 부가하여, 클라이언트는 세션에 의해 제공된 객체들의 기술(이를테면 파일 배달 테이블(FDT) 인스턴스)을 수신한다. 이 기술은 메타데이터의 하나 이상의 그룹화를 표시한다.According to further aspects of the invention, the device has a display and a client. The display provides the user with an electronic service guide (ESG) having multiple metadata fragments. The client receives metadata fragments from an object delivery session (such as a FLUTE session). In addition, the client receives a description of the objects provided by the session (such as a file delivery table (FDT) instance). This technique represents one or more groupings of metadata.
부가하여, 본 발명은 저장부 및 통신부를 가지는 세션 제공자를 제공한다. 저장부는 복수 개의 객체들, 그리고 복수 개의 객체들의 하나 이상의 그룹화를 표시하는 기술을 가진다. 복수 개의 객체들과 기술은 배달 세션과 연관된다. 통신부는 복수 개의 객체들과 기술을 세션의 하나 이상의 클라이언트에 전송한다.In addition, the present invention provides a session provider having a storage unit and a communication unit. The storage has a technique for displaying a plurality of objects and one or more groupings of the plurality of objects. Multiple objects and descriptions are associated with a delivery session. The communication unit transmits the plurality of objects and technologies to one or more clients of the session.
본 발명의 추가 특징들 및 이점들은 다음 설명과 첨부 도면들로부터 명백하게 될 것이다.Further features and advantages of the invention will be apparent from the following description and the accompanying drawings.
도면들에서, 유사한 참조번호들은 대체로 동일한, 기능적으로 유사한, 및/또는 구조적으로 유사한 요소들을 표시한다. 요소가 처음 나타나는 도면들은 참조번호의 최좌측 숫자(들)에 의해 표시된다. 본 발명은 다음의 첨부 도면들을 참조하여 기술될 것인데:In the drawings, like numerals refer to generally identical, functionally similar, and / or structurally similar elements. The figures in which the element first appears are indicated by the leftmost digit (s) of the reference number. The invention will be described with reference to the following attached drawings:
도 1은 본 발명의 실시예에 따른 동작 환경의 도면이며;1 is a diagram of an operating environment in accordance with an embodiment of the present invention;
도 2a 및 2b는 본 발명의 실시예에 따른 전자 서비스 가이드의 도면들이며;2A and 2B are diagrams of an electronic service guide according to an embodiment of the present invention;
도 3은 본 발명의 실시예에 따른, 배달 세션에서 객체들의 그룹화를 보이는 도면이며;3 illustrates grouping of objects in a delivery session, in accordance with an embodiment of the present invention;
도 4는 본 발명의 실시예에 따른, 기기가 여러 가지 객체들을 얻는 동작의 흐름도이며;4 is a flowchart of an operation in which a device obtains various objects according to an embodiment of the present invention;
도 5는 본 발명의 양태들에 따른 단말기 구조를 보이는 도면이며; 그리고5 shows a terminal structure in accordance with aspects of the present invention; And
도 6은 본 발명의 양태들에 따른 단말기 구현예의 도면이다.6 is a diagram of a terminal implementation in accordance with aspects of the present invention.
I. 동작 환경I. Operating Environment
본 발명을 상세하게 기술하기 전에, 본 발명이 채용될 수 있는 환경을 먼저 설명하는 것은 도움이 된다. 따라서, 도 1은 본 발명의 실시예에 따른, 조작 환경의 도면이다. 이 환경에서, 정보는 세션 제공자(102)로부터 다수의 단말기들(106)에 전송된다.Before describing the invention in detail, it is helpful to first describe the environment in which the invention may be employed. 1 is a diagram of an operating environment, in accordance with an embodiment of the present invention. In this environment, information is sent from the
세션 제공자(102)는 멀티캐스트 세션(이를 테면 FLUTE 세션) 형태로 정보를 전송한다. 이 정보는, 예를 들면, ESG, 비디오 브로드캐스트 등일 수 있는 다수의 객체들 또는 파일들을 포함할 수 있다. 부가하여, 이 정보는 객체들의 기술들과 객체들에 관한 그룹화 정보를 포함할 수 있다. 도 1에 보인 것처럼, 세션 제공자(102)는 저장부(108)와 통신부(110)를 포함한다. 이 부들은 하드웨어, 소프트웨어, 펌웨어 또는 그것들의 어떠한 조합으로도 구현될 수 있다.
저장부(108)는 다수의 객체들(예컨대, 파일들, 메타데이터 단편들, 및/또는 메타데이터 엔벨로프들)과, 복수 개의 객체들의 하나 이상의 그룹화를 표시하는 기술을 저장할 수 있다. 복수 개의 객체들과 기술은 배달 세션과 연관된다. 통신부(110)는 복수 개의 객체들과 기술을 세션의 클라이언트들에 전송한다.The storage 108 can store a number of objects (eg, files, metadata fragments, and / or metadata envelopes) and a technique for displaying one or more groupings of the plurality of objects. Multiple objects and descriptions are associated with a delivery session. The
예를 들어, 정보는 복수 개의 배포망들(104)을 가로질러 단말기에 송신될 수 있다. 이 배포망들은 DVB 네트워크(104a), WLAN 네트워크(104b), 블루투스 네트워크(104c), 셀룰러 네트워크(104d), 및 케이블 네트워크(예컨대, 케이블 통한 데이터 서비스 인터페이스 규격(DOCSIS)네트워크)(104e)를 포함한다. 따라서, 단말기들(106)은 여러 가지 구현물들로, 이를테면 모바일 핸드셋들, 셋톱 박스들 등으로 존재할 수 있다. 비록 보이진 않았지만, 하나 이상의 중간 네트워크(이를 테면 인터넷)가 세션 제공자(102)와 배포망들(104) 사이에 존재할 수 있다.For example, the information may be sent to the terminal across the plurality of distribution networks 104. These distribution networks include
II. 전자 서비스 가이드II. Electronic service guide
ESG 정보는 사용자 단말기에 하나 이상의 메타데이터로서 전송된다. 메타데이터 단편은 서비스의 기술을 담고 있을 수 있는 메타데이터(예컨대, SDP, XML 등) 이다. 메타데이터 엔벨로프(보통 XML)는 메타데이터 정보(즉, 메타데이터 단편)를 개작, 갱신 및 만료(또는 현행 정보를 유지)하기 위해 이용될 수 있다.The ESG information is sent to the user terminal as one or more metadata. Metadata fragments are metadata (eg, SDP, XML, etc.) that may contain a description of a service. Metadata envelopes (usually XML) may be used to modify, update, and expire (or maintain current information) metadata information (ie, metadata fragments).
도 2a는 전형적인 ESG(200)를 보이는 도면이다. 도 2에 보인 것처럼, ESG(200)는 다수 레벨들을 가지는 트리 계층으로 배치된 정보를 포함한다. 이 레벨들은 루트 레벨(202), 카테고리 레벨(204), 서비스 포털 레벨(206), 서비스 레벨(208), 세션 레벨(209), 및 서비스 항목 레벨(210)을 포함한다.2A shows a
ESG(200)는 기기에 의해 수신될 수 있고 본 발명의 기법들에 따라 그것의 사용자에게 제시될 수 있다. 예를 들면, 도 2b는 본 발명의 실시예에 따라 무선 통신 기기(250)에 의해 디스플레이되는 ESG(200)의 보기(view)이다.
III. ALC, LCT, 및 FLUTEIII. ALC, LCT, and FLUTE
ALC는 M. Luby의 "비동기 계층 부호화(ALC) 프로토콜 인스턴스화", RFC 3450, 인터넷 소사이어티, 2002년 12월("RFC 3450")에 기재된 프로토콜이다. 이 문서는 완전히 참고문헌으로 통합되고, http://www.ietf.org/rfc/rfc3450.txt에서 다운로드될 수 있다.ALC is a protocol described in M. Luby's "Asynchronous Layer Coding (ALC) Protocol Instantiation", RFC 3450, Internet Society, December 2002 ("RFC 3450"). This document is fully incorporated by reference and can be downloaded from http://www.ietf.org/rfc/rfc3450.txt.
ALC는 대규모 확장 가능한데(사용자 수의 견지에서) 업링크 시그널링이 요구되지 않기 때문이고 그래서 어떠한 수의 부가 수신기들이라도 시스템에 부가적인 요구를 부과하지 않는다.ALC is massively scalable (in terms of number of users) since no uplink signaling is required so no number of additional receivers impose additional demands on the system.
ALC는 단일 송신기로부터 무제한의 수의 공존하는 수신기들에 콘텐츠의 정체 제어 신뢰성 비동기 배달을 제공한다. 이것은 계층 부호화 전송(LCT) 구축 블록, 다중 비율 정체 제어 구축 블록, 순방향 오류 정정(FEC) 구축 블록을 이용하는 것 에 의해 수행된다. ALC는 IP 멀티캐스트 네트워크 서비스와 함께 사용되기 위해 디자인되고, 수신기들부터 송신기로의 피드백 패킷들을 필요로 하지 않는다. 객체들이라고 불리는 정보는 ALC 세션에서 송신기로부터 하나 이상의 수신기에 전송된다.ALC provides congestion control reliable asynchronous delivery of content from a single transmitter to an unlimited number of coexisting receivers. This is done by using layer coded transmission (LCT) building blocks, multi-rate congestion control building blocks, and forward error correction (FEC) building blocks. ALC is designed for use with IP multicast network services and does not require feedback packets from receivers to transmitters. Information called objects are transmitted from a transmitter to one or more receivers in an ALC session.
[0030] [0030]
ALC는 여러 가지 다른 신뢰성 콘텐츠 배달 서비스 모델들을 지원할 수 있다. 하나의 그러한 모델은 푸시 서비스 모델이라고 불리며, 선택된 그룹의 수신기들에의 객체들의 병발하는 배달에 관련된다. 다른 모델은 주문형 콘텐츠 배달 서비스 모델이라고 불린다. 이 모델에서, 송신기는 어떤 기간 동안 객체(예컨대, 소프트웨어)를 전송한다. 이 기간 동안, 수신기들은 세션에 가입할 수 있고 그 객체를 복원할 수 있다. 이 기간은 객체를 다운로드하기 위해 수신기에 요구된 시간보다 기간적으로 훨씬 더 길 수도 있다. 그래서, 수신기들은 그러한 기간 동안 세션에 가입하고 그 수신기들이 객체를 복구하기에 충분한 패킷들을 수신하였을 때 그 세션을 떠난다. 그런 세션들은 예를 들면 웹 서버를 통해 얻어질 수 있는 세션 기술에 의해 식별된다. ALC는 사용자 데이터그램 프로토콜(UDP), 그것에 뒤따르는 LCT 헤더, FEC 페이로드 ID, 및 패킷 페이로드를 포함하는 패킷 포맷을 사용한다.ALC can support several different reliable content delivery service models. One such model is called a push service model and involves the concurrent delivery of objects to receivers of a selected group. Another model is called an on-demand content delivery service model. In this model, a transmitter transmits an object (eg, software) for some period of time. During this period, receivers can join the session and restore the object. This period may be much longer in duration than the time required for the receiver to download the object. Thus, receivers join the session during that period and leave the session when the receivers receive enough packets to recover the object. Such sessions are identified by, for example, session techniques that can be obtained through a web server. ALC uses a packet format that includes a User Datagram Protocol (UDP), followed by an LCT header, an FEC payload ID, and a packet payload.
LCT는 Luby 등의 "계층 부호화 전송(LCT) 구축 블록", RFC 3451, 인터넷 소사이어티, 2002년 12월에 기술되어 있다. 이 문서는 완전히 참고문헌으로 통합되고, http://www.ietf.org/rfc/rfc3451.txt.에서 다운로드될 수 있다. LCT는 전송 레벨 지원을 신뢰성 콘텐츠 배달 및 스트림 배달 프로토콜들에 제공한다. LCT 세션은 단일 송신기에서 시작되는 하나 이상의 관련된 LCT 채널을 포함한다. 이 채널들 은 LCT 헤더들을 담고 있는 패킷을 전달하기 위해 어떤 기간 동안 사용된다. 이 패킷들은 하나 이상의 수신기에 의해 수신될 수 있다. 비록 LCT가 송신기부터 수신기(들)로의 접속을 필요로 하지만, 그것은 수신기(들)부터 송신기로의 접속을 필요로 하지 않는다. 따라서, LCT는 유니캐스트 및 멀티캐스트 배달 둘 다에 사용될 수 있다.LCT is described in Luby et al. "LCT Construction Block", RFC 3451, Internet Society, December 2002. This document is incorporated by reference in its entirety and can be downloaded from http://www.ietf.org/rfc/rfc3451.txt. LCT provides transport level support for reliable content delivery and stream delivery protocols. An LCT session includes one or more related LCT channels that originate at a single transmitter. These channels are used for some period of time to carry a packet containing LCT headers. These packets may be received by one or more receivers. Although the LCT requires a connection from the transmitter to the receiver (s), it does not require a connection from the receiver (s) to the transmitter. Thus, LCT can be used for both unicast and multicast delivery.
FLUTE는 인터넷을 통한 파일들의 단방향 배달을 제공하기 위해 ALC에 구축하는 프로토콜이다. FLUTE는 Paila 등에 의한 2004년 6월의 "FLUTE - 단방향 전송을 통한 파일 배달" 라는 명칭의 인터넷 초안에 기재되어 있다. 이 문서는 완전히 참고문헌으로 통합되고, http://www.ietf.org/internet-drafts/draft-ietf-rmt-flute-08.txt.에서 다운로드될 수 있다.FLUTE is a protocol built in ALC to provide one-way delivery of files over the Internet. FLUTE is described in an Internet draft by Paila et al. In June 2004 entitled "FLUTE-file delivery via one-way transfer." This document is incorporated by reference in its entirety and can be downloaded from http://www.ietf.org/internet-drafts/draft-ietf-rmt-flute-08.txt.
앞에서 설명된 바와 같이, ALC는 임의의 2진 객체들의 전송을 정의한다. 그러나, 파일 배달 애플리케이션들의 경우, 객체들의 단순한 전송은 전송되는 객체들이 실제로 나타내는 것이 무엇인지를 기술하는 필요한 정보를 수신 기기들에 제공하지 않는다. FLUTE는 이 필요한 정보에 파일들의 속성들을 ALC 개념들에 신호하고 맵핑하는 메커니즘을 제공한다.As described above, ALC defines the transmission of arbitrary binary objects. However, for file delivery applications, a simple transfer of objects does not provide the receiving devices with the necessary information describing what the objects being transmitted actually represent. FLUTE provides a mechanism to signal and map attributes of files to ALC concepts in this necessary information.
ALC/LCT 세션은 하나 이상의 객체를 위해 ALC/LCT 헤더를 가지는 패킷들을 전송하는 단일 송신기와 연관된 한 세트의 논리적으로 그룹화된 ALC/LCT 채널들을 포함한다. ALC/LCT 채널은 송신기 및 이 송신기에 의한 채널과 연관된 주소의 조합에 의해 정의된다. 수신기는 채널에 가입하여 송신기에 의해 채널에 송신된 데이터 패킷들을 수신하기 시작하고, 수신기는 채널로부터 떠나서 그 채널로부터 데이터 패킷들을 수신하는 것을 그만둔다.An ALC / LCT session includes a set of logically grouped ALC / LCT channels associated with a single transmitter that transmits packets with an ALC / LCT header for one or more objects. An ALC / LCT channel is defined by a combination of a transmitter and an address associated with the channel by that transmitter. The receiver joins the channel and begins to receive data packets sent to the channel by the transmitter, and the receiver stops receiving data packets from the channel away from the channel.
ALC/LCT 헤더로 운반되는 필드들 중의 하나는 전송 세션 식별자(TSI)이다. TSI는 소스 IP 주소에 의해 스코프되고, 세션은 소스 IP 주소 및 TSI의 쌍(pairing)에 의해 고유하게 식별된다. 따라서, 수신 기기는 이 쌍(이것은 각 패킷으로 운반된다)을 이용하여 패킷에 상응하는 세션을 식별할 수 있다.One of the fields carried in the ALC / LCT header is the transport session identifier (TSI). TSI is scoped by source IP address, and sessions are uniquely identified by pairing of source IP address and TSI. Thus, the receiving device can use this pair (which is carried in each packet) to identify the session corresponding to the packet.
다수의 객체들은 한 세션으로 전송될 수 있다. 객체들을 구별할 수 있게 하기 위해, ALC/LCT 헤더는 전송 객체 식별자(TOI) 필드를 포함할 수 있다. FLUTE 세션들에서, TOI는 모든 전송되는 패킷들을 위해 필요하다. TOI는 패킷과 연관되는 세션의 특정한 객체를 표시하는 값을 운반한다. 각 객체는 FLUTE 세션의 범위 내에 고유한 TOI를 가진다.Multiple objects can be sent in one session. In order to be able to distinguish objects, the ALC / LCT header may include a transport object identifier (TOI) field. In FLUTE sessions, a TOI is needed for all transmitted packets. The TOI carries a value that indicates the specific object of the session associated with the packet. Each object has a unique TOI within the scope of the FLUTE session.
FLUTE에서, '0'의 TOI 필드 값은 세션 동안 여러 번 반복될 수 있는 파일 배달 테이블(FDT)의 배달을 의미한다. 더욱이, 각 FDT 인스턴스는 FDT 인스턴스 ID에 의해 고유하게 식별된다. 따라서, FLUTE 세션 동안, 패킷들은 파일 객체들을 위한 TOI에 의해, 그리고 FDT 인스턴스 객체들을 위한 FDT 인스턴스 ID 및 TOI 둘 다에 의해 스코프된다.In FLUTE, a TOI field value of '0' means delivery of a file delivery table (FDT) that can be repeated many times during the session. Moreover, each FDT instance is uniquely identified by an FDT instance ID. Thus, during a FLUTE session, packets are scoped by the TOI for file objects and by both the FDT instance ID and TOI for FDT instance objects.
파일 배달 테이블(FDT)은 FLUTE 파일 배달 세션 내에 배달될 수 있는 파일들에 관한 기술 정보(또는 속성들)를 제공한다. 구현의 견지에서, FLUTE FDT는 각 엔트리가 세션에서 배달하려는 파일을 나타내는 한 세트의 파일 기술 엔트리들이다. 각 파일 기술 엔트리는 특정 속성들을 포함하는 것이 요구된다. 이 요구된 속성들은 엔트리가 기술하는 파일을 위한 TOI와 그 파일을 식별하는 URI를 포함한다.The file delivery table (FDT) provides descriptive information (or attributes) about files that can be delivered within a FLUTE file delivery session. In terms of implementation, the FLUTE FDT is a set of file description entries in which each entry represents a file to deliver in the session. Each file description entry is required to contain specific attributes. These required attributes include the TOI for the file described by the entry and the URI identifying the file.
FLUTE FDT로 운반될 수 있는 추가 속성들의 예들은 파일들을 위한 순방향 오류 정정(FEC) 객체 전송 정보(FEC 부호화 ID 및 만일 관련되면 FEC 인스턴스 ID를 포함함)를 포함한다. 파일 속성들의 다른 예들은 파일을 운반하는 전송 객체의 크기, 및 모든 채널들에 패킷들을 송신하는 통합 속도를 포함한다. 또한, 파일을 위한 TOI 속성들의 예들은 그 파일의 MIME 매체 유형, 그 파일의 크기, 그 파일의 부호화, 및 그 파일의 메시지 다이제스트를 포함한다.Examples of additional attributes that may be carried in the FLUTE FDT include forward error correction (FEC) object transfer information (including the FEC encoding ID and, if relevant, the FEC instance ID) for the files. Other examples of file attributes include the size of the transport object carrying the file, and the aggregation speed of sending packets on all channels. Also, examples of TOI attributes for a file include the MIME media type of the file, the size of the file, the encoding of the file, and the message digest of the file.
파일 배달 세션의 수신기(예컨대, 단말기)는 FDT 데이터베이스를 수신된 파일 기술 엔트리들을 위해 보유한다. 수신기는 그 데이터베이스를 예를 들면 FDT 인스턴스들의 수신에 의거하여 유지한다. 그래서, 어떤 정해진 시간에 FDT 데이터베이스의 내용은 파일 배달 세션의 FDT의 수신기의 현재의 보기를 표시한다.The receiver (eg, terminal) of the file delivery session maintains an FDT database for the received file description entries. The receiver maintains the database based on the reception of FDT instances, for example. Thus, at any given time the contents of the FDT database indicate the current view of the receiver of the FDT of the file delivery session.
도 4의 단계들은 제한의 목적이 아니라 예시의 목적으로 제공된다. 따라서, 단계들의 다른 순서, 뿐 아니라 특정 단계들의 부가 및/또는 제거는 본 발명의 범위 내에 있다.The steps of FIG. 4 are provided for purposes of illustration and not of limitation. Thus, other orders of steps, as well as addition and / or removal of certain steps, are within the scope of the present invention.
IV. 객체들의 그룹화IV. Grouping of objects
본 발명은 FLUTE 세션과 같은 세션으로 전송되는 각종 파일들 및/또는 객체들을 그룹화하기 위한 메커니즘들을 제공한다. 실시예들에서, 이 메커니즘은 새로운 속성의 FLUTE FDT에의 편입을 포함한다. 이 새로운 속성은 단일 세션 동안 전송되는 각종 파일들 및/또는 객체들의 그룹화를 신호한다. 이 속성의 수신 하에, 수신 기기에는, 세션 동안 전송된 특정 파일들 및/또는 객체들이 관련됨을 그리고 이 파일들 및/또는 객체들이 서로 연계되어 수신되어야 함이 신호된다.The present invention provides mechanisms for grouping various files and / or objects transmitted in a session, such as a FLUTE session. In embodiments, this mechanism includes incorporation of the new attribute into the FLUTE FDT. This new attribute signals the grouping of various files and / or objects transmitted during a single session. Upon receipt of this attribute, the receiving device is signaled that the particular files and / or objects transmitted during the session are related and that these files and / or objects should be received in association with each other.
본 발명의 그룹화 메커니즘들은 전송된 데이터의 효율적인 배달 및 복원을 수신기에서 제공한다. 예를 들면, 그런 그룹화 메커니즘들은 메타데이터 단편들로부터 복합 ESG를 형성하기 위해 사용될 수 있다. ESG는 정보를 사용자뿐 아니라 가용 서비스들에 관한 단말에 제공하기 위해 사용된다.The grouping mechanisms of the present invention provide for efficient delivery and retrieval of transmitted data at the receiver. For example, such grouping mechanisms can be used to form a composite ESG from metadata fragments. The ESG is used to provide information to the terminal regarding available services as well as the user.
도 3은 FLUTE 세션에서의 전송의 순서를 시간 축(301)을 따라 표시하고 있는 본 발명의 실시예에 따른 도면이다. 이 전송은 FDT(302), 객체 304(객체 X라고도 함), 객체 306(객체 Y라고도 함), 및 객체 308(객체 Z라고도 함)을 포함한다.3 is a diagram according to an embodiment of the present invention indicating the order of transmission in a FLUTE session along the
FDT(302)는 세션에 의해 제공된 객체를 식별한다. 예를 들어, FDT(302)는 객체 X, 객체 Y, 및 객체 Z를 식별한다. 부가하여, FDT(302)는 이 객체들에 관한 관계 정보를 제공한다. 이 관계 정보는 객체 그룹화의 형태로 있다. 특히, FDT(302)는 2개의 그룹인 그룹 1 및 그룹 2의 존재를 표시한다. 도 3에 보인 것처럼, 객체 X와 객체 Y는 그룹 1에 속하는 반면, 객체 Z는 그룹 2에 속하고 있다.
도 3에 보인 것처럼, FDT(302)가 먼저 전송되고, 그 후에 객체들(304, 306 및 308)의 순차 전송이 일어난다. 그러나, 전송들은 다른 순서들로 있을 수 있다.As shown in FIG. 3, the
도 4는 기기가 각종 객체들을 FLUTE 세션 제공자로부터 얻는 본 발명의 실시예에 따른 전형적인 동작의 흐름도이다. 이 객체들은 기기가 복합 메타데이터 또는 ESG를 구축하기 위해 사용할 수 있는 메타데이터 단편들일 수 있다. 이 동작은 기기가 FLUTE 세션에 가입하는 단계 402를 포함한다. 이것은, 기기가 더 일찍 수신했던 그리고 이 기기가 정확한 세션 세부사항(이를 테면 소스 IP 주소, 포트 번호 등)을 알게 하는 일부(예컨대, 대역 외) 정보에 기초를 할 수 있다. 대역 외 정보 는 다른 소스로부터 및/또는 다른 통신 매체를 통하여 수신되는 정보일 수 있다.4 is a flowchart of an exemplary operation in accordance with an embodiment of the present invention in which a device obtains various objects from a FLUTE session provider. These objects may be metadata fragments that the device may use to build complex metadata or ESG. This operation includes a
단계 404에서, 기기는 세션 동안 FDT를 얻는다(수신한다). 일단 얻어지면, 기기는 단계 406에서 FDT를 파싱한다.In
단계 408에서, 기기는 세션이 어떤 흥미있는 정보를 제공하는지를 결정한다. ESG들의 경우, 흥미있는 정보의 예들은 ESG의 엔벨로프, 및 메타데이터 단편들(또는 ESG의 부분들)을 포함한다. 이 결정은 FDT에 기초할 수 있다. 대신에, 이 결정은 대역 외 소스로부터 수신되는 정보에 기초할 수 있다. 만일 세션이 어떤 흥미있는 정보를 제공하면, 동작은 단계 410으로 진행한다. 그렇지 않으면, 동작은 기기가 객체 배달 세션에의 참가를 중단하는 옵션 단계 409로 진행할 수 있다.In
단계 410에서, 기기는 그것이 흥미있는 정보에 기초하여 세션으로부터 얻을 필요가 있는 정보(예컨대, 객체들)를 식별한다. 이 식별된 정보는 FLUTE 세션 동안 전송되고 있는 전체 정보의 모두 또는 일부를 포함한다. FDT의 수신 하에, 기기는 특정의 흥미있는 객체가 다른 객체들을 가지는 그룹에 속하고 있다고 결정할 수 있다. 따라서, 실시예들에서, 단계 408에서 결정된 흥미있는 정보와 그룹 멤버십을 공유하는 세션으로부터 하나 이상의 객체를 얻는 것이 필요함을 기기는 단계 410에서 식별한다.In
단계 412는 단계 410을 따른다. 이 단계에서, 기기는 단계 408에서 결정된 흥미있는 정보와 그룹 멤버십을 공유하면서 단계 410에서 식별했던 하나 이상의 객체를 다운로드한다.Step 412 follows
단계 414에서, 기기는 운반된 객체 및 그룹화 정보에 기초한 정보를 FDT에 저장한다. 이 정보는 어떤 그룹들에 속하는 객체들의 컴파일일 수도 있다. 따라서, 그런 컴파일은, 각 목록이 하나 이상의 특정한 그룹에 속하는 이를 테면 URI들과 같은 하나 이상의 객체("그룹 공통 객체"라고도 함)를 포함할 수 있는 하나 이상의 목록 형태로 있을 수 있다. 예를 들어, 목록은 2개의 특정한 그룹들에 속하는 세션 동안 전송되고 있는 객체들 모두를 포함할 수 있다. 그 다음에 기기는 (단계 410에서) 이 목록 내의 모든 객체들을 다운로드할 것을 선택할 수 있다.In
어떤 상황들에서, 기기는 세션 동안 전송된 객체들의 일부를 자신 소유로 이미 가지고(예컨대, 메모리에 저장됨) 있을 수 있다. 이것이 그 경우일 때, 기기는 기기가 소유하지 않은 그룹들 내의 URI와 같은 객체들("새로운 그룹 공통 객체들)에 관해 FDT로부터의 정보를 컴파일할 수 있다. 위의 경우에서처럼, 그런 컴파일들은 각 목록이 하나 이상의 특정한 그룹에 상응하는 목록들의 형태로 있을 수도 있다. 그러면 기기는 세션 동안 이 목록을 형성하는 객체들을 다운로드할 수 있다.In some situations, the device may already have its own (eg, stored in memory) of some of the objects sent during the session. When this is the case, the device can compile information from the FDT about objects such as URIs ("new group common objects") in groups not owned by the device. As in the case above, such compilations The list may be in the form of lists corresponding to one or more specific groups, and the device may then download the objects that form this list during the session.
이 특징은 갱신된 메타데이터 단편들이 세션 내에서 또는 다수의 세션들의 부분으로서 종종 전송될 수 있는 ESG들의 경우에 특히 유용하다. "새로운" 및 "기존의" 메타데이터 단편들 사이의 구별은 메타데이터 엔벨로프에, 단편 자체에, 또는 다른 것으로(이를 테면 FDT 또는 대역 외) 제공될 수 있는 개작 정보에 기초하여 행해질 수 있다.This feature is particularly useful in the case of ESGs, where updated metadata fragments can often be sent within a session or as part of multiple sessions. The distinction between "new" and "existing" metadata fragments may be made based on adaptation information that may be provided in the metadata envelope, the fragment itself, or elsewhere (such as an FDT or out of band).
단계 410의 정보의 식별은 FLUTE 세션에 의해 제공된 각종 객체들의 그룹 멤버십을 식별하는 것에 기초를 둘 수도 있다. 도 3의 전형적인 세션을 참조하면, FLUTE 세션은 동일한 그룹(즉 그룹 1)에 속하는 객체 X와 객체 Y를 전송할 수 있 다. 예의 사용예로서, 객체 X는 메타데이터 엔벨로프일 수 있고 객체 Y는 객체 X에 의해 참조되는 메타데이터 단편일 수 있다.The identification of the information in
따라서, 단계 408에서, 기기는 객체 X가 흥미있다고 결정하고, 그러므로 그것을 단계 410에서 필요한 객체로서 식별한다. 그러나, 객체 X와 객체 Y가 동일한 그룹에 속하고 있으므로, 기기 역시 단계 410에서 객체 Y를 필요한 객체로 식별한다. 그러나, 단계 408의 수행을 통하여, 기기는 객체 Z(그룹 1에 속하지 않음)가 흥미없다고 결정할 수도 있다. 이 결정은 여러 가지 이유 때문에 있을지도 모른다. 예를 들면, 객체 Z는 메타데이터 엔벨로프(객체 X)에 의해 참조되는 동안 수신기가 단계 408에서 그것이 흥미없다고 결정했던 일부 소프트웨어 코드 또는 다른 메타데이터 단편일 수 있다. 더욱이, 객체 Z가 객체 X의 그룹과는 다른 그룹에 속하므로, 기기는 단계 410에서 다운로딩을 위해 그것을 식별하지 않는다. 그 결과, 이 예에서, 기기는 단계 412에서 객체 X와 객체 Y를 다운로드한다.Thus, in
본 발명의 그룹화 메커니즘은 "하나를 수신하면, 모두를 수신한다"는 형태로 사용될 수 있다. 즉, 만일 수신기가 전송되고 있는 객체들 중의 어느 것을 그룹의 부분으로서 수신하면, 수신기는 이 그룹의 부분인 세션 동안 전송되고 있는 객체들을 모든 수신해야만 한다. 이 기능은 몇 개의 애플리케이션들, 예컨대 비디오 다운로드 및 ESG 다운로드에서 유용하다. "하나를 수신하면, 모두를 수신한다"는 이 특징의 일 예로서, 단계 408에서 특정 그룹의 한 객체가 기기에 의해 흥미있는 것으로서 결정될 때, 기기는 그 특정 그룹 내의 모든 객체들을 단계 410에서 필요한 것으로서 식별한다.The grouping mechanism of the present invention may be used in the form of “receive one, receive all”. That is, if a receiver receives any of the objects being transmitted as part of a group, the receiver must receive all the objects being transmitted during the session that is part of this group. This feature is useful in several applications, such as video downloads and ESG downloads. As an example of this feature, “receive one, receive all”, when an object of a particular group is determined as interesting by the device at
본 발명의 그룹화 메커니즘은 또한 하나 이상의 메타데이터 단편의 수신을 메타데이터 엔벨로프의 수신과 결부시키기 위해 사용될 수도 있다. 예를 들어, 만일 기기가 단계 408에서 그룹 내 세션의 부분으로서 전송하고 있는 단편을 흥미있다고 식별하면, (이 양태에 따르면) 기기는 그 세션에 전송되고 있는 상응하는 엔벨로프를 단계 410에서 필요한 것으로서 식별할 것이다. The grouping mechanism of the present invention may also be used to associate the receipt of one or more metadata fragments with the receipt of a metadata envelope. For example, if the device identifies an interesting fragment being transmitted as part of a session in the group at
더욱이, 본 발명의 그룹화 메커니즘은 또한 이벤트를 위해 "유발(트리거)"로서 사용될 수도 있다. 예를 들어, ESG를 형성하는 메타데이터 단편들은 그룹의 부분으로서 세션 동안 전송될 수도 있다. 이 그룹의 부분인 모든 객체들의 수신은 기기에서 어떤 동작을 유발하는 데 충분할지도 모른다. 예를 들면, ESG의 경우에, 어떤 정보량의 기기에 의한 수신은 사용자에 대해 화면상의 ESG 정보의 디스플레이를 유발할 것이다. 대신에, 이 정보의 수신은 어쩌면 다른 채널에서 기기에 의한 다른 세션에의 가입을 유발하는 데 충분할지도 모른다.Moreover, the grouping mechanism of the present invention may also be used as a "trigger" for an event. For example, metadata fragments that form an ESG may be transmitted during a session as part of a group. Receipt of all objects that are part of this group may be sufficient to cause some action on the device. For example, in the case of an ESG, the reception of a certain amount of information by the device will cause the display of ESG information on the screen for the user. Instead, the reception of this information may be sufficient to cause a subscription to another session by the device on another channel.
[0060] [0060]
송신기는 어떤 다목적 인터넷 메일 확장(MIME) 유형을 단일 그룹의 부분으로서 보낼지도 모른다. MIME는 비-ASCII 메시지들을 형식화하기 위한 규격이다. 이 특징은 이 객체들을 수신할 때에 그리고 그것들을 적당히 사용할 때에, 이를테면 객체들을 적당한 애플리케이션에 건네줄 때에 수신기를 원조할 수 있다. 그룹화 메커니즘은 MIME 유형들의 사용과 관련하여 사용될 수 있다. 예를 들어, 수신기는 세션 동안 단지 메타데이터 엔벨로프를 처음 다운로드할 수 있다. 그러면, 세션 동안 전송되고 있는 객체들의 MIME 유형들 및 객체가 속하는 그룹들에 기초하여, 수신기 는 일정한 그룹들로부터 일정한 객체들만을 다운로드할 것을 선택할 수도 있다. 예를 들면, FDT를 수신하고 난 후, 수신기는 일정 그룹 X의 부분인 SDP MIME 유형의 객체들만을 수신하기를 선택할 수도 있다. 이 특징은 객체들 또는 파일들이 예를 들면 캐러셀 방법을 사용하여 전송되고 있을 때에 매우 유용하다.The sender may send some general purpose Internet mail extension (MIME) type as part of a single group. MIME is a specification for formatting non-ASCII messages. This feature can assist the receiver when receiving these objects and when using them properly, such as when passing the objects to the appropriate application. Grouping mechanisms can be used in connection with the use of MIME types. For example, the receiver may only download the metadata envelope for the first time during the session. Then, based on the MIME types of the objects being transmitted during the session and the groups to which the object belongs, the receiver may choose to download only certain objects from certain groups. For example, after receiving the FDT, the receiver may choose to receive only objects of SDP MIME type that are part of certain group X. This feature is very useful when objects or files are being transferred using the carousel method, for example.
V. 그룹화 메커니즘들V. Grouping Mechanisms
앞에서 설명된 바와 같이, 본 발명의 실시예들은 FLUTE 구문에 추가하려는 새로운 속성을 제공한다. 특히, 본 발명은 동일한 FLUTE 세션 내에서 배달되는 서로 다른 파일들/객체들을 그룹화하고 관련시키기 위한 각종 기법들을 제공한다. 예를 들어, 실시예들에서, 파일들/객체들은 TOI 레벨에서 그룹화된다. 그러나, 추가 실시예들에서, 파일들/객체들은 세션 레벨에서 그룹화된다. 표 1과 표 2는 객체들이 TOI 레벨에서 그룹화되는 FDT 인스턴스들의 예들을 제공한다.As described above, embodiments of the present invention provide a new attribute to add to the FLUTE syntax. In particular, the present invention provides various techniques for grouping and associating different files / objects delivered within the same FLUTE session. For example, in embodiments, files / objects are grouped at the TOI level. However, in further embodiments, the files / objects are grouped at the session level. Tables 1 and 2 provide examples of FDT instances in which objects are grouped at the TOI level.
표 1의 예는 새로운 속성 <Group = "Group X">의 용법을 표시한다. 이 속성은 FLUTE FDT의 부분으로서 포함된다. 이 속성은 FLUTE 세션에서 전송되고 있는 각 객체의 기술의 부분으로서 포함된다. 즉, 이 속성은 "(TOI마다(per-TOI)" 기반으로 포함된다.The example in Table 1 shows the usage of the new attribute <Group = "Group X">. This attribute is included as part of the FLUTE FDT. This attribute is included as part of the description of each object being transmitted in the FLUTE session. In other words, this attribute is included on a "per-TOI" basis.
하나 이상의 그룹에 속하는 객체들은 이 속성을 사용하여 전송될 수도 있다. 아래의 표 2는 이 특징의 예를 제공하는 FDT 인스턴스이다.Objects belonging to one or more groups may be sent using this attribute. Table 2 below is an FDT instance that provides an example of this feature.
세션에서 객체들의 수신 하에, 수신기는 FDT 정보를 파싱하고 'X'와 동일한 '그룹' 속성을 갖는 객체들이 서로 관계가 있다고 결정한다.Upon receipt of objects in the session, the receiver parses the FDT information and determines that objects with a 'group' attribute equal to 'X' are related to each other.
앞서 설명된 바와 같이, 객체들의 그룹화는 표 1과 표 2에서와 같은 "객체 레벨" 대신에 "세션 레벨"에서 수행될 수도 있다. 아래의 표 3은 세션 레벨에서 그룹화가 행해지는 FLUTE 세션에 배달되는 FDT 인스턴스의 예를 제공한다.As described above, grouping of objects may be performed at the "session level" instead of the "object level" as in Tables 1 and 2. Table 3 below provides an example of an FDT instance delivered to a FLUTE session where grouping is done at the session level.
표 3의 예는 위에서 설명된 <Group = "Group X"> 매개변수의 사용을 보이고 있다. 그러나, 이 경우 매개변수는 세션 레벨에서 사용된다. 즉, FLUTE FDT에서 TOP마다(또는 객체마다) 매개변수를 사용하는 대신에, FLUTE 세션에서 전송되고 있는 객체들의 FDT 기술들은 위에서 보인 바와 같은 단일 <Group = "Group X"> 매개변수 내에서 함께 그룹화된다.The example in Table 3 shows the use of the <Group = "Group X"> parameter described above. However, in this case the parameter is used at the session level. That is, instead of using the per-TOP (or per-object) parameter in the FLUTE FDT, the FDT descriptions of the objects being transmitted in the FLUTE session are grouped together in a single <Group = "Group X"> parameter as shown above. do.
수신 기기가 표 3의 FLUTE FDT를 통하여 파싱할 때, 그것은 FDT의 그룹 X의 부분인 배달된 객체들이 관련되고 있다고 결정한다. 그 다음 수신기는 객체들을 조합할 수도 있다.When the receiving device parses through the FLUTE FDT of Table 3, it determines that delivered objects that are part of group X of the FDT are related. The receiver may then combine the objects.
게다가, 다수의 그룹들은 이 세션 레벨 접근법을 이용하여 단일 FDT에서 규정될 수 있다. 그런 사용 상태의 예는 아래에서 표 4에 제공된다.In addition, multiple groups can be defined in a single FDT using this session level approach. Examples of such usage states are provided in Table 4 below.
본 발명의 양태는 동일한 객체가 다수의 그룹들에 존재할 수 있다는 것이다. 그러한 경우에, 비록 객체(또는 파일 또는 단편)가 세션에서 단일 인스턴스로서 전송되지만, 그것은 위에서 설명된 '그룹' 매개변수를 이용하는 것에 의해 하나 이상의 그룹과 연관된다. 객체들이 다수의 그룹들의 구성원들인 FDT 인스턴스의 예는 아래의 표 5와 표 6에 제공된다. 특히, 표 5는 세션 레벨 그룹화를 채용하는 예를 제공하는 반면, 표 6은 TOI 레벨 그룹화를 채용하는 예를 제공한다.An aspect of the present invention is that the same object may exist in multiple groups. In that case, although the object (or file or fragment) is transferred as a single instance in the session, it is associated with one or more groups by using the 'group' parameter described above. Examples of FDT instances in which objects are members of multiple groups are provided in Tables 5 and 6 below. In particular, Table 5 provides an example employing session level grouping, while Table 6 provides an example employing TOI level grouping.
위의 표 5에 보인 것처럼, 파일 1은 TOI A1의 사용에 의해 세션 내에서 식별된다. 이 파일은 세션 동안 단일 인스턴스로서 전송된다. 그러나, 파일 1이 그룹 X와 그룹 Y에 속하도록 하기 위해 수신 기기는 표 5의 FDT 인스턴스에서 그룹화 정보를 해석한다.As shown in Table 5 above,
아래의 표 6은 동일한 다중 그룹화가 TOI 레벨에서 달성될 수 있다는 것을 보이고 있다. 이 FDT 인스턴스에서, 파일 1의 기술은 파일 1이 그룹 X와 그룹 Y 둘 다에 속함을 수신기에 표시한다. 그래서, 파일 1의 하나의 인스턴스만이 세션 동안 전송되더라도, 수신 기기는 이 FDT 인스턴스로부터 파일 1이 그룹 X와 그룹 Y 둘 다에 속한다고 해석한다.Table 6 below shows that the same multiple grouping can be achieved at the TOI level. In this FDT instance, the description of
VI. 단말기VI. terminal
도 5는 본 발명의 양태들에 따른 단말기 구조를 보이는 도면이다. 이 구조는 세션 클라이언트(502)(이를 테면 ESG 클라이언트), 통신 인터페이스(504g)(예컨대, 블루투스 라디오, WLAN 라디오, DVB 수신기, 또는 케이블 인터페이스), 및 객체 데이터베이스(509)를 포함한다.5 illustrates a terminal structure according to aspects of the present invention. This structure includes a session client 502 (such as an ESG client), a communication interface 504g (eg, a Bluetooth radio, WLAN radio, DVB receiver, or cable interface), and an
도 5에 보인 것처럼, 세션 클라이언트(502)는 통신 인터페이스(504)에 결합된다. 통신 인터페이스(504)는 다른 기기들과의 통신 신호들의 교환(즉 수신 및/또는 전송)을 담당한다. 인터페이스(504)는 통신 모듈(512)과 송수신기(514)를 포함한다. 부가하여, 무선 통신을 채용하는 구조들의 경우, 통신 인터페이스는 안테나(516)를 포함한다.As shown in FIG. 5,
통신 모듈(512)은 링크 셋업, 보안 및 제어에 관련된 기능들을 수행한다. 이 기능들은 상응하는 원격 기기들을 발견하는 것과 하나 이상의 프로토콜에 따라 그것들과 통신하는 것을 포함할 수 있다. 그런 프로토콜들은 블루투스, WLAN, DVB, 케이블(예컨대, DOCSIS), 셀룰러와 같은 통신 기술들을 위한 링크층 프로토콜 및 매체 접근 제어 프로토콜을 포함할 수 있다. 따라서, 모듈(512)은 전송을 위한 기저대역 처리, 이를테면 오류 정정 부호화 및 복호화를 수행한다. 부가하여, 통신 모듈(512)은 물리층 프로토콜들에 따라 원격 기기들에 있는 상응하는 엔티티들과 데이터를 교환한다. 물리층 프로토콜들의 예들은 자동 재전송 요구(ARQ) 프로토콜과 같은 재전송 프로토콜을 포함한다. 또한, 그런 프로토콜들은 (예를 들면 DVB 통신에서) 하나 이상의 시간-슬라이스(time-sliced) 버스트 전송의 수신을 포함할 수 있다.The
송수신기(514)는 도 5의 기기가 원격 기기들과 신호들(예컨대, 블루투스 및/또는 WLAN 신호들)을 수신하고 교환하는 것을 (예를 들면, 안테나(516)를 연계하여) 허용하는 전자기기들을 구비한다. 그런 전자기기들은 변조기, 복조기, 증폭기 및/또는 필터를 구비한다. 도 5에 보인 것처럼, 송수신기(514)는 전송기(518)와 수신기(520)를 구비할 수 있다. 전송기(518)는 신호들의 전송을 제공하는 구성요소들(예컨대, 전자기기들)을 구비하는 반면, 수신기(520)는 신호들의 수신을 제공하는 구성요소들(예컨대, 전자기기들)을 구비한다. 대체 실시예들에서, 기기 구조들은 송수신기(514) 대신에 단지 수신기를 구비할 뿐일 수도 있다.The
통신 모듈(512)은 단말기가 하나 이상의 원격 세션 제공자들과 공유하는 더 상위 층의 프로토콜들에 따라 세션 클라이언트(502)와 정보를 교환한다. 그런 프로토콜들의 예들은 ALC와 FLUTE를 포함한다. 세션 클라이언트(502)는, 예를 들면, ESG 정보(이를테면 메타데이터)를 수신하고 그 ESG 정보를 사용자 인터페이스를 통하여 사용자에게 디스플레이하는 ESG 클라이언트일 수 있다.The
객체 데이터베이스(509)는 세션 제공자들이 제공하는 객체들(예컨대, 파일들)에 관해서 원격 세션 제공자들로부터 수신되는 정보를 저장한다. 그런 정보는 균일 자원 식별자들(URI들)과 같은 객체들을 위한 자원 식별자들, 및 각종 객체들이 속할 수 있는 하나 이상의 그룹에 관한 그룹화 정보를 포함할 수 있다.The
도 5의 구조는 하드웨어, 소프트웨어, 펌웨어, 또는 그것들의 어떠한 조합으로도 구현될 수 있다. 하나의 그러한 구현예가 도 6에 보이고 있다. 이 구현예는 처리기(602), 메모리(604), 및 사용자 인터페이스(606)를 구비한다. 부가하여, 도 6의 구현예는 송수신기(514), 및 안테나(516)를 구비한다. 송수신기(514)는 도 5에 관해서 앞에서 설명된 바와 같이 이행된다.The structure of FIG. 5 may be implemented in hardware, software, firmware, or any combination thereof. One such embodiment is shown in FIG. 6. This implementation includes a
도 6에 보인 것처럼, 처리기(602)는 송수신기(514)에 결합된다. 처리기(602)는 기기 동작을 제어한다. 처리기(602)는 각각이 메모리(604)에 저장된 소프트웨어 명령어들을 실행할 수 있는 하나 이상의 마이크로프로세서로 구현될 수 있다.As shown in FIG. 6, the
메모리(604)는 임의 접근 메모리(RAM), 읽기 전용 메모리(ROM), 및/또는 플래시 메모리를 포함하고, 정보를 데이터 및 소프트웨어 컴포넌트들(또한 모듈들이라고도 함) 형태로 저장한다. 이 소프트웨어 컴포넌트들은 처리기(602)에 의해 실행될 수 있는 명령어들 포함한다. 각종 유형들의 소프트웨어 컴포넌트들이 메모리(604)에 저장될 수 있다. 예를 들어, 메모리(604)는 송수신기(514)의 동작들을 제어하는 소프트웨어 컴포넌트들을 저장할 수 있다. 또한, 메모리(604)는 세션 클라이언트(502), 통신 모듈(512), 및 객체 데이터베이스(509)의 기능을 제공하는 소프트웨어 컴포넌트들을 저장할 수 있다.
부가하여, 메모리(604)는 사용자 인터페이스(606)를 통하여 정보의 교환을 제어하는 소프트웨어 컴포넌트를 저장할 수도 있다. 도 6에 보인 것처럼, 사용자 인터페이스(606)는 또한 처리기(602)에 결합된다. 사용자 인터페이스(606)는 기기의 사용자와의 상호작용(대화)을 용이하게 한다. 예를 들면, 사용자 인터페이스(606)는 사용자가 ESG에 접근하게 한다. 도 6은 사용자 인터페이스(606)가 사용자 입력부(608)와 사용자 출력부(610)를 구비함을 보이고 있다. 사용자 입력부(608)는 사용자가 정보를 입력하는 것을 허용하는 하나 이상의 기기를 구비할 수 있다. 그런 기기들의 예들은 키패드, 터치 스크린, 및 마이크로폰을 포함한다. 사용자 출력부(610)는 사용자가 무선 통신 기기로부터 정보를 수신하는 것을 허용한다. 그래서, 사용자 출력부(668)는 각종 기기들, 이를테면 디스플레이, 하나 이상의 오디오 스피커를 구비할 수 있다. 전형적인 디스플레이들은 액정 표시 장치(LCD)와 비디오 디스플레이를 포함한다.In addition, the
도 6에 보인 요소들은 각종 기법들에 따라 결합될 수 있다. 하나의 그러한 기법은 송수신기(514), 처리기(602), 메모리(604), 및 사용자 인터페이스(606)를 하나 이상의 버스 인터페이스를 통하여 결합하는 것에 관련된다. 부가하여, 이 구성요소들의 각각은 전원, 이를 테면 재충전 가능 배터리 및/또는 착탈식 배터리 팩(미도시)에 연결된다.The elements shown in FIG. 6 may be combined according to various techniques. One such technique involves
VII. 종결VII. closing
본 발명의 각종 실시예들이 위에서 설명되었지만, 그것들은 예로서만 제시된 것이었고 제한하고자 한 것은 아니었음이 이해되어야 한다. 예를 들어, 비록 예들이 FLUTE에 관련하여 기술되었지만, 다른 세션 배달 프로토콜 및 메커니즘은 본 발명의 범위 내에 있다.While various embodiments of the invention have been described above, it should be understood that they have been presented by way of example only, and not limitation. For example, although examples have been described with respect to FLUTE, other session delivery protocols and mechanisms are within the scope of the present invention.
따라서, 형식과 세부사항에서의 각종 변경들이 본 발명의 정신과 범위에서 벗어나는 일 없이 만들어질 수 있다는 것은 당업자에게 분명할 것이다. 그래서, 본 발명의 폭과 범위는 전술한 전형적인 실시예들 중의 어느 것에 의해 제한되지 않아야 하고, 다음의 청구항들 및 그것들의 동등물들에 따라서만 정해져야 한다.Thus, it will be apparent to those skilled in the art that various changes in form and detail may be made without departing from the spirit and scope of the invention. Thus, the breadth and scope of the present invention should not be limited by any of the above-described exemplary embodiments, but should be defined only in accordance with the following claims and their equivalents.
Claims (45)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020077003504A KR100902855B1 (en) | 2004-07-14 | 2005-06-20 | Grouping of session objects |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/890,273 | 2004-07-14 | ||
KR1020077003504A KR100902855B1 (en) | 2004-07-14 | 2005-06-20 | Grouping of session objects |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20070031459A KR20070031459A (en) | 2007-03-19 |
KR100902855B1 true KR100902855B1 (en) | 2009-06-16 |
Family
ID=41349668
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020077003504A KR100902855B1 (en) | 2004-07-14 | 2005-06-20 | Grouping of session objects |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100902855B1 (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100848273B1 (en) * | 2007-07-03 | 2008-07-25 | 삼성전자주식회사 | Device and method for processing file in digital broadcasting receiver |
KR101598519B1 (en) * | 2008-06-09 | 2016-02-29 | 엘지전자 주식회사 | Method for mapping between signaling information and announcement information and broadcast receiver |
WO2009151267A2 (en) | 2008-06-09 | 2009-12-17 | 엘지전자(주) | Service providing method and broadcast receiver |
US8549566B2 (en) | 2008-12-09 | 2013-10-01 | Lg Electronics Inc. | Method of processing non-real time service and broadcast receiver |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5822324A (en) | 1995-03-16 | 1998-10-13 | Bell Atlantic Network Services, Inc. | Simulcasting digital video programs for broadcast and interactive services |
US5892910A (en) | 1995-02-28 | 1999-04-06 | General Instrument Corporation | CATV communication system for changing first protocol syntax processor which processes data of first format to second protocol syntax processor processes data of second format |
US20030088778A1 (en) * | 2001-10-10 | 2003-05-08 | Markus Lindqvist | Datacast distribution system |
-
2005
- 2005-06-20 KR KR1020077003504A patent/KR100902855B1/en active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5892910A (en) | 1995-02-28 | 1999-04-06 | General Instrument Corporation | CATV communication system for changing first protocol syntax processor which processes data of first format to second protocol syntax processor processes data of second format |
US5822324A (en) | 1995-03-16 | 1998-10-13 | Bell Atlantic Network Services, Inc. | Simulcasting digital video programs for broadcast and interactive services |
US20030088778A1 (en) * | 2001-10-10 | 2003-05-08 | Markus Lindqvist | Datacast distribution system |
Also Published As
Publication number | Publication date |
---|---|
KR20070031459A (en) | 2007-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1766937B1 (en) | Grouping of session objects | |
RU2436245C2 (en) | System and method for implementing mbms handover during downloaded delivery | |
US20190334974A1 (en) | System and associated terminal, method and computer program product for uploading content | |
US7599294B2 (en) | Identification and re-transmission of missing parts | |
US9485044B2 (en) | Method and apparatus of announcing sessions transmitted through a network | |
US20080101317A1 (en) | System and method for providing advanced session control of a unicast session | |
US20060193337A1 (en) | Device management broadcast operation | |
EP2122874A1 (en) | Method for supporting file versioning in mbms file repair | |
JP2008541533A (en) | Scheduling client feedback during a streaming session | |
US20060221882A1 (en) | File distribution method and apparatus in a mobile broadcast system | |
KR100902855B1 (en) | Grouping of session objects | |
Belda et al. | Multimedia system for emergency services over tetra-dvbt networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E90F | Notification of reason for final refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20130522 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20140521 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20150518 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20160517 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20170522 Year of fee payment: 9 |
|
FPAY | Annual fee payment |
Payment date: 20180516 Year of fee payment: 10 |
|
FPAY | Annual fee payment |
Payment date: 20190515 Year of fee payment: 11 |