JP3701956B2 - パケット中継装置及びその方法と、パケット受信装置及びその方法と、パケット中継プログラム及びそのプログラムを記録した記録媒体と、パケット受信プログラム及びそのプログラムを記録した記録媒体 - Google Patents

パケット中継装置及びその方法と、パケット受信装置及びその方法と、パケット中継プログラム及びそのプログラムを記録した記録媒体と、パケット受信プログラム及びそのプログラムを記録した記録媒体 Download PDF

Info

Publication number
JP3701956B2
JP3701956B2 JP2004057023A JP2004057023A JP3701956B2 JP 3701956 B2 JP3701956 B2 JP 3701956B2 JP 2004057023 A JP2004057023 A JP 2004057023A JP 2004057023 A JP2004057023 A JP 2004057023A JP 3701956 B2 JP3701956 B2 JP 3701956B2
Authority
JP
Japan
Prior art keywords
packet
error correction
information
packets
lost
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 - Lifetime
Application number
JP2004057023A
Other languages
English (en)
Other versions
JP2005012753A (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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2004057023A priority Critical patent/JP3701956B2/ja
Publication of JP2005012753A publication Critical patent/JP2005012753A/ja
Application granted granted Critical
Publication of JP3701956B2 publication Critical patent/JP3701956B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Detection And Prevention Of Errors In Transmission (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、通信ネットワークから誤り訂正演算ブロックを構成するパケットを受信して、通信ネットワークへ送信するパケット中継装置及びその方法と、そのパケット中継方法の実現に用いられるパケット中継プログラム及びそのプログラムを記録した記録媒体と、そのパケット中継装置を経由して送信されてくるパケットを受信するパケット受信装置及びその方法と、そのパケット受信方法の実現に用いられるパケット受信プログラム及びそのプログラムを記録した記録媒体とに関する。
本発明は、具体的には、動画像や音声やその他のディジタル信号が例えばMPEG(Moving Picture Experts Group)方式に従って符号化および多重化され、パケット化されてパケット通信ネットワークに送出されるときに、その時系列のデータをパケット通信ネットワーク上で受信して下流へ送信するパケット中継技術と、そのパケット中継技術に従って送信されてくるパケットを受信するパケット受信技術とに関する。
インターネットに代表されるディジタルパケット通信網の高速化・広帯域化にともない、高画質な動画像のネットワーク配信サービスが現実的となりつつある。動画像の配信サービスは、視聴者個別の要求に応じて配信を行うVoD(Video on Demand)型サービスと、多数の視聴者へ一斉に同報配信する放送型サービスとの二つに大別される。
放送型サービスでは、配信サーバから送信された動画像や音声その他の符号化情報が格納されたパケットを、中継ルータによってパケットを複製しながら下流に伝送することで、多数の受信端末への一斉配信を可能にする。このため、図33に示すような樹状型の配信ネットワーク構造が適している。
さて、パケット通信ネットワークの特性として、伝送中のパケットの消失が起こることが一般的に知られている。これは、ルータやハブ等の交換装置において一時的にトラヒックが輻輳し、交換装置のバッファ溢れによってパケットが失われることが主な原因とされている。
インターネットに代表されるIP網は、帯域が保証されないベストエフォート型の伝送路であるため、一時的な輻輳によるパケットの消失が起こりやすい。このため、一般のデータ伝送では、TCPプロトコルに代表される再送機能を持ったプロトコルを使用することにより、伝送データの完全性を保証している。
MPEG−2に代表される動画像の高圧縮符号化方式においても、可変長符号の特性などに起因して、符号化情報の誤りや消失が生じた場合に復号画像が劣化することが知られている。従って、動画像符号化情報の伝送においても、伝送時の信号誤りや消失を避けなければならない。
VoDに代表される非リアルタイムの動画像アプリケーションにおいては、TCPプロトコルに類似した再送手順を用いることによって伝送誤りや消失を回復することができる。しかしながら、ライブテレビ放送のようなリアルタイム型の動画像アプリケーションにおいては、再送による損失回復は困難となる。
デコーダには一定の伝送遅延で符号化情報が供給される必要があるため、再送手順によって生じた遅延によって、デコーダでの復号タイミングに間に合わなくなった場合には再送データは意味をなさなくなる。デコーダの直前にバッファを設けることにより、再送手順に要する時間の制限は緩和されるが、バッファでの滞留時間だけ伝送遅延が大きくなり、リアルタイム性が保たれなくなる。
多段中継によるリアルタイム伝送に特化して再送を行うノードを適応的に制御し、遅延時間を短縮する方式も提案されているが(例えば、非特許文献1参照)、再送手順そのものに要する遅延を減少させることはできない。さらに、図33に示すような階層型の網構成をとる場合、下流の中継ルータからの再送要求が上流に集中し、再送の処理負荷が問題となる。
そこで、リアルタイム性を重視する伝送においては、FEC(前方誤り訂正)を用いて伝送誤りや消失を回復する方式が採用される。なかでも、符号量の増加分に対する誤り訂正能力が高いリードソロモン符号によるFECが用いられている。
図34は、FECによる伝送損失回復方式の第1の例である(例えば、非特許文献2参照)。送信側において、符号化情報は行方向にバッファメモリに格納される。誤り訂正符号生成器は、バッファメモリに格納された値の列方向を原信号として、FEC符号を生成し、FECパケットを構成する。ここで、FEC符号の生成を列方向とする理由は、伝送中に1つのパケット全体が消失した場合においても、FEC復号の際にはそれぞれ1シンボルづつの消失に分散されることとなり、パケットの回復が可能となるためである。
ここではリードソロモンFEC(15,13) FEC符号(15個のパケット中、13個がデータパケットで、2個がFECパケット)を使用することとし、13個のメディアパケットと2個のFECパケットとが伝送される。受信側においては、到着したパケットをバッファメモリに行方向に格納し、列方向に順に誤り訂正演算を適用する。
リードソロモンFEC(n,k) 符号では、t個のパケット消失、p個のシンボルにビットエラーが生じた場合、“n−k≧t+2p”を満たせば回復が可能である。例えば、リードソロモンFEC(15,13) 符号の場合には、ビットエラーが発生しない場合には2パケットの消失まで完全に復号でき、また、1パケットの消失と各列ごとに1シンボルのエラーとが同時に発生しても完全に復号することができる。
図35は、パケット入出力をインタリーブしたFECによる伝送損失回復方式の第2の例である。行方向に入力される符号化情報に対し、FEC符号は各行ごとに付加される。そのうえで、バッファメモリを各列単位に読み出して伝送用パケットを構成し、送出する。行方向の入力を列方向に読み出して伝送することにより、伝送中に1パケットが消失しても、FEC復号の際にはそれぞれ1シンボルづつの消失に分散されるという効果は、第1の例と同じである。受信側では受信したパケットを列方向に格納し、各行ごとに誤り訂正演算を行ったのち、符号化情報のみを行方向に読み出して出力する。
なお、図34に示す第1の例の場合も図35に示す第2の例の場合も、伝送路を流れるデータはメディアパケットとFECパケットとから構成されている。
このようにFECを使用すると、パケットの再送を行うことなくパケット消失やビットエラーの訂正が可能となるが、誤り訂正符号の訂正能力を超えた場合には回復が不可能となる。特に図33に示すように、多段の中継ルータを介してパケットが伝送される場合には、各リンクにおいて生じるパケット消失やビットエラーが累積してゆくため、受信側において誤り訂正能力を超える確率が上昇する。
これを防ぐ一つの方法として、FECパケットの割合を増加させることで対処することができるが、伝送効率が悪化する。
これを防ぐもう一つの方法として、各中継ルータに誤り訂正符号演算器を設置し、中継ルータごとにFEC演算を行って損失を回復してから送信する方法が考えられる。しかしながら、この方法を用いる場合、各中継ルータにおいて、誤り訂正演算の1ブロック(誤り訂正符号の付与単位となるブロック)を構成するパケットの到着を待ち合わせてから誤り訂正を行い、改めて各パケットを送信する必要があるため遅延が増加し、FEC方式の特徴である低遅延伝送の利点を損なうという問題がでてくることになる。
パケット消失によるもう一つの問題点として、デコーダにおける遅延揺らぎの発生が挙げられる。
MPEG−2符号化方式では、一定ビットレート(CBR)のビットストリームは一定の伝送遅延でデコーダに到着することが仮定されており、エンコーダとデコーダとの時刻を一致させるための時報の役を担う時刻基準参照値(PCRまたはSCR)についても、到着時刻の誤差が±0.5μsec という高い精度が要求される。
一般的なパケット通信ネットワークにおいては、伝送によって遅延揺らぎが発生するため、MPEG−2デコーダが仮定するような一定の伝送遅延は実現できない。よってデコーダの前段に平滑化装置を設け、揺らぎを伴って到着したパケットを一時バッファに蓄積して、一定速度でデコーダへ供給する手段がとられる。
ここで、FECで回復不可能な数量のパケット消失が生じた場合、後続のパケットが時間的に前方向にずれることとなり、到着タイミングの正確性が保てなくなる。MPEG−2トランスポートストリームの場合、1 パケットは188バイトであるから、4Mbps のストリームにおける1パケットの消失でも、“1/(4×106/8/188)(sec)= 376μsec ”の誤差となり、前述の±0.5 μsec と比較して大きなタイミング誤差を生じるという問題点があった。なお、8で割り算するのは、1バイトが8ビットであるからである。
大槻他,"リアルタイムメディア伝送のための適応プロトコル中継方式の提案",信学論B J84-B No.9 pp.1633-1642,Sep.2001 大塚他,"FEC を用いたMPEG2 over IP システムの開発と評価",情処研究報告「分散システム/インターネット運用技術」No.024,2002
上述したように、パケット通信ネットワークを使って、パケットを送信装置から受信装置へ伝送していく場合、パケットの消失やビットエラーに対処するために、FECのような誤り訂正演算を用いる必要がある。
しかるに、従来技術では、送信装置でFEC符号化を行い、受信装置でFEC復号するという方法を用いており、これでは、多段の中継ルータを介してパケットが伝送される場合には、各リンクにおいて生じるパケット消失やビットエラーが累積してゆくことにより、受信側において誤り訂正能力を超えることが頻繁に起こるという問題がある。
これを解決するために、各中継ルータに誤り訂正符号演算器を設置し、中継ルータごとにFEC演算を行って損失を回復してから送信するという方法を用いることが考えられる。
しかしながら、この方法を用いると、各中継ルータにおいて、誤り訂正演算の1ブロックを構成するパケットの到着を待ち合わせてから誤り訂正を行い、改めて各パケットを送信する必要があることから伝送遅延が増加するという新たな問題がでてくることになる。
本発明はかかる事情に鑑みてなされたものであって、パケットを送信装置から中継装置を介して受信装置へ伝送していく場合に、伝送遅延を抑えつつ、それと同時に誤り訂正能力の向上を実現できるようにする新たなパケット伝送技術の提供を目的とする。
この目的を達成するために、本発明のパケット中継装置と本発明のパケット受信装置とは、次に説明する構成を採る。
〔イ〕本発明のパケット中継装置の構成
本発明のパケット中継装置は、通信ネットワークから誤り訂正演算ブロックを構成するパケットを受信して、通信ネットワークへ送信する処理を行うために、(1)受信したパケットの持つ誤り訂正演算ブロック内位置情報の指すバッファメモリ位置に、受信したパケットを書き込む第1の手段と、(2)受信したパケットを、誤り訂正演算の実施前に逐次通信ネットワークへ送信する第2の手段と、(3)バッファメモリのパケットに対して誤り訂正演算を施すことで消失パケットを回復させて、それを通信ネットワークへ送信する第3の手段とを備えるように構成する。
この構成を採るときにあって、第3の手段は、誤り訂正演算で回復不可能な個数の消失パケットが存在する場合には、誤り訂正演算が可能となる個数まで消失パケットを所定のバイト列に置き換えたうえで、誤り訂正演算で残る消失パケットを再構成して、置換パケットがどれであるのかを示す情報とともに、再構成したパケットを通信ネットワークへ送信する。
この置換パケットがどれであるのかを示す情報の送信を受けて、第3の手段は、上流側から、置換パケットがどれであるのかを示す情報が送信されてくる場合には、その情報の指すバッファメモリ位置に所定のバイト列を書き込んでから誤り訂正演算を実行する。
そして、第3の手段は、誤り訂正演算でビット誤りを訂正した場合には、ビット誤りの発生位置及び訂正値について記述する情報を生成して送信する。
このビット誤りの発生位置及び訂正値について記述する情報の送信を受けて、第3の手段は、上流側から、ビット誤りの発生位置及び訂正値について記述する情報が送信されてくる場合には、その情報の指定するバッファメモリ位置に書き込まれたパケットを、その情報に従って訂正してから誤り訂正演算を実行する。
以上の各処理手段が動作することで実現される本発明のパケット中継方法はコンピュータプログラムで実現できるものであり、このコンピュータプログラムは、半導体メモリなどのような適当な記録媒体に記録して提供されたり、ネットワークを介して提供され、本発明を実施する際にインストールされてCPUなどの制御手段上で動作することにより本発明を実現することになる。
〔ロ〕本発明のパケット受信装置の構成
本発明のパケット受信装置は、本発明のパケット中継装置を経由して送信されてくる誤り訂正演算ブロックを構成するパケットを受信する処理を行うために、(1)受信したパケットの持つ誤り訂正演算ブロック内位置情報の指すバッファメモリ位置に、受信したパケットを書き込む第1の手段と、(2)バッファメモリのパケットに対して誤り訂正演算を施すことで消失パケットを回復させる第2の手段と、(3)誤り訂正演算で回復不可能な消失パケットが存在する場合に、それらのパケットをデータフォーマットに準拠したスタッフィング用のバイトに置き換えるとともに、通信ネットワークから送信されてくる情報に従って、所定のバイト列に置き換えられることが検出される消失パケットと、消失パケットではないものの本来のものではないことが検出されるパケットとについて、それらのパケットをデータフォーマットに準拠したスタッフィング用のバイトに置き換える第3の手段とを備えるように構成する。
この構成を採るときにあって、第2の手段は、上流側から、ビット誤りの発生位置及び訂正値について記述する情報が送信されてくる場合には、その情報の指定するバッファメモリ位置に書き込まれたパケットを、その情報に従って訂正してから誤り訂正演算を実行する。
そして、第2の手段は、上流側から、置き換えられる消失パケットがどれであるのかを示す情報が送信されてくる場合には、その情報の指すバッファメモリ位置に所定のバイト列を書き込んでから誤り訂正演算を実行する。
以上の各処理手段が動作することで実現される本発明のパケット受信方法はコンピュータプログラムで実現できるものであり、このコンピュータプログラムは、半導体メモリなどのような適当な記録媒体に記録して提供されたり、ネットワークを介して提供され、本発明を実施する際にインストールされてCPUなどの制御手段上で動作することにより本発明を実現することになる。
このように構成される本発明のパケット中継装置では、受信したパケットを誤り訂正のためにバッファメモリに蓄積すると同時に、誤り訂正演算ブロック全体のパケットが到着するのを待つことなく、下流のパケット中継装置および受信装置に向かって逐次送信する。
そして、誤り訂正演算ブロック全体のパケットが到着し、パケットの消失が検出された場合、パケットの回復が可能であるならば誤り訂正演算を行って回復させて、その回復させたパケットを先送りしたパケットに続く形式で送信する。
この基本的な構成に従って、本発明のパケット中継装置によれば、伝送遅延を極力抑えつつ、誤り訂正演算を実行しながら、パケットを下流側へと送信できるようになる。
このとき、回復が不可能な個数の消失パケットが発生している場合には、第一の方法として誤り訂正演算を行わないか、あるいは、第二の方法として、誤り訂正演算による回復が可能な個数となるまで消失パケットをあらかじめ共通に定めたフィリングバイトで置き換えたうえで、誤り訂正演算を行い残りの消失パケットを再構成して、置換パケット及び再構成パケットがどれであるのかを示す情報とともに、その再構成したパケットを送信する。
第二の方法を用いる場合、下流側に位置するパケット中継装置は、置換パケットについては見かけ上消失パケットとなるので、あらかじめ共通に定めたフィリングバイトで置き換えたうえで、誤り訂正演算を行うことになる。
この第二の方法を用いることで、本発明のパケット中継装置によれば、消失を免れたパケットの誤り訂正能力を保持しつつ、パケットを下流側へと送信できるようになる。
そして、本発明のパケット中継装置では、誤り訂正演算でビット誤りを訂正した場合には、パケットを先送りしていることでその時点では訂正できないことから、ビット誤りの発生位置及び訂正値について記述する情報を生成して送信し、これを受けて、下流側に位置する本発明のパケット中継装置は、先送りされてきたパケットに対して誤り訂正演算を実行する際に、その送信されてくる情報に従って、ビット誤りの発生しているパケットについてはビット誤りを訂正してから誤り訂正演算を実行する。
この構成に従って、本発明のパケット中継装置によれば、多段伝送におけるビットエラーの回復効率を高めることができるようになる。
一方、本発明のパケット受信装置では、誤り訂正演算ブロック全体のパケットが到着し、パケットの消失が検出された場合、パケットの回復が可能であるならば誤り訂正演算を行って回復させる。
の誤り訂正演算の実行にあたって、本発明のパケット中継装置から、ビット誤りの発生位置及び訂正値について記述する情報が送信されてくる場合には、その送信されてくる情報に従ってパケットを訂正してから誤り訂正演算を実行する。
そして、この誤り訂正演算の実行にあたって、本発明のパケット中継装置から、置換パケットがどれであるのかを示す情報が送信されてくる場合には、その情報の指す消失パケットをあらかじめ共通に定めたフィリングバイトで置き換えたうえで、誤り訂正演算を行うことになる。
この構成に従って、本発明のパケット受信装置によれば、本発明のパケット中継装置から送信されてくるパケットに対して、正確な誤り訂正演算を実行することができるようになる。
本発明のパケット受信装置では、この誤り訂正演算を実行するときに、回復が不可能な個数の消失パケットが発生している場合には、それらのパケットをデータフォーマットに準拠したスタッフィング用のバイトに置き換えたうえで、デコーダへ出力するとともに、本発明のパケット中継装置から、置換パケット及び再構成パケットがどれであるのかを示す情報が送信されてくる場合には、それらのパケットが本来のパケットではないので、それらの情報の指すパケットについてもデータフォーマットに準拠したスタッフィング用のバイトに置き換えたうえで、デコーダへ出力する。
このパケットの置き換え処理に従って、本発明のパケット受信装置によれば、本来のパケットがデコーダへ到着するタイミングについて正確性を保てるようになる。
以上説明したように、本発明によれば、各パケット中継装置において誤り訂正演算を実施しつつ下流へ配信することにより、パケット受信装置のみで誤り訂正演算を行う従来方式と比較して誤り訂正能力を向上させるとともに、誤り訂正演算ブロック全体のパケットが到着するのを待たずにパケットを送信することにより、系全体での伝送遅延を低減することができるようになる。
さらに、本発明によれば、消失パケットの回復が不可能な場合においても、メディア情報の符号化フォーマットに準拠したスタッフィングバイトに置き換えることにより、動画像ストリームのビットレートの一定性(CBR)が確保され、受信側のデコーダにおいてパケットの到着タイミングに生じる誤差を防ぐことができるようになる。
以下、実施の形態に従って本発明を詳細に説明する。
〔1〕第1の実施形態例
図1は、本発明が想定するメディア情報の配信形態を示す図である。
動画像、音声、その他の番組を構成するメディア情報を格納したメディアパケットは、送信装置1において、誤り訂正演算ブロック単位でFEC符号が追加され、ネットワークパケットのペイロードに格納されてパケット通信ネットワーク2へ送信される。誤り訂正演算ブロックの構成は、図34および図35で示したいずれの方式でもかまわない。
MPEG−2トランスポートストリームを図34に示した方法で処理した場合、誤り訂正演算ブロック1行にはm個のMPEG−2トランスポートストリームパケット(mは1以上の整数) が入力され、1 つのメディアパケットとなる。
すなわち、誤り訂正演算ブロックの1行を構成するメディアパケットは、1パケットが188バイトで構成されるm個のMPEG−2トランスポートストリームパケットで構成されることになる。
一方、MPEG−2トランスポートストリームを図35に示した方法で処理した場合、誤り訂正演算ブロック全体でm’個のMPEG−2トランスポートストリームパケット(m’は1以上の整数) が入力される。
パケット通信ネットワーク2 としてIP網を使用する場合、ネットワークパケットにはIPパケットが相当する。
図2に、ネットワークパケット311のフォーマットの一例を示す。この図に示すように、ネットワークパケット311は、パケットヘッダ312、拡張ヘッダ313およびペイロードフィールド314で構成される。
パケットヘッダ312は、ネットワークパケット311のヘッダであり、IPパケットの場合にはIP,UDP,RTPヘッダなどに相当する。拡張ヘッダ313は、後述する処理のために必要な情報(ブロック通し番号/パケット通し番号)を格納するために設置される。ブロック通し番号315は、1 つの誤り訂正演算ブロックごとに1つずつカウントアップされ、誤り訂正演算ブロックの区切りを示す。パケット通し番号316は、誤り訂正演算ブロック内でのパケット順序を示す。拡張ヘッダ313の後に、メディアパケットおよびFECパケットが格納されるペイロードフィールド314が続く。
なお、本実施形態例では説明の簡明のため拡張ヘッダ313を設けたが、パケットヘッダ312中に存在するRTPヘッダのシーケンス番号フィールド等によって、拡張ヘッダ313と同等の情報を格納することができる場合には、拡張ヘッダ313は必須ではない。
中継装置3は、ネットワークパケットを受信し、後述する誤り訂正処理を実施しながら、下流の中継装置3または受信装置4へ送信する。
受信装置4は、中継装置3からネットワークパケットを受信し、誤り訂正処理を行うとともに、回復不可能な消失パケットについては、メディア情報の符号化フォーマットに準拠したスタッフィングバイト(メディア情報としては意味のない詰め込み用のバイト。例として、MPEG−2トランスポートストリームであればヌルパケット)に置き換える。そして、誤り訂正符号を除いたメディアパケットのみを元の順序に並べ替え、図示しないデコーダに向かって伝送する。
次に、中継装置3および受信装置4の動作について説明する。
図3に、中継装置3の構成を示す。
この図に示すように、中継装置3は、ネットワークパケット受信器31と、書込制御器32と、バッファメモリ33と、誤り訂正符号演算器34と、読出制御器35と、ネットワークパケット送信器36とを備える。
上流の送信装置1または中継装置3から到着したネットワークパケット311は、ネットワークパケット受信器31によって受信される。以降の中継装置3の動作を、図4に示す動作手順に従って説明する。
まずステップS1で、ネットワークパケット受信器31がネットワークパケット311を受信したら、ステップS2でブロック通し番号315を検査する。そして、同一のブロック通し番号315が付与されたパケットが到着している間、書込制御器32はパケット通し番号316を参照し、ネットワークパケット311から取り出された受信メディア/FECパケット312aを、バッファメモリ33内の対応する位置へ格納する(ステップS3)とともに、バイパス321を通じて読出制御器35へも伝達し、送信メディア/FECパケット351としてネットワークパケット送信器36を経由してネットワークパケット361を送り出す(ステップS4)。
すなわち、誤り訂正演算ブロックを構成するパケット全体がバッファメモリ33に蓄積されるのを待つことなく、受信メディア/FECパケット312aは逐次下流の中継装置3や受信装置4へ送信されることになる。
さて、ステップS2において、ブロック通し番号315が1つ大きな値を持った(桁あふれ時を除く) パケットが到着したら、直前の誤り訂正演算ブロックのパケットが到着し終わったことになるので、以降に説明するバッファメモリ33内の誤り訂正および送信処理(ステップS5)を行ったのち、バッファメモリ33の内容をクリアする(ステップS6)。
次に、ステップS5の動作を、図5に示す動作手順に従って説明する。ここで、消失パケット数dの値は、到着情報302として、ネットワークパケット受信器31から誤り訂正符号演算器34にもたらされることになる。
まずステップS11において、消失パケット数dが0である場合は、処理を行わず終了する。一方、消失パケット数dが1以上の場合は、ステップS12においてdが回復可能な範囲内(d≦(n−k))か否かをチェックし、範囲外であれば処理を行わずに終了する。回復可能な範囲内であれば、ステップS13において誤り訂正符号演算器34が誤り訂正演算を行い、バッファメモリ33内に消失パケットを回復する。
ここで、n、kは、上述したリードソロモンFEC(n,k) 符号に記述されるn,kを示している。
そして、ステップS14において、読出制御器35は演算結果情報341に基づいて、回復されたパケットをバッファメモリ33から取り出し、ネットワークパケット送信器36がブロック通し番号315およびパケット通し番号316を付加して、ネットワークパケット361として送り出す。
次に、上記の中継装置3の動作を、図6の例を用いて具体的に説明する。
ここで、この例において、1 つの誤り訂正演算ブロックは15個のパケットで構成され、誤り訂正符号としてリードソロモンFEC(15,13) 符号(15個のパケット中、13個がデータパケットで、2個がFECパケット)を使用しているものとする。リードソロモンFEC(15,13) 符号では、15個のパケット中、2 個までのパケット消失を完全に回復できる。
図6に示すように、いま、パケット通し番号316で1番〜15番が付与されたパケットのうち、3番と4番のパケットが消失したと仮定する。
バッファメモリ33には、到着したパケットが、それぞれパケット通し番号316に対応した位置に格納される(ステップS3)。また、前述のバイパス321(ステップS4)により、消失したパケット3番、4番を除く他のすべてのパケットは、送信メディア/FECパケット351として逐次送信される。
1つの誤り訂正演算ブロックを構成するパケットの到着が完了したら(ステップS2のYesの場合) 、誤り訂正符号演算器34は動作を開始する(ステップS5)。
いま、3番と4番のパケットが未到着、すなわち消失しているから、消失パケット数d=2である。よって、誤り訂正符号演算器34はFEC復号を行い、消失した3番と4番のパケットを回復する(ステップS13)。回復したパケットは、元と同じブロック通し番号315と、元と同じパケット通し番号316(すなわち、3番, 4番のパケット通し番号316)とが付加されたうえ、バイパス321(ステップS4)経由で、すでに送信されたパケットの後に続けて、「1番→2番→5番→6番→・・・→15番→3番→4番」というような順序で送信される(ステップS14)。
このように、中継装置3を結ぶひとつの伝送路において、誤り訂正符号の訂正能力の範囲内のパケット消失が起こった場合においては、パケットのデータはすべて回復されて下流に送信される。ただしパケット順序の入れ替わりが生じるため、後述するように、受信装置4において正しい順序に並べ替えての出力が行われる。
次に、誤り訂正符号の訂正能力を超えた数のパケットが消失した場合の動作について具体的に説明する。
例として、図6で送信メディア/FECパケット351として送り出されたパケット(図6中に示すように、1番→2番→5番→6番→・・・→15番→3番→4番という順序で送り出されることになる)が、次段の中継装置3に到着するまでに、パケット通し番号316の2番、15番、3番の3つのパケットが消失することで、図7の状態になったとする。
この場合、消失パケット数d=3となり、ステップS12において回復不可能と判断されるため、誤り訂正処理を行わない。すなわち、この場合には、パケット通し番号316の2番、15番、3番の3つのパケットが消失したまま、下流に送信される。
このように本実施形態例においては、ひとつの伝送路において、誤り訂正符号の訂正能力を超えるパケット消失が起こった場合には、当該誤り訂正演算ブロックの訂正をとりやめる。
図8に、受信装置4の構成を示す。
この図に示すように、受信装置4は、ネットワークパケット受信器41と、書込制御器42と、バッファメモリ43と、誤り訂正符号演算器44と、読出制御器45とを備え、バイパス321およびネットワークパケット送信器36が存在しない点が中継装置3と異なる。
受信装置4の動作を、図9に示す動作手順に従って説明する。
図9と図4とを比較すれば分かるように、図4に示す中継装置3の動作と異なるのは、バイパス321を経由した送信(ステップS4) が存在しない点と、バッファメモリ43への書き込み(ステップS23)は、図35で示したパケット入出力をインタリーブしたFEC方式が用いられている場合のみ、各パケットが列方向の対応する位置に書き込まれる点である。
次に、ステップS25(バッファメモリ43内の誤り訂正および出力処理:図4のステップ5に相当する処理)の動作を、図10に示す動作手順に従って説明する。
まずステップS31において、消失パケット数dが回復可能な範囲内(d≦(n−k))か否かをチェックし、範囲内であれば、ステップS32において、誤り訂正符号演算器44が誤り訂正演算を行い、消失パケットを回復する。
一方、消失パケット数dが回復可能な範囲を超えている場合は、ステップS33において、消失パケットに対して後述のスタッフィング処理を行う。そして、ステップS34にて、元の順序に従ってメディアパケット451をバッファメモリ43の最上行から順次読み出し、図示しないデコーダに向かって出力する。
次に、回復不可能な個数の消失パケットが生じた場合の、ステップS34におけるスタッフィング処理を、図11に基づいて説明する。
図34に示した第1のFEC方式を使用している場合、消失パケットは、メディア情報の符号化フォーマットに準拠したスタッフィングバイトに置き換える( 図11(a))。例としてMPEG−2トランスポートストリームの場合、スタッフィングバイトとしてヌルパケットが使用できる。前述のように、誤り訂正演算ブロック1行はm個のMPEG−2トランスポートストリームパケット(mは1以上の整数) からなっているので、バッファメモリ43の消失パケットに相当する行を、m個のヌルパケットに置き換えることができる。
このヌルパケットは、内部に有効な情報を持たないパケットであり、図示しないMPEG−2デコーダに入力された後、映像や音声の復号処理が行われる前に破棄される。もしこの置き換え処理を行わず、消失パケットを消失したまま出力した場合、後続のパケットが時間的に前方向にずれてデコーダに入力されることとなり、デコーダへの到着タイミングの正確性が保てなくなる。消失パケットをヌルパケットに置き換えて出力することにより、デコーダに対して動画像ストリームのビットレートの一定性(CBR)を確保することができる。
図35に示した第2のFEC方式(パケット入出力がインタリーブされた方式)を使用している場合、消失パケットはバッファメモリ43の縦方向の欠落をもたらす。そのため、欠落部分は任意のバイトに置き換えて出力する(図11(b))か、あるいは、データの一部が壊れたメディアパケットの発生を防ぐために、誤り訂正演算ブロック全体のパケットを、メディア情報の符号化フォーマットに準拠したスタッフィングバイト、例えばヌルパケットに置き換えて出力する( 図11(c))。
いずれの場合も、デコーダに対して動画像ストリームのビットレートの一定性(CBR)を確保することができる。
なお、いずれの置き換え処理においても、動画像ストリームの一部が消失しているため、デコーダは動画像や音声を完全に復号することができない。そのため、図示しないデコーダに、回復不可能なエラーが発生したことを通知することもできる。デコーダは、この通知を受け、動画像ストリームの復号で異常状態に陥らないよう自身を制御するとともに、画像の補間などにより復号画像の乱れを抑える処理を行うことができる。
本発明によってパケット中継を行った場合の伝送遅延を、従来例と比較した例を図12に示す。ここでは、誤り訂正演算に要する時間は、パケット伝送に要する時間と比較して十分小さいとしている。
従来例では、パケットの回復率を高めるために各中継装置において誤り訂正演算を行うためには、誤り訂正演算ブロックを構成するパケット全体が到着してから誤り訂正演算を行い、その後に当該誤り訂正演算ブロックの送信を開始せざるを得なかった。そのため、中継装置1段につき、nパケットの伝送に必要な時間分の遅延が生じる。ここで、nは、上述したリードソロモンFEC(n,k) 符号に記述されるnを示している。
これと比較して、本発明では、各中継装置において、当該誤り訂正演算ブロックの受信が終了した後、誤り訂正演算を行い、その後出力されるパケットは最大でも(n−k)個である。従って、中継装置1段あたりの遅延は、(n−k)パケットの伝送に必要な時間にまで抑えられる。
すなわち、リードソロモンFEC(n,k) 符号で回復できるパケットは最大でも(n−k)個であることから、その後出力されるパケットは最大でも(n−k)個であり、従って、中継装置1段あたりの遅延は、(n−k)パケットの伝送に必要な時間にまで抑えられるのである。
なお、本実施形態例においては1チャネルの場合について記述したが、複数チャネルに対応した中継装置の構成も、バッファメモリの複数配置ないし複数チャネルを多重したメディア/FECパケットの使用によって容易に実現することが可能である。
また、図3において、バイパス321は書込制御器32と読出制御器35とを結び、メディア/FECパケットを伝送するよう記述したが、受信したネットワークパケット311の宛先アドレスやポート番号等を書き換えるのみで送信のネットワークパケット361として使用することが可能な場合には、処理負荷の軽減のため、バイパス321がネットワークパケット361を伝送するよう構成することも可能である。
また、説明の簡素化を図るために、バッファメモリ33,43は1つのみ記載したが、一般的にバッファメモリ33,43は、いわゆるダブルバッファで構成することができる。この場合、一方のバッファメモリで、ある誤り訂正演算ブロックの誤り訂正処理およびパケット出力処理を行っていると同時に、他方のバッファメモリで、次の誤り訂正演算ブロックの到着パケットを格納することができ、パケット入出力の平滑性を高めることができる。
本実施形態例で説明した動作手順においては、バッファメモリ33内の誤り訂正および送信処理(ステップS5)が起動されるのは、ブロック通し番号315が+1された次の誤り訂正演算ブロックのネットワークパケットが到着したとき(ステップS2)としたが、ステップS5の起動に別の条件を設定することも考えられる。
例えば、動画像や音声などの符号化情報は一般的にパケット伝送遅延に対する要求が厳しく、ある閾値よりも大きな遅延をもってデコーダに到着したパケットは復号に用いることができず、パケットを廃棄せざるを得ない場合が生じる。このような場合、ステップS5を起動する条件として、ステップS2が真の場合、ならびに、パケットの受信遅延が当該中継装置で許容される最大遅延に達した場合と規定することができる。
例えば、1 つの誤り訂正演算ブロックを構成するnパケットの伝送に要する時間をT、許容される最大の遅延増加をTd、パケット中継開始からの訂正演算ブロックの累積数(すなわち、当該誤り訂正演算ブロックのブロック通し番号315と、パケット中継開始後最初にステップS5の処理を行った誤り訂正演算ブロックのブロック通し番号315との差分) をBとすると、パケット中継開始後最初にステップS5を起動してのち、“T×B+Td”時間ごとにステップS5を起動することができる。それ以降に、当該誤り訂正演算ブロックを構成するパケットが遅れて到着したとしても、消失パケットとして扱われる。
ステップS5を起動する条件を上記のように変更することにより、パケット通信ネットワーク2において一時的に伝送遅延が増加した場合でも、許容される最大遅延に違反することなくパケット中継を継続することができる。
本発明が対象とするパケット通信ネットワーク2では、多数端末への一斉配信を実現するために中継装置3を樹状型に配置したが、これは物理的な網構成を限定するものではなく、仮想的(論理的)に階層型構成をとる場合も含むものである。また、多数端末への一斉配信を必要としない場合には、樹状型の階層構成は必要なく、送信装置1と受信装置4とを結ぶ伝送路上に中継装置3を配置すればよい。
〔2〕第2の実施形態例
本実施形態例は、ある誤り訂正演算ブロックにおいて誤り訂正符号の訂正能力を超えたパケット消失が起こった場合でも、消失を免れた他のパケットの誤り訂正能力を保持しようとするものである。
第1の実施形態例においては、中継装置3において、消失パケットの個数dが誤り訂正符号の訂正能力(n−k)を超えている場合には、図5のステップS12や図7に示したように誤り訂正処理を行わなかった。そのため、当該誤り訂正演算ブロックで消失を免れた他のパケットについても、以降の伝送においてパケット損失が発生した場合、回復が不可能となっていた。
これに対し本実施形態例では、d−(n−k)個の消失パケットを、あらかじめ共通に定めたフィリングバイト(メディア情報として意味を持たない無効なバイト)に置き換えたうえで、残りの(n−k)個の消失パケットを、誤り訂正演算によって再構成する。そして、再構成した消失パケットを下流に向けて送信する。それと同時に、フィリングおよび再構成したパケットの通し番号情報もあわせて送信する。
この処理により、当該誤り訂正演算ブロックで消失を免れた他のパケットについては、以降の伝送においてもパケット損失に対する回復能力が保持される効果がある。
図13に、本実施形態例で使用するネットワークパケット311のフォーマットの一例を示す。
本実施形態例で使用するネットワークパケット311は、第1の実施形態例で使用するものと比較して、拡張ヘッダ313に損失表示317が追加されている点が異なる。
この損失表示317は、後述のフィリング処理ならびに再構成処理がなされたパケットの通し番号を表示するためのフィールドである。例えば、図13(a)に示すように、各パケット通し番号316について、通し番号1〜nのそれぞれについて2ビットを割り当てて、「通常(0)」/「フィリング(1)」/「再構成(2)」の3値を用いて表示したり、図13(b)に示すように、フィリングパケットおよび再構成パケットの通し番号を列挙により表示することで、どれが通常パケットで、どれがフィリングパケットで、どれが再構成パケット(再構成されたパケット)であるのかを表示する。
送信装置1からネットワークパケットを送信する際には、どのパケットもフィリング・再構成されていない状態である。すなわち、損失表示317はすべて「通常(0)」となっている。
次に、中継装置3および受信装置4の動作について述べる。
中継装置3の構成および動作手順は、第1の実施形態例で示した図3および図4と同様である。ただし、バッファメモリ33内の誤り訂正および送信処理(図4のステップS5の処理) のみが第1の実施形態例の図5と異なるため、これについて図14に従って説明する。
消失パケット数dの値および損失表示317の内容は、到着情報302としてネットワークパケット受信器31から誤り訂正符号演算器34にもたらされる。損失表示317の内容は、当該誤り訂正演算ブロックを構成するパケットの中で最後にネットワークパケット受信器31に到着したものが使用される。
まずステップS41において、消失パケット数dから「フィリング(1)」表示されたパケットの数sを差し引いた値d'(=d−s)が演算される。ステップS42において、d’が0である場合には、直前の伝送路(一段上流側の送信装置2または中継装置3から、当該中継装置3までを結ぶ伝送路) においてパケット損失が発生していないことを意味するので、処理を行わず終了する。
一方、d’が1以上の場合は、ステップS43において、損失表示317で「フィリング(1)」表示された通し番号のパケットが格納されるバッファメモリ33の位置に、あらかじめ共通に定めたフィリングバイトを書き込む。
続いてステップS44において、d ’が(n−k)以下か否かをチェックする。d ’が(n−k)以下の場合、直前の伝送路で生じた消失パケットが回復可能であることを意味するので、ステップS45において、誤り訂正符号演算器34が消失パケットを回復する。そして、ステップS46において、回復されたパケットを、到着情報302で得た損失表示317と同じ損失表示317を添えて送信する。
ステップS44において、d ’が(n−k)を超えた値の場合、直前の伝送路で回復不可能な個数の消失パケットが生じたことになる。そこで、ステップS47において、ステップS43でフィリングされずに残っている任意のd’−(n−k)個の消失パケットを新たにフィリングする。そしてステップS48において、誤り訂正符号演算器34が(n−k)個の消失パケットを再構成する。
ステップS49では、損失表示317を更新する。すなわち、到着情報302として得た損失表示317に対して、ステップS47において新たにフィリングしたd ’−(n−k)個の消失パケットの表示を「フィリング(1)」とするとともに、ステップS48で再構成した消失パケットの表示を「再構成(2)」とする。そのうえで、ステップS50において、更新した損失表示317を添えて、再構成されたパケットが送信される。
このように、d ’−(n−k)個の消失パケットを、あらかじめ共通に定めたフィリングバイトに置き換え、残り(n−k)個の消失パケットを誤り訂正演算によって再構成することにより、元の値とは異なる新たな値の誤り演算ブロックが生成されたことになる。この誤り訂正演算ブロックは、元と同じく(n−k)個のパケット消失を回復する能力をもつ。そのため、この段階で消失を免れているその他のパケットについては、これ以降の伝送においても誤り訂正能力を失うことなく、パケット消失から保護することができる。
上記の中継装置3の動作を、図15の例を用いて具体的に説明する。この例においても、1 つの誤り訂正演算ブロックは15個のパケットで構成され、誤り訂正符号としてリードソロモンFEC(15,13) 符号(15個のパケット中、13個がデータパケットで、2 個がFECパケット)を使用しているものとする。
いま、損失表示317がすべて「通常(0)」の状態で、通し番号2番、15番、3番の3つのパケットが消失したとする。すなわち、「フィリング(1)」表示されたパケット数s=0で、消失パケット数d=3であるとする。
まず、ステップS41において、d’=3−0=3と演算される。ステップ42の判断結果はNoとなる。ステップS43では、「フィリング(1)」表示されたパケットは現時点で存在しないので、どれもフィリングされない。
ステップS44において、d’=3は(n−k)=2を超える値なので、ステップS47に移行し、d’−(n−k)=3−2=1個の消失パケットのバッファ位置に、あらかじめ共通に定めたフィリングバイトを書き込む。図15の例では、通し番号2のバッファ位置にフィリングバイトを書き込んでいる。そのうえで、ステップS48で、残る15番、3番の消失パケットを、誤り訂正演算によって再構成する。そして、ステップS49で、損失表示317を、通し番号2番を「フィリング(1)」に、15番と3番とを「再構成(2)」に更新したうえ、ステップS50で2つの再構成パケットを送信する。
この更新された損失表示317については、再構成パケット(この例では、15番と3番)にのみ付加される。したがって、下流に位置する中継装置3は、誤り訂正符号演算器34により再構成の処理の施された再構成パケット(再構成パケットは最後に送信されてくることになる)に付加されている損失表示317を参照することになる。
なお、「フィリング(1)」表示した2番についてはパケットを送信する必要はない。
図15において送信されたパケットが、さらにひとつ下流に位置する中継装置3 に到着するまでに、通し番号5番のパケットが損失したと仮定し、次段の中継装置3の動作を図16を用いて具体的に説明する。
更新された損失表示317を持っているパケットは通し番号3番、15番のふたつのみである。だが前述のとおり、到着情報302として得る損失表示317の内容は、当該誤り訂正演算ブロックを構成するパケットの中で最後にネットワークパケット受信器31に到着したものが使用されるため、通し番号2番が「フィリング(1)」であり、15番と3番とが「再構成(2)」であると正しく認識される。よってs=1である。
損失したパケットは通し番号2番と5番(但し、2番については、上流側で「フィリング(1)」表示したことで送られてこない)であるから、d=2であり、ステップS41で、d’=2−1=1と演算される。すなわち、損失したパケットの内、本来的に損失したものの個数がd’=1として求まるのである。
ステップ42の判断結果はNoとなる。ステップS43において、「フィリング(1)」表示された通し番号2の位置にフィリングバイトを書き込む。そしてステップS44において、d’=1<(n−k)=2なので、ステップS45において、誤り訂正符号演算器34が消失した通し番号5番のパケットを正しい値に回復する。ステップS46で、回復した通し番号5番のパケットを、到着情報302として得た損失表示317と同じ損失表示317を添えて送信する。
上記の例から分かるように、いちど誤り訂正演算の範囲を超えたパケット消失が生じた場合でも、それ以降の伝送において、消失を免れたパケットの誤り訂正能力を保持することができる。
なお、図15の例で明らかなように、更新された損失表示317が付加されるのは、再構成された通し番号3番、15番のふたつのパケットのみである。よって、次段の中継装置3への伝送路上において、もし3番、15番の両パケットが消失したとすると、更新された損失表示317は正しく次段の中継装置3へ伝わらないという問題が懸念される。
しかしながら、この状況を次段の中継装置3から見ると、損失表示317がすべて「通常(0)」の状態で、通し番号2番、3番、15番の3パケットが消失したことになる。よって図15とまったく同じ処理が次段の中継装置3で行われ、結果として、更新された損失表示317も図15と同じものが出力される。
なお、通し番号3番、15番以外の任意の2パケットが消失した場合には、更新された損失表示317が正しく次段の中継装置3に伝わり、ステップS45で消失パケットが回復されることは上述した通りである。
受信装置4の構成および動作手順も、図8および図9に示した第1の実施形態例の場合と同様である。ただし、バッファメモリ33内の誤り訂正および送信処理(図9のステップS25の処理) のみが第1の実施形態例の図10と異なるため、これについて図17に従って説明する。
まずステップS61において、消失パケット数dから「フィリング(1)」表示されたパケットの数をsを差し引いた値d'(=d−s)が演算される。ステップS62で、d’が(n−k)以下であれば、直前の伝送路で発生した消失パケットの回復が可能なので、ステップS63で、「フィリング(1)」表示された通し番号のパケットがフィリングされた後、ステップS64で、消失パケットを回復する。
さて、受信装置4から図示しないデコーダへメディアパケット451を出力するにあたり、フィリングおよび再構成されたパケットは元のパケットとまったく違う値であるため、そのままデコーダへ出力することはできない。そのため、ステップS65でdが1以上の値の場合、ステップS66において、損失表示317で「通常(0)」以外が表示されたパケットならびに消失したパケットを、メディア情報の符号化フォーマットに準拠したスタッフィングバイトに置き換える。スタッフィング方法は第1の実施形態例の図11で説明した消失パケットのスタッフィング方法と同じである。
そして、最終的にステップS67にて、元の順序に従ってメディアパケット451をバッファメモリ43の最上行から順次読み出し、図示しないデコーダに向かって出力する。
以上述べたように、本実施形態例によれば、ある誤り訂正演算ブロックにおいて誤り訂正符号の訂正能力を超えたパケット消失が起こった場合でも、消失を免れた他のパケットの誤り訂正能力を保持し続けることができる。その他の特性については、第1の実施形態例と同様である。
なお、誤り訂正演算ブロックの構成として図34に示す方式を用いる場合、あらかじめ共通に定めたフィリングバイトとして、メディア情報の符号化フォーマットに準拠したスタッフィングバイト、例えばヌルパケットと規定することができる。これにより、ステップS66のスタッフィング処理において、「フィリング(1)」表示された消失パケットはステップS63で既にスタッフィングバイトとなっているため、これを改めてスタッフィングする必要がなく、ステップS66の処理を簡略化することができる。
〔3〕第3の実施形態例
本実施形態例は、パケット消失のみならず、パケット内部にビットエラーが生じる伝送路に対処できるようにするものである。
一般的な有線パケットネットワークの場合、パケット消失と比較して、ビットエラーが発生する確率は相当低い。しかしながら、無線伝送路などではビットエラーの発生率が高いことが知られているため、このような場合には本実施形態例に示す方式が適用できる。
リードソロモンFEC(n,k) 符号では、t個のパケット消失、p個のシンボルにビットエラーが生じた場合、“n−k≧t+2p”を満たせば回復が可能である。例えば、リードソロモンFEC(15,13) 符号の場合には、1個のパケット消失と、各演算ごとに1個のシンボルエラーとが同時に発生しても正しく回復が可能である。
しかしながら、図1に示すような多段伝送においては、各段におけるシンボルエラーが蓄積するため、受信側において回復可能な範囲を超えるシンボルエラーとなる可能性がある。
そこで、本実施形態例では、各中継装置3においてシンボルエラーの回復が可能であった場合、シンボルの位置ならびに回復したシンボル値を別途送信することにより、シンボルエラーの蓄積を避けようとするものである。
図18に、本実施形態例で使用するネットワークパケット311のフォーマットの一例を示す。
第1の実施形態例で用いた図2の拡張ヘッダ313や、第2の実施形態例で用いた図13の拡張ヘッダ313が、誤り検出・訂正符号であるCRC318によってビットエラーから保護されている。もし、CRC318によって誤り訂正不可能なビットエラーが生じた場合、当該ネットワークパケット311全体が消失したものとして扱う。
図19に、本実施形態例で使用するシンボル訂正パケット352の一例を示す。このシンボル訂正パケット352はネットワークパケット311の一種である。
図中に示すシンボル訂正パケット表示354は、このパケットがシンボル訂正パケットであることを宣言するために用いられ、例えばパケット通し番号356では使用されない値を格納することで宣言できる。
シンボル訂正情報355は、検出および回復されたシンボルエラー1つあたりに1フィールドが用意され、パケット通し番号356とシンボル位置357とによって対象シンボルを特定し、さらに正しいシンボル値358が記述される。例えば、通し番号5番のパケットの、左から10番目のシンボルの正しい値が「‘1’」であれば、「5,10,`1' 」と記述できる。最後に、シンボル訂正情報全体がCRC359によって保護される。CRC359によって誤り訂正不可能なビットエラーが生じた場合、当該シンボル訂正パケット352全体が消失したものとして扱う。
次に、第1の実施形態例で記載した方式にシンボル訂正パケット352を組み合わせた方式について詳細に説明する。
図20に、中継装置3の動作手順(図4に示した動作手順に対応する動作手順)を示す。
第1の実施形態例で説明した図4と異なるのは、ステップS7とステップS8とが加わっている点であり、ステップS7においてシンボル訂正パケット352を受信したら、ステップS8おいてシンボル訂正情報355を読み出す。このシンボル訂正情報355は、到着情報302として書込制御器32および誤り訂正符号演算器34に伝達される。
図21は、図20に示す動作手順のステップS5の動作を記したものである。第1の実施形態例の図5と比較しながら説明する。
まず、ステップS15において、シンボル訂正パケット352を受信していたら、ステップS16において、書込制御器32はシンボル訂正情報355に従い、バッファメモリ33内の当該シンボルを正しいシンボル値358に書き換える。ただし、当該パケット全体が消失している場合は書き込まない。
なお、本実施形態例では、消失パケットが0個の場合でもシンボルエラーを検出する必要があるため、第1の実施形態例の図5に記載したステップS11の分岐は存在しない。
ステップS12で、消失パケット数dが回復可能範囲内であれば、ステップS13’において、誤り訂正符号演算器34が、消失パケットならびにシンボルエラーを回復する。ステップS14’において、回復に成功した消失パケットがある場合には、ステップS14”で回復したパケットを送信する。
また、ステップS17において、ステップS16で訂正を行ったシンボル、ならびにステップS13’において回復に成功したシンボルが存在する場合には、これらの情報からシンボル訂正情報355を生成し、ステップS18においてシンボル訂正パケット352を送信して終了する。
上記の中継装置3の動作を、図22の例を用いて具体的に説明する。
いま、受信メディア/FECパケット312aにおいて、通し番号2番のパケットが消失し、通し番号4番のパケットの左から10番目のシンボルが‘1’から‘3’に変化するビットエラーが生じたとする。
本発明の特徴として、到着したパケットは誤り訂正演算を行う前に、ステップS4によって逐次送信されるため、シンボルエラーを含んだ通し番号4番のパケットもそのまま送信されている。
さて、図22の動作手順において、シンボル訂正パケットは受信していないから、ステップS15での判断はNoである。ステップS12において、消失パケット数d’=1であるから、ステップS13’において誤り訂正符号演算器34が誤り訂正演算を行う。このとき、通し番号4のパケットの左から10番目のシンボルにエラーが検出され、正しい値が「‘1’」であることが判明する。
よって、ステップS14”において、回復された通し番号2のパケットが送出されるとともに、ステップS18において、シンボル訂正情報「4,10,`1' 」が生成され、シンボル訂正パケット352として送信される。
こうして送信された送信メディア/FECパケット351およびシンボル訂正パケット352が次段の中継装置3に到着するまでに、さらに通し番号14番のパケットの左から10番目のシンボルが‘5’から‘7’に変化するビットエラーが生じ、図23の状態になったとする。
図21の動作手順に従い、まずステップS15において、シンボル訂正パケット352を受信したので、ステップS16においてシンボル訂正情報「4,10,`1' 」に基づき、バッファメモリ33の該当部分を書き換える(図中に示す丸印の個所)。
ステップS12において、消失パケット数d=0であるから、ステップS13’において誤り訂正符号演算器34が誤り訂正演算を行う。このとき、通し番号14番のパケットの左から10番目のシンボルにエラーが検出され、正しい値が「‘5’」であることが判明する。
よって、ステップS18において、シンボル訂正情報「4,10,`1' 」に加えて「14,10,`5' 」が生成され、シンボル訂正パケット352として送信される。
上記の例においては、同じシンボル位置(左から10番目のシンボル) に2か所のエラーが生じたため、もし受信装置のみでリードソロモンFEC(15,13) 復号を行ったとするとリードソロモン符号の誤り訂正能力を超え、シンボルエラーを回復できない。
これに対して、本実施形態例では、各中継装置3において検出・回復したシンボルエラーをシンボル訂正情報355として下流に配信し、下流の中継装置3は、誤り訂正演算を開始するより前に、シンボル訂正情報355によってシンボルエラーを修正しているため、多段伝送におけるシンボルエラーの回復効率を上げることができる。
図24に、受信装置4の動作手順を示す。
第1の実施形態例で説明した図9と異なるのは、ステップS27とステップS28とが加わっている点であり、ステップS27においてシンボル訂正パケット352を受信したら、ステップS28においてシンボル訂正情報355を読み出す。このシンボル訂正情報355は、到着情報302として書込制御器42および誤り訂正符号演算器44に伝達される。
図25は、図24に示す動作手順のステップS25の動作を記したものである。
まず、ステップS35においてシンボル訂正パケット352を受信していたら、ステップS36において書込制御器42はシンボル訂正情報355に従い、バッファメモリ43内の当該シンボルを正しいシンボル値358に書き換える。
その後の動作は第1の実施形態例の図10と同様であるが、本実施形態例ではステップS32の誤り回復処理において、シンボルエラーが多く発生した場合には、d≦(n−k)であっても誤り回復が不可能な場合が生じ得る。
そのため、ステップS37において、回復できなかったパケットが存在する場合には、ステップS33’に移行してこれをスタッフィングする。スタッフィング方法としては、回復不能なシンボルを任意のバイトに置き換えるか、回復不能なパケットを図11と同様にメディア情報の符号化フォーマットに準拠したスタッフィングバイトに置き換える。
以上、第1の実施形態例で記載した方式にシンボル訂正パケット352を組み合わせた方式について説明したが、第2の実施形態例で記載した方式についても、動作手順に同様の修正を加えることにより、シンボル訂正パケット352を組み合わせることができるものである。
このように本実施形態例においては、パケット消失のみならず、パケット中のビットエラーが生じる伝送路環境下においても、各中継装置3でビットエラーを回復し、結果として受信装置4におけるビットエラーの回復率を上昇させることができる。その他の効果については、第1の実施形態例および第2の実施形態例と同様である。
なお、本実施形態例において、シンボル訂正情報355は、メディア/FECパケットが格納されるネットワークパケット311とは別のシンボル訂正パケット352に格納して伝送したが、これを第2の実施形態例の損失表示317と同様の方法でネットワークパケット311の拡張ヘッダ313に含めることにより、メディア/FECパケットと同時に送信するようにしてもよい。
〔4〕第4の実施形態例
本実施形態例もまた、パケット消失のみならず、パケット中にビットエラーが生じる伝送路に対処できるようにするものである。
本実施形態例におけるネットワークパケット311のフォーマット、中継装置3と受信装置4の構成および動作手順については、第1の実施形態例や第2の実施形態例とまったく同様である。
図26に従って、本実施形態例の動作手順について説明する。ここで、図26では、図22と同様に、受信メディア/FECパケット312aにおいて、通し番号2のパケットが消失し、通し番号4のパケットの中の1シンボルにビットエラーが生じた場合を仮定している。
本実施形態例においては、パケット消失が起きた通し番号2のパケットを誤り訂正によって回復し、送信メディア/FECパケット351として送信するが、通し番号4のパケットに生じているシンボルエラーは検出しても放置し、シンボル訂正パケット352は送信しないようにしている。
これにより、次段の中継装置3においても、通し番号4のパケットに生じたシンボルエラーは残存したままとなる。
しかしながら、受信装置4に至るまでに生じるシンボルエラーの累積が、FEC演算それぞれにつき1つまで(リードソロモンFEC(15,12) 符号や、リードソロモンFEC(15,13) 符号の場合)であれば、受信装置4の誤り訂正処理(図10のステップS32および図17のステップS64)によって、消失パケットの回復と同時にシンボルエラーも訂正できる。
ビットエラーが発生する確率が十分に小さい伝送路を経由する場合には、第3の実施形態例のようにシンボル訂正パケットを使用する必要がなく、本実施形態例のように第1の実施形態例や第2の実施形態例とまったく同様の動作を行えばよい。
〔5〕第5の実施形態例
本実施形態例は、複数の異なる帯域およびパケット損失特性を持つ回線が連結された伝送路に対処できるようにするものである。
図27に、本実施形態例が想定する伝送路の例を図示する。この図に示すように、本実施形態例が想定する伝送路では、送信装置1と一方の中継装置3、およびもう一方の中継装置3と受信装置4は、アクセス回線21によって接続されている。また、中継装置3間は、パケット通信ネットワーク22によって接続されている。
インターネットを介したテレビ電話アプリケーションを例に挙げると、送信装置1および受信装置4は各家庭に設置されていて、アクセス回線21はADSLやFTTHからなり、パケット通信ネットワーク22はインターネットに相当する。
このとき、アクセス回線21は一般的にADSLやFTTHで構成されるため伝送帯域が限られる反面、各家庭と中継装置3とが直接結ばれているため、回線上のパケット損失率は小さいという特性がある。これに対して、パケット通信ネットワーク22はインターネットバックボーンで構成されるため、伝送帯域には余裕がある反面、パケット損失率は高いという特性がある。
とりわけADSLの場合、上り回線の帯域が最大1Mbps 程度に限られるため、送信装置1から中継装置3にいたる回線は伝送帯域が非常に限られ、FEC符号の冗長性(n-k の値)を大きくとることができない。従って、パケット通信ネットワーク22で発生する高いパケット損失率に対応する冗長性を送信装置1で付加しようとしても、アクセス回線21の帯域不足で伝送できない状況が起こり得る。
この問題を解決するため、本実施形態例では、以下のように、回線の特性にあわせて冗長度を変化させつつ伝送する方式を適用する。
図28に、本実施形態例を実現する送信側の構成を図示する。
この図に示すように、本実施形態例を実現する場合、送信装置1では、パケット通信ネットワーク22で生ずるパケット損失に対応可能な冗長度(n-k )を設定して、k個のメディアパケットに対して(n−k)個のFECパケットを生成する。しかし、(n−k)個のFECパケットをすべては伝送せず、一部のFECパケットのみを伝送して残りのFECパケットは破棄するようにする。
例えば、アクセス回線21の上り帯域の上限およびパケット損失特性から、冗長度はq(q <(n-k))で十分であると判断される場合には、k個のメディアパケットに続いてq個のFECパケットのみを伝送し、残りのFECパケットは破棄する。このように、冗長度の高いFEC符号を行ったうえで一部のFEC符号を意図的に破棄し、等価的に冗長度の低いFEC符号として利用する方法は、一般的にパンクチャド符号化と呼ばれている。
これを受けて、中継装置3では、伝送を省略した(n−k−q)個のFECパケットも損失パケットとして扱い、FECを復号する。上記の例では、アクセス回線21での伝送中に生じた実際のパケット損失がq個以下であれば、伝送を省略したFECパケットも含めて(n−k)個以下の損失となるため、誤り訂正符号演算器は損失したパケット、および伝送を省略した(n−k−q)個のFECパケットをすべて回復できる。
そして、中継装置3からパケット通信ネットワーク22へパケットを送出する際には、FECパケットの伝送を省略することなく、k個のメディアパケットと(n−k)個のFECパケットをすべて伝送する。
一方、図29に、本実施形態例を実現する受信側の構成を図示する。
この図に示すように、受信側の中継装置3では、パケット通信ネットワーク22を通じて到着したパケットに対してFEC復号を行ない、損失パケットを回復する。その後、例えば、アクセス回線21の下り帯域の上限およびパケット損失特性から、冗長度はr(r <(n-k))で十分であると判断される場合には、k個のメディアパケットに続いてr個のFECパケットのみを伝送し、残りのFECパケットは破棄する。
これを受けて、受信装置4は、伝送を省略した(n−k−r)個のFECパケットも損失パケットとして扱い、FECを復号して損失パケットを回復する。
このように、回線の特性が変化する地点に中継装置3を設置することにより、パンクチャド符号化を有効に使用し、FECの冗長度を変化させながら伝送することが可能となる。
上記のような伝送形態において、中継装置3ごとにFEC演算を行って損失を回復してから送信するという従来方法を用いた場合、「発明が解決しようとする課題」で述べた伝送遅延増加の問題が生ずる。ここに、第1の実施形態例から第4の実施形態例で述べた中継装置3を適用することにより、本実施形態例において所望の機能を実現しつつ、中継装置3の導入によって生ずる系全体での伝送遅延増加を抑制するという効果を得ることができる。
〔6〕本発明の有効性を検証するために行った計算機シミュレーション
次に、本発明の有効性を検証するために行った計算機シミュレーションの結果について説明する。
この計算機シミュレーションは、送信装置1と受信装置4との間に2台もしくは5台(すなわち、送信装置1と受信装置4とを結ぶ回線が3段もしくは6段)の中継装置3を設けることを想定して、(イ)図30(a)に示すように、送信装置1でFEC符号化を行い、受信装置4のみでFEC復号を行う方式と、(ロ)図30(b)に示すように、各中継装置3ごとにFEC演算を行って損失を回復してから送信する方式と、(ハ)第1の実施形態例に従う方式と、(ニ)第2の実施形態例に従う方式という4つの方式について、パケット損失率と伝送遅延とを比較することで行った。
ここで、図中では、(イ)の方式による計算機シミュレーション結果を従来例、(ロ)による計算機シミュレーション結果を類推可能例(上述した〔発明が解決しようとする課題〕欄で説明した構成に対応している)と記載している。
図31に、パケット損失率の計算機シミュレーション結果を示す。
FEC方式としては、図34に示すFEC方式にリードソロモンFEC(255,251) 符号を適用した。パケット損失パターンは二重マルコフモデルに基づき、平均パースト長は2に設定した。
図31(a)は、中継装置3が2台(すなわち、送信装置1と受信装置4とを結ぶ回線が3段)の場合のシミュレーション結果を示し、図31(b)は、中継装置3が5台(すなわち、送信装置1と受信装置4とを結ぶ回線が6段)の場合のシミュレーション結果を示している。横軸は回線1段あたりで発生するパケット損失率、縦軸は受信装置4で観測されるトータルのパケット損失率である。参考のために、FECをまったく使用しない場合のデータもあわせて記してある。
この図31に示す計算機シミュレーションによれば、回線1段あたりの損失率が10-3〜10-2の領域において、従来例ではFECの回復能力が低下し、“FECなし”の損失率に近づいてゆく傾向を示しているのに対して、第1の実施形態例ではFECの回復能力の低下が抑えられていることが分かる。
さらに第2の実施形態例では、図31(a)では第1の実施形態例と比較して明確な差は現れていないものの、中継段数の多い図31(b)では第1の実施形態例と比較して損失率がさらに最大20%ほど抑制されており、中継装置3ごとにFEC復号と符号化をやりなおす類推可能例とほぼ等しい損失率抑制効果が得られている。
以上述べたように、本発明による実施形態例を損失率抑制の観点からみると、回線の損失率が比較的高い環境下においてFECの回復能力の低下を防止し、中継装置3ごとにFEC復号と符号化をやりなおす場合とほぼ等しい損失率抑制効果を得られることが分かる。
図32に、伝送遅延の計算機シミュレーション結果を示す。
FEC方式としては、図31と同様に、図34に示すFEC方式にリードソロモンFEC(255,251) 符号を適用した。図34のバッファメモリの一行に相当するパケットサイズは1316バイトに設定し、誤り訂正ブロックの符号化および復号1回に要する時間として2msec、回線一段あたりの伝送遅延として10msecを想定した。
図32(a)はビットレートが4Mbps の場合のシミュレーション結果を示し、図32(b)はビットレートが20Mbps の場合のシミュレーション結果を示している。横軸は伝送路中に挿入される中継装置3の数、縦軸は送信装置1から受信装置4までの伝送に要するトータルの伝送遅延である。
この図32に示す計算機シミュレーションによれば、第1の実施形態例と第2の実施形態例とも、伝送遅延でみた場合、中継装置3をまったく用いない従来例とほぼ等しい遅延に抑えられているとともに、中継装置3ごとにFEC復号・符号化を繰り返す類推可能例に比べて、伝送段数の増加による伝送遅延の増加が大幅に抑えられていることが分かる。
図31と図32のシミュレーション結果を総合すると、本発明による実施形態例は、中継装置3を導入することによって高損失率環境下におけるFECの回復能力を維持しつつも、伝送遅延の増加をきわめて小さく抑えることができる。
本発明が想定するメディア情報の配信形態を示す図である。 本発明の第1の実施形態におけるネットワークパケットフォーマットの一例を示す図である。 本発明の実施形態における中継装置の構成を示す図である。 本発明の第1の実施形態における中継装置の動作手順を示す図である。 本発明の第1の実施形態における中継装置でのバッファメモリの誤り訂正および送信処理の動作手順を示す図である。 本発明の第1の実施形態におけるFECで修正可能な個数のパケット消失が生じた際の中継装置の動作を説明する図である。 本発明の第1の実施形態におけるFECで修正不可能な個数のパケット消失が生じた際の中継装置の動作を説明する図である。 本発明の実施形態における受信装置の構成を示す図である。 本発明の第1の実施形態における受信装置の動作手順を示す図である。 本発明の第1の実施形態における受信装置でのバッファメモリの誤り訂正および出力処理の動作手順を示す図である。 本発明の受信装置での消失パケットのスタッフィング処理を説明する図である。 従来例および本発明によってパケット中継を行った場合の伝送遅延を比較する図である。 本発明の第2の実施形態におけるネットワークパケットフォーマットの一例を示す図である。 本発明の第2の実施形態における中継装置でのバッファメモリの誤り訂正および送信処理の動作手順を示す図である。 本発明の第2の実施形態におけるFECで修正不可能な個数のパケット消失が生じた際の中継装置の動作を説明する図である。 本発明の第2の実施形態におけるFECで修正可能な個数のパケット消失が生じた際の中継装置の動作を説明する図である。 本発明の第2の実施形態における受信装置でのバッファメモリの誤り訂正および出力処理の動作手順を示す図である。 本発明の第3の実施形態におけるネットワークパケットフォーマットの一例を示す図である。 本発明の第3の実施形態におけるシンボル訂正パケットフォーマットの一例を示す図である。 本発明の第3の実施形態における中継装置の動作手順を示す図である。 本発明の第3の実施形態における中継装置でのバッファメモリの誤り訂正および送信処理の動作手順を示す図である。 本発明の第3の実施形態におけるパケット消失とビットエラーとが発生した際の中継装置の動作を説明する図である。 本発明の第3の実施形態におけるビットエラーが発生した際の中継装置の動作を説明する図である。 本発明の第3の実施形態における受信装置の動作手順を示す図である。 本発明の第3の実施形態における受信装置でのバッファメモリの誤り訂正および出力処理の動作手順を示す図である。 本発明の第4の実施形態におけるパケット消失とビットエラーとが発生した際の中継装置の動作を説明する図である。 本発明の第5の実施形態におけるメディア情報の伝送形態を示す図である。 本発明の第5の実施形態におけるメディア情報の伝送形態について、送信側の動作を示した図である。 本発明の第5の実施形態におけるメディア情報の伝送形態について、受信側の動作を示した図である。 本発明の有効性を検証するために行った計算機シミュレーションの説明図である。 本発明の有効性を検証するために行った計算機シミュレーションのシミュレーション結果を説明する図である。 本発明の有効性を検証するために行った計算機シミュレーションのシミュレーション結果を説明する図である。 パケット通信ネットワークを用いた番組配信の一形態を示す図である。 FECによる伝送損失回復方式の第1の例を示す図である。 パケット入出力をインタリーブしたFECによる伝送損失回復方式の第2の例を示す図である。
符号の説明
1 送信装置
2 パケット通信ネットワーク
3 中継装置
4 受信装置
31 ネットワークパケット受信器
32 書込制御器
33 バッファメモリ
34 誤り訂正符号演算器
35 読出制御器
36 ネットワークパケット送信器
41 ネットワークパケット受信器
42 書込制御器
43 バッファメモリ
44 誤り訂正符号演算器
45 読出制御器

Claims (18)

  1. 通信ネットワークから誤り訂正演算ブロックを構成するパケットを受信して、通信ネットワークへ送信するパケット中継装置であって、
    受信したパケットの持つ誤り訂正演算ブロック内位置情報の指すバッファメモリ位置に、該パケットを書き込む第1の手段と、
    上記受信したパケットを、誤り訂正演算の実施前に逐次通信ネットワークへ送信する第2の手段と、
    上記バッファメモリのパケットに対して誤り訂正演算を施すことで消失パケットを回復させて、それを通信ネットワークへ送信する第3の手段とを備えることを、
    特徴とするパケット中継装置。
  2. 請求項1記載のパケット中継装置において、
    上記第3の手段は、誤り訂正演算で回復不可能な個数の消失パケットが存在する場合には、誤り訂正演算が可能となる個数まで該消失パケットを所定のバイト列に置き換えたうえで、誤り訂正演算で残る消失パケットを再構成して、該置換パケットがどれであるのかを示す情報とともに、再構成したパケットを通信ネットワークへ送信することを、
    特徴とするパケット中継装置。
  3. 請求項1記載のパケット中継装置において、
    上記第3の手段は、上流側から、置換パケットがどれであるのかを示す情報が送信されてくる場合には、該情報の指すバッファメモリ位置に所定のバイト列を書き込んでから誤り訂正演算を実行することを、
    特徴とするパケット中継装置。
  4. 請求項1ないし3のいずれか1項に記載のパケット中継装置において、
    上記第3の手段は、誤り訂正演算でビット誤りを訂正した場合には、ビット誤りの発生位置及び訂正値について記述する情報を生成して送信することを、
    特徴とするパケット中継装置。
  5. 請求項1ないし3のいずれか1項に記載のパケット中継装置において、
    上記第3の手段は、上流側から、ビット誤りの発生位置及び訂正値について記述する情報が送信されてくる場合には、該情報の指定するバッファメモリ位置に書き込まれたパケットを、該情報に従って訂正してから誤り訂正演算を実行することを、
    特徴とするパケット中継装置。
  6. 通信ネットワークから誤り訂正演算ブロックを構成するパケットを受信して、通信ネットワークへ送信するパケット中継方法であって、
    受信したパケットの持つ誤り訂正演算ブロック内位置情報の指すバッファメモリ位置に、該パケットを書き込む第1の過程と、
    上記受信したパケットを、誤り訂正演算の実施前に逐次通信ネットワークへ送信する第2の過程と、
    上記バッファメモリのパケットに対して誤り訂正演算を施すことで消失パケットを回復させて、それを通信ネットワークへ送信する第3の過程とを備えることを、
    特徴とするパケット中継方法。
  7. 請求項6記載のパケット中継方法において、
    上記第3の過程では、誤り訂正演算で回復不可能な個数の消失パケットが存在する場合には、誤り訂正演算が可能となる個数まで該消失パケットを所定のバイト列に置き換えたうえで、誤り訂正演算で残る消失パケットを再構成して、該置換パケットがどれであるのかを示す情報とともに、再構成したパケットを通信ネットワークへ送信することを、
    特徴とするパケット中継方法。
  8. 請求項6記載のパケット中継方法において、
    上記第3の過程では、上流側から、置換パケットがどれであるのかを示す情報が送信されてくる場合には、該情報の指すバッファメモリ位置に所定のバイト列を書き込んでから誤り訂正演算を実行することを、
    特徴とするパケット中継方法。
  9. 請求項6ないし8のいずれか1項に記載のパケット中継方法において、
    上記第3の過程では、誤り訂正演算でビット誤りを訂正した場合には、ビット誤りの発生位置及び訂正値について記述する情報を生成して送信することを、
    特徴とするパケット中継方法。
  10. 請求項6ないし8のいずれか1項に記載のパケット中継方法において、
    上記第3の過程では、上流側から、ビット誤りの発生位置及び訂正値について記述する情報が送信されてくる場合には、該情報の指定するバッファメモリ位置に書き込まれたパケットを、該情報に従って訂正してから誤り訂正演算を実行することを、
    特徴とするパケット中継方法。
  11. 通信ネットワークから誤り訂正演算ブロックを構成するパケットを受信するパケット受信装置であって、
    受信したパケットの持つ誤り訂正演算ブロック内位置情報の指すバッファメモリ位置に、該パケットを書き込む第1の手段と、
    上記バッファメモリのパケットに対して誤り訂正演算を施すことで消失パケットを回復させる第2の手段と、
    誤り訂正演算で回復不可能な消失パケットが存在する場合に、該パケットをデータフォーマットに準拠したスタッフィング用のバイトに置き換えるとともに、通信ネットワークから送信されてくる情報に従って、所定のバイト列に置き換えられることが検出される消失パケットと、消失パケットではないものの本来のものではないことが検出されるパケットとについて、該スタッフィング用のバイトに置き換える第3の手段とを備え、
    さらに、上記第2の手段は、上流側から、ビット誤りの発生位置及び訂正値について記述する情報が送信されてくる場合には、該情報の指定するバッファメモリ位置に書き込まれたパケットを、該情報に従って訂正してから誤り訂正演算を実行することを、
    特徴とするパケット受信装置。
  12. 請求項11記載のパケット受信装置において、
    上記第2の手段は、上流側から、上記置き換えられる消失パケットがどれであるのかを示す情報が送信されてくる場合には、該情報の指すバッファメモリ位置に所定のバイト列を書き込んでから誤り訂正演算を実行することを、
    特徴とするパケット受信装置。
  13. 通信ネットワークから誤り訂正演算ブロックを構成するパケットを受信するパケット受信方法であって、
    受信したパケットの持つ誤り訂正演算ブロック内位置情報の指すバッファメモリ位置に、該パケットを書き込む第1の過程と、
    上記バッファメモリのパケットに対して誤り訂正演算を施すことで消失パケットを回復させる第2の過程と、
    誤り訂正演算で回復不可能な消失パケットが存在する場合に、該パケットをデータフォーマットに準拠したスタッフィング用のバイトに置き換えるとともに、通信ネットワークから送信されてくる情報に従って、所定のバイト列に置き換えられることが検出される消失パケットと、消失パケットではないものの本来のものではないことが検出されるパケットとについて、該スタッフィング用のバイトに置き換える第3の過程とを備え、
    さらに、上記第2の過程では、上流側から、ビット誤りの発生位置及び訂正値について記述する情報が送信されてくる場合には、該情報の指定するバッファメモリ位置に書き込まれたパケットを、該情報に従って訂正してから誤り訂正演算を実行することを、
    特徴とするパケット受信方法。
  14. 請求項13記載のパケット受信方法において、
    上記第2の過程では、上流側から、上記置き換えられる消失パケットがどれであるのかを示す情報が送信されてくる場合には、該情報の指すバッファメモリ位置に所定のバイト列を書き込んでから誤り訂正演算を実行することを、
    特徴とするパケット受信方法。
  15. 請求項6ないし10のいずれか1項に記載のパケット中継方法の実現に用いられる処理をコンピュータに実行させるためのパケット中継プログラム。
  16. 請求項6ないし10のいずれか1項に記載のパケット中継方法の実現に用いられる処理をコンピュータに実行させるためのパケット中継プログラムを記録した記録媒体。
  17. 請求項13又は14に記載のパケット受信方法の実現に用いられる処理をコンピュータに実行させるためのパケット受信プログラム。
  18. 請求項13又は14記載のパケット受信方法の実現に用いられる処理をコンピュータに実行させるためのパケット受信プログラムを記録した記録媒体。
JP2004057023A 2003-05-29 2004-03-02 パケット中継装置及びその方法と、パケット受信装置及びその方法と、パケット中継プログラム及びそのプログラムを記録した記録媒体と、パケット受信プログラム及びそのプログラムを記録した記録媒体 Expired - Lifetime JP3701956B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004057023A JP3701956B2 (ja) 2003-05-29 2004-03-02 パケット中継装置及びその方法と、パケット受信装置及びその方法と、パケット中継プログラム及びそのプログラムを記録した記録媒体と、パケット受信プログラム及びそのプログラムを記録した記録媒体

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2003152058 2003-05-29
JP2004057023A JP3701956B2 (ja) 2003-05-29 2004-03-02 パケット中継装置及びその方法と、パケット受信装置及びその方法と、パケット中継プログラム及びそのプログラムを記録した記録媒体と、パケット受信プログラム及びそのプログラムを記録した記録媒体

Publications (2)

Publication Number Publication Date
JP2005012753A JP2005012753A (ja) 2005-01-13
JP3701956B2 true JP3701956B2 (ja) 2005-10-05

Family

ID=34106763

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004057023A Expired - Lifetime JP3701956B2 (ja) 2003-05-29 2004-03-02 パケット中継装置及びその方法と、パケット受信装置及びその方法と、パケット中継プログラム及びそのプログラムを記録した記録媒体と、パケット受信プログラム及びそのプログラムを記録した記録媒体

Country Status (1)

Country Link
JP (1) JP3701956B2 (ja)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4580278B2 (ja) * 2005-05-20 2010-11-10 財団法人エヌエイチケイエンジニアリングサービス パケット中継装置、コンテンツ送信装置、パケット中継プログラムならびにパケット中継方法
JP4749820B2 (ja) * 2005-10-06 2011-08-17 インターナショナル・ビジネス・マシーンズ・コーポレーション 誤りがない場合のレイテンシに影響を与えることなく誤り訂正機能を実装したインターコネクト通信
TWI429227B (zh) * 2006-08-17 2014-03-01 Dolby Lab Licensing Corp 廣播網路之封包佇列損失之暫態分析技術
JP5162939B2 (ja) 2007-03-30 2013-03-13 ソニー株式会社 情報処理装置および方法、並びにプログラム
US8774283B2 (en) 2007-03-30 2014-07-08 Sony Corporation Information processing device and method
JPWO2008139882A1 (ja) * 2007-05-08 2010-07-29 日本電気株式会社 通信システムおよび通信方法、並びに、プログラム
JP5176567B2 (ja) * 2008-01-30 2013-04-03 沖電気工業株式会社 誤り訂正符号生成装置、誤り訂正符号生成プログラム、データ提供装置及びデータ提供システム
JP2009206608A (ja) * 2008-02-26 2009-09-10 Nec Engineering Ltd 通信装置
JP5268477B2 (ja) * 2008-07-29 2013-08-21 キヤノン株式会社 情報処理装置およびその制御方法、データ処理システム
EP2308235A1 (en) * 2008-07-25 2011-04-13 Nortel Networks Limited Multisegment loss protection
JP2014225900A (ja) * 2008-12-23 2014-12-04 ロックスター コンソーシアム ユーエス エルピーRockstar Consortium Us Lp マルチセグメント損失の保護
JP2011193434A (ja) 2009-10-28 2011-09-29 Panasonic Corp パリティパケットを用いた通信方法、通信装置及び中継器
JP5190490B2 (ja) * 2010-06-14 2013-04-24 Nttエレクトロニクス株式会社 出力レート制御装置及び出力レート制御方法
JP5533322B2 (ja) * 2010-06-18 2014-06-25 富士通株式会社 データ転送装置、データ転送方法及びデータ転送プログラム
JP5711507B2 (ja) * 2010-11-22 2015-04-30 日本電信電話株式会社 データ伝送システム及び方法及び受信装置及びデータ受信方法
JP5905844B2 (ja) * 2013-03-15 2016-04-20 株式会社日立製作所 消失訂正符号を利用する通信システムの中継装置、その通信システム及び中継方法
JP6667285B2 (ja) * 2015-12-21 2020-03-18 日本放送協会 送信装置、受信装置、プログラム、およびチップ
JP6673604B2 (ja) * 2016-06-14 2020-03-25 三菱電機株式会社 ログデータ転送方式及びログデータ転送システム
JP7199266B2 (ja) * 2019-03-18 2023-01-05 株式会社東芝 中継装置
CN112311497B (zh) * 2019-07-29 2024-06-18 华为技术有限公司 一种通信方法和通信设备

Also Published As

Publication number Publication date
JP2005012753A (ja) 2005-01-13

Similar Documents

Publication Publication Date Title
JP3701956B2 (ja) パケット中継装置及びその方法と、パケット受信装置及びその方法と、パケット中継プログラム及びそのプログラムを記録した記録媒体と、パケット受信プログラム及びそのプログラムを記録した記録媒体
US8145975B2 (en) Universal packet loss recovery system for delivery of real-time streaming multimedia content over packet-switched networks
US6145109A (en) Forward error correction system for packet based real time media
JP5442816B2 (ja) 可変fecオーバヘッド及び保護期間を利用したストリーミング及びバッファリング
US6487690B1 (en) Forward error correction system for packet based real time media
JP5847577B2 (ja) より低いレベルのパケット構造から導かれる記号識別子を用いた放送チャネル上の高品質ストリーム保護
US8037397B2 (en) Method for recovering a lost data unit
US6891799B1 (en) Data transmission method
CN101272495B (zh) 用于传输基于分组的图像帧的方法和装置
KR100908646B1 (ko) 포워드 에러 정정 프레임 어셈블링
JPH1079949A (ja) 画像符号化装置、画像復号化装置及び画像伝送システム
CN101176263B (zh) 用于解码前向纠错码的系统和方法
GB2520867A (en) Jitter buffer
JP4041137B2 (ja) 映像符号化・送信装置,映像符号化・送信方法,映像符号化・送信プログラムおよびその記録媒体
US20150006991A1 (en) Graceful degradation-forward error correction method and apparatus for performing same
JP2004282538A (ja) 送受信システム、送信装置および方法、受信装置および方法、記録媒体、並びにプログラム
US10833710B2 (en) Bandwidth efficient FEC scheme supporting uneven levels of protection
CN108667557B (zh) 一种基于媒体内容的自适应fec编码矩阵设计方法
US9641803B1 (en) Multiplexing FEC protection of multiple streams with different delay requirements
JP2005323171A (ja) 送信装置、誤り訂正装置、ネットワーク接続装置およびパケット中継方法
RU2711354C1 (ru) Способ передачи данных по асинхронным сетям связи с возможностью восстановления данных при их потере из-за наличия ошибок соединения в сетях связи
JP3730977B2 (ja) データ伝送方法およびデータ処理方法
RU2706879C1 (ru) Способ передачи данных по пакетным сетям связи с возможностью восстановления данных при их потере из-за наличия ошибок соединения в сетях связи
JP2007335926A (ja) Fec用パリティ生成方法および送信装置
US8407552B2 (en) Method based on error corrector codes, applicable to a variable rate multimedia datastream

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050513

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050524

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050616

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20050616

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: 20050712

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050714

R150 Certificate of patent or registration of utility model

Ref document number: 3701956

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R154 Certificate of patent or utility model (reissue)

Free format text: JAPANESE INTERMEDIATE CODE: R154

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: R3D02

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080722

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090722

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090722

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100722

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100722

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110722

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120722

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130722

Year of fee payment: 8

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

EXPY Cancellation because of completion of term