KR200392324Y1 - 데이터 방송 시스템의 클라이언트 및 서버 - Google Patents

데이터 방송 시스템의 클라이언트 및 서버 Download PDF

Info

Publication number
KR200392324Y1
KR200392324Y1 KR20-2005-0001212U KR20050001212U KR200392324Y1 KR 200392324 Y1 KR200392324 Y1 KR 200392324Y1 KR 20050001212 U KR20050001212 U KR 20050001212U KR 200392324 Y1 KR200392324 Y1 KR 200392324Y1
Authority
KR
South Korea
Prior art keywords
message
code set
data broadcasting
data
broadcasting system
Prior art date
Application number
KR20-2005-0001212U
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 삼성전자주식회사
Priority to KR20-2005-0001212U priority Critical patent/KR200392324Y1/ko
Application granted granted Critical
Publication of KR200392324Y1 publication Critical patent/KR200392324Y1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H20/00Arrangements for broadcast or for distribution combined with broadcast
    • H04H20/16Arrangements for broadcast or for distribution of identical information repeatedly
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H20/00Arrangements for broadcast or for distribution combined with broadcast
    • H04H20/86Arrangements characterised by the broadcast information itself
    • H04H20/91Arrangements characterised by the broadcast information itself broadcasting computer programmes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H60/00Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
    • H04H60/09Arrangements for device control with a direct linkage to broadcast information or to broadcast space-time; Arrangements for control of broadcast-related services
    • H04H60/13Arrangements for device control affected by the broadcast information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/06Notations for structuring of protocol data, e.g. abstract syntax notation one [ASN.1]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4343Extraction or processing of packetized elementary streams [PES]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4348Demultiplexing of additional data and video streams
    • H04N21/4349Demultiplexing of additional data and video streams by extracting from data carousels, e.g. extraction of software modules from a DVB carousel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/435Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
    • H04N21/4351Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream involving reassembling additional data, e.g. rebuilding an executable program from recovered modules
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols
    • H04N21/64315DVB-H
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8166Monomedia components thereof involving executable data, e.g. software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/547Messaging middleware

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

데이터 방송 시스템의 클라이언트 및 서버를 제공한다.
본 고안의 실시예에 따른 데이터 방송 시스템의 클라이언트는 서버로부터 브로드캐스트되는 방송 스트림을 수신하는 시스템 인터페이스, 시스템 인터페이스에 의해 수신된 방송 스트림으로부터 사용자에 의해 선택된 프로그램에 해당하는 PES(Packetised Elementary Stream) 패킷을 필터를 이용하여 선택하는 디멀티플렉서, 디멀티플렉서에 의해 선택된 영상을 위한 PES를 디코딩하는 영상 디코더, 디멀티플렉서에 의해 선택된 음성을 위한 PES를 디코딩하는 음성 디코더, 영상 디코더에 의해 디코딩된 영상 데이터를 출력하는 영상 출력부, 음성 디코더에 의해 디코딩된 음성 데이터를 출력하는 음성 출력부, 디멀티플렉서에 의해 선택된 PES 또는 디코딩된 영상 데이터 또는 디코딩된 음성 데이터를 저장하는 메모리, 및 디멀티플렉서에 의해 선택된 메시지 PES를 처리하고, 메시지로부터 오브젝트 카루젤 메시지내의 CORBA 스트링에 사용된 문자 인코딩 시스템에 관한 정보를 추출하고, 문자 인코딩 시스템에 따라 CORBA 스트링을 디코딩하는 CPU를 포함한다.

Description

데이터 방송 시스템의 클라이언트 및 서버{Client and server of data broadcasting system}
본 고안은 데이터 방송 시스템의 클라이언트 및 서버에 관한 것으로서, 더욱 상세하게는 오브젝트 카루젤 메시지내의 경로명(Pathname)의 문자 인코딩 시스템에 관한 정보를 전송함으로써 다양한 언어에 의한 경로명의 명명이 가능하도록 하는 데이터 방송 시스템의 클라이언트 및 서버에 관한 것이다.
디지털방송(Digital Broadcasting)은 기존의 아날로그방송과는 달리 양방향 운용, 재생, 축적이 가능한 첨단 방송기술로서 정보 신호를 부호화하여 기록할 수 있는 디지털 형태로 TV신호를 압축/송출하는 방송을 뜻한다. 디지털방송은 기존의 전송신호보다 6배 이상 많은 신호를 전달할 수 있으며 이에 따라 최소 2배 이상의 해상도를 제공할 수 있다. 하나의 전파에 복수(複數)의 영상과 음성을 담아 보낼 수 있으므로 기존 방송에서 하나의 채널에 해당되는 대역폭을 이용하여 6~8개의 채널을 운용할 수 있다. 다시 말해 디지털 방송은 통신이나 컴퓨터에서 사용하는 기술로 영상과 음성을 압축하고, 모든 신호를 변조하는 종합정보매체시대의 핵심적 매체이다. 이러한 디지털 방송환경이 가져오는 변화는 전통적으로 수동적이기만 했던 TV를 보다 능동적이며 쌍방향적인 컴퓨터와 같은 지능을 갖는 진정한 멀티미디어로 탈바꿈시키고 있다.
최근 급부상하고 있는 데이터방송은 바로 그러한 디지털방송의 핵심을 이루고 있다.
데이터방송은 영상, 음성, 소프트웨어, 스트리밍 정보 외에 디지털/멀티미디어로 결합된 방송컨텐츠를 PC와 디지털 셋톱박스, 개인휴대용단말기 등과 같이 정보처리능력을 갖춘 장치에 지속적으로 전송하는 개념이다. 또한 방송이므로 리턴경로가 반드시 필요하지 않으며, 컨텐츠는 요청하지 않아도 수신된다. 따라서 데이터방송은 기존 방송서비스의 단순성과 인터넷서비스 용량의 한계성을 동시에 해결해낼 수 있는 새로운 미디어 커뮤니케이션 대안이라 할 수 있겠다. 다시 말하면 기술적 측면에서의 데이터방송은 인터넷에서 즐길 수 있는 양방향적 멀티미디어 컨텐츠를 초고속 대량전송이 가능한 방송의 장점을 이용해 시청자에게 전달하는, 방송, 인터넷 및 통신이 결합된 최첨단기술로서 기존 방송의 일방성과 단순성은 물론, 인터넷방송이 갖는 화질과 음질, 용량 등의 한계성까지 디지털방송의 전송방식으로 극복할 수 있는 응용기술이라고 할 수 있다.
이러한 디지털 방송의 전송방식에는 지상파 수신방식으로 미국의 ATSC 방식과 유럽의 DVB-T방식이 있고, 케이블 수신방식으로 미국의 OpenCable 방식과 유럽의 DVB-C 방식이 있다. 디지털 방송의 수신을 위한 미들웨어에 관한 표준 규격에는 DVB-MHP(Multimedia Home Platform), OCAP(OpenCable Application Platform), ACAP(Advanced Common Application Platform) 등이 있다. DVB-MHP는 DVB(Digital Video Broadcasting) 프로젝트에 의해 디자인된 유럽식 디지털 TV 수신을 위한 미들웨어 시스템이고, OCAP은 미국의 케이블 사업자들에 의해 채용된 디지털 케이블 텔레비전 셋톱박스 및 다른 디지털 디바이스들을 위한 미들웨어 소프트웨어이다. ACAP은 케이블 방송과 지상파 방송이 케이블 방송 표준(OCAP)과 지상파 방송 표준(DASE)이라는 각각 다른 데이터 방송 미들웨어를 채택하던 데서 이를 하나로 통합하자는 움직임에서 만들어졌다.
DVB-MHP, OCAP, ACAP 등의 표준 규격은 ISO/IEC 13818-6 표준 규격에 의해 정의된 오브젝트 카루젤(Object Carousel)을 채용하고 있다. 그런데, 이 오브젝트 카루젤은 정보, 특히 디렉토리나 파일을 명명하기 위해 사용되는 경로명 컴포넌트를 교환하기 위하여 CORBA/IIOP 2.1에서 정의된 CORBA 스트링을 사용하고 있으며, CORBA 스트링에서는 문자 인코딩 정보가 명시되지 않으면 인코딩 시스템으로서 ISO 8859-1(ISO Latin 1)을 따르도록 되어 있다. 따라서, 오브젝트 카루젤을 사용하고 있는 DVB-MHP, OCAP, ACAP등의 오브젝트 카루젤을 사용하는 미들웨어에서는 경로명, 즉 파일 명과 디렉토리 명을 위한 기본 인코딩 시스템으로서 ISO 8859-1을 사용하고 있다. 이는 DVB-MHP(Multimedia Home Platform), OCAP(OpenCable Application Platform), ACAP((Advanced Common Application Platform)에서는 경로명으로서 서방 언어(Western Language)만을 지원하게 되어 이외의 언어로 경로명을 나타내지 못하는 한계가 있다.
본 고안은 오브젝트 카루젤(Object Carousel)을 사용하는 시스템에서 다양한 언어로 경로정보를 나타낼 수 있도록 인코딩 시스템에 관한 정보를 알려주는 장치를 제공하는데 그 목적이 있다.
상기 목적을 달성하기 위하여, 본 고안의 실시예에 따른 데이터 방송 시스템의 클라이언트는, 서버로부터 브로드캐스트되는 방송 스트림을 수신하는 시스템 인터페이스, 시스템 인터페이스에 의해 수신된 방송 스트림으로부터 사용자에 의해 선택된 프로그램에 해당하는 PES(Packetised Elementary Stream) 패킷을 필터를 이용하여 선택하는 디멀티플렉서, 디멀티플렉서에 의해 선택된 영상을 위한 PES를 디코딩하는 영상 디코더, 디멀티플렉서에 의해 선택된 음성을 위한 PES를 디코딩하는 음성 디코더, 영상 디코더에 의해 디코딩된 영상 데이터를 출력하는 영상 출력부, 음성 디코더에 의해 디코딩된 음성 데이터를 출력하는 음성 출력부, 디멀티플렉서에 의해 선택된 PES 또는 디코딩된 영상 데이터 또는 디코딩된 음성 데이터를 저장하는 메모리, 및 디멀티플렉서에 의해 선택된 메시지 PES를 처리하고, 메시지로부터 오브젝트 카루젤 메시지내의 CORBA 스트링에 사용된 문자 인코딩 시스템에 관한 정보를 추출하고, 문자 인코딩 시스템에 따라 CORBA 스트링을 디코딩하는 CPU를 포함한다.
한편 본 고안의 실시예에 따른 데이터 방송 시스템의 서버는, 영상 데이터를 인코딩하여 영상 비트 스트림을 생성하는 영상 인코더, 음성 데이터를 인코딩하여 음성 비트 스트림을 생성하는 음성 인코더, 영상 비트 스트림 및 음성 비트 스트림을 멀티플렉싱하여 전송 스트림을 생성하는 멀티플렉서, 멀티플렉서에 의해 생성된 전송 스트림을 전송하는 전송 스트림 출력부, 및 영상 인코더, 음성 인코더, 멀티플렉서 및 전송 스트림 출력부를 제어하고, 전송 스트림에 실어보낼 오브젝트 카루젤 메시지를 생성하고, 메시지내의 CORBA 스트링의 문자 인코딩 시스템에 관한 정보를 포함하는 메시지를 생성하여 전송하는 CPU를 포함한다.
기타 실시예들의 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.
본 고안의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 고안은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 고안의 개시가 완전하도록 하고, 본 고안이 속하는 기술분야에서 통상의 지식을 가진 자에게 고안의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 고안은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다
이하, 첨부된 도면을 참조하여 본 고안의 바람직한 실시예를 상세히 설명하기로 한다.
DSM-CC(Digital Storage Media Command and Control) 표준 규격은 멀티미디어 광대역 서비스의 전송을 위해 제안된 표준 규격으로서 MPEG-1 및 MPEG-2 비트 스트림을 관리하기 위한 제어 함수 및 연산을 제공하는 프로토콜의 집합이다. 오브젝트 카루젤의 개념은 DSM-CC 표준 규격에서 정의되었으며 이는 DVB 스펙에 반영되었고 이후에 디지털 방송을 위한 미들웨어 스펙인 DVB-MHP, OCAP, ACAP 등에 의해 채용되었다.
도 1은 DSM-CC 모델의 개념을 나타내는 도면이다.
DSM-CC 모델에서는 서버에 의해 생성된 스트림이 클라이언트에게 전송되고, 서버와 클라이언트는 모두 사용자로 간주된다. 클라이언트(110)는 일반적으로 멀티미디어 컨텐츠를 소비하는 셋톱박스, PC, 개인휴대형단말기와 같은 장치들이다. 서버(120)는 멀티미디어 컨텐츠 및 서비스를 제공하는 존재이다. 네트워크(130)는 사용자간의 연결을 제공하는 통신 요소들의 집합을 의미한다. 도 1은 사용자와 네트워크간(User-to-Network; 이하 U-N 이라 함) 정보의 운반을 위한 연결(136) 및 사용자와 사용자간(User-to-User; 이하 U-U라 함) 정보의 운반을 위한 연결(134)을 보여주고 있다. U-U 정보의 흐름은 클라이언트와 서버간에 사용되고, U-N 정보의 흐름은 네트워크와 클라이언트 또는 네트워크와 서버간에 사용된다. DSM-CC는 SRM(Session and Resource Manager)이라 불리는 논리 개체를 정의하는데, SRM(132)은 세션과 네트워크 자원의 중앙집중 관리(Centralized Management)를 제공한다.
DVB 시스템은 DSM-CC 스펙 중 U-U 연결에 관한 사항을 채용하여 다양한 전송 매체(Transmission media)를 통한 MPEG-2 전송 스트림(Trasnport Stream; TS)을 전송하는 수단을 제공한다. 원래 MPEG-2 전송 스트림은 MPEG-2 비디오 및 오디오를 포함하였다. 데이터 방송은 MPEG-2 기반 DVB 전송 표준의 중요한 확장으로 보여진다. 데이터 방송의 예는 위성, 케이블 또는 지상 링크를 통한 소프트웨어 다운로드, 브로드캐스트 채널을 통한 인터넷 서비스의 전송, 대화형 TV(Interactive TV) 등이다. 데이터 정보는 여러 방법으로 MPEG-2 전송 스트림내에 포함되어 전송될 수 있다. 그 데이터의 전송 방법은 데이터 파이핑(Data Piping), 데이터 스트리밍(Data Streaming), 다중프로토콜 인캡슐레이션(Multiprotocol Encapsulation), 데이터 카루젤(Data Carousel), 오브젝트 카루젤(Object Carousel)이다.
도 2는 DVB 서비스에 오브젝트 카루젤 스펙을 포함하고 있는 예를 보여주는 도면이다.
오브젝트 카루젤(Object Carousel)은 DSM-CC(Digital Storage Media-Command & Control)에 의해 정의되었고, 디렉토리 객체, 파일 객체 및 스트림 객체를 사용하는 방송 서버로부터 방송 수신자로의 구조화된 객체 그룹의 전송을 돕는 데이터 구조이다. 실제 디렉토리 및 컨텐트는 서버에 위치한다. 오브젝트 카루젤 스펙은 DVB 호환 브로드캐스트 네트워크를 통한 DSM-CC 사용자간 객체(User-to-User Object)의 주기적인 브로드캐스팅을 요구하는 데이터 방송 서비스를 지원한다. 서버는 언급된 객체들을 오브젝트 카루젤(Object Carousel) 프로토콜을 사용하는 DVB 호환 MPEG-2 전송 스트림에 반복적으로 삽입한다. 전송된 디렉토리 객체들(210) 및 파일 객체들(220)은 객체들의 내용을 포함하는 반면 전송된 스트림 객체들(230)은 방송의 다른 스트림들에 대한 참조(references)이다. 또한 스트림 객체(240)는 특정 스트림내에서 브로드캐스트되는 DSM-CC 이벤트에 관한 정보도 포함할 수 있다. DSM-CC 이벤트는 보통의 스트림 데이터와 함께 브로드캐스트 될 수 있고, DSM-CC 어플리케이션을 트리거하기 위해 사용될 수 있다. 다수의 클라이언트들은 반복적으로 전송되는 카루젤 데이터(Carousel Data)를 읽음으로써, 서버상의 객체들이 클라이언트의 객체 구현(Object Implementation)인 것처럼 가장함으로써 객체 구현(Object Implementation)을 복구할 수 있다. 카루젤의 객체들은 클라이언트에 마치 서버와 상호작용하는 연결이 있는 것처럼 어플리케이션 및 어플리케이션에 의해 사용되는 컨텐트에 접근하는 방법을 제공한다.
오브젝트 카루젤내의 U-U 객체의 데이터 및 속성은 하나의 메시지로 전송된다. 이 메시지 포맷은 BIOP(Broadcast Inter ORB Protocol)로 기술된다. 도 3은 BIOP 메시지의 포맷을 보여준다. BIOP 메시지는 메시지 헤더, 메시지 부헤더, 메시지 몸체로 구성된다. 메시지 헤더(312)는 BIOP 프로토콜의 버전 및 BIOP 메시지의 길이에 관한 정보를 제공한다. 메시지 부헤더(314)는 객체 유형(파일, 스트림, 디렉토리), 객체 키(Object Key)와 같은 전송되는 객체에 관한 정보를 포함한다. 메시지 몸체(316)는 실제 U-U 객체의 데이터를 포함한다.
BIOP 메시지는 데이터 카루젤(Data Carousel)의 모듈(320)의 형태로 브로드캐스트된다. 하나의 모듈(320)은 하나 이상의 연결된 BIOP 메시지들로 형성된다. 모듈내에서 각 객체는 객체 키(Object Key)로 식별된다. DSM-CC 데이터 카루젤 스펙에 따르면 각 모듈은 하나 이상의 블록들로 조각화된다. 이 블록들은 DownloadDataBlock(이하 DDB라 함)(330)메시지로 전송된다. 각 DDB 메시지는 순서대로 MPEG-2 섹션(Section)(340)의 형태로 전송된다. 블록들은 디멀티플렉서(Demultiplexer)의 하드웨어 필터를 사용하여 전송 스트림으로부터 직접 획득될 수 있다. 브로드캐스트 네트워크으로부터 하나의 객체를 획득하려면 그 객체가 담겨있는 모듈들을 모두 획득해야 한다. 따라서 모듈 버전, 모듈 크기, 블록 크기, 타이밍, 브로드캐스트 채널과 같은 모듈의 전송 파라미터들을 알아야 한다. 이 파라미터들은 DownloadInfoIndication(DII) 메시지로 전송되므로 모듈을 획득하려면 DII 메시지를 먼저 획득해야 한다. 결국, 방송 네트워크로부터 객체를 획득하는 과정은 DII 메시지 획득 및 모듈 획득의 두 단계를 거치게 된다.
방송 스트림에서 전송되는 객체를 취득하기 위해서는 우선 DSI(DownloadServerInitiate) 메시지를 취득하여 그 안에 포함되어 있는 ServiceGatewayInfo 구조(Structure)를 해석한다. 하나 이상의 모듈이 모여 그룹을 생성하고, 하나 이상의 그룹이 모여 수퍼 그룹(Super Group)을 생성하게 되는데, DSI 메시지는 수퍼 그룹 내의 그룹에 관한 정보를 포함한다.
도 4는 ServiceGatewayInfo 구조의 문법을 보여주는 도면이다.
오브젝트 카루젤은 특정 서비스 도메인을 나타내는데, 서비스 도메인은 DVB 네트워크내의 DSM-CC U-U객체들의 집합으로 구성된다. 서비스 도메인은 서비스 게이트웨이를 갖는데, 서비스 게이트웨이는 서비스 이름 및 객체의 이름의 그래프를 수신자에게 제공한다.
클라이언트는 ServiceGatewayInfo로부터 IOR(Inter Operable Reference)을 획득하게 되는데 IOR(410)은 객체의 위치를 나타낸다. ServiceGatewayInfo에 있는 IOR은 ServiceGateway, 즉 한 서비스 도메인내의 오브젝트들의 그래프의 루트 오브젝트의 위치 정보를 가지고 있다. 하나의 서비스 도메인의 루트 오브젝트를 취득하기 위해서는 루트 오브젝트가 담겨있는 모듈을 획득해야 하므로 상술한 바와 같이 DII(DownloadInfoIndication) 메시지 및 DDB(DownloadDataBlock) 메시지를 차례로 획득하여 루트 오브젝트 (BIOP::DirectoryMessage)를 취득한다.
도 5는 BIOP::DirectoryMessage의 형식을 보여주는 도면이다.
BIOP::DirectoryMessage는 루트 오브젝트에 속한 오브젝트의 위치(IOR)와 이름, 속성등을 가지고 있다. IOR 필드(510)가 오브젝트의 위치 정보를 포함하고, id_data_byte 필드(520)가 오브젝트의 이름 정보를 갖는다. objectKind_data필드(540)는 메시지의 유형을 구분하는 값을 가지고 있으며, BIOP::DirectoryMessage는 이 값으로 "dir" 을 갖는다.
한편, objectKind_data필드(540) 의 값이 "srg"인 경우 이 메시지는 BIOP::ServiceGateway 메시지가 되며, 이 메시지는 루트 오브젝트에 속한 오브젝트 정보를 가지고 있다. 따라서 BIOP::ServiceGateway 메시지는 BIOP::DirectoryMessage와 objectKind_data필드(540)의 값을 제외하고는 동일한 포맷을 갖는다. BIOP::ServiceGateway 메시지의 serviceContextList_data_byte 필드(530)는 CORBA스트링의 전송 코드 세트에 관한 정보를 포함하는 CORBA GIOP 코드 세트 컨텍스트 구조를 포함할 수 있다. CORBA GIOP 코드 세트 컨텍스트 구조에 관해서는 도 7을 참조하여 후술하도록 한다.
도 6은 BIOP::FileMessage의 형식을 보여주는 도면이다.
BIOP::FileMessage는 실제 파일 컨텐트를 포함하는 메시지로 데이터 메시지이다.
클라이언트는 이와 같은 일련의 IOR 취득 과정을 통해서 원하는 오브젝트를 취득하게 된다.
도 7은 본 고안의 실시예에 따른 서버의 구성을 보여주는 블록도이다.
본 실시예에 따른 서버(700)는 데이터를 인코딩하는 부분으로서 영상 인코더(710), 음성 인코더(720)를 포함하고, 멀티플렉서(Multiplexer)(730), RF 신호처리부(740), 및 전송 스트림 출력부(750), 및 CPU(760)로 이루어진다. 영상 인코더(710)는 영상 데이터를 인코딩하고 영상 비트 스트림을 생성하여 멀티플렉서(730)에 제공한다. 음성 인코더(720)는 음성 데이터를 인코딩하고 음성 비트 스트림을 생성하여 멀티플렉서(730)에 제공한다. 멀티플렉서(730)는 각 인코더에 의해 인코딩된 비트 스트림을 멀티플렉싱하여 하나 또는 여러 개의 전송 스트림을 생성하여 RF 신호처리부(740)에 제공한다. RF 신호처리부(740)는 전송 스트림을 출력 가능한 신호로 변조하여 전송 스트림 출력부(750)에 전달한다. 전송 스트림 출력부(750)는 전달받은 전송 스트림을 전송한다. CPU(760)는 각 장치의 동작을 제어하고, 전송 스트림상에 실어보낼 DSI 메시지, DII 메시지, DBB 메시지 등의 오브젝트 카루젤 메시지를 생성한다. 본 실시예에 따른 서버의 CPU는 생성되는 오브젝트 메시지내에서 사용되는 문자열에서 ISO 8859-1이 아닌 다른 전송 코드 세트를 사용할 경우 전송 코드 세트에 관한 정보를 삽입한 BIOP::ServiceGateway 메시지를 생성한다.
오브젝트 카루젤에서의 문자열 전송은 CORBA/IIOP 2.1에서 정의된 CORBA 스트링을 따르고 있다. CORBA/IIOP 2.1에 따르면 CORBA 스트링에서는 전송 코드 세트에 관한 정보가 명시되지 않으면 ISO 8859-1 (ISO Latin 1)을 따르도록 되어 있다. 따라서 현재 오브젝트 카루젤을 사용하는 DVB MHP, OCAP, ACAP 등 에서는 파일명과 디렉토리 명을 위하여 ISO 8859-1을 기본 전송 코드 세트로 사용하고 있다. 따라서 CORBA 스트링에서 다른 전송 코드 세트, 예를 들면 UTF-8을 사용하기 위해서는 사용된 전송 코드 세트에 관한 정보를 메시지로 전송해 주는 것이 필요하다.
특정 CORBA 스트링 인스턴스에 적용되는 문자 인코딩 규칙의 결정은 다음 세 개의 파라미터에 기초한다. 1) 스트링 인스턴스가 내로우 스트링(Narrow String) 또는 와이드 스트링(Wide String)인지 여부, 2) 협 문자 전송 코드 세트(Narrow Char Transmission Code Set; 이하 TCS-C라 함)의 값, 3) 광 문자 전송 코드 세트(Wide Char Transmission Code Set; 이하 TCS-W라 함)의 값. TCS-C의 값이 알려지지 않은 경우 기본 값인 ISO 8859-1이 적용된다. TCS-W값이 알려지지 않은 경우는 기본 값이 없으므로 와이드 스트링을 인코딩하거나 디코딩하면 오류가 발생한다. 다음은 GIOP Code Set Service Context 구조의 IDL(Interface Definition Language) 표현이다.
Module CONV_FRAME {
Typedef unsigned long CodeSetId;
Struct CodeSetContext {
CodeSetId char_data;
CodeSetId wchar_data;
}
}
CORBA/IIOP 2.1에 따르면 TCS-C 및 TCS-W의 값은 GIOP Code Set Service Context를 사용하여 할당된다. 따라서 본 고안에 따른 일 실시예에서는 오브젝트 카루젤의 CORBA 스트링의 전송 코드 세트에 관한 정보를 클라이언트에 알리기 위해 CORBA/IIOP 2.1의 GIOP Code Set Service Context 구조를 오브젝트 카루젤의 BIOP::ServiceGateway 메시지의 serviceContextList_data_byte 필드(530)에 선택적으로 삽입할 수 있다. 즉, CORBA 스트링을 위하여 ISO 8859-1 이외의 전송 코드 세트, 예를 들면 UTF-8 전송 코드 세트를 사용하고자 하는 경우, TCS-C 값을 UTF-8로 설정하고, TCS-W 값은 정의하지 않은 GIOP Code Set Service Context 구조를 BIOP::ServiceGateway 메시지의 serviceContextList_data_byte 필드(530)에 삽입할 수 있다. 더 나아가 오브젝트 카루젤 메시지에 나타나는 모든 CORBA 스트링은 내로우 스트링의 CORBA 정의에 따라 해석될 수 있을 것이다.
도 8은 본 고안의 실시예에 따른 클라이언트의 구성을 보여주는 블록도이다.
도 8은 데이터 방송에 있어서 클라이언트의 일 실시예로서 셋톱 박스의 구성을 보여주고 있다. 본 실시예에 따른 셋톱 박스(800)는 시스템 인터페이스(810), 디멀티플렉서(Demultiplexer)(820), 디코딩부로서 영상 디코더(830), 음성 디코더(840), CPU(880), 메모리(850), 영상 출력부(860), 및 음성 출력부(870)를 포함한다.
시스템 인터페이스(810)는 낮은 주파수로 변환된 영상 음성 신호를 수신하여 TV로 송출하기 위한 영상 음성 신호를 변환하고, 변조된 영상 음성 신호를 디스크램블링하여 생성된 전송 스트림을 디멀티플렉서(820)로 전달한다. 디멀티플렉서(820)는 여러 PES(Packetised Elementary Stream)가 멀티플렉싱된 전송 스트림으로부터 사용자에 의해 선택된 프로그램에 해당하는 PES 패킷을 필터를 이용하여 선택한다. 영상 디코더(830) 및 음성 디코더(840)는 디멀티플렉서에 의해 선택된 PES 를 디코딩하여 출력 가능한 형식으로 변환하여 영상 출력부(860) 및 음성 출력부(870)를 통하여 데이터 방송을 출력한다. 메모리(850)는 디멀티플렉서에 의해 선택된 PES 또는 디코딩된 영상 신호 또는 음성 신호를 저장한다. CPU(880)는 다른 구성 부분의 동작을 제어하며, 서버로부터 전송되는 오브젝트 카루젤 메시지(DSI 메시지, DII 메시지, DBB 메시지 등)를 해석한다. 특히 BIOP::ServiceGateway 메시지를 수신한 경우 이로부터 오브젝트 카루젤 메시지내에 사용된 문자열의 전송 코드 세트에 관한 정보를 추출하여 전송 코드 세트에 해당하는 적절한 디코더를 사용하여 메시지내의 문자열을 디코딩한다.
도 7 및 도 8의 각 구성 부분은 하드웨어 및 소프트웨어로 모두 구현될 수 있음은 당업자에게 자명하다고 할 수 있다.
도 9는 본 고안의 실시예에 따른 전송 코드 세트에 관한 정보를 공유하는 과정을 보여주는 흐름도이다.
서버가 오브젝트 카루젤 메시지내에 사용된 CORBA 스트링의 전송 코드 세트에 관한 정보를 포함하는 GIOP 코드셋 서비스 컨텍스트를 BIOP::ServiceGateway 메시지의 serviceContextList_data_byte 필드(530)에 삽입하여 전송(S910)하면, 클라이언트는 BIOP::ServiceGateway 메시지를 수신(S920)한다. 클라이언트의 CPU(880)는 BIOP::ServiceGateway 메시지로부터 GIOP 코드셋 서비스 컨텍스트를 추출하여 사용된 전송 코드 세트 정보를 추출(S930)한다. 클라이언트의 CPU(880)는 추출된 전송 코드 세트 정보에 따라 적절한 문자 디코더를 이용하여 메시지내의 경로명등을 디코딩(S940)한다.
이상 첨부된 도면을 참조하여 본 고안의 실시예를 설명하였지만, 본 고안이 속하는 기술분야에서 통상의 지식을 가진 자는 본 고안이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.
상기한 바와 같은 본 고안의 데이터 방송 시스템의 클라이언트 및 서버에 따르면 다음과 같은 효과가 하나 혹은 그 이상 있다.
오브젝트 카루젤을 사용하는 시스템에서 서버와 클라이언트간에 전송 코드 세트에 관한 정보를 공유함으로써 다양한 언어로 경로정보를 나타낼 수 있다는 장점이 있다.
도 1은 DSM-CC 모델의 개념을 나타내는 도면이다.
도 2는 DVB 서비스에 오브젝트 카루젤 스펙을 포함하고 있는 예를 보여주는 도면이다.
도 3은 BIOP 메시지의 포맷을 보여주는 도면이다.
도 4는 DSI(DownloadServerInitiate) 메시지의 ServiceGatewayInfo()의 포맷을 보여주는 도면이다.
도 5는 BIOP::DirectoryMessage의 포맷을 보여주는 도면이다.
도 6은 BIOP::FileMessage의 포맷을 보여주는 도면이다.
도 7은 본 고안의 실시예에 따른 서버의 구성을 보여주는 블록도이다.
도 8은 본 고안의 실시예에 따른 클라이언트의 구성을 보여주는 블록도이다.
도 9는 본 고안의 실시예에 따른 전송 코드 세트 시그널링 방법을 보여주는 흐름도이다.
<도면의 주요 부분에 관한 부호의 설명>
810: 시스템 인터페이스 820: 디멀티플렉서
830: 영상 디코더 840: 음성 디코더
850: 메모리 860: 영상 출력부
870: 음성 출력부 880: CPU

Claims (10)

  1. 오브젝트 카루젤을 사용하는 데이터 방송 시스템의 클라이언트로서,
    서버로부터 브로드캐스트되는 방송 스트림으로부터 사용자에 의해 선택된 프로그램에 해당하는 PES(Packetised Elementary Stream) 패킷을 디멀티플렉싱하는 디멀티플렉서;
    상기 디멀티플렉싱된 영상을 위한 PES를 디코딩하는 영상 디코더;
    상기 디멀티플렉싱된 음성을 위한 PES를 디코딩하는 음성 디코더; 및
    상기 디멀티플렉싱된 메시지 PES로부터 오브젝트 카루젤 메시지내에 사용된 문자열의 전송 코드 세트에 관한 정보를 추출하고, 상기 추출된 전송 코드 세트에 관한 정보에 따라 상기 오브젝트 카루젤 메시지내에 사용된 문자열을 디코딩하는 CPU를 포함하는 데이터 방송 시스템의 클라이언트
  2. 제 1항에 있어서,
    상기 문자열은
    CORBA/IIOP 2.1에서 정의된 CORBA 스트링을 따르는 문자열인 데이터 방송 시스템의 클라이언트
  3. 제 2항에 있어서,
    상기 전송 코드 세트에 관한 정보를 포함하는 메시지는
    BIOP:ServiceGateway 메시지인 데이터 방송 시스템의 클라이언트
  4. 제 3항에 있어서,
    상기 전송 코드 세트에 관한 정보는
    CORBA/IIOP 2.1의 GIOP 코드 세트 서비스 컨텍스트를 이용하여 표현되는 데이터 방송 시스템의 클라이언트
  5. 제 4항에 있어서,
    상기 전송 코드 세트는
    UTF-8인 데이터 방송 시스템의 클라이언트
  6. 오브젝트 카루젤을 사용하는 데이터 방송 시스템의 서버로서,
    영상 데이터를 인코딩하여 영상 비트 스트림을 생성하는 영상 인코더;
    음성 데이터를 인코딩하여 음성 비트 스트림을 생성하는 음성 인코더;
    상기 영상 비트 스트림 및 음성 비트 스트림을 멀티플렉싱하여 전송 스트림을 생성하는 멀티플렉서;
    상기 전송 스트림을 출력 가능한 신호로 변조하는 RF 신호 처리부; 및
    상기 영상 인코더, 상기 음성 인코더, 상기 멀티플렉서 및 상기 RF 신호 처리부를 제어하고, 상기 전송 스트림에 실어보낼 오브젝트 카루젤 메시지를 생성하고, 상기 메시지내에 사용된 문자열의 전송 코드 세트에 관한 정보를 포함하는 메시지를 생성하여 전송하는 CPU를 포함하는 데이터 방송 시스템의 서버
  7. 제 6항에 있어서,
    상기 문자열은
    CORBA/IIOP 2.1에서 정의된 CORBA 스트링을 따르는 문자열인 데이터 방송 시스템의 서버
  8. 제 7항에 있어서,
    상기 전송 코드 세트에 관한 정보를 포함하는 메시지는
    BIOP:ServiceGateway 메시지인 데이터 방송 시스템의 서버
  9. 제 8항에 있어서,
    상기 전송 코드 세트에 관한 정보는
    CORBA/IIOP 2.1의 GIOP 코드 세트 서비스 컨텍스트를 이용하여 표현되는 데이터 방송 시스템의 서버
  10. 제 9항에 있어서,
    상기 전송 코드 세트는
    UTF-8인 데이터 방송 시스템의 서버
KR20-2005-0001212U 2004-08-24 2005-01-14 데이터 방송 시스템의 클라이언트 및 서버 KR200392324Y1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR20-2005-0001212U KR200392324Y1 (ko) 2004-08-24 2005-01-14 데이터 방송 시스템의 클라이언트 및 서버

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US60/603,564 2004-08-24
KR20-2005-0001212U KR200392324Y1 (ko) 2004-08-24 2005-01-14 데이터 방송 시스템의 클라이언트 및 서버

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020040077204A Division KR100725387B1 (ko) 2004-08-24 2004-09-24 데이터 방송에서의 전송 코드 세트 시그널링 방법 및 장치

Publications (1)

Publication Number Publication Date
KR200392324Y1 true KR200392324Y1 (ko) 2005-08-17

Family

ID=43693533

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20-2005-0001212U KR200392324Y1 (ko) 2004-08-24 2005-01-14 데이터 방송 시스템의 클라이언트 및 서버

Country Status (1)

Country Link
KR (1) KR200392324Y1 (ko)

Similar Documents

Publication Publication Date Title
JP4621753B2 (ja) データ放送における伝送コードセットのシグナリング方法及び装置
KR200392324Y1 (ko) 데이터 방송 시스템의 클라이언트 및 서버
CN100542231C (zh) 在数据广播中标示传输代码集的设备

Legal Events

Date Code Title Description
U107 Dual application of utility model
REGI Registration of establishment
LAPS Lapse due to unpaid annual fee