KR102519917B1 - 방송 송신 장치, 방송 송신 방법, 방송 수신 장치 및 방송 수신 방법 - Google Patents

방송 송신 장치, 방송 송신 방법, 방송 수신 장치 및 방송 수신 방법 Download PDF

Info

Publication number
KR102519917B1
KR102519917B1 KR1020227018433A KR20227018433A KR102519917B1 KR 102519917 B1 KR102519917 B1 KR 102519917B1 KR 1020227018433 A KR1020227018433 A KR 1020227018433A KR 20227018433 A KR20227018433 A KR 20227018433A KR 102519917 B1 KR102519917 B1 KR 102519917B1
Authority
KR
South Korea
Prior art keywords
packet
packets
information
header
service
Prior art date
Application number
KR1020227018433A
Other languages
English (en)
Other versions
KR20220080021A (ko
Inventor
권우석
윤준희
Original Assignee
엘지전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엘지전자 주식회사 filed Critical 엘지전자 주식회사
Priority to KR1020237011562A priority Critical patent/KR102640674B1/ko
Publication of KR20220080021A publication Critical patent/KR20220080021A/ko
Application granted granted Critical
Publication of KR102519917B1 publication Critical patent/KR102519917B1/ko

Links

Images

Classifications

    • 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/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/23605Creation or processing of packetized elementary streams [PES]
    • 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/22Parsing or analysis of headers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4604LAN interconnection over a backbone network, e.g. Internet, Frame Relay
    • H04L12/462LAN interconnection over a bridge based backbone
    • H04L12/4625Single bridge functionality, e.g. connection of two networks over a single bridge
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • 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/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • 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/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2381Adapting the multiplex stream to a specific network, e.g. an Internet Protocol [IP] network
    • 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/438Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving MPEG packets from an IP network
    • H04N21/4381Recovering the multiplex stream from a specific network, e.g. recovering MPEG packets from ATM cells
    • 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/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • 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/64322IP
    • 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/812Monomedia components thereof involving advertisement data
    • 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/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/835Generation of protective data, e.g. certificates
    • H04N21/8358Generation of protective data, e.g. certificates involving watermark
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/18Loop-free operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/34Flow control; Congestion control ensuring sequence integrity, e.g. using sequence numbers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/36Flow control; Congestion control by determining packet size, e.g. maximum transfer unit [MTU]

Abstract

본 발명의 일 실시 예에 따른 방송 송신 방법은 방송 데이터를 포함하는 IP 패킷들을 생성하고, 상기 IP 패킷들 중 적어도 하나의 IP 패킷에 프래그멘테이션을 수행하여 복수의 프래그먼티드 IP 패킷들을 생성하여 링크 레이어로 전송하는 IP 레이어 프로세싱 단계, 상기 IP 레이어 프로세싱 단계에서 출력되는 IP 패킷들 중 복수의 프래그먼티드 IP 패킷들을 조합하여 상기 적어도 하나의 IP 패킷으로 복원하는 제1 링크 레이어 프로세싱 단계, 상기 복원된 적어도 하나의 IP 패킷을 포함하는 IP 패킷들의 헤더 압축을 수행하는 제2 링크 레이어 프로세싱 단계, 상기 헤더 압축이 수행된 IP 패킷들을 적어도 하나의 링크 레이어 패킷으로 인캡슐레이션하여 피지컬 레이어로 전송하는 제3 링크 레이어 프로세싱 단계를 포함할 수 있다.

Description

방송 송신 장치, 방송 송신 방법, 방송 수신 장치 및 방송 수신 방법{BROADCAST TRANSMISSION APPARATUS, BROADCAST TRANSMISSION METHOD, BROADCAST RECEPTION APPARATUS, AND BROADCAST RECEPTION METHOD}
본 발명은 방송 송신 장치, 방송 송신 방법. 방송 수신 장치 및 방송 수신 방법에 관한 것으로서, 특히 링크 레이어에서 데이터를 처리하기 위한 방송 송/수신 장치 및 방법에 관한 것이다.
아날로그 방송 신호 송신이 종료됨에 따라, 디지털 방송 신호를 송수신하기 위한 다양한 기술이 개발되고 있다. 디지털 방송 신호는 아날로그 방송 신호에 비해 더 많은 양의 비디오/오디오 데이터를 포함할 수 있고, 비디오/오디오 데이터뿐만 아니라 다양한 종류의 부가 데이터를 더 포함할 수 있다.
즉, 디지털 방송 시스템은 HD(High Definition) 이미지, 멀티채널(multi channel, 다채널) 오디오, 및 다양한 부가 서비스를 제공할 수 있다. 그러나, 디지털 방송을 위해서는, 많은 양의 데이터 전송에 대한 데이터 전송 효율, 송수신 네트워크의 견고성(robustness), 및 모바일 수신 장치를 고려한 네트워크 유연성(flexibility)이 향상되어야 한다.
본 발명의 목적은 많은 양의 데이터 전송 및 오버헤드 리덕션을 위해 패킷의 헤더를 효율적으로 컴프레스(compress)하고 디컴프레스하기 위한 방송 송신 장치, 방송 송신 방법, 방송 수신 장치 및 방송 수신 방법을제공하는 것이다.
본 발명의 다른 목적은 IP (Internet Protocol) 패킷의 헤더를 효율적으로 컴프레스하고 디컴프레스하기 위한 방송 송신 장치, 방송 송신 방법, 방송 수신 장치 및 방송 수신 방법을 제공하는 것이다.
본 발명의 또 다른 목적은 링크 레이어에서 데이터를 효율적으로 처리하기 위한 방송 송신 장치, 방송 송신 방법, 방송 수신 장치 및 방송 수신 방법을 제공하는 것이다.
본 발명의 일 실시 예에 따른 방송 송신 방법은 방송 데이터를 포함하는 IP 패킷들을 생성하고, 상기 IP 패킷들 중 적어도 하나의 IP 패킷에 프래그멘테이션을 수행하여 복수의 프래그먼티드 IP 패킷들을 생성하여 링크 레이어로 전송하는 IP 레이어 프로세싱 단계, 상기 IP 레이어 프로세싱 단계에서 출력되는 IP 패킷들 중 복수의 프래그먼티드 IP 패킷들을 조합하여 상기 적어도 하나의 IP 패킷으로 복원하는 제1 링크 레이어 프로세싱 단계, 상기 복원된 적어도 하나의 IP 패킷을 포함하는 IP 패킷들의 헤더 압축을 수행하는 제2 링크 레이어 프로세싱 단계, 상기 헤더 압축이 수행된 IP 패킷들을 적어도 하나의 링크 레이어 패킷으로 인캡슐레이션하여 피지컬 레이어로 전송하는 제3 링크 레이어 프로세싱 단계를 포함할 수 있다.
상기 IP 레이어 프로세싱 단계는 상기 적어도 하나의 IP 패킷의 길이가 최대 전송 단위(MTU)보다 크면, 상기 적어도 하나의 IP 패킷을 복수개의 프래그먼트로 나누고, 각 프래그먼트에 IP 헤더를 부가하여 복수개의 프래그먼티드 IP 패킷들을 생성하는 것을 일 실시예로 한다.
상기 제1 링크 레이어 프로세싱 단계는 입력되는 IP 패킷의 IP 헤더 내 적어도 DF (Don't Fragment) 플래그, MF (More Fragment) 플래그, Identification 필드, 및 fragment offset 필드를 기반으로 복수의 프래그먼티드 IP 패킷들을 수집하고, 수집된 복수의 프래그먼티드 IP 패킷들을 조합하여 상기 적어도 하나의 IP 패킷으로 복원하는 것을 일 실시예로 한다.
상기 제2 링크 레이어 프로세싱 단계는 입력되는 IP 패킷들에 RoHC (Robust Header Compression) 스킴을 적용하여 헤더 압축을 수행하여 RoHC 패킷 스트림을 생성하는 것을 일 실시예로 한다.
상기 제2 링크 레이어 프로세싱 단계는 상기 RoHC 패킷 스트림으로부터 컨텍스트 정보를 추출하고, 추출된 컨텍스트 정보와 상기 헤더 압축에 관련된 정보는 RDT (RoHC-U Description Table)로 전송하는 일 실시예로 한다.
본 발명의 일 실시예에 따른 방송 송신 장치는 방송 데이터를 포함하는 IP 패킷들을 생성하고, 상기 IP 패킷들 중 적어도 하나의 IP 패킷에 프래그멘테이션을 수행하여 복수의 프래그먼티드 IP 패킷들을 생성하여 링크 레이어로 전송하는 스튜디오, 상기 스튜디오에서 출력되는 IP 패킷들 중 복수의 프래그먼티드 IP 패킷들을 조합하여 상기 적어도 하나의 IP 패킷으로 복원하고, 상기 복원된 적어도 하나의 IP 패킷을 포함하는 IP 패킷들의 헤더 압축을 수행한 후, 상기 헤더 압축이 수행된 IP 패킷들을 적어도 하나의 링크 레이어 패킷으로 인캡슐레이션하여 피지컬 레이어로 전송하는 링크 레이어의 방송 게이트웨이, 및 상기 방송 게이트웨이에서 전송되는 적어도 하나의 링크 레이어 패킷을 피지컬 레이어 프로세싱하여 전송하는 트랜스미터를 포함할 수 있다.
본 발명에 따르면 IP 헤더 컴프레션 과정을 단순화함으로서, 방송 시스템의 복잡도를 줄이는 효과가 있다.
본 발명에 따르면 송신 시스템에서 적용된 IP 프래그멘테이션(fragmentation) 과정을 수신 시스템으로 전송하기 전에 방지함으로써, 수신 시스템의 구현을 간소화할 수 있는 장점이 있다.
본 발명에 따르면 IP 헤더 컴프레션의 대역폭 감소를 효과적으로 증대시키는 장점이 있다.
본 발명에 대해 더욱 이해하기 위해 포함되며 본 출원에 포함되고 그 일부를 구성하는 첨부된 도면은 본 발명의 원리를 설명하는 상세한 설명과 함께 본 발명의 실시예를 나타낸다.
도 1은 본 발명의 일 실시예에 따른 프로토콜 스택을 도시한 도면이다.
도 2 는 본 발명의 일 실시예에 따른 서비스 디스커버리 과정을 도시한 도면이다.
도 3 은 본 발명의 일 실시예에 따른 LLS (Low Level Signaling) 테이블 및 SLT (Service List Table)를 도시한 도면이다.
도 4 는 본 발명의 일 실시예에 따른 ROUTE 로 전달되는 USBD 및 S-TSID 를 도시한 도면이다.
도 5 는 본 발명의 일 실시예에 따른 MMT 로 전달되는 USBD 를 도시한 도면이다.
도 6 은 본 발명의 일 실시예에 따른 링크 레이어 프로토콜 아키텍쳐를 도시한 도면이다.
도 7 은 본 발명의 일 실시예에 따른 링크 레이어 동작을 도시한 도면이다.
도 8의 (a), (b)는 본 발명의 일 실시예에 따른 IP 헤더 압축에 있어서, 어댑테이션 모드2, 3의 실시예를 도시한 도면이다.
도 9 는 본 발명의 일 실시예에 따른 링크 레이어 패킷의 베이스 헤더 구조를 도시한 도면이다.
도 10은 도 9의 packet_type 필드에 할당된 코드 값들의 의미의 일 실시예를보인 도면이다.
도 11 은 본 발명의 다른 실시예에 따른 링크 레이어 패킷의 시그널링 정보를 위한 추가 헤더 구조를 도시한 도면이다.
도 12는 도 11의 시그널링 정보를 위한 추가 헤더의 신택스 구조의 일 실시예를 보인 도면이다.
도 13은 본 발명에 따른 LMT의 신택스 구조의 일 실시예를 보인 도면이다.
도 14는 본 발명에 따른 RDT의 신택스 구조의 일 실시예를 보인 도면이다.
도 15는 본 발명에 따른 방송 송신 장치의 일 실시예를 보인 구성 블록도이다.
도 16은 도 15의 입력 포맷팅 블록의 일 실시예를 보인 상세 블록도이다.
도 17은 본 발명에 따른 하이브리드 방송 수신 장치의 일 실시예를 보인 구성 블록도이다.
도 18은 본 발명에 따른 피지컬 레이어의 방송 수신 장치의 일 실시예를 보인 구성 블록도이다.
도 19는 본 발명에 따른 IP 패킷의 IP 헤더 구조의 일 실시예를 보인 도면이다.
도 20의 (a) 내지 (d)는 본 발명에 따른 IP/UDP 레이어에서 생성된 IP 패킷들의 일 실시예를 보인 도면이다.
도 21의 (a) 내지 (d)는 도 20의 (a) 내지 (d)의 IP 패킷들에 헤더 압축 및 링크 레이어 패킷 인캡슐레이션이 적용된 일 실시예를 보인 도면이다.
도 22는 본 발명에 따른 방송 시스템의 일 실시예를 보인 구성 블록도이다.
도 23의 (a) 내지 (d)는 본 발명에 따른 IP/UDP 레이어에서 생성된 IP 패킷들의 일 실시예를 보인 도면이다.
도 24의 (a), (b1) 내지 (b3), (c), (d)는 도 23의 일부 IP 패킷에 프래그멘테이션이 적용된 일 실시예를 보인 본 발명의 도면이다.
도 25의 (a), (b1) 내지 (b3), (c), (d)는 도 24의 (a), (b1) 내지 (b3), (c), (d)의 IP 패킷들에 헤더 압축 및 링크 레이어 패킷 인캡슐레이션이 적용된 일 실시예를 보인 도면이다.
도 26은 본 발명에 따른 방송 시스템의 다른 실시예를 보인 도면이다.
도 27은 도 26의 방송 시스템의 방송 네트워크 구조의 일 실시예를 보인 블록도이다.
도 28의 (a) 내지 (d)는 본 발명에 따른 IP/UDP 레이어에서 생성된 IP 패킷들의 일 실시예를 보인 도면이다.
도 29의 (a), (b1) 내지 (b3), (c), (d)는 도 28의 일부 IP 패킷에 프래그멘테이션이 적용된 일 실시예를 보인 본 발명의 도면이다.
도 30 의 (a) 내지 (d)은 도 29의 (a), (b1) 내지 (b3), (c), (d)의 IP 패킷들에 전처리 과정이 적용된 일 실시예를 보인 본 발명의 도면이다
도 31의 (a) 내지 (d)는 도 30의 (a) 내지 (d)의 IP 패킷들에 헤더 압축 및 링크 레이어 패킷 인캡슐레이션이 적용된 일 실시예를 보인 도면이다.
도 32는 본 발명의 일 실시예에 따른 전처리기를 포함하는 방송 게이트웨이의 동작을 나타낸 흐름도이다.
도 33의 (a) 내지 (d)는 본 발명에 따른 수신기로 수신되는 ALP 패킷들의 일 실시예를 보인 도면이다.
도 34의 (a) 내지 (d)는 도 33의 (a) 내지 (d)의 ALP 패킷들에 디캡슐레이션 및 헤더 디컴프레션이 적용되어 확득된 IP 패킷들의 일 실시예를 보인 도면이다.
도 35의 (a), (b1) 내지 (b3), (c), (d)는 도 34의 일부 IP 패킷에 프래그멘테이션이 적용된 일 실시예를 보인 본 발명의 도면이다.
도 36의 (a) 내지 (d)는 도 35의 (a), (b1) 내지 (b3), (c), (d)에서 프래그멘테이션이 적용된 IP 패킷들을 원래의 IP 패킷으로 복원한 일 실시예를 보인 본 발명의 도면이다.
도 37은 본 발명에 따른 시그널링 정보를 위한 추가 헤더의 신택스 구조의 일 실시예를 보인 도면이다.
도 38은 본 발명에 따른 시그널링 정보를 위한 추가 헤더의 신택스 구조의 다른 실시예를 보인 도면이다.
도 39는 본 발명에 따른 RDT의 신택스 구조의 다른 실시예를 보인 도면이다.
도 40은 본 발명에 따른 RDT의 신택스 구조의 또 다른 실시예를 보인 도면이다.
도 41은 도 40의 RDT_type 필드에 할당된 코드 값들의 의미의 일 실시예를 보인 본 발명의 도면이다.
이하 상기의 목적을 구체적으로 실현할 수 있는 본 발명의 바람직한 실시예를 첨부한 도면을 참조하여 상세히 설명한다. 이때 도면에 도시되고 또 이것에 의해서 설명되는 본 발명의 구성과 작용은 적어도 하나의 실시예로서 설명되는 것이며, 이것에 의해서 본 발명의 기술적 사상과 그 핵심 구성 및 작용이 제한되지는 않는다.
본 명세서에서 사용되는 용어는 본 발명에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어를 선택하였으나, 이는 당분야에 종사하는 기술자의 의도 또는 관례 또는 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 명세서의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 명세서에서 사용되는 용어는 단순한 용어의 명칭이 아닌 그 용어가 가지는 의미와 본 명세서의 전반에 걸친 내용을 토대로 정의되어야 함을 밝혀두고자 한다.
또한 본 명세서에 개시되어 있는 본 발명의 개념에 따른 실시 예들에 대해서 특정한 구조적 내지 기능적 설명들은 단지 본 발명의 개념에 따른 실시 예를 설명하기 위한 목적으로 예시된 것으로, 본 발명의 개념에 따른 실시 예들은 다양한 형태로 실시될 수 있으며 본 명세서에 설명된 실시 예들에 한정되는 것으로 해석되어서는 아니된다.
본 명세서의 개념에 따른 실시 예는 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있으므로 특정 실시예들을 도면에 예시하고 본 명세서에 상세하게 설명하고자 한다. 그러나, 이는 본 명세서의 개념에 따른 실시 예를 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 명세서의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
그리고 본 명세서에서 제1 및/또는 제2 등의 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안된다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만, 예컨대 본 명세서의 개념에 따른 권리 범위로부터 이탈되지 않은 채, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.
또한 명세서 전체에서, 어떤 부분이 어떤 구성 요소를 “포함”한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것을 의미한다. 그리고 명세서에 기재된 “…부” 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.
본 명세서에서 '시그널링 (signaling)' 이라 함은 방송 시스템, 인터넷 방송 시스템 및/또는 방송/인터넷 융합 시스템에서 제공되는 서비스 정보 (Service Information; SI)를 전송/수신하는 것을 나타낸다. 서비스 정보는 현재 존재하는 각 방송 시스템에서 제공되는 방송 서비스 정보 (예를 들면, ATSC-SI 및/또는 DVB-SI)를 포함한다.
본 명세서에서 '방송 신호' 라 함은, 지상파 방송, 케이블 방송, 위성 방송, 및/또는 모바일 방송 이외에도, 인터넷 방송, 브로드밴드 방송, 통신 방송, 데이터 방송 및/또는 VOD (Video On Demand) 등의 양방향 방송에서 제공되는 신호 및/또는 데이터를 포함하는 개념으로 정의한다.
본 명세서에서 'PLP (Physical Layer Pipe)'라 함은, 물리적 계층에 속하는 데이터를 전송하는 일정한 유닛을 의미한다. 따라서, 본 명세서에서 'PLP'로 명명된 내용은, '데이터 유닛' 또는 '데이터 파이프 (data pipe)'로 바꾸어 명명될 수도 있다.
디지털 방송 (DTV) 서비스에서 활용될 유력한 어플리케이션 (application) 중의 하나로, 방송 망과 인터넷 망과의 연동을 통한 하이브리드 방송 서비스를 꼽을 수 있다. 하이브리드 방송 서비스는 지상파 방송망을 통해서 전송되는 방송 A/V (Audio/Video) 컨텐츠와 연관된 인핸스먼트 데이터 (enhancement data) 혹은 방송 A/V 컨텐츠의 일부를 인터넷 망(internet or broadband)을 통하여 실시간으로 전송함으로써, 사용자로 하여금 다양한 컨텐츠를 경험할 수 있도록 한다.
본 발명은 차세대 방송 서비스를 위한 방송 신호를 송수신 할 수 있는 방송 송신 장치, 방송 수신 장치, 방송 송신 방법, 및 방송 수신 방법을 제공하기 위한 것이다. 본 발명의 일 실시예에 따른 차세대 방송 서비스는 지상파 방송 서비스, 모바일 방송 서비스 및 UHDTV(Ultra High Definition Television) 서비스등을 포함하는 개념이다.
본 발명은 상술한 차세대 방송 서비스를 위한 방송 신호를 비MIMO(non-MIMO, Multi Input Multi Output) 방식 또는 MIMO 방식으로 처리하는 것을 일 실시예로 할 수 있다. 본 발명의 일 실시예에 따른 비MIMO 방식은 MISO (Multi Input Single Output), SISO (Single Input Single Output) 방식 등을 포함할 수 있다. 이하에서, MISO 또는 MIMO의 다중 안테나는 설명의 편의를 위해 2개의 안테나를 예로서 설명할 수 있으나, 이러한 본 발명의 설명은 2개 이상의 안테나를 사용하는 시스템에 적용될 수 있다.
또한 본 발명에서 신호 프레임(또는 프레임 또는 A3 프레임 또는 피지컬 레이어 프레임이라 하기도 함)은 크게 3개의 영역으로 구분하며, 신호 프레임의 맨 앞에 위치한 제1 영역은 부트스트랩(또는 부트스트랩 영역)이라 하고, 상기 제1 영역 바로 다음에 위치하는 제2 영역은 프리앰블(또는 프리앰블 영역)이라 하며, 상기 제2 영역 다음에 위치하는 제3 영역은 데이터 영역이라 하기로 한다.
상기 부트스트랩 영역에는 부트스트랩 데이터가 포함되고, 상기 프리앰블 영역에는 이 프레임의 나머지에 적용 가능한 L1 (Layer 1) 시그널링 데이터(또는 L1 콘트롤 시그널링 데이터라 함)가 포함된다. 상기 데이터 영역은 다시 하나 이상의 서브프레임들로 구분된다. 만일 하나의 신호 프레임에 복수개의 서브프레임들이 존재한다면, 복수개의 서브프레임들은 시간에 따라 연속적으로 위치한다(be concatenated together in time). 하나의 서브프레임은 신호 프레임 내의 타임-프리퀀시 자원(time-frequency resources)의 집합(set)으로 구성된다. 즉, 하나 이상의 PLP들로 전송되는 데이터는 하나 이상의 서브 프레임들에 매핑된다.
상기 L1 시그널링 데이터는 피지컬 레이어 파라미터들을 구성하기 위해 필요한 정보를 제공한다. 상기 L1 시그널링 데이터는 L1 베이직 (L1-Basic) 시그널링 데이터와 L1 디테일 (L1-Detail) 시그널링 데이터를 포함한다. 이때 부트스트랩 데이터를 상기 L1 시그널링 데이터에 포함시킬 수도 있다.
그리고 이후 설명되는 L1 시그널링 데이터에 포함되는 정보 중 L1B로 시작하는 정보는 L1-Basic 시그널링 데이터에 포함되는 정보이고, L1D로 시작하는 정보는 L1-Detail 시그널링 데이터에 포함되는 정보인 것을 일 실시예로 한다.
여기서 L1 베이직 시그널링 데이터는 Physical Layer Signaling 1 (PLS1) 데이터에 해당하고, L1 디테일 시그널링 데이터는 PLS2 데이터에 해당할 수 있다.
도 1 은 본 발명의 일 실시예에 따른 프로토콜 스택을 도시한 도면이다.
서비스는 복수개의 레이어를 거쳐 수신기로 전달될 수 있다. 먼저 송신측에서는 서비스 데이터를 생성할 수 있다. 송신측의 딜리버리 레이어에서는 서비스 데이터에 전송을 위한 처리를 수행하고, 피지컬 레이어에서는 이를 방송 신호로 인코딩하여 방송망 또는 브로드밴드를 통해 전송할 수 있다.
여기서 서비스 데이터들은 ISO BMFF (base media file format) 에 따른 포맷으로 생성될 수 있다. ISO BMFF 미디어 파일은 방송망/브로드밴드 딜리버리, 미디어 인캡슐레이션(media encapsulation) 및/또는 동기화 포맷(synchronization format) 으로 사용될 수 있다. 여기서 서비스 데이터는 서비스와 관련된 모든 데이터로서, 리니어 서비스를 이루는 서비스 컴포넌트들, 그에 대한 시그널링 정보, NRT (Non Real Time) 데이터, 기타 파일들 등을 포함하는 개념일 수 있다.
딜리버리 레이어에 대해 설명한다. 딜리버리 레이어는 서비스 데이터에 대한 전송 기능을 제공할 수 있다. 서비스 데이터는 방송망 및/또는 브로드밴드를 통해 전달될 수 있다.
방송망을 통한 서비스 딜리버리(broadcast service delivery)에 있어 두가지 방법이 있을 수 있다.
첫번째 방법은 MMT (MPEG Media Transport) 에 근거하여, 서비스 데이터들을 MPU (Media Processing Units) 들로 처리하고, 이를 MMTP (MMT protocol) 를 이용하여 전송하는 것일 수 있다. 이 경우, MMTP 를 통해 전달되는 서비스 데이터에는, 리니어 서비스를 위한 서비스 컴포넌트들 및/또는 그에 대한 서비스 시그널링 정보 등이 있을 수 있다.
두번째 방법은 MPEG DASH 에 근거하여, 서비스 데이터들을 DASH 세그먼트들로 처리하고, 이를 ROUTE (Real time Object delivery over Unidirectional Transport) 를 이용하여 전송하는 것일 수 있다. 이 경우, ROUTE 프로토콜을 통해 전달되는 서비스 데이터에는, 리니어 서비스를 위한 서비스 컴포넌트들, 그에 대한 서비스 시그널링 정보 및/또는 NRT 데이터 등이 있을 수 있다. 즉, NRT 데이터 및 파일 등의 논 타임드(non timed) 데이터는 ROUTE 를 통해서 전달될 수 있다.
MMTP 또는 ROUTE 프로토콜에 따라 처리된 데이터는 UDP (User Datagram Protocol)/IP (Internet Protocol) 레이어를 거쳐 IP 패킷들로 처리될 수 있다. 즉, UDP/IP 레이어에서는 MMTP 또는 ROUTE 프로토콜에 따라 처리된 데이터를 포함하는 UDP 페이로드에 UDP 헤더를 부가하여 UDP 패킷을 만들고, 이 UDP 패킷에 IP 헤더를 부가하여 IP/UDP 패킷을 만든다. 본 발명에서는 설명의 편의를 위해 IP/UDP 패킷을 IP 패킷이라 칭하기로 한다. 방송망을 통한 서비스 데이터 전달에 있어서, SLT (Service List Table) 역시 UDP/IP 레이어를 거쳐 방송망을 통해 IP 패킷 형태로 전달될 수 있다. SLT 는 LLS (Low Level Signaling) 테이블에 포함되어 전달될 수 있는데, SLT, LLS 테이블에 대해서는 후술한다.
IP 패킷들은 링크 레이어에서 링크 레이어 패킷들로 처리될 수 있다. 링크 레이어는 상위 레이어에서 전달되는 다양한 포맷의 데이터를, 링크 레이어 패킷으로 인캡슐레이션한 후, 피지컬 레이어에 전달할 수 있다. 링크 레이어에 대해서는 후술한다.
하이브리드 서비스 딜리버리(hybrid service delivery) 에 있어서는, 적어도 하나 이상의 서비스 엘레멘트가 브로드밴드 패쓰(path) 를 통해 전달될 수 있다. 하이브리드 서비스 딜리버리의 경우, 브로드밴드로 전달되는 데이터에는, DASH 포맷의 서비스 컴포넌트들, 그에 대한 서비스 시그널링 정보 및/또는 NRT 데이터 등이 있을 수 있다. 이 데이터들은 HTTP/TCP/IP 를 거쳐 처리되고, 브로드밴드 전송을 위한 링크 레이어를 거쳐, 브로드밴드 전송을 위한 피지컬 레이어로 전달될 수 있다.
피지컬 레이어는 딜리버리 레이어(상위 레이어 및/또는 링크 레이어)로부터 전달받은 데이터를 처리하여, 방송망 또는 브로드밴드를 통하여 전송할 수 있다. 피지컬 레이어에 대한 자세한 사항은 후술한다.
서비스에 대해 설명한다. 서비스는 전체적으로 사용자에게 보여주는 서비스 컴포넌트의 컬렉션일 수 있고, 컴포넌트는 여러 미디어 타입의 것일 수 있고, 서비스는 연속적이거나 간헐적일 수 있으며, 서비스는 실시간이거나 비실시간일 수 있고, 실시간 서비스는 TV 프로그램의 시퀀스로 구성될 수 있다.
서비스는 여러 타입을 가질 수 있다. 첫 번째로 서비스는 앱 기반 인헨스먼트를 가질 수 있는 리니어 오디오/비디오 또는 오디오만의 서비스일 수 있다. 두 번째로 서비스는 다운로드된 어플리케이션에 의해 그 재생/구성 등이 제어되는 앱 기반 서비스일 수 있다. 세 번째로 서비스는 ESG (Electronic Service Guide) 를 제공하는 ESG 서비스일 수 있다. 네 번째로 긴급 경보 정보를 제공하는 EA (Emergency Alert) 서비스일 수 있다.
앱 기반 인헨스먼트가 없는 리니어 서비스가 방송망을 통해 전달되는 경우, 서비스 컴포넌트는 (1) 하나 이상의 ROUTE 세션 또는 (2) 하나 이상의 MMTP 세션에 의해 전달될 수 있다.
앱 기반 인헨스먼트가 있는 리니어 서비스가 방송망을 통해 전달되는 경우, 서비스 컴포넌트는 (1) 하나 이상의 ROUTE 세션 및 (2) 0개 이상의 MMTP 세션에 의해 전달될 수 있다. 이 경우 앱 기반 인핸스먼트에 사용되는 데이터는 NRT 데이터 또는 기타 파일 등의 형태로 ROUTE 세션을 통해 전달될 수 있다. 본 발명의 일 실시예에서, 하나의 서비스의 리니어 서비스 컴포넌트(스트리밍 미디어 컴포넌트)들이 두 프로토콜을 동시에 사용해 전달되는 것이 허용되지 않을 수 있다.
앱 기반 서비스가 방송망을 통해 전달되는 경우, 서비스 컴포넌트는 하나 이상의 ROUTE 세션에 의해 전달될 수 있다. 이 경우, 앱 기반 서비스에 사용되는 서비스 데이터는 NRT 데이터 또는 기타 파일 등의 형태로 ROUTE 세션을 통해 전달될 수 있다.
또한, 이러한 서비스의 일부 서비스 컴포넌트 또는 일부 NRT 데이터, 파일 등은 브로드밴드를 통해 전달될 수 있다(하이브리드 서비스 딜리버리).
즉, 본 발명의 일 실시예에서, 하나의 서비스의 리니어 서비스 컴포넌트들은 MMT 프로토콜을 통해 전달될 수 있다. 본 발명의 다른 실시예에서, 하나의 서비스의 리니어 서비스 컴포넌트들은 ROUTE 프로토콜을 통해 전달될 수 있다. 본 발명의 또 다른 실시예에서, 하나의 서비스의 리니어 서비스 컴포넌트 및 NRT 데이터(NRT 서비스 컴포넌트)들은 ROUTE 프로토콜을 통해 전달될 수 있다. 본 발명의 또 다른 실시예에서, 하나의 서비스의 리니어 서비스 컴포넌트들은 MMT 프로토콜을 통해 전달되고, NRT 데이터(NRT 서비스 컴포넌트)들은 ROUTE 프로토콜을 통해 전달될 수 있다. 전술한 실시예들에서, 서비스의 일부 서비스 컴포넌트 또는 일부 NRT 데이터들은 브로드밴드를 통해 전달될 수 있다. 여기서 앱 기반 서비스 내지 앱 기반 인핸스먼트에 관한 데이터들은 NRT 데이터 형태로, ROUTE 에 따른 방송망을 통해 전달되거나 브로드밴드를 통해 전달될 수 있다. NRT 데이터는 로컬리 캐쉬드 데이터(Locally cashed data) 등으로 불릴 수도 있다.
각각의 ROUTE 세션은 서비스를 구성하는 컨텐츠 컴포넌트를 전체적으로 또는 부분적으로 전달하는 하나 이상의 LCT 세션을 포함한다. 스트리밍 서비스 딜리버리에서, LCT 세션은 오디오, 비디오, 또는 클로즈드 캡션 스트림과 같은 사용자 서비스의 개별 컴포넌트를 전달할 수 있다. 스트리밍 미디어는 DASH 세그먼트로 포맷된다.
각각의 MMTP 세션은 MMT 시그널링 메시지 또는 전체 또는 일부 컨텐츠 컴포넌트를 전달하는 하나 이상의 MMTP 패킷 플로우를 포함한다. MMTP 패킷 플로우는 MMT 시그널링 메시지 또는 MPU 로 포맷된 컴포넌트를 전달할 수 있다.
NRT 사용자 서비스 또는 시스템 메타데이터의 딜리버리를 위해, LCT 세션은 파일 기반의 컨텐츠 아이템을 전달한다. 이들 컨텐츠 파일은 NRT 서비스의 연속적 (타임드) 또는 이산적 (논 타임드) 미디어 컴포넌트, 또는 서비스 시그널링이나 ESG 프레그먼트와 같은 메타데이터로 구성될 수 있다. 서비스 시그널링이나 ESG 프레그먼트와 같은 시스템 메타데이터의 딜리버리 또한 MMTP의 시그널링 메시지 모드를 통해 이루어질 수 있다.
수신기에서는 튜너가 주파수들을 스캐닝하다가, 특정 주파수에서 방송 시그널을 감지할 수 있다. 수신기는 SLT 를 추출해 이를 처리하는 모듈 (예를 들어, SLT parser)로 보낼 수 있다. SLT 파서는 SLT 를 파싱하고 데이터를 획득해 채널 맵을 생성하거나 채널 맵을 업데이트할 수 있다. 수신기는 SLT 의 부트스트랩 정보를 획득하고 ROUTE 또는 MMT 클라이언트에 전달해줄 수 있다. 수신기는 이를 통해 SLS 를 획득할 수 있고, 저장할 수 있다. USBD 등이 획득될 수 있고, 이는 시그널링 파서에 의해 파싱될 수 있다.
도 2 는 본 발명의 일 실시예에 따른 서비스 디스커버리 과정을 도시한 도면이다.
피지컬 레이어의 방송 신호 프레임이 전달하는 브로드캐스트 스트림은 LLS (Low Level Signaling) 을 운반할 수 있다. LLS 데이터는 웰 노운(well known) IP 어드레스/포트로 전달되는 IP 패킷의 페이로드를 통해서 운반될 수 있다. 이 LLS 는 그 타입에 따라 SLT 를 포함할 수 있다. LLS 데이터는 LLS 테이블의 형태로 포맷될 수 있다. LLS 데이터를 운반하는 매 UDP/IP 패킷의 첫번째 바이트는 LLS 테이블의 시작일 수 있다. 도시된 실시예와 달리 LLS 데이터를 전달하는 IP 스트림은, 다른 서비스 데이터들과 함께 같은 PLP 로 전달될 수도 있다.
SLT 는 빠른 채널 스캔을 통하여 수신기가 서비스 리스트를 생성할 수 있게 하고, SLS 를 로케이팅(locating) 하기 위한 액세스 정보를 제공한다. SLT 는 부트스트랩 정보를 포함하는데, 이 부트스트랩 정보는 수신기가 각각의 서비스에 대한 SLS (Service Layer Signaling) 을 획득할 수 있도록 한다. SLS, 즉 서비스 시그널링 정보가 ROUTE 를 통해 전달되는 경우, 부트스트랩 정보는 SLS 를 운반하는 LCT 채널 내지 그 LCT 채널을 포함하는 ROUTE 세션의 데스티네이션 IP 어드레스 및 데스티네이션 포트 정보를 포함할 수 있다. SLS 가 MMT 를 통해 전달되는 경우, 부트스트랩 정보는 SLS 를 운반하는 MMTP 세션의 데스티네이션 IP 어드레스 및 데스티네이션 포트 정보를 포함할 수 있다.
도시된 실시예에서, SLT 가 기술하는 서비스 #1 의 SLS 는 ROUTE 를 통해 전달되고, SLT 는 해당 SLS 가 전달되는 LCT 채널을 포함하는 ROUTE 세션에 대한 부트스트랩 정보(sIP1, dIP1, dPort1) 를 포함할 수 있다. SLT 가 기술하는 서비스 #2 의 SLS 는 MMT 를 통해 전달되고, SLT 는 해당 SLS 가 전달되는 MMTP 패킷 플로우를 포함하는 MMTP 세션에 대한 부트스트랩 정보(sIP2, dIP2, dPort2) 를 포함할 수 있다.
SLS 는 해당 서비스에 대한 특성을 기술하는 시그널링 정보로서, 해당 서비스 및 해당 서비스의 서비스 컴포넌트를 획득하기 위한 정보를 제공하거나, 해당 서비스를 유의미하게 재생하기 위한 수신기 캐패빌리티 정보 등을 포함할 수 있다. 각 서비스에 대해 별개의 서비스 시그널링을 가지면 수신기는 브로드캐스트 스트림 내에서 전달되는 전체 SLS을 파싱할 필요 없이 원하는 서비스에 대한 적절한 SLS를 획득하면 된다.
SLS 가 ROUTE 프로토콜을 통해 전달되는 경우, SLS 는 SLT 가 지시하는 ROUTE 세션의 특정(dedicated) LCT 채널을 통해 전달될 수 있다. 실시예에 따라 이 LCT 채널은 tsi = 0 로 식별되는 LCT 채널일 수 있다. 이 경우 SLS 는 USBD/USD (User Service Bundle Description / User Service Description), S-TSID (Service-based Transport Session Instance Description) 및/또는 MPD (Media Presentation Description) 를 포함할 수 있다.
여기서 USBD 내지 USD 는 SLS 프래그먼트 중 하나로서, 서비스의 구체적 기술적 정보들을 기술하는 시그널링 허브로서 역할할 수 있다. USBD 는 서비스 식별 정보, 디바이스 캐패빌리티 정보 등을 포함할 수 있다. USBD 는 다른 SLS 프래그먼트(S-TSID, MPD 등) 에의 레퍼런스 정보(URI 레퍼런스)를 포함할 수 있다. 즉, USBD/USD 는 S-TSID 와 MPD 를 각각 레퍼런싱할 수 있다. 또한 USBD 는 수신기가 전송 모드(방송망/브로드밴드)를 결정할 수 있게 해주는 메타데이터 정보를 더 포함할 수 있다. USBD/USD 의 구체적 내용들에 대해서는 후술한다.
S-TSID 는 SLS 프래그먼트 중 하나로서, 해당 서비스의 서비스 컴포넌트를 운반하는 전송 세션에 대한 전체적인 세션 디스크립션 정보를 제공할 수 있다. S-TSID 는 해당 서비스의 서비스 컴포넌트가 전달되는 ROUTE 세션 및/또는 그 ROUTE 세션들의 LCT 채널에 대한 전송 세션 디스크립션 정보를 제공할 수 있다. S-TSID 는 하나의 서비스와 관련된 서비스 컴포넌트들의 컴포넌트 획득(acquisition) 정보를 제공할 수 있다. S-TSID 는, MPD 의 DASH 레프리젠테이션(Representation) 과 해당 서비스 컴포넌트의 tsi 간의 매핑을 제공할 수 있다. S-TSID 의 컴포넌트 획득 정보는 tsi, 관련 DASH 레프리젠테이션의 식별자의 형태로 제공될 수 있으며, 실시예에 따라 PLP ID 를 포함하거나 포함하지 않을 수 있다. 컴포넌트 획득 정보를 통해 수신기는 한 서비스의 오디오/비디오 컴포넌트들을 수집하고 DASH 미디어 세그먼트들의 버퍼링, 디코딩 등을 수행할 수 있다. S-TSID 는 전술한 바와 같이 USBD 에 의해 레퍼런싱될 수 있다. S-TSID 의 구체적 내용들에 대해서는 후술한다.
MPD 는 SLS 프래그먼트 중 하나로서, 해당 서비스의 DASH 미디어 프리젠테이션에 관한 디스크립션을 제공할 수 있다. MPD 는 미디어 세그먼트들에 대한 리소스 식별자(resource identifier) 를 제공하고, 식별된 리소스들에 대한 미디어 프리젠테이션 내에서의 컨텍스트 정보를 제공할 수 있다. MPD 는 방송망을 통해 전달되는 DASH 레프리젠테이션(서비스 컴포넌트)를 기술하고, 또한 브로드밴드를 통해 전달되는 추가적인 DASH 레프리젠테이션을 기술할 수 있다(하이브리드 딜리버리). MPD 는 전술한 바와 같이 USBD 에 의해 레퍼런싱될 수 있다.
SLS 가 MMT 프로토콜을 통해 전달되는 경우, SLS 는 SLT 가 지시하는 MMTP 세션의 특정(dedicated) MMTP 패킷 플로우를 통해 전달될 수 있다. 실시예에 따라 SLS 를 전달하는 MMTP 패킷들의 packet_id 는 00 의 값을 가질 수 있다. 이 경우 SLS 는 USBD/USD 및/또는 MMT Package (MP) 테이블을 포함할 수 있다.
여기서 USBD 는 SLS 프래그먼트의 하나로서, ROUTE 에서의 그것과 같이 서비스의 구체적 기술적 정보들을 기술할 수 있다. 여기서의 USBD 역시 다른 SLS 프래그먼트에의 레퍼런스 정보(URI 레퍼런스)를 포함할 수 있다. MMT 의 USBD 는 MMT 시그널링의 MP 테이블을 레퍼런싱할 수 있다. 실시예에 따라 MMT 의 USBD 는 S-TSID 및/또는 MPD 에의 레퍼런스 정보 또한 포함할 수 있다. 여기서의 S-TSID 는 ROUTE 프로토콜을 통해 전달되는 NRT 데이터를 위함일 수 있다. MMT 프로토콜을 통해 리니어 서비스 컴포넌트가 전달되는 경우에도 NRT 데이터는 ROUTE 프로토콜을 통해 전달될 수 있기 때문이다. MPD 는 하이브리드 서비스 딜리버리에 있어서, 브로드밴드로 전달되는 서비스 컴포넌트를 위함일 수 있다. MMT 의 USBD 의 구체적 내용들에 대해서는 후술한다.
MP 테이블은 MPU 컴포넌트들을 위한 MMT 의 시그널링 메시지로서, 해당 서비스의 서비스 컴포넌트를 운반하는 MMTP 세션에 대한 전체적인 세션 디스크립션 정보를 제공할 수 있다. 또한 MP 테이블은 이 MMTP 세션을 통해 전달되는 에셋(Asset) 에 대한 디스크립션을 포함할 수 있다. MP 테이블은 MPU 컴포넌트들을 위한 스트리밍 시그널링 정보로서, 하나의 서비스에 해당하는 에셋들의 리스트와 이 컴포넌트들의 로케이션 정보(컴포넌트 획득 정보)를 제공할 수 있다. MP 테이블의 구체적인 내용은 MMT 에서 정의된 형태이거나, 변형이 이루어진 형태일 수 있다. 여기서 Asset 이란, 멀티미디어 데이터 엔티티로서, 하나의 유니크 ID 로 연합되고 하나의 멀티미디어 프리젠테이션을 생성하는데 사용되는 데이터 엔티티를 의미할 수 있다. Asset 은 하나의 서비스를 구성하는 서비스 컴포넌트에 해당할 수 있다. MP 테이블을 이용하여 원하는 서비스에 해당하는 스트리밍 서비스 컴포넌트(MPU) 에 접근할 수 있다. MP 테이블은 전술한 바와 같이 USBD 에 의해 레퍼런싱될 수 있다.
기타 다른 MMT 시그널링 메시지가 정의될 수 있다. 이러한 MMT 시그널링 메시지들에 의해 MMTP 세션 내지 서비스에 관련된 추가적인 정보들이 기술될 수 있다.
ROUTE 세션은 소스 IP 어드레스, 데스티네이션 IP 어드레스, 데스티네이션 포트 넘버에 의해 식별된다. LCT 세션은 페어런트 ROUTE 세션의 범위 내에서 유일한 TSI (transport session identifier)에 의해 식별된다. MMTP 세션은 데스티네이션 IP 어드레스 및 데스티네이션 포트 넘버에 의해 식별된다. MMTP 패킷 플로우는 페어런트 MMTP 세션의 범위 내에서 유일한 packet_id에 의해 식별된다.
ROUTE 의 경우 S-TSID, USBD/USD, MPD 또는 이 들을 전달하는 LCT 세션을 서비스 시그널링 채널이라 부를 수도 있다. MMTP 의 경우, USBD/USD, MMT 시그널링 메시지들 또는 이들을 전달하는 패킷 플로우를 서비스 시그널링 채널이라 부를 수도 있다.
도시된 실시예와는 달리, 하나의 ROUTE 또는 MMTP 세션은 복수개의 PLP 를 통해 전달될 수 있다. 즉, 하나의 서비스는 하나 이상의 PLP 를 통해 전달될 수도 있다. 도시된 것과 달리 실시예에 따라 하나의 서비스를 구성하는 컴포넌트들이 서로 다른 ROUTE 세션들을 통해 전달될 수도 있다. 또한, 실시예에 따라 하나의 서비스를 구성하는 컴포넌트들이 서로 다른 MMTP 세션들을 통해 전달될 수도 있다. 실시예에 따라 하나의 서비스를 구성하는 컴포넌트들이 ROUTE 세션과 MMTP 세션에 나뉘어 전달될 수도 있다. 도시되지 않았으나, 하나의 서비스를 구성하는 컴포넌트가 브로드밴드를 통해 전달(하이브리드 딜리버리)되는 경우도 있을 수 있다.
도 3 은 본 발명의 일 실시예에 따른 LLS (Low Level Signaling) 테이블 및 SLT (Service List Table)를 도시한 도면이다.
도시된 LLS 테이블의 일 실시예(t3010) 은, LLS_table_id 필드, provider_id 필드, LLS_table_version 필드 및/또는 LLS_table_id 필드에 따른 정보들을 포함할 수 있다. 상기 LLS 테이블은 LLS_group_id 필드와 group_count_minus 1 필드를 더 포함할 수 있다.
LLS_table_id 필드는 바디로 딜리버리되는 테이블의 타입을 식별하고, provider_id 필드는 해당 LLS 테이블에 의해 시그널링되는 서비스들과 관련된 서비스 프로바이더를 식별할 수 있다. 여기서 서비스 프로바이더는 해당 브로드캐스트 스트림의 전부 또는 일부를 사용하는 브로드캐스터로서, provider_id 필드는 해당 브로드캐스트 스트림을 사용중인 복수의 브로드캐스터들 중 하나를 식별할 수 있다. LLS_table_version 필드는 해당 LLS 테이블의 버전 정보를 제공할 수 있다. 일 예로, LLS_table_id 필드와 LLS_group_id 필드의 조합에 의해 식별되는 테이블 내 데이터가 변경될때마다 이 필드의 값은 1씩 증가된다.
LLS_table_id 필드의 값에 따라, 해당 LLS 테이블은 전술한 SLT, 컨텐트 어드바이저리 레이팅(Content advisory rating) 에 관련된 정보를 포함하는 RRT(Rating Region Table), 시스템 타임과 관련된 정보를 제공하는 SystemTime 정보, 긴급 경보와 관련된 정보를 제공하는 CAP (Common Alert Protocol) 메시지 중 하나를 포함할 수 있다. 상기 CAP 메시지 대신 Advanced Emergency Alerting Message format (AEA-MF) 구조를 따르는 Advanced Emergency Alerting Table (AEAT) 프래그먼트를 포함할 수도 있다. 상기 AEAT는 상기 CAP 메시지를 포함할 수 있다. 실시예에 따라 이들 외에 다른 정보가 LLS 테이블에 포함될 수도 있다.
LLS_group_id 필드는 해당 LLS 테이블(LLS_table ())을 동일한 LLS_group_id를 갖는 그룹의 테이블들과 연결한다. 이 필드의 스콥은 방송 스트림이다. 즉, 이 필드의 값은 방송 스트림 내에서 유일한 값이어야 한다.
group_count_minus1 필드는 현재 LLS 패킷 스트림 또는 특정 PLP로 전송(carry)되는 링크 레이어 패킷 스트림에 존재하는 서로 다른 LLS 테이블 그룹의 총 개수에서 1을 뺀 값을 나타낸다. 예로 이 필드의 값이 0일 경우에는 LLS_table()들이 오직 한가지의 LLS_group_id 값을 가지는 것을 나타낸다. 만일 그 값이 1일 경우에는 2가지의 LLS_group_id 값을 가지는 LLS_table()들이 존재함을 나타낸다.
도시된 SLT 의 일 실시예(t3020) 는, @bsid 속성, @sltCapabilities 속성, sltInetUrl 엘레멘트 및/또는 Service 엘레멘트를 포함할 수 있다. 각 필드들은 도시된 Use 컬럼의 값에 따라 생략되거나, 복수개 존재할 수 있다.
@bsid 속성은 브로드캐스트 스트림의 식별자일 수 있다. @sltCapabilities 속성은 해당 SLT 가 기술하는 모든 서비스들을 디코딩하고 유의미하게 재생하는데 요구되는 캐패빌리티 정보를 제공할 수 있다. sltInetUrl 엘레멘트는 해당 SLT 의 서비스들을 위한 ESG 내지 서비스 시그널링 정보를 브로드밴드를 통해 얻기 위해 사용되는 베이스 URL 정보를 제공할 수 있다. sltInetUrl 엘레멘트는 @urlType 속성을 더 포함할 수 있는데, 이는 해당 URL 을 통해 얻을 수 있는 데이터의 타입을 지시할 수 있다.
Service 엘레멘트는 해당 SLT 가 기술하는 서비스들에 대한 정보를 포함하는 엘레멘트일 수 있으며, 각각의 서비스들에 대해 Service 엘레멘트가 존재할 수 있다. Service 엘레멘트는 @serviceId 속성, @sltSvcSeqNum 속성, @protected 속성, @majorChannelNo 속성, @minorChannelNo 속성, @serviceCategory 속성, @shortServiceName 속성, @hidden 속성, @broadbandAccessRequired 속성, @svcCapabilities 속성, BroadcastSvcSignaling 엘레멘트 및/또는 svcInetUrl 엘레멘트를 포함할 수 있다. 상기 Service 엘레먼트는 @globalserviceID 속성을 더 포함할 수 있다.
@serviceId 속성은 해당 서비스의 식별자이고, @globalserviceID 속성은 해당 서비스를 식별하는 글로벌하게 유니크한(globally unique) URI이다. @sltSvcSeqNum 속성은 해당 서비스에 대한 SLT 정보의 시퀀스 넘버를 나타낼 수 있다. @protected 속성은 해당 서비스의 유의미한 재생을 위해 필요한 적어도 하나의 서비스 컴포넌트가 보호(protected)되고 있는지 여부를 지시할 수 있다. @majorChannelNo 속성과 @minorChannelNo 속성은 각각 해당 서비스의 메이저 채널 넘버와 마이너 채널 넘버를 지시할 수 있다.
@serviceCategory 속성은 해당 서비스의 카테고리를 지시할 수 있다. 서비스의 카테고리로는 리니어 A/V 서비스, 리니어 오디오 서비스, 앱 기반 서비스, ESG 서비스, EAS 서비스 등이 있을 수 있다. @shortServiceName 속성은 해당 서비스의 짧은 이름(Short name)을 제공할 수 있다. @hidden 속성은 해당 서비스가 테스팅 또는 독점적(proprietary) 사용을 위한 서비스인지 여부를 지시할 수 있다. @broadbandAccessRequired 속성은 해당 서비스의 유의미한 재생을 위하여 브로드밴드 억세스가 필요한지 여부를 지시할 수 있다. @svcCapabilities 속성은 해당 서비스의 디코딩과 유의미한 재생을 위하여 필요한 캐패빌리티 정보를 제공할 수 있다. 상기 Service 속성은 @essential 엘레먼트를 더 포함할 수 있다. 상기 @essential 엘레먼트는 해당 서비스의 필수적인 부분(essential portion)이 이 방송 스트림을 통해 딜리버리되는지를 지시한다.
BroadcastSvcSignaling 엘레멘트는 해당 서비스의 브로드캐스트 시그널링에 관련된 정보들을 제공할 수 있다. 이 엘레멘트는 해당 서비스의 방송망을 통한 시그널링에 대하여, 로케이션, 프로토콜, 어드레스 등의 정보를 제공할 수 있다. 자세한 사항은 후술한다.
svcInetUrl 엘레멘트는 해당 서비스를 위한 시그널링 정보를 브로드밴드를 통해 액세스하기 위한 URL 정보를 제공할 수 있다. sltInetUrl 엘레멘트는 @urlType 속성을 더 포함할 수 있는데, 이는 해당 URL 을 통해 얻을 수 있는 데이터의 타입을 지시할 수 있다.
전술한 BroadcastSvcSignaling 엘레멘트는 @slsProtocol 속성, @slsMajorProtocolVersion 속성, @slsMinorProtocolVersion 속성, @slsPlpId 속성, @slsDestinationIpAddress 속성, @slsDestinationUdpPort 속성 및/또는 @slsSourceIpAddress 속성을 포함할 수 있다.
@slsProtocol 속성은 해당 서비스의 SLS 를 전달하는데 사용되는 프로토콜을 지시할 수 있다(ROUTE, MMT 등). @slsMajorProtocolVersion 속성 및 @slsMinorProtocolVersion 속성은 각각 해당 서비스의 SLS 를 전달하는데 사용되는 프로토콜의 메이저 버전 넘버 및 마이너 버전 넘버를 지시할 수 있다.
@slsPlpId 속성은 해당 서비스의 SLS 를 전달하는 PLP 를 식별하는 PLP 식별자를 제공할 수 있다. 실시예에 따라 이 필드는 생략될 수 있으며, SLS 가 전달되는 PLP 정보는 후술할 LMT 내의 정보와, SLT 의 부트스트랩 정보를 조합하여 확인될 수도 있다.
@slsDestinationIpAddress 속성, @slsDestinationUdpPort 속성 및 @slsSourceIpAddress 속성은 각각 해당 서비스의 SLS 를 전달하는 전송 패킷의 데스티네이션 IP 어드레스, 데스티네이션 UDP 포트 및 소스 IP 어드레스를 지시할 수 있다. 이들은 SLS 가 전달되는 전송세션(ROUTE 세션 또는 MMTP 세션)을 식별할 수 있다. 이들은 부트스트랩 정보에 포함될 수 있다.
도 4 는 본 발명의 일 실시예에 따른, ROUTE 로 전달되는 USBD 및 S-TSID 를 도시한 도면이다.
도시된 USBD 의 일 실시예(t4010) 은, bundleDescription 루트 엘레멘트를 가질 수 있다. bundleDescription 루트 엘레멘트는 userServiceDescription 엘레멘트를 가질 수 있다. userServiceDescription 엘레멘트는 하나의 서비스에 대한 인스턴스일 수 있다.
userServiceDescription 엘레멘트는 @globalServiceID 속성, @serviceId 속성, @serviceStatus 속성, @fullMPDUri 속성, @sTSIDUri 속성, name 엘레멘트, serviceLanguage 엘레멘트, capabilityCode 엘레멘트 및/또는 deliveryMethod 엘레멘트를 포함할 수 있다. 각 필드들은 도시된 Use 컬럼의 값에 따라 생략되거나, 복수개 존재할 수 있다.
@globalServiceID 속성은 해당 서비스의 글로벌하게 유니크한(globally unique) 식별자로서, ESG 데이터와 링크되는데 사용될 수 있다(Service@globalServiceID). @serviceId 속성은 SLT 의 해당 서비스 엔트리와 대응되는 레퍼런스로서, SLT 의 서비스 ID 정보와 동일할 수 있다. @serviceStatus 속성은 해당 서비스의 상태를 지시할 수 있다. 이 필드는 해당 서비스가 액티브인지 인액티브(inactive) 상태인지 여부를 지시할 수 있다.
@fullMPDUri 속성은 해당 서비스의 MPD 프래그먼트를 레퍼런싱할 수 있다. MPD 는 전술한 바와 같이 방송망 또는 브로드밴드를 통해 전달되는 서비스 컴포넌트에 대한 재생 디스크립션을 제공할 수 있다. @sTSIDUri 속성은 해당 서비스의 S-TSID 프래그먼트를 레퍼런싱할 수 있다. S-TSID 는 전술한 바와 같이 해당 서비스를 운반하는 전송 세션에의 액세스와 관련된 파라미터들을 제공할 수 있다.
name 엘레멘트는 해당 서비스의 이름을 제공할 수 있다. 이 엘레멘트는 @lang 속성을 더 포함할 수 있는데, 이 필드는 name 엘레멘트가 제공하는 이름의 언어를 지시할 수 있다. serviceLanguage 엘레멘트는 해당 서비스의 이용 가능한(available) 언어들을 지시할 수 있다. 즉, 이 엘레멘트는 해당 서비스가 제공될 수 있는 언어들을 나열할 수 있다.
capabilityCode 엘레멘트는 해당 서비스를 유의미하게 재생하기 위해 필요한 수신기 측의 캐패빌리티 또는 캐패빌리티 그룹 정보를 지시할 수 있다. 이 정보들은 서비스 아나운스먼트(announcement) 에서 제공되는 캐패빌리티 정보 포맷과 호환될 수 있다.
deliveryMethod 엘레멘트는 해당 서비스의 방송망 또는 브로드밴드를 통해 액세스되는 컨텐츠들에 대하여, 전송 관련 정보들을 제공할 수 있다. deliveryMethod 엘레멘트는 broadcastAppService 엘레멘트 및/또는 unicastAppService 엘레멘트를 포함할 수 있다. 이 엘레멘트들은 각각 basePattern 엘레멘트를 하위 엘레멘트로 가질 수 있다.
broadcastAppService 엘레멘트는 방송망을 통해 전달되는 DASH 레프리젠테이션에 대한 전송 관련 정보를 포함할 수 있다. 이 DASH 레프리젠테이션들은 해당 서비스 미디어 프리젠테이션의 모든 피리오드(Period)에 걸친 미디어 컴포넌트들을 포함할 수 있다.
이 엘레멘트의 basePattern 엘레멘트는 수신기가 세그먼트 URL 과 매칭하는데 사용되는 캐릭터 패턴을 나타낼 수 있다. 이는 DASH 클라이언트가 해당 레프리젠테이션의 세그먼트들을 요청하는데 사용될 수 있다. 매칭된다는 것은 해당 미디어 세그먼트가 방송망을 통해 전달된다는 것을 암시할 수 있다.
unicastAppService 엘레멘트는 브로드밴드를 통해 전달되는 DASH 레프리젠테이션에 대한 전송 관련 정보를 포함할 수 있다. 이 DASH 레프리젠테이션들은 해당 서비스 미디어 프리젠테이션의 모든 피리오드(Period)에 걸친 미디어 컴포넌트들을 포함할 수 있다.
이 엘레멘트의 basePattern 엘레멘트는 수신기가 세그먼트 URL 과 매칭하는데 사용되는 캐릭터 패턴을 나타낼 수 있다. 이는 DASH 클라이언트가 해당 레프리젠테이션의 세그먼트들을 요청하는데 사용될 수 있다. 매칭된다는 것은 해당 미디어 세그먼트가 브로드밴드를 통해 전달된다는 것을 암시할 수 있다.
도시된 S-TSID 의 일 실시예(t4020) 은, S-TSID 루트 엘레멘트를 가질 수 있다. S-TSID 루트 엘레멘트는 @serviceId 속성 및/또는 RS 엘레멘트를 포함할 수 있다. 각 필드들은 도시된 Use 컬럼의 값에 따라 생략되거나, 복수개 존재할 수 있다.
@serviceId 속성은 해당 서비스의 식별자로서, USBD/USD 의 해당 서비스를 레퍼런싱할 수 있다. RS 엘레멘트는 해당 서비스의 서비스 컴포넌트들이 전달되는 ROUTE 세션들에 대한 정보를 기술할 수 있다. 이러한 ROUTE 세션의 개수에 따라, 이 엘레멘트는 복수개 존재할 수 있다. RS 엘레멘트는 @bsid 속성, @sIpAddr 속성, @dIpAddr 속성, @dport 속성, @PLPID 속성 및/또는 LS 엘레멘트를 더 포함할 수 있다.
@bsid 속성은 해당 서비스의 서비스 컴포넌트들이 전달되는 브로드캐스트 스트림의 식별자일 수 있다. 이 필드가 생략된 경우, 디폴트 브로드캐스트 스트림은 해당 서비스의 SLS 를 전달하는 PLP 를 포함하는 브로드캐스트 스트림일 수 있다. 이 필드의 값은 SLT 의 @bsid 속성과 같은 값일 수 있다.
@sIpAddr 속성, @dIpAddr 속성 및 @dport 속성은 각각 해당 ROUTE 세션의 소스 IP 어드레스, 데스티네이션 IP 어드레스 및 데스티네이션 UDP 포트를 나타낼 수 있다. 이 필드들이 생략되는 경우, 디폴트 값들은 해당 SLS 를 전달하는, 즉 해당 S-TSID 를 전달하고 있는 현재의, ROUTE 세션의 소스 IP 어드레스, 데스티네이션 IP 어드레스 및 데스티네이션 UDP 포트값들일 수 있다. 현재 ROUTE 세션이 아닌, 해당 서비스의 서비스 컴포넌트들을 전달하는 다른 ROUTE 세션에 대해서는, 본 필드들이 생략되지 않을 수 있다.
@PLPID 속성은 해당 ROUTE 세션의 PLP ID 정보를 나타낼 수 있다. 이 필드가 생략되는 경우, 디폴트 값은 해당 S-TSID 가 전달되고 있는 현재 PLP 의 PLP ID 값일 수 있다. 실시예에 따라 이 필드는 생략되고, 해당 ROUTE 세션의 PLP ID 정보는 후술할 LMT 내의 정보와, RS 엘레멘트의 IP 어드레스 / UDP 포트 정보들을 조합하여 확인될 수도 있다.
LS 엘레멘트는 해당 서비스의 서비스 컴포넌트들이 전달되는 LCT 채널들에 대한 정보를 기술할 수 있다. 이러한 LCT 채널의 개수에 따라, 이 엘레멘트는 복수개 존재할 수 있다. LS 엘레멘트는 @tsi 속성, @PLPID 속성, @bw 속성, @startTime 속성, @endTime 속성, SrcFlow 엘레멘트 및/또는 RepairFlow 엘레멘트를 포함할 수 있다.
@tsi 속성은 해당 LCT 채널의 tsi 정보를 나타낼 수 있다. 이를 통해 해당 서비스의 서비스 컴포넌트가 전달되는 LCT 채널들이 식별될 수 있다. @PLPID 속성은 해당 LCT 채널의 PLP ID 정보를 나타낼 수 있다. 실시예에 따라 이 필드는 생략될 수 있다. @bw 속성은 해당 LCT 채널의 최대 대역폭을 나타낼 수 있다. @startTime 속성은 해당 LCT 세션의 스타트 타임을 지시하고, @endTime 속성은 해당 LCT 채널의 엔드 타임을 지시할 수 있다.
SrcFlow 엘레멘트는 ROUTE 의 소스 플로우에 대해 기술할 수 있다. ROUTE 의 소스 프로토콜은 딜리버리 오브젝트를 전송하기 위해 사용되며, 한 ROUTE 세션 내에서 적어도 하나 이상의 소스 플로우를 설정(establish)할 수 있다. 이 소스 플로우들은 관련된 오브젝트들을 오브젝트 플로우로서 전달할 수 있다.
RepairFlow 엘레멘트는 ROUTE 의 리페어 플로우에 대해 기술할 수 있다. 소스 프로토콜에 따라 전달되는 딜리버리 오브젝트들은 FEC (Forward Error Correction) 에 따라 보호될 수 있는데, 리페어 프로토콜은 이러한 FEC 프로텍션을 가능케 하는 FEC 프레임워크(framework)를 정의할 수 있다.
도 5 는 본 발명의 일 실시예에 따른, MMT 로 전달되는 USBD 를 도시한 도면이다.
도시된 USBD 의 일 실시예는, bundleDescription 루트 엘레멘트를 가질 수 있다. bundleDescription 루트 엘레멘트는 userServiceDescription 엘레멘트를 가질 수 있다. userServiceDescription 엘레멘트는 하나의 서비스에 대한 인스턴스일 수 있다.
userServiceDescription 엘레멘트는 @globalServiceID 속성, @serviceId 속성, Name 엘레멘트, serviceLanguage 엘레멘트, contentAdvisoryRating 엘레멘트, Channel 엘레멘트, mpuComponent 엘레멘트, routeComponent 엘레멘트, broadbandComponent 엘레멘트 및/또는 ComponentInfo 엘레멘트를 포함할 수 있다. userServiceDescription 엘레멘트는 @servicestatus 속성, otherRatings 엘레먼트를 더 포함할 수 있다.
각 필드들은 도시된 Use 컬럼의 값에 따라 생략되거나, 복수개 존재할 수 있다.
@globalServiceID 속성, @serviceId 속성, @servicestatus 속성, Name 엘레멘트 및/또는 serviceLanguage 엘레멘트는 전술한 ROUTE 로 전달되는 USBD 의 해당 필드들과 같을 수 있다. contentAdvisoryRating 엘레멘트는 해당 서비스의 RRT-based 컨텐트 어드바이저리(advisory) 레이팅을 나타낼 수 있다. otherRatings 엘레먼트는 해당 서비스의 non-RRT 컨텐트 어드바이저리 레이팅을 나타낼 수 있다. 이 정보들은 서비스 아나운스먼트(announcement) 에서 제공되는 컨텐트 어드바이저리 레이팅 정보 포맷과 호환될 수 있다. Channel 엘레멘트는 해당 서비스와 관련된 정보들을 포함할 수 있다. 이 엘레멘트의 자세한 내용에 대해서는 후술한다.
mpuComponent 엘레멘트는 해당 서비스의 MPU 로서 전달되는 서비스 컴포넌트들에 대한 디스크립션을 제공할 수 있다. 이 엘레멘트는 @mmtPackageId 속성, @contentIdSchemeIdUri 속성, @contentIdValue 속성, @nextMmtPackageId 속성, @nextcontentIdSchemeIdUri 속성, @nextcontentIdValue 속성을 더 포함할 수 있다. @mmtPackageId 속성은 해당 서비스의 MPU 로서 전달되는 서비스 컴포넌트들의 MMT 패키지(Package)를 레퍼런싱할 수 있다. @contentIdSchemeIdUri 속성은 현재 MMT 패키지와 관련된 content ID의 scheme을 식별하기 위한 URI를 나타낸다. @contentIdValue 속성은 현재 MMT 패키지와 관련된 content ID 값을 나타낸다. @nextMmtPackageId 속성은 시간상 @mmtPackageId 속성이 레퍼런싱하는 MMT 패키지 다음으로 사용될 MMT 패키지를 레퍼런싱할 수 있다. @nextcontentIdSchemeIdUri 속성은 다음 MMT 패키지와 관련된 content ID의 scheme을 식별하기 위한 URI를 나타낸다. @nextcontentIdValue 속성은 다음 MMT 패키지와 관련된 content ID 값을 나타낸다. 이 엘레멘트의 정보들을 통해 MP 테이블이 레퍼런싱될 수 있다.
routeComponent 엘레멘트는 ROUTE 로 전달되는 해당 서비스의 서비스 컴포넌트들에 대한 디스크립션을 포함할 수 있다. 리니어 서비스 컴포넌트들이 MMT 프로토콜로 전달되는 경우라 하더라도, NRT 데이터들은 전술한 바와 같이 ROUTE 프로토콜에 따라 전달될 수 있다. 이 엘레멘트는 이러한 NRT 데이터들에 대한 정보들을 기술할 수 있다. 이 엘레멘트의 자세한 내용에 대해서는 후술한다.
broadbandComponent 엘레멘트는 브로드밴드로 전달되는 해당 서비스의 서비스 컴포넌트들에 대한 디스크립션을 포함할 수 있다. 하이브리드 서비스 딜리버리에 있어서, 한 서비스의 일부 서비스 컴포넌트 또는 기타 파일들은 브로드밴드를 통해 전달될 수 있다. 이 엘레멘트는 이러한 데이터들에 대한 정보들을 기술할 수 있다. 이 엘레멘트는 @fullMPDUri 속성을 더 포함할 수 있다. 이 속성은 브로드밴드로 전달되는 서비스 컴포넌트들에 대해 기술하는 MPD 를 레퍼런싱할 수 있다. 하이브리드 서비스 딜리버리 이외에도, 터널 내의 주행 등으로 인해 방송 신호가 약화되는 경우에 있어, 방송망-브로드밴드 간의 핸드오프(handoff)를 지원하기 위해 본 엘레멘트가 필요할 수 있다. 방송 신호가 약해지는 경우, 브로드밴드를 통해 서비스 컴포넌트를 획득하다가, 다시 방송 신호가 강해지면 방송망을 통해 서비스 컴포넌트를 획득하여 서비스의 연속성이 보장될 수 있다.
ComponentInfo 엘레멘트는 해당 서비스의 서비스 컴포넌트들에 대한 정보를 포함할 수 있다. 서비스의 서비스 컴포넌트들의 개수에 따라, 이 엘레멘트는 복수개 존재할 수 있다. 이 엘레멘트는 각 서비스 컴포넌트의 타입, 롤(role), 이름, 식별자, 프로텍션 여부 등의 정보들을 기술할 수 있다. 이 엘레멘트의 자세한 정보에 대해서는 후술한다.
전술한 Channel 엘레멘트는 @serviceGenre 속성, @serviceIcon 속성 및/또는 ServiceDescription 엘레멘트를 더 포함할 수 있다. @serviceGenre 속성은 해당 서비스의 장르를 지시하고, @serviceIcon 속성은 해당 서비스를 대표하는 아이콘(icon) 의 URL 정보를 포함할 수 있다. ServiceDescription 엘레멘트는 해당 서비스의 서비스 디스크립션을 제공하는데, 이 엘레멘트는 @serviceDescrText 속성 및/또는 @serviceDescrLang 속성을 더 포함할 수 있다. 이 속성들은 각각 해당 서비스 디스크립션의 텍스트 및 그 텍스트에 사용되는 언어를 지시할 수 있다.
전술한 routeComponent 엘레멘트는 @sTSIDUri 속성, @sTSIDDestinationIpAddress 속성, @sTSIDDestinationUdpPort 속성, @sTSIDSourceIpAddress 속성, @sTSIDMajorProtocolVersion 속성 및/또는 @sTSIDMinorProtocolVersion 속성을 더 포함할 수 있다.
@sTSIDUri 속성은 S-TSID 프래그먼트를 레퍼런싱할 수 있다. 이 필드는 전술한 ROUTE 로 전달되는USBD 의 해당 필드와 같을 수 있다. 이 S-TSID 는 ROUTE 로 전달되는 서비스 컴포넌트들에 대한 액세스 관련 정보를 제공할 수 있다. 이 S-TSID 는 MMT 프로토콜에 따라 리니어 서비스 컴포넌트들이 전달되는 상황에서, ROUTE 프로토콜에 따라 전달되는 NRT 데이터들을 위해 존재할 수 있다.
@sTSIDDestinationIpAddress 속성, @sTSIDDestinationUdpPort 속성 및 @sTSIDSourceIpAddress 속성은 각각 전술한 S-TSID 를 운반하는 전송 패킷의 데스티네이션 IP 어드레스, 데스티네이션 UDP 포트, 소스 IP 어드레스를 나타낼 수 있다. 즉, 이 필드들은 전술한 S-TSID 를 운반하는 전송 세션(MMTP 세션 또는 ROUTE 세션)을 식별할 수 있다.
@sTSIDMajorProtocolVersion 속성 및 @sTSIDMinorProtocolVersion 속성은 전술한 S-TSID 를 전달하는데 사용되는 전송 프로토콜의 메이저 버전 넘버 및 마이너 버전 넘버를 지시할 수 있다.
전술한 ComponentInfo 엘레멘트는 @componentType 속성, @componentRole 속성, @componentProtectedFlag 속성, @componentId 속성 및/또는 @componentName 속성을 더 포함할 수 있다.
@componentType 속성은 해당 컴포넌트의 타입을 지시할 수 있다. 예를 들어 이 속성은 해당 컴포넌트가 오디오, 비디오, 클로즈드캡션 컴포넌트인지를 지시할 수 있다. @componentRole 속성은 해당 컴포넌트의 롤(역할)을 지시할 수 있다. 예를 들어 이 속성은 해당 컴포넌트가 오디오 컴포넌트인 경우 메인 오디오, 뮤직, 코멘터리 등인지를 지시할 수 있다. 해당 컴포넌트가 비디오 컴포넌트인 경우 프라이머리 비디오인지 등을 지시할 수 있다. 해당 컴포넌트가 클로즈드 캡션 컴포넌트인 경우 노말 캡션인지 이지리더(easy reader) 타입인지 등을 지시할 수 있다.
@componentProtectedFlag 속성은 해당 서비스 컴포넌트가 프로텍티드되었는지, 예를 들어 암호화되었는지를 지시할 수 있다. @componentId 속성은 해당 서비스 컴포넌트의 식별자를 나타낼 수 있다. 이 속성의 값은 이 서비스 컴포넌트에 해당하는 MP 테이블의 asset_id (에셋 ID) 와 같은 값일 수 있다. @componentName 속성은 해당 서비스 컴포넌트의 이름을 나타낼 수 있다.
지금까지 설명한 것처럼, 본 발명의 일 실시예에서, 한 서비스의 서비스 컴포넌트들이 복수개의 ROUTE 세션을 통해 전달될 수 있다. 이 경우, SLT 의 부트스트랩 정보를 통하여 SLS 가 획득될 수 있다. 이 SLS 의 USBD 를 통해 S-TSID 와 MPD 가 레퍼런싱될 수 있다. S-TSID 는 SLS 가 전달되고 있는 ROUTE 세션 뿐 아니라, 서비스 컴포넌트들이 전달되고 있는 다른 ROUTE 세션에 대한 전송 세션 디스크립션 정보 또한 기술할 수 있다. 이를 통해 복수개의 ROUTE 세션을 통해 전달되는 서비스 컴포넌트들이 모두 수집될 수 있다. 이러한 사항은 한 서비스의 서비스 컴포넌트들이 복수개의 MMTP 세션을 통해 전달되는 경우에도 유사하게 적용될 수 있다. 참고로, 하나의 서비스 컴포넌트는 복수개의 서비스에 의해 동시에 사용될 수도 있다.
본 발명의 또 다른 실시예에서, ESG 서비스에 대한 부트스트래핑은 방송망 또는 브로드밴드에 의해 수행될 수 있다. 브로드밴드를 통한 ESG 획득을 통해, SLT 의 URL 정보가 활용될 수 있다. 이 URL 로 ESG 정보 등이 요청될 수 있다.
본 발명의 또 다른 실시예에서, 한 서비스의 서비스 컴포넌트가 하나는 방송망으로 하나는 브로드밴드로 전달될 수 있다(하이브리드). S-TSID 는 방송망으로 전달되는 컴포넌트들에 대해 기술해, ROUTE 클라이언트가 원하는 서비스 컴포넌트들을 획득케 할 수 있다. 또한 USBD 는 베이스 패턴 정보를 가지고 있어, 어느 세그먼트들이(어느 컴포넌트들이) 어느 경로로 전달되는지 기술할 수 있다. 따라서 수신기는 이를 이용해, 브로드밴드 서버로 요청해야될 세그먼트는 무엇인지, 방송 스트림에서 찾아야될 세그먼트는 무엇인지 알 수 있다.
본 발명의 또 다른 실시예에서, 서비스에 대한 스케일러블(scalable) 코딩이 수행될 수 있다. USBD 는 해당 서비스를 렌더링하기 위해 필요한 모든 캐패빌리티 정보를 가질 수 있다. 예를 들어 한 서비스가 HD 또는 UHD 로 제공되는 경우, USBD 의 캐패빌리티 정보는 “HD 또는 UHD”값을 가질 수 있다. 수신기는 MPD 를 이용하여 UHD 또는 HD 서비스를 렌더링하기 위하여 어느 컴포넌트가 재생되어야 하는지 알 수 있다.
본 발명의 또 다른 실시예에서, SLS 를 전달하는 LCT 채널로 전달되는 LCT 패킷들의 TOI 필드를 통해, 해당 LCT 패킷들이 어느 SLS 프래그먼트를 전달하고 있는지(USBD, S-TSID, MPD 등..) 가 식별될 수 있다.
본 발명의 또 다른 실시예에서, 앱 기반 인핸스먼트/ 앱 기반 서비스에 사용될 앱 컴포넌트들은 NRT 컴포넌트로서 방송망을 통해 전달되거나 브로드밴드를 통해 전달될 수 있다. 또한 앱 기반 인핸스먼트에 대한 앱 시그널링은 SLS 와 함께 전달되는 AST (Application Signaling Table) 에 의해 수행될 수 있다. 또한 앱이 수행할 동작에 대한 시그널링인 이벤트는 SLS 와 함께 EMT (Event Message Table) 형태로 전달되거나, MPD 내에 시그널링되거나, DASH 레프리젠테이션 내에 box 형태로 인밴드(in-band) 시그널링될 수 있다. AST, EMT 등은 브로드밴드를 통해 전달될 수도 있다. 수집된 앱 컴포넌트들과 이러한 시그널링 정보들을 이용해 앱 기반 인핸스먼트 등이 제공될 수 있다.
본 발명의 또 다른 실시예에서, 긴급 경보를 위해 AEAT가 전술한 LLS 테이블에 포함되어 제공될 수 있다. 긴급 경보를 위한 리치 미디어(Rich Media) 컨텐츠 역시 제공될 수 있다. 리치 미디어는 AEAT에 의해 시그널링될 수 있으며, 리치 미디어가 존재하는 경우 이는 SLT 에 의해 시그널링되는 EAS 서비스로서 제공될 수 있다.
본 발명의 또 다른 실시예에서, MMT 프로토콜에 따라 리니어 서비스 컴포넌트들이 방송망을 통해 전달될 수 있다. 이 경우 해당 서비스에 대한 NRT 데이터(예를 들어 앱 컴포넌트)들은 ROUTE 프로토콜에 따라 방송망을 통해 전달될 수 있다. 또한 해당 서비스에 대한 데이터가 브로드밴드를 통해 전달될 수도 있다. 수신기는 SLT 의 부트스트랩 정보를 이용해 SLS 를 전달하는 MMTP 세션에 접근할 수 있다. MMT 에 따른 SLS 의 USBD 는 MP 테이블을 레퍼런싱하여, 수신기가 MMT 프로토콜에 따라 전달되는 MPU 로 포맷된 리니어 서비스 컴포넌트들을 획득케 할 수 있다. 또한, USBD 는 S-TSID 를 더 레퍼런싱하여, 수신기가 ROUTE 프로토콜에 따라 전달되는 NRT 데이터를 획득케 할 수 있다. 또한, USBD 는 MPD 를 더 레퍼런싱하여, 브로드밴드를 통해 전달되는 데이터에 대한 재생 디스크립션을 제공할 수 있다.
본 발명의 또 다른 실시예에서, 수신기는 그 컴패니언 디바이스에 스트리밍 컴포넌트 및/또는 파일 컨텐트 아이템(파일 등)을 획득할 수 있는 로케이션 URL 정보를, 웹소켓 등의 방법을 통해 전달할 수 있다. 컴패니언 디바이스의 어플리케이션은 이 URL 로 HTTP GET 등을 통해 요청하여 해당 컴포넌트, 데이터 등을 획득할 수 있다. 그 밖에 수신기는 시스템 타임 정보, 긴급 경보 정보 등의 정보를 컴패니언 디바이스 측에 전달할 수 있다.
이하, 링크 레이어(link layer)에 대해서 설명한다.
도 6은 본 발명의 일 실시예에 따른 링크 레이어 프로토콜 아키텍쳐를 도시한 도면이다. 도 7은 입력 패킷이 IP 패킷일 경우의 링크 레이어(Link Layer) 동작을 도시한 본 발명의 도면이다.
링크 레이어는 피지컬 레이어와 네트워크 레이어 사이의 레이어일 수 있다. 송신 측에서는 네트워크 레이어에서 피지컬 레이어로 데이터를 전송하고, 수신 측에서는 피지컬 레이어에서 네트워크 레이어로 데이터를 전송할 수 있다. 링크 레이어의 목적은 피지컬 레이어에 의한 처리를 위해 모든 입력 패킷 타입을 하나의 포맷으로 압축(abstracting)하는 것, 아직 정의되지 않은 입력 패킷 타입에 대한 유연성(flexibility) 및 추후 확장 가능성을 보장하는 것일 수 있다. 또한 링크 레이어는 입력 패킷의 헤더의 불필요한 정보를 압축하는 옵션을 제공함으로써, 입력 데이터가 효율적으로 전송될 수 있도록 할 수 있다. 링크 레이어의 오버헤드 리덕션, 인캡슐레이션 등의 동작은 링크 레이어 프로토콜이라 불리고, 해당 프로토콜을 이용하여 생성된 패킷은 링크 레이어 패킷이라 불릴 수 있다. 링크 레이어는 패킷 인캡슐레이션(packet encapsulation), 오버헤드 리덕션(Overhead Reduction) 및/또는 시그널링 전송(Signaling Transmission) 등의 기능을 수행할 수 있다.
송신측 기준으로, 링크 레이어는 입력 패킷에 대하여 오버헤드 리덕션 과정을 수행한 후 이들을 링크 레이어 패킷으로 인캡슐레이션할 수 있다. 또한 실시예에 따라 링크 레이어는 오버헤드 리덕션 과정을 수행하지 아니하고, 링크 레이어 패킷으로 인캡슐레이션할 수도 있다. 링크 레이어 프로토콜의 사용으로 인해 피지컬 레이어 상에서 데이터의 전송에 대한 오버헤드가 크게 감소할 수 있다. 본 발명에 따른 링크 레이어 프로토콜은 IP 오버헤드 리덕션 및/또는 MPEG-2 TS 오버헤드 리덕션을 제공할 수 있다.
IP 패킷이 입력패킷으로 입력되는 경우, 도 7에서와 같이 링크 레이어는 IP 헤더 압축, 어댑테이션 및/또는 인캡슐레이션 과정을 차례로 수행할 수 있다. 실시예에 따라 일부 과정은 생략될 수 있다. 먼저, RoHC 모듈이 IP 패킷 헤더 압축을 수행하여 불필요한 오버헤드를 줄이고, 어댑테이션 모듈에서 어댑테이션 과정을 수행하여 컨텍스트 정보를 추출한 후, 추출된 컨텍스트 정보를 대역 외로 전송할 수 있다. IP 헤더 압축과 어댑테이션 과정을 통칭하여 IP 헤더 압축이라 부를 수도 있다. 이 후 인캡슐레이션 모듈에서 인캡슐레이션 과정을 수행하여 IP 패킷들 또는 헤더 압축된 패킷들 그리고 추출된 컨텍스트 정보를 링크 레이어 패킷들로 인캡슐레이션할 수 있다. MPEG 2 TS 패킷이 입력패킷으로 입력되는 경우, 링크 레이어는 TS 패킷에 대한 오버헤드 리덕션 및/또는 인캡슐레이션 과정을 차례로 수행할 수 있다. 실시예에 따라 일부 과정은 생략될 수 있다. 오버헤드 리덕션에 있어, 링크 레이어는 싱크 바이트 제거, 널 패킷 삭제 및/또는 공통(common) 헤더 제거 (압축)을 제공할 수 있다. 싱크 바이트 제거를 통해 TS 패킷당 1 바이트의 오버헤드 리덕션이 제공될 수 있다. 수신측에서 재삽입될 수 있는 방식으로 널 패킷 삭제가 수행될 수 있다. 또한 연속된 헤더들 간의 공통되는 정보들이 수신측에서 복구될 수 있는 방식으로 삭제(압축)될 수 있다. 각 오버헤드 리덕션 과정 중 일부는 생략될 수 있다. 이 후 인캡슐레이션 과정을 통해 TS 패킷들이 링크 레이어 패킷들로 인캡슐레이션될 수 있다. TS 패킷의 인캡슐레이션에 대한 링크 레이어 패킷 구조는 다른 타입의 패킷들과는 다를 수 있다.
다음은 IP 헤더 압축(IP Header Compression) 에 대해서 설명한다.
IP 패킷은 고정된 헤더 포맷을 가지고 있으나, 통신 환경에서 필요한 일부 정보는 브로드캐스트 환경에서 불필요할 수 있다. 링크 레이어 프로토콜은 IP 패킷의 헤더를 압축함으로써 브로드캐스트 오버헤드를 줄이는 메커니즘을 제공할 수 있다.
송신기는 IP 헤더 압축을 위해 도 7에서와 같이 RoHC 모듈 (또는 헤더 컴프레서라 함) 및/또는 어댑테이션 모듈을 포함할 수 있다. 상기 RoHC 모듈은 RoHC 방식에 기초하여 IP 패킷 헤더의 크기를 감소시킬 수 있다. 이 후 어댑테이션 모듈은 헤더 압축된 IP 패킷으로부터 컨텍스트 정보를 추출하고 헤더 압축과 관련된 시그널링 정보를 생성할 수 있다. 수신기는 시그널링 정보와 컨텍스트 정보를 기반으로 패킷 헤더를 복구하여 원래의 IP 패킷을 재구성할 수 있다. 이하, IP 헤더 압축이란, RoHC 모듈에 의한 IP 헤더 압축만을 의미할 수도 있고, RoHC 모듈에 의한 IP 헤더 압축과 어댑테이션 모듈에 의한 어댑테이션 과정을 합한 개념을 의미할 수도 있다. 수신기의 디컴프레싱(decompressing) 에 대해서도 마찬가지이다.
본 발명은 설명의 편의를 위해 압축 이전의 IP 패킷을 데이터 패킷이라 하고, RoHC 방식으로 압축한 이후의 패킷을 RoHC 패킷(또는 헤더 압축된 데이터 패킷)이라 하기로 한다. 그리고 압축 이전의 IP 패킷들을 포함하는 스트림을 IP 스트림 또는 IP 패킷 스트림이라 하고, RoHC 패킷들을 포함하는 스트림을 RoHC 패킷 스트림 또는 RoHC 패킷 플로우 또는 RoHC IP 스트림이라 하기로 한다.
일 실시예로, IP 스트리밍(streaming) 시에, IP 패킷의 IP 헤더와 UDP 헤더에 포함된 정보 중 IP 버전, 소스 IP 어드레스, 목적지 IP 어드레스, IP 프래그먼트 플래그, 소스 포트 넘버, 목적지 포트 넘버 등은 스트리밍이 이루어지는 중에 거의 바뀌지 않는다. 본 발명은 상기와 같이 스트리밍이 이루어지는 동안 거의 바뀌지 않는 정보를 전송하는 필드들을 스태틱(static) 필드라 하기로 한다. 또한 상기 스태틱 필드로 전송되는 정보를 스태틱 정보라 하기로 한다. 본 발명에서 스태틱 정보는 스태틱 체인(static chain) 정보와 동일한 의미로 사용된다.
RoHC압축 방식에서는 이러한 스태틱 정보에 대해서는 한번 전송한 후 당분간 추가 전송을 하지 않는다. 이를 초기화 및 리프레쉬(Initialization and Refresh, 이하 IR이라 함) 상태(state)라 하며, 상기 스태틱 정보가 헤더로 전송되는 RoHC 패킷을 IR 패킷이라 한다. 여기에 더해서, 수시로 변동되지만 일정시간 유지되는 다이나믹 정보에 대해서도 별도로 추가 전송을 하도록 되어 있다. 상기 다이나믹 정보는 다이나믹 필드를 통해 전송되며, 본 발명에서 다이나믹 정보는 다이나믹 체인(dynamic chain) 정보와 동일한 의미로 사용된다.
상기 다이나믹 정보가 헤더로 전송되는 RoHC 패킷을 IR-DYN 패킷이라 한다. 상기 IR 패킷은 다이나믹 정보도 포함하는 것을 일 실시예로 한다. 즉, IR 패킷과 IR-DYN 패킷은 기존 헤더의 모든 정보를 담고 있으므로 기존 헤더와 비슷한 크기를 갖는다.
RoHC 패킷들 중 IR 패킷과 IR-DYN 패킷을 제외한 나머지 패킷들은 압축된 패킷들(compressed packets)이라 하기로 한다. 각 압축된 패킷 (또는 압축 패킷)의 헤더는 1-2 바이트 정보로만 구성되는 것을 일 실시예로 한다. 이하, 어댑테이션(Adaptation) 에 대해서 설명한다.
단방향 링크를 통한 전송의 경우, 수신기가 컨텍스트 정보를 갖고 있지 않으면, 수신기의 디컴프레서는 완전한 컨텍스트를 수신할 때까지 수신된 패킷 헤더를 복구할 수 없다. 이는 채널 변경 지연 및 턴 온 딜레이 (turn-on delay)를 초래할 수 있다. 따라서 어댑테이션 기능을 통해, 컴프레서/디컴프레서 간의 컨피규레이션 파라미터와 컨텍스트 정보가 대역 외로 전송될 수 있다. 어댑테이션 기능(function)은 컨텍스트 정보 및/또는 컨피규레이션 파라미터들을 이용하여 링크 레이어 시그널링을 생성(construction) 할 수 있다. 즉, 대역 외 전송은 링크 레이어 시그널링을 통해 이루어질 수 있다. 다시 말해, 어댑테이션 기능은 컨텍스트 정보의 손실로 인한 디컴프레션 에러 및 채널 변경 지연을 줄이기 위해 이용된다. 본 발명에서 링크 레이어 시그널링과 링크 레이어 시그널링 정보는 동일한 의미로 사용된다.
이하, 컨텍스트 정보(context information)의 추출에 대해서 설명한다.
헤더 압축된 IP 패킷들 즉, RoHC 패킷들로부터 컨텍스트 정보가 추출되는데, 어댑테이션 모드에 따라 다양한 방법이 사용될 수 있다.
도 8의 (a)와 (b)는 어댑테이션 모드 2일때와 어댑테이션 모드 3일때의 컨텍스트 정보의 추출 및 처리 과정을 보인 본 발명의 도면이다.
어댑테이션 모드 1 은 기본적인 RoHC 패킷 스트림 (즉, RoHC 패킷 플로우)에 대해 어떠한 동작도 수행하지 않는 모드이다. 이 모드에서 어댑테이션 모듈은 버퍼로서 동작할 수 있다. 다시 말해, 어댑테이션 모드 1에서는 RoHC 패킷들로부터 컨텍스트 정보를 추출하지 않는다. 그리고 RoHC 패킷 플로우 내 RoHC 패킷들은 인캡슐레이션 모듈에서 적어도 하나의 ALP 패킷으로 인캡슐레이션되어 피지컬 레이어로 전송된다.
도 8의 (a)의 어댑테이션 모드 2 에서, 어댑테이션 모듈은 RoHC 패킷 플로우로부터 IR 패킷을 검출하고, 검출된 IR 패킷의 헤더로부터 컨텍스트 정보(즉, 스태틱 체인 정보)을 추출한다. 상기 컨텍스트 정보가 추출된 IR 패킷은 IR-DYN 패킷으로 변환되고, 이 변환된 IR-DYN 패킷은 원래의 IR 패킷을 대체하여 RoHC 패킷 플로우 내에서 같은 순서로 인캡슐레이션 모듈로 전송되는 것을 일 실시예로 한다. 상기 추출된 컨텍스트 정보는 링크 레이어 시그널링 정보의 RDT (RoHC-U Description Table)에 포함되어 인캡슐레이션 모듈로 전송되는 것을 일 실시예로 한다. 상기 인캡슐레이션 모듈은 상기 RoHC 패킷 플로우 내 패킷들을 적어도 하나의 ALP 패킷으로 인캡슐레이션하고, 상기 링크 레이어 시그널링 정보도 적어도 하나의 ALP 패킷으로 인캡슐레이션하여 피지컬 레이어로 전송한다. 상기 RoHC 패킷 플로우를 포함하는 적어도 하나의 ALP 패킷을 전송하는 PLP와 상기 링크 레이어 시그널링을 포함하는 적어도 하나의 ALP 패킷을 전송하는 PLP는 다를 수도 있고, 같은 수도 있다.
도 8의 (b)의 어댑테이션 모드 3에서, 어댑테이션 모듈은 RoHC 패킷 플로우로부터 IR 패킷 및 IR-DYN 패킷을 검출하고, 검출된 IR 패킷 및 IR-DYN 패킷으로부터 컨텍스트 정보를 추출한다. 상기 IR 패킷으로부터 추출된 컨텍스트 정보는 스태틱 체인 정보 및 다이나믹 체인 정보이고, 상기 IR-DYN 패킷으로부터 추출된 컨텍스트 정보는 다이나믹 체인 정보인 것을 일 실시예로 한다. 상기 컨텍스트 정보가 추출된 IR 및 IR-DYN 패킷은 압축 패킷들(compressed packets)로 변환된다. 이 변환된 압축 패킷들은 원래의 IR 및 IR-DYN 패킷들을 대체하여 RoHC 패킷 플로우 내에서 같은 순서로 전송될 수 있다. 상기 추출된 컨텍스트 정보는 링크 레이어 시그널링 정보의 RDT에 포함되어 인캡슐레이션 모듈로 전송되는 것을 일 실시예로 한다. 상기 인캡슐레이션 모듈은 상기 RoHC 패킷 플로우 내 패킷들을 적어도 하나의 ALP 패킷으로 인캡슐레이션하고, 상기 링크 레이어 시그널링 정보도 적어도 하나의 ALP 패킷으로 인캡슐레이션하여 피지컬 레이어로 전송한다. 상기 RoHC 패킷 플로우를 포함하는 적어도 하나의 ALP 패킷을 전송하는 PLP와 상기 링크 레이어 시그널링을 포함하는 적어도 하나의 ALP 패킷을 전송하는 PLP는 다를 수도 있고, 같은 수도 있다.상기 링크 레이어 시그널링 정보를 포함하는 적어도 하나의 ALP 패킷은 특정(specific) 피지컬 데이터 경로를 통해 전송될 수 있다. 특정 피지컬 데이터 경로란, 실시예에 따라, 일반적인 PLP 중 하나를 의미할 수도 있고, LLS (Low Level Signaling) 이 전달되는 PLP 를 의미할 수도 있고, 지정된(dedicated) PLP 일 수도 있고, L1 시그널링 패쓰(path)를 의미할 수도 있다.
여기서 RDT 는 컨텍스트 정보(스태틱 체인 및/또는 다이나믹 체인) 및/또는 헤더 컴프레션과 관련된 정보(또는 헤더 압축 정보라 함)를 포함하는 시그널링 정보일 수 있다. 실시예에 따라 RDT 는 컨텍스트 정보가 바뀔 때마다 전송될 수 있다. 또한 실시예에 따라 RDT 는 매 피지컬 프레임에서 전송될 수 있다. 매 피지컬 프레임에서 RDT 를 전송하기 위해서, 예전(previous) RDT 가 재사용(re-use)될 수 있다.
이하, 패킷 인캡슐레이션에 대해서 설명한다.
링크 레이어 프로토콜 즉, 인캡슐레이션 모듈은 IP 패킷, TS 패킷 등의 모든 타입의 입력 패킷들을 링크 레이어 패킷으로 인캡슐레이션할 수 있다. 이를 통해 피지컬 레이어는 네트워크 레이어의 프로토콜 타입과는 독립적으로 하나의 패킷 포맷만 처리하면 된다(여기서 네트워크 레이어 패킷의 일종으로 MPEG-2 TS 패킷을 고려). 즉, 각 네트워크 레이어 패킷 또는 입력 패킷은 인캡슐레이션 모듈에서 제네릭 링크 레이어 패킷의 페이로드로 변형된다.
패킷 인캡슐레이션 과정에서 세그멘테이션(segmentation) 이 활용될 수 있다. 네트워크 레이어 패킷이 지나치게 커서 피지컬 레이어에서 처리하지 못하는 경우, 네트워크 레이어 패킷은 두 개 이상의 세그먼트들로 나누어질 수 있다. 링크 레이어 패킷 헤더는 송신 측에서 세그멘테이션을 실행하고 수신 측에서 재결합을 실행하기 위한 필드들을 포함할 수 있다. 각 세그먼트들은 원래 위치와 같은 순서로 링크 레이어 패킷으로 인캡슐레이션될 수 있다.
패킷 인캡슐레이션 과정에서 연쇄(concatenation) 또한 활용될 수 있다. 링크 레이어 패킷의 페이로드가 여러 네트워크 레이어 패킷을 포함할 정도로 네트워크 레이어 패킷이 충분히 작은 경우, 연쇄가 수행될 수 있다. 링크 레이어 패킷 헤더는 연쇄를 실행하기 위한 필드들을 포함할 수 있다. 연쇄의 경우 각 입력 패킷들은 원래의 입력 순서와 같은 순서로 링크 레이어 패킷의 페이로드로 인캡슐레이션될 수 있다.
하나의 링크 레이어 패킷은 헤더와 페이로드를 포함하고, 헤더는 베이스 헤더, 추가(additional) 헤더 및/또는 옵셔널 헤더를 포함할 수 있다. 추가 헤더는 연쇄나 세그멘테이션 등의 상황에 따라 더 추가될 수 있는데, 추가 헤더에는 상황에 맞춘 필요한 필드들이 포함될 수 있다. 또한 추가적인 정보의 전달을 위해 옵셔널 헤더가 더 추가될 수도 있다. 옵셔널 헤더의 존재는 추가 헤더의 플래그 필드에 의해 지시된다. 실시예에 따라, 추가 헤더와 옵셔널 헤더의 존재를 나타내는 필드는 베이스 헤더에 위치할 수도 있다.
도 9는 본 발명의 일 실시예에 따른 링크 레이어 패킷의 베이스 헤더 구조를 도시한 도면이다.
링크 레이어 패킷의 베이스 헤더는 계층 구조를 갖는다. 베이스 헤더는 2바이트의 길이를 가질 수 있고, 이것은 링크 레이어 패킷 헤더의 최소 길이이다.
본 발명의 일 실시예에 따른 베이스 헤더는, 3 비트의 packet_type 필드, 1 비트의 PC 필드 및/또는 11 비트의 길이(length) 필드를 포함할 수 있다. 실시예에 따라 베이스 헤더는 1비트의 HM 필드 또는 S/C 필드를 더 포함할 수 있다.
도 10은 본 발명의 packet_type 필드에 할당된 코드 값들의 의미의 실시예들을 보인 테이블이다.
상기 packet_type 필드는 도 10에서와 같이 링크 레이어 패킷으로의 인캡슐레이션 전의 입력 데이터의 패킷 타입 또는 원래의 프로토콜을 나타낸다. 즉, IPv4 패킷, 압축된 IP 패킷(compressed IP packet), 링크 레이어 시그널링 패킷, 및 그 밖의 타입의 패킷들이 이러한 베이스 헤더 구조를 가지며 인캡슐레이션 될 수 있다. 단, 실시예에 따라 MPEG-2 TS 패킷은 이와 다른 특별한 구조를 가지며 인캡슐레이션 될 수 있다. packet_type의 값이 “” “”“”또는 “110” 이면, ALP 패킷의 원래의 데이터 타입은 IPv4 패킷, 압축된 IP 패킷, 링크 레이어 시그널링 패킷 또는 익스텐션 패킷 중 하나이다. MPEG-2 TS 패킷이 캡슐화되면, packet_type의 값은 “111”이 될 수 있다. 다른 packet_type 필드의 값들은 향후 사용을 위해 남겨둘 수 있다(reserved for future use).
상기 Payload_Configuration (PC) 필드는 페이로드의 구성을 나타낸다. 0의 값은 링크 레이어 패킷이 하나의 전체 입력 패킷(whole input packet)을 전달하고 다음 필드가 Header_Mode라는 것을 나타낸다. 1의 값은 링크 레이어 패킷이 하나 이상의 입력 패킷 (연쇄)이나 큰 입력 패킷 (세그멘테이션)의 일부를 전달하며 다음 필드가 Segmentation_Concatenation이라는 것을 나타낸다.
상기 Header_Mode (HM) 필드는 0으로 설정되는 경우 추가 헤더가 없다는 것을 나타내고 링크 레이어 패킷의 페이로드의 길이가 2048 바이트보다 작다는 것을 나타낸다. 이 수치는 실시예에 따라 변경될 수 있다. 1의 값은 추가(additional) 헤더가 길이 필드 다음에 존재한다는 것을 나타낸다. 이 경우, 페이로드의 길이는 2047 바이트보다 크고/크거나 옵셔널 피쳐들(optional features) (서브 스트림 식별, 헤더 확장 등)가 사용될 수 있다. 이 수치는 실시예에 따라 변경될 수 있다. 본 필드는 링크 레이어 패킷의 Payload_Configuration 필드가 0의 값을 가질 때만 존재할 수 있다.
상기 Segmentation_Concatenation (S/C) 필드는 0으로 설정된 경우 페이로드가 입력 패킷의 세그먼트를 전달하고 세그멘테이션을 위한 추가 헤더가 길이 필드 다음에 존재한다는 것을 나타낸다. 1의 값은 페이로드가 하나보다 많은 완전한 입력 패킷을 전달하고 연쇄를 위한 추가 헤더가 길이 필드 다음에 존재한다는 것을 나타낸다. 본 필드는 ALP 패킷의 Payload_Configuration 필드의 값이 1일 때만 존재할 수 있다.
상기 길이 필드는 해당 링크 레이어 패킷에 의해 전달되는 페이로드의 바이트 단위의 길이 중 하위 11 비트들 (즉, 11 LSBs, least significant bits)을 나타낼 수 있다. 다음의 추가 헤더에 Length_MSB 필드가 있으면, 길이 필드는 Length_MSB 필드에 연쇄되고 페이로드의 실제 총 길이를 제공하기 위해 LSB가 된다. 길이 필드의 비트수는 11 비트외에 다른 비트로 변경될 수도 있다.
따라서 다음의 패킷 구조의 타입이 가능하다. 즉, 추가 헤더가 없는 싱글 패킷, 추가 헤더가 있는 싱글 패킷, 세그멘트된 패킷, 연쇄된(concatenated) 패킷이 가능하다. 실시예에 따라 각 추가 헤더와 옵셔널 헤더, 후술할 시그널링 정보를 위한 추가 헤더와 타입 익스텐션을 위한 추가 헤더에 의한 조합으로, 더 많은 패킷 컨피규레이션이 가능할 수 있다.
도 11은 본 발명의 일 실시예에 따른 시그널링 정보를 위한 링크 레이어 패킷의 추가 헤더 구조를 도시한 도면이다.
즉, 링크 레이어 시그널링이 어떻게 링크 레이어 패킷에 포함(incorporate)되는지는 다음과 같다. 링크 레이어 시그널링을 포함하는 링크 레이어 패킷 즉, 시그널링 패킷은 베이스 헤더의 packet_type 필드가 100과 같을 때 식별된다.
도 11에서 빗금친 부분이 시그널링 정보를 위한 추가 헤더(Additional header for signaling information)이다. 즉, 도 9에 도시된 헤더 외에, 링크 레이어 패킷은 2개의 추가 부분들(즉, 시그널링 정보를 위한 추가 헤더와 실제 시그널링 테이블 자체)로 구성될 수 있다. 상기 시그널링 테이블은 ALP 패킷의 페이로드에 포함된다. 그러므로 시그널링 테이블을 포함하는 링크 레이어 패킷의 총 길이는 링크 레이어 패킷 헤더에 나타내는 것을 일 실시예로 한다.
도 12는 본 발명의 시그널링 정보를 위한 추가 헤더 (signaling_information_hdr())의 신택스 구조의 일 실시예를 나타낸다. 도 12에서 일부 필드는 실시예에 따라 생략되거나 추가될 수 있다.
Signaling_Type 필드는 시그널링의 타입을 나타낼 수 있는 8비트 필드이다. 만일, Signaling_Type 필드의 값이 0x01이면 시그널링 테이블은 LMT (Link Mapping Table)임을 지시하고, 0x02이면 시그널링 테이블은 RDT임을 지시하는 것을 일 실시예로 한다.
Signaling_Type_Extension 필드는 시그널링의 속성을 나타낼 수 있는 16비트 필드이다. 해당 필드의 자세한 내용은 시그널링 사양에서 정의될 수 있다.
Signaling_Version 필드는 시그널링의 버전을 나타낼 수 있는 8비트 필드이다. 이 필드의 값은 Signaling_type 필드에 의해 식별된 시그널링의 데이터가 변경될 때마다 1씩 증가하는 것을 일 실시예로 한다.
Signaling_Format 필드는 시그널링 데이터의 데이터 포맷을 나타낼 수 있는 2비트 필드이다. 여기서 데이터 포맷이란 바이너리, XML 등을 의미할 수 있다.
Signaling_Encoding 필드는 인코딩/컴프레션 포맷을 특정할 수 있는 2비트 필드이다. 본 필드는 컴프레션이 수행되지 않았는지, 어떤 특정한 컴프레션이 수행되었는지를 지시할 수 있다.
상기 RDT와 LMT는 링크 레이어 시그널링에 포함되는 테이블이며, 이러한 링크 레이어 시그널링은 IP 레이어보다 하위 레벨에서 동작할 수 있다. 수신측에서는 LLS, SLT, SLS 등의 IP 레벨 시그널링보다, 링크 레이어 시그널링을 더 빠르게 획득할 수 있다. 따라서 링크 레이어 시그널링은 세션 설정(establishment) 이전에 획득될 수 있다.
링크 레이어 시그널링에는 입력 경로에 따라 인터널 링크 레이어 시그널링과 익스터널 링크 레이어 시그널링이 있을 수 있다. 인터널 링크 레이어 시그널링은 링크 레이어에서 생성된 시그널링 정보일 수 있다. 상기 RDT 나 LMT 등이 여기에 해당할 수 있다. 익스터널 링크 레이어 시그널링은 외부 모듈 또는 외부 프로토콜, 상위 레이어로부터 전달받은 시그널링 정보일 수 있다. 링크 레이어에서 인캡슐레이션 모듈은 링크 레이어 시그널링을 링크 레이어 패킷으로 인캡슐레이션하여 피지컬 레이어로 전달할 수 있다. 이때 링크 레이어 시그널링을 위한 링크 레이어 패킷 구조(헤더 구조)가 정의될 수 있는데, 이 구조에 따라 링크 레이어 시그널링 정보가 링크 레이어 패킷으로 인캡슐레이션될 수 있다.
도 13은 본 발명의 일 실시예에 따른 LMT (Link Mapping Table)의 신택스 구조를 도시한 도면이다. 즉, 시그널링 테이블이 LMT일 경우, 해당 ALP 패킷의 ALP 헤더 내 시그널링 정보를 위한 추가 헤더의 signaling_type 필드 값은 0x01, signaling_type_extension 필드 값은 0xFFFF, signaling_format 필드 값은 00, signaling_encoding 필드 값은 00인 것을 일 실시예로 한다.
LMT 는 PLP 로 운반되는 상위 레이어 세션들의 리스트를 제공할 수 있다. 또한 LMT 는 상위 레이어 세션들을 전달하는 링크 레이어 패킷들을 프로세싱하기 위한 추가적인 정보들을 제공할 수 있다. 여기서 상위 레이어 세션은 멀티캐스트(multicast) 라고 불릴 수도 있다. LMT는 특정 PLP 를 통해 어떠한 IP 스트림들, 어떠한 전송 세션들이 전송되고 있는지에 대한 정보를 시그널링할 수 있다. 반대로 특정 전송 세션이 어느 PLP 로 전달되는지에 대한 정보를 시그널링할 수도 있다.
LMT 는 LLS 를 운반하는 것으로 식별된 PLP 로 전달되는 것을 일 실시예로 한다. 여기서 LLS 가 전달되는 PLP 는 피지컬 레이어의 L1 베이직 시그널링 데이터의 L1B_lls_flag 필드와 L1 디테일 시그널링 데이터의 L1D_plp_lls_flag 필드에 의해 식별될 수 있다. 상기 L1B_lls_flag 필드는 현재 프레임 내 하나 이상의 PLPs에 LLS가 존재하는지 여부를 지시한다. 일 예로, L1B_lls_flag 필드의 값이 0이면 현재 프레임에 LLS가 없음을 지시하고, 1이면 현재 프레임으로 전송되는 LLS가 있음을 지시한다. 상기 L1D_plp_lls_flag 필드는 각각의 PLP 에 대하여, 현재 PLP가 LLS를 포함하는지 여부를 지시한다. 이 필드의 목적은 수신기들이 상위 레이어 시그널링 정보를 빠르게 찾을 수 (locate) 있게 하기 위해서이다. 즉, LMT 는 LLS 와 함께, 같은 PLP 로 전달될 수 있다. 각각의 LMT 들은 전술한 바와 같이 PLP 들과 IP 어드레스/포트간의 매핑을 기술할 수 있다. 전술한 바와 같이 LLS 는 SLT 를 포함할 수 있는데, LMT 가 기술하는 이 IP 어드레스/포트들은, 해당 LMT 와 같은 PLP 로 전달되는 SLT 가 기술하는, 모든(any) 서비스와 관련된 모든(any) IP 어드레스/포트들일 수 있다.
실시예에 따라 전술한 SLT, SLS 등에서의 PLP 식별자 정보가 활용되어, SLT, SLS 가 지시하는 특정전송 세션이 어느 PLP 로 전송되고 있는지에 대한 정보가 확인될 수 있다.
다른 실시예에 따라 전술한 SLT, SLS 등에서의 PLP 식별자 정보는 생략되고, SLT, SLS 가 지시하는 특정 전송 세션에 대한 PLP 정보는 LMT 내의 정보를 참조함으로써 확인될 수 있다. 이 경우 수신기는 LMT 와 다른 IP 레벨 시그널링 정보들을 조합하여, 알고자 하는 PLP 를 식별할 수 있다. 이 실시예에 있어서도 SLT, SLS 등에서의 PLP 정보는 생략되지 않고, SLT, SLS 등에 남아있을 수 있다.
LMT 는 PLP_ID 필드, num_session 필드 및/또는 각각의 세션들에 대한 정보들을 포함할 수 있다. LMT 는 하나의 PLP 에 대해서, 그 PLP 로 전송되는 IP 스트림들을 기술할 수도 있고, PLP 루프가 추가되어, 복수개의 PLP 에 대한 정보를 기술할 수도 있다. 이 경우 LMT 는 전술한 바와 같이, 함께 전달되는 SLT 가 기술하는 모든 서비스와 관련된 모든 IP 어드레스/포트들에 대한 PLP 들을, PLP 루프로 기술할 수 있다. 도 13의 LMT에서 세션들은 멀티캐스트들과 같은 의미로 사용되는 것을 일 실시예로 한다. 상기 LMT는 num_PLPs_minus1 필드를 더 포함할 수 있다.
상기 num_PLPs_minus1 필드는 이 테이블에서 제공되는 세션-PLP 매핑을 위한 PLP 개수보다 하나 작은 값을 지시한다. PLP_ID 필드는 해당 세션에 대응하는 PLP 를 지시한다. PLP 루프가 사용되는 경우, 각각의 PLP_ID 필드는 각각의 대상 PLP 를 식별할 수 있다. PLP_ID 필드부터는 PLP 루프 내에 포함될 수 있다. 이하 언급되는 PLP_ID 필드는 PLP 루프 중의 PLP 하나에 대한 식별자이며, 이하 설명되는 필드들은 그 해당 PLP 에 대한 필드들일 수 있다.
num_session 필드는 해당 PLP_ID 필드에 의해 식별되는 PLP 로 전달되는 상위 레이어 세션들의 개수를 나타낼 수 있다. num_session 필드가 나타내는 개수에 따라, 각각의 세션들에 대한 정보들이 포함될 수 있다. 이 정보에는 src_IP_add 필드, dst_IP_add 필드, src_UDP_port 필드, dst_UDP_port 필드, SID_flag 필드, compressed_flag 필드, SID 필드 및/또는 context_id 필드가 있을 수 있다.
src_IP_add 필드, dst_IP_add 필드, src_UDP_port 필드 및 dst_UDP_port 필드는 해당 PLP_ID 필드에 의해 식별되는 PLP 로 전달되는 상위 레이어 세션들 중, 해당 전송 세션에 대한 소스 IP 어드레스, 데스티네이션 IP 어드레스, 소스 UDP 포트, 데스티네이션 UDP 포트를 나타낼 수 있다.
SID_flag 필드는 상기 4개의 필드 Src_IP_add, Dst_IP_add, Src_UDP_Port, Dst_UDP_Port에 의해 식별되는 상위 레이어 세션을 전달하는 링크 레이어 패킷이 그 옵셔널 헤더에 SID 필드를 갖는지 여부를 지시할 수 있다. 상위 레이어 세션을 전달하는 링크 레이어 패킷은 그 옵셔널 헤더에 SID 필드를 가질 수 있고, 그 SID 필드 값은 후술할 LMT 내의 SID 필드와 동일할 수 있다.
compressed_flag 필드는 상기 4개의 필드 Src_IP_add, Dst_IP_add, Src_UDP_Port, Dst_UDP_Port에 의해 식별되는 상위 레이어 세션을 전달하는 링크 레이어 패킷의 데이터들에 헤더 컴프레션이 적용되었는지 여부를 지시할 수 있다. 또한 본 필드의 값에 따라 후술할 context_id 필드의 존부가 결정될 수 있다. 헤더 컴프레션이 적용된 경우(compressed_flag = 1), RDT 가 존재할 수 있고, 그 RDT 의 PLP ID 필드는 본 compressed_flag 필드와 관련된 해당 PLP_ID 필드와 같은 값을 가질 수 있다.
SID 필드는 상기 4개의 필드 Src_IP_add, Dst_IP_add, Src_UDP_Port, Dst_UDP_Port에 의해 식별되는 상위 레이어 세션을 전달하는 링크 레이어 패킷들에 대한 SID (sub stream ID) 를 지시할 수 있다. 이 링크 레이어 패킷들은, 그 옵셔널 헤더에 본 SID 필드와 같은 값을 가지는 SID 를 포함하고 있을 수 있다. 이를 통해 수신기는 링크 레이어 패킷을 전부 파싱할 필요 없이, LMT 의 정보와 링크 레이어 패킷 헤더의 SID 정보를 이용하여, 링크 레이어 패킷들을 필터링할 수 있다.
context_id 필드는 RDT 내의 CID(context id) 에 대한 레퍼런스를 제공할 수 있다. RDT 의 CID 정보는 해당되는 압축 IP 패킷 스트림에 대한 컨텍스트 ID 를 나타낼 수 있다. RDT 는 해당 압축 IP 패킷 스트림에 대한 컨텍스트 정보들을 제공할 수 있다. 본 필드를 통해 RDT 와 LMT 가 연관될 수 있다.
전술한, 본 발명의 시그널링 정보/테이블의 실시예들에 있어서, 각각의 필드, 엘레멘트, 속성들은 생략되거나 다른 필드로 대체될 수 있으며, 실시예에 따라 추가적인 필드, 엘레멘트, 속성들이 추가될 수도 있다.
도 14는 본 발명의 일 실시예에 따른 RDT (RoHC-U Description Table)의 신택스 구조를 도시한 도면이다. 즉, 시그널링 테이블이 RDT일 경우, 해당 ALP 패킷의 ALP 헤더 내 시그널링 정보를 위한 추가 헤더의 signaling_type 필드 값은 0x02, signaling_type_extension 필드 값은 0xFFFF, signaling_format 필드 값은 00, signaling_encoding 필드 값은 00인 것을 일 실시예로 한다.
도 14의 RDT는 PLP_ID 필드, max_CID 필드, adaptation_mode 필드, context_config 필드, num_context 필드, context_id 필드, context_profile 필드, context_length 필드, static_chain_byte () 필드 및/또는 dynamic_chain_byte () 필드를 포함할 수 있다.
상기 PLP_ID 필드는 해당 RDT 테이블에 대응하는 PLP를 나타내는 8비트 필드일 수 있다.
상기 max_CID 필드는 이 PLP에 대응하여 사용되는 context ID의 최대 값을 지시한다.
상기 context_id 필드는 압축된 IP 스트림의 컨텍스트 식별자(CID)를 나타내는 8비트 필드일 수 있다. 해당 시스템에서, 8비트의 CID는 큰 CID를 위해 사용될 수 있다.
상기 context_profile 필드는 IP 패킷을 압축하기 위해 사용되는 프로토콜 (또는 레이어)의 범위를 나타내는 8비트 필드일 수 있다. 본 발명은 상기 context_profile 필드 값이 0이면 데이터 패킷이 RoHC 압축 포맷을 가지나, 실제 헤더 정보는 압축되지 않았음을 지시한다. 그리고 상기 context_profile 필드 값이 1이면 RTP까지, 2이면 UDP까지, 3이면 ESP까지, 4이면 IP까지 RoHC 방식으로 압축되었음을 지시하는 것을 일 실시예로 한다. 해당 필드는 생략될 수 있다.
상기 adaptation_mode 필드는 해당 PLP에서 어댑테이션 모듈의 모드를 나타내는 2비트 필드일 수 있다. 본 발명에서는 adaptation_mode 필드 값이 00이면 어댑테이션 모드 1을 지시하고, adaptation_mode 필드 값이 01이면 어댑테이션 모드 2를 지시하며, adaptation_mode 필드 값이 10이면 어댑테이션 모드 3을 지시하는 것을 일 실시예로 한다. 각 어댑테이션 모드에 대해서는 전술하였다.
상기 context_config 필드는 컨텍스트 정보의 조합을 나타내는 2비트 필드일 수 있다. 해당 테이블에 컨텍스트 정보가 존재하지 않으면, 해당 필드는 '0x0'으로 설정될 수 있다. 해당 테이블에 static_chain_byte () 또는 dynamic_chain_byte () 바이트가 포함되면, 해당 필드는 '0x01' 또는 '0x02'로 설정될 수 있다. 해당 테이블에 static_chain_byte () 및 dynamic_chain_byte ()가 모두 포함되면, 해당 필드는 '0x03'으로 설정될 수 있다.
상기 num_context 필드는 이 테이블의 context의 개수를 지시한다. 상기 num_context 필드의 값은 max_CID 필드 값보다 클 수 없다.
상기 context_length 필드는 상기 context_config 필드를 기반으로 static_chain_byte () 시퀀스 또는 dynamic_chain_byte () 시퀀스 또는 static_chain_byte ()와 dynamic_chain_byte ()를 합한 시퀀스의 길이를 나타내는 8비트 필드일 수 있다. 해당 필드는 생략될 수 있다.
상기 static_chain_byte () 필드는 RoHC-U 디컴프레서를 초기화하기 위해 사용되는 스태틱 정보를 전달하는 필드일 수 있다. 해당 필드의 크기 및 구조는 context profile에 의존한다.
상기 dynamic_chain_byte () 필드는 RoHC-U 디컴프레서를 초기화하기 위해 사용되는 다이나믹 정보를 전달하는 필드일 수 있다. 해당 필드의 크기 및 구조는 context profile에 의존한다.
상기 static_chain_byte ()는 IR 패킷의 서브 헤더 정보로 정의될 수 있다. 상기 dynamic_chain_byte ()는 IR 패킷 및 IR-DYN 패킷의 서브 헤더 정보로 정의될 수 있다.
전술한 바와 같이, 링크 레이어에서 생성된 ALP 패킷들을 포함하는 ALP 스트림은 피지컬 레이어로 전송된다.
도 15는 본 발명의 일 실시예에 따른 피지컬 레이어에서 차세대 방송 서비스에 대한 방송 신호 송신 장치의 구조를 나타낸다.
본 발명의 일 실시예에 따른 차세대 방송 서비스에 대한 방송 신호 송신 장치는 인풋 포맷팅 블록 (Input Formatting block) (1000), BICM (bit interleaved coding & modulation) 블록(1010), 프레임 빌딩 블록 (Frame building block) (1020), OFDM (orthogonal frequency division multiplexing) 제너레이션 블록 (OFDM generation block)(1030), 및 시그널링 생성 블록(1040)을 포함할 수 있다. 방송 신호 송신 장치의 각 블록의 동작에 대해 설명한다.
본 발명의 일 실시예에 따른 입력 데이터는 IP 스트림/패킷 및 MPEG2-TS이 될 수 있으며, ALP 스트림이 될 수도 있다. 다른 스트림 타입은 일반 스트림으로 다루어진다.
인풋 포맷팅 블록(1000)은 각각의 입력 스트림을 독립적인 코딩 및 변조가 적용되는 하나 또는 다수의 데이터 파이프 (즉, 피지컬 레이어 파이프)로 디멀티플렉싱 할 수 있다. 데이터 파이프는 견고성(robustness) 제어를 위한 기본 단위이며, 이는 QoS (Quality of Service)에 영향을 미친다. 하나 또는 다수의 서비스 또는 서비스 컴포넌트가 하나의 데이터 파이프에 의해 전달될 수 있다. 데이터 파이프는 하나 또는 다수의 서비스 또는 서비스 컴포넌트를 전달할 수 있는 서비스 데이터 또는 관련 메타데이터를 전달하는 물리 계층(physical layer)에서의 로지컬 채널이다. 본 발명에서 데이터 파이프 (DP)는 피지컬 레이어 파이프 (PLP)와 같은 의미로 사용되는 피지컬 패스(physical path)로서, 호칭은 설계자의 의도에 따라 변경 가능하다.
도 16은 본 발명의 일 실시예에 따른 입력 포맷팅 블록(1000)의 상세 블록도를 나타낸다.
도 16에서 입력 포맷팅 블록(1000)는 인캡슐레이션 및 컴프레션 블록(1001), 베이스밴드 포맷팅 블록(1003), 및 스케쥴러(1005)를 포함한다.
상기 인캡슐레이션 및 컴프레션 블록(1001)은 입력 데이터 패킷을 헤더 압축 (선택적) 및 캡슐화하여 ALP 패킷으로 출력한다. 상기 인캡슐레이션 및 컴프레션 블록(1001)의 상세 동작은 링크 레이어에서 설명하였으므로 여기서는 생략하기로 한다. 상기 인캡슐레이션 및 컴프레션 블록(1001)은 링크 레이어에 구비될 수도 있고, 피지컬 레이어에 구비될 수도 있다. 상기 인캡슐레이션 및 컴프레션 블록(1001)이 링크 레이어에 구비될 경우, 피지컬 레이어에서 상기 인캡슐레이션 및 컴프레션 블록(1001)은 생략되며, 상기 베이스밴드 포맷팅 블록(1003)은 링크 레이어에서 제공되는 ALP 패킷들의 ALP 스트림을 수신하는 것을 일 실시예로 한다.
상기 링크 레이어에서 전송되는 또는 상기 인캡슐레이션 및 컴프레션 블록(1001)에서 출력되는 ALP 패킷의 길이는 가변적이며, ALP 패킷의 헤더로부터 그 길이를 알 수 있다.
상기 인캡슐레이션 및 컴프레션 블록(1001)에서 출력되는 ALP 패킷들은 베이스밴드 포맷팅 블록(1003)으로 입력된다.
상기 베이스밴드 포맷팅 블록(1003)은 스케쥴러(1005)의 지시에 따라 하나 또는 그 이상의 데이터 파이프를 생성한다. 즉, 상기 베이스밴드 포맷팅 블록(1003)은 데이터 파이프별로 적어도 하나의 ALP 패킷을 포함하는 베이스밴드 페이로드에 베이스밴드 헤더를 추가하여 베이스밴드 패킷을 생성한 후 해당 데이터 파이프를 통해 해당 BICM 블록(1010)으로 출력한다. 각 데이터 파이프는 베이스밴드 패킷들의 스트림으로 구성된다.
하나의 베이스밴드 패킷은 베이스밴드 헤더와 적어도 하나의 ALP 패킷을 포함하는 베이스밴드 페이로드로 구성된다. 베이스밴드 패킷의 길이는 고정이며, 타겟 데이터 파이프를 위해 선택된 아웃터 코드 타입, 이너 코드 레이트, 그리고 코드 길이에 의해 결정되는 것을 일 실시예로 한다. ALP 패킷들은 입력되는 순서대로 베이스밴드 페이로드에 할당되는 것을 일 실시예로 한다. 이때 입력되는 ALP 패킷들의 개수가 해당 베이스밴드 패킷을 채우기에 충분하지 않다면, 해당 베이스밴드 패킷을 채우기 위해 패딩(padding)이 사용되는 것을 일 실시예로 한다. 만일 마지막 ALP 패킷이 해당 베이스밴드 패킷을 다 채우고도 남는 경우, 그 남는 부분(즉, 나누어진 ALP)은 다음 베이스밴드 패킷에 할당하는 것을 일 실시예로 한다.
상기 베이스밴드 헤더는 최대 3개의 필드로 구성된다. 첫번째 부분은 모든 베이스밴드 패킷을 나타내는 베이스 필드이고, 두번째 부분은 옵셔널 필드이며, 세번째 부분은 확장 필드(extension field)이다.
QoS가 본 발명의 일 실시예에 따른 차세대 방송 서비스에 대한 방송 신호 송신 장치에 의해 제공되는 서비스의 특성에 의존하므로, 각각의 서비스에 해당하는 데이터는 서로 다른 방식을 통해 처리되어야 한다. BICM 블록(1010)은 데이터 파이프별로 동작한다.
상기 BICM 블록(1010)은 MIMO가 적용되지 않는 프로파일 (또는 시스템)에 적용되는 처리 블록 및/또는 MIMO가 적용되는 프로파일(또는 시스템)의 처리 블록을 포함할 수 있으며, 각각의 데이터 파이프를 처리하기 위한 복수의 처리 블록을 포함할 수 있다.
MIMO가 적용되지 않는 BICM 블록의 처리 블록은 데이터 FEC 인코더, 비트 인터리버, 컨스텔레이션 매퍼(mapper)를 포함할 수 있다. 상기 BICM 블록(1010)은 SSD (signal space diversity) 인코딩 블록과 타임 인터리버를 더 포함할 수 있다. 상기 타임 인터리버는 프레임 빌딩 블록(1020)에 포함될 수도 있다. 본 발명은 상기 타임 인터리버가 프레임 빌딩 블록(1020)에 포함되는 것을 일 실시예로 한다. MIMO가 적용되는 BICM 블록(1010)의 처리 블록은 셀 워드 디멀티플렉서 및 MIMO 인코딩 블록을 더 포함한다는 점에서 MIMO가 적용되지 않는 BICM의 처리 블록과 구별된다. 상기 MIMO 인코딩 블록은 BICM 블록(1010)에 포함되지 않고 독립적으로 구비될 수도 있다.
데이터 FEC 인코더는 외부 코딩(BCH) 및 내부 코딩(LDPC)을 이용하여 입력 베이스밴드 패킷에 FEC 인코딩을 실행한다. 상기 데이터 FEC 인코더의 출력은 FEC 프레임이다. 외부 코딩(BCH)은 선택적인 코딩 방법이다. 비트 인터리버는 데이터 FEC 인코더의 출력을 비트 인터리빙하며, LDPC 코드 및 변조 방식의 조합으로 최적화된 성능을 달성할 수 있다. 컨스텔레이션 매퍼는 QPSK, QAM-16, 불균일 QAM (NUQ-64, NUQ-256, NUQ-1024) 또는 불균일 컨스텔레이션 (NUC-16, NUC-64, NUC-256, NUC-1024)을 이용해서 비트 인터리버 또는 셀 워드 디멀티플렉서로부터의 셀 워드를 변조하여 파워가 정규화된 컨스텔레이션 포인트를 제공할 수 있다. NUC가 임의의 형태를 갖는 반면, QAM-16 및 NUQ는 정사각형 모양을 갖는 것이 관찰된다. NUQ 및 NUC는 모두 각 코드 레이트(code rate)에 대해 특별히 정의되고, L1 디테일 시그널링 데이터의 L1D_PLP_mod 필드 (또는 PLS2 데이터의 파라미터 DP_MOD)에 의해 시그널링 된다. 상기 컨스텔레이션 매퍼의 출력은 FEC 블록이다.
상기 타임 인터리버는 데이터 파이프 레벨에서 동작할 수 있다. 타임 인터리빙의 파라미터는 각각의 데이터 파이프에 대해 다르게 설정될 수 있다.
본 발명의 타임 인터리버는 no time interleaving, 컨벌루셔널 타임 인터리버(CTI: Convolutional Time Interleaver) 모드, 하이브리드 타임 인터리버(HTI: Hybrid Time Interleaver) 모드 중 하나가 각 PLP에 적용되는 것을 일 실시예로 한다. 타임 인터리버 모드는 L1 디테일 시그널링 데이터의 L1D_plp_TI_mode 필드에 의해서 시그널링된다. 일 예로써, 하나의 서비스가 다수의 컴포넌트로 구성되고 각 컴포넌트가 각각의 PLP를 통해 전송될 경우 각각의 PLP는 no time interleaving 또는 HTI 모드로 동작될 수 있으며, 이때 HTI의 파라미터는 각각 다를 수 있다. 다른 예로써, 하나의 서비스가 하나의 PLP를 통해 전송되면 CTI 모드가 사용될 수 있다.
CIT 모드인 경우, 타임 인터리버는 컨벌루셔널 타임 인터리버를 포함하는 것을 일 실시예로 한다. 상기 컨벌루셔널 타임 인터리버와 관련된 시그널링 정보는 L1 디테일 시그널링 데이터의 L1D_plp_CTI_depth 필드, L1D_plp_CTI_start_row 필드, 및 L1D_plp_CTI_fecframe_start 필드에 시그널링되는 것을 일 실시예로 한다.
HTI 모드인 경우, 타임 인터리버는 셀 인터리버, 블록 인터리버(BI), 및 컨벌루셔널 딜레이 라인(또는 컨벌루셔널 인터리버라 함)을 포함할 수 있다. 이때 블록 인터리버는 트위스티드(twisted) 블록 인터리버라 하기도 한다.
상기 셀 인터리버는 입력 FEC 블록을 타임 인터리빙(TI) 블록 내에 배열 후 각 FEC 블록 내에서 인터리빙을 수행한다. 즉, 상기 셀 인터리버는 FEC 블록들 단위로 입력 셀들을 입력받고, 그들을 TI 블록들에 배열(arrange)한다. 이때 각 TI 블록은 한 개 또는 다수개의 FEC 블록으로 구성될 수 있으며, 셀 인터리빙은 TI 블록 내에서 매 FEC 블록마다 다른 인터리빙 시퀀스를 사용하여 수행된다. 또한 셀 인터리빙은 사용되지 않을 수 있으며, 사용 여부와 관련된 정보는 L1 디테일 시그널링 데이터의 L1D_plp_HTI_cell_interleaver 필드에 시그널링된다.
상기 블록 인터리버는 TI 블록들에 대해 블록 인터리빙을 수행한다. 일 예로, 상기 블록 인터리버는 TI 블록들을 트위스트 블록 인터리빙함으로써 인트라-서브프레임 인터리빙을 수행한다. 이때 하나의 TI 블록은 하나 이상의 셀 인터리브된 FEC 블록들로 구성될 수도 있고, 셀 인터리브되지 않은 하나 이상의 FEC 블록들로 구성될 수도 있다. 상기 트위스티드 블록 인터리빙 후 컨벌루셔널 딜레이 라인이 선택적으로 수행된다. 상기 컨벌루셔널 딜레이 라인의 사용 여부는 L1 디테일 시그널링 데이터의 L1D_plp_HTI_inter_subframe 필드에 시그널링된다.
본 발명에서 타임 인터리버로 입력되는 FEC 블록들은 인터리빙 프레임(IF)들로 그룹화될 수 있다. 상기 인터리빙 프레임들은 피지컬 레이어 프레임들과 독립적인 구조이다. 이때 IF 내 FEC 블록들의 개수 NBLOCK_IF(n)는 최소 1개부터 최대 NBLOCK_IF_MAX 내에서 변할 수 있으며, IF간 FEC 블록 개수는 서로 다를 수 있다. 그리고 IF 내 FEC 블록들의 개수에 관련된 정보는 L1 디테일 시그널링 데이터의 L1D_plp_HTI_num_ti_block 필드에 시그널링된다.
이때 각 IF는 하나의 서브프레임에 직접 매핑되거나 다수의 서브프레임들에 분산(spread)될 수 있다. 그리고 각 IF는 하나 이상의 TI 블록들로 디바이드될 수 있으며, 이때 TI 블록은 셀 인터리버, 블록 인터리버, 및 컨벌루셔널 딜레이 라인 동작을 위한 기본 단위이다. 하나의 IF 블록 내 TI 블록들의 개수는 약간 다른 개수의 FEC 블록들을 포함할 수 있다.
셀 워드 디멀티플렉서는 MIMO 처리를 위해 단일 셀 워드 스트림을 이중 셀 워드 스트림으로 분리하는 데 사용된다. 상기 셀 워드 디멀티플렉서는 비트 인터리버와 컨스텔레이션 매퍼 사이에 위치하고, MIMO 인코딩 블록은 컨스텔레이션 매퍼와 타임 인터리버 사이에 위치하는 것을 일 실시예로 한다. MIMO가 적용되면 상기 셀 워드 디멀티플렉서에서 단일 셀 워드 스트림이 이중 셀 워드 스트림으로 분리되기 때문에, 2개의 컨스텔레이션 매퍼가 필요하다. MIMO 인코딩 블록은 MIMO 인코딩 방식을 이용해서 각 컨스텔레이션 매퍼의 출력을 처리할 수 있다. 본 발명의 MIMO 인코딩 방식은 수신기 측에서의 비교적 작은 복잡도 증가로 용량 증가를 제공하기 위한 FR-SM (full-rate spatial multiplexing)으로 정의 될 수 있다. MIMO 처리는 데이터 파이프 레벨에서 적용된다. 컨스텔레이션 매퍼 출력의 페어(pair, 쌍)인 NUQ (e1,i 및 e2,i)는 MIMO 인코딩 블록의 입력으로 공급되면 MIMO 인코딩 블록의 출력 페어(pair, 쌍)(g1,i 및 g2,i)은 각각의 송신 안테나의 동일한 캐리어 k 및 OFDM 심볼 l에 의해 전송된다. 본 발명에서 MIMO 처리는 프레임 내 부트스트랩과 프리앰블에는 적용되지 않는 것을 일 실시예로 한다.
프레임 빌딩 블록(1020)은 타임 인터리빙되어 입력되는 PLP의 데이터 셀들을 프레임 내 OFDM 심볼에 매핑하고 주파수 영역 다이버시티를 위해 주파수 인터리빙을 수행할 수 있다.
상기 프레임 빌딩 블록(1020)의 출력은 파이널 프레임에서 순차적으로 배치되는 프리앰블 또는 데이터 등의 OFDM 심볼들이며, 주파수 인터리버에서 주파수 인터리빙은 OFDM 심볼들에 대해 수행되는 것을 일 실시예로 한다.즉, 상기 주파수 인터리버는 입력된 데이터 셀들을 랜덤하게 인터리빙하여 주파수 다이버시티를 제공할 수 있다. 또한, 주파수 인터리버는 단일 프레임에서 최대의 인터리빙 이득을 얻기 위해 다른 인터리빙 시드(seed) 순서를 이용하여 두 개의 순차적인 OFDM 심볼로 구성된 OFDM 심볼 페어(pair, 쌍)에 대응하는 데이터 또는 OFDM 심볼 하나에 대응하는 데이터에 대해 동작할 수 있다.
상기 주파수 인터리빙되어 출력되는 프레임은 프리앰블과 데이터 영역으로 구분된다. OFDM 제너레이션 블록(1030)에서 상기 프레임의 프리앰블 앞에 부트스트랩 데이터를 포함하는 부트스트랩 영역이 삽입된다. 상기 프리앰블을 통해 전송되는 L1 시그널링 데이터는 시그널링 생성 블록(1040)에서 생성되는 것을 일 실시예로 한다.
상기 L1 시그널링 데이터는 L1 베이직 (L1-Basic) 시그널링 데이터와 L1 디테일 (L1-Detail) 시그널링 데이터를 포함한다. 상기 L1 베이직 시그널링 데이터는 PLS1 데이터라 하기도 하며, 상기 L1 디테일 시그널링 데이터는 PLS2 데이터라 하기도 한다.
OFDM 제너레이션 블록(1030)은 프레임 빌딩 블록(1020)에 의해 생성된 셀에 의해 OFDM 캐리어를 변조하고, 파일럿을 삽입하고, 전송을 위한 시간 영역 신호를 생성한다. 또한, 해당 블록은 순차적으로 가드 인터벌을 삽입하고, PAPR 감소 처리를 적용한 후 부트스트랩 데이터를 포함하는 부트스트랩을 해당 프레임의 맨 앞에 삽입하여 최종 RF 신호를 생성한다.
시그널링 생성 블록(1040)은 각 기능 블록의 동작에 사용되는 피지컬 레이어(physical layer) 시그널링 정보를 생성할 수 있다. 본 발명의 일 실시예에 따른 피지컬 레이어 시그널링 정보는 L1 베이직 시그널링 데이터와 L1 디테일 시그널링 데이터를 포함할 수 있다. L1 베이직 시그널링 데이터(또는 PLS1 데이터)는 L1 디테일 시그널링 데이터(또는 PLS2 데이터)를 디코딩하는 데 필요한 파라미터뿐만 아니라 시스템에 관한 기본 정보를 전달하는 것을 일 실시예로 한다. 상기 L1 베이직 시그널링 데이터의 길이는 200비트로 고정되는 것을 일 실시예로 한다. L1 디테일 시그널링 데이터(또는 PLS2 데이터)는 데이터 컨텍스트(data context)와 그것의 디코딩에 필요한 정보를 자세히 정의한다. 그리고 L1 디테일 시그널링 데이터의 길이는 프레임간(from frame to frame)에 가변이다.
BICM 블록(1010)은 L1 시그널링 데이터(또는 PLS 데이터)의 보호를 위한 BICM 블록을 더 포함할 수 있다. L1 시그널링 데이터(또는 PLS 데이터)의 보호를 위한 BICM 블록은 FEC 인코더, 비트 인터리버, 및 컨스텔레이션 매퍼를 포함할 수 있다.
FEC 인코더는 L1 베이직 시그널링 데이터(또는 PLS1 데이터) 및 L1 디테일 시그널링 데이터(또는 PLS2 데이터)를 각각 스크램블링하기 위한 스크램블러, 쇼트닝된 BCH 코드를 이용하여 스크램블링된 L1 베이직 및 디테일 시그널링 데이터(또는 PLS 1,2 데이터)에 외부 인코딩(예, BCH)을 수행하고, BCH 인코딩 후에 제로 비트를 삽입하기 위한 BCH 인코딩/제로 삽입 블록, LDPC 코드를 이용하여 인코딩을 수행하기 위한 LDPC 인코딩 블록, 및 LDPC 패리티 펑처링(puncturing) 블록을 포함할 수 있다. 상기 제로 삽입된 L1 베이직 시그널링 데이터 및/또는 L1 디테일 시그널링 데이터의 출력 비트들은 LDPC 인코딩 후에 퍼뮤테이션(permutation) 될 수 있다. 비트 인터리버는 각각의 쇼트닝 및 펑처링된 L1 베이직 시그널링 데이터(또는 PLS1 데이터) 및 L1 디테일 시그널링 데이터(또는 PLS2 데이터)를 비트 인터리빙하고, 컨스텔레이션 매퍼는 비트 인터리빙된 L1 베이직 시그널링 데이터(또는 PLS1 데이터) 및 L1 디테일 시그널링 데이터(또는 PLS2 데이터)를 컨스텔레이션에 매핑할 수 있다. L1 시그널링 데이터에 대해서 타임 인터리빙은 수행되지 않으나, 주파수 인터리빙은 수행되는 것을 일 실시예로 한다.
도 17은 본 발명의 일 실시예에 따른 하이브리드 방송 수신기의 블록도를 나타낸 도면이다.
하이브리드 방송 수신기는 차세대 방송 시스템의 DTV 서비스에서 지상파 방송과 브로드밴드의 연동을 통한 하이브리드 방송 서비스를 수신할 수 있다. 하이브리드 방송 수신기는 지상파 방송을 통해서 전송되는 방송 오디오/비디오 (Audio/Video, A/V) 컨텐츠를 수신하고, 이와 연관된 enhancement data 혹은 방송 A/V 컨텐츠의 일부를 브로드밴드를 통하여 실시간으로 수신할 수 있다. 본 명세서에서 방송 오디오/비디오 (Audio/Video, A/V) 컨텐츠는 미디어 컨텐츠로 지칭할 수 있다.
하이브리드 방송 수신기는 피지컬 레이어 컨트롤러 (Physical Layer Controller, D55010), 튜너 (Tuner, D55020), 피지컬 레이어 프로세서 (Physical Layer Processor, D55030), 링크 레이어 프로세서 (Link Layer Processor, D55040), IP/UDP 패킷 프로세서 (IP/UDP packet processor, D55050), ATSC 3.0 디지털 텔레비전 컨트롤 엔진 (ATSC 3.0 DTV Control Engine, D55060), ALC/LCT+ 클라이언트 (ALC/LCT+ Client, D55070), 타이밍 제어부 (Timing Control, D55080), 시그널링 파서 (Signaling Parser, D55090), DASH 클라이언트 (Dynamic Adaptive Streaming over HTTP Client, DASH Client, D55100), HTTP 접속 클라이언트 (HTTP Access Client, D55110), ISO BMFF 파서 (ISO Base Media File Format Parser, ISO BMFF Parser, D55120) 및/또는 미디어 디코더(Media Decoder, D55130)을 포함할 수 있다.
상기 피지컬 레이어 컨트롤러 (D55010)는 하이브리드 방송 수신기가 수신하고자 하는 지상파 방송 채널의 라디오 주파수 (Radio Frequency, RF) 정보 등을 이용하여 튜너 (D55020), 피지컬 레이어 프로세서(D55030) 등의 동작을 제어할 수 있다.
상기 튜너 (D55020)는 방송망으로 전송되는 방송 신호를 m개의 안테나를 통해 수신 및 처리하고 이를 피지컬 레이어 프로세서(D55030)으로 출력한다.
상기 피지컬 레이어 프로세서(D55030)는 상기 튜너(D55020)로부터 출력되는 방송 신호에 대해 복조, 프레임 파싱, 디인터리빙, 에러 정정 디코딩 등을 수행하는 것을 일 실시예로 한다.
도 18은 상기 피지컬 레이어 프로세서(D55030)의 상세 블록도의 일 실시예를 보인 도면이다. 즉, 도 18은 본 발명의 일 실시예에 따른 피지컬 레이어에서 차세대 방송 서비스에 대한 방송 신호 수신 장치의 구조를 나타낸다.
본 발명의 일 실시예에 따른 차세대 방송 서비스에 대한 방송 신호 수신 장치는 도 15의 차세대 방송 서비스에 대한 방송 신호 송신 장치에 대응할 수 있다.
본 발명의 일 실시예에 따른 차세대 방송 서비스에 대한 방송 신호 수신 장치는 동기 및 복조 모듈 (synchronization & demodulation module) (9000), 프레임 파싱 모듈 (frame parsing module) (9010), 디매핑 및 디코딩 모듈 (demapping & decoding module) (9020), 출력 프로세서 (output processor) (9030), 및 시그널링 디코딩 모듈 (signaling decoding module) (9040)을 포함할 수 있다.
상기 동기 및 복조 모듈(9000)은 상기 튜너 (D55020)에서 수신되어 처리된 방송 신호에 대해 동기화를 수행하고, 방송 신호 송신 장치의 역과정으로 OFDM 복조를 수행하는 것을 일 실시예로 한다. 즉, 부트스트랩 정보 검출, FFT (Fast Fourier Transform) 수행, 파일롯 검출 등을 수행할 수 있다.
상기 프레임 파싱 모듈(9010)은 주파수 디인터리버, 프레임 파서, 타임 디인터리버를 포함할 수 있다. 본 발명의 방송 신호 송신 장치에서 주파수 인터리빙은 복조된 방송 신호의 프리앰블 심볼들에 대해서는 필수이고, 복조된 방송 신호의 서브프레임(들)에 포함되는 데이터 심볼들에 대해서는 선택적이다. 그러므로 상기 주파수 디인터리버는 프리앰블 심볼들에 대해서는 주파수 디인터리빙을 수행하고, 데이터 심볼들에 대해서는 L1-Detail 시그널링 데이터의 L1D_frequency_interleaver 필드에 따라 선택적으로 주파수 디인터리빙을 수행한다. 주파수 디인터리브된 프리앰블 심볼들은 시그널링 디코딩 모듈(9040)로 출력하고, 주파수 디인터리빙이 선택적으로 수행된 서브프레임(들)의 데이터 심볼들을 포함하는 신호 프레임은 프레임 파서로 출력되어 파싱된다. 상기 프레임 파서에서 파싱된 서브프레임(들)에 포함된 데이터 파이프들(즉, PLP들)은 데이터 파이프별로 타임 디인터리버로 출력되고 방송 신호 송신 장치의 역으로 타임 디인터리빙된다. 상기 프레임 파싱 및 타임 디인터리빙도 L1 시그널링 데이터를 기반으로 수행된다.
상기 시그널링 디코딩 모듈(9040)은 프리앰블에 포함된 L1 시그널링 데이터를 디코딩하여 L1 시그널링 데이터에 포함된 정보를 필요한 블록들에 제공한다. 이를 위해 상기 시그널링 디코딩 모듈(9040)은 컨스텔레이션 디매퍼, 비트 디인터리버, FEC 디코더를 포함하는 것을 일 실시예로 하며, 방송 신호 송신 장치의 역으로 L1 시그널링 데이터에 대해 디코딩을 수행한다.
상기 디매핑 및 디코딩 모듈(9020)은 해당 데이터 파이프의 데이터에 대해 상기 L1 시그널링 데이터를 기반으로 방송 신호 송신 장치의 역과정으로 심볼 디매핑을 수행하고, 비트 디인터리빙을 수행한 후 에러 정정 디코딩을 수행한다. 상기 디매핑 및 디코딩 모듈(9020)의 출력은 적어도 하나의 베이스밴드 패킷이다.
상기 출력 프로세서(9030)는 입력되는 베이스밴드 패킷에 대해 전송 효율을 향상시키기 위해 방송 신호 송신 장치에 의해 적용되는 다양한 압축/신호 처리 절차의 역과정을 실행할 수 있다. 이 경우, 출력 프로세서(9030)는 시그널링 디코딩 모듈(9040)로부터 출력된 데이터에서 필요한 제어 정보를 획득할 수 있다.
상기 베이스밴드 패킷의 페이로드에 포함된 ALP 패킷들에 대한 디캡슐레이션, 어댑테이션, 디컴프레션 처리 등은 피지컬 레이어에서 수행될 수도 있고, 링크 레이어에서 수행될 수도 있다. 만일 피지컬 레이어에서 수행된다면 상기 출력 프로세서(9030)에 디캡슐레이션 모듈, 어댑테이션 모듈, 디컴프레션 모듈이 포함될 수 있다. 이 경우 상기 출력 프로세서(9030)는 방송 신호 송신 장치의 역과정으로 베이스밴드 패킷을 처리하여 ALP 패킷들을 검출하고, 검출된 ALP 패킷들에 대해 디캡슐레이션, 어댑테이션, 디컴프레션 처리 등을 수행하는 것을 일 실시예로 한다. 이때 상기 출력 프로세서(9030)의 출력은 IP 스트림/패킷 또는 MPEG2-TS가 될 수 있다. 만일 링크 레이어에서 디캡슐레이션, 어댑테이션, 디컴프레션 처리 등을 수행한다면, 상기 출력 프로세서(9030)의 출력은 ALP 패킷들을 포함하는 ALP 스트림이 될 수 있다.
본 발명은 링크 레이어에서 디캡슐레이션, 어댑테이션, 디컴프레션 처리 등을 수행하는 것을 일 실시예로 한다.
이 경우, 상기 도 17의 피지컬 레이어 프로세서(D55030)는 ALP 패킷들의 스트림을 링크 레이어 프로세서(D55040)로 출력한다.
상기 링크 레이어 프로세서(D55040)는 입력되는 ALP 패킷들에 대해 디캡슐레이션, 어댑테이션, 디컴프레션 처리 등을 수행하며, 상세 동작은 후술하기로 한다.
만일 ALP 패킷들에 포함된 입력 패킷이 IP 패킷이라면, 상기 링크 레이어 프로세서(D55040)의 출력은 하나 이상의 IP 패킷들이 된다. 본 발명에서 IP 패킷과 IP 데이터그램은 동일한 의미로 사용된다.
상기 IP/UDP 패킷 프로세서(D55050)는 수신된 하나 이상의 IP 패킷들로부터 특정 IP 패킷을 필터링할 수 있다. 즉, 상기 IP/UDP 패킷 프로세서(D55050)는 링크 레이어 프로세서(D55040)로부터 출력된 하나 이상의 IP 패킷들 중 디지털 텔레비전 컨트롤 엔진 (D55060)에 의해 선택된 IP 패킷을 필터링하고, ALC/LCT+ 등의 애플리케이션 레이어 전송 프로토콜 패킷 형태로 출력한다.
상기 디지털 텔레비전 컨트롤 엔진(D55060)은 각 하이브리드 방송 수신기에 포함된 모듈 간의 인터페이스를 담당할 수 있다. 또한 상기 디지털 텔레비전 컨트롤 엔진 (D55060)은 각 모듈에 필요한 파라미터 등을 각 모듈에 전달하고, 이를 통해 각 모듈의 동작을 제어할 수 있다. 본 발명에서 디지털 텔레비전 컨트롤 엔진 (D55060)은 미디어 프리젠테이션 디스크립션 (Media Presentation Description, MPD) 및/또는 MPD URL을 DASH 클라이언트 (D55100)에 전달할 수 있다. 또한 본 발명에서 디지털 텔레비전 컨트롤 엔진 (D55060)은 전송 모드(Delivery mode) 및/또는 전송 세션 식별자 (Transport Session Identifier, TSI)를 ALC/LCT+ 클라이언트 (D55070)에 전달할 수 있다. 여기서 TSI는 MPD 또는 MPD URL 관련 시그널링 등 시그널링 메시지를 포함하는 전송 패킷을 전송하는 세션, 예를 들어 애플리케이션 계층 전송 프로토콜인 ALC/LCT+ 세션 또는 FLUTE 세션의 식별자를 나타낼 수 있다. 또한 전송 세션 식별자는 MMT의 Asset id 등에 대응될 수 있다.
상기 ALC/LCT+ 클라이언트 (D55070)는 ALC/LCT+ 등의 애플리케이션 레이어 전송 프로토콜 패킷을 처리하고 복수의 패킷을 수집 및 처리하여 하나 이상의 ISO Base Media File Format (ISOBMFF) 오브젝트를 생성할 수 있다. 어플리케이션 레이어 전송 프로토콜 패킷에는 ALC/LCT 패킷, ALC/LCT+ 패킷, ROUTE 패킷, 및/또는 MMTP 패킷이 포함될 수 있다.
상기 타이밍 제어부 (D55080)는 시스템 타임 정보를 포함하는 패킷을 처리하고 이에 따라 시스템 클럭을 제어할 수 있다.
상기 시그널링 파서 (D55090)는 DTV 방송 서비스 관련 시그널링 (예, LLS, SLS)을 획득 및 파싱하고 파싱된 시그널링에 기초하여 채널 맵 등을 생성하고 관리할 수 있다. 본 발명에서 시그널링 파서는 시그널링 정보로부터 확장된 MPD 또는 MPD 관련 정보 등을 파싱할 수 있다.
상기 DASH 클라이언트 (D55100)는 실시간 스트리밍 (Real-time Streaming) 혹은 적응적 스트리밍 (Adaptive Streaming)에 관련된 연산을 수행할 수 있다. 상기 DASH 클라이언트 (D55100)는 HTTP 접속 클라이언트 (D55110)을 통해 HTTP 서버로부터 DASH 컨텐츠를 수신할 수 있다. DASH 클라이언트 (D55100)는 수신된 DASH Segment등을 처리하여 ISO Base Media File Format 오브젝트를 출력할 수 있다. 본 발명에서 DASH 클라이언트 (D55100)는 디지털 텔레비전 컨트롤 엔진 (D55060)에 전체 Representation ID (Fully qualified Representation ID) 또는 세그먼트 URL을 전달할 수 있다. 여기서 전체 Representation ID는 예를 들어 MPD URL, period@id 및 representation@id를 결합한 ID를 의미할 수 있다. 또한 DASH 클라이언트 (D55100)는 디지털 텔레비전 컨트롤 엔진 (D55060)으로부터 MPD 또는 MPD URL을 수신할 수 있다. DASH 클라이언트 (D55100)는 수신된 MPD 또는 MPD URL을 이용하여 원하는 미디어 스트림 또는 DASH Segment를 HTTP 서버로부터 수신할 수 있다. 본 명세서에서 DASH 클라이언트 (D55100)는 프로세서로 지칭될 수 있다.
상기 HTTP 접속 클라이언트 (D55110)는 HTTP 서버에 대해 특정 정보를 요청하고, HTTP 서버로부터 이에 대한 응답을 수신하여 처리할 수 있다. 여기서 HTTP 서버는 HTTP 접속 클라이언트로부터 수신한 요청을 처리하고 이에 대한 응답을 제공할 수 있다.
상기 ISO BMFF 파서 (D55120)는 ISO Base Media File Format 오브젝트로부터 오디오/비디오의 데이터 추출할 수 있다.
상기 미디어 디코더 (D55130)는 수신된 오디오 및/또는 비디오 데이터를 디코딩하고, 디코딩된 오디오/비디오 데이터를 프리젠테이션하기 위한 프로세싱을 수행할 수 있다.
한편, 전술한 바와 같이 송신 시스템의 딜리버리 레이어에서 MMTP 또는 ROUTE 프로토콜에 따라 처리된 데이터는 UDP/IP 레이어에서 IP 패킷들로 캡슐레이션된 후 링크 레이어로 전송된다. 즉, MMTP 또는 ROUTE 프로토콜에 따라 처리된 데이터를 포함하는 UDP 페이로드에 UDP 헤더를 부가하여 UDP 패킷을 만들고, 이 UDP 패킷에 IP 헤더를 부가하여 IP/UDP 패킷을 만드는 것을 일 실시예로 한다. 본 발명에서는 설명의 편의를 위해 IP 헤더, UDP 헤더, 페이로드로 구성된 패킷 또는 IP 헤더와 페이로드로 구성된 패킷을 IP 패킷이라 하기로 한다.
도 19는 링크 레이어로 전송되는 IP 패킷의 헤더 구조의 일 실시예이며, IP 헤더와 UDP 헤더를 포함하는 예이다.
도 19에서 버전 필드는 4비트가 할당되며 이 패킷의 버전이 IPv4인지 IPv6인지를 지시한다. 현재는 IPv4를 사용하는 것을 일 실시예로 한다.
IHL (Internet Header Length) 필드는 4비트가 할당되며, IP 헤더의 길이를 나타낸다. 즉, 데이터 영역의 길이를 제외한 순수 헤더의 길이를 지시한다.
TOS (Type of Service) 필드는 8비트가 할당되며, IP 프로토콜이 사용자에게 제공하는 서비스의 품질(QoS)에 관련된 내용을 표시한다. 즉, IP 패킷의 우선 순위를 정의한다.
Total Length 필드는 16비트가 할당되며 IP 헤더와 실제 데이터 영역을 모두 합한 크기를 바이트 단위로 나타낸다. 즉, 해당 IP 패킷의 전체 길이를 나타낸다.
Identification 필드는 16비트가 할당되며 각 IP 패킷을 식별하는 식별자이다. 만일 보내려는 IP 패킷을 2개 이상의 작은 패킷들로 단편화(fragmentation)하였을 때 하나의 IP 패킷으로부터 프래그먼트된(fragmented) 패킷들의 Identification 필드 값은 동일한다. 즉, 프래그멘테이션이 일어나지 않은 IP 패킷들은 서로 다른 값을 가진다. 본 발명은 설명의 편의를 위해 하나의 IP 패킷으로부터 프래그먼트된 패킷들은 프래그먼트 패킷들 또는 프래그먼티드 IP 패킷들이라 칭하기로 한다.
IP Flags 필드는 3비트가 할당되며, IP 패킷의 프래그멘테이션에 관련된 정보를 포함한다. 이 필드의 첫번재 플래그는 0이고, 두번째 플래그는 DF(Don't Fragment) 플래그이며, 해당 패킷이 프래그먼트되었는지 여부를 나타낸다. 예를 들어, DF 플래그 값이 0이면 해당 패킷은 프래그먼트된 패킷임을 지시하고, 1이면 해당 패킷은 프래그먼트되지 않은 패킷임을 지시한다. 이 필드의 세번째 플래그는 MF (More Fragment) 플래그이며, 해당 패킷이 마지막 프래그먼트 패킷인지 여부를 지시한다. 예를 들어, MF 플래그 값이 0이면 해당 패킷은 마지막 프래그먼트 패킷임을 지시하고, 1이면 프래그먼트 패킷이 더 있음을 지시한다. 다시 말해 MF 플래그 값이 1이면 해당 패킷이 마지막 프래그먼트 패킷이 아님을 지시한다.
fragment offset 필드는 13비트가 할당되며, IP 패킷이 프래그먼트되었을 때 IP 패킷 내 데이터 영역에서 해당 프래그먼트 패킷의 상대 위치를 나타낸다.
time to live (TTL) 필드는 8비트가 할당되며, 해당 패킷이 네트워크 상에서 얼마나 오랫동안 살아남을 수 있을지를 나타낸다.
Protocol 필드는 8비트가 할당되며, 해당 IP 패킷의 페이로드에 저장된 상위 레이어 프로토콜을 나타낸다.
header checksum 필드는 16비트가 할당되며, IP 헤더에만 사용된다.
Source IP address 필드와 Destination IP address 필드는 각각 32비트가 할당되며, 해당 패킷의 소스 IP 어드레스와 데스티네이션 IP 어드레스를 나타낸다.
지금까지 설명한 버전 필드, IHL 필드, TOS 필드, total length 필드, Identification 필드, IP flags 필드, Fragment offset 필드, TTL 필드, Protocol 필드, Header Checksum 필드는 IP 헤더에 포함되는 필드들이다.
도 19에서 source port 필드, destination port 필드, Length 필드, 및 Checksum 필드는 UDP 헤더에 포함되는 필드들이다.
상기 source port 필드와 destination port 필드는 각각 16비트가 할당되며, 해당 패킷의 소스 포트 번호와 데스티네이션 포트 번호를 나타낸다.
상기 length 필드는 16비트가 할당되며 UDP 헤더와 실제 데이터 영역을 모두 합한 크기를 바이트 단위로 나타낸다. 즉, 해당 UDP 패킷의 전체 길이를 나타낸다.
상기 checksum 필드는 16비트가 할당되며, UDP 헤더에만 사용된다.
다음은 IP 패킷의 프래그멘테이션 과정에 대해 설명한다.
IP/UDP 레이어에서 링크 레이어로 전송할 IP 패킷의 사이즈가 MTU (Maximum Transmission Unit)보다 크면 상기 IP 패킷에 대해 프래그멘테이션이 수행되어 2개 이상의 프래그먼트 패킷들로 나누어져 전송된다. 여기서 MTU는 IP/UDP 레이어에서 링크 레이어로 한번에 보낼 수 있는 데이터의 사이즈를 의미하는 것을 일 실시예로 한다. 즉, 링크 레이어로 전송할 IP 패킷의 사이즈가 MTU보다 크면 상기 IP 패킷을 전송할 수 없으므로, 상기 IP 패킷에 대해 프래그멘테이션을 수행하게 된다.
상기 IP 패킷에 대해 프래그멘테이션이 수행되면 상기 IP 패킷을 2개 이상의 프래그먼트들로 자르고 각 프래그먼트 앞에 IP 헤더를 부가하여 프래그먼트 패킷들을 만든다. 다시 말해, 각 프래그먼트 패킷도 IP 헤더와 페이로드로 구성되는 IP 패킷이다.
예를 들어, IP/UDP 레이어에서 IP 패킷에 프래그멘테이션이 수행되어 3개의 프래그먼트 패킷들로 나누어졌다고 가정하자. 그리고 첫번째 프래그먼트 패킷을 A 프래그먼트 패킷이라 하고, 두번째 프래그먼트 패킷을 B 프래그먼트 패킷이라 하며, 세번째 프래그먼트 패킷을 C 프래그먼트 패킷이라 하자.
이때 A, B, C 프래그먼트 패킷들의 각 IP 헤더 내 Identification 필드 값은 모두 동일하나, fragment offset 필드 값은 모두 다르다. 그리고 A, B, C 프래그먼트 패킷들의 각 IP 헤더 내 IP Flags 필드 중 DF 플래그는 모두 0으로 설정되어 해당 패킷들이 프래그먼트된 패킷들임을 나타낸다. 이에 더하여, A, B 프래그먼트 패킷들의 각 IP 헤더 내 IP Flags 필드 중 MF 플래그는 1로 설정되어 추가의 프래그먼트 패킷이 있음을 지시하고, C 프래그먼트 패킷의 IP 헤더 내 MF 플래그는 0으로 설정되어 마지막 프래그먼트 패킷임을 지시한다.
도 20의 (a) 내지 (d)는 프래그먼트가 수행되지 않은 4개의 IP 패킷들이 IP/UDP 레이어에서 링크 레이어로 전송되는 예를 보인 것이다. 이 경우, 4개의 IP 패킷들의 각 IP 헤더 내 Identification 필드 값은 모두 다르고, fragment offset 필드 값은 모두 0이다. 그리고 4개의 IP 패킷들의 각 IP 헤더 내 IP Flags 필드 중 DF 플래그는 모두 1로 설정되어 해당 패킷들이 프래그먼트되지 않은 패킷들임을 나타낸다. 이에 더하여, 4개의 IP 패킷들의 각 IP 헤더 내 IP Flags 필드 중 MF 플래그도 모두 0으로 설정되는 것을 일 실시예로 한다.
도 21의 (a) 내지 (d)는 도 20의 (a) 내지 (d)와 같이 4개의 IP 패킷들이 수신되었을 때, RoHC 스킴을 적용하여 IP 헤더 압축을 수행한 후 ALP 패킷들로 인캡슐레이션한 예를 보이고 있다. 이 경우 각 페이로드마다 헤더 압축에 의해 RoHC 헤더가 부가되고 인캡슐레이션 처리에 의해 ALP 헤더가 부가되어 4개의 ALP 패킷이 생성된다.
도 22는 본 발명의 일 실시예에 따른 데이터 전송 과정을 보인 방송 시스템의 구성 블록도이다.
도 22에서 방송 시스템은 스튜디오(1211), 방송 게이트웨이(1213), 트랜스미터(1215)로 구성될 수 있다. 본 발명에서 방송 게이트웨이는 링크 레이어 프로세서로 명명될 수 있다.
상기 스튜디오(1211)는 OSI 7 레이어 구조를 고려 했을 때, 주로 IP/UDP 레이어 및 그 이상의 레이어에서의 동작 및 전송 기능을 수행하는 것을 일 실시예로 한다. 상기 방송 게이트웨이(1213)는 링크 레이어(즉, Layer 2)에서의 동작 및 전송 기능을 수행하는 것을 일 실시예로 한다. 만일 상기 스튜디오(1211)에서 전송하는 패킷이 IP 패킷이라면, 상기 방송 게이트웨이(1213)는 도 7에서와 같이 RoHC 모듈, 어댑테이션 모듈, 및 인캡슐레이션 모듈을 포함하는 것을 일 실시예로 한다. 상기 트랜스미터(1215)는 피지컬 레이어에서의 동작 및 전송 기능을 수행하는 것을 일 실시예로 한다. 상기 트랜스미터(1215)는 도 15의 방송 신호 송신 장치를 포함하는 것을 일 실시예로 한다.
상기 스튜디오(1211), 방송 게이트웨이(1213), 트랜스미터(1215)의 각 기능 또는 모듈은 별도의 프로토콜을 가지는 링크로 연결되어 있고, 이러한 링크는 STL (Studio to Transmitter Link)이라 부르는 것을 일 실시예로 한다.
예를 들어, ATSC 3.0을 기준으로 스튜디오(1211)에서는 비디오 및/또는 오디오 데이터를 인코딩하고, 인코딩된 비디오 및/또는 오디오 데이터를 포함하는 ROUTE 및/또는 MMT 패킷을 이용하여 전송 포맷(delivery format)을 구성한다. 그리고 상기 스튜디오(1211)에서는 ROUTE 패킷 및/또는 MMTP 패킷을 IP/UDP 패킷으로 처리하여 방송 게이트웨이(1213)에 전달한다. 상기 방송 게이트웨이(1213)은 ATSC 3.0의 경우 ALP (ATSC Link-layer Protocol) 기능에 해당하며, DVB의 경우는 GSE (Generic Stream Encapsulation) 기능에 해당하는 것을 일 실시예로 한다. 일반적으로 IP (또는 IP/UDP) 레이어와 링크 레이어의 RoHC 모듈은 서로 독립적으로 동작한다.
도 23의 (a) 내지 (d)는 IP/UDP 레이어에서 생성된 4개의 IP 패킷들의 예를 보이고 있고, 도 24의 (a), (b1) 내지 (b3), (c), (d)는 도 23의 (b)의 IP 패킷에 대해 프래그멘테이션이 수행되어 도 24의 (b1) 내지 (b3)처럼 3개의 프래그먼트 패킷들이 생성된 예이다. 즉, 도 24의 (a), (b1) 내지 (b3), (c), (d)와 같은 IP 패킷들이 링크 레이어의 RoHC 모듈로 입력된다.
IP 헤더, UDP 헤더를 갖는 IP 패킷 즉, IP/UDP 패킷에 대해 프래그멘테이션이 수행되었을 때 도 24의 (b1) 내지 (b3)에서 보는 바와 같이, UDP 헤더는 첫번째 프래그먼트 패킷에만 존재하고 나머지 프래그먼트 패킷들에는 존재하지 않음을 알 수 있다. IP 헤더는 모든 프래그먼트 패킷들에 존재한다.
IP 프래그멘테이션은 IP 패킷이 링크 레이어로 전달 될 때, IP 패킷의 전달 경로 또는 router에서 충분한 길이의 IP 패킷을 처리 하지 못하는 경우, 즉, MTU가 전송하고자 하는 IP 패킷의 길이보다 작을 때, 지원하는 기법이다. IP 패킷의 전달 경로 또는 router가 전송할 수 있는 MTU에 따라, 하나의 IP 패킷은 복수개의 프래그먼트로 구분되고, 각 프래그먼트에 IP 헤더가 부가되어 프래그먼트 패킷들이 만들어진 후 링크 레이어로 전송된다. 즉, router 또는 스튜디오-방송 게이트웨이 간 링크가 가지는 MTU에 따라 스튜디오에서 IP 패킷은 프래그멘테이션되어 방송 게이트웨이로 전송될 수 있다. 수신기에서는 프래그멘테이션이 적용된 프래그먼트 패킷들 즉, IP 패킷들은 각 IP 헤더에 시그널링된 프래그먼트 관련 정보를 기반으로 원래의 IP 패킷으로 복구될 수 있다.
전술한 바와 같이 IP 패킷의 헤더 압축은 RoHC 스킴이 사용되고, ATSC 3.0 방송 링크의 특성을 고려하여, RoHC 프레임워크는 단방향 모드(U-mode)에서 동작하는 것을 일 실시예로 한다. 상기 RoHC 프레임워크에서는 다수의 헤더 압축 프로파일들이 정의된다. 각 프로파일은 특정 프로토콜 조합을 지시하고, 프로파일 식별자들은 IANA (Internet Assigned Numbers Authority)에 의해 할당된다. ATSC 3.0을 위해 '0x0002' 프로파일이 사용되는 것을 일 실시예로 한다. 다음의 표 1은 ATSC 3.0을 위해 정의된 RoHC 프로파일의 예이다.
Figure 112022057401825-pat00001
즉, 링크 레이어의 RoHC 모듈에서는 입력되는 IP 패킷의 헤더에 IP 헤더와 UDP 헤더 중 어느 하나라도 없으면 헤더 압축을 수행하지 않는다. 그러므로, 도 24의 (b2), (b3)과 같이 UDP 헤더가 없는 IP 패킷들에 대해서는 헤더 압축이 수행되지 않는다.
다시 말해, RoHC 모듈은 IP 프래그멘테이션에 의해 도 24의 (b2), (b3)와 같이 UDP 헤더가 없는 IP 패킷들이 입력되면 profile number가 0x00인 uncompressed profile을 적용한다. 이때, uncompressed profile은 RoHC 헤더 포맷을 이용해 실제 IP 헤더를 그대로 전송하는 구조이므로, 헤더 압축 효율을 기대할 수 없다.
도 25의 (a), (b1) 내지 (b3), (c), (d)는 방송 게이트웨이(1213)의 RoHC 모듈에서 도 24의 (a), (b1) 내지 (b3), (c), (d)와 같은 IP 패킷들에 대해 헤더 압축과 인캡슐레이션을 적용하였을 때 ALP 패킷들의 예이다.
도 25의 (b2), (b3)에서 보는 바와 같이, UDP 헤더가 없는 IP 패킷에 대해서 헤더 압축은 실제적으로 이루어지지 않았으며, 그 형태만 RoHC 패킷 헤더의 형태로 변경되었음을 알 수 있다. 즉, IP 헤더와 UDP 헤더를 모두 갖고 있는 IP, 패킷들은 0x02 profile로 헤더 압축이 이루어진 반면에, IP 헤더는 있으나 UDP 헤더가 없는 IP 패킷들(즉, 프래그먼트 패킷들)은 0x00 profile로 헤더 압축이 이루어진다.
도 25의 (a), (b1) 내지 (b3), (c), (d)와 같이 IP 헤더 압축이 이루어지면 몇가지 문제점이 발생할 수 있다. 즉, 패킷 스트림의 중간에서 압축 profile이 변경되는 경우, 시스템의 복잡도 및 딜레이가 증가되는 문제가 있다. 단일 형태의 패킷 스트림이 전달되면 하나의 profile 및 이에 따른 RoHC 패킷 구조를 사용 할 수 있으나, IP 프래그멘테이션을 위해 추가적인 profile을 구성 해야 하며 이에 따른 추가적인 ROHC 패킷 구조에 대응해야 한다. 또한 송신기에서는 profile 을 전환하는 과정에서 딜레이가 발생하며, 수신기에서는 서로 다른 profile을 이용하여 헤더 압축 된 패킷 스트림 사이의 동기화에 많은 메모리 용량이 필요 하게 된다. RoHC를 이용하여 대역폭(bandwidth)을 효율적으로 사용함과 동시에, 대용량의 방송 스트림을 빠르게 송수신 하기 위해서 이러한 오버헤드를 줄이는 것이 중요하다. 이러한 오버헤드를 줄이기 위해서는 방송 송신 네트워크에 대한 용량 증대가 가장 효과적이지만, 방송 시스템의 인프라구조(infrastructure)를 업데이트하는 것은 많은 비용 및 시간을 필요로 하는 문제가 있다.
본 발명은 위의 문제점들을 해결하기 위하여, 방송 게이트웨이 내의 링크 레이어에서 IP 프래그멘테이션에 대한 전처리를 추가하는 것을 제안한다.
도 26은 본 발명에 따른 링크 레이어에서 동작하는 방송 게이트웨이를 포함한 방송 시스템의 일 실시예를 보인 도면이다. 즉, 방송 게이트웨이(1320)의 RoHC 모듈 (1322) 전에 전처리기(pre-processor) (1321)가 위치하는 것을 일 실시예로 한다.
도 27은 도 26의 방송 시스템의 방송 네트워크 구조를 보인 블록도로서, 방송 게이트웨이 내에 전처리기가 포함되는 예를 보이고 있다.
도 26 및 도 27에서 방송 시스템의 송신측(1300)은 스튜디오(1310), 방송 게이트웨이(1320), 및 트랜스미터(1330)를 포함하는 것을 일 실시예로 한다.
상기 스튜디오(1310)는 IP/UDP 레이어 및 그 이상의 레이어에서의 동작 및 전송 기능을 수행하는 것을 일 실시예로 한다. 상기 방송 게이트웨이(1320)는 링크 레이어(즉, Layer 2)에서의 동작 및 전송 기능을 수행하는 것을 일 실시예로 한다.
만일 상기 스튜디오(1310)에서 전송하는 패킷이 IP 패킷이라면, 상기 방송 게이트웨이(1320)는 전처리기(1321), RoHC 모듈(1322), 어댑테이션 모듈(1323), 및 인캡슐레이션 모듈(1324)를 포함하는 것을 일 실시예로 한다.
상기 트랜스미터(1324)는 피지컬 레이어에서의 동작 및 전송 기능을 수행하는 것을 일 실시예로 한다. 상기 트랜스미터(1324)는 도 15의 방송 신호 송신 장치를 포함하는 것을 일 실시예로 한다.
상기 스튜디오(1310)에서는 비디오 및/또는 오디오 데이터를 인코딩하고, 인코딩된 비디오 및/또는 오디오 데이터를 포함하는 ROUTE 및/또는 MMT 패킷을 이용하여 전송 포맷(delivery format)을 구성하는 것을 일 실시예로 한다. 그리고 상기 스튜디오(1310)에서는 ROUTE 패킷 및/또는 MMTP 패킷을 IP/UDP 패킷으로 패킷화한다. 이때 라우터 또는 스튜디오-방송 게이트웨이 간 링크가 가지는 MTU에 따라 상기 IP/UDP 패킷은 그대로 방송 게이트웨이(1320) 즉, 링크 레이어로 전송되거나 또는 복수개의 프래그먼트 패킷들로 프래그먼트되어 링크 레이어로 전송된다. 즉, 상기 IP/UDP 패킷의 길이가 MTU보다 크면, 상기 IP/UDP 패킷에 대해 프래그멘테이션이 수행되는 것을 일 실시예로 한다.
도 28의 (a) 내지 (d)는 스튜디오(1310)의 IP/UDP 레이어에서 생성된 4개의 IP 패킷들의 예를 보이고 있고, 도 29의 (b1) 내지 (b3)는 도 28의 (b)의 IP 패킷에 대해 프래그멘테이션이 수행되어 3개의 프래그먼트 패킷들이 생성된 예이다. 즉, 도 29의 (a), (b1) 내지 (b3), (c), (d)와 같은 IP 패킷들을 포함하는 패킷 스트림(즉, 방송 스트림)이 스튜디오(1310)의 각 라우터를 통해 링크 레이어에서 동작하는 방송 게이트웨이(1320)의 전처리기(1321)로 입력된다.
IP 헤더, UDP 헤더를 갖는 IP 패킷 즉, IP/UDP 패킷에 대해 프래그멘테이션이 수행되었을 때 도 29의 (b1) 내지 (b3)에서 보는 바와 같이, UDP 헤더는 첫번째 프래그먼트 패킷에만 존재하고 나머지 프래그먼트 패킷들에는 존재하지 않음을 알 수 있다. IP 헤더는 모든 프래그먼트 패킷들에 존재한다.
상기 전처리기(1321)는 입력되는 패킷 스트림 내 IP 패킷들의 각 IP 헤더를 참조하여 입력되는 패킷 스트림에 IP 프래그멘테이션이 적용되었는지 여부를 검출한다. IP 프래그멘테이션된 프래그먼트 패킷이 검출되면, 해당 IP/UDP 패킷을 구성하는 모든 프래그먼트 패킷들이 수신 될 때까지 버퍼나 메모리 등에 프래그먼트 패킷들을 저장하는 것을 일 실시예로 한다. 해당 IP/UDP 패킷을 구성하는 프래그먼트 패킷들이 모두 수신되면, 수신된 프래그먼트 패킷들을 조합하여 원래의 IP/UDP 패킷으로 복구한다. 즉, 전처리기(1321)에서 전처리를 거쳐 복구된 IP/UDP 패킷(즉, IP stream)은 최초 스튜디오(1310)가 전송하고자 하는 IP/UDP 패킷 (즉, IP stream)과 동일하다.
예를 들어, 도 29의 (b1) 내지 (b3)와 같이 IP/UDP 패킷으로부터 프래그멘테이션된 3개의 프래그먼트 패킷들이 전처리기(1321)로 입력되면, 상기 전처리기(1321)는 3개의 프래그먼트 패킷들이 모두 수신될 때까지 수신되는 패킷들을 저장하면서 기다린다. 3개의 프래그먼트 패킷들이 모두 수신되면, 3개의 프래그먼트 패킷들을 조합하여 도 30의 (b)와 같이 프래그멘테이션되기 전 IP/UDP 패킷으로 복구한다.
상기 전처리기(1321)에서 전처리된 도 30의 (a) 내지 (d)와 같은 IP 패킷들(즉, IP/UDP 패킷들)은 RoHC 모듈(1322)로 출력된다.
상기 RoHC 모듈(1322)는 입력되는 IP 패킷들에 대해 RoHC 스킴을 적용하여 IP 헤더 압축을 수행한다.
이때 RoHC 모듈(1322)로 입력되는 IP 패킷들은 IP 헤더, UDP 헤더를 모두 포함하므로, 0x02 profile로 헤더 압축이 이루어지며, 그 외의 다른 profile에 대한 고려는 필요 없게 된다. 그리고 송신 시스템의 구현에 있어서, 이러한 전처리 과정은 ROHC 모듈(1322)의 패킷 분류 기능의 재사용이 가능하다.
도 31의 (a) 내지 (d)는 도 30의 (a) 내지 (d)와 같이 4개의 IP 패킷들이 수신되었을 때, RoHC 스킴을 적용하여 IP 헤더 압축을 수행한 후 ALP 패킷들로 인캡슐레이션한 예를 보이고 있다. 이 경우 각 페이로드마다 헤더 압축에 의해 RoHC 헤더가 부가되고 인캡슐레이션 처리에 의해 ALP 헤더가 부가되어 4개의 ALP 패킷들이 생성된다. 이렇게 생성된 ALP 패킷들은 피지컬 레이어로 전송된다.
상기 RoHC 모듈(1322), 어댑테이션 모듈(1323), 인캡슐레이션 모듈(1324)의 상세 동작은 앞에서 설명하였으므로 여기서는 생략하기로 한다.
도 32는 본 발명의 일 실시예에 따른 전처리기(1321)를 포함하는 방송 게이트웨이(1320)의 동작을 나타낸 흐름도이다. 본 발명에서 IP 패킷의 헤더 압축은 선택적이며, 도 32는 IP 패킷들을 포함하는 IP 스트림에 대해 헤더 압축을 수행하는 예이다.
도 19에서 보는 바와 같이, IP 패킷의 IP 헤더는 프래그멘테이션과 관련된 필드들을 포함한다. 본 발명은 이 필드들을 이용하여 해당 IP 패킷이 프래그멘테이션이 적용된 프래그먼트 패킷인지, 프래그먼트 패킷이면 마지막 프래그먼트 패킷인지, 해당 프래그먼트 패킷의 IP/UDP 패킷 내 상대 위치 등을 알 수 있다. 일 예로, 프래그멘테이션과 관련된 필드들은 Identification 필드, IP Flags 필드에 포함되는 DF 플래그와 MF 플래그, 그리고 fragment offset 필드를 포함하는 것을 일 실시예로 한다.
즉, 상기 전처리기(1321)는 IP/UDP 레이어로부터 IP 패킷이 수신되면(S1421), 수신된 IP 패킷이 프래그멘테이션이 적용된 프래그먼티드(fragmented) IP 패킷인지를 확인한다(S1422). 일 예로, 수신된 IP 패킷의 IP 헤더 내 IF Flags 필드의 DF 플래그를 이용하여 해당 IP 패킷이 프래그먼티드 IP 패킷인지를 확인한다. 예를 들어, 상기 DF 플래그의 값이 0이면 해당 IP 패킷은 프래그먼티드 IP 패킷이라고 판단한다.
상기 S1422 단계에서 상기 수신된 IP 패킷이 프래그멘테이션이 적용되지 않은 패킷이라고 확인되면(즉, DF 플래그 값이 1), 상기 수신된 IP 패킷의 헤더 압축을 위해 S1426 단계로 진행한다.
상기 S1422 단계에서 상기 수신된 IP 패킷이 프래그멘테이션이 적용된 프래그먼티드 IP 패킷이라고 확인되면, 상기 수신된 IP 패킷을 저장하고, 상기 IP 패킷의 IP 헤더 내 Identification 필드 값과 동일한 값을 가지는 하나 이상의 IP 패킷들을 기다린다(S1423). 이러한 과정을 동일한 identification 필드 값을 가지는 IP 패킷들이 모두 수신되어 저장될 때까지 반복된다. 동일한 identification 필드 값을 가지는 IP 패킷들이 모두 수신되었는지를 확인하는 방법은 IP 헤더 내 MF 플래그를 이용할 수 있다. 즉, 상기 MF 플래그 값이 1이면 프래그먼티드 IP 패킷이 더 있음을 지시하고, 0이면 해당 IP 패킷이 마지막 프래그먼티드 IP 패킷임을 지시하므로, MF 플래그 값이 0인 IP 패킷이 수신되면 동일한 identification 필드 값을 가지는 IP 패킷들이 모두 수신되었다고 판단할 수 있다. 이에 더하여, 신뢰성을 높이기 위해 checksum 필드 및 UDP 헤더 내 length 필드를 추가로 이용하여 동일한 identification 필드 값을 가지는 IP 패킷들이 모두 수신되었는지 검증할 수도 있다.
상기 과정을 통해 동일한 identification 필드 값을 가지는 IP 패킷들이 모두 수신되었다고 판단되면(S1424), 각 IP 패킷 내 IP 헤더의 fragment offset 필드를 이용하여 IP 패킷들의 순서를 식별하고, 식별된 순서대로 IP 패킷들을 조합하여 프래그멘테이션되기 전 IP 패킷으로 복구한다(S1425). 이때 상기 복구된 IP 패킷은 프래그멘테이션이 적용되지 않은 패킷이므로, 상기 복구된 IP 패킷의 IP 헤더 내 DF 플래그 값은 1로 설정하고, fragment offset 필드 값은 0으로 설정하는 것을 일 실시예로 한다.
다음의 표 2는 IP 패킷이 3개의 프래그먼티드 IP 패킷들로 프래그멘테이션되었을 때의 각 IP 헤더 내 프래그멘테이션 관련 필드들의 값과 상기 전처리기(1321)에서 3개의 프래그먼티드 IP 패킷들을 조합하여 프래그멘테이션이 적용되기 전 IP 패킷으로 복원하였을 때의 IP 헤더 내 프래그멘테이션 관련 필드들의 값의 일 실시예를 나타낸 것이다.
Figure 112022057401825-pat00002
상기 S1422 단계에서 수신된 IP 패킷이 프래그멘테이션이 적용되지 않은 IP 패킷으로 확인되거나, 상기 S1425 단계에서 복수개의 프래그먼티드 IP 패킷들이 프래그멘테이션이 적용되기 전 IP 패킷으로 복원되면, RoHC 모듈(1322)은 입력되는 IP 패킷들의 IP 스트림에 RoHC 스킴을 적용하여 헤더 압축을 수행한다(S1426). 상기 S1426 단계에서 헤더 압축이 수행된 RoHC 패킷 플로우는 어댑테이션 모듈(1323)로 출력되고, 상기 어댑테이션 모듈(1323)은 어댑테이션 모드를 기반으로 RoHC 패킷 플로우 내 IR 및/또는 IR-DYN 패킷으로부터 컨텍스트 정보를 추출한다. 상기 컨텍스트 정보는 링크 레이어 시그널링의 RDT에 포함되어 전송되는 것을 일 실시예로 한다. 일 예로, 어댑테이션 모드 1이면, 컨텍스트 정보를 추출하는 과정이 없으며, IR 및 IR-DYN 패킷들을 포함하는 RoHC 패킷 플로우는 인캡슐레이션 모듈(1324)에서 적어도 하나의 ALP 패킷으로 캡슐화된 후 데이터 PLP를 통해 수신기로 전송된다. 이때 RDT와 LMT를 포함하는 링크 레이어 시그널링은 상기 인캡슐레이션 모듈(1324)에서 적어도 하나의 ALP 패킷으로 캡슐화된 후 LLS가 전송되는 시그널링 PLP를 통해 수신기로 전송된다.
어댑테이션 모드 2이면, IR 패킷으로부터 컨텍스트 정보(즉, 스태틱 체인 정보)가 추출되고, 컨텍스트 정보가 추출된 IR 패킷은 IR-DYN 패킷으로 변환된다. 상기 변환된 IR-DYN 패킷은 원래의 IR 패킷을 대체하여 RoHC 패킷 플로우 내에서 같은 순서로 인캡슐레이션 모듈(1324)로 전송되고, 적어도 하나의 ALP 패킷으로 캡슐화된 후 데이터 PLP를 통해 수신기로 전송된다. 상기 추출된 컨텍스트 정보는 RDT에 포함되고, 상기 RDT와 LMT를 포함하는 링크 레이어 시그널링은 상기 인캡슐레이션 모듈(1324)에서 적어도 하나의 ALP 패킷으로 캡슐화된 후 LLS가 전송되는 시그널링 PLP를 통해 수신기로 전송된다.
어댑테이션 모드 3이면, IR 패킷으로부터 컨텍스트 정보(즉, 스태틱 체인 정보와 다이나믹 체인 정보)가 추출되고, IR-DYN 패킷으로부터 컨텍스트 정보(즉, 다이나믹 체인 정보)가 추출된다. 컨텍스트 정보가 추출된 IR 패킷와 IR-DYN 패킷은 각각 압축 패킷으로 변환된다. 상기 변환된 압축 패킷들은 원래의 IR 패킷과 IR-DYN 패킷을 대체하여 RoHC 패킷 플로우 내에서 같은 순서로 인캡슐레이션 모듈(1324)로 전송되고, 적어도 하나의 ALP 패킷으로 캡슐화된 후 데이터 PLP를 통해 수신기로 전송된다. 상기 추출된 컨텍스트 정보는 RDT에 포함되고, 상기 RDT와 LMT를 포함하는 링크 레이어 시그널링은 상기 인캡슐레이션 모듈(1324)에서 적어도 하나의 ALP 패킷으로 캡슐화된 후 LLS가 전송되는 시그널링 PLP를 통해 수신기로 전송된다.
한편, 도 17의 수신기의 피지컬 레이어 프로세서(D55030)에서는 신호 프레임에 포함되어 수신되는 데이터 PLP들과 시그널링 PLP에 대해 디인터리빙, 디매핑, 에러 정정 디코딩 등을 수행하여 링크 레이어 프로세서(D55040)로 출력한다. 도 18은 도 17의 피지컬 레이어 프로세서(D55030)의 상세 블록도의 일 실시예이며, 상세 설명은 위에서 했으므로 여기서는 생략하기로 한다. 도 26의 링크 레이어 프로세서(1440)는 도 17의 링크 레이어 프로세서(D55040)에 적용할 수 있다.
일 실시예로, 피지컬 레이어 콘트롤러(D55010)에서는 L1 베이직 시그널링 데이터의 L1B_lls_flag 필드와 L1 디테일 시그널링 데이터의 L1D_plp_lls_flag 필드를 이용하여 LLS, LMT, RDT 등을 포함하는 시그널링 PLP를 빠르게 식별할 수 있다. 따라서 링크 레이어 프로세서(D55040)에서는 시그널링 PLP를 통해 수신된 적어도 하나의 ALP 패킷 내 링크 레이어 시그널링 정보를 RoHC 패킷 플로우보다 먼저 획득할 수 있다.
즉, 상기 링크 레이어 프로세서(D55040)의 디캡슐레이션 모듈(1441)은 시그널링 PLP를 통해 수신된 적어도 하나의 ALP 패킷을 디캡슐레이션하여 링크 레이어 시그널링 정보를 획득한다. 그리고 링크 레이어 시그널링 정보에 포함된 LMT, RDT 등을 이용하여 데이터 PLP들을 통해 수신된 적어도 하나의 ALP 패킷을 디캡슐레이션하여 RoHC 패킷 플로우를 획득할 수 있다.
만일 어댑테이션 모드 1이라면 RDT로부터 컨텍스트 정보를 추출하는 과정 및 컨텍스트 정보를 이용한 패킷 변환 과정은 없다. 즉, 데이터 PLP들을 통해 수신된 ALP 패킷들로부터 획득된 RoHC 패킷 플로우는 어댑테이션 모듈(1442)을 바이패스하여 RoHC 모듈(즉, 디컴프레션 블록)(1443)로 출력된다. 상기 RoHC 모듈(1443)은 RDT에 포함된 압축 정보를 이용하여 RoHC 패킷 플로우 내 RoHC 패킷들에 대해 헤더 디컴프레션을 수행하여 헤더 압축 전 IP 패킷들로 복원한다.
만일 어댑테이션 모드 2라면, 어댑테이션 모듈(1442)은 RDT에 포함된 컨텍스트 정보를 추출하고, 추출된 컨텍스트 정보(즉, 스태틱 체인 정보)와 RoHC 패킷 플로우 내 해당 IR-DYN 패킷을 이용하여 IR 패킷을 복원한다. 복원된 IR 패킷을 포함하는 RoHC 패킷 플로우는 RoHC 모듈(1443)로 출력되고, 상기 RoHC 모듈(1443)은 RDT에서 획득한 압축 정보를 이용하여 RoHC 패킷 플로우 내 RoHC 패킷들에 대해 헤더 디컴프레션을 수행하여 헤더 압축 전 IP 패킷들로 복원한다.
만일 어댑테이션 모드 3이라면, 어댑테이션 모듈(1442)은 RDT에 포함된 컨텍스트 정보를 추출한다. 상기 컨텍스트 정보는 IR 패킷으로부터 추출된 스태틱 체인 정보와 다이나믹 체인 정보 그리고 IR-DYN 패킷으로부터 추출된 다이나믹 체인 정보를 포함한다. 상기 어댑테이션 모듈(1442)은 추출된 컨텍스트 정보와 RoHC 패킷 플로우 내 해당 압축 패킷들을 이용하여 IR 패킷와 IR-DYN 패킷을 복원한다. 복원된 IR 패킷와 IR-DYN 패킷을 포함하는 RoHC 패킷 플로우는 RoHC 모듈(1443)로 출력되고, 상기 RoHC 모듈(1443)은 RDT에서 획득한 압축 정보를 이용하여 RoHC 패킷 플로우 내 RoHC 패킷들에 대해 헤더 디컴프레션을 수행하여 헤더 압축 전 IP 패킷들로 복원한다.
상기 RoHC 모듈(1443)에서 복원된 IP 패킷들은 그대로 IP/UDP 레이어로 전송될 수도 있다.
한편, 송신기의 방송 게이트웨이(1320)의 전처리기(1321)에서 프래그먼티드 IP 패킷들을 조합하여 프래그멘테이션 적용 전 IP 패킷으로 복원하여 헤더 압축을 수행하였다면, 수신기에서는 헤더 디컴프레션에 의해 복원된 해당 IP 패킷을 복수개의 프래그먼티드 IP 패킷들로 프래그멘테이션하는 과정이 필요할 수도 있다. 프래그멘테이션의 수행 여부는 라우터 또는 스튜디오-방송 게이트웨이 간 링크가 가지는 MTU에 따라 결정되는 것을 일 실시예로 한다. 이를 위해 본 발명의 수신기는 RoHC 모듈(1443) 다음에 후처리기(post processor)(1444)를 구비하는 것을 일 실시예로 한다.
본 발명은 상기 RoHC 모듈(1443)에서 헤더 디컴프레션된 IP 패킷의 길이가 라우터 또는 스튜디오-방송 게이트웨이 간 링크가 가지는 MTU보다 크다면, 상기 후처리기(1444)는 상기 IP 패킷에 대해 프래그멘테이션을 수행하는 것을 일 실시예로 한다. 즉, 상기 IP 패킷을 2개 이상의 프래그먼트들로 자르고 각 프래그먼트 앞에 IP 헤더를 부가하여 프래그먼트 패킷들을 만든다. 만일 후처리기(1444)에서 IP 패킷에 대해 프래그멘테이션을 수행한다면, 상기 IP 패킷에 속한 복수개의 프래그먼트 패킷들의 IP 헤더 내 일부 필드 값을 변경하는 것을 일 실시예로 한다.
예를 들어, 상기 후처리기(1444)에서 IP 패킷에 프래그멘테이션을 적용하여 3개의 프래그먼트 패킷들로 나누었다고 가정하자. 그리고 첫번째 프래그먼트 패킷을 A 프래그먼트 패킷이라 하고, 두번째 프래그먼트 패킷을 B 프래그먼트 패킷이라 하며, 세번째 프래그먼트 패킷을 C 프래그먼트 패킷이라 하자.
이때 A, B, C 프래그먼트 패킷들의 각 IP 헤더 내 Identification 필드 값은 모두 동일하게 설정하고, fragment offset 필드 값은 해당 프래그먼트 패킷의 IP 패킷 내 상대 위치 값을 할당한다. 그리고 A, B, C 프래그먼트 패킷들의 각 IP 헤더 내 IP Flags 필드 중 DF 플래그는 모두 0으로 설정하여 해당 패킷들이 프래그먼트된 패킷들임을 나타낸다. 이에 더하여, A, B 프래그먼트 패킷들의 각 IP 헤더 내 IP Flags 필드 중 MF 플래그는 1로 설정하여 추가의 프래그먼트 패킷이 있음을 나타내고, C 프래그먼트 패킷의 IP 헤더 내 MF 플래그는 0으로 설정하여 마지막 프래그먼트 패킷임을 나타낸다.
만일 RoHC 모듈(1443)에서 헤더 디컴프레션된 IP 패킷에 대해 프래그멘테이션이 수행되지 않으면 상기 후처리기(1444)는 버퍼의 기능을 수행한다.
상기 후처리기(1444)를 바이패스하는 IP 패킷 또는 상기 후처리기(1444)에서 프래그멘테이션된 복수개의 프래그먼트 패킷들은 IP/UDP 레이어 프로세서(D55050)로 입력된다. 상기 IP/UDP 레이어 프로세서(D55050)는 입력되는 IP 패킷들의 각 IP 헤더를 참조하여 입력된 IP 패킷에 프래그멘테이션이 적용되었는지를 확인한다. 입력된 IP 패킷에 프래그멘테이션이 적용되었을 때 이를 원래의 IP 패킷으로 복원하는 방법은 위에서 상세히 설명하였으므로 여기서는 생략하기로 한다. 상기 IP/UDP 패킷 프로세서(D55050)는 상기 IP 패킷 복원 과정이 수행되고 나면, 하나 이상의 IP 패킷들로부터 특정 IP 패킷을 필터링하고, ALC/LCT+ 등의 애플리케이션 레이어 전송 프로토콜 패킷 형태로 출력한다.
도 33의 (a) 내지 (d)는 수신기의 링크 레이어 프로세서(1440)의 디캡슐레이션 모듈(1441)로 입력되는 ALP 패킷들의 예를 보인 것이다. 도 33의 (a) 내지 (d)의 ALP 패킷들이 디캡슐레이션 모듈(1441), 어댑테이션 모듈(1442), 및 RoHC 모듈(1443)을 순차적으로 거치면서, 디캡슐레이션, 어댑테이션, 디컴프레션 과정이 수행되면, 도 34의 (a) 내지 (d)와 같은 IP 패킷들이 복원된다.
도 35의 (b1) 내지 (b3)는 후처리기(1444)에서 도 34의 (b)의 IP 패킷에 대해 프래그멘테이션을 적용하여 3개의 프래그먼티드 IP 패킷들로 분할한 예를 보이고 있다. IP/UDP 패킷 프로세서(D55050)에서는 도 35의 (b1) 내지 (b3)의 프래그먼티드 IP 패킷들을 조합하여 도 36의 (b)와 같이 원래의 IP 패킷으로 복원할 수 있다.
한편, 지금까지 본 발명은 헤더 압축 정보와 컨텍스트 정보(어댑테이션 모드 2와 3인 경우)를 포함하는 RDT가 시그널링 PLP로 송신되고 수신되는 예를 설명하였다.
본 발명은 다른 실시예로, RDT를 2개의 타입으로 구분할 수 있다. 2개의 타입 중 하나는 catalog RDT라 명명하고, 다른 하나는 discrete RDT라 명명하기로 한다. 본 발명은 설명의 편의를 위해 catalog RDT를 제1 RDT라 명명하고, discrete RDT를 제2 RDT라 명명할 수도 있다. 또는 그 반대로 discrete RDT를 제1 RDT라 명명하고, catalog RDT를 제2 RDT라 명명할 수도 있다.
본 발명에서 catalog RDT는 하나 이상의 RoHC/ALP 스트림들을 위한 context data를 포함하는 RDT 딜리버리 타입으로 정의되며, 시그널링 PLP로 전송되는 것을 일 실시예로 한다. 그러므로 본 발명은 멀티플 ALP 스트림들을 위한 멀티플 RDT들을 제공할 수 있다. 상기 시그널링 PLP는 LMT, LLS 등도 전송하는 것을 일 실시예로 한다. 상기 catalog RDT는 수신기가 랜덤 억세스 포인트에 획득할 수 있다. 상기 catalog RDT는 상기 시그널링 PLP 대신 로버스트한 특정 PLP로 전송될 수도 있다. 즉, 상기 catalog RDT를 전송하는 PLP와 상기 catalog RDT와 관련된 RoHC 패킷 플로우를 전송하는 PLP가 다른 것을 일 실시예로 한다.
본 발명에서 discrete RDT는 그것이 지원하는 ALP 스트림 내에서 독점적으로(exclusively) 전송(carry)되는 RDT 딜리버리 타입으로 정의된다. 이러한 접근은 RFC 3095에 부합되며, 컨텍스트(context)는 항상 관련된 IP 스트림 내에서 전송(carry)된다. 즉, 상기 discrete RDT는 컨텍스트 변경(context change)에 따라 수시로 생성되며, RoHC 패킷 플로우가 전송되는 PLP로 함께 전송될 수 있다. 상기 discrete RDT는 컨텍스트가 변경되면 생성되어 즉시 전송되므로, 랜덤 억세스 포인트에 전송되지 않는 경우가 있다. 즉, 상기 discrete RDT를 전송하는 PLP와 상기 discrete RDT와 관련된 RoHC 패킷 플로우를 전송하는 PLP가 동일한 것을 일 실시예로 한다.
그리고 상기 catalog RDT의 신택스 구조와 상기 discrete RDT의 신택스 구조는 동일할 수도 있고 다를 수도 있다. 본 발명에서는 catalog RDT와 discrete RDT가 도 14의 RDT 신택스 구조를 따르는 것을 일 실시예로 한다.
또한 catalog RDT를 전송하는 ALP 패킷의 패킷 타입 필드의 값과 discrete RDT를 전송하는 ALP 패킷의 패킷 타입 필드의 값은 도 10, 도 11에서와 같이 '100'가 할당되는 것을 일 실시예로 한다.
그리고 상기 ALP 패킷의 패킷 타입 필드의 값이 '100'이면 도 11에서와 같이 해당 ALP 패킷의 헤더는 시그널링 정보를 위한 추가 헤더를 더 포함한다. 도 12는 상기 시그널링 정보를 위한 추가 헤더의 신택스 구조의 예를 보이고 있다. 도 10 내지 도 12의 상세 설명은 위에서 하였으므로, 여기서는 생략하기로 한다.
상기 catalog RDT와 discrete RDT가 동시에 전송될 때, 수신기가 채널 변경 상황이라면 수신기는 catalog RDT를 먼저 처리하는 것을 일 실시예로 한다.
상기 catalog RDT와 discrete RDT가 동시에 전송될 때, 수신기가 컨텐트 스트림을 수신하고 있는 상황이라면 수신기는 discrete RDT를 먼저 처리하는 것을 일 실시예로 한다.
그리고 이러한 동작을 수행하기 위해서는 수신기에서 catalog RDT와 discrete RDT를 식별하는 방법이 필요하다.
본 발명은 catalog RDT와 discrete RDT를 식별하는 다양한 실시예들을 제안한다.
제1 실시예는 ALP 패킷의 ALP 헤더 내 시그널링 정보를 위한 추가 헤더의 signaling_type 필드를 이용하여 식별하는 방법이다. 즉, 수신기는 시그널링 PLP로 수신되는 ALP 패킷의 패킷 타입 필드의 값이 '100'이고 해당 ALP 패킷의 시그널링 정보를 위한 추가 헤더의 signaling_type 필드 값이 0x02이면 해당 ALP 패킷의 페이로드로 딜리버리되는 테이블은 catalog RDT라고 식별한다. 그리고 수신기는 데이터 PLP로 수신되는 ALP 패킷의 패킷 타입 필드의 값이 '100'이고 해당 ALP 패킷의 시그널링 정보를 위한 추가 헤더의 signaling_type 필드 값이 0x02이면 해당 ALP 패킷의 페이로드로 딜리버리되는 테이블은 discrete RDT라고 식별한다.
제2 실시예는 ALP 패킷의 ALP 헤더 내 시그널링 정보를 위한 추가 헤더의 signaling_type_extension 필드를 이용하는 방법이다. 본 발명은 catalog RDT를 위해 상기 signaling_type_extension 필드 값으로 0x0000를 할당하고, discrete RDT를 위해 상기 signaling_type_extension 필드 값으로 0xFFFF를 할당하는 것을 일 실시예로 한다. 수신기는 ALP 패킷의 패킷 타입 필드의 값이 '100'이고 도 37에서와 같이 해당 ALP 패킷의 시그널링 정보를 위한 추가 헤더의 signaling_type_extension 필드 값이 0x0000이면 해당 ALP 패킷의 페이로드로 딜리버리되는 테이블은 catalog RDT라고 식별한다. 그리고 수신기는 ALP 패킷의 패킷 타입 필드의 값이 '100'이고 도 38에서와 같이 해당 ALP 패킷의 시그널링 정보를 위한 추가 헤더의 signaling_type_extension 필드 값이 0xFFFF이면 해당 ALP 패킷의 페이로드로 딜리버리되는 테이블은 discrete RDT라고 식별한다.
제3 실시예는 도 39에서와 같이 RDT의 컨텍스트 정보의 조합을 나타내는 context_config 필드를 이용하는 방법이다. 즉, 이 RDT 테이블에 catalog RDT를 위한 컨텍스트 정보가 있으면, 이 필드를 '0'으로 설정하는 것을 일 실시예로 한다. 그리고 context_config 필드 값이 '0'이면 해당 루프에는 context_length 필드와 catalog_RDT_context() 필드가 포함되는 것을 일 실시예로 한다.
상기 context_length 필드는 catalog_RDT_context() 필드의 길이를 나타낸다.
상기 catalog_RDT_context() 필드는 static_chain_byte ()를 반드시 포함하는 것을 일 실시예로 한다. 상기 catalog_RDT_context() 필드는 디컴프레서를 초기화하기 위해 사용되는 스태틱 또는 다이나믹 정보를 전송(convey)한다. 상기 catalog_RDT_context() 필드의 사이즈와 구조는 context profile에 따라 달라진다. 만일 해당 테이블에 static_chain_byte () 또는 dynamic_chain_byte () 바이트가 포함되면, 해당 필드는 '0x01' 또는 '0x02'로 설정될 수 있다. 해당 테이블에 static_chain_byte () 및 dynamic_chain_byte ()가 모두 포함되면, 해당 필드는 '0x03'으로 설정될 수 있다. 그리고 adaptation mode 2인 경우 dynamic_chain_byte ()를 포함하지 않으며, adaptation mode 3인 경우 dynamic_chain_byte ()를 포함할 수 있다.
제4 실시예는 도 40에서와 같이 RDT에 RDT_type 필드를 추가하는 방법이다. 상기 RDT_type 필드는 4비트가 할당되며, 해당 RDT의 타입을 지시한다. 본 발명은 도 41에서와 같이 상기 RDT_type 필드 값이 0000이면 catalog RDT로 식별하고, 00001이면 discrete RDT로 식별하는 것을 일 실시예로 한다.
전술한 장치의 내부 컴포넌트들은 메모리에 저장된 연속된 수행과정들을 실행하는 프로세서들이거나, 그 외의 하드웨어로 구성된 하드웨어 컴포넌트들일 수 있다. 이 들은 장치 내/외부에 위치할 수 있다.
전술한 모듈들은 실시예에 따라 생략되거나, 유사/동일한 동작을 수행하는 다른 모듈에 의해 대체될 수 있다.
전술한 각각의 파트, 모듈 또는 유닛은 메모리(또는 저장 유닛)에 저장된 연속된 수행과정들을 실행하는 프로세서이거나 하드웨어 파트일 수 있다. 전술한 실시예에 기술된 각 단계들은 프로세서 또는 하드웨어 파트들에 의해 수행될 수 있다. 전술한 실시예에 기술된 각 모듈/블록/유닛들은 하드웨어/프로세서로서 동작할 수 있다. 또한, 본 발명이 제시하는 방법들은 코드로서 실행될 수 있다. 이 코드는 프로세서가 읽을 수 있는 저장매체에 쓰여질 수 있고, 따라서 장치(apparatus)가 제공하는 프로세서에 의해 읽혀질 수 있다.
설명의 편의를 위하여 각 도면을 나누어 설명하였으나, 각 도면에 서술되어 있는 실시 예들을 병합하여 새로운 실시 예를 구현하도록 설계하는 것도 가능하다. 그리고, 통상의 기술자의 필요에 따라, 이전에 설명된 실시 예들을 실행하기 위한 프로그램이 기록되어 있는 컴퓨터에서 판독 가능한 기록 매체를 설계하는 것도 본 발명의 권리범위에 속한다.
본 발명에 따른 장치 및 방법은 상술한 바와 같이 설명된 실시 예들의 구성과 방법이 한정되게 적용될 수 있는 것이 아니라, 상술한 실시 예들은 다양한 변형이 이루어질 수 있도록 각 실시 예들의 전부 또는 일부가 선택적으로 조합되어 구성될 수도 있다.
한편, 본 발명이 제안하는 방법을 네트워크 디바이스에 구비된, 프로세서가 읽을 수 있는 기록매체에, 프로세서가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 프로세서가 읽을 수 있는 기록매체는 프로세서에 의해 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 프로세서가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있으며, 또한, 인터넷을 통한 전송 등과 같은 캐리어 웨이브의 형태로 구현되는 것도 포함한다. 또한, 프로세서가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 프로세서가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
또한, 이상에서는 본 발명의 바람직한 실시 예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해돼서는 안 될 것이다.
본 발명의 사상이나 범위를 벗어나지 않고 본 발명에서 다양한 변경 및 변형이 가능함은 당업자에게 이해된다. 따라서, 본 발명은 첨부된 청구항 및 그 동등 범위 내에서 제공되는 본 발명의 변경 및 변형을 포함하는 것으로 의도된다.
본 명세서에서 장치 및 방법 발명이 모두 언급되고, 장치 및 방법 발명 모두의 설명은 서로 보완하여 적용될 수 있다.
다양한 실시예가 본 발명을 실시하기 위한 최선의 형태에서 설명되었다.
본 발명은 일련의 방송 신호 제공 분야에서 이용된다.
본 발명의 사상이나 범위를 벗어나지 않고 본 발명에서 다양한 변경 및 변형이 가능함은 당업자에게 자명하다. 따라서, 본 발명은 첨부된 청구항 및 그 동등 범위 내에서 제공되는 본 발명의 변경 및 변형을 포함하는 것으로 의도된다.
1310: 스튜디오 1320: 방송 게이트웨이
1330: 트랜스미터 1321: 전처리기
1322: RoHC 모듈 1323: 어댑테이션 모듈
1324: 인캡슐레이션 모듈

Claims (12)

  1. 방송 데이터를 포함하는 IP (Internet Protocol) 패킷들을 생성하고, 상기 IP 패킷들 중 적어도 하나의 IP 패킷에 프래그멘테이션을 수행하여 복수의 프래그먼티드 IP 패킷들을 생성하는 IP 레이어 프로세싱 단계; 및
    상기 복수의 프래그먼티드 IP 패킷들과 상기 프래그멘테이션이 수행되지 않은 IP 패킷들을 링크 레이어 프로세싱하는 링크 레이어 프로세싱 단계를 포함하며,
    상기 링크 레이어 프로세싱 단계는,
    상기 복수의 프래그먼티드 IP 패킷들을 조합하여 상기 적어도 하나의 IP 패킷으로 복원하는 제1 링크 레이어 프로세싱 단계,
    상기 복원된 적어도 하나의 IP 패킷을 포함하는 IP 패킷들에 RoHC (Robust Header Compression) 스킴을 적용하여 헤더 압축을 수행하여 RoHC 패킷 스트림을 생성하는 제2 링크 레이어 프로세싱 단계,
    상기 RoHC 패킷 스트림으로부터 컨텍스트 정보를 추출하고, 상기 추출된 컨텍스트 정보와 상기 컨텍스트 정보의 조합을 지시하는 컨텍스트 컨피규레이션 정보를 포함하는 RDT (RoHC-U Description Table)를 생성하며, 상기 컨텍스트 정보는 적어도 스태틱 정보 또는 다이나믹 정보를 포함하고, 상기 RDT는 딜리버리 타입에 따라 catalog RDT와 discrete RDT로 구분되며, 상기 RDT는 상기 RDT에 대응하는 피지컬 레이어 파이프(PLP)를 지시하는 정보를 더 포함하는 제3 링크 레이어 프로세싱 단계, 및
    상기 컨텍스트 정보가 추출된 RoHC 패킷 스트림과 상기 RDT를 링크 레이어 패킷들로 인캡슐레이션하여 피지컬 레이어 프로세싱을 위해 전송하는 제4 링크 레이어 프로세싱 단계를 포함하는 것을 특징으로 하는 방송 송신 방법.
  2. 제 1 항에 있어서, 상기 RDT는 상기 RoHC 패킷 스트림의 컨텍스트 식별 정보와 상기 IP 패킷들을 포함하는 IP 스트림을 압축하기 위해 사용된 프로토콜들의 범위를 지시하는 프로파일 정보를 더 포함하는 것을 특징으로 하는 방송 송신 방법.
  3. 제 1 항에 있어서, 상기 IP 레이어 프로세싱 단계는
    상기 적어도 하나의 IP 패킷의 길이가 최대 전송 단위(MTU)보다 크면, 상기 적어도 하나의 IP 패킷을 복수개의 프래그먼트로 나누고, 각 프래그먼트에 IP 헤더를 부가하여 복수의 프래그먼티드 IP 패킷들을 생성하는 것을 특징으로 하는 방송 송신 방법.
  4. 제 1 항에 있어서, 상기 제1 링크 레이어 프로세싱 단계는
    입력되는 IP 패킷의 IP 헤더 내 적어도 DF (Don't Fragment) 플래그, MF (More Fragment) 플래그, Identification 필드, 및 fragment offset 필드를 기반으로 복수의 프래그먼티드 IP 패킷들을 수집하고, 수집된 복수의 프래그먼티드 IP 패킷들을 조합하여 상기 적어도 하나의 IP 패킷으로 복원하는 것을 특징으로 하는 방송 송신 방법.
  5. 제 1 항에 있어서,
    상기 컨텍스트 정보가 상기 스태틱 정보 또는 상기 다이나믹 정보를 포함하면, 상기 컨텍스트 컨피규레이션 정보의 값은 각각 1 또는 2로 설정되는 것을 특징으로 하는 방송 송신 방법.
  6. 제 1 항에 있어서,
    상기 컨텍스트 정보가 상기 스태틱 정보와 상기 다이나믹 정보를 모두 포함하면, 상기 컨텍스트 컨피규레이션 정보의 값은 3으로 설정되는 것을 특징으로 하는 방송 송신 방법.
  7. 방송 데이터를 포함하는 IP (Internet Protocol) 패킷들을 생성하고, 상기 IP 패킷들 중 적어도 하나의 IP 패킷에 프래그멘테이션을 수행하여 복수의 프래그먼티드 IP 패킷들을 생성하는 IP 레이어 프로세서; 및
    상기 복수의 프래그먼티드 IP 패킷들과 상기 프래그멘테이션이 수행되지 않은 IP 패킷들을 링크 레이어 프로세싱하는 링크 레이어 프로세서;를 포함하고,
    상기 링크 레이어 프로세서는,
    상기 복수의 프래그먼티드 IP 패킷들을 조합하여 상기 적어도 하나의 IP 패킷으로 복원하는 프리-프로세싱부,
    상기 복원된 적어도 하나의 IP 패킷을 포함하는 IP 패킷들에 RoHC (Robust Header Compression) 스킴을 적용하여 헤더 압축을 수행하여 RoHC 패킷 스트림을 생성하는 RoHC부,
    상기 RoHC 패킷 스트림으로부터 컨텍스트 정보를 추출하고, 상기 추출된 컨텍스트 정보와 상기 컨텍스트 정보의 조합을 지시하는 컨텍스트 컨피규레이션 정보를 포함하는 RDT (RoHC-U Description Table)를 생성하며, 상기 컨텍스트 정보는 적어도 스태틱 정보 또는 다이나믹 정보를 포함하고, 상기 RDT는 딜리버리 타입에 따라 catalog RDT와 discrete RDT로 구분되며, 상기 RDT는 상기 RDT에 대응하는 피지컬 레이어 파이프(PLP)를 지시하는 정보를 더 포함하는 어댑테이션부, 및
    상기 컨텍스트 정보가 추출된 RoHC 패킷 스트림과 상기 RDT를 링크 레이어 패킷들로 인캡슐레이션하여 피지컬 레이어 프로세싱을 위해 전송하는 인캡슐레이션부를 포함하는 것을 특징으로 하는 방송 송신 장치.
  8. 제 7 항에 있어서, 상기 RDT는 상기 RoHC 패킷 스트림의 컨텍스트 식별 정보와 상기 IP 패킷들을 포함하는 IP 스트림을 압축하기 위해 사용된 프로토콜들의 범위를 지시하는 프로파일 정보를 더 포함하는 것을 특징으로 하는 방송 송신 장치.
  9. 제 7 항에 있어서, 상기 IP 레이어 프로세서는
    상기 적어도 하나의 IP 패킷의 길이가 최대 전송 단위(MTU)보다 크면, 상기 적어도 하나의 IP 패킷을 복수개의 프래그먼트로 나누고, 각 프래그먼트에 IP 헤더를 부가하여 복수개의 프래그먼티드 IP 패킷들을 생성하는 것을 특징으로 하는 방송 송신 장치.
  10. 제 7 항에 있어서, 상기 프리-프로세싱부는
    입력되는 IP 패킷의 IP 헤더 내 적어도 DF (Don't Fragment) 플래그, MF (More Fragment) 플래그, Identification 필드, 및 fragment offset 필드를 기반으로 복수의 프래그먼티드 IP 패킷들을 수집하고, 수집된 복수의 프래그먼티드 IP 패킷들을 조합하여 상기 적어도 하나의 IP 패킷으로 복원하는 것을 특징으로 하는 방송 송신 장치.
  11. 제 7 항에 있어서,
    상기 컨텍스트 정보가 상기 스태틱 정보 또는 상기 다이나믹 정보를 포함하면, 상기 컨텍스트 컨피규레이션 정보의 값은 각각 1 또는 2로 설정되는 것을 특징으로 하는 방송 송신 장치.
  12. 제 7 항에 있어서,
    상기 컨텍스트 정보가 상기 스태틱 정보와 상기 다이나믹 정보를 모두 포함하면, 상기 컨텍스트 컨피규레이션 정보의 값은 3으로 설정되는 것을 특징으로 하는 방송 송신 장치.
KR1020227018433A 2017-11-09 2018-11-09 방송 송신 장치, 방송 송신 방법, 방송 수신 장치 및 방송 수신 방법 KR102519917B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020237011562A KR102640674B1 (ko) 2017-11-09 2018-11-09 방송 송신 장치, 방송 송신 방법, 방송 수신 장치 및 방송 수신 방법

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US201762584109P 2017-11-09 2017-11-09
US62/584,109 2017-11-09
US201862614915P 2018-01-08 2018-01-08
US62/614,915 2018-01-08
PCT/KR2018/013655 WO2019093829A1 (ko) 2017-11-09 2018-11-09 방송 송신 장치, 방송 송신 방법, 방송 수신 장치 및 방송 수신 방법
KR1020227002563A KR102418146B1 (ko) 2017-11-09 2018-11-09 방송 송신 장치, 방송 송신 방법, 방송 수신 장치 및 방송 수신 방법

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020227002563A Division KR102418146B1 (ko) 2017-11-09 2018-11-09 방송 송신 장치, 방송 송신 방법, 방송 수신 장치 및 방송 수신 방법

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020237011562A Division KR102640674B1 (ko) 2017-11-09 2018-11-09 방송 송신 장치, 방송 송신 방법, 방송 수신 장치 및 방송 수신 방법

Publications (2)

Publication Number Publication Date
KR20220080021A KR20220080021A (ko) 2022-06-14
KR102519917B1 true KR102519917B1 (ko) 2023-04-10

Family

ID=66439009

Family Applications (5)

Application Number Title Priority Date Filing Date
KR1020237011562A KR102640674B1 (ko) 2017-11-09 2018-11-09 방송 송신 장치, 방송 송신 방법, 방송 수신 장치 및 방송 수신 방법
KR1020227002563A KR102418146B1 (ko) 2017-11-09 2018-11-09 방송 송신 장치, 방송 송신 방법, 방송 수신 장치 및 방송 수신 방법
KR1020227018433A KR102519917B1 (ko) 2017-11-09 2018-11-09 방송 송신 장치, 방송 송신 방법, 방송 수신 장치 및 방송 수신 방법
KR1020217024616A KR102356784B1 (ko) 2017-11-09 2018-11-09 방송 송신 장치, 방송 송신 방법, 방송 수신 장치 및 방송 수신 방법
KR1020207000610A KR102288089B1 (ko) 2017-11-09 2018-11-09 방송 송신 장치, 방송 송신 방법, 방송 수신 장치 및 방송 수신 방법

Family Applications Before (2)

Application Number Title Priority Date Filing Date
KR1020237011562A KR102640674B1 (ko) 2017-11-09 2018-11-09 방송 송신 장치, 방송 송신 방법, 방송 수신 장치 및 방송 수신 방법
KR1020227002563A KR102418146B1 (ko) 2017-11-09 2018-11-09 방송 송신 장치, 방송 송신 방법, 방송 수신 장치 및 방송 수신 방법

Family Applications After (2)

Application Number Title Priority Date Filing Date
KR1020217024616A KR102356784B1 (ko) 2017-11-09 2018-11-09 방송 송신 장치, 방송 송신 방법, 방송 수신 장치 및 방송 수신 방법
KR1020207000610A KR102288089B1 (ko) 2017-11-09 2018-11-09 방송 송신 장치, 방송 송신 방법, 방송 수신 장치 및 방송 수신 방법

Country Status (5)

Country Link
US (2) US11277501B2 (ko)
KR (5) KR102640674B1 (ko)
CN (1) CN111373759B (ko)
MX (1) MX2020004441A (ko)
WO (1) WO2019093829A1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020165229A1 (en) * 2019-02-14 2020-08-20 Sony Corporation Header compression adaptive to quality of radio channel
JP2021118467A (ja) * 2020-01-28 2021-08-10 ソニーセミコンダクタソリューションズ株式会社 情報処理装置、情報処理方法、並びにプログラム
US11924260B2 (en) * 2020-07-09 2024-03-05 Triveni Digital Inc. Secure television distribution over heterogeneous networks
US11343715B1 (en) * 2020-08-23 2022-05-24 Rockwell Collins, Inc. Header compression for network
WO2022239983A1 (ko) * 2021-05-12 2022-11-17 엘지전자 주식회사 멀티캐스트 신호 처리 방법 및 장치
WO2023003396A1 (ko) * 2021-07-22 2023-01-26 엘지전자 주식회사 멀티캐스트 신호 처리 방법 및 장치

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160219133A1 (en) 2014-03-03 2016-07-28 Lg Electronics Inc. Apparatus and methods for transmitting/receiving a broadcast signal
US20160337487A1 (en) 2014-04-30 2016-11-17 Lg Electronics Inc. Apparatus for transmitting broadcast signal, apparatus for receiving broadcast signal, method for transmitting broadcast signal and method for receiving broadcast signal

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030081582A1 (en) 2001-10-25 2003-05-01 Nikhil Jain Aggregating multiple wireless communication channels for high data rate transfers
KR101366254B1 (ko) 2007-08-03 2014-02-20 삼성전자주식회사 방송망을 통하여 전송되는 ip 패킷의 압축 및 복원 방법
JP2009278364A (ja) * 2008-05-14 2009-11-26 Canon Inc パケット受信装置及びその処理方法
US9019990B2 (en) * 2012-07-13 2015-04-28 Telefonaktiebolaget L M Ericsson (Publ) Using encapsulation headers to indicate internet protocol packet fragmentation in cellular networks
KR20170010071A (ko) * 2013-07-11 2017-01-25 엘지전자 주식회사 방송신호 송신방법, 방송신호 수신방법, 방송신호 송신장치, 방송신호 수신장치
US9356879B2 (en) 2014-05-22 2016-05-31 Dell Products L.P. Optimized path maximum transmission unit discovery
WO2015199468A1 (ko) * 2014-06-26 2015-12-30 엘지전자 주식회사 방송 신호 송/수신 처리 방법 및 장치
JP6359680B2 (ja) * 2014-10-20 2018-07-18 エルジー エレクトロニクス インコーポレイティド 放送信号送信装置、放送信号受信装置、放送信号送信方法、及び放送信号受信方法
KR101764637B1 (ko) 2014-12-05 2017-08-14 엘지전자 주식회사 방송 신호 송신 방법, 방송 신호 송신 장치, 방송 신호 수신 방법 및 방송 신호 수신 장치
JP6301497B2 (ja) * 2014-12-10 2018-03-28 エルジー エレクトロニクス インコーポレイティド 放送信号伝送装置、及び放送信号伝送方法
WO2016148497A1 (ko) * 2015-03-16 2016-09-22 엘지전자 주식회사 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법
WO2016153241A1 (ko) * 2015-03-23 2016-09-29 엘지전자 주식회사 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160219133A1 (en) 2014-03-03 2016-07-28 Lg Electronics Inc. Apparatus and methods for transmitting/receiving a broadcast signal
US20160337487A1 (en) 2014-04-30 2016-11-17 Lg Electronics Inc. Apparatus for transmitting broadcast signal, apparatus for receiving broadcast signal, method for transmitting broadcast signal and method for receiving broadcast signal

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
ATSC Standard: Link-Layer Protocol A/330, 2019.05.03.

Also Published As

Publication number Publication date
US20220159107A1 (en) 2022-05-19
US20200336572A1 (en) 2020-10-22
CN111373759A (zh) 2020-07-03
KR102356784B1 (ko) 2022-02-08
US11799990B2 (en) 2023-10-24
CN111373759B (zh) 2022-10-21
WO2019093829A1 (ko) 2019-05-16
US11277501B2 (en) 2022-03-15
KR20200015732A (ko) 2020-02-12
KR20220017513A (ko) 2022-02-11
KR102418146B1 (ko) 2022-07-07
KR20210099200A (ko) 2021-08-11
MX2020004441A (es) 2020-08-06
KR20230049775A (ko) 2023-04-13
KR102288089B1 (ko) 2021-08-10
KR20220080021A (ko) 2022-06-14
KR102640674B1 (ko) 2024-02-27

Similar Documents

Publication Publication Date Title
KR102519917B1 (ko) 방송 송신 장치, 방송 송신 방법, 방송 수신 장치 및 방송 수신 방법
US11784860B2 (en) Broadcast signal transmitting/receiving device and method
KR102603460B1 (ko) 방송 신호 송신 장치, 방송 신호 송신 방법, 방송 신호 수신 장치 및 방송 수신 신호 방법
US11271791B2 (en) Method and apparatus for transmitting/receiving a broadcast signal
KR20160107211A (ko) 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법
US11310770B2 (en) Broadcast signal transmission/reception device and method

Legal Events

Date Code Title Description
A107 Divisional application of patent
E701 Decision to grant or registration of patent right
A107 Divisional application of patent
GRNT Written decision to grant