(57)【特許請求の範囲】
【請求項１】
複数のアプリケーションと、通信を中継する複数のプロキシと、それらを接続するネットワークとが設けられた通信システムの制御に用いる通信コネクション確立方法であって、
複数のアプリケーションが２つ以上のプロキシを通る通信経路を介して互いに通信している場合に、
所定の切替要求に応答して、前記通信経路上に配置された第１のプロキシが接続先の第２のプロキシを第３のプロキシに切り替えて通信を継続する
ことを特徴とする通信コネクション確立方法。
【請求項２】
複数のアプリケーションと、通信を中継する複数のプロキシと、それらを接続するネットワークとが設けられた通信システムの制御に用いる通信コネクション確立方法であって、
第１のアプリケーションと第２のアプリケーションとが２つ以上のプロキシを通る通信経路を介して互いに通信している場合に、
前記通信経路上に配置され第１のアプリケーションと第１のプロキシとの間で中継を行う第２のプロキシが、所定の切替要求に応答して通信相手の第１のアプリケーションを他の第３のアプリケーションに切り替えて通信を継続する
ことを特徴とする通信コネクション確立方法。
【請求項３】
請求項１の通信コネクション確立方法において、
クライアントアプリケーションとサーバアプリケーションとが複数のプロキシを介して通信する場合に、
クライアントアプリケーションの接続要求に対してサーバアプリケーションからの応答がクライアントアプリケーションに転送された場合にその転送経路をセッションとして管理するとともに、それぞれのセッションにセッションＩＤを割り当てておき、
前記第１のプロキシは、サービス移動のための切替要求を受け付けた場合に、通信の中継を中断してから移動先の前記第３のプロキシに接続し、その後で中継を再開し、
前記第３のプロキシは、該当するセッションＩＤを含む引数を用いて新たなクライアントアプリケーションを起動し、
起動された新たなクライアントアプリケーションは、前記第３のプロキシに接続して指定されたセッションＩＤを含む情報を前記第３のプロキシに送信し、
前記第３のプロキシは、セッションＩＤに基づいて、前記第１のプロキシの通信と前記新たなクライアントアプリケーションの通信とを結びつけてデータの中継を行う
ことを特徴とする通信コネクション確立方法。
【請求項４】
請求項２の通信コネクション確立方法において、
クライアントアプリケーションとサーバアプリケーションとが複数のプロキシを介して通信する場合に、
クライアントアプリケーションの接続要求に対してサーバアプリケーションからの応答がクライアントアプリケーションに転送された場合にその転送経路をセッションとして管理するとともに、それぞれのセッションにセッションＩＤを割り当てておき、
前記第２のプロキシは、サービス移動のための切替要求を受け付けた場合に、通信の中継を中断して該当するセッションＩＤを含む引数を用いて新たなクライアントアプリケーションを起動し、
起動された新たなクライアントアプリケーションは、前記第２のプロキシに接続して指定されたセッションＩＤを含む情報を前記第２のプロキシに送信し、
前記第２のプロキシは、セッションＩＤに基づいて、サーバアプリケーションとの間に通信路を持つプロキシの通信と前記新たなクライアントアプリケーションの通信とを結びつけてデータの中継を再開する
ことを特徴とする通信コネクション確立方法。
【請求項５】
サービスを要求するクライアントアプリケーションを含む端末と、サービスを提供するサーバアプリケーションを含む端末と、通信の内容を蓄積及び中継するプロキシを含む端末とが接続された通信システムの制御に用いる通信コネクション確立方法であって、
各々の端末に存在するクライアントアプリケーション又はサーバアプリケーション及びプロキシを表す第１の情報と、各々の端末の特定に利用される第２の情報とを保持しておき、
１つ以上のプロキシを中継して形成されるサーバアプリケーションとクライアントアプリケーションとの間の通信経路をセッションとして管理し、
セッション毎に、少なくともセッションの識別子，当該セッションを利用しているクライアントアプリケーション及びサーバアプリケーションを特定する第３の情報，当該セッションが利用しているプロキシを特定する第４の情報及び当該セッションが利用しているプロキシの接続点を表す第５の情報を保持し、
利用するサーバアプリケーション又はクライアントアプリケーションを提供する端末の切替、もしくはサーバアプリケーションとクライアントアプリケーションとの間の通信に利用している通信経路上のプロキシの切替が必要な場合に、該当するセッションの情報と前記第１の情報及び第２の情報とを利用して、サーバアプリケーションとそれに接続されたプロキシとの間、クライアントアプリケーションとそれに接続されたプロキシとの間、サーバアプリケーションとクライアントアプリケーションとの間を中継する複数プロキシの間の少なくとも１つの通信コネクションを自動的に切り替える
ことを特徴とする通信コネクション確立方法。
【請求項６】
請求項５の通信コネクション確立方法において、プロキシとサーバアプリケーション又はクライアントアプリケーションとを同一の端末上に備えた少なくとも１台の移動端末を前記通信システムの端末として利用し、前記移動端末が実際の通信に利用する通信装置の切替に伴う前記第２の情報の変化を同じ移動端末上に配置されるプロキシにより吸収することを特徴とする通信コネクション確立方法。
【請求項７】
請求項５の通信コネクション確立方法において、前記セッションの情報を管理するセッション管理部が存在し、あるセッションについて実際に中継をしているプロキシである第１のプロキシから別のプロキシである第２のプロキシへの切替要求が発生した場合に、
その切替要求をいずれか１つの端末が前記セッション管理部に通知し、
前記セッション管理部から切替先の第２のプロキシに対して切替の準備状況に関する問い合わせを行い、
第２のプロキシから切替準備が完了したことを示す通知が前記セッション管理部に届いた場合に、第１のプロキシとの間で通信コネクションを確立している第３のプロキシに対して、前記セッション管理部から切替先の第２のプロキシに関する情報とともに切替要求を送信し、
第３のプロキシが、セッションの識別子を用いて切替先の第２のプロキシとの間で新たな通信コネクションを確立し、
第１のプロキシと第３のプロキシとの間の通信コネクションを介して行われていた通信が第３のプロキシと第２のプロキシとの間の通信コネクションを通るように切替え、
全ての通信コネクションの切替が完了した場合に、前記セッション管理部に対して切替完了を通知し、
切替先の第２のプロキシは、第３のプロキシとの間の第１の通信コネクションの確立が完了した場合に、通知されたセッションの識別子に基づいて、第２のプロキシとサーバアプリケーション又はクライアントアプリケーションとの間に確立された第２の通信コネクションと前記第１の通信コネクションとを関連付けて当該セッションの通信経路を切り替える
ことを特徴とする通信コネクション確立方法。
【請求項８】
請求項５の通信コネクション確立方法において、前記セッションの情報を管理するセッション管理部が存在し、あるセッションについて、実際に通信を中継している第１のプロキシと第２のプロキシとの間に、新たな第３のプロキシを追加するためのプロキシの追加要求が発生した場合に、
その追加要求をいずれか１つの端末が前記セッション管理部に通知し、
前記セッション管理部から追加される第３のプロキシに対して追加の準備状況に関する問い合わせを行い、
第３のプロキシから準備完了を示す通知を前記セッション管理部が受けた場合に、前記セッション管理部は、第１のプロキシ及び第２のプロキシのそれぞれに対して追加要求を送信し、
第１のプロキシ及び第２のプロキシのそれぞれは、前記追加要求に応答して、セッションの識別子を用いて第３のプロキシとの間で新たな第１の通信コネクション又は第２の通信コネクションを確立し、第１のプロキシ及び第２のプロキシが中継している通信が第１の通信コネクション又は第２の通信コネクションを通るように切り替えて、
全ての通信について利用する通信コネクションの切替が完了した場合に、前記セッション管理部に対して切替完了を通知し、
第１のプロキシと第３のプロキシとの間の第１の通信コネクション及び第２のプロキシと第３のプロキシとの間の第２の通信コネクションの両方が確立された場合に、通知されたセッションの識別子に基づいて、第１の通信コネクションと第２の通信コネクションとを関連付ける
ことを特徴とする通信コネクション確立方法。
【請求項９】
請求項５の通信コネクション確立方法において、前記セッションの情報を管理するセッション管理部が存在し、あるセッションについて、実際に通信を中継している第１のプロキシに関する削除要求が発生した場合に、
その削除要求をいずれか１つの端末が前記セッション管理部に通知し、
前記セッション管理部は、第１のプロキシとの間で第１の通信コネクション及び第２の通信コネクションを確立している第２のプロキシ及び第３のプロキシのそれぞれに対して削除要求を送信し、
第２のプロキシ及び第３のプロキシは、それらの間に第３の通信コネクションを確立し、第１の通信コネクション及び第２の通信コネクションを利用している通信を第３の通信コネクションに切り替えて、
通信コネクションの切替が完了した場合には、第２のプロキシ及び第３のプロキシは、それぞれ前記セッション管理部に対して切替完了を通知する
ことを特徴とする通信コネクション確立方法。
【請求項１０】
請求項５の通信コネクション確立方法において、前記セッションの情報を管理するセッション管理部が存在し、あるセッションについて、第１のプロキシと第２のプロキシとの間に第１の通信コネクションが確立され、第２のプロキシと第３のプロキシとの間に第２の通信コネクションが確立され、第１の通信コネクション及び第２の通信コネクションを利用し、第１のプロキシ，第２のプロキシ及び第３のプロキシを中継して通信を行っている状態で、第２のプロキシから新たな第４のプロキシへの置換要求が発生した場合に、
その置換要求をいずれか１つの端末が前記セッション管理部に通知し、
前記セッション管理部は、第４のプロキシに対して置換の準備に関する問い合わせを行い、
第４のプロキシから準備完了を示す通知を前記セッション管理部が受けた場合には、前記セッション管理部は第１のプロキシ及び第３のプロキシに対して切替要求を送信し、
第１のプロキシ及び第３のプロキシのそれぞれは、前記切替要求に応答して、セッションの識別子に基づき置換先の第４のプロキシとの間に第３の通信コネクション及び第４の通信コネクションを確立し、
第１のプロキシ及び第３のプロキシのそれぞれは、第１の通信コネクション及び第２の通信コネクションを介して行われていた通信を第３の通信コネクション及び第４の通信コネクションを通るように切り替えて、
切り替えた全ての通信コネクションについて通信に利用する通信コネクションの切替が完了した後で、第１のプロキシ及び第３のプロキシのそれぞれが前記セッション管理部に対して切替完了を通知し、
第３の通信コネクション及び第４の通信コネクションが確立された後で、通知されたセッションの識別子に基づいて第３の通信コネクションと第４の通信コネクションとを関連付ける
ことを特徴とする通信コネクション確立方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ネットワーク上で接続された複数の端末同士がサーバアプリケーション及びクライアントアプリケーションにより通信する場合に、通信経路の切替などのために用いられる通信コネクション確立方法に関する。
【０００２】
【従来の技術】
利用者が通信を行っているアプリケーションの利用をやめて他のアプリケーションで通信を行おうとする場合には、通信を中断してから、他のアプリケーションで通信を再開する必要がある。しかしながら、この場合は通信が切断されてしまうので、相手のアプリケーションとの通信手続きを最初からやり直す必要がある。すなわち、あるアプリケーションに対する通信サービスを途中から他のアプリケーションに切り替えることはできない。
【０００３】
例えば、ノートパソコンやＰＤＡのような移動端末は持ち運びができるため様々な場所で利用される可能性があるし、移動しながら利用される場合もある。このような移動端末をオンラインで利用する場合には、例えばイーサネット，構内無線ＬＡＮ（Local Area Network），公衆無線通信（例えばＰＨＳ（Personal Handy-phone System））等に対応する通信アダプタを用いて移動端末をネットワークに接続する必要がある。
【０００４】
移動端末が利用される様々な場所においては、１つ又は複数の通信媒体を利用して移動端末をネットワークに接続することが可能である。予め複数種類の通信媒体に対応する複数の通信アダプタを搭載しておけば、１台の移動端末を様々な場所で、必要に応じて通信方式を切り替えてネットワークに接続することができる。
【０００５】
実際に複数の端末同士がサーバアプリケーション及びクライアントアプリケーションにより通信する場合には、まず端末のハードウェアをネットワークに接続し、サービスを提供するサーバアプリケーションと前記サービスを利用するクライアントアプリケーションとの間に通信コネクションを確立する必要がある。
また、例えば障害などによって一時的に通信が途絶えた場合でも通信の継続を可能にするために、サーバアプリケーションとクライアントアプリケーションとの間にプロキシと呼ばれる中継装置を介在するように通信経路を構築するのが一般的である。
【０００６】
【発明が解決しようとする課題】
上記のような従来の通信システムにおいては、サーバアプリケーションとクライアントアプリケーションとの間の通信を開始する際にその通信経路が決定される。従って、通信の途中では利用するサーバアプリケーション，クライアントアプリケーション及びプロキシの組み合わせを変更することはできない。
【０００７】
サーバアプリケーション，クライアントアプリケーション又はプロキシを変更する場合には、通信を一旦終了し、通信コネクションを解放し、サーバアプリケーションとクライアントアプリケーションとの間の各通信コネクションをつなぎ直す必要がある。
しかしながら、移動端末が移動しながら通信する場合には、移動に伴ってサーバアプリケーション，クライアントアプリケーション及びプロキシの位置関係が変わるため、冗長な通信経路が形成される可能性がある。例えば、不必要なプロキシを中継して通信を継続する場合が生じる。
【０００８】
また、例えば通信中の端末に障害が発生した場合には、通信を一旦終了し、通信コネクションを解放し、障害が生じた端末のアプリケーションやプロキシの機能を他の端末で置き換えるように通信経路を再構築して最初から通信をやり直す必要がある。
また、例えばユーザが利用する端末を画面の小さい移動端末から画面の大きい固定端末（例えばデスクトップパソコン）に切り替えようとする場合にも、移動端末の通信を終了し、通信コネクションを解放し、固定端末を用いて新たな通信経路を構築し、通信を最初からやり直す必要がある。
【０００９】
そこで、本発明はサーバアプリケーションとクライアントアプリケーションとの間の通信を終了することなく、それらのアプリケーションの切替や通信経路の切替を可能にすることを目的とする。
【００１０】
【課題を解決するための手段】
請求項１は、複数のアプリケーションと、通信を中継する複数のプロキシと、それらを接続するネットワークとが設けられた通信システムの制御に用いる通信コネクション確立方法であって、複数のアプリケーションが２つ以上のプロキシを通る通信経路を介して互いに通信している場合に、所定の切替要求に応答して、前記通信経路上に配置された第１のプロキシが接続先の第２のプロキシを第３のプロキシに切り替えて通信を継続することを特徴とする。
【００１１】
請求項１においては、通信経路を切り替える必要が生じた場合には、第１のプロキシの制御により、第１のプロキシの接続先が第２のプロキシから第３のプロキシに切り替わる。従って、切替後は第２のプロキシを利用せずに通信を継続することができる。
なお、切替先の第３のプロキシについては切替の際に指定するか、あるいは予め定めておく必要がある。
【００１２】
請求項２は、複数のアプリケーションと、通信を中継する複数のプロキシと、それらを接続するネットワークとが設けられた通信システムの制御に用いる通信コネクション確立方法であって、第１のアプリケーションと第２のアプリケーションとが２つ以上のプロキシを通る通信経路を介して互いに通信している場合に、前記通信経路上に配置され第１のアプリケーションと第１のプロキシとの間で中継を行う第２のプロキシが、所定の切替要求に応答して通信相手の第１のアプリケーションを他の第３のアプリケーションに切り替えて通信を継続することを特徴とする。
【００１３】
請求項２においては、利用するアプリケーションを切り替える必要が生じた場合には、第２のプロキシの制御により、第２のプロキシとの間で通信を行うアプリケーションが第１のアプリケーションから第３のアプリケーションに切り替わり、そのまま通信が継続される。
従って、利用者は通信を切断することなく通信に使用するアプリケーションを切り替えることができる。なお、切替先の第３のアプリケーションについては切替の際に指定するか、あるいは予め定めておく必要がある。
【００１４】
請求項３は、請求項１の通信コネクション確立方法において、クライアントアプリケーションとサーバアプリケーションとが複数のプロキシを介して通信する場合に、クライアントアプリケーションの接続要求に対してサーバアプリケーションからの応答がクライアントアプリケーションに転送された場合にその転送経路をセッションとして管理するとともに、それぞれのセッションにセッションＩＤを割り当てておき、前記第１のプロキシは、サービス移動のための切替要求を受け付けた場合に、通信の中継を中断してから移動先の前記第３のプロキシに接続し、その後で中継を再開し、前記第３のプロキシは、該当するセッションＩＤを含む引数を用いて新たなクライアントアプリケーションを起動し、起動された新たなクライアントアプリケーションは、前記第３のプロキシに接続して指定されたセッションＩＤを含む情報を前記第３のプロキシに送信し、前記第３のプロキシは、セッションＩＤに基づいて、前記第１のプロキシの通信と前記新たなクライアントアプリケーションの通信とを結びつけてデータの中継を行うことを特徴とする。
【００１５】
請求項３においては、セッションＩＤを用いて複数のセッションをそれぞれ区別している。また、前記第１のプロキシの制御により、第１のプロキシの接続先が移動先の第３のプロキシに切り替わる。更に、前記第３のプロキシの制御により新たなクライアントアプリケーションが自動的に起動され、この新たなクライアントアプリケーションの通信と前記第１のプロキシの通信とが自動的に結び付けられる。
【００１６】
このため、サーバアプリケーションの通信サービスの提供先を、通信を切断することなく元のクライアントアプリケーションから新たなクライアントアプリケーションに移動することができる。また、通信サービスの連続性を確保することができる。
請求項４は、請求項２の通信コネクション確立方法において、クライアントアプリケーションとサーバアプリケーションとが複数のプロキシを介して通信する場合に、クライアントアプリケーションの接続要求に対してサーバアプリケーションからの応答がクライアントアプリケーションに転送された場合にその転送経路をセッションとして管理するとともに、それぞれのセッションにセッションＩＤを割り当てておき、前記第２のプロキシは、サービス移動のための切替要求を受け付けた場合に、通信の中継を中断して該当するセッションＩＤを含む引数を用いて新たなクライアントアプリケーションを起動し、起動された新たなクライアントアプリケーションは、前記第２のプロキシに接続して指定されたセッションＩＤを含む情報を前記第２のプロキシに送信し、前記第２のプロキシは、セッションＩＤに基づいて、サーバアプリケーションとの間に通信路を持つプロキシの通信と前記新たなクライアントアプリケーションの通信とを結びつけてデータの中継を再開することを特徴とする。
【００１７】
請求項４においては、セッションＩＤを用いて複数のセッションをそれぞれ区別している。また、要求が発生した場合には前記第２のプロキシの制御により新たなクライアントアプリケーションが自動的に起動される。更に、起動した新たなクライアントアプリケーションの制御により、それと第２のプロキシとの間に通信経路が形成される。また、第２のプロキシの制御により、該当するセッションを利用してサーバアプリケーションと起動された新たなクライアントアプリケーションとの間で通信が行われるように通信サービスの経路が切り替わる。
【００１８】
このため、サーバアプリケーションの通信サービスの提供先を、通信を切断することなく元のクライアントアプリケーションから新たなクライアントアプリケーションに移動することができる。また、通信サービスの連続性を確保することができる。
請求項５の通信コネクション確立方法は、サービスを要求するクライアントアプリケーションを含む端末と、サービスを提供するサーバアプリケーションを含む端末と、通信の内容を蓄積及び中継するプロキシを含む端末とが接続された通信システムの制御に用いる通信コネクション確立方法であって、各々の端末に存在するクライアントアプリケーション又はサーバアプリケーション及びプロキシを表す第１の情報と、各々の端末の特定に利用される第２の情報とを保持しておき、１つ以上のプロキシを中継して形成されるサーバアプリケーションとクライアントアプリケーションとの間の通信経路をセッションとして管理し、セッション毎に、少なくともセッションの識別子，当該セッションを利用しているクライアントアプリケーション及びサーバアプリケーションを特定する第３の情報，当該セッションが利用しているプロキシを特定する第４の情報及び当該セッションが利用しているプロキシの接続点を表す第５の情報を保持し、利用するサーバアプリケーション又はクライアントアプリケーションを提供する端末の切替、もしくはサーバアプリケーションとクライアントアプリケーションとの間の通信に利用している通信経路上のプロキシの切替が必要な場合に、該当するセッションの情報と前記第１の情報及び第２の情報とを利用して、サーバアプリケーションとそれに接続されたプロキシとの間、クライアントアプリケーションとそれに接続されたプロキシとの間、サーバアプリケーションとクライアントアプリケーションとの間を中継する複数プロキシの間の少なくとも１つの通信コネクションを自動的に切り替えることを特徴とする。
【００１９】
請求項５においては、サーバアプリケーションとクライアントアプリケーションとの間の通信経路がセッションとして管理され、セッション毎に、セッションの識別子，当該セッションを利用しているクライアントアプリケーション及びサーバアプリケーションを特定する第３の情報，当該セッションが利用しているプロキシを特定する第４の情報及び当該セッションが利用しているプロキシの接続点を表す第５の情報を保持する。また、各々の端末に存在するクライアントアプリケーション又はサーバアプリケーション及びプロキシを表す第１の情報と、各々の端末の特定に利用される第２の情報とを保持する。
【００２０】
前記第１の情報を参照することにより、各々の端末に存在するクライアントアプリケーション，サーバアプリケーション及びプロキシを調べることができる。従って、例えばクライアントアプリケーション又はサーバアプリケーションを切り替える場合に、同じアプリケーションが存在する端末を自動的に検出することができる。
【００２１】
また、前記第２の情報を参照することにより、各々の端末のアドレスなどを特定することができる。
更に、セッションの識別子で区別されるそれぞれのセッションの情報から、利用しているクライアントアプリケーション，サーバアプリケーション及びプロキシを特定するとともにプロキシの接続点を検出することができるので、例えば現在利用しているセッションに含まれている特定のプロキシを他のプロキシに切り替えることができる。
【００２２】
この場合の切替は自動的に行われるので、通信の途中で、その通信を終了することなく通信経路を切り替えることができる。切替の間の通信の内容は必要に応じてプロキシに蓄積され、切替が完了した後で通信が継続するようにプロキシが中継動作を行う。
このため、例えば利用しているサーバアプリケーションを含む端末（切替元）に障害が発生した場合には、それと同じサーバアプリケーションを含む他の端末（切替先）に切り替えるようにセッションの構成を変更し、切替先の端末を利用してそのまま通信を継続することができる。このような切替を行う場合であっても、通信サービスの連続性は保証される。
【００２３】
同様に、クライアントアプリケーションを切り替えることもできるし、セッションを構成するプロキシの数や中継経路を変更することもできる。
請求項６は、請求項５の通信コネクション確立方法において、プロキシとサーバアプリケーション又はクライアントアプリケーションとを同一の端末上に備えた少なくとも１台の移動端末を前記通信システムの端末として利用し、前記移動端末が実際の通信に利用する通信装置の切替に伴う前記第２の情報の変化を同じ移動端末上に配置されるプロキシにより吸収することを特徴とする。
【００２４】
請求項６においては、利用する同一の端末上にプロキシとサーバアプリケーション又はクライアントアプリケーションとが存在するので、端末の移動に伴ってその端末のアドレスなどに変化が生じた場合であっても、その端末上ではサーバアプリケーション又はクライアントアプリケーションとプロキシとの間の通信コネクションを変更する必要はない。
【００２５】
このため、他の通信コネクションを切り替える時には前記プロキシの蓄積機能によって通信内容が保持されるので、通信コネクションを切り替えた後で通信を継続することができる。
請求項７は、請求項５の通信コネクション確立方法において、前記セッションの情報を管理するセッション管理部が存在し、あるセッションについて実際に中継をしているプロキシである第１のプロキシから別のプロキシである第２のプロキシへの切替要求が発生した場合に、その切替要求をいずれか１つの端末が前記セッション管理部に通知し、前記セッション管理部から切替先の第２のプロキシに対して切替の準備状況に関する問い合わせを行い、第２のプロキシから切替準備が完了したことを示す通知が前記セッション管理部に届いた場合に、第１のプロキシとの間で通信コネクションを確立している第３のプロキシに対して、前記セッション管理部から切替先の第２のプロキシに関する情報とともに切替要求を送信し、第３のプロキシが、セッションの識別子を用いて切替先の第２のプロキシとの間で新たな通信コネクションを確立し、第１のプロキシと第３のプロキシとの間の通信コネクションを介して行われていた通信が第３のプロキシと第２のプロキシとの間の通信コネクションを通るように切替え、全ての通信コネクションの切替が完了した場合に、前記セッション管理部に対して切替完了を通知し、切替先の第２のプロキシは、第３のプロキシとの間の第１の通信コネクションの確立が完了した場合に、通知されたセッションの識別子に基づいて、第２のプロキシとサーバアプリケーション又はクライアントアプリケーションとの間に確立された第２の通信コネクションと前記第１の通信コネクションとを関連付けて当該セッションの通信経路を切り替えることを特徴とする。
【００２６】
請求項７においては、１つのセッションについて第１のプロキシから第２のプロキシへの切替を自動的に行うことができる。これにより、第１のプロキシに接続されたアプリケーションの機能（サービス）を第２のプロキシに接続されたアプリケーションに移動することができる。
請求項８は、請求項５の通信コネクション確立方法において、前記セッションの情報を管理するセッション管理部が存在し、あるセッションについて、実際に通信を中継している第１のプロキシと第２のプロキシとの間に、新たな第３のプロキシを追加するためのプロキシの追加要求が発生した場合に、その追加要求をいずれか１つの端末が前記セッション管理部に通知し、前記セッション管理部から追加される第３のプロキシに対して追加の準備状況に関する問い合わせを行い、第３のプロキシから準備完了を示す通知を前記セッション管理部が受けた場合に、前記セッション管理部は、第１のプロキシ及び第２のプロキシのそれぞれに対して追加要求を送信し、第１のプロキシ及び第２のプロキシのそれぞれは、前記追加要求に応答して、セッションの識別子を用いて第３のプロキシとの間で新たな第１の通信コネクション又は第２の通信コネクションを確立し、第１のプロキシ及び第２のプロキシが中継している通信が第１の通信コネクション又は第２の通信コネクションを通るように切り替えて、全ての通信について利用する通信コネクションの切替が完了した場合に、前記セッション管理部に対して切替完了を通知し、第１のプロキシと第３のプロキシとの間の第１の通信コネクション及び第２のプロキシと第３のプロキシとの間の第２の通信コネクションの両方が確立された場合に、通知されたセッションの識別子に基づいて、第１の通信コネクションと第２の通信コネクションとを関連付けることを特徴とする。
【００２７】
請求項８においては、１つのセッションについて実際に通信を中継している第１のプロキシと第２のプロキシとの間に、新たな第３のプロキシを追加することができる。
また、請求項８では切替を行う前に切替先のプロキシの状態を確認するので、確実に切替可能なプロキシに対して切替を実行することができる。また、切替の後で完了の通知を行うので、切替元のプロキシは切替の後でそれまで使用していたリソースを開放することができる。
【００２８】
請求項９は、請求項５の通信コネクション確立方法において、前記セッションの情報を管理するセッション管理部が存在し、あるセッションについて、実際に通信を中継している第１のプロキシに関する削除要求が発生した場合に、その削除要求をいずれか１つの端末が前記セッション管理部に通知し、前記セッション管理部は、第１のプロキシとの間で第１の通信コネクション及び第２の通信コネクションを確立している第２のプロキシ及び第３のプロキシのそれぞれに対して削除要求を送信し、第２のプロキシ及び第３のプロキシは、それらの間に第３の通信コネクションを確立し、第１の通信コネクション及び第２の通信コネクションを利用している通信を第３の通信コネクションに切り替えて、通信コネクションの切替が完了した場合には、第２のプロキシ及び第３のプロキシは、それぞれ前記セッション管理部に対して切替完了を通知することを特徴とする。
【００２９】
請求項９においては、１つのセッションについて、実際に通信を中継している第１のプロキシをそのセッションから除外することができる。例えば、第１のプロキシを削除した方が通信経路が短くなる場合や、第１のプロキシが不必要になった場合には、第１のプロキシを削除して通信経路を最適化することができる。通信の途中で第１のプロキシを削除した場合でも、その通信サービスの連続性は請求項９の制御シーケンス及び他のプロキシの働きにより保証される。
【００３０】
請求項１０は、請求項５の通信コネクション確立方法において、前記セッションの情報を管理するセッション管理部が存在し、あるセッションについて、第１のプロキシと第２のプロキシとの間に第１の通信コネクションが確立され、第２のプロキシと第３のプロキシとの間に第２の通信コネクションが確立され、第１の通信コネクション及び第２の通信コネクションを利用し、第１のプロキシ，第２のプロキシ及び第３のプロキシを中継して通信を行っている状態で、第２のプロキシから新たな第４のプロキシへの置換要求が発生した場合に、その置換要求をいずれか１つの端末が前記セッション管理部に通知し、前記セッション管理部は、第４のプロキシに対して置換の準備に関する問い合わせを行い、第４のプロキシから準備完了を示す通知を前記セッション管理部が受けた場合には、前記セッション管理部は第１のプロキシ及び第３のプロキシに対して切替要求を送信し、第１のプロキシ及び第３のプロキシのそれぞれは、前記切替要求に応答して、セッションの識別子に基づき置換先の第４のプロキシとの間に第３の通信コネクション及び第４の通信コネクションを確立し、第１のプロキシ及び第３のプロキシのそれぞれは、第１の通信コネクション及び第２の通信コネクションを介して行われていた通信を第３の通信コネクション及び第４の通信コネクションを通るように切り替えて、切り替えた全ての通信コネクションについて通信に利用する通信コネクションの切替が完了した後で、第１のプロキシ及び第３のプロキシのそれぞれが前記セッション管理部に対して切替完了を通知し、第３の通信コネクション及び第４の通信コネクションが確立された後で、通知されたセッションの識別子に基づいて第３の通信コネクションと第４の通信コネクションとを関連付けることを特徴とする。
【００３１】
請求項１０においては、１つのセッションについて、第１のプロキシ，第２のプロキシ及び第３のプロキシを中継して通信を行っている状態で、第２のプロキシから新たな第４のプロキシへの置換を行うことができる。例えば、第２のプロキシから第４のプロキシへ置換した方が通信経路が短くなる場合には、置換を行うことにより通信経路を最適化することができる。
【００３２】
通信の途中で置換を行った場合でも、その通信サービスの連続性は請求項１０の制御シーケンス及びプロキシの働きにより保証される。
なお、本発明を適用するネットワークについては、例えば図２１に示すように様々な形態が考えられる。互いに通信を行うアプリケーション１，３は、プロキシ２を介して通信路を確立する。プロキシ２は、通信の中継を行う。
【００３３】
図２１の（ａ）では、２つのアプリケーション１，３の間に１つのプロキシ２を介在して通信路を確立してある。また、図２１の（ｂ）では、２つのアプリケーション１，３の間に２つのプロキシ２（１），２（２）を介在して通信路を確立してある。
【００３４】
アプリケーション１，３やプロキシ２は、現実にはコンピュータなどの通信ノード（以下、ノードと記載する）の内部にプロセスとして存在する。ノードの配置や構成については様々な形態が考えられる。
図２１の（ｃ）では、アプリケーション１及びプロキシ２（１）が同じノード４（１）上に配置され、プロキシ２（２）はノード４（２）上に配置され、アプリケーション３はノード４（３）上に配置されている。
【００３５】
図２１の（ｃ）に示すように、各ノードには、プロキシ又はアプリケーションあるいはそれらの両方を搭載することができる。複数のアプリケーションの間の通信は少なくとも１つのプロキシを介して行われる。
また、互いに通信する複数のアプリケーションの間に複数のプロキシを介在することにより、プロキシ間で発生する通信の切断や通信媒体の変化などを吸収することが可能であり、ノードの移動が可能になる。
【００３６】
また、通信経路上のプロキシやアプリケーションの接続関係を変更することにより、ネットワークサービスをノード間にまたがって移動させることが可能になる。請求項１はプロキシの按続関係を変吏することを特徴としている。また、請求項２はアプリケーションの按続閑係を変吏することを特徴としている。
按続関係を様々に変更することにより、通信に用いるノードやアプリケーションの自由な変更が可能になり、ユーザの利便性を高めることができる。
【００３７】
例えば、ユーザが屋内にいる場合には有線の広帯域の回線を用いて大画面のノードでサービスを受け、ユーザが屋外に移動した場合には携帯端末のノードにサービスを移すとともに、サービスの質よりもモビリティを優先させるように通信環境を対応させることができる。
【００３８】
【発明の実施の形態】
（第１の実施の形態）
本発明の通信コネクション確立方法の１つの実施の形態について図１〜図２０を参照して説明する。この形態は、請求項１，請求項２及び請求項５〜請求項１０に対応する。
【００３９】
図１はプロキシ及びアプリケーションを切り替える場合の制御シーケンスを示すシーケンス図である。図２はプロキシ及びアプリケーションを切り替える場合の通信経路の例を示すブロック図である。図３はセッションにプロキシを追加する場合の制御シーケンスを示すシーケンス図である。図４はセッションにプロキシを追加する場合の通信経路の例を示すブロック図である。
【００４０】
図５はセッションからプロキシを削除する場合の制御シーケンスを示すシーケンス図である。図６はセッションからプロキシを削除する場合の通信経路の例を示すブロック図である。図７はセッション上のプロキシを置換する場合の制御シーケンスを示すシーケンス図である。図８はセッション上のプロキシを置換する場合の通信経路の例を示すブロック図である。
【００４１】
図９は通信システムの構成例を示すブロック図である。図１０は移動端末の構成例を示すブロック図である。図１１はサービス管理部ＳＲが保持する情報の例を示す模式図である。図１２は位置管理部ＬＲが保持する情報の例を示す模式図である。図１３はセッション管理部ＳＭが保持する情報の例を示す模式図である。
図１４は通信システムの構成例を示すブロック図である。図１５はネットワークの構成例を示すブロック図である。図１６はノード及びサービスの移動モデルを示すブロック図である。図１７は端末の移動時の位置情報更新手順を示すシーケンス図である。
【００４２】
この形態では、請求項５の第１の情報は図１１のＢ１１〜Ｂ１３及びＣ１１〜Ｃ１３に相当し、第２の情報は図１２のＥ１０，Ｅ１２に相当する。また、請求項５のセッションの識別子は図１３のＧ１１に相当し、第３の情報は図１３のＧ１２〜Ｇ１５に相当し、第４の情報は図１３のＧ１６に相当し、第５の情報は図１３のＧ１７に相当する。
【００４３】
この形態では、例えば図９に示すような通信システムに本発明を適用する場合を想定している。図９の例では、３種類のサブネットワーク５１，５２，５３が広域ネットワーク５４を介して互いに接続されている。
サブネットワーク５１においては、イーサネットの規格に沿って構成された通信インタフェースを介して、有線で多数の端末（５５，５６）を互いに通信可能な状態で接続することができる。
【００４４】
サブネットワーク５２は無線ＬＡＮを構成している。この規格に適合する無線通信インタフェースを備える移動端末５９，６０は、基地局５７，５８との間で無線通信が可能であり、無線でサブネットワーク５２と接続される。勿論、特定の通信可能エリアの外では基地局５７，５８との通信はできない。
サブネットワーク５３は、公衆無線通信システムであるＰＨＳのネットワークである。図９の例では、サブネットワーク５３には移動端末６１，固定端末６２及びＴＡＰ（ＰＩＡＦＳ用ターミナルアダプタ）６３が接続され、ＴＡＰ６３には基地局６４，６５が接続されている。ＰＨＳの通信規格に沿って構成された無線通信インタフェースを備える移動端末６６，６７は、基地局６４，６５との間で無線通信が可能である。勿論、特定の通信可能エリアの外では基地局６４，６５との通信はできない。
【００４５】
例えば、図９に示す移動端末５９が移動端末５５の近傍に移動した場合には、移動端末５９は基地局５７との無線通信ができなくなる可能性がある。しかし、その位置では移動端末５９を有線でサブネットワーク５１に接続することができる。
一般的なシステムの場合、端末が通信のために利用するネットワークをサブネットワーク５１，５２，５３の間で切り替える場合には、アプリケーションの通信を一旦終了して通信経路を再構築する必要があるため手間がかかる。
【００４６】
本発明を実施する場合には、端末が通信のために利用するネットワークをサブネットワーク５１，５２，５３の間で切り替える場合であっても、アプリケーションの通信を終了することなく自動的に切替を行うことができる。
また、例えば移動端末５５及び固定端末５６に同一のアプリケーションプログラムが存在する場合には、一人のユーザが移動端末５５上のアプリケーションプログラムを利用して通信している途中で、固定端末５６上のアプリケーションプログラムに切り替えて継続的に通信を行うこともできる。
【００４７】
本発明を実施するために用いる各端末（この例では移動端末）は、図１０のように構成される。図１０の移動端末は、サブネットワーク５１との接続を可能にするためにイーサネット通信アダプタ２１を備え、サブネットワーク５２との接続を可能にするために無線ＬＡＮアダプタ２２を備え、サブネットワーク５３との接続を可能にするためにＰＨＳ通信アダプタ２３を備えている。
【００４８】
また、図１０の移動端末はソフトウェア１０としてサーバアプリケーション１１，クライアントアプリケーション１２，プロキシ１３，エージェント１４，リンク切替部１５，リンク１６，１７，１８，位置管理部ＬＲ，セッション管理部ＳＭ及びサービス管理部ＳＲを備えている。
サーバアプリケーション１１は、特定のアプリケーションのサービスを提供するためのプログラムである。クライアントアプリケーション１２は、特定のアプリケーションについてサーバが提供するサービスを利用するためのプログラムである。
【００４９】
プロキシ１３は、ある送信元からある受信先への通信の中継を行うとともに通信の内容をそれ自身の記憶装置に蓄積する。例えば、一時的にプロキシ１３と受信先との間の通信が不能になった場合であっても、送信元からプロキシ１３に入力される通信の内容はプロキシ１３に蓄積されるので、プロキシ１３と受信先との間の通信が回復した場合には、プロキシ１３に蓄積された情報を受信先に送信し通信を継続することができる。
【００５０】
図１０のプロキシ１３は、サーバアプリケーション１１の通信又はクライアントアプリケーション１２の通信を中継することができる。
リンク切替部１５は他の端末との間の通信に利用するリンク１６，１７，１８を切り替える。リンク１６はイーサネット通信アダプタ２１と接続され、リンク１７は無線ＬＡＮアダプタ２２と接続され、リンク１８はＰＨＳ通信アダプタ２３と接続されている。
【００５１】
リンク１６及びイーサネット通信アダプタ２１を利用して通信する場合には、サブネットワーク５１を介して通信することができ、リンク１７及び無線ＬＡＮアダプタ２２を介して通信する場合には、サブネットワーク５２を介して通信することができ、リンク１８及びＰＨＳ通信アダプタ２３を利用する場合には、サブネットワーク５３を介して通信することができる。
【００５２】
つまり、リンク切替部１５で使用するリンク１６，１７，１８を切り替えることにより通信方式を切り替えて、サブネットワーク５１，５２，５３のいずれかに接続することができる。
通信を行う各端末には、それぞれＩＰ（Internet Protocol）アドレスが割り当てられる。また、端末が通信方式を切り替える際には、アドレスの割り当て単位であるサブネットの境界を超えて端末がネットワーク上を移動することになるため、切替のたびに新たなアドレスを用いる。
【００５３】
サービス管理部ＳＲは各端末に備わっているサーバアプリケーション１１，クライアントアプリケーション１２及びプロキシ１３の種類や機能の情報を管理している。
実際には、例えば図１１に示す内容がサービス管理部ＳＲに保持される。図１１の例では、端末Ａ１１はアプリケーションプログラムとしてサーバＢ１１を保持し、プロキシＣ１１を備えている。また、端末Ａ１２はアプリケーションプログラムとしてサーバＢ１２を保持し、プロキシＣ１２を備えている。更に、端末Ａ１３はアプリケーションプログラムとしてクライアントＢ１３を保持し、プロキシＣ１３を備えている。
【００５４】
位置管理部ＬＲは端末毎にＩＰアドレスを管理する。位置管理部ＬＲは、それを備えた端末だけでなく、多数の端末のＩＰアドレスを管理することができる。但し、位置管理の効率向上のため、ならびにリソースの少ない端末でも位置の管理ができるようにするため、端末の移動量及び位置管理に関する記憶可能容量の管理も行う。更に、管理する端末の範囲を限定するために複数の端末をグループで区分して管理する。
【００５５】
実際には、例えば図１２に示すように、端末の識別名Ｅ１０，グループ名Ｅ１１，ＩＰアドレスＥ１２，各ＩＰアドレスの状態（利用可否）Ｅ１３，移動量Ｅ１４，ＬＲの記憶容量及び更新時刻の情報が管理している特定グループの端末毎に保持される。
また、端末の移動などに伴って通信デバイスを切り替えた場合にはその端末のＩＰアドレスが変化するので、この場合には位置管理部ＬＲの保持する内容を更新する。同時に、通信相手が存在する場合には、その通信相手に対して位置情報の更新命令を送信する。すなわち、図１７に示す更新手順を実行する。
【００５６】
また、各端末が位置情報の更新命令を送信する場合には、所定の優先順位を考慮して命令を送信する順序を決定する。例えば、固定端末（デスクトップパソコンなど）５６のように移動量の少ない端末については高い優先順位を与える。また、位置情報の記憶容量（Ｅ１５）が大きい端末についても高い優先順位を与える。
【００５７】
位置管理部ＬＲの管理に用いられる各々のグループには、サブネットの境界を超える範囲に存在する複数の端末を含めることができる。また、１つのサブネット内には複数のグループを共存させることができる。
【００５８】
新たにグループに加入しようとする端末（Ｘ１）は、そのＩＰアドレスを取得し、グループ検索要求をサブネットワーク内にブロードキャストするか、又は既知の特定の端末（Ｘ２）に対してグループ検索要求を送信する。
その後、端末（Ｘ１）はグループ検索要求を受け取った端末（Ｘ２）からの応答を受信すると、その内容からグループの情報を取得し、加入するグループを選択する。
【００５９】
また、端末（Ｘ１）は端末（Ｘ２）に対して選択したグループへの登録要求を送信する。端末（Ｘ２）はこの登録要求を送信した端末（Ｘ１）の位置情報を取得する。
また、登録要求を受信した端末（Ｘ２）がそれに含まれる位置管理部ＬＲの情報を端末（Ｘ１）に送信し、加入した端末（Ｘ１）の位置情報を位置管理部ＬＲの内容に追加することによりグループへの加入手続きが完了する。
【００６０】
各端末に関する位置情報の検索を行う場合には、その端末自身に含まれる位置管理部ＬＲの保持している情報から位置情報の検索を行う。検索できなかった場合には、位置管理部ＬＲの保持している情報に含まれる任意の端末に対して検索要求を送出する。この検索要求に対して結果が返ってきたら、その位置情報を位置管理部ＬＲに追加する。
【００６１】
また、サブネット内の同じグループに属している端末を検索する場合には、ブロードキャストパケットを送信し、それに対する応答に基づいて位置管理部ＬＲに位置情報を登録する。
位置管理部ＬＲには、次に示す機能が含まれている。
（１）端末位置の移動などに伴うＩＰアドレスの変更
（２）ノードの離脱，回線断，障害などに伴うＩＰアドレスの状態の変更
（３）エージェント１４に対する変更の通知
（４）グループへの参加及び離脱
（５）グループ内のノードの位置管理部ＬＲとの間の位置情報の送受信
図１０のセッション管理部ＳＭは、各々の通信についてその通信経路の全体をセッションとして管理している。例えば、図１５においては、セッション１０３を用いてアプリケーション１０１とアプリケーション１０２との間で通信することができる。この場合、セッション１０３にはプロキシ１０４，１０５，１０６が含まれている。
【００６２】
また、セッション１０３は通信コネクション１０７，１０８，１０９，１１０を利用する。通信コネクション１０７は、アプリケーション１０２とプロキシ１０４との間に確立された通信路である。通信コネクション１０８は、プロキシ１０４，１０５の間に確立された通信路である。通信コネクション１０９は、プロキシ１０５，１０６の間に確立された通信路である。通信コネクション１１０は、アプリケーション１０１とプロキシ１０６との間に確立された通信路である。
【００６３】
実際のセッション管理部ＳＭは、例えば図１３に示すような情報Ｇ１１〜Ｇ１８を保持している。情報Ｇ１１は、複数のセッションを区別するための識別子である。情報Ｇ１２は、利用するサーバアプリケーションが存在するノード（端末）の名称を表す。情報Ｇ１３は、利用するサーバアプリケーションに与えられたポート番号を表す。
【００６４】
また、情報Ｇ１４は利用するクライアントアプリケーションが存在するノードの名称を表す。情報Ｇ１５は、利用するクライアントアプリケーションに与えられたポート番号を表す。情報Ｇ１６は、利用するプロキシが存在するノードの名称を表す。情報Ｇ１７は、利用するプロキシに与えられたポートの番号を表す。また、複数のプロキシを中継するように１つのセッションの通信経路を構成している場合には、利用する複数プロキシのそれぞれのノード名，ポート番号及び複数プロキシの接続状態が１つのセッションＩＤ（Ｇ１１）に関連付けられてセッション管理部ＳＭに保持される。
【００６５】
セッション管理部ＳＭが実行する機能としては、各セッションに対するプロキシの追加，プロキシの削除，プロキシの切替や、他の端末に存在するセッション管理部ＳＭとの間の通信がある。
図１０のエージェント１４は、位置管理部ＬＲ，セッション管理部ＳＭ，サービス管理部ＳＲが保持している様々な情報を仲介し、それらの情報の総合的な判断により、プロキシ１３及びリンク切替部１５を制御する。
【００６６】
例えば、所定の通信サービスを継続した状態でそのサービスを現在提供しているサーバアプリケーションを終了させたい場合には、それと同じ種類の代わりのサーバアプリケーションについてサービス管理部ＳＲを用いて検索することができる。
また、位置管理部ＬＲには端末の識別名及びそのＩＰアドレスが保持されているので、切替先のサーバアプリケーションが存在する端末の位置を特定できる。更に、セッション管理部ＳＭで管理されている特定のセッションの情報を利用して後述する処理を行うことにより、サーバアプリケーションを切り替えて通信サービスを継続することができる。
【００６７】
エージェント１４は、リンク切替部１５に対してリンク切替を命令するとともに、リンク切替後、プロキシに通信コネクションの再開処理を依頼する。リンク切替部１５は、新しいリンクへの接続，リンクの切断，ルーティング管理などの機能を有している。また、プロキシは、コネクション下のリンクの切断や変更を隠蔽する機能を有している（図１６参照）。
【００６８】
ある移動元からある移動先にサービスを移動する場合には、そのサービスの通信で利用しているセッションから、移動先のアプリケーション又はプロキシ上に構築されるサービスに対して移動元のサービスの状態を転送することで実現することができる。転送すべきサービスの状態としては、セッションを構成しているアプリケーション及びプロキシの接続状態，送受信しているデータのバイト数，フレーム数などがある。
【００６９】
例えば、携帯型の移動端末を用い、無線回線及びネットワークを介して特定のサーバアプリケーションからストリームデータを受信し閲覧している場合には、端末の表示能力が低いため品質の高いサービスを受けることができない。しかし、ユーザが移動端末から画面の大きい固定端末にサービスを移動すれば、品質の高いサービスを受けることができる。このような移動の場合でも、継続的にサービスを利用することができる。
【００７０】
また、同じサーバアプリケーションが複数の端末に存在する場合には、サーバ側の端末及びアプリケーションを切り替えるようにサービスの提供に利用される通信経路を切り替えることもできる。端末の切替により、サービスの通信速度を改善することも可能である。
サービスの提供に利用される通信経路を切り替える場合や、サーバアプリケーション又はクライアントアプリケーションを切り替える場合の具体例について以下に説明する。ここでは、図１４に示すような通信システムを想定する。
【００７１】
図１４においては移動端末３０(1)〜３０(5)のそれぞれの機能を簡略化して表してある。実際には、移動端末３０(1)〜３０(5)のそれぞれは図１０に示す移動端末と同様の機能を有している。
但し、サーバアプリケーション１１は移動端末３０(1)だけに設けてあり、クライアントアプリケーション１２は移動端末３０(2)及び３０(3)だけに設けてある。また、移動端末３０(5)にはセッション管理部ＳＭが備わっていない。なお、移動端末３０(5)のプロキシ１３を利用する場合には、移動端末３０(5)以外の移動端末３０に備わったセッション管理部ＳＭを利用して制御を行えばよい。
【００７２】
まず、プロキシ及びアプリケーションを切り替える場合について説明する。具体的には、切替前の状態では図２において移動端末３０(1)のサーバアプリケーション１１(1)とプロキシ１３(1)との間に通信コネクション２０１が確立され、プロキシ１３(1)とプロキシ１３(2)との間に通信コネクション２０２が確立され、クライアントアプリケーション１２(2)とプロキシ１３(2)との間に通信コネクション２０３が確立され、サーバアプリケーション１１(1)−プロキシ１３(1)−プロキシ１３(2)−クライアントアプリケーション１２(2)の通信経路を通るようにセッションが形成されている場合を想定している。
【００７３】
ここで、移動端末３０(2)上のクライアントアプリケーション１２(2)の代わりに移動端末３０(3)上のクライアントアプリケーション１２(3)を利用して継続的にサーバアプリケーション１１(1)のサービスを受けようとする場合には、セッション管理部ＳＭ(2)の機能を利用して、図１に示す制御シーケンスを実行する。すなわち、プロキシ１３(2)からプロキシ１３(3)に切り替える。
【００７４】
ユーザの利用状態及び端末間の接続状態を管理している端末のエージェント１４は、必要に応じて（例えばユーザの指示により）アプリケーション（ＡＰ）の切替要求を発生する。
この切替要求は、例えばセッション管理部ＳＭ(2)に通知される。この場合、セッション管理部ＳＭ(2)は図１のステップＳ１１を実行する。すなわち、切替先のクライアントアプリケーション１２(3)との間で通信コネクション２０４が確立された切替先のプロキシ１３(3)に切り替えるために、プロキシ１３(3)に対して切替に関する問い合わせを行う。この問い合わせの際には、該当するセッションのセッションＩＤやプロキシの接続状態の情報もパラメータとしてセッション管理部ＳＭ(2)からプロキシ１３(3)に送信する。
【００７５】
このパラメータには、切替元のプロキシ１３(2)が転送を中継しているファイルのファイル名及び転送を終了したバイト数（ファイル上の現在の転送位置）も含まれている。
問い合わせを受けたプロキシ１３(3)は、受信したパラメータに基づいて、必要なプロセス等を起動し、ステップＳ１２で通信の中継をするための準備を行う。このプロキシ１３(3)は、受信したパラメータに基づいて切替元のプロキシ１３(2)の状態を継承する。
【００７６】
また、この準備においては、必要なアプリケーション１２(3)が起動していない場合には、そのアプリケーション１２(3)をプロキシ１３(3)が起動する。また、アプリケーション１２(3)とプロキシ１３(3)との間の通信コネクション２０４が確立していない場合には、通信コネクション２０４を確立する。
準備が完了したら、ステップＳ１３でプロキシ１３(3)はセッション管理部ＳＭ(2)に対して準備完了通知を送信する。
【００７７】
セッション管理部ＳＭ(2)は、準備完了通知を受信するとステップＳ１４で、切替元のプロキシ１３(2)との間で通信コネクション２０２を確立していたプロキシ１３(1)に対して切替要求を送信する。この切替要求には、パラメータとして切替先のプロキシ１３(3)に関するノード名（Ｇ１６）及びポート番号（Ｇ１７）が含まれている。
【００７８】
プロキシ１３(1)は、切替要求を受信した場合には、切替要求のパラメータ及びセッションＩＤを利用して、プロキシ１３(3)の接続ポイント（端末のＩＰアドレスとプロキシ１３(3)のポート番号）に対して通信コネクション２０５を確立する（Ｓ１５）。
プロキシ１３(3)はプロキシ１３(1)との間で通信コネクション２０５が確立すると、通信コネクション２０５の確立の際に受信したセッションＩＤで定まる特定のセッションについて、通信コネクション２０４及びクライアントアプリケーション１２(3)を関連付ける（Ｓ１６）。これにより、通信コネクション２０５と通信コネクション２０４との間の通信を中継（蓄積転送）するためのプロキシ１３(3)の準備が完了する。
【００７９】
また、プロキシ１３(1)はそれまでに通信コネクション２０２を介して行っていた全ての通信を通信コネクション２０５に切り替える（Ｓ１７）。この切替が完了した後、プロキシ１３(1)はセッション管理部ＳＭ(2)に対して切替の完了通知を送信する（Ｓ１８）。
【００８０】
セッション管理部ＳＭ(2)は、完了通知を受信すると管理しているテーブルの内容を更新する（Ｓ１９）。すなわち、セッションＩＤで定まる特定のセッション（今回の処理で切替を行ったセッション）について、切替後のクライアントアプリケーション１２(3)及びプロキシ１３(3)のノード名及びポート番号ならびにそれらの接続関係を反映するように情報を更新する。
【００８１】
また、セッション管理部ＳＭ(2)は、変更を行ったセッションの情報を管理している他のセッション管理部ＳＭ(1)，ＳＭ(3)，ＳＭ(4)に対して変更した情報を通知する（Ｓ２１）。
以上の制御シーケンスの結果、図２に示すようにサーバアプリケーション１１(1)とクライアントアプリケーション１２(2)との間の通信で提供していたサービスが、サーバアプリケーション１１(1)とクライアントアプリケーション１２(3)との間の通信に切り替わるようにセッション（通信経路）の内容が変更される。
【００８２】
次に、セッションにプロキシを追加する場合について説明する。具体的には、追加前の状態では図４に示すようにサーバアプリケーション１１(1)とプロキシ１３(1)との間に通信コネクション２１１が確立され、プロキシ１３(1)，１３(2)の間に通信コネクション２１２が確立され、プロキシ１３(2)とクライアントアプリケーション１２(2)との間に通信コネクション２１３が確立され、２つのプロキシ１３(1)，１３(2)がサーバアプリケーション１１(1)とクライアントアプリケーション１２(2)との間の通信をを中継するようにセッションが構築されている。
【００８３】
その状態から、通信を継続したままプロキシ１３(1)とプロキシ１３(2)との間にプロキシ１３(3)を追加する場合には、セッション管理部ＳＭ(2)の機能を利用して、図３に示す制御シーケンスを実行する。
端末のエージェント１４は、必要に応じて（例えばユーザの指示により）プロキシの追加要求を発生する。この追加要求は、例えばセッション管理部ＳＭ(2)に通知される。この場合、セッション管理部ＳＭ(2)は図３のステップＳ３１を実行する。
【００８４】
すなわち、追加すべきプロキシ１３(3)に追加の準備をさせるために、セッション管理部ＳＭ(2)は追加の問い合わせを行う。この問い合わせの際には、該当するセッションのセッションＩＤやプロキシの接続状態の情報もパラメータとしてセッション管理部ＳＭ(2)からプロキシ１３(3)に送信する。
このパラメータには、プロキシ１３(2)が転送を中継しているファイルのファイル名及び転送を終了したバイト数（ファイル上の現在の転送位置）も含まれている。
【００８５】
問い合わせを受けたプロキシ１３(3)は、受信したパラメータに基づいて、必要なプロセス等を起動し、ステップＳ３２で通信の中継をするための準備を行う。このプロキシ１３(3)は、受信したパラメータに基づいてプロキシ１３(2)の状態を継承する。準備が完了したら、ステップＳ３３でプロキシ１３(3)はセッション管理部ＳＭ(2)に対して準備完了通知を送信する。
【００８６】
セッション管理部ＳＭ(2)は、準備完了通知を受信すると、ステップＳ３４，Ｓ３５で、追加するプロキシ１３(3)と接続すべきプロキシ１３(1)，１３(2)に対して切替要求を送信する。この切替要求には、パラメータとして追加するプロキシ１３(3)に関するノード名（Ｇ１６）及びポート番号（Ｇ１７）が含まれる。
プロキシ１３(1)及び１３(2)は、切替要求を受信すると、切替要求のパラメータ及びセッションＩＤを利用して、プロキシ１３(3)の接続ポイント（端末のＩＰアドレスとプロキシ１３(3)のポート番号）に対して通信コネクション２１４又は２１５を確立する（Ｓ３６，Ｓ３７）。
【００８７】
プロキシ１３(3)は通信コネクション２１４，２１５が確立すると、それらのコネクションの確立の際に受信したセッションＩＤで定まる特定のセッションについて、通信コネクション２１４と通信コネクション２１５とを関連付ける（Ｓ３８）。これにより、通信コネクション２１４と通信コネクション２１５との間の通信を中継（蓄積転送）するためのプロキシ１３(3)の準備が完了する。
【００８８】
一方、プロキシ１３(1)はそれまでに通信コネクション２１２を介して行っていた全ての通信を通信コネクション２１４に切り替える（Ｓ４１）。この切替が完了した後、プロキシ１３(1)はセッション管理部ＳＭ(2)に対して切替の完了通知を送信する（Ｓ４４）。
同様に、プロキシ１３(2)はそれまでに通信コネクション２１２を介して行っていた全ての通信を通信コネクション２１５に切り替える（Ｓ４０）。この切替が完了した後、プロキシ１３(2)はセッション管理部ＳＭ(2)に対して切替の完了通知を送信する（Ｓ４２）。
【００８９】
セッション管理部ＳＭ(2)は、完了通知を受信すると管理しているテーブルの内容を更新する（Ｓ４５）。すなわち、セッションＩＤで定まる特定のセッション（今回の処理でプロキシの追加を行ったセッション）について、追加したプロキシ１３(3)のノード名及びポート番号ならびにプロキシ間の接続関係を反映するように情報を更新する。
【００９０】
また、セッション管理部ＳＭ(2)は、変更を行ったセッションの情報を管理している他のセッション管理部ＳＭ(1)，ＳＭ(3)，ＳＭ(4)に対して変更した情報を通知する（Ｓ４６）。
以上の制御シーケンスの結果、図４に示すようにサーバアプリケーション１１(1)とクライアントアプリケーション１２(2)との間の通信がプロキシ１３(1)−プロキシ１３(3)−プロキシ１３(2)の経路で中継されるようにセッションの内容が変更される。
【００９１】
次に、セッションからそれまで利用していたプロキシを削除する場合について説明する。具体的には、追加前の状態では図６に示すようにサーバアプリケーション１１(1)とプロキシ１３(1)との間に通信コネクション２２１が確立され、プロキシ１３(1)，１３(3)の間に通信コネクション２２２が確立され、プロキシ１３(3)，１３(2)の間に通信コネクション２２３が確立され、プロキシ１３(2)とクライアントアプリケーション１２(2)との間に通信コネクション２２４が確立され、３つのプロキシ１３(1)，１３(3)，１３(2)がサーバアプリケーション１１(1)とクライアントアプリケーション１２(2)との間の通信をを中継するようにセッションが構築されている。
【００９２】
その状態から、通信を継続したままプロキシ１３(1)とプロキシ１３(2)との間のプロキシ１３(3)を削除（セッションから除外）する場合には、セッション管理部ＳＭ(2)の機能を利用して、図５に示す制御シーケンスを実行する。
端末のエージェント１４は、必要に応じて（例えばユーザの指示により）プロキシの削除要求を発生する。この削除要求は、例えばセッション管理部ＳＭ(2)に通知される。この場合、セッション管理部ＳＭ(2)は図５のステップＳ５１から順に処理を実行する。
【００９３】
セッション管理部ＳＭ(2)は、削除対象のプロキシ１３(3)との間で通信コネクション２２２，２２３を確立しているプロキシ１３(1)及び１３(2)のそれぞれに対して、プロキシ１３(3)に関する削除要求を送信する（Ｓ５１，Ｓ５２）。
プロキシ１３(2)は、削除要求を受信すると、セッションＩＤを利用して、プロキシ１３(2)とプロキシ１３(1)との間の通信コネクション２２５を確立する（Ｓ５３）。
【００９４】
更に、プロキシ１３(2)はそれまでに通信コネクション２２３を介して行っていた全ての通信を通信コネクション２２５に切り替える（Ｓ５４）。この切替が完了した後、プロキシ１３(2)はセッション管理部ＳＭ(2)に対して切替の完了通知を送信する（Ｓ５８）。プロキシ１３(2)とプロキシ１３(3)との間の通信コネクション２２３はプロキシ１３(2)によって切断される（Ｓ５６）。
【００９５】
同様に、プロキシ１３(1)はそれまでに通信コネクション２２２を介して行っていた全ての通信を通信コネクション２２５に切り替える（Ｓ５５）。この切替が完了した後、プロキシ１３(1)はセッション管理部ＳＭ(2)に対して切替の完了通知を送信する（Ｓ５９）。プロキシ１３(1)とプロキシ１３(3)との間の通信コネクション２２２はプロキシ１３(1)によって切断される（Ｓ５７）。
【００９６】
セッション管理部ＳＭ(2)は、完了通知を受信すると管理しているテーブルの内容を更新する（Ｓ６０）。すなわち、セッションＩＤで定まる特定のセッション（今回の処理でプロキシの削除を行ったセッション）について、プロキシ間の接続関係に削除の結果を反映するように情報を更新する。
また、セッション管理部ＳＭ(2)は、変更を行ったセッションの情報を管理している他のセッション管理部ＳＭ(1)，ＳＭ(3)，ＳＭ(4)に対して変更した情報を通知する（Ｓ６１）。
【００９７】
以上の制御シーケンスの結果、図６に示すようにサーバアプリケーション１１(1)とクライアントアプリケーション１２(2)との間の通信がプロキシ１３(1)−プロキシ１３(2)の経路で中継されるようにセッションの内容が変更される。
次に、特定のセッション上で利用しているプロキシを他のプロキシに置き換える場合について説明する。具体的には、追加前の状態では図８に示すようにサーバアプリケーション１１(1)とプロキシ１３(1)との間に通信コネクション２３１が確立され、プロキシ１３(1)，１３(4)の間に通信コネクション２３２が確立され、プロキシ１３(4)，１３(2)の間に通信コネクション２３３が確立され、プロキシ１３(2)とクライアントアプリケーション１２(2)との間に通信コネクション２３４が確立され、３つのプロキシ１３(1)，１３(4)，１３(2)がサーバアプリケーション１１(1)とクライアントアプリケーション１２(2)との間の通信をを中継するようにセッションが構築されている。
【００９８】
その状態から、通信を継続したまま利用しているプロキシ１３(4)をプロキシ１３(5)に置換する場合には、セッション管理部ＳＭ(2)の機能を利用して、図７に示す制御シーケンスを実行する。
【００９９】
端末のエージェント１４は、必要に応じて（例えばユーザの指示により）プロキシの置換要求を発生する。この置換要求は、例えばセッション管理部ＳＭ(2)に通知される。この場合、セッション管理部ＳＭ(2)は図７のステップＳ７１を実行する。
すなわち、置換先のプロキシ１３(5)に中継の準備をさせるために、セッション管理部ＳＭ(2)は置換の問い合わせを行う。この問い合わせの際には、該当するセッションのセッションＩＤやプロキシの接続状態の情報もパラメータとしてセッション管理部ＳＭ(2)からプロキシ１３(5)に送信する。
【０１００】
このパラメータには、置換元のプロキシ１３(4)が転送を中継しているファイルのファイル名及び転送を終了したバイト数（ファイル上の現在の転送位置）も含まれている。
問い合わせを受けたプロキシ１３(5)は、受信したパラメータに基づいて、必要なプロセス等を起動し、ステップＳ７２で通信の中継をするための準備を行う。このプロキシ１３(5)は、受信したパラメータに基づいて置換元のプロキシ１３(4)の状態を継承する。準備が完了したら、ステップＳ７３でプロキシ１３(5)はセッション管理部ＳＭ(2)に対して準備完了通知を送信する。
【０１０１】
セッション管理部ＳＭ(2)は、準備完了通知を受信すると、ステップＳ７４，Ｓ７５で、置換元のプロキシ１３(4)との間に通信コネクション２３２，２３３を確立しているプロキシ１３(1)，１３(2)に対して切替要求を送信する。この切替要求には、パラメータとして置換先のプロキシ１３(5)に関するノード名（Ｇ１６）及びポート番号（Ｇ１７）が含まれる。
【０１０２】
プロキシ１３(1)及び１３(2)は、切替要求を受信すると、切替要求のパラメータ及びセッションＩＤを利用して、プロキシ１３(5)の接続ポイント（端末のＩＰアドレスとプロキシ１３(3)のポート番号）に対して通信コネクション２３５又は２３６を確立する（Ｓ７６，Ｓ７７）。
【０１０３】
置換先のプロキシ１３(5)は、通信コネクション２３５，２３６が確立すると、それらのコネクションの確立の際に受信したセッションＩＤで定まる特定のセッションについて、通信コネクション２３５と通信コネクション２３６とを関連付ける（Ｓ７８）。これにより、通信コネクション２３５と通信コネクション２３６との間の通信を中継（蓄積転送）するためのプロキシ１３(5)の準備が完了する。
【０１０４】
一方、プロキシ１３(2)はそれまでに通信コネクション２３３を介して行っていた全ての通信を通信コネクション２３６に切り替える（Ｓ８０）。この切替が完了した後、プロキシ１３(2)はセッション管理部ＳＭ(2)に対して切替の完了通知を送信する（Ｓ８２）。
同様に、プロキシ１３(1)はそれまでに通信コネクション２３２を介して行っていた全ての通信を通信コネクション２３５に切り替える（Ｓ８１）。この切替が完了した後、プロキシ１３(1)はセッション管理部ＳＭ(2)に対して切替の完了通知を送信する（Ｓ８３）。
【０１０５】
通信コネクション２３２，２３３から通信コネクション２３５，２３６への切替が終了した後で、不要になった通信コネクション２３２，２３３は切断される（Ｓ８４，Ｓ８５）。
セッション管理部ＳＭ(2)は、完了通知を受信すると管理しているテーブルの内容を更新する（Ｓ８６）。すなわち、セッションＩＤで定まる特定のセッション（今回の処理でプロキシの置換を行ったセッション）について、プロキシ間の接続関係に置換の結果を反映するように情報を更新する。
【０１０６】
また、セッション管理部ＳＭ(2)は、変更を行ったセッションの情報を管理している他のセッション管理部ＳＭ(1)，ＳＭ(3)，ＳＭ(4)に対して変更した情報を通知する（Ｓ８７）。
以上の制御シーケンスの結果、図８に示すようにサーバアプリケーション１１(1)とクライアントアプリケーション１２(2)との間の通信がプロキシ１３(1)−プロキシ１３(5)−プロキシ１３(2)の経路で中継されるようにセッションの内容が変更される。
【０１０７】
なお、サーバアプリケーション１１とクライアントアプリケーション１２との間で行われる通信には、セッション毎に異なる固有のセッションＩＤが割り当てられる。また、プロキシの接続ポイントは、ネットワーク上での位置と接続要求の受付ポートを表す。プロトコルとしてＴＣＰ／ＩＰを想定する場合には、接続ポイントはＩＰアドレスとプロキシがリッスンしているポート番号になる。
【０１０８】
また、例えばセッションの通信経路を切り替えるために通信コネクションを切り替える際には一時的に通信ができなくなるが、そのセッションに含まれている少なくとも１つのプロキシがアプリケーションの送出する通信内容を蓄積し、通信が可能になったときには蓄積された情報を送信して通信回復作業を自動的に行う。従って、通信の途中で通信経路を切り替える場合であっても、ユーザが特別な操作を行うことなくそのまま通信を継続することができる。
【０１０９】
本発明の機能の概略は、図１６に示す移動モデルで表すことができる。すなわち、ユーザが使用する端末が移動して通信方式が切り替わった場合や、ユーザが使用する端末を切り替えた場合でも、同じサービスを継続的に同じユーザに提供することができる。
ここで扱うサービスとは、各セッションを通してアプリケーション間で送受信される通信内容，それに付随する通信プロトコル（ｈｔｔｐ等）及び表現方法（再生，ブラウジング等）を意味する。
【０１１０】
サービスを移動する場合には、同じセッションＩＤで示される移動元のセッションから移動先のセッションに対してサービスの状態を転送することにより、同じ状態でサービスを継続することができる。
各端末（ノード）は、図１６に示すようにリンク層のアドレス空間にマッピングされる。従って、ノードの移動はノードとアドレスとの対応関係を変更することで実現できる。また、各端末は複数の通信デバイスをもつことが可能であり、それぞれが固有のアドレスを保持することができる。
【０１１１】
上記実施の形態の通信システムにおける位置管理の方式について性能を評価するために、計算機を用いてシミュレーションを実施した。シミュレーションの条件は次の通りである。
（１）端末の移動間隔：グループを構成している多数の端末のうち(１／３)は平均移動時間が３０分、残りの(２／３)の端末は平均移動時間を１０分とする。
【０１１２】
（２）端末の通信待機時間は２０分とし、通信時間は５０分とする。
（３）位置管理部ＬＲの記憶容量：多数の端末のうち(１／３)のＬＲは全ての端末の位置情報を保持可能、他の(１／３)の端末のＬＲは(１／２)の端末の位置情報を保持可能、残りの(１／３)の端末のＬＲは(１／４)の端末の位置情報を保持可能と仮定する。
【０１１３】
（４）１２００分間に発行された位置情報更新命令の数及び位置管理部ＬＲの検索成功率を４００試行分測定した。但し、最初の１００分間については統計から除外。
（５）位置管理部ＬＲが位置情報更新命令を送出する際には、自らが保持している全ての位置情報を送信する。受信側のＬＲでは、位置情報のタイムスタンプにより取捨選択して保持している位置情報を更新する。
【０１１４】
（６）位置情報更新命令を発行する際の端末の優先順位については２種類の方式を評価する。「Method A」の方式では位置管理部ＬＲが自らの保持する位置情報を更新した場合に全ての端末に対して位置情報更新命令を発行する。「Method B」の方式では、移動間隔が３０分でかつ全ての端末の位置情報を保持可能な記憶容量を有する端末のＬＲのみが全ての端末に対して位置情報更新命令を発行し、残りの端末の位置管理部ＬＲについては、移動間隔が３０分でかつ全ての端末の位置情報を保持可能な記憶容量を有する端末のみに対して位置情報更新命令を発行する。
【０１１５】
なお、「Method A」の方式では各端末の位置が更新されるたびに全ての端末に位置更新命令が発行されるので通信量は多くなるが、優れた位置管理能力が得られる。
上記シミュレーションの結果が図１８〜図２０に示されている。図１８は、位置情報更新命令の発行数を示している。また、図１９及び図２０は位置検索成功率を示している。図１９の位置検索成功率は、特定の端末の位置管理部ＬＲが保持している位置情報の検索及び他の端末の位置管理部ＬＲの検索によって相手端末の位置情報の取得に成功した割合である。また、図２０の位置検索成功率は、特定の端末の位置管理部ＬＲが保持している位置情報のみを検索して相手端末の位置情報の取得に成功した割合である。
【０１１６】
図１８，図１９を参照すると、「Method A」に比べて「Method B」の方が通信コストが低減（６０〜８０％減）され、位置検索能力の劣化も許容できる範囲であることが分かる。また、この効果はグループを構成している端末数が大きいほど顕著であり、位置検索成功率の差も小さくなる。従って、各端末の移動量や位置管理部ＬＲの記憶容量を考慮して位置情報更新命令の発行対象となる端末を制限することにより、各端末の位置管理の負荷を分担するとともに通信量を抑制することができる。
【０１１７】
また、図２０から分かるように、他の端末に存在する位置情報を検索しなくても、２５〜４５％の端末の位置を正しく検出することができる。従って、端末が一時的にネットワークから離脱している場合であっても、それ自身の位置管理部ＬＲが保持する位置情報のみの検索により、ネットワークへの再接続の手がかりを得ることが可能である。
【０１１８】
（第２の実施の形態）
本発明の通信コネクション確立方法のもう１つの実施の形態について、図２２及び図２３を参照して説明する。この形態は、請求項１〜請求項４に対応する。図２２及び図２３は、それぞれサービスの移動例（１，２）を示すシーケンス図である。
【０１１９】
この形態では、ＨＴＴＰの通信を行うことを想定しているので、アプリケーションとしてブラウザ５及びＷｅｂサーバ７を用いる。
図２２の例では、ノード８（Ａ），８（Ｂ）にはクライアントアプリケーションとして動作するブラウザ５が配置されているので、ノード８（Ａ），８（Ｂ）はクライアントノードとして機能する。また、ノード８（Ｃ）にはサーバアプリケーションとして動作するＷｅｂサーバ７が配置されているので、ノード８（Ｃ）はサーバノードとして機能する。
【０１２０】
また、図２３の例では、ノード８（Ａ）にはクライアントアプリケーションとして動作するブラウザ５（Ａ），５（Ｂ）が配置されているので、ノード８（Ａ）はクライアントノードとして機能する。また、図２３のノード８（Ｃ）にはサーバアプリケーションとして動作するＷｅｂサーバ７が配置されているので、ノード８（Ｃ）はサーバノードとして機能する。
【０１２１】
図２２の例について動作を説明する。
まず、ブラウザ５（Ａ）からプロキシ６（Ａ），６（Ｂ）を介してＷｅｂサーバ７に要求を行う（Ｃ１１）。この要求に対するＷｅｂサーバ７の応答が、プロキシ６（Ｃ），６（Ａ）を介してブラウザ５（Ａ）に伝送される（Ｃ１２）。このとき、セッションが成立する。また、セッション毎にそれを区別するためのセッションＩＤが割り当てられる。
【０１２２】
この後で、プロキシ６（Ｃ）がサービス移動要求を受け付ける（Ｃ１３）。その場合、プロキシ６（Ｃ）は通信を中断し（Ｃ１４）、移動先のノード８（Ｂ）のプロキシ６（Ｂ１）に接続する（Ｃ１５）。
この場合、移動先のプロキシ６（Ｂ１）は該当するセッションのセッションＩＤを含むＵＲＬを引数として、ブラウザ５（Ｂ）を起動する（Ｃ１６）。
【０１２３】
起動されたブラウザ５（Ｂ）は、起動の際に指定されたＵＲＬを用いてプロキシ６（Ｂ２）に接続する（Ｃ１７）。このプロキシ６（Ｂ２）は、セッションＩＤに基づいて、ブラウザ５（Ｂ）の通信とサーバノードであるノード８（Ｃ）のプロキシ６（Ｃ）とを結び付けてデータの転送を行う（Ｃ１８）。
このようにして、サービスの連続性を確保したまま、クライアントノード簡をサービスが移動する。
【０１２４】
次に、図２３の例について動作を説明する。
まず、ブラウザ５（Ａ）からプロキシ６（Ａ），６（Ｃ）を介してＷｅｂサーバ７に要求を行う（Ｃ２１）。それに対するＷｅｂサーバ７の応答が、プロキシ６（Ｃ），６（Ａ）を介してブラウザ５（Ａ）に転送される（Ｃ２２）。このとき、セッションが設立する。また、セッション毎にそれを区別するためのセッションＩＤが割り当てられる。
【０１２５】
この後で、プロキシ６（Ａ）がサービス移動要求を受け付ける（Ｃ２３）。その場合、プロキシ６（Ａ）は該当するセッションのセッションＩＤを含むＵＲＬを引数として、ブラウザ５（Ｂ）を起動する（Ｃ２４）。
起動されたブラウザ５（Ｂ）は、起動の際に指定されたＵＲＬを用いてプロキシ６（Ｂ２）に接続する（Ｃ２５）。このプロキシ６（Ｂ２）は、セッションＩＤに基づいて、ブラウザ５（Ｂ）の通信とサーバノードであるノード８（Ｃ）のプロキシ６（Ｃ）とを結び付けてデータの転送を行う（Ｃ２６）。
【０１２６】
このようにして、サービスの連続性を確保したまま、クライアントノード簡をサービスが移動する。
（第３の実施の形態）
本発明のもう１つの実施の形態について、図２４〜図２６を参照して説明する。この形態は、請求項１及び請求項２に対応する。
【０１２７】
図２４は、セッションにプロキシを追加する場合の簡略化された制御シーケンスを示すシーケンス図である。図２５は、セッションからプロキシを削除する場合の簡略化された制御シーケンスを示すシーケンス図である。図２６は、セッション上のプロキシを置換する場合の簡略化された制御シーケンスを示すシーケンス図である。
【０１２８】
この形態は、第１の実施の形態の変形例であり、制御シーケンスの内容が第１の実施の形態よりも簡略化されている。また、この形態においても図１０に示すような構成の移動端末を用いることを想定している。但し、図１０に示す位置管理部ＬＲ，サービス管理部ＳＲ，リンク切替部１５については必ずしも必要とはしない。
【０１２９】
図２４〜図２６に示す動作の内容については第１の実施の形態と同様であるが、各図の制御の内容について以下に説明する。
まず、図４の場合と同様にセッションにプロキシ１３（３）を追加する場合について、図２４を参照して説明する。
この例では、図４において、クライアントアプリケーション１２（２），プロキシ１３（２），プロキシ１３（１），サーバアプリケーション１１（１）の順に通信コネクションが確立され、クライアントアプリケーション１２（２）とサーバアプリケーション１１（１）との間にセッションが構築されている状態から、クライアントアプリケーション１２（２），プロキシ１３（２），プロキシ１３（３），プロキシ１３（１），サーバアプリケーション１１（１）の順に通信コネクションが確立されて、クライアントアプリケーション１２（２）とサーバアプリケーション１１（１）との間のセッションの経路が変更される場合を想定している。
【０１３０】
すなわち、プロキシ１３（２）とプロキシ１３（１）との間にもう１つのプロキシ１３（３）を追加するための動作を表している。
エージェントソフトウェア（図１０の１４）は、ユーザ又は端末間の接続状態に関する命令や管理を制御している。このエージェントソフトウェアからのプロキシ切替要求を移動端末３０（２）が受信すると、移動端末３０（２）はそれをセッション管理部ＳＭ（２）に通知する。
【０１３１】
この場合、セッション管理部ＳＭ（２）は、追加されるプロキシ１３（３）に接続されるプロキシ１３（１），１３（２）に対して、プロキシ１３（３）の名前と接続ポイントをパラメータとして切替要求を送信する（Ｓ３４，Ｓ３５）。切替要求を受信したプロキシ１３（１），１３（２）は、受信したパラメータとセッション識別子（ＩＤ）を用いてプロキシ１３（３）の接続ポイントに対して、セッション識別子に対応する通信コネクションを確立する（Ｓ３６，Ｓ３７）。
【０１３２】
その後、プロキシ１３（１）はプロキシ１３（２）との間の通信コネクションで行っていた通信を全てプロキシ１３（３）の通信コネクションに切り替える（Ｓ４０，Ｓ４１）。
追加されるプロキシ１３（３）には２つの通信コネクションが確立される。このプロキシ１３（３）は、通信コネクションの確立時に受信したセッション識別子に基づいて、２つの通信コネクションを関連付け、蓄積転送が可能な状態にする。
【０１３３】
次に、図６の場合と同様にセッションからプロキシ１３（３）を削除する場合について、図２５を参照して説明する。
この例では、図６において、クライアントアプリケーション１２（２），プロキシ１３（２），プロキシ１３（３），プロキシ１３（１），サーバアプリケーション１１（１）の順に通信コネクションが確立され、クライアントアプリケーション１２（２）とサーバアプリケーション１１（１）との間のセッションが構築されている状態から、クライアントアプリケーション１２（２），プロキシ１３（２），プロキシ１３（１），サーバアプリケーション１１（１）の順に通信コネクションが確立されて、クライアントアプリケーション１２（２）とサーバアプリケーション１１（１）との間にセッションの経路が変更される場合を想定している。
【０１３４】
すなわち、セッションからプロキシ１３（３）を削除するための動作を表している。
エージェントソフトウェアからのプロキシ削除要求を移動端末３０（２）が受信すると、移動端末３０（２）はそれをセッション管理部ＳＭ（２）に通知する。
この場合、セッション管理部ＳＭ（２）は、プロキシ１３（１），１３（２）に対して削除要求を送信する（Ｓ５１，Ｓ５２）。
【０１３５】
プロキシ１３（２）は、削除要求を受信すると、セッション識別子を用いてプロキシ１３（１）との間でコネクションを確立する。また、プロキシ１３（３）との間で行われていた通信を全てプロキシ１３（１）との間の通信コネクションに切り替える。
また、プロキシ１３（１）が削除要求を受信するとともにプロキシ１３（２）から通信コネクションを確立された場合には、プロキシ１３（１）はプロキシ１３（３）との間の通信コネクションで行われていた通信を全てプロキシ１３（２）との間の通信コネクションに切り替える。
【０１３６】
次に、図８の場合と同様にセッション上のプロキシ１３（４），１３（５）を置換する場合について、図２６を参照して説明する。
この例では、図８において、クライアントアプリケーション１２（２），プロキシ１３（２），プロキシ１３（４），プロキシ１３（１），サーバアプリケーション１１（１）の順に通信コネクションが確立され、クライアントアプリケーション１２（２）とサーバアプリケーション１１（１）との間にセッションが構築されている状態から、クライアントアプリケーション１２（２），プロキシ１３（２），プロキシ１３（５），プロキシ１３（１），サーバアプリケーション１１（１）の順に通信コネクションが確立されて、クライアントアプリケーション１２（２）とサーバアプリケーション１１（１）との間のセッションの経路が変更される場合を想定している。
【０１３７】
すなわち、セッション上のプロキシ１３（４）をプロキシ１３（５）に置換するための動作を表している。
エージェントソフトウェアからのプロキシ置き換え要求を移動端末３０（２）が受信すると、移動端末３０（２）はそれをセッション管理部ＳＭ（２）に通知する。
【０１３８】
この場合、セッション管理部ＳＭ（２）は、通信コネクションを持っているプロキシ１３（１），１３（２）に対してプロキシ１３（５）の名前及び接続ポイントをパラメータとして含む切替要求を送信する（Ｓ７４，Ｓ７５）。
切替要求を受信したプロキシ１３（１），１３（２）は、受信したパラメータに基づいて、プロキシ１３（５）の接続ポイントに対してセッション識別子に対応する通信コネクションを確立する。
【０１３９】
その後、プロキシ１３（１）はプロキシ１３（４）との間の通信コネクションで行っていた通信を全てプロキシ１３（５）との間の通信コネクションに切り替える。
同様に、プロキシ１３（２）はプロキシ１３（４）との間の通信コネクションで行っていた通信を全てプロキシ１３（５）との間の通信コネクションに切り替える。
【０１４０】
セッションに追加されるプロキシ１３（５）は、２つの通信コネクションが確立された後で、コネクション確立時に受信したセッション識別子に基づいて２つの通信コネクションを関連付け、蓄積転送が可能な状態にする。
【０１４１】
【発明の効果】
以上の通り、本発明の通信コネクション確立方法によれば、通信の途中であっても、ユーザが利用するアプリケーションが実行される端末を切り替えたり、利用している通信経路を切り替えることができる。しかも、このような切替を行う場合でも、アプリケーションを再起動したり通信コネクションを確立するための特別な操作をユーザが行う必要はなく、ユーザは継続的に通信サービスを受けることができる。
【０１４２】
また、通信経路等を切り替える際には、サービスの連続性が損なわれないように予め定めた手順で複数のプロキシ間の通信コネクションを切り替えるので、同じユーザに対するサービスの連続性が保証される。
また、通信経路中のプロキシの切替え，追加，削除及び置き換えができるので、同じ端末を移動しながら様々な位置で利用する場合には、冗長な経路が回避されるように通信経路を切り替えたり、不要な中継処理を行うプロキシを通信経路から削除することができるので、通信効率の向上，ネットワークリソースの低減，プロキシの動作している端末のネットワークからの離脱のサービス継続性の確保，障害発生時のフォールトトレラント性の向上等が実現する。
【０１４３】
更に、通信中に利用しているアプリケーションを切替えることができるので、移動環境では各時点でもっとも適するアプリケーションをユーザが選択的に利用することができ、利便性が向上する。アプリケーションを切り替える場合でも、通信サービスの連続性は保証される。
【図面の簡単な説明】
【図１】プロキシ及びアプリケーションを切り替える場合の制御シーケンスを示すシーケンス図である。
【図２】プロキシ及びアプリケーションを切り替える場合の通信経路の例を示すブロック図である。
【図３】セッションにプロキシを追加する場合の制御シーケンスを示すシーケンス図である。
【図４】セッションにプロキシを追加する場合の通信経路の例を示すブロック図である。
【図５】セッションからプロキシを削除する場合の制御シーケンスを示すシーケンス図である。
【図６】セッションからプロキシを削除する場合の通信経路の例を示すブロック図である。
【図７】セッション上のプロキシを置換する場合の制御シーケンスを示すシーケンス図である。
【図８】セッション上のプロキシを置換する場合の通信経路の例を示すブロック図である。
【図９】通信システムの構成例を示すブロック図である。
【図１０】移動端末の構成例を示すブロック図である。
【図１１】サービス管理部ＳＲが保持する情報の例を示す模式図である。
【図１２】位置管理部ＬＲが保持する情報の例を示す模式図である。
【図１３】セッション管理部ＳＭが保持する情報の例を示す模式図である。
【図１４】通信システムの構成例を示すブロック図である。
【図１５】ネットワークの構成例を示すブロック図である。
【図１６】ノード及びサービスの移動モデルを示すブロック図である。
【図１７】端末の移動時の位置情報更新手順を示すシーケンス図である。
【図１８】位置情報更新命令の発行数を示すグラフである。
【図１９】位置検索成功率を示すグラフである。
【図２０】位置検索成功率を示すグラフである。
【図２１】ネットワークの構成例を示すブロック図である。
【図２２】サービスの移動例（１）を示すシーケンス図である。
【図２３】サービスの移動例（２）を示すシーケンス図である。
【図２４】セッションにプロキシを追加する場合の簡略化された制御シーケンスを示すシーケンス図である。
【図２５】セッションからプロキシを削除する場合の簡略化された制御シーケンスを示すシーケンス図である。
【図２６】セッション上のプロキシを置換する場合の簡略化された制御シーケンスを示すシーケンス図である。
【符号の説明】
１，３  アプリケーション
２  プロキシ
４  ノード
５  ブラウザ
６  プロキシ
７  Ｗｅｂサーバ
８  ノード
９  データベース
１０  ソフトウェア
１１  サーバアプリケーション
１２  クライアントアプリケーション
１３  プロキシ
１４  エージェント
１５  リンク切替部
１６，１７，１８  リンク
２１  イーサネット通信アダプタ
２２  無線ＬＡＮアダプタ
２３  ＰＨＳ通信アダプタ
３０  移動端末
４０  ネットワーク
５１，５２，５３  サブネットワーク
５４  広域ネットワーク
５５，５９，６０，６１，６６，６７  移動端末
５６，６２  固定端末
５７，５８，６４，６５  基地局
６３  ＴＡＰ
１０１，１０２  アプリケーション
１０３  セッション
１０４，１０５，１０６  プロキシ
１０７，１０８，１０９，１１０  通信コネクション
ＬＲ  位置管理部
ＳＭ  セッション管理部
ＳＲ  サービス管理部
【図１】
0003732745.tif 000002
【図２】
0003732745.tif 000003
【図３】
0003732745.tif 000004
【図４】
0003732745.tif 000005
【図５】
0003732745.tif 000006
【図６】
0003732745.tif 000007
【図７】
0003732745.tif 000008
【図８】
0003732745.tif 000009
【図９】
0003732745.tif 000010
【図１０】
0003732745.tif 000011
【図１１】
0003732745.tif 000012
【図１２】
0003732745.tif 000013
【図１３】
0003732745.tif 000014
【図１４】
0003732745.tif 000015
【図１５】
0003732745.tif 000016
【図１６】
0003732745.tif 000017
【図１７】
0003732745.tif 000018
【図１８】
0003732745.tif 000019
【図１９】
0003732745.tif 000020
【図２０】
0003732745.tif 000021
【図２１】
0003732745.tif 000022
【図２２】
0003732745.tif 000023
【図２３】
0003732745.tif 000024
【図２４】
0003732745.tif 000025
【図２５】
0003732745.tif 000026
【図２６】
0003732745.tif 000027