JP6511472B2 - ブロードキャスティング及び/又は通信システムにおけるパケットの生成及び復元のための方法及び装置 - Google Patents

ブロードキャスティング及び/又は通信システムにおけるパケットの生成及び復元のための方法及び装置 Download PDF

Info

Publication number
JP6511472B2
JP6511472B2 JP2016559620A JP2016559620A JP6511472B2 JP 6511472 B2 JP6511472 B2 JP 6511472B2 JP 2016559620 A JP2016559620 A JP 2016559620A JP 2016559620 A JP2016559620 A JP 2016559620A JP 6511472 B2 JP6511472 B2 JP 6511472B2
Authority
JP
Japan
Prior art keywords
source
symbol
packet
symbols
fec
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related
Application number
JP2016559620A
Other languages
English (en)
Other versions
JP2017513395A (ja
Inventor
ヤン,ヒョン−ク
ファン,ソン−ヒ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of JP2017513395A publication Critical patent/JP2017513395A/ja
Application granted granted Critical
Publication of JP6511472B2 publication Critical patent/JP6511472B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • 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
    • H03M13/13Linear 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/27Coding, 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 using interleaving techniques
    • H03M13/2703Coding, 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 using interleaving techniques the interleaver involving at least two directions
    • H03M13/2707Simple row-column interleaver, i.e. pure block interleaving
    • 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/63Joint error correction and other techniques
    • H03M13/635Error control coding in combination with rate matching
    • H03M13/6356Error control coding in combination with rate matching by repetition or insertion of dummy data, i.e. rate reduction
    • 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/6508Flexibility, adaptability, parametrability and configurability of the implementation
    • 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/6508Flexibility, adaptability, parametrability and configurability of the implementation
    • H03M13/6516Support of multiple code parameters, e.g. generalized Reed-Solomon decoder for a variety of generator polynomials or Galois fields
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0006Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission format
    • H04L1/0007Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission format by modifying the frame length
    • H04L1/0008Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission format by modifying the frame length by supplementing frame payload, e.g. with padding bits
    • 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
    • H04L1/0042Encoding specially adapted to other signal generation operation, e.g. in order to reduce transmit distortions, jitter, or to improve signal shape
    • 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
    • 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
    • H04L1/0058Block-coded modulation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L2001/0092Error control systems characterised by the topology of the transmission link
    • H04L2001/0093Point-to-multipoint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/20Manipulating the length of blocks of bits, e.g. padding or block truncation

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Probability & Statistics with Applications (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Quality & Reliability (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Error Detection And Correction (AREA)

Description

本発明は、一般的に、ブロードキャスティング及び/又は通信システムにおけるパケットの生成及び復元を行うための技術に関し、より詳細には、エラー訂正符号を使用して損失されたパケットを効率的に復元する装置及び方法に関するものである。
近来の通信システムでは、様々なコンテンツの消費傾向の変化及び高解像度(High Definition:HD)コンテンツ及び超高解像度(Ultra High Definition:UHD)コンテンツのような高容量コンテンツの増加の結果として、通信システムにおけるネットワークを通したデータ輻輳(data Congestion)は、さらに悪化している。結果的に、信号送信装置(例えば、ホストA)により送信されたコンテンツは、信号受信装置(例えば、ホストB)に正常に配信されず、信号送信装置が送信したコンテンツの一部又は全部は、経路上で損失される状況が発生する場合がある。
一般的に、データは、パケット単位で送信されるので、データ損失は、パケットの単位で発生する。したがって、ネットワーク上で送信パケットが損失する場合には、信号受信装置は、損失した送信パケットを受信することができないために、損失した送信パケットが含むデータを認識できない。したがって、オーディオの品質の低下、ビデオの画質の劣化、画面破れ、字幕欠落、ファイルの損失のような様々な理由でユーザの不便をもたらす。
ネットワーク上で損失したデータを復元するために、所定数のパケットを含むソースブロックにフォワードエラー訂正(FEC)方式を使用するFEC符号化により生成されるリペアシンボルを付加する。一般的に、パケット内に送信されるデータ(すなわち、ソースペイロード)のサイズ又は長さは、固定されることもあり、又は可変することもある。すなわち、ソースペイロードは、固定されたパケットサイズを有することもあり、可変パケットサイズを有することもある。例えば、ムービングピクチャーエクスパーツグループ2(MovingPictureExpertsGroup 2:MPEG2)トランスポートストリーム(TransportStream:TS)は、4バイトのヘッダ及び184バイトのペイロードを含む188バイトの固定されたパケットサイズを有する。しかしながら、リアルタイムトランスポートプロトコル(Real-TimeTransportProtocol:以下、‘RTP’と称する)パケットサイズ又はMPEGメディアトランスポート(MPEG MediaTransport:以下、‘MMT'と称する)パケットサイズは、常に固定されていない。
したがって、可変パケットサイズが適用される場合に、信号送信装置は、実際に送信されるパケットのサイズを同一にするためにパディングデータ(paddingdata)をデータに付加することによりソースブロックを生成した後に、生成されたソースブロックに対してFEC符号化動作を実行する。
しかしながら、このように、パディングデータをデータに付加することによりソースブロックを生成した後に、生成されたソースブロックに対してFEC符号化動作を実行する場合において、FECデコーダがFEC復号化中にネットワーク(チャネル)上で損失したパケットを復元するとき、FECデコーダは、ソースブロック(すなわち、パディングデータを含むソースブロック)を復元する。これに関連して、実際の送信パケットを復元するためには、FECデコーダは、パディングデータがデータにパディングされる前のパケットのサイズを正確に検出する必要がある。
本発明の目的は、少なくとも上述した問題点及び/又は不都合に取り組み、少なくとも以下の利便性を提供することにある。すなわち、本発明の目的は、ブロードキャスティング及び/又は通信システムにおけるパケットの生成及び復元のための方法及び装置を提供することにある。
本発明の別の目的は、ブロードキャスティング及び/又は通信システムにおけるデータ復元効率性を増加させるパケットの生成及び復元のための方法及び装置を提供することにある。
本発明のさらに別の目的は、ブロードキャスティング及び/又は通信システムにおける効率的な送信信頼度を取得できるパケットの生成及び復元のための方法及び装置を提供することにある。
本発明のさらにまた別の目的は、ブロードキャスティング及び/又は通信システムにおけるソースパケットが受信されるか否かに関係なく、受信器がソースパケットに対応するソースシンボルをソースブロックで特定できるようにするパケットの生成及び復元のための方法及び装置を提供することにある。
本発明のさらなる別の目的は、ブロードキャスティング及び/又は通信システムにおける復元されたソースブロックの復元されたソースシンボルで損失されたパケットの開始点を検出できるパケットの生成及び復元のための方法及び装置を提供することにある。
本発明のさらなる別の1つの目的は、ブロードキャスティング及び/又は通信システムにおける全体又は一部が復元されたソースブロックの復元されたソースシンボルでパディングデータを除去できるパケットの生成及び復元のための方法及び装置を提供することにある。
本発明のさらにその別の目的は、ブロードキャスティング及び/又は通信システムにおける全体又は一部が復元されたソースブロックの復元されたソースシンボルに含まれたすべてのソースパケットを復元できるパケットの生成及び復元のための方法及び装置を提供することにある。
上記のような目的を達成するために、本発明の実施形態の一態様によれば、ブロードキャスティング及び/又は通信システムにおける送信装置がパケットを生成する方法は、1つ以上のソースパケットを含むソースパケットブロックを使用して1つ以上の同一の長さを有するソースシンボルを含む第1のソースシンボルブロックを生成するステップと、上記第1のソースシンボルブロックにフォワードエラー訂正(FEC)符号化動作を実行するステップと、上記ソースパケットブロックを構成するそれぞれのソースパケットに関する情報を含む第2のソースシンボルブロックを生成するステップと、上記第2のソースシンボルブロックにFEC符号化動作を実行することにより1つ以上のリペアシンボルを含む第2のリペアシンボルブロックを生成するステップとを含む。1つのソースシンボルは、上記第1のソースシンボルブロックにおいて1つ以上のシンボルエレメントを含み、上記第2のソースシンボルブロックは、上記ソースパケットブロックに含まれた少なくとも1つのソースパケットの長さに関する情報を含むことを特徴とする。
本発明の実施形態の他の態様によれば、ブロードキャスティング及び/又は通信システムにおいてパケットを生成する送信装置は、1つ以上のソースパケットを含むソースパケットブロックを使用して1つ以上の同一の長さを有するソースシンボルを含む第1のソースシンボルブロックを生成し、上記第1のソースシンボルブロックにフォワードエラー訂正(FEC)符号化動作を実行する第1のフォワードエラー訂正(FEC)符号化部と、上記ソースパケットブロックを構成するそれぞれのソースパケットに関する情報を含む第2のソースシンボルブロックを生成し、上記第2のソースシンボルブロックにFEC符号化動作を実行することにより1つ以上のリペアシンボルを含む第2のリペアシンボルブロックを生成する第2のFEC符号化部とを含む。1つのソースシンボルは、上記第1のソースシンボルブロックにおいて1つ以上のシンボルエレメントを含み、上記第2のソースシンボルブロックは、上記ソースパケットブロックに含まれた少なくとも1つのソースパケットの長さに関する情報を含むことを特徴とする。
本発明の実施形態のさらに他の態様によれば、ブロードキャスティング及び/又は通信システムにおける受信装置がパケットを復元する方法は、送信装置から受信された信号の復調及び処理を行うことによりパケットを受信するステップと、上記受信されたパケットからフォワードエラー訂正(FEC)コンフィギュレーション情報を取得するステップと、上記FECコンフィギュレーション情報に基づいて第2の受信シンボルブロックを構成するステップと、第2のソースシンボルブロックを復元するステップと、上記第2のソースシンボルブロックの復元に成功したら、第1の受信シンボルブロックを構成するステップと、1つ以上の同一の長さを有するソースシンボルを含む第1のソースシンボルブロックを復元するステップとを含む。上記第1のソースシンボルブロックは、1つ以上のソースパケットを含むソースパケットブロックを使用して上記1つ以上の同一の長さを有するソースシンボルで構成され、1つのソースシンボルは、上記第1のソースシンボルブロックで1つ以上のシンボルエレメントを含み、上記第2のソースシンボルブロックは、上記ソースパケットブロックに含まれた少なくとも1つのソースパケットの長さに関する情報を含むことを特徴とする。
本発明の実施形態のさらなる他の態様によれば、ブロードキャスティング及び/又は通信システムにおいてパケットを復元する受信装置は、送信装置から受信された信号の復調及び処理を行うことによりパケットを受信する受信部と、上記受信されたパケットからフォワードエラー訂正(FEC)コンフィギュレーション情報を取得し、上記FECコンフィギュレーション情報に基づいて第2の受信シンボルブロックを構成し、第2のソースシンボルブロックを復元し、上記第2のソースシンボルブロックの復元に成功したら、第1の受信シンボルブロックを構成し、1つ以上の同一の長さを有するソースシンボルを含む第1のソースシンボルブロックを復元する制御部とを含む。上記第1のソースシンボルブロックは、1つ以上のソースパケットを含むソースパケットブロックを使用して上記1つ以上の同一の長さを有するソースシンボルで構成され、1つのソースシンボルは、上記第1のソースシンボルブロックにおいて1つ以上のシンボルエレメントを含み、上記第2のソースシンボルブロックは、上記ソースパケットブロックに含まれた少なくとも1つのソースパケットの長さに関する情報を含むことを特徴とする。
本発明の実施形態によると、ブロードキャスティング/通信システムにおけるパケットを効率的に送受信する装置及び方法を提供でき、ブロードキャスティング/通信システムにおいて効率的にエラーを訂正できる。
本発明の一実施形態による上位レイヤエラー訂正符号を使用する送信器及び受信器の構成を示すブロック図である。 本発明の一実施形態によるMPEGメディアトランスポート(MMT)システムのアプリケーションレイヤーフォワードエラー訂正(AL−FEC)アーキテクチャーを概略的に示す図である。 本発明の一実施形態によるソースパケットブロックを示す図である。 本発明の一実施形態による第1のソースシンボルブロックの構成例を示す図である。 本発明の一実施形態による第2のソースシンボルブロックの構成例を示す図である。 本発明の一実施形態による第1のパケット配列方式により構成されたソースパケットブロックの例を示す図である。 本発明の一実施形態による第2のパケット配列方式により構成されたソースパケットブロックの例を示す図である。 本発明の一実施形態による第1のパケット配列方式を使用する場合のリペアFECペイロード識別子(ID)の例を示す図である。 本発明の一実施形態による第1のパケット配列方式を使用する場合のリペアFECペイロードIDの例を示す図である。 本発明の一実施形態によるFEC復号化ブロックの動作を示すフローチャートである。 本発明の一実施形態によるFEC符号化ブロックの動作を示すフローチャートである。
以下、本発明を実施するための形態を、図面を参照しながら詳細に説明する。下記の説明において、明瞭性と簡潔性の観点から、本発明に関連した公知の機能や構成に関する具体的な説明が本発明の要旨を不明瞭にすると判断される場合には、その詳細な説明を省略する。また、後述する用語は、本発明の機能を考慮して定義されたものであって、ユーザ、運用者の意図、又は慣例によって変わり得る。したがって、上記用語は、本明細書の全体内容に基づいて定義されなければならない。
本発明を説明するにあたり、通信システムは、例えば、ムービングピクチャーエクスパーツグループ−H(Motion Picture Experts Group:MPEG−H)パーツ1メディアトランスポート(MPEG Media Transport:MMT)システムであると仮定し、MMTシステムだけでなく、進化したパケットシステム(EvolvedPacketSystem:EPS)と、ロングタームエボリューション(Long Term Evolution:LTE)移動通信システムと、ロングタームエボリューション−アドバンスド(Long Term Evolution-Advanced:LTE−A)移動通信システムと、米国電気電子技術者協会(Institute of Electrical and Electronics Engineers:IEEE)802.16m通信システムなどのような通信システムに適用可能であることは明確に理解できる。
本発明の実施形態は、ネットワークを通して高解像度(HighDefinition:HD)コンテンツ及び超高解像度(UltraHighDefinition:UHD)コンテンツのような高容量コンテンツだけでなく、映像会議/通話などのような様々なマルチメディアサービスを提供できる携帯電話、テレビジョン(TV)、コンピュータ、電子掲示板、タブレット、及び電子ブックなどのようなすべての電子デバイスでデータパケットの損失を効率的に復旧するパケットの生成及び復元のための装置及び方法を提案する。
本発明の実施形態では、具体的なFEC符号化方式について説明していないが、FEC符号化方式は、リード−ソロモン(Reed-Solomon:RS)符号、低密度パリティ検査(LowDensityParityCheck:LDPC)符号、ターボ符号、ラプター(Raptor)符号、排他的論理和(eXclusiveOR:XOR)、Pro−MPEG(MovingPictureExpertsGroup)FEC符号のような特定のFEC符号化方式に限定されないことに留意すべきである。
本発明の実施形態及び実施形態を説明するために使用される用語は、ネットワーク上で損失したパケットをリペアシンボルを使用して復元するという仮定に基づく。しかしながら、ネットワーク上で損失したパケットだけでなく、送信経路上でエラーが発生したパケットのエラー訂正及び損失したパケットとエラーが発生したパケットとが混在した状況でも本発明が適用されることができることに留意する。
一方、1つ以上のソースパケットを含むソースパケットブロックのFEC符号化を通してリペアパケットを生成する動作は、次のように実行される。同一の長さを有するソースシンボルを含むソースシンボルブロックは、所定の規則でソースパケットブロックから構成される。リペアシンボルを含むリペアシンボルブロックは、入力として使用されるソースシンボルブロックのFEC符号化により生成され、生成されたリペアシンボルは、送信のためにFECリペアパケットに変換された後に送信される。通常、ソースシンボル及びリペアシンボルは、同一の長さを有する。
上述したように、ソースシンボルは同一の長さを有する一方、ソースパケットはその長さが可変であってもよい。したがって、1つのソースパケットを、ソースパケットの長さに従って複数のソースシンボルに割り当てることができ、パディングデータは、ソースシンボルの長さを保持するために必要である。したがって、復元されたソースシンボルブロックを使用して損失したソースパケットを復元するためには、受信器は、損失したソースパケットを形成するソースシンボルを特定し、パディングデータを除去しなければならない。
以下では、本発明の様々な実施形態を説明するために使用される用語及び定義について整理する。
− FEC符号:エラーシンボル又は削除シンボルを訂正するために使用されるエラー訂正符号であり、符号化されたデータフローがデータ損失に対して回復性を有するようにする符号化データのためのアルゴリズム
− ソースシンボル:FEC符号化過程で使用されるデータのユニット。
− リペアシンボル:ソースシンボルでない符号化シンボル。
− ソースパケット:FEC符号化方式により保護されるパケット。
− ソースパケットブロック:単一のブロックとして保護されるFECソースフローのソースパケットのセグメントされた集合。
− ソースシンボルブロック:単一のソースパケットブロックから生成されるソースシンボルの集合
− リペアシンボルブロック:損失したソースシンボルを復元するために使用され得るリペアシンボルの集合。
− 符号化シンボルブロック:ソースシンボルブロックの符号化過程で生成される符号化シンボルの集合。
− 符号化シンボル:符号化過程により生成されるデータのユニット。ここで、ソースシンボルは、符号化シンボルの一部であり得る。
− FECリペアパケット:リペアシンボルブロックの1つ又はそれ以上のリペアシンボルを配信するためにリペアFECペイロード識別子(ID)を有するパケット。
− FECリペアパケットブロック:リペアシンボルブロックを配信するためのFECリペアパケットの集合。
− FECペイロードID:FEC方式に従ってパケットのコンテンツを識別するためのID。
− リペアFECペイロードID:エラー訂正リペアパケットと共に使用するためのエラー訂正ペイロードID。
− MMT(MPEGメディアトランスポート):MPEGデータを効率的に配信するために設計された国際標準。
− FECソースフロー:MMT FEC方式の一例により保護されるソースパケットのフロー。
− FEC方式:FEC符号を使用するために要求される追加のプロトコルアスペクトを定義する規格。
− FECリペアフロー:ソースフローを保護するリペアシンボルを運搬するデータフロー。
− FEC符号化されたフロー:FECソースフロー及び1つ又はそれ以上の関連FECリペアフローで構成されたフローの論理的な集合。
− アセット:同一のアセットIDを有する1つ又はそれ以上のメディア処理単位(MPU)で構成された同一のトランスポート特性を有するデータを含むデータエンティティ。
− メディア処理単位(MPU):メディアコーデックに依存しない(agnostic)、独立して復号可能な同期型データ又は非同期型データのための一般コンテナ(genericcontainer)。
− パッケージ:1つ以上のアセット及びそれらに関連したアセット配信特性及びコンフィギュレーション情報で構成されたデータの論理的なコレクション。
− MMTパケット:MMTプロトコルにより生成されるか又は消費されるデータのフォーマット化されたユニット。
− MMTペイロード:MMTプロトコル又はインターネットアプリケーションレイヤートランスポートプロトコルを使用してパッケージ及び/又はシグナリングメッセージを運搬するデータのフォーマット化されたユニット。
− MMTプロトコル:インターネットプロトコル(IP)ネットワークを通してMMTペイロードを配信するためのアプリケーションレイヤートランスポートプロトコル。
図1を参照して、本発明の一実施形態による通信システムの構成について説明する。
図1は、本発明の一実施形態による上位レイヤエラー訂正符号を使用する送信器及び受信器の構成を示すブロック図である。
図1を参照すると、送信器100は、FEC上位プロトコルに対応するプロトコルAブロック101、FEC符号化ブロック102、FEC下位プロトコルに対応するプロトコルBブロック103、及び送信器物理レイヤーブロック104を含む。
プロトコルAブロック101から出力される送信パケットは、ソースパケット130に変換され、ソースパケット130は、FEC符号化ブロック102に伝達される。一般的に、ソースパケットは、送信パケットとは異なる形式を有することもあるが、図1では、送信パケットとソースパケットとが同一の形式を有すると仮定する。
FEC符号化ブロック102は、ソースパケットのコレクションであるソースパケットブロックを構成し、FEC符号化を通してリペアシンボルを生成し、1つ以上のリペアシンボルを含むリペアペイロード131にリペアエラー訂正ペイロードID132を付加し、リペアエラー訂正ペイロードID132を有するリペアペイロード131をプロトコルBブロック103に提供する。このとき、リペアFECペイロードIDと結合されたリペアペイロードは、FECリペアパケットと呼ばれる。リペアFECペイロードIDは、ソースパケットブロックに含まれるソースパケットの長さに関する情報を含む。
図1において、FEC符号化ブロック102は、プロトコルAブロック101とプロトコルBブロック103との間に介在されるが、一部の実施形態では、プロトコルAブロック101がFEC符号化ブロック102を含むこともある。この場合に、FECリペアパケットは、プロトコルAブロック101の機能を実行するためのプロトコルヘッダを含み得る。FEC符号化ブロック102を含むプロトコルAブロック101は、ソースパケット及びFECリペアパケットを1つのパケットフローに多重化するマルチプレクサを含み得る。
より具体的に、FEC符号化ブロック102は、第1のFEC符号化部及び第2のFEC符号化部を含む。
第1のFEC符号化部は、1つ以上のソースパケットを含むソースパケットブロックを使用して1つ以上の同一の長さを有するソースシンボルを含む第1のソースシンボルブロックを生成し、第1のソースシンボルブロックにFEC符号化動作を実行する。
第2のFEC符号化部は、ソースパケットブロックに含まれるそれぞれのソースパケットに関する情報を含む第2のソースシンボルブロックを生成し、第2のソースシンボルブロックにFEC符号化動作を実行することにより1つ以上のリペアシンボルを含む第2のリペアシンボルブロックを生成する。ここで、第1のソースシンボルブロック内の1つのソースシンボルは、1つ以上のシンボルエレメントを含み、第2のソースシンボルブロックは、ソースパケットブロックに含まれる少なくとも1つのソースパケットの長さに関する情報を含む。
送信器物理レイヤーブロック104は、ソースパケット及び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に伝達する。本発明がMMTシステムに適用される場合には、ソースパケットは、MMTパケットであり、FECリペアパケットは、リペアFECペイロードIDとリペアシンボルとを含むMMTパケットである。
FEC復号化ブロック113(又は制御部)は、送信器から受信されたパケットからFECコンフィギュレーション情報を取得し、FECコンフィギュレーション情報に基づいて第2の受信シンボルブロックを構成し、第2のソースシンボルブロックを復元し、第2のソースシンボルブロックの復元に成功したら、第1の受信シンボルブロックを構成し、1つ以上の同一の長さを有するソースシンボルを含む第1のソースシンボルブロックを復元する。第1のソースシンボルブロックは、1つ以上のソースパケットを含むソースパケットブロックを使用して1つ以上の同一の長さを有するソースシンボルを含み、第1のソースシンボルブロック内の1つのソースシンボルは、1つ以上のシンボルエレメントを含む。第2のソースシンボルブロックは、ソースパケットブロックに含まれた少なくとも1つのソースパケットの長さに関する情報を含み得る。
図2は、本発明の一実施形態によるMMTシステムにおけるアプリケーションレイヤーフォワードエラー訂正(AL−FEC)アーキテクチャーを概略的に示す図である。
MMTアプリケーション210は、AL−FEC保護で送信されるMMTアセットを決定し、決定されたMMTアセットをMMTプロトコル220に提供する。また、MMTアプリケーション210は、AL−FEC関連コンフィギュレーション情報(すなわち、FECコンフィギュレーション情報)をMMT FEC方式230に提供する。
MMTプロトコル220は、受信されたアセットをMMTペイロード(MMTPs)にパケット化し、MMTパケットヘッダをMMPTsに付加することによりソースパケットを生成し、所定数のソースパケットを有するソースパケットブロックをMMT FEC方式230に提供する。本発明の一実施形態において、ソースパケットは、後述するFECリペアパケットと多重化され、ユーザデータグラムプロトコル(UserDatagramProtocol:UDP)のようなトランスポートレイヤー250を通してIP260に送信され得る。
MMT FEC方式230は、与えられたソースシンボルブロック生成方式でMMTアプリケーション210から受信されたFECコンフィギュレーション情報に基づいて受信されたそれぞれのソースパケットブロックから第1のソースシンボルブロック及び第2のソースシンボルブロックを生成する。このとき、本発明の実施形態によるソースシンボルブロック生成方式は、FECコンフィギュレーション情報で示される。MMT FEC方式230は、FECコンフィギュレーション情報が本発明の実施形態によるソースシンボルブロック生成方式を示す場合に、本発明の実施形態によるソースシンボルブロックを生成する。
FECコンフィギュレーション情報は、個別のフォーマットを有するMMTパケット又は個別のプロトコルで受信器に送信されてもよい。
第1のソースシンボルブロック及び第2のソースシンボルブロックを生成した後に、MMT FEC方式230は、第1のソースシンボルブロック及び第2のソースシンボルブロックをFEC符号240に提供する。FEC符号240は、第1のソースシンボルブロック及び第2のソースシンボルブロックから第1のリペアシンボルブロック及び第2のリペアシンボルブロックをそれぞれ生成し、第1のリペアシンボルブロック及び第2のリペアシンボルブロックをMMT FEC方式230に提供する。MMT FEC方式230は、FEC符号240から受信されたリペアシンボルとともにリペアFECペイロードIDを生成してMMTプロトコル220に提供する。このとき、第2のリペアシンボルブロックに含まれるリペアシンボルは、ソースパケットブロックに含まれるソースパケットの長さに関する情報を復元するために使用される情報を含む。情報は、リペアFECペイロードIDの一部として含まれるか又は個別の構成要素として構成され、MMTプロトコル220に提供されてもよい。
MMTプロトコル220は、受信された第1のリペアシンボルブロックに含まれるリペアシンボルにリペアFECペイロードIDを付加し、MMTペイロードヘッダ及びMMTパケットヘッダをさらに付加することによりFECリペアパケットを生成した後に、FECリペアパケットをUDPのようなトランスポートレイヤー250を通してIP260に送信する。本発明の実施形態において、FECパケット生成過程の間に付加されたデータユニットは、部分的に統合された形態で付加され得る。例えば、第2のリペアシンボルブロックのリペアシンボルがリペアFECペイロードIDの一部として含まれる場合に、第2のリペアシンボルに含まれる複数のシンボルブロックを付加する動作は、省略されてもよい。他の例において、MMTペイロードヘッダも省略されてもよい。
説明の便宜上、ソースパケットブロック単位でFECソースパケット及びFECリペアパケットが生成され送信されることを説明したが、実際のネットワーク環境では、MMTプロトコル220が生成されたソースパケットをMMT FEC方式230に提供すると同時にトランスポートレイヤー250に出力し、MMT FEC方式230は、ソースパケットをその内部メモリに記憶させ、ソースパケットブロックの最後のソースパケットを受信した瞬間に、ソースパケットブロックから第1のソースシンボルブロック及び第2のソースシンボルブロックを生成し、その結果、FEC符号240が第1のリペアシンボルブロック及び第2のリペアシンボルブロックを生成するようにし、生成されたリペアシンボルブロックに含まれるリペアシンボルをFECリペアペイロードIDとともにMMTプロトコル220に提供することにより、FECリペアパケットを生成した後に送信することが好ましい。
本発明の一実施形態による通信システムは、ソースパケットを他のソースパケットと区別するための情報をソースパケットのヘッダに含ませる。例えば、MMTパケットヘッダは、次のような3つのフィールドを含み得る。
packet_id(16ビット)−このフィールドは、1つのアセットを他のものと識別するために使用することができる整数値である。このフィールドの値は、パケットが属しているアセットのasset_idから導出される。packet_idとasset_idとのマッピングは、シグナリングメッセージの一部分であるMMTパッケージテーブルによりシグナリングされる。個別の値は、シグナリングメッセージ及びFECリペアフローに割り当てられる。packet_idは、配信セッションのライフタイムを通して固有であり、同一のMMT送信部により配信されるすべてのMMTフローに対して固有である。AL−FECの場合に、packet_idとFECリペアフローとの間のマッピングは、AL−FECメッセージで提供される。
packet_sequence_number(32ビット):同一のpacket_idを有するパケットを識別するために使用する整数値。このフィールドの値は、任意の値から開始され、受信された各MMTPパケットに対して1だけ増加する。最大値に到達した後に‘0’に戻る。
packet_counter(32ビット):MMTPパケットをカウントするための整数値。そのpacket_id値に関係なくMMTPパケットが送信される場合に1だけ増加する。このフィールドは、任意の値から開始され、最大値に到達した後に‘0’に戻る。
FEC方式は、後述するソースシンボル生成方式を含む複数のソースシンボル生成方式のうちの1つを選択し、選択されたソースシンボル生成方式に従って第1のソースシンボルブロックを構成し、第1のソースシンボルブロックのFEC符号化を実行する。このとき、FECコンフィギュレーション情報及びFECペイロードIDは、使用されたソースシンボル生成方式を示す情報及びリペアシンボルの長さに関する情報を含む使用されたソースシンボル生成方式を受信器で実行するために必要とされる情報を含む。
図3は、本発明の一実施形態によるソースパケットブロックを示す図である。図3を参照すると、ソースパケットブロック310は、可変長を有するソースパケット320を含み、ソースパケット320のそれぞれは、パケットグループ化のためのpacket_idフィールド321と、同一のグループに属する(同一のpacket_idを有する)パケットを識別するためのpacket_sequence_numberフィールド322と、packet_idに関係なくパケットを識別するためのpacket_counterフィールド323とを含む。ソースパケット320は、上述した3つのフィールドに加えて、他の送信関連機能を実行するためのフィールドをMMTパケットヘッダ内にさらに有するが、これは、本発明の要旨とは関連ないので、その詳細な説明を省略する。3つのフィールドのうちで、packet_idフィールド321とpacket_sequence_numberフィールド322だけでもパケットの識別が可能である。また、packet_counterフィールド323だけでもパケットを特定できるので、3つのフィールドのすべては、常に必要とされるのではない。
本発明の実施形態によると、図3に示すソースパケットブロック310内でソースパケット320の順序は、上述した3つのフィールドの値を使用して決定される。説明の便宜のために、ソースパケットブロック内のソースパケットの順序を決定する方法については後述する。
本発明の一実施形態によると、第1のソースシンボルブロックは、下記の方法で構成される。
ソースシンボルの長さがTである場合に、第1のソースシンボルブロックは、T/mのサイズを有するm個の領域に分割された2次元配列として見なされる。ここで、mは、シンボルエレメントの個数を示す。Tがmの倍数でない場合には、各領域は、[T/m]+1の長さを有する領域と[T/m]の長さを有する領域とに分割される。その後に、必要な場合に、与えられたソースパケットは、付加情報が加えられた後に、各ソースパケットがシンボルサイズを超過しない方法で2次元アレイ内に順次に配列される。他の実施形態において、mが与えられる場合に、Tは、mの倍数であるように定義される。
各ソースパケットは、常にm個の領域が開始される行で列方向に配列され始めなければならず、付加情報が加えられた任意のソースパケットが配列される最後の行で対応するソースパケットの最後のデータが割り当てられている領域内の残りの部分には、常に0のような所定の値が割り当てられる。
システムの要求に従って配列されたソースパケットの間にT/mバイト以上のゼロパディングが適用される場合もあり得る。しかしながら、通常、ゼロパディング比率を最小化するために、最大ゼロパディングの長さは、T/mより小さく設定される。したがって、付加情報が加えられた1つのソースパケットが配列された後に配列されるソースパケットは、通常、ソースパケットが配列される最後の行に最後のデータが割り当てられている領域の次の領域の開始点から配列されてもよい。最後のデータが最後のm番目の領域に割り当てられている場合には、次のソースパケットは、次の行の1番目の領域で開始される。
図4は、T=8であり、m=2に設定された場合に、長さがそれぞれ13、6、10、及び14である4つのソースパケットを使用して第1のソースシンボルブロック400を構成する例を示す図である。
図4において、第1のソースシンボルブロックのそれぞれのエントリーB[i,j]は、バイト単位データ、特に、(i+1)番目のソースパケットの(j+1)番目のバイトを示す。
第1のソースシンボルブロック400において、各は、1つのソースシンボルに対応する。分割されたそれぞれの領域で各ソースシンボルをT/mで細分化することによりシンボルエレメントが定義される場合には、第1のソースシンボルブロックの各ソースシンボルは、長さが4である2つのシンボルエレメントを含む。すなわち、第1のソースシンボルブロック400は、7個のソースシンボル、言い換えれば、14個のシンボルエレメントを含む。
K’個のソースパケットを有するソースパケットブロックに上述した第1のソースシンボルブロック構成方法を適用して、K個のソースシンボルを有する第1のソースシンボルブロックを構成すると仮定する。また、ソースパケットの最大長さが65535(216−1)バイトであると仮定する。KがK’と同一であるか又は大きい場合には、すなわち、第1のソースシンボルブロックを構成するソースシンボルの個数がソースパケットブロックを構成するソースパケットの個数と同一であるか又は大きい場合に、本発明の一実施形態による第2のソースシンボルブロック構成方法は、以下のようになる。第2のソースシンボルブロックは、2バイトの長さをそれぞれ有するK個のソースシンボルを含む。1番目のソースシンボルからK番目のソースシンボルのそれぞれは、対応する順序のソースパケットの長さをその値として有し、K番目のソースシンボルの後ろのソースシンボルのそれぞれは、0の値を有する。
図5は、長さがそれぞれ13、6、10、及び14である4つのソースパケットを使用して図4に示す第1のソースシンボルブロック400を構成する場合の第2のソースシンボルブロックの例を示す図である。
上述した方法を通して生成された第2のソースシンボルブロックは、第1のソースシンボルブロックに含まれるシンボルの個数と同数のシンボルを含む。しかしながら、第2のソースシンボルブロックは、所定の値(0)を有するソースシンボルを含み、これは、FEC符号の符号化率を減少させる。したがって、同一のFEC符号が使用される場合には、第2のソースシンボルブロックは、第1のソースシンボルブロックに比べてネットワークで発生するパケット損失に強い特性を有する。
本発明の実施形態において、送信器は、第1のソースシンボルブロックにFEC符号化を適用することにより第1のリペアシンボルブロックを生成し、第2のソースシンボルブロックにFEC符号化を適用することにより第2のリペアシンボルブロックを生成し、第1のリペアシンボルブロックの少なくとも1つのリペアシンボル及び第2のリペアシンボルブロックの少なくとも1つのリペアシンボルを含むFECリペアパケットをソースパケットとともに送信する。また、FECリペアパケットは、リペアFECペイロードIDを含む。
リペアFECペイロードIDは、ソースパケットをソースパケットブロックに配列する順序により変わってもよい。本発明の実施形態において、予め約束された1つ以上のパケット配列方式のうちの1つを用いてパケットが配列され、使用されたパケット配列方式は、FECコンフィギュレーション情報を通して受信器に示される。
本発明の実施形態によると、第1のパケット配列方式は、次のように行われる。第1のパケット配列方式において、ソースパケットは、packet_idフィールド321及びpacket_sequence_numberフィールド322を用いて配列される。より具体的には、同一のpacket_id値を有するソースパケットは、packet_sequence_number値が増加する順に配列され、packet_id値の順序は、FECコンフィギュレーション情報を通して受信器に示される。
図6は、上述した第1のパケット配列方式に従って配列されたソースパケットブロック600の例を示す図である。
図6を参照すると、ソースパケットブロック600は、7個のソースパケット610を含み、各ソースパケット610は、packet_idフィールド611及びpacket_sequence_numberフィールド612をヘッダに含ませる。
本発明の実施形態による第2のパケット配列方式において、ソースパケットは、packet_counterフィールド323に基づいて配列される。より具体的には、ソースパケットは、packet_idフィールドに無関係にpacket_counterフィールドの値が増加する順に配列される。
図7は、上述した第2のパケット配列方式で配列されたソースパケットブロック700の例を示す図である。図7を参照すると、ソースパケットブロック700は、7個のソースパケット710を含み、それぞれのソースパケットは、packet_idフィールド711、packet_sequence_numberフィールド712、及びpacket_counterフィールド713をヘッダに含ませる。
ソースパケットブロック700のソースパケットは、packet_idフィールド711に無関係にpacket_counterフィールド713の値が増加する順に配列される。
図8は、第1のパケット配列方式で使用されるリペアFECペイロードIDの例を示す図である。
図8を参照すると、FECソースフローがN個のpacket_idを有するソースパケットで構成される場合に、SP_start_seq_nr[i]801は、i番目のpacket_idを有するソースパケットのうちでソースパケットブロックに配列される1番目のソースパケットのpacket_sequence_numberと同一の値を有し、SPB_length[i]802は、ソースパケットブロックに含まれたi番目のpacket_idを有するソースパケットの個数を示す。SSB_lengthフィールド803は、ソースパケットブロックに対応する第1のソースシンボルブロックのシンボルの個数を示す値を有し、RSB_lengthフィールド804は、第1のソースシンボルブロックを保護する第1のリペアシンボルブロックに含まれたリペアシンボルの個数を示す。RS_IDフィールド805は、リペアFEC IDを含むFECリペアパケットに含まれたリペアシンボルのIDを提供し、RS_LP(長さ保護のためのリペアシンボル)フィールド806は、第2のリペアシンボルブロックに属するリペアシンボルのうちでRS_IDフィールド805を使用して特定され得るリペアシンボルである。
図9は、第2のパケット配列方式で使用されたリペアFECペイロードIDの例を示す図である。
図9において、SP_start_counterフィールド901は、ソースパケットブロックのソースパケットのうちで、ソースパケットブロックに配列された1番目のソースパケットのpacket_count値と同一の値を有し、SPB_lengthフィールド902は、ソースパケットブロックに含まれたソースパケットの個数を示す。SSB_lengthフィールド903は、ソースパケットブロックに対応する第1のソースシンボルブロックのシンボルの個数を示し、RSB_lengthフィールド904は、第1のソースシンボルブロックを保護する第1のリペアシンボルブロックに含まれたリペアシンボルの個数を示す。RS_IDフィールド905は、リペアFEC IDを有するFECリペアパケットに含まれたリペアシンボルのIDを提供し、RS_LP(長さ保護のためのリペアシンボル)フィールド906は、第2のリペアシンボルブロックに属するリペアシンボルのうちでRS_IDフィールド905を使用して特定され得るリペアシンボルである。
図8及び図9に示す実施形態において、それぞれのフィールドが固定された長さを有するとしても、リペアFECペイロードIDは、送信効率の増大のためにフィールドが可変長を有するように再構成され、これは、明白に本発明の範囲内にある。また、図8及び図9に示す実施形態において、リペアFECペイロードIDは、RS_LPフィールド806及び906に第2のリペアシンボルブロックに属するリペアシンボルのうちの1つのリペアシンボルを含ませるものと説明されたが、リペアFECペイロードIDを有するリペアFECパケットが第1のリペアシンボルブロックのM個のリペアシンボルを伝達する場合には、M個のRS_IDフィールドが存在する。このとき、Mは、FECコンフィギュレーション情報を通して受信器に示される。
また、図8及び図9に示す実施形態において、第2のリペアシンボルブロックのリペアシンボルがリペアFECペイロードIDの一部として説明されたが、全FECリペアパケットの構造に関連して第2のリペアシンボルブロックのリペアシンボルが独立した構成要素として取り扱われることができることは自明である。
上述した実施形態は、同一のFEC符号が第1のソースシンボルブロック及び第2のソースシンボルブロックの符号化のときに使用されるという仮定に基づく。しかしながら、実施形態によっては、異なるFEC符号を、第1のソースシンボルブロック及び第2のソースシンボルブロックの符号化のときに使用してもよい。このとき、FECコンフィギュレーション情報は、2個のFEC符号に関する情報をすべて含まなければならず、FECコンフィギュレーション情報の実施に従い異なるフォーマットを有する。
図10は、本発明の一実施形態によるFEC復号化ブロック113の動作を示すフローチャートである。
FEC復号化ブロック113(又は、制御部)は、ステップ1010において、FECコンフィギュレーション情報、受信されたソースパケット、及び受信されたFECリペアパケットを使用して復号化を開始する。まず、FEC復号化ブロック113(又は、制御部)は、ステップ1020において、FECリペアパケットからリペアFECペイロードIDを抽出し、ステップ1030において、抽出されたリペアFECペイロードID及び受信されたソースパケットの長さに関する情報を使用して第2の受信シンボルブロックを構成する。FEC復号化ブロック113(又は、制御部)は、ステップ1040において、第2の受信シンボルブロックにFEC復号化を実行することにより第2のソースシンボルブロックの復元を試みる。その後に、FEC復号化ブロック113(又は、制御部)は、ステップ1050において、第2のソースシンボルブロックが完全に復元されたか否かを判定する。第2のソースシンボルブロックが完全に復元された場合には、FEC復号化ブロック113(又は、制御部)は、損失したソースパケットを含むすべてのソースパケットの長さが分かる。したがって、FEC復号化ブロック113(又は、制御部)は、ステップ1060において、第1の受信シンボルブロックを構成する。ステップ1070において、FEC復号化ブロック113(又は、制御部)は、第1の受信シンボルブロックを使用してFEC符号の復号化を試みた後に、符号化ブロックの復元された部分から損失したソースパケットを抽出する。その後に、FEC復号化ブロック113(又は、制御部)は、ステップ1080において、受信されたソースパケットとともに復元されたソースパケットを上位レイヤーに送信し、手順を終了する。他方、第2のソースシンボルブロックが完全には復元されなかった場合には、FEC復号化ブロック113(又は、制御部)は、ステップ1080において、損失されたソースパケットの長さが分かるので、第1の受信シンボルブロックを構成せず、受信されたソースパケットだけを上位レイヤーに送信し、処理を終了する。
図11は、本発明の一実施形態によるFEC符号化ブロック102の動作を示すフローチャートである。
FEC符号化ブロック102(又は、制御部)は、ステップ1101において、1つ以上のソースパケットを含むソースパケットブロックを使用して1つ以上の同一の長さを有するソースシンボルを有する第1のソースシンボルブロックを構成する。1つのソースシンボルは、第1のソースシンボルブロックで1つ以上のシンボルエレメントを含む。
FEC符号化ブロック112(又は、制御部)は、ステップ1103において、第1のソースシンボルブロックに対して予め設定されているFEC方式に対応する第1のFEC符号化動作を実行する。
FEC符号化ブロック112(又は、制御部)は、ステップ1105において、ソースパケットブロックのそれぞれのソースパケットの長さに関する情報を含む第2のソースシンボルブロックを構成する。第2のソースシンボルブロックは、図5に示したソースシンボルを意味し、パディングシンボルを含み得る。
FEC符号化ブロック112(又は、制御部)は、ステップ1107において、第2のソースシンボルブロックに対して予め設定されているFEC方式に対応する第2のFEC符号化動作を実行する。
以上、本発明を具体的な実施形態を参照して詳細に説明してきたが、本発明の範囲及び趣旨を逸脱することなく様々な変更が可能であるということは、当業者には明らかであり、本発明の範囲は、上述の実施形態に限定されるべきではなく、特許請求の範囲の記載及びこれと均等なものの範囲内で定められるべきである。
このとき、フローチャートのブロック及びフローチャートの組み合せは、コンピュータプログラム指示により示され実行されることを当該技術分野では容易に理解できる。これらのコンピュータプログラム指示は、汎用コンピュータ、特定の用途のコンピュータ、又はプログラム可能なデータ処理装置のプロセッサに格納できるので、コンピュータ又はプログラム可能なデータ処理装置のプロセッサを通して実行されるその指示がフローチャートで説明された機能を実行する手段を生成する。これらのコンピュータプログラム指示は、特定の方式で機能を実現するためにコンピュータ又はプログラム可能なデータ処理装置を指向できるコンピュータにて使用可能な又はコンピュータにて読み取り可能なメモリに記憶できるので、そのコンピュータにて使用可能な又はコンピュータにて読み取り可能なメモリに記憶される指示は、フローチャートで説明された機能を実行する指示手段を含む製造の品目を生産することも可能である。コンピュータプログラム指示は、コンピュータ又はプログラム可能なデータ処理装置上に搭載できるので、コンピュータ又はプログラム可能なデータ処理装置上で一連の動作ステップが実行され、コンピュータで実行されるプロセスを生成してコンピュータ又はプログラム可能なデータ処理装置を実行する指示は、フローチャートで説明された機能を実行するためのステップを提供することも可能である。
また、フローチャートの各ブロックは、特定の論理的な機能を実行するための1つ以上の実行可能な指示を含むモジュール、セグメント、又はコードの一部を示すことができる。幾つかの場合において、ブロックにより説明された機能は、リストされた順序とは異なる順序で実行され得る。例えば、連続して図示されている2つのブロックは、実質に同時に実行されることも可能であり、又はそのブロックが対応する機能により逆順に実行されることも可能である。
本実施形態で使用される用語“部”、“モジュール”などは、機能又は動作を実行できるソフトウェアコンポーネントまたはFPGA又はASICのようなハードウェアコンポーネントを意味する。しかしながら、“部”などは、ソフトウェア又はハードウェアに限定されるのではない。“部”は、アドレッシングできる記憶媒体にあるように構成されてもよく、1つ又はそれ以上のプロセッサを再生させるように構成されてもよい。したがって、例えば、“部”は、ソフトウェアコンポーネント、オブジェクト指向ソフトウェアコンポーネント、クラスコンポーネント、及びタスクコンポーネントのようなコンポーネント、プロセス、関数、属性、プロシージャ、サブルーチン、プログラムコードセグメント、ドライバ、ファームウェア、マイクロコード、回路、データ、データベース、データ構造、テーブル、アレイ、又は変数を意味する。コンポーネント及び“部”により提供される機能は、より小さな数のコンポーネント及び“部”に結合されるか又は追加のコンポーネント及び“部”にさらに分離されることができる。コンポーネント及び“部”は、デバイス又は保安マルチメディアカード内のデバイス又は1つ又はそれ以上のプロセッサを駆動させるように構成されてもよい。
本発明の範囲及び趣旨を逸脱することなく、ここに説明する実施形態の様々な変更及び修正が可能であるということは、当該技術分野における通常の知識を有する者には明らかである。したがって、上述した実施形態は、但し例示に過ぎず、本発明の範囲を限定することと解釈されてはいけない。本発明の範囲は、上述の実施形態に限定されるべきではなく、特許請求の範囲の記載及びこれと均等なものの範囲内で定められるべきである。
本発明の好適な実施形態は、明細書及び添付図面に基づいて開示されている。特定の用語が使用されるが、これは、本発明を容易に説明し、本発明のさらなる理解を助けるために一般的な意味で使用され、本発明の範囲を限定するのではない。したがって、本発明の範囲及び趣旨を逸脱することなく、ここに説明された実施形態の様々な変更及び変形が可能であるということは、当該技術分野における通常の知識を有する者には明らかである。

Claims (10)

  1. ブロードキャスティング及び/又は通信システムにおける送信装置がフォワードエラー訂正(FEC)符号化を実行する方法であって、
    m個のソースパケットを含むソースパケットブロックを使用してn個のソースシンボルを含むースシンボルブロックを生成するステップであって、各ソースシンボルは同一の長さを有するステップと
    前記ースシンボルブロックに対するフォワードエラー訂正(FEC)符号化を実行することにより、一つ以上のリペアシンボルを生成するステップと、を含み、
    前記ソースシンボルブロックに含まれる各ソースシンボルは、同一の数の複数のシンボルエレメントを含み、各シンボルエレメントは同一の長さを有し、
    前記ソースシンボルブロックを生成するステップは、
    前記m個のソースパケットの各々を一つ以上のシンボルエレメントに割り当てるステップを含み、前記m個のソースパケットの各々は、各ソースパケットが割り当てられる一つ以上のシンボルエレメントの最初のシンボルエレメントの開始位置から割り当てられ、
    前記方法は、
    前記ソースパケットブロックに対する長さシンボルブロックを生成するステップと、
    前記長さシンボルブロックに対するFEC符号化を実行することにより1つ以上の長さリペアシンボルを生成するステップと、をさらに有し
    前記長さシンボルブロックはn個のシンボルを含み、前記n個のシンボルは、m個の長さシンボル及び(n−m)個のゼロ−パディング(zero-padding)シンボルを含み、前記m個の長さシンボルの各々は、前記m個のソースパケットのそれぞれの長さを指示することを特徴とする方法。
  2. ブロードキャスティング及び/又は通信システムにおいてフォワードエラー訂正(FEC)符号化(encoding)を実行する送信装置であって、
    m個のソースパケットを含むソースパケットブロックを使用してn個の同一の長さを有するソースシンボルを含むースシンボルブロックを生成し、前記ースシンボルブロックに対するフォワードエラー訂正(FEC)符号化を実行することにより、一つ以上のリペアシンボルを生成するように構成されたフォワードエラー訂正(FEC)符号化部を含み
    前記ソースシンボルブロックに含まれる各ソースシンボルは、同一の数の複数のシンボルエレメントを含み、各シンボルエレメントは同一の長さを有し、
    前記ソースシンボルブロックを生成することは、
    前記m個のソースパケットの各々を一つ以上のシンボルエレメントに割り当てることを含み、前記m個のソースパケットの各々は、各ソースパケットが割り当てられる一つ以上のシンボルエレメントの最初のシンボルエレメントの開始位置から割り当てられ、
    前記FEC符号化部は、
    前記ソースパケットブロックに対する長さシンボルブロックを生成し、前記長さシンボルブロックに対するFEC符号化を実行することにより1つ以上の長さリペアシンボルを生成するようにさらに構成され
    前記長さシンボルブロックはn個のシンボルを含み、前記n個のシンボルは、m個の長さシンボル及び(n−m)個のゼロ−パディング(zero-padding)シンボルを含み、前記m個の長さシンボルの各々は、前記m個のソースパケットのそれぞれの長さを指示することを特徴とする装置。
  3. ブロードキャスティング及び/又は通信システムにおける受信装置がフォワードエラー訂正(FEC)復号化(decoding)を実行する方法であって、
    一つ以上のソースパケット及び一つ以上のリペアパケットを受信するステップと、
    前記一つ以上のリペアパケットに基づいて前記一つ以上のソースパケットに対するFEC復号化を実行するステップと、を含み、
    前記一つ以上のリペアパケットは、一つ以上のリペアシンボルのデータを含み、前記一つ以上のリペアシンボルは、n個の同一の長さを有するソースシンボルを含むソースシンボルブロックに対するFEC符号化を実行することにより生成され、前記ソースシンボルブロックは、m個のソースパケットを含むソースパケットブロックを利用して生成され、
    前記ソースシンボルブロックに含まれる各ソースシンボルは、同一の数の複数のシンボルエレメントを含み、前記m個のソースパケットの各々は、一つ以上の同一の長さを有するシンボルエレメントに割り当てられ、そして、前記m個のソースパケットの各々は、各ソースパケットが割り当てられる一つ以上のシンボルエレメントの最初のシンボルエレメントの開始位置から割り当てられ、
    前記一つ以上のリペアパケットは、一つ以上の長さリペアシンボルのデータをさらに含み、前記一つ以上のリペアシンボルは、n個のシンボルを含む長さシンボルブロックに対するFEC符号化を実行することにより生成され、前記n個のシンボルは、m個の長さシンボル及び(n−m)個のゼロ−パディング(zero-padding)シンボルを含み、前記m個の長さシンボルの各々は、前記m個のソースパケットのそれぞれの長さを指示することを特徴とする方法。
  4. ブロードキャスティング及び/又は通信システムにおいてフォワードエラー訂正(FEC)復号化(decoding)を実行する受信装置であって、
    一つ以上のソースパケット及び一つ以上のリペアパケットを受信する受信部と、
    前記一つ以上のリペアパケットに基づいて前記一つ以上のソースパケットに対するFEC復号化を実行する制御部と、を含み、
    前記一つ以上のリペアパケットは、一つ以上のリペアシンボルのデータを含み、前記一つ以上のリペアシンボルは、n個の同一の長さを有するソースシンボルを含むソースシンボルブロックに対するFEC符号化を実行することにより生成され、前記ソースシンボルブロックは、m個のソースパケットを含むソースパケットブロックを利用して生成され、
    前記ソースシンボルブロックに含まれる各ソースシンボルは、同一の数の複数のシンボルエレメントを含み、前記m個のソースパケットの各々は、一つ以上の同一の長さを有するシンボルエレメントに割り当てられ、そして、前記m個のソースパケットの各々は、各ソースパケットが割り当てられる一つ以上のシンボルエレメントの最初のシンボルエレメントの開始位置から割り当てられ、
    前記一つ以上のリペアパケットは、一つ以上の長さリペアシンボルのデータをさらに含み、前記一つ以上のリペアシンボルは、n個のシンボルを含む長さシンボルブロックに対するFEC符号化を実行することにより生成され、前記n個のシンボルは、m個の長さシンボル及び(n−m)個のゼロ−パディング(zero-padding)シンボルを含み、前記m個の長さシンボルの各々は、前記m個のソースパケットのそれぞれの長さを指示することを特徴とする装置。
  5. 前記ソースパケットのそれぞれは、MPEGメディアトランスポート(MMT)パケットヘッダに前記ソースパケットを他のソースパケットと識別するための識別情報を含むことを特徴とする請求項1又は請求項3に記載の方法。
  6. 前記ソースパケットの配列順序は、パケット識別子(ID)、パケットシーケンス番号、及びパケットカウンタのうちの少なくとも1つを用いて決定されることを特徴とするとする請求項1又は請求項3に記載の方法。
  7. ECコンフィギュレーション情報は、前記ースシンボルブロック及び前記長さシンボルブロックの生成に関する情報を含むことを特徴とする請求項に記載の方法。
  8. 前記ソースパケットのそれぞれは、MPEGメディアトランスポート(MMT)パケットヘッダに前記ソースパケットを他のソースパケットと識別するための識別情報を含むことを特徴とする請求項2又は請求項4に記載の装置。
  9. 前記ソースパケットの配列順序は、パケット識別子(ID)、パケットシーケンス番号、及びパケットカウンタのうちの少なくとも1つを用いて決定されることを特徴とする請求項2又は請求項4に記載の装置。
  10. ECコンフィギュレーション情報は、前記ースシンボルブロック及び前記長さシンボルブロックの生成に関する情報を含むことを特徴とする請求項に記載の装置。
JP2016559620A 2014-03-28 2015-03-30 ブロードキャスティング及び/又は通信システムにおけるパケットの生成及び復元のための方法及び装置 Expired - Fee Related JP6511472B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
KR20140037261 2014-03-28
KR10-2014-0037261 2014-03-28
PCT/KR2015/003115 WO2015147613A1 (ko) 2014-03-28 2015-03-30 방송 및/또는 통신 시스템에서 패킷 생성 및 복원 방법 및 장치

Publications (2)

Publication Number Publication Date
JP2017513395A JP2017513395A (ja) 2017-05-25
JP6511472B2 true JP6511472B2 (ja) 2019-05-15

Family

ID=54196019

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016559620A Expired - Fee Related JP6511472B2 (ja) 2014-03-28 2015-03-30 ブロードキャスティング及び/又は通信システムにおけるパケットの生成及び復元のための方法及び装置

Country Status (6)

Country Link
US (1) US10341049B2 (ja)
EP (1) EP3125455B1 (ja)
JP (1) JP6511472B2 (ja)
KR (1) KR20160138382A (ja)
CN (1) CN106105076B (ja)
WO (1) WO2015147613A1 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6246698B2 (ja) * 2014-10-31 2017-12-13 株式会社東芝 送信システム、メッセージ認証コード生成装置及び受信装置
US10116718B2 (en) 2016-03-15 2018-10-30 Adobe Systems Incorporated Digital content streaming to loss intolerant streaming clients
JP7083694B2 (ja) * 2017-07-27 2022-06-13 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 送信装置及び送信方法
KR102506507B1 (ko) 2018-01-19 2023-03-07 삼성전자주식회사 통신 시스템에서 신호를 송/수신하는 장치 및 방법
KR102580248B1 (ko) * 2018-10-02 2023-09-19 삼성전자주식회사 전자장치, 패킷전송 장치 및 방법
WO2025226488A1 (en) * 2024-04-22 2025-10-30 Newracom, Inc. Padding technique to prevent collisions during dynamic bandwidth signaling

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3822508B2 (ja) * 2002-03-08 2006-09-20 日本電信電話株式会社 パケット伝送システムとそのデータ送信装置及びデータ受信装置
KR100835401B1 (ko) * 2002-04-25 2008-06-04 피엠씨-시에라 이스라엘 엘티디. 이더넷 네트워크에서 순방향 오류 정정 코딩
EP1648171A1 (en) * 2004-10-18 2006-04-19 Alcatel A method of encoding and decoding of data packets using length field
US8732559B2 (en) * 2006-07-25 2014-05-20 Thomson Licensing Recovery from burst packet loss in internet protocol based wireless networks using staggercasting and cross-packet forward error correction
US9917874B2 (en) * 2009-09-22 2018-03-13 Qualcomm Incorporated Enhanced block-request streaming using block partitioning or request controls for improved client-side handling
KR20120137198A (ko) * 2011-06-11 2012-12-20 삼성전자주식회사 통신 시스템에서 패킷 송수신 장치 및 방법
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
KR101922559B1 (ko) * 2011-10-13 2018-12-05 삼성전자주식회사 통신 시스템에서 순방향 에러 정정 패킷을 송수신하는 방법 및 장치
KR101933465B1 (ko) * 2011-10-13 2019-01-11 삼성전자주식회사 이동 통신 시스템에서 패킷 송수신 장치 및 방법
KR101829923B1 (ko) * 2011-10-13 2018-02-22 삼성전자주식회사 데이터 통신 시스템에서 부호화 장치 및 방법
EP2815529B1 (en) 2012-02-17 2019-12-11 Samsung Electronics Co., Ltd. Data packet transmission/reception apparatus and method
KR102027916B1 (ko) * 2012-02-27 2019-10-02 삼성전자주식회사 순방향 오류정정스킴을 사용하는 패킷 송수신 장치 및 방법
KR101983032B1 (ko) * 2012-05-07 2019-05-30 삼성전자주식회사 방송 및 통신 시스템에서 패킷 송수신 장치 및 방법

Also Published As

Publication number Publication date
EP3125455B1 (en) 2022-05-04
WO2015147613A1 (ko) 2015-10-01
EP3125455A1 (en) 2017-02-01
CN106105076A (zh) 2016-11-09
CN106105076B (zh) 2019-08-09
JP2017513395A (ja) 2017-05-25
KR20160138382A (ko) 2016-12-05
US20170149526A1 (en) 2017-05-25
US10341049B2 (en) 2019-07-02
EP3125455A4 (en) 2017-11-15

Similar Documents

Publication Publication Date Title
US9673933B2 (en) Method and apparatus for transmitting and receiving packet in a communication system
KR102133930B1 (ko) 데이터 패킷 송수신 장치 및 방법
CN104205698B (zh) 使用前向纠错方案的分组发送/接收装置和方法
JP6511472B2 (ja) ブロードキャスティング及び/又は通信システムにおけるパケットの生成及び復元のための方法及び装置
JP6486684B2 (ja) 移動通信システムにおける順方向誤り訂正パケットを送受信する装置及び方法
KR20130057937A (ko) 통신 시스템에서 패킷 송수신 장치 및 방법
JP6530748B2 (ja) マルチメディア通信システムにおけるパケット送受信方法
US9667384B2 (en) Apparatus and method for transmitting and receiving forward error correction packet
JP6511470B2 (ja) 通信システムにおけるパケット送受信方法及び装置
US9473264B2 (en) Apparatus and method for transmitting/receiving packet in communication system
KR102093731B1 (ko) 오류 정정 부호를 사용하는 통신 시스템에서 패킷 송수신 기법
KR101967884B1 (ko) 방송 및 통신 시스템에서 패킷 송/수신 장치 및 방법

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160929

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20171121

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180918

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20181002

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181228

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190326

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190408

R150 Certificate of patent or registration of utility model

Ref document number: 6511472

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees