KR102424840B1 - 송신 장치, 수신 장치 및 그 신호 처리 방법 - Google Patents

송신 장치, 수신 장치 및 그 신호 처리 방법 Download PDF

Info

Publication number
KR102424840B1
KR102424840B1 KR1020210032103A KR20210032103A KR102424840B1 KR 102424840 B1 KR102424840 B1 KR 102424840B1 KR 1020210032103 A KR1020210032103 A KR 1020210032103A KR 20210032103 A KR20210032103 A KR 20210032103A KR 102424840 B1 KR102424840 B1 KR 102424840B1
Authority
KR
South Korea
Prior art keywords
field
packet
header
value
length
Prior art date
Application number
KR1020210032103A
Other languages
English (en)
Other versions
KR20210030336A (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
Priority claimed from KR1020150114331A external-priority patent/KR20160052313A/ko
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Publication of KR20210030336A publication Critical patent/KR20210030336A/ko
Application granted granted Critical
Publication of KR102424840B1 publication Critical patent/KR102424840B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • 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/04Protocols for data compression, e.g. ROHC
    • 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
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/321Interlayer communication protocols or service data unit [SDU] definitions; Interfaces between layers
    • 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/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/324Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the data link layer [OSI layer 2], e.g. HDLC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2212/00Encapsulation of packets
    • 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/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/323Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the physical layer [OSI layer 1]

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Multimedia (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Radar Systems Or Details Thereof (AREA)

Abstract

송신 장치가 개시된다. 송신 장치는, 입력 스트림에 기초하여, 헤더 및 페이로드를 포함하는 패킷을 생성하는 패킷 생성부 및, 생성된 패킷을 신호 처리하는 신호 처리부를 포함하며, 헤더를 구성하는 베이스 헤더는, 입력 스트림의 패킷 타입을 나타내는 제1 필드 및 패킷이 하나의 온전한 입력 패킷 하나의 온전한 입력 패킷(a single, complete input packet)을 전송함을 나타내는 제1 값 또는, 패킷이 입력 패킷의 세그먼트를 전송하거나 복수의 입력 패킷을 전송함을 나타내는 제2 값으로 설정되는 제2 필드를 포함하며, 제2 필드가 제1 값으로 설정되면, 베이스 헤더는 추가 헤더가 존재하지 않음을 나타내는 제3 값 또는 추가 헤더가 존재함을 나타내는 제4 값으로 설정되는 제3필드를 포함하며, 제3 필드가 제4 값으로 설정되면, 추가 헤더는, 옵션 헤더에 서브 스트림 식별자가 존재하는지 여부를 나타내는 제4 필드를 포함하며, 제4 필드가 옵션 헤더에 서브 스트림 식별자가 존재함을 나타내는 값으로 설정되면, 옵션 헤더는, 서브 스트림 식별자를 나타내는 제5 필드를 포함한다.

Description

송신 장치, 수신 장치 및 그 신호 처리 방법 { TRANSMITTING APPARATUS AND RECEIVING APPARATUS AND SIGNAL PROCESSING METHOD THEREOF}
본 발명은 송신 장치, 수신 장치 및 그 신호 처리 방법에 관한 것으로, 더욱 상세하게는 데이터를 적어도 하나의 신호 처리 경로에 매핑시켜 전송하는 송신 장치, 수신 장치 및 그 신호 처리 방법에 관한 것이다.
21세기 정보화 사회에서 방송 통신 서비스는 본격적인 디지털화, 다채널화, 광대역화, 고품질화의 시대를 맞이하고 있다. 특히 최근에 고화질 디지털 TV 및 PMP, 휴대방송 기기 보급이 확대됨에 따라 디지털 방송 서비스도 다양한 수신방식 지원에 대한 요구가 증대되고 있다. 또한 방송망을 통한 전통적으로 사용된 MPEG2-TS 패킷 뿐만이 아닌 인터넷 프로토콜 기반의 패킷으로 구성된 다양한 포켓의 데이터 전송에 대한 요구도 증대되고 있다.
이러한 요구에 따라 표준 그룹에서는 다양한 표준을 제정하여, 사용자의 니즈를 만족시킬 수 있는 다양한 서비스를 제공하고 있는 실정에서, 범용적인 데이터를 사용하여 보다 우수한 성능을 통해 보다 나은 서비스를 제공하기 위한 방안의 모색이 요청된다.
본 발명은 상술한 필요성에 따라 안출된 것으로, 본 발명의 목적은 다양한 타입의 데이터를 전송하기에 적합한 포맷을 갖는 패킷을 생성하는 송신 장치, 수신 장치 및 그 신호 처리 방법을 제공함에 있다.
이상과 같은 목적을 달성하기 위한 일 실시 예에 따르면 송신 장치는, 입력된 스트림에 기초하여, 헤더 및 페이로드를 포함하는 패킷을 생성하는 패킷 생성부; 및 상기 생성된 패킷을 신호 처리하는 신호 처리부;를 포함하며, 상기 헤더를 구성하는 베이스 헤더는, 상기 입력 스트림의 패킷 타입을 나타내는 제1 필드 및 상기 패킷이 하나의 온전한 입력 패킷 하나의 온전한 입력 패킷(a single, complete input packet)을 전송함을 나타내는 제1 값 또는, 상기 패킷이 입력 패킷의 세그먼트를 전송하거나 복수의 입력 패킷을 전송함을 나타내는 제2 값으로 설정되는 제2 필드를 포함하며, 상기 제2 필드가 상기 제1 값으로 설정되면, 상기 베이스 헤더는 추가 헤더가 존재하지 않음을 나타내는 제3 값 또는 추가 헤더가 존재함을 나타내는 제4 값으로 설정되는 제3필드를 포함하며, 상기 제3 필드가 제4 값으로 설정되면, 상기 추가 헤더는, 옵션 헤더에 서브 스트림 식별자가 존재하는지 여부를 나타내는 제4 필드를 포함하며, 상기 제4 필드가 상기 옵션 헤더에 상기 서브 스트림 식별자가 존재함을 나타내는 값으로 설정되면, 상기 옵션 헤더는, 상기 서브 스트림 식별자를 나타내는 제5 필드를 포함한다.
여기서, 상기 서브 스트림 식별자는, 다수의 서비스를 전송하는 패킷에서 특정 서비스에 대응되는 서브 스트림을 포함하는 특정 패킷을 필터링하기 위해 이용된다.
*또한, 제3 필드가 상기 제4 값으로 설정되면, 상기 베이스 헤더는 페이로드 길이의 LSB(least significant bits)를 나타내는 필드를 더 포함하며, 추가 헤더는 페이로드 길이의 MSB(most significant bits)를 나타내는 필드를 포함한다.
여기서, 상기 제4 값은, 페이로드 길이가 2048 바이트 미만임을 추가적으로 나타낸다.
또한, 상기 제3 필드가 상기 제4 값으로 설정되면 상기 추가 헤더는 상기 추가 헤더 이후에 확장 헤더가 존재하는지 여부를 나타내는 제6 필드를 더 포함한다.
또한, 상기 제2 필드가 상기 제2 값으로 설정되면, 상기 베이스 헤더는, 상기 패킷의 페이로드가 입력 패킷의 세그먼트를 전송하며 상기 추가 헤더가 존재함을 나타내는 제5 값 또는 상기 패킷의 페이로드가 복수의 입력 패킷을 전송하며 상기 추가 헤더가 존재함을 나타내는 제6 값으로 설정되는 제7 필드를 더 포함한다.
또한, 상기 제7 필드가 상기 제5 값 또는 상기 제6 값으로 설정되면, 상기 베이스 헤더는, 페이로드 길이의 LSB를 나타내는 필드를 더 포함한다.
또한, 상기 제7 필드가 상기 제5 값으로 설정되면, 상기 추가 헤더는, 상기 패킷에서 전송되는 세그먼트의 식별자를 나타내는 필드, 상기 패킷이 입력 패킷의 마지막 세그먼트를 전송하는지 여부를 나타내는 필드 및 상기 추가 헤더 이후에 확장 헤더가 존재하는지 여부를 나타내는 필드를 포함한다.
또한, 상기 제4 필드가 상기 제6 값으로 설정되면, 상기 추가 헤더는, 페이로드 길이의 MSB(most significant bits)를 나타내는 필드, 상기 패킷에서 전송되는 입력 패킷의 개수를 나타내는 필드 및, 상기 추가 헤더 이후에 확장 헤더가 존재하는지 여부를 나타내는 필드를 포함한다.
여기서, 상기 제1 필드는, IPv4 패킷, 압축된 IP 패킷, MPEG-2 전송 스트림 및 링크 레이어 시그널링 패킷 중 하나의 패킷 타입을 나타낸다.
한편, 본 발명의 일 실시 예에 따른 송신 장치의 신호 처리 방법은, 입력된 스트림에 기초하여, 헤더 및 페이로드를 포함하는 패킷을 생성하는 단계 및, 상기 생성된 패킷을 신호 처리하는 단계를 포함하며, 상기 헤더를 구성하는 베이스 헤더는, 상기 입력 스트림의 패킷 타입을 나타내는 제1 필드 및 상기 패킷이 하나의 온전한 입력 패킷 하나의 온전한 입력 패킷(a single, complete input packet)을 전송함을 나타내는 제1 값 또는, 상기 패킷이 입력 패킷의 세그먼트를 전송하거나 복수의 입력 패킷을 전송함을 나타내는 제2 값으로 설정되는 제2 필드를 포함하며, 상기 제2 필드가 상기 제1 값으로 설정되면, 상기 베이스 헤더는 추가 헤더가 존재하지 않음을 나타내는 제3 값 또는 추가 헤더가 존재함을 나타내는 제4 값으로 설정되는 제3필드를 포함하며, 상기 제3 필드가 제4 값으로 설정되면, 상기 추가 헤더는, 옵션 헤더에 서브 스트림 식별자가 존재하는지 여부를 나타내는 제4 필드를 포함하며, 상기 제4 필드가 상기 옵션 헤더에 상기 서브 스트림 식별자가 존재함을 나타내는 값으로 설정되면, 상기 옵션 헤더는, 상기 서브 스트림 식별자를 나타내는 제5 필드를 포함한다.
상술한 바와 같이 본 발명의 다양한 실시 예에 따르면, 입력 스트림을 효율적으로 물리적 계층에 매핑할 수 있으므로 데이터 처리 효율을 높일 수 있게 된다.
도 1은 본 발명의 일 실시 예에 따른 송신 시스템의 계층적 구조를 설명하기 위한 도면이다.
도 2는 본 발명의 실시 예에 따른 방송 링크 계층(1400)의 개략적 구성을 설명하기 위한 도면이다.
도 3a는 본 발명의 일 실시 예에 따른 송신 시스템(또는 송신 장치)의 개략적 구성을 설명하기 위한 도면이다.
도 3b 및 도 3c는 본 발명의 일 실시 예에 따른 멀티플렉싱 방법을 설명하기 위한 도면들이다.
도 4 내지 도 5b는 도 3a에 도시된 Input Formatting 블럭의 세부 구성을 나타내는 블럭도이다.
도 6은 본 발명의 일 실시 예에 따른 송신 장치의 구성을 나타낸 블럭도이다.
도 7은 본 발명의 일 실시 예에 따른 ALP 패킷 구조를 나타내는 도면이다.
도 8은 본 발명의 일 실시 예에 따른 ALP 패킷의 베이스 헤더 구조를 설명하기 위한 도면이다.
도 9 내지 도 11은 본 발명의 다양한 실시 예에 따른 추가 헤더 구조를 설명하기 위한 도면이다.
도 12는 본 발명의 실시 예에 따른 옵션 헤더 구조를 설명하기 위한 도면이다.
도 13은 본 발명의 다른 실시 예에 따른 송신 장치의 구성을 나타내는 블록도이다.
도 14는 본 발명의 일 실시 예에 따른 프레임 생성부의 상세한 구성을 나타낸 블럭도이다.
도 15는 본 발명의 일 실시 예에 따른 ALP 패킷, 베이스밴드 패킷 및 스크램블된 베이스밴드 패킷을 나타낸 도면이다.
도 16 내지 도 33은 본 발명의 다양한 실시 예에 따른 ALP 패킷의 헤더 구조를 나타내는 도면이다.
도 34는 본 발명의 일 실시 예에 따른 송신 장치의 신호 처리 방법을 설명하기 위한 흐름도이다.
도 35a는 본 발명의 일 실시 예에 따른 수신 장치의 구성을 나타낸 블록도이다.
도 35b는 본 발명의 일 실시 예에 따른 신호 처리부를 구체적으로 설명하기 위한 블록도이다.
도 36은 본 발명의 일 실시 예에 따른 수신기의 구성을 나타낸 블록도이다.
도 37는 도 36의 복조기를 본 발명의 일 실시 예에 따라 좀 더 자세히 도시한 블록도이다.
도 38은 본 발명의 일 실시 예에 따른 사용자가 서비스를 선택한 시점부터 실제 선택된 서비스가 재생되기까지의 수신기의 동작을 간략하게 나타낸 흐름도이다.
이하, 본 발명의 다양한 실시 예를 첨부된 도면을 참조하여 상세히 설명한다.
본 발명의 일 실시 예에서 제안하는 장치 및 방법은 디지털 멀티미디어 방송(digital multimedia broadcasting: DMB, 이하 ‘DMB’라 칭하기로한다) 서비스와, 휴대용 디지털 비디오 방송(digital video broadcastinghandheld:DVP-H, 이하 ‘DVP-H’라 칭하기로 한다), 및 모바일/휴대용 진화된 텔레비젼 시스템 협회(ATSC-M/H: advanced television systems committeemobile/handheld: ATSC-M/H, 이하 ‘ATSC-M/H’라 칭하기로 한다) 서비스 등과 같은 모바일 방송 서비스와, 인터넷 프로토콜 텔레비젼(internet protocol television: IPTV, 이하 ‘IPTV’라 칭하기로 한다) 서비스와 같은 디지털 비디오 방송 시스템과, 엠펙 미디어 트랜스포트(MPEG(moving picture experts group) media transport: MMT, 이하 ‘MMT’라 칭하기로 한다) 시스템과, 진화된 패킷 시스템(evolved packet system: EPS, 이하 ‘EPS’라 칭하기로 한다)과, 롱-텀 에볼루션(long-term evolution: LTE, 이하 ‘LTE’라 칭하기로 한다) 이동 통신 시스템과, 롱-텀 에볼루션-어드밴스드(long-term evolution-advanced: LTE-A, 이하 ‘LTE-A’라 칭하기로 한다) 이동 통신 시스템과, 고속 하향 링크 패킷 접속(high speed downlink packet access: HSDPA, 이하 ‘HSDPA’라 칭하기로 한다) 이동 통신 시스템과, 고속 상향 링크 패킷 접속(high speed uplink packet access: HSUPA,이하 ‘HSUPA’라 칭하기로 한다) 이동 통신 시스템과, 3세대 프로젝트 파트너쉽2(3rd generation project partnership 2: 3GPP2, 이하 ‘3GPP2’라 칭하기로 한다)의 고속 레이트 패킷 데이터(high rate packet data: HRPD, 이하 ‘HRPD’라 칭하기로 한다) 이동 통신 시스템과, 3GPP2의 광대역 부호 분할 다중 접속
(wideband code division multiple access: WCDMA, 이하 ‘WCDMA’라 칭하기로 한다) 이동 통신 시스템과, 3GPP2의 부호 분할 다중 접속(code division multiple access: CDMA, 이하 ‘CDMA’라 칭하기로 한다) 이동 통신 시스템과, 국제 전기 전자 기술자 협회(institute of electrical and electronics engineers: IEEE, 이하‘IEEE’라 칭하기로 한다) 802.16m 통신 시스템 등과 같은 통신 시스템과, 모바일 인터넷 프로토콜(mobile internet protocol: Mobile IP, 이하 ‘Mobile IP ‘라 칭하기로 한다) 시스템 등과 같은 다양한 통신 시스템들에 적용 가능함은 물론이다
도 1은 본 발명의 일 실시 예에 따른 송신 시스템의 계층적 구조를 설명하기 위한 도면이다.
도 1을 참조하면, 서비스는 서비스를 구성하는 미디어 데이터(1000)와 수신기에서 미디어 데이터를 획득하고 소비하는데 필요한 정보들을 전달하기 위한 시그널링(1050)을 포함한다. 미디어 데이터는 전송에 앞서 전송에 적합한 형태로 캡슐화될 수 있다. 캡슐화 방식은 ISO/IEC 23008-1 MPEG Media Transport (MMT)에 정의된 Media Processing Unit(MPU)나 ISO/IEC 23009-1 Dynamic Adaptive Streaming over HTTP (DASH)에 정의된 DASH 세그먼트 형식을 따를 수 있다. 미디어 데이터(1000) 및 시그널링(1050)은 응용 계층 프로토콜에 의하여 패킷화된다.
도 1은 응용 계층 프로토콜로 MMT에 정의된 MMT 프로토콜(MMTP)(1110)과 Real-Time Object Delivery over Unidirectional Transport(ROUTE) 프로토콜(1120)을 사용하는 경우를 도시하였다. 이 때 수신기에서 특정 서비스가 어떤 응용 계층 프로토콜로 전송되었는지 알기 위해서는 응용 계층 프로토콜과는 독립적인 방법으로 서비스가 전송되는 응용 프로토콜에 대한 정보를 알려주기 위한 방법이 요구된다.
도 1에 도시한 Service List Table (SLT)(1150)는 상술한 목적을 만족하기 위한 시그널링 방식으로 서비스에 대한 정보를 테이블로 구성하고 이를 패킷화한다. SLT에 대한 자세한 내용을 후술하기로 한다.상술한 패킷화된미디어 데이터와 SLT를 포함하는 시그널링은 User Datagram Protocol (UDP)(1200)과 Internet Protocol (IP)(1300)을 거쳐서 방송 링크 계층(1400)으로 전달된다. 방송 링크 계층의 예로 ATSC 3.0에서 정의한 ATSC 3.0 Link-Layer Protocol(ALP)가 있다. ALP 프로토콜은 IP 패킷을 입력으로 ALP 패킷을 생성하고 ALP 패킷을 방송 물리 계층 (1500)으로 전달한다.
다만, 후술할 도 2에 따르면 방송 링크 계층(1400)은 미디어 데이터나 시그널링을 포함하는 IP 패킷(1300)만을 입력으로 사용하는 것은 아니며 MPEG2-TS 패킷이나 일반적인 형태의 패킷화된 데이터를 입력으로 사용할 수 있음에 유의한다. 이 때 방송 링크 계층의 제어에 필요한 시그널링 정보도 ALP 패킷의 형태로 방송 물리 계층(1500)으로 전달된다.
방송 물리 계층(1500)은 ALP 패킷을 입력으로 신호 처리하여 물리 계층 프레임을 생성하고 물리 계층 프레임을 무선신호로 변환하여 송출한다. 이 때 방송 물리 계층(1500)은 적어도 하나의 신호 처리 경로를 가진다. 신호 처리 경로의 예로 DVB-T2나 ATSC 3.0의 PLP (Physical Layer Pipe)를 들 수 있으며, PLP로 하나 이상의 서비스 전체를 맵핑되거나 서비스의 일부가 맵핑될 수 있다.
도 2는 본 발명의 실시 예에 따른 방송 링크 계층(1400)의 개략적 구성을 설명하기 위한 도면이다.
도 2를 참조하면, 방송 링크 계층(1400)의 입력은 IP 패킷(1300)을 포함하며, 링크 계층 시그널링(1310), MPEG2-TS 패킷(1320) 및 기타 패킷화된 데이터(1330)를 더 포함 할 수 있다.
입력 데이터들은 ALP 패킷화(1450) 이전에 입력 데이터의 종류에 따른 부가 신호 처리 과정을 거칠 수 있다. 부가 신호 처리 과정의 예로,IP 패킷(1300)의 경우에는 IP 헤더 압축 과정(1410)을 거칠 수 있으며, MPEG2-TS 패킷의 경우에는 헤더 축소 과정(1420)을 거칠 수 있다. ALP 패킷화 과정에서 입력 패킷들은 분할 및 병합 과정을 거칠 수 있다.
도 3a는 본 발명의 일 실시 예에 따른 송신 시스템(또는 송신 장치)의 개략적 구성을 설명하기 위한 도면이다. 도 3a에 따르면, 본 발명의 일 실시 예에 따른 송신 시스템(10000)은 Input Formatting 블럭(또는 파트)(11000, 11000-1), BICM(Bit Interleaved and Coded Modulation) 블럭(12000, 12000-1), Framing/Interleaving 블럭(13000, 13000-1) 및 Waveform Generation 블럭(14000, 14000-1)를 포함할 수 있다.
Input Formatting 블럭(또는 파트)(11000, 11000-1)는 서비스될 데이터에 대한 입력 스트림로부터 베이스밴드 패킷을 생성한다. 여기에서, 입력 스트림은 TS(Transport Stream), IP(Internet Packets)(예를 들어 IPv4, IPv6), MMT(MPEG Media Transport), GS(Generic Stream), GSE(Generic Stream Encapsulation), 등이 될 수 있다. 예를 들어, IP를 포함하는 입력 스트림에 기초하여 ALP (ATSC 3.0 Link Protocol) 패킷을 생성하고, 생성된 ALP 패킷에 기초하여 베이스밴드 패킷을 생성할 수 있다. BICM(Bit Interleaved and Coded Modulation) 블럭(12000, 12000-1)은 서비스될 데이터가 전송될 영역(Fixed PHY Frame 또는 Mobile PHY Frame)에 따라 FEC 코딩 레이트와 성상도 차수(constellation order)를 결정하여 부호화를 수행하고, 타임 인터리빙을 수행한다. 한편, 서비스될 데이터에 대한 시그널링 정보는 구현에 따라 별도의 BICM 인코더를 통하여 부호화 되거나 BICM 인코더를 서비스될 데이터와 공유하여 부호화될 수 있다.
Framing/Interleaving 블럭(13000, 13000-1)은 타임 인터리빙된 데이터를 시그널링 신호와 결합하여 전송 프레임을 생성한다.
Waveform Generation 블럭(14000, 14000-1)은 생성된 전송 프레임에 대한 시간 영역에서의 OFDM 신호를 생성하고, 생성된 OFDM 신호를 RF 신호로 변조하여 수신기로 전송하게 된다.
도 3a에 도시된 본 발명의 일 실시 예에 따른 송신 시스템(10000)은 실선으로 표시된 normative 블럭들 및 점선으로 표시된 informaive 블럭들을 포함한다. 여기서, 실선으로 표시된 블럭들은 노멀 블럭이며, 점선으로 표시된 블럭들은 informaive MIMO를 구현하는 경우 이용될 수 있는 블럭이다.
도 3b 및 도 3c는 본 발명의 일 실시 예에 따른 멀티플렉싱 방법을 설명하기 위한 도면들이다.
도 3b 는 본 발명의 일 실시 예에 따른 TDM(Time Division Multiplexing)을 구현하기 위한 블럭도를 나타낸다.
TDM 시스템 아키텍쳐에서, Input Formatting 블럭(11000), BICM 블럭(12000), Framing/Interleaving 블럭(13000) 및 Waveform Generation 블럭(14000)의 4 개의 메인 블럭(또는 파트)이 존재한다.
데이터는 Input Formatting 블럭(1100)로 입력되어 포맷팅되고, BICM 블럭(12000)에서 전방향 에러 정정이 적용되고, 성상도로 맵핑된다. 이어서, Framing/Interleaving 블럭(13000)에서 타임 및 주파수 인터리빙되고, 프레임 생성이 이루어진다. 이 후, Waveform Generation 블럭(14000)에서 출력 파형이 생성된다.
도 3c는 본 발명의 다른 실시 예에 따른 LDM(Layered Division Multiplexing)을 구현하기 위한 블럭도를 나타낸다.
LDM 시스템 아키텍쳐에서, TDM 시스템 아키텍쳐와 비교하여 몇가지 다른 블럭이 존재한다. 구체적으로, LDM의 각 레이어 중 하나에 대한 두 개의 분리된 Input Formatting 블럭(11000, 11000-1), BICM 블럭(12000, 12000-1)이 존재한다. 이들은 LDM 인젝션 블럭에서 Framing/Interleaving 블럭(13000) 이전에 결합된다. 및 Waveform Generation 블럭(14000)은 TDM과 유사하다.
도 4는 도 3a에 도시된 Input Formatting 블럭의 세부 구성을 나타내는 블럭도이다.
도 4에 도시된 바와 같이 Input Formatting 블럭(11000)은 PLP들로 분산된(distributed) 패킷들을 제어하는 세 개의 블럭으로 구성된다. 구체적으로, encapsulation and compression 블럭(11100), baseband formatting(또는 baseband framing 블럭)(11200), scheduler 블럭(11300)을 포함한다.
encapsulation and compression 블럭(11100)으로 입력되는 입력 스트림은 다양한 타입으로 구성될 수 있다. 예를 들어, 입력 스트림은 TS(Transport Stream), IP(Internet Packets)(예를 들어 IPv4, IPv6), MMT(MPEG Media Transport), GS(Generic Stream), GSE(Generic Stream Encapsulation))등이 될 수 있다.
encapsulation and compression 블럭(11200)에서 출력되는 패킷들은 ALP 패킷들(generic packets) (또는 ALP 패킷, L2 패킷)이 된다. 여기서, ALP 패킷의 포맷은 TLV/GSE/ALP 중 하나가 될 수 있다.
각 ALP 패킷의 길이는 가변적이다. 추가 정보 없이 ALP 패킷 그 자체로부터 ALP 패킷의 길이를 쉽게 추출할 수 있다. ALP 패킷의 최대 길이는 64kB이다. 헤더를 포함하는 ALP 패킷의 최대 길이는 4 바이트(bytes)이다. ALP 패킷은 정수 바이트 길이가 된다.
scheduler 블럭(11200)은 인캡슐레이션된 ALP 패킷들로 구성된 입력 스트림을 수신하여 베이스밴드 패킷 형상으로, PLPs(physical layer pipes)를 형성한다. 상술한 TDM 시스템에서 single PLP 또는 S-PLP라 불리우는 단지 하나의 PLP가 존재할 수 있거나, M-PLP라 불리는 복수의(multiple) PLPs가 존재할 수 있다. 하나의 서비스는 4개 이상의 PLPs를 이용할 수 없다. 두 개의 레이어로 구성된 LDM 시스템의 경우, 각 레이어에 하나씩, 두 개의 PLPs가 이용된다.
scheduler 블럭(11200)은 인캡슐레이션된 ALP 패킷들을 수신하여 해당 패킷들이 피지컬 레이어 리소스에 어떻게 할당될지 지정한다. 구체적으로, scheduler 블럭(11200)은 baseband formatting 블럭(1130)이 베이스밴드 패킷을 어떻게 출력할지 지정한다.
scheduler 블럭(11200)의 기능은 데이터 사이즈 및 시간에 의해 정의된다. 피지컬 레이어는 이러한 분산된 시간에서 데이터의 일부분을 전송할 수 있다. scheduler 블럭은 인캡슐레이션된 데이터 패킷, 인캡슐레이션된 데이터 패킷에 대한 서비스 메타데이터의 퀄리티, 시스템 버퍼 모델, 시스템 매니지먼트로부터의 제한(constraints) 및 구성(Configuration) 과 같은 입력 및 정보를 이용하여, 피지컬 레이어 파라미터의 구성 면에서 적합한 솔루션을 생성한다. 해당 솔루션은 이용 가능한 컨피규레이션 및 제어 파라미터 및, 집합(aggregate) 스펙트럼의 대상이 된다.
한편, scheduler 블럭(11200)의 동작은 다이내믹, 준정적(quasi-static), 정적 구성들의 집합으로 제한된다. 이러한 제한의 정의는 구현에 따라 달라질 수 있다.
또한, 각 서비스에 대해 최대 4 개의 PLP가 이용될 수 있다. 복수의 타입 인터리빙 블럭으로 구성된 복수의 서비스는 6, 7, 또는 8 MHz의 대역폭에 대해 최대 64 개의 PLPs까지 구성될 수 있다.
baseband formatting 블럭(11300)은 도 5a에 도시된 바와 같이, baseband packet construction 블럭(3100, 3100-1,... 3100-n), baseband packet header construction 블럭(3200, 3200-1,... 3200-n), baseband packet scrambling 블럭(3300, 3300-1,... 3300-n) 의 세 개의 블럭으로 구성된다. M-PLP 동작에서, baseband formatting 블럭은 필요에 따라서 복수 개의 PLP를 생성한다.
baseband packet construction 블럭(3100, 3100-1,... 3100-n)은 베이스밴드 패킷을 구성한다. 각 베이스밴드 패킷(3500)은 도 5b에 도시된 바와 같이 헤더(3500-1) 및 페이로드(3500-2)로 구성된다. 베이스밴드 패킷은 길이 Kpayload로 고정된다. ALP 패킷들(3610 내지 3650)은 순차적으로 베이스밴드 패킷(3500)으로 맵핑된다. ALP 패킷들(3610 내지 3650)이 베이스밴드 패킷(3500) 내에 완전히 맞지 않는 경우, 패킷들은 현재 베이스밴드 패킷 및 다음 베이스밴드 패킷 사이로 분산된다. 패킷 분산은 바이트 단위로만 이루어진다.
baseband packet header construction 블럭(3200, 3200-1,... 3200-n)은 헤더(3500-1)를 구성한다. 헤더(3500-1)은 도 5b에 도시된 바와 같이 세 개의 파트 즉, 베이스 필드(또는 베이스 헤더)(3710), 옵션 필드(또는 옵션 헤더)(3720), 및 확장 필드(또는 확장 헤더)(3730)를 포함한다. 여기서, 베이스 필드(3710)는 매 베이스밴드 패킷에서 나타나며, 옵션 필드(3720) 및 확장 필드(3730)는 매 베이스밴드 패킷에서 나타나지 않을 수 있다.
베이스 필드(3710)의 메인 기능은 오프셋 값을 바이트로 포함하는 포인터를 베이스밴드 패킷 내에서 다음 ALP 패킷의 시작으로 제공하는 것이다. ALP 패킷이 베이스밴드 패킷을 시작하면, 포인터 값은 0이 된다. 베이스밴드 패킷 내에서 시작하는 ALP 패킷이 없다면, 포인터 값은 8191 이고, 2 바이트의 베이스 헤더가 이용될 수 있다.
확장 필드(3730)는 추후에 활용될 수 있으며, 예를 들어, 베이스밴드 패킷 패킷 카운터, 베이스밴드 패킷 타임 스탬핑, 추가 시그널링 등에 이용될 수 있다.
baseband packet scrambling 블럭(3300, 3300-1,... 3300-n)은 베이스밴드 패킷을 스크램블한다.
성상도(constellations)로 맵핑되는 페이로드 데이터가 반복적인 시퀀스로 구성되는 경우처럼, 항상 동일한 포인트로 맵핑되지 않게 하기 위하여, 페이로드 데이터는 항상 방향 에러 정정 인코딩 전에 스크램블된다.
도 6은 본 발명의 일 실시 예에 따른 송신 장치의 구성을 나타낸 블럭도이다.
도 6에 따르면, 송신 장치(100)는 패킷 생성부(110) 및 신호 처리부(120)를 포함한다.
패킷 생성부(110)는 입력되는 IP 패킷, TS 패킷 및 다양한 타입의 데이터들을 인캡슐레이팅(encapsulating)하여 각각의 PLP로 전송하기 위한 패킷을 생성할 수 있다. 여기서, 패킷은 ISO 7 계층 모델에서의 L2 패킷에 해당한다.
구체적으로, 패킷 생성부(110)는 입력 스트림에 기초하여 헤더 및 페이로드(또는 데이터 페이로드) 를 포함하는 패킷, 예를 들어 ALP 패킷(Generic packet)(또는 L2 패킷)을 생성할 수 있다. 여기서,헤더는 해당 패킷에 포함된 페이로드에 관한 정보 및 해당 패킷에 포함된 패킷에 관한 정보를 포함할 수 있다. 이하에서는 설명의 편의를 위하여 패킷 생성부(110)에서 생성되는 패킷을 ALP 패킷이라 명명하도록 한다.
일반적으로 ALP 패킷에 포함되는 페이로드는 IP(Internet Protocal) 패킷, TS 패킷 및 시그널링 패킷 중 하나를 포함하거나, 이들의 조합을 포함할 수도 있다. 다만, 페이로드가 포함하는 데이터는 상술한 예에 한정되지 않으며, 다양한 종류의 데이터를 포함할 수 있다. 여기서, ALP패킷은 입력되는 다양한 타입의 데이터들을 물리적인 계층으로 매핑하기 필요한 단위 패킷이라고 볼 수 있다.
구체적으로, 패킷 생성부(110)는 페이로드에서 전송되는 입력 데이터의 패킷 타입을 나타내는 필드 및 해당 ALP 패킷이 온전한(완전한) 입력 패킷(또는 SDU(service data unit)을 전송하는지 여부를 나타내는 필드를 포함하는 헤더를 포함하는 ALP 패킷을 생성할 수 있다.
구체적으로, 헤더를 구성하는 베이스 헤더는, 입력 데이터의 패킷 타입을 나타내는 제1 필드 및 ALP 패킷이 하나의 온전한 입력 패킷(a single, complete input packet)을 전송하는지 여부를 나타내는 제2 필드를 포함한다. 여기서, 제2 필드는 ALP 패킷이 하나의 온전한 입력 패킷을 전송함을 나타내는 제1 값 또는, ALP 패킷이 입력 패킷의 세그먼트를 전송하거나 복수의 입력 패킷을 전송함을 나타내는 제2 값으로 설정될 수 있다. 예를 들어, 제2 필드는 PC(payload_configuration)가 될 수 있다.
또한, 제2 필드가 제1 값으로 설정되면, 베이스 헤더는 베이스 헤더는 추가 헤더(additional header)가 존재하지 않음을 나타내는 제3 값 또는 추가 헤더가 존재함을 나타내는 제4 값으로 설정되는 제3필드를 더 포함할 수 있다. 여기서, 추가 헤더는 베이스 헤더 바로 이후에 존재하는 헤더가 될 수 있다. 예를 들어, 제3 필드는 HM(header_mode) 필드가 될 수 있다.
또한, 제3 필드가 제4 값으로 설정되면, 추가 헤더는, 옵션 헤더에 서브 스트림 식별자가 존재하는지 여부를 나타내는 제4 필드를 포함할 수 있다. 여기서, 옵션 헤더는 추가 헤더 바로 이후에 존재하는 헤더가 될 수 있으며, 서브 스트림 식별 및/또는 헤더 확장을 위한 필드이다.
. 이 경우, 제4 필드가 옵션 헤더에 서브 스트림 식별자가 존재함을 나타내는 값으로 설정되면, 옵션 헤더는, 서브 스트림 식별자를 나타내는 제5필드를 포함할 수 있다. 여기서, 제4 필드는 SIF(Sub-stream Identifier Flag) 필드이며, 제5 필드는 SID(Sub-stream Identifier) 필드가 될 수 있다. 여기서, SID 필드는 ALP 패킷의 서브 스트림 식별자를 나타내는 8 비트 필드로 구현될 수 있다. 옵션 헤더 확장이 존재하는 경우, SID는 추가 헤더 및 옵션 헤더 확장 사이에 존재할 수 있다. 여기서, 서브 스트림 식별자는, 다수의 서비스를 전송하는 패킷에서 특정 서비스에 대응되는 서브 스트림을 포함하는 특정 패킷을 필터링하기 위해 이용된다. 예를 들어, 서브 스트림 식별자는 서브 스트림 어드레스에 대한 정보가 될 수 있다.
구체적으로, 서브 스트림 식별을 위한 옵션 헤더는 링크 레이어 계층에서 특정 패킷 스트림을 필터링하는데 이용된다. 일 예로, 서브 스트림 식별은 다수의 서비스(multiple services)를 전송하는(carrying) ALP 스트림에서 서비스를 식별하는 역할을 한다.
한편, 상위 레이어 스트림(upper layer stream)과 상위 레이어 스트림에 대응되는 SID 값 간의 맵핑 정보는 후술하는 표 7의 링크 맵핑 테이블로서 제공될 수 있다.
또한, 제3 필드가 제4 값으로 설정되면, 베이스 헤더는 페이로드 길이의 LSB(least significant bits)를 나타내는 필드를 더 포함하며, 추가 헤더는 페이로드 길이의 MSB(most significant bits)를 나타내는 필드를 포함할 수 있다.
또한, 제3 필드가 제4 값으로 설정되면, 추가 헤더는 추가 헤더 이후에 확장 헤더가 존재하는지 여부를 나타내는 제6 필드를 더 포함할 수 있다. 여기서, 제6 필드는 HEF (Header Extension Flag) 필드가 될 수 있다.
한편, 제2 필드가 제2 값을 설정되면, 베이스 헤더는, 패킷의 페이로드가 입력 패킷의 세그먼트를 전송하며 추가 헤더가 존재함을 나타내는 제5 값 또는 패킷의 페이로드가 복수의 입력 패킷을 전송하며 추가 헤더가 존재함을 나타내는 제6 값으로 설정되는 제7 필드를 더 포함할 수 있다.
또한, 제7 필드가 제5 값 또는 제6 값으로 설정되면, 베이스 헤더는, 페이로드 길이의 LSB를 나타내는 필드를 더 포함할 수 있다.
또한, 제7 필드가 제5 값으로 설정되면, 추가 헤더는, 패킷에서 전송되는 세그먼트의 식별자(또는 세그먼트에 대응되는 순서)를 나타내는 필드, 패킷이 입력 패킷의 마지막 세그먼트를 전송하는지 여부를 나타내는 필드, 추가 헤더 이후에 확장 헤더가 존재하는지 여부를 나타내는 필드를 포함할 수 있다.
또한, 제7 필드가 제6 값으로 설정되면, 추가 헤더는, 페이로드 길이의 MSB(most significant bits)를 나타내는 필드, 패킷에서 전송되는 입력 패킷의 개수를 나타내는 필드 및, 추가 헤더 이후에 확장 헤더가 존재하는지 여부를 나타내는 필드를 포함할 수 있다.
신호 처리부(120)는 패킷 생성부(110)에서 생성된 ALP 패킷을 신호 처리할 수 있다. 여기서, 신호 처리부(130)는 ALP 패킷 생성 이후의 모든 신호 처리 과정을 수행할 수 있으며, 예를 들어, 베이스 밴드 패킷 생성부터 전송 프레임 생성까지의 모든 신호 처리 과정을 수행할 수 있다.
도 7은 본 발명의 일 실시 예에 따른 ALP 패킷 구조를 나타내는 도면이다.
도 7을 참조하면, ALP 패킷은 헤더(7100) 및 페이로드(7200)로 구성된다. 헤더(7100)는 그 역할에 따라 다시 베이스 헤더(7110), 추가 헤더(7120), 옵션 헤더(7130)로 나눌 수 있다. ALP 패킷 헤더(7100)는 반드시 베이스 헤더(7110)를 포함하며, 추가 헤더(7120)의 존재 여부는 베이스 헤더(7110)의 제어 필드 값에 따라 달라질 수 있다. 또한 추가 헤더(7120)의 제어 필드를 사용하여 옵션 헤더(7130)의 존재 유무를 선택 할 수 있다.
도 8은 본 발명의 일 실시 예에 따른 ALP 패킷의 베이스 헤더(7110) 구조를 설명하기 위한 도면이다.
도 8를 참조하면, 베이스 헤더(7110)는 Packet_Type 필드(8100)를 반드시 포함한다. 이 때 Packet_Type 필드(8100)의 값에 따라 후속 필드의 구성이 달라질 수 있으며 도4에 도시한 필드의 구성은 입력 패킷이 IPv4 패킷, 압축된 IP 패킷, 링크 계층 시그널링 패킷, 확장(extension) 패킷일 경우에 사용될 수 있다.
도 8을 참조하면, 베이스 헤더(7110)는 Payload Configuration(PC) 필드 (8200)를 더 포함하며 후행하는 1 bit 필드는 PC 필드(8200)의 값에 따라 그 의미가 달라진다. 일 예로 PC 필드(8200)의 값이 ‘0’일 경우에 는 Header Mode (HM) 필드(8300)가 후행하며 HM 필드(8300)는 추가 헤더(8120)의 존재 유무를 나타낸다. PC 필드(8200)의 값이 ‘1’일 경우에는 Segmentation/Concatenation (S/C) 필드 (8350)가 후행하며 S/C 필드(8350)는 페이로드(3200)가 복수의 입력 패킷을 포함하는지 혹은 입력 패킷의 일부만을 포함하는지를 나타내며 S/C 필드(8350)의 값에 따라 추가 헤더(7120)의 구성이 달라질 수 있다.
또한 베이스 헤더(7110)는 페이로드(7200)의 길이 중 LSB 11 비트를 나타내는 Length 필드(8400)를 포함한다.
도 8에 도시한 베이스 헤더를 문법적으로 나타내면 다음 [표 1]과 같다.
Figure 112021028917532-pat00001
Packet_Type 필드는 ALP 패킷으로 캡슐화되기 이전의 입력 패킷에 적용된 프로토콜이나 패킷 타입을 나타내는 3 bit 필드이다. 일 예로 다음 [표 2]에 따라 부호화 될 수 있다.
Figure 112021028917532-pat00002
Payload_Configuration (PC) 필드는 페이로드(7200)의 구성 형태를 나타내는 1 bit 필드이다. PC 필드(8200)의 값이 ‘0’일 경우에 페이로드(7200)는 하나의 온전한 입력 패킷 만을 포함하며 Header Mode 필드(8300)가 PC 필드(8200)에 후행한다. PC 필드(8200)의 값이 ‘1’일 경우에 페이로드(7200)는 복수의 온전한 입력 패킷을 포함하거나 하나의 입력 패킷의 일부를 포함할 수 있으며 Segmentation_Concatenation 필드(8350)가 PC 필드에 후행한다.
Header Mode (HM) 필드는, 추가 헤더의 존재 유무를 나타내는 1bit 필드이다. HM 필드(8300)의 값이 ‘0’일 경우에는 추가 헤더(7120)가 존재하지 않으며, 이는 페이로드(7200)의 전체 길이가 2048바이트보다 작음을 의미한다. HM 필드(8300)의 값이 ‘1’일 경우에는 Length 필드 (8400) 이후에 추가 헤더가 존재함을 의미하며, 이는 페이로드(7200)의 전체 길이가 2047 바이트보다 크거나 서브 스트림 식별자 (Sub-stream Identifier)를 포함하는 옵션 헤더 (7130)가 존재함을 나타낸다.
HM 필드(8300)는 선행하는 PC 필드(8200)의 값이 ‘0’일 경우에만 존재할 수 있다.
Segmentation_Concatenation (S/C)는 페이로드(7200)가 복수의 온전한 입력 패킷을 포함하거나 하나의 입력 패킷의 일부를 포함하는지를 표시하는 1 비트 필드이다. S/C 필드(8350)의 값이 ‘0’일 경우에 페이로드(7200)는 하나의 입력 패킷의 일부만을 포함하여, Length 필드(8400) 이후에 패킷 분할을 위해 정의된 추가 헤더(7120)를 포함한다. S/C 필드(8350)의 값이 ‘1’일 경우에 페이로드(7200)는 복수의 온전한 입력 패킷을 포함하며, Length 필드(8400) 이후에 패킷 결합을 위해 정의된 추가 헤더(7120)를 포함한다. S/C 필드(8350)는 PC필드(8200)의 값이 ‘1’일 경우에만 존재할 수 있다.
Length 필드는 페이로드(7200)의 바이트 단위의 길이에서 하위 11 비트를 나타내는 필드이다. 추가 헤더(3120)에 페이로드(7200)의 바이트 단위 길이의 상위 비트들이 포함되어있을 경우에 이와 결합하여 페이로드(7200)의 전체 길이를 나타낸다.
도 9는 본 발명의 실시 예에 따른 페이로드(7200)가 단일 입력 패킷을 포함할 경우의 추가 헤더(7120)를 설명하기 위한 도면이다.
도 9를 참조하면, 페이로드(7200)가 단일 입력 패킷을 포함할 경우의 추가 헤더(8500)는 페이로드(7200)의 바이트 단위 길이를 16비트로 표현하였을 경우의 상위 5비트를 나타내는 Length_MSB 필드(8510)와 1 비트의 reserved 필드(8520), 서브 스트림 식별자의 존재 여부를 나타내는 SIF 필드(8530) 및 확장 헤더의 존재 여부를 나타내는 HEF 필드(8540)를 포함한다.
도 8에 나타낸 실시 예에 따르면 도 9에 도시한 추가 헤더(8500)는 해당 ALP 패킷의 페이로드(7200)가 한 개의 온전한 패킷을 포함하고 그 길이가 2047 바이트보다 길거나 옵션 헤더가 존재할 경우에만 존재할 수 있다. 즉 PC 필드(8200)의 값이 ‘0’이고 HM 필드(4300)의 값이 ‘1’일 경우에만 존재할 수 있다.
도 9에 도시한 추가 헤더(8500)를 문법적으로 나타내면 다음 [표 3]과 같다.
Figure 112021028917532-pat00003
Length_MSB 필드는 페이로드(7200)의 바이트 단위의 길이를 16비트로 표현했을 경우의 상위 5 비트를 나타내는 필드이다. 베이스 헤더(7110)의 Length 필드(8400)에 나타낸 하위 11 비트와 결합하여 페이로드(7200)의 전체 바이트 단위 길이를 나타낸다.
Sub-stream Identifier Flag (SIF)는 HEF 필드(8540) 이후에 SID (Sub-stream Identifier, 서브 스트림 식별자)필드가 존재하는지를 나타내는 1 비트 필드이다. SIF 필드(8530)의 값이 ‘0’일 경우에는 SID 필드가 존재하지 않으며, SIF 필드(8530)의 값이 ‘1’일 경우에는 SID 필드가 HEF 필드(8540) 이후에 존재한다.
Header Extension Flag (HEF) 필드는 추가 헤더(8500) 이후에 확장 헤더 (extension header)가 존재하는지를 나타내는 1 비트 필드이다. HEF 필드(8540)의 값이 ‘0’일 경우에는 확장 헤더가 존재하지 않으며, HEF필드(8540)의 값이 ‘1’일 경우에는 확장 헤더가 추가 헤더(8500) 이후에 존재한다. 확장 헤더가 존재할 경우에 그 위치는 SID 필드가 존재할 경우에는 SID 필드에 후행하며, SID 필드가 존재하기 않을 경우에는 HEF 필드(8540)에 후행한다.
도 10은 본 발명의 실시 예에 따른 페이로드(7200)가 하나의 입력 패킷의 일부만을 포함할 경우의 추가 헤더(7120)를 설명하기 위한 도면이다.
도 10을 참조하면, 페이로드(7200)가 하나의 입력 패킷의 일부만을 포함할 경우의 추가 헤더(8600)는 세그먼트된 입력 패킷의 식별자를 나타내는 Seg_SN 필드(8610)와 페이로드(7200)가 입력 패킷의 마지막 바이트를 포함하는지를 나타내는 LIF필드(8620), 서브 스트림 식별자의 존재 여부를 나타내는 SIF 필드(6300) 및 확장 헤더의 존재 여부를 나타내는 HEF 필드(8640)를 포함한다.
도 8에 나타낸 실시 예에 따르면 도 10에 도시한 추가 헤더(8600)는 해당 ALP 패킷의 페이로드(7200)가 한 개의 입력 패킷의 일부를 포함할 경우에만 존재할 수 있다. 즉 PC 필드(8200)의 값이 ‘1’이고 S/C필드(8350)의 값이 ‘0’일 경우에만 존재할 수 있다.
도 10에 도시한 추가 헤더(8600)를 문법적으로 나타내면 다음[표 4]와 같다.
Figure 112021028917532-pat00004
Segment_Sequence_Number (Seg_SN)는 페이로드(7200)에 포함된 입력 패킷의 부분을 식별하기 위한 0 이상의 정수로 나타내어진다.. 입력 패킷의 첫 번째 부분이 페이로드(7200)에 포함된 경우에 Seg_SN 필드(8610)의 값은 ‘0’으로 설정된다. 이후로 세그먼트된 입력 패킷의 후속 부분이 ALP 패킷을 통해 전송될 때 마다 Seg_SN 필드(8610)의 값은 1씩 증가한다.
Last_Segment_Indicator (LSI): 페이로드(7200)가 세그먼트된 입력 패킷의 마지막 부분 (혹은 마지막 바이트)를 포함하는지를 나타내는 1 비트 필드이다. 페이로드(3200)가 세그먼트된 입력 패킷의 마지막 부분 (혹은 마지막 바이트)를 포함할 경우에 LSI 필드(8620)의 값은 ‘1’로 설정되며, 나머지 경우에는 ‘0’으로 설정된다.
Sub-stream Identifier Flag (SIF)는 HEF 필드(8640) 이후에 SID (Sub-stream Identifier, 서브 스트림 식별자)필드가 존재하는지를 나타내는 1 비트 필드이다. SIF 필드(8630)의 값이 ‘0’일 경우에는 SID 필드가 존재하지 않으며, SIF 필드(8630)의 값이 ‘1’일 경우에는 SID 필드가 HEF 필드(8640) 이후에 존재한다.
Header Extension Flag (HEF)는 추가 헤더(8600) 이후에 확장 헤더 (extension header)가 존재하는지를 나타내는 1 비트 필드이다. HEF 필드(8640)의 값이 ‘0’일 경우에는 확장 헤더가 존재하지 않으며, HEF 필드(8640)의 값이 ‘1’일 경우에는 확장 헤더가 추가 헤더(8600) 이후에 존재한다. 확장 헤더가 존재할 경우에 그 위치는 SID 필드가 존재할 경우에는 SID 필드에 후행하며, SID 필드가 존재하기 않을 경우에는 HEF 필드(8540)에 후행한다.
도 11은 본 발명의 실시 예에 따른 페이로드가 복수의 온전한 입력 패킷을 포함할 경우의 추가 헤더를 설명하기 위한 도면이다.
도 11을 참조하면, 페이로드(7200)가 복수의 온전한 입력 패킷을 포함할 경우의 추가 헤더(8700)는 페이로드(7200)의 바이트 단위 길이를 15비트로 표현하였을 경우의 상위 4비트를 나타내는 Length_MSB 필드(8710), 페이로드(7200)에 포함된 입력 패킷의 개수를 나타내는 Count 필드(8720), 확장 헤더의 존재 유무를 나타내는 HEF 필드(8730)와 각 입력 패킷의 길이를 나타내는 Component Length 필드(8740)를 포함한다.
도 11에 도시한 추가 헤더(8700)를 문법적으로 나타내면 다음 [표 5]와 같다.
Figure 112021028917532-pat00005
Length_MSB는 페이로드(7200)의 바이트 단위의 길이를15비트로 표현했을 경우의 상위 4 비트를 나타내는 필드이다. 베이스 헤더(7110)의 Length 필드(4400)에 나타낸 하위 11 비트와 결합하여 페이로드(7200)의 전체 바이트 단위 길이를 나타낸다.
Count는 페이로드(7200)에 포함된 입력 패킷의 개수를 나타내는 3비트 필드이다.. Count필드(8720)의 값은 페이로드(7200)에 포함된 입력 패킷의 개수에서 2를 뺀 값으로 설정된다.
Header Extension Flag (HEF)는 추가 헤더(8700) 이후에 확장 헤더 (extension header)가 존재하는지를 나타내는 1 비트 필드이다. HEF 필드(8730)의 값이 ‘0’일 경우에는 확장 헤더가 존재하지 않으며, HEF 필드(8730)의 값이 ‘1’일 경우에는 확장 헤더가 추가 헤더(8700) 이후에 존재한다. 확장 헤더가 존재할 경우에 그 위치는 SID 필드가 존재할 경우에는 SID 필드에 후행하며, SID 필드가 존재하기 않을 경우에는 HEF 필드(8540)에 후행한다.
Component_Length는 페이로드(7200)에 포함된 입력 패킷들의 길이를 나타내는 필드이다. 페이로드(7200)에 포함된 입력 패킷과 동일한 순서로 그 값을 적어주며 마지막 입력 패킷에 대한 길이는 생략한다.
도 12는 본 발명의 실시 예에 따른 ALP 패킷의 옵션 헤더(9000)를 설명하기 위한 도면이다.
도 12를 참조하면, 옵션 헤더(9000)는 서브 스트림 식별자를 나타내는 SID 필드(9100)와 Header Extension(9200)을 포함할 수 있다.
Header Extension은 확장헤더의 타입을 나타내는 Extension Type 필드(8210), 확장 헤더의 길이를 나타내는 Extension Length 필드(9220) 및 실제 확장 필드들을 포함하는 Extension Value 필드(9230)를 포함한다.
Extension Value 필드(8230)의 길이는 Extension Length 필드(9220)에 의해 주어지며, 수신기는 Extension Type 필드(9210)의 값을 확인하여 수신기가 해석하지 못하는 값이면 Extension Length 필드(9220)의 값을 사용하여 Header Extension(9200)의 전체 길이를 계산하고 해당 바이트를 제거한다.
SID 필드(9100)의 값은 하나의 RF 신호 내에서 식별 가능한 유일한 값으로 설정되며, 방송 링크 계층(1400)은 SID 필드(9100)의 값을 기반으로 링크 계층 필터링을 수행할 수 있다.
일 예로, 하나의 신호처리 경로(PLP)를 가지는 RF 신호로 5개의 서비스가 전송되며, 각각의 서비스는 3개의 UDP/IP포트를 사용하여 전송된다고 가정하기로 한다. 수신기는 RF 신호로부터 PLP로 입력되는 신호를 처리하여 링크 계층 패킷들을 복원하고 15개의 UDP/IP 세션에 해당하는 패킷들을 복원하여 상위 계층으로 전달한다. 사용자가 선택한 서비스는 3개의 UDP/IP 세션만을 사용하므로, 15개의 UDP/IP 세션에 속하는 패킷들은 그 주소에 따라 IP 계층(1300) 혹은 UDP 계층(1200)에서 필터링 된다. 이는 링크 계층에서 출력하는 패킷의 대부분(80%)이 상위 계층에서는 필요없는 데이터라는 의미이며, 이는 시스템의 효율성을 감소시킨다.
특히 방송 물리 계층(1500)과 방송 링크 계층(1400) 및 IP 계층(1300)이 별도의 하드웨어로 구성되거나 다른 공유 계층과 인터페이스를 공유하고 있을 경우에는 불필요한 데이터의 전송으로 인하여 효율성이 현저히 하락할 수 있다. 이 경우에 본 발명의 실시 예에 따라 각 서비스마다 별도의 SID를 할당하고 해당 서비스를 나르는 링크 계층 패킷 즉, ALP 패킷에 SID를 할당하여, 사용자가 서비스를 선택하면 선택된 서비스에 해당하는 SID를 가지는 링크 계층 패킷만을 처리하여 IP 계층(1300)으로 전달하여 시스템 효율을 높일 수 있다.
여기서, SID 필드에 대한 신택스는 다음 표 6과 같다.
Figure 112021028917532-pat00006
상술한 실시 예에서는 서비스와 SID를 일대일 관계를 가지고 맵핑하였지만, SID는 하나의 링크 계층 스트림내에서 분류하고자 하는 입력 패킷의 그룹화 형태에 따라 자유롭게 부여할 수 있다. 그룹화 형태는 IP 주소, UDP 포트번호, 응용 계층 프로토콜의 세션 식별자 (MMTP의 packet_id 또는 ROUTE의 tsi)이거나 이들의 조합일 수 있다.
또한 구현에 따라 하나의 ALP 패킷 스트림에 SID가 할당된 ALP 패킷들과 SID가 할당되지 않은 ALP 패킷이 혼재할 경우가 있을 수 있다.이 경우에는 SID가 할당되지 않은 ALP 패킷은 처리하여 상위 계층으로 전달하고, SID 할당된 ALP 패킷만을 기준으로 필터링을 수행하는 것이 바람직할 수 있다.
본 발명의 실시 예에 따른 SID와 상위 계층 입력 패킷 스트림과의 관계를 수신기에 전달하는 방법으로 링크 계층을 사용할 수 있다.
[표 7]은 SID와 UDP/IP session과의 맵핑 관계를 전달하기 위한 링크 계층 시그널링 테이블의 일 예이다.
Figure 112021028917532-pat00007
Table_id: SID_Signaling을 전달하는 테이블의 식별자
Table_id_extension: 시그널링 테이블의 확장 식별자
Version: 테이블의 값이 변경되었을 때 증가
Num_session: 이 테이블에 정보가 기술된 세션의 수
Src_IP_add: 소스 IP 주소, source IP address
Dst_IP_add: 목적지 IP 주소, destination IP address
Src_UDP_port: 소스 UDP 포트 번호, source UDP port
Dst_UDP_port: 목적지 UDP 포트 번호, destination UDP port
SID_flag: SID 할당 여부를 나타내는 1비트 필드, SID_flag의 값이 1인 경우에만 해당 세션으로 전송되는 UDP/IP 패킷을 포함하는 ALP 패킷에 SID가 할당된다.
SID: 서브 스트림 식별자, 하나의 RF 신호(물리계층 프레임)내에서 유일한 값을 가진다.
Figure 112021028917532-pat00008
Num_service: 이 테이블에 정보가 기술된 서비스의 수
Service_id: 서비스 식별자
[표 7] 및 [표 8]에 나타낸 시그널링 테이블은 각각의 UDP/IP 세션에 대하여 SID만을 할당하거나 서비스 단위로 SID를 할당하였다.
본 발명의 실시 예에 따라 IP 헤더 압축을 할 경우에 IP 헤더 압축에 필요한 시그널링 정보가 [표 7] 또는 [표 8]에 포함될 수 있다.
일 예로 하나의 이상의 IP 헤더 압축 방식이 사용될 경우에 사용된 헤더 압축 방식을 나타내는 식별자와 수신기에서 압축 헤더 복원을 위해 필요한 정보가 포함될 수 있다. 압축 헤더 복원을 위해 필요한 정보의 일 예로 ROHC의 Context ID가 있다.
본 발명의 실시 예에 따른 SID와 서비스와의 관계를 수신기에 전달하는 방법으로 SLT(1150)를사용할 수 있다.
[표 9]은 SID와 서비스와의 맵핑 관계를 나타내는 디스크립터로 당시 SLT의 서비스 루프내에 서비스 레벨 디스크립터로 전송 될 수 있다.
Figure 112021028917532-pat00009
SID: 디스크립터가 위치한 서비스에 해당하는 서브 스트림 식별자
본 발명의 실시 예에 따르는 송신기는 SID가 할당된 서비스를 전송하는 링크 계층 패킷에 SID와 동일한 값을 옵션 헤더의 SID 필드(0100)에 표시할 수 있다.
도 13은 본 발명의 다른 실시 예에 따른 송신 장치의 구성을 나타내는 블록도이다. 도 13에 따르면, 송신 장치(100’)는 패킷 생성부(110), 프레임 생성부(130), 신호 처리부(140) 및 송신부(150)를 포함한다. 도 13에 도시된 구성 중 패킷 생성부(110)의 구성은 도 6에 도시된 패킷 생성부(110)의 구성과 동일하므로 자세한 설명은 생략하도록 한다.
패킷 생성부(110)는 상술한 바와 같이 패킷, 일 예로 ALP 패킷(Generic packet)을 생성한다.
프레임 생성부(130)는 패킷 생성부(110)에서 생성된 ALP 패킷을 포함하는 프레임을 생성할 수 있다. 여기서, 생성되는 프레임은 ALP 패킷을 포함하는 베이스밴드 패킷(BBP)(또는 L1 패킷)이 될 수 있다. 다만, 시스템에 따라 이름이 달라질 수 있다. 예를 들어, 상술한 ALP 패킷 및 BBP 패킷은 시스템에 따라서는 각각 BBP 패킷 및 BBF(Baseband frame) 로 명명될 수도 있다.
구체적으로, 프레임 생성부(130)는 IP 패킷 및 헤더를 포함하는 복수의 ALP 패킷을 배열하여 순방향 에러 정정 코드(forward error correcting code)에 대응되는 사이즈의 베이스밴드 패킷으로 생성할 수 있다. 본 발명의 일 실시 예에 따른 ALP 패킷은 TS 패킷이 될 수 있으나, TS 패킷 뿐만 아니라 상술한 다양한 타입의 데이터에 대해서도 동일한 과정이 적용될 수 있다.
도 14는 본 발명의 일 실시 예에 따른 프레임 생성부의 상세한 구성을 나타낸 블럭도이다.
도 14를 참조하면, 프레임 생성부(130)는 베이스밴드 헤더 생성부(130-1) 및 베이스밴드 패킷 생성부(130-2)를 포함할 수 있다. 그리고, 베이스밴드 패킷 생성부(130-2)는 생성된 베이스밴드 패킷을 베이스밴드 패킷 스크램블러(135)로 전송할 수 있다.
베이스밴드 헤더 생성부(130-1)은 베이스밴드 패킷에 삽입되는 헤더를 생성할 수 있다. 여기서, 베이스밴드 패킷에 삽입되는 헤더를 베이스밴드 헤더라고 하며, 베이스밴드 헤더는 베이스밴드 패킷에 관한 정보를 포함한다.
특히, 베이스밴드 헤더 생성부(130-1)은 입력되는 스트림이 TS인 경우, ALP 패킷 내의 TS 패킷의 개수, 제거된 널 패킷 개수 등에 대한 정보를 포함하는 베이스밴드 헤더를 생성할 수 있다. 그 밖에 베이스밴드 헤더 생성부(130-1)에 의해 생성되는 베이스밴드 헤더는 다양한 정보를 포함할 수 있는데 이에 대해서는 후술하도록 한다.
또한, 베이스밴드 패킷 생성부(130-2)는 베이스밴드 헤더 생성부(130-1)로부터 생성된 베이스밴드 헤더를 패킷 생성부(110)로부터 출력된 ALP 패킷에 인캡슐레이팅(encapsulating)하여 베이스밴드 패킷을 생성할 수 있다.
또한, 베이스밴드 패킷 스크램블러(135)는 각각의 베이스밴드 패킷에 순방향 에러 정정 코드가 부가되기 전에 베이스밴드 패킷에 저장된 데이터들을 랜덤한 순서로 섞어서, 스크램블된 베이스밴드 패킷을 생성할 수 있다. 이렇게 스크램블된 베이스밴드 패킷은 PLP를 통해 전송되어 신호 처리가 수행되게 된다. 이 경우, 하나의 PLP는 고정된 크기를 갖는 베이스밴드 패킷들로 구성될 수 있다. 즉, 입력 스트림은 하나의 PLP를 위한 베이스밴드 패킷으로 인캡슐레이션될 수 있다.
한편, PLP는 독립적으로 처리되는 신호 경로를 뜻한다. 즉, 각각의 서비스(예를 들면, 비디오, 확장 비디오, 오디오, 데이터 스트림 등)는 다수의 RF 채널을 통해 송수신될 수 있는데, PLP는 이러한 서비스가 전송되는 경로 또는 그 경로를 통해서 전송되는 스트림이다. 또한, PLP는 다수의 RF 채널들 상에서 시간적인 간격을 가지고 분포하는 슬롯들에 위치할 수도 있고, 하나의 RF 채널 상에 시간적인 간격을 가지고 분포할 수도 있다. 즉, 하나의 PLP는 하나의 RF 채널 또는 다수의 RF 채널들 상에 시간적인 간격을 가지고 분포되어 전송될 수 있다.
PLP 구조는 하나의 PLP를 제공하는 Input mode A와 다수의 PLP를 제공하는 Input mode B로 구성되며, 특히 Input mode B를 지원할 경우 강인한 특정 서비스 제공을 할 수 있을 뿐만 아니라, 하나의 스트림을 분산 전송시킴으로써 시간 인터리빙 길이를 증가시켜 시간 다이버시티(Time Diversity) 이득을 얻을 수 있다. 또한, 특정 스트림만을 수신할 경우 나머지 시간 동안에는 수신기 전원을 off 함으로써 저전력으로 사용할 수 있어 휴대 및 이동 방송 서비스 제공에 적합하다.
여기서, 시간 다이버시티는 이동 통신 전송로에서 전송 품질의 열화를 줄이기 위해 송신 측에서 일정 시간 간격을 두고 동일 신호를 여러 번 송신하면 수신 측에서 이들 수신 신호를 다시 합성하여 양호한 전송 품질을 얻도록 하는 기술이다.
또한, 복수의 PLP에 공통적으로 전송될 수 있는 정보를 하나의 PLP에 포함시켜 전송함으로써 전송 효율을 높일 수 있는데, PLP0가 이러한 역할을 하며, 이러한 PLP를 커먼 PLP(common PLP)라 하고, PLP0를 제외한 나머지 PLP들은 데이터 전송을 위해서 사용될 수 있으며 이러한 PLP를 데이터 PLP라고 한다. 이와 같은 PLP를 사용하게 되면, 가정의 HDTV 프로그램 수신뿐만 아니라 휴대 및 이동 중에도 SDTV 프로그램을 제공할 수 있다. 또한 방송국이나 방송 컨텐츠 제공자를 통해 시청자에게 다양한 방송 서비스 제공뿐만 아니라 시청이 어려운 난시청 지역에서도 방송 수신이 가능한 차별화된 서비스 제공을 할 수 있다.
한편, 도 15는 본 발명의 일 실시 예에 따른 ALP 패킷, 베이스밴드 패킷 및 스크램블된 베이스밴드 패킷을 나타낸 도면이다.
도 15를 참조하면, 패킷 생성부(110)가 IP 패킷을 Payload에 저장하고 헤더를 삽입하여 복수의ALP 패킷(111, 112)을 생성하면, 프레임생성부(130)는 생성된 복수의 ALP패킷 (111, 112)들을 그룹핑하고 베이스밴드 헤더를 삽입하여 복수의 베이스밴드 패킷(121, 122)을 생성할 수 있다. 여기서, 각각의 베이스밴드 패킷(121, 122)은 복수의 ALP 패킷을 포함할 수 있으며 또한 ALP 패킷의 일부를 포함할 수도 있다.
베이스밴드 패킷 스크램블러(135)는 생성된 베이스밴드 패킷(121, 122) 각각을 랜덤하게 스크램블하여 복수의 스크램블된 베이스밴드 패킷(125-1, 125-2)을 생성할 수 있다. 그리고, 생성된 스크램블된 베이스밴드 패킷(125-1, 125-2)은 상술한 바와 같이 PLP로 전송되며 순방향 에러 코딩 코드가 부가되기 위한 신호 처리가 수행될 수 있다.
다시 도 13을 참고하면, 신호 처리부(140)는 생성된 베이스밴드 패킷을 신호 처리할 수 있다.
구체적으로, 신호 처리부(140)는 베이스밴드 패킷을 신호 처리하여 전송 프레임을 생성할 수 있다.
또한, 신호 처리부(140)는 프레임의 시그널링 영역에 시그널링 정보를 삽입할 수 있다. 여기서, 시그널링 정보는 프레임 동기를 위한 L1 신호를 전송하는 L1(Layer 1) 시그널링 신호가 될 수 있으며, L1 시그널링 정보가 삽입되는 프리앰블은 L1 프리 시그널링 영역과 L1 포스트 시그널링 영역을 포함할 수 있다.
한편, 신호 처리부(140)는 도면에 도시하지는 않았지만, 도 3a 내지 도 3c에 도시된 BICM(Bit Interleaved and Coded Modulation) 블럭(12000, 12000-1), Framing/Interleaving 블럭(13000, 13000-1)에 대응되는 기능을 수행할 수 있다.
송신부(150)는 신호 처리된 프레임을 송신 장치(미도시)로 전송할 수 있다.
구체적으로, 송신부(150)는 도 3a 내지 도 3c에 도시된 Waveform Generation 블럭(14000, 14000-1)에 대응되는 기능을 수행할 수 있다. 즉, 송신부(140)는 생성된 프레임을 RF 신호로 변조하기 위한 변조를 수행하고, RF 신호를 수신 장치(미도시)로 전송한다.
이하에서는, 도면을 참조하여 본 발명의 다양한 실시 예에 따른 ALP패킷의 헤더 구조에 대해 자세히 설명하도록 한다. 다만, 후술하는 도면에 도시된 구성 중 상술한 구성과 중복되는 부분에 대해서는 자세한 설명을 생략하도록 한다.
도 16a 및 도 16b는 본 발명의 다양한 실시 예에 따른 ALP 패킷의 헤더 구조를 나타내는 도면이다.
도 16a에 도시된 TYPE 필드 및 PC 필드는 커먼 파트(Common part)로 구현된다.
TYPE 필드(2311)는 입력 데이터의 패킷(L3 패킷)의 타입을 나타낸다. 예를 들어, TYPE 필드(2311)는 3 비트 필드로 구현될 수 있으며, 000은 IPv4, 001은 압축된 IP 패킷, 010은 MPEG-2 전송 스트림, 011은 리저브드, 100은 L2 시그널링, 101~110은 리저브드, 111은 추후 확장(future extension)을 나타낼 수 있다
PC(Packet Configuration) 필드(2312)는 현재 ALP 패킷이 하나의 온전한 L3 패킷(예를 들어, IP 패킷)을 전송하는지 여부를 나타낸다. 예를 들어, PC 필드(2312)는 1 비트 필드로 구현될 수 있으며, 이 경우“1” 값은 현재 ALP 패킷의 페이로드가 하나의 온전한 L3 패킷을 전송한다는 것을 나타내는 반면, “1” 값은 현재 ALP 패킷의 페이로드가 복수의 온전한 L3 패킷을 전송하거나, L3 패킷의 세그먼트를 전송함을 나타낼 수 있다.
S/C 필드(2322)는 현재 ALP 패킷의 페이로드가 L3 패킷의 세그먼트를 전송하거나, 복수의온전한 L3 패킷을 전송하는지 나타낸다. 예를 들어, S/C 필드(2322)는 1 비트 필드로 구현될 수 있으며, 이 경우, “0”값은 현재 ALP 패킷의 페이로드가 L3 패킷의 세그먼트를 전송함을 타내는 반면,“1”값은 현재 ALP 패킷의 페이로드가 복수의 온전한 L3 패킷을 전송함을 나타낼 수 있다.
싱글 패킷 모드(Single packet mode)
HM (Header Mode) 필드(2321)는 임의의 특징, 예를 들어, long 입력 패킷 인지 여부 및 추가 헤더가 존재하는지 여부 중 적어도 하나를 나타낸다. 예를 들어, HM 필드(2321)는 1 비트 필드로 구현될 수 있다. 이 경우,“0” 값은 이러한 특징이 전혀 이용되지 않음을 나타내고, 현재 ALP 패킷의 길이가 2 바이트임을 나타낸다. 반면, “1” 값은 이러한 특징 중 적어도 하나가 이용됨을 나타낸다. 예를 들어, “0” 값은 추가 헤더가 존재하지 않고, ALP 패킷의 페이로드 길이가 2048 미만임을 나타내고, “1”값은 싱글 패킷을 위한 추가 헤더가 존재함을 나타낸다. 이 경우 Length_LSB 필드(2332) 이후에 배치된 추가 헤더(additional Header)(2342)는 예를 들어, Long SDU 또는 옵션 헤더 특징의 이용을 시그널링하는 제1 바이트와 항상 함께 시작한다.
Length_LSB 필드(2331, 2332)는 현재 ALP 패킷에서 페이로드 길이(바이트)의 LSB 비트를 나타낸다. 예를 들어 Length_LSB 필드(2331, 2332)는 11 비트 필드로 구현될 수 있다. 이 경우, HM 필드(2321)가 0으로 설정되면, Length_LSB 필드(2331, 2332)는 현재 ALP 패킷에서 페이로드의 실제 길이(바이트)를 나타내고, HM 필드(2321)가 1로 설정되면, Length_LSB 필드(2332)는 추가 헤더(2342)에서 필드 Length_MSB 필드(2342-1)와 연결되어 현재 ALP 패킷에서 페이로드의 실제 전체 길이(바이트)를 제공한다.
한편, Length_MSB 필드(2342-1), LM 필드(2342-2), OHI 필드(2342-3) 및 Optional Header(2352)는 HM 필드(2321)의 값이“1”인 경우에만 나타난다.
Length_MSB 필드(2342-1)는 현재 ALP 패킷에서 페이로드 길이(바이트)의 MSB를 제공한다. Length_MSB 필드(2341)는 5 비트 필드로 구현되어, 11 비트 길이의 LSB 필드(2332)와 연결되어, 페이로드 데이터의 전체 길이를 나타내는 16 비트 길이 필드를 형성한다. 이에 따라, 페이로드 데이터의 최대 길이는 65,535 (= 216-1) 바이트가 된다.
LM 필드(2342-2)는 현재 ALP 패킷에서 페이로드의 길이가 짧은지 긴지 나타낸다. LM 필드(2342-2)는 예를 들어, 1 비트 필드로 구현될 수 있다. 이 경우,“0”값은 211=2048 바이트보다 적은 숏 L2 페이로드 길이를 나타내는 반면, “1” 값은 2048 바이트 이상 65,535 바이트 이하인 롱 L2 페이로드 길이를 나타낸다.
OHI 필드(2342-3)는 임의의 옵션 헤더의 특징 예를 들어, 헤더 압축 모드를 나타내는 라벨링 또는 헤더 확장이 이용되는지 여부를 나타낸다. 예를 들어, OHI 필드(2342-3)는 2 비트 필드로 구현될 수 있다.
Optional Header 필드(2352)의 길이 및 값은 OHI 필드의 값에 따라 달라질 수 있다. Optional Header에 대해서는 추후 별도로 설명하도록 한다.
세그먼테이션 모드(Segmentation mode)
세그먼테이션 모드를 구현하기 위하여 현재 ALP 패킷에서 전송되는 L3 패킷의 세그먼트의 식별자를 나타내는 Seg SN 필드 만을 이용하는 경우와, Seg SN 필드 뿐 아니라, 세그먼트된 L3 패킷의 식별자를 나타내는 Seg ID를 함께 이용하는 경우로 구분할 수 있다. 각 경우는 또한 숏 ALP 패킷 모드와 롱&숏 ALP 패킷 모드로 구분될 수 있다.
한편, L3 패킷(L2 프로토콜의 입력)의 길이는 일반적 케이스로 211-1 = 2,047 바이트까지 고려될 수 있고, 최대 길이로 216-1 = 65,535 바이트까지 고려될 수 있다. 또한, ALP 패킷(L2 프로토콜의 출력)의 길이는 숏 패킷 모드로 211-1 = 2,047 바이트까지 고려될 수 있고, 롱 패킷 모드로 216-1 = 65,535 바이트까지 고려될 수 있다.
도 16b는 도 16a의 변형 실시 예를 도시하는 것으로, 롱 패킷을 위한 추가 헤더(2361), 세그먼테이션을 위한 추가 헤더(2362), 컨캐터네이션을 위한 추가 헤더(2363)가 일부 Length_LSB 필드(2332, 2333, 2334) 이후에 배치될 수 있다. 구체적으로, S/C 필드(2322)는 현재 ALP 패킷의 페이로드가 L3 패킷의 세그먼트를 전송하고 추가 헤더(2362)를 포함함을 나타내거나, 복수의 온전한 L3 패킷을 전송하고 추가 헤더(2363)를 포함함을 나타낸다. 예를 들어, S/C 필드(2322)는 1 비트 필드로 구현될 수 있으며, 이 경우, “0”값은 현재 ALP 패킷의 페이로드가 L3 패킷의 세그먼트를 전송하고 추가 헤더를 포함함을 나타내는 반면,“1”값은 현재 ALP 패킷의 페이로드가 복수의 L3 패킷을 포함하고 추가 헤더(2363)을 포함함을 나타낼 수 있다.
도 17는 본 발명의 일 실시 예에 따라 세그먼트된 L3 패킷과 ALP 패킷 간의 관계를 설명하기 위한 도면이다.
L3 패킷 및 그들의 세그먼트들의 전송 순서를 변경하는 것은 허용되지 않는다. 이에 따라 도시된 바와 같이 L3 패킷의 세그먼트들을 포함하는 모든 ALP 패킷들은 연속적으로 전송된다. 임의의 다른 L3 패킷은 이전의 L3 패킷의 마지막 세그먼트가 전송된 후에만 ALP 패킷으로 인캡슐레이션될 수 있다.
또한, 세그먼트된 L3 패킷의 식별자를 나타내는 식별자(Seg ID)는 세그먼트된 L3 패킷 각각에 대해 할당될 수 있다. 동일한 L3 패킷의 세그먼트를 포함하는 모든 ALP 패킷 각각은 동일한 Seg ID 값을 가진다. Seg ID의 값은 수신 단에서 재조립된(reassembled) L3 패킷의 완전성(integrity)을 체크하는데 이용된다.
도 18a 내지 도 18c는 본 발명의 일 실시 예에 따른 세그먼테이션 모드에서의 ALP 패킷 헤더 구조를 설명하기 위한 도면들이다.
도 18a 내지 도 18c는 상술한 세그먼테이션 모드를 구현하기 위한 옵션 중 Seg SN 만이 이용되며, 최대 페이로드 길이가 2,407 바이트인 경우의 다양한 실시 예를 나타낸다.
도 18a는 일 실시 예에 따른 ALP패킷 헤더 구조를 나타낸다.
S/C 필드(2522)는 현재 ALP 패킷의 페이로드가 L3 패킷의 세그먼트를 전송하거나, 복수의 온전한 L3 패킷을 전송하는지 나타낸다. 예를 들어, S/C 필드(2522)는 1 비트 필드로 구현될 수 있으며, 이 경우, “0”값은 현재 ALP 패킷의 페이로드가 SDU의 세그먼트를 전송함을 나타내는 반면,“1”값은 현재 ALP 패킷의 페이로드가 복수의온전한 L3 패킷을 전송함을 나타낼 수 있다.
Length_LSB 필드(2523)는 현재 ALP 패킷에서 페이로드의 길이(바이트)를 나타낸다. 예를 들어, Length_LSB 필드(2523)는 11 비트 필드로 구현될 수 있다.
Seg_SN 필드(2524)는 현재 ALP 패킷에서 전송되는 L3 패킷의 세그먼트의 식별자(세그먼트의 대응 순서)를 제공한다. 예를 들어, Seg_SN 필드(2524)는 5비트 필드로 구현될 수 있으며, 이 경우 최대 32 개의 세그먼트에 대한 식별자가 제공될 수 있다.
LI(Last Indicator) 필드(2525)는 현재 ALP 패킷이 L3 패킷의 마지막 세그먼트를 전송하는지 여부를 나타낸다. 예를 들어, LI 필드(2525)는 1비트 필드로 구현될 수 있다. 이 경우“1” 값은 현재 ALP 패킷이 L3 패킷의 마지막 세그먼트를 전송함을 나타내고, “0”값은 현재 L3 패킷의 마지막 세그먼트가 현재 ALP 패킷에 존재하지 않음을 나타낸다.
OHI 필드(2526)는 임의의 옵션 헤더 특징, 예를 들어 헤더 압축 모드를 나타내는 라벨링 또는 헤더 확장이 이용되는지 여부를 나타낸다. 예를 들어, 2비트 필드로 구현될 수 있다.
Optional Header 필드(2527)의 길이 및 값은 OHI 필드의 값에 따라 달라진다. 일 구현 예에서, 해당 필드는 Seg_SN = 0000인 경우에만 존재할 수 있다.
경우에 따라서는 L1 필드(2525)가 생략되고, 3 비트의 OHI 필드드(2526)가 이용될 수 있다.
도 18b는 다른 실시 예에 따른 ALP 패킷 헤더 구조를 나타낸다.
Total_length 필드(2529)는 복수의 ALP 패킷에 걸쳐 세그먼트된 L3 패킷의 전체 길이(바이트)를 제공한다. 예를 들어, Total_length 필드(2529)는 16 비트 필드로 구현될 수 있다. 해당 필드는 수신 단에서 서로 다른 ALP 패킷으로부터 세그먼트들의 재조합 후의 길이 체크에 이용된다. 일 구현 예에서, 해당 필드는 Seg_SN = 0000인 경우에만 존재할 수 있다. 다른 필드의 이용은 도 18a에서 설명한 것과 동일하므로 자세한 설명은 생략하도록 한다. 경우에 따라서는 L1 필드가 생략되고, 3 비트의 OHI 필드가 이용될 수 있다.
도 18c는 또 다른 실시 예에 따른 ALP 패킷 헤더 구조를 나타낸다.
Last_Seg_SN 필드(2530)는 L3 패킷의 모든 세그먼트를 전송하는 ALP 패킷의 개수를 나타낸다. 예를 들어, Last_Seg_SN 필드(2530)는 5 비트 필드로 구현될 수 있으며, 해당 필드의 값은 L3 패킷의 마지막 세그먼트를 전송하는 ALP 패킷에서 Seg SN 필드의 값과 동일하다.
R 필드(2531)는 향후 이용을 위해 리저브될 수 있으며, 예를 들어, 3 비트 필드로 구현될 수 있다.
한편, 해당 구현 예에서, L1 필드가 생략되고, 3 비트의 OHI 필드(2526)가 이용될 수 있다.
도 19a 및 도 19b는 상술한 세그먼테이션 모드를 구현하기 위한 옵션 중 Seg SN 만이 이용되며, 최대 페이로드 길이가 65,535 바이트인 경우의 다양한 실시 예를 나타낸다.
도 19a는 다른 실시 예에 따른 ALP 패킷 헤더 구조를 나타낸다.
Length_LSB 필드(2621)는 현재 ALP 패킷에서 11 LSB의 페이로드 길이(바이트)를 나타낸다. 예를 들어, 11 비트 필드로 구현될 수 있다. 이 경우, HMS 필드가 0 이면, Length_LSB 필드(2621)는 현재 ALP 패킷에서 페이로드의 실제 길이(바이트)를 나타낸다. 그렇지 않으면, Length_LSB 필드(2621)는 현재 ALP 패킷에서 페이로드의 실제 전체 길이(바이트)를 제공하기 위해 추가 헤더에서 필드 Length_MSB와 연결된다.
Seg_SN 필드(2622) 및 LI 필드(2623)의 이용은 도 18a 및 도 18b에 도시된 실시 예와 동일하다.
HMS(Header Mode for Segmentation) 필드(2624)는 임의의 특징 예를 들어, 추가 헤더의 이용 여부(또는 롱 ALP 패킷인지 여부)를 나타낸다. 예를 들어, HMS 필드(2624)는 1 비트 필드로 구현될 수 있다. 이 경우,“0”값은 이러한 특징 중 어느 것도 이용되지 않고, 현재 ALP 패킷의 길이가 2 바이트임을 나타낸다. 그렇지 않으면, “1” 값은 이러한 특징 중 적어도 하나가 이용됨을 나타내고, 이 경우, R 필드 이후의 추가 헤더는 예를 들어, 롱 SDU 또는 옵션 헤더 특징의 이용을 시그널링하는 제1 바이트와 항상 함께 시작한다.
R(reserved) 필드(2625)는 향후 이용을 위해 리저브되며 예를 들어 1비트 필드로 구현될 수 있다.
Length_MSB 필드(2626), LM 필드(2627), OHI 필드(2628)는 HMS 필드(2624)의 값이 “1”인 경우에만 나타나고, 이들의 이용은 도 23에 도시된 베이스 구조에 대한 실시 예와 동일하다.
도 19b는 다른 실시 예에 따른 ALP 패킷 헤더 구조를 나타낸다.
Length_LSB 필드(2631)은 현재 ALP 패킷에서 페이로드 길이(바이트)의 LSB를 나타낸다. 예를 들어, 11 비트 필드로 구현될 수 있다. 이 경우, LM 필드(2635)가 0 이면, Length_LSB 필드(2631)는 현재 ALP 패킷에서 페이로드의 실제 길이(바이트)를 나타낸다. 그렇지 않으면, 즉, LM 필드(2635)가 1 이면 Length_LSB 필드(2631)는 현재 ALP 패킷에서 페이로드의 실제 전체 길이(바이트)를 제공하기 위해 추가 헤더에서 Length_MSB 필드(2636)와 연결된다.
Seg_SN 필드(2632), LI 필드(2633)의 이용은 도 19a에 도시된 실시 예와 동일하다.
LM 필드(2635)는 현재 ALP 패킷에서 페이로드의 길이가 짧은지 긴지 나타낸다. 예를 들어, 1 비트 필드로 구현될 수 있다. 이 경우, “0”값은 211=2048 바이트보다 적은 숏 L2 페이로드 길이를 나타내는 반면,“1” 값은 2048 바이트 이상 65,535 바이트 이하인 롱 L2 페이로드 길이를 나타낸다.
Length_MSB 필드(2636)는 현재 ALP 패킷에서 8 MSB 비트의 페이로드 길이(바이트)를 제공한다. 예를 들어, Length_MSB 필드(2636)는 8비트 필드로 구현될 수 있다. 3 MSB 비트의 LENGMSB는 향후 이용을 위해 리저브되고, 본 실시 예에서는 “000”으로 설정된다. LENGMSB의 나머지 5 비트는 페이로드 데이터의 전체 길이를 제공하는, 16 비트 LENG 필드를 형성하기 위해, 11 비트 LENGLSB 필드와 연결된다. 이에 따라 페이로드 데이터의 최대 길이는 (216-1 =) 65535 바이트와 동일하다. 해당 필드는 LM 필드(2635)의 값이 “1”인 경우에만 나타난다.
한편, 도 19a 및 도 19b에 도시된 실시 예에서, Total_length 필드 또는 Last Seg SN 필드는 Seg_SN의 필드의 값이 0인 경우 나타날 수 있다. OHI 필드 및 Optional Header에 대해서는 추후에 자세히 설명하도록 한다.
도 20a 및 도 20b는 상술한 세그먼테이션 모드를 구현하기 위한 옵션 중 Seg SN 뿐 아니라 Seg_ID가 함께 이용되며, 최대 페이로드 길이가 2,047 바이트인 경우의 다양한 실시 예를 나타낸다.
도 20a는 일 실시 예에 따른 ALP 패킷 헤더 구조를 나타낸다.
Seg_ID 필드(2712)는 세그먼트된 L3 패킷의 식별자를 제공한다. 예를 들어, Seg_ID 필드(2712)는 2 비트 필드로 구현될 수 있다. 이 경우, 동일한 L3 패킷으로부터의 세그먼트를 포함하는 모든 ALP 패킷은 동일한 Seg ID를 가진다.
Length_LSB 필드(2711), Seg_SN 필드(2713) 및 LI 필드(2714)의 이용은 도 18a에 도시된 실시 예와 동일하다.
Last_Seg_SN 필드(2715) 및 OHI 필드(2716)는 Seg_SN 필드(2713)의 값이 “00000”인 경우에만 나타나고, 이들의 이용은 도 18c에 도시된 실시 예와 동일하다.
도 20b는 다른 실시 예에 따른 ALP 패킷 헤더 구조를 나타낸다.
L1 필드가 존재하지 않고, Seg_ID 필드(2722)의 길이가 더 큰 개수의 세그먼트된 L3 패킷을 지원하기 위해 확장된다는 것을 제외하고 도 27a에 도시된 실시 예와 동일하다. 이에 따라 Length_LSB 필드(2721), Seg_SN 필드(2723), Last_Seg_SN 필드(2725) 및 OHI 필드(2726)의 이용은 도 27a에 도시된 실시 예와 동일하다.
도 21은 상술한 세그먼테이션 모드를 구현하기 위한 옵션 중 Seg SN 뿐 아니라 Seg_ID가 함께 이용되며, 최대 페이로드 길이가 65,535 바이트인 경우의 일 실시 예를 나타낸다.
HMS 필드(2814)는 임의의 특징 예를 들어, 롱 ALP 패킷, 또는 옵션 헤더가 이용되거나, 현재 ALP 패킷이 L3 패킷의 마지막 세그먼트를 포함하는 경우 나타난다. 예를 들어, HMS 필드(2814)는 1비트 필드로 구현될 수 있다. 이 경우,“0”값은 이러한 특징들 중 어느 것도 이용되지 않고, 현재 ALP 패킷의 길이가 3 바이트림을 나타낸다. “1”값은 이러한 특징들 중 적어도 하나가 이용됨을 나타내고, 이 경우, HMS 필드 이후의 추가 헤더는 예를 들어, 롱 SDU 옵션 헤더 특징의 이용을 시그널링하거나, L3 패킷의 마지막 세그먼트를 포함하는, 제1 바이트와 항상 함께 시작한다.
Length_LSB 필드(2811), Seg_ID 필드(2812) 및 Seg_SN 필드(2813)의 이용은 도 27a에 도시된 실시 예와 동일하다.
Lengh_MSB 필드(2815), LI 필드(2816), OHI 필드(2817)는 HMS 필드(2814)의 값이 “1”인 경우에만 나타나고, 이들의 이용은 상술한 실시 예들과 동일하다.
또 다른 실시 예에서, L1 필드(2816)는 OHI 필드(2817)가 3 비트로 구현됨에 따라 생략될 수 있고, Last_Seg_SN 필드는 Seg_SN 필드(2813)가 “00000”인 경우 나타날 수 있다.
컨캐터네이션 모드(Concatenation mode)
도 22는 본 발명의 일 실시 예에 따라 컨캐터네이션 모드를 구현하기 위한 ALP 패킷의 구조를 도시한다. 도 22에 도시된 실시 예는 최대 페이로드 길이가 65,535 바이트인 경우의 일 실시 예를 나타낸다.
Length_LSB 필드(2911)는 현재 ALP 패킷에서 페이로드 길이(바이트)의 LSB를 나타낸다. 예를 들어, Length_LSB 필드(2911)는 11비트 필드로 구현될 수 있다. Length_LSB 필드(2911)는 이후의 Length_MSB 필드(2912)와 연결되어 현재 ALP 패킷에서 페이로드의 실제 전체 길이(바이트)를 제공한다.
Length_MSB 필드(2912)는 현재 ALP 패킷에서 5 MSB 비트의 페이로드 길이(바이트)를 제공한다. 예를 들어 Length_MSB 필드(2912)는 5 비트 필드로 구현될 수 있다. Length_MSB 필드(2912)는 페이로드 데이터의 전체 길이를 제공하는, 16 비트 길이 필드를 형성하기 위하여 11 비트 길이의 Length_LSB 필드(2911)와 연결된다. 이에 따라 페이로드 데이터의 전체 길이는 65,535 (= 216-1) 바이트와 동일하다.
Count 필드(2913)는 해당 BBP에 포함된 L3 패킷의 개수를 제공한다. 예를 들어, Count 필드(2913)는 4 비트 필드로 구현될 수 있다. 현재 ALP 패킷에서 L3 패킷의 실제 개수는 Count 필드(2913) 값 + 1로 주어진다.
OHI 필드(2914)는 추가 헤더가 존재하는지 여부를 나타낸다. 예를 들어, OHI 필드(2914)는 1 비트 필드로 구현될 수 있다.
lengths 필드(2915)의 길이는 11* Count(2913) 비트로 주어진다. 각 11 비트 필드는 현재 ALP 패킷의 페이로드에 연결된 L3 패킷의 길이를 제공한다.
R 필드(2916)를 구성하는 일부 비트는 바이트로 경계를 정렬하도록 리저브된다.
도 23a 내지 도 23c는 본 발명의 다양한 실시 예에 따른 OHI 필드 및 Optional Header 필드의 구성을 나타내는 도면들이다.
OHI 필드는 LABELI 필드, EXHI 필드, EXHLM 필드 및 HCM 필드 중 적어도 하나를 포함할 수 있다.
LABELI 필드는 LABEL 필드가 옵션 헤더에 존재하는지 여부를 나타낸다. 예를 들어, LABELI 필드는 1비트 필드로 구현될 수 있다. 여기서,“0”값은 LABEL 필드가 존재하지 않음을 나타내는 반면, "1" 값은 LABEL 필드가 존재함을 나타낸다. LABEL 필드의 길이는 1 또는 2 또는 3 바이트가 될 수 있다.
EXHI 필드는 옵션 헤더 이후에 확장 헤더가 존재하는지 여부를 나타낸다. 예를 들어, EXHI 필드는 1비트 필드로 구현될 수 있다. 여기서,“1”값은 확장 헤더가 존재함을 나타내는 반면,“0”값은 확장 헤더가 존재하지 않음을 나타낸다.
EXHLM 필드는 확장 헤더가 존재하는 경우 확장 헤더의 길이의 장단을 나타낸다. 예를 들어 EXHLM 필드는 2 비트 필드로 구현될 수 있다. 이 경우,“00”값은 확장 헤더가 존재하지 않음을 나타내고, “01”값은 8 비트 사이즈의 숏 EXHL(short Extension Header length) 필드가 존재함을 나타내고, “10” 값은 16 비트 사이즈의 롱 EXHL(short Extension Header length) 필드가 존재함을 나타낸다. EXHL 필드는 옵션 헤더 다음으로 시그널링된다.
HCM 필드는 현재 BBP의 옵션 헤더에서 헤더 압축을 위한 추가 정보가 존재하는 경우에 나타낸다. 예를 들어, HCM 필드는 1비트 필드로 구현될 수 있다.
Optional Header 필드는 LABEL 필드, EXHL 필드 및 HCI 필드 중 적어도 하나를 포함할 수 있다.
LABEL 필드는 하드웨어/소프트웨어 필터링을 위해 이용될 수 있는 서브 스트림 어드레스를 제공한다. 예를 들어, 16 비트 필드로 구현될 수 있다.
EXHL 필드는 옵션 헤더 다음의 확장 헤더의 길이(바이트)를 제공한다. 예를 들어, 8비트 또는 16 비트 필드로 구현될 수 있다. 해당 필드의 길이는 EXTHLM의 값이 “0”인 경우 8비트가 되고, EXTHLM의 값이 “1”인 경우 16비트가 된다.
HCI 필드는 현재 ALP 패킷에서 전송되는 압축 SDU 헤더를 복원하기 위한 추가 정보를 포함한다.
도 24는 본 발명의 또 다른 실시 예에 따른 ALP 패킷 헤더의 syntax를 나타내는 도면이다.
도 24에 도시된 바와 같이 ALP 패킷 헤더의 베이스 헤더에는 TYPE, MODE, LENGM, LENGLSB 등의 필드가 포함될 수 있는데 이하에서는 이러한 필드들을 포함하는 ALP 패킷 헤더의 구조의 다양한 실시 예에 대해 설명하도록 한다.
도 25는 본 발명의 또 다른 실시 예에 따른 ALP 패킷 헤더의 구조를 나타내는 도면이다.
도 25에 도시된 바에 따르면, ALP 패킷 헤더는 Base 필드(Base Header)(3320), Optinal 필드(Optinal Header)(3330) 및 Extension 필드(Extension Header)(3340)를 포함한다.
특히, base 필드(3320)는 TYPE 필드(3321), MODE 필드(3322), LENGM 필드(3323) 및 LENGLSB 필드(3324)를 포함할 수 있다.
TYPE 필드(3321)는 페이로드 데이터의 타입을 나타낸다. 예를 들어, TYPE 필드(3321)는 3 비트 필드로 구현될 수 있다. 예를 들어, 000은 IPv4, 001은 IPv6, 010은 압축된 IPv4, 011은 압축된 IPv6, 100은 시그널링, 101은 MPEG-2 전송 스트림, 110-111은 reserved를 나타낸다.
MODE 필드(3322)는 추가 헤더의 임의의 특징 예를 들어, 라벨링, 세그먼테이션, 컨캐터네이션, 또는 헤더 확장이 이용되는지 여부를 나타낸다. 예를 들어, MODE 필드(3322)는 1 비트 필드로 구현될 수 있다. 이 경우, "0" 값은 이러한 특징들 중 어느 것도 이용되지 않음을 나타낸다. 반면, "1" 값은 이러한 특징들 중 적어도 하나가 이용됨을 나타낸다. 이 경우, 베이스 헤더(3320) 이후의 추가 헤더(3330)는 항상 라벨링, 세그먼테이션, 컨캐터네이션 및 헤더 확장 특징의 이용을 시그널링하는 제1 바이트와 함께 시작하게 된다.
LENGM 필드(3323)는 현재 ALP 패킷이 짧은지 긴지 나타낸다. 예를 들어, LENGM 필드(3323)는 1 비트 필드로 구현될 수 있다. 이 경우,“0”값은 211=2048 바이트보다 적은 숏 L2 페이로드 길이를 나타내는 반면, “1” 값은 2048 바이트 이상 65,535 바이트 이하인 롱 L2 페이로드 길이를 나타낸다.
LENGLSB 필드(3324)는 현재 L2에서 11 LSB 비트의 페이로드 길이(바이트)를 나타낸다. LENGM 필드(3323)가 0으로 설정되면, LENGLSB 필드(3324)는 현재 L2에서 페이로드의 실제 길이(바이트)를 나타낸다. 반면, LENGLSB 필드(3324)는 현재 ALP 패킷에서 페이로드의 실제 전체 길이(바이트)를 제공하기 위해 추가 헤더(3330)에서 LENGMSB 필드와 연결된다.
도 26은 본 발명의 또 다른 실시 예에 따른 ALP 패킷 헤더 중 옵션 필드의 구조를 나타내는 도면이다.
LABELI 필드(3332)는 LABEL 필드가 추가 헤더에 존재하는지 여부를 나타낸다. 예를 들어, LABELI 필드(3332)는 1비트 필드로 구현될 수 있다. 여기서,“0”값은 LABEL 필드가 존재하지 않음을 나타내는 반면, "1" 값은 LABEL 필드가 존재함을 나타낸다. LABEL 필드의 길이는 1 또는 2 또는 3 바이트가 될 수 있다.
EXTHI 필드(3333)는 EXHI 필드는 추가 헤더 이후에 확장 헤더가 존재하는지 여부를 나타낸다. 예를 들어, EXHI 필드(3333)는 1비트 필드로 구현될 수 있다. 여기서,“1”값은 확장 헤더가 존재함을 나타내는 반면,“0”값은 확장 헤더가 존재하지 않음을 나타낸다.
EXTHLM 필드(3334)는 확장 헤더가 존재하는 경우 확장 헤더의 길이의 장단을 나타낸다. 예를 들어 EXHLM 필드(3334)는 1 비트 필드로 구현될 수 있다. 이 경우,“0”값은 8 비트 사이즈의 숏 EXHL(short Extension Header length) 필드가 존재함을 나타내고, “1” 값은 16 비트 사이즈의 롱 EXHL(short Extension Header length) 필드가 존재함을 나타낸다. EXHL 필드는 옵션 필드 다음으로 시그널링된다.
S 필드(3335)는 현재 ALP 패킷이 SDU의 세그먼트를 전송하는지 나타낸다. 예를 들어, “1” 값은 현재 ALP 패킷의 페이로드가 SDU의 세그먼트를 전송함을 나타내는 반면, "0" 값은 현재 ALP 패킷의 페이로드가 온전한 SDU를 전송함을 나타낸다.
C 필드(3336)는 현재 ALP 패킷이 복수의 SDU를 전송하는지 나타낸다. "1"값은 현재 ALP 패킷에서 복수의 SDU를 전송함을 나타내고, "0"값은 현재 ALP 패킷의 페이로드가 하나의 온전한 SDU를 전송함을 나타낸다.
한편, S 필드(3335)가 1인 경우에만, Seg_ID 필드(3341), Seg_SN 필드(3342), FRAGTOTAL 필드(3343)가 존재한다.
Seg_ID 필드(3341)는 SDU의 세그먼트가 현재 ALP 패킷의 페이로드에 포함되는 경우 SDU에 대한 식별자를 제공한다. 예를 들어, Seg_ID 필드(3341)는 3 비트 필드로 구현될 수 있다. 동일한 SDU에 속하는 세그먼트를 포함하는 모든 ALP 패킷은 동일한 Seg_ID를 포함할 수 있다. Seg_ID는 SDU의 마지막 세그먼트가 전송될 때까지 다시 이용되지 않게 된다.
Seg_SN 필드(3342)는 현재 ALP 패킷에서 전송된 SDU의 세그먼트 식별자를 제공한다. 예를 들어, Seg_SN 필드(3342)는 4 비트 필드로 구현될 수 있다. 이에 따라 최대 16 세그먼트가 지지될 수 있다.
FRAGTOTAL 필드(3343)는 복수의 ALP 패킷에 걸쳐 세그먼트된 SDU의 전체 길이(바이트)를 제공한다. 예를 들어, FRAGTOTAL 필드(3343)는 16 비트로 구현될 수 있다. 해당 필드는 수신단에서 서로 다른 ALP 패킷으로부터 서로 다른 SDU 세그먼트의 리어셈블리 이후에 길이 체크에 이용된다. 해당 필드는 Seg_SN 필드(3342)가 "0000"이 경우에만 존재하게 된다.
다른 한편, C 필드(3336)가 1인 경우에만 Count 필드(3345), LM 필드(3346), Length 필드(3347)가 존재한다.
Count 필드(3345)는 해당 ALP 패킷에 포함된 SDU의 개수를 제공한다. 예를 들어, Count 필드(3345)는 2 비트 필드로 구현될 수 있다. 현재 ALP 패킷에서 SDU의 실제 개수는 Count 필드(3345) 값 + 1로 주어진다.
LM 필드(3346)는 현재 ALP 패킷에서 전송되는 SDU에 대한 길이 지시 모드를 나타낸다. LM 필드(3346)는 1 비트 필드로 구현될 수 있다. LM 필드(3346)가 "0"인 경우, 다음 길이 필드의 길이는 11 비트이고, 각 SDU는 2048 바이트보다 더 짧다. 반면, LM 필드(3346)가 "1"인 경우, 다음 길이 필드의 길이가 2 바이트이고, 각 SDU는 65536 바이트보다 더 짧다.
Length 필드(3347)는 현재 ALP 패킷에서 전송되는 각 SDU의 길이를 제공한다. 해당 필드의 일 예에 따른 개수는 Count + 1(또는 Count)로 주어질 수 있다.
또한, 엑스트라 패딩이 바이트 정렬을 위해 추가될 수 있다.
다른 한편, R 필드(3344-1, 3344-2, 3344-3)는 향후 이용을 위해 리저브될 수 있으며, 예를 들어, 4 비트 필드(3344-1), 가변 비트(3344-2), 3 비트(3344-3) 등으로 구현될 수 있다.
LENGMSB 필드(3347)는 현재 ALP 패킷에서 페이로드 길이의 8 MSB 비트를 제공하는 8 비트 필드로 구현될 수 있다. LENGMSB 필드(3347) 중 3 MSB 비트는 향후 이용을 위해 리저브되고, "000"으로 설정될 수 있다. LENGMSB 중 나머지 5 비트는 16 비트 LENG 필드를 형성하기 위하여, 11 비트의 LENGLSB와 연결되고, 페이로드 데이터의 전체 길이를 제공한다. 페이로드 데이터의 최대 길이는 216-1=65535 바이트와 동일하다.
LABEL 필드(3348)는 하드웨어/소프트웨어 필터링을 위해 이용될 수 있는 서브 스트림 어드레스를 제공한다. 예를 들어, 16 비트 필드로 구현될 수 있다.
EXTHL 필드(3349)는 옵션 필드 다음의 확장 필드의 길이(바이트)를 제공한다. 예를 들어, 8비트 또는 16 비트 필드로 구현될 수 있다. 해당 필드의 길이는 EXTHLM의 값이 “0”인 경우 8 비트가 되고, EXTHLM의 값이 “1”인 경우 16 비트가 된다.
도 27a 및 도 27b, 도 28a 및 도 28b, 도 29는 옵션 필드의 또 다른 실시 예를 도시한다.
도 27a 및 도 27b는 세그먼테이션 모드 즉, 도 26에 도시된 실시 예에서 S 필드(3335)가 1인 경우의 옵션 필드 구조의 또 다른 실시 예를 나타낸다.
도 28a 및 도 28b는 컨캐터네이션 모드 즉, 도 26에 도시된 실시 예에서 C 필드(3336)가 1인 경우의 옵션 필드 구조의 또 다른 실시 예를 나타낸다.
도 29는 세그먼테이션 모드 및 컨캐터네이션 모드를 모두 지지하는 형태의 옵션 필드 구조의 또 다른 실시 예를 나타낸다.
도 27a 및 도 27b, 도 28a 및 도 28b, 도 29에 도시된 각 필드의 기능은 도 26에서 설명한 것과 동일하므로 자세한 설명은 생략하도록 한다.
도 30은 본 발명의 또 다른 실시 예에 따른 ALP 패킷 헤더의 구조를 나타내는 도면이다.
도 30에 도시된 구성 TYPE 필드 및 SM 필드는 커먼 파트(Common part)로 구현된다.
TYPE 필드(3371)는 페이로드 데이터의 타입을 나타낸다. 예를 들어, TYPE 필드(3371)는 3 비트 필드로 구현될 수 있으며, 000은 IPv4, 001은 압축된 IPv4 패킷, 010은 압축된 IPv4, 011은 압축된 IPv6, 100은 시그널링, 101은 MPEG-2 전송 스트림, 110~111은 리저브드를 나타낼 수 있다.
SM 필드(3372)는 현재 ALP 패킷 즉, ALP 패킷이 하나의 온전한 L3 패킷을 전송하는지 여부를 나타낸다. 예를 들어, SM 필드(3372)는 1 비트 필드로 구현될 수 있으며, 이 경우“1” 값은 현재 ALP 패킷의 페이로드가 하나의 온전한 L3 패킷을 전송한다는 것을 나타내는 반면, “0” 값은 현재 ALP 패킷의 페이로드가 복수의 온전한 L3 패킷을 전송하거나, L3 패킷의 세그먼트를 전송함을 나타낼 수 있다.
싱글 컴플리트 SDU 모드(Single complete SDU mode)
SM 필드(3372) 필드가 "1" 인 경우 싱글 컴플리트 SDU 모드를 나타낸다.
E 필드(3373)는 임의의 특징 예를 들어, long SDU, 또는 추가 헤더가 이용되는지 여부를 나타낸다. 예를 들어, E 필드(3373)는 1 비트 필드로 구현될 수 있다. 이 경우,“0” 값은 이러한 특징이 전혀 이용되지 않음을 나타내는 반면, “1” 값은 이러한 특징 중 적어도 하나가 이용됨을 나타낸다. 이 경우 Length_LSB 필드 이후의 추가 헤더(additional Header)는 예를 들어, Long SDU 또는 옵션 헤더 특징의 이용을 시그널링하는 제1 바이트와 항상 함께 시작한다.
Length_LSB 필드(3374)는 현재 ALP 패킷에서 11 LSB 비트의 페이로드 길이(바이트)를 나타낸다. 예를 들어 Length_LSB 필드(3374)는 11 비트 필드로 구현될 수 있다. 이 경우, LM 필드(3375)가 0으로 설정되면, Length_LSB 필드(3374)는 현재 ALP 패킷에서 페이로드의 실제 길이(바이트)를 나타낸다. 반면, LM 필드(3375)가 1로 설정되면 Length_LSB 필드(3374)는 추가 헤더에서 필드 Length_MSB 필드와 연결되어 현재 ALP 패킷에서 페이로드의 실제 전체 길이(바이트)를 제공한다.
LM 필드(3375)는 현재 ALP 패킷에서 페이로드의 길이가 짧은지 긴지 나타낸다. LM 필드(3375)는 예를 들어, 1 비트 필드로 구현될 수 있다. 이 경우,“0”값은 211=2048 바이트보다 적은 숏 L2 페이로드 길이를 나타내는 반면, “1” 값은 2048 바이트 이상 65,535 바이트 이하인 롱 L2 페이로드 길이를 나타낸다.
OHI 필드(3376)는 임의의 추가 헤더의 특징 예를 들어, 헤더 압축 모드를 나타내는 라벨링 또는 헤더 확장이 이용되는지 여부를 나타낸다. 예를 들어, OHI 필드(2343)는 2 비트 필드로 구현될 수 있다.
reserved 필드(3377)는 향후 이용을 위해 리저브될 수 있다.
Optional Header 필드(3378)의 길이 및 값은 OHI 필드의 값에 따라 달라질 수 있다.
한편, SM 필드(3372) 필드가 "0" 인 경우 세그먼테이션 모드(Segmentation mode)이거나, 컨캐터네이션 모드(Concatenation mode) 임을 나타낸다.
S/C 필드(3480)는 현재 ALP 패킷의 페이로드가 SDU의 세그먼트를 전송하거나, 복수의 온전한 SDU를 전송하는지 나타낸다. 예를 들어, S/C 필드(3480)는 1 비트 필드로 구현될 수 있으며, 이 경우, “0”값은 현재 ALP 패킷의 페이로드가 SDU의 세그먼트를 전송함을 타내는 반면,“1”값은 현재 ALP 패킷의 페이로드가 복수의 온전한 SDU를 전송함을 나타낼 수 있다.
세그먼테이션 모드(Segmentation mode)
Seg_ID 필드(3481)는 SDU의 세그먼트가 현재 ALP 패킷의 페이로드에 포함된 경우, 세그먼트된 SDU의 식별자를 제공한다. 예를 들어, Seg_ID 필드(3481)는 3 비트 필드로 구현될 수 있다. 이 경우, 동일한 SDU에 속하는 세그먼트를 포함하는 모든 ALP 패킷은 동일한 Seg ID를 가진다. Seg ID는 SDU의 마지막 세그먼트가 전송될 때까지 재사용되지 않게 된다.
Seg_SN 필드(3482)는 현재 ALP 패킷에서 전송되는 SDU의 세그먼트의 식별자를 제공한다. 예를 들어, Seg_SN 필드(3482)는 3비트 필드로 구현될 수 있으며, 이 경우 최대 8 개의 세그먼트에 대한 식별자가 제공될 수 있다.
F_Seg_Len 필드(3484)는 현재 ALP 패킷에서 페이로드의 길이를 제공하며, 11 비트 필드로 구현될 수 있다. 해당 필드는 Seg_SN 필드(3482)가 "000"인 경우 나타날 수 있다.
LI(Last Indicator) 필드(3485)는 현재 ALP 패킷에서 SDU의 세그먼트가 마지막 세그먼트인지 나타낸다. 예를 들어, LI 필드(3485)는 1 비트 필드로 구현될 수 있다. 이 경우“0”값은 현재 ALP 패킷에서 SDU의 세그먼트가 마지막 세그먼트가 아님을 나타내고,“1”값은 현재 ALP 패킷에서 SDU의 세그먼트가 마지막 세그먼트임을 나타낸다. 해당 필드는 Seg_SN 필드(3482)가 "000"인 경우 나타날 수 있다.
Seg_Len_ID 필드(3486)는 현재 ALP 패킷의 페이로드 길이를 나타내며, 예를 들어 3 비트 필드로 구현될 수 있다. 해당 필드의 값은 기설정된 테이블로부터 실제 값을 획득하는데 이용될 수 있다.
컨캐터네이션 모드(Concatenation mode)
*Count 필드(3487)는 해당 ALP 패킷에 포함된 SDU의 개수를 제공한다. 예를 들어, Count 필드(3487)는 2 비트 필드로 구현될 수 있다. 현재 ALP 패킷에서 SDU의 실제 개수는 Count 필드(3487) 값 + 1로 주어진다.
LM 필드(3488)는 현재 ALP 패킷에서 전송되는 SDU의 길이 지시 모드를 나타내며, 예를 들어, 1 비트 필드로 구현될 수 있다. 이 경우,“0”값은 다음 길이 필드가 11 비트이고, 각 SDU가 2048 바이트보다 짧음을 나타낸다. 반면,“1” 값은 다음 길이 필드가 2 바이트이고, 각 SDU가 65,536 바이트 보다 짧음을 나타낸다.
Length 필드(3489)는 현재 ALP 패킷에서 전송되는 각 SDU의 길이를 제공한다. 해당 필드의 일 예에 따른 개수는 Count + 1(또는 Count)로 주어질 수 있다.
또한, 엑스트라 패딩이 바이트 정렬을 위해 추가될 수 있다.
도 31, 도 32a 및 도 32b는 도 30에 도시된 ALP 패킷 헤더의 구조의 각 모드에 따른 또 다른 실시 예를 도시한다.
도 31은 세그먼테이션 모드에서 Seg ID 필드를 이용하지 않는 경우의 실시 예를 나타낸다. 도 31에 도시된 각 필드의 기능은 도 30에서 설명한 것과 동일하므로 자세한 설명은 생략하도록 한다.
도 32a 및 도 32b는 컨캐터네이션 모드에서의 또 다른 실시 예를 도시한다.
도 32a 및 도 32b에 도시된 각 필드의 기능은 도 37에서 설명한 것과 동일하므로 자세한 설명은 생략하도록 한다.
도 33은 본 발명의 또 다른 실시 예에 따른 옵션 헤더 구조를 설명하기 위한 도면이다.
도시된 구성 중 Seg_BBP_H 필드(4011)는 S 필드(4021)가 1인 경우 나타난다. 예를 들어, 해당 필드는 Seg_ID, Seg_SN, 세그먼테이션 이전의 SDU의 길이 등을 나타낸다.
Con_BBP_H 필드(4012)는 C 필드(4022)가 1인 경우 나타난다. 예를 들어, 해당 필드는 현재 ALP 패킷에서 컨캐터네이션된 SDU의 개수 및 그들의 길이를 나타낸다. 그 밖에 도 33에 도시된 각 필드의 기능은 도 26, 도 30 등에서 설명한 것과 동일하므로 자세한 설명은 생략하도록 한다.
도 34는 본 발명의 일 실시 예에 따른 송신 장치의 신호 처리 방법을 설명하기 위한 흐름도이다.
도 34에 도시된 송신 장치의 신호 처리 방법에 따르면, 우선, 입력 스트림에 대응되는 헤더 및 페이로드를 포함하는 패킷을 생성한다(S4210). 여기서, 헤더를 구성하는 베이스 헤더는, 입력 스트림의 패킷 타입을 나타내는 제1 필드 및 해당 패킷이 하나의 온전한 입력 패킷 하나의 온전한 입력 패킷(a single, complete input packet)을 전송함을 나타내는 제1 값 또는, 해당 패킷이 입력 패킷의 세그먼트를 전송하거나 복수의 입력 패킷을 전송함을 나타내는 제2 값으로 설정되는 제2 필드를 포함하며, 제2 필드가 제1 값으로 설정되면, 베이스 헤더는 추가 헤더가 존재하지 않음을 나타내는 제3 값 또는 추가 헤더가 존재함을 나타내는 제4 값으로 설정되는 제3필드를 포함할 수 있다. 또한, 제3 필드가 제4 값으로 설정되면, 추가 헤더는, 옵션 헤더에 서브 스트림 식별자가 존재하는지 여부를 나타내는 제4 필드를 포함하며, 제4 필드가 옵션 헤더에 서브 스트림 식별자가 존재함을 나타내는 값으로 설정되면, 옵션 헤더는, 서브 스트림 식별자를 나타내는 제5 필드를 포함할 수 있다.
이어서, 생성된 패킷을 포함하는 프레임을 생성한다(S4220). 여기서, 프레임은 베이스밴드 패킷이 될 수 있다.
이어서, 생성된 프레임 즉, 베이스밴드 패킷을 신호 처리한다(S4230).
이 후, 신호 처리된 프레임을 전송한다(S4240). 여기서, 신호 처리된 프레임은 전송 프레임이 될 수 있다.
도 35a는 본 발명의 일 실시 예에 따른 수신 장치의 구성을 나타낸 블록도이다.
도 35a를 참조하면, 수신 장치(200)는 수신부(210) 및 신호 처리부(220)를 포함한다.
수신 장치(200)는 입력 스트림에 포함된 데이터를 적어도 하나의 신호 처리 경로에 매핑하여 전송하는 송신 장치로부터 데이터를 수신하도록 구현될 수 있다.
수신부(210)는 적어도 하나의 신호 처리 경로에 매핑된 데이터를 포함하는 프레임을 수신한다. 구체적으로, 수신부(210)는 시그널링 정보 및 적어도 하나의 신호 처리 경로에 매핑된 데이터를 포함하는 스트림을 수신할 수 있다. 여기서, 시그널링 정보는, 송신 장치에 입력되는 입력 스트림의 입력 타입에 대한 정보 및 적어도 하나의 신호 처리 경로에 매핑된 데이터 타입에 대한 정보를 포함할 수 있다. 여기서, 입력 스트림의 입력 타입에 대한 정보는, 프레임 내의 모든 신호 처리 경로가 동일한 입력 타입인지 여부를 나타낼 수 있다. 그 밖에 시그널링 정보에 포함되는 구체적인 정보에 대해서는 상술한 바 있으므로 자세한 설명을 생략하도록 한다.
신호 처리부(220)는 수신된 프레임에서 시그널링 정보를 추출한다. 특히, 신호 처리부(220)는 L1 시그널링을 추출하고, 디코딩하여 L1 프리 시그널링 영역 및 L1 포스트 시그널링 영역에 포함된 해당 PLP에 대한 다양한 정보를 획득할 수 있다. 또한, 신호 처리부(230)는 추출된 시그널링 정보에 기초하여 프레임을 신호 처리할 있다. 예를 들어, 신호 처리는 복조(Demodulation), 프레임 디빌더(Frame De-builder), BICM 디코딩, 입력 디-프로세싱(Input De-processing) 과정을 수행할 수 있다.
구체적으로, 신호 처리부(220)는 수신부(210)를 수신된 전송 프레임을 신호 처리하여 베이스밴드 패킷을 생성하고, 생성된 베이스밴드 패킷에 포함된 ALP 패킷 (Baseband Packet)에서 헤더 정보를 추출한다.
그리고, 신호 처리부(220)는 추출된 헤더 정보에 기초하여 ALP 패킷에 포함된 페이로드 데이터를 신호 처리하여 스트림, 즉 상술한 송신 장치(100)에 최초 입력된 입력 스트림을 복원할 수 있다. 여기서, 추출된 헤더 정보는 페이로드 데이터 타입을 나타내는 필드 및 해당 ALP 패킷이 온전한 입력 패킷을 전송하는지 여부를 나타내는 필드를 포함한다.
도 35b는 본 발명의 일 실시 예에 따른 신호 처리부를 구체적으로 설명하기 위한 블록도이다.
도 35b에 따르면, 신호 처리부(220)는 디모듈레이터(221), 디코더(222) 및 스트림 제너레이터(223)을 포함한다.
디모듈레이터(221)는 수신된 RF 신호로부터 OFDM 파라미터에 따라 복조를 수행하여, 싱크 디텍션을 수행하고 싱크가 디텍션되면 싱크 영역에 저장된 시그널링 정보로부터 현재 수신되는 프레임이 필요한 서비스 데이터를 포함하는 프레임인지 인식한다. 예를 들어 Mobile 프레임이 수신되는지, Fixed 프레임이 수신되는지 인식할 수 있다.
이 경우, 시그널링 영역과 데이터 영역에 대한 OFDM 파라미터가 미리 정해져 있지 않은 경우, 싱크 영역에 저장되어 있는 시그널링 영역과 데이터 영역에 대한 OFDM 파라미터를 획득하여 싱크 영역 바로 다음에 오는 시그널링 영역과 데이터 영역에 대한 OFDM 파라미터 정보를 획득하여 복조를 수행할 수 있다.
디코더(222)는 필요한 데이터에 대한 복호화를 수행한다. 이 경우, 디코더(222)는 시그널링 정보를 이용하여 각 데이터 영역에 저장된 데이터에 대한 FEC 방식, 변조 방식 등의 파라미터를 획득하여 복호화를 수행할 수 있다. 또한, 디코더(223)는 헤더에 포함된 데이터 정보에 기초하여 필요한 데이터의 위치를 산출할 수 있다. 즉, 필요한 PLP가 프레임의 어느 위치에서 전송되는지 산출할 수 있다.
스트림 제너레이터(223)는 디코더(222)로부터 입력받은 베이스밴드 패킷을 처리하여 서비스될 데이터를 생성할 수 있다.
일 예로, 스트림 제너레이터(223)는 다양한 정보에 기초하여 에러 정정된 베이스밴드 패킷으로부터 ALP 패킷 을 생성할 수 있다. 구체적으로, 스트림 제너레이터(223)는 디-지터 버퍼들을 포함할 수 있는데 디-지터 버퍼들은 다양한 정보에 기초하여 출력 스트림을 복원하기 위한 정확한 타이밍을 재생성할 수 있다. 이에 따라 복수 개의 PLP들 간의 싱크를 위한 딜레이가 보상될 수 있다.
도 36은 본 발명의 일 실시 예에 따른 수신기의 구성을 나타낸 블록도이다.
도 36을 참조하면 수신기(4400)는 제어기(4410), RF 수신기(4420), 복조기(4430) 및 서비스 재생기(4440)를 포함할 수 있다.
제어기(4410)는 선택된 서비스가 전송되는 RF channel 및 PLP를 판단한다. 이 때 RF channel은 중심 주파수(center frequency)와 대역폭(bandwidth)으로 특정될 수 있으며, PLP는 PLP ID로 특정될 수 있다. 특정 서비스는 서비스를 구성하는 컴포넌트 별로 하나 이상의 RF channel에 속한 하나 이상의 PLP를 통하여 전송할 수 있지만, 이후로는 설명의 편의를 위하여 하나의 서비스를 재생하기 위하여 필요한 모든 데이터는 하나의 RF channel로 전송되는 하나의 PLP로 전송된다고 가정한다. 즉 서비스는 서비스의 재생을 위한 유일한 데이터 획득 경로를 가지며, 데이터 획득 경로는 RF channel과 PLP로 특정된다.
RF 수신기(4420)는 제어기(4410)에서 선택한 RF channel에서 RF 신호를 검출하고, RF 신호에 신호처리를 수행하여 추출된 OFDM symbol들을 복조기(4430)로 전달한다. 여기서, 신호 처리는 동기화, 채널 추정 및 equalization 등을 포함할 수 있으며, 신호 처리를 위한 정보들은 그 용도와 구현에 따라 송/수신기가 미리 약속한 값이거나 OFDM symbol 중 미리 약속된 특정한 OFDM symbol에 포함되어 수신기에서 전달된다.
복조기(4430)는 OFDM symbols들에 신호 처리를 수행하여 user packet을 추출하고 이를 서비스 재생기(4440)에 전달하며, 서비스 재생기(4440)는 user packet을 사용하여 사용자가 선택한 서비스를 재생하여 출력한다. 이 때 user packet의 포맷은 서비스의 구현 방식에 따라 달라질 수 있으며, 일 예로 TS packet이나 IPv4 packet이 있다.
도 37 도 36에 도시된 복조기를 본 발명의 일 실시 예에 따라 좀 더 자세히 도시한 블록도이다.
도 37을 참조하면 복조기(4430)는 프레임 디맵퍼(Frame demapper)(4431), L1 signaling을 위한 BICM 복호기(4432), 컨트롤러(4433), BICM 복호기(4434), 출력 처리기(4435)를 포함하여 구성될 수 있다.
프레임 디맵퍼(4431)는 컨트롤러(4433)에서 전달되는 제어 정보를 바탕으로 OFDM symbol로 구성된 프레임에서 선택된 PLP에 속한 FEC block들을 구성하는 OFDM cell들을 선택하여 BICM 복호기(4434)로 전달하며, 또한 L1 signaling이 포함된 하나 이상의 FEC block들에 해당하는 OFDM cell들을 선택하여 L1 signaling을 위한 BICM 복호기(미도시)로 전달한다.
L1 signaling을 위한 BICM 복호기(4432)는 L1 signaling이 포함된 FEC block에 해당하는 OFDM cell을 신호 처리하여 L1 signaling bits들을 추출하고 이를 컨트롤러(4433)로 전달한다. 이 경우, 신호 처리는 OFDM cell에서 LDPC 부호 복호를 위한 LLR (log-likelihood ratio)값을 추출하는 과정과 추출된 LLR 값을 사용하여 LDPC 부호를 복호하는 과정을 포함할 수 있다.
컨트롤러(4433)는 L1 signaling bits로부터 L1 signaling table을 추출하고 L1 signaling table의 값을 사용하여 프레임 디맵퍼(4431), BICM 복호기(4434), 출력 처리기(4435)의 동작을 제어한다. 도 45에서는 설명의 편이를 위하여 L1 시그널링을 위한 BICM 복호기(4432)가 컨트롤러(4433)의 제어정보를 사용하는 않는 것으로 도시하였다. 하지만 L1 signaling이 전술한 L1-PRE, L1-POST의 구조와 유사한 계층구조를 가질 경우에는 L1 시그널링을 위한 BICM 복호기(4432)는 하나 이상의 BICM 복호 블록으로 구성될 수 있으며, BICM 복호 블록들과 프레임 디맵퍼(4431)의 동작이 상위 계층 L1 signaling 정보에 의해 제어될 수 있음은 명백하다.
BICM 복호기(4434)는 선택된 PLP에 속한 FEC block들을 구성하는 OFDM cell들을 신호 처리하여 베이스밴드 패킷들을 추출하고 베이스밴드 패킷들을 출력 처리기(4435)로 전달한다. 신호 처리는 OFDM cell에서 LDPC 부호 및 복호를 위한 LLR (log-likelihood ratio)값을 추출하는 과정과 추출된 LLR 값을 사용하여 LDPC 부호를 복호하는 과정을 포함할 수 있으며, 컨트롤러(4433)에서 전달되는 제어 정보를 바탕으로 수행될 수 있다.
출력 처리기(4435)는 베이스밴드 패킷들을 신호 처리하여 user packet을 추출하고 추출된 user packet들을 서비스 재생기(4440)로 전달한다. 이 경우, 신호 처리는 컨트롤러(4433)에서 전달되는 제어 정보를 바탕으로 수행될 수 있다.
도 38은 본 발명의 일 실시 예에 따른 사용자가 서비스를 선택한 시점부터 실제 선택된 서비스가 재생되기까지의 수신기의 동작을 간략하게 나타낸 흐름도이다.
사용자의 서비스 선택(S4610) 이전에 Initial scan(S4600) 단계에서 선택 가능한 모든 서비스에 대한 서비스 정보가 획득되었다고 가정하도록 한다. 여기서, 서비스 정보는 현재 방송 시스템에서 특정 서비스를 재생하기 위하여 필요한 데이터들이 송출되는 RF channel 및 PLP에 대한 정보를 포함할 수 있다. 여기서, 서비스 정보의 일 예로 MPEG2-TS의 PSI/SI (Program-Specific Information/Service Information)이 있으며, 통상적으로 L2 signaling 및 상위 계층 signaling을 통하여 획득 가능하다.
사용자가 서비스를 선택(S4610)하면 수신기는 선택된 서비스를 전송하는 주파수로 변경(S4620)하고 RF 신호 검출(S4630)을 수행한다. 선택된 서비스를 전송하는 주파수로 변경(S4620)하는 과정에서 서비스 정보가 사용될 수 있다.
RF 신호가 검출되면 수신기는 검출된 RF 신호로부터 L1 시그널링 추출(S4640) 동작을 수행한다. 이후로 수신기는 이전 과정에서 추출된 L1 시그널링을 사용하여 선택된 서비스를 전송하는 PLP를 선택(S4650)하고 선택된 PLP에서 베이스밴드 패킷을 추출(S4660)한다. 선택된 서비스를 전송하는 PLP를 선택(S4650)하는 과정에서 서비스 정보가 사용될 수 있다.
또한 베이스밴드 패킷을 추출(S4660)하는 과정은 전송 프레임을 디맵핑하여 PLP에 속한 OFDM cell들을 선택하는 과정과 OFDM cell에서 LDPC 부호/복호를 위한 LLR (log-likelihood ratio)값을 추출하는 과정과 추출된 LLR 값을 사용하여 LDPC 부호를 복호하는 과정을 포함할 수 있다.
수신기는 추출된 베이스밴드 패킷의 header 정보를 사용하여 추출된 베이스밴드 패킷으로부터 ALP 패킷 추출(S4670)을 수행하며, 이후로 추출된 ALP 패킷의 header 정보를 사용하여 추출된 ALP 패킷으부터 User packet 추출(S4680)을 수행한다. 추출된 user packet은 선택된 서비스 재생(S4690)에 사용된다. ALP 패킷 추출(S4670) 과정과 User packet 추출(S4680) 과정에서 L1 시그널링 추출(S4640) 단계에서 획득한 L1 시그널링 정보가 사용될 수 있다. 이 경우, ALP 패킷으로부터 User packet을 추출(Null TS packet 복원과 TS sync byte 삽입)하는 과정은 상술한 바와 동일하다.
상술한 바와 같이 본 발명의 다양한 실시 예에 따르면, 송신측에서 다양한 타입의 데이터를 전송가능한 물리적 계층으로 매핑할 수 있고, 데이터 처리 효율을 높일 수 있게 된다. 또한, 수신측에서는 링크 계층에서 패킷을 필터링함으로써 데이터 처리 효율을 높일 수 있게 된다.
본 발명의 특정 측면들은 또한 컴퓨터 리드 가능 기록 매체(computer readable recording medium)에서 컴퓨터 리드 가능 코드(computer readable code)로서 구현될 수 있다. 컴퓨터 리드 가능 기록 매체는 컴퓨터 시스템에 의해 리드될 수 있는 데이터를 저장할 수 있는 임의의 데이터 저장 디바이스이다. 컴퓨터 리드 가능 기록 매체의 예들은 리드 온니 메모리(Read-Only Memory: ROM)와, 랜덤-접속 메모리(Random-Access Memory: RAM)와, CD-ROM들과, 마그네틱 테이프(magnetic tape)들과, 플로피 디스크(floppy disk)들과, 광 데이터 저장 디바이스들, 및 캐리어 웨이브(carrier wave)들( 인터넷을 통한 데이터 송신과 같은)을 포함할 수 있다. 컴퓨터 리드 가능 기록 매체는 또한 네트워크 연결된 컴퓨터 시스템들을 통해 분산될 수 있고, 따라서 컴퓨터 리드 가능 코드는 분산 방식으로 저장 및 실행된다. 또한, 본 발명을 성취하기 위한 기능적 프로그램들, 코드, 및 코드 세그먼트(segment)들은 본 발명이 적용되는 분야에서 숙련된 프로그래머들에 의해 쉽게 해석될 수 있다.
또한 본 발명의 일 실시 예에 따른 장치 및 방법은 하드웨어, 소프트웨어 또는 하드웨어 및 소프트웨어의 조합의 형태로 실현 가능하다는 것을 알 수 있을 것이다. 이러한 임의의 소프트웨어는 예를 들어, 삭제 가능 또는 재기록 가능여부와 상관없이, ROM 등의 저장 장치와 같은 휘발성 또는 비휘발성 저장 장치, 또는 예를 들어, RAM, 메모리 칩, 장치 또는 집적 회로와 같은 메모리, 또는 예를 들어 CD, DVD, 자기 디스크 또는 자기 테이프 등과 같은 광학 또는 자기적으로 기록가능함과 동시에 기계(예를 들어, 컴퓨터)로 읽을 수 있는 저장 매체에 저장될 수 있다. 본 발명의 일 실시예에 따른 방법은 제어부 및 메모리를 포함하는 컴퓨터 또는 휴대 단말에 의해 구현될 수 있고, 메모리는 본 발명의 실시 예들을 구현하는 지시들을 포함하는 프로그램 또는 프로그램들을 저장하기에 적합한 기계로 읽을 수 있는 저장 매체의 한 예임을 알 수 있을 것이다.
따라서, 본 발명은 본 명세서의 임의의 청구항에 기재된 장치 또는 방법을 구현하기 위한 코드를 포함하는 프로그램 및 이러한 프로그램을 저장하는 기계(컴퓨터 등)로 읽을 수 있는 저장 매체를 포함한다. 또한, 이러한 프로그램은 유선 또는 무선 연결을 통해 전달되는 통신 신호와 같은 임의의 매체를 통해 전자적으로 이송될 수 있고, 본 발명은 이와 균등한 것을 적절하게 포함한다
또한 본 발명의 일 실시 예에 따른 장치는 유선 또는 무선으로 연결되는 프로그램 제공 장치로부터 프로그램을 수신하여 저장할 수 있다. 프로그램 제공 장치는 프로그램 처리 장치가 기 설정된 컨텐츠 보호 방법을 수행하도록 하는 지시들을 포함하는 프로그램, 컨텐츠 보호 방법에 필요한 정보 등을 저장하기 위한 메모리와, 그래픽 처리 장치와의 유선 또는 무선 통신을 수행하기 위한 통신부와, 그래픽 처리 장치의 요청 또는 자동으로 해당 프로그램을 송수신 장치로 전송하는 제어부를 포함할 수 있다.
한편 본 발명의 상세한 설명에서는 구체적인 실시예에 관해 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형할 수 있음은 물론이다. 그러므로 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 안되며 후술하는 특허청구의 범위뿐만 아니라 이 특허청구의 범위와 균등한 것들에 의해 정해져야 한다.
110: 패킷 생성부 120: 신호 처리부

Claims (4)

  1. 송신 장치의 송신 방법에 있어서,
    입력 패킷에 기초하여 헤더 및 페이로드를 포함하는 패킷을 생성하는 단계;
    상기 생성된 패킷을 부호화하는 단계;
    상기 부호화된 패킷에 기초하여 전송 프레임을 생성하는 단계; 및
    상기 생성된 전송 프레임을 송신하는 단계;를 포함하며,
    상기 헤더는 베이스 헤더 및 추가 헤더를 포함하고,
    상기 베이스 헤더는 제1 필드 및 제2 필드를 포함하고,
    상기 제1 필드는 상기 입력 패킷의 패킷 타입을 나타내는 값을 포함하고,
    상기 제2 필드는 제1 값 또는 제2 값을 포함하며,
    상기 제1 값은 상기 패킷이 하나의 온전한 입력 패킷(a single, whole input packet)을 전송함을 나타내고,
    상기 제2 값은 상기 패킷이 상기 입력 패킷의 세그먼트를 전송하거나 복수의 입력 패킷을 전송함을 나타내며,
    상기 추가 헤더는 서브 스트림 식별을 위한 옵션 헤더의 존재 여부를 나타내는 값을 포함하는 제3 필드를 포함하는, 송신 방법.
  2. 제1항에 있어서,
    상기 제3 필드가 상기 옵션 헤더의 존재를 나타내는 값을 포함하면, 상기 옵션 헤더는 서브 스트림 식별 값을 포함하는 제4 필드를 포함하는, 송신 방법.
  3. 수신 장치의 수신 방법에 있어서,
    헤더 및 페이로드를 포함하는 패킷에 기초하여 생성된 신호를 수신하는 단계;
    상기 수신된 신호를 복조하는 단계; 및
    상기 복조된 신호를 복호화하는 단계;를 포함하며,
    상기 헤더는 베이스 헤더 및 추가 헤더를 포함하고,
    상기 베이스 헤더는 제1 필드 및 제2 필드를 포함하고,
    상기 제1 필드는 입력 패킷의 패킷 타입을 나타내는 값을 포함하고,
    상기 제2 필드는 제1 값 또는 제2 값을 포함하며,
    상기 제1 값은 상기 패킷이 하나의 온전한 입력 패킷(a single, whole input packet)을 전송함을 나타내고,
    상기 제2 값은 상기 패킷이 상기 입력 패킷의 세그먼트를 전송하거나 복수의 입력 패킷을 전송함을 나타내며,
    상기 추가 헤더는 서브 스트림 식별을 위한 옵션 헤더의 존재 여부를 나타내는 값을 포함하는 제3 필드를 포함하는, 수신 방법.
  4. 제3항에 있어서,
    상기 제3 필드가 상기 옵션 헤더의 존재를 나타내는 값을 포함하면, 상기 옵션 헤더는 서브 스트림 식별 값을 포함하는 제4 필드를 포함하는, 수신 방법.
KR1020210032103A 2014-11-04 2021-03-11 송신 장치, 수신 장치 및 그 신호 처리 방법 KR102424840B1 (ko)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US201462074759P 2014-11-04 2014-11-04
US62/074,759 2014-11-04
US201462083971P 2014-11-25 2014-11-25
US62/083,971 2014-11-25
KR1020150114331 2015-08-13
KR1020150114331A KR20160052313A (ko) 2014-11-04 2015-08-13 송신 장치, 수신 장치 및 그 신호 처리 방법
KR1020190030757A KR102229109B1 (ko) 2014-11-04 2019-03-18 송신 장치, 수신 장치 및 그 신호 처리 방법

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020190030757A Division KR102229109B1 (ko) 2014-11-04 2019-03-18 송신 장치, 수신 장치 및 그 신호 처리 방법

Publications (2)

Publication Number Publication Date
KR20210030336A KR20210030336A (ko) 2021-03-17
KR102424840B1 true KR102424840B1 (ko) 2022-07-27

Family

ID=82361068

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210032103A KR102424840B1 (ko) 2014-11-04 2021-03-11 송신 장치, 수신 장치 및 그 신호 처리 방법

Country Status (2)

Country Link
KR (1) KR102424840B1 (ko)
CN (2) CN111447243B (ko)

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU5920000A (en) * 1999-07-09 2001-02-13 Malibu Networks, Inc. Method for transmission control protocol (tcp) rate control with link-layer acknowledgements in a wireless point to multi-point (ptmp) transmission system
US7835761B2 (en) * 2004-06-21 2010-11-16 Qualcomm Incorporated Method for distinguishing different types of data content in data packets in a wireless communication system
KR101419287B1 (ko) * 2006-07-07 2014-07-14 삼성전자주식회사 Ipdc 서비스를 제공하는 장치 및 방법 및 ipdc서비스를 처리하는 장치 및 방법
US8711771B2 (en) * 2009-03-03 2014-04-29 Qualcomm Incorporated Scalable header extension
CA2762792A1 (en) * 2009-05-21 2010-11-25 Sung-Il Park Digital broadcast transmitter, digital broadcast receiver, and methods for configuring and processing streams thereof
EP2362653A1 (en) * 2010-02-26 2011-08-31 Panasonic Corporation Transport stream packet header compression
EP2362650A1 (en) * 2010-02-26 2011-08-31 Panasonic Corporation Efficient physical layer signalling for a digital broadcast system
DE102010034307B4 (de) * 2010-08-13 2023-02-23 Vodafone Gmbh Verfahren zum Übertragen und Konfigurieren eines Datenpakets in einem Netzwerk
JP5970957B2 (ja) * 2012-05-18 2016-08-17 ソニー株式会社 送信装置、送信方法、受信装置、受信方法、プログラムおよび電子機器

Also Published As

Publication number Publication date
CN111447242B (zh) 2022-07-15
CN111447243B (zh) 2022-07-15
CN111447243A (zh) 2020-07-24
KR20210030336A (ko) 2021-03-17
CN111447242A (zh) 2020-07-24

Similar Documents

Publication Publication Date Title
KR102229109B1 (ko) 송신 장치, 수신 장치 및 그 신호 처리 방법
US10334088B2 (en) Transmitting apparatus and signal processing method thereof
KR102306119B1 (ko) 송신 장치, 수신 장치 및 그 제어 방법
KR102062897B1 (ko) 송신 장치, 수신 장치 및 그 신호 처리 방법
KR102424840B1 (ko) 송신 장치, 수신 장치 및 그 신호 처리 방법
KR20160085201A (ko) 송신 장치, 수신 장치 및 그 신호 처리 방법
KR102461190B1 (ko) 송신 장치, 수신 장치 및 그 신호 처리 방법

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant