(57)【要約】このデータ通信方法及び装置では、（ａ）各伝送速度においてｆｉｒｓｔ  ｐｈａｓｅとしてパリティパケットを付加した一定個数のパケット群を１セグメントにして所定数のセグメントの分散送信を実施し、（ｂ）データ損失が発生しなければ、ｓｅｃｏｎｄ  ｐｈａｓｅとしてパリティパケットを含まない一定個数のデータパケット群を１セグメントにして所定数のセグメントの分散送信を実施し、（ｃ）ｓｅｃｏｎｄ  ｐｈａｓｅでもデータ損失が発生しなければ伝送速度を１段階アップして、ｆｉｒｓｔ  ｐｈａｓｅのデータ伝送、ｓｅｃｏｎｄ  ｐｈａｓｅのデータ伝送を繰り返し、（ｄ）いずれかのデータ伝送期間にデータ損失が発生すればその１回前のｐｈａｓｅに戻してデータ再送するという操作を行うことによって、受信側でのデータ復旧を可能にして可能な限りデータパケットの紛失を少なくし、データ通信のスループットを向上させる。
2005029806.tif 000002
【特許請求の範囲】
【請求項１】
単一の伝送路上で、
（ａ）所定の伝送速度で、パリティパケットを付加した一定個数Ｎ（Ｎは任意の自然数）のパケット群を１セグメントにして所定数Ｍ（Ｍは任意の自然数）のセグメントを、各セグメントに属するパケットが一連のＭ個のパケットで成る送信パケット群それぞれに１個ずつ含まれるようにして当該送信パケット群ごとにＮ群分、合計Ｎ×Ｍのパケットを分散送信する第１送信フェーズのデータ送信を行うステップと、
（ｂ）前記（ａ）の第１送信フェーズの送信でデータ損失が発生しなければ、前記（ａ）の第１送信フェーズの伝送速度と同じ伝送速度で、パリティパケットを含まず、かつ前記第１送信フェーズと同じ総パケット数のデータパケット群をバースト的に送信する第２送信フェーズのデータ送信を行うステップと、
（ｃ）前記（ｂ）の第２送信フェーズの送信でもデータ損失が発生しなければ伝送速度を予め設定されている１段階アップして、前記第１送信フェーズのデータ送信を行うステップと、
（ｄ）前記（ｃ）の第１送信フェーズのデータ送信でデータ損失が発生しなければ、前記第２送信フェーズのデータ送信を行うステップと、
（ｅ）以降、データ損失が発生しない限り伝送速度を所定の１段階ずつアップしながらの前記（ｃ）の第１送信フェーズのデータ送信と、前記（ｄ）の第２送信フェーズのデータ送信を繰り返すステップと、
（ｆ）いずれかのデータ伝送期間にデータ損失が発生すれば、その１回前のフェーズに戻してデータ送信を再開するステップとを有するデータ送信方法。
【請求項２】
単一の伝送路上で、
（ａ）所定の伝送速度で、パリティパケットを付加した一定個数Ｎ（Ｎは任意の自然数）のパケット群を１セグメントにして所定数Ｍ（Ｍは任意の自然数）のセグメントを、各セグメントに属するパケットが一連のＭ個のパケットで成る送信パケット群それぞれに１個ずつ含まれるようにして当該送信パケット群ごとにＮ群分、合計Ｎ×Ｍのパケットを分散送信する第１送信フェーズのデータ送信を行うステップと、
（ｂ）前記（ａ）の第１送信フェーズの送信でデータ損失が発生しなければ、前記（ａ）の第１送信フェーズの伝送速度と同じ伝送速度で、パリティパケットを含まず、かつ、前記第１送信フェーズと同じ総パケット数のデータパケット群をバースト的に送信する第２送信フェーズのデータ送信を行うステップと、
（ｃ）前記（ｂ）の第２送信フェーズの送信でもデータ損失が発生しなければ伝送速度を予め設定されている１段階アップして、前記第１送信フェーズのデータ送信を行うステップと、
（ｄ）前記（ｃ）の第１送信フェーズのデータ送信でデータ損失が発生しなければ、前記第２送信フェーズのデータ送信を行うステップと、
（ｅ）以降、データ損失が発生しない限り伝送速度を所定の１段階ずつアップしながらの前記（ｃ）の第１送信フェーズのデータ送信と、前記（ｄ）の第２送信フェーズのデータ送信を繰り返すステップと、
（ｆ）いずれかのデータ伝送期間にデータ損失が発生すれば、それが第２送信フェーズのデータ送信であった場合には同じ伝送速度の第１送信フェーズに戻してデータ送信を再開するステップと、
（ｇ）いずれかのデータ伝送期間にデータ損失が発生すれば、それが第１送信フェーズのデータ送信であった場合には伝送速度を所定の１段階ダウンし、かつ、第１送信フェーズでデータ送信を再開するステップとを有するデータ送信方法。
【請求項３】
送信すべきデータを保持するデータ保持部と、
単一の伝送路を通じて情報ネットワークに対してデータ授受するネットワークインタフェースと、
前記データ保持部に保持されている送信すべきデータをパケット化するパケット化処理部と、
一定個（Ｎ−１）のパケット列に対してパリティパケットを生成するパリティパケット生成部と、
前回のデータ送信の成功／不成功の情報と前回の送信フェーズの情報とに基づき、今回の送信フェーズと送信速度を決定する送信フェーズ決定部と、
前記送信フェーズ決定部の決定した送信フェーズの情報に基づき、前記パリティパケットを付加した一定個数Ｎのパケット群を１セグメントにして所定数Ｍのセグメントを生成し、又は、前記パリティパケットを含まず、かつ前記所定数Ｍのセグメント内の総パケット数Ｎ×Ｍと同じ個数のデータパケット群を生成する送信パケット群作成部と、
前記送信フェーズ決定部の決定した送信速度で、前記送信パケット群作成部の生成したパケット群を前記ネットワークインタフェースを介して前記情報ネットワークに送信するデータ送信処理部とを備え、
前記送信フェーズ決定部は、
（ａ）所定の伝送速度で、パリティパケットを付加した一定個数Ｎ（Ｎは任意の自然数）のパケット群を１セグメントにして所定数Ｍ（Ｍは任意の自然数）のセグメントを、各セグメントに属するパケットが一連のＭ個のパケットで成る送信パケット群それぞれに１個ずつ含まれるようにして当該送信パケット群ごとにＮ群分、合計Ｎ×Ｍのパケットを分散送信する第１送信フェーズのデータ送信を行い、
（ｂ）前記（ａ）の第１送信フェーズの送信でデータ損失が発生しなければ、前記（ａ）の第１送信フェーズの伝送速度と同じ伝送速度で、パリティパケットを含まず、かつ前記第１送信フェーズと同じ総パケット数のデータパケット群をバースト的に送信する第２送信フェーズのデータ送信を行い、
（ｃ）前記（ｂ）の第２送信フェーズの送信でもデータ損失が発生しなければ伝送速度を予め設定されている１段階アップして、前記第１送信フェーズのデータ送信を行い、
（ｄ）前記（ｃ）の第１送信フェーズのデータ送信でデータ損失が発生しなければ、前記第２送信フェーズのデータ送信を行い、
（ｅ）以降、データ損失が発生しない限り伝送速度を所定の１段階ずつアップしながらの前記（ｃ）の第１送信フェーズのデータ送信と、前記（ｄ）の第２送信フェーズのデータ送信を繰り返し、
（ｆ）いずれかのデータ伝送期間にデータ損失が発生すれば、その１回前の送信フェーズに戻してデータ送信を再開する、
というルールに基づいて今回の送信フェーズと送信速度を決定することを特徴とするデータ送信装置。
【請求項４】
送信すべきデータを保持するデータ保持部と、
単一の伝送路を通じて情報ネットワークに対してデータ授受するネットワークインタフェースと、
前記データ保持部に保持されている送信すべきデータをパケット化するパケット化処理部と、
一定個（Ｎ−１）のパケット列に対してパリティパケットを生成するパリティパケット生成部と、
前回のデータ送信の成功／不成功の情報と前回の送信フェーズの情報とに基づき、今回の送信フェーズと送信速度を決定する送信フェーズ決定部と、
前記送信フェーズ決定部の決定した送信フェーズの情報に基づき、前記パリティパケットを付加した一定個数Ｎのパケット群を１セグメントにして所定数Ｍのセグメントを生成し、又は、前記パリティパケットを含まず、かつ前記所定数Ｍのセグメント内の総パケット数Ｎ×Ｍと同じ個数のデータパケット群を生成する送信パケット群作成部と、
前記送信フェーズ決定部の決定した送信速度で、前記送信パケット群作成部の生成したパケット群を前記ネットワークインタフェースを介して前記情報ネットワークに送信するデータ送信処理部とを備え、
前記送信フェーズ決定部は、
（ａ）所定の伝送速度で、パリティパケットを付加した一定個数Ｎ（Ｎは任意の自然数）のパケット群を１セグメントにして所定数Ｍ（Ｍは任意の自然数）のセグメントを、各セグメントに属するパケットが一連のＭ個のパケットで成る送信パケット群それぞれに１個ずつ含まれるようにして当該送信パケット群ごとにＮ群分、合計Ｎ×Ｍのパケットを分散送信する第１送信フェーズのデータ送信を行い、
（ｂ）前記（ａ）の第１送信フェーズの送信でデータ損失が発生しなければ、前記（ａ）の第１送信フェーズの伝送速度と同じ伝送速度で、パリティパケットを含まず、かつ前記第１送信フェーズと同じ総パケット数のデータパケット群をバースト的に送信する第２送信フェーズのデータ送信を行い、
（ｃ）前記（ｂ）の第２送信フェーズの送信でもデータ損失が発生しなければ伝送速度を予め設定されている１段階アップして、前記第１送信フェーズのデータ送信を行い、
（ｄ）前記（ｃ）の第１送信フェーズのデータ送信でデータ損失が発生しなければ、前記第２送信フェーズのデータ送信を行い、
（ｅ）以降、データ損失が発生しない限り伝送速度を所定の１段階ずつアップしながらの前記（ｃ）の第１送信フェーズのデータ送信と、前記（ｄ）の第２送信フェーズのデータ送信を繰り返し、
（ｆ）いずれかのデータ伝送期間にデータ損失が発生すれば、それが第２送信フェーズのデータ送信であった場合には同じ伝送速度の第１送信フェーズに戻してデータ送信を再開し、
（ｇ）いずれかのデータ伝送期間にデータ損失が発生すれば、それが第１送信フェーズのデータ送信であった場合には伝送速度を所定の１段階ダウンし、かつ、第１送信フェーズでデータ送信を再開する、
というルールに基づいて今回の送信フェーズと送信速度を決定することを特徴とするデータ送信装置。
【発明の詳細な説明】
【技術分野】  本発明は、データ送信方法及びデータ送信装置に関する。
【背景技術】  特許文献１、特許文献２に開示されているように、従来、情報ネットワーク上でデータをパケット送信する際に利用するプロトコル、例えばＴＣＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）、ＸＴＰ（Ｘｐｒｅｓｓ  Ｔｒａｎｓｐｏｒｔ  Ｐｒｏｔｏｃｏｌ）では高度なウィンドウ制御技術を採用し、ネットワークの輻輳回避のためにスロースタートと呼ばれる通信アルゴリズムを利用している。このスロースタートは、基底ウィンドウサイズで送信を開始し、受信側から受信成功のＡＣＫが届くと一定割合でウィンドウサイズを大きくしてゆき、受信ＡＣＫが届かなくなったり、受信失敗のＮＡＣＫが届いたりすれば、（ａ）送信ウィンドウサイズを基底ウィンドウサイズに戻して最後に受信成功のＡＣＫを受けたパケットの次のパケットから送信再開し、同じようにして徐々にウィンドウサイズを上げていく、あるいは（ｂ）送信ウィンドウサイズを最後に受信成功のＡＣＫを受けときのウィンドウサイズまで小さくし、最後に受信成功のＡＣＫを受けたパケットの次のパケットから送信再開し、同じようにして徐々にウィンドウサイズを上げていくという通信アルゴリズムである。このような従来のスロースタート方式のウィンドウ制御を利用する通信アルゴリズムは、送信側の望むデータのすべてをネットワーク環境が許容する範囲内で比較的に速く、かつ確実に受信側に送信できる特長がある。
ところが、近年の高速化された情報ネットワークを利用して送信されるデータ量は膨大なものになってきているが、受信側のＰＣ（パーソナルコンピュータ）内のソフトウェアの受信データ処理速度がネットワークの高速な通信速度に追従できず、ネットワーク上ではなくて、この受信側での受信データ処理速度がボトルネックとなって多くのデータパケットが紛失してしまうという状況が発生するようになっている。
このようなネットワーク通信環境の下で、従来のスロースタート方式の通信アルゴリズムでデータパケットを送信する場合、ネットワーク上ではなくて受信側の装置内のソフトウェアの処理速度の問題で紛失するパケットが多くなり、パケット再送の頻度が大きくなるが、スロースタート方式の通信アルゴリズムでは、受信側でのデータ紛失発生から送信側が上述した（ａ）あるいは（ｂ）の手順で紛失した最初のパケットから送信再開するまでのラウンドトリップ時間が長くかかる。そのため、スロースタート方式のウィンドウ制御技術を採用しても、パケット紛失の頻度が多く発生するほどに一定量のデータ送信にかかる伝送時間が長くなる問題点があった。
データ伝送の信頼性の保証する技術として従来からパリティを利用するものが知られている。特許文献３には一定個数ｋ−１のパケット毎にそのうちの１つが消失しても残りのパケットのデータから復元できるデータを持たせたパリティパケットを付加し、ｋ個のパケットデータを１セグメントとして、１セグメントずつ送信する技術が開示されている。しかしながら、この伝送方式では、２つ以上の連続するパケットが消失することが多い受信側コンピュータ内でのデータ消失事象−コンピュータ側のソフトウェアの処理速度が通信速度に追いつかず、コンピュータ内で一塊のデータが喪失してしまう事象−には対応できず、データ再送信要求が頻発し、実質的な通信速度の向上が図れない問題点があった。
またパケット伝送において、パケット網に輻輳が発生しない間は通信速度を上昇させ、輻輳の恐れがあれば通信速度を低減させる通信速度制御技術が特許文献４に開示されている。この通信速度制御は実質的な通信速度向上が期待できるが、所定個数のパケットを１セグメントとして、その送信が成功すれば１段階通信速度を上げるようにしており、最初には（所定個数−１個）のデータパケットと１個のパリティパケットを１セグメントとして送信し、それに成功すればパリティパケットを付けずに所定個数のデータパケットを１セグメントとして送信することはしておらず、同じ通信速度でもデータパケット数を増加させることで実質的に通信速度を上げる制御は開示していない。
さらにデータ転送の信頼性を高める技術として特許文献５には複数の伝送路を利用し、例えば（Ｎ−１）個のデータパケットと１個のパリティパケットとでＮ個のパケットを１セグメントとし、Ｍ本の伝送路でＭセグメント分のパケットをマトリクス的に送信する技術が開示されている。これにより、いずれかの伝送路の１本で１個のパケットが消失しても受信側で復元可能であり、再送の必要がなくて通信の信頼性と高速性を可能にしている。しかしながら、複数の伝送路を利用するものであるため、設備コストがかさむこと、受信側での一連のデータの復元処理が複雑である問題点があった。
【特許文献１】特開２００３−２３４４８号公報
【特許文献２】特開２００３−７８５５６号公報
【特許文献３】特開平２−２１９３３６号公報
【特許文献４】特開平７−６６８３７号公報
【特許文献５】特開２００２−３６８１１号公報
【発明の開示】
本発明は、上記のような従来の技術的課題に鑑みてなされたもので、受信側でのデータ復旧を可能にして可能な限りデータパケットの紛失を少なくし、総合的なデータ通信速度スループットを向上できるデータ送信技術を提供することを目的とする。
本発明の１つの特徴はデータ送信方法にあり、このデータ送信方法は、単一の伝送路上で、（ａ）所定の伝送速度で、パリティパケットを付加した一定個数Ｎ（Ｎは任意の自然数）のパケット群を１セグメントにして所定数Ｍ（Ｍは任意の自然数）のセグメントを、各セグメントに属するパケットが一連のＭ個のパケットで成る送信パケット群それぞれに１個ずつ含まれるようにして当該送信パケット群ごとにＮ群分、合計Ｎ×Ｍのパケットを分散送信する第１送信フェーズのデータ送信を行うステップと、（ｂ）前記（ａ）の第１送信フェーズの送信でデータ損失が発生しなければ、前記（ａ）の第１送信フェーズの伝送速度と同じ伝送速度で、パリティパケットを含まず、かつ前記第１送信フェーズと同じ総パケット数のデータパケット群をバースト的に送信する第２送信フェーズのデータ送信を行うステップと、（ｃ）前記（ｂ）の第２送信フェーズの送信でもデータ損失が発生しなければ伝送速度を予め設定されている１段階アップして、前記第１送信フェーズのデータ送信を行うステップと、（ｄ）前記（ｃ）の第１送信フェーズのデータ送信でデータ損失が発生しなければ、前記第２送信フェーズのデータ送信を行うステップと、（ｅ）以降、データ損失が発生しない限り伝送速度を所定の１段階ずつアップしながらの前記（ｃ）の第１送信フェーズのデータ送信と、前記（ｄ）の第２送信フェーズのデータ送信を繰り返すステップと、（ｆ）いずれかのデータ伝送期間にデータ損失が発生すれば、その１回前のフェーズに戻してデータ送信を再開するステップとを有する。
本発明の他の特徴はデータ送信方法にあり、このデータ送信方法は、単一の伝送路上で、（ａ）所定の伝送速度で、パリティパケットを付加した一定個数Ｎのパケット群を１セグメントにして所定数Ｍのセグメントを、各セグメントに属するパケットが一連のＭ個のパケットで成る送信パケット群それぞれに１個ずつ含まれるようにして当該送信パケット群ごとにＮ群分、合計Ｎ×Ｍのパケットを分散送信する第１送信フェーズのデータ送信を行うステップと、（ｂ）前記（ａ）の第１送信フェーズの送信でデータ損失が発生しなければ、前記（ａ）の第１送信フェーズの伝送速度と同じ伝送速度で、パリティパケットを含まず、かつ、前記第１送信フェーズと同じ総パケット数のデータパケット群をバースト的に送信する第２送信フェーズのデータ送信を行うステップと、（ｃ）前記（ｂ）の第２送信フェーズの送信でもデータ損失が発生しなければ伝送速度を予め設定されている１段階アップして、前記第１送信フェーズのデータ送信を行うステップと、（ｄ）前記（ｃ）の第１送信フェーズのデータ送信でデータ損失が発生しなければ、前記第２送信フェーズのデータ送信を行うステップと、（ｅ）以降、データ損失が発生しない限り伝送速度を所定の１段階ずつアップしながらの前記（ｃ）の第１送信フェーズのデータ送信と、前記（ｄ）の第２送信フェーズのデータ送信を繰り返すステップと、（ｆ）いずれかのデータ伝送期間にデータ損失が発生すれば、それが第２送信フェーズのデータ送信であった場合には同じ伝送速度の第１送信フェーズに戻してデータ送信を再開するステップと、（ｇ）いずれかのデータ伝送期間にデータ損失が発生すれば、それが第１送信フェーズのデータ送信であった場合には伝送速度を所定の１段階ダウンし、かつ、第１送信フェーズでデータ送信を再開するステップとを有する。
本発明のさらに他の特徴はデータ送信装置にあり、このデータ送信装置は、送信すべきデータを保持するデータ保持部と、単一の伝送路を通じて情報ネットワークに対してデータ授受するネットワークインタフェースと、前記データ保持部に保持されている送信すべきデータをパケット化するパケット化処理部と、一定個（Ｎ−１）のパケット列に対してパリティパケットを生成するパリティパケット生成部と、前回のデータ送信の成功／不成功の情報と前回の送信フェーズの情報とに基づき、今回の送信フェーズと送信速度を決定する送信フェーズ決定部と、前記送信フェーズ決定部の決定した送信フェーズの情報に基づき、前記パリティパケットを付加した一定個数Ｎのパケット群を１セグメントにして所定数Ｍのセグメントを生成し、又は、前記パリティパケットを含まず、かつ前記所定数Ｍのセグメント内の総パケット数Ｎ×Ｍと同じ個数のデータパケット群を生成する送信パケット群作成部と、前記送信フェーズ決定部の決定した送信速度で、前記送信パケット群作成部の生成したパケット群を前記ネットワークインタフェースを介して前記情報ネットワークに送信するデータ送信処理部とを備え、前記送信フェーズ決定部は、（ａ）所定の伝送速度において、パリティパケットを付加した一定個数Ｎのパケット群を１セグメントにして所定数Ｍのセグメントを、各セグメントに属するパケットが一連のＭ個のパケットで成る送信パケット群それぞれに１個ずつ含まれるようにして当該送信パケット群ごとにＮ群分、合計Ｎ×Ｍのパケットを分散送信する第１送信フェーズのデータ送信を行い、（ｂ）前記（ａ）の第１送信フェーズの送信でデータ損失が発生しなければ、前記（ａ）の第１送信フェーズの伝送速度と同じ伝送速度で、パリティパケットを含まず、かつ前記第１送信フェーズと同じ総パケット数のデータパケット群をバースト的に送信する第２送信フェーズのデータ送信を行い、（ｃ）前記（ｂ）の第２送信フェーズの送信でもデータ損失が発生しなければ伝送速度を予め設定されている１段階アップして、前記第１送信フェーズのデータ送信を行い、（ｄ）前記（ｃ）の第１送信フェーズのデータ送信でデータ損失が発生しなければ、前記第２送信フェーズのデータ送信を行い、（ｅ）以降、データ損失が発生しない限り伝送速度を所定の１段階ずつアップしながらの前記（ｃ）の第１送信フェーズのデータ送信と、前記（ｄ）の第２送信フェーズのデータ送信を繰り返し、（ｆ）いずれかのデータ伝送期間にデータ損失が発生すれば、その１回前の送信フェーズに戻してデータ送信を再開する、というルールに基づいて今回の送信フェーズと送信速度を決定することを特徴とするものである。
本発明のさらに他の特徴はデータ送信装置にあり、このデータ送信装置は、送信すべきデータを保持するデータ保持部と、単一の伝送路を通じて情報ネットワークに対してデータ授受するネットワークインタフェースと、前記データ保持部に保持されている送信すべきデータをパケット化するパケット化処理部と、一定個（Ｎ−１）のパケット列に対してパリティパケットを生成するパリティパケット生成部と、前回のデータ送信の成功／不成功の情報と前回の送信フェーズの情報とに基づき、今回の送信フェーズと送信速度を決定する送信フェーズ決定部と、前記送信フェーズ決定部の決定した送信フェーズの情報に基づき、前記パリティパケットを付加した一定個数Ｎのパケット群を１セグメントにして所定数Ｍのセグメントを生成し、又は、前記パリティパケットを含まず、かつ前記所定数Ｍのセグメント内の総パケット数Ｎ×Ｍと同じ個数のデータパケット群を生成する送信パケット群作成部と、前記送信フェーズ決定部の決定した送信速度で、前記送信パケット群作成部の生成したパケット群を前記ネットワークインタフェースを介して前記情報ネットワークに送信するデータ送信処理部とを備え、前記送信フェーズ決定部は、（ａ）所定の伝送速度で、パリティパケットを付加した一定個数Ｎ（Ｎは任意の自然数）のパケット群を１セグメントにして所定数Ｍ（Ｍは任意の自然数）のセグメントを、各セグメントに属するパケットが一連のＭ個のパケットで成る送信パケット群それぞれに１個ずつ含まれるようにして当該送信パケット群ごとにＮ群分、合計Ｎ×Ｍのパケットを分散送信する第１送信フェーズのデータ送信を行い、（ｂ）前記（ａ）の第１送信フェーズの送信でデータ損失が発生しなければ、前記（ａ）の第１送信フェーズの伝送速度と同じ伝送速度で、パリティパケットを含まず、かつ前記第１送信フェーズと同じ総パケット数のデータパケット群をバースト的に送信する第２送信フェーズのデータ送信を行い、（ｃ）前記（ｂ）の第２送信フェーズの送信でもデータ損失が発生しなければ伝送速度を予め設定されている１段階アップして、前記第１送信フェーズのデータ送信を行い、（ｄ）前記（ｃ）の第１送信フェーズのデータ送信でデータ損失が発生しなければ、前記第２送信フェーズのデータ送信を行い、（ｅ）以降、データ損失が発生しない限り伝送速度を所定の１段階ずつアップしながらの前記（ｃ）の第１送信フェーズのデータ送信と、前記（ｄ）の第２送信フェーズのデータ送信を繰り返し、（ｆ）いずれかのデータ伝送期間にデータ損失が発生すれば、それが第２送信フェーズのデータ送信であった場合には同じ伝送速度の第１送信フェーズに戻してデータ送信を再開し、（ｇ）いずれかのデータ伝送期間にデータ損失が発生すれば、それが第１送信フェーズのデータ送信であった場合には伝送速度を所定の１段階ダウンし、かつ、第１送信フェーズでデータ送信を再開する、というルールに基づいて今回の送信フェーズと送信速度を決定することを特徴とするものである。
【図面の簡単な説明】  図１は、本発明の１つの実施の形態のデータ送信装置の機能構成を示すブロック図。
図２は、上記実施の形態のデータ送信装置に対応するデータ受信装置の機能構成を示すブロック図。
図３は、上記実施の形態におけるアプリケーションデータのパケット化処理の説明図。
図４は、上記実施の形態による複数セグメントの分散送信処理の説明図。
図５は、上記実施の形態のデータ送信装置によるデータ送信処理のフローチャート。
図６は、上記実施の形態のデータ送信装置による初回、第１送信フェーズデータ送信処理のシーケンス図。
図７は、上記実施の形態のデータ送信装置による初回、第２送信フェーズデータ送信処理のシーケンス図。
図８は、上記実施の形態のデータ送信装置による１段階速度アップした２回目の第１送信フェーズデータ送信処理のシーケンス図。
図９は、上記実施の形態のデータ送信装置による２回目の第１送信フェーズでデータ損失が発生したために１段階速度ダウンして行う第２送信フェーズのデータ送信処理のシーケンス図。
図１０は、（Ａ）は上記実施の形態による第１送信フェーズデータ送信の説明図、（Ｂ）は第２送信フェーズデータ送信の説明図。
図１１は、本発明の第２の実施の形態のデータ送信装置によるデータ送信処理のフローチャート。
図１２は、本発明の第３の実施の形態のデータ伝送方法によって送信するデータパケット列を示す説明図。
図１３は、上記第３の実施の形態によるデータ伝送方法によって送信するデータパケット列及びパリティパケット列の説明図。
図１４は、上記第３の実施の形態によるデータ伝送の第１段階を示す説明図。
図１５は、上記第３の実施の形態によるデータ伝送の第２段階を示す説明図。
図１６は、上記第３の実施の形態によるデータ伝送の第３段階を示す説明図。
図１７は、上記第３の実施の形態によるデータ伝送の第４段階を示す説明図。
図１８は、上記第３の実施の形態によるデータ伝送の第５段階を示す説明図。
図１９は、上記第３の実施の形態によるデータ伝送の第６段階を示す説明図。
図２０は、上記第３の実施の形態によるデータ伝送の第７段階を示す説明図。
図２１は、上記第３の実施の形態によるデータ伝送の第８段階を示す説明図。
図２２は、本発明の実施例１のデータ送信方法の基底５０Ｍｂｐｓの速度、第１送信フェーズでのデータ送信のシーケンス図。
図２３は、上記実施例１のデータ送信方法の６０Ｍｂｐｓの速度、第１送信フェーズでのデータ送信のシーケンス図。
図２４は、上記実施例１のデータ送信方法の７０Ｍｂｐｓの速度、第１送信フェーズでのデータ送信のシーケンス図。
図２５は、上記実施例１によるデータ送信特性のグラフ。
図２６は、比較例１によるデータ送信特性のグラフ。
図２７は、本発明の実施例２のデータ伝送方法によるパケット受信速度の測定結果のグラフ。
図２８は、上記実施例２によるパケット損失率の測定結果のグラフ。
図２９は、比較例２のデータ伝送方法によるパケット受信速度の測定結果のグラフ。
図３０は、比較例２によるパケット損失率の測定結果のグラフ。
【発明を実施するための最良の形態】  以下、本発明の実施の形態を図に基づいて詳説する。図１は本発明の第１の実施の形態のデータ送信装置１０の機能構成を示し、図２はこのデータ送信装置１０の送信データを受信するデータ受信装置２０の機能構成を示している。
データ送信装置１０、データ受信装置２０は共にデータパケット通信機能を備えたコンピュータにソフトウェアとして組み込まれるものであり、また通常は送受信両機能を同時に備えるものであるが、ここでは説明の便宜上、送信側と受信側に分けて示してある。
データ送信装置１０の機能構成としては、大容量データを保存するＨＤＤ、一時的にデータを保存するＲＡＭメモリを含めたデータ保存部１１、このデータ保存部１１から送信すべきデータを取り出してパケット化処理をするパケット化処理部１２、パケット化されたデータの一連のパケット列に対して、必要に応じてパリティパケットを生成するパリティ付加処理部１３、データ伝送状況に応じて所定のルールに基づいて送信速度と、第１送信フェーズ（ｆｉｒｓｔ  ｐｈａｓｅ）又は第２送信フェーズ（ｓｅｃｏｎｄ  ｐｈａｓｅ）の送信フェーズを決定する送信フェーズ決定部１４、送信フェーズ決定部１４の指示する送信速度、送信フェーズでパケット化されたデータを送信するデータ送信処理部１５、外部からのデータを受信するデータ受信処理部１６、例えばＬＡＮボード、ＬＡＮアダプタとルータを含み、ネットワーク３０とのインタフェースとして働くハードウェアのネットワークインタフェース（ＮＷ  Ｉ／Ｆ）１７を備えている。
他方、データ受信装置２０の機能構成としては、データ送信装置１０からネットワーク３０を通じて送られてくるデータの受信処理をするデータ受信処理部２１、受信データを一時的に保存するメモリ２２、受信データのパリティチェックを実施するパリティチェック部２３、データエラーが発生している場合に受信データ列に付加されているパリティパケットを利用してデータ復旧を試みるデータ復旧処理部２４、メモリ２２の状態、データ復旧処理部２４のデータ復旧の成否に基づきデータ受信の成否を判定する通信状態判定部２５、通信状態判定部２５のデータ受信の成否判定結果をデータ受信のＡＣＫ，ＮＡＫ信号を送出するデータ送信処理部２６、そして、送信側と同様に例えばＬＡＮボード、ＬＡＮアダプタとルータを含み、ネットワーク３０とのインタフェースとして働くハードウェアのネットワークインタフェース（ＮＷ  Ｉ／Ｆ）２７を備えている。
ネットワーク３０はＬＡＮ、公衆通信回線網、インターネット、あるいはこれらを統合的に利用する情報ネットワークであり、データパケットの伝送が可能なものである。
次に、上記構成のデータ送信装置１０、データ受信装置２０間のデータ通信処理について説明する。
まず本実施の形態で利用するデータパケット通信について説明する。図３に示すようにアプリケーションデータを一定長のパケットｐｋ１，ｐｋ２，…に分割し、一定個数ｍのパケットｐｋ１〜ｐｋｍに対してすべてのパケットの排他的論理和（ＸＯＲ）を計算し、その計算結果をパリティパケットｐａｒｉｔｙ  ｐａｃｋｅｔとする。そしてこの所定個数のデータパケットと１個のパリティパケットで１セグメントＳＧとする。
第１送信フェーズ（ｆｉｒｓｔ  ｐｈａｓｅ）のデータ送信に際しては、所定のＮセグメントのパケット群を分散送信する。図４は３パケット＋１パリティパケットで１セグメントをなす２セグメントＳＧ１，ＳＧ２のパケット群を送信する場合について例示している。この場合、セグメントＳＧ１の最初のパケット（１）、セグメントＳＧ２の最初のパケット（４）、セグメントＳＧ１の２番目のパケット（２）、セグメントＳＧ２の２番目のパケット（５）、…と順に送信し、最後に各セグメントのパリティパケットＰＴ１，ＰＴ２を送信することを示している。
このようにデータパケットの一定個数ｍで成るパケット群ごとにパリティパケットを生成し、そのパリティパケットを含めたｍ＋１のパケットで成るパケット群を１セグメントして送信することにより、そのパケット群のいずれか１つパケットが喪失したとしても、受信側では正常に受信された残りのパケット群とパリティパケットから喪失したパケットのデータを正しく復元することができる。
また、通常、データ通信ではバースト的にパケット喪失が発生する事象が多いが、Ｎ（＝ｍ＋１）個で１セグメントをなすパケット群をＭセグメント分ずつ分散送信すれば、複数のセグメントそれぞれに属するパケット群がそのバースト的な期間内に送信される可能性が高く、受信側ではセグメントごとに上述したパリティパケットを利用したデータ復旧ができ、回復できるパケットが多くなり、その分、パケット喪失を少なくでき、確実なデータ伝送が可能であるメリットがある。
データ送信装置１０、データ受信装置２０間では、このようなパリティパケットの生成・付加とパケット分散送信を利用し、図５のフローチャートに示す方法でデータ伝送を実行する。
＜最初の送信手順＞
データ送信装置１０では、送信すべきアプリケーションデータが生成されれば、一定長、以下の説明では３００００バイトごとのパケットに分割し、最初の送信段階では１０データパケットごとにパリティを計算し、パリティパケットを生成し、１０データパケット＋１パリティパケットの１１パケットで１セグメントを構成するパケット化処理を行う（ステップＳ１，Ｓ３）。
送信開始段階では、前回受信成功とみなし（ステップＳ５でＹＥＳ）、また前回送信ではパリティパケットを付加しなかったものとし（ステップＳ７でＮＯ）、第１送信フェーズ（ｆｉｒｓｔ  ｐｈａｓｅ）の送信準備として、１０データパケットに対して１パリティパケットを付加し、１１パケット１セグメントにし、これを図６に示すように、２０セグメント用意する（ステップＳ９Ａ）。
続いて、最初の送信ＳＫ１１では基底速度５０Ｍｂｐｓの１．１倍の５５Ｍｂｐｓに設定し（ステップＳ１１）、第１送信フェーズで２０セグメントの分散送信を開始する（ステップＳ１３）。
この最初の送信でデータ損失がなくて送信成功であったとする。ここで、受信側はこの受信成功によって送信速度アップを送信側にＡＣＫと共に送信する。なお、送信側がＡＣＫを受信すれば自身で速度アップを判断してもよい。
＜第２回目の送信処理＞
送信側では、受信成功を判断すれば、第２回目の送信処理に入り、初回の送信に対して受信成功したのでステップＳ５でＹＥＳに分岐し、ステップＳ７では初回にはパリティパケットを付加して第１送信フェーズで送信したのでＹＥＳに分岐し、第２送信フェーズ（ｓｅｃｏｎｄ  ｐｈａｓｅ）の送信準備をする（ステップＳ９Ｂ）。つまり、図７に示すように、第２回目の送信では、パリティパケットを付加せずに、１セグメント１１パケット全部をデータパケットにして前回と同じ送信速度で送信し、実質速度アップを図る。そして、２０セグメント分のデータパケットをバースト的に送信する（ステップＳ１３；ＳＫ２１）。この第２回目の送信でもデータ損失がなくて送信成功であったとする。
これによって、基底送信速度が図６に示した初回の実質送信速度がデータパケットについては５０Ｍｂｐｓであったものが、第２回目にはパリティパケットなしで送信できたために１．１倍の５５Ｍｂｐｓの送信速度でデータ送信できたことになる。
＜第３回目の送信処理＞
第３回目の送信処理では、図８に示すように、初回の送信速度５５Ｍｂｐｓに対してその１．１倍である６０．５Ｍｂｐｓに速度アップして、初回と同様にパリティパケットを付加した１セグメント１１パケットを２０セグメント分、第１送信フェーズで分散送信する（ＳＫ２１）。
この速度アップした第１送信フェーズのデータ送信でもデータ損失が発生しない場合、続く第２送信フェーズでは、第２回目の送信処理の場合と同様に、送信速度は６０．５Ｍｂｐｓに維持しながら、パリティパケットを付加せずに、１セグメント１１データパケットにして２０セグメント分のデータパケットをバースト的に送信する。これによって、実質データ伝送速度も６０．５Ｍｂｐｓに高速化できることになる。
以下、同様にして、データ損失が発生しない限り、伝送速度を１段階ずつアップさせつつ、第１送信フェーズでは１０データパケット＋１パリティパケットの１１パケットで１セグメントを構成するパケット群を所定セグメント分だけ分散送信し、その第１送信フェーズの送信に成功すれば、続く第２送信フェーズでは１セグメント１１データパケットの構成にして同じ送信速度でバースト的に送信し、実質データ伝送速度も高める操作を繰り返す。なお、速度アップ率については、例えば１０Ｍｂｐｓずつ、あるいは１０％ずつといった設定が可能であるが、特に限定されるものではない。
図８に示すように、ここでは第３回目のデータ伝送でパケット損失が発生したとする。
＜第４回目の送信処理＞
第３回目に第１送信フェーズ（つまり、１０データパケット＋１パリティパケットの１１パケットで１セグメントとなるパケット群を２０セグメント分だけ分散送信する送信フェーズ：ｆｉｒｓｔ  ｐｈａｓｅ）の送信でデータ損失が発生した場合、１段階前、この場合には図９に示すように第２回目の送信手順と同様の手順に戻って第２送信フェーズでデータ送信を再開することになる（ＳＫ２２）。つまり、図５のフローチャートにおいて、ステップＳ５ではＮＯに分岐し、ステップＳ１５では前回パリティ付加の送信をしたのでＹＥＳに分岐し、第２送信フェーズの送信準備としてパリティ付加処理をせず（ステップＳ１７Ａ）、通信速度を１段階ダウンさせて第２送信フェーズのデータ送信を再開する（ステップＳ１９，Ｓ１３）。
なお、この図９に示した送信操作によってもなおデータ損失が発生すれば、さらに１回前の操作手順、つまり、第１回目と同様の送信速度で第１送信フェーズの送信を実施することになる。
また、前回の送信フェーズが第２送信フェーズであって、その第２送信フェーズにおいて受信失敗であった場合、図５のステップＳ５でＮＯに分岐し、またステップＳ１５でもＮＯに分岐し、第１送信フェーズの準備をし（ステップＳ１７Ｂ）、前回と同じ送信速度でパリティパケットを付加した第１送信フェーズでデータ送信する（ステップＳ１３）。
このようにして、本実施の形態のデータ通信方法では、（ａ）図１０（Ａ）に示すように、各伝送速度において第１送信フェーズ（ｆｉｒｓｔ  ｐｈａｓｅ）としてパリティパケットを付加した一定個数のパケット群を１セグメントにして所定数のセグメントの分散送信を実施し、（ｂ）図１０（Ｂ）に示すように、データ損失が発生しなければ、第２送信フェーズ（ｓｅｃｏｎｄ  ｐｈａｓｅ）としてパリティパケットを含まず、かつ第１送信フェーズの総パケット数と同じ個数のデータパケット群をバースト的に送信し、（ｃ）第２送信フェーズでもデータ損失が発生しなければ伝送速度を１段階アップして、図１０（Ａ）に示す第１送信フェーズのデータ伝送、図１０（Ｂ）に示す第２送信フェーズのデータ伝送を繰り返し、（ｄ）いずれかのデータ伝送期間にデータ損失が発生すればその１回前の送信フェーズに戻してデータ送信を再開する、という操作を行う。この（ｄ）のデータ送信においては、例えば、図１０（Ｂ）の第２送信フェーズでデータ損失が発生すれば送信速度は維持したまま、同図（Ａ）の第１送信フェーズでデータ送信を再開し、図１０（Ａ）の第１送信フェーズでデータ損失が発生すれば送信速度を１段階落として同図（Ｂ）の第２送信フェーズで送信再開するのである。
また、上記の実施の形態では例えば、マルチメディアコンテンツのストリーム送信を想定し、データ損失が発生しても該当データ群を再送するのではなく、次々に新たなデータ群からデータ送信を再開する方式にしたが、データ損失が発生した場合、損失したデータ群３のデータ送信を再開する方式にすることもできる。
これによって第１の実施の形態によれば、パリティデータを付加する分だけ冗長性が増し、ネットワーク上でのデータ消失を受信側が受信データからパリティデータを用いて復旧できて完全なデータ損失の機会を少なくでき、その分データ損失に対する再送の機会を減少させることができ、また第１送信フェーズでデータ損失が発生しなければ、第２送信フェーズとしてパリティパケットを含まず、かつ第１送信フェーズの総パケット数と同じ個数のデータパケット群を同じ送信速度でバースト的に送信することによって、前回成功したので今回も成功の可能性の高い送信速度においてパリティパケットをデータパケットに置き換えて送信することにより、同じ送信速度でのデータパケットの送信個数を増やすことができ、それだけ実質送信速度を上げることができ、これらの総合的な結果として、データ伝送のスループットを改善することができる。
次に、本発明の第２の実施の形態のデータ送信装置及びデータ送信方法について、図１、図２、図１１を用いて説明する。第２の実施の形態は、第１の実施の形態に対して第１送信フェーズでの送信失敗の時の通信速度低減手法が異なり、第１送信フェーズで送信失敗すれば、送信速度を１段階ダウンさせて同じ第１送信フェーズでデータ送信を再開することを特徴とする。したがって、データ送信装置の機能構成は第１の実施の形態と同様に図１、図２に示すものと共通である。ただし、本実施の形態の場合、送信フェーズ決定部１５は、前回の第２送信フェーズで送信失敗があれば同じ送信速度で第１送信フェーズで送信する決定をするが、前回の第１送信フェーズで送信失敗があれば、送信速度を１段階ダウンさせて同じ第１送信フェーズでデータ送信を再開する決定をする。
本実施の形態のデータ送信装置によるデータ送信処理のフローチャートは図１１のようになる。この第２の実施の形態によるデータ送信処理では、前回のデータ送信が成功した場合の実質速度アップの処理は第１の実施の形態と同様である。また、前回のデータ送信が失敗した場合で、その前回の送信フェーズが第２送信フェーズであった場合の処理についても第１の実施の形態と同様であり、図１１のステップＳ５でＮＯに分岐し、またステップＳ１５でもＮＯに分岐し、第１送信フェーズの準備をし（ステップＳ１７Ｂ）、前回と同じ送信速度でパリティパケットを付加した第１送信フェーズでデータ送信する（ステップＳ１３）。
そして本実施の形態の特徴として、前回のデータ送信が失敗した場合で、その前回の送信フェーズが第１送信フェーズであった場合には、ステップＳ１５でＹＥＳに分岐し、前回と同じ第１送信フェーズでのデータ送信準備をし（ステップＳ１７Ｃ）、前回よりも送信速度を１段階ダウンさせてデータ送信を再開する処理をする（ステップＳ１９，Ｓ１３）。
この第２の実施の形態によっても、第１の実施の形態と同様に、パリティデータを付加する分だけ冗長性が増し、ネットワーク上でのデータ消失を受信側が受信データからパリティデータを用いて復旧できて完全なデータ損失の機会を少なくでき、その分データ損失に対する再送の機会を減少させることができ、また第１送信フェーズでデータ損失が発生しなければ、第２送信フェーズとしてパリティパケットを含まず、かつ第１送信フェーズの総パケット数と同じ個数のデータパケット群を同じ送信速度でバースト的に送信することによって、前回成功したので今回も成功の可能性の高い送信速度においてパリティパケットをデータパケットに置き換えて送信することにより、同じ送信速度でのデータパケットの送信個数を増やすことができ、それだけ実質送信速度を上げることができ、これらの総合的な結果として、データ伝送のスループットを改善することができる。
次に、本発明の第３の実施の形態について、図１２〜図２１を用いて説明する。第３の実施の形態のデータ送信装置のシステム構成は第１の実施の形態、第２の実施の形態と同様であるが、その冗長化データ送信方法に特徴があり、図１２〜図２１に示す送信方法をとる。いま、図１２、図１３に示すように送信すべきデータパケットがデータパケット（１）〜データパケット（６）であり、データパケット（１），（３），（５）がセグメントＳＧ１に属するパケット群、データパケット（２），（４），（６）がセグメントＳＧ２に属するパケット群であるとする。そして、これらセグメントＳＧ１，ＳＧ２それぞれに対して冗長化のためにパリティパケットＰＴ１とパリティパケットＰＴ２を付加して送信する場合、次のようにして冗長化したパケット送信を行う。
図１４に示すように、複数のセグメントＳＧ１，ＳＧ２それぞれに属する送信すべきデータパケット（１），（３），（５）のパケット群とデータパケット（２），（４），（６）のパケット群を送信順に一列に並べた状態で送信を開始する。そして、最初に送信するセグメントＳＧ１に属するパケット（１）を送信し、この際にセグメントＳＧ１用のパリティパケットＰＴ１に対してパリティを記録する。
次に図１５に示すように、セグメントＳＧ２に属する最初のデータパケット（２）を送信し、この際にセグメントＳＧ２用のパリティパケットＰＴ２に対してパリティを記録する。
続いて、図１６に示すように再びセグメントＳＧ１に属する２番目のデータパケット（３）を送信し、その際にもセグメントＳＧ１用のパリティパケットＰＴ１に対してパリティを記録する。これに続いて、図１７に示すように、セグメントＳＧ２に属する２番目のデータパケット（４）を送信し、セグメントＳＧ２用のパリティパケットＰＴ２にパリティを記録する。
以下、同様の送信手順を繰り返す。そして図１８に示すようにセグメントＳＧ１の最後のデータパケット（５）を送信し、そのパリティをパリティパケットＰＴ１に記録し、続いて図１９に示すようにセグメントＳＧ２の最後のデータパケット（６）を送信し、そのパリティをパリティパケットＰＴ２に記録する。そして、最後に図２０、図２１に示すようにセグメントＳＧ１用のパリティパケットＰＴ１とセグメントＳＧ２用のパリティパケットＰＴ２を送信する。
このようにして、同時に送信すべき複数のセグメントそれぞれに属するデータパケットを順に送信し、その各データパケットの送信の際に各セグメント用のパリティパケットにパリティを記録してゆき、最後に複数のセグメントそれぞれのパリティパケット群を送信することにより、あらかじめセグメント毎のパリティパケットを作成する処理をしなくて済み、冗長化したデータ伝送の効率を向上させることができる。
【実施例１】  図２２〜図２４による本発明の２フェーズスロースタート伝送方式によるデータ送信と従来のスロースタート輻輳回避制御伝送方式によるデータ送信を評価した結果を図２５、図２６のグラフに示した。データ伝送量は同じであり、本発明の実施例ではデータ送信成功で１０Ｍｂｐｓずつ速度を上昇させ、データ損失発生で１０Ｍｂｐｓずつ速度を下げる制御をし、また第２送信フェーズでのデータ伝送は省略した。
すなわち、最初に図２２に示すように、ｆｉｒｓｔ  ｐｈａｓｅ、５０Ｍｂｐｓでパリティパケットを含めた１セグメント２１パケットを２０セグメント分送信する（ＳＫ２１１）。この基底送信速度は４．８ｍｓｅｃ／ｐａｃｋｅｔである。
このＳＫ２１１の送信が成功すれば、１０Ｍｂｐｓの速度増加を行い、図２３に示すようにｆｉｒｓｔ  ｐｈａｓｅ、６０Ｍｂｐｓでパリティパケットを含めた１セグメント２１パケットを２０セグメント分送信する（ＳＫ２２１）。このときの送信速度は４．０ｍｓｅｃ／ｐａｃｋｅｔである。
続いてＳＫ２２１の送信も成功すれば、さらに１０Ｍｂｐｓの速度増加を行い、図２４に示すようにｆｉｒｓｔ  ｐｈａｓｅ、７０Ｍｂｐｓでパリティパケットを含めた１セグメント２１パケットを２０セグメント分送信する（ＳＫ２３１）。このときの送信速度は３．４ｍｓｅｃ／ｐａｃｋｅｔである。
このＳＫ２３１の送信でパケット損失が発生すれば、次の送信では、１０Ｍｂｐｓだけ速度を低下させ、６０Ｍｂｐｓの速度でｆｉｒｓｔ  ｐｈａｓｅで送信する。
このような実施例１のデータ送信方法と従来のデータ送信方法（比較例１）での送信特性、送信結果を測定した。これによれば、図２５の実施例１のグラフ及び図２６の比較例１のグラフに示すように、ギガビット・イーサネット（登録商標）を用いた１対１の評価では、比較例１のスロースタートよりも実施例１によるデータ送信の方が４３．９％少ない損失率で通信できることが実証された。また、本発明の場合、パケット復旧率は４１．２％であった。
【実施例２】  本発明の第３の実施の形態による２フェーズスロースタート伝送方式によるデータ送信と従来のスロースタート伝送方式によるデータ送信を評価した。
実験環境としては、ＰＣ１，ＰＣ２の２台のコンピュータ間をギガビットイーサネット（登録商標）で接続し、ＰＣ１とＰＣ２にＮＩＳＴ  Ｎｅｔ（商品名）という遅延発生エミュレータのソフトウェアを動作させ、ＰＣ１からＰＣ２へのデータ送信にかかる遅延時間を１００ｍｓｅｃにした。これで往復遅延時間は２００ｍｓｅｃになり、この遅延時間は日本−アメリカ間の長距離ネットワークの遅延時間に相当する。このＮＩＳＴ  Ｎｅｔは「Ｔｈｅ  Ｌｉｎｕｘ−ｂａｓｅｄ  Ｎｅｔｗｏｒｋ  Ｅｍｕｌａｔｉｏｎ  Ｔｏｏｌ  ＮＩＳＴ  Ｎｅｔ」であり、ｈｔｔｐ：／／ｓｎａｄ．ｎｃｓｌ．ｎｉｓｔ．ｇｏｖ／ｉｔｇ／ｎｉｓｔｎｅｔ／にて入手したものである。
この条件で、ＰＣ２からＰＣ１へデータを送信し、従来のスロースタートと本発明による２フェーズスロースタート（ＴＰＳＳ）の２つのアルゴリズムによる送信速度とパケット損失率の差を評価した。
送信速度の変化方法としては、パケット損失率が５％を越えた場合、受信側が送信側に送信速度を０．８倍するように要求し、そうでない場合は速度を１．２倍にするように要求することにした。
そして、ＴＰＳＳでは、
（１）第１送信フェーズの送信でパケット損失率が５％を越えていなければ第２送信フェーズで冗長化せずに送信し、第２送信フェーズでも損失率が５％を越えなければ送信速度が１．２倍になるように冗長化し、再び第１送信フェーズを開始する、
（２）第１送信フェーズ、第２送信フェーズで損失率が５％を越えた場合には、１つ前の第２送信フェーズに戻る、
という条件に設定した。
実験条件は、本実施例２は次の表１のものであった。
2005029806.tif 000003
2005029806.tif 000004
他方、比較例２の実験条件は、次の表２のものであった。
2005029806.tif 000005
これらの伝送条件で伝送試験を行った評価結果は、次の表３、表４に示し、また図２７〜図３０に示すものであった。
2005029806.tif 000006
2005029806.tif 000007
この実験結果から、本実施例２によるデータ伝送では実効伝送速度が向上できることが確かめられた。
産業上の利用の可能性
本発明によれば、パリティデータを付加する分だけ冗長性が増し、ネットワーク上でのデータ消失を受信側が受信データからパリティデータを用いて復旧できて完全なデータ損失の機会を少なくでき、その分データ損失に対する再送の機会を減少させることができ、また第１送信フェーズでデータ損失が発生しなければ、第２送信フェーズとしてパリティパケットを含まず、かつ第１送信フェーズの総パケット数と同じ個数のデータパケット群を同じ送信速度でバースト的に送信することによって、前回成功したので今回も成功の可能性の高い送信速度においてパリティパケットをデータパケットに置き換えて送信することにより、同じ送信速度でのデータパケットの送信個数を増やすことができ、それだけ実質送信速度を上げることができ、これらの総合的な結果として、データ伝送のスループットを改善することができる。
【図１】
2005029806.tif 000008
【図２】
2005029806.tif 000009
【図３】
2005029806.tif 000010
【図４】
2005029806.tif 000011
【図５】
2005029806.tif 000012
【図６】
2005029806.tif 000013
【図７】
2005029806.tif 000014
【図８】
2005029806.tif 000015
【図９】
2005029806.tif 000016
【図１０】
2005029806.tif 000017
【図１１】
2005029806.tif 000018
【図１２】
2005029806.tif 000019
【図１３】
2005029806.tif 000020
【図１４】
2005029806.tif 000021
【図１５】
2005029806.tif 000022
【図１６】
2005029806.tif 000023
【図１７】
2005029806.tif 000024
【図１８】
2005029806.tif 000025
【図１９】
2005029806.tif 000026
【図２０】
2005029806.tif 000027
【図２１】
2005029806.tif 000028
【図２２】
2005029806.tif 000029
【図２３】
2005029806.tif 000030
【図２４】
2005029806.tif 000031
【図２５】
2005029806.tif 000032
【図２６】
2005029806.tif 000033
【図２７】
2005029806.tif 000034
【図２８】
2005029806.tif 000035
【図２９】
2005029806.tif 000036
【図３０】
2005029806.tif 000037
【国際調査報告】
2005029806.tif 000038
2005029806.tif 000039
2005029806.tif 000040
2005029806.tif 000041