(57)【要約】      （修正有）【課題】パケット損失の影響を受け易いリアルタイム性を持つデータを再送することなく、確実に転送することができる。【解決手段】各送信ホストにパケット送信を許可する仮想的なタイムスロットを割当て、他のホストと送信時間が重ならないようにする。また、ネットワークにおける遅延のゆらぎにより送信データの衝突が起こり、通信データの品質低下が起きないように、リアルタイムデータ用にデータの冗長化が可能なリアルタイムスロットを設けて、パケットが損失した場合は冗長データにより復旧を行いパケットの再送を防ぐ。【選択図】図８
2007006068.tif 000002
【特許請求の範囲】
【請求項１】
複数の送信ホストが１つの受信ホストにパケットを送信する際のネットワークにおけるパケットの同期送受信方法において、
前記１つの受信ホストあるいは前記送受信ホストとは独立したホストが、各送信ホストにパケット送信を許可する仮想的なタイムスロットを割当て、当該送信ホストの送信時間が他の送信ホストの送信時間と重ならないようにし、
該受信ホストあるいは該独立ホストは、該ネットワークにおける遅延のゆらぎによりパケットの到着間隔にばらつきが生じないように、リアルタイム・スロットを定義し、
パケットが損失した場合でも、最大ゆらぎ時間帯部分によって損失パケットの復旧を行うことを特徴とするネットワークにおけるパケットの同期送受信方法。
【請求項２】
複数の送信ホストが１つの受信ホストにパケットを送信する際のネットワークにおけるパケットの同期送受信方法において、
前記受信ホストは、該受信ホストのバッファに溢れが生じない条件で、各々の送信ホストに送信可能タイムスロットを割り当てる送信タイミング時刻情報を送信し、
該送信ホストは、該送信タイミング時刻情報を受信した後、データを該受信ホストに送信することを特徴とするネットワークにおけるパケットの同期送受信方法。
【請求項３】
複数の送信ホストが１つの受信ホストにパケットを送信する際のネットワークにおけるパケットの同期送受信方法において、
前記１つの受信ホストまたは前記送受信ホストとは独立したホストは、前記送信ホストと前記受信ホストのＲｏｕｎｄ−Ｔｒｉｐ  Ｔｉｍｅを計測し、
該１つの受信ホストまたは該独立ホストは、複数の送信ホストからのパケットが該受信ホストに同時に到着しないように、かつ該受信ホストが最大効率でパケットを処理できるように、各送信タイミングに対して各ホスト間のＲｏｕｎｄ−Ｔｒｉｐ  Ｔｉｍｅに対応させて決定する送信タイミングの同期をとることを特徴とするネットワークにおけるパケットの同期送受信方法。
【請求項４】
複数の送信ホストが１つの受信ホストにパケットを送信する際のネットワークにおけるパケットの同期送受信システムにおいて、
パケット往復時間と最大ゆらぎ時間を測定する手段と、通信アプリケーションの指示に基づいて優先度を決定する手段と、前記最大ゆらぎ時間と前記優先度とデータ送信元から要求された情報に基づき各データ送信装置のタイムスロット種別と通信割当時間を決定する手段と、前記タイムスロット種別と通信割当時間をデータ送信装置へ通知する手段とを有するデータ受信装置、および、
前記データ受信装置より通知されたタイムスロット種別に応じてデータを冗長化する手段と、通知された通信割当時間に基づきデータを送信する手段とを有するデータ送信装置からなることを特徴とするパケットの同期送受信システム。
【請求項５】
複数の送信ホストから各々送信されたパケットを受信する受信ホストに配置されたデータ受信装置において、
該データ受信装置に予め設定されているホスト優先情報を格納する手段と、
該ホスト優先情報に基づいて割当て順が決定され、優先度の高いホストから順にリアルタイムスロットを割り当てるタイムスロット割当処理手段と、
生成されたタイムスロット割当パケットを送信するパケット送信処理手段と、
ネットワークからインタフェースを介して送られてきたパケットを受信するパケット受信処理手段と、
該パケット受信処理手段で受信されたパケットを保存するパケットメモリ手段と、
該パケットメモリ手段に保存された複数のパケットから、パケットのシーケンス番号を用いて損失パケットがないか否かを判定するパケット損失判定手段と、
判定の結果、損失パケットがあり、リアルタイムスロットとしてデータが送信されている場合、受信データと冗長データから損失パケットを復旧させて、復旧したパケットを該パケットメモリ手段に保存するデータ復旧処理手段と、
受信したパケットの冗長化グループ番号からリアルタイムスロットであるか否かを判定するタイムスロット判定処理手段と
を有することを特徴とするデータ受信装置。
【請求項６】
１つの受信ホストに対して複数の送信ホストから各々のパケットを送信するデータ送信装置において、
前記受信ホストから送信されたタイムスロット割当パケットを受信するパケット受信処理手段と、
受信したタイムスロット割当パケットからタイムスロットの種類と割り当てられたタイムスロット時間を決定する送信方式決定手段と、
送信データを保存するデータ保存手段と、
該データ保存手段から取り出された送信データをデータパケットに分割するパケット化処理手段と、
タイムスロットがリアルタイムの場合に、データパケットから冗長データを計算して、該データパケットに冗長パケットとして付加するパリティ付加処理手段と、
生成されたデータパケットと冗長パケットを、ネットワークに送信するパケット送信処理手段と
を有することを特徴とするデータ送信装置。
【請求項７】
複数の送信ホストから各々送信されたパケットを受信する受信ホストに配置されたデータ受信装置の同期受信プログラムであって、
データ受信装置のコンピュータに、該データ受信装置に予め設定されているホスト優先情報を格納する手順、該ホスト優先情報に基づいて割当て順を決定し、優先度の高いホストから順にリアルタイムスロットを割り当てる手順、生成されたタイムスロット割当パケットを送信する手順、ネットワークからインタフェースを介して送られてきたパケットを受信する手順、受信されたパケットを保存する手順、パケットメモリに保存された複数のパケットから、パケットのシーケンス番号を用いて損失パケットがないか否かを判定する手順、判定の結果、損失パケットがあり、リアルタイムスロットとしてデータが送信されているならば、受信データと冗長データから損失パケットを復旧させる手順、復旧したパケットを該パケットメモリに保存する手順、受信したパケットの冗長化グループ番号からリアルタイムスロットであるか否かを判定する手順を、それぞれ実行させるための同期受信プログラム。
【請求項８】
１つの受信ホストに対して複数の送信ホストから各々のパケットを送信するデータ送信装置の同期送信プログラムであって、
データ送信装置のコンピュータに、前記受信ホストから送信されたタイムスロット割当パケットを受信する手順、受信したタイムスロット割当パケットからタイムスロットの種類と割り当てられたタイムスロット時間を決定する手順、データ保存手段から取り出された送信データをデータパケットに分割する手順、タイムスロットがリアルタイムの場合に、データパケットから冗長データを計算する手順、該データパケットに冗長パケットとしてパリティを付加する手順、生成されたデータパケットと冗長パケットを、ネットワークに送信する手順を、それぞれ実行させるための同期送信プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、インターネットのようなパケット交換によリ通信する非同期ネットワークのパケット同期送受信方法、送受信システム、データ送信装置、データ受信装置および同期送受信プログラムに関する。
【背景技術】
【０００２】
従来より、普及しているギガビットイーサネット（登録商標）や１０ギガビットイーサネット（登録商標）のような高速なネットワークにおいては、ホストが送受信できるパケット量よりもネットワークが転送できるパケット量の方が多い場合がある。このような環境では、ネットワークから到着するパケットの処理が間に合わずに、受信ホストがバッファオーバーランを起こして、パケットが損失してしまい、スループットが低下するという問題が生じる。
【０００３】
ところで、従来、インターネットのような公衆網において、ホスト間の通信で使用されるプロトコルはＴＣＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）が一般的である。ＴＣＰは、ネットワークの帯域がスループットのボトルネックとして考えられており、ネットワークが輻輳を起こさないように、ホストが送信するパケットの量を抑制している。具体的には、送信ホストが送信した各パケットに対して正常に受信できたことを通知するＡＣＫ（Ａｃｋｎｏｗｌｅｇｅｍｅｎｔ：確認応答）が送信ホストに返され、このＡＣＫの数によって受信ホストに送ることのできるパケット数を判断し、ＡＣＫが送られてくるタイミングと同じタイミングでパケットを送信することによってネットワークが輻輳を起こさないように制御を行っている。
【０００４】
しかし、ギガビットイーサネット（登録商標）や１０ギガビットイーサネット（登録商標）では、パケットの間隔はマイクロ秒〜ナノ秒の単位であるが、ＰＣの割り込み間隔はミリ秒の単位であるため、ＡＣＫの受信タイミングに合わせた送信間隔の制御では精度に限界がある。
従来、この問題に対しては、ネットワークインタフェース（ＮＩＣ）のパケット送信間隔の制御機能を用いて解決する方法が提案されている（例えば、中村  誠、  稲葉真理、平木  敬、著『ギガビットイーサネット上での遠距離ＴＣＰ通信におけるＰａｃｋｅｔ  Ｓｐａｃｉｎｇ』（非特許文献１）参照）。
【０００５】
図１６は、従来の１対１におけるパケット間隔制御の説明図である。
ネットワークインタフェース（ＮＩＣ）によるパケット間隔の制御は、上図に示すように、１対１の通信では、パケット損失率を抑え、スループットを向上することができる。
しかし、下図に示すように、複数のホストが１つのホストに対してパケットを送信するような場合では、ネットワークで各ホストから送信されたパケットが混入されるため、ネットワークインタフェース（ＮＩＣ）でパケット間隔の制御を行ったとしても、受信ホストに到着するパケットがバースト的になることは防げない。下図では、ルーターにおいて、２つのホストから送られてきたパケットが混ざって、キューイング処理によるパケットのバースト化が行われている。
【０００６】
【非特許文献１】中村  誠、  稲葉真理、平木  敬、著『ギガビットイーサネット上での遠距離ＴＣＰ通信におけるＰａｃｋｅｔ  Ｓｐａｃｉｎｇ』ｐｐ．１〜６、
【発明の開示】
【発明が解決しようとする課題】
【０００７】
このように、ネットワークインタフェースによるパケット間隔の制御では、複数のホストから１つのホストにパケットを送信する場合、各ホストから送信されたパケットが混入するため、インタフェースでパケット間隔の制御を行ったとしても、受信ホストに到着するパケットはバースト的になっていた。
また、ネットワークにおける遅延のゆらぎにより、パケットの到着時間にばらつきが生じるという問題もあった。
【０００８】
（目的）
本発明の目的は、上述のような課題を解決し、ネットワーク内のルーターを経由した場合でも、複数のホストからのパケットが混入して、バースト性が高くなることを少なくするとともに、タイムスロットが重なり、パケットが損失した場合でも、パケットの再送を防ぐことができ、実時間を保つことが可能な高速ネットワークにおけるパケットの同期送受信方法、同期送受信システム、データ送信装置および受信装置を提供することにある。
【課題を解決するための手段】
【０００９】
本発明の高速ネットワークにおけるパケットの同期送受信方法は、各送信ホストにパケット送信を許可する仮想的なタイムスロットを割当て、他のホストと送信時間が重ならないようにすることで、ネットワーク内のルーターを経由した場合でも、パケットが混ざり、バースト性が高くなることを少なくする。また、ネットワークにおける遅延のゆらぎによりパケットの到着間隔にばらつきが生じないように、リアルタイム・スロットを定義する。すなわち、リアルタイムスロットでは、ゆらぎによってタイムスロットが重なる部分を冗長化することで、パリティビットの付加等の冗長化を行う。タイムスロットが重なり、パケットが損失した場合でも、最大ゆらぎ時間帯部分である上記の冗長データ部分によって復旧を行い、パケットの再送を防ぐことにより実時間性を保つ。
【００１０】
また、本発明の高速ネットワークにおけるデータ送受信システムは、パケット網通信を介してデータを送受信する装置間の同期技術において、パケット往復時間と最大ゆらぎ時間を測定する手段と、通信アプリケーションの指示に基づいて優先度を決定する手段と、前記最大ゆらぎ時間と前記優先度とデータ送信元から要求された情報に基づき各データ送信装置のタイムスロット種別と通信割当時間を決定する手段と、前記タイムスロット種別と通信割当時間をデータ送信装置へ通知する手段とを有するデータ受信装置、および、
前記受信装置より通知されたタイムスロット種別に応じてデータを冗長化する手段と、通知された通信割当時間に基づきデータを送信する手段とを有するデータ送信装置からなる。
【００１１】
また、本発明の高速ネットワークにおけるパケット同期送受信方法は、複数の送信ホストが特定の受信ホストに対してデータを送信する通信方法において、受信ホストのバッファの溢れが起こらない条件で、送信ホストに送信可能タイムスロットを割り当てる送信タイミング時刻情報を、受信ホストから各々の送信ホストに送信し、送信ホストは送信タイミング時刻情報を受信した後、データを受信ホストに送信する。
さらに、送信ホストと受信ホストのＲＴＴ（Ｒｏｕｎｄ−Ｔｒｉｐ  Ｔｉｍｅ）を計測し、複数のホストからのパケットが受信ホストに同時に到着しないよう、かつ受信ホストが最大効率でパケットを処理できるよう、各送信タイミングに対して各ホスト間のＲＴＴに対応させて決定する送信タイミングの同期を行う。
さらに、時間的に連続するように割り当てられた２つのタイムスロット内のパケットが、ネットワークの遅延ゆらぎによって重なり合って到着し、受信ホストのバッファが溢れた場合でも、タイムスロット内の損失したパケットを復旧させるための冗長化送信を行う。
【発明の効果】
【００１２】
１）複数のホストが１つのホストにパケットを送信する場合、仮想的なタイムスロットに従って送信ホストがパケットを送信することで、各ホストが同時にパケットを送信することがなくなり、受信ホストに到着するパケットのバースト性は小さくなり、結果としてバッファオーバーランによるパケットロスが少なくなり、スループットが向上する。
２）また、リアルタイム・スロットを用いることで、他のタイムスロットと時間的に重なることがなくなり、タイムスロットの重なりによるパケット損失をなくすことができ、その結果、パケット損失の影響を受け易いリアルタイム性を持つデータを再送することなく、確実に転送することができる。
【発明を実施するための最良の形態】
【００１３】
以下、本発明の実施例を、図面により詳細に説明する。
（動作原理）
図１は、本発明の動作原理の説明図である。
図１の左側の２つの送信ホストＰＣに対して、パケット送信を許可する仮想的なタイムスロットを割当てることにより、右側に示す共通の受信ホストに対してそれぞれ他のホストと送信時間が重ならないようにパケット送信する。これにより、ネットワーク内のルーターを経由した場合でも、平滑化されたパケットとして、パケットの再送を防ぎ、実時間性を保持することが可能である。
【００１４】
（コネクションの確立とＲＴＴの計測）
図２は、４つのホストが通信を行う場合の説明図である。
図２に示すように、４つのホストｐ１〜ｐ４が通信を行う場合を考える。ここでは、ｐ１，ｐ２，ｐ３が送信を行い、ｐ４が受信を行うものとする。各ホストｐ１，ｐ２，ｐ３，ｐ４は、通信を行う前にコネクションを張り、通信相手を識別する。
データ送信を開始する前、およびデータ送信を開始している間、受信ホストｐ４は送信ホストｐ１，ｐ２，ｐ３とのパケット往復時間（ＲＴＴ：Ｒｏｕｎｄ−Ｔｒｉｐ  Ｔｉｍｅ）を計測する。ＲＴＴの計測は、ＲＴＴ測定要求パケットを送信ホストｐ１，ｐ２，ｐ３に送り、送信ホストｐ１，ｐ２，ｐ３から返答のパケットが返ってくるまでの時間を計測することで行う。送信ホストｐｉと受信ホストｐ４間の平均ＲＴＴをＡｖｇＲＴＴｉとする。
【００１５】
ネットワークの状態によってＲＴＴは変化する。ホスト間のＲＴＴの最大揺らぎ値（最大ジッター）をｊｔｉとし、ホスト間のＲＴＴは（ＡｖｇＲＴＴｉ−ｊｔｉ）≦ＲＴＴ≦（ＡｖｇＲＴＴｉ＋ｊｔｉ）であるとする。
図２には、各送信ホストｐ１，ｐ２，ｐ３と受信ホストｐ４間のＡｖｇＲＴＴｉとｊｔｉが示されている。送信ホストｐ１のＡｖｇＲＴＴ１＝１０ｍｓ、ｊｔｉ＝３ｍｓ、送信ホストｐ２のＡｖｇＲＴＴ２＝３０ｍｓ、ｊｔｉ＝１ｍｓ、送信ホストｐ３のＡｖｇＲＴＴ３＝５０ｍｓ、ｊｔｉ＝５ｍｓである。
【００１６】
（ホスト優先情報）
各ホストｐ１，ｐ２，ｐ３は、コネクション確立後にホスト優先情報を作成する。ホスト優先情報は、アプリケーション等が決めるものである。また、ホスト優先情報は、パケットを優先的に受信するための相手ホストの優先度情報である。
優先度情報は、以下のような順序情報で、優先度の高いホストから順にタイムスロットが割り当てられる。
ｐ１＜ｐ２＜ｐ３（ｐ３が最も優先度が高く、ｐ１が最も低い）
ホスト優先情報は、ホスト内でのみ有効な情報（変更しても他のホストの通信に影響がない）であるため、通信中にホスト優先情報を変更することもできる。
【００１７】
（タイムスロットの割り当て）
図３は、ＩＰネットワークにおけるタイムスロット割当メッセージのフォーマット図である。
受信ホストｐ４は、パケット送信を許可する仮想的なタイムスロットを送信ホストｐ１，ｐ２，ｐ３に定期的に割り当てる。タイムスロットの割り当ては、タイムスロット割当メッセージを送信ホストに送信することで行う。
ＩＰネットワークにおけるタイムスロット割当メッセージは、図３に示すように、ＩＰヘッダ、ＵＤＰヘッダ、タイムスロットの種類（リアルタイムスロット、ノンリアルタイムスロット）および割り当て時間（ｓｅｃ）からなる。
【００１８】
図４は、各ホストｐ１，ｐ２，ｐ３，ｐ４における送受信タイムチャートである。
各ホストｐ１，ｐ２，ｐ３が持つ時計の時刻は異なっているため、受信ホストｐ４と送信ホストｐ１，ｐ２，ｐ３のＲＴＴを用いてパケット送信の同期を行う。受信ホストｐ４が送信ホストｐ１からパケットを時刻Ｔから受け取りたい場合、受信ホストｐ４はタイムスロット割当メッセージを時刻（Ｔ−ＡｖｇＲＴＴｉ）に送信する。送信ホストｐｉは、タイムスロット割当メッセージを受け取った直後から、割当られた時間パケットを送信することができる。図４に示すように、受信ホストからのタイムスロット割当メッセージはｐ１，ｐ２，ｐ３の順序で送信を行っているが、メッセージ到着の早い送信ホストｐ３，ｐ２，ｐ１の順序で受信ホストｐ４へのパケットを送信している。
【００１９】
（タイムスロットの種類）
図５は、ノンリアルタイム・スロットのタイムチャートであり、図６はリアルタイム・スロットのタイムチャートである。
〈ノンリアルタイム・スロット〉
これは、割り当てられた時間データパケットを送信するタイムスロットである。パケットが損失した場合には、損失したパケットは再送する必要がある。
各ホストに割り当てたタイムスロットに対して、最大ジッターを考慮した場合に最大重複時間ＴＯは、図５に示すように、割り当てられたタイムスロットの大部分を占めている。
【００２０】
〈リアルタイム・スロット〉
これは、損失パケットの再送によってリアルタイム性が失われることを考慮したタイムスロットである。リアルタイム・スロットでは、送信するパケットを冗長化させ、最大ゆらぎ時間帯部分（最大ジッター）を含ませることで、元のデータよりも多くのパケットを送信したと同じにする。なお、冗長データと表現しても別途にデータを送信するのではなく、あくまでも最大ジッターの範囲で冗長化させるのである。図６に示すように、最大重複時間ＴＯ以外の各ホストに割り当てられたタイムスロットの割合が大きく、最大ジッターを含めると、全体でかなりの時間幅となるため、パリティビットやその他のビットを加える等の冗長データとして使用する。
仮にパケットが損失した場合でも、冗長化したデータを用いて損失したパケットを復旧させることが可能となる。パケット損失は、タイムスロットの重なりによって起こるものと仮定し、隣り合うタイムスロットと重なる時間分だけ冗長データを送信する。
最大重複時間ＴＯ＝ｍａｘ（｛ｊｔｉ−１，ｊｔｉ＋１｝）＋ｊｔｉ＋
ｍａｘ（｛０，ｍｉｎ（｛ｊｔｉ−１，ｊｔｉ＋１｝）−ｊｔｉ｝）
（ｊｔｉ：ホストｉとの最大ジッター）
【００２１】
パケットの再送を防ぐ目的では、全てのスロットをリアルタイム・スロットにすることが理想的である。しかし、リアルタイム・スロットはデータの冗長化による送信時間のオーバーヘッドが生じるため、全てのスロットをリアルタイム・スロットにした場合、ホストに割り当てられるタイムスロットの間隔が長くなり、その結果、実時間性を保てなくなる可能性がある。現実的には、優先度の高いデータに対してリアルタイム・スロットを割り当て、優先度の低いデータに対してはノンリアルタイム・スロットを割り当てるのが良いと考えられる。
【００２２】
（冗長化手法）
データを冗長化する方法は多数あるが、例えば、排他的論理和（ＸＯＲ）を用いた場合、長さＬのデータに対して最大重複時間ＴＯ分のパリティ（ＸＯＲの計算値）を付加することで、仮にスロット内でＴＯ時間分の送信データが損失した場合でもデータとパリティによって長さＬのデータを復元することができる。
長さＬ［ｂｙｔｅ］のデータをｓ［ｂｐｓ］の速度で送信した場合
必要なパリティの量Ｒ［ｂｙｔｅ］＝ＴＯ［ｓｅｃ］×ｓ［ｂｐｓ］×８
タイムスロット長Ｔ［ｂｙｔｅ］＝Ｌ［ｂｙｔｅ］＋Ｒ［ｂｙｔｅ］
【００２３】
（パケット形式）
以下、パケット形式について述べる。
〈パケット形式〉
図７は、送信ホストのパケット形式のフォーマット図である。
送信ホストのパケット形式は、図７に示すように、ＩＰヘッダ、ＵＤＰヘッダ、シーケンス番号、冗長化グループ番号、冗長化情報、およびデータからなる。
○シーケンス番号は、送信ホストが付与するパケットの通し番号（１以上）である。１つの送信ホスト・受信ホスト間のパケットの通し番号である。受信ホストでは、シーケンス番号から損失パケットを検出する。
【００２４】
○冗長化グループ番号は、冗長化されたパケット群が持つ共通の番号（１以上）であり、パケット群毎に異なる値を持つ。パケット損失が検出された場合、同一のグループに属するパケット群のデータと冗長データから損失パケットのデータを復旧させる。ノンリアルタイム・スロットの場合には、０を設定する。
○冗長化情報は、損失パケットの復旧に必要な冗長化の情報である。
例えば、ＸＯＲによる冗長化では、ＸＯＲ演算を行ったデータ長等になる（８であれば、８ビットに１ビットのパリティデータ等）。
○データ（ユーザデータ）は、アプリケーション等から渡される転送データである。
【００２５】
（リアルタイム・スロットとノンリアルタイム・スロットの送信例）
図８は、リアルタイム・スロットとノンリアルタイム・スロットの送信例を示すタイムチャートである。
受信ホストｐ４から送信ホストｐ１，ｐ２，ｐ３に対してタイムスロットの割当てを行い、割当ての到着が早い順、つまり送信ホストｐ３，ｐ２，ｐ１の順序で受信ホストｐ４に対してデータの送信が行われる。その場合、優先順位を設定し、アプリケーションデータをリアルタイム・スロットで送信し、その他のデータをノンリアルタイム・スロットで送信する。リアルタイム・スロットで送信する場合には、最初と最後にパリティ・データが付加される。これ以降、送信ホストｐ１，ｐ２，ｐ３へのタイムスロット割り当てが繰り返される。
【００２６】
（ブロック図）
図９は、本発明の一実施例に係るデータ受信装置のブロック構成図である。
タイムスロット割当処理部３４では、タイムスロット割当パケットを生成し、パケット送信処理部３３からパケットを送信する。タイムスロット割当パケットは、ホストに割り当てるタイムスロットの順番とホストとの遅延時間に基づいて生成される。
タイムスロットは、データ受信装置に予め設定されているホスト優先情報に基づいて割当て順が決定され、優先度の高いホストから順にリアルタイム・スロットが割り当てられる。
パケットは、ＮＷインタフェース２でネットワーク１から受信され、パケット受信処理部３１でメモリ３５に保存される。パケット損失判定部３７では、メモリ３５に保存された複数のパケットから損失パケットがないか否かを判定する。損失パケットの判定は、パケットのシーケンス番号を用いる。損失パケットがあり、リアルタイム・スロット（冗長化グループ番号≧１）としてデータが送信されている場合には、データ復旧処理部３８で受信データと冗長データから損失パケットの復旧を行い、メモリ３５に保存を行う。ノンリアルタイム・スロットの場合には、パケット損失判定とデータ復旧の処理は行わない。
ホスト優先情報が格納されたメモリ３９からタイムスロット割当処理部３４に優先情報が送られると、送信ホストに対するタイムスロット割当て処理を行い、パケット送信処理部３３からＮＷインタフェース２、ネットワーク１を介して各送信ホストに対して送信される。
【００２７】
図１０は、本発明の一実施例に係るデータ送信装置のブロック構成図である。
パケット受信処理部６２では、受信ホストから送られてきたタイムスロット割当パケットを受信する。送信方式決定部６５では、受信したタイムスロット割当パケットからタイムスロットの種類と割り当てられたタイムスロット時間を決定する。送信データは、データ保存部６６から取り出され、パケット化処理部６３でデータパケットに分割される。
タイムスロットがリアルタイム・スロットの場合には、パリティ付加処理部６４でデータパケットから冗長データを計算し、冗長パケットとして付加する。
タイムスロットがノンリアルタイム・スロットの場合には、パリティ付加処理部６４で冗長パケットは付加されない。生成されたデータパケットと冗長パケットは、パケット送信処理部６１によってネットワーク４に送信される。
【００２８】
（フローチャート）
図１１は、本発明の一実施例に係る送信装置の動作フローチャートであり、図１２は、同じく受信装置の動作フローチャートである。また、図１３、図１４は受信ホストにおけるタイムスロット割当パケット送信までの動作フローチャートである。
図１１において、送信データはアプリケーション等によって生成され、データ保存部６６に格納される（ステップ１０１）。格納されたデータはパケット化処理部６３でデータパケットに分割される（ステップ１０２）。分割されたパケットは、直ちに送信することはできず、送信方式決定部６５でタイムスロットが割当てられるまで待機する（ステップ１０３）。
【００２９】
タイムスロット割り当てメッセージは、パケット受信処理部６２で受信された後、送信方式決定部６５でリアルタイムスロットか、ノンリアルタイムスロットかが判定される（ステップ１０４）。割り当てられたタイムスロットがリアルタイムスロットであれば、パリティ付加処理部６４でデータパケットから冗長パケットを生成する（ステップ１０５）。また、割り当てられたタイムスロットがノンリアルタイムスロットであれば、パリティ付加処理部６４で冗長パケットは生成されない。データパケットと冗長パケットは、パケット送信処理部６２によってネットワークに送信される（ステップ１０６）。
【００３０】
図１２において、パケット受信処理部３１から受信されたパケットは、メモリ３５に保存される（ステップ２０１）。受信したパケットは、タイムスロット判定処理部３６において冗長化グループ番号からリアルタイムスロット（冗長化グループ番号≧１）であるかを判定する（ステップ２０２）。リアルタイムスロットの場合には、パケット損失判定部３７においてシーケンス番号から損失しているパケットがあるか否かを判定する（ステップ２０３）。損失がある場合には、データ復旧処理部３８において同一の冗長化グループのパケットから損失パケットの復旧を行う（ステップ２０４）。
【００３１】
図１３において、受信装置のタイムスロット割当処理部３４では、ホスト優先情報を参照し、タイムスロットが割り当てられていない優先度の高いホストを選択する（ステップ２０５）。リアルタイムスロットを割り当てられる時間がある場合には（ステップ２０６）、タイムスロット割当処理部３４はリアルタイムスロットを割り当てる（ステップ２０７）。また、時間がない場合には、ノンリアルタイムスロットを割り当てる（ステップ２０８）。そして、全てのホストにタイムスロットを割り当てたか否かを判別する（ステップ２０９）。
なお、ホスト優先情報はアプリケーション等が決めるもので、例えばテレビジョン会議通信時に発言者の通信の優先度を高める場合などがこれに相当する。
【００３２】
図１４において、受信装置のタイムスロット割当処理部３４は、各送信ホストと受信ホストの平均往復遅延時間からタイムスロット割当パケットの送信時間を求める（Ｔ−ＡｖｇＲＴＴｉの算出）（ステップ２１０）。求めたタイムスロット割当パケットの送信時間まで待機し（ステップ２１１）、割当パケットを送信する（ステップ２１２）。通信終了でなければ（ステップ２１３）、ステップ２１１に戻って、次のホストにタイムスロット割当処理を行う。
【００３３】
（実施例）
以下、本発明の一実施例を説明する。
〈コネクションの確立〉
受信ホストｐ４が複数の送信ホストｐ１，ｐ２，ｐ３に対してコネクション確立の要求パケットを送信する。送信ホストｐ１，ｐ２，ｐ３がそれぞれコネクション要求の応答パケットを受信ホストｐ４に送信することにより、コネクションが確立する。
【００３４】
〈ＲＴＴ測定〉
図１５は、ホスト間のＲＴＴの測定結果を示す図である。
受信ホストｐ４は、パケット送信処理部とパケット受信処理部において、コネクション確立の要求パケットの送信時刻と、送信ホストｐ１，ｐ２，ｐ３からの応答パケットの受信時刻を記録し、各ホスト間（ｐ４−ｐ１，ｐ４−ｐ２，ｐ４−ｐ３）のＲＴＴを計算し、往復遅延時間情報として記録する。ここでは、ｐ４−ｐ１のＡｖｇＲＴＴ１＝３０［ｍｓ］，ｐ４−ｐ２のＡｖｇＲＴＴ２＝３０［ｍｓ］，ｐ４−ｐ３のＡｖｇＲＴＴ３＝３０［ｍｓ］であり、３つとも同一時間である。
【００３５】
〈優先度の決定〉
コネクション確立後に、受信ホストｐ４は送信ホストｐ１，ｐ２，ｐ３に優先度を付与し、ホスト優先情報として記録する。ここでは、優先順位をｐ１＞ｐ２＞ｐ３とする。
【００３６】
〈パケット送信要求〉
送信ホストｐ１，ｐ２，ｐ３は、受信ホストｐ４に対してデータ送信要求を送る。データ送信要求の例として、各送信ホストは１０Ｍｂｐｓの送信速度で０．２秒間のデータ送信を０．５秒おきに行うものとする。
【００３７】
〈タイムスロットの割り当て〉
優先度情報に基づいて、送信ホストｐ１，ｐ２，ｐ３の順にタイムスロット割り当て処理部においてタイムスロットの割り当てを行う。
１）ｐ１にリアルタイムスロットを割り当てる。
０．５秒おきに０．２秒間のリアルタイムスロットを割り当てる。
２）（０．５−０．２）で０．３秒の未割り当て時間があり、ｐ２の要求が０．２秒であるため、ｐ２にリアルタイムスロットを０．５秒おきに０．２秒間のリアルタイムスロットを割り当てる。
３）（０．５−０．２−０．２）で０．１秒の未割り当て時間があり、ｐ３の要求が０．２秒であるため、ｐ３にはノンリアルタイムスロットを０．５秒おきに０．１秒間割り当てる。
【００３８】
リアルタイムスロットの冗長データの送信時間は、送信ホスト・受信ホスト間のジッターｊｔの２倍の時間に相当する。ただし、コネクション確立直後はＲＴＴのサンプル数が１つしかないため、ｊｔ＝１０［ｍｓ］を最小値とするなどして冗長データの送信を行う。データ送信が何回か行われ、ＲＴＴのサンプル数が十分とれれば、実測値のジッターを元に冗長データの送信を行う。
【００３９】
各送信ホストと受信ホストのＲＴＴは３０ｍｓと同じであるため、タイムスロットの割り当ては、タイムスロット割り当て時間の間隔で次のように行う。
０ｓ：ｐ１へのリアルタイムスロット割り当てパケット送信
０．２ｓ：ｐ２へのリアルタイムスロット割り当てパケット送信
０．４ｓ：ｐ３へのノンリアルタイムスロット割り当てパケット送信
０．５ｓ：ｐ１へのリアルタイムスロット割り当てパケット送信
・・・・・・・
（パケット送信要求が変わるまで繰り返す）
【００４０】
〈パケット送信〉
タイムスロット割り当てパケットを受信したホストｐ１，ｐ２，ｐ３は、割り当てられた時間分パケットを送信する。
ｐ１；リアルタイムスロットを０．２ｓｅｃ間送信
ｐ２：リアルタイムスロットを０．２ｓｅｃ間送信
ｐ３：ノンリアルタイムスロットを０．１ｓｅｃ間送信
【００４１】
なお、図１および図２の実施例では、複数の送信ホストから１つの受信ホストにデータを送信する場合に、上記１つの受信ホストから各送信ホストに対して送信を許可するタイムスロットを割当てるものと説明したが、本発明はタイムスロットを割当てるのは受信ホストに限らず、例えば、前記送受信ホストとは独立した他のホストが、各送信ホストにパケット送信を許可する仮想的なタイムスロットを割当て、当該送信ホストの送信時間が他の送信ホストの送信時間と重ならないようにすることも可能である。
【図面の簡単な説明】
【００４２】
【図１】本発明の動作原理を示す説明図である。
【図２】本発明によるＲＴＴの計測結果を示す図である。
【図３】本発明のＩＰネットワークにおけるタイムスロット割当メッセージのフォーマット図である。
【図４】本発明における動作タイムチャートである。
【図５】本発明におけるノンリアルタイム・スロットのタイムチャートである。
【図６】本発明におけるリアルタイム・スロットのタイムチャートである。
【図７】本発明の送信ホストのパケット形式を示す図である。
【図８】本発明におけるリアルタイム・スロットとノンリアルタイム・スロットの送信例を示す図である。
【図９】本発明の一実施例に係るデータ受信装置のブロック構成図である。
【図１０】本発明の一実施例に係るデータ送信装置のブロック構成図である。
【図１１】本発明の一実施例に係るデータ送信装置の動作フローチャートである。
【図１２】本発明の一実施例に係るデータ受信装置の動作フローチャートである。
【図１３】本発明の一実施例に係るデータ受信装置のタイムスロット割り当て処理のフローチャートである。
【図１４】本発明の一実施例に係るデータ受信装置のタイムスロット割当パケット送信時間算出処理のフローチャートである。
【図１５】本発明の一実施例に係るＲＴＴ測定結果の図である。
【図１６】従来におけるパケット間隔制御とパケットのバースト性の説明図である。
【符号の説明】
【００４３】
１：ネットワーク
２：ＮＷインタフェース
３：データ受信装置
４：ネットワーク
５：ＮＷインタフェース
６：データ送信装置
３１：パケット受信処理部
３２：往復遅延時間情報
３３：パケット送信処理部
３４：タイムスロット割当処理部
３５：メモリ
３６：タイムスロット判定処理部
３７：パケット損失判定部
３８：データ復旧処理部
３９：ホスト優先情報
６１：パケット送信処理部
６２：パケット受信処理部
６３：パケット化処理部
６４：パリティ付加処理部
６５：送信方式決定部
６６：データ保存部
【図１】
2007006068.tif 000003
【図２】
2007006068.tif 000004
【図３】
2007006068.tif 000005
【図４】
2007006068.tif 000006
【図５】
2007006068.tif 000007
【図６】
2007006068.tif 000008
【図７】
2007006068.tif 000009
【図８】
2007006068.tif 000010
【図９】
2007006068.tif 000011
【図１０】
2007006068.tif 000012
【図１１】
2007006068.tif 000013
【図１２】
2007006068.tif 000014
【図１３】
2007006068.tif 000015
【図１４】
2007006068.tif 000016
【図１５】
2007006068.tif 000017
【図１６】
2007006068.tif 000018