KR102464803B1 - 응용 계층 순방향 오류 정정 방식을 사용하는 멀티미디어 서비스 제공 방법 및 장치 - Google Patents

응용 계층 순방향 오류 정정 방식을 사용하는 멀티미디어 서비스 제공 방법 및 장치 Download PDF

Info

Publication number
KR102464803B1
KR102464803B1 KR1020170134905A KR20170134905A KR102464803B1 KR 102464803 B1 KR102464803 B1 KR 102464803B1 KR 1020170134905 A KR1020170134905 A KR 1020170134905A KR 20170134905 A KR20170134905 A KR 20170134905A KR 102464803 B1 KR102464803 B1 KR 102464803B1
Authority
KR
South Korea
Prior art keywords
symbol
repair
source
subblocks
source symbol
Prior art date
Application number
KR1020170134905A
Other languages
English (en)
Other versions
KR20190041877A (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 US16/753,197 priority Critical patent/US11368246B2/en
Priority to PCT/KR2018/012114 priority patent/WO2019074341A1/ko
Publication of KR20190041877A publication Critical patent/KR20190041877A/ko
Application granted granted Critical
Publication of KR102464803B1 publication Critical patent/KR102464803B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0041Arrangements at the transmitter end
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/35Unequal or adaptive error protection, e.g. by providing a different level of protection according to significance of source information or by adapting the coding according to the change of transmission channel characteristics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0057Block codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/61Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources taking into account QoS or priority requirements
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

본 발명은 소스 심볼 블록을 적어도 2개의 소스 심볼 서브 블록으로 분할하고 상기 분할된 소스 심볼 서브 블록의 조합을 사용하여 리페어 블록을 생성하는 AL-FEC 방식을 적용하여 멀티미디어 서비스를 제공하기 위한 방법 및 장치에 관한 것이다. 또한 네트워크에서 손실된 원본 정보를 수신기에 복원하기 위해 필요한 부가 정보를 수신기에게 전달하기 위한 방법 및 장치에 관한 것이다.

Description

응용 계층 순방향 오류 정정 방식을 사용하는 멀티미디어 서비스 제공 방법 및 장치{A METHOD AND APPARATUS FOR THE DELIVERY OF MULTIMEDIA SERVICES USING APPLICATION LAYER FORWARD ERROR CORRECTION SCHEME}
본 발명은 응용 계층 순방향 오류 정정 방식(AL-FEC: application layer forward error correction)을 사용하는 멀티미디어 서비스 제공 방법 및 장치에 관한 것이다.
무선망과 인터넷의 초고속화와 함께 방통 융합 환경이 제공됨에 따라 다양한 성능의 단말들이 혼재하는 융합 콘텐츠 소비 환경이 구축되고 있다. 이를 기반으로, 고용량 컨텐트들의 증가로 인해서, 네트워크(network) 상에서 데이터 혼잡(data congestion)은 점점 더 심화되고 있다. 이러한 상황으로 인하여, 네트워크 상에서 데이터가 손실됐을 때, 신호 수신 장치에서 손실된 데이터를 복구할 수 있도록 지원하는 방식들이 요구된다.
이러한 방식들 중의 하나인 응용 계층 순방향 에러 정정(AL-FEC: Application Layer Forward Error Correction) 방식은, 네트워크에서 손실된 정보를 신호 수신 장치에서 복원할 수 있게 하는 여분의 정보를 신호 송신 장치가 원본 정보와 함께 송신하는 것이다. 이 때 상기 여분의 정보는 상기 신호 송신 장치와 상기 신호 수신 장치간에 미리 약속된 알고리즘을 사용하여 생성될 수 있다. 상기 알고리즘은 소스 블록(Source Block) 이라 칭하는 단위의 원본 정보를 입력으로 사용하여 리페어 블록(Repair Block) 이라 칭하는 단위로 여분의 정보를 생성하는데, 알고리즘에 따라 상기 리페어 블록 전체를 생성하지 않고 상기 리페어 블록을 구성하는 리페어 심볼들을 필요한 만큼만 생성할 수 있다. 신호 수신 장치가 상기 알고리즘을 적용하여 손실된 정보를 복원하기 위해 필요한 부가 정보들은 상기 신호 송신 장치에서 상기 신호 수신 장치로 전달된다.
AL-FEC 부호는 리페어 블록을 구성하는 리페어 심볼이 소스 블록을 구성하는 소스 심볼들과 어떤 관계를 가지는지를 기술한다. 일반적인 AL-FEC 부호는 전체 소스 블록에서 하나 이상의 소스 심볼을 선택하고 이들의 이진합을 계산하는 방식으로 개별 리페어 심볼들을 생성한다. 이 때 상기 하나 이상의 소스 심볼을 선택하는 과정은 소스 심볼의 개별적인 특성을 고려하지 않고 설계된다. 하지만 원본 정보들은 서로 다른 우선 순위를 가질 수 있으며, 상기 우선 순위를 고려하여 상기 하나 이상의 소스 심볼을 선택하는 과정을 수행하도록 AL-FEC 부호를 설계할 수 있다. 이 경우에 일반적인 AL-FEC 부호에서는 요구 되어지지 않았던 추가적인 부가 정보들이 신호 송신 장치에서 신호 수신장치로 전달되어야 한다.
본 발명은 소스 심볼 블록을 적어도 2개의 소스 심볼 서브 블록으로 분할하고 상기 분할된 소스 심볼 서브 블록의 조합을 사용하여 리페어 블록을 생성하는 AL-FEC 방식을 적용하여 멀티미디어 서비스를 제공하기 위한 방법 및 장치에 관한 것이다.
본 발명은 네트워크에서 손실된 원본 정보를 수신기에 복원하기 위해 필요한 부가 정보를 수신기에게 전달하기 위한 방법 및 장치에 관한 것이다.
일 실시 예에 따른 방법은; 송신 장치에서 방송 서비스를 송신하는 방법에 있어서, 소스 심볼 블록에 포함된 소스 심볼 서브 블록들을 획득하는 과정; 순방향 오류 정정(forward error correction: FEC) 기법을 사용하여, 상기 소스 심볼 서브 블록들에 기반한 리페어 심볼 서브 블록들을 생성하는 과정; 상기 소스 심볼 서브 블록들과 상기 리페어 심볼 서브 블록들을 송신하는 과정; 상기 FEC 기법을 지시하는 식별자를 포함하는 시그널링 메시지를 생성하는 과정; 및 상기 생성한 시그널링 메시지를 송신하는 과정을 포함하며, 상기 소스 심볼 블록은 N개의 소스 심볼 서브 블록들을 포함하고, 상기 N개의 소스 심볼 서브 블록들은 상기 소스 심볼 블록을 생성하기 위해 사용된 서로 다른 우선 순위를 갖는 N개의 소스 패킷들에 대응하며, 여기서 N은 1 보다 큰 정수를 나타내며, 상기 N개의 소스 심볼 서브 블록들 중 제 1 소스 심볼 서브 블록의 우선 순위는 상기 N개의 소스 심볼 서브 블록들 중 제 N 소스 심볼 서브 블록의 우선 순위와 상이하고, 상기 리페어 심볼 서브 블록들 중 제 1 리페어 심볼 서브 블록의 우선 순위는 상기 제 1 소스 심볼 서브 블록의 우선 순위를 기반으로 결정되고, 상기 리페어 심볼 서브 블록들 중 제 N 리페어 심볼 서브 블록의 우선 순위는 상기 제 N 소스 심볼 서브 블록의 우선 순위를 기반으로 결정되며, 상기 제 1 리페어 심볼 서브 블록은 상기 제 1 소스 심볼 서브 블록에 기반하여 생성되고, 상기 제 N 리페어 심볼 서브 블록은 상기 제 1 소스 심볼 서브 블록 내지 상기 제 N 소스 심볼 서브 블록에 기반하여 생성되며, 상기 N개의 소스 심볼 서브 블록들과 상기 리페어 심볼 서브 블록들은 각각의 우선 순위에 대응하는 일련 번호(sequence number)를 가짐을 특징으로 한다.
일 실시 예에 따른 다른 방법은; 수신 장치에서 방송 서비스를 수신하는 방법에 있어서, 송신 장치로부터 소스 심볼 서브 블록들과 리페어 심볼 서브 블록들을 수신하는 과정; 상기 송신 장치로부터 시그널링 메시지를 수신하는 과정; 상기 시그널링 메시지에 포함된 식별자를 기반으로 순방향 오류 정정(forward error correction: FEC) 기법을 확인하는 과정; 및 상기 확인된 FEC 기법, 상기 소스 심볼 서브 블록들 및 상기 리페어 심볼 서브 블록들에 기반하여, 상기 소스 심볼 서브 블록들을 포함하는 소스 심볼 블록을 복원하는 과정을 포함하며, 상기 소스 심볼 블록은 N개의 소스 심볼 서브 블록들을 포함하고, 상기 N개의 소스 심볼 서브 블록들은 상기 소스 심볼 블록을 생성하기 위해 사용된 서로 다른 우선 순위를 갖는 N개의 소스 패킷들에 대응하며, 상기 N개의 소스 심볼 서브 블록들 중 제 1 소스 심볼 서브 블록의 우선 순위는 상기 N개의 소스 심볼 서브 블록들 중 제 N 소스 심볼 서브 블록의 우선 순위와 상이하고, 여기서 N은 1 보다 큰 정수를 나타내며, 상기 리페어 심볼 서브 블록들 중 제 1 리페어 심볼 서브 블록의 우선 순위는 상기 제 1 소스 심볼 서브 블록의 우선 순위를 기반으로 결정되고, 상기 리페어 심볼 서브 블록들 중 제 N 리페어 심볼 서브 블록의 우선 순위는 상기 제 N 소스 심볼 서브 블록의 우선 순위를 기반으로 결정되며, 상기 제 1 리페어 심볼 서브 블록은 상기 제 1 소스 심볼 서브 블록에 기반하여 생성되고, 상기 제 N 리페어 심볼 서브 블록은 상기 제 1 소스 심볼 서브 블록 내지 상기 제 N 소스 심볼 서브 블록에 기반하여 생성되며, 상기 N개의 소스 심볼 서브 블록들과 상기 리페어 심볼 서브 블록들은 각각의 우선 순위에 대응하는 일련 번호(sequence number)를 가짐을 특징으로 한다.
일 실시 예에 따른 장치는; 방송 서비스를 송신하는 송신 장치에 있어서, 송신기; 및 적어도 하나의 프로세서를 포함하며, 상기 적어도 하나의 프로세서는, 소스 심볼 블록에 포함된 소스 심볼 서브 블록들을 획득하고, 순방향 오류 정정(forward error correction: FEC) 기법을 사용하여, 상기 소스 심볼 서브 블록들에 기반한 리페어 심볼 서브 블록들을 생성하고, 상기 소스 심볼 서브 블록들과 상기 리페어 심볼 서브 블록들을 송신하도록 상기 송신기를 제어하고, 상기 FEC 기법을 지시하는 식별자를 포함하는 시그널링 메시지를 생성하고, 상기 생성한 시그널링 메시지를 송신하도록 상기 송신기를 제어하며, 상기 소스 심볼 블록은 N개의 소스 심볼 서브 블록들을 포함하고, 상기 N개의 소스 심볼 서브 블록들은 상기 소스 심볼 블록을 생성하기 위해 사용된 서로 다른 우선 순위를 갖는 N개의 소스 패킷들에 대응하며, 상기 N개의 소스 심볼 서브 블록들 중 제 1 소스 심볼 서브 블록의 우선 순위는 상기 N개의 소스 심볼 서브 블록들 중 제 N 소스 심볼 서브 블록의 우선 순위와 상이하고, 여기서 N은 1 보다 큰 정수를 나타내며, 상기 리페어 심볼 서브 블록들 중 제 1 리페어 심볼 서브 블록의 우선 순위는 상기 제 1 소스 심볼 서브 블록의 우선 순위를 기반으로 결정되고, 상기 리페어 심볼 서브 블록들 중 제 N 리페어 심볼 서브 블록의 우선 순위는 상기 제 N 소스 심볼 서브 블록의 우선 순위를 기반으로 결정되며, 상기 제 1 리페어 심볼 서브 블록은 상기 제 1 소스 심볼 서브 블록에 기반하여 생성되고, 상기 제 N 리페어 심볼 서브 블록은 상기 제 1 소스 심볼 서브 블록 내지 상기 제 N 소스 심볼 서브 블록에 기반하여 생성되며, 상기 N개의 소스 심볼 서브 블록들과 상기 리페어 심볼 서브 블록들은 각각의 우선 순위에 대응하는 일련 번호(sequence number)를 가짐을 특징으로 한다.
일 실시 예에 따른 다른 장치는; 방송 서비스를 수신하는 수신 장치에 있어서, 수신기; 및 적어도 하나의 프로세서를 포함하며, 상기 적어도 하나의 프로세서는, 상기 수신기를 통해 송신 장치로부터 소스 심볼 서브 블록들과 리페어 심볼 서브 블록들을 수신하고, 상기 수신기를 통해 상기 송신 장치로부터 시그널링 메시지를 수신하고 상기 시그널링 메시지에 포함된 식별자를 기반으로 순방향 오류 정정(forward error correction: FEC) 기법을 확인하고, 상기 확인된 FEC 기법, 상기 소스 심볼 서브 블록들 및 상기 리페어 심볼 서브 블록들에 기반하여, 상기 소스 심볼 서브 블록들을 포함하는 소스 심볼 블록을 복원하며, 상기 소스 심볼 블록은 N개의 소스 심볼 서브 블록들을 포함하고, 상기 N개의 소스 심볼 서브 블록들은 상기 소스 심볼 블록을 생성하기 위해 사용된 서로 다른 우선 순위를 갖는 N개의 소스 패킷들에 대응하며, 상기 N개의 소스 심볼 서브 블록들 중 제 1 소스 심볼 서브 블록의 우선 순위는 상기 N개의 소스 심볼 서브 블록들 중 제 N 소스 심볼 서브 블록의 우선 순위와 상이하고, 여기서 N은 1 보다 큰 정수를 나타내며, 상기 리페어 심볼 서브 블록들 중 제 1 리페어 심볼 서브 블록의 우선 순위는 상기 제 1 소스 심볼 서브 블록의 우선 순위를 기반으로 결정되고, 상기 리페어 심볼 서브 블록들 중 제 N 리페어 심볼 서브 블록의 우선 순위는 상기 제 N 소스 심볼 서브 블록의 우선 순위를 기반으로 결정되며, 상기 제 1 리페어 심볼 서브 블록은 상기 제 1 소스 심볼 서브 블록에 기반하여 생성되고, 상기 제 N 리페어 심볼 서브 블록은 상기 제 1 소스 심볼 서브 블록 내지 상기 제 N 소스 심볼 서브 블록에 기반하여 생성되며, 상기 N개의 소스 심볼 서브 블록들과 상기 리페어 심볼 서브 블록들은 각각의 우선 순위에 대응하는 일련 번호(sequence number)를 가짐을 특징으로 한다.
본 발명은 소스 심볼 블록을 적어도 2개의 소스 심볼 서브 블록으로 분할하고 상기 분할된 소스 심볼 서브 블록의 조합을 사용하여 리페어 블록을 생성하는 AL-FEC 방식을 적용하여 멀티미디어 서비스를 제공하기 위한 방법 및 장치를 제안한다. 제공하고자 하는 멀티미디어 데이터는 데이터의 속성에 따라 상기 분할된 소스 심볼 서브 블록 중 하나에 할당될 수 있으며, 데이터의 속성에 따라 서로 다른 보호 레벨을 적용할 수 있다.
도 1은 MMT에서 AL-FEC가 적용되는 구조를 나타낸 도면,
도 2는 two-stage FEC 부호화 구조의 예를 나타낸 도면,
도 3은 2 개의 계층을 가지는 LA-FEC 부호화 구조에서 소스 심볼 블록 생성 방식을 도시한 도면,
도 4는 본 발명의 실시 예에 따른 인코딩 심볼 블록의 예를 도시한 도면,
도 5는 본 발명의 실시 예에 따른 ssbg_mode0을 사용하여 생성된 소스 심볼 블록의 예를 나타낸 도면,
도 6은 본 발명의 실시 예에 따른 ssbg_mode1을 사용하여 생성된 소스 심볼 블록의 예를 나타낸 도면,
도 7은 본 발명의 실시 예에 따른 ssbg_mode2를 사용하여 생성된 소스 심볼 블록의 예를 나타낸 도면,
도 8은 본 발명의 실시 예에 따른 FEC 소스 패킷 포맷의 예를 나타낸 도면,
도 9는 본 발명의 실시 예에 따른 FEC 리페어 패킷 포맷의 예를 나타낸 도면,
도 10은 본 발명의 실시 예에 따른 소스 FEC 페이로드 ID의 예를 나타낸 도면,
도 11은 본 발명의 실시 예에 따른 LA-FEC 부호화 방식이 사용될 경우의 SS_ID 설정 방법의 예를 나타낸 도면,
도 12는 본 발명의 실시 예에 따른 리페어 FEC 페이로드 ID의 예를 나타낸 도면,
도 13은 본 발명의 실시 예에 따른 소스 심볼 블록과 리페어 심볼 블록의 일 예를 도시한 도면,
도 14는 본 발명의 실시 예에 따른 리페어 심볼 블록 생성 과정의 일 예를 도시한 도면,
도 15는 MMTP에서 제공하는 확장 헤더의 표준구조를 나타낸 도면,
도 16은 본 발명의 실시 예에 따른 MMTP 확장 헤더의 예를 도시한 도면(1),
도 17은 본 발명의 실시 예에 따른 MMTP 확장 헤더의 예를 도시한 도면(2),
도 18은 본 발명의 실시 예에 따른 MMTP 확장 헤더의 예를 도시한 도면(3),
도 19는 본 발명의 실시 예에 따른 MMTP 확장 헤더의 예를 도시한 도면(4),
도 20은 본 발명의 실시 예에 따른 MMTP 확장 헤더의 예를 도시한 도면(5).
이하 첨부된 도면을 참조하여 본 발명의 바람직한 실시 예에 대한 동작 원리를 상세히 설명한다. 도면상에 표시된 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 참조번호로 나타내었으며, 다음에서 본 발명을 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
구체적으로, 본 발명이 실시 예가 적용되는 통신 시스템은 설명의 편의상, MPEG(Moving Picture Experts Group)미디어 전송 기술인 MMT(MPEG Media Transport) 기반 시스템을 일 예로서 설명한다. 그러나, 본 발명의 실시 예는 MMT 시스템 이외의 다른 통신 시스템들을 통해서도 적용될 수 있음에 유의하여야 할 것이다.
MMT는 IP네트워크 환경에서 AL-FEC 메커니즘을 사용하여 신뢰성 있는 전송을 제공한다. MMT FEC 스킴(scheme)은 전송 기능을 구성하는 요소 블록으로 묘사된다. MMT 송신기에서 생성된 MMT 패킷들은 보호를 위해 MMT FEC 스킴으로 전달 된다. MMT FEC 스킴은 리페어 심볼과 FEC 페이로드 ID를 생성하며, 생성된 리페어 심볼들은 MMT 프로토콜을 이용하여 MMT 패킷들로 전송된다. FEC 구성 정보는 FEC 부호화된 패킷 플로우(FEC encoded flow)의 식별자, FEC 부호화 구조(coding structure) 및 FEC 부호(code)를 나타낸다. 해당 정보는 FEC 동작을 위해 MMT 수신기로 전달된다. 상술한 MMT에서 AL-FEC가 적용되는 구조는 도 1로 나타내었다.
MMT 송신기는 MMT 패키지(Package) 내에서 보호가 필요한 어셋들과 상기 어셋들을 보호하기 위한 FEC 소스 플로우(source flow)의 개수를 결정한다. 하나의 FEC 소스 플로우는 하나 이상의 Asset들을 보호하며, 상기 FEC 소스 플로우는 상기 하나 이상의 Asset들은 전달하는 MMTP 패킷으로 구성된다. 보호를 위해 FEC 소스 플로우와 그 구성 정보들은 MMT FEC 스킴으로 전달 된다. MMT FEC 스킴은 하나 이상의 FEC 부호를 사용하여 하나 이상의 FEC 리페어 플로우(repair flow)를 구성하는 리페어 심볼들을 생성한다. 생성된 리페어 심볼들은 FEC 페이로드 ID와 함께 MMT 프로토콜로 전달된다. MMT 프로토콜은 FEC 소스 및 리페어 패킷들을 MMT 수신기로 전달한다. MMT 수신기의 MMT 프로토콜은 FEC 소스 플로우 및 상기 FEC 소스 플로우에 관련된 하나 이상의 FEC 리페어 플로우들을 MMT FEC 스킴으로 전달한다. MMT FEC 스킴은 손실된 MMTP 패킷들에 대한 복원을 시도하고 복원된 MMTP 패킷들을 MMT 프로토콜로 전달한다.
MMT FEC 스킴은 FEC 소스 플로우를 소스 패킷 블록들로 분할하고 소스 심볼 블록들을 생성한다. 생성된 소스 심볼 블록들은 FEC 부호에 의하여 FEC 부호화 (encoding)된다. 여기서 FEC 부호화란 소스 심볼 블록을 사용하여 리페어 심볼들을 생성하는 과정을 의미한다. FEC 부호 알고리즘은 소스 심볼 블록에서 리페어 심볼들을 만드는데 사용되며. 일 예로 ISO/IEC 23008-10에 기술된 FEC 부호 알고리즘 이 사용될 수 있다.
MMT FEC 스킴은 두 개의 서로 다른 모드(mode)로 동작할 수 있다. FEC payload ID mode 0는 MMTP 패킷에 소스 FEC 페이로드 ID를 추가하며, FEC payload ID mode 1은 MMTP 패킷에 아무런 변형을 가하지 않는다.
MMT FEC 기법은 FEC 부호화 구조를 사용하여 계층화된 또는 비계층화된 미디어 데이터를 포함하는 패킷들을 다중 레벨로 구성할 수 있다. 이는 하나의 FEC 소스 플로우를 구성하는 각 어셋들에게 필요한 만큼의 보호 수준을 적용하는 것을 가능하게 한다. FEC 소스 플로우는 시그널링 메시지들을 전달하는 MMTP 서브 플로우 일수도 있다. FEC 부호화 구조의 예는 후술할 two-stage FEC 부호화 구조와 layer-aware FEC (LA-FEC) 부호화 구조를 포함한다.
도 2는 two-stage FEC 부호화 구조의 예를 나타낸 도면이다.
Two-stage FEC 부호화 구조에서 한 개의 소스 패킷 블록은 M(>1)개의 소스 패킷 블록으로 분할될 수 있다. 분할된 소스 패킷 블록 중에서 i번째(i=1,2,…,M) 소스 패킷 블록은 후술할 소스 심볼 블록 생성 방법들 중 하나를 이용하여 i번째 소스 심볼 블록으로 변환된다. 이때 상기 i번째 소스 심볼 블록은 제 1 FEC 부호를 사용하여 부호화된다. 또한 M개의 분할된 소스 심볼 블록들을 연결하여 단일 소스 심볼 블록을 생성하고 이를 제 2 FEC 부호를 사용하여 부호화한다. 상기 분할된 M개의 소스 심볼 블록을 상기 제 1 FEC 부호를 사용하여 부호화하는 과정에서 M개의 리페어 심볼 블록들이 생성되며, 상기 단일 소스 심볼 블록을 상기 제 2 FEC 부호를 사용하여 부호화하는 과정에서 한 개의 리페어 심볼 블록이 생성된다.
LA-FEC 부호화 구조는 계층화된 미디어 데이터(예를 들어 SVC, MVC etc.)에 특화된 FEC 부호화 구조이다. LA-FEC 부호화 구조는 미디어 계층간의 연관성을 이용하며 각 미디어 계층은 연관된 FEC 리페어 플로우를 가진다. 여기서 상기 FEC 리페어 플로우는 상기 연관된 미디어 계층의 데이터 및 상기 연관된 미디어 계층이 의존하는 모든 미디어 계층(이후, 보완 계층(complementary layer)이라 칭함) 의 데이터를 함께 보호한다.
LA-FEC 부호화 구조에서 각 미디어 계층의 데이터를 포함하는 소스 패킷들은 레이어 별로 서로 다른 소스 심볼 블록으로 그룹화된다. 하나의 FEC 리페어 플로우를 구성하는 리페어 심볼들을 생성하는 과정에서 사용되는 소스 심볼 블록은 상기 FEC 리페어 플로우와 연관된 미디어 계층의 데이터로 구성된 소스 심볼 블록과 상기 연관된 미디어 계층의 보완 계층 데이터로 구성된 소스 심볼 블록들이 결합된 형태이다. 상기 서로 다른 계층의 데이터로 구성된 소스 심블 블록들의 결합은 미디어의 계층 구조를 따른다. 즉, 각각의 소스 심볼 블록은 상기 소스 심볼 블록에 포함된 미디어 데이터의 보완 계층 데이터로 구성된 소스 심볼 블록에 후행한다.
도 3은 2 개의 계층을 가지는 LA-FEC 부호화 구조에서 소스 심볼 블록 생성 방식을 도시한 도면이다. 상기 도 3에서 Enh. Layer는 계층화된 미디어 스트림에서 기저 계층(base layer)에 의존하는 향상 계층(enhancement layer)을 나타낸다.
인코딩 심볼 블록은 소스 심볼 블록과 상기 소스 심볼 블록에서 생성된 리페어 심볼 블록으로 구성된다. 소스 심볼 블록은 송신 시스템과 수신 시스템에서 약속된 방식에 따라 구성되며, 본 발명의 실시 예에 따른 멀티미디어 서비스 시스템은 하나 이상의 소스 심볼 블록 생성 방식을 정의하고 필요에 따라 그 중 하나를 선택하여 소스 심볼 블록을 생성할 수 있다. 이후로는 소스 심볼 블록 생성 방식을 SSBG 모드(Source Symbol Block Generation Mode)라 표기한다. 송신 시스템에서 선택한 SSBG 모드는 시그널링 메시지를 통하여 수신 시스템으로 전달된다.
도 4는 본 발명의 실시 예에 따른 인코딩 심볼 블록의 예를 도시한 도면이다. 도 4를 참조하면 상기 인코딩 심볼 블록은 K개의 소스 심볼을 포함하는 소스 심볼 블록과 P개의 리페어 심볼을 포함하는 리페어 심볼 블록으로 구성된다. 이 때 상기 인코딩 심볼 블록에 속한 모든 소스 심볼과 리페어 심볼의 길이는 T byte로 동일함에 유의한다.
본 발명의 실시 예에 따른 멀티미디어 서비스 전송 시스템에서 FEC 소스 플로우는 소스 패킷 블록 단위로 분할되어 보호된다. 상기 소스 패킷 블록에 속한 소스 패킷들은 고정 혹은 가변 길이를 가질 수 있으며, 상기 소스 패킷 블록은 FEC 부호화를 위하여 후술한 SSBD모드에 따라 소스 심볼 블록으로 변환된다.
본 발명의 실시 예에 따른 멀티미디어 서비스 전송 시스템은 ssbg_mode0, ssbg_mode1 와 ssbg_mode2로 불리는 3가지 종류의 SSBG 모드들을 사용할 수 있다. 상기 ssbg_mode0는 모든 MMTP 패킷의 길이가 동일한 경우에만 사용될 수 있으며, ssbg_mode1 와 ssbg_mode2는 MMTP 패킷이 가변 길이를 가질 경우에도 사용될 수 있다.
ssbg_mode0가 사용될 경우에 모든 MMTP 패킷은 동일한 길이를 가지므로, 소스 심볼 블록은 소스 패킷 블록과 일치한다. 이는 소스 패킷 블록에 포함된 MMTP 패킷의 개수와 소스 심볼 블록에 포함된 소스 심볼의 개수가 정확하게 동일하며, 소스 패킷 블록의 i번째 MMTP 패킷이 소스 심볼 블록의 i번째 심볼과 동일함을 나타낸다. (i=0,1,…,K-1) Two-stage FEC 부호화 구조 또는 LA-FEC 부호화 구조가 적용될 경우에(M>1), i번째 소스 심볼 블록은 i번째 소스 패킷 블록으로부터 생성된다. (i=0,1,…,M-1)
도 5는 본 발명의 실시 예에 따른 ssbg_mode0을 사용하여 생성된 소스 심볼 블록의 예를 나타낸 도면이다.
ssbg_mode1에서 소스 심볼 블록은 각 소스 심볼이 해당 소스 심볼에 연관된 MMTP 패킷의 길이와 필요에 따라 패딩 바이트를 포함할 수 있다는 점을 제외하면, ssbg_mode0와 동일한 방식으로 생성된다. 즉 소스 패킷 블록에 포함된 MMTP 패킷의 개수와 상기 소스 패킷 블록에 연관된 소스 심볼 블록에 포함된 소스 심볼의 개수는 동일하다. ssbg_mode1에서 i번째 소스 심볼은 연관된 소스 패킷 블록의 i 번째 MMTP 패킷의 길이를 나타내는 네트워크 바이트 순서 (상위 옥텟 우선)로 배열된 두 옥텟으로 시작하며, 이어 MMTP 패킷 #i의 옥텟들이 배열되고 나머지 부분은 0 옥텟으로 채워진다. Two-stage 및 LA-FEC 부호화 구조 (M > 1)가 사용될 경우에 i 번째 소스 심볼 블록은 i 번째 소스 패킷 블록 (i = 0,1, ..., M-1)으로부터 생성되며, 각 소스 심볼 블록에 속한 소스 심볼들은 마지막에 패딩 바이트(00h)를 포함할 수 있다.
도 6는 본 발명의 실시 예에 따른 ssbg_mode1을 사용하여 생성된 소스 심볼 블록의 예를 나타낸 도면이다.
ssbg_mode2에서 하나의 소스 심볼 블록은 Ksp개의 소스 패킷을 포함하는 소스 패킷 블록으로부터 생성되며, 패딩 바이트(00h)를 포함하고 있을 수 있는 소스 심볼 Kss 개를 포함한다. 모든 소스 심볼은 동일하게 N 개의 심볼 요소(symbol element)를 포함하며, 이는 하나의 소스 심볼 블록이 N * Kss 개의 심볼 요소들로 이루어져 있음을 의미한다. 소스 패킷 블록의 MMTP 패킷#0은 연관된 소스 심볼 블록의 처음 s0 개의 심볼 요소 에 위치된다. 보다 구체적으로 s0 개의 심볼 요소 중 첫 번째 심볼 요소의 처음 두 바이트는 MMTP 패킷#0의 길이를 나타내는 네트워크 바이트 순서의 두 옥텟으로 시작하며 이후부터 MMTP 패킷#0의 옥펫들이 채워지고 나머지 부분은 제로 옥텟으로 채워진다. 소스 패킷 블록의 1번째 MMTP 패킷은 0번째 MMTP 패킷과 같이 소스 심볼 블록내의 다음 s1 개의 심볼요소로 배치된다. 동일한 방식으로 MMTP 패킷#Ksp-1 까지 채운 이후에, Kss*T - sum{si*T/N,i=0,..Ksp-1}가 0이 아니라면 제로 옥텟들이 소스 심볼 블록의 나머지 심볼 요소들로 배치 된다.
Two-stage와 LA-FEC 부호화 코딩 구조에서 제 2 FEC 부호를 위한 단일 소스 심볼 블록은 분할된 M개의 소스 패킷 블록으로부터 생성된 모든 소스 심볼 블록들을 연결하여 생성된다.
SSBG 모드 내의 구체적인 값들의 정의
- Ksp: 소스 패킷 블록내의 MMTP 패킷의 개수
- Kss: 소스 심볼 블록내의 소스 심볼들의 개수
- Ri: 소스 심볼 블록에 추가 될 i번째 MMTP 패킷의 옥텟
- Si: 옥텍 단위로 표현된 Ri의 길이
- Li: 네트워크 바이트 순서의 두 옥텟으로 표시된 Si 값
- T: 바이트로 표현된 소스 심볼 크기
- N: 하나의 소스 심볼을 구성하는 심볼 요소의 개수
- T': 바이트로 표현된 심볼 요소의 크기 (T’ = T/N)
- si: si*T/N = siT’>= (Si+2)를 만족시키는 가장 작은 정수
- Pi: si*T’- (Si+2) 개의 제로 옥텟
- P: Kss * T - sum{si*T’, i=0,…,Ksp - 1} 개의 제로 옥텟
이때 소스 심볼 블록은 Li,Ri,Pi (i=0,…,Ksp - 1)와 P를 순차적으로 연결한 이후에 크기가 T인 소스 심볼들로 분할하여 구성할 수 있다.
도 7은 본 발명의 실시 예에 따른 ssbg_mode2을 사용하여 생성된 소스 심볼 블록의 예를 나타낸 도면이다. 도 7을 참조하면 5개의 MMTP 패킷들의 길이는 각각 34, 30, 56, 40, 48 바이트 이며 이들이 8개의 소스 심볼들로 구성된 소스 심볼 블록에 배치된다. 이 때 소스 심볼의 크기(T)는 32이며 각 소스 심볼들은 2개의 심볼 요소로 구성된다. (T’= T/2 = 16바이트)
본 발명의 실시 예에 따른 멀티미디어 서비스 제공 시스템에의 2가지 전송 패킷 포맷을 기술한다. 한가지는 소스 패킷을 전송하기 위한 FEC 소스 패킷 포맷이고 다른 하나는 리페어 심볼을 전송하기 위한 FEC 리페어 패킷 포맷이다.
FEC 소스 패킷은 MMTP 패킷에 소스 FEC 페이로드 ID가 추가된 형태이며, FEC 리페어 패킷 포맷은 MMTP 패킷 헤더와 리페어 FEC 페이로드 ID 및 하나 이상의 리페어 심볼을 포함한다. FEC 소스 패킷에 포함된 소스 FEC 페이로드 ID는 FEC 소스 패킷에 의해 운반되는 소스 심볼 또는 심볼 요소를 식별하기 위한 정보를 제공한다. FEC 리페어 패킷에 포함된 리페어 FEC 페이로드 ID는 상기 FEC 리페어 패킷에 포함된 리페어 심볼(들) 및 관련 소스 패킷 블록을 식별하기 위한 정보를 제공한다.
도 8은 본 발명의 실시 예에 따른 FEC 소스 패킷 포맷의 예를 나타낸 도면이다. 도 8을 참조하면 FEC 소스 패킷은 MMTP 패킷 헤더, MMTP 페이로드 헤더, MMTP 페이로드 데이터 및 소스 FEC 페이로드 ID로 구성된다. MMT FEC 스킴에 의해 보호되는 소스 패킷은 상기 도 8의 MMTP 패킷 헤더, MMTP 페이로드 헤더 및 페이로드 데이터를 포함할 수 있다.
도 9는 본 발명의 실시 예에 따른 FEC 리페어 패킷 포맷의 예를 나타낸 도면이다. 도 9를 참조하면 FEC 리페어 패킷은 MMTP 패킷 헤더, 리페어 FEC 페이로드 ID와 하나 이상의 리페어 심볼(들)을 포함할 수 있다. ssbg_mode0 혹은 ssbg_mode1이 사용될 경우에 FEC 리페어 패킷은 오직 한 개의 리페어 심볼만을 포함하여야 한다. Ssbg_mode2가 사용될 경우에 FEC 리페어 패킷은 한 개 이상의 리페어 심볼을 포함할 수 있다. 또한 FEC 리페어 패킷 블록에 속한 FEC 리페어 패킷 중 마지막 FEC 리페어 패킷을 제외한 모든 FEC 리페어 패킷들은 동일한 개수의 리페어 심볼을 포함하여야 한다.
MMT FEC 기법을 사용하는 송신 시스템은 수신 시스템에서 수신된 FEC 소스 패킷과 FEC 리페어 패킷을 사용한 손실된 소스 패킷 복원 기능을 수행하기 위하여 필요한 정보를 전달하여야 한다. 이후 상기 정보를 FEC 구성 정보라 하자. FEC 구성 정보는 그 용도 및 특성에 따라 FEC 소스/리페어 패킷에 포함되어 전송되거나 상기 FEC 소스/리페어 패킷을 제외한 별도의 패킷으로 전달되는 시그널링 메시지로 전송 될 수 있다.
FEC 구성 정보 중 소스 FEC 페이로드 ID는 상기 도 8에 나타낸 FEC 소스 패킷 포맷의 예처럼 FEC 소스 패킷의 마지막 부분에 포함될 수 있다. 도 10은 본 발명의 실시 예에 따른 소스 FEC 페이로드 ID의 예를 나타낸 도면이다.
상기 도 10에 나타낸 SS_ID 필드와 FFSRP_TS 필드의 용법의 예는 다음과 같다.
SS_ID (32비트) - 해당 FEC 소스 패킷에 포함된 소스 심볼들을 식별할 수 있는 일련 번호(sequence number)를 나타낸다. 이 일련번호는 최대값 이후 0으로 돌아간다. ssbg_mode0 혹은 ssbg_mode1이 사용될 경우에 SS_ID 값은 FEC 소스 패킷 별로 1씩 증가한다. 만약 ssbg_mode==10 일 경우, 일련 번호는 심볼 엘리먼트(패딩만으로 구성된 심볼 엘리먼트도 포함)마다 1씩 증가하며 SS_ID 값은 해당 FEC 소스 패킷에 포함된 첫 번째 심볼 엘리먼트의 일련 번호로 설정된다. LA-FEC 부호화 구조가 사용될 경우에, 소스 심볼 블록의 가장 낮은 SS_ID는 SS_ID_max + 1과 같아야한다. 여기서 SS_ID_max는 모든 플로우의 선행 소스 심볼 블록의 가장 높은 SS_ID이다.
도 11은 본 발명의 실시 예에 따른 LA-FEC 부호화 방식이 사용될 경우의 SS_ID 설정 방법의 예를 나타낸 도면이다. 상기 도 11을 참조하면 각 플로우 내의 동일한 소스 심볼 블록의 첫 번째 SS_ID는 모든 플로우의 모든 소스 심볼 블록의 동기화 포인트로 사용될 수 있다.
FFSRP_TS (4 bytes) - FFSRP_TS는 TS_Indicator (1 bit) 와 FP_TS (31 bits) 구성되어 있다.
TS_Indicator (1 bit) - FEC에서 타임 스탬프를 나타낸다 (표 1 참조). One-stage FEC 부호화 구조 및 LA-FEC에 대해, 이 필드의 값은 "0"으로 설정 되어야 한다. Two- stage FEC 부호화 구조 (M> 1)의 경우, "1"로 설정되면 FP_TS (31 비트)가 FEC 소스 또는 리페어 패킷 블록에 대한 값임을 나타내며, "0"으로 설정되면 다음의 FP_TS (31 비트)가 two-stage FEC 부호화 구조의 i 번째 FEC 소스 또는 리페어 패킷 블록 (M> 1 및 i = 1, 2, ..., M )에 대한 값임을 나타낸다. Two-stage FEC 부호화 구조 (M> 1)의 경우, i 번째 FEC 소스 패킷 블록의 홀수 번째 FEC 소스 패킷에 대해서는 이 필드를 "0"으로 설정하고, 상기 i 번째 FEC 소스 패킷 블록의 짝수 번째 FEC 소스 패킷에 대해서는 "1"로 설정해야 한다 (i = 1, 2, ..., M).
설명
b0 다음의 FP_TS (31 비트)는 one-stage FEC 및 LA-FEC 부호화 구조 의 FEC 소스 또는 리페어 패킷 블록 또는 two-stage FEC 부호화 구조의 i 번째 FEC 소스 또는 리페어 패킷 블록에 대한 것이다 (M> 1 및 i = 1, 2, ..., M).
b1 다음 FP_TS (31 비트)는 two-stage FEC 부호화 구조의 FEC 소스 또는 리페어 패킷 블록을 위한 것이다.
FP_TS (31 bits) - FP_TS 는 관련 FEC 소스/리페어 패킷 블록에서 가장 먼저 전송된 MMTP 패킷의 패킷 헤더에 존재하는 32-비트의 타임스탬프에서 MSB를 제외한 나머지 31비트를 나타낸다.
본 발명의 다른 실시 예에서 상기 FFSRP_TS는 선택 적으로 존재할 수 있다. 일 예로 FEC 소스/리페어 패킷을 제외한 별도의 패킷으로 전달되는 시그널링 메시지는 상기 FFSRP_TS의 존재 여부를 알려주는 플래그(flag)를 포함할 수 있다.
FEC 구성 정보 중 리페어 FEC 페이로드 ID는 상기 도 9에 나타낸 FEC 리페어 패킷 포맷의 예처럼 FEC 리페어 패킷에서 MMTP 패킷 헤더 이후에 존재할 수 있다. 도 12은 본 발명의 실시 예에 따른 리페어 FEC 페이로드 ID의 예를 나타낸 도면이다.
상기 도 12에 나타낸 각 필드들의 용법의 예는 다음과 같다.
SS_Start (32 bits) - 연관된 소스 심볼 블록의 경계를 나타낸다. ssbg_mode0 또는 ssbg_mode1이 사용될 경우에는 연관된 소스 심볼 블록의 첫 번째 소스 심볼의 일련번호로 설정된다. ssbg_mode2가 사용될 경우에는 연관된 소스 심볼 블록의 첫 번째 심볼 요소의 일련번호로 설정된다.
RSB_length (24 bits) - RSB_length는 해당 FEC 리페어 패킷으로 전송되는 리페어 심볼을 포함하는 리페어 심볼 블록을 구성하는 리페어 심볼의 개수이다.
RS_ID (24 bits) - 해당 FEC 리페어 패킷에 포함된 첫 번째 리페어 심볼을 식별하기 위한 일련번호이다. 해당 FEC 리페어 패킷이 두 개 이상의 리페어 심볼을 포함할 경우에 첫 번째 리페어 심볼의 후속 리페어 심볼들의 일련번호는 1씩 증가한다. 모든 리페어 심볼 블록에 대하여 0으로 시작하며 각 리페어 심볼마다 1씩 증가한다.
SSB_length[N] (N*24 bits) - LA-FEC 부호화 구조가 사용되지 않을 경우에는, N이 "1"이고, SSB_length는 연관된 소스 심볼 블록에 포함된 소스 심볼의 개수 (ssbg_mode0 혹은 ssbg_mode1이 사용될 경우) 또는 연관된 소스 심볼 블록에 포함된 소스 심볼 엘리먼트의 개수(ssbg_mode2가 사용될 경우, 전체가 패딩으로 구성된 소스 심볼 엘리먼트는 제외)를 나타낸다. LA-FEC 부호화 구조가 사용될 경우에, N은 보완 계층의 개수+1과 같아야하며, SSB_length[i]는 i 번째 플로우의 연관 소스 심볼 블록에 포함된 소스 심볼의 개수(ssbg_mode0 혹은 ssbg_mode1이 사용될 경우) 혹은 i 번째 플로우의 연관 소스 심볼 블록에 포함된 심볼 엘리머트의 개수(ssbg_mode2가 사용될 경우, 전체가 패딩으로 구성된 소스 심볼 엘리먼트는 제외)를 나타낸다.
FFSRP_TS (4 bytes) -TS_Indicator (1 bit) 와 이후 FP_TS (31 bits)로 구성 되어 있다.
TS_Indicator (1 bit) - FEC에서 타임 스탬프를 나타낸다 (표 2 참조). One-stage FEC 부호화 구조 및 LA-FEC에 대해, 이 필드의 값은 "0"으로 설정 되어야 한다. Two- stage FEC 부호화 구조 (M> 1)의 경우, "1"로 설정되면 FP_TS (31 비트)가 FEC 소스 또는 리페어 패킷 블록에 대한 값임을 나타내며, "0"으로 설정되면 다음의 FP_TS (31 비트)가 two-stage FEC 부호화 구조의 i 번째 FEC 소스 또는 리페어 패킷 블록 (M> 1 및 i = 1, 2, ..., M )에 대한 값임을 나타낸다. Two-stage FEC 부호화 구조 (M> 1)의 경우, i 번째 FEC 소스 패킷 블록의 홀수 번째 FEC 소스 패킷에 대해서는 이 필드를 "0"으로 설정하고, 상기 i 번째 FEC 소스 패킷 블록의 짝수 번째 FEC 소스 패킷에 대해서는 "1"로 설정해야 한다 (i = 1, 2, ..., M).
설명
b0 다음의 FP_TS (31 비트)는 one-stage FEC 및 LA-FEC 부호화 구조 의 FEC 소스 또는 리페어 패킷 블록 또는 two-stage FEC 부호화 구조의 i 번째 FEC 소스 또는 리페어 패킷 블록에 대한 것이다 (M> 1 및 i = 1, 2, ..., M).
b1 다음 FP_TS (31 비트)는 two-stage FEC 부호화 구조의 FEC 소스 또는 리페어 패킷 블록을 위한 것이다.
FP_TS (31 bits) - FP_TS 는 관련 FEC 소스/리페어 패킷 블록에서 가장 먼저 전송된 MMTP 패킷의 패킷 헤더에 존재하는 32-비트의 타임스탬프에서 MSB를 제외한 나머지 31비트를 나타낸다.
본 발명의 실시 예에 따른 FEC 부호의 소스 심볼 블록과 리페어 심볼 블록은 각각 2개 이상의 소스 심볼 서브 블록들과 리페어 심볼 서브 블록들로 구성된다. 이 때 소스 심볼 블록을 구성하는 소스 심볼 서브 블록의 개수와 이와 연관된 리페어 심볼 블록을 구성하는 리페어 심볼 서브 블록의 개수는 동일함에 유의한다. 각각의 리페어 심볼 서브 블록은 연관된 하나 이상의 소스 심볼 서브 블록을 가지며, 상기 리페어 심볼 서브 블록에 속한 리페어 심볼은 상기 연관된 소스 심볼 서브 블록들에서 선택된 소스 심블들을 사용하여 생성된다.
상기 소스 심볼 블록을 소스 심볼 서브 블록으로 분할할 때 소스 심볼과 연관된 소스 패킷의 우선 순위를 고려할 수 있다. 일 예로 소스 패킷 블록을 구성하는 소스 패킷들이 N개의 서로 다른 우선 순위를 가질 경우에, 상기 소스 패킷 블록에서 생성되는 소스 심볼 블록은 N개의 소스 심볼 서브 블록으로 구성될 수 있다. 일 예로 MMT를 사용할 경우에 상기 소스 패킷들이 가지는 우선 순위는 다음과 같은 정보로부터 획득할 수 있다:
- Bundle delivery characteristics에서 bundle내의 asset 단위 또는 bundle 단위로 부여된 우선 순위
- Hint sample에서 MPU내의 MFU 단위로 부여된 우선 순위
- MMTP header내에서 priority 필드의 정보를 이용하여 패킷 단위로 부여된 우선 순위
상술한 바와 같이 소스 패킷의 우선 순위를 고려하여 소스 심볼 블록을 소스 심볼 서브 블록으로 분할할 경우에, 각각의 리페어 심볼 서브 블록은 연관된 하나 이상의 소스 심볼 서브 블록을 가지며, 상기 리페어 심볼 서브 블록에 속한 리페어 심볼은 상기 연관된 소스 심볼 서브 블록들에서 선택된 소스 심볼들을 사용하여 생성된다.
도 13은 본 발명의 실시 예에 따른 소스 심볼 블록과 리페어 심볼 블록의 일 예를 도시한 도면이다.
도 13을 참조하면, 소스 심볼 블록(1310)은 소스 심볼 서브 블록#1(1311)과 소스 심볼 서브 블록#2(1312)로 구성되며, 리페어 심볼 블록(1320)은 리페어 심볼 서브 블록#1(1321)과 리페어 심볼 서브 블록#2(1322)로 구성된다. 이 때 상기 소스 심볼 블록(1310)에 속한 모든 소스 심볼들은 반드시 소스 심볼 서브 블록#1(1311) 혹은 소스 심볼 서브 블록#2(1312) 중 하나의 소스 심볼 서브 블록에 속해야 한다. 마찬가지로 상기 리페어 심볼 블록(1320)에 속한 모든 리페어 심볼들은 반드시 리페어 심볼 서브 블록#1(1321) 혹은 리페어 심볼 서브 블록#2(1322) 중 하나의 리페어 심볼 서브 블록에 속해야 한다.
도 14는 본 발명의 실시 예에 따른 리페어 심볼 블록 생성 과정의 일 예를 도시한 도면이다.
도 14를 참조하면, 리페어 심볼 서브 블록#1(1321)은 소스 심볼 서브 블록#1(1311)에 FEC 알고리즘 #1(1410)을 적용하여 생성된다. 또한 리페어 심볼 서브 블록#2(1322)은 소스 심볼 서브 블록#1(1311)과 소스 심볼 서브 블록#2 (1312)에 FEC 알고리즘 #2(1420)을 적용하여 생성된다.
본 발명의 실시 예에 따른 FEC 부호는 N개의 소스 심볼 서브 블록으로 구성된 소스 심볼 블록을 입력으로 리페어 심볼들을 출력하며, 상기 리페어 심볼은 N개의 리페어 심볼 서브 블록으로 구성된 리페어 심볼 블록을 구성한다. 상기 소스 심볼 서브 블록 중 i번째 소스 심볼 서브 블록을 SSB[i]라하고 상기 SSB[i]에 포함된 소스 심볼의 개수를 SSBL[i]라하자. 마찬가지로 상기 리페어 심볼 서브 블록 중 i번째 리페어 심볼 서브 블록을 RSB[i]라 하고 RSB[i]에 포함된 리페어 심볼의 개수를 RSBL[i]라하자. 또한 RSB[i]에 포함된 리페어 심볼 생성 및 상기 생성된 리페어 심볼들에 일련번호를 부여하는 규칙을 나타내는 함수를 FEC_algo#i()라 하자.
이후로는 설명의 편이를 위하여 상기 FEC 부호는 다음의 제약조건을 가진다고 가정한다:
RSB[1] = FEC_algo#1 (SSB[1];SSBL[1], RSBL[1])
RSB[2] = FEC_algo#2 (SSB[1], SSB[2]; SSBL[1], SSBL[2], RSBL[1], RSBL[2])
RSB[N] = FEC_algo#N (SSB[1],…,SSB[N]; SSBL[1],…,SSBL[N], RSBL[1],…,RSB[N])
상술한 제약조건에서 FEC_algo#i는 SSB[1],…,SSB[i]에 속한 소스 심볼들을 입력으로 사용하고, SSBL[1],…,SSBL[i],RSBL[1],…,RSBL[i]를 파라미터로 사용하여 RSB[i]를 구성하는 리페어 심볼들의 값 및 일련 번호를 출력하는 알고리즘을 의미한다.
수신기가 상술한 제약조건을 가지는 FEC 부호로 MMTP 패킷을 보호하는 MMT FEC 방식을 적응형(adaptive) FEC 부호화 방식이라 하자. 상기 적응형 FEC 부호화 방식으로 보호된 멀티미디어 서비스에서 수신기가 손실된 MMTP 패킷들을 복원하기 위해서는 N=1인 다른 FEC 부호화 방식을 사용할 경우에 비하여 다음의 정보가 수신기에게 추가적으로 전달되어야 한다.
- 소스 심볼 블록을 구성하는 소스 심볼 서브 블록의 수 N (>1)
- 각 소스 심볼 서브 블록을 구성하는 심볼의 개수 SSBL[i]
- 각 리페어 심볼 서브 블록을 구성하는 심볼의 개수 RSBL[i]
이제 상술한 One-Stage FEC 부호화 방식, Two-Stage FEC 부호화 방식, LA-FEC 부호화 방식, 적응형 FEC 부호화 방식을 모두 지원하며, 상기 FEC 부호화 방식 중 하나를 선택하여 MMTP 패킷을 보호하는 멀티미디어 전송 시스템을 고려하자. 이 때 필요한 FEC 구성 정보는 다음과 같다.
- 적용된 FEC 부호화 방식을 나타내는 식별자
■ Two-stage FEC 부호화 방식의 경우에는 분할된 소스 심볼 블록의 수
■ 적응형 FEC 부호화 방식의 경우에는 상술한 추가 정보들
- 리페어 심볼 생성에 사용된 FEC 부호를 나타내는 식별자
■ Two-stage FEC 부호화 방식을 사용할 경우에는 2개의 FEC 부호 식별자
- 소스 심볼 블록 생성 방식을 나타내는 식별자
■ ssbg_mode2가 사용될 경우에는 하나의 심볼을 구성하는 심볼 엘리먼트의 개수
- 리페어 심볼의 바이트 단위 길이
- 수신된 FEC 소스/리페어 패킷에 포함된 소스/리페어 심볼의 일련 번호
상술한 정보 중 적응형 FEC 부호화 방식을 위한 추가 정보와 수신된 FEC 소스/리페어 패킷에 포함된 소스/리페어 심볼의 일련 번호를 제외한 정보는 변화가 적은 정보이므로 AL-FEC 시그널링 메시지의 형태로 전달되는 것이 바람직하다. 반면에 수신된 FEC 소스/리페어 패킷에 포함된 소스/리페어 심볼의 일련 번호는 매 블록/패킷마다 변화하는 정보이므로 패킷에 포함시켜서 전송하는 것이 바람직하다. 상술한 적응형 FEC 부호화 방식을 위한 추가 정보는 구현 방식에 따라 다양한 형태로 전달될 수 있다. 이후의 실시 예에서는 상술한 소스 FEC 페이로드 ID와 리페어 FEC 페이로드 ID를 그대로 사용한다는 가정하에 상술한 적응형 FEC 부호화 방식을 위한 추가 정보를 전달하는 방법을 제시한다.
도 15는 MMTP에서 제공하는 확장 헤더의 표준구조를 나타낸 도면이다. 본 발명의 실시 예에 따른 멀티미디어 서비스 전송 시스템은 상술한 적응형 FEC 부호화 방식을 위한 추가 정보 중 블록/패킷마다 변화하는 정보를 상기 도 15를 따르는 형태로 구성하여 전달할 수 있다. 도 15를 참조하면 type은 상기 도 15의 header_extension_value를 식별하기 위한 식별자이며, length는 header_extension_value의 바이트 단위 길이를 나타낼 수 있다.
이 때 상기 적응형 FEC 부호화 방식을 위한 추가 정보를 포함하는 확장헤더는 상기 적응형 FEC 부호화 방식이 적용된 FEC 소스 혹은 리페어 패킷에만 존재할 수 있다. 또한 후술할 확장 헤더들은 상기 적응형 FEC 부호화 방식이 적용된 FEC 소스 혹은 리페어 패킷 모두에 포함 될 수도 있으며, 모든 FEC 리페어 패킷에만 포함될 수도 있고, FEC 소스/리페어 패킷들 중 일부에만 포함될 수 도 있다.
본 발명의 실시 예를 따르는 적응형 부호와 방식이 사용될 경우에 AL-FEC 메시지는 소스 심볼 블록을 구성하는 소스 심볼 서브 블록의 수 N을 포함할 수 있다. 이 경우에 각 소스 심볼 서브 블록과 리페어 심볼 서브 블록에 포함된 심볼의 수는 도 16에 나타낸 확장 헤더로 전달 될 수 있다. 도 16을 참조하면, 각 소스 심볼 서브 블록과 리페어 심볼 서브 블록에 포함된 심볼의 수는 각각 24-bit 필드를 사용하여 전달된다.
상술한 실시 예의 확장 헤더는 N개의 모든 소스/리페어 심볼 서브 블록들의 길이를 포함하고 있지만, N 번째 소스/리페어 심볼 서브 블록의 길이는 리페어 FEC 페이로드 ID로 전달되는 전체 소스/리페어 블록의 길이에서 1~N-1 번째 소스/리페어 심볼 서브 블록의 길이를 사용하여 계산할 수 있으므로 상기 확장 헤더에서 생략 가능하다. 도 17은 상술한 N번째 소스/리페어 심볼 서브 블록의 길이가 생략된 확장 헤더의 다른 예이다.
상술한 FEC 부호의 제약조건을 상기하면 i번째 리페어 심볼 서브 블록에 속한 리페어 심볼을 수신하였을 경우에 1~i번째 각 소스/리페어 심볼 서브 블록에 속한 심볼의 개수를 알면 FEC_algo#i()의 역과정을 수행하여 1~i번째 소스 심볼 서브 블록에 속한 소스 심볼 중 손실된 심볼의 복원을 시도하는 것이 가능하다. 따라서 도 18에 나타낸 바와 같이 1~i번째 소스/리페어 심볼 서브 블록에 속한 심볼의 개수만을 포함하는 확장 헤더를 i번째 소스/리페어 심볼 서브 블록에 속한 심볼이 포함된 FEC 소스/리페어 패킷 전부 혹은 FEC 리페어 패킷 전부 혹은 일부 FEC 소스/리페어 패킷에 포함시켜 전송할 수 있다. 이 때 SSBL[k]와 RSBL[k] (k=1,2.,…i)는 고정된 길이(3 바이트)를 가지므로 i의 값은 별도의 시그널링 없이 length 필드의 값을 6으로 나누어서 알 수 있다.
본 발명의 다른 실시 예에 따른 FEC 부호의 경우에 i번째 리페어 심볼 서브 블록에 속한 리페어 심볼을 수신하였을 경우에 1~i번째 각 소스 심볼 서브 블록에 속한 심볼의 개수와 1~(i-1)번째 리페어 심볼 서브 블록에 속한 리페어 심볼의 총 개수와 i번째 리페어 심볼 서브 블록에 속한 심볼의 개수를 알면 FEC_algo#i()의 역과정을 수행하여 1~i번째 소스 심볼 서브 블록에 속한 소스 심볼 중 손실된 심볼의 복원을 시도하는 것이 가능하다. 따라서 도 19에 나타낸 바와 같이 다음 필드를 포함하는 확장 헤더를 i번째 소스/리페어 심볼 서브 블록에 속한 심볼이 포함된 FEC 소스/리페어 패킷 전부 혹은 FEC 리페어 패킷 전부 혹은 일부 FEC 소스/리페어 패킷에 포함시켜 전송할 수 있다.
- RSB_start: i번째 리페어 심볼 서브 블록에 속한 첫 번째 리페어 심볼의 식별자(RS_ID). 즉 1 ~ (i - 1)번째 리페어 심볼 서브 블록에 속한 리페어 심볼들의 총합
- RSBL[i]: i번째 리페어 심볼 서브 블록에 속한 리페어 심볼의 개수
- SSBL[j]: j번째 소스 심볼 서브 블록에 속한 소스 심볼의 개수
이 때 SSBL[k] (k=1,2,…i) 는 고정된 길이(3 바이트)를 가지므로 i의 값은 별도의 시그널링 없이 (length 필드의 값 - 6)을 3으로 나누어서 알 수 있다.
상술한 실시 예들은 소스/리페어 심볼 서브 블록의 길이 들이 모두 확장 헤더에 포함되는 경우를 고려하였다. 또 다른 실시 예로 상술한 리페어 FEC 페이로드 ID로 리페어 심볼 서브 블록의 길이들을 전송하고, 확장 헤더로는 소스 심볼 서브 블록의 길이만을 시그널링하는 방법을 생각할 수 있다. 이 경우에 확장 헤더는 상기 도 16, 17, 18에 나타낸 형태에서 뒤쪽에 존재하는 RSBL이 생략된 형태가 된다. 또 다른 실시 예로 상술한 리페어 FEC 페이로드 ID로 소스 심볼 서브 블록의 길이들을 전송하고, 확장 헤더로는 리페어 심볼 서브 블록의 길이만을 시그널링하는 방법을 생각할 수 있다. 이 경우에 확장 헤더는 상기 도 16, 17, 18, 19에 나타낸 형태에서 앞쪽에 존재하는 SSBL이 생략된 형태가 된다. 상기 도 18에 나타낸 실시 예에서 SSBL[k] (k=1,2,…i)이 생략될 경우에 i의 값은 별도의 시그널링 없이 length 필드의 값을 3으로 나누어서 알 수 있다. 도 19에 나타낸 실시 예에서 SSBL을 리페어 FEC 페이로드 ID로 시그널링 할 경우의 MMTP packet header extension의 예를 도 20에 나타내었다. 상기 도 20에서 RSB_ID는 현재 MMTP 패킷이 포함된 리페어 심볼 서브 블록의 식별자(i)를 나타내며, RSB_start는 i번째 리페어 심볼 서브 블록에 속한 첫 번째 리페어 심볼의 식별자(RS_ID). 즉 1 ~ (i - 1)번째 리페어 심볼 서브 블록에 속한 리페어 심볼들의 총합을 나타내고, RSBL은 i번째 리페어 심볼 서브 블록에 속한 리페어 심볼의 개수를 나타낸다. 본 발명의 다른 실시 예에서 상기 도 20의 상기 RSBL 필드는 생략될 수 있다.
본 발명의 실시 예를 따르는 적응형 부호와 방식이 사용될 경우에 AL-FEC 메시지는 소스 심볼 블록을 구성하는 소스 심볼 서브 블록의 수 N 및 각 소스/리페어 심볼 서브 블록의 길이를 포함할 수 있다. 이 경우에 두 가지 형태의 적응형 FEC 부호화 방식의 실시 예를 고려할 수 있다. 첫 번째로는 AL-FEC 메시지를 매 소스 패킷 블록마다 갱신하여 수신기에게 전달하는 방식이며, 이 경우에는 상술한 MMTP 확장 헤더는 사용되지 않는다. 두 번째 방식은 AL-FEC 메시지로는 각 소스/리페어 심볼 서브 블록의 최대 길이들을 전달하고 이 최대 길이들을 상술한 FEC_algo#i의 파라미터로 사용하는 것이다. 이 경우에 멀티미디어 데이터의 특성에 따라 소스 심볼 서브 블록에 패딩으로만 구성된 심볼들이 하나 이상 존재 할 수 있다. 따라서 이 경우에는 상술한 MMTP 확장 헤더의 실시 예들과 동일한 형태의 확장 헤더를 사용하여 각 소스 심볼 서브 블록에 대하여 소스 패킷으로부터 전달 받은 데이터를 포함하는 심볼의 수 혹은 패딩으로만 구성된 심볼의 수를 전달하는 것이 필요하다. 상기 패딩으로만 구성된 심볼의 수를 전달할 경우에는 상술한 도 16, 17, 18의 실시 예들에서 SSBL[j]의 값을 i번째 소스 심볼 서브 블록에 속한 패딩으로만 구성된 소스 심볼의 수로 설정하여 시그널링할 수 있다.
한편 본 발명의 상세한 설명에서는 구체적인 실시 예에 관해 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 발명의 범위는 설명된 실시 예에 국한되어 정해져서는 안되며 후술하는 특허 청구의 범위뿐만 아니라 이 특허 청구의 범위와 균등한 것들에 의해 정해져야 한다.

Claims (20)

  1. 송신 장치에서 방송 서비스를 송신하는 방법에 있어서,
    소스 심볼 블록에 포함된 소스 심볼 서브 블록들을 획득하는 과정;
    순방향 오류 정정(forward error correction: FEC) 기법을 사용하여, 상기 소스 심볼 서브 블록들에 기반한 리페어 심볼 서브 블록들을 생성하는 과정;
    상기 소스 심볼 서브 블록들과 상기 리페어 심볼 서브 블록들을 송신하는 과정;
    상기 FEC 기법을 지시하는 식별자를 포함하는 시그널링 메시지를 생성하는 과정; 및
    상기 생성한 시그널링 메시지를 송신하는 과정을 포함하며,
    상기 소스 심볼 블록은 N개의 소스 심볼 서브 블록들을 포함하고, 상기 N개의 소스 심볼 서브 블록들은 상기 소스 심볼 블록을 생성하기 위해 사용된 서로 다른 우선 순위를 갖는 N개의 소스 패킷들에 대응하며, 여기서 N은 1 보다 큰 정수를 나타내며,
    상기 N개의 소스 심볼 서브 블록들 중 제 1 소스 심볼 서브 블록의 우선 순위는 상기 N개의 소스 심볼 서브 블록들 중 제 N 소스 심볼 서브 블록의 우선 순위와 상이하고,
    상기 리페어 심볼 서브 블록들 중 제 1 리페어 심볼 서브 블록의 우선 순위는 상기 제 1 소스 심볼 서브 블록의 우선 순위를 기반으로 결정되고, 상기 리페어 심볼 서브 블록들 중 제 N 리페어 심볼 서브 블록의 우선 순위는 상기 제 N 소스 심볼 서브 블록의 우선 순위를 기반으로 결정되며,
    상기 제 1 리페어 심볼 서브 블록은 상기 제 1 소스 심볼 서브 블록에 기반하여 생성되고, 상기 제 N 리페어 심볼 서브 블록은 상기 제 1 소스 심볼 서브 블록 내지 상기 제 N 소스 심볼 서브 블록에 기반하여 생성되며,
    상기 N개의 소스 심볼 서브 블록들과 상기 리페어 심볼 서브 블록들은 각각의 우선 순위에 대응하는 일련 번호(sequence number)를 가짐을 특징으로 하는 방송 서비스 송신 방법.
  2. 삭제
  3. 삭제
  4. 제1항에 있어서,
    상기 N개의 소스 심볼 서브 블록들 각각에 대응하는 길이 정보, 상기 리페어 심볼 서브 블록들 각각에 대응하는 식별 정보, 상기 리페어 심볼 서브 블록들 각각에 포함된 리페어 심볼들 중 첫 번째 리페어 심볼의 식별 정보, 및 상기 리페어 심볼 서브 블록들 각각에 포함된 리페어 심볼들의 개수에 대한 정보를 포함하는 구성 정보를 생성하는 과정; 및
    상기 생성된 구성 정보를 송신하는 과정을 더 포함함을 특징으로 하는 방송 서비스 송신 방법.
  5. 제4항에 있어서,
    상기 생성된 구성 정보는 상기 리페어 심볼 서브 블록들을 포함하는 리페어 패킷의 헤더 또는 상기 시그널링 메시지를 통해 송신됨을 특징으로 하는 방송 서비스 송신 방법.
  6. 수신 장치에서 방송 서비스를 수신하는 방법에 있어서,
    송신 장치로부터 소스 심볼 서브 블록들과 리페어 심볼 서브 블록들을 수신하는 과정;
    상기 송신 장치로부터 시그널링 메시지를 수신하는 과정;
    상기 시그널링 메시지에 포함된 식별자를 기반으로 순방향 오류 정정(forward error correction: FEC) 기법을 확인하는 과정; 및
    상기 확인된 FEC 기법, 상기 소스 심볼 서브 블록들 및 상기 리페어 심볼 서브 블록들에 기반하여, 상기 소스 심볼 서브 블록들을 포함하는 소스 심볼 블록을 복원하는 과정을 포함하며,
    상기 소스 심볼 블록은 N개의 소스 심볼 서브 블록들을 포함하고, 상기 N개의 소스 심볼 서브 블록들은 상기 소스 심볼 블록을 생성하기 위해 사용된 서로 다른 우선 순위를 갖는 N개의 소스 패킷들에 대응하며,
    상기 N개의 소스 심볼 서브 블록들 중 제 1 소스 심볼 서브 블록의 우선 순위는 상기 N개의 소스 심볼 서브 블록들 중 제 N 소스 심볼 서브 블록의 우선 순위와 상이하고, 여기서 N은 1 보다 큰 정수를 나타내며,
    상기 리페어 심볼 서브 블록들 중 제 1 리페어 심볼 서브 블록의 우선 순위는 상기 제 1 소스 심볼 서브 블록의 우선 순위를 기반으로 결정되고, 상기 리페어 심볼 서브 블록들 중 제 N 리페어 심볼 서브 블록의 우선 순위는 상기 제 N 소스 심볼 서브 블록의 우선 순위를 기반으로 결정되며,
    상기 제 1 리페어 심볼 서브 블록은 상기 제 1 소스 심볼 서브 블록에 기반하여 생성되고, 상기 제 N 리페어 심볼 서브 블록은 상기 제 1 소스 심볼 서브 블록 내지 상기 제 N 소스 심볼 서브 블록에 기반하여 생성되며,
    상기 N개의 소스 심볼 서브 블록들과 상기 리페어 심볼 서브 블록들은 각각의 우선 순위에 대응하는 일련 번호(sequence number)를 가짐을 특징으로 하는 방송 서비스 수신 방법.
  7. 삭제
  8. 삭제
  9. 제6항에 있어서,
    상기 N개의 소스 심볼 서브 블록들 각각에 대응하는 길이 정보, 상기 리페어 심볼 서브 블록들 각각에 대응하는 식별 정보, 상기 리페어 심볼 서브 블록들 각각에 포함된 리페어 심볼들 중 첫 번째 리페어 심볼의 식별 정보, 및 상기 리페어 심볼 서브 블록들 각각에 포함된 리페어 심볼들의 개수에 대한 정보를 포함하는 구성 정보를 수신하는 과정을 더 포함함을 특징으로 하는 방송 서비스 수신 방법.
  10. 제9항에 있어서,
    상기 구성 정보는 상기 리페어 심볼 서브 블록들을 포함하는 리페어 패킷의 헤더 또는 상기 시그널링 메시지를 통해 수신됨을 특징으로 하는 방송 서비스 수신 방법.
  11. 방송 서비스를 송신하는 송신 장치에 있어서,
    송신기; 및
    적어도 하나의 프로세서를 포함하며,
    상기 적어도 하나의 프로세서는,
    소스 심볼 블록에 포함된 소스 심볼 서브 블록들을 획득하고,
    순방향 오류 정정(forward error correction: FEC) 기법을 사용하여, 상기 소스 심볼 서브 블록들에 기반한 리페어 심볼 서브 블록들을 생성하고,
    상기 소스 심볼 서브 블록들과 상기 리페어 심볼 서브 블록들을 송신하도록 상기 송신기를 제어하고,
    상기 FEC 기법을 지시하는 식별자를 포함하는 시그널링 메시지를 생성하고,
    상기 생성한 시그널링 메시지를 송신하도록 상기 송신기를 제어하며,
    상기 소스 심볼 블록은 N개의 소스 심볼 서브 블록들을 포함하고, 상기 N개의 소스 심볼 서브 블록들은 상기 소스 심볼 블록을 생성하기 위해 사용된 서로 다른 우선 순위를 갖는 N개의 소스 패킷들에 대응하며,
    상기 N개의 소스 심볼 서브 블록들 중 제 1 소스 심볼 서브 블록의 우선 순위는 상기 N개의 소스 심볼 서브 블록들 중 제 N 소스 심볼 서브 블록의 우선 순위와 상이하고, 여기서 N은 1 보다 큰 정수를 나타내며,
    상기 리페어 심볼 서브 블록들 중 제 1 리페어 심볼 서브 블록의 우선 순위는 상기 제 1 소스 심볼 서브 블록의 우선 순위를 기반으로 결정되고, 상기 리페어 심볼 서브 블록들 중 제 N 리페어 심볼 서브 블록의 우선 순위는 상기 제 N 소스 심볼 서브 블록의 우선 순위를 기반으로 결정되며,
    상기 제 1 리페어 심볼 서브 블록은 상기 제 1 소스 심볼 서브 블록에 기반하여 생성되고, 상기 제 N 리페어 심볼 서브 블록은 상기 제 1 소스 심볼 서브 블록 내지 상기 제 N 소스 심볼 서브 블록에 기반하여 생성되며,
    상기 N개의 소스 심볼 서브 블록들과 상기 리페어 심볼 서브 블록들은 각각의 우선 순위에 대응하는 일련 번호(sequence number)를 가짐을 특징으로 하는 송신 장치.
  12. 삭제
  13. 삭제
  14. 제11항에 있어서, 상기 적어도 하나의 프로세서는,
    상기 N개의 소스 심볼 서브 블록들 각각에 대응하는 길이 정보, 상기 리페어 심볼 서브 블록들 각각에 대응하는 식별 정보, 상기 리페어 심볼 서브 블록들 각각에 포함된 리페어 심볼들 중 첫 번째 리페어 심볼의 식별 정보, 및 상기 리페어 심볼 서브 블록들 각각에 포함된 상기 리페어 심볼들의 개수에 대한 정보를 포함하는 구성 정보를 생성하고,
    상기 생성된 구성 정보를 송신하도록 상기 송신기를 제어함을 특징으로 하는 송신 장치.
  15. 제14항에 있어서,
    상기 생성된 구성 정보는 상기 리페어 심볼 서브 블록들을 포함하는 리페어 패킷의 헤더 또는 상기 시그널링 메시지를 통해 송신됨을 특징으로 하는 송신 장치.
  16. 방송 서비스를 수신하는 수신 장치에 있어서,
    수신기; 및
    적어도 하나의 프로세서를 포함하며,
    상기 적어도 하나의 프로세서는,
    상기 수신기를 통해 송신 장치로부터 소스 심볼 서브 블록들과 리페어 심볼 서브 블록들을 수신하고,
    상기 수신기를 통해 상기 송신 장치로부터 시그널링 메시지를 수신하고
    상기 시그널링 메시지에 포함된 식별자를 기반으로 순방향 오류 정정(forward error correction: FEC) 기법을 확인하고,
    상기 확인된 FEC 기법, 상기 소스 심볼 서브 블록들 및 상기 리페어 심볼 서브 블록들에 기반하여, 상기 소스 심볼 서브 블록들을 포함하는 소스 심볼 블록을 복원하며,
    상기 소스 심볼 블록은 N개의 소스 심볼 서브 블록들을 포함하고, 상기 N개의 소스 심볼 서브 블록들은 상기 소스 심볼 블록을 생성하기 위해 사용된 서로 다른 우선 순위를 갖는 N개의 소스 패킷들에 대응하며,
    상기 N개의 소스 심볼 서브 블록들 중 제 1 소스 심볼 서브 블록의 우선 순위는 상기 N개의 소스 심볼 서브 블록들 중 제 N 소스 심볼 서브 블록의 우선 순위와 상이하고, 여기서 N은 1 보다 큰 정수를 나타내며,
    상기 리페어 심볼 서브 블록들 중 제 1 리페어 심볼 서브 블록의 우선 순위는 상기 제 1 소스 심볼 서브 블록의 우선 순위를 기반으로 결정되고, 상기 리페어 심볼 서브 블록들 중 제 N 리페어 심볼 서브 블록의 우선 순위는 상기 제 N 소스 심볼 서브 블록의 우선 순위를 기반으로 결정되며,
    상기 제 1 리페어 심볼 서브 블록은 상기 제 1 소스 심볼 서브 블록에 기반하여 생성되고, 상기 제 N 리페어 심볼 서브 블록은 상기 제 1 소스 심볼 서브 블록 내지 상기 제 N 소스 심볼 서브 블록에 기반하여 생성되며,
    상기 N개의 소스 심볼 서브 블록들과 상기 리페어 심볼 서브 블록들은 각각의 우선 순위에 대응하는 일련 번호(sequence number)를 가짐을 특징으로 하는 수신 장치.
  17. 삭제
  18. 삭제
  19. 제16항에 있어서, 상기 적어도 하나의 프로세서는,
    상기 N개의 소스 심볼 서브 블록들 각각에 대응하는 길이 정보, 상기 리페어 심볼 서브 블록들 각각에 대응하는 식별 정보, 상기 리페어 심볼 서브 블록들 각각에 포함된 리페어 심볼들 중 첫 번째 리페어 심볼의 식별 정보, 및 상기 리페어 심볼 서브 블록들 각각에 포함된 리페어 심볼들의 개수에 대한 정보를 포함하는 구성 정보를 수신하도록 상기 수신기를 제어함을 특징으로 하는 수신 장치.
  20. 제19항에 있어서,
    상기 구성 정보는 상기 리페어 심볼 서브 블록들을 포함하는 리페어 패킷의 헤더 또는 상기 시그널링 메시지를 통해 수신됨을 특징으로 하는 수신 장치.
KR1020170134905A 2017-10-13 2017-10-17 응용 계층 순방향 오류 정정 방식을 사용하는 멀티미디어 서비스 제공 방법 및 장치 KR102464803B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US16/753,197 US11368246B2 (en) 2017-10-13 2018-10-15 Method and device for transmitting or receiving broadcast service in multimedia service system
PCT/KR2018/012114 WO2019074341A1 (ko) 2017-10-13 2018-10-15 멀티미디어 서비스 시스템에서 방송 서비스를 송수신하는 방법 및 장치

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020170133600 2017-10-13
KR20170133600 2017-10-13

Publications (2)

Publication Number Publication Date
KR20190041877A KR20190041877A (ko) 2019-04-23
KR102464803B1 true KR102464803B1 (ko) 2022-11-09

Family

ID=66285432

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170134905A KR102464803B1 (ko) 2017-10-13 2017-10-17 응용 계층 순방향 오류 정정 방식을 사용하는 멀티미디어 서비스 제공 방법 및 장치

Country Status (2)

Country Link
US (1) US11368246B2 (ko)
KR (1) KR102464803B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11196664B2 (en) * 2019-09-16 2021-12-07 Envistacom, Llc Multi-path message distribution and message reassembly for large data flow using forward error correction with high-performance computing (HPC)
US11329754B2 (en) * 2020-03-03 2022-05-10 Rockwell Collins, Inc. Variable data rate broadcast method for channels requiring equalization

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090262838A1 (en) 2008-04-21 2009-10-22 Qualcomm Incorporated Method and apparatus for encoding transmission data blocks for enhanced switching performance
CN103650432A (zh) * 2011-07-08 2014-03-19 三星电子株式会社 用于在多媒体系统中生成前向纠错包的方法和用于发送和接收前向纠错包的方法及装置
EP2786578A4 (en) 2011-11-30 2015-11-04 Samsung Electronics Co Ltd DEVICE AND METHOD FOR TRANSMITTING / RECEIVING BROADCAST DATA
US9900166B2 (en) * 2013-04-12 2018-02-20 Qualcomm Incorporated Methods for delivery of flows of objects over broadcast/multicast enabled networks
KR102127685B1 (ko) * 2013-04-17 2020-06-29 삼성전자주식회사 순방향 오류 정정 패킷 송수신 장치 및 방법
FI3972135T3 (fi) * 2013-07-18 2024-03-20 Samsung Electronics Co Ltd Laite ja menetelmä paketin lähettämiseksi/vastaanottamiseksi multimediaviestintäjärjestelmässä
KR102093731B1 (ko) * 2013-10-22 2020-03-26 삼성전자주식회사 오류 정정 부호를 사용하는 통신 시스템에서 패킷 송수신 기법
KR20150050133A (ko) * 2013-10-31 2015-05-08 삼성전자주식회사 통신 시스템에서 패킷 송수신 방법 및 장치
US10484148B2 (en) 2014-07-04 2019-11-19 Samsung Electronics Co., Ltd. Method and device for transmitting and receiving multimedia data
KR101761812B1 (ko) 2015-06-16 2017-07-26 주식회사 구버넷 비균등 오류정정 기법을 이용한 심볼의 패킷 생성 방법
KR101687115B1 (ko) 2015-09-09 2016-12-15 한국과학기술원 통신 시스템의 암호화 패킷 전송 방법

Also Published As

Publication number Publication date
KR20190041877A (ko) 2019-04-23
US20200259589A1 (en) 2020-08-13
US11368246B2 (en) 2022-06-21

Similar Documents

Publication Publication Date Title
US9906326B2 (en) Device and method for transmitting/receiving a packet in communication system
KR102048452B1 (ko) 멀티미디어 시스템에서 순방향 오류 정정 패킷을 생성하는 방법과 그 오류 정정 패킷을 송수신하는 방법 및 장치
JP5550834B2 (ja) 可変fecオーバヘッド及び保護期間を利用したストリーミング及びバッファリング
CN107104677B (zh) 多媒体系统中发送/接收前向纠错相关信息的装置和方法
CN106134204B (zh) 用于在通信系统中传送和接收分组的方法和设备
CN110417513B (zh) 用于在通信系统中发送和接收分组的方法和装置
US20130097474A1 (en) Apparatus and method for transmitting/receiving forward error correction packet in mobile communication system
KR102464803B1 (ko) 응용 계층 순방향 오류 정정 방식을 사용하는 멀티미디어 서비스 제공 방법 및 장치
US9667384B2 (en) Apparatus and method for transmitting and receiving forward error correction packet
US9473264B2 (en) Apparatus and method for transmitting/receiving packet in communication system
KR102506507B1 (ko) 통신 시스템에서 신호를 송/수신하는 장치 및 방법
KR20150046700A (ko) 오류 정정 부호를 사용하는 통신 시스템에서 패킷 송수신 기법
KR20190043060A (ko) 멀티미디어 통신 시스템에서 응용 계층 순방향 오류 정정 방식을 사용하여 미디어 데이터를 송수신하는 방법 및 장치
KR102014710B1 (ko) 방송 및 통신 시스템에서 패킷 송/수신 장치 및 방법
KR20130044782A (ko) 멀티미디어 시스템에서 순방향 오류 정정 부호화 방법 및 장치

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right