JP3732745B2 - Communication connection establishment method - Google Patents
Communication connection establishment method Download PDFInfo
- Publication number
- JP3732745B2 JP3732745B2 JP2001045351A JP2001045351A JP3732745B2 JP 3732745 B2 JP3732745 B2 JP 3732745B2 JP 2001045351 A JP2001045351 A JP 2001045351A JP 2001045351 A JP2001045351 A JP 2001045351A JP 3732745 B2 JP3732745 B2 JP 3732745B2
- Authority
- JP
- Japan
- Prior art keywords
- proxy
- communication
- session
- communication connection
- management unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Mobile Radio Communication Systems (AREA)
- Computer And Data Communications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
- Communication Control (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、ネットワーク上で接続された複数の端末同士がサーバアプリケーション及びクライアントアプリケーションにより通信する場合に、通信経路の切替などのために用いられる通信コネクション確立方法に関する。
【0002】
【従来の技術】
利用者が通信を行っているアプリケーションの利用をやめて他のアプリケーションで通信を行おうとする場合には、通信を中断してから、他のアプリケーションで通信を再開する必要がある。しかしながら、この場合は通信が切断されてしまうので、相手のアプリケーションとの通信手続きを最初からやり直す必要がある。すなわち、あるアプリケーションに対する通信サービスを途中から他のアプリケーションに切り替えることはできない。
【0003】
例えば、ノートパソコンやPDAのような移動端末は持ち運びができるため様々な場所で利用される可能性があるし、移動しながら利用される場合もある。このような移動端末をオンラインで利用する場合には、例えばイーサネット,構内無線LAN(Local Area Network),公衆無線通信(例えばPHS(Personal Handy-phone System))等に対応する通信アダプタを用いて移動端末をネットワークに接続する必要がある。
【0004】
移動端末が利用される様々な場所においては、1つ又は複数の通信媒体を利用して移動端末をネットワークに接続することが可能である。予め複数種類の通信媒体に対応する複数の通信アダプタを搭載しておけば、1台の移動端末を様々な場所で、必要に応じて通信方式を切り替えてネットワークに接続することができる。
【0005】
実際に複数の端末同士がサーバアプリケーション及びクライアントアプリケーションにより通信する場合には、まず端末のハードウェアをネットワークに接続し、サービスを提供するサーバアプリケーションと前記サービスを利用するクライアントアプリケーションとの間に通信コネクションを確立する必要がある。
また、例えば障害などによって一時的に通信が途絶えた場合でも通信の継続を可能にするために、サーバアプリケーションとクライアントアプリケーションとの間にプロキシと呼ばれる中継装置を介在するように通信経路を構築するのが一般的である。
【0006】
【発明が解決しようとする課題】
上記のような従来の通信システムにおいては、サーバアプリケーションとクライアントアプリケーションとの間の通信を開始する際にその通信経路が決定される。従って、通信の途中では利用するサーバアプリケーション,クライアントアプリケーション及びプロキシの組み合わせを変更することはできない。
【0007】
サーバアプリケーション,クライアントアプリケーション又はプロキシを変更する場合には、通信を一旦終了し、通信コネクションを解放し、サーバアプリケーションとクライアントアプリケーションとの間の各通信コネクションをつなぎ直す必要がある。
しかしながら、移動端末が移動しながら通信する場合には、移動に伴ってサーバアプリケーション,クライアントアプリケーション及びプロキシの位置関係が変わるため、冗長な通信経路が形成される可能性がある。例えば、不必要なプロキシを中継して通信を継続する場合が生じる。
【0008】
また、例えば通信中の端末に障害が発生した場合には、通信を一旦終了し、通信コネクションを解放し、障害が生じた端末のアプリケーションやプロキシの機能を他の端末で置き換えるように通信経路を再構築して最初から通信をやり直す必要がある。
また、例えばユーザが利用する端末を画面の小さい移動端末から画面の大きい固定端末(例えばデスクトップパソコン)に切り替えようとする場合にも、移動端末の通信を終了し、通信コネクションを解放し、固定端末を用いて新たな通信経路を構築し、通信を最初からやり直す必要がある。
【0009】
そこで、本発明はサーバアプリケーションとクライアントアプリケーションとの間の通信を終了することなく、それらのアプリケーションの切替や通信経路の切替を可能にすることを目的とする。
【0010】
【課題を解決するための手段】
請求項1は、複数のアプリケーションと、通信を中継する複数のプロキシと、それらを接続するネットワークとが設けられた通信システムの制御に用いる通信コネクション確立方法であって、複数のアプリケーションが2つ以上のプロキシを通る通信経路を介して互いに通信している場合に、所定の切替要求に応答して、前記通信経路上に配置された第1のプロキシが接続先の第2のプロキシを第3のプロキシに切り替えて通信を継続することを特徴とする。
【0011】
請求項1においては、通信経路を切り替える必要が生じた場合には、第1のプロキシの制御により、第1のプロキシの接続先が第2のプロキシから第3のプロキシに切り替わる。従って、切替後は第2のプロキシを利用せずに通信を継続することができる。
なお、切替先の第3のプロキシについては切替の際に指定するか、あるいは予め定めておく必要がある。
【0012】
請求項2は、複数のアプリケーションと、通信を中継する複数のプロキシと、それらを接続するネットワークとが設けられた通信システムの制御に用いる通信コネクション確立方法であって、第1のアプリケーションと第2のアプリケーションとが2つ以上のプロキシを通る通信経路を介して互いに通信している場合に、前記通信経路上に配置され第1のアプリケーションと第1のプロキシとの間で中継を行う第2のプロキシが、所定の切替要求に応答して通信相手の第1のアプリケーションを他の第3のアプリケーションに切り替えて通信を継続することを特徴とする。
【0013】
請求項2においては、利用するアプリケーションを切り替える必要が生じた場合には、第2のプロキシの制御により、第2のプロキシとの間で通信を行うアプリケーションが第1のアプリケーションから第3のアプリケーションに切り替わり、そのまま通信が継続される。
従って、利用者は通信を切断することなく通信に使用するアプリケーションを切り替えることができる。なお、切替先の第3のアプリケーションについては切替の際に指定するか、あるいは予め定めておく必要がある。
【0014】
請求項3は、請求項1の通信コネクション確立方法において、クライアントアプリケーションとサーバアプリケーションとが複数のプロキシを介して通信する場合に、クライアントアプリケーションの接続要求に対してサーバアプリケーションからの応答がクライアントアプリケーションに転送された場合にその転送経路をセッションとして管理するとともに、それぞれのセッションにセッションIDを割り当てておき、前記第1のプロキシは、サービス移動のための切替要求を受け付けた場合に、通信の中継を中断してから移動先の前記第3のプロキシに接続し、その後で中継を再開し、前記第3のプロキシは、該当するセッションIDを含む引数を用いて新たなクライアントアプリケーションを起動し、起動された新たなクライアントアプリケーションは、前記第3のプロキシに接続して指定されたセッションIDを含む情報を前記第3のプロキシに送信し、前記第3のプロキシは、セッションIDに基づいて、前記第1のプロキシの通信と前記新たなクライアントアプリケーションの通信とを結びつけてデータの中継を行うことを特徴とする。
【0015】
請求項3においては、セッションIDを用いて複数のセッションをそれぞれ区別している。また、前記第1のプロキシの制御により、第1のプロキシの接続先が移動先の第3のプロキシに切り替わる。更に、前記第3のプロキシの制御により新たなクライアントアプリケーションが自動的に起動され、この新たなクライアントアプリケーションの通信と前記第1のプロキシの通信とが自動的に結び付けられる。
【0016】
このため、サーバアプリケーションの通信サービスの提供先を、通信を切断することなく元のクライアントアプリケーションから新たなクライアントアプリケーションに移動することができる。また、通信サービスの連続性を確保することができる。
請求項4は、請求項2の通信コネクション確立方法において、クライアントアプリケーションとサーバアプリケーションとが複数のプロキシを介して通信する場合に、クライアントアプリケーションの接続要求に対してサーバアプリケーションからの応答がクライアントアプリケーションに転送された場合にその転送経路をセッションとして管理するとともに、それぞれのセッションにセッションIDを割り当てておき、前記第2のプロキシは、サービス移動のための切替要求を受け付けた場合に、通信の中継を中断して該当するセッションIDを含む引数を用いて新たなクライアントアプリケーションを起動し、起動された新たなクライアントアプリケーションは、前記第2のプロキシに接続して指定されたセッションIDを含む情報を前記第2のプロキシに送信し、前記第2のプロキシは、セッションIDに基づいて、サーバアプリケーションとの間に通信路を持つプロキシの通信と前記新たなクライアントアプリケーションの通信とを結びつけてデータの中継を再開することを特徴とする。
【0017】
請求項4においては、セッションIDを用いて複数のセッションをそれぞれ区別している。また、要求が発生した場合には前記第2のプロキシの制御により新たなクライアントアプリケーションが自動的に起動される。更に、起動した新たなクライアントアプリケーションの制御により、それと第2のプロキシとの間に通信経路が形成される。また、第2のプロキシの制御により、該当するセッションを利用してサーバアプリケーションと起動された新たなクライアントアプリケーションとの間で通信が行われるように通信サービスの経路が切り替わる。
【0018】
このため、サーバアプリケーションの通信サービスの提供先を、通信を切断することなく元のクライアントアプリケーションから新たなクライアントアプリケーションに移動することができる。また、通信サービスの連続性を確保することができる。
請求項5の通信コネクション確立方法は、サービスを要求するクライアントアプリケーションを含む端末と、サービスを提供するサーバアプリケーションを含む端末と、通信の内容を蓄積及び中継するプロキシを含む端末とが接続された通信システムの制御に用いる通信コネクション確立方法であって、各々の端末に存在するクライアントアプリケーション又はサーバアプリケーション及びプロキシを表す第1の情報と、各々の端末の特定に利用される第2の情報とを保持しておき、1つ以上のプロキシを中継して形成されるサーバアプリケーションとクライアントアプリケーションとの間の通信経路をセッションとして管理し、セッション毎に、少なくともセッションの識別子,当該セッションを利用しているクライアントアプリケーション及びサーバアプリケーションを特定する第3の情報,当該セッションが利用しているプロキシを特定する第4の情報及び当該セッションが利用しているプロキシの接続点を表す第5の情報を保持し、利用するサーバアプリケーション又はクライアントアプリケーションを提供する端末の切替、もしくはサーバアプリケーションとクライアントアプリケーションとの間の通信に利用している通信経路上のプロキシの切替が必要な場合に、該当するセッションの情報と前記第1の情報及び第2の情報とを利用して、サーバアプリケーションとそれに接続されたプロキシとの間、クライアントアプリケーションとそれに接続されたプロキシとの間、サーバアプリケーションとクライアントアプリケーションとの間を中継する複数プロキシの間の少なくとも1つの通信コネクションを自動的に切り替えることを特徴とする。
【0019】
請求項5においては、サーバアプリケーションとクライアントアプリケーションとの間の通信経路がセッションとして管理され、セッション毎に、セッションの識別子,当該セッションを利用しているクライアントアプリケーション及びサーバアプリケーションを特定する第3の情報,当該セッションが利用しているプロキシを特定する第4の情報及び当該セッションが利用しているプロキシの接続点を表す第5の情報を保持する。また、各々の端末に存在するクライアントアプリケーション又はサーバアプリケーション及びプロキシを表す第1の情報と、各々の端末の特定に利用される第2の情報とを保持する。
【0020】
前記第1の情報を参照することにより、各々の端末に存在するクライアントアプリケーション,サーバアプリケーション及びプロキシを調べることができる。従って、例えばクライアントアプリケーション又はサーバアプリケーションを切り替える場合に、同じアプリケーションが存在する端末を自動的に検出することができる。
【0021】
また、前記第2の情報を参照することにより、各々の端末のアドレスなどを特定することができる。
更に、セッションの識別子で区別されるそれぞれのセッションの情報から、利用しているクライアントアプリケーション,サーバアプリケーション及びプロキシを特定するとともにプロキシの接続点を検出することができるので、例えば現在利用しているセッションに含まれている特定のプロキシを他のプロキシに切り替えることができる。
【0022】
この場合の切替は自動的に行われるので、通信の途中で、その通信を終了することなく通信経路を切り替えることができる。切替の間の通信の内容は必要に応じてプロキシに蓄積され、切替が完了した後で通信が継続するようにプロキシが中継動作を行う。
このため、例えば利用しているサーバアプリケーションを含む端末(切替元)に障害が発生した場合には、それと同じサーバアプリケーションを含む他の端末(切替先)に切り替えるようにセッションの構成を変更し、切替先の端末を利用してそのまま通信を継続することができる。このような切替を行う場合であっても、通信サービスの連続性は保証される。
【0023】
同様に、クライアントアプリケーションを切り替えることもできるし、セッションを構成するプロキシの数や中継経路を変更することもできる。
請求項6は、請求項5の通信コネクション確立方法において、プロキシとサーバアプリケーション又はクライアントアプリケーションとを同一の端末上に備えた少なくとも1台の移動端末を前記通信システムの端末として利用し、前記移動端末が実際の通信に利用する通信装置の切替に伴う前記第2の情報の変化を同じ移動端末上に配置されるプロキシにより吸収することを特徴とする。
【0024】
請求項6においては、利用する同一の端末上にプロキシとサーバアプリケーション又はクライアントアプリケーションとが存在するので、端末の移動に伴ってその端末のアドレスなどに変化が生じた場合であっても、その端末上ではサーバアプリケーション又はクライアントアプリケーションとプロキシとの間の通信コネクションを変更する必要はない。
【0025】
このため、他の通信コネクションを切り替える時には前記プロキシの蓄積機能によって通信内容が保持されるので、通信コネクションを切り替えた後で通信を継続することができる。
請求項7は、請求項5の通信コネクション確立方法において、前記セッションの情報を管理するセッション管理部が存在し、あるセッションについて実際に中継をしているプロキシである第1のプロキシから別のプロキシである第2のプロキシへの切替要求が発生した場合に、その切替要求をいずれか1つの端末が前記セッション管理部に通知し、前記セッション管理部から切替先の第2のプロキシに対して切替の準備状況に関する問い合わせを行い、第2のプロキシから切替準備が完了したことを示す通知が前記セッション管理部に届いた場合に、第1のプロキシとの間で通信コネクションを確立している第3のプロキシに対して、前記セッション管理部から切替先の第2のプロキシに関する情報とともに切替要求を送信し、第3のプロキシが、セッションの識別子を用いて切替先の第2のプロキシとの間で新たな通信コネクションを確立し、第1のプロキシと第3のプロキシとの間の通信コネクションを介して行われていた通信が第3のプロキシと第2のプロキシとの間の通信コネクションを通るように切替え、全ての通信コネクションの切替が完了した場合に、前記セッション管理部に対して切替完了を通知し、切替先の第2のプロキシは、第3のプロキシとの間の第1の通信コネクションの確立が完了した場合に、通知されたセッションの識別子に基づいて、第2のプロキシとサーバアプリケーション又はクライアントアプリケーションとの間に確立された第2の通信コネクションと前記第1の通信コネクションとを関連付けて当該セッションの通信経路を切り替えることを特徴とする。
【0026】
請求項7においては、1つのセッションについて第1のプロキシから第2のプロキシへの切替を自動的に行うことができる。これにより、第1のプロキシに接続されたアプリケーションの機能(サービス)を第2のプロキシに接続されたアプリケーションに移動することができる。
請求項8は、請求項5の通信コネクション確立方法において、前記セッションの情報を管理するセッション管理部が存在し、あるセッションについて、実際に通信を中継している第1のプロキシと第2のプロキシとの間に、新たな第3のプロキシを追加するためのプロキシの追加要求が発生した場合に、その追加要求をいずれか1つの端末が前記セッション管理部に通知し、前記セッション管理部から追加される第3のプロキシに対して追加の準備状況に関する問い合わせを行い、第3のプロキシから準備完了を示す通知を前記セッション管理部が受けた場合に、前記セッション管理部は、第1のプロキシ及び第2のプロキシのそれぞれに対して追加要求を送信し、第1のプロキシ及び第2のプロキシのそれぞれは、前記追加要求に応答して、セッションの識別子を用いて第3のプロキシとの間で新たな第1の通信コネクション又は第2の通信コネクションを確立し、第1のプロキシ及び第2のプロキシが中継している通信が第1の通信コネクション又は第2の通信コネクションを通るように切り替えて、全ての通信について利用する通信コネクションの切替が完了した場合に、前記セッション管理部に対して切替完了を通知し、第1のプロキシと第3のプロキシとの間の第1の通信コネクション及び第2のプロキシと第3のプロキシとの間の第2の通信コネクションの両方が確立された場合に、通知されたセッションの識別子に基づいて、第1の通信コネクションと第2の通信コネクションとを関連付けることを特徴とする。
【0027】
請求項8においては、1つのセッションについて実際に通信を中継している第1のプロキシと第2のプロキシとの間に、新たな第3のプロキシを追加することができる。
また、請求項8では切替を行う前に切替先のプロキシの状態を確認するので、確実に切替可能なプロキシに対して切替を実行することができる。また、切替の後で完了の通知を行うので、切替元のプロキシは切替の後でそれまで使用していたリソースを開放することができる。
【0028】
請求項9は、請求項5の通信コネクション確立方法において、前記セッションの情報を管理するセッション管理部が存在し、あるセッションについて、実際に通信を中継している第1のプロキシに関する削除要求が発生した場合に、その削除要求をいずれか1つの端末が前記セッション管理部に通知し、前記セッション管理部は、第1のプロキシとの間で第1の通信コネクション及び第2の通信コネクションを確立している第2のプロキシ及び第3のプロキシのそれぞれに対して削除要求を送信し、第2のプロキシ及び第3のプロキシは、それらの間に第3の通信コネクションを確立し、第1の通信コネクション及び第2の通信コネクションを利用している通信を第3の通信コネクションに切り替えて、通信コネクションの切替が完了した場合には、第2のプロキシ及び第3のプロキシは、それぞれ前記セッション管理部に対して切替完了を通知することを特徴とする。
【0029】
請求項9においては、1つのセッションについて、実際に通信を中継している第1のプロキシをそのセッションから除外することができる。例えば、第1のプロキシを削除した方が通信経路が短くなる場合や、第1のプロキシが不必要になった場合には、第1のプロキシを削除して通信経路を最適化することができる。通信の途中で第1のプロキシを削除した場合でも、その通信サービスの連続性は請求項9の制御シーケンス及び他のプロキシの働きにより保証される。
【0030】
請求項10は、請求項5の通信コネクション確立方法において、前記セッションの情報を管理するセッション管理部が存在し、あるセッションについて、第1のプロキシと第2のプロキシとの間に第1の通信コネクションが確立され、第2のプロキシと第3のプロキシとの間に第2の通信コネクションが確立され、第1の通信コネクション及び第2の通信コネクションを利用し、第1のプロキシ,第2のプロキシ及び第3のプロキシを中継して通信を行っている状態で、第2のプロキシから新たな第4のプロキシへの置換要求が発生した場合に、その置換要求をいずれか1つの端末が前記セッション管理部に通知し、前記セッション管理部は、第4のプロキシに対して置換の準備に関する問い合わせを行い、第4のプロキシから準備完了を示す通知を前記セッション管理部が受けた場合には、前記セッション管理部は第1のプロキシ及び第3のプロキシに対して切替要求を送信し、第1のプロキシ及び第3のプロキシのそれぞれは、前記切替要求に応答して、セッションの識別子に基づき置換先の第4のプロキシとの間に第3の通信コネクション及び第4の通信コネクションを確立し、第1のプロキシ及び第3のプロキシのそれぞれは、第1の通信コネクション及び第2の通信コネクションを介して行われていた通信を第3の通信コネクション及び第4の通信コネクションを通るように切り替えて、切り替えた全ての通信コネクションについて通信に利用する通信コネクションの切替が完了した後で、第1のプロキシ及び第3のプロキシのそれぞれが前記セッション管理部に対して切替完了を通知し、第3の通信コネクション及び第4の通信コネクションが確立された後で、通知されたセッションの識別子に基づいて第3の通信コネクションと第4の通信コネクションとを関連付けることを特徴とする。
【0031】
請求項10においては、1つのセッションについて、第1のプロキシ,第2のプロキシ及び第3のプロキシを中継して通信を行っている状態で、第2のプロキシから新たな第4のプロキシへの置換を行うことができる。例えば、第2のプロキシから第4のプロキシへ置換した方が通信経路が短くなる場合には、置換を行うことにより通信経路を最適化することができる。
【0032】
通信の途中で置換を行った場合でも、その通信サービスの連続性は請求項10の制御シーケンス及びプロキシの働きにより保証される。
なお、本発明を適用するネットワークについては、例えば図21に示すように様々な形態が考えられる。互いに通信を行うアプリケーション1,3は、プロキシ2を介して通信路を確立する。プロキシ2は、通信の中継を行う。
【0033】
図21の(a)では、2つのアプリケーション1,3の間に1つのプロキシ2を介在して通信路を確立してある。また、図21の(b)では、2つのアプリケーション1,3の間に2つのプロキシ2(1),2(2)を介在して通信路を確立してある。
【0034】
アプリケーション1,3やプロキシ2は、現実にはコンピュータなどの通信ノード(以下、ノードと記載する)の内部にプロセスとして存在する。ノードの配置や構成については様々な形態が考えられる。
図21の(c)では、アプリケーション1及びプロキシ2(1)が同じノード4(1)上に配置され、プロキシ2(2)はノード4(2)上に配置され、アプリケーション3はノード4(3)上に配置されている。
【0035】
図21の(c)に示すように、各ノードには、プロキシ又はアプリケーションあるいはそれらの両方を搭載することができる。複数のアプリケーションの間の通信は少なくとも1つのプロキシを介して行われる。
また、互いに通信する複数のアプリケーションの間に複数のプロキシを介在することにより、プロキシ間で発生する通信の切断や通信媒体の変化などを吸収することが可能であり、ノードの移動が可能になる。
【0036】
また、通信経路上のプロキシやアプリケーションの接続関係を変更することにより、ネットワークサービスをノード間にまたがって移動させることが可能になる。請求項1はプロキシの按続関係を変吏することを特徴としている。また、請求項2はアプリケーションの按続閑係を変吏することを特徴としている。
按続関係を様々に変更することにより、通信に用いるノードやアプリケーションの自由な変更が可能になり、ユーザの利便性を高めることができる。
【0037】
例えば、ユーザが屋内にいる場合には有線の広帯域の回線を用いて大画面のノードでサービスを受け、ユーザが屋外に移動した場合には携帯端末のノードにサービスを移すとともに、サービスの質よりもモビリティを優先させるように通信環境を対応させることができる。
【0038】
【発明の実施の形態】
(第1の実施の形態)
本発明の通信コネクション確立方法の1つの実施の形態について図1〜図20を参照して説明する。この形態は、請求項1,請求項2及び請求項5〜請求項10に対応する。
【0039】
図1はプロキシ及びアプリケーションを切り替える場合の制御シーケンスを示すシーケンス図である。図2はプロキシ及びアプリケーションを切り替える場合の通信経路の例を示すブロック図である。図3はセッションにプロキシを追加する場合の制御シーケンスを示すシーケンス図である。図4はセッションにプロキシを追加する場合の通信経路の例を示すブロック図である。
【0040】
図5はセッションからプロキシを削除する場合の制御シーケンスを示すシーケンス図である。図6はセッションからプロキシを削除する場合の通信経路の例を示すブロック図である。図7はセッション上のプロキシを置換する場合の制御シーケンスを示すシーケンス図である。図8はセッション上のプロキシを置換する場合の通信経路の例を示すブロック図である。
【0041】
図9は通信システムの構成例を示すブロック図である。図10は移動端末の構成例を示すブロック図である。図11はサービス管理部SRが保持する情報の例を示す模式図である。図12は位置管理部LRが保持する情報の例を示す模式図である。図13はセッション管理部SMが保持する情報の例を示す模式図である。
図14は通信システムの構成例を示すブロック図である。図15はネットワークの構成例を示すブロック図である。図16はノード及びサービスの移動モデルを示すブロック図である。図17は端末の移動時の位置情報更新手順を示すシーケンス図である。
【0042】
この形態では、請求項5の第1の情報は図11のB11〜B13及びC11〜C13に相当し、第2の情報は図12のE10,E12に相当する。また、請求項5のセッションの識別子は図13のG11に相当し、第3の情報は図13のG12〜G15に相当し、第4の情報は図13のG16に相当し、第5の情報は図13のG17に相当する。
【0043】
この形態では、例えば図9に示すような通信システムに本発明を適用する場合を想定している。図9の例では、3種類のサブネットワーク51,52,53が広域ネットワーク54を介して互いに接続されている。
サブネットワーク51においては、イーサネットの規格に沿って構成された通信インタフェースを介して、有線で多数の端末(55,56)を互いに通信可能な状態で接続することができる。
【0044】
サブネットワーク52は無線LANを構成している。この規格に適合する無線通信インタフェースを備える移動端末59,60は、基地局57,58との間で無線通信が可能であり、無線でサブネットワーク52と接続される。勿論、特定の通信可能エリアの外では基地局57,58との通信はできない。
サブネットワーク53は、公衆無線通信システムであるPHSのネットワークである。図9の例では、サブネットワーク53には移動端末61,固定端末62及びTAP(PIAFS用ターミナルアダプタ)63が接続され、TAP63には基地局64,65が接続されている。PHSの通信規格に沿って構成された無線通信インタフェースを備える移動端末66,67は、基地局64,65との間で無線通信が可能である。勿論、特定の通信可能エリアの外では基地局64,65との通信はできない。
【0045】
例えば、図9に示す移動端末59が移動端末55の近傍に移動した場合には、移動端末59は基地局57との無線通信ができなくなる可能性がある。しかし、その位置では移動端末59を有線でサブネットワーク51に接続することができる。
一般的なシステムの場合、端末が通信のために利用するネットワークをサブネットワーク51,52,53の間で切り替える場合には、アプリケーションの通信を一旦終了して通信経路を再構築する必要があるため手間がかかる。
【0046】
本発明を実施する場合には、端末が通信のために利用するネットワークをサブネットワーク51,52,53の間で切り替える場合であっても、アプリケーションの通信を終了することなく自動的に切替を行うことができる。
また、例えば移動端末55及び固定端末56に同一のアプリケーションプログラムが存在する場合には、一人のユーザが移動端末55上のアプリケーションプログラムを利用して通信している途中で、固定端末56上のアプリケーションプログラムに切り替えて継続的に通信を行うこともできる。
【0047】
本発明を実施するために用いる各端末(この例では移動端末)は、図10のように構成される。図10の移動端末は、サブネットワーク51との接続を可能にするためにイーサネット通信アダプタ21を備え、サブネットワーク52との接続を可能にするために無線LANアダプタ22を備え、サブネットワーク53との接続を可能にするためにPHS通信アダプタ23を備えている。
【0048】
また、図10の移動端末はソフトウェア10としてサーバアプリケーション11,クライアントアプリケーション12,プロキシ13,エージェント14,リンク切替部15,リンク16,17,18,位置管理部LR,セッション管理部SM及びサービス管理部SRを備えている。
サーバアプリケーション11は、特定のアプリケーションのサービスを提供するためのプログラムである。クライアントアプリケーション12は、特定のアプリケーションについてサーバが提供するサービスを利用するためのプログラムである。
【0049】
プロキシ13は、ある送信元からある受信先への通信の中継を行うとともに通信の内容をそれ自身の記憶装置に蓄積する。例えば、一時的にプロキシ13と受信先との間の通信が不能になった場合であっても、送信元からプロキシ13に入力される通信の内容はプロキシ13に蓄積されるので、プロキシ13と受信先との間の通信が回復した場合には、プロキシ13に蓄積された情報を受信先に送信し通信を継続することができる。
【0050】
図10のプロキシ13は、サーバアプリケーション11の通信又はクライアントアプリケーション12の通信を中継することができる。
リンク切替部15は他の端末との間の通信に利用するリンク16,17,18を切り替える。リンク16はイーサネット通信アダプタ21と接続され、リンク17は無線LANアダプタ22と接続され、リンク18はPHS通信アダプタ23と接続されている。
【0051】
リンク16及びイーサネット通信アダプタ21を利用して通信する場合には、サブネットワーク51を介して通信することができ、リンク17及び無線LANアダプタ22を介して通信する場合には、サブネットワーク52を介して通信することができ、リンク18及びPHS通信アダプタ23を利用する場合には、サブネットワーク53を介して通信することができる。
【0052】
つまり、リンク切替部15で使用するリンク16,17,18を切り替えることにより通信方式を切り替えて、サブネットワーク51,52,53のいずれかに接続することができる。
通信を行う各端末には、それぞれIP(Internet Protocol)アドレスが割り当てられる。また、端末が通信方式を切り替える際には、アドレスの割り当て単位であるサブネットの境界を超えて端末がネットワーク上を移動することになるため、切替のたびに新たなアドレスを用いる。
【0053】
サービス管理部SRは各端末に備わっているサーバアプリケーション11,クライアントアプリケーション12及びプロキシ13の種類や機能の情報を管理している。
実際には、例えば図11に示す内容がサービス管理部SRに保持される。図11の例では、端末A11はアプリケーションプログラムとしてサーバB11を保持し、プロキシC11を備えている。また、端末A12はアプリケーションプログラムとしてサーバB12を保持し、プロキシC12を備えている。更に、端末A13はアプリケーションプログラムとしてクライアントB13を保持し、プロキシC13を備えている。
【0054】
位置管理部LRは端末毎にIPアドレスを管理する。位置管理部LRは、それを備えた端末だけでなく、多数の端末のIPアドレスを管理することができる。但し、位置管理の効率向上のため、ならびにリソースの少ない端末でも位置の管理ができるようにするため、端末の移動量及び位置管理に関する記憶可能容量の管理も行う。更に、管理する端末の範囲を限定するために複数の端末をグループで区分して管理する。
【0055】
実際には、例えば図12に示すように、端末の識別名E10,グループ名E11,IPアドレスE12,各IPアドレスの状態(利用可否)E13,移動量E14,LRの記憶容量及び更新時刻の情報が管理している特定グループの端末毎に保持される。
また、端末の移動などに伴って通信デバイスを切り替えた場合にはその端末のIPアドレスが変化するので、この場合には位置管理部LRの保持する内容を更新する。同時に、通信相手が存在する場合には、その通信相手に対して位置情報の更新命令を送信する。すなわち、図17に示す更新手順を実行する。
【0056】
また、各端末が位置情報の更新命令を送信する場合には、所定の優先順位を考慮して命令を送信する順序を決定する。例えば、固定端末(デスクトップパソコンなど)56のように移動量の少ない端末については高い優先順位を与える。また、位置情報の記憶容量(E15)が大きい端末についても高い優先順位を与える。
【0057】
位置管理部LRの管理に用いられる各々のグループには、サブネットの境界を超える範囲に存在する複数の端末を含めることができる。また、1つのサブネット内には複数のグループを共存させることができる。
【0058】
新たにグループに加入しようとする端末(X1)は、そのIPアドレスを取得し、グループ検索要求をサブネットワーク内にブロードキャストするか、又は既知の特定の端末(X2)に対してグループ検索要求を送信する。
その後、端末(X1)はグループ検索要求を受け取った端末(X2)からの応答を受信すると、その内容からグループの情報を取得し、加入するグループを選択する。
【0059】
また、端末(X1)は端末(X2)に対して選択したグループへの登録要求を送信する。端末(X2)はこの登録要求を送信した端末(X1)の位置情報を取得する。
また、登録要求を受信した端末(X2)がそれに含まれる位置管理部LRの情報を端末(X1)に送信し、加入した端末(X1)の位置情報を位置管理部LRの内容に追加することによりグループへの加入手続きが完了する。
【0060】
各端末に関する位置情報の検索を行う場合には、その端末自身に含まれる位置管理部LRの保持している情報から位置情報の検索を行う。検索できなかった場合には、位置管理部LRの保持している情報に含まれる任意の端末に対して検索要求を送出する。この検索要求に対して結果が返ってきたら、その位置情報を位置管理部LRに追加する。
【0061】
また、サブネット内の同じグループに属している端末を検索する場合には、ブロードキャストパケットを送信し、それに対する応答に基づいて位置管理部LRに位置情報を登録する。
位置管理部LRには、次に示す機能が含まれている。
(1)端末位置の移動などに伴うIPアドレスの変更
(2)ノードの離脱,回線断,障害などに伴うIPアドレスの状態の変更
(3)エージェント14に対する変更の通知
(4)グループへの参加及び離脱
(5)グループ内のノードの位置管理部LRとの間の位置情報の送受信
図10のセッション管理部SMは、各々の通信についてその通信経路の全体をセッションとして管理している。例えば、図15においては、セッション103を用いてアプリケーション101とアプリケーション102との間で通信することができる。この場合、セッション103にはプロキシ104,105,106が含まれている。
【0062】
また、セッション103は通信コネクション107,108,109,110を利用する。通信コネクション107は、アプリケーション102とプロキシ104との間に確立された通信路である。通信コネクション108は、プロキシ104,105の間に確立された通信路である。通信コネクション109は、プロキシ105,106の間に確立された通信路である。通信コネクション110は、アプリケーション101とプロキシ106との間に確立された通信路である。
【0063】
実際のセッション管理部SMは、例えば図13に示すような情報G11〜G18を保持している。情報G11は、複数のセッションを区別するための識別子である。情報G12は、利用するサーバアプリケーションが存在するノード(端末)の名称を表す。情報G13は、利用するサーバアプリケーションに与えられたポート番号を表す。
【0064】
また、情報G14は利用するクライアントアプリケーションが存在するノードの名称を表す。情報G15は、利用するクライアントアプリケーションに与えられたポート番号を表す。情報G16は、利用するプロキシが存在するノードの名称を表す。情報G17は、利用するプロキシに与えられたポートの番号を表す。また、複数のプロキシを中継するように1つのセッションの通信経路を構成している場合には、利用する複数プロキシのそれぞれのノード名,ポート番号及び複数プロキシの接続状態が1つのセッションID(G11)に関連付けられてセッション管理部SMに保持される。
【0065】
セッション管理部SMが実行する機能としては、各セッションに対するプロキシの追加,プロキシの削除,プロキシの切替や、他の端末に存在するセッション管理部SMとの間の通信がある。
図10のエージェント14は、位置管理部LR,セッション管理部SM,サービス管理部SRが保持している様々な情報を仲介し、それらの情報の総合的な判断により、プロキシ13及びリンク切替部15を制御する。
【0066】
例えば、所定の通信サービスを継続した状態でそのサービスを現在提供しているサーバアプリケーションを終了させたい場合には、それと同じ種類の代わりのサーバアプリケーションについてサービス管理部SRを用いて検索することができる。
また、位置管理部LRには端末の識別名及びそのIPアドレスが保持されているので、切替先のサーバアプリケーションが存在する端末の位置を特定できる。更に、セッション管理部SMで管理されている特定のセッションの情報を利用して後述する処理を行うことにより、サーバアプリケーションを切り替えて通信サービスを継続することができる。
【0067】
エージェント14は、リンク切替部15に対してリンク切替を命令するとともに、リンク切替後、プロキシに通信コネクションの再開処理を依頼する。リンク切替部15は、新しいリンクへの接続,リンクの切断,ルーティング管理などの機能を有している。また、プロキシは、コネクション下のリンクの切断や変更を隠蔽する機能を有している(図16参照)。
【0068】
ある移動元からある移動先にサービスを移動する場合には、そのサービスの通信で利用しているセッションから、移動先のアプリケーション又はプロキシ上に構築されるサービスに対して移動元のサービスの状態を転送することで実現することができる。転送すべきサービスの状態としては、セッションを構成しているアプリケーション及びプロキシの接続状態,送受信しているデータのバイト数,フレーム数などがある。
【0069】
例えば、携帯型の移動端末を用い、無線回線及びネットワークを介して特定のサーバアプリケーションからストリームデータを受信し閲覧している場合には、端末の表示能力が低いため品質の高いサービスを受けることができない。しかし、ユーザが移動端末から画面の大きい固定端末にサービスを移動すれば、品質の高いサービスを受けることができる。このような移動の場合でも、継続的にサービスを利用することができる。
【0070】
また、同じサーバアプリケーションが複数の端末に存在する場合には、サーバ側の端末及びアプリケーションを切り替えるようにサービスの提供に利用される通信経路を切り替えることもできる。端末の切替により、サービスの通信速度を改善することも可能である。
サービスの提供に利用される通信経路を切り替える場合や、サーバアプリケーション又はクライアントアプリケーションを切り替える場合の具体例について以下に説明する。ここでは、図14に示すような通信システムを想定する。
【0071】
図14においては移動端末30(1)〜30(5)のそれぞれの機能を簡略化して表してある。実際には、移動端末30(1)〜30(5)のそれぞれは図10に示す移動端末と同様の機能を有している。
但し、サーバアプリケーション11は移動端末30(1)だけに設けてあり、クライアントアプリケーション12は移動端末30(2)及び30(3)だけに設けてある。また、移動端末30(5)にはセッション管理部SMが備わっていない。なお、移動端末30(5)のプロキシ13を利用する場合には、移動端末30(5)以外の移動端末30に備わったセッション管理部SMを利用して制御を行えばよい。
【0072】
まず、プロキシ及びアプリケーションを切り替える場合について説明する。具体的には、切替前の状態では図2において移動端末30(1)のサーバアプリケーション11(1)とプロキシ13(1)との間に通信コネクション201が確立され、プロキシ13(1)とプロキシ13(2)との間に通信コネクション202が確立され、クライアントアプリケーション12(2)とプロキシ13(2)との間に通信コネクション203が確立され、サーバアプリケーション11(1)−プロキシ13(1)−プロキシ13(2)−クライアントアプリケーション12(2)の通信経路を通るようにセッションが形成されている場合を想定している。
【0073】
ここで、移動端末30(2)上のクライアントアプリケーション12(2)の代わりに移動端末30(3)上のクライアントアプリケーション12(3)を利用して継続的にサーバアプリケーション11(1)のサービスを受けようとする場合には、セッション管理部SM(2)の機能を利用して、図1に示す制御シーケンスを実行する。すなわち、プロキシ13(2)からプロキシ13(3)に切り替える。
【0074】
ユーザの利用状態及び端末間の接続状態を管理している端末のエージェント14は、必要に応じて(例えばユーザの指示により)アプリケーション(AP)の切替要求を発生する。
この切替要求は、例えばセッション管理部SM(2)に通知される。この場合、セッション管理部SM(2)は図1のステップS11を実行する。すなわち、切替先のクライアントアプリケーション12(3)との間で通信コネクション204が確立された切替先のプロキシ13(3)に切り替えるために、プロキシ13(3)に対して切替に関する問い合わせを行う。この問い合わせの際には、該当するセッションのセッションIDやプロキシの接続状態の情報もパラメータとしてセッション管理部SM(2)からプロキシ13(3)に送信する。
【0075】
このパラメータには、切替元のプロキシ13(2)が転送を中継しているファイルのファイル名及び転送を終了したバイト数(ファイル上の現在の転送位置)も含まれている。
問い合わせを受けたプロキシ13(3)は、受信したパラメータに基づいて、必要なプロセス等を起動し、ステップS12で通信の中継をするための準備を行う。このプロキシ13(3)は、受信したパラメータに基づいて切替元のプロキシ13(2)の状態を継承する。
【0076】
また、この準備においては、必要なアプリケーション12(3)が起動していない場合には、そのアプリケーション12(3)をプロキシ13(3)が起動する。また、アプリケーション12(3)とプロキシ13(3)との間の通信コネクション204が確立していない場合には、通信コネクション204を確立する。
準備が完了したら、ステップS13でプロキシ13(3)はセッション管理部SM(2)に対して準備完了通知を送信する。
【0077】
セッション管理部SM(2)は、準備完了通知を受信するとステップS14で、切替元のプロキシ13(2)との間で通信コネクション202を確立していたプロキシ13(1)に対して切替要求を送信する。この切替要求には、パラメータとして切替先のプロキシ13(3)に関するノード名(G16)及びポート番号(G17)が含まれている。
【0078】
プロキシ13(1)は、切替要求を受信した場合には、切替要求のパラメータ及びセッションIDを利用して、プロキシ13(3)の接続ポイント(端末のIPアドレスとプロキシ13(3)のポート番号)に対して通信コネクション205を確立する(S15)。
プロキシ13(3)はプロキシ13(1)との間で通信コネクション205が確立すると、通信コネクション205の確立の際に受信したセッションIDで定まる特定のセッションについて、通信コネクション204及びクライアントアプリケーション12(3)を関連付ける(S16)。これにより、通信コネクション205と通信コネクション204との間の通信を中継(蓄積転送)するためのプロキシ13(3)の準備が完了する。
【0079】
また、プロキシ13(1)はそれまでに通信コネクション202を介して行っていた全ての通信を通信コネクション205に切り替える(S17)。この切替が完了した後、プロキシ13(1)はセッション管理部SM(2)に対して切替の完了通知を送信する(S18)。
【0080】
セッション管理部SM(2)は、完了通知を受信すると管理しているテーブルの内容を更新する(S19)。すなわち、セッションIDで定まる特定のセッション(今回の処理で切替を行ったセッション)について、切替後のクライアントアプリケーション12(3)及びプロキシ13(3)のノード名及びポート番号ならびにそれらの接続関係を反映するように情報を更新する。
【0081】
また、セッション管理部SM(2)は、変更を行ったセッションの情報を管理している他のセッション管理部SM(1),SM(3),SM(4)に対して変更した情報を通知する(S21)。
以上の制御シーケンスの結果、図2に示すようにサーバアプリケーション11(1)とクライアントアプリケーション12(2)との間の通信で提供していたサービスが、サーバアプリケーション11(1)とクライアントアプリケーション12(3)との間の通信に切り替わるようにセッション(通信経路)の内容が変更される。
【0082】
次に、セッションにプロキシを追加する場合について説明する。具体的には、追加前の状態では図4に示すようにサーバアプリケーション11(1)とプロキシ13(1)との間に通信コネクション211が確立され、プロキシ13(1),13(2)の間に通信コネクション212が確立され、プロキシ13(2)とクライアントアプリケーション12(2)との間に通信コネクション213が確立され、2つのプロキシ13(1),13(2)がサーバアプリケーション11(1)とクライアントアプリケーション12(2)との間の通信をを中継するようにセッションが構築されている。
【0083】
その状態から、通信を継続したままプロキシ13(1)とプロキシ13(2)との間にプロキシ13(3)を追加する場合には、セッション管理部SM(2)の機能を利用して、図3に示す制御シーケンスを実行する。
端末のエージェント14は、必要に応じて(例えばユーザの指示により)プロキシの追加要求を発生する。この追加要求は、例えばセッション管理部SM(2)に通知される。この場合、セッション管理部SM(2)は図3のステップS31を実行する。
【0084】
すなわち、追加すべきプロキシ13(3)に追加の準備をさせるために、セッション管理部SM(2)は追加の問い合わせを行う。この問い合わせの際には、該当するセッションのセッションIDやプロキシの接続状態の情報もパラメータとしてセッション管理部SM(2)からプロキシ13(3)に送信する。
このパラメータには、プロキシ13(2)が転送を中継しているファイルのファイル名及び転送を終了したバイト数(ファイル上の現在の転送位置)も含まれている。
【0085】
問い合わせを受けたプロキシ13(3)は、受信したパラメータに基づいて、必要なプロセス等を起動し、ステップS32で通信の中継をするための準備を行う。このプロキシ13(3)は、受信したパラメータに基づいてプロキシ13(2)の状態を継承する。準備が完了したら、ステップS33でプロキシ13(3)はセッション管理部SM(2)に対して準備完了通知を送信する。
【0086】
セッション管理部SM(2)は、準備完了通知を受信すると、ステップS34,S35で、追加するプロキシ13(3)と接続すべきプロキシ13(1),13(2)に対して切替要求を送信する。この切替要求には、パラメータとして追加するプロキシ13(3)に関するノード名(G16)及びポート番号(G17)が含まれる。
プロキシ13(1)及び13(2)は、切替要求を受信すると、切替要求のパラメータ及びセッションIDを利用して、プロキシ13(3)の接続ポイント(端末のIPアドレスとプロキシ13(3)のポート番号)に対して通信コネクション214又は215を確立する(S36,S37)。
【0087】
プロキシ13(3)は通信コネクション214,215が確立すると、それらのコネクションの確立の際に受信したセッションIDで定まる特定のセッションについて、通信コネクション214と通信コネクション215とを関連付ける(S38)。これにより、通信コネクション214と通信コネクション215との間の通信を中継(蓄積転送)するためのプロキシ13(3)の準備が完了する。
【0088】
一方、プロキシ13(1)はそれまでに通信コネクション212を介して行っていた全ての通信を通信コネクション214に切り替える(S41)。この切替が完了した後、プロキシ13(1)はセッション管理部SM(2)に対して切替の完了通知を送信する(S44)。
同様に、プロキシ13(2)はそれまでに通信コネクション212を介して行っていた全ての通信を通信コネクション215に切り替える(S40)。この切替が完了した後、プロキシ13(2)はセッション管理部SM(2)に対して切替の完了通知を送信する(S42)。
【0089】
セッション管理部SM(2)は、完了通知を受信すると管理しているテーブルの内容を更新する(S45)。すなわち、セッションIDで定まる特定のセッション(今回の処理でプロキシの追加を行ったセッション)について、追加したプロキシ13(3)のノード名及びポート番号ならびにプロキシ間の接続関係を反映するように情報を更新する。
【0090】
また、セッション管理部SM(2)は、変更を行ったセッションの情報を管理している他のセッション管理部SM(1),SM(3),SM(4)に対して変更した情報を通知する(S46)。
以上の制御シーケンスの結果、図4に示すようにサーバアプリケーション11(1)とクライアントアプリケーション12(2)との間の通信がプロキシ13(1)−プロキシ13(3)−プロキシ13(2)の経路で中継されるようにセッションの内容が変更される。
【0091】
次に、セッションからそれまで利用していたプロキシを削除する場合について説明する。具体的には、追加前の状態では図6に示すようにサーバアプリケーション11(1)とプロキシ13(1)との間に通信コネクション221が確立され、プロキシ13(1),13(3)の間に通信コネクション222が確立され、プロキシ13(3),13(2)の間に通信コネクション223が確立され、プロキシ13(2)とクライアントアプリケーション12(2)との間に通信コネクション224が確立され、3つのプロキシ13(1),13(3),13(2)がサーバアプリケーション11(1)とクライアントアプリケーション12(2)との間の通信をを中継するようにセッションが構築されている。
【0092】
その状態から、通信を継続したままプロキシ13(1)とプロキシ13(2)との間のプロキシ13(3)を削除(セッションから除外)する場合には、セッション管理部SM(2)の機能を利用して、図5に示す制御シーケンスを実行する。
端末のエージェント14は、必要に応じて(例えばユーザの指示により)プロキシの削除要求を発生する。この削除要求は、例えばセッション管理部SM(2)に通知される。この場合、セッション管理部SM(2)は図5のステップS51から順に処理を実行する。
【0093】
セッション管理部SM(2)は、削除対象のプロキシ13(3)との間で通信コネクション222,223を確立しているプロキシ13(1)及び13(2)のそれぞれに対して、プロキシ13(3)に関する削除要求を送信する(S51,S52)。
プロキシ13(2)は、削除要求を受信すると、セッションIDを利用して、プロキシ13(2)とプロキシ13(1)との間の通信コネクション225を確立する(S53)。
【0094】
更に、プロキシ13(2)はそれまでに通信コネクション223を介して行っていた全ての通信を通信コネクション225に切り替える(S54)。この切替が完了した後、プロキシ13(2)はセッション管理部SM(2)に対して切替の完了通知を送信する(S58)。プロキシ13(2)とプロキシ13(3)との間の通信コネクション223はプロキシ13(2)によって切断される(S56)。
【0095】
同様に、プロキシ13(1)はそれまでに通信コネクション222を介して行っていた全ての通信を通信コネクション225に切り替える(S55)。この切替が完了した後、プロキシ13(1)はセッション管理部SM(2)に対して切替の完了通知を送信する(S59)。プロキシ13(1)とプロキシ13(3)との間の通信コネクション222はプロキシ13(1)によって切断される(S57)。
【0096】
セッション管理部SM(2)は、完了通知を受信すると管理しているテーブルの内容を更新する(S60)。すなわち、セッションIDで定まる特定のセッション(今回の処理でプロキシの削除を行ったセッション)について、プロキシ間の接続関係に削除の結果を反映するように情報を更新する。
また、セッション管理部SM(2)は、変更を行ったセッションの情報を管理している他のセッション管理部SM(1),SM(3),SM(4)に対して変更した情報を通知する(S61)。
【0097】
以上の制御シーケンスの結果、図6に示すようにサーバアプリケーション11(1)とクライアントアプリケーション12(2)との間の通信がプロキシ13(1)−プロキシ13(2)の経路で中継されるようにセッションの内容が変更される。
次に、特定のセッション上で利用しているプロキシを他のプロキシに置き換える場合について説明する。具体的には、追加前の状態では図8に示すようにサーバアプリケーション11(1)とプロキシ13(1)との間に通信コネクション231が確立され、プロキシ13(1),13(4)の間に通信コネクション232が確立され、プロキシ13(4),13(2)の間に通信コネクション233が確立され、プロキシ13(2)とクライアントアプリケーション12(2)との間に通信コネクション234が確立され、3つのプロキシ13(1),13(4),13(2)がサーバアプリケーション11(1)とクライアントアプリケーション12(2)との間の通信をを中継するようにセッションが構築されている。
【0098】
その状態から、通信を継続したまま利用しているプロキシ13(4)をプロキシ13(5)に置換する場合には、セッション管理部SM(2)の機能を利用して、図7に示す制御シーケンスを実行する。
【0099】
端末のエージェント14は、必要に応じて(例えばユーザの指示により)プロキシの置換要求を発生する。この置換要求は、例えばセッション管理部SM(2)に通知される。この場合、セッション管理部SM(2)は図7のステップS71を実行する。
すなわち、置換先のプロキシ13(5)に中継の準備をさせるために、セッション管理部SM(2)は置換の問い合わせを行う。この問い合わせの際には、該当するセッションのセッションIDやプロキシの接続状態の情報もパラメータとしてセッション管理部SM(2)からプロキシ13(5)に送信する。
【0100】
このパラメータには、置換元のプロキシ13(4)が転送を中継しているファイルのファイル名及び転送を終了したバイト数(ファイル上の現在の転送位置)も含まれている。
問い合わせを受けたプロキシ13(5)は、受信したパラメータに基づいて、必要なプロセス等を起動し、ステップS72で通信の中継をするための準備を行う。このプロキシ13(5)は、受信したパラメータに基づいて置換元のプロキシ13(4)の状態を継承する。準備が完了したら、ステップS73でプロキシ13(5)はセッション管理部SM(2)に対して準備完了通知を送信する。
【0101】
セッション管理部SM(2)は、準備完了通知を受信すると、ステップS74,S75で、置換元のプロキシ13(4)との間に通信コネクション232,233を確立しているプロキシ13(1),13(2)に対して切替要求を送信する。この切替要求には、パラメータとして置換先のプロキシ13(5)に関するノード名(G16)及びポート番号(G17)が含まれる。
【0102】
プロキシ13(1)及び13(2)は、切替要求を受信すると、切替要求のパラメータ及びセッションIDを利用して、プロキシ13(5)の接続ポイント(端末のIPアドレスとプロキシ13(3)のポート番号)に対して通信コネクション235又は236を確立する(S76,S77)。
【0103】
置換先のプロキシ13(5)は、通信コネクション235,236が確立すると、それらのコネクションの確立の際に受信したセッションIDで定まる特定のセッションについて、通信コネクション235と通信コネクション236とを関連付ける(S78)。これにより、通信コネクション235と通信コネクション236との間の通信を中継(蓄積転送)するためのプロキシ13(5)の準備が完了する。
【0104】
一方、プロキシ13(2)はそれまでに通信コネクション233を介して行っていた全ての通信を通信コネクション236に切り替える(S80)。この切替が完了した後、プロキシ13(2)はセッション管理部SM(2)に対して切替の完了通知を送信する(S82)。
同様に、プロキシ13(1)はそれまでに通信コネクション232を介して行っていた全ての通信を通信コネクション235に切り替える(S81)。この切替が完了した後、プロキシ13(1)はセッション管理部SM(2)に対して切替の完了通知を送信する(S83)。
【0105】
通信コネクション232,233から通信コネクション235,236への切替が終了した後で、不要になった通信コネクション232,233は切断される(S84,S85)。
セッション管理部SM(2)は、完了通知を受信すると管理しているテーブルの内容を更新する(S86)。すなわち、セッションIDで定まる特定のセッション(今回の処理でプロキシの置換を行ったセッション)について、プロキシ間の接続関係に置換の結果を反映するように情報を更新する。
【0106】
また、セッション管理部SM(2)は、変更を行ったセッションの情報を管理している他のセッション管理部SM(1),SM(3),SM(4)に対して変更した情報を通知する(S87)。
以上の制御シーケンスの結果、図8に示すようにサーバアプリケーション11(1)とクライアントアプリケーション12(2)との間の通信がプロキシ13(1)−プロキシ13(5)−プロキシ13(2)の経路で中継されるようにセッションの内容が変更される。
【0107】
なお、サーバアプリケーション11とクライアントアプリケーション12との間で行われる通信には、セッション毎に異なる固有のセッションIDが割り当てられる。また、プロキシの接続ポイントは、ネットワーク上での位置と接続要求の受付ポートを表す。プロトコルとしてTCP/IPを想定する場合には、接続ポイントはIPアドレスとプロキシがリッスンしているポート番号になる。
【0108】
また、例えばセッションの通信経路を切り替えるために通信コネクションを切り替える際には一時的に通信ができなくなるが、そのセッションに含まれている少なくとも1つのプロキシがアプリケーションの送出する通信内容を蓄積し、通信が可能になったときには蓄積された情報を送信して通信回復作業を自動的に行う。従って、通信の途中で通信経路を切り替える場合であっても、ユーザが特別な操作を行うことなくそのまま通信を継続することができる。
【0109】
本発明の機能の概略は、図16に示す移動モデルで表すことができる。すなわち、ユーザが使用する端末が移動して通信方式が切り替わった場合や、ユーザが使用する端末を切り替えた場合でも、同じサービスを継続的に同じユーザに提供することができる。
ここで扱うサービスとは、各セッションを通してアプリケーション間で送受信される通信内容,それに付随する通信プロトコル(http等)及び表現方法(再生,ブラウジング等)を意味する。
【0110】
サービスを移動する場合には、同じセッションIDで示される移動元のセッションから移動先のセッションに対してサービスの状態を転送することにより、同じ状態でサービスを継続することができる。
各端末(ノード)は、図16に示すようにリンク層のアドレス空間にマッピングされる。従って、ノードの移動はノードとアドレスとの対応関係を変更することで実現できる。また、各端末は複数の通信デバイスをもつことが可能であり、それぞれが固有のアドレスを保持することができる。
【0111】
上記実施の形態の通信システムにおける位置管理の方式について性能を評価するために、計算機を用いてシミュレーションを実施した。シミュレーションの条件は次の通りである。
(1)端末の移動間隔:グループを構成している多数の端末のうち(1/3)は平均移動時間が30分、残りの(2/3)の端末は平均移動時間を10分とする。
【0112】
(2)端末の通信待機時間は20分とし、通信時間は50分とする。
(3)位置管理部LRの記憶容量:多数の端末のうち(1/3)のLRは全ての端末の位置情報を保持可能、他の(1/3)の端末のLRは(1/2)の端末の位置情報を保持可能、残りの(1/3)の端末のLRは(1/4)の端末の位置情報を保持可能と仮定する。
【0113】
(4)1200分間に発行された位置情報更新命令の数及び位置管理部LRの検索成功率を400試行分測定した。但し、最初の100分間については統計から除外。
(5)位置管理部LRが位置情報更新命令を送出する際には、自らが保持している全ての位置情報を送信する。受信側のLRでは、位置情報のタイムスタンプにより取捨選択して保持している位置情報を更新する。
【0114】
(6)位置情報更新命令を発行する際の端末の優先順位については2種類の方式を評価する。「Method A」の方式では位置管理部LRが自らの保持する位置情報を更新した場合に全ての端末に対して位置情報更新命令を発行する。「Method B」の方式では、移動間隔が30分でかつ全ての端末の位置情報を保持可能な記憶容量を有する端末のLRのみが全ての端末に対して位置情報更新命令を発行し、残りの端末の位置管理部LRについては、移動間隔が30分でかつ全ての端末の位置情報を保持可能な記憶容量を有する端末のみに対して位置情報更新命令を発行する。
【0115】
なお、「Method A」の方式では各端末の位置が更新されるたびに全ての端末に位置更新命令が発行されるので通信量は多くなるが、優れた位置管理能力が得られる。
上記シミュレーションの結果が図18〜図20に示されている。図18は、位置情報更新命令の発行数を示している。また、図19及び図20は位置検索成功率を示している。図19の位置検索成功率は、特定の端末の位置管理部LRが保持している位置情報の検索及び他の端末の位置管理部LRの検索によって相手端末の位置情報の取得に成功した割合である。また、図20の位置検索成功率は、特定の端末の位置管理部LRが保持している位置情報のみを検索して相手端末の位置情報の取得に成功した割合である。
【0116】
図18,図19を参照すると、「Method A」に比べて「Method B」の方が通信コストが低減(60〜80%減)され、位置検索能力の劣化も許容できる範囲であることが分かる。また、この効果はグループを構成している端末数が大きいほど顕著であり、位置検索成功率の差も小さくなる。従って、各端末の移動量や位置管理部LRの記憶容量を考慮して位置情報更新命令の発行対象となる端末を制限することにより、各端末の位置管理の負荷を分担するとともに通信量を抑制することができる。
【0117】
また、図20から分かるように、他の端末に存在する位置情報を検索しなくても、25〜45%の端末の位置を正しく検出することができる。従って、端末が一時的にネットワークから離脱している場合であっても、それ自身の位置管理部LRが保持する位置情報のみの検索により、ネットワークへの再接続の手がかりを得ることが可能である。
【0118】
(第2の実施の形態)
本発明の通信コネクション確立方法のもう1つの実施の形態について、図22及び図23を参照して説明する。この形態は、請求項1〜請求項4に対応する。図22及び図23は、それぞれサービスの移動例(1,2)を示すシーケンス図である。
【0119】
この形態では、HTTPの通信を行うことを想定しているので、アプリケーションとしてブラウザ5及びWebサーバ7を用いる。
図22の例では、ノード8(A),8(B)にはクライアントアプリケーションとして動作するブラウザ5が配置されているので、ノード8(A),8(B)はクライアントノードとして機能する。また、ノード8(C)にはサーバアプリケーションとして動作するWebサーバ7が配置されているので、ノード8(C)はサーバノードとして機能する。
【0120】
また、図23の例では、ノード8(A)にはクライアントアプリケーションとして動作するブラウザ5(A),5(B)が配置されているので、ノード8(A)はクライアントノードとして機能する。また、図23のノード8(C)にはサーバアプリケーションとして動作するWebサーバ7が配置されているので、ノード8(C)はサーバノードとして機能する。
【0121】
図22の例について動作を説明する。
まず、ブラウザ5(A)からプロキシ6(A),6(B)を介してWebサーバ7に要求を行う(C11)。この要求に対するWebサーバ7の応答が、プロキシ6(C),6(A)を介してブラウザ5(A)に伝送される(C12)。このとき、セッションが成立する。また、セッション毎にそれを区別するためのセッションIDが割り当てられる。
【0122】
この後で、プロキシ6(C)がサービス移動要求を受け付ける(C13)。その場合、プロキシ6(C)は通信を中断し(C14)、移動先のノード8(B)のプロキシ6(B1)に接続する(C15)。
この場合、移動先のプロキシ6(B1)は該当するセッションのセッションIDを含むURLを引数として、ブラウザ5(B)を起動する(C16)。
【0123】
起動されたブラウザ5(B)は、起動の際に指定されたURLを用いてプロキシ6(B2)に接続する(C17)。このプロキシ6(B2)は、セッションIDに基づいて、ブラウザ5(B)の通信とサーバノードであるノード8(C)のプロキシ6(C)とを結び付けてデータの転送を行う(C18)。
このようにして、サービスの連続性を確保したまま、クライアントノード簡をサービスが移動する。
【0124】
次に、図23の例について動作を説明する。
まず、ブラウザ5(A)からプロキシ6(A),6(C)を介してWebサーバ7に要求を行う(C21)。それに対するWebサーバ7の応答が、プロキシ6(C),6(A)を介してブラウザ5(A)に転送される(C22)。このとき、セッションが設立する。また、セッション毎にそれを区別するためのセッションIDが割り当てられる。
【0125】
この後で、プロキシ6(A)がサービス移動要求を受け付ける(C23)。その場合、プロキシ6(A)は該当するセッションのセッションIDを含むURLを引数として、ブラウザ5(B)を起動する(C24)。
起動されたブラウザ5(B)は、起動の際に指定されたURLを用いてプロキシ6(B2)に接続する(C25)。このプロキシ6(B2)は、セッションIDに基づいて、ブラウザ5(B)の通信とサーバノードであるノード8(C)のプロキシ6(C)とを結び付けてデータの転送を行う(C26)。
【0126】
このようにして、サービスの連続性を確保したまま、クライアントノード簡をサービスが移動する。
(第3の実施の形態)
本発明のもう1つの実施の形態について、図24〜図26を参照して説明する。この形態は、請求項1及び請求項2に対応する。
【0127】
図24は、セッションにプロキシを追加する場合の簡略化された制御シーケンスを示すシーケンス図である。図25は、セッションからプロキシを削除する場合の簡略化された制御シーケンスを示すシーケンス図である。図26は、セッション上のプロキシを置換する場合の簡略化された制御シーケンスを示すシーケンス図である。
【0128】
この形態は、第1の実施の形態の変形例であり、制御シーケンスの内容が第1の実施の形態よりも簡略化されている。また、この形態においても図10に示すような構成の移動端末を用いることを想定している。但し、図10に示す位置管理部LR,サービス管理部SR,リンク切替部15については必ずしも必要とはしない。
【0129】
図24〜図26に示す動作の内容については第1の実施の形態と同様であるが、各図の制御の内容について以下に説明する。
まず、図4の場合と同様にセッションにプロキシ13(3)を追加する場合について、図24を参照して説明する。
この例では、図4において、クライアントアプリケーション12(2),プロキシ13(2),プロキシ13(1),サーバアプリケーション11(1)の順に通信コネクションが確立され、クライアントアプリケーション12(2)とサーバアプリケーション11(1)との間にセッションが構築されている状態から、クライアントアプリケーション12(2),プロキシ13(2),プロキシ13(3),プロキシ13(1),サーバアプリケーション11(1)の順に通信コネクションが確立されて、クライアントアプリケーション12(2)とサーバアプリケーション11(1)との間のセッションの経路が変更される場合を想定している。
【0130】
すなわち、プロキシ13(2)とプロキシ13(1)との間にもう1つのプロキシ13(3)を追加するための動作を表している。
エージェントソフトウェア(図10の14)は、ユーザ又は端末間の接続状態に関する命令や管理を制御している。このエージェントソフトウェアからのプロキシ切替要求を移動端末30(2)が受信すると、移動端末30(2)はそれをセッション管理部SM(2)に通知する。
【0131】
この場合、セッション管理部SM(2)は、追加されるプロキシ13(3)に接続されるプロキシ13(1),13(2)に対して、プロキシ13(3)の名前と接続ポイントをパラメータとして切替要求を送信する(S34,S35)。切替要求を受信したプロキシ13(1),13(2)は、受信したパラメータとセッション識別子(ID)を用いてプロキシ13(3)の接続ポイントに対して、セッション識別子に対応する通信コネクションを確立する(S36,S37)。
【0132】
その後、プロキシ13(1)はプロキシ13(2)との間の通信コネクションで行っていた通信を全てプロキシ13(3)の通信コネクションに切り替える(S40,S41)。
追加されるプロキシ13(3)には2つの通信コネクションが確立される。このプロキシ13(3)は、通信コネクションの確立時に受信したセッション識別子に基づいて、2つの通信コネクションを関連付け、蓄積転送が可能な状態にする。
【0133】
次に、図6の場合と同様にセッションからプロキシ13(3)を削除する場合について、図25を参照して説明する。
この例では、図6において、クライアントアプリケーション12(2),プロキシ13(2),プロキシ13(3),プロキシ13(1),サーバアプリケーション11(1)の順に通信コネクションが確立され、クライアントアプリケーション12(2)とサーバアプリケーション11(1)との間のセッションが構築されている状態から、クライアントアプリケーション12(2),プロキシ13(2),プロキシ13(1),サーバアプリケーション11(1)の順に通信コネクションが確立されて、クライアントアプリケーション12(2)とサーバアプリケーション11(1)との間にセッションの経路が変更される場合を想定している。
【0134】
すなわち、セッションからプロキシ13(3)を削除するための動作を表している。
エージェントソフトウェアからのプロキシ削除要求を移動端末30(2)が受信すると、移動端末30(2)はそれをセッション管理部SM(2)に通知する。
この場合、セッション管理部SM(2)は、プロキシ13(1),13(2)に対して削除要求を送信する(S51,S52)。
【0135】
プロキシ13(2)は、削除要求を受信すると、セッション識別子を用いてプロキシ13(1)との間でコネクションを確立する。また、プロキシ13(3)との間で行われていた通信を全てプロキシ13(1)との間の通信コネクションに切り替える。
また、プロキシ13(1)が削除要求を受信するとともにプロキシ13(2)から通信コネクションを確立された場合には、プロキシ13(1)はプロキシ13(3)との間の通信コネクションで行われていた通信を全てプロキシ13(2)との間の通信コネクションに切り替える。
【0136】
次に、図8の場合と同様にセッション上のプロキシ13(4),13(5)を置換する場合について、図26を参照して説明する。
この例では、図8において、クライアントアプリケーション12(2),プロキシ13(2),プロキシ13(4),プロキシ13(1),サーバアプリケーション11(1)の順に通信コネクションが確立され、クライアントアプリケーション12(2)とサーバアプリケーション11(1)との間にセッションが構築されている状態から、クライアントアプリケーション12(2),プロキシ13(2),プロキシ13(5),プロキシ13(1),サーバアプリケーション11(1)の順に通信コネクションが確立されて、クライアントアプリケーション12(2)とサーバアプリケーション11(1)との間のセッションの経路が変更される場合を想定している。
【0137】
すなわち、セッション上のプロキシ13(4)をプロキシ13(5)に置換するための動作を表している。
エージェントソフトウェアからのプロキシ置き換え要求を移動端末30(2)が受信すると、移動端末30(2)はそれをセッション管理部SM(2)に通知する。
【0138】
この場合、セッション管理部SM(2)は、通信コネクションを持っているプロキシ13(1),13(2)に対してプロキシ13(5)の名前及び接続ポイントをパラメータとして含む切替要求を送信する(S74,S75)。
切替要求を受信したプロキシ13(1),13(2)は、受信したパラメータに基づいて、プロキシ13(5)の接続ポイントに対してセッション識別子に対応する通信コネクションを確立する。
【0139】
その後、プロキシ13(1)はプロキシ13(4)との間の通信コネクションで行っていた通信を全てプロキシ13(5)との間の通信コネクションに切り替える。
同様に、プロキシ13(2)はプロキシ13(4)との間の通信コネクションで行っていた通信を全てプロキシ13(5)との間の通信コネクションに切り替える。
【0140】
セッションに追加されるプロキシ13(5)は、2つの通信コネクションが確立された後で、コネクション確立時に受信したセッション識別子に基づいて2つの通信コネクションを関連付け、蓄積転送が可能な状態にする。
【0141】
【発明の効果】
以上の通り、本発明の通信コネクション確立方法によれば、通信の途中であっても、ユーザが利用するアプリケーションが実行される端末を切り替えたり、利用している通信経路を切り替えることができる。しかも、このような切替を行う場合でも、アプリケーションを再起動したり通信コネクションを確立するための特別な操作をユーザが行う必要はなく、ユーザは継続的に通信サービスを受けることができる。
【0142】
また、通信経路等を切り替える際には、サービスの連続性が損なわれないように予め定めた手順で複数のプロキシ間の通信コネクションを切り替えるので、同じユーザに対するサービスの連続性が保証される。
また、通信経路中のプロキシの切替え,追加,削除及び置き換えができるので、同じ端末を移動しながら様々な位置で利用する場合には、冗長な経路が回避されるように通信経路を切り替えたり、不要な中継処理を行うプロキシを通信経路から削除することができるので、通信効率の向上,ネットワークリソースの低減,プロキシの動作している端末のネットワークからの離脱のサービス継続性の確保,障害発生時のフォールトトレラント性の向上等が実現する。
【0143】
更に、通信中に利用しているアプリケーションを切替えることができるので、移動環境では各時点でもっとも適するアプリケーションをユーザが選択的に利用することができ、利便性が向上する。アプリケーションを切り替える場合でも、通信サービスの連続性は保証される。
【図面の簡単な説明】
【図1】プロキシ及びアプリケーションを切り替える場合の制御シーケンスを示すシーケンス図である。
【図2】プロキシ及びアプリケーションを切り替える場合の通信経路の例を示すブロック図である。
【図3】セッションにプロキシを追加する場合の制御シーケンスを示すシーケンス図である。
【図4】セッションにプロキシを追加する場合の通信経路の例を示すブロック図である。
【図5】セッションからプロキシを削除する場合の制御シーケンスを示すシーケンス図である。
【図6】セッションからプロキシを削除する場合の通信経路の例を示すブロック図である。
【図7】セッション上のプロキシを置換する場合の制御シーケンスを示すシーケンス図である。
【図8】セッション上のプロキシを置換する場合の通信経路の例を示すブロック図である。
【図9】通信システムの構成例を示すブロック図である。
【図10】移動端末の構成例を示すブロック図である。
【図11】サービス管理部SRが保持する情報の例を示す模式図である。
【図12】位置管理部LRが保持する情報の例を示す模式図である。
【図13】セッション管理部SMが保持する情報の例を示す模式図である。
【図14】通信システムの構成例を示すブロック図である。
【図15】ネットワークの構成例を示すブロック図である。
【図16】ノード及びサービスの移動モデルを示すブロック図である。
【図17】端末の移動時の位置情報更新手順を示すシーケンス図である。
【図18】位置情報更新命令の発行数を示すグラフである。
【図19】位置検索成功率を示すグラフである。
【図20】位置検索成功率を示すグラフである。
【図21】ネットワークの構成例を示すブロック図である。
【図22】サービスの移動例(1)を示すシーケンス図である。
【図23】サービスの移動例(2)を示すシーケンス図である。
【図24】セッションにプロキシを追加する場合の簡略化された制御シーケンスを示すシーケンス図である。
【図25】セッションからプロキシを削除する場合の簡略化された制御シーケンスを示すシーケンス図である。
【図26】セッション上のプロキシを置換する場合の簡略化された制御シーケンスを示すシーケンス図である。
【符号の説明】
1,3 アプリケーション
2 プロキシ
4 ノード
5 ブラウザ
6 プロキシ
7 Webサーバ
8 ノード
9 データベース
10 ソフトウェア
11 サーバアプリケーション
12 クライアントアプリケーション
13 プロキシ
14 エージェント
15 リンク切替部
16,17,18 リンク
21 イーサネット通信アダプタ
22 無線LANアダプタ
23 PHS通信アダプタ
30 移動端末
40 ネットワーク
51,52,53 サブネットワーク
54 広域ネットワーク
55,59,60,61,66,67 移動端末
56,62 固定端末
57,58,64,65 基地局
63 TAP
101,102 アプリケーション
103 セッション
104,105,106 プロキシ
107,108,109,110 通信コネクション
LR 位置管理部
SM セッション管理部
SR サービス管理部[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a communication connection establishment method used for switching communication paths when a plurality of terminals connected on a network communicate with each other by a server application and a client application.
[0002]
[Prior art]
When a user stops using an application with which communication is performed and tries to perform communication with another application, it is necessary to interrupt communication and then resume communication with the other application. However, in this case, since communication is disconnected, it is necessary to start the communication procedure with the partner application from the beginning. That is, the communication service for a certain application cannot be switched to another application from the middle.
[0003]
For example, a mobile terminal such as a notebook personal computer or PDA can be carried so that it may be used in various places, and may be used while moving. When such a mobile terminal is used online, for example, the mobile terminal is moved using a communication adapter corresponding to Ethernet, a local wireless LAN (Local Area Network), public wireless communication (for example, PHS (Personal Handy-phone System)) The terminal needs to be connected to the network.
[0004]
In various places where a mobile terminal is used, it is possible to connect the mobile terminal to a network using one or more communication media. If a plurality of communication adapters corresponding to a plurality of types of communication media are installed in advance, one mobile terminal can be connected to a network at various locations by switching the communication method as necessary.
[0005]
When a plurality of terminals actually communicate with each other using a server application and a client application, first, the terminal hardware is connected to the network, and a communication connection is established between the server application that provides the service and the client application that uses the service. Need to be established.
Also, in order to allow communication to continue even if communication is temporarily interrupted due to a failure, for example, a communication path is constructed so that a relay device called a proxy is interposed between the server application and the client application. Is common.
[0006]
[Problems to be solved by the invention]
In the conventional communication system as described above, the communication path is determined when communication between the server application and the client application is started. Therefore, the combination of the server application, client application, and proxy to be used cannot be changed during communication.
[0007]
When changing the server application, the client application, or the proxy, it is necessary to once terminate communication, release the communication connection, and reconnect each communication connection between the server application and the client application.
However, when the mobile terminal communicates while moving, the positional relationship among the server application, the client application, and the proxy changes with movement, so that a redundant communication path may be formed. For example, there is a case where communication is continued by relaying an unnecessary proxy.
[0008]
Also, for example, when a failure occurs in a communicating terminal, communication is temporarily terminated, the communication connection is released, and the communication path is changed so that the application or proxy function of the failed terminal is replaced with another terminal. It is necessary to rebuild and start communication from the beginning.
Further, for example, when switching a terminal used by a user from a mobile terminal having a small screen to a fixed terminal having a large screen (for example, a desktop personal computer), the communication of the mobile terminal is terminated, the communication connection is released, and the fixed terminal It is necessary to construct a new communication path using and to start communication from the beginning.
[0009]
Therefore, an object of the present invention is to enable switching of applications and switching of communication paths without ending communication between a server application and a client application.
[0010]
[Means for Solving the Problems]
[0011]
In the first aspect, when the communication path needs to be switched, the connection destination of the first proxy is switched from the second proxy to the third proxy by the control of the first proxy. Therefore, after switching, communication can be continued without using the second proxy.
Note that the third proxy as the switching destination needs to be specified at the time of switching or predetermined.
[0012]
[0013]
In the second aspect, when it is necessary to switch the application to be used, the application that communicates with the second proxy is changed from the first application to the third application under the control of the second proxy. The communication is continued as it is.
Therefore, the user can switch the application used for communication without disconnecting the communication. Note that the third application to be switched needs to be designated at the time of switching or predetermined.
[0014]
According to a third aspect of the present invention, in the communication connection establishment method according to the first aspect, when the client application and the server application communicate via a plurality of proxies, a response from the server application to the client application connection request is sent to the client application. When transferred, the transfer route is managed as a session, and a session ID is assigned to each session. When the first proxy receives a switching request for moving a service, it relays communication. After suspending, connect to the third proxy of the destination, and then resume relaying, and the third proxy is started by starting a new client application using an argument including the corresponding session ID New client account The application connects to the third proxy and transmits information including the specified session ID to the third proxy, and the third proxy communicates with the first proxy based on the session ID. And relaying data by combining communication with the new client application.
[0015]
In the third aspect, the plurality of sessions are distinguished from each other by using the session ID. Further, the connection destination of the first proxy is switched to the third proxy as the movement destination by the control of the first proxy. Furthermore, a new client application is automatically activated by the control of the third proxy, and the communication of the new client application and the communication of the first proxy are automatically linked.
[0016]
Therefore, the server application communication service provider can be moved from the original client application to a new client application without disconnecting the communication. Moreover, the continuity of the communication service can be ensured.
According to a fourth aspect of the present invention, in the communication connection establishment method according to the second aspect, when the client application and the server application communicate via a plurality of proxies, a response from the server application to the connection request of the client application is sent to the client application. When transferred, the transfer route is managed as a session, and a session ID is assigned to each session. When the second proxy receives a switching request for moving a service, it relays communication. Suspend and start a new client application using an argument including the corresponding session ID, and the started new client application connects to the second proxy and forwards information including the specified session ID. To the second proxy, and based on the session ID, the second proxy combines the communication of the proxy having a communication path with the server application and the communication of the new client application to relay data. It is characterized by restarting.
[0017]
In
[0018]
Therefore, the server application communication service provider can be moved from the original client application to a new client application without disconnecting the communication. Moreover, the continuity of the communication service can be ensured.
The communication connection establishment method according to
[0019]
In
[0020]
By referring to the first information, it is possible to check the client application, the server application, and the proxy that exist in each terminal. Therefore, for example, when a client application or a server application is switched, a terminal in which the same application exists can be automatically detected.
[0021]
Further, by referring to the second information, the address of each terminal can be specified.
Furthermore, since the client application, server application, and proxy that are being used can be identified and the connection point of the proxy can be detected from the information of each session that is distinguished by the session identifier, for example, the session that is currently being used A specific proxy included in can be switched to another proxy.
[0022]
Since the switching in this case is automatically performed, the communication path can be switched during the communication without ending the communication. The contents of communication during switching are accumulated in the proxy as necessary, and the proxy performs a relay operation so that communication continues after switching is completed.
For this reason, for example, when a failure occurs in a terminal (switching source) including the server application being used, the configuration of the session is changed to switch to another terminal (switching destination) including the same server application, Communication can be continued as it is using the switching destination terminal. Even when such switching is performed, the continuity of the communication service is guaranteed.
[0023]
Similarly, the client application can be switched, and the number of proxies constituting the session and the relay route can be changed.
6. The communication connection establishment method according to
[0024]
In
[0025]
For this reason, since communication contents are held by the proxy storage function when switching other communication connections, communication can be continued after switching the communication connection.
The communication connection establishment method according to
[0026]
According to the seventh aspect of the present invention, switching from the first proxy to the second proxy can be automatically performed for one session. Thereby, the function (service) of the application connected to the first proxy can be moved to the application connected to the second proxy.
The communication connection establishment method according to claim 8, wherein a session management unit that manages the session information exists, and a first proxy and a second proxy that actually relay communication for a session When a request for adding a proxy for adding a new third proxy occurs between the two, any one terminal notifies the session management unit of the addition request and adds it from the session management unit When the session management unit receives a notification indicating the completion of preparation from the third proxy, the session management unit receives the first proxy and the third proxy. Sending an add request to each of the second proxies, and each of the first proxy and the second proxy responding to the add request A new first communication connection or second communication connection is established with the third proxy using the session identifier, and the communication relayed by the first proxy and the second proxy is the first When switching is made to pass through the communication connection or the second communication connection and the switching of the communication connection used for all communications is completed, the session management unit is notified of the switching completion, and the first proxy and the second proxy If both the first communication connection between the third proxy and the second communication connection between the second proxy and the third proxy are established, based on the notified session identifier, The first communication connection and the second communication connection are associated with each other.
[0027]
In claim 8, a new third proxy can be added between the first proxy and the second proxy that are actually relaying communication for one session.
Moreover, since the state of the proxy of a switching destination is confirmed before switching in Claim 8, it can switch with respect to the proxy which can be switched reliably. In addition, since the completion notification is performed after the switching, the switching source proxy can release the resources used so far after the switching.
[0028]
9. The communication connection establishment method according to
[0029]
According to the ninth aspect of the present invention, the first proxy that is actually relaying communication can be excluded from the session. For example, when the communication path becomes shorter when the first proxy is deleted, or when the first proxy becomes unnecessary, the communication path can be optimized by deleting the first proxy. . Even when the first proxy is deleted during communication, the continuity of the communication service is guaranteed by the control sequence of
[0030]
A communication connection establishment method according to
[0031]
In
[0032]
Even when replacement is performed during communication, the continuity of the communication service is guaranteed by the control sequence and the proxy function of
For the network to which the present invention is applied, for example, various forms are possible as shown in FIG. The
[0033]
In FIG. 21A, a communication path is established between two
[0034]
The
In FIG. 21C,
[0035]
As shown in FIG. 21C, each node can be equipped with a proxy and / or an application. Communication between a plurality of applications is performed via at least one proxy.
In addition, by interposing a plurality of proxies between a plurality of applications communicating with each other, it is possible to absorb a disconnection of communication or a change in communication medium that occurs between proxies, and a node can be moved. .
[0036]
In addition, it is possible to move a network service across nodes by changing the connection relationship between proxies and applications on the communication path. The first aspect is characterized in that the proxy connection relationship is changed. The second aspect of the present invention is characterized by changing the connection between applications.
By variously changing the connection relationship, it is possible to freely change the nodes and applications used for communication, and the convenience for the user can be improved.
[0037]
For example, when the user is indoors, the service is received at a large screen node using a wired broadband line, and when the user moves outdoors, the service is transferred to the node of the mobile terminal. The communication environment can be adapted to give priority to mobility.
[0038]
DETAILED DESCRIPTION OF THE INVENTION
(First embodiment)
One embodiment of a communication connection establishment method of the present invention will be described with reference to FIGS. This form corresponds to claim 1,
[0039]
FIG. 1 is a sequence diagram showing a control sequence when switching between a proxy and an application. FIG. 2 is a block diagram illustrating an example of a communication path when switching between a proxy and an application. FIG. 3 is a sequence diagram showing a control sequence when a proxy is added to a session. FIG. 4 is a block diagram illustrating an example of a communication path when a proxy is added to a session.
[0040]
FIG. 5 is a sequence diagram showing a control sequence for deleting a proxy from a session. FIG. 6 is a block diagram illustrating an example of a communication path when a proxy is deleted from a session. FIG. 7 is a sequence diagram showing a control sequence for replacing a proxy on a session. FIG. 8 is a block diagram illustrating an example of a communication path when a proxy on a session is replaced.
[0041]
FIG. 9 is a block diagram illustrating a configuration example of a communication system. FIG. 10 is a block diagram illustrating a configuration example of a mobile terminal. FIG. 11 is a schematic diagram illustrating an example of information held by the service management unit SR. FIG. 12 is a schematic diagram illustrating an example of information held by the position management unit LR. FIG. 13 is a schematic diagram illustrating an example of information held by the session management unit SM.
FIG. 14 is a block diagram illustrating a configuration example of a communication system. FIG. 15 is a block diagram illustrating a configuration example of a network. FIG. 16 is a block diagram showing a movement model of nodes and services. FIG. 17 is a sequence diagram showing a location information update procedure when the terminal is moving.
[0042]
In this embodiment, the first information in
[0043]
In this embodiment, it is assumed that the present invention is applied to a communication system as shown in FIG. In the example of FIG. 9, three types of
In the sub-network 51, a large number of terminals (55, 56) can be connected in a communicable state via a communication interface configured in accordance with the Ethernet standard.
[0044]
The
The sub-network 53 is a PHS network that is a public wireless communication system. In the example of FIG. 9, a
[0045]
For example, when the
In the case of a general system, when the network used for communication by the terminal is switched between the sub-networks 51, 52, and 53, it is necessary to once terminate communication of the application and reconstruct the communication path. It takes time and effort.
[0046]
When the present invention is implemented, even when the network used by the terminal for communication is switched between the sub-networks 51, 52, and 53, the application is automatically switched without ending the communication of the application. be able to.
Further, for example, when the same application program exists in the
[0047]
Each terminal (mobile terminal in this example) used to implement the present invention is configured as shown in FIG. The mobile terminal in FIG. 10 includes the
[0048]
Further, the mobile terminal of FIG. 10 includes, as
The
[0049]
The proxy 13 relays communication from a certain transmission source to a certain reception destination, and accumulates the contents of communication in its own storage device. For example, even if communication between the proxy 13 and the destination is temporarily disabled, the contents of communication input from the transmission source to the
[0050]
The
The
[0051]
When communicating using the
[0052]
That is, the communication method can be switched by switching the
Each terminal that performs communication is assigned an IP (Internet Protocol) address. Further, when the terminal switches the communication method, the terminal moves on the network beyond the subnet boundary, which is an address allocation unit. Therefore, a new address is used every time switching is performed.
[0053]
The service management unit SR manages information on the types and functions of the
Actually, for example, the contents shown in FIG. 11 are held in the service management unit SR. In the example of FIG. 11, the terminal A11 holds a server B11 as an application program and includes a proxy C11. The terminal A12 holds a server B12 as an application program and includes a proxy C12. Further, the terminal A13 holds a client B13 as an application program and includes a proxy C13.
[0054]
The location management unit LR manages the IP address for each terminal. The location management unit LR can manage the IP addresses of a large number of terminals as well as terminals equipped with the position management unit LR. However, in order to improve the efficiency of location management and to enable location management even for a terminal with few resources, the amount of movement of the terminal and the storage capacity relating to location management are also managed. Further, in order to limit the range of terminals to be managed, a plurality of terminals are divided into groups and managed.
[0055]
Actually, as shown in FIG. 12, for example, terminal identification name E10, group name E11, IP address E12, status (usability) E13 of each IP address, movement amount E14, storage capacity of LR and information on update time Is held for each terminal of a specific group managed by the.
Further, when the communication device is switched along with the movement of the terminal or the like, the IP address of the terminal changes. In this case, the content held by the location management unit LR is updated. At the same time, if there is a communication partner, a position information update command is transmitted to the communication partner. That is, the update procedure shown in FIG. 17 is executed.
[0056]
Further, when each terminal transmits a position information update command, the order in which the commands are transmitted is determined in consideration of a predetermined priority. For example, a high priority is given to a terminal with a small amount of movement such as a fixed terminal (desktop personal computer or the like) 56. Also, a high priority is given to a terminal having a large storage capacity (E15) of position information.
[0057]
Each group used for management of the location management unit LR can include a plurality of terminals existing in a range exceeding the boundary of the subnet. A plurality of groups can coexist in one subnet.
[0058]
The terminal (X1) newly joining the group acquires its IP address and broadcasts a group search request in the subnetwork or transmits a group search request to a known specific terminal (X2). To do.
Thereafter, when the terminal (X1) receives a response from the terminal (X2) that has received the group search request, the terminal (X1) acquires group information from the content and selects a group to join.
[0059]
The terminal (X1) transmits a registration request for the selected group to the terminal (X2). The terminal (X2) acquires the position information of the terminal (X1) that transmitted this registration request.
Also, the terminal (X2) that has received the registration request transmits the information of the location management unit LR included therein to the terminal (X1), and adds the location information of the subscribed terminal (X1) to the contents of the location management unit LR. This completes the procedure for joining the group.
[0060]
When searching for location information regarding each terminal, the location information is searched from information held by the location management unit LR included in the terminal itself. If the search cannot be performed, a search request is sent to an arbitrary terminal included in the information held by the location management unit LR. When a result is returned in response to this search request, the position information is added to the position management unit LR.
[0061]
When searching for terminals belonging to the same group in the subnet, a broadcast packet is transmitted, and location information is registered in the location management unit LR based on a response to the broadcast packet.
The location management unit LR includes the following functions.
(1) IP address change due to movement of terminal location
(2) IP address status change due to node disconnection, line disconnection, failure, etc.
(3) Notification of change to
(4) Joining and leaving the group
(5) Transmission / reception of position information to / from the position management unit LR of the node in the group
The session management unit SM in FIG. 10 manages the entire communication path as a session for each communication. For example, in FIG. 15, communication can be performed between the
[0062]
The
[0063]
The actual session management unit SM holds information G11 to G18 as shown in FIG. 13, for example. Information G11 is an identifier for distinguishing a plurality of sessions. The information G12 represents the name of the node (terminal) where the server application to be used exists. Information G13 represents a port number given to the server application to be used.
[0064]
Information G14 represents the name of the node where the client application to be used exists. Information G15 represents a port number given to the client application to be used. Information G16 represents the name of the node where the proxy to be used exists. Information G17 represents the port number given to the proxy to be used. When a communication path of one session is configured to relay a plurality of proxies, each node name, port number, and connection state of the plurality of proxies to be used are one session ID (G11 ) And stored in the session management unit SM.
[0065]
Functions performed by the session management unit SM include addition of a proxy to each session, deletion of a proxy, switching of a proxy, and communication with the session management unit SM existing in another terminal.
The
[0066]
For example, when it is desired to terminate a server application that currently provides a predetermined communication service while continuing a predetermined communication service, it is possible to search for an alternative server application of the same type using the service management unit SR. .
Further, since the location management unit LR holds the terminal identification name and its IP address, the location of the terminal where the switching destination server application exists can be specified. Furthermore, by performing processing described later using information on a specific session managed by the session management unit SM, it is possible to switch the server application and continue the communication service.
[0067]
The
[0068]
When a service is moved from a certain source to a certain destination, the status of the source service is changed from the session used for communication of the service to the service built on the destination application or proxy. It can be realized by transferring. The status of the service to be transferred includes the connection status of the applications and proxies constituting the session, the number of bytes of data being transmitted and received, the number of frames, and the like.
[0069]
For example, when a portable mobile terminal is used to receive and browse stream data from a specific server application via a wireless line and a network, a high-quality service can be received because the display capability of the terminal is low. Can not. However, if a user moves a service from a mobile terminal to a fixed terminal having a large screen, a high quality service can be received. Even in the case of such movement, the service can be continuously used.
[0070]
Further, when the same server application exists in a plurality of terminals, the communication path used for providing the service can be switched so as to switch the terminal and the application on the server side. It is also possible to improve the communication speed of the service by switching terminals.
A specific example of switching the communication path used for providing the service or switching the server application or the client application will be described below. Here, a communication system as shown in FIG. 14 is assumed.
[0071]
In FIG. 14, the functions of the mobile terminals 30 (1) to 30 (5) are simplified. Actually, each of the mobile terminals 30 (1) to 30 (5) has the same function as the mobile terminal shown in FIG.
However, the
[0072]
First, a case where proxy and application are switched will be described. Specifically, in the state before switching, the
[0073]
Here, instead of the client application 12 (2) on the mobile terminal 30 (2), the client application 12 (3) on the mobile terminal 30 (3) is used to continuously provide the service of the server application 11 (1). In order to receive, the control sequence shown in FIG. 1 is executed using the function of the session management unit SM (2). That is, the proxy 13 (2) is switched to the proxy 13 (3).
[0074]
The
This switching request is notified to, for example, the session management unit SM (2). In this case, the session management unit SM (2) executes step S11 in FIG. That is, in order to switch to the switching destination proxy 13 (3) in which the
[0075]
This parameter also includes the file name of the file being relayed by the switching source proxy 13 (2) and the number of bytes that have been transferred (current transfer position on the file).
Upon receiving the inquiry, the proxy 13 (3) activates necessary processes and the like based on the received parameters, and prepares for relaying communication in step S12. The proxy 13 (3) inherits the state of the switching source proxy 13 (2) based on the received parameters.
[0076]
In this preparation, when the necessary application 12 (3) is not activated, the proxy 13 (3) activates the application 12 (3). If the
When the preparation is completed, in step S13, the proxy 13 (3) transmits a preparation completion notification to the session management unit SM (2).
[0077]
When the session management unit SM (2) receives the preparation completion notification, in step S14, the session management unit SM (2) issues a switching request to the proxy 13 (1) that has established the
[0078]
When the proxy 13 (1) receives the switching request, the proxy 13 (1) uses the switching request parameter and the session ID to connect the proxy 13 (3) connection point (the IP address of the terminal and the port number of the proxy 13 (3)). ) Is established (S15).
When the
[0079]
Further, the proxy 13 (1) switches all the communications that have been performed through the
[0080]
When the session management unit SM (2) receives the completion notification, the session management unit SM (2) updates the contents of the managed table (S19). In other words, the node name and port number of the client application 12 (3) and the proxy 13 (3) after switching and the connection relationship thereof are reflected with respect to a specific session determined by the session ID (session switched in this processing). Update the information as you do.
[0081]
Also, the session management unit SM (2) notifies the changed information to the other session management units SM (1), SM (3), SM (4) that manage the information of the changed session. (S21).
As a result of the above control sequence, as shown in FIG. 2, the service provided by the communication between the server application 11 (1) and the client application 12 (2) is the server application 11 (1) and the client application 12 ( The content of the session (communication path) is changed so that the communication with 3) is switched to.
[0082]
Next, a case where a proxy is added to a session will be described. Specifically, in the state before the addition, as shown in FIG. 4, the
[0083]
In this state, when adding the proxy 13 (3) between the proxy 13 (1) and the proxy 13 (2) while continuing communication, the function of the session management unit SM (2) is used. The control sequence shown in FIG. 3 is executed.
The
[0084]
That is, in order to make the proxy 13 (3) to be added prepare for addition, the session management unit SM (2) makes an additional inquiry. When making this inquiry, the session ID of the corresponding session and information on the connection status of the proxy are also transmitted as parameters from the session management unit SM (2) to the proxy 13 (3).
This parameter includes the file name of the file relayed by the proxy 13 (2) and the number of bytes that have been transferred (current transfer position on the file).
[0085]
Upon receiving the inquiry, the proxy 13 (3) activates necessary processes and the like based on the received parameters, and prepares for relaying communication in step S32. The proxy 13 (3) inherits the state of the proxy 13 (2) based on the received parameter. When the preparation is completed, in step S33, the proxy 13 (3) transmits a preparation completion notification to the session management unit SM (2).
[0086]
Upon receiving the preparation completion notification, the session management unit SM (2) transmits a switching request to the proxies 13 (1) and 13 (2) to be connected to the proxy 13 (3) to be added in steps S34 and S35. To do. This switching request includes the node name (G16) and port number (G17) related to the proxy 13 (3) to be added as parameters.
When the proxy 13 (1) and 13 (2) receive the switching request, the proxy 13 (3) connection point (the IP address of the terminal and the proxy 13 (3)
[0087]
When the
[0088]
On the other hand, the proxy 13 (1) switches all communications that have been performed through the communication connection 212 to the communication connection 214 (S41). After the switching is completed, the proxy 13 (1) transmits a switching completion notification to the session management unit SM (2) (S44).
Similarly, the proxy 13 (2) switches all communications that have been performed through the communication connection 212 to the communication connection 215 (S40). After the switching is completed, the proxy 13 (2) transmits a switching completion notification to the session management unit SM (2) (S42).
[0089]
When the session management unit SM (2) receives the completion notification, the session management unit SM (2) updates the contents of the managed table (S45). That is, for a specific session determined by the session ID (the session in which the proxy is added in this process), information is added to reflect the node name and port number of the added proxy 13 (3) and the connection relationship between the proxies. Update.
[0090]
Also, the session management unit SM (2) notifies the changed information to the other session management units SM (1), SM (3), SM (4) that manage the information of the changed session. (S46).
As a result of the above control sequence, as shown in FIG. 4, communication between the server application 11 (1) and the client application 12 (2) is the proxy 13 (1) -proxy 13 (3) -proxy 13 (2). The content of the session is changed so that it is relayed on the route.
[0091]
Next, the case where the proxy used until then is deleted from the session will be described. Specifically, in the state before the addition, as shown in FIG. 6, a
[0092]
When the proxy 13 (3) between the proxy 13 (1) and the proxy 13 (2) is deleted (excluded from the session) while communication is continued from that state, the function of the session management unit SM (2) Is used to execute the control sequence shown in FIG.
The
[0093]
The session management unit SM (2) sends a proxy 13 (1) and 13 (2) to each of the proxies 13 (1) and 13 (2) that establish
Upon receiving the deletion request, the proxy 13 (2) establishes a
[0094]
Further, the proxy 13 (2) switches all communications that have been performed through the communication connection 223 to the communication connection 225 (S54). After the switching is completed, the proxy 13 (2) transmits a switching completion notification to the session management unit SM (2) (S58). The communication connection 223 between the proxy 13 (2) and the proxy 13 (3) is disconnected by the proxy 13 (2) (S56).
[0095]
Similarly, the proxy 13 (1) switches all communications that have been performed through the
[0096]
When the session management unit SM (2) receives the completion notification, the session management unit SM (2) updates the contents of the managed table (S60). That is, for a specific session determined by the session ID (the session in which the proxy is deleted in the current process), the information is updated to reflect the deletion result in the connection relationship between the proxies.
Also, the session management unit SM (2) notifies the changed information to the other session management units SM (1), SM (3), SM (4) that manage the information of the changed session. (S61).
[0097]
As a result of the above control sequence, as shown in FIG. 6, the communication between the server application 11 (1) and the client application 12 (2) is relayed through the route of the proxy 13 (1) -proxy 13 (2). The contents of the session are changed.
Next, a case where a proxy used on a specific session is replaced with another proxy will be described. Specifically, in the state before the addition, as shown in FIG. 8, a
[0098]
In this state, when the proxy 13 (4) used while continuing communication is replaced with the proxy 13 (5), the function shown in FIG. 7 is used by utilizing the function of the session management unit SM (2). Run the sequence.
[0099]
The
In other words, the session management unit SM (2) makes a replacement inquiry in order to prepare the replacement destination proxy 13 (5) for relaying. At the time of this inquiry, the session ID of the corresponding session and the connection state information of the proxy are also transmitted as parameters from the session management unit SM (2) to the proxy 13 (5).
[0100]
This parameter includes the file name of the file being relayed by the proxy 13 (4) as the replacement source, and the number of bytes that have been transferred (current transfer position on the file).
Upon receiving the inquiry, the proxy 13 (5) activates necessary processes and the like based on the received parameters, and prepares to relay communication in step S72. The proxy 13 (5) inherits the state of the replacement source proxy 13 (4) based on the received parameters. When the preparation is completed, in step S73, the proxy 13 (5) transmits a preparation completion notification to the session management unit SM (2).
[0101]
When the session management unit SM (2) receives the preparation completion notification, the proxy 13 (1), having established the
[0102]
When the proxy 13 (1) and 13 (2) receive the switching request, the proxy 13 (5) connection point (the IP address of the terminal and the proxy 13 (3)
[0103]
When the
[0104]
On the other hand, the proxy 13 (2) switches all communications that have been performed through the
Similarly, the proxy 13 (1) switches all communications that have been performed through the
[0105]
After the switching from the
When the session management unit SM (2) receives the completion notification, the session management unit SM (2) updates the contents of the managed table (S86). That is, for a specific session determined by the session ID (the session in which proxy replacement is performed in the current process), information is updated so that the result of replacement is reflected in the connection relationship between proxies.
[0106]
Also, the session management unit SM (2) notifies the changed information to the other session management units SM (1), SM (3), SM (4) that manage the information of the changed session. (S87).
As a result of the above control sequence, as shown in FIG. 8, communication between the server application 11 (1) and the client application 12 (2) is proxy 13 (1) -proxy 13 (5) -proxy 13 (2). The content of the session is changed so that it is relayed on the route.
[0107]
A unique session ID that is different for each session is assigned to the communication performed between the
[0108]
In addition, for example, when switching a communication connection in order to switch the communication path of a session, communication is temporarily disabled. However, at least one proxy included in the session accumulates communication contents transmitted by the application and performs communication. When it becomes possible, the stored information is transmitted to automatically perform communication recovery work. Therefore, even when the communication path is switched in the middle of communication, the user can continue the communication without performing any special operation.
[0109]
The outline of the function of the present invention can be expressed by a movement model shown in FIG. That is, the same service can be continuously provided to the same user even when the terminal used by the user moves and the communication method is switched or when the terminal used by the user is switched.
The service handled here means communication contents transmitted / received between applications through each session, a communication protocol (such as http) associated therewith, and an expression method (reproduction, browsing, etc.).
[0110]
When the service is moved, the service can be continued in the same state by transferring the service state from the movement source session indicated by the same session ID to the movement destination session.
Each terminal (node) is mapped to a link layer address space as shown in FIG. Therefore, the movement of the node can be realized by changing the correspondence between the node and the address. Each terminal can have a plurality of communication devices, and each terminal can hold a unique address.
[0111]
In order to evaluate the performance of the location management method in the communication system of the above embodiment, a simulation was performed using a computer. The simulation conditions are as follows.
(1) Terminal movement interval: Among a large number of terminals constituting a group, (1/3) has an average movement time of 30 minutes, and the remaining (2/3) terminals have an average movement time of 10 minutes. .
[0112]
(2) The communication standby time of the terminal is 20 minutes, and the communication time is 50 minutes.
(3) Storage capacity of location management unit LR: Among a large number of terminals, (1/3) LRs can hold location information of all terminals, and other (1/3) terminals have LRs of (1/2 ) Terminal position information can be held, and the remaining (1/3) terminal LRs can hold (1/4) terminal position information.
[0113]
(4) The number of location information update commands issued during 1200 minutes and the search success rate of the location management unit LR were measured for 400 trials. However, the first 100 minutes are excluded from the statistics.
(5) When the position management unit LR sends a position information update command, all position information held by itself is transmitted. In the LR on the receiving side, the position information that is selected and held by the time stamp of the position information is updated.
[0114]
(6) Two kinds of methods are evaluated for the priority order of the terminal when issuing the location information update command. In the “Method A” method, when the location management unit LR updates the location information held by itself, the location management unit LR issues a location information update command to all terminals. In the method of “Method B”, only the LR of the terminal having a storage capacity that can hold the position information of all terminals with a movement interval of 30 minutes issues a position information update command to all the terminals, and the remaining For the location management unit LR of the terminal, the location information update command is issued only to the terminal having a storage interval of 30 minutes and capable of holding the location information of all the terminals.
[0115]
In the “Method A” method, a location update command is issued to all terminals each time the location of each terminal is updated, so the communication volume increases, but excellent location management capability is obtained.
The simulation results are shown in FIGS. FIG. 18 shows the number of issued position information update instructions. 19 and 20 show the position search success rate. The location search success rate in FIG. 19 is a rate at which the location information of the other terminal is successfully acquired by searching the location information held by the location management unit LR of the specific terminal and searching the location management unit LR of another terminal. is there. Further, the location search success rate in FIG. 20 is a rate at which only the location information held by the location management unit LR of a specific terminal is searched to successfully acquire the location information of the counterpart terminal.
[0116]
Referring to FIGS. 18 and 19, it is understood that “Method B” has a communication cost reduced (60 to 80% reduction) and “Position search capability” is also acceptable in comparison with “Method A”. . In addition, this effect becomes more prominent as the number of terminals constituting the group increases, and the difference in the location search success rate also decreases. Therefore, by limiting the terminals to which location information update commands are issued in consideration of the movement amount of each terminal and the storage capacity of the location management unit LR, the location management load of each terminal is shared and the communication volume is suppressed. can do.
[0117]
As can be seen from FIG. 20, it is possible to correctly detect the positions of 25 to 45% of terminals without searching for position information existing in other terminals. Therefore, even when the terminal is temporarily disconnected from the network, it is possible to obtain a clue for reconnection to the network by searching only the position information held by its own position management unit LR. .
[0118]
(Second Embodiment)
Another embodiment of the communication connection establishment method of the present invention will be described with reference to FIGS. This form corresponds to
[0119]
In this embodiment, since it is assumed that HTTP communication is performed, the
In the example of FIG. 22, since the
[0120]
In the example of FIG. 23, since the browsers 5 (A) and 5 (B) that operate as client applications are arranged in the node 8 (A), the node 8 (A) functions as a client node. Further, since the
[0121]
The operation of the example of FIG. 22 will be described.
First, a request is sent from the browser 5 (A) to the
[0122]
Thereafter, the proxy 6 (C) accepts the service movement request (C13). In this case, the proxy 6 (C) interrupts communication (C14) and connects to the proxy 6 (B1) of the destination node 8 (B) (C15).
In this case, the destination proxy 6 (B1) starts the browser 5 (B) with the URL including the session ID of the corresponding session as an argument (C16).
[0123]
The activated browser 5 (B) connects to the proxy 6 (B2) using the URL specified at the time of activation (C17). Based on the session ID, the proxy 6 (B2) links the communication of the browser 5 (B) and the proxy 6 (C) of the node 8 (C) that is the server node to transfer data (C18).
In this way, the service moves through the client node while maintaining the continuity of the service.
[0124]
Next, the operation of the example of FIG. 23 will be described.
First, a request is made from the browser 5 (A) to the
[0125]
Thereafter, the proxy 6 (A) accepts the service movement request (C23). In that case, the proxy 6 (A) starts the browser 5 (B) with the URL including the session ID of the corresponding session as an argument (C24).
The activated browser 5 (B) connects to the proxy 6 (B2) using the URL specified at the time of activation (C25). Based on the session ID, the proxy 6 (B2) links the communication of the browser 5 (B) and the proxy 6 (C) of the node 8 (C), which is the server node, to transfer data (C26).
[0126]
In this way, the service moves through the client node while maintaining the continuity of the service.
(Third embodiment)
Another embodiment of the present invention will be described with reference to FIGS. This form corresponds to
[0127]
FIG. 24 is a sequence diagram illustrating a simplified control sequence when a proxy is added to a session. FIG. 25 is a sequence diagram showing a simplified control sequence when a proxy is deleted from a session. FIG. 26 is a sequence diagram showing a simplified control sequence in the case of replacing a proxy on a session.
[0128]
This form is a modification of the first embodiment, and the contents of the control sequence are simplified as compared with the first embodiment. Also in this embodiment, it is assumed that a mobile terminal having a configuration as shown in FIG. 10 is used. However, the location management unit LR, service management unit SR, and link switching
[0129]
The contents of the operations shown in FIGS. 24 to 26 are the same as those in the first embodiment, but the contents of the control in each figure will be described below.
First, the case of adding the proxy 13 (3) to the session as in the case of FIG. 4 will be described with reference to FIG.
In this example, in FIG. 4, a communication connection is established in the order of the client application 12 (2), the proxy 13 (2), the proxy 13 (1), and the server application 11 (1), and the client application 12 (2) and the server application From the state in which a session is established with 11 (1), client application 12 (2), proxy 13 (2), proxy 13 (3), proxy 13 (1), and server application 11 (1) are in this order. It is assumed that a session connection between the client application 12 (2) and the server application 11 (1) is changed after a communication connection is established.
[0130]
That is, it represents an operation for adding another proxy 13 (3) between the proxy 13 (2) and the proxy 13 (1).
The agent software (14 in FIG. 10) controls commands and management related to the connection status between users or terminals. When the mobile terminal 30 (2) receives the proxy switching request from the agent software, the mobile terminal 30 (2) notifies the session management unit SM (2) of it.
[0131]
In this case, the session management unit SM (2) sets the name and connection point of the proxy 13 (3) as parameters for the proxies 13 (1) and 13 (2) connected to the added proxy 13 (3). The switching request is transmitted as (S34, S35). The proxy 13 (1), 13 (2) having received the switching request establishes a communication connection corresponding to the session identifier to the connection point of the proxy 13 (3) using the received parameter and the session identifier (ID). (S36, S37).
[0132]
After that, the proxy 13 (1) switches all the communication that has been performed through the communication connection with the proxy 13 (2) to the communication connection of the proxy 13 (3) (S40, S41).
Two communication connections are established in the added proxy 13 (3). The proxy 13 (3) associates two communication connections based on the session identifier received when the communication connection is established, and makes a state in which accumulation and transfer are possible.
[0133]
Next, a case where the proxy 13 (3) is deleted from the session as in the case of FIG. 6 will be described with reference to FIG.
In this example, in FIG. 6, the communication connection is established in the order of the client application 12 (2), the proxy 13 (2), the proxy 13 (3), the proxy 13 (1), and the server application 11 (1). From the state in which the session between (2) and the server application 11 (1) is established, the client application 12 (2), the proxy 13 (2), the proxy 13 (1), and the server application 11 (1) in this order. It is assumed that a communication connection is established and the session path is changed between the client application 12 (2) and the server application 11 (1).
[0134]
That is, it represents an operation for deleting the proxy 13 (3) from the session.
When the mobile terminal 30 (2) receives the proxy deletion request from the agent software, the mobile terminal 30 (2) notifies the session management unit SM (2) of it.
In this case, the session management unit SM (2) transmits a deletion request to the proxies 13 (1) and 13 (2) (S51, S52).
[0135]
When the proxy 13 (2) receives the deletion request, the proxy 13 (2) establishes a connection with the proxy 13 (1) using the session identifier. In addition, all the communication performed with the proxy 13 (3) is switched to the communication connection with the proxy 13 (1).
In addition, when the proxy 13 (1) receives the deletion request and establishes a communication connection from the proxy 13 (2), the proxy 13 (1) is performed through a communication connection with the proxy 13 (3). All the communication that has been made is switched to the communication connection with the proxy 13 (2).
[0136]
Next, the case of replacing the proxy 13 (4), 13 (5) on the session as in the case of FIG. 8 will be described with reference to FIG.
In this example, in FIG. 8, the communication connection is established in the order of the client application 12 (2), the proxy 13 (2), the proxy 13 (4), the proxy 13 (1), and the server application 11 (1). From the state in which a session is established between (2) and the server application 11 (1), the client application 12 (2), the proxy 13 (2), the proxy 13 (5), the proxy 13 (1), and the server application It is assumed that the communication connection is established in the order of 11 (1) and the session path between the client application 12 (2) and the server application 11 (1) is changed.
[0137]
That is, it represents an operation for replacing the proxy 13 (4) on the session with the proxy 13 (5).
When the mobile terminal 30 (2) receives the proxy replacement request from the agent software, the mobile terminal 30 (2) notifies the session management unit SM (2) of it.
[0138]
In this case, the session management unit SM (2) transmits a switching request including the name of the proxy 13 (5) and the connection point as parameters to the proxies 13 (1) and 13 (2) having the communication connection. (S74, S75).
The proxy 13 (1), 13 (2) that has received the switching request establishes a communication connection corresponding to the session identifier with respect to the connection point of the proxy 13 (5) based on the received parameter.
[0139]
After that, the proxy 13 (1) switches all the communication performed in the communication connection with the proxy 13 (4) to the communication connection with the proxy 13 (5).
Similarly, the proxy 13 (2) switches all communication performed in the communication connection with the proxy 13 (4) to the communication connection with the proxy 13 (5).
[0140]
After the two communication connections are established, the proxy 13 (5) added to the session associates the two communication connections based on the session identifier received at the time of establishing the connection, and makes the state capable of storing and transferring.
[0141]
【The invention's effect】
As described above, according to the communication connection establishment method of the present invention, a terminal on which an application used by a user is executed can be switched or a communication path used can be switched even during communication. Moreover, even when such switching is performed, it is not necessary for the user to perform a special operation for restarting an application or establishing a communication connection, and the user can continuously receive a communication service.
[0142]
In addition, when switching communication paths and the like, communication connections between a plurality of proxies are switched in a predetermined procedure so that service continuity is not impaired, so service continuity for the same user is guaranteed.
In addition, since the proxy can be switched, added, deleted, and replaced in the communication path, when using the same terminal at various positions while moving, the communication path can be switched to avoid redundant paths, Proxies that perform unnecessary relay processing can be deleted from the communication path, improving communication efficiency, reducing network resources, ensuring service continuity of leaving the terminal where the proxy is operating, and when a failure occurs Improves fault tolerant property.
[0143]
Furthermore, since the application used during communication can be switched, the user can selectively use the most suitable application at each time point in the mobile environment, which improves convenience. Even when switching applications, continuity of communication services is guaranteed.
[Brief description of the drawings]
FIG. 1 is a sequence diagram showing a control sequence when switching between a proxy and an application.
FIG. 2 is a block diagram illustrating an example of a communication path when switching between a proxy and an application.
FIG. 3 is a sequence diagram showing a control sequence when a proxy is added to a session.
FIG. 4 is a block diagram illustrating an example of a communication path when a proxy is added to a session.
FIG. 5 is a sequence diagram showing a control sequence when a proxy is deleted from a session.
FIG. 6 is a block diagram illustrating an example of a communication path when a proxy is deleted from a session.
FIG. 7 is a sequence diagram showing a control sequence when a proxy on a session is replaced.
FIG. 8 is a block diagram illustrating an example of a communication path when a proxy on a session is replaced.
FIG. 9 is a block diagram illustrating a configuration example of a communication system.
FIG. 10 is a block diagram illustrating a configuration example of a mobile terminal.
FIG. 11 is a schematic diagram illustrating an example of information held by a service management unit SR.
FIG. 12 is a schematic diagram illustrating an example of information held by a location management unit LR.
FIG. 13 is a schematic diagram illustrating an example of information held by a session management unit SM.
FIG. 14 is a block diagram illustrating a configuration example of a communication system.
FIG. 15 is a block diagram illustrating a configuration example of a network.
FIG. 16 is a block diagram showing a movement model of nodes and services.
FIG. 17 is a sequence diagram illustrating a location information update procedure when the terminal is moving.
FIG. 18 is a graph showing the number of issued position information update instructions.
FIG. 19 is a graph showing a location search success rate.
FIG. 20 is a graph showing a location search success rate.
FIG. 21 is a block diagram illustrating a configuration example of a network.
FIG. 22 is a sequence diagram showing a service movement example (1).
FIG. 23 is a sequence diagram showing a service movement example (2).
FIG. 24 is a sequence diagram showing a simplified control sequence when a proxy is added to a session.
FIG. 25 is a sequence diagram showing a simplified control sequence when a proxy is deleted from a session.
FIG. 26 is a sequence diagram showing a simplified control sequence when replacing a proxy on a session.
[Explanation of symbols]
1,3 application
2 proxy
4 nodes
5 Browser
6 Proxy
7 Web server
8 nodes
9 Database
10 software
11 Server application
12 Client application
13 Proxy
14 Agent
15 Link switching unit
16, 17, 18 links
21 Ethernet communication adapter
22 Wireless LAN adapter
23 PHS communication adapter
30 Mobile terminal
40 network
51, 52, 53 Subnetwork
54 Wide area network
55, 59, 60, 61, 66, 67 Mobile terminal
56,62 fixed terminal
57, 58, 64, 65 base station
63 TAP
101,102 application
103 sessions
104, 105, 106 proxy
107, 108, 109, 110 Communication connection
LR Location Management Department
SM Session Management Department
SR Service Management Department
Claims (10)
複数のアプリケーションが2つ以上のプロキシを通る通信経路を介して互いに通信している場合に、
所定の切替要求に応答して、前記通信経路上に配置された第1のプロキシが接続先の第2のプロキシを第3のプロキシに切り替えて通信を継続する
ことを特徴とする通信コネクション確立方法。A communication connection establishment method used for control of a communication system provided with a plurality of applications, a plurality of proxies that relay communication, and a network that connects them,
If multiple applications are communicating with each other via a communication path through two or more proxies,
In response to a predetermined switching request, the first proxy arranged on the communication path switches the second proxy as the connection destination to the third proxy and continues the communication. .
第1のアプリケーションと第2のアプリケーションとが2つ以上のプロキシを通る通信経路を介して互いに通信している場合に、
前記通信経路上に配置され第1のアプリケーションと第1のプロキシとの間で中継を行う第2のプロキシが、所定の切替要求に応答して通信相手の第1のアプリケーションを他の第3のアプリケーションに切り替えて通信を継続する
ことを特徴とする通信コネクション確立方法。A communication connection establishment method used for control of a communication system provided with a plurality of applications, a plurality of proxies that relay communication, and a network that connects them,
When the first application and the second application are communicating with each other via a communication path through two or more proxies,
A second proxy that is arranged on the communication path and relays between the first application and the first proxy sends the first application of the communication partner to the other third in response to a predetermined switching request. A communication connection establishment method, characterized in that communication is continued by switching to an application.
クライアントアプリケーションとサーバアプリケーションとが複数のプロキシを介して通信する場合に、
クライアントアプリケーションの接続要求に対してサーバアプリケーションからの応答がクライアントアプリケーションに転送された場合にその転送経路をセッションとして管理するとともに、それぞれのセッションにセッションIDを割り当てておき、
前記第1のプロキシは、サービス移動のための切替要求を受け付けた場合に、通信の中継を中断してから移動先の前記第3のプロキシに接続し、その後で中継を再開し、
前記第3のプロキシは、該当するセッションIDを含む引数を用いて新たなクライアントアプリケーションを起動し、
起動された新たなクライアントアプリケーションは、前記第3のプロキシに接続して指定されたセッションIDを含む情報を前記第3のプロキシに送信し、
前記第3のプロキシは、セッションIDに基づいて、前記第1のプロキシの通信と前記新たなクライアントアプリケーションの通信とを結びつけてデータの中継を行う
ことを特徴とする通信コネクション確立方法。In the communication connection establishment method of Claim 1,
When client application and server application communicate through multiple proxies,
When a response from the server application is transferred to the client application in response to the connection request of the client application, the transfer path is managed as a session, and a session ID is assigned to each session,
When the first proxy receives a switching request for moving a service, the first proxy interrupts communication relay and then connects to the third proxy at the destination, and then resumes relaying,
The third proxy starts a new client application using an argument including the corresponding session ID,
The launched new client application connects to the third proxy and sends information including the specified session ID to the third proxy,
The communication proxy establishment method, wherein the third proxy relays data by combining communication of the first proxy and communication of the new client application based on a session ID.
クライアントアプリケーションとサーバアプリケーションとが複数のプロキシを介して通信する場合に、
クライアントアプリケーションの接続要求に対してサーバアプリケーションからの応答がクライアントアプリケーションに転送された場合にその転送経路をセッションとして管理するとともに、それぞれのセッションにセッションIDを割り当てておき、
前記第2のプロキシは、サービス移動のための切替要求を受け付けた場合に、通信の中継を中断して該当するセッションIDを含む引数を用いて新たなクライアントアプリケーションを起動し、
起動された新たなクライアントアプリケーションは、前記第2のプロキシに接続して指定されたセッションIDを含む情報を前記第2のプロキシに送信し、
前記第2のプロキシは、セッションIDに基づいて、サーバアプリケーションとの間に通信路を持つプロキシの通信と前記新たなクライアントアプリケーションの通信とを結びつけてデータの中継を再開する
ことを特徴とする通信コネクション確立方法。In the communication connection establishment method of Claim 2,
When client application and server application communicate through multiple proxies,
When a response from the server application is transferred to the client application in response to the connection request of the client application, the transfer path is managed as a session, and a session ID is assigned to each session,
When the second proxy receives a switching request for service movement, the second proxy interrupts communication relay and starts a new client application using an argument including the corresponding session ID,
The launched new client application connects to the second proxy and sends information including the specified session ID to the second proxy,
The second proxy restarts data relay by combining communication of a proxy having a communication path with a server application and communication of the new client application based on a session ID. Connection establishment method.
各々の端末に存在するクライアントアプリケーション又はサーバアプリケーション及びプロキシを表す第1の情報と、各々の端末の特定に利用される第2の情報とを保持しておき、
1つ以上のプロキシを中継して形成されるサーバアプリケーションとクライアントアプリケーションとの間の通信経路をセッションとして管理し、
セッション毎に、少なくともセッションの識別子,当該セッションを利用しているクライアントアプリケーション及びサーバアプリケーションを特定する第3の情報,当該セッションが利用しているプロキシを特定する第4の情報及び当該セッションが利用しているプロキシの接続点を表す第5の情報を保持し、
利用するサーバアプリケーション又はクライアントアプリケーションを提供する端末の切替、もしくはサーバアプリケーションとクライアントアプリケーションとの間の通信に利用している通信経路上のプロキシの切替が必要な場合に、該当するセッションの情報と前記第1の情報及び第2の情報とを利用して、サーバアプリケーションとそれに接続されたプロキシとの間、クライアントアプリケーションとそれに接続されたプロキシとの間、サーバアプリケーションとクライアントアプリケーションとの間を中継する複数プロキシの間の少なくとも1つの通信コネクションを自動的に切り替える
ことを特徴とする通信コネクション確立方法。A communication connection establishment method used for controlling a communication system in which a terminal including a client application that requests a service, a terminal including a server application that provides a service, and a terminal including a proxy that stores and relays communication contents is connected. There,
Holding first information representing a client application or server application and proxy existing in each terminal, and second information used to identify each terminal;
Managing a communication path between a server application and a client application formed by relaying one or more proxies as a session;
For each session, at least the identifier of the session, the third information specifying the client application and the server application using the session, the fourth information specifying the proxy used by the session, and the session Holding fifth information representing the proxy's connection point,
If it is necessary to switch the terminal that provides the server application or client application to be used, or to switch the proxy on the communication path used for communication between the server application and the client application, the corresponding session information and the above Using the first information and the second information, relaying is performed between the server application and the proxy connected thereto, between the client application and the proxy connected thereto, and between the server application and the client application. A communication connection establishment method, wherein at least one communication connection between a plurality of proxies is automatically switched.
その切替要求をいずれか1つの端末が前記セッション管理部に通知し、
前記セッション管理部から切替先の第2のプロキシに対して切替の準備状況に関する問い合わせを行い、
第2のプロキシから切替準備が完了したことを示す通知が前記セッション管理部に届いた場合に、第1のプロキシとの間で通信コネクションを確立している第3のプロキシに対して、前記セッション管理部から切替先の第2のプロキシに関する情報とともに切替要求を送信し、
第3のプロキシが、セッションの識別子を用いて切替先の第2のプロキシとの間で新たな通信コネクションを確立し、
第1のプロキシと第3のプロキシとの間の通信コネクションを介して行われていた通信が第3のプロキシと第2のプロキシとの間の通信コネクションを通るように切替え、
全ての通信コネクションの切替が完了した場合に、前記セッション管理部に対して切替完了を通知し、
切替先の第2のプロキシは、第3のプロキシとの間の第1の通信コネクションの確立が完了した場合に、通知されたセッションの識別子に基づいて、第2のプロキシとサーバアプリケーション又はクライアントアプリケーションとの間に確立された第2の通信コネクションと前記第1の通信コネクションとを関連付けて当該セッションの通信経路を切り替える
ことを特徴とする通信コネクション確立方法。6. The communication connection establishment method according to claim 5, wherein there is a session management unit that manages the session information, and the second proxy is a proxy that is different from the first proxy that is a proxy that actually relays a session. When a request to switch to a proxy occurs,
Any one terminal notifies the session management unit of the switching request,
Inquiry about the switching preparation status from the session management unit to the second proxy of the switching destination,
When a notification indicating that the switching preparation is completed is received from the second proxy to the session management unit, the session is established with respect to the third proxy that has established a communication connection with the first proxy. A switching request is transmitted from the management unit together with information on the second proxy of the switching destination,
The third proxy establishes a new communication connection with the second proxy to be switched using the session identifier,
Switching so that the communication that has been performed via the communication connection between the first proxy and the third proxy passes through the communication connection between the third proxy and the second proxy,
When switching of all communication connections is completed, the session management unit is notified of switching completion,
When the establishment of the first communication connection with the third proxy is completed, the second proxy that is the switching destination, the second proxy and the server application or the client application, based on the notified session identifier A communication connection establishment method, wherein the communication path of the session is switched by associating the second communication connection established between and the first communication connection.
その追加要求をいずれか1つの端末が前記セッション管理部に通知し、
前記セッション管理部から追加される第3のプロキシに対して追加の準備状況に関する問い合わせを行い、
第3のプロキシから準備完了を示す通知を前記セッション管理部が受けた場合に、前記セッション管理部は、第1のプロキシ及び第2のプロキシのそれぞれに対して追加要求を送信し、
第1のプロキシ及び第2のプロキシのそれぞれは、前記追加要求に応答して、セッションの識別子を用いて第3のプロキシとの間で新たな第1の通信コネクション又は第2の通信コネクションを確立し、第1のプロキシ及び第2のプロキシが中継している通信が第1の通信コネクション又は第2の通信コネクションを通るように切り替えて、
全ての通信について利用する通信コネクションの切替が完了した場合に、前記セッション管理部に対して切替完了を通知し、
第1のプロキシと第3のプロキシとの間の第1の通信コネクション及び第2のプロキシと第3のプロキシとの間の第2の通信コネクションの両方が確立された場合に、通知されたセッションの識別子に基づいて、第1の通信コネクションと第2の通信コネクションとを関連付ける
ことを特徴とする通信コネクション確立方法。The communication connection establishment method according to claim 5, wherein there is a session management unit that manages information on the session, and between a first proxy and a second proxy that are actually relaying communication for a certain session, If a request to add a proxy to add a new third proxy occurs,
Any one terminal notifies the session management unit of the addition request,
Inquiry about the additional preparation status to the third proxy added from the session management unit,
When the session management unit receives a notification indicating the completion of preparation from the third proxy, the session management unit transmits an addition request to each of the first proxy and the second proxy,
Each of the first proxy and the second proxy establishes a new first communication connection or second communication connection with the third proxy using the session identifier in response to the addition request. Then, the communication relayed by the first proxy and the second proxy is switched to pass through the first communication connection or the second communication connection,
When switching of the communication connection used for all communications is completed, the session management unit is notified of switching completion,
The notified session when both the first communication connection between the first proxy and the third proxy and the second communication connection between the second proxy and the third proxy are established. A communication connection establishment method, wherein the first communication connection and the second communication connection are associated with each other based on the identifier.
その削除要求をいずれか1つの端末が前記セッション管理部に通知し、
前記セッション管理部は、第1のプロキシとの間で第1の通信コネクション及び第2の通信コネクションを確立している第2のプロキシ及び第3のプロキシのそれぞれに対して削除要求を送信し、
第2のプロキシ及び第3のプロキシは、それらの間に第3の通信コネクションを確立し、第1の通信コネクション及び第2の通信コネクションを利用している通信を第3の通信コネクションに切り替えて、
通信コネクションの切替が完了した場合には、第2のプロキシ及び第3のプロキシは、それぞれ前記セッション管理部に対して切替完了を通知する
ことを特徴とする通信コネクション確立方法。The communication connection establishment method according to claim 5, wherein there is a session management unit that manages information on the session, and when a deletion request for the first proxy that actually relays communication occurs for a certain session,
Any one terminal notifies the session management unit of the deletion request,
The session management unit transmits a deletion request to each of the second proxy and the third proxy that have established the first communication connection and the second communication connection with the first proxy,
The second proxy and the third proxy establish a third communication connection between them, and switch the communication using the first communication connection and the second communication connection to the third communication connection. ,
The communication connection establishment method, wherein when the switching of the communication connection is completed, the second proxy and the third proxy respectively notify the session management unit of the switching completion.
その置換要求をいずれか1つの端末が前記セッション管理部に通知し、
前記セッション管理部は、第4のプロキシに対して置換の準備に関する問い合わせを行い、
第4のプロキシから準備完了を示す通知を前記セッション管理部が受けた場合には、前記セッション管理部は第1のプロキシ及び第3のプロキシに対して切替要求を送信し、
第1のプロキシ及び第3のプロキシのそれぞれは、前記切替要求に応答して、セッションの識別子に基づき置換先の第4のプロキシとの間に第3の通信コネクション及び第4の通信コネクションを確立し、
第1のプロキシ及び第3のプロキシのそれぞれは、第1の通信コネクション及び第2の通信コネクションを介して行われていた通信を第3の通信コネクション及び第4の通信コネクションを通るように切り替えて、
切り替えた全ての通信コネクションについて通信に利用する通信コネクションの切替が完了した後で、第1のプロキシ及び第3のプロキシのそれぞれが前記セッション管理部に対して切替完了を通知し、
第3の通信コネクション及び第4の通信コネクションが確立された後で、通知されたセッションの識別子に基づいて第3の通信コネクションと第4の通信コネクションとを関連付ける
ことを特徴とする通信コネクション確立方法。The communication connection establishment method according to claim 5, wherein there is a session management unit that manages information on the session, and a first communication connection is established between the first proxy and the second proxy for a certain session, A second communication connection is established between the second proxy and the third proxy, and the first proxy, the second proxy, and the third proxy are used by using the first communication connection and the second communication connection. When a request for replacement from the second proxy to a new fourth proxy occurs in a state where communication is performed via the proxy,
Any one terminal notifies the session management unit of the replacement request,
The session management unit makes an inquiry to the fourth proxy regarding preparation for replacement,
When the session manager receives a notification indicating the completion of preparation from the fourth proxy, the session manager sends a switching request to the first proxy and the third proxy,
In response to the switching request, each of the first proxy and the third proxy establishes a third communication connection and a fourth communication connection with the replacement-target fourth proxy based on the session identifier. And
Each of the first proxy and the third proxy switches the communication performed through the first communication connection and the second communication connection to pass through the third communication connection and the fourth communication connection. ,
After the switching of communication connections used for communication is completed for all the switched communication connections, each of the first proxy and the third proxy notifies the session management unit of the completion of switching,
A communication connection establishment method, wherein after the third communication connection and the fourth communication connection are established, the third communication connection and the fourth communication connection are associated with each other based on the notified session identifier. .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001045351A JP3732745B2 (en) | 2000-06-07 | 2001-02-21 | Communication connection establishment method |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000170245 | 2000-06-07 | ||
JP2000-170245 | 2000-06-07 | ||
JP2001045351A JP3732745B2 (en) | 2000-06-07 | 2001-02-21 | Communication connection establishment method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002064562A JP2002064562A (en) | 2002-02-28 |
JP3732745B2 true JP3732745B2 (en) | 2006-01-11 |
Family
ID=26593464
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001045351A Expired - Fee Related JP3732745B2 (en) | 2000-06-07 | 2001-02-21 | Communication connection establishment method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3732745B2 (en) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3785101B2 (en) * | 2002-02-13 | 2006-06-14 | 日本電信電話株式会社 | Communication connection establishment method, communication control device, recording medium, and control program |
KR101472197B1 (en) | 2002-09-03 | 2014-12-11 | 인터디지탈 테크날러지 코포레이션 | A method and system for user initiated inter-device, inter-system, and inter-internet protocol address handoff |
JP4165298B2 (en) | 2003-05-29 | 2008-10-15 | 株式会社日立製作所 | Terminal device and communication network switching method |
JP2005303927A (en) * | 2004-04-15 | 2005-10-27 | Sony Corp | Information processing system, information processing apparatus and method, recording medium, and program |
US8250230B2 (en) * | 2004-09-30 | 2012-08-21 | Microsoft Corporation | Optimizing communication using scalable peer groups |
JP4370356B2 (en) | 2005-02-17 | 2009-11-25 | シャープ株式会社 | Communication network control system, communication terminal, and communication network control method |
US20070242671A1 (en) * | 2006-04-13 | 2007-10-18 | Christenson David A | Method and Apparatus for Routing Data Packets Between Different Internet Communications Stack Instances |
JP5278232B2 (en) * | 2009-07-31 | 2013-09-04 | カシオ計算機株式会社 | Server device, server-based computing system, and program |
JP5662956B2 (en) * | 2012-03-01 | 2015-02-04 | 日本電信電話株式会社 | Cluster system |
JP5716790B2 (en) * | 2013-05-20 | 2015-05-13 | カシオ計算機株式会社 | Server apparatus and program |
WO2019030983A1 (en) * | 2017-08-08 | 2019-02-14 | 株式会社Nttドコモ | Session control device |
CN108877360B (en) * | 2018-07-16 | 2023-07-11 | 深圳市本牛科技有限责任公司 | Education interaction system and equipment |
CN112261627B (en) * | 2020-10-20 | 2024-04-23 | 河南省四通锅炉有限公司 | High-speed transmission method and system for wireless monitoring data of boiler temperature based on Internet of things |
-
2001
- 2001-02-21 JP JP2001045351A patent/JP3732745B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2002064562A (en) | 2002-02-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5572528A (en) | Mobile networking method and apparatus | |
JP5113684B2 (en) | Access gateway device control method and communication system | |
JP4409788B2 (en) | Wireless data communication network switching device and wireless data communication network switching processing program | |
JP3732745B2 (en) | Communication connection establishment method | |
JP6388955B2 (en) | Graceful restart processing method of OpenFlow switch and OpenFlow controller | |
WO2006011493A1 (en) | Communication network control system | |
JP2003333080A (en) | Inter-link system migration method and mobile computing apparatus | |
JP2005051754A (en) | Distance-aware service discovery mechanism for determining availability of remote service in wireless personal area network | |
CA2480280A1 (en) | Method of data transfer in mobile and fixed telecommunications systems | |
US10462048B2 (en) | Virtual cluster establishment method and network device | |
WO2013143360A1 (en) | Method for downloading service data and mobile terminal | |
CN106878072A (en) | A kind of message transmitting method and device | |
JP3785101B2 (en) | Communication connection establishment method, communication control device, recording medium, and control program | |
CN109818901B (en) | Method, device and system for determining message header compression mechanism | |
CN115580943A (en) | Communication method and network based on networking service, terminal device and storage medium | |
JP3672534B2 (en) | Routing control method, routing control device, recording medium, and control program | |
JP2000174824A (en) | Communication system, gateway used for the communication system, radio information terminal and radio communication method | |
US7869435B2 (en) | Communication control system | |
CN103107942B (en) | The tracking of a kind of static routing and equipment | |
EP2482585A1 (en) | Method and system for realizing terminal handover | |
TW200836542A (en) | A method of providing a mobility service | |
JP2004248165A (en) | Session and media relay method, transfer method, and its program and recording medium | |
JP4583433B2 (en) | Relay system | |
JPH1155326A (en) | Mobile ip communication system and mobile ip communication method and router and terminal management server | |
CN102006301A (en) | Method for controlling movement of stream control transmission protocol (SCTP) association among multiple terminals |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20041112 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050208 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20051011 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20051013 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091021 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101021 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101021 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111021 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |