(57)【要約】【課題】経路状態の劣化が発生しない場合の多重化による性能向上を保ちつつ、経路状態の劣化が発生した場合の多重化による性能劣化を防止することが可能な通信システムの提供。  【解決手段】複数の通信経路２−１，２−２を論理的に多重する通信システムであって、複数の通信ノード１−１，１−２と、通信ノード１−１，１−２間に接続される複数の通信経路２−１，２−２とを含み、通信ノード１−１は経路状態が劣化するイベントが発生すると仮定して、受信側ノード１−２でパケットの受信順序が逆転しないように送信パケットの順序を決定する経路およびパケット選択部２０３を含む。【選択図】      図１
2008306321.tif 000002
【特許請求の範囲】
【請求項１】
複数の通信経路を論理的に多重する通信システムであって、
複数の通信ノードと、前記通信ノード間に接続される複数の通信経路とを含み、
前記通信ノードは経路状態が劣化するイベントが発生すると仮定して、受信側ノードでパケットの受信順序が逆転しないように送信パケットの順序を決定する経路およびパケット選択手段を含むことを特徴とする通信システム。
【請求項２】
前記経路およびパケット選択手段は、受信側ノードから所定通信経路を介して返送される確認応答により前記所定通信経路に実際にイベントが発生したことを検出し、以降の送信パケットの順序を決定することを特徴とする請求項１記載の通信システム。
【請求項３】
前記イベントは複数経路のうちの１つの経路で、帯域が低下することであることを特徴とする請求項１または２記載の通信システム。
【請求項４】
前記イベントは複数経路のうちの１つの経路で、送信したパケットが損失することであることを特徴とする請求項１または２記載の通信システム。
【請求項５】
前記経路およびパケット選択手段は、受信側ノードにおいて、あるパケットの受信直後に経路帯域が低下するイベントが発生すると仮定し、以降の送信パケットの順序を決定することを特徴とする請求項３記載の通信システム。
【請求項６】
複数の通信経路を論理的に多重する通信システムにおけるパケットスケジューリング方法であって、
前記通信システムは複数の通信ノードと、前記通信ノード間に接続される複数の通信経路とを含み、
前記通信ノードは経路状態が劣化するイベントが発生すると仮定して、受信側ノードでパケットの受信順序が逆転しないように送信パケットの順序を決定する経路およびパケット選択ステップを含むことを特徴とするパケットスケジューリング方法。
【請求項７】
前記経路およびパケット選択ステップは、受信側ノードから所定通信経路を介して返送される確認応答により前記所定通信経路に実際にイベントが発生したことを検出し、以降の送信パケットの順序を決定することを特徴とする請求項６記載のパケットスケジューリング方法。
【請求項８】
前記イベントは複数経路のうちの１つの経路で、帯域が低下することであることを特徴とする請求項６または７記載のパケットスケジューリング方法。
【請求項９】
前記イベントは複数経路のうちの１つの経路で、送信したパケットが損失することであることを特徴とする請求項６または７記載のパケットスケジューリング方法。
【請求項１０】
前記経路およびパケット選択ステップは、受信側ノードにおいて、あるパケットの受信直後に経路帯域が低下するイベントが発生すると仮定し、以降の送信パケットの順序を決定することを特徴とする請求項８記載のパケットスケジューリング方法。
【請求項１１】
複数の通信経路を論理的に多重する通信システムにおける通信ノードであって、
前記通信ノードは複数個設けられ、前記通信ノード間に前記複数の通信経路が接続されており、
経路状態が劣化するイベントが発生すると仮定して、受信側ノードでパケットの受信順序が逆転しないように送信パケットの順序を決定する経路およびパケット選択手段を含むことを特徴とする通信ノード。
【請求項１２】
前記経路およびパケット選択手段は、受信側ノードから所定通信経路を介して返送される確認応答により前記所定通信経路に実際にイベントが発生したことを検出し、以降の送信パケットの順序を決定することを特徴とする請求項１１記載の通信ノード。
【請求項１３】
前記イベントは複数経路のうちの１つの経路で、帯域が低下することであることを特徴とする請求項１１または１２記載の通信ノード。
【請求項１４】
前記イベントは複数経路のうちの１つの経路で、送信したパケットが損失することであることを特徴とする請求項１１または１２記載の通信ノード。
【請求項１５】
前記経路およびパケット選択手段は、受信側ノードにおいて、あるパケットの受信直後に経路帯域が低下するイベントが発生すると仮定し、以降の送信パケットの順序を決定することを特徴とする請求項１３記載の通信ノード。
【請求項１６】
複数の通信経路を論理的に多重する通信システムにおけるパケットスケジューリング方法のプログラムであって、
前記通信システムは複数の通信ノードと、前記通信ノード間に接続される複数の通信経路とを含み、
前記プログラムは前記通信ノードに含まれ、
コンピュータに、経路状態が劣化するイベントが発生すると仮定して、受信側ノードでパケットの受信順序が逆転しないように送信パケットの順序を決定する経路およびパケット選択ステップを実行させるためのプログラム。
【請求項１７】
前記経路およびパケット選択ステップは、受信側ノードから所定通信経路を介して返送される確認応答により前記所定通信経路に実際にイベントが発生したことを検出し、以降の送信パケットの順序を決定することを特徴とする請求項１６記載のプログラム。
【請求項１８】
前記イベントは複数経路のうちの１つの経路で、帯域が低下することであることを特徴とする請求項１６または１７記載のプログラム。
【請求項１９】
前記イベントは複数経路のうちの１つの経路で、送信したパケットが損失することであることを特徴とする請求項１６または１７記載のプログラム。
【請求項２０】
前記経路およびパケット選択ステップは、受信側ノードにおいて、あるパケットの受信直後に経路帯域が低下するイベントが発生すると仮定し、以降の送信パケットの順序を決定することを特徴とする請求項１８記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信システムおよびそのパケットスケジューリング方法ならびに送信ノードに関し、特に複数の通信経路を論理的に多重する通信システムおよびそのパケットスケジューリング方法ならびに送信ノードに関する。
【背景技術】
【０００２】
２ノード間で利用可能な複数の通信経路を多重化する際、多重化回線がＦＩＦＯ（ｆｉｒｓｔ−ｉｎ  ｆｉｒｓｔ−ｏｕｔ）回線として機能するためには、受信ノードは異なる経路を経由したパケットの受信順序の逆転を補正しなければならない。このとき、順序解決に要する時間は、多重化回線全体の遅延を増加させる。
【０００３】
このような多重化による付加遅延を抑制するために、非特許文献１に開示されるような、各経路の状態を監視しながら受信側での順序逆転を最小化する負荷分散を行う手法が存在する。これは、多重化回線を構成する各通信経路の状態が変化した場合、その変化を検出してパケットスケジューリングに反映させるものである。
【０００４】
一例として、経路の帯域変化が生じる場合の関連技術の例について図面を参照しながら説明する。なお、以下簡単のため、全ての図におけるパケットのサイズは同一とする。
【０００５】
図１１は関連する通信システムの負荷分散の動作の一例の模式図である。同図は、送信ノード１−１はシーケンス番号１から始まるパケット群を、経路２−１および２−２を介して受信ノード１−２に転送する場合の負荷分散の例を示している。
【０００６】
ここで、経路２−１は経路２−２の２倍の帯域を持ち、また各経路のフローコントロールにはウインドウ制御を用い、帯域差を反映して経路２−１はウインドウサイズが６、経路２−２はウインドウサイズが４としている。
【０００７】
送信ノード１−１は経路２−１からパケット列１０−１を、経路２−２からパケット列１０−２を、それぞれウインドウサイズ分だけ送信する。つまり、パケット列１０−１として６パケットを、パケット列１０−２として４パケットを送信する。その際、帯域差を反映して、パケット列１０−１に２パケット配分するごとにパケット列１０−２に１パケット配分するよう負荷分散している。
【０００８】
パケット列１０−１および１０−２を構成するパケットのシーケンス番号は、受信側での送信順序の逆転が生じないよう決定される。
【０００９】
そうすると、受信ノード１−２ではパケット列２０−１が経路２−１から、パケット列２０−２が経路２−２からそれぞれ受信され、経路２−１におけるパケットの伝送遅延をｔ（秒）とすると、受信開始から時間４ｔ後にはシーケンス番号１〜６までのパケットが欠落なく受信される。
【００１０】
送信ノード１−１はパケット列１０−１送信後に、経路２−１に関して３番目の送信済みパケットであるシーケンス番号４のＡｃｋ（ａｃｋｎｏｗｌｅｄｇｍｅｎｔ；確認応答）を受信したとすると、ウインドウが３パケット分開くので、続いてパケット列１１−１を送信する。
【００１１】
同様に、経路２−２に関してシーケンス番号６のＡｃｋを受取ると、ウインドウ空き分の２パケットのパケット列１１−２を送信する。
【００１２】
そうすると、受信ノード１−２では受信開始から時間８ｔ後までにはシーケンス番号１〜１２のパケットが受信される。ここで、受信パケットには欠落や順序逆転がないので、受信した全てのパケット、つまりシーケンス番号１２まではより下流のノードに転送が可能である。
【００１３】
以上は経路２−１および２−２の帯域が変化しなかった場合の説明である。続いて経路２−１の帯域が送信時の予測の半分、つまり経路２―２と同じに送信と同時にまたは直前に変わってしまった場合の例を図１２に示す。図１２は関連する通信システムの負荷分散の動作の他の一例の模式図である。
【００１４】
同図を参照すると、送信ノード１−１は最初経路状態の変化を認識していないので、図１１の例と同様にパケット列１０−１および１０−２を送信する。しかし、受信ノード１−２では、図１１の例よりも低いレートでパケット列２０−１は受信され、図１１と同じタイミングで経路２−１に関するＡｃｋを送信したとすると、Ａｃｋされるシーケンス番号は１となる。
【００１５】
この場合、受信開始から時間４ｔ後までに受信されるパケットはシーケンス番号１〜３および６なので、受信ノード１−２が順序制御を行う場合、より下流のノードに転送できるパケットはシーケンス番号３までである。
【００１６】
同様に、受信開始から時間８ｔ後に転送できるパケットはシーケンス番号６までとなる。つまり、この時点では、図１１の例と比べて、受信ノード１−２の転送レートは半分に低下している。
【００１７】
なお、特許文献１に関連技術の他の一例が開示されている。
【００１８】
次に、他の例として、送信パケットに損失が発生する場合の関連技術の例について図面を参照しながら説明する。
【００１９】
図１３は関連する通信システムの負荷分散の動作の他の一例の模式図である。同図は図１１と同様に、送信ノード１−１はシーケンス番号１から始まるパケット群を、経路２−１および２−２を介して受信ノード１−２に転送する場合の負荷分散の例を示している。また、経路２−１、２−２の帯域およびウインドウサイズも図１１の場合と同様とする。
【００２０】
図１３には、図１１の内容に加えて、経路２−１に関しては３番目に送信するパケット列１２−１および対応する受信パケット列２２−１を記載したものが示されている。ただし、経路２−１，２−２ともに帯域の変化はないものとし、経路２−１は損失率が０であるが、経路２−２は一定の損失率を有すると仮定する。
【００２１】
図１３には、図１１と同様の関連技術を用いたパケットスケジューリングの例が示されている。パケット列１０−２および１１−２が送信される間、実際には経路２−２の損失が発生しない場合には、図１３から分かるように、受信ノード１−２は受信開始から１２ｔ後にはシーケンス番号１８までのパケットを転送でき、経路２−１のみを用いた場合の１．５倍の性能となっていることが分かる。
【００２２】
次に、経路２−２に送信された最初のパケットである、シーケンス番号３のパケットが損失した場合の動作を図１４に示す。図１４は関連する通信システムの負荷分散の動作の他の一例の模式図である。
【００２３】
損失が発生したことは、パケット列１１−２を送信する前に送信ノード１−１が受信するＡｃｋおよび損失情報から送信ノード１−１に伝わる。したがって、送信ノード１−１はパケット列１１−２に再送パケット（シーケンス番号３）を含めることができる。
【００２４】
図１４において、受信ノード１−２は受信開始から８ｔ後の時点で、シーケンス番号１および２のパケットしか下流ノードに転送できない。受信開始から１０ｔ後の時点で再送パケット（シーケンス番号３のパケット）を受信して、シーケンス番号１４までのパケットが転送可能となる。
【００２５】
つまりこの例では、受信開始から時刻１０ｔ未満までの間は、経路２−１のみを用いた場合よりも性能が低くなり、信頼性の低い回線を多重化対象に含めたことのデメリットが生じている。ただし、受信開始後１２ｔ後では、シーケンス番号１７までのパケットが転送可能となり、損失が発生しない場合とほぼ同じ性能が回復する。
【００２６】
【特許文献１】特開２００６−１５７８８９号公報（段落００３８）
【非特許文献１】T. Nakata et al., “Efficient bundling of heterogeneous radio resources for broadband Internet access from moving vehicles, ” in proceedings od Global Mobile Congress 2004, October 11-13, 2004, Shanghai, China.
【発明の開示】
【発明が解決しようとする課題】
【００２７】
図１１〜１４に示す関連技術では、多重化回路を構成する各通信経路の状態が変化した場合、その変化を検出してパケットスケジューリングに反映させる。したがって、実際に経路状態変化のイベントが発生してから送信側に通知され、スケジューリングに反映させるまでにかかる時間の間は誤った経路情報の認識に基づくスケジューリングが継続することになり、それが多重化リンクの性能を劣化させ、一時的に単一経路を用いた場合よりも低い性能となってしまうという問題があった。
【００２８】
そこで本発明の目的は、経路状態の劣化が発生しない場合の多重化による性能向上を保ちつつ、経路状態の劣化が発生した場合の多重化による性能劣化を防止することが可能な通信システムおよびそのパケットスケジューリング方法ならびに送信ノードを提供することにある。
【課題を解決するための手段】
【００２９】
前記課題を解決するために、本発明による通信システムは、複数の通信経路を論理的に多重する通信システムであって、複数の通信ノードと、前記通信ノード間に接続される複数の通信経路とを含み、前記通信ノードは経路状態が劣化するイベントが発生すると仮定して、受信側ノードでパケットの受信順序が逆転しないように送信パケットの順序を決定する経路およびパケット選択手段を含むことを特徴とする。
【００３０】
また、本発明によるパケットスケジューリング方法は、複数の通信経路を論理的に多重する通信システムにおけるパケットスケジューリング方法であって、前記通信システムは複数の通信ノードと、前記通信ノード間に接続される複数の通信経路とを含み、前記通信ノードは経路状態が劣化するイベントが発生すると仮定して、受信側ノードでパケットの受信順序が逆転しないように送信パケットの順序を決定する経路およびパケット選択ステップを含むことを特徴とする。
【００３１】
また、本発明による送信ノードは、複数の通信経路を論理的に多重する通信システムにおける通信ノードであって、前記通信ノードは複数個設けられ、前記通信ノード間に前記複数の通信経路が接続されており、経路状態が劣化するイベントが発生すると仮定して、受信側ノードでパケットの受信順序が逆転しないように送信パケットの順序を決定する経路およびパケット選択手段を含むことを特徴とする。
【００３２】
また、本発明によるプログラムは、複数の通信経路を論理的に多重する通信システムにおけるパケットスケジューリング方法のプログラムであって、前記通信システムは複数の通信ノードと、前記通信ノード間に接続される複数の通信経路とを含み、前記プログラムは前記通信ノードに含まれ、コンピュータに、経路状態が劣化するイベントが発生すると仮定して、受信側ノードでパケットの受信順序が逆転しないように送信パケットの順序を決定する経路およびパケット選択ステップを実行させることを特徴とする。
【発明の効果】
【００３３】
本発明によれば、経路状態の劣化が発生しない場合の多重化による性能向上を保ちつつ、経路状態の劣化が発生した場合の多重化による性能劣化を防止することが可能となる。
【発明を実施するための最良の形態】
【００３４】
以下、本発明の実施例について添付図面を参照しながら説明する。
【実施例１】
【００３５】
第１実施例は複数経路のうちの１つの経路で、帯域が半分になるイベントが発生する場合に関する。図１は本発明に係る通信システムの第１実施例の構成図である。同図を参照すると、本発明に係る通信システムの第１実施例は、通信ノード１−１，１−２と、通信経路２−１，２−２と、通信網１００とを含んで構成される。
【００３６】
また、通信ノード１−１は、入力パケットキュー２０１と、スケジューリング部２０２と、経路およびパケット選択部２０３と、パケット送信部２０４−１，２０４−２と、記憶部２０５と、パケット受信部２０６−１，２０６−２と、パケット解析部２０７と、パケット転送部２０８と、制御部２１１と、プログラム格納部２１２とを含んでいる。
【００３７】
なお、通信ノード１−２の構成は、通信ノード１−１と同様であるので同一番号を付しその説明を省略する。
【００３８】
また、プログラム格納部２１２にはパケットスケジューリング方法を含む通信方法をコンピュータ（制御部２１１）に実行させるためのプログラムが格納されており、制御部２１１はプログラム格納部２１２からそのプログラムを読み出し、そのプログラムにしたがって他の構成部分２０１〜２０８を制御する。
【００３９】
次に、この通信システムの動作の一例について説明する。通信ノード１−１の入力パケットキュー２０１に転送用のパケットが蓄積される。経路およびパケット選択部２０３は、入力パケットキュー２０１内から１つ以上のパケットを選択し、使用可能な経路（２−１または２−２）を選択し、選択した経路に対応するパケット送信部（２０４−１または２０４−２）に選択したパケットを入力する。
【００４０】
送信されたパケットは、通信ノード１−２のパケット受信部（２０６−１または２０６−２）により受信され、パケット解析部２０７が受信パケットの内容および受信時刻から利用した経路の情報を抽出して記憶部２０５に書き込み、パケット転送部２０８が受信パケットをさらに下流のノードに転送する。
【００４１】
なお、同図には通信経路２−１，２−２のみが示されているが、経路が３本以上ある場合にも本発明の適用が可能である。また、本発明におけるパケット列（後述するパケット列１０−１，１０−２，１１−１，１１−２）の作成は、経路およびパケット選択部２０３により実行される。
【００４２】
以下、第１実施例の具体的な動作について説明する。図２は本発明に係る通信システムの第１実施例の負荷分散の動作の一例の模式図である。なお、図２では便宜上、通信ノード１−１を送信ノード、通信ノード１−２を受信ノードとするが、通信ノード１−１を受信ノード、通信ノード１−２を送信ノードとすることも可能である。
【００４３】
図１１〜図１４の例と同様に、送信ノード１−１と受信ノード１−２との間で経路２−１および経路２−２の２つの経路を利用可能とする。経路２−１は２つの状態を持ち、一方の状態では経路２−２と同じ帯域を、もう一方の状態では経路２−２の２倍の帯域を有するものとする。この２つの状態間の遷移は任意の時刻に発生するものとする。
【００４４】
これは、たとえば、セルラー回線のように、環境やトラフィック条件により帯域が不連続に変化する回線を含む経路を模している。この状態のリストは一例であり、一般には経路に含まれる回線の種別に関する既知の性質、または統計的な経路状態のモニター結果から決定されるものとする。また、本実施例の初期状態では、経路２−２は広帯域な状態にある。つまり、経路２−２は経路２−１の２倍の帯域を持つものとする。
【００４５】
送信ノード１−１はパケット送信の際、初期状態で経路２−２の２倍の帯域を持つ経路２−１が、帯域が半分となるイベントが送信と同時に発生すると仮定して送信パケットの順序の決定を行う。つまり、イベント発生後には経路２−１と経路２−２との帯域が等しくなることから、受信側でのシーケンス番号の逆転が生じないよう、図２の送信パケット列１０−１と１０−２にはシーケンス番号が交互になるようパケットを配している。ただし、ウインドウサイズは経路２−１の方が大きいので、図１１の例と同様に、パケット列１０−１はパケット列１０−２より含まれるパケット数が大きい。
【００４６】
パケット列１０−１と１０−２を送信する時点での、送信ノード１−１が予測しているパケット到着シーケンスは図３のパケット列２０−１，２０−２のようなものである。図３は本発明に係る通信システムの第１実施例の負荷分散の動作の他の一例の模式図である。
【００４７】
経路帯域低下のイベントが実際には発生しなかった場合には、パケット到着シーケンスは図２のパケット列２０−１，２０−２のようになる。図２でも図１１の例と同様に、送信ノード１−１はパケット列１０−１送信後に、経路２−１に関し、３番目に送信したパケットであるシーケンス番号５のＡｃｋを受信すると仮定している。これにより、送信ノード１−１は経路２−１の帯域が変化していないことを認識する。
【００４８】
ここで確実なのは、シーケンス番号５のパケットを受信した時点では経路帯域低下が発生していないことであるが、実施例により、より後続のパケット受信まで経路帯域低下が発生しないと予測してもよい。本実施例では、パケット列１０−１および１０−２で送信したシーケンス番号１−９および１１のパケットは経路２−１の帯域が経路２−２の２倍である状態のまま受信ノード１−２に受信されたと予測することとする。その上で、帯域が不変なまま受信されたと予測する最後のパケットであるシーケンス番号１１のパケットの受信直後に、経路帯域低下のイベントが発生したと仮定し、以降の送信パケット順序の決定を行う。
【００４９】
このとき、送信ノード１−１が予測している受信パケットシーケンスは、図４のパケット列２０−１，２０−２に示される。図４は本発明に係る通信システムの第１実施例の負荷分散の動作の他の一例の模式図である。この上で、直後の帯域低下を仮定して順序逆転を防ぐためには、図４の２１−１，２１−２のようなパケットシーケンスを実現する必要がある。
【００５０】
すなわち、同図を参照すると、パケット列２０−１の順序に従えば、シーケンス番号１１のパケットの次にはシーケンス番号１３のパケットが配置されるべきであるが、シーケンス番号１１のパケットの受信直後に、経路帯域低下のイベントが発生したと仮定している関係上、シーケンス番号１１のパケットの次にはシーケンス番号１０のパケットを配置する必要がある。
【００５１】
すなわち、シーケンス番号１１のパケットの次にシーケンス番号１３のパケットを配置した場合は、受信ノード１−２は受信開始から時間８ｔ後にシーケンス番号が１から９まで連続するパケットしか受信することができないが、シーケンス番号１１のパケットの次にシーケンス番号１０のパケットを配置した場合は、受信ノード１−２は受信開始から時間８ｔ後にシーケンス番号が１から１１まで連続するパケットを受信することができる。
【００５２】
したがって、パケット列２１−１がシーケンス番号１０，１２，１４の順となり、パケット列２１−２がシーケンス番号１３，１５の順となるように、送信ノード１−１において後続送信パケット列１１−１をシーケンス番号１０，１２，１４の順に配置し、後続送信パケット列１１−２をシーケンス番号１３，１５の順に配置する。
【００５３】
一方、実際には、帯域低下イベントが発生しなかったとすると、受信シーケンスは図２に示した２１−１、２１−２のようになる。この結果、受信ノード１−２では受信開始から４ｔ後までにシーケンス番号１−５，７が受信されるので、シーケンス番号５までが下流ノードに転送可能であり、また受信開始から８ｔ後までにはシーケンス番号１〜１２までが欠落なく受信されるので、図１１の例と同様に全て下流ノードに転送可能となることが分かる。
【００５４】
次に、本実施例において、実際に経路帯域低下のイベントが発生した場合の動作について説明する。図５は本発明に係る通信システムの第１実施例の負荷分散の動作の他の一例の模式図である。
【００５５】
同図において、図２と同様にパケット列１０−１、１０−２の送信が行われるが、経路帯域低下イベントが発生するために、実際の受信シーケンスは図３と同様なものとなる。
【００５６】
このとき、図２の例と同じタイミングで送信ノード１−１がＡｃｋを受信したとすると、経路２−１については受信ノード１−２において受信開始から時間３ｔ後に受信済みのシーケンス番号１を持つ。このＡｃｋを受信した送信ノード１−１は、ウインドウが１しか開かないため、パケットを１つしか送信することができない。
【００５７】
一方、経路２−２では、経路帯域が変化するイベントは発生せず、したがって図２の例と同様にシーケンス番号６のＡｃｋを受信し、次の送信パケット列１１−２は２個のパケットを含めることができる。
【００５８】
送信パケット列１１−１，１１−２に含まれるパケットのシーケンス番号は、経路２−１，２−２ともこれ以上低速な状態は定義されていないため、この状態を保つと仮定して受信ノード１−２での到着順序がシーケンス番号順になるように決定されている。
【００５９】
この結果、受信ノード１−２では図５のパケット列２０−１、２０−２、２１−１、２１−２が受信される。
【００６０】
すなわち、受信ノード１−２では到着順序がシーケンス番号１，３，５，７，９，１１の順のパケット列２０−１と、到着順序がシーケンス番号２，４，６，８の順のパケット列２０−２と、シーケンス番号１３のパケット列２１−１と、到着順序がシーケンス番号１０，１２の順のパケット列２０−２とが受信される。
【００６１】
受信ノード１−２においては、受信開始から４ｔ後までにシーケンス番号１〜４が欠落なく受信されるので、シーケンス番号４までの全てが下流ノードに転送可能であり、また受信開始から８ｔ後までにはシーケンス番号１〜８までが欠落なく受信されるので、同様にシーケンス番号８までの全てのパケットが下流ノードに転送可能であることが分かる。
【００６２】
図６は本発明に係る通信システムの第１実施例の動作を示すフローチャートである。同図はパケットスケジューリング方法（帯域が半分になるイベントが発生する場合）の動作を示している。この処理は図１に示す送信ノード１−１の制御部２１１が経路およびパケット選択部２０３を制御することにより実行される。また、プログラム格納部２１２には少なくとも図６にフローチャートで示すプログラムが格納されており、制御部２１１はプログラム格納部２１２からこのプログラムを読み出し、そのプログラムに従って経路およびパケット選択部２０３を制御する。
【００６３】
図６を参照すると、経路およびパケット選択部２０３は、ある経路について、帯域が半分になるイベントが送信と同時に発生すると仮定して、送信パケットの順序を決定する( ステップＳ１) 。この決定により得られる送信パケット列は図２の送信パケット列１０−１および１０−２である。
【００６４】
次に、経路およびパケット選択部２０３は、受信ノード１−２において、あるパケットの受信直後に経路帯域低下のイベントが発生すると仮定して、以降の送信パケットの順序を決定する( ステップＳ２) 。この決定により得られる送信パケット列は図２の送信パケット列１１−１および１１−２である。
【００６５】
次に、実際にイベントが発生した場合は（ステップＳ３にて“Ｙ”の場合）、このイベントの発生は、送信ノード１−１において受信したＡｃｋの内容から検出できるので、その検出内容にしたがって、以降の送信パケットの順序を決定する( ステップＳ４) 。この決定により得られる送信パケット列は図５の送信パケット列１１−１および１１−２である。
【００６６】
一方、実際にイベントが発生しなかった場合は（ステップＳ３にて“Ｎ”の場合）、処理は終了となる。
【００６７】
以下に、本実施例における転送レートについての関連技術との比較をまとめる。経路帯域低下イベントが発生しない場合には、受信開始から４ｔ後までにはシーケンス番号５までが、８ｔ後までにはシーケンス番号１２までが転送可能となる（図２参照）。
【００６８】
同様に、経路帯域低下イベントが発生しない場合において、図１１の関連技術の例では受信開始から４ｔ後までにはシーケンス番号６までが、８ｔ後までにはシーケンス番号１２までが転送可能になっていた。したがって、この関連技術の例と比較すると、受信開始から４ｔ後の時点では本実施例は関連技術に比べわずかに性能が低く、受信開始から８ｔ後の時点では関連技術と同等の性能を示すことが分かる。
【００６９】
一方、経路帯域低下イベントが発生した場合には、受信開始から４ｔ後までにはシーケンス番号４までが、８ｔ後までにはシーケンス番号８までが転送可能となる（図５参照）。
【００７０】
同様に、経路帯域低下イベントが発生した場合において、関連技術の例では、受信開始から４ｔ後までにはシーケンス番号３までが、８ｔ後までにはシーケンス番号６までが転送可能となっていた（図１２参照）。
【００７１】
したがって、両者を比較すると、受信開始から４ｔ後の時点、８ｔ後の時点でともに本実施例は関連技術よりも高性能となることが分かる。
【００７２】
したがって、本発明は、関連技術に比べ経路状態が良好な場合の転送レートの劣化をほとんど生ずることなく、経路状態が急に劣化した場合の転送レートの低下を防ぐ効果がある。
【００７３】
なお、本実施例では、経路劣化のイベント発生時の性能劣化比の値としては、実際に発生し得る値をそのまま用いるものと仮定しているが、実際の実装においては、イベント発生時と非発生時の性能のいずれを重視するかにより、またイベント発生時の安全マージンの設計により、イベント発生時の性能劣化比を実際に発生し得る値に比べ増減した値を仮定してスケジューリングしてもよい。
【実施例２】
【００７４】
第２実施例は複数経路のうちの１つの経路で、損失イベントが発生する場合に関する。なお、この場合も本発明に係る通信システムの構成は第１実施例（図１参照）と同様であるので、その図示および説明を省略する。
【００７５】
本実施例では、経路２−２での損失イベント発生を仮定してパケットスケジューリングを行う。すなわち、送信した最初のパケットが損失したとすると、それを検出した上で再送したパケットが受信ノードに受信されるのは受信開始から１０ｔ後なので、その時点で経路２−１と２−２から受信されるパケットの順序が反転しないように送信パケットを決定する。
【００７６】
具体的な動作例を図７に示す。図７は本発明に係る通信システムの第２実施例の負荷分散の動作の一例の模式図である。なお、図７では便宜上、通信ノード１−１を送信ノード、通信ノード１−２を受信ノードとするが、通信ノード１−１を受信ノード、通信ノード１−２を送信ノードとすることも可能である。
【００７７】
図１１〜図１４の例と同様に、送信ノード１−１と受信ノード１−２との間で経路２−１および経路２−２の２つの経路を利用可能とする。経路２−１は経路２−２の２倍の帯域を有するものとする。
【００７８】
図７を参照すると、経路２−２から送信する最初の２つのパケットはそれぞれシーケンス番号が１０と１３であるが、これらはそれぞれ受信開始から１０ｔ後、１２ｔ後に受信された場合に経路２−１のパケットとシーケンス番号が揃うことが分かる。
【００７９】
図７に示す例は、実際にはパケットロスイベントが生じない場合の例であり、このとき受信開始から１２ｔ後に受信ノード１−２が転送できるパケットはシーケンス番号１４までである。
【００８０】
同じ時点で、図１３の例ではシーケンス番号１８まで転送できるので、パケットロスイベントがない場合には関連技術より性能が低くなる。ただし、図１３において、経路２−１のみを用いた場合は、この時点で転送できるパケットは１２までであるので、図７において経路を多重化した効果は存在する。
【００８１】
次に、実際にシーケンス番号１０のパケットの損失が生じた場合の動作を図８に示す。図８は本発明に係る通信システムの第２実施例の負荷分散の動作の他の一例の模式図である。
【００８２】
この場合は、仮定どおりの動作であるので、受信開始のいかなる時点においても、受信ノード１−２が転送できるパケットの数は図７の例と同様である。つまり、パケットロスが生じても、経路２−１のみを用いた場合に対する性能の劣化は防止される。このことは、他のパケットが損失した場合も同様である。
【００８３】
例えば、シーケンス番号１６のパケットが損失した場合の動作例を図９に示す。図９は本発明に係る通信システムの第２実施例の負荷分散の動作の他の一例の模式図である。
【００８４】
図８の場合と同様に、損失パケットが損失のない場合に受信されるべき時刻から１０ｔ後（受信開始の１６ｔ後）に再送パケットが受信され、また受信開始から１６ｔ後までのいかなる時点においても多重化による性能の劣化は生じないことが分かる。
【００８５】
図１０は本発明に係る通信システムの第２実施例の動作を示すフローチャートである。同図はパケットスケジューリング方法（損失イベントが発生する場合）の動作を示している。この処理は図１に示す送信ノード１−１の制御部２１１が経路およびパケット選択部２０３を制御することにより実行される。また、プログラム格納部２１２には少なくとも図１０にフローチャートで示すプログラムが格納されており、制御部２１１はプログラム格納部２１２からこのプログラムを読み出し、そのプログラムに従って経路およびパケット選択部２０３を制御する。
【００８６】
図１０を参照すると、経路およびパケット選択部２０３は、ある経路について、送信した最初のパケットが損失するイベントが発生すると仮定して、送信パケットの順序を決定する (ステップＳ１１) 。この決定により得られる送信パケット列は図７の送信パケット列１０−１〜１２−１および１０−２〜１１−２である。
【００８７】
次に、実際にイベントが発生した場合は（ステップＳ１２にて“Ｙ”の場合）、送信ノード１−１がその経路におけるＡｃｋを受信し、Ａｃｋの内容からその経路のイベント発生を検出し、以降の送信イベントの順序を決定する（ステップＳ１３）。この決定により得られる送信パケット列は図８の送信パケット列１０−１〜１２−１および１０−２〜１１−２である。
【００８８】
一方、実際にイベントが発生しなかった場合は（ステップＳ１２にて“Ｎ”の場合）、処理は終了となる。
以上説明したように、本発明の第２実施例によれば、パケットロスが生じても、経路２−１のみを用いた場合に対する性能の劣化を防止することが可能となる。
【図面の簡単な説明】
【００８９】
【図１】本発明に係る通信システムの第１実施例の構成図である。
【図２】本発明に係る通信システムの第１実施例の負荷分散の動作の一例の模式図である。
【図３】本発明に係る通信システムの第１実施例の負荷分散の動作の他の一例の模式図である。
【図４】本発明に係る通信システムの第１実施例の負荷分散の動作の他の一例の模式図である。
【図５】本発明に係る通信システムの第１実施例の負荷分散の動作の他の一例の模式図である。
【図６】本発明に係る通信システムの第１実施例の動作を示すフローチャートである。
【図７】本発明に係る通信システムの第２実施例の負荷分散の動作の一例の模式図である。
【図８】本発明に係る通信システムの第２実施例の負荷分散の動作の他の一例の模式図である。
【図９】本発明に係る通信システムの第２実施例の負荷分散の動作の他の一例の模式図である。
【図１０】本発明に係る通信システムの第２実施例の動作を示すフローチャートである。
【図１１】関連する通信システムの負荷分散の動作の一例の模式図である。
【図１２】関連する通信システムの負荷分散の動作の他の一例の模式図である。
【図１３】関連する通信システムの負荷分散の動作の他の一例の模式図である。
【図１４】関連する通信システムの負荷分散の動作の他の一例の模式図である。
【符号の説明】
【００９０】
１−１，１−２  通信ノード
２−１，２−２  通信経路
１０−１，１０−２  送信パケット列
１１−１，１１−２  送信パケット列
２０−１，２０−２  送信パケット列
２１−１，２１−２  送信パケット列
１００  通信網
２０１  入力パケットキュー
２０２  スケジューリング部
２０３  経路およびパケット選択部
２０４−１，２０４−２  パケット送信部
２０５  記憶部
２０６−１，２０６−２  パケット受信部
２０７  パケット解析部
２０８  パケット転送部
２１１  制御部
２１２  プログラム格納部
【図１】
2008306321.tif 000003
【図２】
2008306321.tif 000004
【図３】
2008306321.tif 000005
【図４】
2008306321.tif 000006
【図５】
2008306321.tif 000007
【図６】
2008306321.tif 000008
【図７】
2008306321.tif 000009
【図８】
2008306321.tif 000010
【図９】
2008306321.tif 000011
【図１０】
2008306321.tif 000012
【図１１】
2008306321.tif 000013
【図１２】
2008306321.tif 000014
【図１３】
2008306321.tif 000015
【図１４】
2008306321.tif 000016