(57)【要約】【課題】１つ以上のパリティパケットを利用して関連するパケットグループ内の１つ以上のパケット損傷・消失を復元する。【解決手段】ＦＥＣ符号化方式に基づいた可変長パケット送信方法は、ａ）送信すべき入力データパケットが存在する場合、データパケットの入力を受け取る過程と、ｂ）入力された前記データパケットを特定の記憶幅を有する２次元記憶装置に連続的に記憶して配置し、ＦＥＣ符号化を行って対応するパリティパケットを算出し、算出された前記パリティパケットを前記２次元記憶装置に配置し、前記データパケット、前記データパケットの前記２次元記憶装置内での位置であるオフセット、前記パケットの種類及び前記パリティパケットを送信する過程とを備えた。【選択図】　　　　図１
2004032719.tif 000002
【特許請求の範囲】
【請求項１】
ＦＥＣ符号化方式に基づいた可変長パケット送信方法において、
ａ）送信すべき入力データパケットが存在する場合、データパケットの入力を受け取る過程と、
ｂ）入力された前記データパケットを特定の記憶幅を有する２次元記憶装置に連続的に記憶して配置し、ＦＥＣ符号化を行って対応するパリティパケットを算出し、算出された前記パリティパケットを前記２次元記憶装置に配置し、前記データパケット、前記データパケットの前記２次元記憶装置内での位置であるオフセット、前記パケットの種類及び前記パリティパケットを送信する過程と
を備えたことを特徴とするＦＥＣ符号化方式に基づいた可変長パケット送信方法。
【請求項２】
前記過程ａ）の前に、
ｃ）前記ＦＥＣ符号化に必要な特定パラメータの使用が定義されているか否かを判断する過程と、
ｄ）前記特定パラメータの使用が定義されていないと判断される場合、前記特定パラメータを決定し送信する過程と
をさらに備えたことを特徴とする請求項１に記載のＦＥＣ符号化方式に基づいた可変長パケット送信方法。
【請求項３】
前記特定パラメータには、前記２次元記憶装置の幅、パリティパケットの個数及び関連するパケットグループを決定する因子を含むことを特徴とする請求項２に記載のＦＥＣ符号化方式に基づいた可変長パケット送信方法。
【請求項４】
前記関連するパケットグループは、前記データパケット及びこれに対応するパリティパケットの集合であることを特徴とする請求項３に記載のＦＥＣ符号化方式に基づいた可変長パケット送信方法。
【請求項５】
前記過程ｂ）は、
ｉ）前記パリティパケットの送信可否を決定する因子の値を累積する過程と、
ｉｉ）前記入力データパケットを前記２次元記憶装置に連続的に記憶して配置する過程と、
ｉｉｉ）前記入力データパケットに対応するようにパリティパケットを更新する過程と、
ｉｖ）前記データパケットの復元のための情報及び前記データパケットを含む拡張データパケットを送信する過程と、
ｖ）パリティパケットを送信する時点であるかどうかを判断する過程と、
ｖｉ）前記過程ｖ）でパリティパケットを送信する時点である場合、前記パリティパケットを送信する過程と、
ｖｉｉ）前記過程ｉ）におけるパリティパケットの送信可否を決定する因子の値を初期化する過程と
を含むことを特徴とする請求項１に記載のＦＥＣ符号化方式に基づいた可変長パケット送信方法。
【請求項６】
前記過程ｖｉ）は、
送信するパリティパケットの個数を決定する過程と、
送信されたパリティパケットの個数が、決定された前記送信するパリティパケットの個数以上であるか否かを判断する過程と、
該判断する過程における前記送信されたパリティパケットの個数が、決定された前記送信するパリティパケットの個数より少ない場合、データパケット復元のための情報及びパリティパケットを含む拡張パリティパケットを送信する過程と、
前記送信されたパリティパケットの個数を累積する過程と、
前記判断する過程における前記送信されたパリティパケットの個数が、決定された前記送信するパリティパケットの個数以上である場合、パリティパケットと前記送信されたパリティパケットの個数を初期化する過程と
を含むことを特徴とする請求項５に記載のＦＥＣ符号化方式に基づいた可変長パケット送信方法。
【請求項７】
前記過程ｉ）におけるパリティパケットの送信可否を決定する因子は、入力されるデータパケットのサイズ、入力されるデータパケットの個数、または時間情報であることを特徴とする請求項５に記載のＦＥＣ符号化方式に基づいた可変長パケット送信方法。
【請求項８】
前記過程ｖ）におけるパリティパケットを送信する時点は、入力されるデータパケットの累積されたサイズが、関連するパケットグループのしきい値サイズ以上である場合、または入力されるデータパケットの累積された個数が、関連するパケットグループのデータパケットしきい値個数以上である場合、または関連するパケットグループの累積された経過時間が、しきい値時間以上である場合であることを特徴とする請求項５に記載のＦＥＣ符号化方式に基づいた可変長パケット送信方法。
【請求項９】
前記データパケット復元のための情報は、前記拡張パケットのヘッダ部分に含まれることを特徴とする請求項５に記載のＦＥＣ符号化方式に基づいた可変長パケット送信方法。
【請求項１０】
前記データパケット復元のための情報は、
前記データパケットの場合、前記パケットの種類及びパケットのオフセットを含み、
前記パリティパケットの場合、前記パケットの種類及び前記関連するパケットグループ内のデータパケットの全体サイズを含むことを特徴とする請求項５に記載のＦＥＣ符号化方式に基づいた可変長パケット送信方法。
【請求項１１】
前記データパケット復元のための情報は、前記パリティパケットの場合、データパケットのオフセットがさらに含むことを特徴とする請求項１０に記載のＦＥＣ符号化方式に基づいた可変長パケット送信方法。
【請求項１２】
前記パリティパケットの更新は、前記２次元記憶装置に配置されたデータを特定の長さで演算することを特徴とする請求項５に記載のＦＥＣ符号化方式に基づいた可変長パケット送信方法。
【請求項１３】
前記送信するパリティパケットの個数は、パケットが送信されるチャンネルの状態によって決定されることを特徴とする請求項６に記載のＦＥＣ符号化方式に基づいた可変長パケット送信方法。
【請求項１４】
前記データパケットを前記２次元記憶装置に連続的に記憶して配置する方法は、前記２次元記憶装置に配置されるデータパケットを各々連結して記憶する方法であり、その記憶長が前記２次元記憶装置の記憶幅になるようにすることを特徴とする請求項１に記載のＦＥＣ符号化方式に基づいた可変長パケット送信方法。
【請求項１５】
ＦＥＣ符号化方式に基づいた可変長パケット受信方法において、
ａ）受信される拡張パケットが存在する場合、拡張パケットを受信して特定の記憶幅を有する２次元記憶装置に連続的に記憶して配置する過程と、
ｂ）ＦＥＣ復号化を行って前記受信された拡張パケットからデータパケットを復元した後、上位階層に伝達する過程と
を備えたことを特徴とするＦＥＣ符号化方式に基づいた可変長パケット受信方法。
【請求項１６】
前記過程ａ）の前に、
ｃ）前記ＦＥＣ復号化に必要な特定パラメータの使用が定義されているか否かを判断する過程と、
ｄ）前記特定パラメータの使用が定義されていないと判断される場合、前記特定パラメータを送信側から受信する過程と
をさらに備えたことを特徴とする請求項１５に記載のＦＥＣ符号化方式に基づいた可変長パケット受信方法。
【請求項１７】
前記過程ａ）は、
ｉ）拡張パケットを受信する過程と、
ｉｉ）前記受信された拡張パケットが拡張データパケットであるか、または拡張パリティパケットであるかを判断する過程と、
ｉｉｉ）該過程ｉｉ）で受信された拡張パケットが、データパケットを含む拡張データパケットである場合、データパケットとデータパケット復元のための情報とを分離する過程と、
ｉｖ）前記過程ｉｉ）で受信された拡張パケットが、パリティパケットを含む拡張パリティパケットである場合、パリティパケットとデータパケット復元のための情報とを分離する過程と、
ｖ）前記過程ｉｉｉ）または前記過程ｉｖ）で分離されたデータパケットとパリティパケットとを、前記特定された２次元記憶装置に順次に配置する過程と
を含むことを特徴とする請求項１５に記載のＦＥＣ符号化方式に基づいた可変長パケット受信方法。
【請求項１８】
前記過程ｂ）は、
ｉ）関連するパケットグループを前記上位階層に伝達する時点であるか否かを判断する過程と、
ｉｉ）該過程ｉ）で前記関連するパケットグループを前記上位階層に伝達する時点であると判断された場合、前記分離されたデータパケットを前記上位階層に伝達する過程と
を含むことを特徴とする請求項１５に記載のＦＥＣ符号化方式に基づいた可変長パケット受信方法。
【請求項１９】
前記過程ｉ）において前記関連するパケットグループを前記上位階層に伝達する時点は、前記関連するパケットグループ内の最後のパケットまたはその次に関連するパケットグループ内のパケットが、到着しまたは特定時間が経過した時点であることを特徴とする請求項１８に記載のＦＥＣ符号化方式に基づいた可変長パケット受信方法。
【請求項２０】
前記過程ｉｉ）は、
ａ）前記分離されたデータパケットに損傷・消失があるか否かを判断する過程と、
ｂ）前記データパケットに損傷・消失があると判断された場合、復元可能な部分があるか否かを判断する過程と、
ｃ）該過程ｂ）で復元可能な部分があると判断された場合、前記損傷・消失されたデータパケットを復元する過程と、
ｄ）該過程ｃ）で復元されていない部分があるか否かを判断する過程と、
ｅ）前記過程ｂ）で復元可能な部分がないと判断された場合、または前記過程ｄ）で復元されていない部分がある場合、前記上位階層で損傷・消失位置を伝達する過程と、
ｆ）前記過程ａ）でデータパケットの損傷・消失がない場合、受信されたデータパケットを上位階層に伝達し、前記過程ｃ）で復元されたデータがある場合、復元されたデータパケットを含む受信データパケットを前記上位階層に伝達する過程と
を含むことを特徴とする請求項１８に記載のＦＥＣ符号化方式に基づいた可変長パケット受信方法。
【請求項２１】
前記パケットを前記２次元記憶装置に連続的に記憶して配置する方法は、前記２次元記憶装置に配置されるパケットを連結して記憶する方法であり、その記憶長が前記２次元記憶装置の記憶幅になるようにすることを特徴とする請求項１５に記載のＦＥＣ符号化方式に基づいた可変長パケット受信方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ＦＥＣ符号化方式に基づいた可変長パケット送信方法及び受信方法に関し、より詳細には、特にパッディングのない可変長パケットに対するパリティパケットを生成し、損傷または消失したパケットの復元を可能にすると同時に、送信側でデータパケットを直ちに伝送できるようにするＦＥＣ符号化方式に基づいた可変長パケット送信方法及び受信方法に関する。
【０００２】
【従来の技術】
デジタル通信システムは、データ伝送中のチャンネルで発生した雑音や誤りによる悪影響を、受信側で除去する方法として、ＡＲＱ（Ａｕｔｏｍａｔｉｃ　Ｒｅｐｅａｔ　ｒｅＱｕｅｓｔ）方式やＦＥＣ（Ｆｏｒｗａｒｄ　Ｅｒｒｏｒ　Ｃｏｒｒｅｃｔｉｏｎ）方式を使用する。
【０００３】
ＡＲＱ方式は、受信されたデータブロックにエラーが存在するかどうかを分析する過程と、エラーを含むブロックの再送信を要請する過程とを含む方式であり、エラーが多い時にも低遅延率が要求されるシステムには適していない。
【０００４】
一方、ＦＥＣ方式は、チャンネルを通じてデータを伝送する時、付加データを追加して送信することにより、エラーが発生しても再送信せずに、受信端でエラーを検出して原信号を復元できるように考えられた方式である。このようなＦＥＣの符号方式にはハミング符号、ＢＣＨ（Ｂｏｓｅ−Ｃｈａｕｄｈｕｒｉ−Ｈｏｃｑｅｎｇｈｅｎ）符号、ＲＳ（Ｒｅｅｄ　Ｓｏｌｏｍｏｎ）符号など多様な種類があり、特にＲＳ符号は、バイト単位のエラー検出と訂正を可能にする。
【０００５】
ＩＥＴＦ標準として採択された非特許文献１では、排他的論理和演算を使用する。１個のパケットの集合に対して１個のパリティパケットが別個のストリームとして送信される。当該集合で１個のパケットが損傷または消失しても受信側で復旧することができる。ＦＥＣ方式を採用していないホストとの互換性を持つために、パリティパケットは、特別のＲＴＰ（Ｒｅａｌ−Ｔｉｍｅ　Ｔｒａｎｓｐｏｒｔ　Ｐｒｏｔｏｃｏｌ）ペイロードタイプ値を有する。この値を知らないホストは、受信したパリティパケットを無視して従前のように進めればよい。ホストが知らないペイロードタイプ値を有するパケットを無視することは、以前のＩＥＴＦ文書である非特許文献２に従うことである。
【０００６】
また、非特許文献３及び非特許文献４におけるｓｈｏｒｔｅｎｅｄ　ＲＳ符号は、消去されたパケットの復旧に使用される。もし、ｋ個のデータパケットが（ｎ−ｋ）個のパリティパケットと共に伝送される場合、最大（ｎ−ｋ）個のパケットまで損傷・消失しても受信機で再生することができる。損傷・消失したパケットの一連番号は、ＲＴＰプロトコルを使用することによって受信機によってカウントすることができる。ここで、消去は、知られている位置での損傷・消失またはエラーと定義される。このような方法を利用すれば、１個以上のパケットが再生できるのでＲＦＣ２７３３より非常に効果的である。１個以上のパケットを再生する方法は、非特許文献５などが提案されＩＥＴＦで標準化が進められている。
【０００７】
一方、上述した方法は、パケット長が固定されたことを仮定して適用される。圧縮されたオーディオのパケット長は固定されるが、圧縮されたビデオのパケット長は、図１０に示すように、多くの場合に変動している。
【０００８】
このように、最近、インターネット上で多く提供されている動映像サービスのように、伝送しようとするパケット長が、可変的で遅延が許容されない場合には、ＦＥＣ方式を使用するものの、可変長パケットのストリームに適するような改善が要求される。
【０００９】
【非特許文献１】
Ｊ．Ｒｏｓｅｎｂｅｒｇ，　“Ａｎ　ＲＴＰ　Ｐａｙｌｏａｄ　Ｆｏｒｍａｔ　ｆｏｒ　Ｇｅｎｅｒｉｃ　Ｆｏｒｗａｒｄ　ＥｒｒｏｒＣｏｒｒｅｃｔｉｏｎ”，　ＩＥＴＦ（Ｉｎｔｅｒｎｅｔ　Ｅｎｇｉｎｅｅｒｉｎｇ　Ｔａｓｋ　Ｆｏｒｃｅ）　ＲＦＣ（Ｒｅｑｕｅｓｔ　Ｆｏｒ　Ｃｏｍｍｅｎｔ　Ｄｏｃｕｍｅｎｔ）２７３３，　Ｄｅｃｅｍｂｅｒ　１９９９
【００１０】
【非特許文献２】
Ｈ．Ｓｃｈｕｌｚｒｉｎｅ，　“ＲＴＰ：Ａ　Ｔｒａｎｓｐｏｒｔ　Ｐｒｏｔｏｃｏｌ　ｆｏｒ　Ｒｅａｌ−Ｔｉｍｅ　Ａｐｐｌｉｃａｔｉｏｎｓ”，　ＩＥＴＦ　ＲＦＣ１８８９，　Ｊａｎｕａｒｙ　１９９６
【００１１】
【非特許文献３】
Ｈ．Ｚｈｅｎｇ，　“Ａｎ　Ｉｍｐｒｏｖｅｄ　ＵＤＰ　Ｐｒｏｔｏｃｏｌ　ｆｏｒ　Ｖｉｄｅｏ　Ｔｒａｎｓｍｉｓｓｉｏｎ　Ｏｖｅｒ　Ｉｎｔｅｒｎｅｔ−ｔｏ　Ｗｉｒｅｌｅｓｓ　Ｎｅｔｗｏｒｋｓ”，　ＩＥＥＥ　Ｔｒ．　Ｏｎ　Ｍｕｌｔｉｍｅｄｉａ，　ｐｐ．３５６−３６５，　Ｓｅｐｔｅｍｂｅｒ　２００１
【００１２】
【非特許文献４】
Ｓ．Ｗ．Ｙｕｋ，　“Ａｎ　Ａｄａｐｔｉｖｅ　Ｒｅｄｕｎｄａｎｃｙ　Ｃｏｎｔｒｏｌ　Ｍｅｔｈｏｄ　ｆｏｒ　Ｅｒａｓｕｒｅ−Ｃｏｄｅ　Ｂａｓｅｄ　Ｒｅａｌ−Ｔｉｍｅ　Ｄａｔａ　Ｔｒａｎｓｍｉｓｓｉｏｎ　Ｏｖｅｒ　ｔｈｅ　Ｉｎｔｅｒｎｅｔ”，　ＩＥＥＥ　Ｔｒ．　Ｏｎ　Ｍｕｌｔｉｍｅｄｉａ，　ｐｐ．３６６−３７４，　Ｓｅｐｔｅｍｂｅｒ　２００１
【００１３】
【非特許文献５】
Ｗａｇｎｅｒ，　“ｄｒａｆｔ−ｉｅｔｆ−ａｖｔ−ｕｘｐ−０２．ｔｘｔ：　Ａｎ　ＲＴＰ　ｐａｙｌｏａｄ　ｆｏｒｍａｔ　ｆｏｒｅｒａｓｕｒｅ−ｒｅｓｉｌｉｅｎｔ　ｔｒａｎｓｍｉｓｓｉｏｎ　ｏｆ　ｐｒｏｇｒｅｓｓｉｖｅ　ｍｕｌｔｉｍｅｄｉａ　ｓｔｒｅａｍｓ”，　Ｍａｒｃｈ　２００２
【００１４】
【発明が解決しようとする課題】
しかしながら、現在のＦＥＣ符号化方法で可変長パケットが伝送される場合、この可変長パケットに対してパリティパケットを生成できないので、図６に示すように固定長パケットに変換するためのパディング過程が必要であるという問題があった。パリティパケット長は、関連するパケットグループ内で最も大きいパケット長に合せなければならないので、帯域幅が浪費される。また、最大長さを有するパケットを知るために、関連するパケットグループを構成するパケット１乃至６が全て入力されるまで、送信端側は入力されたパケットを伝送できないため遅延を生じるという問題があった。
【００１５】
本発明は、このような問題に鑑みてなされたもので、その目的とするところは、２次元記憶装置にパッディングのない連続的に記憶された可変長パケットに対するパリティパケットを生成し、パリティパケット生成のための関連するパケットグループのパケットが全て入力されなくても、データパケットを直ちに伝送できるようにすることで送信遅延を最少化し、１つ以上のパリティパケットを利用して関連するパケットグループ内の１つ以上のパケット損傷・消失を復元することができるＦＥＣ符号化方式に基づいた可変長パケット送信方法及び受信方法を提供することにある。
【００１６】
【課題を解決するための手段】
本発明は、このような目的を達成するために、請求項１に記載のＦＥＣ符号化方式に基づいた可変長パケット送信方法は、ａ）送信すべき入力データパケットが存在する場合、データパケットの入力を受け取る過程と、ｂ）入力された前記データパケットを特定の記憶幅を有する２次元記憶装置に連続的に記憶して配置し、ＦＥＣ符号化を行って対応するパリティパケットを算出し、算出された前記パリティパケットを前記２次元記憶装置に配置し、前記データパケット、前記データパケットの前記２次元記憶装置内での位置であるオフセット、前記パケットの種類及び前記パリティパケットを送信する過程とを備えたことを特徴とする。
【００１７】
請求項２に記載の発明は、前記過程ａ）の前に、ｃ）前記ＦＥＣ符号化に必要な特定パラメータの使用が定義されているか否かを判断する過程と、ｄ）前記特定パラメータの使用が定義されていないと判断される場合、前記特定パラメータを決定し送信する過程とをさらに備えたことを特徴とする。
【００１８】
請求項５に記載の発明は、前記過程ｂ）は、ｉ）前記パリティパケットの送信可否を決定する因子の値を累積する過程と、ｉｉ）前記入力データパケットを前記２次元記憶装置に連続的に記憶して配置する過程と、ｉｉｉ）前記入力データパケットに対応するようにパリティパケットを更新する過程と、ｉｖ）前記データパケットの復元のための情報及び前記データパケットを含む拡張データパケットを送信する過程と、ｖ）パリティパケットを送信する時点であるかどうかを判断する過程と、ｖｉ）前記過程ｖ）でパリティパケットを送信する時点である場合、前記パリティパケットを送信する過程と、ｖｉｉ）前記過程ｉ）におけるパリティパケットの送信可否を決定する因子の値を初期化する過程とを含むことを特徴とする。
【００１９】
前記過程ｉ）とｖｉｉ）におけるパリティパケットの送信可否を決定する因子は、関連するパケットグループを決定する因子によって決められ、関連するパケットグループを決定する因子が関連するパケットグループのしきい値サイズである場合、パリティパケットの送信可否を決定する因子は入力されるデータパケットのサイズになり、関連するパケットグループを決定する因子がデータパケットのしきい値個数である場合、パリティパケットの送信可否を決定する因子は入力されるデータパケットの個数になり、関連するパケットグループを決定する因子がしきい値時間である場合、パリティパケットの送信可否を決定する因子は経過した時間になる。
【００２０】
請求項６に記載の発明は、前記過程ｖｉ）は、送信するパリティパケットの個数を決定する過程と、送信されたパリティパケットの個数が、決定された前記送信するパリティパケットの個数以上であるか否かを判断する過程と、該判断する過程における前記送信されたパリティパケットの個数が、決定された前記送信するパリティパケットの個数より少ない場合、データパケット復元のための情報及びパリティパケットを含む拡張パリティパケットを送信する過程と、前記送信されたパリティパケットの個数を累積する過程と、前記判断する過程における前記送信されたパリティパケットの個数が、決定された前記送信するパリティパケットの個数以上である場合、パリティパケットと前記送信されたパリティパケットの個数を初期化する過程とを含むことを特徴とする。
【００２１】
請求項１５に記載のＦＥＣ符号化方式に基づいた可変長パケット受信方法は、ａ）受信される拡張パケットが存在する場合、拡張パケットを受信して特定の記憶幅を有する２次元記憶装置に連続的に記憶して配置する過程と、ｂ）ＦＥＣ復号化を行って前記受信された拡張パケットからデータパケットを復元した後、上位階層に伝達する過程とを備えたことを特徴とする。
【００２２】
請求項１６に記載の発明は、前記過程ａ）の前に、ｃ）前記ＦＥＣ復号化に必要な特定パラメータの使用が定義されているか否かを判断する過程と、ｄ）前記特定パラメータの使用が定義されていないと判断される場合、前記特定パラメータを送信側から受信する過程とをさらに備えたことを特徴とする。
【００２３】
請求項１７に記載の発明は、前記過程ａ）は、ｉ）拡張パケットを受信する過程と、ｉｉ）前記受信された拡張パケットが拡張データパケットであるか、または拡張パリティパケットであるかを判断する過程と、ｉｉｉ）該過程ｉｉ）で受信された拡張パケットが、データパケットを含む拡張データパケットである場合、データパケットとデータパケット復元のための情報とを分離する過程と、ｉｖ）前記過程ｉｉ）で受信された拡張パケットが、パリティパケットを含む拡張パリティパケットである場合、パリティパケットとデータパケット復元のための情報とを分離する過程と、ｖ）前記過程ｉｉｉ）または前記過程ｉｖ）で分離されたデータパケットとパリティパケットとを、前記特定された２次元記憶装置に順次に配置する過程とを含むことを特徴とする。
【００２４】
請求項１８に記載の発明は、前記過程ｂ）は、ｉ）関連するパケットグループを前記上位階層に伝達する時点であるか否かを判断する過程と、ｉｉ）該過程ｉ）で前記関連するパケットグループを前記上位階層に伝達する時点であると判断された場合、前記分離されたデータパケットを前記上位階層に伝達する過程とを含むことを特徴とする。
【００２５】
請求項１９に記載の発明は、前記過程ｉ）において前記関連するパケットグループを前記上位階層に伝達する時点は、前記関連するパケットグループ内の最後のパケットまたはその次に関連するパケットグループ内のパケットが、到着しまたは特定時間が経過した時点であることを特徴とする。
【００２６】
請求項２０に記載の発明は、前記過程ｉｉ）は、ａ）前記分離されたデータパケットに損傷・消失があるか否かを判断する過程と、ｂ）前記データパケットに損傷・消失があると判断された場合、復元可能な部分があるか否かを判断する過程と、ｃ）該過程ｂ）で復元可能な部分があると判断された場合、前記損傷・消失されたデータパケットを復元する過程と、ｄ）該過程ｃ）で復元されていない部分があるか否かを判断する過程と、ｅ）前記過程ｂ）で復元可能な部分がないと判断された場合、または前記過程ｄ）で復元されていない部分がある場合、前記上位階層で損傷・消失位置を伝達する過程と、ｆ）前記過程ａ）でデータパケットの損傷・消失がない場合、受信されたデータパケットを上位階層に伝達し、前記過程ｃ）で復元されたデータがある場合、復元されたデータパケットを含む受信データパケットを前記上位階層に伝達する過程とを含むことを特徴とする。
【００２７】
【発明の実施の形態】
上述した目的、特徴及び長所は添付した図面と関連した次の詳細な説明を通じて一層明らかになる。以下、添付した図面を参照して本発明を詳細に説明する。
【００２８】
図１は、本発明の実施例によるＦＥＣ符号化方式に基づいた可変長パケット送信方法の流れ図である。図１に示したように、本発明の実施例によるＦＥＣ符号化方式に基づいた可変長パケット送信方法は、送信側で行われる。
【００２９】
まず、送信側は、ＦＥＣ符号化及び復号化に必要なパラメータで事前に定義された値を使用するかどうかを判断する（Ｓ１０１）。もし、事前に定義されたパラメータを使用しないと判断される場合、ＦＥＣ符号化及び復号化に必要なパラメータを決定して受信側に送信する（Ｓ１０２）。
【００３０】
一方、事前に定義されたパラメータを使用すると判断される場合、ＦＥＣ符号化及び復号化に必要なパラメータを決定して受信側に送信する過程（Ｓ１０２）を省略するが、送信してもよい。
【００３１】
ここで、ＦＥＣ符号化及び復号化に必要なパラメータは、伝送すべきパケットが記憶される２次元記憶装置の記憶幅、パリティパケットの個数及び関連するパケットグループを決定する因子である。ここでいう関連するパケットグループとは、データパケットとそれに対応するパリティパケットの集合である。これらを決定する因子としては、関連するパケットグループのしきい値サイズまたはデータパケットのしきい値個数またはしきい値時間がある。
【００３２】
次に、入力されるデータパケット、つまり、送信すべきデータパケットの存在の有無を判断する（Ｓ１０３）。入力データパケットが存在すればデータパケットを受信した後（Ｓ１０４）、図７に示すような２次元記憶装置（１００：送信用、２００：受信用）を利用して入力データに対するＦＥＣ符号化を行った後、そのパケットを受信側に送信する（Ｓ１０５）。このように入力されるデータパケットが存在する期間中は、データパケット入力過程（Ｓ１０４）とＦＥＣ符号化及びパケット送信過程（Ｓ１０５）とが、反復実行される。
【００３３】
また、判断過程（Ｓ１０３）で入力されるデータパケットがなければ送信プロセスを終了する。
【００３４】
図２は、図１に示されたＦＥＣ符号化及びパケット送信過程（Ｓ１０５）の詳細を示した部分的流れ図であり、終了するとＳ１０３にもどる。
【００３５】
上述した過程（Ｓ１０４）でデータパケットが入力されれば、図２に示されているように、パリティパケットの送信可否を決定する因子値を累積する（Ｓ２０１）。次に、この入力データパケットを、図７に示したように記憶幅がＬである２次元記憶装置１００に、連続的に記憶して順次に配置する（Ｓ２０２）。パリティパケットの送信可否を決定する因子としては、入力されるデータパケットのサイズ、データパケットの個数、時間情報などがある。なお、２次元記憶装置（１００または２００）は、記憶容量Ｌのラインメモリを複数個、直列に接続したレジスタと考えれば分かり易い。
【００３６】
ここで、２次元記憶装置１００に連続的に記憶して配置するということは、２次元記憶装置１００に記憶されるパケットを連結して記憶するが、その記憶長が２次元記憶装置１００の記憶幅（Ｌ）になるようにすることを意味する。
【００３７】
ここで、２次元記憶装置１００の幅（Ｌ）は変更可能であり、伝達可能な方法を通じて受信側に知らされる。固定された幅（Ｌ）がコール（呼）中に使用されることがあるが、この幅（Ｌ）をチャンネル状態及びパケット長によって適応的にコール途中に変更して受信側に伝達することできる。
【００３８】
入力データパケットが、２次元記憶装置１００に連続的に記憶されて配置される時、入力データパケットが２次元記憶装置１００の幅（Ｌ）より小さいとそのまま配置される。もし入力データパケットが２次元記憶装置１００の幅（Ｌ）より大きいと、２次元記憶装置１００の幅（Ｌ）だけ先に配置され、その残りの部分は次のラインに配置される。
【００３９】
図７を参照すれば、入力データパケット１（ＭＰ１）のサイズが２次元記憶装置１００の幅（Ｌ）より大きいために、パケット１（ＭＰ１）のうち２次元記憶装置１００の幅（Ｌ）に当該する一部だけがまず第１ラインに配置され、パケット１（ＭＰ１）の残りの部分は次の第２ラインに配置される。一方、パケット２（ＭＰ２）のサイズは、２次元記憶装置１００の幅（Ｌ）より小さいことがある。既に配置されたパケット１（ＭＰ１）の残りの部分が第２ラインに配置された時に、記憶装置１００の幅（Ｌ）に残余の空白を生じる場合が多い。この残り部分にパケット２（ＭＰ２）の先頭の一部を配置し、その残りの部分（ＭＰ２）はまた次の第３ラインに配置される。パケット３（ＭＰ３）、パケット４（ＭＰ４）も、パケット２と同様に配置することができる。
【００４０】
一方、ＦＥＣアルゴリズムは、図７において、各ラインの同じ水平位置（ライン内アドレス：１乃至Ｌ）にあるパケットデータによって、（ｎ−ｋ）デジットの縦方向パリティを水平位置１からＬまで並べたパケットを算出して出力する。この場合、多様で体系的なＦＥＣアルゴリズムを用いることができるが、ＧＦ（２８）によるｓｈｏｒｔｅｎｅｄ　ＲＳ符号化を通常用いることができる。ここで２次元記憶装置１００の第１水平位置に対して２デジットパリティパケット、第２水平位置に対して２デジットパリティパケット、他の水平位置に対しても継続して適用され、最後に２次元記憶装置１００の記憶幅（Ｌ）である最後のＬ番目水平位置に対して２デジットパリティパケットが生成される。従って、最終的に生成される２つのパリティパケットは、各々長さが２次元記憶装置１００の幅と同一なＬであるパリティパケット（ＰＰ１、ＰＰ２）となる。つまり、２次元記憶装置１００に配置されたデータを縦に演算して、特定の長さ単位、特にバイト単位に対応されるパリティパケットを算出する。例えば、図７においてＲＳ（（６，４））で表示されているのは、４ラインの入力データ、つまり、縦に４ビットの入力データが演算されて６−４＝２ビットのパリティパケットが算出されるということを意味する。これは４＋２＝６パケットの中で損傷・消失したパケットが最大２つまでは再生できるということをまた意味する。
【００４１】
各パケットの位置は、受信側に知らされなければならず、このためにＲＴＰパケットのヘッダ内にある予備フィールド、または使用者が定義して使用可能な拡張フィールド）を用いることができる。また、このような位置を通知するために、関連するパケットの連結開始点からのオフセットをバイト単位として用いることができる。
【００４２】
このようなオフセットは、ＲＴＰパケットヘッダの拡張フィールドに各パケットに対して含ませることができる。例えば、図７に対して適用する場合、図９に示したように行われれる。この場合、送信側から受信側に送信される順序は、パケット１（Ｐ１）−＞パケット２（Ｐ２）−＞パケット３（Ｐ３）−＞パケット４（Ｐ４）−＞パリティパケット１（ＰＰ１）−＞パリティパケット２（ＰＰ２）になる。
【００４３】
このように１つのデータパケットが入力されるたびに、該当するパリティパケットを継続して更新した後（Ｓ２０３）、データパケット復元のための情報及びデータパケットを含む拡張データパケットを受信側に送信する（Ｓ２０４）。ここで、データパケット復元のための情報は、拡張データパケットのヘッダ部分に含まれる。
【００４４】
また、データパケット復元のための情報は、データパケットである場合にはパケットの種類とオフセットを含み、パリティパケットの場合にはパケットの種類と、関連するパケットグループ内のデータパケットの全体サイズを含み、また、各データパケットのオフセットをさらに含むことができる。
【００４５】
一方、パリティパケットの更新は、２次元記憶装置１００のデータを１バイトずつ縦に演算してバイト単位に行われる。データパケットを含む拡張データパケットは、２次元記憶装置１００内での当該データパケットの位置を示すオフセット、パケットの種類及びデータパケットを含む。
【００４６】
リアルタイム伝送によく用いられるＲＴＰのようなプロトコルが用いられる場合、オフセットを拡張フィールドに表示して伝送することができ、ＲＴＰパケット自体が拡張パケットになる。
【００４７】
パリティパケットを更新した後（Ｓ２０３）、パリティパケットを送信する時点であるかどうかを決定する（Ｓ２０５）。パリティパケットの送信可否の決定は、関連するパケットグループを決定する因子によって変わる。関連するパケットグループを決定する因子が、関連するパケットグループのしきい値サイズである場合に、入力されるデータパケットのサイズの累積値がしきい値大きさ以上であればパリティパケットを送信する時点と決定する。決定する因子がデータパケットのしきい値個数である場合に、入力されるデータパケットの個数がしきい値個数以上であればパリティパケットを送信する時点と決定する。決定する因子がしきい値時間である場合に、経過した時間がしきい値時間以上であればパリティパケットを送信する時点と決定する。一方、その他の多様な因子を利用して送信可否を決定することができるので、記述した因子を利用することに限定されない。もし、パリティパケットの送信時点でないと判断される場合、データパケットの入力可否を判断する過程（Ｓ１０３）にリターンされる。
【００４８】
一方、パリティパケットの送信時点であると判断される場合、チャンネル状態によって送信されるパリティパケットの個数を決定する（Ｓ２０６）。つまり、チャンネル状態がよければ送信するパリティパケットの数を減らし、チャンネル状態が悪ければパリティパケットの数を増やして送信することにより、さらに改善された画質を提供することができる。チャンネル状態に対する情報は、ＲＴＣＰ（Ｒｅａｌ−ｔｉｍｅ　Ｔｒａｎｓｐｏｒｔ　Ｃｏｎｔｒｏｌ　Ｐｒｏｔｏｃｏｌ）を利用してやり取りすることができる。
【００４９】
その後、送信されたパリティパケットの個数と、上述の過程（Ｓ２０６）で決定された送信されるパリティパケットの個数とを比較する（Ｓ２０７）。送信されたパリティパケットの個数が送信されるパリティパケットの個数以内であれば、データパケット復元のための情報とパリティパケットを含む拡張パリティパケットを送信し（Ｓ２０８）、送信されたパリティパケットの個数を累積して（Ｓ２０９）、Ｓ２０７にもどる。この時、拡張パリティパケットは、関連するパケットグループ内のデータパケット全体のサイズ、パケットの種類及びパリティパケットを含む。また、拡張パリティパケットは、各データパケットのオフセットをさらに含むことができ、これはパケット間の境界を示すコードがないデータパケットの復元に使用することができる。
【００５０】
しかし、送信されたパリティパケットの個数が送信されるパリティパケットより大きい場合、つまり、送信されるパリティパケット個数以上送信された場合には、送信されたパリティパケットとパリティパケットの個数を初期化する（Ｓ２１０）。パリティパケットの送信可否を決定する因子の値もまた初期化（Ｓ２１１）して、Ｓ１０５を終了した後、入力データパケットの存在有無を判断する過程（Ｓ１０３）にリターンされる。
【００５１】
上述したように、連続して入力されるデータパケットに対して、各入力毎に直前のデータパケットの最後の部分に連結されて配置された後、図２に示す実施例の詳細に従って、２次元記憶装置１００を利用したＦＥＣ符号化及びパケット送信過程（Ｓ１０５）が実行される。
【００５２】
以上、本発明の実施例によるＦＥＣ符号化方式に基づいた可変長パケット送信方法について説明したが、以下では受信方法について説明する。
【００５３】
図３は、本発明の実施例によるＦＥＣ符号化方式に基づいた可変長パケット受信方法の流れ図である。図３に示されているように、本発明の実施例によるＦＥＣ符号化方式に基づいた可変長パケット受信方法は受信側で行われる。
【００５４】
まず、受信側がＦＥＣ復号化に必要なパラメータとして事前に定義された値を使用するかどうかを判断する（Ｓ３０１）。事前に定義されたパラメータを使用しない場合には、送信側にから伝送されるパラメータを受信して（Ｓ３０２）使用する。しかし、事前に定義されたパラメータを使用すると判断される場合、パラメータを受信する過程（Ｓ３０２）は省略する。ただし、受信しても差し支えない。
【００５５】
次に、送信側にから伝送されて受信される拡張パケットの存在の有無を判断して（Ｓ３０３）、なければ終了する。受信される拡張パケットが存在すれば、拡張パケットを受信した後、２次元記憶装置２００に連結して配置する（Ｓ３０４）。次に、２次元記憶装置２００を利用したＦＥＣ復号化によりデータパケットを復元した後、上位階層に復元されたデータパケットを伝達する（Ｓ３０５）。このように受信される拡張パケットが存在する期間中は、拡張パケットを受信した後、連結配置する過程（Ｓ３０４）と、ＦＥＣ復号化、データパケット復元及び伝達過程（Ｓ３０５）とが反復実行される。
【００５６】
一方、判断過程（Ｓ３０３）で受信される拡張パケットがなければ、受信プロセスは終了する。
【００５７】
図４は、図３に示されたパケットの受信及び２次元記憶装置に連結配置する過程（Ｓ３０４）の詳細流れ図である。図４に示されているように、送信側から伝送されてくる拡張パケットをＳ４０１で受信する。この拡張パケットが拡張データパケットであるか否（つまり拡張パリティパケットである）かを判断する（Ｓ４０２）。拡張データパケットであれば、この拡張データパケットからデータパケットと、拡張パケットヘッダ部分に含まれるデータパケット復元のための情報とを分離する（Ｓ４０３）。もし拡張パリティパケットであれば、パリティパケットとデータパケット復元のための情報とを分離する（Ｓ４０４）。
【００５８】
その後、分離されたデータパケットまたはパリティパケットを図７に示された２次元記憶装置２００に連結して配置する（Ｓ４０５）。ここで、各データパケット及びパリティパケットが連結されて配置された後の２次元記憶装置２００の配置形態は、送信側で入力データパケット及びパリティパケットを記憶した２次元記憶装置１００の配置形態と同一である。つまり、送信側で２次元記憶装置１００内に配置された各パケットの位置、または関連するパケットの連結開始点からのオフセットなどが受信側に知らされるために、受信側の２次元記憶装置２００に配置された形態が同一になる。従って、ここでは図７に示された１つの図面に異なる図面符号を使用して、送信側２次元記憶装置１００と受信側２次元記憶装置２００とを示す。
【００５９】
図５は、図３に示されたＦＥＣ復号化、データパケット復元及び伝達過程（Ｓ３０５）の詳細流れ図である。図５に示すように、図４で分離されたデータパケットを２次元記憶装置２００に配置すれば（Ｓ４０５）、関連するパケットグループを上位階層に伝達する時点であるかどうかを判断する（Ｓ５０１）。
【００６０】
もし、関連するパケットグループを上位階層に伝達する時点でなければ、図５から図３にリターンして、拡張パケットを受信する過程（Ｓ３０３、Ｓ３０４）を継続して行い、上位階層に伝達する時点であれば受信したデータパケットに損傷・消失があるかどうかを判断する（Ｓ５０２）。
【００６１】
ここで、上位階層は、同化階層やデコーダ階層などであってもよい。また、上位階層に伝達する時点は、関連するパケットグループ内の最後のパケットまたはその次の関連するパケットグループ内のパケットが到着した時点、またはパケットが全て到着しなくても所定時間が経過した後の時点である。
【００６２】
判断過程（Ｓ５０２）においてデータパケットに損傷・消失がなければ、受信したデータパケットを上位階層に伝達する（Ｓ５０７）。もしデータパケットに損傷・消失があれば、復元が可能な部分があるかどうかを判断する（Ｓ５０３）。復元可能な部分があるデータがあれば、パリティパケットを使用して損傷・消失したデータを復元する（Ｓ５０５）。その後、損傷・消失したデータを復元し、復元できない部分がなければ上位階層に復元したデータを含む受信されたデータを伝達（Ｓ５０７）して、図３にリターンする。
【００６３】
例えば、損傷・消失したパケットの復元に対してＲＳ（６，４）を使用するので、４個の入力デジットが２個のパリティパケットを算出し、６パケットの中で損傷・消失されたパケットが最大２個まで復元できる。ここで、各パケットが自身の一連番号を有するＲＴＰプロトコルを使用することによって、受信側で損傷・消失されたパケットの位置を知るために、このような損傷・消失されたパケットを消去部分ということができる。例えば、図８（ａ）に示されているように、損傷・消失したパケット２（ＭＰ２）とパケット３（ＭＰ３）とは、パリティパケット（ＰＰ１、ＰＰ２）によって復元することできる。従って、上述した過程（Ｓ５０３）で復元可能であると判断されると、上記過程（Ｓ５０５）で復元される。
【００６４】
しかし、水平的に同一な位置で２個を超えるデジットが損傷・消失した場合、損傷・消失したデジットは復元できない。例えば、図８（ｂ）に示されているように、パケット１（ＭＰ１）とパケット４（ＭＰ４）が損傷・消失された場合、矢印で表示された水平位置で３個のデジットに損傷・消失した部分が発生するために、この部分では損傷・消失したパケットを復元できない。このように、損傷・消失したデータが復元できない部分があれば、上位階層に損傷・消失したデータの位置を伝達する（Ｓ５０４）。
【００６５】
上述した例では、ｎが６であるＲＳ（６，４）についてだけ説明したが、通常ＲＳ（ｎ，ｋ）コードが使用される場合、ＧＦ（２８）で最も大きいｎである２８＝２５５まで適用することができる。また、ネットワーク状態が非常に悪い場合、（ｎ−ｋ）を増加させるためにパリティパケットの数を増加させることができる。
【００６６】
また、上述した例では、ＲＳ（６，４）の場合についてだけ説明したが、本発明の技術的範囲はこれに限定されず、他のＲＳコードに対しても適用することができる。また、ＲＴＰのようにパケットの一連番号をヘッダに明示するプロトコルだけでなく、パケットの一連番号が分からない場合にも適用することができる。この場合には、損傷・消失したデータパケットを復元することができる範囲は、パリティパケット個数の半分以内に限定することできる。
【００６７】
もし、損傷・消失した程度が復元可能な範囲を外れた場合、一部損傷・消失したデータは復元できず、この時の損傷・消失した部分の位置を上位階層に伝達することができる（Ｓ５０４）。
【００６８】
一方、本発明の実施例では、データパケット及びパリティパケットを２次元記憶装置１００、２００に配置することを説明しており、このような２次元記憶装置１００、２００は仮想の２次元記憶装置または実際のメモリでありうる。つまり、入力されるデータパケットを別途に記憶する装置をおくのではなく、アプリケーションなどにより指定されるメモリである仮想の２次元記憶装置であるか、またはハードウェア的にデータパケットを別途に記憶する実際メモリでありうる。
【００６９】
以上説明した本発明は、本発明の属する技術分野における通常の知識を有する者が、本発明の技術的思想を逸脱しない範囲内で多様に置換、変形及び変更が可能であるので、上述した実施例及び添付した図面に限定されるわけではない。
【００７０】
【発明の効果】
以上説明したように、本発明によれば、２次元記憶装置に可変長の各データパケットが入力されるたびに連続的に記憶して記憶すると同時に、関連するパケットに対してパリティパケットを更新させ、データパケットを直ちに伝送するので、送信側で発生する遅延を最少化することが可能となる。
【００７１】
また、本発明によれば、データ伝送中に損傷・消失したパケットを復元できるので、優れた品質のサービスを可能にし、特にインターネット上でのビデオサービスなどに適用される場合、優れた画質のサービスを提供することができる。
【図面の簡単な説明】
【図１】本発明の実施例によるＦＥＣ符号化方式に基づいた可変長パケット送信方法の流れ図である。
【図２】図１に示されたＦＥＣ符号化及びパケット送信過程（Ｓ１０５）の詳細流れ図である。
【図３】本発明の実施例によるＦＥＣ符号化方式に基づいた可変長パケット受信方法の流れ図である。
【図４】図３に示されたパケットの受信及び２次元記憶装置に連結配置する過程（Ｓ３０４）の詳細流れ図である。
【図５】図３に示されたＦＥＣ復号化及びデータパケット復元及び伝達過程（Ｓ３０５）の詳細流れ図である。
【図６】従来のＦＥＣ符号化方式に基づいた可変長パケットの整列方法の概略図である。
【図７】本発明の実施例によるＦＥＣ符号化方式に基づいた可変長パケットの整列方法の概略図である。
【図８】本発明の実施例によるＦＥＣ符号化方式に基づいた可変長パケット受信方法で受信されたパケットの損傷・消失復元を概略的に示した図であり、（ａ）は、全ての損傷・消失部分が復元可能な状態を示し、（ｂ）は、一部復元不可能領域が存在する状態を示す。
【図９】本発明の実施例によるＦＥＣ符号化方式に基づいた可変長パケット送信方法で各パケットのオフセットを示した図である。
【図１０】パケットサイズが大略１５０バイトと３０００バイトとの間で変動するビデオ信号と、パケットサイズが１１２バイトに固定されたオーディオ信号とを示した図である。
【符号の説明】
１００　　送信側の２次元記憶装置
２００　　受信側の２次元記憶装置
【図１】
2004032719.tif 000003
【図２】
2004032719.tif 000004
【図３】
2004032719.tif 000005
【図４】
2004032719.tif 000006
【図５】
2004032719.tif 000007
【図６】
2004032719.tif 000008
【図７】
2004032719.tif 000009
【図８】
2004032719.tif 000010
【図９】
2004032719.tif 000011
【図１０】
2004032719.tif 000012