KR101487030B1 - Iptv 수신기 및 iptv 서비스를 위한 리소스 획득 방법 - Google Patents
Iptv 수신기 및 iptv 서비스를 위한 리소스 획득 방법 Download PDFInfo
- Publication number
- KR101487030B1 KR101487030B1 KR20090020186A KR20090020186A KR101487030B1 KR 101487030 B1 KR101487030 B1 KR 101487030B1 KR 20090020186 A KR20090020186 A KR 20090020186A KR 20090020186 A KR20090020186 A KR 20090020186A KR 101487030 B1 KR101487030 B1 KR 101487030B1
- Authority
- KR
- South Korea
- Prior art keywords
- information
- channel
- record
- itf
- service
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/435—Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04H—BROADCAST COMMUNICATION
- H04H60/00—Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
- H04H60/68—Systems specially adapted for using specific information, e.g. geographical or meteorological information
- H04H60/72—Systems specially adapted for using specific information, e.g. geographical or meteorological information using electronic programme guides [EPG]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/434—Disassembling 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/4345—Extraction or processing of SI, e.g. extracting service information from an MPEG stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network 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/63—Control 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/643—Communication protocols
- H04N21/64322—IP
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network 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/63—Control 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/643—Communication protocols
- H04N21/6437—Real-time Transport Protocol [RTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/85—Assembly of content; Generation of multimedia applications
- H04N21/858—Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot
- H04N21/8586—Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot by using a URL
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Information Transfer Between Computers (AREA)
Abstract
IPTV 수신기 및 IPTV 서비스를 위한 리소스 획득 방법이 개시된다. 네트워크 인터페이스부는 네트워크를 통하여 IP 패킷을 송수신한다. IP 네트워크 스택은 수신한 IP 패킷의 목적지를 확인하고, IP 패킷을 프로토콜에 따라 분류한다. SI 디코더는 수신된 IP 패킷에 포함된 리소스의 위치를 표시하는 리소스 로케이터 엘리먼트를 포함하는 IPTV 서비스 레코드를 파싱하여 리소스 로케이터 엘리먼트에 포함된 차이드 엘리먼트를 산출한다. ITF(IPTV Terminal Function) 오퍼레이션 컨트롤러는 차이드 엘리먼트에 포함된 정보에 따라 리소스를 획득을 제어한다.
방송, IP, 서비스, ITF, 리소스
Description
본 발명은 IPTV 수신기 및 IPTV 서비스를 위한 리소스 획득 방법에 관한 것으로서, 더욱 자세하게는 인터넷 프로토콜을 이용한 IPTV 수신기 및 IPTV 서비스를 위한 리소스 획득 방법에 관한 것이다.
기존의 TV는 방송사에서 제작하는 컨텐츠를, 케이블, 지상파, 또는 위성 방송 프로바이더(provider)가 방송 망 등의 전파 전달 매체를 통해서 송출하고, 시청자는 상기 각 전달 매체를 수신할 수 있는 TV 수상기를 통해 시청하는 방식으로 서비스되었다.
그러나 기존의 아날로그 방송에서 디지털 기반의 디지털TV 기술이 개발되고 상용화되면서, 기존의 전파 매체 외에도 각 가정에 연결되어 있는 인터넷 망을 이용하여 실시간 방송, CoD(Contents on Demand), 게임, 뉴스 등 다양한 컨텐츠를 시청자에게 제공할 수 있게 되었다.
상기 인터넷 망을 이용한 컨텐츠 제공의 예로서 IPTV(Internet Protocol TV)를 들 수 있다. 상기 IPTV는 초고속 인터넷 망을 이용하여 정보 서비스, 동영상 컨 텐츠 및 방송 등을 텔레비전으로 제공하는 서비스를 말한다.
상기 IPTV는 비디오를 비롯한 방송 컨텐츠를 제공한다는 점에서는 일반 케이블방송이나 위성방송과 동일하나, 양방향성이 추가된다는 점에 특징이 있다. 그리고 일반 공중파 방송이나 케이블방송 또는 위성방송과는 달리 시청자가 자신이 편리한 시간에 자신이 보고 싶은 프로그램을 볼 수 있다.
본 발명이 이루고자 하는 기술적 과제는, IPTV 서비스를 효율적으로 탐색하고 획득할 수 있는 IPTV 수신기 및 IPTV 서비스를 위한 리소스 획득 방법을 제공하는 데 있다.
본 발명이 이루고자 하는 다른 기술적 과제는, IPTV 서비스에 대한 정보를 효율적을 관리할 수 있는 IPTV 수신기 및 IPTV 서비스를 위한 리소스 획득 방법을 제공하는 데 있다.
상기의 기술적 과제를 달성하기 위한, 본 발명에 따른 IPTV 서비스를 위한 리소스 획득 방법은 네트워크를 통해 서비스 프로바이더에 연결하는 단계; 인라인 인코디드 리소스(Inline encoded), HTTP 서버에 의해 전송되는 파일 및 FLUTE 프로토콜을 통해 전송되는 파일 중의 어느 하나인 리소스의 위치를 표시하는 리소스 로케이터 엘리먼트를 포함하는 IPTV 서비스 레코드(Channel Map Record)를 수신하는 단계; 상기 수신된 IPTV 서비스 레코드를 파싱하여, 상기 리소스 로케이터 엘리먼트에 포함된 차이드 엘리먼트(child element)를 산출하며, 상기 차이드 엘리먼트는 상기 인라인 인코디드 리소스를 획득하기 위한 인라인 미디어 정보를 포함하는 엘리먼트, 상기 HTTP 서버에 의해 전송되는 파일을 획득하기 위한 미디어 URL 정보를 포함하는 엘리먼트 및 상기 FLUTE 프로토콜을 통해 전송되는 파일을 획득하기 위한 플루트 파일 정보를 포함하는 엘리먼트 중 어느 하나인 단계; 및 상기 차이드 엘리 먼트에 포함된 정보에 따라 상기 리소스를 획득하는 단계;를 포함할 수 있다. 여기서, 상기 IPTV 서비스 레코드는 서비스 프로바이더 디스커버리 레코드(Service Provider Discovery Record), ITF 레지스트레이션 아웃풋 레코드(ITF Regitstration Output Record), 마스터 SI 테이블 레코드(Master SI Table Record), 채널 맵 레코드(Channel Map Record), 채널 디테일스 레코드(Channel Details Record) 및 EPG 디스커버리 레코드(EPG Discovery Record) 중 적어도 하나를 포함할 수 있다. 또한 상기 HTTP 서버에 의해 전송되는 파일은 상기 IPTV 서비스 레코드일 수 있다. 또한 상기 플루트 플로토콜을 통해 전송되는 파일은 상기 IPTV 서비스 레코드일 수 있다.
바람직하게, 상기 미디어 URL 정보는 스트리밍 미디어(Streaming Media) 정보 및 HTTP 리소스(HTTP Resource) 정보 중 적어도 하나를 포함할 수 있다.
바람직하게, 상기 플루트 파일 정보는 파일의 이름 정보 및 플루트 파일 전송 정보를 포함할 수 있다. 여기서, 상기 플루트 파일 전송 정보는 트랜스포트 세션 식별자 정보, 플루트 세션 시작 시간 정보, 플루트 세션 종료 시간 정보, TIAS 밴드위스 정보, AS 밴드위스 정보, 호스트의 주소 정보, 플루트 세션 채널 정보 및 FEC 정보 중 적어도 하나를 포함할 수 있다. 또한 상기 플루트 세션 채널 정보는 포트 정보, TIAS 밴드위스 정보, AS 밴드위스 정보 및 멀트캐스트 주소 정보 중 적어도 하나를 포함할 수 있다. 또한 상기 FEC 정보는 FEC 인코딩 식별장 정보 및 FEC 인스턴스(instance) 식별자 정보 중 적어도 하나를 포함할 수 있다.
상기의 다른 기술적 과제를 달성하기 위한, 본 발명에 따른 IPTV 수신기는 네트워크를 통하여 IP 패킷을 송수신하는 네트워크 인터페이스부; 상기 수신된 IP 패킷의 목적지를 확인하고, 상기 IP 패킷을 프로토콜에 따라 분류하는 IP 네트워크 스택; 상기 IP 패킷에 포함된 리소스의 위치를 표시하는 리소스 로케이터 엘리먼트를 포함하는 IPTV 서비스 레코드를 파싱하여 상기 리소스 로케이터 엘리먼트에 포함된 차이드 엘리먼트를 산출하며, 상기 차이드 엘리먼트는 인라인 인코디드 리소스를 획득하기 위한 인라인 미디어 정보를 포함하는 엘리먼트, HTTP 서버에 의해 전송되는 파일을 획득하기 위한 미디어 URL 정보를 포함하는 엘리먼트 및 FLUTE 프로토콜을 통해 전송되는 파일을 획득하기 위한 플루트 파일 정보를 포함하는 엘리먼트 중 어느 하나인 SI 디코더; 및 상기 차이드 엘리먼트에 포함된 정보에 따라 상기 리소스를 획득을 제어하는 ITF 오퍼레이션 컨트롤러(ITF Operation Controller);를 포함할 수 있다. 여기서, 상기 IPTV 서비스 레코드는 서비스 프로바이더 디스커버리 레코드(Service Provider Discovery Record), ITF 레지스트레이션 아웃풋 레코드(ITF Regitstration Output Record), 마스터 SI 테이블 레코드(Master SI Table Record), 채널 맵 레코드(Channel Map Record), 채널 디테일스 레코드(Channel Details Record) 및 EPG 디스커버리 레코드(EPG Discovery Record) 중 적어도 하나를 포함할 수 있다.
바람직하게, 상기 미디어 URL 정보는 스트리밍 미디어(Streaming Media) 정보 및 HTTP 리소스(HTTP Resource) 정보 중 적어도 하나를 포함할 수 있다.
바람직하게 상기 플루트 파일 정보는 파일의 이름 정보 및 플루트 파일 전송 정보를 포함할 수 있다. 여기서, 상기 플루트 파일 전송 정보는 트랜스포트 세션 식별자 정보, 플루트 세션 시작 시간 정보, 플루트 세션 종료 시간 정보, TIAS 밴드위스 정보, AS 밴드위스 정보, 호스트의 주소 정보, 플루트 세션 채널 정보 및 FEC 정보 중 적어도 하나를 포함할 수 있다. 또한 상기 플루트 세션 채널 정보는 포트 정보, TIAS 밴드위스 정보, AS 밴드위스 정보 및 멀트캐스트 주소 정보 중 적어도 하나를 포함할 수 있다. 상기 FEC 정보는 FEC 인코딩 식별장 정보 및 FEC 인스턴스(instance) 식별자 정보 중 적어도 하나를 포함할 수 있다.
상기의 또 다른 기술적 과제를 달성하기 위한, 본 발명에 따른 IPTV 서비스를 위한 리소스 획득 방법은 네트워크를 통하여 서비스 프로바이더에 연결하는 단계; 채널 디테일스 레코드(Channel Detail Record)의 위치를 표시하는 리소스 로케이터 엘리먼트를 포함하는 채널 맵 레코드(Channel Map Record)를 수신하는 단계; 상기 수신된 채널 맵 레코드(Channel Map Record)를 파싱하여, 상기 리소스 로케이터 엘리먼트에 포함된 차이드 엘리먼트(child element)를 산출하며, 상기 차이드 엘리먼트는 인라인 인코디드된 상기 채널 디테일스 레코드를 획득하기 위한 인라인 미디어 정보를 포함하는 엘리먼트, HTTP 서버에 의해 전송되는 상기 채널 디테일스 레코드를 획득하기 위한 미디어 URL 정보를 포함하는 엘리먼트 및 FLUTE 프로토콜을 통해 전송되는 채널 디테일스 레코드를 획득하기 위한 플루트 파일 정보를 포함하는 엘리먼트 중 어느 하나인 단계; 및 상기 차이드 엘리먼트에 포함된 정보에 따라 상기 채널 디테일스 레코드를 획득하는 단계;를 포함할 수 있다.
여기서, 상기 채널 맵 레코드(Channel Map Record)는 서비스 프로바이더 식별자 정보, 채널 맵의 식별자 정보, 채널 맵의 버전 정보 및 채널 디테일스 수신 정보 중 적어도 하나를 포함할 수 있다. 또한 상기 채널 디테일스 레코드(Channel Details Record)는 채널이 제공하는 서비스의 서비스 식별자 정보, 채널 디테일스 레코드(Channel Details Record)의 버전 정보, 채널이 제공하는 서비스의 카테고리 정보 및 채널의 쇼트 네임(short name) 정보 중 적어도 하나를 포함할 수 있다.
본 발명에 따른 IPTV 수신기 및 IPTV 서비스를 위한 리소스 획득 방법에 의하면, IPTV 서비스를 효율적으로 탐색하고 획득할 수 있고, IPTV 서비스에 대한 정보에 대한 업데이트를 신속하고 정확하게 수행하므로 IPTV 서비스에 대한 정보를 효율적을 관리할 수 있다.
이하 상기의 목적을 구체적으로 실현할 수 있는 본 발명의 바람직한 실시예를 첨부한 도면을 참조하여 설명한다. 이때 도면에 도시되고 또 이것에 의해서 설명되는 본 발명의 구성과 작용은 적어도 하나의 실시예로서 설명되는 것이며, 이것에 의해서 본 발명의 기술적 사상과 그 핵심 구성 및 작용이 제한되지는 않는다.
본 발명에서 사용되는 용어는 본 발명에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어를 선택하였으나, 이는 당해 기술분야에 종사하는 기술자의 의도 또는 관례 또는 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 발명에서 사용되는 용어는 단순한 용어의 명칭이 아닌 그 용어가 가지는 의미와 본 발명의 전반에 걸친 내용을 토대로 정의되어야 함을 밝혀두고자 한다.
도 1은 IPTV 서비스의 개념을 도시한 시스템 구성도이다.
도 1을 참조하면, IPTV 시스템은 서비스 프로바이더 영역(service provider Domain), 네트워크 공급자 영역(network provider domain), 고객 영역(consumer domain)으로 구성된다.
서비스 프로바이더 영역은 켄텐츠 공급자 및 서비스 프로바이더를 포함할 수 있다. 상기 컨텐츠 공급자는 서비스 프로바이더에게 컨텐츠를 제공해주는 역할을 한다. 상기 서비스 프로바이더는 가입자에게 서비스를 제공해주는 역할을 하며, 다양한 컨텐츠를 수집하여 IP 환경에 맞게 신호를 변형하여 사용자에게 전달한다. 또 한 서비스 프로바이더(Service Provider)는 멀티미디어 데이터를 전송하고, 사용자(Customer)에게 컨텐츠의 안정적인 수신이 될 수 있도록 전송망의 유지 보수 관리 그리고 컨텐츠 공급자(contents provider)에게는 네트워크 전송을 할 수 있는 기반 시설과 기능을 제공한다. 여기서 서비스 프로바이더는 가상의 존재일 수 있고, 컨텐츠 공급자가 곧 서비스 프로바이더가 될 수도 있다.
상기 네트워크 공급자 영역은 사용자와 서비스 프로바이더를 IP 네트워크를 통해서 연결해주는 역할을 한다. 전송 시스템은 접속망(access network), 기간망(backbone network) 또는 무선 WAN(wireless Wide Area Network) 등의 다양한 네트워크 망을 이용할 수 있다.
상기 고객 영역은 IPTV 서비스를 소비하는 영역이다. 상기 고객 영역은 xDSL이나 케이블과 같은 기반시설을 이용하여 들어온 데이터를 재생하고 사용자의 요구에 즉시 반응하는 등의 역할을 한다. 대부분이 IPTV를 생산하는 업체들로 구성이 되고, 그 종류들은 IPTV, IP STB, IP Phone등으로 나누어 질 수 있다. 상기 고객 영역에서 컨텐츠를 제공받아, 방송을 수신하기 위해 고객 영역 장치가 사용될 수 있다. 여기서 고객 영역 장치로 셋탑 박스(set top box), PC, 이동 단말기, ITF(IPTV Terminal Function) 장치 또는 DNG(Delivery Network Gateway) 장치 등이 있다.
각각의 영역에 대하여 자세하게 알아보도록 한다.
먼저 컨텐츠 공급자(contents provider)는 방송 프로그램을 만드는 TV Station 및 Radio Station이 있을 수 있다. TV Station은 기존의 지상파나 케이블 방송국을 의미하며, 이러한 방송국은 사용자들이 시청할 수 있는 프로그램을 만들어 저장하고 이를 디지털로 바꾸어서 전송할 수 있다. 일반적으로 여러 가지 방송형태로 전송할 수 있도록 하기 위함이다.
Radio Station은 일반 라디오 방송국을 의미하며, 비디오 채널이 때에 따라서 있을 수도 있지만, 대부분의 경우 비디오 채널이 없이 운영된다고 볼 수 있다. VoD(Video on Demand), AoD(Audio on Demand) 서비스는 TV Station이나 Radio Station과는 다른 특성을 가진다. 컨텐츠 공급자(contents provider)에서도 방송할 프로그램을 저장해서 보관하겠지만, 이는 연속성이 있는 라이브 방송으로, 레코딩을 하지 않는 이상은 되감아서 보거나 정지시켜서 볼 수 없는 특징이 있다. 그러나 VoD나 AoD의 경우에는 내가 원하는 방송 프로그램 혹은 영화, 음악 등을 저장해 놓고 나서 재생하여 볼 수 있도록 서비스 해준다. 예를 들어 현재 시간이 없어서 제대로 보지 못했던 방송 프로그램이 있는 경우, 이러한 방송 서비스를 제공하는 사이트에 접속해서 해당 파일을 다운로드 받거나 바로 재생을 해서 볼 수 있다. AoD도 마찬가지로 오디오 프로그램을 녹화하기 어렵거나 실시간으로 들을 수 있는 기능을 제공한다. MoD(Music on Demand) 서비스는 내가 원하는 음악을 다운로드 받아서 들을 수 있다. MoD의 서비스의 대상은 음반사 또는 음반 배포사가 기존의 웹 서비스를 확대하여 실시할 수 있다.
이하에서는 컨텐츠 공급자가 제공하는 서비스의 실시예에 대하여 살펴본다.
PF 서버는 컨텐츠 공급자(contents provider)가 제공하는 모든 방송 정보와 Location 정보 등을 대신 관리해주는 업체가 서비스를 할 수 있다. 이 서비스는 주 로 해당 방송국의 방송 시간이나 방송에 필요한 위치 정보 및 사용자(Customer)가 접속을 할 수 있는 정보를 담고 있다. 사용자(Customer)는 이 정보를 얻어 화면에 표시할 수 있다. PF 서버는 각 방송국마다 갖추어야 하는 서비스 중에 하나로 IPTV 환경에서는 이 서비스를 제공하여, 사용자가 해당 방송국에 접속하도록 할 수 있다.
EPG 서비스는 방송 프로그램을 사용자가 시간대 별로 조회하고, 채널 별로 파악할 수 있도록 제공하는 편리한 서비스 중에 하나이다. EPG 서비스는 이미 프로그램이 자동으로 Customer 측에 설치가 되어 실행할 수 있도록 되어 있다. 사용자(Customer)는 PF 서버로부터 해당 방송국에 대한 정보만을 얻을 수 있지만, EPG 서비스는 모든 방송국의 실시간 방송 채널에 대한 정보들을 한꺼번에 얻을 수 있어서 매우 편리하게 사용할 수 있다. 가령, CNN 뉴스를 예약 녹화를 한다든지, Disney 방송을 시청 예약한다든지 하는 강력한 기능을 내장하고 있기 때문이다. 따라서 EPG 서비스는 해당 지역의 방송 프로그램의 정보를 시간대별로 자세하게 제공해야 한다. 특히 어떤 드라마의 경우 드라마의 내용을 검색하거나, Category로 나누어 SF, Drama, Animation등의 구분도 할 수 있도록 되어있으며, 간단한 방영 프로그램의 영화나 드라마의 줄거리나 등장 인물들에 대한 세부적인 정보도 포함할 수 있다. EPG 서비스의 큰 문제점은 IPTV를 시청하는 Customer의 라이센스(license)의 종류가 많아 사용자에게 맞는 EPG 데이터를 어떻게 전송할 것이냐 하는 것이 문제가 될 수 있다. EPG 서비스를 접속하려면, Costumer는 간단하게 입력 키를 리모컨에서 찾아서 누르기만 하면 된다.
ECG 서비스는 컨텐츠 공급자(contents provider)가 가지고 있는 Content의 정보와 접속 서버의 위치 및 접근 권한 등을 사용자가 편리하게 사용할 수 있는 모든 기능을 가지고 있다. 간단히 말하면 Content를 가지고 있는 서버들을 쉽게 접속하도록 하는 기능과 Content의 정보를 상세하게 알려 주는 전자 프로그램 가이드(Electronic Content Guide : EPG) 이다. 즉, 실시간 방송이 아니라 AoD, MoD 그리고 VoD와 같은 서비스들을 EPG와 같이 하나로 묶어서 사용자가 어떤 Content Service에 Content를 보거나 다운로드 하기 위해 개별 접속하는 부담을 덜어 준다. EPG 서비스와 비슷하지만, 이 서비스는 실시간 방송 채널 정보를 알려 주는 것이 아니라 이미 서버에 저장이 되어 있어서 언제든지 시청할 수 있고 다운로드를 해서 저장할 수 있도록 한다. 사용자가 각 Content가 있는 서버에 접속하려면 매우 어려운 주소나 PF 서버들을 접속해서 얻어야 할 것이다. 이것은 매우 복잡한 과정이며, 많은 시간이 소요된다. ECG를 제공하는 업체는 ECG 프로그램을 Customer에 자동 설치되도록 하고, 모든 Content 들에 대한 정보를 수집하여 데이터를 제공한다. ECG 서비스에 접속하려면 Customer는 역시 리모컨에 있는 입력 키 버튼을 클릭하면 된다.
Portal Server는 각 방송국에서 제공하는 웹서비스로 방송국이나 Content를 서비스하는 업체의 웹서버로 연결이 된다. Portal Server의 역할은 각 방송국이나 Content 서비스를 제공하는 컨텐츠 공급자(contents provider)들이 제공하는 프로그램 리스트를 검색하거나 리스트를 볼 수 있다. 이것은 마치 ECG나 EPG와 같은 기능이라고 생각할 수도 있다. 그러나 Portal 서비스에서는 사용자의 인증이나 라이 센스 계약등과 같은 기능도 갖추고 있어서 내가 원하는 프로그램을 시청하기 위해서 접속할 필요가 있다. 또한 ECG나 EPG는 통합된 방송이나 Content 리스트를 제공하지만, Portal 서비스는 해당 프로그램 제공 업체에 대한 방송이나 Content 리스트 정보를 제공하여 세부적인 검색이 가능할 수 있다. Portal 서비스에 접속하려면, Customer는 리모컨에서 Portal 입력 버튼을 클릭하면 된다.
이렇게 해서 컨텐츠 공급자(contents provider)쪽은 이러한 서비스들을 제공하는 기능 등이 포함되어야 하고, 이러한 기능들이 정상적으로 동작하려면, 실시간으로 해당 프로그램을 전송하거나 방송 정보를 전송할 수 있도록 각 서비스 업체들의 서버(130)는 IP 네트워크에 접속되어 있어야 한다. 또한 각 방송국이나 서비스 업체들은 서비스 프로바이더(Service Provider)의 네트워크에 연결이 되어 지연과 에러 없이 전송이 되어야 하므로 RTP, RTSP, RSVP 그리고 MPLS 등의 인터넷 실시간 프로토콜을 이용하여 멀티미디어 데이터를 전송할 수 있도록 시스템이 갖추어져야 한다. 예를 들어 현재 뉴스를 제공하는 TV Studio에서 실시간으로 멀티미디어를 전송하려고 할 때, MPEG-2와 AC-3 오디오 스펙으로 꾸며져 있는 경우 이를 IPTV의 포맷에 맞게 바꾸는 Transcode 작업을 해야 한다. 이러한 작업을 하는 서버를 통과하면, Caption이나 Lipync를 맞출 수 있도록 시간 정보가 포함된 RTP/UDP 프로토콜을 붙여 Service Provider가 제공한 IP Network를 통과하도록 시스템을 구성한다.
서비스 프로바이더(Service Provider)는 컨텐츠 공급자(contents provider)에서 전송되는 멀티미디어 데이터와 방송 데이터들을 잘 전송할 수 있도록 네트워크의 안정성과 대역폭을 제공한다. 서비스 프로바이더(Service Provider)들은 기존 의 케이블 망을 이용하여 IPTV 서비스를 제공할 수도 있는데, 이런 경우에는 전송 네트워크(Delivery Network)의 장비들의 변경이 필요하다. 즉, 실시간 데이터 전송을 할 수 있는 네트워크 장비들로 구성을 해야 하고, Customer에도 대역폭을 감안하여 네트워크를 구성해야 한다. 이러한 장비들은 IPTV의 기본적인 네트워크 서비스인 Multicast 서비스를 사용하여 대용량의 멀티미디어 데이터들을 처리하여 대역폭을 줄여야 한다. 대역폭이 확보되지 못할 경우에는 Service Provider에서 대역폭을 확보하려는 노력으로 광케이블 망 구성이나 컨텐츠 공급자(contents provider)로부터 오는 멀티미디어 방송 데이터들을 다시 Transcode하여 MPEG-4 나 MPEG-7과 같은 형태로 변형해서 전송할 수도 있다. Service Provider에서는 이를 위해서 크게 몇 가지 서비스를 제공해야 하는데 크기 NMS(Network Management System), DHCP(Dynamic Host Control Protocol) 그리고 CDN 서비스를 제공하도록 되어 있다.
NMS 서비스는 Service Provider가 각 Customer에게 까지 전송할 수 있는 Delivery Network 관리하고 RCMS(Remote Configuration and Management Server) 기능을 수행한다. 즉, 전송망에 문제가 발생하여 Customer가 방송 수신을 못하는 경우 이를 응급 처리할 수 있는 수단을 가지고 있어야 한다. NMS는 원격의 전송 계층의 기계들을 원활하게 제어하고 관리할 수 있는 표준화된 수단으로 널리 사용되고 있다. 이 서비스를 이용하여 어떤 방송에 대하여 얼마만큼의 트래픽이 발생하고 있고, 어떤 지역에서 대역폭이 모자라는지를 확인할 수 있다. 또한 컨텐츠 공급자(contents provider)에게 Multicast 시에 그룹을 생성하고 관리할 수 있도록 컨텐츠 공급자(contents provider)들에게 제공해야 한다. 때에 따라서는 Multicast 그룹을 더 생성할 수도 있어야 되기 때문이다.
DHCP 서비스는 Customer 의 IPTV 수신기에게 자동적으로 IP를 할당할 수 있도록 하고, CDN 서버의 주소를 알려 주는데 사용한다. DHCP 서비스는 일반 네트워크에서도 PC에 IP를 할당하는 좋은 수단이 되고 있다. 사용이 허락된 IPTV 수신기에게 접속할 수 있는 주소를 전송해 주어 사용자가 최초 접속할 때 등록 절차를 할 수 있도록 해야 한다. 일반적으로 IPv4를 IPTV 수신기에서는 제공할 것이지만, IPv6도 사용할 수 있도록 되어 있다. 따라서 IPv4를 제공하는 IPTV 수신기라고 해서 사용하지 못하는 것은 아니다.
CDN 서비스는 Service Provider가 제공하는 데이터로 IPTV 수신기가 최초로 전원이 인가되어 동작할 때, DHCP서비스에 의하여 IP를 받으면서 CDN 정보를 Service Provider에게 수신 받게 된다. 이 정보는 IPTV 사업자의 사용자의 등록이나 인증 그리고 앞서 언급했던 PF 정보들을 담고 있다. IPTV 수신기가 Service Provider에게서 CDN 정보를 얻음으로써, IP방송 신호 수신이 가능할 수 있다.
Customer는 여러 가지 형태의 IPTV 수신기를 가질 수 있다. 일반 TV를 가지고 있는 사용자의 경우에는 IPTV STB를 임대하여 저렴하게 IPTV를 즐길 수 있으며, 서비스 프로바이더(Service Provider)가 저렴한 가격으로 추가적인 서비스 비용을 지불하고 IP Phone도 함께 신청하여 사용할 수도 있다. IPTV 수신기는 기본적으로 네트워크에 접속할 수 있는 Network Interface가 있고, 인터넷 프로토콜을 가지고 있어서 Network로부터 들어오는 데이터 패킷을 받아 처리하여 멀티미디어 데이터인 경우에는 화면에 재생할 수 있고, 리모컨으로 조작할 경우, 데이터 패킷을 네트워 크로 신속하게 전송해서 해당 정보를 서버에서 얻어 반응을 해야 한다. 즉, IPTV 수신기는 멀티미디어 데이터를 처리하면서 양방향으로 사용자의 요구사항을 전송할 수 있도록 동작할 수 있다. 또한 Service를 잘 이용할 수 있도록 리모컨에 IPTV용 버튼들을 제공할 수 있다. 이렇게 제공된 IPTV 수신기에서 사용자는 드라마에 나오는 멋진 장면을 저장하여 볼 수 있고, 위치정보라든지 호텔 예약이라든지 하는 부가 서비스를 누릴 수 있다.
한편, 앞서 언급했던 NMS는 서비스 프로바이더(Service Provider)가 망을 관리하는 기능뿐만 아니라 RCMS 기능을 수행한다. RCMS는 사용자가 가지고 있는 IPTV 수신기를 제어하고 관리할 수 있도록 도와 주는데, IPTV 수신기가 급증하고 부가적인 서비스가 늘어나면, RCMS의 역할은 더욱 중요하게 된다. 이 때문에 IPTV 방송 수신기에 SNMP 프로토콜을 의무화 하고 있다. 이는 Service Provider가 IPTV 방송 수신기를 관리하고 제어할 수 있도록 하겠다는 의도이다. 이렇게 되면, IPTV 방송 수신기는 현재 통신하고 있는 프로토콜의 통계자료 그리고 사용하는 프로세서의 정보, 어떤 TV 생산업체인지 등에 대하여 자세하게 파악할 수 있다.
고객 영역에서 IPTV 서비스를 수신하기 위해, ITF(120)는 DNS 서버(110)에 서버 주소 응답 요청(Server Address resolution request)을 전송할 수 있다. 그러면 DNS 서버(110)는 ITF(120)에게 서버 주소를 전송한다. 그러면 ITF(120)는 전송받은 서버 주소로 서버(130)에 연결하고 IPTV 서비스를 수신받을 수 있게 된다. 여기서 ITF(120)는 서버(130)와 멀태캐스트 방식 및 유니캐스트 방식 중 적어도 하나의 방식으로 연결될 수 있다.
도 2는 멀티캐스트 방식에 대해 개략적으로 도시한 도면이다.
도 2를 참조하면, 멀티캐스트 방식은 특정한 그룹의 다수의 수신자에게 데이터를 전송하는 방식이다. 예를 들어, 서비스 프로바이더는 데이터를 미리 등록된 다수의 ITF에 한꺼번에 전송할 수 있다. 상기 멀티캐스트 등록을 위해 IGMP(Internet Group Management Protocol) 프로토콜 등이 사용될 수 있다.
도 3은 유니캐스트 방식에 대해 개략적으로 도시한 도면이다.
도 3을 참조하면, 상기 유니캐스트 방식은 하나의 송신자와 하나의 수신자 사이에 데이터를 1:1로 전송하는 방식이다. 예를 들어, 유니캐스트 방식의 경우 ITF에서 서비스 프로바이더에 서비스를 요청하면, 상기 서비스 프로바이더는 요청에 따라 해당 서비스를 상기 ITF에 전송한다.
도 4는 본 발명에 따른 IPTV 서비스의 탐색 방법에 대한 바람직한 일실시예의 수행과정을 도시한 도면이다.
도 4를 참조하면, IPTV 서비스를 수신하기 위해, ITF는 서비스 프로바이더 디스커버리(Service Provider Discovery)를 수행하여 SD 서버(Service Discovery Server)의 주소 목록을 찾는다. 여기서 서비스 프로바이더 디스커버리(Service Provider Discovery)는 ITF가 IPTV 서비스 프로바이더에 대한 정보 및 보안 관리되는 네트워크로 서비스 프로바이더에 접속하기 위한 정보를 찾는 과정을 의미한다. ITF는 다음과 같은 방식으로 SD 서버(Service Discovery Server)의 주소 목록을 찾을 수 있다.
SD 서버(Service Discovery Server)의 주소 목록 서치 방식
1. 사전에 설정되거나 수동 설정 : ITF에 사전에 설정된 주소를 따르거나 사용자 수동 설정
2. DHCP 기반 SP Discovery : DHCP option을 사용하여 SD 서버의 주소 목록을 얻어옴
3. DNS SRV-based SP Discovery : DNS SRV 메커니즘을 이용하여 쿼리를 SD 서버 주속 목록을 얻어옴
ITF(420)는 전술한 1 내지 3의 방법으로 얻은 SD 서버 주소 목록을 통해 특정 SD 서버를 찾을 수 있게 되고 특정 SD 서버로부터 서비스 프로바이더 디스커버리 레코드를 수신할 수 있게 된다.
서비스 프로바이더(410)는 ITF(420)에 서비스 프로바이더 디스커버리 레코드(Service Provider Discovery record)를 전송한다(S400). 여기서 서비스 프로바이더 디스커버리 레코드는 유용한 IPTV 서비스 프로바이더에 대한 정보 및 보안 관리되는 네트워크로 서비스 프로바이더에 접속하기 위한 정보를 포함한다. 서비스 프로바이더 디스커버리 레코드는 푸시 모드(Push mode) 또는 풀 모드(Pull mode)로 전송될 수 있다. 풀 모드로 전송되는 경우에는, ITF(420)가 서비스 프로바이더 디스커버리 레코드에 대한 전송 요청이 있는 경우에 서비스 프로바이더(410)가 서비스 프로바이더 디스커버리 레코드를 전송한다. 그러나 푸시 모드로 전송되는 경우는, ITF(420)가 서비스 프로바이더 디스커버리 레코드에 대한 전송 요청과 관계없 이 서비스 프로바이더(410)가 서비스 프로바이더 디스커버리 레코드를 전송한다.
ITF(420)는 서비스 프로바이더 디스커버리 레코드에 포함된 Registration Server의 주소 정보가 지정하는 Registration Server에 접속하여 ITF 등록 절차를 수행한다(S405). 이때 ITF(420)에서 서비스 프로바이더(410)로 전달하는 정보는 ITFRegistrationInputType 레코드의 형태로 전달 될 수 있고 가입자 식별자 정보 및 가입자 위치 정보를 포함할 수 있다. 그리고 여기서 ITF 등록은 SP 접속(Service Provider Attachment)으로 명명될 수 있고, 이는 당해 기술분야에 종사하는 기술자의 의도 또는 관례 또는 새로운 기술의 출현 등에 따라 달라질 수 있다.
인증 성공 후 서비스 프로바이더(410)는 ITF(420)에 프로비젼 인포메이션 레코드(provision information record)를 전송한다(S410). 여기서, 프로비젼 인포메이션 레코드(provision information record)는 SP 접속 절차 동안 ITF에 의해 획득되는 프로비젼닝 인포메이션(provisioning information)과 인증 정보(authentication information)를 제공하는 레코드이다. 프로비젼 인포메이션 레코드(provision information record)는 ITFRegistrationOutputType 레코드의 형태를 가지며, ITFRegistrationInputType 레코드에 포함된 정보를 기초로 가입한 서비스에 커스트마이징된 데이터일 수 있다. 여기서 ITFRegistrationInputType 레코드는 가입자 식별자 정보 및 가입자 위치 정보 중 적어도 하나를 포함할 수 있다. 여기서 가입자 위치 정보는 가입자의 ITF가 위치하는 주소일 수 있다. 또한 ITFRegistrationInputType 레코드가 가입자 식별자 정보만을 포함하는 경우에는, Registration 서버는 가입자 식별자 정보를 기초로 사전에 저장된 가입자 위치 정보 및 가입 상태 정보를 획득할 수 있다.
일예로 프로비젼 인포메이션 레코드(provision information record)는 가입자의 가입 상태 및 ITF 위치로 커스트마이징될 수 있다. ITF(420)는 ITFRegistrationInputType 레코드를 통해 자신의 ID와 위치정보를 제공하고 Registration 서버는 이를 바탕으로 ITF가 가입한 서비스를 특정 지을 수 있다. 그리고 Registration 서버는 특정된 서비스를 바탕으로 ITF(420)가 받아야 할 서비스 인포메이션(Service Information)을 획득할 수 있는 주소를 ITFRegistrationOutputType 레코드 형태로 제공한다.
서비스 인포메이션(Service Information)은 Channel Map과 Channel Details에 대한 버전을 관리하는 마스터 SI 테이블 레코드(Master SI Table Record)와 패키지 형태의 채널 목록을 제공하는 채널 맵 레코드(Channel Map Record), 그리고 각 채널의 상세 정보를 담고 있는 채널 디테일스 레코드(Channel Details Record)로 구분된다. 여기서 서비스 인포메이션(Service Information)은 Push 모드 또는 Pull 모드로 전송될 수 있다.
서비스 프로바이더(410)는 ITF(420)에 마스터 SI 테이블 레코드(Master SI Table Record)를 전송한다(S415). 여기서 ITF(420)는 프로비젼 인포메이션 레코드(provision information record)에 포함된 Master SI Table의 위치 정보를 기초로 해당 마스터 SI 테이블 레코드를 수신하거나 서비스 프로바이더(410)에 요청할 수 있다.
또한 서비스 프로바이더(410)는 ITF(420)에 채널 맵 레코드(Channel Map Recode)를 전송한다(S420). 여기서 ITF(420)는 마스터 SI 테이블 레코드에 포함된 채널 정보를 기초로 해당 채널 맵 레코드를 수신하거나 서비스 프로바이더(410)에 요청할 수 있다.
그리고 서비스 프로바이더(410)는 ITF(420)에 채널 디테일스 레코드(Channel Details Record)를 전송한다(S425). 여기서 ITF(420)는 마스터 SI 테이블 레코드에 포함된 가상 채널 정보 또는 채널 맵 레코드에 포함된 채널 디테일스 위치 정보를 기초로 채널 디테일스 레코드를 수신하거나 서비스 프로바이더(410)에 요청할 수 있다.
도 5는 본 발명에 따른 서비스 프로바이더 디스커버리 타입(Service Provider Discovery Type)에 대한 바람직한 일실시예의 스키마를 도시한 도면이다.
도 5를 참조하면, 서비스 프로바이더 디스커버리 레코드는 ServiceProviderID 속성, Version 속성, LogoURI 속성, Name 엘리먼트, Description 엘리먼트 및 SProviderRegistrationServer 엘리먼트를 포함한다.
ServiceProviderID 속성은 서비스 프로바이더를 식별하는 유일한 식별자 정보를 포함하며, 식별자로 등록된 domain name을 사용함으로서 식별자의 유일성을 보장할 수 있다.
Version 속성은 이 레코드의 버전 정보를 포함한다.
LogoURI 속성은 서비스 프로바이더의 로고 이미지의 URI를 지정하는 로고 이미지 정보를 포함하며, 선택적으로 사용될 수 있다.
Name 엘리먼트는 서비스 프로바이더의 이름에 대한 정보를 포함하며, 서비스 프로바이더는 각 언어별로 하나씩의 이름을 가질 수 있다. 이를 위해, Name 엘리먼트는 Language 속성을 포함하며, Language 속성은 각 언어별로 정의된 이름에 대한 정보를 포함한다. 여기서 Name 엘리먼트는 적어도 하나의 Language 속성을 포함해야 한다.
Description 엘리먼트는 서비스 프로바이더에 대한 상세한 텍스트 설명 정보를 포함하며 텍스트 설명 정보는 서비스 프로바이더의 이름에 대항 정보와 유사하게 각 언어별로 하나씩 있을 수 있다. 이를 위해, Description 엘리먼트는 Language 속성을 포함하며, 상기 Language 속성을 복수개 포함할 수 있다. Language 속성은 텍스트 설명 정보를 포함한다. 여기서 텍스트 설명 정보는 선택적으로 제공 가능하며 제공되지 않을 수도 있다.
SProviderRegistrationServer 엘리먼트는 서비스 프로바이더의 Registration Server의 주소 정보를 포함한다. 이를 위해, SProviderRegistrationServer 엘리먼트는 Location URL 속성을 포함할 수 있으며, Location URL 속성은 Registration Server의 주소 정보를 포함한다. 여기서 Registration Server의 주소 정보는 일예로 URL 형태가 될 수 있다.
도 6은 본 발명에 따른 ITF 레지스트레이션 입풋 타입(ITF Registration Input Type)에 대한 바람직한 일실시예의 스키마를 도시한 도면이다.
도 6을 참조하면, ITF 레지스트레이션 입풋 레코드(ITF Registration Input record)는 ConsumerID 속성 및 ConsumerLocation 속성을 포함하며, Registration을 위해 ITF에서 Registration Sever로 전송하는 정보는 ITF 레지스트레이션 입풋 타입의 구조로 전송될 수 있다.
ConsumerID 속성은 가입자를 유일하게 식별할 수 있는 가입자 식별자 정보를 포함하며, 가입자 식별자로 ITF의 mac address 등이 사용될 수 있다.
ConsumerLocation 속성은 가입자의 위치를 나타내는 가입자 위치 정보를 포함한다. ConsumerLocation에 포함된 정보를 통해 Registration server는 가입자의 위치를 인식하여 해당되는 지역을 판정할 수 있고, 판정된 지역에 따라 ITF에 적합한 flow들을 선별하여 보내줄 수 있다. 여기서 가입자 위치 정보는 네트워크 접속(Network Attachment)단계에서 DHCP 옵션을 통하여 얻어질 수 있다.
도 7은 본 발명에 따른 ITF 레지스트레이션 아웃풋 타입(ITF Regitstration Output Type)에 대한 바람직한 일실시예의 스키마를 도시한 도면이다.
도 7을 참조하면, ITF 레지스트레이션 아웃풋 레코드는 MasterSITableLocation 엘리먼트, SubscribedChannelMap 엘리먼트, UnsubscribedChannelMap 엘리먼트, EPGDiscoveryLocation 엘리먼트 및 SPRemoteConfigurationServerLocation 엘리먼트를 포함하며, Registration을 성공하였을 경우에 Registartion Server에서 ITF로 전송하는 정보는 ITF 레지스트레이션 아웃풋 타입(ITF Regitstration Output Type) 구조로 전송될 수 있다.
MasterSITableLocation 엘리먼트는 Master SI Table의 위치 정보를 포함한다.
SubscribedChannelMap 엘리먼트는 사용자가 가입한 채널 맵에 대한 정보를 포함한다. 서비스 프로바이더는 자신들이 서비스하는 채널들을 여러 개의 채널 맵 형태로 제공하여 사용자가 이중 하나 이상을 선택하여 가입할 수 있도록 할 수 있다. 또한 채널 맵이 직접 사용자에게 보이지 않고 내부적으로 채널 맵 형태로 구성하여 채널 맵의 조합으로 사용자가 가입한 채널 목록을 제공하는 것도 가능할 것이다.
UnsubscribedChannelMap 엘리먼트는 사용자가 가입하지 않은 채널 맵에 대한 정보를 포함한다. 서비스 사업자는 사용자가 비록 현재는 가입하지 않아 시청할 수 없지만 프로모션을 위하여 이러한 채널 목록을 제공하는 것이 필요할 수 있다. 서비스 사업자는 선택적으로 이러한 채널 맵들을 제공할 수 있다.
EPGDiscoveryLocation 엘리먼트는 EPG 데이터를 디스커버리(discovery) 하기 위한 EPG 데이터 제공자 정보를 포함한다. 상기 EPG 데이터 제공자 정보는 EPG 데이터를 받을 수 있는 주소 정보를 포함한다. EPG는 선택적으로 제공할 수 있으며 하나 이상의 EPG를 제공할 수도 있다. 여기서 EPGDiscoveryLocation 엘리먼트는 일예로 EPG 디스커버리 레코드 타입(EPG Discovery Record Type)으로 정의될 수 있다.
SPRemoteConfigurationServerLocation 엘리먼트는 SP가 제공하는 Remote Configuration Server의 주소 정보를 포함한다. Remote Configuration Server의 주소 정보가 존재할 경우에는 ITF는 반드시 Remote Configuration Server에 접속하여 Remote Configuration 절차를 수행하여야 한다. 여기서 Remote Configuration Server는 전술한 RCMS 기능을 수행한다.
도 8은 서비스 인포메이션(SI : Service Information)을 구성하는 각 테이블간의 관계를 도시한 도면이다.
도 8을 참조하면, 마스터 SI 테이블 레코드(Master SI Table Record)는 가상 채널 맵(Virtual Channel Map)들에 대한 포인터들을 제공한다. 여기서 포인터들은 가상 채널 디스커버리 과정(Virtual Channel discovery process)를 시작하기 위해 필요한 정보이다. 또한 마스터 SI 테이블 레코드(Master SI Table Record)는 ITF가 SI의 일부 버전의 변경을 감지할 수 있도록 한다. 마스터 SI 테이블 레코드(Master SI Table Record)는 각 채널 맵(Channel Map)들의 버전 정보를 담고 있는 채널 맵 마스터(Channel Map Master)와 채널의 상세 정보를 담고 있는 채널 디테일스(Channel Detail)에 대한 버전 정보를 담고 있는 가상 채널 마스터(Virtual Channel Master)들로 구성될 수 있다. 여기서 마스터 SI 테이블 레코드(Master SI Table Record)는 가상 채널 마스터(Virtual Channel Master)를 선택적으로 포함할 수 있다.
각 Channel Map은 VCListID로 유일하게 식별되며 VCListVerion과 ChannelDetailsVersion의 두 가지 버전 정보를 가진다. VCListVersion은 Channel Map의 채널 목록에 대한 버전으로, 채널이 추가되거나 삭제될 경우에만 버전이 변경된다. ChannelDetailsVersion은 Channel Map에 포함된 채널의 상세 정보가 변경 여부를 관리하는 버전 정보로 채널의 상세 정보가 변경된 경우에만 버전이 변경된다.
마스터 SI 테이블 레코드는 서비스 프로바이더에 유일하게 하나만 존재할 수 도 있다. 하지만 서비스의 구성이 지역별로 다를 경우, 각 지역별로 하나의 마스터 SI 테이블 레코드를 구성하는 것이 보다 효율적일 것이다. 이 경우 Registration 단계를 통해 ITF가 속한 지역에 맞는 마스터 SI 테이블 레코드를 제공하는 것이 가능하다.
도 8에서 마스터 SI 테이블 레코드에 2개의 채널 맵(Channel Map)의 예시되어져 있고, 이들은 VCListID로 유일하게 식별될 수 있다. 각 채널 맵(Channel Map)은 하나 이상의 채널을 가질 수 있으며 채널의 상세 정보를 채널 맵(Channel Map)상에 포함하는 것이 아니라, 이 정보를 얻을 수 있는 위치를 지정한다. 즉 채널 디테일스 로케이션(Channel Details Location)이 채널 상세 정보의 위치를 지정하는 역할을 한다.
채널 디테일스 레코드(Channel Details Record)는 채널의 상세 정보를 담고 있으며 채널 맵(Channel Map)상의 채널 디테일스 로케이션(Channel Details Location)에 의하여 찾아갈 수 있다. 이와 같은 방법 외에도 채널 디테일스 로케이션(Channel Details Record)을 전달하는 방법은 다음과 같이 여러 가지 방식을 가질 수 있다.
채널 디테일스 로케이션(Channel Details Record) 전달 방식
1. 글로벌(Global)로 하나의 Multicast stream으로 제공하는 방법
하나의 글로벌(Global)한 멀티캐스트 스트림(Multicast stream)으로 서비스 프로바이더가 제공하는 모든 채널의 채널 디테일스 레코드(Channel Details Record)를 뿌리는 방식이다. 이 경우에는 전술한 것과 같이 채널 맵(Channel Map) 상에서 각 채널별 상세 정보의 주소를 알려줄 필요 없이 ITFRegistrationOutputType에 이 글로벌한 멀티캐스트 스트림(Multicast stream)의 주소를 담아 줌으로써 제공해 줄 수 있다.
2. 지역별로 하나의 Multicast stream으로 제공하는 방법
상기 1번의 방식은 전역적으로 하나의 스트림으로 채널 상세 정보를 제공하는데 비해서, 이 경우 각 지역별로 별개의 멀티캐스트 스트림(Multicast stream)을 통하여 채널 상세 정보를 제공할 수 있다. 이 경우에도 Registration과정을 통해 ITF에 속한 지역을 특정 지을 수 있기 때문에 ITFRegistrationOutputType을 통해 지역별 유일한 멀티캐스트 스트림(Multicast stream)의 주소를 지정해 줄 수 있다.
3. 채널 맵(Channel Map)에 기본 채널 디테일스 로케이션(Default Channel details location) 지정 방법
한 채널 맵에 속한 채널의 상세 정보가 일부 혹은 전부가 동일 주소에서 받아올 수 있다면, 이를 각 Channel Details Location별로 지정하는 것보다 Channel Map에 한 번 지정하는 것으로 충분하다. 이 경우 만일 다른 주소에서 상세 정보를 획득해야 할 채널이 존재할 경우에는, 채널 디테일스 로케이션(Channel Details Location)에 다시 또는 추가적으로 지정함으로써, 채널 맵(Channel Map)에서 지정한 주소를 오버라이드(Override)할 수 있게 된다.
4. 도 5에서 도시한 바와 같이 Channel Details Location을 통해 각 채널별 상세 정보의 위치를 지정하는 방법
각 채널 맵에 속한 채널의 상세 정보를 각 Channel Details Location별로 지정하는 방식이다. 예를 들면, ServiceID가 각각 "WNBC.COM/ch9" 및 "WNBC.COM/ch11"인 채널에 대해서, "WNBC.COM/ch9"인 경우에는, 상기 채널의 Channel Details Location의 LocationURL을 "ipm://sd.verizon.com"로, "WNBC.COM/ch11"인 채널의 경우에는, 상기 채널의 상세 정보에 대한 Channel Details Location의 LocationURL을 "ipm://sd.verizon.com"로 각각 지정한다.
전송되는 채널 디테일스 레코드(Channel Details Record)들에서 각 채널의 상세 정보를 찾기 위해, 채널 디테일스 레코드 로케이션(Channel Details Location)의 ServiceID가 각 채널의 상세 정보를 구분 짓는 유일한 식별자로 역할을 할 수 있으며, 채널 디테일스 레코드 로케이션(Channel Details Location)의 ServiceID를 통해 해당 채널의 채널 디테일스 레코드(Channel Details Record)를 찾을 수 있다.
만일 멀티캐스트 방식으로 채널 디테일스 레코드(Channel Details Record)를 전달받는 경우에는, 해당 스트림에 join하여 레코드들을 계속 수신하면서 ServiceID에 해당하는 채널 디테일스 레코드(Channel Details Record)를 찾을 수 있다.
만일 유니캐스트 방식으로 채널 디테일스 레코드(Channel Details Record)를 수신하는 경우에는, ServiceID를 파라미터로 서버에 전달하여 원하는 채널 디테일스 레코드(Channel Details Record)만을 전송하도록 하여 해당 채널 디테일스 레코드(Channel Details Record)만을 수신할 수 있다.
마스터 SI 테이블 레코드(Master SI Table Record), 채널 맵 레코드(Channel Map Record), 채널 디테일스 레코드(Channel Details Record)는 논리적으로 세 개의 분리된 플로우(flow)를 통해 전달되며 Push 모드 및 Pull 모드 중 어느 하나의 방식이라도 무방하게 전달될 수 있다.
마스터 SI 테이블 레코드(Master SI Table Record)를 통행 ITF는 채널 맵(Channel Map)과 채널 디테일스(Channel Details)의 업데이트를 관리할 수 있다. ITF는 마스터 SI 테이블을 모니터링하여 채널 맵(Channel Map)과 채널 디테일스(Channel Details)의 버전 변경 여부를 판단하고, 버전이 변경된 경우에는, 채널 맵(Channel Map)과 채널 디테일스(Channel Details)가 업데이트되었다고 인식하여 채널 맵(Channel Map)과 채널 디테일스(Channel Details)에 대한 업데이트를 수행할 수 있다.
여기서 채널 디테일스(Channel Details)의 업데이트 유무는 두 가지 방법으로 확인할 수 있다. 첫 번째는 마스터 SI 테이블 레코드(Master SI Table Record)의 Channel Map Master의 Channel Details Version을 통해 확인할 수 있다. Channel Map Master의 Channel Details Version이 변경된 경우에는, 채널 디테일스(Channel Details)는 업데이트되었다고 인식할 수 있다. 두 번째는 채널 맵 레코 드(Channel Map Record)의 Channel Details Version을 통해 확인할 수 있다. 즉 Channel Map Master가 지시하는 채널 맵 레코드(Channel Map Record)를 찾고 해당 채널 맵 레코드(Channel Map Record)의 Channel Details Version의 변경 여부를 판단하여 업데이트 유무를 확인할 수 있다. 두 번째 방법에서 마스터 SI 테이블 레코드(Master SI Table Record)는 Virtual Channel Master를 포함할 필요가 없고 Channel Map Master가 Channel Details Version을 포함할 필요가 없다.
도 9는 마스터 SI 테이블 레코드 타입(Master SI Table Record Type)에 대한 바람직한 일실시예의 스키마를 도시한 도면이다.
도 9를 참조하면, 마스터 SI 테이블 레코드(Master SI Table Record)는 채널 맵 관리 정보를 포함한다. 이를 위해, 마스터 SI 테이블 레코드(Master SI Table Record)는 ServiceProviderID 속성, Version 속성, ChannelMapMaster 엘리먼트, VirtualChannelMaster 엘리먼트를 포함할 수 있다. 여기서 VirtualChannelMaster 엘리먼트는 선택적으로 포함할 수 있다.
ServiceProviderID 속성은 서비스 프로바이더를 유일하게 식별할 수 있는 서비스 프로바이더 식별자 정보를 포함하고 서비스 프로바이더 식별자로 등록된 도메인 이름을 이용할 수 있다.
Version 속성은 마스터 SI 테이블 레코드의 버전 정보를 포함한다. Version 속성에 포함된 버전 정보로 마스터 SI 테이블 레코드의 업데이트 여부를 판단할 수 있다.
ChannelMapMaster 엘리먼트는 Channel Map을 수신하기 위한 정보를 포함한 다. 즉, ChannelMapMaster 엘리먼트는 채널 맵 인스턴스(Channel Map Instance)에 대한 포인터를 포함한다. 또한 마스터 SI 테이블 레코드(Master SI Table Record)는 하나 이상의 채널 맵 레코드들을 각각 지시하기 위한 하나 이상의 포인터들을 포함할 수 있다. ChannelMapMaster 엘리먼트에 포함된 정보를 기초로 채널 맵 레코드(Channel Map Record)를 수신할 수 있고 채널 맵(Channel Map)의 업데이트 여부를 판단할 수 있다. 이를 위해 ChannelMapMaster 엘리먼트는 VCListID 속성, VCListVersion 속성 및 ChannelDetailsVersion 속성을 포함할 수 있다. VCListID 속성은 채널 맵 인스턴스를 유일하게 식별하는 식별자 정보를 포함한다. VCListVersion 속성은 채널 맵을 구성하는 채널 목록들의 변화 여부를 알려주는 버전 정보를 포함한다. 여기서 VCListVersion 속성에 포함된 버전 정보는 채널이 추가되거나 삭제될 경우 변경된다. ChannelDetailsVersion 속성은 채널 맵을 구성하는 채널의 상세 정보가 변경 여부를 알려주는 버전 정보를 포함한다. 여기서 ChannelDetailsVersion 속성에 포한된 버전 정보는 채널의 상세 정보가 변경 될 때 바뀐다.
VirtualChannelMaster 엘리먼트는 ServiceID 속성 및 VCVersion 속성을 포함한다. ServiceID 속성은 서비스를 유일하게 식별하기 위한 식별자 정보를 포함한다. ServiceID 속성에 포함된 정보를 기초로 원하는 채널 디테일스 레코드(Channel Details Record)를 찾을 수 있다. VCVersion 속성은 채널 디테일스(Channel Details)의 버전 정보를 포함한다.
도 10은 채널 맵 타입(Channel Map Type)에 대한 바람직한 일실시예의 스키 마를 도시한 도면이다.
도 10을 참조하면, 채널 맵(Channel Map)은 채널 맵 정보를 담고 있는 구조로 Channel의 상세 정보를 포함하고 있지 않으며, 채널들의 묶음 형태의 패키지의 역할을 수행한다. 여기서 도 10의 채널 맵(Channel Map)은 도 8에서 전술한 채널 디테일스(Channel Details) 전달방법 중 4번째 방법인 각 채널 디테일스(ChannelDetails) 별로 별도 주소를 지정하는 방식을 나타내고 있다. 여기서 채널 맵 정보는 일예로 채널 맵 인스턴스(Channel Map Instance)가 될 수 있다.
채널 맵 레코드(Channel Map Record)는 채널 맵 인스턴스(Channel Map Instance)를 포함한다. 이를 위해, 채널 맵 레코드(Channel Map Record)는 ServiceProviderID 속성, VCListID 속성, VCListVersion 속성, ChannelDetailsVersion 속성 및 ChannelDetailsLocation 엘리먼트를 포함한다.
ServiceProviderID 속성은 서비스 프로바이더를 유일하게 식별할 수 있는 서비스 프로바이더 식별자 정보를 포함하고 서비스 프로바이더 식별자로 등록된 도메인 이름을 이용할 수 있다.
VCListID는 ChannelMap을 유일하게 식별하는 식별자 정보를 포함한다.
VCListVersion 속성은 채널 맵을 구성하는 채널 목록들의 변화 여부를 알려주는 버전 정보를 포함한다. 여기서 VCListVersion 속성에 포함된 버전 정보는 채널이 추가되거나 삭제될 경우 변경된다.
ChannelDetailsVersion 속성은 채널 맵을 구성하는 채널의 상세 정보의 변경 여부를 알려주는 버전 정보를 포함한다. 여기서 ChannelDetailsVersion 속성에 포 한된 버전 정보는 채널의 상세 정보가 변경 될 때 바뀐다.
ChannelDetailsLocation 엘리먼트는 각 Channel의 상세 정보의 위치 정보를 포함한다. 이를 위해 ChannelDetailsLocation 엘리먼트는 ServiceID 속성, LocationURL 속성 및 VCVersion 속성을 포함한다. ServiceID 속성은 서비스를 유일하게 식별하기 위한 식별자 정보를 포함한다. ServiceID 속성에 포함된 정보를 기초로 원하는 채널 디테일스 레코드(Channel Details Record)를 찾을 수 있다. LocationURL 속성은 이 서비스의 상세 정보를 얻을 수 있는 주소 정보를 포함한다. VCVersion 속성은 채널 디테일스(Channel Details)의 버전 정보를 포함한다.
도 11은 채널 맵 타입(Channel Map Type)에 대한 바람직한 다른 실시예의 스키마를 도시한 도면이다.
도 11을 참조하면, 채널 맵(Channel Map)은 채널 맵 정보를 담고 있는 구조로 채널들의 묶음 형태의 패키지의 역할을 수행하며 채널의 상세 정보를 포함하고 있지 않고 대신에 채널의 상세 정보의 디볼트 위치에 대한 정보를 포함한다. 여기서 도 11의 채널 맵(Channel Ma)은 도 8에서 전술한 채널 디테일스(Channel Details) 전달방법 중 3번째 방법인 채널 맵(Channel Map)에 기본 채널 디테일스 로케이션(default channel details location) 지정 방법을 나타내고 있다. 여기서 채널 맵 정보는 일예로 채널 맵 인스턴스(Channel Map Instance)가 될 수 있다.
채널 맵 레코드(Channel Map Record)는 채널 맵 인스턴스(Channel Map Instance)를 포함한다. 이를 위해, 채널 맵 레코드(Channel Map Record)는 ServiceProviderID 속성, VCListID 속성, VCListVersion 속성, ChannelDetailsVersion 속성, ChannelDetailsDefaultLocation 엘리먼트 및 ChannelDetailsLocation 엘리먼트를 포함한다.
ServiceProviderID 속성은 서비스 프로바이더를 유일하게 식별할 수 있는 서비스 프로바이더 식별자 정보를 포함하고 서비스 프로바이더 식별자로 등록된 도메인 이름을 이용할 수 있다.
VCListID는 ChannelMap을 유일하게 식별하는 식별자 정보를 포함한다.
VCListVersion 속성은 채널 맵을 구성하는 채널 목록들의 변화 여부를 알려주는 버전 정보를 포함한다. 여기서 VCListVersion 속성에 포함된 버전 정보는 채널이 추가되거나 삭제될 경우 변경된다.
ChannelDetailsVersion 속성은 채널 맵을 구성하는 채널의 상세 정보의 변경 여부를 알려주는 버전 정보를 포함한다. 여기서 ChannelDetailsVersion 속성에 포한된 버전 정보는 채널의 상세 정보가 변경 될 때 바뀐다.
ChannelDetailsDefaultLocation 엘리먼트는 채널 맵에 속한 채널의 상세 정보의 디볼트 위치 정보를 포한한다. 이를 위해 ChannelDetailsDefaultLocation 엘리먼트는 LocationURL 속성을 포함한다. LocationURL 속성은 디볼트 위치 정보를 포함한다. 여기서 디볼트 위치 정보는 한 채널 맵에 속한 채널의 상세 정보를 전부 또는 일부 받아올 수 있는 주소이다. 만일 다른 주소에서 상세 정보를 획득해야 할 채널이 존재하는 경우에는, ChannelDetailsLocation 엘리먼트에 해당 채널의 상세 정보의 위치 정보를 오버라이드할 수 있다.
ChannelDetailsLocation 엘리먼트는 각 Channel의 상세 정보의 위치 정보를 포함한다. 즉 ChannelDetailsDefaultLocation 엘리먼트에 포함된 디볼트 위치 정보로부터 얻어 올 수 없는 채널의 상세 정보가 있는 경우에는, ChannelDetailsLocation 엘리먼트가 상기 채널의 상세 정보의 위치 정보를 포함한다. 이를 위해 ChannelDetailsLocation 엘리먼트는 ServiceID 속성, LocationURL 속성 및 VCVersion 속성을 포함한다. ServiceID 속성은 서비스를 유일하게 식별하기 위한 식별자 정보를 포함한다. ServiceID 속성에 포함된 정보를 기초로 원하는 채널 디테일스 레코드(Channel Details Record)를 찾을 수 있다. LocationURL 속성은 이 서비스의 상세 정보를 얻을 수 있는 주소 정보를 포함한다. VCVersion 속성은 채널 디테일스(Channel Details)의 버전 정보를 포함한다.
도 12a 및 도 12b는 채널 디테일스 타입(Channel Details Type)에 대한 바람직한 일실시예의 스키마를 도시한 도면이다.
도 12a 및 도 12b를 참조하면, 채널 디테일스 레코드(Channel Details Record)는 채널 맵(Channel Map)에 포함된 채널의 상세 정보를 포함한다. 이를 위한 채널 디테일스 레코드(Channel Details Record)는 ServiceProviderID 속성, VirtualChannelDetails 엘리먼트를 포함한다.
ServiceProviderID 속성은 서비스 프로바이더를 유일하게 식별할 수 있는 서비스 프로바이더 식별자 정보를 포함한다.
VirtualChannelDetails 엘리먼트는 각 채널의 상세 정보를 포함한다. 이를 위해, VirtualChannelDetails 엘리먼트는 ChannelType 속성, ServiceID 속성, VCVersion 속성, ShortChannelName 엘리먼트, ChannelNumber 엘리먼트 및 ChannelSource 엘리먼트를 포함한다. 여기서 ChannelSource 엘리먼트는 선택적으로 포함될 수 있다. VirtualChannelDetails 엘리먼트가 ChannelSource 엘리먼트가 포함하지 않는 경우에는, ChannelSource 엘리먼트는 별도의 ChannelSource 레코드로 독립적으로 전송될 수 있고, VirtualChannelDetails 엘리먼트는 ChannelSource 레코드를 수신할 수 있는 위치 정보 및 식별 정보를 포함할 수 있다.
ChannelType 속성은 채널의 서비스 종류를 나타내는 서비스 타입 정보를 포함하고, 서비스 타입 정보는 해당 채널이 비디오 채널, 오디오채널, 데이터방송 채널 인지를 알려준다.
ServiceID 속성은 서비스를 유일하게 식별하기 위한 식별자 정보를 포함한다. ServiceID 속성에 포함된 정보를 기초로 원하는 채널 디테일스 레코드(Channel Details Record)를 찾을 수 있다.
VCVersion 속성은 채널 디테일스(Channel Details)의 버전 정보를 포함한다.
ShortChannelName 엘리먼트는 7자 이내의 짧은 텍스트 값으로 채널의 이름을 포함한다. 일예로 "WABC"와 같은 값이 될 수 있을 것이다.
ChannelNumber 엘리먼트는 해당 채널 번호를 포함한다. 본 발명에서는 1파트 채널 넘버 및 2파트 채널 넘버를 모두를 지원할 수 있어, 해당 채널 번호는 1파트 채널 넘버 및 2파트 채널 넘버 중 어느 하나가 될 수 있다. 이를 위해 ChannelNumber 엘리먼트는 물리적 채널 정보를 포함하는 MajorChannelNumber 엘리먼트 및 논리적 채널 정보를 포함하는 MinorChannelNumber를 포함할 수 있다.
ChannelSource 엘리먼트는 해당 채널의 실제 소스를 지정하는 정보를 포함한 다. 이를 위해 ChannelSource 엘리먼트는 VirtualChannelLocation 엘리먼트, ChannelSourcePurpose 엘리먼트, VideoAttribute 엘리먼트, AudioAttributes 엘리먼트 및 ECMLocation 엘리먼트를 포함한다.
VirtualChannelLocation 엘리먼트는 채널의 소스를 받을 수 있는 IP 주소 및 전송 프로토콜 정보를 포함한다. 이를 위해 VirtualChannelLocation 엘리먼트는 ProgramNumber 속성 및 IPLocation 엘리먼트를 포함한다. ProgramNumber 속성을 선택적으로 지원함으로써 MPTS로의 확장성을 보장함과 동시에 SPTS의 경우에도 수신한 스트림이 내가 원하는 스트림인지를 확인할 수 있는 기회를 제공한다. IPLocation 엘리먼트는 채널의 소스를 받을 수 있는 URL 정보를 포함하는 Location URL 속성을 포함한다.
ChannelSourcePurpose 엘리먼트는 채널의 성격을 나타내는 값인 소스 타입 정보를 포함하며, 복수개의 소스 타입 정보를 포함할 수 있다. 여기서 소스 타입 정보는 HD, SD, PIP 및 Barker 중 어느 하나의 값이 될 수 있다. Barker 채널은 광고 혹은 홍보용의 채널로써 해당 채널의 권한이 없어서 시청할 수 없을 때 이 채널로 자동 선택되며 해당채널의 홍보와 가입 안내의 역할을 수행하며, Barker는 HD Barker, SD Barker 및 PIP Barker 중 적어도 하나의 값을 포함한다.
한 채널은 ChannelSourcePurpose가 지정하는 값 별로 하나씩의 소스를 가질 수 있다. 즉 ChannelSourcePurpose 엘리먼트가 하나의 HD 및 하나의 SD를 동시에 포함하는 경우에는, 한 채널은 하나의 HD 소스 및 하나의 SD 소스를 가질 수 있다. 그러나 한 채널은 2개의 HD 소스를 동시 가질 필요는 없으므로, ChannelSourcePurpose 엘리먼트는 2개의 HD를 동시에 포함하지 않는다.
VideoAttributes 엘리먼트는 해당 소스의 비디오 속성 정보를 포함한다. 이를 위해 VideoAttributes 엘리먼트는 비디오 코덱 정보를 포함하는 Codec 속성, 비디오 프로파일 정보를 포함하는 Profile 속성 및 비디오 레벨 정보를 포함하는 Level 속성을 포함한다.
AudioAttributes 엘리먼트는 해당 소스의 오디오 속성 정보를 포함한다. 이를 위해 AudioAttributes 엘리먼트는 오디오 코덱 정보를 포함하는 Codec, 비디오 프로파일 정보를 포함하는 Profile 속성, 오디오 레벨 정보를 포함하는 Level 속성, 오디오 bitrate 정보를 포함하는 Bitrate 속성 및 오디오 샘플링 주파수 정보를 포함하는 SamplingFrequency 정보를 포함한다.
VideoAttribute 엘리먼트에 포함된 비디오 속성 정보 및 AudioAttributes 엘리먼트에 포함된 오디오 속성 정보를 통해 ITF의 기능에 맞추어서 최적의 소스를 선택하여 시청할 수 있다.
ECMLocation 엘리먼트는 ECMLocation은 ECM 정보를 수신할 수 있는 주소 정보를 포함한다.
도 13은 본 발명에 따른 서비스 프로바이더 디스커버리(Service Provider Discovery)에 대한 바람직한 일실시예의 수행과정을 도시한 흐름도이다.
도 13을 참조하면, ITF는 SD 서버를 찾는다(S1300). 여기서 ITF는 도 4에서 전술된 SD 서버(Service Discovery Server)의 주소 목록 서치 방식에 따라 SD 서버를 찾을 수 있다.
ITF는 SD 서버의 주속 목록을 기초로 SD 서버에 접속하여 SD 서버로부터 서비스 프로바이더 디스커버리 레코드(Service Provider Discovery Record)를 구한다(S1310). 여기서 서비스 프로바이더 디스커버리 레코드(Service Provider Discovery Record)는 도 5에서 전술한 서비스 프로바이더 디스커버리 레코드(Service Provider Discovery Record)일 수 있다. 또한 ITF는 SD 서버로부터 서비스 프로바이더 디스커버리 레코드(Service Provider Discovery Record)를 PUSH 모드 또는 PULL 모드로 수신받을 수 있다.
ITF는 수신한 서비스 프로바이더 디스커버리 레코드(Service Provider Discovery Record)의 ServiceProviderID 속성을 파싱하여, ServiceProviderID 속성에 포함된 서비스 프로바이더 식별자 정보를 산출한다(S1320).
ITF는 산출한 서비스 프로바이더 식별자 정보가 서비스를 제공받기를 원하는 서비스 프로바이더인지를 확인한다(S1330). 서비스를 제공받기를 원하는 서비스 프로바이더가 아닌 경우에는, ITF는 단계 S1300을 수행하여 SD 서버의 주속 목록에서 다른 SD 서버를 찾는다.
서비스를 제공받기를 원하는 서비스 프로바이더인 경우에는, ITF는 프로바이더 디스커버리 레코드(Service Provider Discovery Record)의 Name 속성 및 Description 속성을 파싱하여, Name 속성에 포함된 서비스 프로바이더의 이름에 대한 정보 및 Description 속성에 포함된 서비스 프로바이더에 대한 상세한 텍스트 설명 정보를 산출한다(S1340).
그리고 ITF는 프로바이더 디스커버리 레코드(Service Provider Discovery Record)의 SProviderRegistrationServer 엘리먼트를 파싱하여, SProviderRegistrationServer 엘리먼트에 포함된 서비스 프로바이더의 Registration Server의 주소 정보를 산출한다(S1350). ITF는 산출한 Registration Server의 주소 정보를 기초로 Registration Server에 접속하여 ITF 등록 절차를 수행할 수 있다.
도 14는 본 발명에 따른 서비스 프로바이더 등록(Service Provider Registration) 및 서비스 디스커버리(Service Discovery)에 대한 바람직한 일실시예의 수행과정을 도시한 흐름도이다.
도 14를 참조하면, ITF는 서비스 프로바이더 디스커버리 레코드에 포함된 Registration Server의 주소 정보가 지정하는 Registration Server로 등록 요청을 전송한다(S1400). 여기서 ITF는 등록 요청으로 도 6에서 전술된 ITFRegistrationInputType 레코드를 전송할 수 있다.
Registration Server는 등록 요청을 수신하여 ITF의 등록 여부를 판단한다(S1410). 여기서 Registration Server는 등록 요청으로 ITFRegistrationInputType 레코드를 수신할 수 있고, ITFRegistrationInputType 레코드에 포함된 가입자 식별자 정보 및 가입자 위치 정보를 기초로 등록 여부를 판단할 수 있다.
등록이 승인된 경우에는, ITF는 ITFRegistrationOutputType 레코드를 수신한다(S1420). 여기서 ITFRegistrationOutputType 레코드는 도 7에서 전술된 ITFRegistrationOutputType 레코드일 수 있고, 또한 TFRegistrationOutputType 레 코드에 포함된 정보는 ITFRegistrationInputType 레코드에 포함된 정보에 의해 커스트마이징된 정보일 수 있다.
ITF는 수신한 ITFRegistrationOutputType 레코드의 MasterSITableLocation 엘리먼트 파싱하여, MasterSITableLocation 엘리먼트에 포함된 Master SI Table의 위치 정보를 산출한다(S1430).
ITF는 산출한 Master SI Table의 위치 정보를 기초로 마스터 SI 테이블 레코드(Master SI Table Record)를 수신한다(S1440). 여기서 수신된 마스터 SI 테이블 레코드(Master SI Table Record)는 도 9에서 전술된 마스터 SI 테이블 레코드(Master SI Table Record)일 수 있다.
*ITF는 수신한 ITFRegistrationOutputType 레코드의 SubscribedChannelMap 엘리먼트를 파싱하여, SubscribedChannelMap 엘리먼트에 포함된 사용자가 가입한 채널 맵에 대한 정보를 산출한다(S1450). 여기서 ITF는 사용자가 가입한 채널 맵을 수신하기 위한 채널 맵 위치 정보를 마스터 SI 테이블 레코드(Master SI Table Record)의 ChannelMapMaster로 부터 산출할 수 있다.
ITF는 상기 산출한 채널 맵 위치 정보를 기초로 채널 맵 레코드(Channel Map Record)를 수신한다(S1460). 여기서 수신된 채널 맵 레코드(Channel Map Record)는 도 10에서 전술된 채널 맵 레코드(Channel Map Record) 및 도 11에서 전술된 채널 맵 레코드(Channel Map Record) 중 적어도 하나일 수 있다.
ITF는 수신한 채널 맵 레코드(Channel Map Record)의 ChannelDetailsLocation 엘리먼트를 파싱하여, ChannelDetailsLocation 엘리먼트에 포함된 채널의 상세 정보의 위치 정보를 산출한다(S1470).
ITF는 산출한 채널의 상세 정보의 위치 정보를 기초로 채널 디테일스 레코드(Channel Details Record)를 수신한다(S1480). 여기서 수신한 채널 디테일스 레코드(Channel Details Record)는 도 12a 및 도 12b에서 도시된 채널 디테일스 레코드(Channel Details Record)일 수 있다.
그리고 ITF는 수신한 서비스 서비스를 시작한다(S1490).
도 15는 마스터 SI 테이블(Master SI Table)의 업데이트를 처리하는 방법에 대한 바람직한 일실시예의 수행과정을 도시한 흐름도이다.
도 15를 참조하면, ITF는 마스터 SI 테이블(Master SI Table)을 업데이트한다(S1500). ITF는 마스터 SI 테이블(Master SI Table)을 실시간으로 모니터닝하며 수신한 마스터 SI 테이블 레코드(Master SI Table Record)의 버전 변경 여부를 확인할 수 있다. 그리고 수신한 마스터 SI 테이블 레코드(Master SI Table Record)의 버전이 변경된 경우에는, ITF는 수신한 마스터 SI 테이블 레코드(Master SI Table Record)에 포함된 정보로 마스터 SI 테이블(Master SI Table)을 업데이트한다.
ITF는 마스터 SI 테이블(Master SI Table)에 포함된 ChannelMapMaster 엘리먼트 중 업데이트를 위한 ChannelMapMaster 엘리먼트를 선택한다(S1510).
ITF는 선택한 ChannelMapMaster 엘리먼트가 사용자가 가입한 채널 맵을 수신하기 위한 정보를 포함하는지 확인한다(S1520). 이를 위해 ITF는 ITFRegistrationOutputType 레코드의 SubscribedChannelMap에 포함된 사용자가 가 입한 채널 맵에 대한 정보를 사용할 수 있다.
사용자가 가입한 채널 맵을 수신하기 위한 정보를 포함하는 경우에는, ITF는 선택한 ChannelMapMaster 엘리먼트의 VCListVersion 속성에 포함된 버전 정보가 변경되었는지 확인한다(S1530). VCListVersion 속성에 포함된 버전 정보가 변경된 경우에는, ITF는 업데이트된 채널 맵 레코드(Channel Map Record)를 수신하고, 수신한 채널 맵 레코드(Channel Map Record)에 포함된 정보로 채널 맵(Channel Map)을 업데이트한다(S1540).
마스터 SI 테이블(Master SI Table)에 선택되진 않은 ChannelMapMaster 엘리먼트가 있는지 확인한다(S1550). 선택되진 않은 ChannelMapMaster 엘리먼트가 있는 경우에는, ITF는 단계 S1510을 수행한다.
도 16은 마스터 SI 테이블(Master SI Table)의 업데이트를 처리하는 방법에 대한 바람직한 다른 실시예의 수행과정을 도시한 흐름도이다.
도 16을 참조하면, ITF는 마스터 SI 테이블(Master SI Table)을 업데이트한다(S1600). ITF는 마스터 SI 테이블(Master SI Table)을 실시간으로 모니터닝하며 수신한 마스터 SI 테이블 레코드(Master SI Table Record)의 버전 변경 여부를 확인할 수 있다. 그리고 수신한 마스터 SI 테이블 레코드(Master SI Table Record)의 버전이 변경된 경우에는, ITF는 수신한 마스터 SI 테이블 레코드(Master SI Table Record)에 포함된 정보로 마스터 SI 테이블(Master SI Table)을 업데이트한다.
ITF는 마스터 SI 테이블(Master SI Table)에 포함된 ChannelMapMaster 엘리먼트 중 업데이트를 위한 ChannelMapMaster 엘리먼트를 선택한다(S1610).
ITF는 선택한 ChannelMapMaster 엘리먼트가 사용자가 가입한 채널 맵을 수신하기 위한 정보를 포함하는지 확인한다(S1620). 이를 위해 ITF는 ITFRegistrationOutputType 레코드의 SubscribedChannelMap에 포함된 사용자가 가입한 채널 맵에 대한 정보를 사용할 수 있다.
사용자가 가입한 채널 맵을 수신하기 위한 정보를 포함하는 경우에는, ITF는 선택한 ChannelMapMaster 엘리먼트의 VCListVersion 속성에 포함된 버전 정보가 변경되었는지 확인한다(S1630). VCListVersion 속성에 포함된 버전 정보가 변경된 경우에는, ITF는 업데이트된 채널 맵 레코드(Channel Map Record)를 수신하고, 수신한 채널 맵 레코드(Channel Map Record)에 포함된 정보로 채널 맵(Channel Map)을 업데이트한다(S1640).
ITF는 선택한 ChannelMapMaster 엘리먼트의 ChannelDetailsVersion 속성에 포함된 버전 정보가 변경되었는지 확인한다(S1650). ChannelDetailsVersion 속성에 포함된 버전 정보가 변경된 경우에는, 채널 상세 정보(Channel Details) 업데이트를 수행한다(S1650).
마스터 SI 테이블(Master SI Table)에 선택되진 않은 ChannelMapMaster 엘리먼트가 있는지 확인한다(S1670). 선택되진 않은 ChannelMapMaster 엘리먼트가 있는 경우에는, ITF는 단계 S1610을 수행한다.
도 17은 채널 디테일스 버전(Channel Details Version)의 업데이트를 처리하는 방법에 대한 바람직한 일실시예의 수행과정을 도시한 흐름도이다.
도 17을 참조하면, ITF는 채널 맵(Channel Map)을 업데이트한다(S1700).
ITF는 채널 맵(Channel Map)에서 채널을 선택한다(S1710). 여기서 ITF는 채널 맵(Channel Map)에서 선택한 채널의 상세 정보의 위치 정보를 포함하는 ChannelDetailsLocation 엘리먼트도 함께 선택할 수 있다.
ITF는 선택한 ChannelDetailsLocation 엘리먼트의 VCVersion 속성에 포함된 버전 정보가 변경되었는지를 확인한다(S1720). 버전 정보가 변경된 경우에는, ITF는 업데이트된 채널 디테일스 레코드(Channel Details Record)를 수신하고, 수신한 채널 디테일스 레코드(Channel Details Record)에 포함된 정보를 기초로 선택한 채널의 채널 디테일스(Channel Details)를 업데이트한다(S1730).
ITF는 채널 맵(Channel Map)에서 선택되지 않은 채널이 있는 지를 확인한다(S1740). 선택되지 않은 채널이 있는 경우에는, ITF는 단계 S1710을 수행한다.
도 18은 채널 디테일스 버전(Channel Details Version)의 업데이트를 처리하는 방법에 대한 바람직한 다른 실시예의 수행과정을 도시한 흐름도이다.
도 18을 참조하면, ITF는 채널 맵(Channel Map)에서 채널을 선택한다(S1800). 여기서 ITF는 채널 맵(Channel Map)에서 선택한 채널의 상세 정보의 위치 정보를 포함하는 ChannelDetailsLocation 엘리먼트도 함께 선택할 수 있다.
ITF는 마스터 SI 테이블(MasterSITable)에서 선택한 ChannelDetailsLocation 엘리먼트의 ServiceID 속성에 포함된 식별자 정보와 같은 식별자 정보를 포함하는 ServiceID 속성이 포함된 Virtual Channel Master 엘리먼트를 검색한다(S1810).
ITF는 검색한 Virtual Channel Master 엘리먼트의 VCVersion 속성에 포함된 버전 정보와 선택한 ChannelDetailsLocation 엘리먼트의 VCVersion 속성에 포함된 버전 정보와 같은 지를 판단한다(S1820). 버전 정보과 다른 경우에는, ITF는 업데이트된 채널 디테일스 레코드(Channel Details Record)를 수신하고, 수신한 채널 디테일스 레코드(Channel Details Record)에 포함된 정보를 기초로 선택한 채널의 채널 디테일스(Channel Details)를 업데이트한다(S1830).
ITF는 채널 맵(Channel Map)에서 선택되지 않은 채널이 있는 지를 확인한다(S1840). 선택되지 않은 채널이 있는 경우에는, ITF는 단계 S1800을 수행한다.
도 19는 본 발명에 따른 EPG 디스커버리 레코드 타입(EPG Discovery Record Type)에 대한 바람직한 일실시예의 스키마를 도시한 도면이다.
도 19를 참조하면, EPG 디스커버리 레코드(EPG Discovery Record)는 EPG 데이터를 디스커버리(discovery) 위한 EPG 디스커버리 정보를 포함한다. 이를 위해, EPG 디스커버리 레코드(EPG Discovery Record)는 EPGProviderID 속성, Version 속성, Name 엘리먼트, Description 엘리먼트, EPG ServerLocation 엘리먼트, TargetServiceProviderID 엘리먼트 및 Logo 엘리먼트를 포함한다.
EPGProviderID는 EPG 데이터를 제공하는 제공자를 유일하게 식별할 수 있는 식별자 정보를 포함한다. 여기서 식별자 정보로 등록된 도메인 이름이 사용될 수 있다.
Version 속성은 EPG 디스커버리 레코드(EPG Discovery Record)의 버전 정보를 포함한다.
Name 엘리먼트는 EPG 데이터 제공자의 텍스트 이름에 대한 정보를 포함하며, EPG 데이터 제공자는 각 언어별로 하나씩의 이름을 가질 수 있다. 이를 위해, Name 엘리먼트는 Language 속성을 포함한다. 또한 Name 엘리먼트는 Language 속성을 복수개 포함할 수 있으며 복수의 Language 속성 각각은 각 언어별로 정의된 EPG 데이터 제공자의 텍스트 이름에 대한 정보를 포함한다.
Description 엘리먼트는 EPG 데이터 제공자에 대한 상세한 텍스트 설명 정보를 포함하며 텍스트 설명 정보는 EPG 데이터 제공자의 이름에 대항 정보와 유사하게 각 언어별로 하나씩 있을 수 있다. 이를 위해, Description 엘리먼트는 Language 속성을 포함한다. 또한 Description 엘리먼트는 Language 속성을 복수개 포함할 수 있으며 복수의 Language 속성 각각은 각 언어별로 정의된 텍스트 설명 정보를 포함한다.
EPG ServerLocation 엘리먼트는 EPG 데이터를 받을 수 있는 IP 주소 정보 및 EPG 데이터를 수신하는데 사용되는 프로토콜 정보 포함한다.
TargetServiceProviderID 엘리먼트는 EPG 데이터 제공자가 지원하는 서비스 프로바이더들의 ID 정보를 포함한다.
Logo는 이 EPG 데이터 제공자의 logo의 위치 정보를 포함한다. 여기서 logo의 위치 정보는 URI 형태일 수 있다.
도 20은 본 발명에 따른 ITF(IPTV Terminal Function)에 대한 바람직한 일실시예의 구성을 도시한 블록도이다.
도 20을 참조하면, ITF는 네트워크 인터페이스부, IP 네트워크 스택(IP Network Stack)(2015), 파일 핸들러(File Handler)(2020), SI 핸들러(SI Handler)(2025), EPG 핸들러(EPG Handler)(2030), 저장부(Storage)(2035), SI 디코 더(SI Decoder)(2040), EPG 디코더(EPG Decoder)(2045), ITF 오퍼레이션 컨트롤러(ITF Operation Controller)(2050), 채널 서비스 매니저(Channel Service Manager)(2055), 애플리케이션 매니저(Application Manager)(2060), 디멀티플렉서(2065), PSI/PSIP 파서(PSI/PSIP Parser)(2070), A/V 디코더(A/V Decoder)(2075) 및 디스플레이 모듈(Display Modul)(2080)을 포함한다. 여기서 네트워크 인터페이스부는 모뎀(Modem)(2005) 및 이더넷 네트워크 인터페이서(Ethernet NIC)(2010)를 포함할 수 있다.
모뎀(Modem)(2005)은 Physical level에서 ITF가 IP 네트워크와 연결되는 인터페이스 역할을 수행한다. 모뎀(Modem)(2005)은 물리적인 매체(Physical medium)를 통해서 전송된 신호를 디모듈레이트(Demodulate)하여, 디지털 신호로 복원하고 ITF가 서비스 프로바이더로 전송하는 디지털 신호를 모듈레이트(modulate)하여, IP 네트워크로 출력한다. 모뎀(Modem)(2005)은 Cable 모뎀, DSL 모뎀 등으로 구현될 수 있다.
이더넷 네트워크 인터페이서(Ethernet NIC)(2010)는 모뎀(Modem)(2005)을 통하여 전송 받은 디지털 신호를 IP 패킷을 복원하여 이를 IP 네트워크 스택(IP Network Stack)(2015)으로 출력한다. 또한 이더넷 네트워크 인터페이서(Ethernet NIC)(2010)는 IP 네트워크 스택(IP Network Stack)(2015)로부터 출력되는 IP 패킷을 이더넷 데이터그램으로 캡슐화하여 모뎀(Modem)(2005)으로 출력한다.
IP 네트워크 스택(IP Network Stack)(2015)은 IP Protocol stack에 따른 각 layer의 처리 모듈을 처리한다. IP 네트워크 스택(IP Network Stack)(2015)은 ITF 에 수신되는 패킷과 ITF에서 전송하는 패킷에 대하여 소스로부터 목적지까지의 패킷 전달에 관여한다. 그리고 IP 네트워크 스택(IP Network Stack)(2015)은 수신된 패킷을 적절한 프로토콜에 대응되도록 분류하고, 파일 핸들러(File Handler)(2020) 및 디멀티플렉서(2065)로 분류된 패킷을 출력한다. 일예로 네트워크 스택(IP Network Stack)(2015)은 서비스 프로바이더 디스커버리 레코드(Service Provider Discovery Record), ITF 레지스트레이션 아웃풋 레코드(ITF Regitstration Output Record), 마스터 SI 테이블 레코드(Master SI Table Record), 채널 맵 레코드(Channel Map Record), 채널 디테일스 레코드(Channel Details Record) 및 EPG 디스커버리 레코드(EPG Discovery Record) 중 어느 하나를 포함하는 패킷을 수신한 경우에는, 해당 패킷에 포함된 데이터를 파일 핸들러(File Handler)(2020)로 출력한다. 또한 네트워크 스택(IP Network Stack)(2015)은 ITF 레지스트레이션 입풋 레코드(ITF Registration Input Record)를 IP 패킷화하여 서비스 프로바이더로 전달되도록 이더넷 네트워크 인터페이서(Ethernet NIC)(2010)로 출력한다.
파일 핸들러(File Handler)(2020)는 IP 네트워크 스택(IP Network Stack)(2015)이 출력한 데이터를 취합하여 파일 형태로 복원한다. 여기서 파일 핸들러(File Handler)(2020)는 FLUTE를 이용하여 IP 네트워크 스택(IP Network Stack)(2015)이 출력한 데이터를 파일 형태로 복원할 수 있다. 즉 서비스 프로바이더는 FLUTE를 이용하여 파일을 전송할 수 있고, 파일 핸들러(File Handler)(2020)는 FLUTE를 이용하여 서비스 프로바이더가 전송한 파일을 수신받을 수 있다. 파일 핸들러(File Handler)(2020)는 변환한 파일을 분류하여 SI 핸들러(SI Handler)(2025) 및 EPG 핸들러(EPG Handler)(2030) 중 어느 하나로 출력한다.
SI 핸들러(SI Handler)(2025)는 파일 핸들러(File Handler)(2020)로부터 전송 받은 File 형태의 데이터 중에서, IPTV SI 데이터에 해당하는 부분을 처리하여 저장부(Storage)(2035)에 저장한다. 여기서 IPTV SI 데이터는 서비스 프로바이더 디스커버리 레코드(Service Provider Discovery Record), ITF 레지스트레이션 아웃풋 레코드(ITF Regitstration Output Record), 마스터 SI 테이블 레코드(Master SI Table Record), 채널 맵 레코드(Channel Map Record), 채널 디테일스 레코드(Channel Details Record) 및 EPG 디스커버리 레코드(EPG Discovery Record) 중 적어도 하나일 수 있다.
EPG 핸들러(EPG Handler)(2030)는 파일 핸들러(File Handler)(2020)로부터 전송 받은 File 형태의 데이터 중, IPTV EPG 데이터에 해당하는 부분을 처리하여 저장부(Storage)(2035)에 저장할 수 있다. 여기서 IPTV EPG 데이터는 EPG 디스커버리 레코드에 포함된 정보를 이용하여 서비스 프로바이더로부터 수신받을 수 있다.
저장부(Storage)(2035)는 SI 핸들러(SI Handler)(2025)가 제공하는 SI, EPG 핸들러(EPG Handler)(2030)가 제공하는 EPG 및 ITF 오퍼레이션 컨트롤러(ITF Operation Controller)(2050)가 제공하는 데이터 등을 저장한다.
SI 디코더(SI Decoder)(2040)는 저장부(Storage)(2035)에 저장된 SI 데이터를 디코딩하여 필요한 정보를 복원하고, 이를 ITF 오퍼레이션 컨트롤러(ITF Operation Controller)(2050)에 제공한다. SI 디코더(SI Decoder)(2040)는 서비스 프로바이더 디스커버리 레코드(Service Provider Discovery Record)로부터 유용한 IPTV 서비스 프로바이더에 대한 정보 및 보안 관리되는 네트워크로 서비스 프로바이더에 접속하기 위한 정보를 산출한다. 일예로 SI 디코더(SI Decoder)(2040)는 서비스 프로바이더 디스커버리 레코드(Service Provider Discovery Record)를 파싱하여 서비스 프로바이더 디스커버리 레코드에 포함된 등록 서버(Registration Server) 주소 정보를 산출할 수 있다.
또한 SI 디코더(SI Decoder)(2040)는 ITF 레지스트레이션 아웃풋 레코드(ITF Regitstration Output Record)를 파싱하여, ITF 레지스트레이션 아웃풋 레코드(ITF Regitstration Output Record)에 포함된 정보를 산출할 수 있다. 일예로 SI 디코더(SI Decoder)(2040)는 ITF 레지스트레이션 아웃풋 레코드(ITF Regitstration Output Record)에 포함된 EPG 데이터를 디스커버리(discovery) 하기 위한 EPG 디스커버리 정보 및 마스터 SI 테이블 레코드 수신하기 위한 주소 정보를 산출할 수 있다.
또한 SI 디코더(SI Decoder)(2040)는 마스터 SI 테이블 레코드(Master SI Table Record)를 파싱하여, 마스터 SI 테이블 레코드(Master SI Table Record)에 포함된 채널 맵 레코드 및 채널 디테일스 레코드를 수신하기 위한 정보, 채널 맵 레코드의 버전 정보, 및 채널 디테일스 레코드의 버전 정보를 산출할 수 있다.
그리고 SI 디코더(SI Decoder)(2040)는 채널 맵 레코드(Channel Map Record)로부터 채널 맵 정보를 산출할 수 있고, 채널 디테일스 레코드(Channel Details Record)로부터 해당 채널의 채널 상세 정보를 산출할 수 있다.
EPG 디코더(EPG Decoder)(2045)는 EPG 정보가 필요할 경우에는 저장 부(Storage)(2035)에 저장된 EPG 데이터를 가져와 분석하여, EPG 데이터를 복원하다. 그리고 EPG 디코더(EPG Decoder)(2045)는 ITF 오퍼레이션 컨트롤러(ITF Operation Controller)(2050)에 복원된 EPG 데이터를 제공한다.
ITF 오퍼레이션 컨트롤러(ITF Operation Controller)(2050)는 ITF의 동작을 제어한다. ITF 오퍼레이션 컨트롤러(ITF Operation Controller)(2050)는 SI 디코더(SI Decoder)(2040), EPG 디코더(EPG Decoder)(2045) 및 디스플레이 모듈(Display Modul)(2080)을 제어하고, ITF 오퍼레이션 컨트롤러(ITF Operation Controller)(2050)는 채널 서비스 매니저(Channel Service Manager)(2055) 및 애플리케이션 매니저(Application Manager)(2060)로부터 입력되는 요청을 처리한다.
ITF 오퍼레이션 컨트롤러(ITF Operation Controller)(2050)는 SI 디코더(SI Decoder)(2040)를 제어하여 채널 맵(Channel Map)을 만들고 채널 서비스 매니저(Channel Service Manager)(2055)로부터 수신한 키 입력에 따라 상기 채널 맵을 이용하여 채널을 선택하다. 그리고 ITF 오퍼레이션 컨트롤러(ITF Operation Controller)(2050)는 선택된 채널이 수신되도록 SI 디코더(SI Decoder)(2015)를 제어한다. 또한 ITF 오퍼레이션 컨트롤러(ITF Operation Controller)(2050)는 선택된 채널이 수신되도록 IP 네트워크 스택(IP Network Stack)(2015)을 제어할 수 있다. 또한 ITF 오퍼레이션 컨트롤러(ITF Operation Controller)(2050)는 선택된 채널이 수신되도록 PSI/PSIP 파서(PSI/PSIP Parser)(2070)를 제어할 수 있다.
채널 서비스 매니저(Channel Service Manager)(2055)는 사용자로부터 채널 요청 신호를 입력받고, 입력된 채널 요청 신호를 ITF 오퍼레이션 컨트롤러(ITF Operation Controller)(2050)에 제공하여 요청된 채널로 채널이 변경되도록 관장한다.
애플리케이션 매니저(Application Manager)(2060)는 전반적인 상태를 관리하고 유저 인터페이스를 제공한다. 애플리케이션 매니저(Application Manager)(2060)는 유저 인터페이스를 통해 사용자로부터 EPG 디스플레이 요청을 받은 경우에는, EPG 디스플레이 요청을 ITF 오퍼레이션 컨트롤러(ITF Operation Controller)(2050)에 제공하여 디스플레이 모듈(Display Modul)(2080)이 EPG를 디스플레이하도록 관장한다.
디멀티플렉서(2060)는 수신된 패킷을 오디오 데이터, 비디오 데이터 및 PSI(Program Specific Information) 데이터 등으로 역다중화하여 각각 A/V 디코더(A/V Decoder)(2075) 및 PSI/PSIP 파서(PSI/PSIP Parser)(2070)에 전송한다. 즉 디멀티플렉서(2065)는 IP 네트워크 스택(IP Network Stack)(2015)으로부터 전송 받은 IP 패킷에서 MPEG-2 Transport Stream 데이터를 추출하여 각 PID에 따라 PSI/PSIP 파서(PSI/PSIP Parser)(2070) 또는 A/V 디코더(A/V Decoder)(2075)로 전달한다.
PSI/PSIP 파서(PSI/PSIP Parser)(2070)는 디멀티플렉서(2060)로부터 전송 받은 IP Datagram 내의 MPEG-2 Transport Stream의 각 데이터(A/V, etc.)의 PID 정보 등의 프로그램 엘리먼트(Program element)를 접속할 수 있는 정보를 담은 PSI/PSIP 데이터를 추출 및 파싱한다. 또한 PSI/PSIP 파서(PSI/PSIP Parser)(2070)는 추출한 PSI/PSIP 데이터를 기초로 디멀티플렉서(2060)의 역다중화 과정을 제어할 수 있다.
A/V 디코더(A/V Decoder)(2075)는 디멀티플렉서(2010)에서 수신된 비디오 데이터와 오디오 데이터를 디코딩한다. 이를 위해 디코더(2014)는 오디오 디코더 및 비디오 디코더를 포함할 수 있다. 상기 오디오 디코더에서 디코딩된 오디오 데이터는 디스플레이 모듈(Display Modul)(2080)을 통하여 사용자에게 제공되며, 상기 비디오 디코더에서 디코딩된 비디오 데이터는 디스플레이 모듈(Display Modul)(2080)을 통하여 디스플레이된다.
디스플레이 모듈(Display Modul)(2080)은 ITF 오퍼레이션 컨트롤러(ITF Operation Controller)(2050)의 제어에 따라 A/V 디코더(A/V Decoder)(2075)가 디코딩한 비디오 데이터 및 오디오 데이터를 디스플레이한다. 또한 디스플레이 모듈(Display Modul)(2080)은 ITF 오퍼레이션 컨트롤러(ITF Operation Controller)(2050)로부터 EPG 데이터를 수신하여, ITF 오퍼레이션 컨트롤러(ITF Operation Controller)(2050)에 따라 수신한 EPG 데이터를 디스플레이한다.
도 21은 본 발명에 따른 가상 채널 설정 방법에 대한 바람직한 일실시예의 수행과정을 도시한 흐름도이다.
도 21을 참조하면, ITF는 네트워크 접속(Network Attachment)을 수행한다(S2100). 여기서 네트워크 접속(Network Attachment)은 ITF가 IP 네트워크와 layer 3 계층의 연결을 설정하고, 네트워크 배치 데이터(network configuration data)를 획득하는 절차이다.
ITF는 서비스 프로바이더 디스커버리(Service Provider Discovery)를 수행하여 서비스 프로바이더 디스커버리 레코드(Service Provider Discovery Record)를 획득한다(S2105). 여기서 ITF는 도 13에서 전술된 서비스 프로바이더 디스커버리(Service Provider Discovery)를 실시할 수 있다.
ITF는 획득한 서비스 프로바이더 디스커버리 레코드(Service Provider Discovery Record)에 포함된 정보를 이용하여 SI 및 EPG 데이터를 획득한다(S2110). 여기서 ITF는 SI 메타데이터를 획득하기 위해 도 14에서 전술된 서비스 프로바이더 등록(Service Provider Registration) 및 서비스 디스커버리(Service Discovery)를 수행할 수 있다. ITF는 서비스 프로바이더 등록(Service Provider Registration)을 수행하여 ITF는 레지스트레이션 아웃풋 레코드(ITF Regitstration Output Record)를 획득할 수 있고, 획득한 레지스트레이션 아웃풋 레코드(ITF Regitstration Output Record)에 포함된 정보를 기초로 서비스 디스커버리(Service Discovery)를 수행할 수 있다. 그리고 ITF는 서비스 디스커버리(Service Discovery)를 수행하여 마스터 SI 테이블 레코드(Master SI Table Record), 채널 맵 레코드(Channel Map Record) 및 채널 디테일스 레코드(Channel Details Record)를 획득할 수 있다. SI 메타데이터는 채널 맵 레코드(Channel Map Record) 및 채널 디테일스 레코드(Channel Details Record)에 포함된 정보로부터 산출될 수 있다.
또한 ITF는 레지스트레이션 아웃풋 레코드(ITF Regitstration Output Record)에 포함된 EPGDiscoveryLocation에 포함된 정보를 기초로 EPG 데이터를 획득할 수 있다.
ITF는 구한 SI 메타데이터를 이용하여 채널 맵을 생성하고 생성한 채널 맵을 저장한다(S1215). 그리고 ITF는 사용자의 가상 채널 요청 신호를 입력받는 다(S1220). 여기서 사용자는 채널을 업/다운하여 시청할 가상 채널을 선택할 수 있다.
또한 ITF는 획득한 EPG 데이터를 이용하여 EPG를 생성하고 생성한 EPG를 저장한다(S1225). ITF는 저장한 EPG를 디스플레이한다(S1230). 그리고 ITF는 디스플레이된 EPG로부터 선택된 가상 채널 요청 신호를 입력받는다(S1235). 여기서 사용자는 스트린상에 디스플레이된 EPG에서 시청하기 원하는 특정 가상 채널을 선택할 수 있다.
ITF는 가상 채널 요청 신호에 따라 요청된 가상 채널에 대한 정보를 상기 저장된 채널 맵에서 검색한다(S1240). 여기서 ITF는 요청된 가상 채널의 SeviceID와 일치하는 SeviceID를 포함하는 Channel Details Location을 채널 맵에서 검색하여 Channel Details Location의 LocationURL에 포함된 가상 채널을 수신할 수 있는 위치 정보를 검출할 수 있다. 또한 ITF는 요청된 가상 채널의 SeviceID와 일치하는 SeviceID를 포함하는 채널 디테일스를 검색하여 요청된 가상 채널의 상세 정보를 검출할 수 있다.
ITF는 검색된 가상 채널에 대한 정보를 기초로 상기 요청된 가상 채널로 튜닝한다(S1245). 여기서 ITF는 상기 검출된 가상 채널을 수신할 수 있는 위치 정보가 지시하는 주소를 접속하여 상기 요청된 가상 채널에 대한 IPTV 서비스를 수신할 수 있다. ITF는 수신한 IPTV 서비스를 사용자게에 제공한다(S1250).
도 22는 리소스 로케이터 타입(Resource Locator Type)에 대한 바람직한 일실시예의 스키마를 도시한 도면이고 도 23은 도 22의 리소스 로케이터 타 입(Resource Locator Type)에 대한 바람직한 일실시예의 XML 코드를 도시한 도면이다.
도 22 및 도 23을 참조하면, 리소스 로케이터 타입(Resource Locator Type)으로 정의된 엘리먼트는 해당 엘리먼트가 존재하는 XML document 내에 Inline으로 encoding 된 "Inline Media"에 대한 정보인 인라인 미디어 정보, HTTP 등의 Protocol을 통하여 취득할 수 있는 Resource에 대한 URL인 "MediaURL"에 대한 정보인 미디어 URL 정보, 및 FLUTE을 통하여 Multicast로 전송되는 파일에 대한 정보인 플루트 파일 정보 중 적어도 하나를 포함할 수 있다. 이를 위해 리소스 로케이터 타입(Resource Locator Type)은 InlineMedia 엘리먼트, MediaURL 엘리먼트 및 FluteFileLocator 엘리먼트 중 적어도 하나를 포함할 수 있다.
InlineMedia 엘리먼트는 미디어 URL 정보를 포함한다. 여기서 미디어 URL 정보가 지시하는 Inline Media는 hexadecimal 또는 base64 인코딩된 것일 수 있다.
MediaURL 엘리먼트는 미디어 URL 정보를 포함한다. 여기서 MediaURL 엘리먼트가 MediaURL 타입인 경우에는, 미디어 URL 정보는 RTP/RTSP 프로토콜을 통해 스트리밍 미디어(Streaming Media)를 전송받을 수 있는 정보를 포함한다. MediaURL 엘리먼트가 HTTP 리소스(HTTP Resource) 타입인 경우에는, 미디어 URL 정보는 HTTP 프로토콜을 통해 리소스를 전송받을 수 있는 정보를 포함한다. 또한 미디어 URL 정보는 mcast 프로토콜을 통해 리소스를 전송받을 수 있는 정보를 포함할 수도 있다.
FluteFileLocator 엘리먼트는 플루트 파일 정보를 포함한다.
본 발명에서, 리소스를 수신하기 위한 정보를 포함하는 엘리먼트는 리소스 로케이터 타입(Resource Locator Type)으로 정의될 수 있다. 본 발명에서 LocationURL 속성을 포함하는 엘리먼트는 리소스 로케이터 타입(Resource Locator Type)으로 정의될 수 있다. 서비스 프로바더로부터 제공되는 레코드는 리소스 로케이터 타입(Resource Locator Type)으로 정의된 엘리먼트에 포함할 수 있고, 서비스 프로바더로부터 제공되는 레코드에 포함된 리소스 로케이터 타입(Resource Locator Type)으로 정의된 엘리먼트는 IPTV 서비스를 제공하기 위해 요구되는 리소스를 수신하기 위한 정보를 포함할 수 있다.
*도 24는 플루트 파일 로케이터 타입(Flute File Locator Type)에 대한 바람직한 일실시예의 스키마를 도시한 도면이고, 도 25는 도 24의 플루트 파일 로케이터 타입(Flute File Locator Type)에 대한 바람직한 일실시예의 XML 코드를 도시한 도면이다.
도 24 및 도 25를 참조하면, FluteFileLocator 엘리먼트는 FileName 엘리먼트, FluteSDP 엘리먼트를 포함한다. 여기서 FileName 엘리먼트는 Flute 프로토콜을 통해 수신받을 파일의 이름 정보를 포함하고, FluteSDP 엘리먼트는 파일을 수신 받기 위한 파라미터 정보로 구성된 플루트 파일 전송 정보를 포함한다.
도 26은 플루트 SDP 타입(Flute SDP Type)에 대한 바람직한 일실시예의 스키마를 도시한 도면이고 도 27은 도 26의 플루트 SDP 타입(Flute SDP Type)에 대한 바람직한 일실시예의 XML 코드를 도시한 도면이다.
도 26 및 도 27을 참조하면, FlutSDP 엘리먼트는 플루트 파일 전송 정보를 포함한다. 이를 위해 FlutSDP 엘리먼트는 TSI 속성, startTime 속성, endTime 속성, tiasBandwidth 속성, asBandwith 속성, IPv4SourceAddr 엘리먼트, IPv6SourceAddr 엘리먼트, FluteChannel 엘리먼트 및 FecOtiType 엘리먼트를 포함할 수 있다.
TSI 속성은 플루트 세션을 위한 트랜스포트 세션 식별자 정보를 포함한다.
startTime 속성은 플루트 세션이 시작하는 시작 시간 정보를 포함한다.
endTime 속성은 플루트 세션이 끝나는 종료 시간 정보를 포함한다.
tiasBandwidth 속성은 플루트 세션의 TIAS 밴드위스 정보를 포함한다.
asBandwith 속성은 플루트 세션의 AS 밴드위스 정보를 포함한다.
IPv4SourceAddr 엘리먼트는 파일을 제공하는 호스트의 IPv4로 정의되는 주소 정보를 포함한다.
IPv6SourceAddr 엘리먼트는 파일을 제공하는 호스트의 IPv6로 정의되는 주소 정보를 포함한다.
FluteChannel 엘리먼트는 플루트 세션을 위한 채널 정보를 포함한다.
FecOtiType 엘리먼트 FEC 정보를 포함한다.
도 28은 FEC 오티 타입(Fec Oti Type)에 대한 바람직한 일실시예의 스키마를 도시한 도면이고 도 29는 도 28의 FEC 오티 타입(Fec Oti Type)에 대한 바람직한 일실시예의 XML 코드를 도시한 도면이다.
도 28 및 도 29를 참조하면, FecOtiType 엘리먼트는 FEC 정보를 포함한다. 이를 위해 FecOtiType 엘리먼트는 fecEncodingID 엘리먼트 및 fecInstanceID 엘리 먼트를 포함할 수 있다. 여기서 fecEncodingID 엘리먼트는 플루트 세션에서 사용되는 FEC 인코딩 식별자 정보를 포함하고, fecInstanceID 엘리먼트는 해당 FEC 인스턴스(instance) 식별자 정보를 포함한다.
도 30은 플루트 채널 타입(Flute Channel Type)에 대한 바람직한 일실시예의 스키마를 도시한 도면이고, 도 31은 도 30의 플루트 채널 타입(Flute Channel Type)에 대한 바람직한 일실시예의 XML 코드를 도시한 도면이다.
도 30 및 도 31을 참조하면, FluteChannel 엘리먼트는 플루트 세션을 위한 채널 정보를 포함한다. 이를 위해 FluteChannel 엘리먼트는 DestPort 속성, tiasBandwith 속성, asBandwidth 속성, IPv4DestAddr 엘리먼트 및 IPv6DestAddr 엘리먼트를 포함할 수 있다. 여기서 FluteChannel 엘리먼트는 IPv4DestAddr 엘리먼트 및 IPv6DestAddr 엘리먼트 중 적어도 하나를 포함할 수 있다.
DestPort 속성은 채널을 수신하기 위한 포트 정보를 포함한다.
tiasBandwith 속성은 채널의 TIAS 밴드위스 정보를 포함한다.
asBandwidth 속성은 채널의 AS 밴드위스 정보를 포함한다.
IPv4DestAddr 엘리먼트는 플루트 세션 또는 채널의 IPv4로 정의된 멀트캐스트 주소 정보를 포함한다.
IPv6DestAddr 엘리먼트는 플루트 세션 또는 채널의 IPv6로 정의된 멀트캐스트 주소 정보를 포함한다.
도 32는 본 발명에 따른 IPTV 서비스를 위한 리소스 획득 방법에 대한 바람직한 일실시예의 수행과정을 도시한 흐름도이다.
도 32를 참조하면, ITF는 네트워크 접속(Network Attachment)을 수행다(S3200). 여기서 네트워크 접속(Network Attachment)은 ITF가 IP 네트워크와 layer 3 계층의 연결을 설정하고, 네트워크 배치 데이터(network configuration data)를 획득하는 절차이다.
ITF는 네트워크를 통해 서비스 프로바디어로부터 IPTV 서비스 레코드를 획득한다(S3205). 여기서 IPTV 서비스 레코드는 서비스 프로바이더 디스커버리 레코드(Service Provider Discovery Record), ITF 레지스트레이션 아웃풋 레코드(ITF Regitstration Output Record), 마스터 SI 테이블 레코드(Master SI Table Record), 채널 맵 레코드(Channel Map Record), 채널 디테일스 레코드(Channel Details Record) 및 EPG 디스커버리 레코드(EPG Discovery Record) 중 적어도 하나일 수 있다. 또한 IPTV 서비스 레코드는 XML 다큐먼트일 수 있다.
ITF는 IPTV 서비스 레코드를 파싱하여, IPTV 서비스 레코드로부터 요구되는 리소스가 있는 지를 확인한다(S3210). 여기서 리소스는 방송 컨텐츠일 수 있고, IPTV 서비스 레코드일 수 있다. 또한 IPTV 서비스 레코드가 Resource Locator 타입으로 정의된 엘리먼트를 포함하는 지 여부에 따라 요구되는 리소스가 있는 지를 확인할 수 있다.
ITF는 IPTV 서비스 레코드를 파싱하여, IPTV 서비스 레코드로부터 Resource Locator 타입으로 정의된 엘리먼트를 산출한다(S3215).
산출한 엘리먼트가 InlineMedia 엘리먼트, MediaURL 엘리먼트 및 FluteFile 엘리먼트 중 어느 엘리먼트를 포함하는 지를 확인한다(S3220).
산출한 엘리먼트가 InlineMedia 엘리먼트를 포함하는 경우에는, ITF는 IPTV 서비스 레코드에 포함된 InlineMedia 엘리먼트 파싱하여 InlineMedia 엘리먼트에 포함된 인라인 미디어 정보를 산출한다(S3225). ITF는 산출한 인라인 미디어 정보를 기초로 "Inline Media"를 찾을 수 있다.
산출한 엘리먼트가 FluteFile 엘리먼트를 포함하는 경우에는, ITF는 IPTV 서비스 레코드에 포함된 FluteFile 엘리먼트 파싱하여 FluteFile 엘리먼트에 포함된 FluteSDP 엘리먼트를 산출한다(S3230). ITF는 산출한 FluteSDP 엘리먼트를 파싱하여, FluteSDP 엘리먼트에 포함된 플루트 파일 전송 정보를 산출한다(S3235). ITF는 산출한 파일 전송 정보를 기초로 플루트 프로토콜을 통해 플루트 파일 전송 정보가 지시하는 파일에 접근하고 해당 파일을 획득한다(S3240).
산출한 엘리먼트가 MediaURL 엘리먼트를 포함하는 경우에는, ITF는 IPTV 서비스 레코드를 파싱하여 MediaURL 엘리먼트의 타입 정보를 산출한다(S3245). ITF는 산출한 MediaURL 엘리먼트의 타입 정보가 스트리밍 미디어(Streaming Media) 및 HTTP 리소스(HTTP Resource) 중 어느 것인지를 확인한다(S3250). 산출한 MediaURL 엘리먼트의 타입 정보가 스트리밍 미디어(Streaming Media)인 경우에는, ITF는 MediaURL 엘리먼트에 포함된 미디어 URL 정보를 기초로 RTP/RTSP 프로토콜을 통해 스트리밍 미디어(Streaming Media)를 획득한다(S3255). 산출한 MediaURL 엘리먼트의 타입 정보가 HTTP 리소스(HTTP Resource)인 경우에는, ITF는 MediaURL 엘리먼트에 포함된 미디어 URL 정보를 기초로 HTTP 프로토콜을 통해 HTTP 리소스(HTTP Resource)를 획득한다(S3260).
본 발명은 상술한 실시예에 한정되지 않으며, 첨부된 청구범위에서 알 수 있는 바와 같이 본 발명이 속한 분야의 통상의 지식을 가진 자에 의해 변형이 가능하고 이러한 변형은 본 발명의 범위에 속한다.
도 1은 IPTV 서비스의 개념을 도시한 시스템 구성도,
도 2는 멀티캐스트 방식에 대해 개략적으로 도시한 도면,
도 3은 유니캐스트 방식에 대해 개략적으로 도시한 도면,
도 4는 본 발명에 따른 IPTV 서비스의 탐색 방법에 대한 바람직한 일실시예의 수행과정을 도시한 도면,
도 5는 본 발명에 따른 서비스 프로바이더 디스커버리 타입(Service Provieder Discovery Type)에 대한 바람직한 일실시예의 스키마를 도시한 도면,
도 6은 본 발명에 따른 ITF 레지스터레이션 입풋 타입(ITF Registration Input Type)에 대한 바람직한 일실시예의 스키마를 도시한 도면,
도 7은 본 발명에 따른 ITF 레지스터레이션 아웃풋 타입(ITF Regitstration Output Type)에 대한 바람직한 일실시예의 스키마를 도시한 도면,
도 8은 서비스 인포메이션(SI : Service Information)을 구성하는 각 테이블간의 관계를 도시한 도면,
도 9는 마스터 SI 테이블 레코드 타입(Master SI Table Record Type)에 대한 바람직한 일실시예의 스키마를 도시한 도면,
도 10은 채널 맵 타입(Channel Map Type)에 대한 바람직한 일실시예의 스키마를 도시한 도면,
도 11은 채널 맵 타입(Channel Map Type)에 대한 바람직한 다른 실시예의 스키마를 도시한 도면,
도 12a 및 도 12b는 채널 디테일스 타입(Channel Details Type)에 대한 바람직한 일실시예의 스키마를 도시한 도면,
도 13은 본 발명에 따른 서비스 프로바이더 디스커버리(Service Provider Discovery)에 대한 바람직한 일실시예의 수행과정을 도시한 흐름도,
도 14는 본 발명에 따른 서비스 프로바이더 등록(Service Provider Registration) 및 서비스 디스커버리(Service Dicovery)에 대한 바람직한 일실시예의 수행과정을 도시한 흐름도,
도 15는 마스터 SI 테이블(Master SI Table)의 업데이트를 처리하는 방법에 대한 바람직한 일실시예의 수행과정을 도시한 흐름도,
도 16은 마스터 SI 테이블(Master SI Talbe)의 업데이트를 처리하는 방법에 대한 바람직한 다른 실시예의 수행과정을 도시한 흐름도,
도 17은 채널 디테일스 버전(Channel Details Version)의 업데이트를 처리하는 방법에 대한 바람직한 일실시예의 수행과정을 도시한 흐름도,
도 18은 채널 디테일스 버전(Channel Details Version)의 업데이트를 처리하는 방법에 대한 바람직한 다른 실시예의 수행과정을 도시한 흐름도,
도 19는 본 발명에 따른 EPG 디스커버리 레코드 타입(EPG Discovery Record Type)에 대한 바람직한 일실시예의 스키마를 도시한 도면,
도 20은 본 발명에 따른 ITF(IPTV Terminal Function)에 대한 바람직한 일실시예의 구성을 도시한 블록도,
도 21은 본 발명에 따른 가상 채널 설정 방법에 대한 바람직한 일실시예의 수행과정을 도시한 흐름도,
도 22는 리소스 로케이터 타입(Resource Locator Type)에 대한 바람직한 일실시예의 스키마를 도시한 도면,
도 23은 도 22의 리소스 로케이터 타입(Resource Locator Type)에 대한 바람직한 일실시예의 XML 코드를 도시한 도면,
도 24는 플루트 파일 로케이터 타입(Flute File Locator Type)에 대한 바람직한 일실시예의 스키마를 도시한 도면,
도 25는 도 24의 플루트 파일 로케이터 타입(Flute File Locator Type)에 대한 바람직한 일실시예의 XML 코드를 도시한 도면,
도 26은 플루트 SDP 타입(Flute SDP Type)에 대한 바람직한 일실시예의 스키마를 도시한 도면,
도 27은 도 26의 플루트 SDP 타입(Flute SDP Type)에 대한 바람직한 일실시예의 XML 코드를 도시한 도면,
도 28은 FEC 오티 타입(Fec Oti Type)에 대한 바람직한 일실시예의 스키마를 도시한 도면,
도 29는 도 28의 FEC 오티 타입(Fec Oti Type)에 대한 바람직한 일실시예의 XML 코드를 도시한 도면,
도 30은 플루트 채널 타입(Flute Channel Type)에 대한 바람직한 일실시예의 스키마를 도시한 도면,
도 31은 도 30의 플루트 채널 타입(Flute Channel Type)에 대한 바람직한 일 실시예의 XML 코드를 도시한 도면, 그리고,
도 32는 본 발명에 따른 IPTV 서비스를 위한 리소스 획득 방법에 대한 바람직한 일실시예의 수행과정을 도시한 흐름도이다.
Claims (19)
- 네트워크를 통해 서비스 프로바이더에 연결하는 단계;인라인 인코디드 리소스(Inline encoded) 및 FLUTE 프로토콜을 통해 전송되는 파일 중의 어느 하나인 채널 디테일스 레코드의 위치를 표시하는 리소스 로케이터 엘리먼트를 포함하는 채널 맵 레코드(Channel Map Record)를 수신하는 단계;상기 수신된 채널 맵 레코드(Channel Map Record)를 파싱하여, 상기 리소스 로케이터 엘리먼트에 포함된 차일드 엘리먼트(child element)를 산출하며, 상기 차일드 엘리먼트는 상기 인라인 인코디드 리소스를 획득하기 위한 인라인 미디어 정보를 포함하는 엘리먼트 및 상기 FLUTE 프로토콜을 통해 전송되는 파일을 획득하기 위한 플루트 파일 정보를 포함하는 엘리먼트 중 어느 하나인 단계; 및상기 차일드 엘리먼트에 포함된 정보에 따라 상기 채널 디테일스 레코드(Channel Details Record)를 획득하는 단계를 포함하며,상기 채널 디테일스 레코드는 채널이 제공하는 서비스의 서비스 식별자 정보, 채널 디테일스 레코드(Channel Details Record)의 버전 정보, 채널이 제공하는 서비스의 카테고리 정보 및 채널의 쇼트 네임(short name) 정보 중 적어도 하나를 포함하는 IPTV 서비스를 위한 리소스 획득 방법.
- 삭제
- 삭제
- 삭제
- 삭제
- 제 1항에 있어서,상기 플루트 파일 정보는 파일의 이름 정보 및 플루트 파일 전송 정보를 포함하는 것을 특징으로 하는 IPTV 서비스를 위한 리소스 획득 방법.
- 제 6항에 있어서,상기 플루트 파일 전송 정보는 트랜스포트 세션 식별자 정보, 플루트 세션 시작 시간 정보, 플루트 세션 종료 시간 정보, TIAS 밴드위스 정보, AS 밴드위스 정보, 호스트의 주소 정보, 플루트 세션 채널 정보 및 FEC 정보 중 적어도 하나를 포함하는 것을 특징으로 하는 IPTV 서비스를 위한 리소스 획득 방법.
- 제 7항에 있어서,상기 플루트 세션 채널 정보는 포트 정보, TIAS 밴드위스 정보, AS 밴드위스 정보 및 멀트캐스트 주소 정보 중 적어도 하나를 포함하는 것을 특징으로 하는 IPTV 서비스를 위한 리소스 획득 방법.
- 제 7항에 있어서,상기 FEC 정보는 FEC 인코딩 식별자 정보 및 FEC 인스턴스(instance) 식별자 정보 중 적어도 하나를 포함하는 것을 특징으로 하는 IPTV 서비스를 위한 리소스 획득 방법.
- 네트워크를 통하여 IP 패킷을 송수신하는 네트워크 인터페이스부;상기 수신된 IP 패킷의 목적지를 확인하고, 상기 IP 패킷을 프로토콜에 따라 분류하는 IP 네트워크 스택;상기 IP 패킷에 포함된 채널 디테일스 레코드(Channel Details Record)의 위치를 표시하는 리소스 로케이터 엘리먼트를 포함하는 채널 맵 레코드(Channel Map Record)를 파싱하여 상기 리소스 로케이터 엘리먼트에 포함된 차일드 엘리먼트(Child Element)를 산출하며, 상기 차일드 엘리먼트는 인라인 인코디드 리소스를 획득하기 위한 인라인 미디어 정보를 포함하는 엘리먼트 및 FLUTE 프로토콜을 통해 전송되는 파일을 획득하기 위한 플루트 파일 정보를 포함하는 엘리먼트 중 어느 하나인 SI 디코더; 및상기 차일드 엘리먼트에 포함된 정보에 따라 상기 채널 디테일스 레코드 획득을 제어하는 ITF 오퍼레이션 컨트롤러(ITF Operation Controller);를 포함하며,상기 채널 디테일스 레코드는 채널이 제공하는 서비스의 서비스 식별자 정보, 채널 디테일스 레코드(Channel Details Record)의 버전 정보, 채널이 제공하는 서비스의 카테고리 정보 및 채널의 쇼트 네임(short name) 정보 중 적어도 하나를 포함하는 IPTV 수신기.
- 삭제
- 삭제
- 제 10항에 있어서,상기 플루트 파일 정보는 파일의 이름 정보 및 플루트 파일 전송 정보를 포함하는 것을 특징으로 하는 IPTV 수신기.
- 제 13항에 있어서,상기 플루트 파일 전송 정보는 트랜스포트 세션 식별자 정보, 플루트 세션 시작 시간 정보, 플루트 세션 종료 시간 정보, TIAS 밴드위스 정보, AS 밴드위스 정보, 호스트의 주소 정보, 플루트 세션 채널 정보 및 FEC 정보 중 적어도 하나를 포함하는 것을 특징으로 하는 IPTV 수신기.
- 제 14항에 있어서,상기 플루트 세션 채널 정보는 포트 정보, TIAS 밴드위스 정보, AS 밴드위스 정보 및 멀트캐스트 주소 정보 중 적어도 하나를 포함하는 것을 특징으로 하는 IPTV 수신기.
- 제 14항에 있어서,상기 FEC 정보는 FEC 인코딩 식별자 정보 및 FEC 인스턴스(instance) 식별자 정보 중 적어도 하나를 포함하는 것을 특징으로 하는 IPTV 수신기.
- 삭제
- 삭제
- 삭제
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US99267607P | 2007-12-05 | 2007-12-05 | |
US60/992,676 | 2007-12-05 | ||
US3339608P | 2008-03-03 | 2008-03-03 | |
US61/033,396 | 2008-03-03 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020080123426A Division KR100914710B1 (ko) | 2007-12-05 | 2008-12-05 | Iptv 수신기 및 iptv 서비스를 위한 리소스 획득 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20090059086A KR20090059086A (ko) | 2009-06-10 |
KR101487030B1 true KR101487030B1 (ko) | 2015-01-27 |
Family
ID=40707875
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020080123426A KR100914710B1 (ko) | 2007-12-05 | 2008-12-05 | Iptv 수신기 및 iptv 서비스를 위한 리소스 획득 방법 |
KR20090020186A KR101487030B1 (ko) | 2007-12-05 | 2009-03-10 | Iptv 수신기 및 iptv 서비스를 위한 리소스 획득 방법 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020080123426A KR100914710B1 (ko) | 2007-12-05 | 2008-12-05 | Iptv 수신기 및 iptv 서비스를 위한 리소스 획득 방법 |
Country Status (2)
Country | Link |
---|---|
KR (2) | KR100914710B1 (ko) |
CA (1) | CA2645980C (ko) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20010024443A (ko) * | 1997-10-14 | 2001-03-26 | 데니스 에이치. 얼백 | 멀티미디어 프로그램 데이터와 프로그램 안내 정보를포맷하고 처리하기 위한 시스템 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100670418B1 (ko) | 1999-07-13 | 2007-01-17 | 썬 마이크로시스템즈, 인코포레이티드 | 방송 스트림으로 전송되는 멀티캐스트 ip 데이터를선택하기 위한 방법 및 장치 |
FR2864869A1 (fr) * | 2004-01-06 | 2005-07-08 | Thomson Licensing Sa | Methode de transmission de services numeriques sur un reseau et appareil mettant en oeuvre la methode |
KR101191180B1 (ko) * | 2005-09-16 | 2012-10-15 | 엘지전자 주식회사 | 프로그램 안내를 위한 데이터 구조, 방법, 및 이를 적용한방송 장치 |
-
2008
- 2008-12-05 KR KR1020080123426A patent/KR100914710B1/ko active IP Right Grant
- 2008-12-05 CA CA2645980A patent/CA2645980C/en active Active
-
2009
- 2009-03-10 KR KR20090020186A patent/KR101487030B1/ko active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20010024443A (ko) * | 1997-10-14 | 2001-03-26 | 데니스 에이치. 얼백 | 멀티미디어 프로그램 데이터와 프로그램 안내 정보를포맷하고 처리하기 위한 시스템 |
Also Published As
Publication number | Publication date |
---|---|
KR20090059072A (ko) | 2009-06-10 |
CA2645980A1 (en) | 2009-06-05 |
KR100914710B1 (ko) | 2009-08-28 |
CA2645980C (en) | 2015-05-05 |
KR20090059086A (ko) | 2009-06-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8893200B2 (en) | IPTV receiver and method of acquiring a resource for an IPTV service | |
KR101591623B1 (ko) | Iptv 수신기 및 iptv 서비스 탐색 방법 | |
KR101550071B1 (ko) | Iptv 수신기에서 si 데이터 수신 방법 및 그 장치 | |
KR101487030B1 (ko) | Iptv 수신기 및 iptv 서비스를 위한 리소스 획득 방법 | |
KR101485191B1 (ko) | Iptv 수신기에서 채널 맵을 형성하기 위해 시청 제한을수행하는 방법 및 그 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A107 | Divisional application of patent | ||
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
E601 | Decision to refuse application | ||
AMND | Amendment | ||
J201 | Request for trial against refusal decision | ||
B701 | Decision to grant | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20171214 Year of fee payment: 4 |