KR102048452B1 - 멀티미디어 시스템에서 순방향 오류 정정 패킷을 생성하는 방법과 그 오류 정정 패킷을 송수신하는 방법 및 장치 - Google Patents

멀티미디어 시스템에서 순방향 오류 정정 패킷을 생성하는 방법과 그 오류 정정 패킷을 송수신하는 방법 및 장치 Download PDF

Info

Publication number
KR102048452B1
KR102048452B1 KR1020120074676A KR20120074676A KR102048452B1 KR 102048452 B1 KR102048452 B1 KR 102048452B1 KR 1020120074676 A KR1020120074676 A KR 1020120074676A KR 20120074676 A KR20120074676 A KR 20120074676A KR 102048452 B1 KR102048452 B1 KR 102048452B1
Authority
KR
South Korea
Prior art keywords
packet
fec
block
repair
source
Prior art date
Application number
KR1020120074676A
Other languages
English (en)
Other versions
KR20130006380A (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 삼성전자주식회사
Publication of KR20130006380A publication Critical patent/KR20130006380A/ko
Application granted granted Critical
Publication of KR102048452B1 publication Critical patent/KR102048452B1/ko

Links

Images

Classifications

    • 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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • 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/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/373Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35 with erasure correction and erasure determination, e.g. for packet loss recovery or setting of erasures for the decoding of Reed-Solomon codes
    • 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/65Purpose and implementation aspects
    • H03M13/6522Intended application, e.g. transmission or communication standard
    • H03M13/6547TCP, UDP, IP and associated protocols, e.g. RTP
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • 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
    • 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
    • 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/0061Error detection codes
    • 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/0064Concatenated codes
    • H04L1/0065Serial concatenated codes
    • 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/0075Transmission of coding parameters to receiver
    • 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/0079Formats for control data
    • H04L1/008Formats for control data where the control data relates to payload of a different packet
    • 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

Abstract

멀티미디어 시스템에서 다수의 FEC(Forward Error Correction) 패킷들을 포함하는 FEC 패킷 블록을 전송하는 방법 및 장치가 제공된다. 상기 방법은, 다수의 소스 심볼들에 대해 제1 FEC 부호화를 수행하여 적어도 하나의 소스 패킷과 상기 적어도 하나의 소스 패킷의 각각의 복구를 위한 적어도 하나의 복구 패킷을 각각 포함하는 다수의 제1 FEC 패킷 블록들을 생성하는 과정과, 상기 다수의 제1 FEC 패킷 블록들에 대해 제2 FEC 부호화를 수행하여 상기 다수의 제1 FEC 패킷 블록들에 대한 적어도 하나의 복구 패킷을 포함하는 제2 FEC 패킷 블록을 생성하는 과정과, 상기 적어도 하나의 소스 패킷과 상기 적어도 하나의 복구 패킷에 각각 헤더 정보를 포함하는 상기 제2 FEC 패킷 블록을 전송하는 과정을 포함한다.

Description

멀티미디어 시스템에서 순방향 오류 정정 패킷을 생성하는 방법과 그 오류 정정 패킷을 송수신하는 방법 및 장치{METHOD FOR GENERATING FORWARD ERROR CORRECTION PACKET IN A MULTIMEDIA SYSTEM AND TRANMISSION/RECETION METHOD AND APPARATUS THEREOF}
본 발명은 멀티미디어 시스템에서 순방향 오류 정정 패킷을 생성하는 방법과 그 오류 정정 패킷을 송수신하는 방법 및 장치에 대한 것이다.
다양한 컨텐츠들의 증가와 고해상도 컨텐츠(High Definition(HD) 컨텐츠), 초고해상도 컨텐츠(Ultra High Definition(UHD) Contents)들과 같은 고용량 컨텐츠들의 증가로 통신 네트워크상에서 데이터 혼잡(Data Congestion)은 점점 더 증가되고 있다.
도 1은 일반적인 IP 기반의 네트워크 토폴로지와 데이터 흐름을 개략적으로 나타낸 도면이다.
도 1을 참조하면, 상기한 데이터 혼잡으로 인하여 도 1에서 호스트 A일 수 있는 송신기(Sender)(110)가 보낸 컨텐츠들이 호스트 B일 수 있는 수신기(Receiver)(130)에게 완전하게 전달되지 않고 컨텐츠의 일부가 송신기(110)로부터 수신기(130)로의 전송 경로(Route) 상에서 손실되는 상황이 발생한다. 전형적인 IP 네트워크에서 일반적으로 Data는 Packet단위로 전송된다. 따라서 손실은 전송 Packet단위로 발생된다. 이로 인하여 수신기(130)는 네트워크상에서 손실된 전송 Packet을 수신할 수 없게 되며, 상기 손실된 전송 Packet내의 Data를 알 수 없게 된다. 이는 Audio의 품질 저하, Video의 화질열화나 화면 깨짐, 자막 정보 누락, 파일의 손실 등과 같은 다양한 형태로 사용자의 불편을 초래하게 된다.
따라서 네트워크상에서 손실된 Data를 복구하기 위한 방법이 필요하게 된다. 따라서 송신기(110)는 Source Data를 FEC(Forward Error Correction) 인코딩(encoding)하여 Repair data를 부가한 후, FEC Frame를 생성할 수 있으며, 일련의 과정을 거쳐 FEC 프레임을 전송할 수 있다. 물리 계층에서의 송신 데이터가 순서대로 수신되는 것과는 달리 프로토콜 스택의 응용 계층에서는 송신 데이터가 네트워크상의 다수의 라우터(Router)(150)를 거치면서 송신 순서대로 수신되지 않는 상황이 발생될 수 있다. 따라서 FEC Frame내의 각 symbol들의 순서를 수신 단에서 알 수 있게 하는 정렬(Ordering) 방법이 필요하게 되고 또한 FEC Frame들간의 경계(Boundary) 정보를 수신 단에서 알 수 있게 하는 전송을 위한 Packet 구성 및 전송 방법이 필요하다.
도 1에 도시된 것처럼 IP Packet(170)은 다수의 Router(150)를 거치면서 수신기(130)에 전달된다. 그러나 IP Packet(170)은 Sender(110)가 송신한 순서와는 다른 순서로 Receiver(130)에 전달될 수 있다.
이로 인하여, AV Contents Streaming에서 패킷의 전송 순서를 나타내는 것이 필요하다. 이를 위해 Application단에서 도 1의 "Dat"a(171)는 AV Codec단에서 압축된 데이터를 Real Time Protocol(RTP)를 사용하여 Packetize한 이후의 RTP Packet data로 간주되거나 또는 MPEG(Motion Picture Experts Group) MMT(MPEG Media Transport) 패킷 데이터로 간주될 수 있다.
본 발명은 멀티미디어 시스템에서 패킷 손실을 방지할 수 있는 순방향 오류 정정(FEC) 패킷을 생성하는 방법을 제공한다.
또한 본 발명은 멀티미디어 시스템에서 순방향 오류 정정 패킷을 포함하는 FEC 패킷 블록을 송수신하는 방법 및 장치를 제공한다.
본 발명의 실시 예에 따라 멀티미디어 시스템에서 다수의 FEC(Forward Error Correction) 패킷들을 포함하는 FEC 패킷 블록을 전송하는 방법은, 다수의 소스 심볼들에 대해 제1 FEC 부호화를 수행하여 적어도 하나의 소스 패킷과 상기 적어도 하나의 소스 패킷의 각각의 복구를 위한 적어도 하나의 복구 패킷을 각각 포함하는 다수의 제1 FEC 패킷 블록들을 생성하는 과정과, 상기 다수의 제1 FEC 패킷 블록들에 대해 제2 FEC 부호화를 수행하여 상기 다수의 제1 FEC 패킷 블록들에 대한 적어도 하나의 복구 패킷을 포함하는 제2 FEC 패킷 블록을 생성하는 과정과, 상기 다수의 제1 FEC 패킷 블록들에 대한 블록 경계를 나타내는 제1 블록 경계 정보와 상기 제2 FEC 패킷 블록에 대한 블록 경계를 나타내는 제2 블록 경계 정보 중 적어도 하나와 관련 패킷의 시퀀스 번호 정보를 상기 적어도 하나의 소스 패킷과 상기 적어도 하나의 복구 패킷의 각각의 헤더 정보에 포함하는 상기 제2 FEC 패킷 블록을 전송하는 과정을 포함한다.
또한 본 발명의 실시 예에 따라 멀티미디어 시스템에서 다수의 FEC(Forward Error Correction) 패킷들을 포함하는 FEC 패킷 블록을 전송하는 송신 장치는, 정해진 통신 방식에 따라 FEC 패킷 블록을 전송하는 송신부와, 다수의 소스 심볼들에 대해 제1 FEC 부호화를 수행하여 적어도 하나의 소스 패킷과 상기 적어도 하나의 소스 패킷의 각각의 복구를 위한 적어도 하나의 복구 패킷을 각각 포함하는 다수의 제1 FEC 패킷 블록들을 생성하는 제1 FEC 부호화부와, 상기 다수의 제1 FEC 패킷 블록들에 대해 제2 FEC 부호화를 수행하여 상기 다수의 제1 FEC 패킷 블록들에 대한 적어도 하나의 복구 패킷을 포함하는 제2 FEC 패킷 블록을 생성하는 제2 FEC 부호화부와, 상기 적어도 하나의 소스 패킷과 상기 적어도 하나의 복구 패킷의 각각의 헤더 정보에 상기 다수의 제1 FEC 패킷 블록들에 대한 블록 경계를 나타내는 제1 블록 경계 정보와 상기 제2 FEC 패킷 블록에 대한 블록 경계를 나타내는 제2 블록 경계 정보 중 적어도 하나와 관련 패킷의 시퀀스 번호 정보를 부가하고 각 FEC 패킷 블록의 송신을 제어하는 제어부를 포함한다.
또한 본 발명의 실시 예에 따라 멀티미디어 시스템에서 다수의 FEC(Forward Error Correction) 패킷들을 포함하는 FEC 패킷 블록을 수신하는 방법은, 다수의 소스 심볼들에 대해 제1 FEC 부호화가 수행된 경우, 적어도 하나의 소스 패킷과 상기 적어도 하나의 소스 패킷의 각각의 복구를 위한 적어도 하나의 복구 패킷을 각각 포함하는 다수의 제1 FEC 패킷 블록들을 구성하는 다수의 패킷들을 수신하는 과정과, 상기 다수의 제1 FEC 패킷 블록들에 대해 제2 FEC 부호화가 수행된 경우, 상기 상기 다수의 제1 FEC 패킷 블록들과 상기 다수의 제1 FEC 패킷 블록들에 대한 적어도 하나의 복구 패킷을 포함하는 제2 FEC 패킷 블록을 구성하는 다수의 패킷들을 수신하는 과정과, 상기 수신된 제1 FEC 패킷 블록 또는 상기 수신된 제2 FEC 패킷 블록을 구성하는 상기 수신된 다수의 패킷들 각각으로부터 헤더 정보를 추출하여 상기 다수의 제1 FEC 패킷 블록들과 상기 제2 FEC 패킷 블록에 대한 해당 블록 경계를 각각 결정하여 상기 수신된 다수의 패킷들 각각의 복호화를 수행하는 과정과, 상기 복호화 결과 손실된 소스 패킷이 존재하는 경우, 해당 복구 패킷을 이용하여 상기 손실된 소스 패킷을 복원하는 과정을 포함하며, 상기 각 패킷의 헤더 정보는 상기 다수의 제1 FEC 패킷 블록들에 대한 블록 경계를 나타내는 제1 블록 경계 정보와 상기 제2 FEC 패킷 블록에 대한 블록 경계를 나타내는 제2 블록 경계 정보 중 적어도 하나와 해당 패킷의 시퀀스 번호 정보를 포함한다.
또한 본 발명의 실시 예에 따라 멀티미디어 시스템에서 다수의 FEC(Forward Error Correction) 패킷들을 포함하는 FEC 패킷 블록을 수신하는 수신 장치는, 다수의 소스 심볼들에 대해 제1 FEC 부호화가 수행된 경우, 적어도 하나의 소스 패킷과 각 소스 패킷의 복구를 위한 적어도 하나의 복구 패킷을 각각 포함하는 다수의 제1 FEC 패킷 블록들을 구성하는 다수의 패킷들을 수신하고, 상기 다수의 제1 FEC 패킷 블록들에 대해 제2 FEC 부호화가 수행된 경우, 상기 상기 다수의 제1 FEC 패킷 블록들과 상기 다수의 제1 FEC 패킷 블록들에 대한 적어도 하나의 복구 패킷을 포함하는 제2 FEC 패킷 블록을 구성하는 다수의 패킷들을 수신하는 수신부와, 상기 수신된 제1 FEC 패킷 블록 또는 제2 FEC 패킷 블록에 대해 복호화를 수행하는 복호화부와, 상기 수신된 제1 FEC 패킷 블록 또는 상기 수신된 제2 FEC 패킷 블록을 구성하는 상기 수신된 다수의 패킷들 각각으로부터 헤더 정보를 추출하여 상기 다수의 제1 FEC 패킷 블록들과 상기 제2 FEC 패킷 블록에 대한 해당 블록 경계를 각각 결정하여 상기 복호화부를 통한 각 패킷의 복호화와, 상기 복호화 결과 손실된 소스 패킷이 존재하는 경우, 해당 복구 패킷을 이용하여 상기 손실된 소스 패킷의 복원 동작을 제어하는 제어부를 포함하며, 상기 각 패킷의 헤더 정보는 상기 다수의 제1 FEC 패킷 블록들에 대한 블록 경계를 나타내는 제1 블록 경계 정보와 상기 제2 FEC 패킷 블록에 대한 블록 경계를 나타내는 제2 블록 경계 정보 중 적어도 하나와 해당 패킷의 시퀀스 번호 정보를 포함한다.
도 1은 일반적인 IP 기반의 네트워크 토폴로지와 데이터 흐름을 개략적으로 나타낸 도면,
도 2는 본 발명의 예시적인 실시 예에 따라 제1 FEC와 제2 FEC를 이용한 부호화 구조를 나타낸 도면,
도 3은 본 발명의 예시적인 실시 예에 따라 제 1 FEC와 제 2 FEC를 이용한 FEC Block과 FEC Packet Block을 각각 나타낸 도면,
도 4는 본 발명의 예시적인 실시 예에 따른 MPEG 미디어 전송 시스템 구조와 전송 기능 계층을 나타낸 도면.
이하, 본 발명의 실시 예를 도면과 함께 상세히 설명한다. 본 발명을 설명함에 있어서 관련된 공지 기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단된 경우 그 상세한 설명은 생략한다. 그리고 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
이하 설명될 본 발명의 실시 예는 전술한 RTP(Real Time Protocol) 패킷 또는 MMT 패킷과 같은 전송 Protocol을 이용하여 FEC 블록이 전송되는 경우에 있어서 FEC 블록에 포함되는 다수의 FEC 패킷들의 정렬(ordering) 및 전송을 위한 패킷 구성 및 전송 방법에 관한 것을 포함한다.
본 발명의 실시 예의 설명에 앞서 본 명세서에서 사용되는 용어들을 아래와 같이 정의한다.
FEC(Forward Error Correction) : 오류 또는 삭제 심볼(Erasure Symbol)을 정정하기 위한 오류 정정 부호
FEC 프레임 : 보호하고자 하는 정보를 FEC 부호화함에 의해 생성된 부호어(Codeword)로써 정보 부분(information part)와 패리티 부분(parity(repair) part)을 포함하는 상기 부호어
심볼(Symbol) : 데이터의 단위(A unit of data), 여기서 사이즈는 심볼 사이즈로 참조된다.(Its size, in bits, is referred to as the symbol size)
소스 심볼(들)(Source Symbol(s)) : FEC 프레임의 정보 부분인 보호되지 않은 데이터 심볼(들)(Unprotected data Symbol(s) which is the information part of a FEC Frame)
부호화 심볼(들)(Encoding Symbol(s)) : 소스 심볼(Source Symbol(s))을 FEC 부호화한 심볼(들)
복구 심볼(들)(Repair Symbol(s)) : 소스 심볼(들)을 FEC 부호화함에 의해 생성된 FEC 프레임의 패리티 부분(parity part)
(여기서 부호화 심볼들 = 소스 심볼들 + 복구 심볼들, 단, FEC에 의한 부호화 시 소스 심볼들이 그대로 유지되는 Systematic Encoding의 경우)
패킷(Packet) : 헤더(Header)와 페이로드로 구성된 전송 단위
페이로드(Payload) : 송신기로부터 전송되고 패킷 내에 위치된 사용자 데이터의 조각(a piece of user data which is to be transmitted from the sender and which is placed inside of a packet)
패킷 헤더(Packet Header) : 패킷의 헤더.
소스 블록(Source Block) : 하나 이상의 소스 심볼들로 구성된 심볼들의 집합
복구 블록(Repair Block) : 하나 이상의 복구 심볼들을 구성된 심볼들의 집합
FEC 블록(FEC Block) : FEC 프레임들의 집합 or 소스 블록과 복구 블록으로 구성된 심볼들의 집합
FEC 패킷(FEC Packet) : FEC 패킷 블록 전송하기 위한 패킷
소스 패킷(Source Packet) : 소스 블록을 전송하기 위한 패킷
복구 패킷(Repair Packet) : 복구 블록을 전송하기 위한 패킷
FEC 패킷 블록(FEC Packet Block) : FEC 패킷 블록을 전송하기 위한 패킷들의 집합
상기 소스 패킷은, 다수의 소스 심볼들의 집합인, 소스 블록을 전송하기 위한 패킷이고, 상기 복구 패킷은, 다수의 복구 심볼들의 집합인, 복구 블록을 전송하기 위한 패킷이다. 그리고 상기 FEC 블록은 상기 소스 블록과 상기 복구 블록을 포함하며, 상기 FEC 블록을 전송하기 위한 패킷들의 집합이 FEC 패킷 블록이다.
본 발명의 예시적인 실시 예에 따라 상기 FEC 패킷 블록을 생성하는 방법은, 사용자에게 제공될 컨텐츠(Content)에 대한 적어도 하나의 소스 패킷(Source Packet)을 생성하는 과정과, 상기 적어도 하나의 소스 패킷 내의 페이로드를 복구하기 위한 복구 심볼(Repair Symbol)들을 포함하는 적어도 하나의 복구 패킷을 생성하는 과정을 포함한다. 그러면 상기 적어도 하나의 소스 패킷과 상기 적어도 하나의 복구 패킷을 포함하는 상기 FEC 패킷 블록이 생성된다.
또한 본 발명의 다른 예시적인 실시 예에 따라 상기 FEC 패킷 블록을 생성하는 방법은 사용자에게 제공될 컨텐츠에 대한 적어도 하나의 소스 패킷을 생성하고, 상기 적어도 하나의 소스 패킷 내의 해당 페이로드를 복구하기 위한 제1 복구 심볼들을 포함하는 적어도 하나의 제1 복구 패킷을 생성하는 과정과, 상기 적어도 하나의 소스 패킷과 제1 복구 패킷의 전체 페이로드에 대한 제2 복구 심볼들을 포함하는 적어도 하나의 제2 복구 패킷을 생성하는 과정을 포함한다. 그러면 상기 적어도 하나의 소스 패킷과 상기 적어도 하나의 제1 및 제2 복구 패킷을 포함하는 FEC 패킷 블록이 생성된다.
또한 본 발명의 다른 예시적인 실시 예에 따라 상기 FEC 패킷 블록을 생성하는 방법은, 사용자에게 제공될 컨텐츠에 대한 적어도 하나의 소스 패킷을 생성하는 과정과, 상기 적어도 하나의 소스 패킷 내의 해당 페이로드를 복구하기 위한 제1 복구 심볼들을 포함하는 적어도 하나의 제1 복구 패킷을 생성하는 과정과, 상기 적어도 하나의 소스 패킷의 전체 페이로드에 대한 제2 복구 심볼들을 포함하는 적어도 하나의 제2 복구 패킷을 생성하는 과정을 포함한다. 그러면 상기 적어도 하나의 소스 패킷과 상기 적어도 하나의 제1 및 제2 복구 패킷을 포함하는 FEC 패킷 블록이 생성된다.
본 발명의 예시적인 실시 예에 따라 상기 소스 패킷과 상기 제1 복구 패킷을 포함하는 FEC 패킷 블록을 제1 FEC 패킷 블록이라 하고, 상기 소스 패킷과 상기 제1 및 제2 복구 패킷을 포함하는 FEC 패킷 블록을 제2 패킷 FEC 블록이라 하거나 또는 상기 소스 패킷과 상기 제 2 복구 패킷을 포함하는 FEC 패킷 블록을 제 2 패킷 FEC 블록이라 한다. 그리고 상기 제1 FEC 패킷 블록에 포함되는 복구 블록을 제1 복구 블록이라 하고, 상기 제2 FEC 패킷 블록에 포함되는 복구 블록을 제2 복구 블록이라 한다.
또한 상기 제1 FEC 패킷 블록과 상기 제2 FEC 패킷 블록에서 소스 블록을 각각 제1 소스 블록과 제2 소스 블록이라 하였을 때, 상기 제1 소스 블록과 상기 제2 소스 블록은 동일한 소스 심볼들로 구성되거나 또는 다른 소스 심볼들로 구성될 수 있다. 상기 제1 FEC 패킷 블록의 소스 블록에 추가적인 FEC 부호화에 의해 생성된 상기 제2 복구 블록을 부가하여 상기 제2 FEC 블록을 구성하는 경우 상기 제2 FEC 블록의 소스 블록은 상기 제1 FEC 블록의 소스 블록과 동일하므로 상기 제1 소스 블록과 상기 제2 소스 블록이 동일한 소스 심볼들을 포함할 수 있다.
그리고 상기 제1 소스 블록과 상기 제1 복구 블록을 포함하여 상기 제2 FEC 블록의 제2 소스 블록을 구성하는 경우, 상기 제1 소스 블록과 상기 제2 소스 블록은 서로 구별된다.
도 2는 본 발명의 실시 예에 따라 제1 FEC와 제2 FEC를 이용한 부호화 구조를 나타낸 도면이다.
도 2를 참조하면, 소정 개수의 심볼들을 M(1이상의 정수)개의 제 1 소스 심볼들(201a 내지 203a)로 분할하고, 각각의 제 1 소스 심볼들(201a 내지 203a)에 대해 제 1 FEC 부호화를 수행하여 M개의 제 1 부호화 심볼들(205 내지 207)을 생성한다. M개의 제 1 부호화 심볼들(205 내지 207)는 제 1 소스 심볼들(201a 내지 203a)과 이에 대응되는 제1 복구 심볼들(201b 내지 203b)을 포함한다.
그리고 상기 제1 FEC 부호화에 의해 생성된 M개의 제 1 부호화 심볼들(205 내지 207) 또는 상기 M개의 제1 소스 심볼(201a 내지 203a)을 제2 소스 심볼들로 이용하고, 상기 제2 소스 심볼들에 대해 제 2 FEC 부호화를 수행하여 제 1 부호화 심볼들(205 내지 207)과 제2 복구 심볼들(208)을 포함하는 제 2 부호화 심볼들(209)을 생성한다.
도 2에 도시되지는 않았으나, 제 1 FEC만을 적용하거나, 또는 제2 FEC만를 선택적으로 적용하는 것도 가능하다.
도 3은 본 발명의 예시적인 실시 예에 따라 제1 FEC와 제2 FEC를 이용한 FEC 블록과 FEC 패킷 블록을 나타낸 도면이다.
도 3를 참조하면, 도 2에 기초한 부호화 심볼들의 소스 블록을 위한 소스 페이로드(301), 복구 블록을 위한 제1 복구 페이로드(303)를 포함하는 M개의 제1 FEC 블록(307a)과, 패킷 단위로 전송하기 위해 상기 FEC 블록들 각각의 페이로드(311, 313)에 패킷 헤더(311a, 313a)를 부가하여 M개의 제1 FEC 패킷 블록(317a)이 도시되어 있다.
그리고 도 3의 (A)를 참조하면, 제2 FEC 블록(307)은 상기 M개의 제1 FEC 블록 (307a)과, 상기 M개의 제1 FEC 블록(307a)에 대한 적어도 하나의 제2 복구 페이로드(305)를 전송하기 위한 제2 복구 블록을 포함할 수 있다.(제2 FEC가 적용된 경우)
그리고 도 3의 (B)를 참조하면, 제2 FEC 패킷 블록(317)은 상기 M개의 제1 FEC 패킷 블록(317a)과, 상기 M개의 제1 FEC 패킷 블록(317a)에 대한 적어도 하나의 제2 복구 페이로드(315)를 전송하기 위한 패킷 헤더(315a)가 부가된 제2 복구 블록을 포함할 수 있다.(제2 FEC가 적용된 경우) 각각의 패킷은 헤더와 페이로드를 포함한다. 도시하지는 않지만, FEC 미적용, 또는 제 1 FEC만 적용, 또는 제 2 FEC만 적용된 경우를 포함한다.
도 3에서 설명한 제1 및 제2 FEC 부호화 구조를 적용하면, 제1 FEC 부호화에 따라 컨텐츠에 대한 소스 심볼들을 포함하는 적어도 하나의 소스 패킷, 상기 소스 패킷의 페이로드에 대한 제1 복구 심볼들을 포함하는 적어도 하나의 제1 복구 패킷을 포함하는 M개의 제1 FEC 패킷 블록(317a)이 생성되고, 또한 제2 FEC 부호화에 따라 상기 M개의 제1 FEC 블록(317a)과, 상기 제1 FEC 블록에 대한 적어도 하나의 제2 복구 패킷을 포함하는 제2 FEC 패킷 블록(317)을 생성된다.
이하 상기한 본 발명의 예시적인 실시 예에 따른 FEC 패킷 블록에 포함되는 패킷들의 헤더 구조를 설명하기로 한다. 하기 설명에서 FEC 패킷은 FEC 패킷 블록에 포함되는 각 패킷 및/또는 임의의 패킷이 될 수 있다. 본 발명의 예시적인 실시 예에서 각각의 FEC 패킷의 헤더는 제1 및 제2 FEC 패킷 블록의 경계 정보 필드(Boundary Information Field), 시퀀스 번호 필드(Sequence Number Field), 제1 및 제2 복구 블록의 경계 정보 필드(Boundary Information Field), 페이로드 타입 정보 필드(Payload Type Information Field) 중 적어도 하나의 정보 필드를 포함할 수 있다.
또한 상기의 패킷 헤더는 제 1 FEC을 위한 파라미터 정보 즉 제1 FEC 패킷 블록과 제1 소스 블록에 포함되는 패킷들의 패킷 개수 정보 또는 제1 소스 블록과 제1 복구 블록에 포함되는 패킷들의 패킷 개수 정보를 포함할 수 있다. 또한 상기의 패킷 헤더는 제 2 FEC을 위한 파라미터 정보 즉 제2 FEC 패킷 블록과 제2 소스 블록에 포함되는 패킷들의 패킷 개수 정보 또는 제2 소스 블록 및 제2 복구 블록에 포함되는 패킷들의 패킷 개수 정보를 포함할 수 있다.
또한 상기의 패킷 헤더는 제 1 및 제2 FEC 중 적어도 하나의 적용 여부를 나타내는 FEC 구조(Structure) 필드를 포함할 수 있다. 상기 FEC 구조 필드의 필드 값에 따라 상기 제1 및 제2 FEC 패킷 블록의 경계 정보 필드, 시퀀스 번호 필드, 제1 복구 블록의 경계 정보 필드, 페이로드 타입 정보 필드, 제 1 FEC을 위한 파라미터 정보 필드, 제2 FEC을 위한 파라미터 정보 필드들을 선택적으로 포함하거나 또는 그 정의를 달리할 수 있다.
Figure 112012054784117-pat00001
상기 <표 1>은 본 발명의 예시적인 실시 예에 의한 FEC 패킷의 헤더 포맷1의 일 구성 예를 나타낸 것이다.
상기 <표 1>과 같은 헤더 포맷은 정보 필드들의 고정된 집합이라기 보다는 FEC 패킷의 헤더 내에 포함될 수 있는 정보 필드들의 집합일 수 있다. 상기 헤더 포맷내의 각 정보 필드는 적용되는 FEC 패킷 전송 방식에 따라 선택적으로 구성될 수 있다.
도 3의 실시 예와 같이 두 개의 FEC를 사용하는 경우와 다르게 하나의 FEC만을 적용하는 경우, FEC 패킷 블록의 구성 방법은, FEC가 적용된 경우 소스 심볼들을 전송하기 위한 적어도 하나의 소스 패킷을 생성하고 복구 심볼들을 전송하기 위한 적어도 하나의 복구 패킷을 생성하는 과정을 포함할 수 있다.
Figure 112012054784117-pat00002
상기 <표 2>는 본 발명의 예시적인 실시 예에서 하나의 FEC만을 적용하는 경우 FEC 패킷 헤더 포맷2의 일 구성 예를 나타낸 것이다.
상기 <표 2>를 참조하면, 각각의 FEC 패킷의 헤더는 FEC 패킷 블록의 경계 정보 필드(Boundary Information Field) 즉 FEC 블록 경계, 시퀀스 번호 필드(Sequence Number Field), 복구 블록 경계 정보 필드(Repair Block Boundary Information Field), 페이로드 타입 정보 필드(Payload Type Information Field)중 적어도 하나의 정보 필드를 포함할 수 있다.
또한 상기의 헤더는 예를 들어 FEC 패킷 블록과 소스 블록에 포함되는 패킷들의 패킷 개수 정보 또는 소스 블록과 복구 블록에 포함되는 패킷들의 패킷 개수 정보를 위한 정보 필드와 같은 FEC을 위한 파라미터 정보를 포함할 수 있다. 또한 상기의 헤더는 FEC 적용 여부를 나타내는 FEC 플래그 정보 필드를 포함할 수 있다. 또한 상기 FEC Flag 정보 필드의 값에 따라 상기 FEC 패킷 블록의 경계 정보 필드, 시퀀스 번호 필드, 복구 블록 경계 정보 필드, 페이로드 타입 정보 필드(Payload Type Information Field), FEC을 위한 파라미터 정보 필드들을 선택적으로 포함할 수 있다.
본 발명의 예시적인 실시 예의 FEC 패킷 전송 방법들이 설명될 것이다. 제1 FEC 패킷 전송 방법은 제1 FEC가 적용된 경우 소스 심볼들을 전송하기 위한 적어도 하나의 소스 패킷을 생성하고, 제1 복구 심볼들을 전송하기 위한 적어도 하나의 제1 복구 패킷을 생성하는 과정과, 제2 FEC가 적용된 경우 제2 복구 심볼들을 전송하기 위한 적어도 하나의 제2 복구 패킷을 생성하는 과정을 포함한다.
상기와 같이 생성된 소스 패킷과 복구 패킷은 각각 아래와 같이 전송된다.
소스 패킷과 복구 패킷에 상관없이 패킷의 전송 순서에 입각해서 각 패킷의 시퀀스 번호(Sequence Number)를 연속적으로 부여한다. 각 패킷의 헤더에 FEC 블록 경계 정보(FEC Block Boundary Information)로써 해당 FEC 블록의 시작 시퀀스 번호(Start Sequence Number)가 포함된다. 제1 FEC와 제2 FEC, 둘 다 적용되는 경우 제2 FEC 패킷 들록의 각 패킷의 전송 동안 제2 FEC 패킷 블록의 각 패킷 헤더에 제2 FEC 패킷 블록의 시작 시퀀스 번호가 포함된다.
제1 FEC와, 제2 FEC 중 하나가 선택적으로 적용하는 경우 각 패킷의 전송 동안 각 패킷의 헤더 정보는 FEC 구조(Structure) 정보가 포함된다. 제1 FEC 패킷 블록과 제2 FEC 패킷 블록의 소스 패킷(Source Packet) 또는 복구 패킷(Repair Packet)의 개수가 가변적인 경우 제1 FEC 패킷 블록과 제2 FEC 패킷 블록의 각각의 패킷 개수 정보와 소스 패킷의 개수 정보 또는 소스 패킷 개수 정보와 복구 패킷의 개수 정보를 포함하는 헤더 정보가 전송된다. 소스 패킷 각각의 페이로드 타입(Payload Type) 정보는 Audio, Video 및 데이터의 임의의 다른 타입과 같은 소스 페이로드의 타입을 나타내도록 설정되고, 복구 패킷 각각의 페이로드 타입 정보는 해당 페이로드가 제1 복구 페이로드인지 또는 제2 복구 페이로드 인지를 나타낸다.
Figure 112012054784117-pat00003
상기 <표 3>은 본 발명의 예시적인 실시 예에 따른 상기 제1 FEC 패킷 전송 방법이 적용되는 경우 FEC 패킷의 헤더 포맷을 나타낸 것이다.
이하 본 발명의 예시적인 실시 예에 의해 제공되는 제2 FEC 패킷 전송 방법이 설명될 것이다. 각 패킷의 헤더의 페이로드 타입은 각 패킷의 전송 동안 관련된 페이로드에 상응하도록 설정된다. 즉, 소스 페이로드를 위한 패킷의 페이로드 타입은 Audio, Video 또는 다른 유사하거나 적합한 타입과 같은 소스 페이로드 타입을 나타내고, 복구 페이로드를 위한 패킷의 페이로드 타입은 그 복구 페이로드가 제1 복구 페이로드인지 또는 제2 복구 페이로드를 인지를 나타낸다. 소스 패킷들을 위한 시퀀스 번호는 연속적으로 부여되고, 상기 소스 패킷들의 시퀀스 번호들과는 별도로 복구 패킷들을 위한 시퀀스 번호들이 전송 동안 연속적으로 부여된다. 또한, 제1 복구 패킷을 위한 시퀀스 번호와 제2 복구 패킷을 위한 시퀀스 번호는 구분되게 전송된다.
각 패킷의 전송 동안 제1 FEC 패킷 블록의 시작 시퀀스 번호와 제2 FEC 패킷 블록의 시작 시퀀스 번호는 제1 FEC 패킷 블록에 대한 블록 경계 정보, 즉 FEC Block 1 Boundary Information과 제2 FEC 패킷 블록에 대한 블록 경계 정보, 즉 FEC Block 2 Boundary Information로서 각 패킷의 헤더에 포함된다. 전송 동안 각 패킷의 헤더 또는 복구 패킷의 헤더에 복구 블록 경계 정보(Repair Block Boundary Information)가 포함된다. 제1 FEC 패킷 블록의 각 패킷 또는 제1 복구 패킷들의 헤더에 상기 제1 FEC 패킷 블록의 제1 복구 패킷들 중 시작 시퀀스 번호를 포함하고, 제2 FEC 패킷 블록의 각 패킷 또는 제2 복구 패킷들의 헤더에 상기 제2 FEC 패킷 블록의 제2 복구 패킷들 중 시작 시퀀스 번호가 포함된다.
제1 FEC와 제2 FEC가 선택적으로 적용되는 경우 각 패킷의 전송 동안 FEC 구조(Structure) 정보가 각 패킷의 헤더에 포함된다. 제1 FEC 패킷 블록과, 제2 FEC 패킷 블록의 소스 패킷 또는 복구 패킷의 개수가 가변적인 경우, 제1 FEC 패킷 블록, 제2 FEC 패킷 블록의 각각에 대한 패킷 개수 정보 정보 및 소스 패킷의 개수 정보, 또는 소스 패킷 개수 정보 및 복구 패킷의 개수 정보가 FEC 패킷 블록들의 전송 동안 각 패킷의 헤더에 포함된다. 또한 상기 제2 FEC 패킷 전송 방법에서 이용되는 헤더 포맷은 상기 <표 1>과 같을 수 있다.
이하 본 발명의 예시적인 실시 예에 의한 FEC 패킷 전송 방법 3이 설명될 것이다. 각 패킷의 헤더의 페이로드 타입은 전송 동안 관련된 페이로드에 상응하도록 설정된다. 즉, 소스 페이로드를 위한 패킷의 페이로드 타입은 Audio, Video, 그리고 다른 유사한 타입들과 같은 소스 페이로드 타입을 나타낸다. 복구 페이로드를 위한 패킷의 페이로드 타입은 그 복구 페이로드가 제1 복구 페이로드인지를 나타내거나 또는 그 복구 페이로드가 제2 복구 페이로드인지를 나타낼 수 있다. 소스 패킷들을 위한 시퀀스 번호들은 연속적으로 부여되고, 상기 소스 패킷들을 위한 시퀀스 번호들과는 별개로 복구 패킷들을 위한 시퀀스 번호들은 전송 동안 연속적으로 부여되고, 상기 복구 패킷들의 시작 시퀀스 번호는 FEC 패킷 블록내의 복구 블록의 경계를 알 수 있도록 예를 들어 소스 패킷의 시작 시퀀스 번호로부터 시작하도록 설정된다. 즉, FEC 패킷 블록내의 소스 패킷과 복구 패킷들을 위한 시퀀스 번호들이 서로 상관 관계를 갖도록 설정됨으로써 복구 패킷들을 포함하는 복구 블록(Repair Block)의 경계를 결정할 수 있다.
제1 FEC 패킷 블록의 전송 동안, 제1 FEC 패킷 블록의 블록 경계 정보(FEC Block 1 Boundary Information)과 제2 FEC 패킷 블록의 블록 경계 정보(FEC Block 2 Boundary Information)로써 제1 FEC 패킷 블록의 시작 시퀀스 번호(Start Sequence Number)와 제2 FEC 패킷 블록의 시작 시퀀스 번호가 각 패킷의 헤더에 포함된다. 제1 FEC와, 제2 FEC 중 하나가 선택적으로 적용되는 경우 FEC 구조 정보가 패킷의 전송 동안 각 패킷의 헤더에 포함된다. 제1 FEC 패킷 블록과 제2 FEC 패킷 블록의 소스 패킷 or 복구 패킷 개수가 가변적인 경우, 제1 FEC 패킷 블록과 제2 FEC 패킷 블록의 각각에 대한 패킷 개수 정보 및 소스 패킷의 개수 정보, 또는 소스 패킷 개수 정보 및 복구 패킷 개수 정보가 각 패킷의 전송 동안 각 패킷의 헤더에 포함된다.
Figure 112012054784117-pat00004
상기 제3 FEC 패킷 전송 방법을 위한 헤더 포맷은 상기 <표 4>와 같을 수 있다.
이하 본 발명의 예시적인 실시 예에 의한 제4 FEC 패킷 전송 방법이 설명될 것이다. 상기 제4 FEC 패킷 전송 방법은 소스 심볼들을 전송하기 위한 적어도 하나의 소스 패킷을 생성하고 복구 심볼들을 전송하기 위한 적어도 하나의 복구 패킷을 생성하며, FEC가 적용되고, 두 개의 FEC를 사용하는 경우와 다르게 하나의 FEC를 사용하여 운용되는 경우에 적용된다.
각 패킷의 헤더의 페이로드 타입은 각 패킷의 전송 동안 관련된 페이로드에 대응된다. 즉, 소스 페이로드를 위한 패킷의 페이로드 타입은 소스 페이로드 타입을 나타내고 복구 페이로드를 위한 패킷의 페이로드 타입은 복구 페이로드 타입을 나타낸다. 소스 패킷들을 위한 시퀀스 번호는 연속적으로 부여되고, 상기 소스 패킷들과는 별개로 복구 패킷들을 위한 시퀀스 번호 또한 전송 동안 연속적으로 부여된다. 각 패킷의 전송 동안 관련 FEC 패킷 블록의 시작 시퀀스 번호는 FEC 블록 경계 정보(FEC Block Boundary Information)로써 각 패킷의 헤더에 포함된다.
각 패킷 또는 복구 패킷의 전송 동안 각 패킷의 헤더 또는 복구 패킷의 헤더에 복구 블록 경계 정보(Repair Block Boundary Information)가 포함된다. 상기 FEC 패킷 블록에서 복구 패킷들 중 시작 시퀀스 번호는 상기 FEC 패킷 블록에서 각 패킷 또는 복구 패킷들의 헤더에 포함된다. FEC가 선택적으로 적용되는 경우 FEC 플래그(Flag) 정보가 각 패킷의 전송 동안 각 패킷의 헤더에 포함된다. FEC 패킷 블록의 소스 패킷 또는 복구 패킷의 개수가 가변적인 경우 FEC 패킷 블록의 패킷 개수 정보 및 소스 패킷 개수 정보, 또는 소스 패킷 개수 정보 및 복구 패킷 개수 정보가 각 패킷의 전송 동안 각 패킷의 헤더에 포함된다. 상기 제4 FEC 패킷 전송 방법을 위한 헤더 포맷은 상기 <표 2>와 같을 수 있다.
이하 본 발명의 예시적인 실시 예에 의한 제5 FEC 패킷 전송 방법을 설명하기로 한다.
각 패킷의 헤더의 페이로드 타입은 각 패킷의 전송 동안 관련 페이로드에 대응된다. 즉, 소스 페이로드를 위한 패킷의 페이로드 타입은 소스 페이로드 타입을 나타내고, 복구 페이로드를 위한 패킷의 페이로드 타입은 복구 페이로드 타입을 타나낸다. 각 패킷의 전송 동안 소스 패킷들을 위한 시퀀스 번호는 연속적으로 부여되고, 상기 소스 패킷들과 별도로 복구 패킷들을 위한 시퀀스 번호는 연속적으로 부여된다. 상기 복구 패킷들을 위한 시작 시퀀스 번호는 상기 FEC 패킷 블록내의 복구 블록의 경계를 결정할 수 있도록 예를 들어 소스 패킷의 시작 시퀀스 번호로부터 시작하도록 설정된다. 즉, FEC 패킷 블록내의 소스 패킷과 복구 패킷들을 위한 시퀀스 번호가 상관 관계를 갖도록 설정함으로써 복구 패킷들이 포함된 복구 블록(Repair Block)의 경계를 결정할 수 있다.  
전송 동안 해당 FEC 패킷 블록의 시작 시퀀스 번호는 각 패킷의 헤더에 FEC 블록 경계 정보(FEC Block Boundary Information)로써 저장된다. FEC가 선택적으로 적용되는 경우 FEC 플래그(Flag) 정보가 각 패킷의 전송 동안 각 패킷의 헤더에 포함된다. FEC 패킷 블록의 소스 패킷 또는 복구 패킷 개수가 가변적인 경우 FEC 패킷 블록의 패킷 개수 정보 정보 및 소스 패킷의 개수 정보, 또는 소스 패킷 개수 정보 및 복구 패킷의 개수 정보가 전송 동안 각 패킷의 헤더에 저장된다.
Figure 112012054784117-pat00005
상기 제5 FEC 패킷 전송 방법을 위한 헤더 포맷은 상기 <표 5>와 같을 수 있다.
이하 본 발명의 예시적인 실시 예에 따른 제6 FEC 패킷 전송 방법을 설명하기로 한다.
전송 동안 소스 패킷과 복구 패킷에 상관없이 패킷의 전송 순서를 근거로 각 패킷의 시퀀스 번호가 연속적으로 부여된다. 해당 FEC 패킷 블록의 시작 시퀀스 번호(Start Sequence Number)는 각 패킷의 헤더에 FEC 블록 경계 정보(FEC Block Boundary Information)로써 포함된다. FEC가 선택적으로 적용되는 경우 FEC 플래그(Flag) 정보가 각 패킷의 헤더에 포함된다.
FEC 패킷 블록의 소스 패킷 또는 복구 패킷 개수가 가변적인 경우 FEC 패킷 블록의 패킷 개수 정보 정보 및 소스 패킷의 개수 정보, 또는 소스 패킷 개수 정보 및 복구 패킷의 개수 정보가 각 패킷의 헤더에 포함된다. 소스 패킷 각각의 페이로드 타입 정보는 소스 페이로드 타입을 나타내고, 복구 패킷 각각의 페이로드 타입 정보는 복구 페이로드 타입을 나타낸다. 상기 제6 FEC 패킷 전송 방법을 위한 헤더 포맷은 상기 <표 5>와 같을 수 있다.
다른 예시적인 실시 예로 각 패킷에 제1 FEC 패킷 블록에 대한 블록 경계 정보를 포함하는 것 대신에 각 패킷이 제2 FEC 패킷 블록에 대한 블록 경계 정보를 포함하도록 하여 각 패킷의 헤더 정보 오버 헤더를 절감하는 것도 가능하다. 이 경우 각 패킷의 헤더 정보에 포함되는 상기 제2 FEC 패킷 블록에 대한 블록 경계 정보는 제2 FEC 패킷 블록의 시작 시퀀스 번호로 또한 설정될 수 있다.
도 3의 실시 예에서 M개의 제1 FEC 패킷 블록(317a)의 각 소스 블록에 포함되는 소스 패킷들의 패킷 개수와 각 복구 블록에 포함되는 복구 패킷들의 패킷 개수가 동일하고 그 개수가 고정되어 있다면, 상기 제2 FEC 패킷 블록의 시작 시퀀스 번호를 근거로, M개의 제1 FEC 패킷 블록(317a)의 각 소스 블록과 각 복구 블록에 포함된 패킷이 상기 M개의 제1 FEC 패킷 블록(317a) 중에서 속하는 특정 제1 FEC 패킷 블록을 결정할 수 있다. 따라서 제2 FEC 패킷 블록의 시작 시퀀스 번호만을 상기 블록 경계 정보로 이용하더라도 각 패킷이 속하는 제1 FEC 패킷 블록을 결정할 수 있다.
예를 들어 각 제1 FEC 패킷 블록 317a에 포함되는 소스 패킷들의 개수가 100개, 복구 블록에 포함되는 복구 패킷들의 개수가 100개이고, 제2 FEC 패킷 블록의 시작 시퀀스 번호가 "1"인 경우를 가정하면, FEC 패킷의 시퀀스 번호가 210이면, 상기 FEC 패킷이 두 번째 제1 FEC 패킷 블록에 속하는 패킷임이 결정된다. 상기한 방식은 소스 패킷들과 복구 패킷들을 구분하지 않고 적용되거나 또는 소스 패킷들에만 상기한 방식을 적용하고, 복구 패킷들에는 상기한 방식을 적용하지 않는 것도 가능할 것이다.
도 4는 본 발명의 예시적인 실시 예에 따른 MPEG 미디어 전송 시스템 구조와 전송 기능 계층을 나타낸 도면이다.
도 4를 참조하면, 도 4의 왼쪽은 MPEG 미디어 전송 시스템 구조(Media Transport(MMT) System Structure)을 나타낸 것이고, 도 4의 오른쪽은 전송 기능의 세부 구조를 나타낸 것이다.
미디어 코딩 계층(Media Coding Layer)(401)으로부터 압축된 Audio/Video data는 인캡슐레이션 기능 계층(Encapsulation Function Layer)(403)(이하 E Layer)를 거쳐 File Format에 상응하는 포맷으로 Package화 되고, 전송 기능 계층(Delivery Function Layer)(405)은 상기 Package화된 A/V 데이터를 MMT Payload Format화한 후, MMT 전송 패킷 헤더(Transport Packet Header)를 부가하여 MMT 전송 패킷으로 출력하거나 또는 기존 RTP Protocol을 사용하여 RTP 패킷으로 출력한다. 상기 MMT 전송 패킷 헤더는 전술한 다양한 포맷의 FEC 패킷의 헤더 정보를 포함할 수 있다. 이후 출력 패킷은 UDP/TCP의 전송 프로토콜 계층(Transport Protocol Layer)(407)를 거쳐 최종적으로 Internet Protocol(IP)(409) 단에서 IP 패킷화 된다.
본 발명의 예시적인 실시 예에 의한 AL(Application Layer)-FEC는 인캡슐레이션 기능 계층(Encapsulation Function Layer)(403)으로 부터의 출력을 받아 MMT D.1 Layer(421)에서 MMT Payload Format을 생성하는 과정에 적용되는데 FEC가 적용되는 경우 제어 기능 계층(Control Function Layer)(411) 은 제1 FEC, 제2 FEC의 둘 다를 적용하고자 하는 경우 Delivery Function Layer(405)에 이를 명령하고 MMT D.1 Layer(421)는 다음과 같은 과정으로 도 3의 (A)와 같이 FEC 패킷 블록을 생성하게 되고 MMT D.2 Layer(423)는 MMT D.1 Layer(421)의 출력으로부터 도 3의 (B)와 같은 FEC 패킷 블록을 생성하여 출력하게 된다. 그리고 MMT D.3 Layer(413)은 계층들 사이의 정보 전송에 관련된 기능을 제공한다. 즉, MMT D.3 Layer(413)은 계층들 사이에서 컨텐츠의 전달 및 필요한 커뮤니케이션을 가능하게 한다.
예를 들어 MMT D.1 Layer(421)는 E Layer(도시되지 않음)로부터 입력된 데이터를 Payload 크기가 1000bytes인 6400개의 Payload로 구성된 소스 블록(즉, 6400개의 소스 페이로드)단위로 나누고, 상기 소스 블록을 32개의 Source Sub-block으로 나눈다. 따라서 각 Source Sub-block은 200개의 소스 페이로드를 포함한다. 각각의 Source Sub-block(소스 블록 1)을 제1 FEC 부호화에 의해 Systematic Encoding을 통해 50개의 복구 페이로드를 부가하여 200 개의 소스 페이로드들과 40 개의 복구 페이로드들을 포함하는 제1 FEC 패킷 블록이 생성된다. 7680 개의 페이로들을 포함하는 상기 생성된 32개의 제1 FEC 패킷 블록들 또는 상기 6400개의 페이로드들을 포함하는 소스 블록에 Systematic Encoding을 통한 제2 FEC 부호화에 의해 320개의 제2 복구 페이로드를 부가하여 제2 FEC 패킷 블록이 생성된다.
MMT D.2 Layer(423)는 상기 MMT D.1 Layer(421)로부터 생성된 8000 개의 payload를 포함하는, 도 3의 (B)와 같은 형태로 6400 개의 소스 페이로드와 32 x 40 개의 제1 복구 페이로드, 그리고 320 개의 제2 복구 페이로드를 포함하는, 제2 FEC 패킷 블록 각각의 Payload에 MMT 전송 패킷 헤더(Transport Packet Header)를 부가하여 MMT 전송 패킷화를 수행한다. 상기 MMT 전송 패킷 헤더 포맷은 <표 1> 또는 <표 3>과 같이 구성될 수 있다. 상기 MMT 전송 패킷 헤더 포맷이 상기 <표 1>과 같이 구성될 경우의 각 필드 값들은 다음과 같이 설정될 수 있다.
페이로드 타입 : 1 bytes를 할당하여 소스 페이로드들에 대해서는 예컨대, 10h ~ F0h사이의 값을 할당하여 각 소스 페이로드를 구분하고, 여기서 제1 복구 페이로드에 대해서는 F1h값을 할당하고, 제2 복구 페이로드에 대해서는 F2h값을 할당하여 소스 페이로드,제1 및 제2 복구 페이로드를 구분한다.
시퀀스 번호 : 2bytes를 할당하여 6400개의 소스 패킷들에 대해 s ~ s+6399까지 순차적으로 할당하고 32개의 제1 복구 블록에 해당하는 1280개의 복구 패킷들에 대해서는 r1 ~ r1+1279까지 순차적으로 할당하고, 320개의 복구 패킷들로 구성된 제2 복구 블록에 대해서는 r2 ~ r2+319까지 순차적으로 할당한다. 따라서 시퀀스 번호가 Maximum값에 도달하면 즉, FFFFh이면 그 다음 시퀀스 번호는 0000h가 된다.
FEC 구조(Structure) : 2bits 할당하여 11b로 설정하여 제1 FEC 및 제2 FEC 가 둘 다 적용되었음을 나타낸다.
제1 FEC 패킷 블록의 블록 경계 정보(FEC Block 1 Boundary Info) : 2bytes를 할당하여 각 제1 FEC 패킷 블록의 시작 시퀀스 번호를 설정한다. 즉, 첫 번째 제1 FEC 패킷 블록을 위한 패킷들에는 s가, 두 번째 제1 FEC 패킷 블록을 위한 패킷들에는 s+240가, 그리고 서른 두 번째 제1 FEC 패킷 블록을 위한 패킷들에는 s+31*240가 제1 FEC 패킷 블록의 블록 경계 정보로 설정한다.
제2 FEC 패킷 블록의 블록 경계 정보(FEC Block 2 Boundary Info) : 2bytes를 할당하여 각 패킷에 제2 FEC 패킷 블록의 블록 경계 정보를 동일하게 s로 설정한다.
제1 복구 블록의 블록 경계 정보(Repair Block 1 Boundary Info) : 2bytes를 할당하여 각 제1 복구 블록의 시작 시퀀스 번호를 설정한다. 즉, 첫 번째 제1 FEC 패킷 블록을 위한 패킷들에는 r1이, 두 번째 제1 FEC 패킷 블록을 위한 패킷들에는 r1+40이, 그리고 서른 두 번째 제1 FEC 패킷 블록을 위한 패킷들에는 r1+31*40이 제1 복구 블록의 블록 경계 정보로 설정된다.
제2 복구 블록에 대한 블록 경계 정보(Repair Block 2 Boundary Info) : 2bytes를 할당하여 각 패킷에 제2 복구 블록에 대한 블록 경계 정보를 동일하게 r2로 설정한다.
패킷 번호 for 제1 소스 블록(Packet # for Source Block 1) : 이 필드에 2bytes를 할당하여 각 패킷에 200이라고 설정한다.
패킷 번호 for 제1 복구 블록(Packet # for Repair Block 1) : 이 필드에 2bytes를 할당하여 각 패킷에 40이라고 설정한다.
패킷 번호 for 제2 소스 블록(Packet # for Source Block 2) : 이 필드에 2bytes를 할당하여 각 패킷에 7680이라고 설정한다.
패킷 번호 for 제2 복구 블록(Packet # for Repair Block 2) : MMT 전송 패킷의 전송을 위해 각 패킷에서 이 필드에 2bytes를 할당하여 각 패킷에 320이라고 설정한다.
MMT 전송 패킷 헤더 포맷이 상기 <표 3>과 같이 구성될 경우의 각 필드 값들은 다음과 같이 설정된다.
페이로드 타입 : 이 필드에 1 bytes를 할당하여 소스 페이로드들에 대해서는 10h ~ F0h사이의 값을 할당하여 각 소스 페이로드를 구분하고, 제1 복구 페이로드에 대해서는 F1h값을 할당하고, 제2 복구 페이로드에 대해서는 F2h값을 할당하여 소스 페이로드,제1 및 제2 복구 페이로드를 구분한다.
시퀀스 번호 : 이 필드에 2bytes를 할당하여 8000개의 FEC 패킷들에 소스 패킷과 복구 패킷 구분없이 s ~ s+7999까지 순차적으로 할당한다.
FEC 구조(Structure) : 이 필드에 2bits를 할당하여 11b로 설정하여 제1 및 제2 FEC가 모두 적용되었음을 나타낸다.
FEC 블록 경계 정보(FEC Block Boundary Info) : 제2 FEC 패킷 블록의 모든 패킷에 s가 블록 경계 정보로 동일하게 설정된다.
패킷 번호 for 제1 소스 블록(Packet # for Source Block 1) : 이 필드에 2bytes를 할당하여 각 패킷에 200이라고 설정한다.
패킷 번호 for 제1 복구 블록(Packet # for Repair Block 1) : 이 필드에 2bytes를 할당하여 각 패킷에 40이라고 설정한다.
패킷 번호 for 제2 소스 블록(Packet # for Source Block 2) : 이 필드에 2bytes를 할당하여 각 패킷에 7680이라고 설정한다.
패킷 번호 for 제2 복구 블록(Packet # for Repair Block 2) : MMT 전송 패킷의 전송을 위해 각 패킷에서 이 필드에 2bytes를 할당하여 각 패킷에 320이라고 설정한다.
MMT 전송 패킷 헤더 포맷이 상기 <표 3>과 같이 구성될 경우의 각 필드 값들의 다른 설정 방법을 설명하면, 다음과 같다.
페이로드 타입 : 이 필드에 1 bytes를 할당하여 소스 페이로드들에 대해서는 10h ~ F0h사이의 값을 할당하여 각 소스 페이로드를 구분하고 제1 복구 페이로드에 대해서는 F1h값을 할당, 제2 복구 페이로드에 대해서는 F2h값을 할당하여 소스 페이로드,제1 및 제2 복구 페이로드를 구분한다.
시퀀스 번호 : 이 필드에 2bytes를 할당하여 6400개의 소스 패킷들에 대해 s ~ s+6399까지 순차적으로 할당하고 32개의 제1 복구 블록 중 첫 번째 제1 복구 블록을 위한 패킷들에는 s~s+39, 두 번째 제1 복구 블록을 위한 패킷들에는 s+200~s+200+39, 그리고 서른 두 번째 제1 복구 블록을 위한 패킷들에는 s+31*200~s+31*200+39까지 순차적으로 할당하고 320개의 복구 패킷들을 포함하는 제2 복구 블록에 대해서는 s ~ s+319까지 순차적으로 할당한다. 시퀀스 번호가 Maximum값에 도달하면 즉, FFFFh이면 그 다음 시퀀스 번호는 0000h가 된다.
FEC 구조(Structure) : 이 필드에 2bits를 할당하여 11b로 설정하여 제1 및 제2 FEC가 모두 적용되었음을 나타낸다.
FEC 블록 경계 정보(FEC Block Boundary Info) : 제2 FEC 패킷 블록의 모든 패킷에 제2 FEC 패킷 블록의 시작 시퀀스 번호인 s를 블록 경계 정보로 동일하게 설정한다.
패킷 번호 for 제1 소스 블록(Packet # for Source Block 1) : 이 필드에 2bytes를 할당하여 각 패킷에 200이라고 설정한다.
패킷 번호 for 제1 복구 블록(Packet # for Repair Block 1) : 이 필드에 2bytes를 할당하여 각 패킷에 40이라고 설정한다.
패킷 번호 for 제2 소스 블록(Packet # for Source Block 2) : 이 필드에 2bytes를 할당하여 각 패킷에 7680이라고 설정한다.
패킷 번호 for 제2 복구 블록(Packet # for Repair Block 2) : MMT 전송 패킷의 전송을 위해 각 패킷에서 이 필드에 2bytes를 할당하여 각 패킷에 320이라고 설정하여 MMT 전송 패킷을 전송한다.
제1 FEC 또는 제2 FEC 중에서 하나만 적용되는 경우에는 6400개의 소스 페이로드에 FEC encoding 수행을 통해 1600개의 복구 페이로드를 생성하여 8000개의 Payload를 포함하는 FEC 패킷 블록을 생성하고 각각의 Payload에 MMT 전송 패킷 헤더(Transport Packet Header)를 부가하여 FEC 패킷 블록이 전송된다. 여기서 상기 MMT 전송 패킷 헤더 포맷은 예컨대, 상기 <표 5>와 같이 구성될 수 있다. 상기 MMT 전송 패킷 헤더 포맷이 상기 <표 5>와 같이 구성될 경우 각 필드 값들은 아래와 같이 설정될 수 있다.
페이로드 타입 : 이 필드에 1 bytes를 할당하여 소스 페이로드들에 대해서는 10h ~ F0h사이의 값을 할당하여 각 소스 페이로드를 구분하고 복구 페이로드에 대해서는 F1h값을 할당하여 소스 페이로드,복구 페이로드를 구분한다.
시퀀스 번호 : 이 필드에 2bytes를 할당하여 6400개의 소스 패킷들에 대해 s ~ s+6399까지 순차적으로 할당하고 1600개의 Repair 블록들에 대해서는 s~s+1599까지 순차적으로 할당한다. 여기서 시퀀스 번호가 Maximum값에 도달하면 즉, FFFFh이면 그 다음 시퀀스 번호는 0000h가 된다.
FEC 구조(Structure) : 이 필드에 2bits를 할당하여 01b 또는 10b로 설정하여 제1 FEC 및 제2 FEC 가 모두 적용되거나 또는 하나만 적용되었음을 나타낸다.
FEC 블록 경계 정보(FEC Block Boundary Info) : FEC 패킷 블록의 모든 패킷들에 FEC 패킷 블록의 시작 시퀀스 번호인 s를 동일하게 블록 경계 정보로 설정한다.
패킷 번호 for 소스 블록(Packet # for Source Block) : 이 필드에 2bytes를 할당하여 각 Packet에 6400이라고 설정한다.
패킷 번호 for 복구 블록(Packet # for Repair Block) : MMT 전송 패킷의 전송을 위해 각 패킷에서 이 필드에 2bytes를 할당하여 각 패킷에 1600이라고 설정하여 MMT 전송 패킷을 전송한다.
상기한 설명에서는 본 발명의 예시적인 실시 예에 따른 FEC 패킷 헤더 Format의 예로써 MMT 전송 패킷 헤더 포맷을 예로 들었다. 하지만, 본 발명은 여기에 한정되지 않고 MMT D.1 Layer(421)에서 MMT Payload Format을 생성할 때 상기 MMT Payload Format이 헤더와 Payload로 구분되어 질 경우 상기 MMT Payload Format의 헤더가 본 발명의 FEC 패킷 헤더역할을 수행할 수 있다. 이 경우 MMT Payload Format의 Payload는 FEC Encoding 후 FEC Packet Payload가 되는 것이다.
상기한 본 발명의 예시적인 실시 예가 적용된 송신 장치는 정해진 통신 방식에 따라 상기 제1 FEC 패킷 블록 또는 상기 제2 FEC 패킷 블록의 각 패킷을 송신하는 송신부와 상기 제1 및 제2 FEC 부호화를 수행하는 적어도 하나의 부호화부와, 상기 제1 FEC 패킷 블록과 상기 제2 FEC 패킷 블록을 구성하는 각 패킷에 본 발명의 실시 예에 따른 헤어 정보를 부가하는 제어부를 포함하여 구현될 수 있다.
그리고 상기 송신 장치에 대응되는 수신 장치는 정해진 통신 방식에 따라 상기 제1 FEC 패킷 블록 또는 상기 제2 FEC 패킷 블록의 각 패킷을 수신하는 수신부와, 상기 적어도 하나의 부호화부에 적용된 FEC 방식에 따라 제1 및 제2 FEC 복호화를 수행하는 적어도 하나의 복호화부와, 상기 제1 FEC 패킷 블록과 상기 제2 FEC 패킷 블록을 구성하는 각 패킷으로부터 상기 헤더 정보를 추출하여 상기 제1 FEC 패킷 블록과 상기 제2 FEC 패킷 블록의 블록 경계를 결정하고, 소스 패킷이 손실된 경우 해당 복구 패킷을 이용하여 손실된 소스 패킷을 복원하는 동작을 제어하는 제어부를 포함하여 구현될 수 있다.
상기와 같은 본 발명의 예시적인 실시 예에 따른 헤더 정보는 FEC 관련 Signaling 정보로써 일반적으로 해석됨이 바람직하며 FEC 패킷내에서 물리적으로 페이로드의 앞에 배치된다는 것을 한정하지는 않는다.
상기와 같은 본 발명의 예시적인 실시 예에 따른 FEC 패킷 구성 방법 및 전송 방법에 따라 네트워크 상의 여러 전송 경로(Route)를 거쳐 컨텐츠가 전송될 때 패킷의 도달 순서가 변경되거나 패킷 손실이 발생하여도 손실된 패킷을 용이하게 복구할 수 있게 되어 사용자에게 양질의 컨텐츠 및 서비스를 제공할 수 있다.

Claims (20)

  1. 멀티미디어 시스템에서 순방향 에러 정정(FEC) 인코딩을 수행하기 위한 방법으로서,
    FEC 패킷 블록들 각각을 생성하고, 그리고 적어도 하나의 제 1 복구 심볼 블록을 생성하기 위해 소스 심볼 블록들 각각에 대해 제 1 FEC 인코딩을 수행하는 과정; 및
    상기 소스 심볼 블록들 전체와 연관되는 하나의 제 2 복구 심볼 블록을 생성하기 위해, 상기 소스 심볼 블록들에 대해 제 2 FEC 인코딩을 수행하는 과정을 포함하고,
    상기 적어도 하나의 제 1 복구 심볼 블록에 대응하는 적어도 하나의 제 1 복구 패킷은 상기 적어도 하나의 제 1 복구 패킷에 대응하는 FEC 패킷 블록의 경계를 나타내는 정보를 포함하는,
    멀티미디어 시스템에서 FEC 인코딩을 수행하기 위한 방법.
  2. 제 1 항에 있어서,
    상기 적어도 하나의 제 1 복구 패킷은 상기 적어도 하나의 제 1 복구 패킷이 상기 FEC 패킷 블록의 경계와 연관되는지 또는 아닌지 여부를 식별하는 정보를 포함하는,
    멀티미디어 시스템에서 FEC 인코딩을 수행하기 위한 방법.
  3. 멀티미디어 시스템에서 순방향 에러 정정(FEC) 인코딩을 수행하기 위한 장치로서,
    FEC 패킷 블록들 각각을 생성하고, 그리고 적어도 하나의 제 1 복구 심볼 블록을 생성하기 위해 소스 심볼 블록들 각각에 대해 제 1 FEC 인코딩을 수행하도록 구성되는 제 1 인코더; 및
    상기 소스 심볼 블록들 전체와 연관되는 하나의 제 2 복구 심볼 블록을 생성하기 위해, 상기 소스 심볼 블록들에 대해 제 2 FEC 인코딩을 수행하도록 구성되는 제 2 인코더를 포함하고,
    상기 적어도 하나의 제 1 복구 심볼 블록에 대응하는 적어도 하나의 제 1 복구 패킷은 상기 적어도 하나의 제 1 복구 패킷에 대응하는 FEC 패킷 블록의 경계를 나타내는 정보를 포함하는,
    멀티미디어 시스템에서 FEC 인코딩을 수행하기 위한 장치.
  4. 제 3 항에 있어서,
    상기 적어도 하나의 제 1 복구 패킷은 상기 적어도 하나의 제 1 복구 패킷이 상기 FEC 패킷 블록의 경계와 연관되는지 또는 아닌지 여부를 식별하는 정보를 포함하는,
    멀티미디어 시스템에서 FEC 인코딩을 수행하기 위한 장치.
  5. 멀티미디어 시스템에서 순방향 에러 정정(FEC) 디코딩을 수행하기 위한 방법으로서,
    FEC 패킷 블록들, 적어도 하나의 제 1 복구 심볼 블록 및 하나의 제 2 복구 심볼 블록을 수신하는 과정 ― 상기 FEC 패킷 블록들 각각 및 상기 적어도 하나의 제 1 복구 심볼 블록은 소스 심볼 블록들의 각각을 인코딩하는 것에 의해 생성되고, 상기 하나의 제 2 복구 심볼 블록은 상기 소스 심볼 블록들을 인코딩하는 것에 의해 생성되고, 그리고 상기 하나의 제 2 복구 심볼 블록은 상기 소스 심볼 블록들 전체와 연관됨 ― ; 및
    상기 적어도 하나의 제 1 복구 심볼 블록 및 상기 하나의 제 2 복구 심볼 블록에 기초하여 상기 FEC 패킷 블록들을 디코딩하는 과정을 포함하고,
    상기 적어도 하나의 제 1 복구 심볼 블록에 대응하는 적어도 하나의 제 1 복구 패킷은 상기 적어도 하나의 제 1 복구 패킷에 대응하는 FEC 패킷 블록의 경계를 나타내는 정보를 포함하는,
    멀티미디어 시스템에서 FEC 디코딩을 수행하기 위한 방법.
  6. 제 5 항에 있어서,
    상기 적어도 하나의 제 1 복구 패킷은 상기 적어도 하나의 제 1 복구 패킷이 상기 FEC 패킷 블록의 경계와 연관되는지 또는 아닌지 여부를 식별하는 정보를 포함하는,
    멀티미디어 시스템에서 FEC 디코딩을 수행하기 위한 방법.
  7. 제 5 항에 있어서,
    상기 적어도 하나의 제 1 복구 패킷에 대응하는 FEC 패킷 블록은 상기 적어도 하나의 제 1 복구 패킷에 대응하는 FEC 패킷 블록의 경계를 나타내는 정보에 기초하여 디코딩되는,
    멀티미디어 시스템에서 FEC 디코딩을 수행하기 위한 방법.
  8. 멀티미디어 시스템에서 순방향 에러 정정(FEC) 디코딩을 수행하기 위한 장치로서,
    FEC 패킷 블록들, 적어도 하나의 제 1 복구 심볼 블록 및 하나의 제 2 복구 심볼 블록을 수신하도록 구성되는 수신기 ― 상기 FEC 패킷 블록들 각각 및 상기 적어도 하나의 제 1 복구 심볼 블록은 소스 심볼 블록들의 각각을 인코딩하는 것에 의해 생성되고, 상기 하나의 제 2 복구 심볼 블록은 상기 소스 심볼 블록들을 인코딩하는 것에 의해 생성되고, 그리고 상기 하나의 제 2 복구 심볼 블록은 상기 소스 심볼 블록들 전체와 연관됨 ― ; 및
    상기 적어도 하나의 제 1 복구 심볼 블록 및 상기 하나의 제 2 복구 심볼 블록에 기초하여 상기 FEC 패킷 블록들을 디코딩하도록 구성되는 디코더를 포함하고,
    상기 적어도 하나의 제 1 복구 심볼 블록에 대응하는 적어도 하나의 제 1 복구 패킷은 상기 적어도 하나의 제 1 복구 패킷에 대응하는 FEC 패킷 블록의 경계를 나타내는 정보를 포함하는,
    멀티미디어 시스템에서 FEC 디코딩을 수행하기 위한 장치.
  9. 제 8 항에 있어서,
    상기 적어도 하나의 제 1 복구 패킷은 상기 적어도 하나의 제 1 복구 패킷이 상기 FEC 패킷 블록의 경계와 연관되는지 또는 아닌지 여부를 식별하는 정보를 포함하는,
    멀티미디어 시스템에서 FEC 디코딩을 수행하기 위한 장치.
  10. 제 8 항에 있어서,
    상기 적어도 하나의 제 1 복구 패킷에 대응하는 FEC 패킷 블록은 상기 적어도 하나의 제 1 복구 패킷에 대응하는 FEC 패킷 블록의 경계를 나타내는 정보에 기초하여 디코딩되는,
    멀티미디어 시스템에서 FEC 디코딩을 수행하기 위한 장치.
  11. 삭제
  12. 삭제
  13. 삭제
  14. 삭제
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
KR1020120074676A 2011-07-08 2012-07-09 멀티미디어 시스템에서 순방향 오류 정정 패킷을 생성하는 방법과 그 오류 정정 패킷을 송수신하는 방법 및 장치 KR102048452B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20110068098 2011-07-08
KR1020110068098 2011-07-08

Publications (2)

Publication Number Publication Date
KR20130006380A KR20130006380A (ko) 2013-01-16
KR102048452B1 true KR102048452B1 (ko) 2019-12-05

Family

ID=47439405

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120074676A KR102048452B1 (ko) 2011-07-08 2012-07-09 멀티미디어 시스템에서 순방향 오류 정정 패킷을 생성하는 방법과 그 오류 정정 패킷을 송수신하는 방법 및 장치

Country Status (6)

Country Link
US (3) US8769369B2 (ko)
EP (1) EP2730052A4 (ko)
JP (1) JP2014521245A (ko)
KR (1) KR102048452B1 (ko)
CN (2) CN103650432A (ko)
WO (1) WO2013009048A1 (ko)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101961736B1 (ko) * 2012-04-23 2019-03-25 삼성전자 주식회사 통신 시스템에서 패킷 송수신 장치 및 방법
KR20130126876A (ko) * 2012-04-30 2013-11-21 삼성전자주식회사 통신 시스템에서 패킷 송수신 방법 및 장치
KR102127685B1 (ko) * 2013-04-17 2020-06-29 삼성전자주식회사 순방향 오류 정정 패킷 송수신 장치 및 방법
KR102148158B1 (ko) 2013-04-23 2020-08-28 삼성전자주식회사 통신 시스템에서 패킷 송수신 방법 및 장치
JP6530748B2 (ja) * 2013-07-18 2019-06-12 サムスン エレクトロニクス カンパニー リミテッド マルチメディア通信システムにおけるパケット送受信方法
US20150032845A1 (en) 2013-07-26 2015-01-29 Samsung Electronics Co., Ltd. Packet transmission protocol supporting downloading and streaming
US9231732B2 (en) * 2013-10-07 2016-01-05 Texas Instruments Incorporated Packet header protection for utility networks
KR102093731B1 (ko) 2013-10-22 2020-03-26 삼성전자주식회사 오류 정정 부호를 사용하는 통신 시스템에서 패킷 송수신 기법
WO2015105404A1 (ko) * 2014-01-13 2015-07-16 삼성전자 주식회사 통신 시스템에서 패킷 송수신 방법 및 장치
KR20150084632A (ko) 2014-01-13 2015-07-22 삼성전자주식회사 통신 시스템에서 패킷 송수신 방법 및 장치
EP3125455B1 (en) * 2014-03-28 2022-05-04 Samsung Electronics Co., Ltd. Method and apparatus for generating and recovering packet in broadcasting and/or communication system
US9559805B2 (en) * 2014-11-03 2017-01-31 Cisco Technology, Inc. Self-describing error correction of consolidated media content
CN105827361B (zh) * 2015-01-08 2019-02-22 上海交通大学 一种基于媒体内容的fec方法
JP2017038261A (ja) * 2015-08-11 2017-02-16 ソニー株式会社 情報処理装置、情報処理方法およびプログラム
KR102421791B1 (ko) * 2016-05-26 2022-07-15 삼성전자주식회사 Mmt 네트워크 시스템에서 미디어 시간 정보를 전송 하는 방법 및 장치
CN108541358B (zh) * 2016-08-26 2021-08-31 广州方维信息科技有限公司 以太无源光网络通信方法及装置
WO2018086076A1 (zh) * 2016-11-11 2018-05-17 华为技术有限公司 数据传输方法及装置
CN107257265B (zh) * 2017-04-27 2019-09-20 深圳市鹏创软件有限公司 实时传输数据流前向纠错方法、系统、装置及存储介质
WO2019074341A1 (ko) * 2017-10-13 2019-04-18 삼성전자 주식회사 멀티미디어 서비스 시스템에서 방송 서비스를 송수신하는 방법 및 장치
KR102464803B1 (ko) * 2017-10-13 2022-11-09 삼성전자주식회사 응용 계층 순방향 오류 정정 방식을 사용하는 멀티미디어 서비스 제공 방법 및 장치
KR102506507B1 (ko) * 2018-01-19 2023-03-07 삼성전자주식회사 통신 시스템에서 신호를 송/수신하는 장치 및 방법
US11212833B2 (en) * 2018-11-02 2021-12-28 Qualcomm Incorporated Scalable preamble design for random access
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)
WO2021051367A1 (en) * 2019-09-20 2021-03-25 Qualcomm Incorporated Cyclic redundancy check schemes for unequal error protection with forward error corrections
US11705554B2 (en) 2020-10-09 2023-07-18 Sion Power Corporation Electrochemical cells and/or components thereof comprising nitrogen-containing species, and methods of forming them
CN114598628A (zh) * 2020-12-04 2022-06-07 中兴通讯股份有限公司 一种网络检测丢包方法、电子设备及计算机可读存储介质
CN112968754B (zh) * 2021-02-01 2022-03-15 航天国盛科技有限公司 一种基于n+1路e1信道实现数据可靠性传输方法、网络设备及计算机可读存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100535888B1 (ko) * 2002-11-19 2005-12-09 주식회사 휴림인터랙티브 2차원 순방향 에러 정정방법 및 이를 이용한 데이터통신방법
JP2007509557A (ja) 2003-10-23 2007-04-12 トムソン ライセンシング 損失パケットの再構成方法及びその方法を実施する装置
US20070300127A1 (en) 2006-05-10 2007-12-27 Digital Fountain, Inc. Code generator and decoder for communications systems operating using hybrid codes to allow for multiple efficient users of the communications systems
WO2008076125A1 (en) 2006-12-21 2008-06-26 Thomson Licensing A method to support forward error correction for real-time audio and video data over internet protocol networks
JP2011503947A (ja) 2007-11-07 2011-01-27 トムソン ライセンシング Fec符号化及び復号化の方法及び装置

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03254240A (ja) * 1990-03-02 1991-11-13 Nippon Telegr & Teleph Corp <Ntt> セル送受信装置
JP3254240B2 (ja) 1992-03-19 2002-02-04 川崎マイクロエレクトロニクス株式会社 イオンビーム処理方法及び装置
US7155532B2 (en) * 2002-01-04 2006-12-26 Scientific-Atlanta, Inc. Transmitting streams over asynchronous networks
US7085282B2 (en) 2003-07-01 2006-08-01 Thomson Licensing Method and apparatus for providing forward error correction
JP2005210219A (ja) * 2004-01-20 2005-08-04 Sony Corp 送受信システム、送信装置および方法、受信装置および方法、記録媒体、並びにプログラム
JP2005323171A (ja) * 2004-05-10 2005-11-17 Sumitomo Electric Ind Ltd 送信装置、誤り訂正装置、ネットワーク接続装置およびパケット中継方法
US7660245B1 (en) * 2004-09-16 2010-02-09 Qualcomm Incorporated FEC architecture for streaming services including symbol-based operations and packet tagging
US7447978B2 (en) * 2004-11-16 2008-11-04 Nokia Corporation Buffering packets of a media stream
JP4532505B2 (ja) * 2004-12-09 2010-08-25 三菱電機株式会社 データ送信装置、データ受信装置、およびデータ配信システム
CN101686107B (zh) * 2006-02-13 2014-08-13 数字方敦股份有限公司 使用可变fec开销和保护周期的流送和缓冲
JP4356742B2 (ja) * 2006-12-25 2009-11-04 ソニー株式会社 データ通信システム、データ送信装置およびデータ送信方法
US20100263007A1 (en) 2009-04-09 2010-10-14 Jinyun Zhang Method and Apparatus for Increasing Quality of IPTV Transmission
CN101877620B (zh) * 2009-04-30 2013-08-14 华为技术有限公司 前向纠错方法、装置和系统
KR101286912B1 (ko) * 2009-12-18 2013-07-16 한국전자통신연구원 3차원 저장장치를 이용한 가변길이 패킷의 fec 인코딩 및 fec 디코딩 방법
US8473821B2 (en) * 2010-11-09 2013-06-25 Qualcomm, Incorporated Packet-level erasure protection coding in aggregated packet transmissions

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100535888B1 (ko) * 2002-11-19 2005-12-09 주식회사 휴림인터랙티브 2차원 순방향 에러 정정방법 및 이를 이용한 데이터통신방법
JP2007509557A (ja) 2003-10-23 2007-04-12 トムソン ライセンシング 損失パケットの再構成方法及びその方法を実施する装置
US20070300127A1 (en) 2006-05-10 2007-12-27 Digital Fountain, Inc. Code generator and decoder for communications systems operating using hybrid codes to allow for multiple efficient users of the communications systems
WO2008076125A1 (en) 2006-12-21 2008-06-26 Thomson Licensing A method to support forward error correction for real-time audio and video data over internet protocol networks
JP2011503947A (ja) 2007-11-07 2011-01-27 トムソン ライセンシング Fec符号化及び復号化の方法及び装置

Also Published As

Publication number Publication date
US20160344408A1 (en) 2016-11-24
US8769369B2 (en) 2014-07-01
CN103650432A (zh) 2014-03-19
JP2014521245A (ja) 2014-08-25
US9438273B2 (en) 2016-09-06
US20140310579A1 (en) 2014-10-16
US9571124B2 (en) 2017-02-14
WO2013009048A1 (en) 2013-01-17
KR20130006380A (ko) 2013-01-16
CN105610552A (zh) 2016-05-25
US20130013982A1 (en) 2013-01-10
EP2730052A1 (en) 2014-05-14
EP2730052A4 (en) 2015-02-25

Similar Documents

Publication Publication Date Title
KR102048452B1 (ko) 멀티미디어 시스템에서 순방향 오류 정정 패킷을 생성하는 방법과 그 오류 정정 패킷을 송수신하는 방법 및 장치
US20160105259A1 (en) Apparatus and method of transmitting/receiving broadcast data
KR102148158B1 (ko) 통신 시스템에서 패킷 송수신 방법 및 장치
KR102305410B1 (ko) 통신 시스템에서 패킷 송수신 방법 및 장치
US10958376B2 (en) Method and apparatus for transmitting and receiving packet in communication system
KR20130057937A (ko) 통신 시스템에서 패킷 송수신 장치 및 방법
KR20130039866A (ko) 통신 시스템에서 순방향 에러 정정 패킷을 송수신하는 방법 및 장치
KR102251278B1 (ko) 일종 미디어 컨텐츠에 기반한 fec 메커니즘
KR102163338B1 (ko) 방송 및 통신 시스템에서 패킷 송수신 장치 및 방법
EP3125455B1 (en) Method and apparatus for generating and recovering packet in broadcasting and/or communication system
RU2646346C2 (ru) Устройство и способ передачи и приема пакета с прямой коррекцией ошибок
US11368246B2 (en) Method and device for transmitting or receiving broadcast service in multimedia service system
KR20150046700A (ko) 오류 정정 부호를 사용하는 통신 시스템에서 패킷 송수신 기법
CN113783661B (zh) 在通信系统中发送和接收分组的方法和装置
EP3411975B1 (en) Method and system of adaptive application layer fec for mpeg media transport
CN112769523A (zh) 一种基于媒体内容的自适应fec方法及系统

Legal Events

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