(57)【特許請求の範囲】
【請求項１】
無線端末が異なる通信システム間に渡って接続及び通信を継続する際に、一時的に前記通信のパケットの配送を行う通信中継装置であり、
前記無線端末が接続する通信システムの切替前後の各通信システムをそれぞれ経由する通信経路毎に、前記パケットの配送を行うバイキャスト手段と、
前記無線端末が接続する通信システムの切替が完了すると、前記パケットの中継を終了する制御手段と、を備え、
前記バイキャスト手段は、
前記無線端末の通信相手との間で前記無線端末による切替前および切替先の各通信システム経由の前記パケットを送受信する第１の通信手段と、
前記無線端末との間で切替前の通信システム経由の前記パケットを送受信する第２の通信手段と、
前記無線端末との間で切替先の通信システム経由の前記パケットを送受信する第３の通信手段と、を有し、
前記無線端末が接続する通信システムを切り替える過程において、
前記無線端末と前記無線端末の通信相手間の切替前の通信システム経由の通信経路（Ａ）の遅延時間（Ｄｌｙ＿Ａ）と、
前記無線端末の通信相手と自通信中継装置間の通信経路（Ｂ）の遅延時間（Ｄｌｙ＿Ｂ）と、
前記無線端末と自通信中継装置間の切替前の通信システム経由の通信経路（Ｃ）の遅延時間（Ｄｌｙ＿Ｃ）と、
前記無線端末と前記無線端末の通信相手間の切替先の通信システム経由の通信経路（Ｅ）の遅延時間（Ｄｌｙ＿Ｅ）と、を用い、
前記遅延時間（Ｄｌｙ＿Ａ）と前記遅延時間（Ｄｌｙ＿Ｅ）との比較の結果、前記遅延時間（Ｄｌｙ＿Ｂ）及び前記遅延時間（Ｄｌｙ＿Ｃ）の合計と前記遅延時間（Ｄｌｙ＿Ａ）との比較の結果、並びに、前記遅延時間（Ｄｌｙ＿Ｂ）及び前記遅延時間（Ｄｌｙ＿Ｃ）の合計と前記遅延時間（Ｄｌｙ＿Ｅ）との比較の結果に基づいて、前記通信経路（Ｂ）と前記通信経路（Ｃ）との組合せ、及び、前記通信経路（Ｂ）と前記無線端末と自通信中継装置間の切替先の通信システム経由の通信経路（Ｄ）との組合せを使用するか否かを決定する、
ことを特徴とする通信中継装置。
【請求項２】
前記バイキャスト手段は、前記無線端末が接続する通信システムを切り替える過程において、前記通信経路（Ｂ）と前記通信経路（Ｃ）との組合せ、及び、前記通信経路（Ｂ）と前記通信経路（Ｄ）との組合せを使用する場合に、通信経路を変更する前後の各通信経路の遅延時間を評価し、変更前後の通信経路間の遅延時間差がゼロになるように、遅延時間が少ない方の通信経路へ送出するパケットに遅延を付加する遅延調整手段を有することを特徴とする請求項１に記載の通信中継装置。
【請求項３】
前記制御手段は、前記遅延時間差の調整が完了したときに、前記無線端末の切替先の通信システムを経由する最適の通信経路に経路変更させることを特徴とする請求項２に記載の通信中継装置。
【請求項４】
異なる通信システム間に渡って接続及び通信を継続する無線端末であり、
通信システムの切替前後の各通信システムをそれぞれ経由する通信経路毎に、前記パケットの配送を行う通信中継装置との間の通信経路を確立する通信制御手段を備え、
前記通信制御手段は、自無線端末が接続する通信システムを切り替える過程において、前記無線端末と前記無線端末の通信相手間の切替前の通信システム経由の通信経路（Ａ）の遅延時間（Ｄｌｙ＿Ａ）と、前記無線端末と前記無線端末の通信相手間の切替先の通信システム経由の通信経路（Ｅ）の遅延時間（Ｄｌｙ＿Ｅ）との比較の結果に基づいて、前記無線端末の通信相手と前記通信中継装置間の通信経路（Ｂ）と前記無線端末と前記通信中継装置間の切替前の通信システム経由の通信経路（Ｃ）との組合せ、及び、前記通信経路（Ｂ）と前記無線端末と前記通信中継装置間の切替先の通信システム経由の通信経路（Ｄ）との組合せを使用するか否かを判断し、前記通信中継装置を経由した通信の後に、切替先の通信システムを経由する最適の通信経路に経路変更することを特徴とする無線端末。
【請求項５】
無線端末が異なる通信システム間に渡って接続及び通信を継続するときの通信制御処理を行うためのコンピュータプログラムであって、
前記無線端末が接続する通信システムの切替前後の各通信システムをそれぞれ経由する通信経路毎に、前記パケットの配送を行うバイキャスト機能と、
前記無線端末が接続する通信システムの切替が完了すると、前記パケットの中継を終了する制御機能と、をコンピュータに実現させるコンピュータプログラムであり、
前記バイキャスト機能は、
前記無線端末の通信相手との間で前記無線端末による切替前および切替先の各通信システム経由の前記パケットを送受信する第１の通信機能と、
前記無線端末との間で切替前の通信システム経由の前記パケットを送受信する第２の通信機能と、
前記無線端末との間で切替先の通信システム経由の前記パケットを送受信する第３の通信機能と、を有し、
前記無線端末が接続する通信システムを切り替える過程において、
前記無線端末と前記無線端末の通信相手間の切替前の通信システム経由の通信経路（Ａ）の遅延時間（Ｄｌｙ＿Ａ）と、
前記無線端末の通信相手と自通信中継装置間の通信経路（Ｂ）の遅延時間（Ｄｌｙ＿Ｂ）と、
前記無線端末と自通信中継装置間の切替前の通信システム経由の通信経路（Ｃ）の遅延時間（Ｄｌｙ＿Ｃ）と、
前記無線端末と前記無線端末の通信相手間の切替先の通信システム経由の通信経路（Ｅ）の遅延時間（Ｄｌｙ＿Ｅ）と、を用い、
前記遅延時間（Ｄｌｙ＿Ａ）と前記遅延時間（Ｄｌｙ＿Ｅ）との比較の結果、前記遅延時間（Ｄｌｙ＿Ｂ）及び前記遅延時間（Ｄｌｙ＿Ｃ）の合計と前記遅延時間（Ｄｌｙ＿Ａ）との比較の結果、並びに、前記遅延時間（Ｄｌｙ＿Ｂ）及び前記遅延時間（Ｄｌｙ＿Ｃ）の合計と前記遅延時間（Ｄｌｙ＿Ｅ）との比較の結果に基づいて、前記通信経路（Ｂ）と前記通信経路（Ｃ）との組合せ、及び、前記通信経路（Ｂ）と前記無線端末と自通信中継装置間の切替先の通信システム経由の通信経路（Ｄ）との組合せを使用するか否かを決定する、
ことを特徴とするコンピュータプログラム。
【請求項６】
前記無線端末が接続する通信システムを切り替える過程において、前記通信経路（Ｂ）と前記通信経路（Ｃ）との組合せ、及び、前記通信経路（Ｂ）と前記通信経路（Ｄ）との組合せを使用する場合に、通信経路を変更する前後の各通信経路の遅延時間を評価し、変更前後の通信経路間の遅延時間差がゼロになるように、遅延時間が少ない方の通信経路へ送出するパケットに遅延を付加する遅延調整機能をさらにコンピュータに実現させることを特徴とする請求項５に記載のコンピュータプログラム。
【請求項７】
前記制御機能は、前記遅延時間差の調整が完了したときに、前記無線端末の切替先の通信システムを経由する最適の通信経路に経路変更させることを特徴とする請求項６に記載のコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信中継装置、無線端末及びコンピュータプログラムに関する。
【背景技術】
【０００２】
近年、無線通信技術の発達により、テレビ電話アプリケーションや映像のストリーミング配信アプリケーションなどのリアルタイム性を有したアプリケーションを移動端末上で利用できるようになってきている。そのようなリアルタイムアプリケーションの円滑な利用を実現するために、移動端末が接続先の基地局を切り替えるハンドオーバ時において、通信のリアルタイム性を確保するための技術が検討されている。
【０００３】
例えば非特許文献１記載の技術では、移動端末が複数の接続ポイント（アクセスポイント並びに基地局）と接続可能な状況下において、モバイルＩＰ（Mobile Internet Protocol：Mobile IP）を用いて階層化されたアクセス網内のゲートウェイルータ（外部エージェント）が移動端末の複数の接続ポイントを記録する。そのゲートウェイルータは、移動端末宛のパケットのうち、多くのリアルタイムアプリケーションで用いられるＵＤＰパケットのみを途中のルータで必要に応じて複製可能な明示的なマルチキャストパケットに変換して送信する。該マルチキャストパケットは、移動端末の接続する複数の接続ポイント経由で移動端末に配信される。これにより、ネットワークリソースを有効に利用しつつハンドオーバ時などで発生するパケットロスを防ぎ、且つパケット到着のリアルタイム性を確保している。また、特許文献１記載の技術では、Mobile IPのホームエージェント（ＨＡ）において、移動端末の複数の接続ポイントを記録し、ハンドオーバ時にパケットを複製し、複数の接続ポイントに該パケットを送信することで、ハンドオーバ時に発生するパケットロスを防止している。また、この従来技術においては、ＨＡでパケットの複製が行なわれる際にパケットに複製情報を付加することで、同一パケットを複数受信した際の移動端末の処理負荷を低減するとともに重複パケット受信によるＴＣＰ（Transmission Control Protocol）通信の性能劣化を改善している。
【０００４】
ところで、移動端末が複数の無線通信システムに対応した通信手段を有し、無線環境に応じて最適な無線通信システムに接続先を切り替えることが検討されている。例えば、セルラーシステム、PHS（登録商標）システム、無線ＬＡＮシステム、無線ＷＡＮシステムなど、それぞれ特長が異なる通信サービスを提供する複数の無線通信システムに対応し、例えば高速移動時には接続性のよいセルラーシステムに接続し、一方、停止時には高速通信が可能な無線ＬＡＮシステムに接続する等、無線環境に応じて最適な通信を行うことが可能になる。そして、そのような異種システム間のハンドオーバ時に、通信の途切れを防止するための技術が重要となる。例えば、特許文献２記載の技術では、ハンドオーバ先の無線通信システムや無線通信状態に応じて、複数のハンドオーバ方法の中から使用する方法を選択している。例えば、ハンドオーバ前は通信状態が良好であり、ハンドオーバ後の通信状態が不良である場合は、同一パケットを複製して送信するソフトハンドオーバを採用することにより、受信品質を落とさずにハンドオーバを実現している。
【非特許文献１】“SGMを用いたMobile IPにおけるシームレスハンドオーバー”、電子情報通信学会 秋季ソサイエティ大会、B-7-18 、2001年9月
【特許文献１】特開２００４−２２８７５４号公報
【特許文献２】特開２００４−２６０４４４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかし、上述した従来の非特許文献１や特許文献１記載の技術では、常にゲートウェイルータやＨＡ経由で通信を行うことになるので、通信経路が冗長となり、通信リソースの浪費、フロー集中によるネットワークの輻輳やネットワーク機器の負荷増大といった問題が生じる。
【０００６】
さらに、異種システム間のハンドオーバに関しては、異種システム間の遅延時間が大きく異なる場合があることから、パケットのリアルタイム到達性を確保する非特許文献１や特許文献１記載の技術では、同一の無線通信システム間では有効であるが、遅延時間が大きく異なる異種システム間では、その遅延時間差のためにシームレスなハンドオーバを実現できない恐れがある。また、特許文献２記載の技術でも、遅延時間の大きく異なる異種システム間のハンドオーバ時には、性能が劣化する恐れがある。これは、リアルタイム通信のみならず、TCPを用いた非リアルタイム通信にも当てはまる問題である。
【０００７】
また、特許文献１記載の技術では、パケットに複製情報を付加することでパケットの誤順序の問題の解決を図っているが、その複製情報の付加処理のためにスケーラビリティが低くなる恐れがある。
【０００８】
ここで、上述した問題について具体的に説明する。
初めに、冗長な通信経路に関する問題について説明する。図２６には、移動端末１００が通信システム２００Ｘから通信システム２００Ｙへハンドオーバを行う従来の手順が示されている。移動端末１００は、通信システム２００Ｘ、２００Ｙの双方の通信インタフェースを有し、通信システム２００Ｘ、２００Ｙと接続し、例えばインターネット３００に接続される通信相手端末４００と通信することができる。また、通信システム２００Ｘ、２００Ｙ間のハンドオーバ時には、通信システム２００Ｘ、２００Ｙの両方と接続し、通信を継続することができる。
【０００９】
図２６において、先ず、移動端末１００は通信システム２００Ｘを介して通信相手端末４００と通信を行っており、移動端末１００宛のフローはバイキャストエンティティ２１０を経由するように経路設定されている。ここで、移動端末１００は、例えば移動によりハンドオーバが発生しそうになると、バイキャストエンティティ２１０に対して、ハンドオーバ予期及びハンドオーバ先の通信システム２００Ｙにおける当該移動端末１００の識別子（ＩＰアドレス）を通知する。バイキャストエンティティ２１０は、該移動端末１００からの通知を受信すると、移動端末１００宛のパケットをコピーし、一方のパケットを通信システム２００Ｘ経由で移動端末１００に転送するとともに、もう一方のパケットについてはその宛先をハンドオーバ先である通信システム２００Ｙにおける移動端末１００の識別子に変更して通信システム２００Ｙ経由で移動端末１００に転送する（バイキャスト状態となる）。移動端末１００は、通信システム２００Ｙへのハンドオーバが完了すると、ハンドオーバの完了をバイキャストエンティティ２１０に通知し、バイキャストを終了させる。しかしながら、この従来のハンドオーバ方法では、図２７に示すように、移動端末１００は通信システム２００Ｙへのハンドオーバ完了後においても通信システム２００Ｘ内に配置されたバイキャストエンティティ２１０経由の通信を引き続き行うことになる。このため経路が冗長になり、遅延の増加やトラフィックの輻輳等が発生して通信品質が劣化する恐れがある。この問題は、特に、通信システム間の距離が長い場合に顕著になる。
【００１０】
次に、通信システム間の遅延時間が異なることに起因する問題について説明する。図２６において、例えば通信システム２００Ｙ内で付加される遅延時間が、通信システム２００Ｘ内で付加される遅延時間よりも小さい場合、移動端末１００が通信システム２００Ｙ経由で受信するパケットは、通信システム２００Ｘ経由で受信していたパケットより、両通信システム間の遅延時間差分だけ先に到着するパケットとなる。この状況を具体的に説明するために、図２６において以下の条件を仮定する。通信相手端末４００は、１００ミリ秒（msec）毎に、移動端末１００宛に、１つずつ増加するシーケンス番号を付したパケットを送信する。また、バイキャストエンティティ２１０から通信システム２００Ｘ経由での移動端末１００までの遅延時間は８００msecであり、バイキャストエンティティ２１０から通信システム２００Ｙ経由での移動端末１００までの遅延時間は２００msecであるとする（図２８参照）。
【００１１】
図２８において、先ず、移動端末１００は通信システム１００Ｘ経由で通信相手端末４００と通信を行なっており、ある時刻Ｔmsecにおいて移動端末１００は、シーケンス番号が１００番までのパケットを受信しているとする。また、移動端末１００は、その時刻Ｔmsecにハンドオーバ処理を開始したとする。この時、バイキャストエンティティ２１０から通信システム２００Ｘ経由での移動端末１００までの遅延時間は８００msecであることから、バイキャストエンティティ２１０ではシーケンス番号が１０８番のパケットを通信相手端末４００から受信している。バイキャストエンティティ２１０は、ハンドオーバ処理の開始により、その１０８番のパケットを複製し、一方のパケットをそのまま通信システム２００Ｘ経由で移動端末１００に送信するとともに、もう一方のパケットについてはその宛先を通信システム２００Ｙにおける移動端末１００の識別子に変更して通信システム２００Ｙ経由で移動端末１００に送信する。次いで、時刻（Ｔ＋２００）msecにおいて、移動端末１００は、初めて通信システム２００Ｙからパケットを受信する。この受信パケットは、バイキャストエンティティ２１０で複製された最初のパケットであり、そのシーケンス番号は１０８番である。また、その同じ時刻（Ｔ＋２００）msecにおいて、移動端末１００は、通信システム２００Ｘから、シーケンス番号が１０２番のパケットを受信する。このように、両通信システム間の遅延時間差６００msecだけ先に通信相手端末４００から送信されたパケットが、それ以前に通信相手端末４００から送信されたパケットに先んじて、通信システム２００Ｙ経由で移動端末１００に到着することになり、パケットの到着順序の逆転が発生する。なお、ここでは、ハンドオーバ予期の通知など、ハンドオーバ処理に伴うメッセージの遅延については説明の簡略化のために省略している。
【００１２】
上記図２８の例のようにハンドオーバ前の経路の遅延時間よりハンドオーバ後の経路の遅延時間の方が小さい場合、特にリアルタイム系アプリケーション（テレビ電話等）の通信フローでは、パケット到着順序の逆転により通信フローが途絶える等の問題が生じる可能性がある。例えば、テレビ電話の通信フローでは、ハンドオーバ前後の遅延時間差分だけ映像や音声が止まる可能性がある。また、非リアルタイム系アプリケーション（ファイル転送等）においても、ＴＣＰ等の輻輳回避制御を用いる通信フローの場合には、パケット到着順序の逆転によってネットワークの輻輳発生と判断されて輻輳回避制御再送が開始されることにより、通信レートが減少されてしまう。
【００１３】
本発明は、このような事情を考慮してなされたもので、その目的は、異なる通信システム間のハンドオーバを行って通信の継続を実現する場合に、通信経路の冗長性や通信システム切り替え前後の遅延時間差の改善を図ることのできる通信中継装置、無線端末を提供することにある。
【００１４】
また、本発明の他の目的は、本発明の通信中継装置をコンピュータを利用して実現するためのコンピュータプログラムを提供することにある。
【課題を解決するための手段】
【００１５】
上記の課題を解決するために、本発明に係る通信中継装置は、無線端末が異なる通信システム間に渡って接続及び通信を継続する際に、一時的に前記通信のパケットの配送を行う通信中継装置であり、前記無線端末が接続する通信システムの切替前後の各通信システムをそれぞれ経由する通信経路毎に、前記パケットの配送を行うバイキャスト手段と、前記無線端末が接続する通信システムの切替が完了すると、前記パケットの中継を終了する制御手段と、を備え、前記バイキャスト手段は、前記無線端末の通信相手との間で前記無線端末による切替前および切替先の各通信システム経由の前記パケットを送受信する第１の通信手段と、前記無線端末との間で切替前の通信システム経由の前記パケットを送受信する第２の通信手段と、前記無線端末との間で切替先の通信システム経由の前記パケットを送受信する第３の通信手段と、を有し、前記無線端末が接続する通信システムを切り替える過程において、前記無線端末と前記無線端末の通信相手間の切替前の通信システム経由の通信経路（Ａ）の遅延時間（Ｄｌｙ＿Ａ）と、前記無線端末の通信相手と自通信中継装置間の通信経路（Ｂ）の遅延時間（Ｄｌｙ＿Ｂ）と、前記無線端末と自通信中継装置間の切替前の通信システム経由の通信経路（Ｃ）の遅延時間（Ｄｌｙ＿Ｃ）と、前記無線端末と前記無線端末の通信相手間の切替先の通信システム経由の通信経路（Ｅ）の遅延時間（Ｄｌｙ＿Ｅ）と、を用い、前記遅延時間（Ｄｌｙ＿Ａ）と前記遅延時間（Ｄｌｙ＿Ｅ）との比較の結果、前記遅延時間（Ｄｌｙ＿Ｂ）及び前記遅延時間（Ｄｌｙ＿Ｃ）の合計と前記遅延時間（Ｄｌｙ＿Ａ）との比較の結果、並びに、前記遅延時間（Ｄｌｙ＿Ｂ）及び前記遅延時間（Ｄｌｙ＿Ｃ）の合計と前記遅延時間（Ｄｌｙ＿Ｅ）との比較の結果に基づいて、前記通信経路（Ｂ）と前記通信経路（Ｃ）との組合せ、及び、前記通信経路（Ｂ）と前記無線端末と自通信中継装置間の切替先の通信システム経由の通信経路（Ｄ）との組合せを使用するか否かを決定する、ことを特徴とする。
【００１６】
本発明に係る通信中継装置においては、前記バイキャスト手段は、前記無線端末が接続する通信システムを切り替える過程において、前記通信経路（Ｂ）と前記通信経路（Ｃ）との組合せ、及び、前記通信経路（Ｂ）と前記通信経路（Ｄ）との組合せを使用する場合に、通信経路を変更する前後の各通信経路の遅延時間を評価し、変更前後の通信経路間の遅延時間差がゼロになるように、遅延時間が少ない方の通信経路へ送出するパケットに遅延を付加する遅延調整手段を有することを特徴とする。
【００１７】
本発明に係る通信中継装置においては、前記制御手段は、前記遅延時間差の調整が完了したときに、前記無線端末の切替先の通信システムを経由する最適の通信経路に経路変更させることを特徴とする。
【００１８】
本発明に係る無線端末は、異なる通信システム間に渡って接続及び通信を継続する無線端末であり、通信システムの切替前後の各通信システムをそれぞれ経由する通信経路毎に、前記パケットの配送を行う通信中継装置との間の通信経路を確立する通信制御手段を備え、前記通信制御手段は、自無線端末が接続する通信システムを切り替える過程において、前記無線端末と前記無線端末の通信相手間の切替前の通信システム経由の通信経路（Ａ）の遅延時間（Ｄｌｙ＿Ａ）と、前記無線端末と前記無線端末の通信相手間の切替先の通信システム経由の通信経路（Ｅ）の遅延時間（Ｄｌｙ＿Ｅ）との比較の結果に基づいて、前記無線端末の通信相手と前記通信中継装置間の通信経路（Ｂ）と前記無線端末と前記通信中継装置間の切替前の通信システム経由の通信経路（Ｃ）との組合せ、及び、前記通信経路（Ｂ）と前記無線端末と前記通信中継装置間の切替先の通信システム経由の通信経路（Ｄ）との組合せを使用するか否かを判断し、前記通信中継装置を経由した通信の後に、切替先の通信システムを経由する最適の通信経路に経路変更することを特徴とする。
【００１９】
本発明に係るコンピュータプログラムは、無線端末が異なる通信システム間に渡って接続及び通信を継続するときの通信制御処理を行うためのコンピュータプログラムであって、前記無線端末が接続する通信システムの切替前後の各通信システムをそれぞれ経由する通信経路毎に、前記パケットの配送を行うバイキャスト機能と、前記無線端末が接続する通信システムの切替が完了すると、前記パケットの中継を終了する制御機能と、をコンピュータに実現させるコンピュータプログラムであり、前記バイキャスト機能は、前記無線端末の通信相手との間で前記無線端末による切替前および切替先の各通信システム経由の前記パケットを送受信する第１の通信機能と、前記無線端末との間で切替前の通信システム経由の前記パケットを送受信する第２の通信機能と、前記無線端末との間で切替先の通信システム経由の前記パケットを送受信する第３の通信機能と、を有し、前記無線端末が接続する通信システムを切り替える過程において、前記無線端末と前記無線端末の通信相手間の切替前の通信システム経由の通信経路（Ａ）の遅延時間（Ｄｌｙ＿Ａ）と、前記無線端末の通信相手と自通信中継装置間の通信経路（Ｂ）の遅延時間（Ｄｌｙ＿Ｂ）と、前記無線端末と自通信中継装置間の切替前の通信システム経由の通信経路（Ｃ）の遅延時間（Ｄｌｙ＿Ｃ）と、前記無線端末と前記無線端末の通信相手間の切替先の通信システム経由の通信経路（Ｅ）の遅延時間（Ｄｌｙ＿Ｅ）と、を用い、前記遅延時間（Ｄｌｙ＿Ａ）と前記遅延時間（Ｄｌｙ＿Ｅ）との比較の結果、前記遅延時間（Ｄｌｙ＿Ｂ）及び前記遅延時間（Ｄｌｙ＿Ｃ）の合計と前記遅延時間（Ｄｌｙ＿Ａ）との比較の結果、並びに、前記遅延時間（Ｄｌｙ＿Ｂ）及び前記遅延時間（Ｄｌｙ＿Ｃ）の合計と前記遅延時間（Ｄｌｙ＿Ｅ）との比較の結果に基づいて、前記通信経路（Ｂ）と前記通信経路（Ｃ）との組合せ、及び、前記通信経路（Ｂ）と前記無線端末と自通信中継装置間の切替先の通信システム経由の通信経路（Ｄ）との組合せを使用するか否かを決定する、ことを特徴とする。
【００２０】
本発明に係るコンピュータプログラムにおいては、前記無線端末が接続する通信システムを切り替える過程において、前記通信経路（Ｂ）と前記通信経路（Ｃ）との組合せ、及び、前記通信経路（Ｂ）と前記通信経路（Ｄ）との組合せを使用する場合に、通信経路を変更する前後の各通信経路の遅延時間を評価し、変更前後の通信経路間の遅延時間差がゼロになるように、遅延時間が少ない方の通信経路へ送出するパケットに遅延を付加する遅延調整機能をさらにコンピュータに実現させることを特徴とする。
【００２１】
本発明に係るコンピュータプログラムにおいては、前記制御機能は、前記遅延時間差の調整が完了したときに、前記無線端末の切替先の通信システムを経由する最適の通信経路に経路変更させることを特徴とする。
これにより、前述の通信中継装置がコンピュータを利用して実現できるようになる。
【発明の効果】
【００２２】
本発明によれば、無線端末が異なる通信システム間に渡って接続及び通信を継続する際に、円滑なハンドオーバを実現し、リアルタイムアプリケーション等の通信品質を高く保つことが可能になる。
【００２３】
また、冗長な通信経路はハンドオーバ時の一時的な利用になるので、通信リソースの有効利用が可能になる。
【００２４】
また、通信経路の切り替え前後の遅延時間を評価し、その遅延時間差を調整することにより、パケット到着順序の逆転の防止や急激な遅延時間の変化を緩和等、通信システム切り替え前後の遅延時間差に起因する問題の解決を図ることが可能になる。
【発明を実施するための最良の形態】
【００２５】
以下、図面を参照し、本発明の各実施形態について順次説明する。なお、以下に説明する実施形態では、ＳＩＰ（Session Initiation Protocol）を用いた通信フローを処理する通信システムを例に挙げて説明する。ＳＩＰは、主にリアルタイム系トラフィックを扱う場合に用いられる通信制御プロトコルである。
［第１の実施形態］
図１は、本発明の第１の実施形態に係る通信システムの全体構成を示すブロック図である。図１において、通信システム２０Ｘは、バイキャストエンティティ（ＢＣＥ）２１とＳＩＰレジストラサーバ（ＳＩＰ−Ｒ）２２とＳＩＰアプリケーションサーバ（ＳＩＰ−ＡＳ）２３とを有する。ＢＣＥ２１、ＳＩＰ−Ｒ２２及びＳＩＰ−ＡＳ２３は、同一のノード内で動作するか、もしくは非常に密接に連携して動作するように構成する。また、ＢＣＥ２１は、メディアゲートウェイ内もしくはユーザ宅のホームゲートウェイ内に配置してもよい。
【００２６】
図１において、移動端末（ＭＮ）１０は、通信システム２０Ｘ、２０Ｙの双方の通信インタフェースを有し、通信システム２００Ｘ、２００Ｙと接続し、例えばインターネット３００に接続される通信相手端末（ＣＮ）４０と通信することができる。また、通信システム２０Ｘ、２０Ｙ間のハンドオーバ時には、通信システム２０Ｘ、２０Ｙの両方と接続し、通信を継続することができる。
【００２７】
ここで、説明の便宜上、ＭＮ１０が有する通信システム２０Ｘの通信インタフェース（以下、ＭＮ１０＿Ｘと称する）に割り当てられたＩＰアドレスはＩＰ＿ｘであり、ＭＮ１０が有する通信システム２０Ｙの通信インタフェース（以下、ＭＮ１０＿Ｙと称する）に割り当てられたＩＰアドレスはＩＰ＿ｙであるとする。同様に、ＢＣＥ２１のＩＰアドレスはＩＰ＿ｂｃｅであり、ＳＩＰ−Ｒ２２のＩＰアドレスはＩＰ＿ｒｅｇであり、ＳＩＰ−ＡＳ２３のＩＰアドレスはＩＰ＿ａｓであり、ＣＮ４０のＩＰアドレスはＩＰ＿ｃｎであるとする。また、ＭＮ１０のＳＩＰ  ＵＲＩ（ＳＩＰ  Uniform Resource Identifier）は「ＭＮ＠ｅｘａｍｐｌｅ．ｎｅｔ」であり、ＣＮ４０のＳＩＰ  ＵＲＩは「ＣＮ＠ｅｘａｍｐｌｅ．ｎｅｔ」であるとする。なお、本実施形態ではＣＮ４０はＳＩＰを実装したレガシー端末である。
【００２８】
図２には、上記図１に示したネットワーク構成における各ノード間の経路を示している。ＣＮ４０とＭＮ１０＿Ｘ間の通信経路（ＢＣＥ２１を経由しない）は経路Ａ、ＣＮ４０とＢＣＥ２１間の通信経路は経路Ｂ、ＢＣＥ２１とＭＮ１０＿Ｘ間の通信経路は経路Ｃ、ＢＣＥ２１とＭＮ１０＿Ｙ間の通信経路は経路Ｄ、ＣＮ４０とＭＮ１０＿Ｙ間の通信経路（ＢＣＥ２１を経由しない）は経路Ｅである。また、経路Ａ、Ｂ、Ｃ、Ｄ、Ｅのそれぞれの遅延時間は、Ｄｌｙ＿Ａ、Ｄｌｙ＿Ｂ、Ｄｌｙ＿Ｃ、Ｄｌｙ＿Ｄ、Ｄｌｙ＿Ｅとする。
【００２９】
次に、図２及び図３〜図９を参照して、第１の実施形態に係る動作を説明する。図３〜図７は第１の実施形態に係る装置間の処理シーケンス図、図８及び図９は第１の実施形態に係るハンドオーバ手順を示すフローチャートである。
【００３０】
図２において、ＭＮ１０は、初めに通信システム２０Ｘに接続し経路ＡでＣＮ４０と通信を行い、その後、接続するネットワークを通信システム２０Ｘから通信システム２０Ｙに切り替えるハンドオーバを行い、ＣＮ４０との通信を通信システム２０Ｙ経由で継続する。このときのハンドオーバに係る動作を以下に説明する。
【００３１】
先ずＭＮ１０は、図３に示されるＳＩＰの手順で通信システム２０Ｘを利用してＣＮ４０とのセッションを確立し、例えばＩＰテレビ電話等の通信アプリケーションを用いて通信を行う（図３のステップＳ１）。このときのＭＮ１０から送出されるパケットの送信元アドレスはＩＰ＿Ｘであり、宛先アドレスはＩＰ＿ｃｎである。また、ＣＮ４０から送出されるパケットの送信元アドレスはＩＰ＿ｃｎであり、宛先アドレスはＩＰ＿Ｘである。
【００３２】
このとき、例えばリンクレイヤからのハンドオーバトリガやネットワークからのハンドオーバ指示などによりハンドオーバの発生が予期されると、ＭＮ１０及びＢＣＥ２１は、図８に示される手順によりＢＣＥ２１を用いたハンドオーバを行うか否かの判定を行う。ここで、図８を参照して、ＢＣＥ２１を用いたハンドオーバを行うか否かの判定処理について説明する。
【００３３】
図８において、先ずＭＮ１０はＤｌｙ＿ＡとＤｌｙ＿Ｅの比較を行う（図８のステップＳ１０１）。Ｄｌｙ＿ＡおよびＤｌｙ＿ＥはＭＮ１０によって、ｐｉｎｇコメンドやタイムスタンプを用いたパケットのやり取りなどを用いた通信遅延時間の測定結果から算出される。ステップＳ１０１の比較の結果、Ｄｌｙ＿ＥがＤｌｙ＿Ａより大きく、且つＤｌｙ＿Ａに一定量αを加えた「Ｄｌｙ＿Ａ＋α」よりも小さい場合は（ステップＳ１０１、ＦＡＬＳＥ）、ＢＣＥ２１を使用しない通常のハンドオーバを行う（ステップＳ１０２）。ＢＣＥ２１を使用しない通常のハンドオーバ（ダイレクトハンドオーバ）とは、ＣＮ４０とＭＮ１０間の通信経路を経路Ａから経路Ｅへとダイレクトに切り替える処理のことを指す。この場合に通常のハンドオーバを行う理由は、経路Ｅの方が経路Ａよりも遅延時間が大きいのでパケット到着順序の逆転は起こらず、またその遅延時間差は少ないので切り替えの影響も通信の継続には問題とならないからである。なお、αにはリアルタイムアプリケーションにより吸収可能な遅延量などを用いる。
【００３４】
［ステップＳ１０１の比較の結果、Ｄｌｙ＿ＥがＤｌｙ＿Ａより小さい場合］
ＭＮ１０はＢＣＥ２１にＤｌｙ＿ＡおよびＤｌｙ＿Ｅを通知する（ステップＳ１０３）。また、ＢＣＥ２１は、Ｄｌｙ＿ＢとＤｌｙ＿Ｃを測定により算出する（ステップＳ１０４）。次いで、ＢＣＥ２１は、「Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｃ」とＤｌｙ＿Ａを比較する（ステップＳ１０５）。ここでは、ＢＣＥ２１を介したＣＮ４０とＭＮ１０＿Ｘ間の遅延時間と経路Ａの遅延時間を評価している。ステップＳ１０５の比較の結果、「Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｃ」がＤｌｙ＿Ａより大きく、且つ「Ｄｌｙ＿Ａ＋α」よりも小さい場合（ステップＳ１０５、ＦＡＬＳＥ）、ＢＣＥ２１を用いたハンドオーバを行なうと判定する（ステップＳ１０６）。これは、経路Ｅの方が経路Ａよりも遅延時間が小さいので、ＢＣＥ２１経由の通信経路（経路Ｂと経路Ｃ）を用いて遅延時間の調整を行ってパケット到着順序の逆転を防止するためである。
【００３５】
ステップＳ１０５の比較の結果、「Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｃ」がＤｌｙ＿Ａより小さい場合は、「Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｃ」をＤｌｙ＿Ｅと比較する（ステップＳ１０７）。ステップＳ１０７の比較の結果、「Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｃ」がＤｌｙ＿Ｅより大きい場合は（ステップＳ１０７、ＴＲＵＥ）、ＢＣＥ２１を用いたハンドオーバを行なうと判定する（ステップＳ１０８）。これは、ＢＣＥ２１経由の通信経路（経路Ｂと経路Ｃ）の方が経路Ａとの遅延時間差が小さいからである。一方、ステップＳ１０７の比較の結果、「Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｃ」がＤｌｙ＿Ｅより小さい場合は（ステップＳ１０７、ＦＡＬＳＥ）、通常のハンドオーバを行う（ステップＳ１０９）。
【００３６】
ステップＳ１０５の比較の結果、「Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｃ」が「Ｄｌｙ＿Ａ＋α」よりも大きい場合は、Ｄｌｙ＿ＡとＤｌｙ＿Ｅの差分を、「Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｃ」と「Ｄｌｙ＿Ａ＋α」の差分と比較する（ステップＳ１１０）。ステップＳ１１０の比較の結果、Ｄｌｙ＿ＡとＤｌｙ＿Ｅの差分が「Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｃ」と「Ｄｌｙ＿Ａ＋α」の差分より大きい場合は（ステップＳ１１０、ＴＲＵＥ）、ＢＣＥ２１を用いたハンドオーバを行なうと判定する（ステップＳ１０８）。これは、通常のハンドオーバの方が経路Ａとの遅延時間差が大きいからである。一方、ステップＳ１１０の比較の結果、Ｄｌｙ＿ＡとＤｌｙ＿Ｅの差分が「Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｃ」と「Ｄｌｙ＿Ａ＋α」の差分より小さい場合は（ステップＳ１１０、ＦＡＬＳＥ）、通常のハンドオーバを行う（ステップＳ１０９）。
【００３７】
［ステップＳ１０１の比較の結果、Ｄｌｙ＿Ｅが「Ｄｌｙ＿Ａ＋α」より大きい場合］
ＭＮ１０はＢＣＥ２１にＤｌｙ＿ＡおよびＤｌｙ＿Ｅを通知する（ステップＳ１１１）。また、ＢＣＥ２１は、Ｄｌｙ＿ＢとＤｌｙ＿Ｃを測定により算出する（ステップＳ１１２）。次いで、ＢＣＥ２１は、「Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｃ」とＤｌｙ＿Ａを比較する（ステップＳ１１３）。ステップＳ１１３の比較の結果、「Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｃ」がＤｌｙ＿Ａより大きく、且つ「Ｄｌｙ＿Ａ＋α」よりも小さい場合は（ステップＳ１１３、ＦＡＬＳＥ）、ＢＣＥ２１を用いたハンドオーバを行なうと判定する（ステップＳ１０６）。これは、経路Ｅの方が経路Ａよりも遅延時間が大きいので、通常のハンドオーバを行ってもパケット到着順序の逆転は起きないが、ＢＣＥ２１経由の通信経路（経路Ｂと経路Ｃ）を用いて遅延時間の調整を行って遅延時間の急激な変動を防止するためである。
【００３８】
ステップＳ１１３の比較の結果、「Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｃ」がＤｌｙ＿Ａより小さい場合は、Ｄｌｙ＿Ｅと「Ｄｌｙ＿Ａ＋α」の差分を、Ｄｌｙ＿Ａと「Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｃ」の差分と比較する（ステップＳ１１４）。ステップＳ１１４の比較の結果、Ｄｌｙ＿Ｅと「Ｄｌｙ＿Ａ＋α」の差分がＤｌｙ＿Ａと「Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｃ」の差分より大きい場合は（ステップＳ１１４、ＴＲＵＥ）、ＢＣＥ２１を用いたハンドオーバを行なうと判定する（ステップＳ１０８）。これは、通常のハンドオーバの方が経路Ａとの遅延時間差が大きいからである。一方、ステップＳ１１４の比較の結果、Ｄｌｙ＿ＡとＤｌｙ＿Ｅの差分が「Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｃ」と「Ｄｌｙ＿Ａ＋α」の差分より小さい場合は（ステップＳ１１４、ＦＡＬＳＥ）、通常のハンドオーバを行う（ステップＳ１１６）。
【００３９】
ステップＳ１１３の比較の結果、「Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｃ」が「Ｄｌｙ＿Ａ＋α」よりも大きい場合は、「Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｃ」をＤｌｙ＿Ｅと比較する（ステップＳ１１７）。ステップＳ１１７の比較の結果、「Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｃ」がＤｌｙ＿Ｅより小さい場合は（ステップＳ１１７、ＴＲＵＥ）、ＢＣＥ２１を用いたハンドオーバを行なうと判定する（ステップＳ１１５）。これは、ＢＣＥ２１経由の通信経路（経路Ｂと経路Ｃ）の遅延時間の方が「Ｄｌｙ＿Ａ＋α」との遅延時間差が小さいからである。一方、ステップＳ１１７の比較の結果、「Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｃ」がＤｌｙ＿Ｅより大きい場合は（ステップＳ１１７、ＦＡＬＳＥ）、通常のハンドオーバを行う（ステップＳ１１６）。
【００４０】
次に、図９を参照して、ＢＣＥ２１を用いたハンドオーバ処理について説明する。
図９において、ＢＣＥ２１はＭＮ１０に対して、ＢＣＥ２１経由に通信経路を切り替えるよう指示する（ステップＳ２０１）。ＭＮ１０は、その指示を受信すると、通信経路をＢＣＥ２１経由に切り替え（ステップＳ２０２）、バイキャスト要求を行なう（ステップＳ２０３）。図４には、このときのシーケンスが示されている（図４のステップＳ２〜Ｓ６）。本実施形態においては、図４に示すように、ＳＩＰのＵＰＤＡＴＥメッセージを用いてバイキャスト要求を行なう。そのＵＰＤＡＴＥメッセージにおいては、ＳＩＰのヘッダフィールドを拡張して「Translator」というヘッダフィールド名を定義し、「Translator」ヘッダフィールド５１中に、バイキャスト要求であることを示す文字列「bicast」を含める。
【００４１】
図４において、その「Translator」ヘッダフィールド５１中に文字列「bicast」が含まれるＵＰＤＡＴＥメッセージを受信したＳＩＰ−ＡＳ２３は、当該ＵＰＤＡＴＥメッセージ中の「Session Description」部の「c(connection information)」フィールド５２に記載のＩＰアドレス宛（ここではＩＰ＿ＸとＩＰ＿ｙの両方のアドレス宛）にデータ送信を開始するように、ＢＣＥ２１に指示する（ステップＳ６）。これによりバイキャスト状態とする。また、ＳＩＰ−ＡＳ２３は、当該ＵＰＤＡＴＥメッセージをＣＮ４０に送信する際（ステップＳ３）、「Session Description」部の「c」フィールド５２を１つにし、そのＩＰアドレスとしてＩＰ＿ｂｃｅを格納する。また同様に、ＳＩＰ−ＡＳ２３は、当該ＵＰＤＡＴＥメッセージに対するレスポンスである２００ＯＫメッセージを受信すると（ステップＳ４）、該２００ＯＫメッセージ中の「Session Description」部の「c」フィールド５３に記載のＩＰアドレスをＩＰ＿ｂｃｅに変更してＭＮ１０へ送信する（ステップＳ５）。
【００４２】
次いで、ＭＮ１０は、パケットを複製し、一方のパケット５４についてその送信元ＩＰアドレスをＩＰ＿Ｘ、宛先ＩＰアドレスをＩＰ＿ｂｃｅとしてＭＮ１０＿Ｘから送信し、もう一方のパケット５５についてはその送信元ＩＰアドレスをＩＰ＿ｙ、宛先ＩＰアドレスをＩＰ＿ｂｃｅとしてＭＮ１０＿Ｙから送信する。
【００４３】
それらパケット５４、５５を受信したＢＣＥ２１は、パケット５４、５５の送信元アドレスをＩＰ＿ｂｃｅ、宛先アドレスをＩＰ＿ｃｎに変更し、変更後のパケット５６をＣＮ４０へ送信する。このとき、送信するのは最初に到着したパケットであり、遅れて届く同一のパケットは廃棄する。この廃棄処理は、例えばＲＴＰ（Realtime Transport Protocol）ヘッダ内のシーケンス番号などを参照することで同一パケットか判別することにより実現可能である。
【００４４】
一方、ＣＮ４０から送信されるパケット５７の送信元アドレスはＩＰ＿ｃｎ、その宛先アドレスはＩＰ＿ｂｃｅとなる。ＣＮ４０から送信されたパケット５７を受信したＢＣＥ２１は、パケット５７を複製し、一方のパケット５８についてはその送信元アドレスをＩＰ＿ｂｃｅ、宛先アドレスをＩＰ＿Ｘとし、もう一方のパケット５９についてはその送信元アドレスをＩＰ＿ｂｃｅ、宛先アドレスをＩＰ＿ｙとしてＭＮ１０へそれぞれ送信する。
これにより、ＭＮ１０とＣＮ４０間は、経路Ｂ、Ｃを用いた通信経路と、経路Ｂ、Ｄを用いた通信経路との２つの通信経路が確立されるバイキャスト状態となる（ステップＳ７）。
【００４５】
図９に戻り、次いで、ＢＣＥ２１はＤｌｙ＿Ｄを測定により算出し（ステップＳ２０４）、Ｄｌｙ＿ＣとＤｌｙ＿Ｄを比較する（ステップＳ２０５）。ステップＳ２０５の比較の結果、Ｄｌｙ＿ＣがＤｌｙ＿Ｄより大きい場合（ステップＳ２０５、ＴＲＵＥ）、ＢＣＥ２１は、その差分である「Ｄｌｙ＿Ｃ−Ｄｌｙ＿Ｄ」の遅延時間を経路Ｄに送出するパケットに付加するように、パケット送信を制御する（ステップＳ２０６）。これにより、ＢＣＥ２１から経路ＣでＭＮ１０＿Ｘに到着するまでの遅延時間と、ＢＣＥ２１から経路ＤでＭＮ１０＿Ｙに到着するまでの遅延時間とを等しくする。
【００４６】
次いで、ＢＣＥ２１はＭＮ１０にバイキャストの停止を指示する（ステップＳ２０７）。バイキャストの停止指示を受けたＭＮ１０は、ＢＣＥ２１にバイキャストの停止を要求する（ステップＳ２０８）。図５には、このときのシーケンスが示されている（図５のステップＳ８〜Ｓ１１）。本実施形態においては、図５に示すように、ＳＩＰのＵＰＤＡＴＥメッセージを用いてバイキャスト停止要求を行なう（ステップＳ８）。そのＵＰＤＡＴＥメッセージにおいては、「Translator」ヘッダフィールド５１中に、バイキャスト停止要求であることを示す文字列「bridge」を含める。
【００４７】
図５において、その「Translator」ヘッダフィールド５１中に文字列「bridge」が含まれるＵＰＤＡＴＥメッセージを受信したＳＩＰ−ＡＳ２３は、当該ＵＰＤＡＴＥメッセージをＣＮ４０に送信する際（ステップＳ９）、「Session Description」部の「c」フィールド５２に記載のＩＰアドレスをＩＰ＿ｂｃｅに変更する。また同様に、ＳＩＰ−ＡＳ２３は、当該ＵＰＤＡＴＥメッセージに対するレスポンスである２００ＯＫメッセージを受信すると（ステップＳ１０）、該２００ＯＫメッセージ中の「Session Description」部の「c」フィールド５３に記載のＩＰアドレスをＩＰ＿ｂｃｅに変更してＭＮ１０へ送信する（ステップＳ１１）。
これにより、ＭＮ１０とＣＮ４０間は、経路Ｂ、Ｃを用いた通信経路と、経路Ｂ、Ｄを用いた通信経路との２つの通信経路が確立されるバイキャスト状態から、経路Ｂ、Ｄを用いた通信経路のみが確立される状態に変わる（ステップＳ１２）。
【００４８】
図９に戻り、次いで、ＢＣＥ２１は、Ｄｌｙ＿Ｅと「Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｄ」を比較する（ステップＳ２０９）。ステップＳ２０９の比較の結果、Ｄｌｙ＿Ｅが「Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｄ」より小さい場合（ステップＳ２０９、ＦＡＬＳＥ）、ＢＣＥ２１は、ステップＳ２０６で経路Ｄに送出するパケットに付加するようにした遅延時間を徐々に減少させる（ステップＳ２１０）。ＢＣＥ２１は、その結果を評価し（ステップＳ２１１）、Ｄｌｙ＿Ｅと「Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｄ」が等しくなるか、もしくはステップＳ２０６で経路Ｄに送出するパケットに付加するようにした遅延時間が全て削減されると、通信経路をＣＮ４０とＭＮ１０＿Ｙの直接経路（経路Ｅ）に切り替えるようにＭＮ１０に指示する（ステップＳ２１２）。この切り替え指示を受け取ったＭＮ１０は、図６に示されるように、ＳＩＰのＵＰＤＡＴＥメッセージを用いて、ＣＮ４０とＭＮ１０＿Ｙ間の経路を、ＢＣＥ２１経由の経路から直接経路（経路Ｅ）に切り替える（図６のステップＳ１３〜Ｓ１６）。
これにより、ＭＮ１０とＣＮ４０間は、経路Ｂ、Ｄを用いたＢＣＥ２１経由の通信経路が確立される状態から、経路Ｅによる直接経路が確立される状態に変わる（ステップＳ１７）。
【００４９】
一方、ステップＳ２０９の比較の結果、Ｄｌｙ＿Ｅが「Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｄ」より大きい場合（ステップＳ２０９、ＴＲＵＥ）、ＢＣＥ２１は、その差分である「Ｄｌｙ＿Ｅ−（Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｄ）」を、ステップＳ２０６で経路Ｄに送出するパケットに付加するようにした遅延時間にさらに徐々に加える（ステップＳ２１３）。ＢＣＥ２１は、その結果を評価し（ステップＳ２１４）、「Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｄ」がＤｌｙ＿Ｅと等しくなると、通信経路をＣＮ４０とＭＮ１０の直接経路（経路Ｅ）に切り替えるようにＭＮ１０に指示する（ステップＳ２１２）。これにより図６のステップＳ１３〜Ｓ１６によって、ＭＮ１０とＣＮ４０間は、経路Ｂ、Ｄを用いたＢＣＥ２１経由の通信経路が確立される状態から、経路Ｅによる直接経路が確立される状態に変わる（図６のステップＳ１７）。
【００５０】
［ステップＳ２０５の比較の結果、Ｄｌｙ＿ＣがＤｌｙ＿Ｄより小さい場合（ステップＳ２０５、ＦＡＬＳＥ）］（ＭＮ１０とＣＮ４０間は、経路Ｂ、Ｃを用いた通信経路と、経路Ｂ、Ｄを用いた通信経路との２つの通信経路が確立されるバイキャスト状態となっている）
ＢＣＥ２１は、「Ｄｌｙ＿Ｄ−Ｄｌｙ＿Ｃ」の遅延時間を経路Ｃに送出するパケットに徐々に付加するように、パケット送信を制御する（ステップＳ２１５）。この結果、経路Ｃの遅延時間「Ｄｌｙ＿Ｃ」と経路Ｄの遅延時間「Ｄｌｙ＿Ｄ」とが等しくなると（ステップＳ２１６、ＴＲＵＥ）、ＢＣＥ２１はＭＮ１０にバイキャストの停止を指示し、そしてＭＮ１０はバイキャストの停止を要求し、そしてＢＣＥ２１はバイキャストを停止する（ステップＳ２１７、Ｓ２１８、図５参照）。これにより、ＭＮ１０とＣＮ４０間は、経路Ｂ、Ｃを用いた通信経路と、経路Ｂ、Ｄを用いた通信経路との２つの通信経路が確立されるバイキャスト状態から、経路Ｂ、Ｄを用いた通信経路のみが確立される状態に変わる（図５のステップＳ１２）。
【００５１】
次いで、ＢＣＥ２１は、Ｄｌｙ＿Ｅと「Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｄ」を比較する（ステップＳ２１９）。ステップＳ２１９の比較の結果、Ｄｌｙ＿Ｅが「Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｄ」より小さい場合（ステップＳ２１９、ＦＡＬＳＥ）、ＢＣＥ２１は、通信経路をＣＮ４０とＭＮ１０の直接経路（経路Ｅ）に切り替えるようにＭＮ１０に指示する（ステップＳ２２２）。これにより図６のステップＳ１３〜Ｓ１６によって、ＭＮ１０とＣＮ４０間は、経路Ｂ、Ｄを用いたＢＣＥ２１経由の通信経路が確立される状態から、経路Ｅによる直接経路が確立される状態に変わる（図６のステップＳ１７）。
【００５２】
一方、ステップＳ２１９の比較の結果、Ｄｌｙ＿Ｅが「Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｄ」より大きい場合（ステップＳ２１９、ＴＲＵＥ）、ＢＣＥ２１は、その差分である「Ｄｌｙ＿Ｅ−（Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｄ）」を、経路Ｄに送出するパケットに徐々に付加するように、パケット送信を制御する（ステップＳ２２０）。この結果、「Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｄ」がＤｌｙ＿Ｅと等しくなると（ステップＳ２２１、ＴＲＵＥ）、ＢＣＥ２１は通信経路をＣＮ４０とＭＮ１０の直接経路（経路Ｅ）に切り替えるようにＭＮ１０に指示する（ステップＳ２２２）。これにより図６のステップＳ１３〜Ｓ１６によって、ＭＮ１０とＣＮ４０間は、経路Ｂ、Ｄを用いたＢＣＥ２１経由の通信経路が確立される状態から、経路Ｅによる直接経路が確立される状態に変わる（図６のステップＳ１７）。
【００５３】
上述した第１の実施形態によれば、バイキャストエンティティ経由の通信経路はハンドオーバ時の一時的なものにとどめ、ハンドオーバ終了後にはバイキャストエンティティを経由しない最適な通信経路を用いて通信を行うことができる。これにより、異なる通信システム間のハンドオーバを行って通信の継続を実現する場合の通信経路の冗長性が改善される。
【００５４】
また、通信経路の切り替え前後の遅延時間を評価し、その遅延時間差を調整することにより、パケット到着順序の逆転を防止するとともに、急激な遅延時間の変化を緩和することができる。本実施形態により従来に比して通信経路の切替回数が増加するが、本実施形態の遅延調整により、その切替回数増加による遅延変動の影響を軽減することが可能になる。
【００５５】
なお、上述した実施形態において、遅延量「Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｃ」、「Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｄ」及びＤｌｙ＿Ｅが予め計測され、その結果、全てがほぼ同値である場合には、遅延時間の調整は不要であるので、バイキャスト状態から一気にバイキャストの停止と直接経路への切り替えを実行するようにしてもよい。このときのシーケンスが図７に示されている。図７においては、バイキャスト状態(ステップＳ７）から、ステップＳ１３〜Ｓ１６により、直接経路が確立される状態（ステップＳ１７）変えている。
【００５６】
また、上述した実施形態では、リアルタイム系のアプリケーションを想定しているが、非リアルタイム系のアプリケーションの場合には、上記αを十分大きくとることにより、例えばＴＣＰを用いた通信におけるパケット誤順序に伴う通信品質の劣化等を防止することができる。
【００５７】
また、上述した実施形態では、移動端末（ＭＮ）からのＵＰＤＡＴＥメッセージにより経路の切り替え及びバイキャストの開始／停止を起動する端末主導型として構成したが、ネットワークからのシグナリングによってその起動を行うネットワーク主導型として構成するようにしてもよい。図１０〜図１３にはネットワーク主導型の場合のシーケンス図が、図１４にはネットワーク主導型の場合のハンドオーバ手順のフローチャートがそれぞれ示されている。図１０〜図１３は上記図４〜図７に、図１４は上記図９にそれぞれ対応し、それぞれ対応する部分には同一の符号を付している。図１０〜図１３に示されるように、ネットワーク主導型の場合は、ＳＩＰ−ＡＳ２３からのＵＰＤＡＴＥメッセージにより経路の切り替え及びバイキャストの開始／停止を起動する（ステップＳ２１〜Ｓ３２）。同様に、図１４においても、ネットワーク主導で行っている（ステップＳ３０１〜Ｓ３０４）。
【００５８】
なお、図１０〜図１３においては、ＭＳ間のＵＰＤＡＴＥメッセージ及びそのレスポンスである２００ＯＫメッセージ内にそれぞれ「Translator」ヘッダフィールド６１、６３を設けて、バイキャスト要求であることを示す文字列「bicast」やバイキャスト停止要求であることを示す文字列「bridge」を格納している。また、各ＵＰＤＡＴＥメッセージ及び２００ＯＫメッセージ内の「c」フィールド６２、６４を用いてＩＰアドレスの通知を行っている。
【００５９】
なお、上述した第１の実施形態では、ハンドオーバ前後の２つの通信システム２０Ｘ、２０Ｙのうち、ハンドオーバ前の通信システム２０ＸにのみＢＣＥ２１を設けたが、ハンドオーバ後の通信システム２０ＹにのみＢＣＥ２１を設けることも同様に可能である。
【００６０】
［第２の実施形態］
図１５は、本発明の第２の実施形態に係る通信システムの全体構成を示すブロック図である。
上述した第１の実施形態では、ハンドオーバ前後の２つの通信システムの一方にのみバイキャストエンティティ（ＢＣＥ）が設けられていたが、第２の実施形態では、ハンドオーバ前後の通信システムの両方にＢＣＥを設けている。
【００６１】
図１５は、本発明の第２の実施形態に係る通信システムの全体構成を示すブロック図である。図１５において、通信システム２０Ｘは、図１の構成と同様であり、ＢＣＥ２１−１とＳＩＰ−Ｒ２２とＳＩＰ−ＡＳ２３とを有する。一方、通信システム２０ＹはＢＣＥ２１−２を有する。
【００６２】
図１５において、移動端末（ＭＮ）１０は、図１のシステムと同様に、通信システム２０Ｘ、２０Ｙの双方の通信インタフェースを有し、通信システム２００Ｘ、２００Ｙと接続し、例えばインターネット３００に接続される通信相手端末（ＣＮ）４０と通信することができる。また、通信システム２０Ｘ、２０Ｙ間のハンドオーバ時には、通信システム２０Ｘ、２０Ｙの両方と接続し、通信を継続することができる。
【００６３】
また、第１の実施形態と同様に、説明の便宜上、ＭＮ１０においては、通信システム２０Ｘの通信インタフェース（ＭＮ１０＿Ｘ）のＩＰアドレスはＩＰ＿ｘであり、通信システム２０Ｙの通信インタフェース（ＭＮ１０＿Ｙ）のＩＰアドレスはＩＰ＿ｙであるとする。また、ＢＣＥ２１−１のＩＰアドレスはＩＰ＿ｂｃｅ１、ＢＣＥ２１−２のＩＰアドレスはＩＰ＿ｂｃｅ２、ＳＩＰ−Ｒ２２のＩＰアドレスはＩＰ＿ｒｅｇ、ＳＩＰ−ＡＳ２３のＩＰアドレスはＩＰ＿ａｓ、ＣＮ４０のＩＰアドレスはＩＰ＿ｃｎ、であるとする。また、ＭＮ１０のＳＩＰ  ＵＲＩ（ＳＩＰ  Uniform Resource Identifier）は「ＭＮ＠ｅｘａｍｐｌｅ．ｎｅｔ」であり、ＣＮ４０のＳＩＰ  ＵＲＩは「ＣＮ＠ｅｘａｍｐｌｅ．ｎｅｔ」であるとする。また、ＣＮ４０はＳＩＰを実装したレガシー端末である。
【００６４】
図１６には、上記図１５に示したネットワーク構成における各ノード間の経路を示している。ＣＮ４０とＭＮ１０＿Ｘ間の通信経路（ＢＣＥ２１−１を経由しない）は経路Ａ、ＣＮ４０とＢＣＥ２１−１間の通信経路は経路Ｂ、ＢＣＥ２１−１とＭＮ１０＿Ｘ間の通信経路は経路Ｃ、ＣＮ４０とＭＮ１０＿Ｙ間の通信経路（ＢＣＥ２１−２を経由しない）は経路Ｅ、ＢＣＥ２１−１とＢＣＥ２１−２間の通信経路は経路Ｆ、ＣＮ４０とＢＣＥ２１−２間の通信経路は経路Ｇ、ＢＣＥ２１−２とＭＮ１０＿Ｙ間の通信経路は経路Ｈである。また、経路Ａ、Ｂ、Ｃ、Ｅ、Ｆ、Ｇ、Ｈのそれぞれの遅延時間は、Ｄｌｙ＿Ａ、Ｄｌｙ＿Ｂ、Ｄｌｙ＿Ｃ、Ｄｌｙ＿Ｅ、Ｄｌｙ＿Ｆ、Ｄｌｙ＿Ｇ、Ｄｌｙ＿Ｈとする。
【００６５】
次に、図１６及び図１７〜図２１を参照して、第２の実施形態に係る動作を説明する。図１７〜図２０は第２の実施形態に係る装置間の処理シーケンス図、図２１は第２の実施形態に係るハンドオーバ手順を示すフローチャートである。なお、図１７〜図２０において、図４〜図７の各部に対応する部分には同一の符号を付している。また、第２の実施形態において、第１の実施形態と同様の処理についてはその説明を省略する。
【００６６】
図１６において、ＭＮ１０は、初めに通信システム２０Ｘに接続し経路ＡでＣＮ４０と通信を行い、その後、接続するネットワークを通信システム２０Ｘから通信システム２０Ｙに切り替えるハンドオーバを行い、ＣＮ４０との通信を通信システム２０Ｙ経由で継続する。このときのハンドオーバに係る動作を以下に説明する。
【００６７】
先ずＭＮ１０は、第１の実施形態と同様の手順で（図３参照）、通信システム２０Ｘを利用してＣＮ４０とのセッションを確立し、ＩＰテレビ電話等の通信アプリケーションを用いて通信を行っている（図１７のステップＳ１）。このときのＭＮ１０から送出されるパケットの送信元アドレスはＩＰ＿Ｘであり、宛先アドレスはＩＰ＿ｃｎである。また、ＣＮ４０から送出されるパケットの送信元アドレスはＩＰ＿ｃｎであり、宛先アドレスはＩＰ＿Ｘである。
【００６８】
このとき、例えばリンクレイヤからのハンドオーバトリガやネットワークからのハンドオーバ指示などによりハンドオーバの発生が予期されると、ＭＮ１０は、図１７に示される手順（ステップＳ２〜Ｓ６ａ）により、ＢＣＥ２１−１、２１−２を用いたバイキャストを開始する（図２１のステップＳ４０１）。
【００６９】
図１７において、ＭＮ１０は、バイキャスト要求として、「Translator」ヘッダフィールド５１中に文字列「bicast」が含まれるＵＰＤＡＴＥメッセージをＳＩＰ−ＡＳ２３に送信する（ステップＳ２）。ＳＩＰ−ＡＳ２３は、そのＵＰＤＡＴＥメッセージ中の「c」フィールド５２に記載のＩＰアドレス宛（ここではＩＰ＿ＸとＩＰ＿ｙの両方のアドレス宛）のバイキャストを開始するように、ＢＣＥ２１−１、２１−２に指示する（ステップＳ６ａ）。これによりバイキャスト状態とする。また、ＳＩＰ−ＡＳ２３は、当該ＵＰＤＡＴＥメッセージをＣＮ４０に送信する際（ステップＳ３）、「c」フィールド５２を１つにし、そのＩＰアドレスとしてＩＰ＿ｂｃｅ２を格納する。また同様に、ＳＩＰ−ＡＳ２３は、当該ＵＰＤＡＴＥメッセージに対するレスポンスである２００ＯＫメッセージを受信すると（ステップＳ４）、該２００ＯＫメッセージ中の「c」フィールド５３に記載のＩＰアドレスをＩＰ＿ｂｃｅ１に変更してＭＮ１０へ送信する（ステップＳ５）。
【００７０】
次いで、ＭＮ１０は、パケットを複製し、一方のパケット５４についてその送信元ＩＰアドレスをＩＰ＿Ｘ、宛先ＩＰアドレスをＩＰ＿ｂｃｅ１としてＭＮ１０＿Ｘから送信し、もう一方のパケット５５についてはその送信元ＩＰアドレスをＩＰ＿ｙ、宛先ＩＰアドレスをＩＰ＿ｂｃｅ１としてＭＮ１０＿Ｙから送信する。
【００７１】
それらパケット５４、５５を受信したＢＣＥ２１−１は、パケット５４、５５の送信元アドレスをＩＰ＿ｂｃｅ１、宛先アドレスをＩＰ＿ｂｃｅ２に変更し、変更後のパケット７１をＢＣＥ２１−２へ送信する。このとき、送信するのは最初に到着したパケットであり、遅れて届く同一のパケットは廃棄する。この廃棄処理は、例えばＲＴＰヘッダ内のシーケンス番号などを参照することで同一パケットか判別することにより実現可能である。
【００７２】
次いで、ＢＣＥ２１−２は、ＢＣＥ２１−１から送られたパケット７１の送信元アドレスをＩＰ＿ｂｃｅ２、宛先アドレスをＩＰ＿ｃｎに変更し、変更後のパケット５６をＣＮ４０へ送信する。
【００７３】
一方、ＣＮ４０から送信されるパケット５７の送信元アドレスはＩＰ＿ｃｎ、その宛先アドレスはＩＰ＿ｂｃｅ２となる。ＣＮ４０から送信されたパケット５７を受信したＢＣＥ２１−２は、該パケット５７の送信元アドレスをＩＰ＿ｂｃｅ２、宛先アドレスをＩＰ＿ｂｃｅ１に変更し、変更後のパケット７２をＢＣＥ２１−１へ送信する。
【００７４】
次いで、ＢＣＥ２１−１は、ＢＣＥ２１−２から送られたパケット７２を複製し、一方のパケット５８についてはその送信元アドレスをＩＰ＿ｂｃｅ１、宛先アドレスをＩＰ＿Ｘとし、もう一方のパケット５９についてはその送信元アドレスをＩＰ＿ｂｃｅ１、宛先アドレスをＩＰ＿ｙとしてＭＮ１０へそれぞれ送信する。
これにより、ＭＮ１０とＣＮ４０間は、経路Ｂ、Ｃを用いた通信経路と、経路Ｂ、Ｆ、Ｈを用いた通信経路との２つの通信経路が確立されるバイキャスト状態となる（図１７のステップＳ７ａ）。
【００７５】
次いで、ＢＣＥ２１−１は、Ｄｌｙ＿Ｂ、Ｄｌｙ＿Ｃ及びＤｌｙ＿Ｆを測定により算出する（図２１のステップＳ４０２）。また、ＢＣＥ２１−２は、Ｄｌｙ＿Ｇ及びＤｌｙ＿Ｈを測定により算出するとともに、その算出結果をＢＣＥ２１−１に通知する（図２１のステップＳ４０３）。
【００７６】
次いで、ＢＣＥ２１−１は、Ｄｌｙ＿Ｃと「Ｄｌｙ＿Ｆ＋Ｄｌｙ＿Ｈ」を比較する（図２１のステップＳ４０４）。ステップＳ４０４の比較の結果、Ｄｌｙ＿Ｃが「Ｄｌｙ＿Ｆ＋Ｄｌｙ＿Ｈ」より大きい場合（ステップＳ４０４、ＴＲＵＥ）、ＢＣＥ２１−１は、その差分である「Ｄｌｙ＿Ｃ−（Ｄｌｙ＿Ｆ＋Ｄｌｙ＿Ｈ）」の遅延時間を経路Ｆに送出するパケットに付加するように、パケット送信を制御する（図２１のステップＳ４０５）。これにより、ＢＣＥ２１−１から経路ＣでＭＮ１０＿Ｘに到着するまでの遅延時間と、ＢＣＥ２１−１から経路Ｆ及びＨでＭＮ１０＿Ｙに到着するまでの遅延時間とを等しくする。
【００７７】
次いで、ＢＣＥ２１−１は、「Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｆ」とＤｌｙ＿Ｇを比較する（図２１のステップＳ４０６）。ステップＳ４０６の比較の結果、「Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｆ」がＤｌｙ＿Ｇより小さい場合は（ステップＳ４０６、ＦＡＬＳＥ）、第１の実施形態と同様に（図５参照）、図１８に示される手順（ステップＳ８〜Ｓ１１）により、ＢＣＥ２１−１、２１−２を用いたバイキャストを停止する（図２１のステップＳ４０７）。
これにより、ＭＮ１０とＣＮ４０間は、経路Ｂ、Ｃを用いた通信経路と、経路Ｂ、Ｆ、Ｈを用いた通信経路との２つの通信経路が確立されるバイキャスト状態から、経路Ｂ、Ｆ、Ｈを用いた通信経路のみが確立される状態に変わる（図１８のステップＳ１２ａ）。
【００７８】
次いで、ＢＣＥ２１−１は、「Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｆ」がＤｌｙ＿Ｇに等しくなるまで、「Ｄｌｙ＿Ｇ−（Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｆ）」を経路Ｆに送出するパケットに徐々に付加するように、パケット送信を制御する（図２１のステップＳ４０８、Ｓ４０９）。その結果、「Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｆ」がＤｌｙ＿Ｇに等しくなると、第１の実施形態と同様に（図６参照）、図１９に示される手順（ステップＳ１３〜Ｓ１６）により、通信経路をＣＮ４０とＭＮ１０＿Ｙの直接経路（経路Ｅ）に切り替える（図２１のステップＳ４１０）。
これにより、ＭＮ１０とＣＮ４０間は、経路Ｂ、Ｆ、Ｈを用いた通信経路が確立される状態から、経路Ｅによる直接経路が確立される状態に変わる（図１９のステップＳ１７）。
【００７９】
一方、ステップＳ４０６の比較の結果、「Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｆ」がＤｌｙ＿Ｇより大きい場合は（ステップＳ４０６、ＴＲＵＥ）、図２０に示される手順（ステップＳ５１〜Ｓ５４）により、バイキャストを停止するとともに、ＣＮ４０とＭＮ１０＿Ｙ間の通信経路を経路Ｇ、Ｈから成る経路に切り替える（図２１のステップＳ４１１）。
【００８０】
図２０において、ＭＮ１０は、バイキャスト停止要求として、「Translator」ヘッダフィールド５１中に文字列「bridge」が含まれるＵＰＤＡＴＥメッセージをＳＩＰ−ＡＳ２３に送信する（ステップＳ５１）。ＳＩＰ−ＡＳ２３は、該受信したＵＰＤＡＴＥメッセージをＣＮ４０に送信する際（ステップＳ５２）、「c」フィールド５２に記載のＩＰアドレスをＩＰ＿ｂｃｅ２に変更する。また同様に、ＳＩＰ−ＡＳ２３は、当該ＵＰＤＡＴＥメッセージに対するレスポンスである２００ＯＫメッセージを受信すると（ステップＳ５３）、該２００ＯＫメッセージ中の「c」フィールド５３に記載のＩＰアドレスをＩＰ＿ｂｃｅ２に変更してＭＮ１０へ送信する（ステップＳ５４）。
これにより、ＭＮ１０とＣＮ４０間は、経路Ｂ、Ｃを用いた通信経路と、経路Ｂ、Ｄを用いた通信経路との２つの通信経路が確立されるバイキャスト状態から、経路Ｇ、Ｈを用いた通信経路のみが確立される状態に変わる（ステップＳ５５）。
【００８１】
また、ＢＣＥ２１−２は、上記経路Ｇ、Ｈへの切替と同時に、経路Ｇから経路Ｈへ送出するパケット及び経路Ｈから経路Ｇへ送出するパケットに対して「（Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｆ）−Ｄｌｙ＿Ｇ」を付加するように、パケット送信を制御する（図２１のステップＳ４１２）。次いで、ＢＣＥ２１−２は、ステップＳ４１２でパケットに付加するようにした遅延を徐々に減少させて当該付加遅延をなしにする（図２１のステップＳ４１３）。次いで、上記ステップＳ４１０と同様にして、通信経路をＣＮ４０とＭＮ１０＿Ｙの直接経路（経路Ｅ）に切り替える（図２１のステップＳ４１４）。
【００８２】
［ステップＳ４０４の比較の結果、Ｄｌｙ＿Ｃが「Ｄｌｙ＿Ｆ＋Ｄｌｙ＿Ｈ」より小さい場合（ステップＳ４０４、ＦＡＬＳＥ）］
ＢＣＥ２１−１は、「（Ｄｌｙ＿Ｆ＋Ｄｌｙ＿Ｈ）−Ｄｌｙ＿Ｃ」の遅延時間を経路Ｃに送出するパケットに徐々に付加するように、パケット送信を制御する（図２１のステップＳ４１５、Ｓ４１６）。これにより、ＢＣＥ２１−１から経路ＣでＭＮ１０＿Ｘに到着するまでの遅延時間と、ＢＣＥ２１−１から経路Ｆ及びＨでＭＮ１０＿Ｙに到着するまでの遅延時間とを等しくする。
【００８３】
次いで、ＢＣＥ２１−１は、「Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｆ」とＤｌｙ＿Ｇを比較する（図２１のステップＳ４１７）。ステップＳ４１７の比較の結果、「Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｆ」がＤｌｙ＿Ｇより大きい場合は（ステップＳ４１７、ＴＲＵＥ）、ステップＳ４１１へ移行する。
【００８４】
一方、ステップＳ４１７の比較の結果、「Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｆ」がＤｌｙ＿Ｇより小さい場合は（ステップＳ４１７、ＦＡＬＳＥ）、ステップＳ４０７と同様にして、ＢＣＥ２１−１、２１−２を用いたバイキャストを停止する（図２１のステップＳ４１８）。これにより、ＭＮ１０とＣＮ４０間は、経路Ｂ、Ｃを用いた通信経路と、経路Ｂ、Ｆ、Ｈを用いた通信経路との２つの通信経路が確立されるバイキャスト状態から、経路Ｂ、Ｆ、Ｈを用いた通信経路のみが確立される状態に変わる（図１８のステップＳ１２ａ）。
【００８５】
次いで、ＢＣＥ２１−１は、「Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｆ」がＤｌｙ＿Ｇに等しくなるまで、「Ｄｌｙ＿Ｇ−（Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｆ）」を経路Ｆに送出するパケットに徐々に付加するように、パケット送信を制御する（図２１のステップＳ４１９、Ｓ４２０）。その結果、「Ｄｌｙ＿Ｂ＋Ｄｌｙ＿Ｆ」がＤｌｙ＿Ｇに等しくなると、ステップＳ４１４に移行する。これにより、ＭＮ１０とＣＮ４０間は、経路Ｂ、Ｆ、Ｈを用いた通信経路が確立される状態から、経路Ｅによる直接経路が確立される状態に変わる（図１９のステップＳ１７）。
【００８６】
上述した第２の実施形態によれば、ハンドオーバ前後の２つの通信システムの両方に設けられたバイキャストエンティティを使用してハンドオーバを行う際に、バイキャストエンティティ経由の通信経路はハンドオーバ時の一時的なものにとどめ、ハンドオーバ終了後にはバイキャストエンティティを経由しない最適な通信経路を用いて通信を行うことができる。これにより、異なる通信システム間のハンドオーバを行って通信の継続を実現する場合の通信経路の冗長性が改善される。
【００８７】
また、第１の実施形態と同様に、通信経路の切り替え前後の遅延時間を評価し、その遅延時間差を調整することにより、パケット到着順序の逆転を防止するとともに、急激な遅延時間の変化を緩和することができる。
【００８８】
なお、上述した第２の実施形態では、移動端末（ＭＮ）からのＵＰＤＡＴＥメッセージにより経路の切り替え及びバイキャストの開始／停止を起動する端末主導型として構成したが、第１の実施形態と同様に（図１０〜図１３参照）、ネットワークからのシグナリングによってその起動を行うネットワーク主導型として構成することも可能である。図２２〜図２５にはネットワーク主導型の場合のシーケンス図が示されている。図２２〜図２５は、上記図１７〜図２０に対応し、その対応する部分には同一の符号を付している。また、図１０〜図１３の各部に対応する部分には同一の符号を付している。
【００８９】
図２２〜図２５に示されるように、ネットワーク主導型の場合は、ＳＩＰ−ＡＳ２３からのＵＰＤＡＴＥメッセージにより経路の切り替え及びバイキャストの開始／停止を起動する（ステップＳ２１〜Ｓ３２、Ｓ５１〜Ｓ５４）。
【００９０】
上述したように本発明に係る実施形態によれば、無線端末が異なる通信システム間に渡って接続及び通信を継続する際に、円滑なハンドオーバを実現し、リアルタイムアプリケーション等の通信品質を高く保つことが可能になる。
【００９１】
また、冗長な通信経路はハンドオーバ時の一時的な利用になるので、通信リソースの有効利用が可能になる。さらに、通信経路の切り替え前後の遅延時間を評価し、その遅延時間差を調整することにより、パケット到着順序の逆転の防止や急激な遅延時間の変化を緩和等、通信システム切り替え前後の遅延時間差に起因する問題の解決を図ることが可能になる。なお、本実施形態により従来に比して通信経路の切替回数が増加するが、本実施形態の遅延調整により、その切替回数増加による遅延変動の影響を軽減することが可能になる。これにより、異なる通信システム間のシームレスなハンドオーバを実現することができる。
【００９２】
また、図１又は図１５に示すバイキャストエンティティ（ＢＣＥ）の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより通信制御処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものであってもよい。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、フラッシュメモリ等の書き込み可能な不揮発性メモリ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
【００９３】
さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ（例えばＤＲＡＭ（Dynamic Random Access Memory））のように、一定時間プログラムを保持しているものも含むものとする。
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【００９４】
以上、本発明の実施形態を図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等も含まれる。
【図面の簡単な説明】
【００９５】
【図１】本発明の第１の実施形態に係る通信システムの全体構成を示すブロック図である。
【図２】図１に示すネットワーク構成における各ノード間の経路を示す図である。
【図３】本発明の第１の実施形態に係る装置間の処理シーケンス図である。
【図４】本発明の第１の実施形態に係る装置間の処理シーケンス図である。
【図５】本発明の第１の実施形態に係る装置間の処理シーケンス図である。
【図６】本発明の第１の実施形態に係る装置間の処理シーケンス図である。
【図７】本発明の第１の実施形態に係る装置間の処理シーケンス図である。
【図８】本発明の第１の実施形態に係るハンドオーバ手順を示すフローチャートである。
【図９】本発明の第１の実施形態に係るハンドオーバ手順を示すフローチャートである。
【図１０】本発明の第１の実施形態に係るネットワーク主導型の場合のシーケンス図である。
【図１１】本発明の第１の実施形態に係るネットワーク主導型の場合のシーケンス図である。
【図１２】本発明の第１の実施形態に係るネットワーク主導型の場合のシーケンス図である。
【図１３】本発明の第１の実施形態に係るネットワーク主導型の場合のシーケンス図である。
【図１４】本発明の第１の実施形態に係るネットワーク主導型の場合のハンドオーバ手順のフローチャートである。
【図１５】本発明の第２の実施形態に係る通信システムの全体構成を示すブロック図である。
【図１６】図１５に示すネットワーク構成における各ノード間の経路を示す図である。
【図１７】本発明の第２の実施形態に係る装置間の処理シーケンス図である。
【図１８】本発明の第２の実施形態に係る装置間の処理シーケンス図である。
【図１９】本発明の第２の実施形態に係る装置間の処理シーケンス図である。
【図２０】本発明の第２の実施形態に係る装置間の処理シーケンス図である。
【図２１】本発明の第２の実施形態に係るハンドオーバ手順を示すフローチャートである。
【図２２】本発明の第２の実施形態に係るネットワーク主導型の場合のシーケンス図である。
【図２３】本発明の第２の実施形態に係るネットワーク主導型の場合のシーケンス図である。
【図２４】本発明の第２の実施形態に係るネットワーク主導型の場合のシーケンス図である。
【図２５】本発明の第２の実施形態に係るネットワーク主導型の場合のシーケンス図である。
【図２６】従来の異なる通信システム間のハンドオーバ手順を説明するための図である。
【図２７】従来の異なる通信システム間のハンドオーバ手順を説明するための図である。
【図２８】従来の異なる通信システム間のハンドオーバ手順を説明するための図である。
【符号の説明】
【００９６】
１０…移動端末（ＭＮ）、２０Ｘ、２０Ｙ…通信システム、２１，２１−１〜２…バイキャストエンティティ（ＢＣＥ）、２２…ＳＩＰレジストラサーバ（ＳＩＰ−Ｒ）、２３…ＳＩＰアプリケーションサーバ（ＳＩＰ−ＡＳ）
【図１】
0004624274.tif 000002
【図２】
0004624274.tif 000003
【図３】
0004624274.tif 000004
【図４】
0004624274.tif 000005
【図５】
0004624274.tif 000006
【図６】
0004624274.tif 000007
【図７】
0004624274.tif 000008
【図８】
0004624274.tif 000009
【図９】
0004624274.tif 000010
【図１０】
0004624274.tif 000011
【図１１】
0004624274.tif 000012
【図１２】
0004624274.tif 000013
【図１３】
0004624274.tif 000014
【図１４】
0004624274.tif 000015
【図１５】
0004624274.tif 000016
【図１６】
0004624274.tif 000017
【図１７】
0004624274.tif 000018
【図１８】
0004624274.tif 000019
【図１９】
0004624274.tif 000020
【図２０】
0004624274.tif 000021
【図２１】
0004624274.tif 000022
【図２２】
0004624274.tif 000023
【図２３】
0004624274.tif 000024
【図２４】
0004624274.tif 000025
【図２５】
0004624274.tif 000026
【図２６】
0004624274.tif 000027
【図２７】
0004624274.tif 000028
【図２８】
0004624274.tif 000029