KR102127685B1 - 순방향 오류 정정 패킷 송수신 장치 및 방법 - Google Patents

순방향 오류 정정 패킷 송수신 장치 및 방법 Download PDF

Info

Publication number
KR102127685B1
KR102127685B1 KR1020130042045A KR20130042045A KR102127685B1 KR 102127685 B1 KR102127685 B1 KR 102127685B1 KR 1020130042045 A KR1020130042045 A KR 1020130042045A KR 20130042045 A KR20130042045 A KR 20130042045A KR 102127685 B1 KR102127685 B1 KR 102127685B1
Authority
KR
South Korea
Prior art keywords
source
symbol
packet
fec
block
Prior art date
Application number
KR1020130042045A
Other languages
English (en)
Other versions
KR20140124971A (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 to KR1020130042045A priority Critical patent/KR102127685B1/ko
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to CN201480034288.2A priority patent/CN105340205B/zh
Priority to RU2015148959A priority patent/RU2646346C2/ru
Priority to CA2909801A priority patent/CA2909801C/en
Priority to EP14785047.3A priority patent/EP2987329B1/en
Priority to PCT/KR2014/003362 priority patent/WO2014171763A1/en
Priority to JP2016508872A priority patent/JP6371830B2/ja
Priority to CN201811339060.0A priority patent/CN109245863B/zh
Priority to MX2015014696A priority patent/MX348415B/es
Priority to US14/255,215 priority patent/US9407397B2/en
Publication of KR20140124971A publication Critical patent/KR20140124971A/ko
Priority to US15/225,132 priority patent/US9667384B2/en
Application granted granted Critical
Publication of KR102127685B1 publication Critical patent/KR102127685B1/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
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0078Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location
    • H04L1/0083Formatting with frames or packets; Protocol or part of protocol for error control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/89Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder

Abstract

본 발명은 방송 및 통신 시스템에서 패킷을 송수신하기 위한 방법 및 장치에 관한 것이다. 본 발명에 따른 방송 및 통신 시스템에서 패킷을 송신하기 위한 방법은, 소스 패킷들을 포함하는 소스 패킷 블록을 복수 개의 소스 패킷 부블록들로 분할하는 과정과, 상기 복수의 소스 패킷 부블록을 복수의 소스 심볼 부블록으로 각각 변환하는 과정과,상기 소스 패킷 부블록들 각각을 제1 오류 정정 부호로 부호화하여 복수의 인코딩된 소스 심볼 부블록과 복수 개의 제1 리페어 심벌 블록들을 생성하는 과정과, 상기 복수의 인코딩된 소스 심볼 부블록과 상기 복수의 제1 리페어 심볼 블록들을 송신하는 과정을 포함하며, 상기 복수의 인코딩된 소스 심볼 부블록 각각은 적어도 하나의 오류 정정 소스 패킷을 포함하고, 상기 오류 정정 소스 패킷은 소스 페이로드 식별자를 포함하고, 상기 복수의 제1 리페어 심볼 블록 각각은 적어도 하나의 오류 정정 리페어 패킷을 포함하고, 상기 오류 정정 리페어 패킷은 리페어 페이로드 식별자를 포함하고, 상기 소스 페이로드 식별자는 상기 오류 정정 소스 패킷에 포함된 소스 심볼들을 식별하는 시퀀스 넘버를 나타내는 소스 심볼 아이디를 포함하고, 상기 리페어 페이로드 식별자는 소스 심볼 블록에 포함된 소스 심볼들의 개수를 나타내는 소스 심볼 블록 길이를 포함한다.

Description

순방향 오류 정정 패킷 송수신 장치 및 방법{APPARATUS AND METHOD FOR TRANSMITTING AND RECEIVING FORWARD ERROR CORRECTION PACKET}
본 발명은 방송 및/또는 통신 시스템에 관한 것으로, 특히, 방송 및/또는 통신 시스템에서 순방향 오류 정정 (Forward Error Correction: FEC) 패킷의 송수신 장치 및 방법에 관한 것이다.
최근의 방송 및 통신 환경은 다양한 멀티미디어 컨텐츠(Contents)가 증가하고 있을 뿐만 아니라 고품질(High Definition: HD) 컨텐츠 또는 초고품질(Ultra High Definition: UHD) 컨텐츠들과 같은 고용량 컨텐츠들의 증가로 인해 네트워크 상에서 데이터 혼잡(Data Congestion)이 점점 더 심화되고 있다. 이러한 데이터 혼잡으로 인하여 송신기(Sender, 예컨대 호스트(Host) A)가 송신한 컨텐츠들이 수신기(Receiver, 예컨대 호스트 B)에게 정상적으로 전달되지 못하고, 컨텐츠의 일부가 경로(Route) 상에서 손실되는 상황이 발생한다.
일반적으로 데이터는 패킷 단위로 전송되기 때문에 데이터 손실은 패킷 단위로 발생하게 된다. 이와 같이 네트워크 상에서 데이터가 손실되면 수신기는 데이터 패킷을 수신할 수 없게 되므로, 상기 손실된 패킷 내의 데이터를 알 수 없다. 따라서 오디오(Audio)의 품질 저하, 비디오(Video)의 화질 열화나 화면 깨짐, 자막 누락, 파일의 손실 등과 같은 다양한 형태의 사용자의 불편이 초래될 수 있다. 이와 같이 이유로 네트워크 상에서 발생된 데이터 손실을 복구하기 위한 기술이 필요하다.
네트워크 상에서 손실된 데이터를 수신기에서 복구할 수 있도록 지원하는 기술로서, 소스 패킷이라 불리는 다양한 길이를 가질 수 있는 일정 개수의 데이터 패킷들로 소스 패킷 블록을 구성하고, 순방향 오류 정정(Forward Error Correction: FEC) 부호화를 통해 패리티(Parity) 데이터 또는 복구 패킷(Repair packet)과 같은 복구 정보를 소스 패킷 블록에 부가하는 기술이 있다. 수신기에서 손실된 데이터가 있을 경우, 상기 복구 정보를 이용하여 복호(decoding)를 수행할 수 있다.
소스 패킷 블록으로부터 FEC 부호화를 통해 패리티 데이터 또는 복구 패킷을 생성하는 과정을 보면, 상기 소스 패킷 블록으로부터 동일한 길이를 가지는 소스 심벌(source symbol)들로 구성된 소스 심벌 블록(source symbol block)을 구성한 후 FEC 부호화에 의해 복구 심벌(repair symbol)들로 구성된 복구 심벌 블록(repair symbol block)을 생성하고, 상기 생성된 복구 심벌 블록들은 전송을 위한 오류 정정 복구 패킷(FEC repair packet)들로 전환하여 오류 정정 부호화 후의 소스 패킷인 오류 정정 소스 패킷(FEC source packet)들과 함께 FEC Packet으로 전송하게 되는데, 상기 소스 패킷들 각각은 그 길이가 가변일 수 있고 소스 심벌 블록은 동일한 길이의 소스 심벌들로 구성되기 때문에 소스 패킷 블록으로부터 소스 심벌 블록을 생성할 때 패딩 데이터(padding data)가 필요하다. 따라서 효율적인 소스 심벌 블록 생성 방법이 요구된다. 또한 수신단에서 FEC 복호화를 위해 상기 오류 정정 패킷 블록 내에서의 각 소스 패킷들에 전송되는 에러 정정 시그널링(Source FEC payload ID), 각 복구 패킷들에 전송되는 오류 정정 시그널링(repair FEC payload ID)을 전송하는 밴드 내 시그널링 방법이 필요하다.
본 발명은 방송 및 통신 시스템에서 패킷을 송수신하기 위한 밴드 내(in-band) 시그널링 방법 및 장치를 제공한다.
본 발명의 일 실시 예에 따르는 방송 및 통신 시스템에서 패킷을 송신하기 위한 방법은, 주어진 소스 패킷들을 포함하는 소스 패킷 블록을 구성하는 과정과, 상기 소스 패킷 블록에 속한 소스 패킷들을 주어진 소스 심벌 크기 T와 m개의 영역으로 구분된 구조를 가지는 2차원 배열에 그 크기가 T/m인 symbol element들 단위로 배본 발명의 실시예에 따른 멀티미디어 서비스를 지원하는 시스템에서 패킷을 송신하는 방법은, 소스 패킷들을 포함하는 소스 패킷 블록을 복수 개의 소스 패킷 부블록들로 분할하는 과정과, 상기 복수의 소스 패킷 부블록을 복수의 소스 심벌 부블록으로 각각 변환하는 과정과,상기 소스 패킷 부블록들 각각을 제1 오류 정정 부호로 부호화하여 복수의 인코딩된 소스 심벌 부블록과 복수 개의 제1 리페어 심벌 블록들을 생성하는 과정과, 상기 복수의 인코딩된 소스 심벌 부블록과 상기 복수의 제1 리페어 심벌 블록들을 송신하는 과정을 포함하며, 상기 복수의 인코딩된 소스 심벌 부블록 각각은 적어도 하나의 오류 정정 소스 패킷을 포함하고, 상기 오류 정정 소스 패킷은 소스 페이로드 식별자를 포함하고, 상기 복수의 제1 리페어 심벌 블록 각각은 적어도 하나의 오류 정정 리페어 패킷을 포함하고, 상기 오류 정정 리페어 패킷은 리페어 페이로드 식별자를 포함하고, 상기 소스 페이로드 식별자는 상기 오류 정정 소스 패킷에 포함된 소스 심벌들을 식별하는 시퀀스 넘버를 나타내는 소스 심벌 아이디를 포함하고, 상기 리페어 페이로드 식별자는 소스 심벌 블록에 포함된 소스 심벌들의 개수를 나타내는 소스 심벌 블록 길이를 포함한다.
삭제
본 발명의 실시 예에 따르면 방송/통신 시스템에서 효율적인 패킷 송수신 장치 및 방법을 제공할 수 있다.
도 1은 본 발명의 일 실시 예에 따른 송신기 및 수신기의 블록구성도이다.
도 2는 본 발명의 일 실시 예에 따르는 MMT 시스템의 AL-FEC Architecture에 대한 실시 예를 나타낸 도면이다.
도 3은 본 발명의 일 실시 예에 따르는 2단계(two-stage) 방식의 FEC 부호화 방법을 도시한다.
도 4는 본 발명의 일 실시 예에 따라 미디어가 2개의 계층으로 구성되어 있을 경우에 LA-FEC를 적용하기 위한 소스 블록 구성방법을 도시한 도면이다.
도 5는 본 발명의 일 실시 예에 따르는 소스 패킷 블록으로부터 소스 심벌 블록을 생성하는 방법에 대한 실시 예를 나타낸 도면이다.
도 6은 본 발명의 일 실시 예에 따르는 소스 패킷 흐름으로부터 소스 패킷 블록들을 구성하고 상기 소스 패킷 블록들로부터 소스 심벌 블록들을 생성하는 방법에 대한 실시 예를 나타낸 도면이다.
도 7은 본 발명의 일 실시 예에 따르는 FEC source packet block들에 source FEC payload ID (SS_ID)를 부여하는 방법에 대한 일 실시 예를 나타낸 도면이다.
도 8은 본 발명의 일 실시 예에 따르는 FEC repair packet block들에 repair FEC payload ID를 설정하는 방법에 대한 실시 예를 나타낸 도면이다.
도 9a 및 도 9b는 본 발명의 일 실시예에 따르는 FEC 패킷의 구조를 도시한 도면이다.
이하 본 발명의 바람직한 실시 예를 첨부된 도면을 참조하여 상세히 설명한다. 그리고, 본 발명을 설명함에 있어서, 관련된 공지기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단된 경우 그 상세한 설명은 생략한다. 그리고 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
후술되는 본 발명의 실시 예들은 네트워크를 통해 고품질(HD) 컨텐츠 또는 초고품질(UHD) 컨텐츠들과 같은 고용량 컨텐츠 뿐만 아니라, 영상 회의 및/또는 영상 통화 등과 같은 다양한 멀티미디어 서비스를 송수신 할 수 있는 휴대폰, TV, 컴퓨터, 전자 칠판, 태블릿 및 전자책 등의 모든 전자 기기에 대해서 적용될 수 있다. 특히 데이터 패킷들에 FEC를 적용할 때 소스 패킷 블록을 소스 패킷 부블록으로 분할하고 소스 심벌 블록과 소스 심벌 부블록을 효율적으로 구성하여 복호 성능을 개선하거나 전송 효율(transmission efficiency)을 높일 수 있는 방법이 제안된다. 본 명세서에서 구체적인 FEC 부호화 방법을 언급하고 있지는 않지만, 본 발명이 특정 FEC 방법으로 한정되지 않으며, 본 발명은 RS(Reed-Solomon) 부호, LDPC(Low Density Parity Check) 부호, 터보(Turbo) 부호, 랩터(Raptor) 부호, 랩터Q(RaptorQ) 부호, XOR(Single Parity-Check Code), Pro-MPEG(Moving Picture Experts Group) FEC 부호 등 여러 가지 부호화 방식 중 하나 이상이 선택적으로 사용될 수 있다.
먼저, 본 발명을 설명하기에 앞서 본 발명에서 사용될 용어들을 다음과 같이 정의한다.
-FEC 부호: 오류 심벌(Error Symbol) 또는 삭제 심벌(Erasure Symbol)을 정정하기 위한 오류 정정 부호
-소스 심벌(Source Symbol): 부호화 과정에서 사용되는 데이터 단위(unit of data used during the encoding process)
-패리티(복구) 심벌(Repair Symbol): 소스 심벌이 아닌 부호화 심벌 (encoding symbol that is not a source symbol)
-소스 패킷 (Source Packet): FEC에 의해 보호되는 패킷
-소스 패킷 블록(Source Packet Block): 하나의 블록으로 보호되는 FEC 소스 흐름의 소스 패킷들의 집합 (segmented set of FEC source flow that are to be protected as a single block)
-소스 심벌 블록(Source Symbol Block): 하나의 소스 패킷 블록으로부터 생성되는 소스 심벌들의 집합 (set of source symbols generated from a single source packet block)
-패리티(복구) 심벌 블록(Repair Symbol Block): 손실된 소스 심벌들을 복구하기 위해 사용될 수 있는 복구 심벌들의 집합 (set of repair symbols which can be used to recover lost source symbols)
-부호화 심벌 블록(Encoding Symbol Block): 소스 심벌 블록의 부호화 과정에서 생성되는 부호화 심벌들의 집합 (set of encoding symbols from the encoding process of a source symbol block)
-부호화 심벌(encoding symbol): 부호화 과정에 의해 생성되는 데이터의 단위. 여기서 소스 심벌들은 부호화 심벌들의 부분임 (unit of data generated by the encoding process. Where, source symbols are part of the encoding symbols)
-오류 정정 복구 패킷(FEC repair Packet): 패리티 심벌 블록의 하나 이상의 패리티 심벌들을 전송하기 위해 복구 FEC 페이로드 아이디(repair FEC payload ID)를 가지는 패킷 (packet along with repair FEC payload ID to deliver one or more repair symbols of a repair symbol block)
-오류 정정 소스 패킷 (FEC source Packet): 소스 FEC 페이로드 아이디(source FEC payload ID)를 가지는 소스 패킷 (source packet along with source FEC payload ID)
-오류 정정 소스 패킷 블록(FEC source Packet Block): 소스 심벌 블록을 전송하기 위한 오류 정정 소스 패킷들의 집합
-오류 정정 패리티(복구) 패킷 블록(FEC repair Packet Block): 패리티(복구) 심벌 블록을 전송하기 위한 오류 정정 패리티(복구) 패킷들의 집합
-오류 정정 페이로드 식별자 (FEC Payload ID): 오류 정정 기법에 따라 패킷의 컨텐츠를 식별하기 위한 식별자 (an identifier that identifies the contents of a MMT packet with respect to the MMT FEC scheme)
-패리티(복구) 오류 정정 페이로드 식별자 (repair FEC Payload ID): 패리티(복구)오류 패킷들과 함께 사용하기 위한 오류 정정 페이로드 식별자 (FEC payload ID specifically for use with repair packets)
-소스 오류 정정 페이로드 식별자 (source FEC Payload ID): 소스 패킷들과 함께 사용하기 위한 오류 정정 페이로드 식별자 (FEC payload ID specifically for use with source packets)
-MMT(MPEG Media Transport): MPEG(Moving Picture Experts Group) 데이터를 효율적으로 전송하기 위하여 설계중인 국제 표준
-오류 정정 소스 흐름(FEC Source Flow): 오류 정정 기법의 한 방법에 의해 보호되는 소스 패킷들의 흐름 (a flow of source packets protected by a single instance of MMT FEC scheme)
-오류 정정 기법(FEC scheme): 오류 정정 코드들을 사용하기 위해 요구되는 추가적인 프로토콜 관점을 정의하는 규격 (a specification that defines the additional protocol aspects required to use FEC codes)
-오류 정정 코드 (FEC code): 부호화된 데이터의 흐름이 데이터 손실에 저항력이 있도록 하는 부호화 데이터를 위한 알고리즘 (an algorithm for encoding data such that the encoded data flow is resilient to data loss)
-오류 정정 패리티(복구) 흐름(FEC repair Flow): 소스 흐름을 보호하기 위한 패리티(복구) 심벌들을 나르는 데이터의 흐름 (a data flow carrying repair symbols to protect source flow)
-오류 정정 보호된 흐름 (FEC encoded flow): 하나의 오류 정정 소스 흐름과 그것과 관계된 하나 이상의 오류 정정 패리티(복구) 흐름들로 구성된 흐름들의 논리적인 집합 (a logical set of flows that consists of an FEC source flow and its associated one or more FEC repair flows)
-에셋(Asset): 동일한 에셋 ID를 가지는 하나 또는 그 이상의 미디어 프로세싱 단위(Media Processing Unit: MPU)들로 구성된 같은 전송 특성들을 가지는 데이터를 포함하는 데이터 엔터티 (a data entity containing data with the same transport characteristics and that is composed of one of more MPUs with same Asset ID)
-미디어 프로세싱 단위 (Media Processing Unit): 미디어 코텍과 무관하게 독립적으로 복호화 가능한 시간 또는 비시간 데이터를 위한 일반화된 저장체 (a generic container for independently decodable timed or non-timed data, that is media codec agnostic)
-패키지(Package): 하나 이상의 에셋들과 그들과 관계된 에셋 전달 특성들과 구성 정보로 구성된 데이터의 논리적인 결합체 (a logical collection of data, which is composed of one or more Assets and their related Asset Delivery Characteristics, and an Composition Information)
- MMT 패킷 (MMT packet): MMT 프로토콜에 따라 생성되거나 소비되는 데이터의 정형화된 단위 (a formatted unit of data generated or consumed according to the MMT protocol)
- MMT 페이로드 (MMT payload): MMT 프로토콜이나 인터넷 응용 계층 전송 프로토콜 (e.g RTP: Real-Time Transport Protocol)을 사용하는 패키지나 시그널링 메시지를 나르기 위한 데이터의 정형화된 단위 (formatted unit of data to carry the Package or signaling message either using MMT protocol or Internet application layer transport protocols (e.g. RTP))
- MMT 포로토콜 (MMT Protocol): IP 네트워크를 통해 MMT 페이로드를 전달하기 위한 응용 계층 전송 프로토콜 (an application layer transport protocol for delivering MMT payload over IP network)
도 1은 본 발명의 일 실시 예에 따른 송신기 및 수신기의 블록 구성도이다.
도 1을 참조하면, 송신기(100)는 FEC 상위 프로토콜에 해당하는 프로토콜 A 블록(101), FEC 부호화 블록(102), FEC 하위 프로토콜에 해당하는 프로토콜 B 블록(103) 및 송신기 물리 계층 블록(104)을 포함한다.
상기 프로토콜 A 블록(101)은 전송 데이터를 소스 페이로드(130)를 포함하는 소스 패킷 (source packet) 형태로 구성하여 FEC 부호화 블록(102)에 전달한다. 상기 FEC 부호화 블록(102)은 상기 소스 패킷의 군집인 소스 패킷 블록을 구성하고 FEC 부호화를 수행하여 패리티 페이로드(131)를 포함하는 패리티(복구) 심벌들을 생성하며 상기 소스 패킷과 패리티 심벌에 FEC 헤더(132)를 추가하여 프로토콜 B 블록(103)으로 전달한다. 이 때 상기 FEC 헤더와 결합된 소스 패킷을 FEC 소스 패킷이라 하고, 상기 FEC 헤더와 결합된 패리티 심벌을 FEC 패리티 패킷이라 한다. 상기 도 1에서 FEC 소스 패킷은 FEC 헤더와 소스 페이로드가 순차적으로 결합된 데이터 단위이지만 일부 구현에서는 소스 페이로드 이후에 FEC 헤더가 순차적으로 결합된 형태일 수 있다. 또한 상기 도 1에서 FEC 부호화 블록(102)은 프로토콜 A 블록(101)과 프로토콜 B 블록(103)의 사이에 위치하지만 일부 구현에서는 프로토콜 A 블록(101)이 FEC 부호화 블록(102)을 포함할 수 도 있다. 이 경우에 FEC 패리티 패킷에 프로토콜 A 블록(101)의 기능을 수행하기 위한 프로토콜 헤더가 포함될 수 있으며, 상기 FEC 부호화 블록을 포함하는 프로토콜 A 블록은 소스 패킷과 패리티 패킷을 하나의 패킷 흐름으로 만들기 위한 다중화기(multiplexer)를 포함할 수 있다.
송신기 물리 계층 블록(104)은 상기 FEC 소스 패킷과 FEC 패리티(복구) 패킷을 전송에 적합한 신호로 변환하여 전송한다. 상기 프로토콜 B 블록(103)과 송신기 물리 계층 블록(104) 사이에는 다양한 계층이 존재할 수 있으며, 그 구체적인 구성은 본 발명의 요지와 관계없으므로 생략한다.
수신기(110)는 수신기 물리 계층 블록(111), FEC 하위 프로토콜에 해당하는 프로토콜 B 블록(112), FEC 복호화 블록(113) 및 FEC 상위 프로토콜에 해당하는 프로토콜 A 블록(114)을 포함한다.
상기 수신기 물리 계층 블록(111)은 전송 채널(120)을 통하여 수신된 신호를 해석하고, 이를 프로토콜 B 블록(112)으로 전달한다. 송신기(100)의 경우와 마찬가지로 상기 프로토콜 B 블록(112)과 수신기 물리 계층 블록(111) 사이에는 다양한 계층이 존재할 수 있으며, 그 구체적인 구성은 본 발명의 요지와 관계없으므로 생략한다. 프로토콜 B 블록(112)은 수신 신호 또는 패킷을 해석하여 수신 FEC 패킷들을 FEC 복호화 블록(113)으로 전달한다. 이 때 송신기에서 송신한 FEC 패킷 중 일부는 네트워크의 혼잡 및 물리 계층에서 발생한 오류의 영향으로 손실되어 FEC 복호화 블록(113)에 전달되지 못할 수 있다. 상기 FEC 복호화 블록(113)은 전달된 FEC 패킷에 대한 FEC 복호화를 수행하여 손실된 소스 패킷들을 복원하고 이를 수신 패킷과 함께 상위 프로토콜 A 블록(114)으로 전달한다. 상기에서 FEC 헤더는 FEC Payload ID를 말하는 것으로 FEC 소스 패킷을 위한 FEC 헤더는 source FEC payload ID이고, FEC 패리티 패킷을 위한 FEC 헤더는 repair FEC payload ID를 말한다. 또한 본 발명이 MMT 시스템에 적용될 경우 상기 소스 패킷은 MMT 패킷이 되고 FEC 소스 패킷은 source FEC payload ID를 가지는 MMT 패킷이 되며, FEC 패리티(복구) 패킷은 패리티(복구) 심벌을 나르는 repair FEC payload ID를 가지는 MMT 패킷이 된다.
도 2는 본 발명의 일 실시 예에 따른 MMT 시스템에 있어서의 AL-FEC(Application Layer FEC) 아키텍처(Architecture)를 나타낸다.
MMT application(210)은 AL-FEC로 보호하여 전송할 MMT Asset들을 결정하여 MMT Protocol(220)에 입력한다. 또한 MMT Application(210)은 AL-FEC 관련 설정 정보(FEC configuration information)를 MMT FEC Scheme(230)에 입력한다. MMT Protocol(220)은 입력된 Asset들을 MMT 페이로드(MMTPs)로 패킷화(packetize)하고 MMT 패킷 헤더를 부가하여 소스 패킷을 생성하고 소정 개수 단위의 소스 패킷들로 구성된 소스 패킷 블록 단위로 MMT FEC Scheme(240)에 입력한다. MMT FEC Scheme(240)은 MMT Application(210)으로부터 입력된 FEC configuration 정보에 입각하여 주어진 소스 심벌 블록 생성 방법에 따라 입력된 각각의 소스 패킷 블록으로부터 소스 심벌 블록을 생성한다. 이 때 본 발명의 실시예에 따른 소스 심벌 블록 생성 방법은 FEC configuration 정보로 주어지고 MMT FEC Scheme(230)은 FEC configuration 정보에 본 발명의 실시예에 따른 소스 심벌 블록 생성 방법이 명기되어 있으면, 본 발명의 실시예에 따른 소스 심벌 블록을 생성한다. 소스 심벌 블록을 생성한 MMT FEC Scheme(230)은 이를 FEC code(240)에 입력하고, FEC code(240)는 입력된 소스 심벌 블록으로부터 패리티(복구) 심벌 블록을 생성하여 MMT FEC Scheme(230)에 입력한다. MMT FEC Scheme(230)은 상기 소스 심벌 블록과 상기 패리티(복구) 심벌 블록에 대한 FEC payload ID를 생성하고 FEC code(240)로부터 수신된 패리티(복구) 심벌들을 MMT Protocol(220)에 입력한다. MMT Protocol(220)은 입력된 패리티(복구) 심벌들과 FEC Payload ID를 이용하여 소스 패킷에는 source FEC Payload ID를 부가하여 FEC source packet을 생성하고 패리티(복구) 심벌에는 repair FEC Payload ID를 부가 하고, 또한 MMT 페이로드 헤더와 MMT 패킷 헤더를 부가하여 FEC repair packet을 생성한 후 UDP(User Datagram Protocol)와 같은 전송계층(Transport Layer, 250)을 통해 IP(260)로 전송한다. 상기는 용이한 설명을 위해서 소스 패킷 블록 단위로 해서 FEC 소스 패킷이 생성되고 FEC 패리티(복구) 패킷이 생성되어 전송됨을 설명하였지만, 실제 네트워크 환경에서는 MMT Protocol(220)이 생성된 소스 패킷은 MMT FEC Scheme(230)에 입력하는 동시에 source FEC payload ID를 부여하여 FEC 소스 패킷으로 생성하여 바로 전송하고, MMT FEC Scheme(230)은 상기 소스 패킷을 내부 메모리에 저장하고 있다가 소스 패킷 블록을 위한 마지막 소스 패킷을 입력받는 순간에 상기 소스 패킷 블록으로부터 소스 심벌 블록을 생성하여 FEC code(240)로 하여금 패리티 심벌 블록을 생성케 하고 생성된 패리티 심벌 블록을 FEC payload ID와 함께 MMT Protocol(220)에 입력하여 FEC 패리티(복구) 패킷들을 생성한 후 전송됨이 바람직하다.
도 3과 도 4는 본 발명의 일 실시 예에 따른 MMT 시스템에 적용된 FEC 부호화 구조의 하나인 2단계(two-stage) 부호화 방식과 계층 인지 (Layer-Aware) 부호화(LA-FEC) 방식을 각각 나타낸다.
MMT 표준은 상대적으로 높은 신뢰도를 요구하는 패킷들을 하나 이상의 오류 정정부호를 사용하여 보호하기 위한 2단계 방식을 채용하였다. 상기 도 3의 2단계 방식에 따르면 MMT Protocol과 MMT FEC Scheme (이하 MMT FEC FRAME)은 소정 개수의 소스 패킷들로 구성된 소스 패킷 블록(Source Packet Block)들을 M(M은 1보다 큰 정수임)개의 제1 소스 패킷 부블록(1 ~ Mth Source Packet Block)들로 분할하고, 각각의 제1 소스 패킷 부블록들로부터 제 1 소스 심벌 부블록(1 ~ Mth Source Symbol Block)들을 생성하여 각각의 제1 소스 심벌 부블록에 대해 제1 FEC 부호화에 의해 생성되는 제1 패리티(복구) 심벌 블록(Repair Symbol Block)들을 포함하는 제1 부호화 심벌 블록(Encoding Symbol block)들을 생성한다. 그 후 MMT FEC FRAME은 M개의 제1 소스 심벌 부블록들을 제2 소스 심벌 블록으로 하여 제2 FEC 부호화에 의해 생성되는 제2 패리티(복구) 심벌 블록을 포함하는 제2 부호화 심벌 블록을 생성한다. 상기의 제 1 FEC와 제 2 FEC는 동일한 오류 정정 코드를 사용하거나, 또는 서로 다른 오류 정정 코드를 사용할 수 있다. 사용될 수 있는 오류 정정 코드의 후보들로는 RS 코드, LDPC 코드, 터보 코드(Turbo Code), 랩터 코드(Raptor Code), XOR(eXclusive OR; 배타적 논리합)등 현재 알려진 코드 및 미래에 알려질 코드들이 사용될 수 있으며, 특정 코드로 제한되지는 않는다. 도 3에서 i번째 P1은 i번째 소스 심벌 블록을 위한 복구 심벌 블록이고, P2는 소스 심벌 블록을 위한 복구 심벌 블록(i=1, 2, …, M)이다.
계층 구조를 가진 미디어 데이터를 효율적으로 보호하기 위한 방법으로 LA-FEC을 사용할 수 있다. 상기 계층 구조를 가진 미디어의 예로 SVC(Scalable Video Coding) 또는 MVC(Multiview Video Coding)를 사용하여 부호화된 콘텐츠를 들 수 있다.
도 4는 미디어가 2개의 계층으로 구성되어 있을 경우에 LA-FEC를 적용하기 위한 소스 블록 구성방법을 도시한 도면이다. 상기 도 4에서 기본 계층(base layer)의 BR(base representation)은 미디어 코덱에서 독립적으로 복호 가능한 데이터이며 향상 계층(enhancement layer)의 ER(Enhancement representation)은 BR에 종속되는 데이터이다. 상기 도 4에서 ER1을 위한 패리티를 생성할 때 BR을 함께 사용하는 점에 유의한다.
도 5는 본 발명의 일 실시 예에 따르는 소스 패킷 블록으로부터 소스 심벌 블록을 생성하는 방법에 대한 실시 예를 나타낸 도면이다.
소스 심벌 블록 생성부(도시하지 않음)는 소스 패킷 블록으로부터 주어진 symbol element의 개수 m값과 소스 심벌 크기 T, 소스 심벌 개수 K에 따라, T x K array로 구성된 소스 심벌 블록을 생성하는데, 소스 심벌 크기 T와 T당 symbol elements의 개수 m을 FEC configuration information으로부터 취득한다. 도 5는 T=32 bytes, m=2인 경우의 예를 도시하였다. 소스 심벌 블록 생성부는 가변 패킷 사이즈를 가지는 5개의 소스 패킷들, 즉 MMT packet #0 내지 MMT packet #4을 입력 받는다. 소스 패킷들은 소스 심벌 블록의 첫 번째 열부터 순차적으로 symbol element 단위로 채워지고 필요시 symbol element의 나머지 부분은 00h와 같은 미리 정해진 값을 가지는 padding data로 채워진다. 즉, 소스 패킷은 항상 symbol element의 처음부터 시작해서 채워진다. 만일 해당 소스 패킷이 symbol element를 완전히 채우지 못하는 경우 상기 symbol element의 나머지 부분은 00h로 채워지고 다음 소스 패킷은 바로 다음 symbol element의 처음부터 다시 시작해서 채워진다. 도 5에서와 같이 소스 패킷의 데이터가 부족하여 SS#7의 두 번째 symbol element(510), 즉 마지막 symbol element를 채울 수 없는 경우에는 마지막 symbol element가 padding symbol element로 채워진다.
복수의 소스 심벌 블록 구성 방식을 사용할 경우에는 해당 소스 심벌 블록이 어떤 방식을 사용하여 구성되었는지를 나타내는 ssbg_mode 등의 식별자를 수신기에 전달하여야 한다.
상기 2단계 방식을 운용할 경우에 소스 심벌 블록 구성 과정은 다음과 같다. 소스 패킷 블록이 M개의 소스 패킷 부블록으로 구성된다고 가정하자. 상기 소스 패킷 부블록 중에서 첫 번째 소스 패킷 부블록에 속한 소스 패킷들을 사용하여 도 5에 도시한 방법과 같이 주어진 m값에 따라 T x K1 array로 구성되는 첫 번째 소스 심벌 부블록을 생성하고 이를 FEC 부호화부(도시하지 않음)에 전달한다. 상기 FEC 부호화부는 상기 소스 심벌 부블록을 사용하여 패리티 심벌 블록을 생성한다. 이 후 2번째부터 소스 심벌 부블록부터는 M번째 소스 심벌 부블록을 사용하여 동일한 과정을 순차적으로 반복한다. 모든 소스 심벌 부블록에 대한 패리티 심벌 블록을 생성한 이후에, 상기 첫 번째 소스 심벌 부블록부터 상기 M번째 소스 심벌 부블록까지 모든 소스 심벌 부블록을 결합하여 소스 심벌 블록을 구성하고 이를 FEC 부호화부에 전달한다. 상기 FEC 부호화부는 상기 소스 심벌 블록을 사용하여 패리티 심벌 블록을 생성한다.
상기 LA-FEC 방식을 운용할 경우에 소스 심벌 블록 구성 과정은 다음과 같다. 미디어가 M개의 계층을 가지며 i번 째 계층은 1,2,…, (i -1) 번째 계층에 종속되어 있다고 가정하자. 이 때 소스 패킷 블록은 M개의 소스 패킷 부블록(1 ~ Mth Source packet Block)으로 구성되며, i번 째 소스 패킷 부블록은 i번째 계층의 데이터에 해당된다. 상기 소스 패킷 부블록 중에서 첫 번째 소스 패킷 부블록에 속한 소스 패킷들을 사용하여 첫 번째 소스 심벌 부블록을 생성하고 이를 FEC 부호화부에 전달한다. 상기 FEC 부호화부는 상기 소스 심벌 부블록을 사용하여 패리티 심벌 블록을 생성하고 이를 FEC 블록 생성부에 전달한다. 이 후 첫 번째 소스 심벌 부블록과 2번 째 소스 심벌 부블록을 결합하여 소스 심벌 블록을 구성하고 이를 FEC 부호화부에 전달한다. 상기 FEC 부호화부는 상기 소스 심벌 블록을 사용하여 패리티 심벌 블록을 생성하고 이를 FEC 블록 생성부에 전달한다. 동일한 과정을 순차적으로 반복하면 마지막으로 상기 첫 번째 소스 심벌 부블록부터 상기 M번째 소스 심벌 부블록까지 모든 소스 심벌 부블록을 결합하여 소스 심벌 블록을 구성하고 이를 FEC 부호화부에 전달한다. 상기 FEC 부호화부는 상기 소스 심벌 블록을 사용하여 패리티 심벌 블록을 생성하고 이를 FEC 블록 생성부에 전달한다. 상기 과정을 수행한 이후에 상기 M개의 소스 심벌 부블록으로부터 생성된 모든 패리티 심벌 블록과 상기 소스 심벌 블록으로부터 생성된 패리티 심벌 블록을 함께 FEC 패킷 생성부로 전달한다.
도 6은 본 발명의 일 실시 예에 따르는 MMT 패킷 스트림으로부터 소스 패킷 블록들을 구성하고 소스 심벌 블록들을 생성하는 과정을 나타낸 실시 예이다.
도 6을 참조하면, Asset(610)은 MPU들로 구성되어 있고, 각각의 MPU는 MMT packet들(620)로 패킷화 된다.
패킷화 된 MMT packet들은 소정 개수의 MMT packet으로 구성된 소스 패킷 블록들(630)로 나누어지고, 나누어진 각각의 소스 패킷 블록은 소스 심벌 블록(640)으로 전환된다. 도 6에는 m=2인 경우가 도시되어 있다. 소스 패킷 블록으로부터 소스 심벌 블록을 전환할 시 소스 패킷 블록내의 각각의 소스 패킷은 symbol element 단위로 소스 심벌 블록에 채워지는데, symbol element를 다 채우지 못할 경우 00h와 같이 미리 정해진 값을 가지는 padding data로 채우고 다음 소스 패킷은 다음 symbol element의 시작 위치부터 채운다. 이렇게 하여 상기 소스 패킷 블록의 마지막 소스 패킷까지 동일한 방식으로 진행하는데, 만일 마지막 소스 패킷이 소스 심벌 블록의 마지막 소스 심벌을 다 채우지 못할 경우 나머지 부분은 00h와 같이 미리 정해진 값을 가지는 padding data로 채운다. 이 경우 마지막 부분에 padding된 data의 크기가 T/m보다 크다면 padding symbol element가 발생하게 되는데, 본 발명에서 symbol element 단위로 padding된 data를 padding symbol element라 부른다.
도 7은 본 발명의 일 실시 예에 따르는 FEC 소스 패킷 블록들 상에 SS_ID를 설정하는 방법에 대한 실시 예를 나타낸 도면이다. 도 7을 참조하면 도 6에서와 같이 소스 패킷 블록들로부터 m=2를 가지는 본 발명의 실시예에 따른 소스 심벌 블록 생성 방법에 의해 소스 심벌 블록들이 생성되어 있다. 각각의 소스 심벌 블록들 K1개의 symbol element들과 K2개의 symbol elements로 구성되는데, 첫 번째 소스 심벌 블록의 마지막 symbol element(K1-1)는 padding symbol element이다. 각각의 소스 심벌 블록들의 symbol element들의 블록내의 순서를 0 ~ (K1-1), 0 ~ (K2-1) 까지 각각 명기하였다. 이를 FEC 소스 패킷의 source FEC payload ID에 SS_ID로 설정시 그 random 값으로 j라는 값을 부가하였고 각각의 FEC 소스 패킷에 포함되는 symbol element의 개수만큼 증가 시켜 다음 FEC 소스 패킷의 SS_ID를 설정하였다. 단, 첫 번째 FEC 소스 패킷 블록의 마지막 FEC 소스 패킷의 SS_ID = j+K1-2로 설정되어 있고 하나의 symbol element를 포함하고 있지만 해당 소스 심벌 블록의 마지막 symbol element가 padding symbol element이므로 두 번째 FEC 소스 패킷 블록의 첫 번째 FEC 소스 패킷의 SS_ID는 j+K1-1이 아닌 본 발명의 실시예에 따른 padding symbol element를 감안한 j+K1의 값으로 설정하였다.
도 8은 본 발명의 일 실시 예에 따르는 Repair FEC payload ID를 설정하는 방법에 대한 실시 예를 나타낸 도면이다. 도 8에 따르면 도 6 및 도 7과 동일한 형태로 소스 심벌 블록들이 생성되어 있다. 상기 생성된 두 개의 소스 심벌 블록으로부터 FEC 1 code에 의해 3개의 패리티 심벌들로 구성된 두 개의 패리티 심벌 블록들을 각각 생성하고 상기 두 개의 소스 심벌 블록을 하나의 결합된 소스 심벌 블록으로 하여 FEC 2 code에 의해 3개의 패리티 심벌들로 구성된 패리티 심벌 블록을 생성하였다. 도 6 및 도 7에서와 같이 각각의 소스 패킷 블록에 해당하는 소스 패킷들 각각에 source FEC payload ID로서 SS_ID를 도 7과 같이 부여하여 FEC 소스 패킷으로 전송하고 FEC 부호화에 의해 생성된 패리티 심벌 블록들은 각각의 패리티 심벌에 repair FEC payload ID와 MMT 페이로드 헤더 및 MMT 패킷 헤더를 추가하여 FEC 패리티 패킷으로 전환하여 전송됨을 나타낸다. 상기 repair FEC payload ID는 SS_Start, RSB_length, RS_ID, SSB_length Field들로 구성되면 각 Field들에 대한 설명은 하기의 [표 2]에 대한 설명을 참조한다. 각각의 FEC 패리티(복구) 패킷 내에서의 필드들의 값은 도 8에서와 같이 설정되는데 첫 번째 소스 심벌 블록을 위한 패리티 심벌 블록들을 위한 3개의 FEC 패리티 패킷들의 repair FEC payload ID들은 각각 다음과 같다.
SS_Start는 첫 번째 FEC 소스 패킷 블록의 첫 번째 FEC 소스 패킷의 SS_ID인 j 값으로 모든 FEC 패리티 패킷에 설정하여 해당 FEC 소스 패킷 블록의 시작 패킷이 어떤 패킷인지를 나타내고, RSB_length는 해당 패리티 심벌 블록이 3개의 패리티 심벌들로 구성되어 있음을 나타내기 위해 모든 FEC 패리티 패킷에 3으로 설정하고, SSB_length은 해당 소스 심벌 블록의 padding symbol element를 제외한 symbol element들의 개수가 K1-1개임을 나타내기 위해 K1-1로 설정하고, RS_ID는 각각의 FEC 패리티에 0, 1, 2로 설정하여 패리티 심벌을 식별하게 한다.
두 번째 소스 심벌 블록을 위한 패리티 심벌 블록들을 위한 3개의 FEC 패리티 패킷들의 repair FEC payload ID도 동일한 방법으로 하여 그 값들이 설정되는데, SS_Start는 j+K1으로, RSB_length는 3으로, SSB_length는 K2로, RS_ID는 각각 0, 1, 2로 설정한다.
첫 번째 소스 심벌 블록과 두 번째 소스 심벌 블록을 결합한 소스 심벌 블록을 위한 패리티 심벌 블록들을 위한 3개의 FEC 패리티 패킷들의 repair FEC payload ID도 앞서 설명한 것과 동일한 방법으로 하여 그 값들이 설정되는데, SS_Start는 결합된 FEC 소스 패킷 블록의 첫 번째 FEC 소스 패킷의 SS_ID인 j 값으로 모든 FEC 패리티 패킷에 설정하여 해당 FEC 소스 패킷 블록의 시작 패킷이 어떤 패킷인지를 나타내고, RSB_length는 해당 패리티 심벌 블록이 3개의 패리티 심벌들로 구성되어 있음을 나타내기 위해 모든 FEC 패리티 패킷에 3으로 설정하고, SSB_length은 해당 결합된 소스 심벌 블록의 마지막 소스 심벌에 padding된 padding symbol element를 제외한 symbol element들의 개수가 K1+K2개임을 나타내기 위해 K1+K2로 설정하고, RS_ID는 각각의 FEC 패리티에 0, 1, 2로 설정하여 패리티 심벌을 식별하게 한다.
이렇게 설정함으로써 수신 장치에서는 수신된 FEC 패리티 패킷으로부터 FEC 소스 패킷 블록의 경계와 해당 소스 심벌 블록의 크기를 알 수 있다, SS_Start에 의해 시작 FEC source packet을 알고 또한 SSB_length 정보로부터 소스 심벌 블록에 포함된 소스 심벌의 개수를 알수 있으므로 수신된 FEC 소스 패킷의 SS_ID로부터 수신된 패킷이 해당 FEC 소스 패킷 블록에 포함되는지를 알 수 있다. 즉, SS_Start가 j이고 SSB_length가 K1-1인 경우, 수신된 FEC 소스 패킷의 SS_ID가 j이면 시작 FEC 소스 패킷이고, j+K1 보다 작으면 수신된 패킷이 해당 FEC 소스 패킷 블록에 포함되는 패킷임을 알 수 있다. 또한 밴드 외 신호(out-band signaling)로부터 미리 수신한 T값과 m값을 바탕으로 SSB_length 값으로부터 소스 심벌 블록이 T크기를 가지는 소스 심벌들이 [(K1-1)/m]개로 구성됨을 알 수 있으므로 해당 FEC 소스 패킷 블록에 속하는 수신된 FEC 소스 패킷들의 SS_ID에서 SS_Start값을 빼면 상기 수신된 FEC 소스 패킷이 소스 심벌 블록의 어떤 symbol element부터 시작하는지를 알게 되므로 소스 심벌 블록을 재구성할 수 있다. 여기서 임의의 실수 A에 대해 [A]는 A 보다 작거나 같은 최대 정수를 의미한다. 또한 SSB_length에 설정된 K1-1값으로부터 K1-1이 m의 배수가 아니면 S = K1-1 (mod m) 개수만큼의 padding symbol element가 padding되어 있음을 알 수 있다. 여기서 S는 K1-1을 m으로 나눈 나머지이다.
한편, 상기 도 2에서 FEC code(240)는 상기 소스 심벌 블록을 입력으로 정해진 FEC 부호화 알고리즘을 사용하여 패리티 심벌을 계산하고 상기 패리티 심벌로 구성된 패리티 심벌 블록의 형태로 출력한다. 특정한 구현에 있어서 FEC 부호화 알고리즘은 고정된 개수의 소스 심벌을 입력으로 고정된 개수의 패리티 심벌의 값을 계산한다. 이 경우에 상기 FEC code는 부가적인 제어정보를 요구하지 않는다. 또 다른 구현에 있어서 FEC 부호화 알고리즘이 소스 심벌의 수와 패리티 심벌의 수 및 소스 심벌과 패리티 심벌의 관계에 대한 FEC 부호화 정보를 요구할 수 있다. 상기 FEC 부호화 정보는 FEC 전송 정보의 일부로 MMT FEC Scheme(230) 내의 FEC 블록 생성부(도시하지 않음)에서 상기 FEC code로 전달될 수도 있지만, 앞서 언급한 바와 같이 전체 시스템의 관점에서 다른 MMT FEC FRAME의 모든 구성 블록들은 상기 FEC 전송정보를 인지하고 부호화 동작에 활용할 수 있음은 자명하다.
도 9a 및 도 9b는 본 발명의 일 실시예에 따른 FEC 패킷의 구조를 도시한 도면이다.
도 9a는 FEC 소스 패킷을 나타내는 것으로, D2 header(910)는 MMT packet header를, D1 header(911)는 MMT payload header를 D1 Payload(912)는 payload data를, FEC in-band signals(913)은 Source FEC payload ID를 나타낸다.
도 9b는 FEC 패리티(복구) 패킷을 나타내는 것으로, D2 header(920)는 MMT packet header를, D1 header(921)는 MMT payload header를, FEC in-band signals(923)은 Repair FEC Payload ID를, D2 Payload(parity payload[s])(922)는 하나 또는 그 이상의 패리티 심벌들을 나타낸다.
앞서 기술한 바와 같이 MMT packet은 FEC 부호화 이후 source FEC payload ID를 부가하여 도 9a와 같은 구조를 가지는 MMT packet들로 구성된 소스 패킷 블록으로부터 본 발명의 실시예에 따른 일련의 과정을 거쳐 생성된 패리티(복구) 심벌들은 repair FEC payload ID, MMT payload header, MMT packet header를 부가하여 도 9b와 같은 구조를 가진다. 상기 도 9a는 프로토콜 패킷(MMT 패킷) 구조의 일관성을 유지하고 FEC 패킷 내에서 소스 패킷이 연속적으로 위치하도록 하기 위하여 FEC 밴드 내 신호 (FEC in-band signals,913)의 위치를 FEC 소스 패킷의 마지막 부분으로 설정하였다. FEC 패리티 패킷은 하나 혹은 그 이상의 패리티 심벌들을 전달한다. 상기 패리티 심벌들은 소스 패킷으로 구성된 소스 심벌 블록의 복원에 사용된다. 상기 도 9b는 수신단에서 FEC 관련 정보를 빠르고 쉽게 획득하게 하기 위하여 FEC 밴드 내 신호 (FEC in-band signals,923)의 위치를 전송 프로토콜 헤더와 패리티 심벌의 사이에 위치하도록 설정하였다.
상기 도 2에서 MMT Protocol(220) 내의 FEC 패킷 생성부(도시하지 않음)는 소스 패킷 혹은 패리티 심벌과 소스 오류 정정 페이로드 식별자 혹은 패리티 오류 정정 페이로드 식별자와 밴드 내 신호(in-band signals)로 구성된 FEC 패킷을 생성하고 이를 FEC 패킷 블록의 형태로 출력한다. 상기 도 2에서 소스 혹은 패리티 페이로드 식별자를 밴드 내 신호로 간주하여도 무방하다.
MMT 시스템에서 소스 패킷은 MMT 패킷(MMT packet)이다. 상기 MMT packet은 MMT packet header와 MMT payload로 구성되며, MMT payload는 MMT payload header와 payload data로 구성된다. 도 2의 MMT FEC Scheme(230)에 의해 입력된 패리티(복구) 심벌들은 패리티(복구) 오류 정정 페이로드 식별자(repair FEC payload ID)와 함께 payload data로 간주되어 MMT payload header와 MMT packet header를 부가하여 오류 정정 패리티 패킷 형태로 전송된다.
본 발명의 실시 예에 의한 소스 페이로드 식별자와 패리티 페이로드 식별자는 각각 [표 1] 및 [표 2]와 같다.
SS_ID
SS_Start
SS_Start
RSB_length
RS_ID
SSB_length
상기 [표 1]과 [표 2]에서 각 필드의 의미는 다음과 같다.
- SS_ID (Source Symbol ID): FEC 소스 패킷에 포함된 소스 심벌들을 식별하기 위한 시퀀스 번호이다. SS_ID는 매 Symbol element 마다 1씩 증가한다. 이는 padding symbol element에도 동일하게 적용되는데 FEC 소스 패킷에 포함된 첫 번째 symbol element의 SS_ID가 설정된다. 현재 패킷과 다음 패킷의 SS_ID의 차이는 현재 패킷에 포함된 symbol element의 개수와 같은데 예외적으로 현재 FEC 소스 패킷 블록의 마지막 FEC 소스 패킷과 다음 FEC 소스 패킷 블록의 첫 번째 FEC 소스 패킷의 SS_ID 차이는 현재 FEC 소스 패킷 블록의 소스 심벌 블록에 padding symbol element가 있는 경우 이를 더한 값이다. 상기 일련 번호의 초기 값은 랜덤하게 생성된 임의의 값으로 설정할 수 있으며 4 바이트 혹은 그 이상의 정해진 길이의 바이트로 표현할 수 있는 정수의 최대값에 도달한 이후에는 0으로 회귀한다.
- SS_Start: FEC 소스 패킷에서 이 필드는 선택적으로 사용할 수 있다. FEC 소스 패킷에 상기 필드가 포함될 경우에 상기 필드는 상기 패킷이 속한 소스 패킷 블록의 첫 번째 소스 패킷의 SS_ID와 동일한 값을 가지며 이는 상기 소스 패킷이 속한 소스 심벌 블록의 경계 정보에 해당한다. FEC 패리티 패킷에서 이 정보는 해당 패킷을 포함하는 FEC 패리티 패킷 블록과 관계된 FEC 소스 패킷 블록의 첫 번째 FEC 소스 패킷에 설정되어 있는 SS_ID가 설정된다. 이 정보로부터 수신 장치는 수신된 FEC 패킷으패부터 FEC 소스 패킷 블록의 경계 특히 시작 위치를 알 수 있다.
- RSB_length: FEC 패리티 패킷에 포함된 패리티 심벌(들)이 속한 패리티 블록을 구성하는 패리티 심벌들의 개수를 나타낸다. 즉, 다시 말해서 K개의 소스 심벌로 구성된 소스 심벌 블록으로부터 FEC code에 의해 P개의 패리티(복구) 심벌이 생성되는 경우 이 필드의 값은 P로 설정된다.
- RS_ID: FEC 패리티 패킷에 포함된 패리티 심벌들을 식별하기 위한 일련 번호를 의미한다. 각각의 패리티 심벌 블록 내에서 상기 필드는 0부터 시작되어 1씩 증가하는 값이며, 하나의 FEC 패리티 패킷이 복수의 패리티 심벌들을 포함할 경우에는 상기 복수개의 패리티 심벌들의 일련 번호 중 최소값을 표시한다.
- SSB_length: FEC 패리티 패킷에 속한 패리티 심벌(들)이 보호하는 소스 심벌 (부)블록에 포함된 symbol element들의 개수가 설정된다. 상기 개수는 소스 심벌 블록의 마지막 소스 심벌에 포함된 padding symbol element들은 포함되지 않는다. 즉, 소스 심벌 블록내의 소스 심벌들의 수가 K라 하고 상기 소스 심벌 블록의 마지막 소스 심벌에 padding된 padding symbol element들의 개수를 p라 하면 이 필드의 값은 (K*m -p)로 설정된다.
본 발명의 실시 예에서 수신기의 FEC 복호 과정은 다음과 같다. 수신기는 송신기가 밴드 외 신호로 전송한 소스 흐름 별 FEC 흐름 식별자와 그에 따른 FEC 보호 여부, FEC 유형, FEC 코딩 구조, 소스 심벌 크기 T (즉, 패리티 심벌 크기), 소스 심벌 내 symbol element들의 개수 m, 소스 심벌 블록 생성 방법 (ssbg_mode) 등을 파악하고 FEC 복호화를 위해 사전에 준비한다. 수신기는 이후 수신된 FEC 패킷들로부터 동일한 FEC 흐름 식별자를 가지는 FEC 패킷들을 분류한다. 수신기는 상기 FEC 흐름 식별자별로 분류된 FEC 패킷 내의 FEC 유형 정보를 사용하여 해당 FEC 패킷이 FEC 소스 패킷인지 FEC 패리티 패킷인지를 구분한다. 2단계 FEC 코딩이 적용된 경우 필요 시 수신기는 FEC 패리티 패킷이 패리티1인지 패리티2인지를 추가적으로 구분한다. 수신기는 해당 FEC 패킷이 FEC 소스 패킷이면 소스 FEC 페이로드 ID로 부터 SS_ID를 인식하고 FEC 패리티 패킷이면 패리티 FEC 페이로드 ID로 부터 SS_Start, RSB_length, RS_ID, SSB_length 등을 인식한다. 수신기는 인식된 FEC 페이로드 ID 및 사전에 인식된 소스 심벌 크기 T와 소스 심벌내 symbol element의 개수 m, ssbg_mode에 따라 FEC 패킷의 페이로드(소스 심벌 또는 패리티 심벌)들을 해당하는 소스 심벌 블록 또는 패리티 심벌 블록 중의 적절한 위치에 배치하여 부호화 심벌 블록(encoding symbol block)을 생성한다. 수신기는 생성된 부호화 심벌 블록에 적용된 FEC 코드를 사용하여 복호화를 수행하여 전송 도중 손실된 소스 패킷에 해당하는 소스 심벌들을 복원한다. 수신기는 복원된 소스 심벌들로부터 패딩 데이터(Padding data)가 추가되어 있으면 패딩 데이터를 제거하여 최종적으로 소스 패킷들을 복원한다.
본 발명의 일 실시 예에 따르면 FEC 구성 관련 정보나 기타의 부호화 구성 관련 정보를 시그널링(Signaling)하여 수신기에게 전송함으로써 전송기는 선택적으로 FEC를 적용한 컨텐츠를 전송할 수 있다. 또한 본 발명의 일 실시 예에 따르면, 네트워크 상황이나 컨텐츠의 QoS(Quality of Service)에 따라 선택적으로 FEC를 적용할 수 있다. 또한 본 발명의 일 실시 예에 다르면, FEC 구성 관련 정보나 기타의 부호화 구성 관련 정보를 포함하는 FEC 제어 정보의 전부 또는 그 일부를 주기적으로 반복 전송하거나 또는 본 발명의 밴드 내 시그널링 방법에 의해 FEC 구성 관련 정보의 전부 또는 그 일부를 전송함으로써 이미 서비스가 진행 중인 상황에서 새로운 수신기에게도 FEC 구성 관련 정보를 알게 할 수 있어 새로이 등장한 수신기도 FEC 복호화를 수행하여 손실된 데이터를 복구함으로써 사용자에게 보다 양질의 서비스를 제공할 수 있다.
한편 본 발명의 상세한 설명에서는 구체적인 실시 예에 관해 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 발명의 범위는 설명된 실시 예에 국한되어 정해져서는 안되며 후술하는 특허청구의 범위뿐 아니라 이 특허청구의 범위와 균등한 것들에 의해서 정해져야 한다.
이 때, 처리 흐름도 도면들의 각 블록과 흐름도 도면들의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수 있음을 이해할 수 있을 것이다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 흐름도 블록(들)에서 설명된 기능들을 수행하는 수단을 생성하게 된다. 이들 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 흐름도 블록(들)에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 흐름도 블록(들)에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다.
또한, 각 블록은 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 실행 예들에서는 블록들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.
이 때, 본 실시 예에서 사용되는 '~부'라는 용어는 소프트웨어 또는 FPGA또는 ASIC과 같은 하드웨어 구성요소를 의미하며, '~부'는 어떤 역할들을 수행한다. 그렇지만 '~부'는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '~부'는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 '~부'는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들, 및 변수들을 포함한다. 구성요소들과 '~부'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '~부'들로 결합되거나 추가적인 구성요소들과 '~부'들로 더 분리될 수 있다. 뿐만 아니라, 구성요소들 및 '~부'들은 디바이스 또는 보안 멀티미디어카드 내의 하나 또는 그 이상의 CPU들을 재생시키도록 구현될 수도 있다.
본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시 예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구의 범위에 의하여 나타내어지며, 특허청구의 범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
한편, 본 명세서와 도면에는 본 발명의 바람직한 실시 예에 대하여 개시하였으며, 비록 특정 용어들이 사용되었으나, 이는 단지 본 발명의 기술 내용을 쉽게 설명하고 발명의 이해를 돕기 위한 일반적인 의미에서 사용된 것이지, 본 발명의 범위를 한정하고자 하는 것은 아니다. 여기에 개시된 실시 예 외에도 본 발명의 기술적 사상에 바탕을 둔 다른 변형 예들이 실시 가능하다는 것은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 자명한 것이다.

Claims (10)

  1. 멀티미디어 서비스를 지원하는 시스템에서 패킷을 송신하는 방법에 있어서,
    소스 패킷들을 포함하는 소스 패킷 블록을 복수 개의 소스 패킷 부블록들로 분할하는 과정과,
    상기 복수의 소스 패킷 부블록을 복수의 소스 심벌 부블록으로 각각 변환하는 과정과,상기 소스 패킷 부블록들 각각을 제1 오류 정정 부호로 부호화하여 복수의 인코딩된 소스 심벌 부블록과 복수 개의 제1 리페어 심벌 블록들을 생성하는 과정과,
    상기 복수의 인코딩된 소스 심벌 부블록과 상기 복수의 제1 리페어 심벌 블록들을 송신하는 과정을 포함하며, 상기 복수의 인코딩된 소스 심벌 부블록 각각은 적어도 하나의 오류 정정 소스 패킷을 포함하고, 상기 오류 정정 소스 패킷은 소스 페이로드 식별자를 포함하고,
    상기 복수의 제1 리페어 심벌 블록 각각은 적어도 하나의 오류 정정 리페어 패킷을 포함하고, 상기 오류 정정 리페어 패킷은 리페어 페이로드 식별자를 포함하고,
    상기 소스 페이로드 식별자는 상기 오류 정정 소스 패킷에 포함된 소스 심벌들을 식별하는 시퀀스 넘버를 나타내는 소스 심벌 아이디를 포함하고,
    상기 리페어 페이로드 식별자는 소스 심벌 블록에 포함된 소스 심벌들의 개수를 나타내는 소스 심벌 블록 길이를 포함하며,
    각 소스 심벌은 적어도 하나의 심벌 엘리먼트로 구성되고,
    상기 소스 심벌은 패딩 바이트를 포함하고,
    상기 소스 심벌 블록은 마지막 심벌 엘리먼트가 패딩 바이트로만 구성된 패딩 심벌 엘리먼트를 포함하며, 상기 패딩 심벌 엘리먼트의 소스 심벌 아이디는 상기 오류 정정 소스 패킷의 첫 번째 심벌 엘리먼트의 소스 심벌 아이디로 설정되는 패킷 송신 방법.
  2. 제1항에 있어서,
    상기 복수의 소스 심벌 부블록을 제2 오류 정정 부호로 부호화하여 하나의 제2 리페어 심벌 블록을 생성하는 과정을 더 포함하는 패킷 송신 방법.
  3. 제1항에 있어서,
    상기 각 소스 심벌을 구성하는 심벌 엘리먼트의 개수는 동일하고,
    상기 소스 심벌 아이디는 매 심벌 엘리먼트마다 1씩 증가하는 방법.
  4. 삭제
  5. 제1항에 있어서,
    상기 소스 심벌 블록 길이는 소스 심벌 블록에 포함된 심벌 엘리먼트의 개수를 나타내는 방법.
  6. 제1항에 있어서,
    상기 소스 심벌 블록 길이는 상기 패딩 심벌 엘리먼트를 제외한 소스 심벌 블록에 포함된 심벌 엘리먼트의 개수를 나타내는 방법.
  7. 제1항에 있어서,
    상기 리페어 페이로드 식별자는 상기 소스 심벌 블록의 경계를 나타내는 소스 심벌 시작 위치를 더 포함하며,
    상기 소스 심벌 시작 위치는 관련 소스 심벌 블록의 첫 번째 심벌 엘리먼트의 소스 심벌 아이디로 설정되는 방법.
  8. 제1항에 있어서,
    상기 리페어 페이로드 식별자는,
    상기 소스 심벌 블록의 경계를 나타내는 소스 심벌 시작 위치와, 관련 오류 정정 리페어 심벌 블록에서 생성된 리페어 심벌의 개수를 나타내는 리페어 심벌 블록 길이와, 상기 오류 정정 리페어 패킷에 포함된 첫 번째 리페어 심벌을 식별하는 리페어 심벌 식별자를 더 포함하는 방법.
  9. 제1항에 있어서,
    상기 소스 페이로드 식별자는 상기 오류 정정 소스 패킷의 끝부분에 삽입되고,
    상기 리페어 페이로드 식별자는 상기 오류 정정 리페어 패킷의 리페어 심벌 앞 부분에 삽입되는 방법.
  10. 제1항에 있어서,
    상기 오류 정정 패킷을 송신하기 이전에, 소스 심벌 블록을 구성하는 방식을 나타내는 소스 심벌 블록 생성 모드와, 상기 소스 심벌 블록 생성 모드에 따른 소스 심벌별 심벌 엘리먼트의 개수를 포함하는 오류 정정 설정 정보를 송신하는 과정을 더 포함하는 방법.
KR1020130042045A 2013-04-17 2013-04-17 순방향 오류 정정 패킷 송수신 장치 및 방법 KR102127685B1 (ko)

Priority Applications (11)

Application Number Priority Date Filing Date Title
KR1020130042045A KR102127685B1 (ko) 2013-04-17 2013-04-17 순방향 오류 정정 패킷 송수신 장치 및 방법
RU2015148959A RU2646346C2 (ru) 2013-04-17 2014-04-17 Устройство и способ передачи и приема пакета с прямой коррекцией ошибок
CA2909801A CA2909801C (en) 2013-04-17 2014-04-17 Apparatus and method for transmitting and receiving forward error correction packet
EP14785047.3A EP2987329B1 (en) 2013-04-17 2014-04-17 Method for transmitting forward error correction packet
CN201480034288.2A CN105340205B (zh) 2013-04-17 2014-04-17 用于传输和接收前向纠错分组的装置和方法
PCT/KR2014/003362 WO2014171763A1 (en) 2013-04-17 2014-04-17 Apparatus and method for transmitting and receiving forward error correction packet
JP2016508872A JP6371830B2 (ja) 2013-04-17 2014-04-17 前方誤り訂正パケット送信方法
CN201811339060.0A CN109245863B (zh) 2013-04-17 2014-04-17 用于传输和接收前向纠错分组的装置和方法
MX2015014696A MX348415B (es) 2013-04-17 2014-04-17 Aparato y metodo para la transmision y recepcion de paquete de correccion directa de errores.
US14/255,215 US9407397B2 (en) 2013-04-17 2014-04-17 Apparatus and method for transmitting and receiving forward error correction packet
US15/225,132 US9667384B2 (en) 2013-04-17 2016-08-01 Apparatus and method for transmitting and receiving forward error correction packet

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130042045A KR102127685B1 (ko) 2013-04-17 2013-04-17 순방향 오류 정정 패킷 송수신 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20140124971A KR20140124971A (ko) 2014-10-28
KR102127685B1 true KR102127685B1 (ko) 2020-06-29

Family

ID=51729989

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130042045A KR102127685B1 (ko) 2013-04-17 2013-04-17 순방향 오류 정정 패킷 송수신 장치 및 방법

Country Status (9)

Country Link
US (2) US9407397B2 (ko)
EP (1) EP2987329B1 (ko)
JP (1) JP6371830B2 (ko)
KR (1) KR102127685B1 (ko)
CN (2) CN109245863B (ko)
CA (1) CA2909801C (ko)
MX (1) MX348415B (ko)
RU (1) RU2646346C2 (ko)
WO (1) WO2014171763A1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9807452B2 (en) * 2013-10-07 2017-10-31 Samsung Electronics Co., Ltd. Practical delivery of high quality video using dynamic adaptive hypertext transport protocol (HTTP) streaming (DASH) without using HTTP in a broadcast network
KR102464803B1 (ko) * 2017-10-13 2022-11-09 삼성전자주식회사 응용 계층 순방향 오류 정정 방식을 사용하는 멀티미디어 서비스 제공 방법 및 장치
KR102506507B1 (ko) * 2018-01-19 2023-03-07 삼성전자주식회사 통신 시스템에서 신호를 송/수신하는 장치 및 방법
KR20210019848A (ko) * 2019-08-13 2021-02-23 삼성전자주식회사 송신 장치 및 그의 제어 방법

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013129842A1 (en) 2012-02-27 2013-09-06 Samsung Electronics Co., Ltd. Packet transmission/reception apparatus and method using forward error correction scheme
WO2014169233A2 (en) 2013-04-12 2014-10-16 Qualcomm Incorporated Methods for delivery of flows of objects over broadcast/multicast enabled networks

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100833222B1 (ko) * 2000-03-29 2008-05-28 삼성전자주식회사 멀티미디어 송수신 장치 및 방법
KR100754633B1 (ko) * 2000-12-27 2007-09-05 삼성전자주식회사 이동통신 시스템에서 패킷 데이터 서비스를 위한 송수신장치 및 방법
KR100441604B1 (ko) * 2002-03-19 2004-07-23 삼성전자주식회사 멀티미디어 스트리밍 서비스를 위한 패킷 전송장치 및 그방법
EP1803245A1 (en) * 2004-10-07 2007-07-04 Nokia Corporation Efficient source blocking algorithm for fec for mbms streaming
WO2007028137A2 (en) 2005-09-01 2007-03-08 Nokia Corporation Method for embedding svg content into an iso base media file format for progressive downloading and streaming of rich media content
ES2383230T3 (es) * 2006-01-05 2012-06-19 Telefonaktiebolaget Lm Ericsson (Publ) Gestión de archivos contenedores de medios
US8065582B2 (en) * 2006-02-13 2011-11-22 Digital Fountain, Inc. FEC streaming with aggregation of concurrent streams for FEC computation
CN101686107B (zh) * 2006-02-13 2014-08-13 数字方敦股份有限公司 使用可变fec开销和保护周期的流送和缓冲
CN101563874B (zh) * 2006-12-21 2012-05-23 汤姆森许可贸易公司 支持对因特网协议网络上的音频以及视频数据进行前向纠错的方法
CN101800632A (zh) * 2009-02-09 2010-08-11 中兴通讯股份有限公司 用户数据报协议传输模式下丢包补偿方法与装置
US9281847B2 (en) * 2009-02-27 2016-03-08 Qualcomm Incorporated Mobile reception of digital video broadcasting—terrestrial services
US9288010B2 (en) * 2009-08-19 2016-03-15 Qualcomm Incorporated Universal file delivery methods for providing unequal error protection and bundled file delivery services
US9136981B2 (en) * 2010-03-03 2015-09-15 Qualcomm Incorporated Block aggregation of objects in a communication system
US8839078B2 (en) * 2010-03-05 2014-09-16 Samsung Electronics Co., Ltd. Application layer FEC framework for WiGig
CN102595252B (zh) * 2011-01-11 2016-09-28 中兴通讯股份有限公司 流媒体前向纠错实现方法及系统
KR20120137198A (ko) * 2011-06-11 2012-12-20 삼성전자주식회사 통신 시스템에서 패킷 송수신 장치 및 방법
KR20120138319A (ko) * 2011-06-14 2012-12-26 삼성전자주식회사 멀티미디어 데이터 특징 정보를 이용하여 멀티미디어 서비스 데이터 패킷을 송신하는 방법 및 장치
WO2013009048A1 (en) * 2011-07-08 2013-01-17 Samsung Electronics Co., Ltd. Method for generating forward error correction packet in multimedia system and method and apparatus for transmitting and receiving forward error correction packet
KR101119662B1 (ko) * 2011-08-17 2012-03-16 보라시스(주) 멀티미디어 서비스 품질측정 시스템 및 그 동작 방법
KR101812218B1 (ko) * 2013-01-18 2018-01-30 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. 데이터스트림들 중에서 동기화된 시작 심벌 식별자들을 갖는 적어도 두 개의 데이터스트림으로부터의 심벌들을 갖는 소스 블록들을 사용하는 순방향 오류 정정

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013129842A1 (en) 2012-02-27 2013-09-06 Samsung Electronics Co., Ltd. Packet transmission/reception apparatus and method using forward error correction scheme
WO2014169233A2 (en) 2013-04-12 2014-10-16 Qualcomm Incorporated Methods for delivery of flows of objects over broadcast/multicast enabled networks
US20140307734A1 (en) 2013-04-12 2014-10-16 Qualcomm Incorporated Methods for Delivery of Flows of Objects over Broadcast/Multicast Enabled Networks

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
M. WATSON et al. 'Forward Error Correction (FEC) Framework', Internet Engineering Task Force (IETF), RFC 6363, ISSN: 2070-1721, 2011, pp. 1-42.*

Also Published As

Publication number Publication date
WO2014171763A1 (en) 2014-10-23
CA2909801C (en) 2021-06-29
KR20140124971A (ko) 2014-10-28
CA2909801A1 (en) 2014-10-23
CN105340205B (zh) 2018-12-07
US20160352465A1 (en) 2016-12-01
US9667384B2 (en) 2017-05-30
CN105340205A (zh) 2016-02-17
CN109245863B (zh) 2021-08-31
MX2015014696A (es) 2016-02-19
EP2987329A4 (en) 2016-12-21
US9407397B2 (en) 2016-08-02
MX348415B (es) 2017-06-12
US20140317476A1 (en) 2014-10-23
JP6371830B2 (ja) 2018-08-08
RU2646346C2 (ru) 2018-03-02
RU2015148959A (ru) 2017-05-22
JP2016516381A (ja) 2016-06-02
EP2987329A1 (en) 2016-02-24
EP2987329B1 (en) 2019-10-02
CN109245863A (zh) 2019-01-18

Similar Documents

Publication Publication Date Title
JP6689511B2 (ja) 順方向エラー訂正スキームを使用するパケット送受信装置及び方法
KR102133930B1 (ko) 데이터 패킷 송수신 장치 및 방법
JP6553119B2 (ja) 放送及び通信システムにおけるパケット送受信装置及び方法
JP6486684B2 (ja) 移動通信システムにおける順方向誤り訂正パケットを送受信する装置及び方法
KR20130140938A (ko) 방송 및 통신 시스템에서 패킷 송수신 장치 및 방법
CN105009591A (zh) 使用有来自至少两个数据流的码元及数据流之间的同步化起始码元标识符的源块的前向纠错
KR102127685B1 (ko) 순방향 오류 정정 패킷 송수신 장치 및 방법
JP6511472B2 (ja) ブロードキャスティング及び/又は通信システムにおけるパケットの生成及び復元のための方法及び装置
US9705640B2 (en) Method and apparatus for decoding received packets in broadcasting and communication system
KR102163338B1 (ko) 방송 및 통신 시스템에서 패킷 송수신 장치 및 방법
US9473264B2 (en) Apparatus and method for transmitting/receiving packet in communication system
KR102093731B1 (ko) 오류 정정 부호를 사용하는 통신 시스템에서 패킷 송수신 기법

Legal Events

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