JPWO2007074885A1 - 代理ノード発見方法とその方法で用いられる中継ノード、及びノード発見方法とその方法で用いられる第1のノード、第2のノード、中継ノード - Google Patents
代理ノード発見方法とその方法で用いられる中継ノード、及びノード発見方法とその方法で用いられる第1のノード、第2のノード、中継ノード Download PDFInfo
- Publication number
- JPWO2007074885A1 JPWO2007074885A1 JP2007552017A JP2007552017A JPWO2007074885A1 JP WO2007074885 A1 JPWO2007074885 A1 JP WO2007074885A1 JP 2007552017 A JP2007552017 A JP 2007552017A JP 2007552017 A JP2007552017 A JP 2007552017A JP WO2007074885 A1 JPWO2007074885 A1 JP WO2007074885A1
- Authority
- JP
- Japan
- Prior art keywords
- node
- message
- proxy
- relay
- data
- 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.)
- Withdrawn
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/02—Communication route or path selection, e.g. power-based or shortest path routing
- H04W40/20—Communication route or path selection, e.g. power-based or shortest path routing based on geographic position or location
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4633—Interconnection of networks using encapsulation techniques, e.g. tunneling
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
データ送信者とプロキシ、又はアプリケーションとプロキシとの間にローカルな技術が存在していなくても、プロキシを決定することができる代理ノード発見方法及びその方法で用いられる中継ノードなどを提供する技術が開示され、その技術によれば第1のノード106が、代理ノードの発見を依頼する旨を示す情報を付加した第1のメッセージを第2のノード100に向けて送信し、第1のメッセージを受信した中継ノード108が、自身が第2の経路112上において第2のノードから最も近くに位置する中継ノードか否かを判断し、最も近くにあると判断した中継ノードが、自身と隣り合う第1の経路110上の中継ノードの発見をしている旨を示す情報を付加した第2のメッセージを送信し、第2のメッセージを送信した中継ノードが、第2のメッセージを最初に受信した中継ノード102を特定する情報を第2のメッセージを最初に受信した中継ノードから取得するステップとを有する。
Description
本発明は、データのやりとりをするデータ送受信端末間のデータ経路が異なるネットワークにおいて、特定のシグナリングメッセージを処理することができないデータ送受信端末に隣接するノードを発見するためのものであって、特に、特定のシグナリングメッセージを処理することができないデータ送受信端末の代理として特定のシグナリングメッセージを処理する代理ノード(プロキシ)を決定するための代理ノード発見方法とその方法で用いられる中継ノード、及び特定のシグナリングメッセージを処理することができないデータ送受信端末のための代理として一方のデータ送受信端末が働く際の通信相手となるノードを発見するためのノード発見方法とその方法で用いられる第1のノード、第2のノード、中継ノードに関する。
新たなシグナリングプロトコルとして、NSIS(Next Steps In Signaling)がIETFのNSISワーキンググループ(下記の非特許文献1を参照)によって標準化されつつある。NSISはQoS(Quality of Service)リソース予約において特に有効であると期待されている。最近のインターネットドラフトには、一般的なNSIS(下記の非特許文献5及び6を参照)だけでなく、他のNSIS(下記の非特許文献2から4を参照)におけるQoSシグナリングやモビリティサポートの実施の必要性や提案が記載されている。ネットワークにおけるルータ若しくはターミナルのすべてがNSIS Entities(NE)ではないが、NEはNSIS機能を有している。なお、NEのすべてがモビリティ機能におけるQoSをサポートしない。ここでは、QoS機能を有するNEをQNE(QoS NE)と呼ぶ。QoSリソースは、転送されるデータを通すパスに沿ってそれぞれのQNEで予約される。
このようなNSISにおいて、QoS保証などの付加的なサービスを提供する場合、データ送信者からデータ受信者に向けて送られるデータが通過する経路と同じ経路にNSISシグナリングメッセージ(以下、シグナリングメッセージとも言う)を流し、その経路上に存在する各NSIS対応ノード(NE)がシグナリングメッセージの処理を行うという、Path-coupled(又はOn Path)シグナリング形式が取られる。データ送信者がNEであった場合、データ送信者がデータ受信者に向けてシグナリングメッセージを送信することにより、シグナリングメッセージはデータと同じ経路を通ることになる。データ送信者がNEでない場合には、データ経路上に存在する、データ送信者に最も近いNEがデータ送信者の代理(プロキシ)となり、シグナリングメッセージを送信する必要がある。NSISではプロキシを用いる際、データ送信者とプロキシ、又はアプリケーションとプロキシの間にローカルな技術が存在しており、この技術を用いることにより、プロキシがシグナリングメッセージを送信することができると仮定している(下記の非特許文献5を参照)。
シグナリングメッセージが送信される際、NEは隣り合うNEの情報を格納する。これは、ある付加的サービスに対する一連のシグナリングメッセージのうち、最初のシグナリングメッセージがデータ送信者(又は送信者側プロキシ)からデータ送信者(又はデータ受信者側プロキシ)に向けて送信される際に、各NEはシグナリングメッセージのヘッダに付加されたRAO(Router Alert Option)により、このシグナリングメッセージをインタセプトし、このシグナリングメッセージの処理を行うと同時に、隣り合うNEとの間で情報を交換することによって行われる(下記の非特許文献6を参照)。
また、データ受信者がNEではない場合には、データ経路上のデータ受信者に最も近いNEがデータ受信者側のプロキシとなることができる。これは、データ送信者(又はデータ送信者側プロキシ)から最初のシグナリングメッセージが送信されてきた際、経路上の最後のNEにはシグナリングメッセージ送信方向(downstream方向)の隣り合うNEが存在しないため、自分がデータ経路上の最後のNEであるということを検出し、プロキシとして振舞うことができるからである。
NSISでは、データ送信者がNEではなかった場合、データ送信者とプロキシ、又はアプリケーションとプロキシとの間でローカルな技術が存在しており、この技術を用いることによりプロキシがシグナリングメッセージを送信することができると仮定しているが、このローカルな技術が存在していない場合も考えられる。ローカルな技術が存在していない場合、データ送信者側からシグナリングメッセージを送信することは不可能となる。しかし、データ受信者がNEでデータ送信者から送られるデータに対してNSISによる付加的サービスを所望するような場合も考えられる。この場合、データ受信者であるNEがデータ送信者側のプロキシを発見し、このプロキシにシグナリングメッセージを送るよう依頼することが必要となる。
NSIS WG(http://www.ietf.org/html.charters/nsis-charter.html) H. Chaskar, Ed, "Requirements of a Quality of Service (QoS) Solution for Mobile IP", RFC3583, September 2003 Sven Van den Bosch,Georgios Karagiannis and Andrew McDonald, "NSLP for Quality-of-Service signalling", draft-ietf-nsis-qos-nslp-06.txt, May 2005 S. Lee, et al., "Applicability Statement of NSIS Protocols in Mobile Environments", draft-ietf-nsis-applicability-mobility-signaling-01.txt, February 2005 R. Hancock(editor),"Next Steps in Signaling: Framework", RFC4080, June 2005 H.Schulzrinne and R.Hancock,"GIMPS: General Internet Messaging Protocol for Signaling",draft-ietf-nsis-ntlp-07(work in progress),July 2005 T. Sanda, T.Ue and H.Cheng, "Path type support for NSIS signaling",draft-sanda-nsis-path-type-02.txt,February 2005
NSIS WG(http://www.ietf.org/html.charters/nsis-charter.html) H. Chaskar, Ed, "Requirements of a Quality of Service (QoS) Solution for Mobile IP", RFC3583, September 2003 Sven Van den Bosch,Georgios Karagiannis and Andrew McDonald, "NSLP for Quality-of-Service signalling", draft-ietf-nsis-qos-nslp-06.txt, May 2005 S. Lee, et al., "Applicability Statement of NSIS Protocols in Mobile Environments", draft-ietf-nsis-applicability-mobility-signaling-01.txt, February 2005 R. Hancock(editor),"Next Steps in Signaling: Framework", RFC4080, June 2005 H.Schulzrinne and R.Hancock,"GIMPS: General Internet Messaging Protocol for Signaling",draft-ietf-nsis-ntlp-07(work in progress),July 2005 T. Sanda, T.Ue and H.Cheng, "Path type support for NSIS signaling",draft-sanda-nsis-path-type-02.txt,February 2005
しかしながら、データ送信者側からデータ受信者側に送られるデータ及びシグナリングメッセージの経路と、データ受信者側からデータ送信者側に送られるシグナリングメッセージの経路とが異なる場合があるため、データ受信者であるNEからデータ送信者に向けて何かしらのシグナリングメッセージを送信することにより、データ送信者側のプロキシを発見するのは困難である。これについて図16を用いて説明する。図16に示すように、NEではないターミナル1600と、NEであるターミナル1606及び、NE1602、NE1604、NE1608からデータ通信システムが構成されている。データ送信者であるターミナル1600からターミナル1606へ送信されるデータは経路1610、すなわちNE1602及びNE1604を経由してターミナル1606へ送られる。一方、ターミナル1606からターミナル1600に向けて送信されるデータは経路1612、すなわちNE1604及びNE1608を経由してターミナル1600に送られる。
今、ターミナル1600からターミナル1606に向けてデータが送られようとしており、データ受信者で、かつNEであるターミナル1606がNSISによる付加的サービスを所望したとする。この場合、経路1610上でターミナル1600に最も近いNE、すなわちNE1602がプロキシとなり、ターミナル1606にシグナリングメッセージを送信する必要がある。しかし、ターミナル1606がNE1602を発見するために、ターミナル1600に向けてシグナリングメッセージを送信した場合、このシグナリングメッセージはターミナル1606からターミナル1600へのデータ経路と同じ経路1612を通るため、NE1602を経由することはできず、よってNE1602をプロキシとして検出することができない。また、ターミナル1606がターミナル1600を経由して自分に返ってくるようなループバック型のシグナリングメッセージを送信した場合、このシグナリングメッセージは経路1612を通った後、経路1610を通ってターミナル1606に到達するのでNE1602を経由することはできる。しかし、ターミナル1606は、どのNEが経路1610上でターミナル1600に最も近いNEであるかを知る手段を持たないため、プロキシを決定することができない。
また、Path-coupledシグナリング形式(スキーム)のほとんどは、データトラフィックの通信エンドポイント(後述するCNやMNなどのデータ送受信端末)がシグナリングを認識することが可能なもの(シグナリング処理可能ノード)であると仮定している。しかしながら、モバイルコンピューティングの増加するポラリティにおいて、この仮定はもはや確かなものではない。モバイルコンピューティングにおいて、通常の通信エンドポイントはモバイルデバイスである。これらのモバイルデバイスは、通常、これらモバイル特有の有限の計算力、メモリ、バッテリー寿命がある。それゆえ、それらモバイル上で処理されるアプリケーション若しくはオペレーションシステムは軽い負荷でなければならない。このため、特別なパケット処理を必要とするシグナリングスキームや特別なシグナリング状態をデバイス上でサポートすることは好ましくない。
エンドポイントがシグナリング処理可能ノードではないケースの例として、レガシーデバイスがエンドポイントとして用いられるケースが考えられる。レガシーデバイスにとって、シグナリングスキームをサポートすることはオペレーティングシステム若しくは関連のあるハードウェアのアップグレードを意味する。これは異なる配置環境のため可能ではない。また、新しいシグナリングの特徴がスキームに加えられるたびにアップグレードしたデバイスを持つことは可能ではない。
上述したように、通信エンドノードのためにプロキシとして働く他のノードが必要である。しかしながら、このアプローチはネットワークルーティングの非対称性に直面する。ターミナル(CN)1606からターミナル(MN)1600へのデータパスがターミナル(MN)1600からターミナル(CN)1606へのパスと異なることはあり得る。これはPath-coupledシグナリングスキームにおける問題となる。ターミナル(MN)1600以外のどのノードも実際のデータパスを正確に識別できない。それゆえ、ターミナル(MN)1600に最も近いシグナリング処理可能ノードを識別できないという問題がある。
本発明は、上記の問題点に鑑み、データ送信者とプロキシ(代理ノード)、又はアプリケーションとプロキシとの間にローカルな技術が存在していなくても、プロキシを決定することができる代理ノード発見方法とその方法で用いられる中継ノード、及びデータ送信者とデータ送信者に隣接するノードとの間にローカルな技術が存在しなくても隣接するノードを決定することができるノード発見方法とその方法で用いられる第1のノード、第2のノード、中継ノードを提供することを目的とする。
上記目的を達成するために、本発明によれば、データを送受信する第1のノードと、前記第1のノードの通信相手である第2のノードと、前記第1のノードと前記第2のノードとの間で送受信されるデータを中継する複数の中継ノードとを備え、前記第2のノードから前記第1のノードへのデータは第1の経路を通り、前記第1のノードから前記第2のノードへのデータは第2の経路を通り、前記第1のノード及び前記中継ノードのうち少なくとも1つ以上の中継ノードが所定の性質を有するメッセージを受信し処理することができるデータ通信システムにおける、前記第2のノードの代理として前記所定の性質を有するメッセージを処理する前記第1の経路上に位置する代理ノードを発見する代理ノード発見方法であって、前記第1のノードが、前記所定の性質を有するメッセージに、前記代理ノードの発見を依頼する旨を示す情報を付加した第1のメッセージを前記第2のノードに向けて送信するステップと、前記第1のメッセージを受信した前記中継ノードが、自身が前記第2の経路上において前記第2のノードから最も近くに位置する中継ノードであるか否かを判断するステップと、前記第2の経路上において前記第2のノードから最も近くに位置する中継ノードであると判断した中継ノードが、前記所定の性質を有するメッセージに、自身と隣り合う前記第1の経路上の中継ノードの発見をしている旨を示す情報を付加した第2のメッセージを前記第2のノードを経由させて送信するステップと、前記第2のメッセージを送信した中継ノードが、送信された前記第2のメッセージを最初に受信した中継ノードを特定する情報を前記第2のメッセージを最初に受信した中継ノードから取得するステップとを有する代理ノード発見方法が提供される。この構成により、データ送信者とプロキシ、又はアプリケーションとプロキシとの間にローカルな技術が存在していなくても、プロキシを決定することができる。なお、「前記第2の経路上において前記第2のノードから最も近くに位置する」は、「第2の経路上において第2のノードから見て最初の」ということと同義である。
また、本発明の代理ノード発見方法において、前記第1のメッセージが、前記第1の経路上において前記第2のノードから最も近くに位置する、前記所定の性質を有するメッセージを処理できる中継ノードの発見を要求する旨を示すメッセージであり、前記第2のノードのアドレス情報を含むことは、本発明の好ましい態様である。この構成により、第1のメッセージを第2の経路を経由して第2のノードに到達させることができる。
また、本発明の代理ノード発見方法において、前記第2のメッセージを送信した中継ノード又は前記第2のメッセージを最初に受信した中継ノードが、前記所定の性質を有するメッセージに、前記第2のメッセージを最初に受信した中継ノードを特定する情報を含めた第3のメッセージを前記第1のノードに送信することは、本発明の好ましい態様である。この構成により、第1のノードは代理ノードを知ることができる。
また、本発明の代理ノード発見方法において、前記第1のメッセージが、前記第1の経路上において前記第2のノードから最も近くに位置する、前記所定の性質を有するメッセージを処理できる中継ノードの発見を要求する旨を示すメッセージで、更に発見された前記中継ノードに前記第1の経路にQoSリソースの予約を要求する旨を示すメッセージであり、前記第2のノードのアドレス情報、第1のノードのアドレス情報、前記第1の経路に予約する前記QoSリソースの情報のうち少なくとも1つ以上を含むことは、本発明の好ましい態様である。この構成により、代理ノードとされた中継ノードが第1の経路にQoSリソースの予約をすることができる。
また、本発明の代理ノード発見方法において、前記第2のメッセージが、更に前記第2のメッセージを最初に受信した中継ノードが前記第1の経路にQoSリソース予約をすることを要求する旨を示すメッセージであり、前記第1のノードのアドレス情報、前記第1の経路に予約する前記QoSリソースの情報のうち少なくとも1つ以上を含むことは、本発明の好ましい態様である。この構成により、代理ノードとされた中継ノードが第1の経路にQoSリソースの予約をすることができる。
また、本発明の代理ノード発見方法において、前記第1のメッセージ及び前記第2のメッセージに、前記所定の性質を有するメッセージを処理できる中継ノードに、前記第1のメッセージ及び前記第2のメッセージの受信を可能とさせるための情報が含まれていることは、本発明の好ましい態様である。この構成により、所定の性質を有するメッセージを処理できる中継ノードが、確実にメッセージを受け取ることができる。
また、本発明の代理ノード発見方法において、前記代理ノードが発見された後に前記第2のノードがハンドオーバした場合、前記ハンドオーバ先における前記代理ノードを再度発見するよう構成することは、本発明の好ましい態様である。この構成により、ハンドオーバしてもハンドオーバ先で通信を継続することができる。
また、本発明によれば、データを送受信する第1のノードと、前記第1のノードの通信相手である第2のノードと、前記第1のノードと前記第2のノードとの間で送受信されるデータを中継する複数の中継ノードとを備え、前記第2のノードから前記第1のノードへのデータは第1の経路を通り、前記第1のノードから前記第2のノードへのデータは第2の経路を通り、前記第1のノード及び前記中継ノードのうち少なくとも1つ以上の中継ノードが所定の性質を有するメッセージを受信し処理することができるデータ通信システムにおける、前記所定の性質を有するメッセージを処理することができる前記中継ノードであって、前記第1のノードから送信された、前記所定の性質を有するメッセージに前記代理ノードの発見を依頼する旨を示す情報が付加された第1のメッセージを受信する受信手段と、受信された前記第1のメッセージに基づいて、自身が前記第2の経路上において前記第2のノードから最も近くに位置する中継ノードであるか否かを判断する判断手段と、前記第2の経路上において前記第2のノードから最も近くに位置する中継ノードであると判断した場合、前記所定の性質を有するメッセージに、自身と隣り合う前記第1の経路上の中継ノードの発見をしている旨を示す情報を付加した第2のメッセージを生成するメッセージ生成手段と、生成された前記第2のメッセージを前記第2のノードを経由させて送信する送信手段と、送信された前記第2のメッセージを最初に受信した中継ノードを特定する情報を前記第2のメッセージを最初に受信した中継ノードから取得する取得手段とを、備える中継ノードが提供される。この構成により、データ送信者とプロキシ、又はアプリケーションとプロキシとの間にローカルな技術が存在していなくても、プロキシを決定することができる。
また、本発明の中継ノードにおいて、前記第1のメッセージが、前記第1の経路上において前記第2のノードから最も近くに位置する、前記所定の性質を有するメッセージを処理できる中継ノードの発見を要求する旨を示すメッセージであり、前記第2のノードのアドレス情報を含むことは、本発明の好ましい態様である。この構成により、第1のメッセージを第2の経路を経由して第2のノードに到達させることができる。
また、本発明の中継ノードにおいて、前記取得手段が、前記第2のメッセージを最初に受信した中継ノードから前記第2のメッセージを最初に受信した前記中継ノードに関する情報を取得し、前記メッセージ生成手段が、前記所定の性質を有するメッセージに、取得された前記中継ノードを特定する情報を含めた第3のメッセージを生成し、前記送信手段が、生成された前記第3のメッセージを前記第1のノードに送信することは、本発明の好ましい態様である。この構成により、第1のノードは代理ノードを知ることができる。
また、本発明の中継ノードにおいて、前記第1のメッセージが、前記第1の経路上において前記第2のノードから最も近くに位置する、前記所定の性質を有するメッセージを処理できる中継ノードの発見を要求する旨を示すメッセージで、更に発見された前記中継ノードに前記第1の経路にQoSリソースの予約を要求する旨を示すメッセージであり、前記第2のノードのアドレス情報、第1のノードのアドレス情報、第1の経路に予約する前記QoSリソースの情報のうち少なくとも1つ以上を含むことは、本発明の好ましい態様である。この構成により、代理ノードとされた中継ノードが第1の経路にQoSリソースの予約をすることができる。
また、本発明の中継ノードにおいて、前記第2のメッセージが、更に前記第2のメッセージを最初に受信した中継ノードが前記第1の経路にQoSリソース予約をすることを要求する旨を示すメッセージであり、前記第1のノードのアドレス情報、第1の経路に予約する前記QoSリソースの情報のうち少なくとも1つ以上を含むことは、本発明の好ましい態様である。この構成により、代理ノードとされた中継ノードが第1の経路にQoSリソースの予約をすることができる。
また、本発明の中継ノードにおいて、前記第1のメッセージ及び前記第2のメッセージに、前記所定の性質を有するメッセージを処理できる中継ノードに、前記第1のメッセージ及び前記第2のメッセージの受信を可能とさせるための情報が含まれていることは、本発明の好ましい態様である。この構成により、所定の性質を有するメッセージを処理できる中継ノードが、確実にメッセージを受け取ることができる。
また、本発明によれば、データを送受信する第1のノードと、前記第1のノードの通信相手である第2のノードと、前記第1のノードと前記第2のノードとの間で送受信されるデータを中継する複数の中継ノードとを備え、前記第2のノードから前記第1のノードへのデータは第1の経路を通り、前記第1のノードから前記第2のノードへのデータは第2の経路を通り、前記第1のノード及び前記中継ノードのうち少なくとも1つ以上の中継ノードが所定の性質を有するメッセージを受信し処理することができるデータ通信システムにおける、前記所定の性質を有するメッセージの処理が可能な前記第1の経路上に位置する前記第2のノードから最も近くに位置するノードを発見するノード発見方法であって、前記第1のノードが、前記第1の経路上に位置する前記第2のノードから最も近くに位置する前記ノードを発見するためのメッセージを前記第2のノードに向けて送信するステップと、前記第1のノードが、送信された前記第2のノードを経由した前記メッセージを基に、前記第1の経路上に位置する前記第2のノードから最も近くに位置する前記ノードによって送信されたメッセージに含まれる前記ノード自身を特定する情報を受信するステップとを有するノード発見方法が提供される。この構成により、データ送信者(第2のノード)とデータ送信者に隣接するノード(中継ノード)との間にローカルな技術が存在しなくても隣接するノードを決定することができる。
また、本発明によれば、データを送受信する第1のノードと、前記第1のノードの通信相手である第2のノードと、前記第1のノードと前記第2のノードとの間で送受信されるデータを中継する複数の中継ノードとを備え、前記第2のノードから前記第1のノードへのデータは第1の経路を通り、前記第1のノードから前記第2のノードへのデータは第2の経路を通り、前記第1のノード及び前記中継ノードのうち少なくとも1つ以上の中継ノードが所定の性質を有するメッセージを受信し処理することができるデータ通信システムにおける、前記所定の性質を有するメッセージの処理が可能な前記第1の経路上に位置する前記第2のノードから最も近くに位置するノードを発見するノード発見方法であって、前記第1のノードが、自身が前記第2のノードの代理として働く代理ノードとなることを提案する第1のメッセージを前記第2のノードに向けて送信するステップと、前記第2のノードが、受信した前記第1のメッセージに基づいて前記第1のノードを前記代理ノードとして受け入れる場合、受信した前記第1のメッセージの一部を第2のメッセージとして前記第1のノードに向けて送信するステップと、前記第2のノードによって送信された前記第2のメッセージを受信した前記中継ノードが、自身を特定するための情報を前記第2のメッセージに含めて前記第1のノードに向けて送信するステップとを有するノード発見方法が提供される。この構成により、データ送信者(第2のノード)とデータ送信者に隣接するノード(中継ノード)との間にローカルな技術が存在しなくても隣接するノードを決定することができる。
また、本発明のノード発見方法において、前記第1のメッセージが、送信元のアドレスとして前記第2のノードのアドレス情報、送信先のアドレスとして前記第1のノードのアドレス情報、実際の送信元のノードのアドレス情報を少なくとも含み、所定のヘッダ情報によってカプセル化されていることは、本発明の好ましい態様である。この構成により、適切にメッセージを送信することができる。
また、本発明のノード発見方法において、前記第2のノードが、前記第1のメッセージの前記所定のヘッダ情報を外し、外された前記第1のメッセージを前記第2のメッセージとして前記第1のノードに向けて送信することは、本発明の好ましい態様である。この構成により、第2のノードに隣接する求めるべきノードを発見することができる。
また、本発明のノード発見方法において、前記第2のメッセージを受信した前記中継ノードが、前記第2のメッセージに含まれる前記実際の送信元のノードのアドレス情報に基づいて、前記第2のメッセージを送信した前記第1の経路上で隣り合うノードであるホップノードのアドレス情報を取得し、前記第2のメッセージに含まれる前記実際の送信元のノードのアドレス情報を自身のアドレス情報に変更することは、本発明の好ましい態様である。この構成により、メッセージフローと逆方向の隣り合うノードを知ることができる。
また、本発明のノード発見方法において、前記第1のノードが、前記第2のノードが移動した場合、再度前記第1のメッセージを前記第2のノードに向けて送信することは、本発明の好ましい態様である。この構成により、移動後においても新たな経路を構築することができる。
また、本発明によれば、データを送受信する第1のノードと、前記第1のノードの通信相手である第2のノードと、前記第1のノードと前記第2のノードとの間で送受信されるデータを中継する複数の中継ノードとを備え、前記第2のノードから前記第1のノードへのデータは第1の経路を通り、前記第1のノードから前記第2のノードへのデータは第2の経路を通り、前記第1のノード及び前記中継ノードのうち少なくとも1つ以上の中継ノードが所定の性質を有するメッセージを受信し処理することができるデータ通信システムにおける、前記所定の性質を有するメッセージの処理が可能な前記第1の経路上に位置する前記第2のノードから最も近くに位置するノードを発見するノード発見方法で用いられる前記第1のノードであって、前記第1のノード自身が前記第2のノードの代理として働く代理ノードとなることを提案するための第1のメッセージを生成するメッセージ生成手段と、生成された前記第1のメッセージを前記第2のノードに向けて送信する送信手段とを備える第1のノードが提供される。この構成により、データ送信者(第2のノード)とデータ送信者に隣接するノード(中継ノード)との間にローカルな技術が存在しなくても隣接するノードを決定することができる。
また、本発明の第1のノードにおいて、前記第1のメッセージが、送信元のアドレスとして前記第2のノードのアドレス情報、送信先のアドレスとして前記第1のノードのアドレス情報、実際の送信元のノードのアドレス情報を少なくとも含み、所定のヘッダ情報によってカプセル化されていることは、本発明の好ましい態様である。この構成により、適切にメッセージを送信することができる。
また、本発明の第1のノードにおいて、前記送信手段が、前記第2のノードが移動した場合、再度前記第1のメッセージを前記第2のノードに向けて送信することは、本発明の好ましい態様である。この構成により、移動後においても新たな経路を構築することができる。
また、本発明によれば、データを送受信する第1のノードと、前記第1のノードの通信相手である第2のノードと、前記第1のノードと前記第2のノードとの間で送受信されるデータを中継する複数の中継ノードとを備え、前記第2のノードから前記第1のノードへのデータは第1の経路を通り、前記第1のノードから前記第2のノードへのデータは第2の経路を通り、前記第1のノード及び前記中継ノードのうち少なくとも1つ以上の中継ノードが所定の性質を有するメッセージを受信し処理することができるデータ通信システムにおける、前記所定の性質を有するメッセージの処理が可能な前記第1の経路上に位置する前記第2のノードから最も近くに位置するノードを発見するノード発見方法で用いられる前記第2のノードであって、前記第1のノードによって送信された、前記第1のノードが前記第2のノードの代理として働く代理ノードとなることを提案する第1のメッセージを受信する受信手段と、受信された前記第1のメッセージに基づいて前記第1のノードを前記代理ノードとして受け入れる場合、受信した前記第1のメッセージの一部を第2のメッセージに加工する加工手段と、加工された前記第2のメッセージを前記第1のノードに向けて送信する送信手段とを備える第2のノードが提供される。この構成により、データ送信者(第2のノード)とデータ送信者に隣接するノード(中継ノード)との間にローカルな技術が存在しなくても隣接するノードを決定することができる。
また、本発明の第2のノードにおいて、前記第1のメッセージが、送信元のアドレスとして前記第2のノードのアドレス情報、送信先のアドレスとして前記第1のノードのアドレス情報、実際の送信元のノードのアドレス情報を少なくとも含み、所定のヘッダ情報によってカプセル化されていることは、本発明の好ましい態様である。この構成により、適切にメッセージを送信することができる。
また、本発明の第2のノードにおいて、前記加工手段が前記第1のメッセージの前記所定のヘッダ情報を外して前記第2のメッセージを生成することは、本発明の好ましい態様である。この構成により、第2のノードに隣接する求めるべきノードを発見することができる。
また、本発明の第2のノードにおいて、前記送信手段が、前記第2のノード自身が移動した場合、再度前記第1のメッセージを前記第1のノードから受信するために、移動したことを知らせるメッセージを前記第1のノードに向けて送信することは、本発明の好ましい態様である。この構成により、移動後においても新たな経路を構築することができる。
また、本発明によれば、データを送受信する第1のノードと、前記第1のノードの通信相手である第2のノードと、前記第1のノードと前記第2のノードとの間で送受信されるデータを中継する複数の中継ノードとを備え、前記第2のノードから前記第1のノードへのデータは第1の経路を通り、前記第1のノードから前記第2のノードへのデータは第2の経路を通り、前記第1のノード及び前記中継ノードのうち少なくとも1つ以上の中継ノードが所定の性質を有するメッセージを受信し処理することができるデータ通信システムにおける、前記所定の性質を有するメッセージの処理が可能な前記第1の経路上に位置する前記第2のノードから最も近くに位置するノードを発見するノード発見方法で用いられる前記中継ノードであって、前記第2のノードによって送信された、前記第2のノードの代理として働く代理ノードとなることを提案する前記第1のノードによる第1のメッセージの一部である第2のメッセージを受信する受信手段と、前記第2のノード自身を特定するための情報を受信された前記第2のメッセージに含めるメッセージ生成手段と、生成された前記第2のメッセージを前記第1のノードに向けて送信する送信手段とを備える中継ノードが提供される。この構成により、データ送信者(第2のノード)とデータ送信者に隣接するノード(中継ノード)との間にローカルな技術が存在しなくても隣接するノードを決定することができる。
また、本発明の中継ノードにおいて、前記第1のメッセージが、送信元のアドレスとして前記第2のノードのアドレス情報、送信先のアドレスとして前記第1のノードのアドレス情報、実際の送信元のノードのアドレス情報を少なくとも含み、所定のヘッダ情報によってカプセル化されていることは、本発明の好ましい態様である。この構成により、適切にメッセージを送信することができる。
また、本発明の中継ノードにおいて、前記第2のメッセージに含まれる前記実際の送信元のノードのアドレス情報に基づいて、前記第2のメッセージを送信した前記第1の経路上で隣り合うノードであるホップノードのアドレス情報を取得し、前記第2のメッセージに含まれる前記実際の送信元のノードのアドレス情報を自身のアドレス情報に変更することは、本発明の好ましい態様である。この構成により、メッセージフローと逆方向の隣り合うノードを知ることができる。
本発明の代理ノード発見方法とその方法で用いられる中継ノードは、上記構成を有し、データ送信者とプロキシ(代理ノード)、又はアプリケーションとプロキシとの間にローカルな技術が存在していなくても、プロキシを決定することができる。また、本発明のノード発見方法とその方法で用いられる第1のノード、第2のノード、中継ノードは、上記構成を有し、データ送信者とデータ送信者に隣接するノードとの間にローカルな技術が存在しなくても隣接するノードを決定することができる。
<第1の実施の形態>
以下、本発明の第1の実施の形態について図1から図3を用いて説明する。図1は本発明の第1の実施の形態におけるデータ通信システムの構成を示す構成図である。図2は本発明の第1の実施の形態に係る代理ノード発見方法(シグナリングプロキシの発見方法)について説明するためのシーケンスチャートである。図3は本発明の第1の実施の形態に係る中継ノードの構成を示す構成図である。
以下、本発明の第1の実施の形態について図1から図3を用いて説明する。図1は本発明の第1の実施の形態におけるデータ通信システムの構成を示す構成図である。図2は本発明の第1の実施の形態に係る代理ノード発見方法(シグナリングプロキシの発見方法)について説明するためのシーケンスチャートである。図3は本発明の第1の実施の形態に係る中継ノードの構成を示す構成図である。
まず、本発明の第1の実施の形態に係るシグナリングプロキシの発見方法について図1及び図2を用いて説明する。なお、ここではNSISによる付加的サービスにおけるプロキシの発見方法について説明するが、RSVP(Resource reSerVation Protocol)などの他のシグナリングメッセージを使った技術にも適用できる。また、本発明の第1の実施の形態では、後述するターミナル100が通常のルータ機能も有しているものとする。図1に示すように、ターミナル(NE)106は、ターミナル100から送られるデータに対して、NSISによる付加的サービスを所望するとデータ送信者側のプロキシを決定するために以下の作業を行う。
まず、ターミナル106は、経路112上で最もターミナル100に近いNE、すなわちNE108を発見するために、シグナリングメッセージをターミナル100に向けて送信する。このシグナリングメッセージ(以下、メッセージ1とも言う)は、「経路110上でターミナル100に最も近いNE(代理ノードとも言う)を発見せよ」という意味を示す情報を持ち、ターミナル100のアドレス情報を有する。このメッセージ1はNSISのシグナリングメッセージを本発明の第1の実施の形態用に拡張したものでもよく、新しく定義されたシグナリングメッセージでもよい。ただし、各NEのみがメッセージ1を受け取れるような機能(RAOが付加されているなど)を有しており、メッセージ1を受け取ったNEがメッセージ1が通る経路上の隣り合うNEを知ることができる機能を有している必要がある。メッセージ1は経路112上を通って送信される。
NE108は、経路112上のメッセージ1の送信方向(downstream方向)に隣り合うNEが存在しないことから、自分が経路112上で最もターミナル100に近いNEであることを判断する。次に、NE108は、経路110上で最もターミナル100に近いNEを発見するため、探している(発見をしている)旨を示す情報を付加したシグナリングメッセージ(以下、メッセージ2とも言う)をターミナル100経由でターミナル106に向けて送信する。ターミナル100経由でメッセージ2を送信するためには、例えばIP技術の既存技術であるstrict routeなどが利用できる。このメッセージ2はNSISのシグナリングメッセージを本発明の第1の実施の形態用に拡張したものでもよく、新しく定義されたシグナリングメッセージでもよい。ただし、各NEのみがメッセージ2を受け取れるような機能(RAOが付加されているなど)を有しており、メッセージ2を受け取ったNEがメッセージ2が通る経路上の隣り合うNEを知ることができる機能を有している必要がある。メッセージ2は経路112を通り、いったんターミナル100を通過した後、経路110を通ってターミナル106へ送られる。
NE108は、シグナリングメッセージ送信方向の隣り合うNE、すなわちNE102の情報を得る。経路112上でNE108とターミナル100との間にはNEが存在しないため、この隣り合うNEが経路110上でターミナル100に最も近いNEだということが分かる。こうしてプロキシが発見される。発見されたプロキシの情報は、シグナリングメッセージ(以下、メッセージ3とも言う)により、ターミナル106に通知される。このメッセージ3はNE108から送信されてもよいし、NE102から送信されてもよい。このメッセージ3はNSISのシグナリングメッセージを本発明の第1の実施の形態用に拡張したものでもよく、新しく定義されたシグナリングメッセージであってもよい。メッセージ3を受け取ったターミナル106は、プロキシ(NE102)に対し、付加的サービスのためのシグナリングメッセージを送信するよう要求する要求メッセージを送信する。この要求メッセージはNSISのシグナリングメッセージを本発明の第1の実施の形態用に拡張したものでもよく、新しく定義されたシグナリングメッセージであってもよい。
次に、本発明の第1の実施の形態に係る中継ノードについて図3を用いて説明する。ここで説明する中継ノードはNSISのシグナリングメッセージを処理することができる中継ノード(NE)であり、例えばNE108である。図3に示すように、中継ノード(NE)300は、受信部301、判断部302、メッセージ生成部303、送信部304、取得部305、記憶部306から構成されている。受信部301は、ターミナル100とターミナル106との間でやりとりされるデータやシグナリングメッセージなどを受信するもので、例えばターミナル106から送信された、代理ノードを発見するためのメッセージ1を受信する。
判断部302は、受信されたメッセージ1に基づいて、中継ノード300自身が経路112上においてターミナル100から最も近くに位置する中継ノードであるか否かを判断するものである。すなわち、判断部302は、経路112上のメッセージ1の送信方向(downstream方向)に隣り合うNEが存在しないことから、中継ノード300自身が経路112上で最もターミナル100に近いNEであることを判断する。メッセージ生成部303は、判断部302によって経路112上においてターミナル100から最も近くに位置する中継ノードであると判断された場合、中継ノード300自身と隣り合う経路110上の中継ノードを発見するためのメッセージ2を生成するものである。なお、このメッセージ2は、NSISのシグナリングメッセージを本発明の第1の実施の形態用に拡張したものでもよく、新しく定義されたシグナリングメッセージでもよい。ただし、各NEのみがメッセージ2を受け取れるような機能(RAOが付加されているなど)を有しており、メッセージ2を受け取ったNEがメッセージ2が通る経路上の隣り合うNEを知ることができる機能を有している必要がある。
送信部304は、ターミナル100とターミナル106との間でやりとりされるデータやシグナリングメッセージなどを送信するもので、例えば生成されたメッセージ2をターミナル100を経由させてターミナル106に向けて送信する。ターミナル100経由でメッセージ2を送信するためには、例えばIP技術の既存技術であるstrict routeなどが利用できる。取得部305は、送信部304によって送信されたメッセージ2を最初に受信した中継ノードに関する情報をメッセージ2を最初に受信した中継ノードから取得するものである。中継ノード300は、経路112上でNE108とターミナル100との間にはNEが存在しないため、この隣り合うNEが経路110上でターミナル100に最も近いNEだということが分かる。こうしてプロキシが発見される。なお、送信部304は、発見されたプロキシの情報を含むメッセージ3をターミナル106に送信するようにしてもよい。このメッセージ3はNSISのシグナリングメッセージを本発明の第1の実施の形態用に拡張したものでもよく、新しく定義されたシグナリングメッセージであってもよい。記憶部306は、中継ノード300が行う処理によって生じた情報を格納したり、中継ノード300の動作を制御するための制御プログラムなどを格納したりするものである。
<第2の実施の形態>
以下、本発明の第2の実施の形態について図4から図6を用いて説明する。図4は本発明の第2の実施の形態におけるデータ通信システムの構成を示す構成図である。図5は本発明の第2の実施の形態に係る代理ノード発見方法(シグナリングプロキシの発見方法)及びQoSリソース予約を説明するためのシーケンスチャートである。図6は本発明の第2の実施の形態に係る中継ノードの構成を示す構成図である。なお、本発明の第2の実施の形態では、後述するターミナル400が通常のルータ機能も有しているものとする。
以下、本発明の第2の実施の形態について図4から図6を用いて説明する。図4は本発明の第2の実施の形態におけるデータ通信システムの構成を示す構成図である。図5は本発明の第2の実施の形態に係る代理ノード発見方法(シグナリングプロキシの発見方法)及びQoSリソース予約を説明するためのシーケンスチャートである。図6は本発明の第2の実施の形態に係る中継ノードの構成を示す構成図である。なお、本発明の第2の実施の形態では、後述するターミナル400が通常のルータ機能も有しているものとする。
本発明の第2の実施の形態では、第1の実施の形態で、発見されたプロキシ(代理ノード)の情報をターミナル106に通知することなく、プロキシが付加的サービスのためのシグナリングメッセージ送信を開始するものである。この方法の一例を図4及び図5を用いて説明する。なお、ここではNSISによる付加的サービスをNSIS QoS NSLP(NSIS Signaling Layer Protocol:付加的サービスを提供するためのシグナリングメッセージ生成及びその処理を行うプロトコル)によるQoSの保証とし、また、QNE402、QNE404、QNE408及びターミナル406は、QoS NSLP機能を持ったNE、すなわちQNEとするが、本発明の第2の実施の形態は、QoS保証以外のNSISによる付加的サービスにばかりでなく、RSVPなどの他のシグナリング技術にも適用できる。
ターミナル406は、ターミナル400から送られるデータに対して、NSISによるQoS保証を所望すると、「経路410上でターミナル400に最も近いQNEを発見し、そのQNE(プロキシ)に対して経路410にQoSリソースを予約するよう依頼せよ」という意味を示す情報を持つシグナリングメッセージ(以下、メッセージ4とも言う)をターミナル400に向けて送信する。また、メッセージ4はターミナル400のアドレス情報のほか、プロキシが経路410に対してQoSリソースを予約するのに必要な情報(ターミナル406のアドレス情報や所望するQoSリソースの情報など)を持つ。また、プロキシが経路410に対してQoSリソースを予約するのに必要な情報として、使用するセッションIDを含んでいてもよい。メッセージ4は経路412を通って送信される。メッセージ4はNSISのシグナリングメッセージを本発明の第2の実施の形態用に拡張したものでもよく、新しく定義されたシグナリングメッセージであってもよい。ただし、各QNEのみがメッセージ4を受け取れるような機能(RAOが付加されているなど)を有しており、メッセージ4を受け取ったQNEがメッセージ4の通る経路上の隣り合うQNEを知ることができる機能を有している必要がある。
QNE408は、経路412上のシグナリングメッセージ送信方向(downstream方向)に隣り合うQNEが存在しないことから、自分が経路412上で最もターミナル400に近いQNEであることを判断する。次に、QNE408は、「このメッセージを最初に受け取ったQNE(プロキシ)は、経路410上に所望されるQoSリソースを予約せよ」という意味を示す情報を持つシグナリングメッセージ(以下、メッセージ5とも言う)をターミナル400経由でターミナル406に向けて送信する。ターミナル400経由でシグナリングメッセージを送信するためには、例えばIP技術の既存技術であるstrict routeなどが利用できる。メッセージ5はプロキシが経路410に対して、QoSリソース予約をするために必要な情報(ターミナル406のアドレス情報や所望するQoSリソースの情報など)を持つ。この情報は上述したメッセージ4からコピーされる。メッセージ5はいったんターミナル400を通過した後、経路410を通ってターミナル406へ送られるか、又はこのメッセージ5を受け取った最初のQNE(QNE402)で止められてそれ以上送信されなくてもよい。
メッセージ5はNSISのシグナリングメッセージを本発明の第2の実施の形態用に拡張したものでもよく、新しく定義されたシグナリングメッセージであってもよい。ただし、各QNEのみがメッセージ5を受け取れるような機能(RAOが付加されているなど)を有している必要がある。なお、本発明の第2の実施の形態では、プロキシが付加的サービスのためのシグナリングメッセージの送信を開始するため、このシグナリングメッセージを受け取ったQNEが隣り合うQNEを知ることができる機能は必ずしも有していなくてもよい。
メッセージ5を受け取ったQNE402は、自分がプロキシであることを検出し、QoS NSLPのメッセージであるRESERVEメッセージをターミナル406に送信することにより経路410上のQoSリソースを予約する。メッセージ5にセッションIDが含まれていない場合には、QNE402がセッションIDを生成する。なお、QNE402がターミナル406にRESERVEメッセージを送るのではなく、QoS NSLPのメッセージであるQUERYメッセージを送ることによりターミナル406から受信者主導のQoSリソース予約を行ってもよい。
次に、本発明の第2の実施の形態に係る中継ノードについて図6を用いて説明する。ここで説明する中継ノードはQoS NSLP機能を持った中継ノード(QNE)であり、例えばQNE408である。図6に示すように、中継ノード(QNE)600は、受信部601、判断部602、メッセージ生成部603、送信部604、取得部605、記憶部606から構成されている。受信部601は、ターミナル400とターミナル406との間でやりとりされるデータやシグナリングメッセージなどを受信するもので、例えばターミナル406から送信された、「経路410上でターミナル400に最も近いQNEを発見し、そのQNE(プロキシ)に対して経路410にQoSリソースを予約するよう依頼せよ」という意味を示す情報を持つメッセージ4を受信する。
メッセージ4はターミナル400のアドレス情報のほか、プロキシが経路410に対してQoSリソースを予約するのに必要な情報(ターミナル406のアドレス情報や所望するQoSリソースの情報など)を持つ。また、プロキシが経路410に対してQoSリソースを予約するのに必要な情報として、使用するセッションIDを含んでいてもよい。メッセージ4はNSISのシグナリングメッセージを本発明の第2の実施の形態用に拡張したものでもよく、新しく定義されたシグナリングメッセージであってもよい。ただし、各QNEのみがメッセージ4を受け取れるような機能(RAOが付加されているなど)を有しており、メッセージ4を受け取ったQNEがメッセージ4の通る経路上の隣り合うQNEを知ることができる機能を有している必要がある。
判断部602は、受信されたメッセージ4に基づいて、中継ノード600自身が経路412上においてターミナル400から最も近くに位置する中継ノードであるか否かを判断するものである。すなわち、判断部602は、経路412上のメッセージ4の送信方向(downstream方向)に隣り合うQNEが存在しないことから、中継ノード600自身が経路412上で最もターミナル400に近いQNEであることを判断する。メッセージ生成部603は、判断部602によって経路412上においてターミナル400から最も近くに位置する中継ノードであると判断された場合、中継ノード600自身と隣り合う経路410上の中継ノードを発見するためのメッセージ5を生成するものである。具体的には、メッセージ5は、「このメッセージを最初に受け取ったQNE(プロキシ)は、経路410上に所望されるQoSリソースを予約せよ」という意味を示す情報を持つシグナリングメッセージである。なお、メッセージ5はプロキシが経路410に対して、QoSリソース予約をするために必要な情報(ターミナル406のアドレス情報や所望するQoSリソースの情報など)を持つ。この情報は上述したメッセージ4からコピーされる。
メッセージ5はNSISのシグナリングメッセージを本発明の第2の実施の形態用に拡張したものでもよく、新しく定義されたシグナリングメッセージであってもよい。ただし、各QNEのみがメッセージ5を受け取れるような機能(RAOが付加されているなど)を有している必要がある。なお、本発明の第2の実施の形態では、プロキシが付加的サービスのためのシグナリングメッセージの送信を開始するため、このシグナリングメッセージを受け取ったQNEが隣り合うQNEを知ることができる機能は必ずしも有していなくてもよい。
送信部604は、ターミナル400とターミナル406との間でやりとりされるデータやシグナリングメッセージなどを送信するもので、例えば生成されたメッセージ5をターミナル400を経由させてターミナル406に向けて送信する。ターミナル400経由でメッセージ5を送信するためには、例えばIP技術の既存技術であるstrict routeなどが利用できる。メッセージ5はいったんターミナル400を通過した後、経路410を通ってターミナル406へ送られるか、又はこのメッセージ5を受け取った最初のQNE(QNE402)で止められてそれ以上送信されなくてもよい。なお、取得部605はオプションであり、送信部604によって送信されたメッセージ5を最初に受信した中継ノードに関する情報をメッセージ5を最初に受信した中継ノードから取得するものである。中継ノード600は、経路412上でQNE408とターミナル400との間にはQNEが存在しないため、この隣り合うQNEが経路410上でターミナル400に最も近いQNEだということが分かる。記憶部606は、中継ノード600が行う処理によって生じた情報を格納したり、中継ノード600の動作を制御するための制御プログラムなどを格納したりするものである。
なお、上述した第1及び第2の実施の形態において、ターミナル100及びターミナル400が移動端末であり、不図示のアクセスポイントとその先の不図示のアクセスルータを介してネットワークに接続されている場合、メッセージ2及びメッセージ5の経由ポイントとなるのは、ターミナル100やターミナル400ではなく、ターミナル100やターミナル400がつながっているアクセスルータでもよい。この場合、ターミナル100やターミナル400は特にルータ機能を有していなくてもよい。
また、上述したように、ターミナル100及びターミナル400が移動端末であり、不図示のアクセスポイントとその先の不図示のアクセスルータを介してネットワークに接続されている場合において、ターミナル100又はターミナル400が、現時点におけるネットワーク接続のアクセスルータとは別のアクセスルータ(第2のアクセスルータとする)の配下のサブネットワークにハンドオーバを行おうとしているとする。この場合、ターミナル100又はターミナル400が実際にハンドオーバを行う前に、ターミナル106やターミナル406が第2のアクセスルータのIPアドレスが分かるのであれば、ターミナル106やターミナル406は、第2のアクセスルータあてにメッセージ1やメッセージ4を送信することにより、あらかじめ第2のアクセスルータからターミナル106やターミナル406方向への第2のアクセスルータに最も近いプロキシを発見することができる。
<第3の実施の形態>
次に、本発明の第3の実施の形態について説明する。後述するように、明確な数字、時刻、構造、そしてパラメータは本発明の理解を助けるために明らかにしている。しかしながら、本発明はこれら明らかな詳細なしに実施されることは当業者であれば明らかである。なお、本発明の第3の実施の形態におけるデータ通信システムと第1の実施の形態におけるデータ通信システムとは基本的には同様であるが、第3の実施の形態の説明では図7から図11を用いて説明する。
次に、本発明の第3の実施の形態について説明する。後述するように、明確な数字、時刻、構造、そしてパラメータは本発明の理解を助けるために明らかにしている。しかしながら、本発明はこれら明らかな詳細なしに実施されることは当業者であれば明らかである。なお、本発明の第3の実施の形態におけるデータ通信システムと第1の実施の形態におけるデータ通信システムとは基本的には同様であるが、第3の実施の形態の説明では図7から図11を用いて説明する。
2つのエンドノードであるCN(ターミナル106に相当)701とMN(ターミナル100に相当)707との間に通信セッションが存在する。CN701からMN707へのデータパスはパス7001、7003、7005であり、分岐点となるシグナリングノードであるQNE703及びQNE705を通っている。一方、MN707からCN701へのパスはパス7007、7009、7011であり、QNE709及びQNE703を通っている。この場合、MN707はシグナリング処理可能ノードではない。図7には問題を説明するための最小限の十分なノードが示されており、このことは当業者にとって明らかである。実際のアプリケーションにおいて、通信にはより多くのノードが含まれ、シグナリング処理可能ノードもシグナリングを処理できないノードも存在する。2つの方向における2つのデータパスが共通しないノードに割り当てられることはあり得る。しかしながら、これらは本発明の一般的な原理に影響しない。
ここで、本発明の第3の実施の形態をサポートするMNの構成の一例を図8に示す。MN707はSTC(Signaling Tunnel Control)801、TC(Transport Control)803、AL(Application Layer)805から構成されている。なお、STC801は上述した加工手段に相当する。インターフェース8001はTC803がSTC801にシグナリングメッセージを通すためのものであり、インターフェース8003はSTC801が送信のためにTC803に戻される応答メッセージを通すためのものである。AL805はCN701との通信する手段をもつ機能に相当する。それは通信セッションに関係する実際のアプリケーションで、SIP(Signaling Initiation Protocol)シグナリングレイヤやモバイルIPレイヤなどである。これが本発明の操作原理に影響を与えないことは明らかである。
次に、本発明の第3の実施の形態をサポートするCNの構成の一例について図9を用いて説明する。CN701は、SPC(Signaling Proxy Control)901、STC(Signaling Tunnel Control)903、TC(Transport Control)905、SC(Signaling Control)907、AL(Application Layer)909から構成されている。なお、STC903は上述したメッセージ生成手段に相当する。
本発明の第3の実施の形態をサポートするQNE(中継ノード)の構成の一例について図10を用いて説明する。なお、QNEは複数存在するためQNE709を一例にとって説明する。QNE709は、少なくともSC(Signaling Control)1001、TC(Transport Control)1003、AL(Application Layer)1005から構成されている。また、SC1001とAL1005とはインターフェース1007を介して接続されており、SC1001とTC1003とはインターフェース1009を介して接続されている。なお、SC1001は上述したメッセージ生成手段や制御手段に相当するが、メッセージ生成手段における処理と制御手段における処理をSC1001が行うのではなく、別々の構成要素がそれぞれ行うよう構成されていてもよい。
MN707のAL805とCN701のAL909はセッションを構築する。このセッションは、例えばSIPに基づくボイスセッション若しくは簡易なHTTP(Hyper Text Transfer Protocol)セッションである。セッションのタイプが本発明の原理に影響を与えないことは明らかであり、通信セッションのセットアップの間に通信ノードの能力は取り決められる。例えば、シグナリングに基づくSIPは能力取り決め(能力ネゴシエーション)を提供する。処理の間、CN701のAL909は、MN707がシグナリング能力を有していないことを知る。この場合、AL909はトリガーをし、インターフェース9009を介してCN701のSPC901にMN707のアドレスを渡す。SPC901は、MN707に対してプロキシとしてCN701自身がシグナリング(例えば、QoSシグナリング)を管理することを提案する。
MN707はシグナリング処理可能ノードではないため、シグナリングメッセージを用いてSPC901と直接通信することができない。それゆえ、SPC901は、メッセージが伝送されるようにMN707とコネクションを構築するSTC903を利用する必要がある。
SPC901は、インターフェース9001を介してSTC903にMN707のアドレスを渡す。STC903は、IPトンネリングのIP、IPSecなどのトンネリングメカニズムを用いる。それは負荷の軽い処理である。
MN707のアドレスを受けた後、STC903はMN707との通信チャンネルを構築するためのメッセージを生成する。例えば、仮にシグナリングがQoSに関連するものであれば、メッセージはQoS−Proxy−Inviteとなる。このメッセージはSPC901からのメッセージを通すため、MN707にトンネルを構築するための必要な情報を含み、例えばポート番号、暗号化スキームなどである。
STC903は、MN707に送信するためにTC905にQoS−Proxy−Inviteメッセージを渡す。TC905はCN701とMN707との間に存在する通信メカニズムに相当する。例えば、それはシンプルなIPプロトコル、モバイルIPプロトコル、トンネルなどである。異なる伝送メカニズムの使用が本発明の操作原理に影響を与えないことは明らかである。
ここで、図11を参照すると、CN701のTC905はMN707にQoS−Proxy−Inviteメッセージ1101を送る。このメッセージは送信元のアドレスとしてCN701のアドレス、送信先のアドレスとしてMN707のアドレスを有する。そのメッセージ1101は、2つの通信ノードの間の通常のデータメッセージのように、CN701からMN707に直接届けられる。
MN707のTC803がメッセージ1101を受け取り、そのメッセージ1101をQoS−Proxy−Inviteメッセージとして認識すると、TC803はそれに応じてSTC801を起動させ、インターフェース8001を介してメッセージ1101をSTC801へ渡す。メッセージ1101を識別するためにTC803には異なる方法がある。例えば、ポート番号により定めたり、プロトコルIDを用いたり、特別なフラグを用いたりする方法がある。メッセージを識別する方法が異なることは本発明の操作原理に影響を与えないことは明らかである。
セキュリティ(安全性)を考慮すると、QoS−Proxy−Inviteメッセージ1101は、非認証のコネクションの試みを防いだり、後述するメッセージ交換を保護したりするためのセキュリティアソシエーションを含む。例えば、セキュリティアソシエーションは、MN707のAL805とCN701のAL909との間でアプリケーションレイヤシグナリングを通じて構築される。このセキュリティアソシエーションの情報は、インターフェース8005を介してSTC801に渡され、インターフェース9009及びインターフェース9001を介してSTC903に渡される。そして、QoS−Proxy−Inviteメッセージ1101は、STC801がQoS−Proxy−Inviteメッセージ1101を確かめ、本物であることを証明できるようにセキュリティアソシエーションを含む。以下に、QoS−Proxy−Inviteメッセージ1101に含まれる情報の一例を示す。
QoS−Proxy−Invite:=[Tunnel Establish Info]
[Nonce-CN]
[Authentication Code]
[Nonce-CN]
[Authentication Code]
ここで、“Tunnel Establish Info”は、MN707とCN701との間のトンネルを構築するときに用いられる情報である。それは、例えばポート番号、暗号化スキームなどを含む。“Nonce-CN”は、メッセージの証明と後述するメッセージ交換の保護のための必要なセキュリティキーを構築するためのCN701によって生成された十分大きなランダムな数である。“Authentication Code”は、QoS−Proxy−Inviteメッセージ1101に対して生成された証明コードであり、あらかじめセットされた値に“Authentication Code”自身を有するものである。例えば、STC903はハッシュ関数(例えば、MD5(Message Digest 5))を利用し、“Authentication Code”を生成する。ここで、用いられるキーはAL909とAL805との間で構築されたセキュリティアソシエーションと“Nonce-CN”との連結である。他のタイプの方法が、本発明の操作原理に影響を与えることなく“Authentication Code”の生成に用いられることは明らかである。
QoS−Proxy−Inviteメッセージ1101を受け取った後、STC801はまず受けたメッセージに対して、同じハッシュ関数とキーを用いることによって“Authentication Code”を生成する。仮に同じ“Authentication Code”になった場合、STC801はメッセージの処理を続ける。さもなければメッセージを破棄する。または、仮にAL805が通知を指示するならば、STC801は適当なエラーコードを持つ返事を送る。
仮にQoS−Proxy−Inviteメッセージ1101が確認を通ったならば、STC801は“Tunnel Establish Info”を処理する。STC801は、例えば“Tunnel Establish Info”に含まれる情報に応じて、適当なトンネリングスキーム、暗号化スキーム、若しくは認証スキームなどを選択する。
処理の後、STC801は応答メッセージ、例えばQoS−Proxy−Responseメッセージ1103を生成する。ここで、QoS−Proxy−Responseメッセージ1103は以下に示す情報を含む。
QoS−Proxy−Response:=[Tunnel Establish Result]
[Nonce-MN]
[Authentication Code]
[Nonce-MN]
[Authentication Code]
ここで、“Tunnel Establish Result”はトンネル構築に関する情報を含み、例えば選択されたトンネルポート、トンネルスキーム、暗号化アルゴリズムなどの情報を含む。“Nonce-MN”はSTC801によって生成された十分大きなランダムな数である。それは後述するメッセージ交換を保護するための“Authentication Code”やキーを生成するために用いられる。Authentication Code”は、QoS−Proxy−Inviteメッセージ1101の“Authentication Code”に似せて生成される。“Authentication Code”を生成するためのキーは“Nonce-MN”とAL805からのセキュリティアソシエーションから得られる。
QoS−Proxy−Responseメッセージ1103は、MN707からCN701に直接送られる。STC903がQoS−Proxy−Responseメッセージ1103を受け取ると、“Authentication Code”が正しいと確認されれば、CN701とMN707との間にトンネルを構築することができる。
トンネルが構築されると、STC903はSPC901にトリガーを送る。SPC901はQoS−Proxy−Queryメッセージ1105を生成し、MN707に送信するためにSTC903へ渡す。STC903はMN707に直接このメッセージを構築されたトンネルを用いて転送する。
ここで、QoS−Proxy−Queryメッセージ1105の一例を以下に示す。
QoS−Proxy−Query:=[Tunnel Header]
[Src:=MN-Address]
[Dst:=CN-Address]
[Extra-Src-Op:=CN-Address]
[QoS-Query-Info]
[Src:=MN-Address]
[Dst:=CN-Address]
[Extra-Src-Op:=CN-Address]
[QoS-Query-Info]
ここで、“Tunnel Header”はCN701とMN707との間でメッセージ送信のための必要なヘッダ情報である。この情報が、QoS−Proxy−Inviteメッセージ1101とQoS−Proxy−Responseメッセージ1103が交換される手続きによって選択されたトンネリングスキームに依存することは明らかである。“Src”と“Dst”はそれぞれメッセージの送信元と送信先のアドレスであって、MN707のアドレスとCN701のアドレスである。“Extra-Src-Op”は現在のアドレスを格納している特別なオプションでありCN701のアドレスである。“CN-Address”の代わりに“Src”フィールドに“MN-Address”のアドレスを用いることは、ネットワークのイングレスフィルタリングの問題を回避するためである。QoS−Proxy−Queryメッセージ1105はトンネル内を送信されるとき暗号化される。暗号キーはQoS−Proxy−Inviteメッセージ1101とQoS−Proxy−Responseメッセージ1103から得られる。例えば、暗号キーはセキュリティアソシエーションの関数、“Nonce-CN”、“Nonce-MN”からなる。
STC801がQoS−Proxy−Queryメッセージ1105を受け取ると、STC801は“Tunnel Header”を取り除き、QoS−Query−Aメッセージ1107として送り出すためTC803に直接メッセージの残りを渡す。QoS−Query−Aメッセージ1107は以下のような構成である。
QoS−Query−A:=[Src:=MN-Address]
[Dst:=CN-Address]
[Extra-Src-Op:=CN-Address]
[QoS-Query-Info]
[Dst:=CN-Address]
[Extra-Src-Op:=CN-Address]
[QoS-Query-Info]
このメッセージは中間ノードによって通常のシグナリングメッセージとして見られ、MN707からCN701のデータパスを流れる。
それゆえ、QoS−Query−Aメッセージ1107はシグナリング処理可能ノード、例えばQNE709によってインタセプトされる。QNE709がメッセージを受け取った後、QNE709は通常のシグナリングメッセージとしてメッセージを処理する。通常のシグナリングスキーム、例えばNSISの場合、QNE709は逆のメッセージアソシエーションを構築する必要がある。QNE709は前のホップアドレスとして“Extra-Src-Op”フィールドに格納されたアドレスを取得する。そして、この場合、QNE709は特別なルーティングステートを生成する。すなわち、“MN-AddressからCN-Addressのシグナリングセッションに関して、Previous-hop:=CN-Address”というものである。この方法で、逆方向におけるシグナリングメッセージはQNE709からCN701へ送信される。
処理の後、QNE709は“QoS-Query-Info”のフィールドを更新し、“Dst”のフィールドに示されたアドレス、すなわちCN701のアドレスにメッセージを転送する。同時に、QNE709は“Extra-Src-Op”のフィールドをチェックする。そして、自身のアドレスに置き換える。それゆえ、転送されたQoS−Query−Bメッセージ1109は以下に示すものとなる。
QoS−Query−B:=[Src:=MN-Address]
[Dst:=CN-Address]
[Extra-Src-Op:=QNE709-Address]
[QoS-Query-Info]
[Dst:=CN-Address]
[Extra-Src-Op:=QNE709-Address]
[QoS-Query-Info]
QoS−Query−Bメッセージ1109は、MN707からCN701へのデータフローとして同じように流れる。それゆえ、QoS−Query−Bメッセージ1109は経路上のシグナリング処理可能ノード、QNE703によって再びインタセプトされる。QNE703は通常のシグナリング手続きに従ってメッセージを処理する。例えば、QNE703は対応する“QoS-Query-Info”のフィールドを更新する。同様にQNE703は“Extra-Src-Op”に従って逆方向のメッセージルーティングを構築する、すなわち構築されたルーティングはQNE709に向けられている。
処理の後、QNE703は“Dst”によって示されたアドレス、すなわちCN701のアドレスに向けてQueryメッセージを転送する。同時に、QNE703は“Extra-Src-Op”のフィールドをチェックする。QNE703は“Extra-Src-Op”のフィールドを自身のアドレスに更新する。そして、転送される新たなメッセージであるQoS−Query−Cメッセージ1111は以下に示されるようなものである。
QoS−Query−C:=[Src:=MN-Address]
[Dst:=CN-Address]
[Extra-Src-Op:=QNE703-Address]
[QoS-Query-Info]
[Dst:=CN-Address]
[Extra-Src-Op:=QNE703-Address]
[QoS-Query-Info]
CN701のTC905がQoS−Query−Cメッセージ1111を受け取ったとき、TC905はインターフェース9005を介してSC907に渡す。通常のシグナリング処理がメッセージに適用される。同時に、CN701は“Extra-Src-Op”に従って逆のシグナリングメッセージルーティングをQNE703に向けて構築する。
処理の後、SC907はQueryメッセージに対する応答を送ることを決める。SC907はQoS−Response−Cメッセージ1113を生成する。QoS−Response−Cメッセージ1113の一例を以下に示す。
QoS−Response−C:=[Src:=CN-Address]
[Dst:=QNE703-Address]
[Extra-Dst-Op:=MN-Address]
[QoS-Response-Info]
[Dst:=QNE703-Address]
[Extra-Dst-Op:=MN-Address]
[QoS-Response-Info]
ここで、“QoS-Response-Info”はシグナリング応答における必要な情報を含んでいる。明らかにQoS−Response−Cメッセージ1113は、QueryメッセージであるQoS−Query−Cメッセージ1111によって構築された逆ルーティング情報に基づいてホップごとに送信される。“Extra-Dst-Op”はシグナリングメッセージの最終目的地を示し、シグナリングの方向を示すものである。
QoS−Response−Cメッセージ1113がシグナリング処理可能ノードのQNE703によって受け取られると、QNE703は通常のシグナリング手続きに従ってメッセージを処理する。同時に、QNE703は、“Extra-Dst-Op”が自身のアドレスに等しくないMN707のアドレスを示すのでResponseメッセージを転送する。それゆえ、QNE703は逆ルーティングテーブルをチェックし、以前のホップがQNE709であるとわかる。新たなメッセージであるQoS−Response−Bメッセージ1115はQNE709に送信され、送信されるQoS−Response−Bメッセージ1115は以下に示すようなものである。
QoS−Response−B:=[Src:=QNE703-Address]
[Dst:=QNE709-Address]
[Extra-Src-Op:=MN-Address]
[QoS-Response-Info]
[Dst:=QNE709-Address]
[Extra-Src-Op:=MN-Address]
[QoS-Response-Info]
ここで、このメッセージがQNE709に到達すると、QNE709は通常のシグナリング手続きのように処理する。QNE709は“Extra-Src-Op”が自身のアドレスと違うため更にResponseを転送することを決める。QNE709は以前のホップにおける逆ルーティングをチェックする。そして、それはCN701である。それゆえ、新たなメッセージであるQoS−Response−Aメッセージ1117は以下に示すようなものである。
QoS−Response−A:=[Src:=QNE709-Address]
[Dst:=CN-Address]
[Extra-Dst-Op:=MN-Address]
[QoS-Response-Info]
[Dst:=CN-Address]
[Extra-Dst-Op:=MN-Address]
[QoS-Response-Info]
QoS−Response−Aメッセージ1117は、QNE709からCN701に直接送信される。TC905がそのメッセージを受け取った場合、TC905はインターフェース9005を介してSC907にそのメッセージを渡す。SC907は“Extra-Dst-Op”のフィールドをチェックし、MN707のアドレスに等しいためメッセージはインターフェース9011を介してSPC901に渡される。SPC901はMN707のためにシグナリングメッセージを処理する。
そのセッションにおける更なるシグナリングメッセージ交換においても、上述したQoS−QueryメッセージとQoS−Responseメッセージにおける同じ処理がなされる。この方法において、MN707はシグナリング処理可能なものである必要はない。MN707に要求されることはSTC801を動かすことであり、それは大変軽い負荷である。STC801はCN701から構築されたトンネルによりメッセージを受け取り、ヘッダを取り除いた後に転送する。シグナリング状態や処理はMN707において必要ではない。それゆえ、ほとんどリソースを要求せず、モバイルデバイスにとって適している。
<第4の実施の形態>
第3の実施の形態では、SPC901は常にMN707のSTC801にSTC903を介してメッセージを送信している。しかしながら、図11に示すように、QoS−Query−Aメッセージ1107とQoS−Response−Aメッセージ1117との間で、SPC901は既に次のホップのシグナリング処理可能ノードのアドレスの情報、例えばQNE709のアドレスの情報を得ている。処理の簡略化のため、最初のQoS−QueryとQoS−Responseの交換後、代わりにSPC901がQNE709に直接メッセージを送信することは可能である。
第3の実施の形態では、SPC901は常にMN707のSTC801にSTC903を介してメッセージを送信している。しかしながら、図11に示すように、QoS−Query−Aメッセージ1107とQoS−Response−Aメッセージ1117との間で、SPC901は既に次のホップのシグナリング処理可能ノードのアドレスの情報、例えばQNE709のアドレスの情報を得ている。処理の簡略化のため、最初のQoS−QueryとQoS−Responseの交換後、代わりにSPC901がQNE709に直接メッセージを送信することは可能である。
この場合、SPC901はSC907にインターフェース9011を介してメッセージを渡し、更にインターフェース9005を介してTC905に渡す。メッセージは以下のようなフォーマットになる。
QoS−Signal−Msg:=[Src:=CN-Address]
[Dst:=QNE709-Address]
[Extra-Dst-Op:=CN-Address]
[QoS-Signal-Info]
[Dst:=QNE709-Address]
[Extra-Dst-Op:=CN-Address]
[QoS-Signal-Info]
このように、メッセージはMN707を通ることなくCN701からQNE709に直接送信される。これはモバイルデバイスにおけるシグナリング負荷を軽減する。
<第5の実施の形態>
本発明の第5の実施の形態について図12を用いて説明する。図12に示すように、第5の実施の形態は、第3の実施の形態のデータ通信システムにおいてCN701とQNE703との間にHA(Home Agent)1201が存在するものである。第5の実施の形態では、HA1201がMN707のプロキシとして働く。HA1201は、MN707からBU(Binding Update)が受けると第3の実施の形態のようにQoS−Proxy−QueryメッセージをMN707に向けて送信する。HA1201は上述した第3の実施の形態におけるCN701が行う処理手続きを行う。なお、HA1201とMN707との間の経路はいくつかのフローがアグリゲートされており、それらはHA1201によって管理されている。
本発明の第5の実施の形態について図12を用いて説明する。図12に示すように、第5の実施の形態は、第3の実施の形態のデータ通信システムにおいてCN701とQNE703との間にHA(Home Agent)1201が存在するものである。第5の実施の形態では、HA1201がMN707のプロキシとして働く。HA1201は、MN707からBU(Binding Update)が受けると第3の実施の形態のようにQoS−Proxy−QueryメッセージをMN707に向けて送信する。HA1201は上述した第3の実施の形態におけるCN701が行う処理手続きを行う。なお、HA1201とMN707との間の経路はいくつかのフローがアグリゲートされており、それらはHA1201によって管理されている。
また、CN701はQoS−Proxy−Queryメッセージを依然送信することができる。このとき、HA1201とMN707との間ではトンネルが用いられているため、結果としてのQueryはCN701とHA1201との間以降のノードによって見られるのみである。これはネストされたケースの動作である。
<第6の実施の形態>
第6の実施の形態では、上述した第1〜第5の実施の形態におけるターミナル100、ターミナル400、MN707がハンドオーバをする場合について説明する。以下に、3つのパターンについて説明する。なお、3つのパターンを説明する際、ターミナル100、ターミナル400、MN707をMN1300とし、ターミナル106、ターミナル406、CN701をCN1301として説明する。
第6の実施の形態では、上述した第1〜第5の実施の形態におけるターミナル100、ターミナル400、MN707がハンドオーバをする場合について説明する。以下に、3つのパターンについて説明する。なお、3つのパターンを説明する際、ターミナル100、ターミナル400、MN707をMN1300とし、ターミナル106、ターミナル406、CN701をCN1301として説明する。
まず、1つ目のパターンについて図13を用いて説明する。1つ目のパターンは1つのインターフェースを有するMN1300がハンドオーバするパターンである。第1〜第5の実施の形態で説明したようにMN1300の代理となるプロキシが発見された後に、MN1300がハンドオーバを行う。ハンドオーバ前では、MN1300はQNE1302、QNE1303、QNE1304を介してCN1301と通信している。
MN1300がハンドオーバを開始すると、MN1300はQNE1302、QNE1305、QNE1306を介してCN1301と通信することになる。なお、ハンドオーバ先でのプロキシ探索のシグナリング及びシーケンスは、第1〜第5の実施の形態で説明したものと同様であり、MN1300のハンドオーバ先で同様の処理を行うことになる。
次に、2つ目のパターンについて図14を用いて説明する。2つ目のパターンは、複数(ここでは2つ)のインターフェースを有するMN1300がインターフェース間でハンドオーバするパターンである。第1〜第5の実施の形態で説明したようにMN1300の代理となるプロキシが発見された後に、MN1300がインターフェース間でハンドオーバを行う。すなわち、図14に示すように、インターフェース(IF1)からインターフェース(IF2)へハンドオーバする。インターフェース間のハンドオーバ前では、MN1300はIF1を用いてQNE1302、QNE1303、QNE1304を介してCN1301と通信している。
MN1300がインターフェース間のハンドオーバを開始すると、MN1300はIF2を用いてQNE1302、QNE1305、QNE1306を介してCN1301と通信することになる。このとき、MN1300は、ハンドオーバすることによりIF1からIF2へインターフェースが変更される。なお、インターフェース間のハンドオーバ先でのプロキシ探索のシグナリング及びシーケンスは、第1〜第5の実施の形態で説明したものと同様であり、MN1300のインターフェース間のハンドオーバ先で同様の処理を行うことになる。
次に、3つ目のパターンについて図15を用いて説明する。3つ目のパターンは、複数(ここでは2つ)のインターフェースを有するMN1300の1つのインターフェースがハンドオーバするパターンである。第1〜第5の実施の形態で説明したようにMN1300の代理となるプロキシがそれぞれ発見された後に、MN1300のインターフェース、例えばIF2がハンドオーバを行う。ハンドオーバ前では、MN1300はIF1を用いてQNE1302、QNE1303、QNE1304を介してCN1301と通信し、またMN1300はIF2を用いてQNE1302、QNE1305、QNE1306を介してCN1301と通信している。
MN1300のIF2がハンドオーバを開始すると、MN1300はIF2を用いてQNE1302、QNE1307、QNE1308を介してCN1301と通信することになる。なお、IF2のハンドオーバ先でのプロキシ探索のシグナリング及びシーケンスは、第1〜第5の実施の形態で説明したものと同様であり、IF2のハンドオーバ先で同様の処理を行うことになる。
なお、MN1300が複数のインターフェースを有する場合におけるシグナリングには、セッションID、フローIDに加え、パスタイプID(非特許文献7を参照)が追加される。パスタイプIDを用いることにより、同じセッションにおけるシグナリングはそれぞれ管理される。
なお、上記の本発明の各実施の形態の説明で用いた各機能ブロックは、典型的には集積回路であるLSI(Large Scale Integration)として実現される。これらは個別に1チップ化されてもよいし、一部又はすべてを含むように1チップ化されてもよい。なお、ここでは、LSIとしたが、集積度の違いにより、IC(Integrated Circuit)、システムLSI、スーパーLSI、ウルトラLSIと呼称されることもある。また、集積回路化の手法はLSIに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。さらには、半導体技術の進歩又は派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。例えば、バイオ技術の適応などが可能性としてあり得る。
本発明に係る代理ノード発見方法とその方法で用いられる中継ノードは、データ送信者とプロキシ、又はアプリケーションとプロキシとの間にローカルな技術が存在していなくても、プロキシを決定することができ、また、本発明に係るノード発見方法とその方法で用いられる第1のノード、第2のノード、中継ノードは、データ送信者とデータ送信者に隣接するノードとの間にローカルな技術が存在しなくても隣接するノードを決定することができるため、特定のシグナリングメッセージを処理することができないデータ送受信端末の代理として特定のシグナリングメッセージを処理する代理ノード(プロキシ)を決定するための代理ノード発見方法とその方法で用いられる中継ノード、及び特定のシグナリングメッセージを処理することができないデータ送受信端末のための代理として一方のデータ送受信端末が働く際の通信相手となるノードを発見するためのノード発見方法とその方法で用いられる第1のノード、第2のノード、中継ノードなどに有用である。
本発明は、データのやりとりをするデータ送受信端末間のデータ経路が異なるネットワークにおいて、特定のシグナリングメッセージを処理することができないデータ送受信端末に隣接するノードを発見するためのものであって、特に、特定のシグナリングメッセージを処理することができないデータ送受信端末の代理として特定のシグナリングメッセージを処理する代理ノード(プロキシ)を決定するための代理ノード発見方法とその方法で用いられる中継ノード、及び特定のシグナリングメッセージを処理することができないデータ送受信端末のための代理として一方のデータ送受信端末が働く際の通信相手となるノードを発見するためのノード発見方法とその方法で用いられる第1のノード、第2のノード、中継ノードに関する。
新たなシグナリングプロトコルとして、NSIS(Next Steps In Signaling)がIETFのNSISワーキンググループ(下記の非特許文献1を参照)によって標準化されつつある。NSISはQoS(Quality of Service)リソース予約において特に有効であると期待されている。最近のインターネットドラフトには、一般的なNSIS(下記の非特許文献5及び6を参照)だけでなく、他のNSIS(下記の非特許文献2から4を参照)におけるQoSシグナリングやモビリティサポートの実施の必要性や提案が記載されている。ネットワークにおけるルータ若しくはターミナルのすべてがNSIS Entities(NE)ではないが、NEはNSIS機能を有している。なお、NEのすべてがモビリティ機能におけるQoSをサポートしない。ここでは、QoS機能を有するNEをQNE(QoS NE)と呼ぶ。QoSリソースは、転送されるデータを通すパスに沿ってそれぞれのQNEで予約される。
このようなNSISにおいて、QoS保証などの付加的なサービスを提供する場合、データ送信者からデータ受信者に向けて送られるデータが通過する経路と同じ経路にNSISシグナリングメッセージ(以下、シグナリングメッセージとも言う)を流し、その経路上に存在する各NSIS対応ノード(NE)がシグナリングメッセージの処理を行うという、Path-coupled(又はOn Path)シグナリング形式が取られる。データ送信者がNEであった場合、データ送信者がデータ受信者に向けてシグナリングメッセージを送信することにより、シグナリングメッセージはデータと同じ経路を通ることになる。データ送信者がNEでない場合には、データ経路上に存在する、データ送信者に最も近いNEがデータ送信者の代理(プロキシ)となり、シグナリングメッセージを送信する必要がある。NSISではプロキシを用いる際、データ送信者とプロキシ、又はアプリケーションとプロキシの間にローカルな技術が存在しており、この技術を用いることにより、プロキシがシグナリングメッセージを送信することができると仮定している(下記の非特許文献5を参照)。
シグナリングメッセージが送信される際、NEは隣り合うNEの情報を格納する。これは、ある付加的サービスに対する一連のシグナリングメッセージのうち、最初のシグナリングメッセージがデータ送信者(又は送信者側プロキシ)からデータ送信者(又はデータ受信者側プロキシ)に向けて送信される際に、各NEはシグナリングメッセージのヘッダに付加されたRAO(Router Alert Option)により、このシグナリングメッセージをインタセプトし、このシグナリングメッセージの処理を行うと同時に、隣り合うNEとの間で情報を交換することによって行われる(下記の非特許文献6を参照)。
また、データ受信者がNEではない場合には、データ経路上のデータ受信者に最も近いNEがデータ受信者側のプロキシとなることができる。これは、データ送信者(又はデータ送信者側プロキシ)から最初のシグナリングメッセージが送信されてきた際、経路上の最後のNEにはシグナリングメッセージ送信方向(downstream方向)の隣り合うNEが存在しないため、自分がデータ経路上の最後のNEであるということを検出し、プロキシとして振舞うことができるからである。
NSISでは、データ送信者がNEではなかった場合、データ送信者とプロキシ、又はアプリケーションとプロキシとの間でローカルな技術が存在しており、この技術を用いることによりプロキシがシグナリングメッセージを送信することができると仮定しているが、このローカルな技術が存在していない場合も考えられる。ローカルな技術が存在していない場合、データ送信者側からシグナリングメッセージを送信することは不可能となる。しかし、データ受信者がNEでデータ送信者から送られるデータに対してNSISによる付加的サービスを所望するような場合も考えられる。この場合、データ受信者であるNEがデータ送信者側のプロキシを発見し、このプロキシにシグナリングメッセージを送るよう依頼することが必要となる。
NSIS WG(http://www.ietf.org/html.charters/nsis-charter.html) H. Chaskar, Ed, "Requirements of a Quality of Service (QoS) Solution for Mobile IP", RFC3583, September 2003 Sven Van den Bosch,Georgios Karagiannis and Andrew McDonald, "NSLP for Quality-of-Service signalling", draft-ietf-nsis-qos-nslp-06.txt, May 2005 S. Lee, et al., "Applicability Statement of NSIS Protocols in Mobile Environments", draft-ietf-nsis-applicability-mobility-signaling-01.txt, February 2005 R. Hancock(editor),"Next Steps in Signaling: Framework", RFC4080, June 2005 H.Schulzrinne and R.Hancock,"GIMPS: General Internet Messaging Protocol for Signaling",draft-ietf-nsis-ntlp-07(work in progress),July 2005 T. Sanda, T.Ue and H.Cheng, "Path type support for NSIS signaling",draft-sanda-nsis-path-type-02.txt,February 2005
NSIS WG(http://www.ietf.org/html.charters/nsis-charter.html) H. Chaskar, Ed, "Requirements of a Quality of Service (QoS) Solution for Mobile IP", RFC3583, September 2003 Sven Van den Bosch,Georgios Karagiannis and Andrew McDonald, "NSLP for Quality-of-Service signalling", draft-ietf-nsis-qos-nslp-06.txt, May 2005 S. Lee, et al., "Applicability Statement of NSIS Protocols in Mobile Environments", draft-ietf-nsis-applicability-mobility-signaling-01.txt, February 2005 R. Hancock(editor),"Next Steps in Signaling: Framework", RFC4080, June 2005 H.Schulzrinne and R.Hancock,"GIMPS: General Internet Messaging Protocol for Signaling",draft-ietf-nsis-ntlp-07(work in progress),July 2005 T. Sanda, T.Ue and H.Cheng, "Path type support for NSIS signaling",draft-sanda-nsis-path-type-02.txt,February 2005
しかしながら、データ送信者側からデータ受信者側に送られるデータ及びシグナリングメッセージの経路と、データ受信者側からデータ送信者側に送られるシグナリングメッセージの経路とが異なる場合があるため、データ受信者であるNEからデータ送信者に向けて何かしらのシグナリングメッセージを送信することにより、データ送信者側のプロキシを発見するのは困難である。これについて図16を用いて説明する。図16に示すように、NEではないターミナル1600と、NEであるターミナル1606及び、NE1602、NE1604、NE1608からデータ通信システムが構成されている。データ送信者であるターミナル1600からターミナル1606へ送信されるデータは経路1610、すなわちNE1602及びNE1604を経由してターミナル1606へ送られる。一方、ターミナル1606からターミナル1600に向けて送信されるデータは経路1612、すなわちNE1604及びNE1608を経由してターミナル1600に送られる。
今、ターミナル1600からターミナル1606に向けてデータが送られようとしており、データ受信者で、かつNEであるターミナル1606がNSISによる付加的サービスを所望したとする。この場合、経路1610上でターミナル1600に最も近いNE、すなわちNE1602がプロキシとなり、ターミナル1606にシグナリングメッセージを送信する必要がある。しかし、ターミナル1606がNE1602を発見するために、ターミナル1600に向けてシグナリングメッセージを送信した場合、このシグナリングメッセージはターミナル1606からターミナル1600へのデータ経路と同じ経路1612を通るため、NE1602を経由することはできず、よってNE1602をプロキシとして検出することができない。また、ターミナル1606がターミナル1600を経由して自分に返ってくるようなループバック型のシグナリングメッセージを送信した場合、このシグナリングメッセージは経路1612を通った後、経路1610を通ってターミナル1606に到達するのでNE1602を経由することはできる。しかし、ターミナル1606は、どのNEが経路1610上でターミナル1600に最も近いNEであるかを知る手段を持たないため、プロキシを決定することができない。
また、Path-coupledシグナリング形式(スキーム)のほとんどは、データトラフィックの通信エンドポイント(後述するCNやMNなどのデータ送受信端末)がシグナリングを認識することが可能なもの(シグナリング処理可能ノード)であると仮定している。しかしながら、モバイルコンピューティングの増加するポラリティにおいて、この仮定はもはや確かなものではない。モバイルコンピューティングにおいて、通常の通信エンドポイントはモバイルデバイスである。これらのモバイルデバイスは、通常、これらモバイル特有の有限の計算力、メモリ、バッテリー寿命がある。それゆえ、それらモバイル上で処理されるアプリケーション若しくはオペレーションシステムは軽い負荷でなければならない。このため、特別なパケット処理を必要とするシグナリングスキームや特別なシグナリング状態をデバイス上でサポートすることは好ましくない。
エンドポイントがシグナリング処理可能ノードではないケースの例として、レガシーデバイスがエンドポイントとして用いられるケースが考えられる。レガシーデバイスにとって、シグナリングスキームをサポートすることはオペレーティングシステム若しくは関連のあるハードウェアのアップグレードを意味する。これは異なる配置環境のため可能ではない。また、新しいシグナリングの特徴がスキームに加えられるたびにアップグレードしたデバイスを持つことは可能ではない。
上述したように、通信エンドノードのためにプロキシとして働く他のノードが必要である。しかしながら、このアプローチはネットワークルーティングの非対称性に直面する。ターミナル(CN)1606からターミナル(MN)1600へのデータパスがターミナル(MN)1600からターミナル(CN)1606へのパスと異なることはあり得る。これはPath-coupledシグナリングスキームにおける問題となる。ターミナル(MN)1600以外のどのノードも実際のデータパスを正確に識別できない。それゆえ、ターミナル(MN)1600に最も近いシグナリング処理可能ノードを識別できないという問題がある。
本発明は、上記の問題点に鑑み、データ送信者とプロキシ(代理ノード)、又はアプリケーションとプロキシとの間にローカルな技術が存在していなくても、プロキシを決定することができる代理ノード発見方法とその方法で用いられる中継ノード、及びデータ送信者とデータ送信者に隣接するノードとの間にローカルな技術が存在しなくても隣接するノードを決定することができるノード発見方法とその方法で用いられる第1のノード、第2のノード、中継ノードを提供することを目的とする。
上記目的を達成するために、本発明によれば、データを送受信する第1のノードと、前記第1のノードの通信相手である第2のノードと、前記第1のノードと前記第2のノードとの間で送受信されるデータを中継する複数の中継ノードとを備え、前記第2のノードから前記第1のノードへのデータは第1の経路を通り、前記第1のノードから前記第2のノードへのデータは第2の経路を通り、前記第1のノード及び前記中継ノードのうち少なくとも1つ以上の中継ノードが所定の性質を有するメッセージを受信し処理することができるデータ通信システムにおける、前記第2のノードの代理として前記所定の性質を有するメッセージを処理する前記第1の経路上に位置する代理ノードを発見する代理ノード発見方法であって、前記第1のノードが、前記所定の性質を有するメッセージに、前記代理ノードの発見を依頼する旨を示す情報を付加した第1のメッセージを前記第2のノードに向けて送信するステップと、前記第1のメッセージを受信した前記中継ノードが、自身が前記第2の経路上において前記第2のノードから最も近くに位置する中継ノードであるか否かを判断するステップと、前記第2の経路上において前記第2のノードから最も近くに位置する中継ノードであると判断した中継ノードが、前記所定の性質を有するメッセージに、自身と隣り合う前記第1の経路上の中継ノードの発見をしている旨を示す情報を付加した第2のメッセージを前記第2のノードを経由させて送信するステップと、前記第2のメッセージを送信した中継ノードが、送信された前記第2のメッセージを最初に受信した中継ノードを特定する情報を前記第2のメッセージを最初に受信した中継ノードから取得するステップとを有する代理ノード発見方法が提供される。この構成により、データ送信者とプロキシ、又はアプリケーションとプロキシとの間にローカルな技術が存在していなくても、プロキシを決定することができる。なお、「前記第2の経路上において前記第2のノードから最も近くに位置する」は、「第2の経路上において第2のノードから見て最初の」ということと同義である。
また、本発明の代理ノード発見方法において、前記第1のメッセージが、前記第1の経路上において前記第2のノードから最も近くに位置する、前記所定の性質を有するメッセージを処理できる中継ノードの発見を要求する旨を示すメッセージであり、前記第2のノードのアドレス情報を含むことは、本発明の好ましい態様である。この構成により、第1のメッセージを第2の経路を経由して第2のノードに到達させることができる。
また、本発明の代理ノード発見方法において、前記第2のメッセージを送信した中継ノード又は前記第2のメッセージを最初に受信した中継ノードが、前記所定の性質を有するメッセージに、前記第2のメッセージを最初に受信した中継ノードを特定する情報を含めた第3のメッセージを前記第1のノードに送信することは、本発明の好ましい態様である。この構成により、第1のノードは代理ノードを知ることができる。
また、本発明の代理ノード発見方法において、前記第1のメッセージが、前記第1の経路上において前記第2のノードから最も近くに位置する、前記所定の性質を有するメッセージを処理できる中継ノードの発見を要求する旨を示すメッセージで、更に発見された前記中継ノードに前記第1の経路にQoSリソースの予約を要求する旨を示すメッセージであり、前記第2のノードのアドレス情報、第1のノードのアドレス情報、前記第1の経路に予約する前記QoSリソースの情報のうち少なくとも1つ以上を含むことは、本発明の好ましい態様である。この構成により、代理ノードとされた中継ノードが第1の経路にQoSリソースの予約をすることができる。
また、本発明の代理ノード発見方法において、前記第2のメッセージが、更に前記第2のメッセージを最初に受信した中継ノードが前記第1の経路にQoSリソース予約をすることを要求する旨を示すメッセージであり、前記第1のノードのアドレス情報、前記第1の経路に予約する前記QoSリソースの情報のうち少なくとも1つ以上を含むことは、本発明の好ましい態様である。この構成により、代理ノードとされた中継ノードが第1の経路にQoSリソースの予約をすることができる。
また、本発明の代理ノード発見方法において、前記第1のメッセージ及び前記第2のメッセージに、前記所定の性質を有するメッセージを処理できる中継ノードに、前記第1のメッセージ及び前記第2のメッセージの受信を可能とさせるための情報が含まれていることは、本発明の好ましい態様である。この構成により、所定の性質を有するメッセージを処理できる中継ノードが、確実にメッセージを受け取ることができる。
また、本発明の代理ノード発見方法において、前記代理ノードが発見された後に前記第2のノードがハンドオーバした場合、前記ハンドオーバ先における前記代理ノードを再度発見するよう構成することは、本発明の好ましい態様である。この構成により、ハンドオーバしてもハンドオーバ先で通信を継続することができる。
また、本発明によれば、データを送受信する第1のノードと、前記第1のノードの通信相手である第2のノードと、前記第1のノードと前記第2のノードとの間で送受信されるデータを中継する複数の中継ノードとを備え、前記第2のノードから前記第1のノードへのデータは第1の経路を通り、前記第1のノードから前記第2のノードへのデータは第2の経路を通り、前記第1のノード及び前記中継ノードのうち少なくとも1つ以上の中継ノードが所定の性質を有するメッセージを受信し処理することができるデータ通信システムにおける、前記所定の性質を有するメッセージを処理することができる前記中継ノードであって、前記第1のノードから送信された、前記所定の性質を有するメッセージに前記代理ノードの発見を依頼する旨を示す情報が付加された第1のメッセージを受信する受信手段と、受信された前記第1のメッセージに基づいて、自身が前記第2の経路上において前記第2のノードから最も近くに位置する中継ノードであるか否かを判断する判断手段と、前記第2の経路上において前記第2のノードから最も近くに位置する中継ノードであると判断した場合、前記所定の性質を有するメッセージに、自身と隣り合う前記第1の経路上の中継ノードの発見をしている旨を示す情報を付加した第2のメッセージを生成するメッセージ生成手段と、生成された前記第2のメッセージを前記第2のノードを経由させて送信する送信手段と、送信された前記第2のメッセージを最初に受信した中継ノードを特定する情報を前記第2のメッセージを最初に受信した中継ノードから取得する取得手段とを、備える中継ノードが提供される。この構成により、データ送信者とプロキシ、又はアプリケーションとプロキシとの間にローカルな技術が存在していなくても、プロキシを決定することができる。
また、本発明の中継ノードにおいて、前記第1のメッセージが、前記第1の経路上において前記第2のノードから最も近くに位置する、前記所定の性質を有するメッセージを処理できる中継ノードの発見を要求する旨を示すメッセージであり、前記第2のノードのアドレス情報を含むことは、本発明の好ましい態様である。この構成により、第1のメッセージを第2の経路を経由して第2のノードに到達させることができる。
また、本発明の中継ノードにおいて、前記取得手段が、前記第2のメッセージを最初に受信した中継ノードから前記第2のメッセージを最初に受信した前記中継ノードに関する情報を取得し、前記メッセージ生成手段が、前記所定の性質を有するメッセージに、取得された前記中継ノードを特定する情報を含めた第3のメッセージを生成し、前記送信手段が、生成された前記第3のメッセージを前記第1のノードに送信することは、本発明の好ましい態様である。この構成により、第1のノードは代理ノードを知ることができる。
また、本発明の中継ノードにおいて、前記第1のメッセージが、前記第1の経路上において前記第2のノードから最も近くに位置する、前記所定の性質を有するメッセージを処理できる中継ノードの発見を要求する旨を示すメッセージで、更に発見された前記中継ノードに前記第1の経路にQoSリソースの予約を要求する旨を示すメッセージであり、前記第2のノードのアドレス情報、第1のノードのアドレス情報、第1の経路に予約する前記QoSリソースの情報のうち少なくとも1つ以上を含むことは、本発明の好ましい態様である。この構成により、代理ノードとされた中継ノードが第1の経路にQoSリソースの予約をすることができる。
また、本発明の中継ノードにおいて、前記第2のメッセージが、更に前記第2のメッセージを最初に受信した中継ノードが前記第1の経路にQoSリソース予約をすることを要求する旨を示すメッセージであり、前記第1のノードのアドレス情報、第1の経路に予約する前記QoSリソースの情報のうち少なくとも1つ以上を含むことは、本発明の好ましい態様である。この構成により、代理ノードとされた中継ノードが第1の経路にQoSリソースの予約をすることができる。
また、本発明の中継ノードにおいて、前記第1のメッセージ及び前記第2のメッセージに、前記所定の性質を有するメッセージを処理できる中継ノードに、前記第1のメッセージ及び前記第2のメッセージの受信を可能とさせるための情報が含まれていることは、本発明の好ましい態様である。この構成により、所定の性質を有するメッセージを処理できる中継ノードが、確実にメッセージを受け取ることができる。
また、本発明によれば、データを送受信する第1のノードと、前記第1のノードの通信相手である第2のノードと、前記第1のノードと前記第2のノードとの間で送受信されるデータを中継する複数の中継ノードとを備え、前記第2のノードから前記第1のノードへのデータは第1の経路を通り、前記第1のノードから前記第2のノードへのデータは第2の経路を通り、前記第1のノード及び前記中継ノードのうち少なくとも1つ以上の中継ノードが所定の性質を有するメッセージを受信し処理することができるデータ通信システムにおける、前記所定の性質を有するメッセージの処理が可能な前記第1の経路上に位置する前記第2のノードから最も近くに位置するノードを発見するノード発見方法であって、前記第1のノードが、前記第1の経路上に位置する前記第2のノードから最も近くに位置する前記ノードを発見するためのメッセージを前記第2のノードに向けて送信するステップと、前記第1のノードが、送信された前記第2のノードを経由した前記メッセージを基に、前記第1の経路上に位置する前記第2のノードから最も近くに位置する前記ノードによって送信されたメッセージに含まれる前記ノード自身を特定する情報を受信するステップとを有するノード発見方法が提供される。この構成により、データ送信者(第2のノード)とデータ送信者に隣接するノード(中継ノード)との間にローカルな技術が存在しなくても隣接するノードを決定することができる。
また、本発明によれば、データを送受信する第1のノードと、前記第1のノードの通信相手である第2のノードと、前記第1のノードと前記第2のノードとの間で送受信されるデータを中継する複数の中継ノードとを備え、前記第2のノードから前記第1のノードへのデータは第1の経路を通り、前記第1のノードから前記第2のノードへのデータは第2の経路を通り、前記第1のノード及び前記中継ノードのうち少なくとも1つ以上の中継ノードが所定の性質を有するメッセージを受信し処理することができるデータ通信システムにおける、前記所定の性質を有するメッセージの処理が可能な前記第1の経路上に位置する前記第2のノードから最も近くに位置するノードを発見するノード発見方法であって、前記第1のノードが、自身が前記第2のノードの代理として働く代理ノードとなることを提案する第1のメッセージを前記第2のノードに向けて送信するステップと、前記第2のノードが、受信した前記第1のメッセージに基づいて前記第1のノードを前記代理ノードとして受け入れる場合、受信した前記第1のメッセージの一部を第2のメッセージとして前記第1のノードに向けて送信するステップと、前記第2のノードによって送信された前記第2のメッセージを受信した前記中継ノードが、自身を特定するための情報を前記第2のメッセージに含めて前記第1のノードに向けて送信するステップとを有するノード発見方法が提供される。この構成により、データ送信者(第2のノード)とデータ送信者に隣接するノード(中継ノード)との間にローカルな技術が存在しなくても隣接するノードを決定することができる。
また、本発明のノード発見方法において、前記第1のメッセージが、送信元のアドレスとして前記第2のノードのアドレス情報、送信先のアドレスとして前記第1のノードのアドレス情報、実際の送信元のノードのアドレス情報を少なくとも含み、所定のヘッダ情報によってカプセル化されていることは、本発明の好ましい態様である。この構成により、適切にメッセージを送信することができる。
また、本発明のノード発見方法において、前記第2のノードが、前記第1のメッセージの前記所定のヘッダ情報を外し、外された前記第1のメッセージを前記第2のメッセージとして前記第1のノードに向けて送信することは、本発明の好ましい態様である。この構成により、第2のノードに隣接する求めるべきノードを発見することができる。
また、本発明のノード発見方法において、前記第2のメッセージを受信した前記中継ノードが、前記第2のメッセージに含まれる前記実際の送信元のノードのアドレス情報に基づいて、前記第2のメッセージを送信した前記第1の経路上で隣り合うノードであるホップノードのアドレス情報を取得し、前記第2のメッセージに含まれる前記実際の送信元のノードのアドレス情報を自身のアドレス情報に変更することは、本発明の好ましい態様である。この構成により、メッセージフローと逆方向の隣り合うノードを知ることができる。
また、本発明のノード発見方法において、前記第1のノードが、前記第2のノードが移動した場合、再度前記第1のメッセージを前記第2のノードに向けて送信することは、本発明の好ましい態様である。この構成により、移動後においても新たな経路を構築することができる。
また、本発明によれば、データを送受信する第1のノードと、前記第1のノードの通信相手である第2のノードと、前記第1のノードと前記第2のノードとの間で送受信されるデータを中継する複数の中継ノードとを備え、前記第2のノードから前記第1のノードへのデータは第1の経路を通り、前記第1のノードから前記第2のノードへのデータは第2の経路を通り、前記第1のノード及び前記中継ノードのうち少なくとも1つ以上の中継ノードが所定の性質を有するメッセージを受信し処理することができるデータ通信システムにおける、前記所定の性質を有するメッセージの処理が可能な前記第1の経路上に位置する前記第2のノードから最も近くに位置するノードを発見するノード発見方法で用いられる前記第1のノードであって、前記第1のノード自身が前記第2のノードの代理として働く代理ノードとなることを提案するための第1のメッセージを生成するメッセージ生成手段と、生成された前記第1のメッセージを前記第2のノードに向けて送信する送信手段とを備える第1のノードが提供される。この構成により、データ送信者(第2のノード)とデータ送信者に隣接するノード(中継ノード)との間にローカルな技術が存在しなくても隣接するノードを決定することができる。
また、本発明の第1のノードにおいて、前記第1のメッセージが、送信元のアドレスとして前記第2のノードのアドレス情報、送信先のアドレスとして前記第1のノードのアドレス情報、実際の送信元のノードのアドレス情報を少なくとも含み、所定のヘッダ情報によってカプセル化されていることは、本発明の好ましい態様である。この構成により、適切にメッセージを送信することができる。
また、本発明の第1のノードにおいて、前記送信手段が、前記第2のノードが移動した場合、再度前記第1のメッセージを前記第2のノードに向けて送信することは、本発明の好ましい態様である。この構成により、移動後においても新たな経路を構築することができる。
また、本発明によれば、データを送受信する第1のノードと、前記第1のノードの通信相手である第2のノードと、前記第1のノードと前記第2のノードとの間で送受信されるデータを中継する複数の中継ノードとを備え、前記第2のノードから前記第1のノードへのデータは第1の経路を通り、前記第1のノードから前記第2のノードへのデータは第2の経路を通り、前記第1のノード及び前記中継ノードのうち少なくとも1つ以上の中継ノードが所定の性質を有するメッセージを受信し処理することができるデータ通信システムにおける、前記所定の性質を有するメッセージの処理が可能な前記第1の経路上に位置する前記第2のノードから最も近くに位置するノードを発見するノード発見方法で用いられる前記第2のノードであって、前記第1のノードによって送信された、前記第1のノードが前記第2のノードの代理として働く代理ノードとなることを提案する第1のメッセージを受信する受信手段と、受信された前記第1のメッセージに基づいて前記第1のノードを前記代理ノードとして受け入れる場合、受信した前記第1のメッセージの一部を第2のメッセージに加工する加工手段と、加工された前記第2のメッセージを前記第1のノードに向けて送信する送信手段とを備える第2のノードが提供される。この構成により、データ送信者(第2のノード)とデータ送信者に隣接するノード(中継ノード)との間にローカルな技術が存在しなくても隣接するノードを決定することができる。
また、本発明の第2のノードにおいて、前記第1のメッセージが、送信元のアドレスとして前記第2のノードのアドレス情報、送信先のアドレスとして前記第1のノードのアドレス情報、実際の送信元のノードのアドレス情報を少なくとも含み、所定のヘッダ情報によってカプセル化されていることは、本発明の好ましい態様である。この構成により、適切にメッセージを送信することができる。
また、本発明の第2のノードにおいて、前記加工手段が前記第1のメッセージの前記所定のヘッダ情報を外して前記第2のメッセージを生成することは、本発明の好ましい態様である。この構成により、第2のノードに隣接する求めるべきノードを発見することができる。
また、本発明の第2のノードにおいて、前記送信手段が、前記第2のノード自身が移動した場合、再度前記第1のメッセージを前記第1のノードから受信するために、移動したことを知らせるメッセージを前記第1のノードに向けて送信することは、本発明の好ましい態様である。この構成により、移動後においても新たな経路を構築することができる。
また、本発明によれば、データを送受信する第1のノードと、前記第1のノードの通信相手である第2のノードと、前記第1のノードと前記第2のノードとの間で送受信されるデータを中継する複数の中継ノードとを備え、前記第2のノードから前記第1のノードへのデータは第1の経路を通り、前記第1のノードから前記第2のノードへのデータは第2の経路を通り、前記第1のノード及び前記中継ノードのうち少なくとも1つ以上の中継ノードが所定の性質を有するメッセージを受信し処理することができるデータ通信システムにおける、前記所定の性質を有するメッセージの処理が可能な前記第1の経路上に位置する前記第2のノードから最も近くに位置するノードを発見するノード発見方法で用いられる前記中継ノードであって、前記第2のノードによって送信された、前記第2のノードの代理として働く代理ノードとなることを提案する前記第1のノードによる第1のメッセージの一部である第2のメッセージを受信する受信手段と、前記第2のノード自身を特定するための情報を受信された前記第2のメッセージに含めるメッセージ生成手段と、生成された前記第2のメッセージを前記第1のノードに向けて送信する送信手段とを備える中継ノードが提供される。この構成により、データ送信者(第2のノード)とデータ送信者に隣接するノード(中継ノード)との間にローカルな技術が存在しなくても隣接するノードを決定することができる。
また、本発明の中継ノードにおいて、前記第1のメッセージが、送信元のアドレスとして前記第2のノードのアドレス情報、送信先のアドレスとして前記第1のノードのアドレス情報、実際の送信元のノードのアドレス情報を少なくとも含み、所定のヘッダ情報によってカプセル化されていることは、本発明の好ましい態様である。この構成により、適切にメッセージを送信することができる。
また、本発明の中継ノードにおいて、前記第2のメッセージに含まれる前記実際の送信元のノードのアドレス情報に基づいて、前記第2のメッセージを送信した前記第1の経路上で隣り合うノードであるホップノードのアドレス情報を取得し、前記第2のメッセージに含まれる前記実際の送信元のノードのアドレス情報を自身のアドレス情報に変更することは、本発明の好ましい態様である。この構成により、メッセージフローと逆方向の隣り合うノードを知ることができる。
本発明の代理ノード発見方法とその方法で用いられる中継ノードは、上記構成を有し、データ送信者とプロキシ(代理ノード)、又はアプリケーションとプロキシとの間にローカルな技術が存在していなくても、プロキシを決定することができる。また、本発明のノード発見方法とその方法で用いられる第1のノード、第2のノード、中継ノードは、上記構成を有し、データ送信者とデータ送信者に隣接するノードとの間にローカルな技術が存在しなくても隣接するノードを決定することができる。
<第1の実施の形態>
以下、本発明の第1の実施の形態について図1から図3を用いて説明する。図1は本発明の第1の実施の形態におけるデータ通信システムの構成を示す構成図である。図2は本発明の第1の実施の形態に係る代理ノード発見方法(シグナリングプロキシの発見方法)について説明するためのシーケンスチャートである。図3は本発明の第1の実施の形態に係る中継ノードの構成を示す構成図である。
以下、本発明の第1の実施の形態について図1から図3を用いて説明する。図1は本発明の第1の実施の形態におけるデータ通信システムの構成を示す構成図である。図2は本発明の第1の実施の形態に係る代理ノード発見方法(シグナリングプロキシの発見方法)について説明するためのシーケンスチャートである。図3は本発明の第1の実施の形態に係る中継ノードの構成を示す構成図である。
まず、本発明の第1の実施の形態に係るシグナリングプロキシの発見方法について図1及び図2を用いて説明する。なお、ここではNSISによる付加的サービスにおけるプロキシの発見方法について説明するが、RSVP(Resource reSerVation Protocol)などの他のシグナリングメッセージを使った技術にも適用できる。また、本発明の第1の実施の形態では、後述するターミナル100が通常のルータ機能も有しているものとする。図1に示すように、ターミナル(NE)106は、ターミナル100から送られるデータに対して、NSISによる付加的サービスを所望するとデータ送信者側のプロキシを決定するために以下の作業を行う。
まず、ターミナル106は、経路112上で最もターミナル100に近いNE、すなわちNE108を発見するために、シグナリングメッセージをターミナル100に向けて送信する。このシグナリングメッセージ(以下、メッセージ1とも言う)は、「経路110上でターミナル100に最も近いNE(代理ノードとも言う)を発見せよ」という意味を示す情報を持ち、ターミナル100のアドレス情報を有する。このメッセージ1はNSISのシグナリングメッセージを本発明の第1の実施の形態用に拡張したものでもよく、新しく定義されたシグナリングメッセージでもよい。ただし、各NEのみがメッセージ1を受け取れるような機能(RAOが付加されているなど)を有しており、メッセージ1を受け取ったNEがメッセージ1が通る経路上の隣り合うNEを知ることができる機能を有している必要がある。メッセージ1は経路112上を通って送信される。
NE108は、経路112上のメッセージ1の送信方向(downstream方向)に隣り合うNEが存在しないことから、自分が経路112上で最もターミナル100に近いNEであることを判断する。次に、NE108は、経路110上で最もターミナル100に近いNEを発見するため、探している(発見をしている)旨を示す情報を付加したシグナリングメッセージ(以下、メッセージ2とも言う)をターミナル100経由でターミナル106に向けて送信する。ターミナル100経由でメッセージ2を送信するためには、例えばIP技術の既存技術であるstrict routeなどが利用できる。このメッセージ2はNSISのシグナリングメッセージを本発明の第1の実施の形態用に拡張したものでもよく、新しく定義されたシグナリングメッセージでもよい。ただし、各NEのみがメッセージ2を受け取れるような機能(RAOが付加されているなど)を有しており、メッセージ2を受け取ったNEがメッセージ2が通る経路上の隣り合うNEを知ることができる機能を有している必要がある。メッセージ2は経路112を通り、いったんターミナル100を通過した後、経路110を通ってターミナル106へ送られる。
NE108は、シグナリングメッセージ送信方向の隣り合うNE、すなわちNE102の情報を得る。経路112上でNE108とターミナル100との間にはNEが存在しないため、この隣り合うNEが経路110上でターミナル100に最も近いNEだということが分かる。こうしてプロキシが発見される。発見されたプロキシの情報は、シグナリングメッセージ(以下、メッセージ3とも言う)により、ターミナル106に通知される。このメッセージ3はNE108から送信されてもよいし、NE102から送信されてもよい。このメッセージ3はNSISのシグナリングメッセージを本発明の第1の実施の形態用に拡張したものでもよく、新しく定義されたシグナリングメッセージであってもよい。メッセージ3を受け取ったターミナル106は、プロキシ(NE102)に対し、付加的サービスのためのシグナリングメッセージを送信するよう要求する要求メッセージを送信する。この要求メッセージはNSISのシグナリングメッセージを本発明の第1の実施の形態用に拡張したものでもよく、新しく定義されたシグナリングメッセージであってもよい。
次に、本発明の第1の実施の形態に係る中継ノードについて図3を用いて説明する。ここで説明する中継ノードはNSISのシグナリングメッセージを処理することができる中継ノード(NE)であり、例えばNE108である。図3に示すように、中継ノード(NE)300は、受信部301、判断部302、メッセージ生成部303、送信部304、取得部305、記憶部306から構成されている。受信部301は、ターミナル100とターミナル106との間でやりとりされるデータやシグナリングメッセージなどを受信するもので、例えばターミナル106から送信された、代理ノードを発見するためのメッセージ1を受信する。
判断部302は、受信されたメッセージ1に基づいて、中継ノード300自身が経路112上においてターミナル100から最も近くに位置する中継ノードであるか否かを判断するものである。すなわち、判断部302は、経路112上のメッセージ1の送信方向(downstream方向)に隣り合うNEが存在しないことから、中継ノード300自身が経路112上で最もターミナル100に近いNEであることを判断する。メッセージ生成部303は、判断部302によって経路112上においてターミナル100から最も近くに位置する中継ノードであると判断された場合、中継ノード300自身と隣り合う経路110上の中継ノードを発見するためのメッセージ2を生成するものである。なお、このメッセージ2は、NSISのシグナリングメッセージを本発明の第1の実施の形態用に拡張したものでもよく、新しく定義されたシグナリングメッセージでもよい。ただし、各NEのみがメッセージ2を受け取れるような機能(RAOが付加されているなど)を有しており、メッセージ2を受け取ったNEがメッセージ2が通る経路上の隣り合うNEを知ることができる機能を有している必要がある。
送信部304は、ターミナル100とターミナル106との間でやりとりされるデータやシグナリングメッセージなどを送信するもので、例えば生成されたメッセージ2をターミナル100を経由させてターミナル106に向けて送信する。ターミナル100経由でメッセージ2を送信するためには、例えばIP技術の既存技術であるstrict routeなどが利用できる。取得部305は、送信部304によって送信されたメッセージ2を最初に受信した中継ノードに関する情報をメッセージ2を最初に受信した中継ノードから取得するものである。中継ノード300は、経路112上でNE108とターミナル100との間にはNEが存在しないため、この隣り合うNEが経路110上でターミナル100に最も近いNEだということが分かる。こうしてプロキシが発見される。なお、送信部304は、発見されたプロキシの情報を含むメッセージ3をターミナル106に送信するようにしてもよい。このメッセージ3はNSISのシグナリングメッセージを本発明の第1の実施の形態用に拡張したものでもよく、新しく定義されたシグナリングメッセージであってもよい。記憶部306は、中継ノード300が行う処理によって生じた情報を格納したり、中継ノード300の動作を制御するための制御プログラムなどを格納したりするものである。
<第2の実施の形態>
以下、本発明の第2の実施の形態について図4から図6を用いて説明する。図4は本発明の第2の実施の形態におけるデータ通信システムの構成を示す構成図である。図5は本発明の第2の実施の形態に係る代理ノード発見方法(シグナリングプロキシの発見方法)及びQoSリソース予約を説明するためのシーケンスチャートである。図6は本発明の第2の実施の形態に係る中継ノードの構成を示す構成図である。なお、本発明の第2の実施の形態では、後述するターミナル400が通常のルータ機能も有しているものとする。
以下、本発明の第2の実施の形態について図4から図6を用いて説明する。図4は本発明の第2の実施の形態におけるデータ通信システムの構成を示す構成図である。図5は本発明の第2の実施の形態に係る代理ノード発見方法(シグナリングプロキシの発見方法)及びQoSリソース予約を説明するためのシーケンスチャートである。図6は本発明の第2の実施の形態に係る中継ノードの構成を示す構成図である。なお、本発明の第2の実施の形態では、後述するターミナル400が通常のルータ機能も有しているものとする。
本発明の第2の実施の形態では、第1の実施の形態で、発見されたプロキシ(代理ノード)の情報をターミナル106に通知することなく、プロキシが付加的サービスのためのシグナリングメッセージ送信を開始するものである。この方法の一例を図4及び図5を用いて説明する。なお、ここではNSISによる付加的サービスをNSIS QoS NSLP(NSIS Signaling Layer Protocol:付加的サービスを提供するためのシグナリングメッセージ生成及びその処理を行うプロトコル)によるQoSの保証とし、また、QNE402、QNE404、QNE408及びターミナル406は、QoS NSLP機能を持ったNE、すなわちQNEとするが、本発明の第2の実施の形態は、QoS保証以外のNSISによる付加的サービスにばかりでなく、RSVPなどの他のシグナリング技術にも適用できる。
ターミナル406は、ターミナル400から送られるデータに対して、NSISによるQoS保証を所望すると、「経路410上でターミナル400に最も近いQNEを発見し、そのQNE(プロキシ)に対して経路410にQoSリソースを予約するよう依頼せよ」という意味を示す情報を持つシグナリングメッセージ(以下、メッセージ4とも言う)をターミナル400に向けて送信する。また、メッセージ4はターミナル400のアドレス情報のほか、プロキシが経路410に対してQoSリソースを予約するのに必要な情報(ターミナル406のアドレス情報や所望するQoSリソースの情報など)を持つ。また、プロキシが経路410に対してQoSリソースを予約するのに必要な情報として、使用するセッションIDを含んでいてもよい。メッセージ4は経路412を通って送信される。メッセージ4はNSISのシグナリングメッセージを本発明の第2の実施の形態用に拡張したものでもよく、新しく定義されたシグナリングメッセージであってもよい。ただし、各QNEのみがメッセージ4を受け取れるような機能(RAOが付加されているなど)を有しており、メッセージ4を受け取ったQNEがメッセージ4の通る経路上の隣り合うQNEを知ることができる機能を有している必要がある。
QNE408は、経路412上のシグナリングメッセージ送信方向(downstream方向)に隣り合うQNEが存在しないことから、自分が経路412上で最もターミナル400に近いQNEであることを判断する。次に、QNE408は、「このメッセージを最初に受け取ったQNE(プロキシ)は、経路410上に所望されるQoSリソースを予約せよ」という意味を示す情報を持つシグナリングメッセージ(以下、メッセージ5とも言う)をターミナル400経由でターミナル406に向けて送信する。ターミナル400経由でシグナリングメッセージを送信するためには、例えばIP技術の既存技術であるstrict routeなどが利用できる。メッセージ5はプロキシが経路410に対して、QoSリソース予約をするために必要な情報(ターミナル406のアドレス情報や所望するQoSリソースの情報など)を持つ。この情報は上述したメッセージ4からコピーされる。メッセージ5はいったんターミナル400を通過した後、経路410を通ってターミナル406へ送られるか、又はこのメッセージ5を受け取った最初のQNE(QNE402)で止められてそれ以上送信されなくてもよい。
メッセージ5はNSISのシグナリングメッセージを本発明の第2の実施の形態用に拡張したものでもよく、新しく定義されたシグナリングメッセージであってもよい。ただし、各QNEのみがメッセージ5を受け取れるような機能(RAOが付加されているなど)を有している必要がある。なお、本発明の第2の実施の形態では、プロキシが付加的サービスのためのシグナリングメッセージの送信を開始するため、このシグナリングメッセージを受け取ったQNEが隣り合うQNEを知ることができる機能は必ずしも有していなくてもよい。
メッセージ5を受け取ったQNE402は、自分がプロキシであることを検出し、QoS NSLPのメッセージであるRESERVEメッセージをターミナル406に送信することにより経路410上のQoSリソースを予約する。メッセージ5にセッションIDが含まれていない場合には、QNE402がセッションIDを生成する。なお、QNE402がターミナル406にRESERVEメッセージを送るのではなく、QoS NSLPのメッセージであるQUERYメッセージを送ることによりターミナル406から受信者主導のQoSリソース予約を行ってもよい。
次に、本発明の第2の実施の形態に係る中継ノードについて図6を用いて説明する。ここで説明する中継ノードはQoS NSLP機能を持った中継ノード(QNE)であり、例えばQNE408である。図6に示すように、中継ノード(QNE)600は、受信部601、判断部602、メッセージ生成部603、送信部604、取得部605、記憶部606から構成されている。受信部601は、ターミナル400とターミナル406との間でやりとりされるデータやシグナリングメッセージなどを受信するもので、例えばターミナル406から送信された、「経路410上でターミナル400に最も近いQNEを発見し、そのQNE(プロキシ)に対して経路410にQoSリソースを予約するよう依頼せよ」という意味を示す情報を持つメッセージ4を受信する。
メッセージ4はターミナル400のアドレス情報のほか、プロキシが経路410に対してQoSリソースを予約するのに必要な情報(ターミナル406のアドレス情報や所望するQoSリソースの情報など)を持つ。また、プロキシが経路410に対してQoSリソースを予約するのに必要な情報として、使用するセッションIDを含んでいてもよい。メッセージ4はNSISのシグナリングメッセージを本発明の第2の実施の形態用に拡張したものでもよく、新しく定義されたシグナリングメッセージであってもよい。ただし、各QNEのみがメッセージ4を受け取れるような機能(RAOが付加されているなど)を有しており、メッセージ4を受け取ったQNEがメッセージ4の通る経路上の隣り合うQNEを知ることができる機能を有している必要がある。
判断部602は、受信されたメッセージ4に基づいて、中継ノード600自身が経路412上においてターミナル400から最も近くに位置する中継ノードであるか否かを判断するものである。すなわち、判断部602は、経路412上のメッセージ4の送信方向(downstream方向)に隣り合うQNEが存在しないことから、中継ノード600自身が経路412上で最もターミナル400に近いQNEであることを判断する。メッセージ生成部603は、判断部602によって経路412上においてターミナル400から最も近くに位置する中継ノードであると判断された場合、中継ノード600自身と隣り合う経路410上の中継ノードを発見するためのメッセージ5を生成するものである。具体的には、メッセージ5は、「このメッセージを最初に受け取ったQNE(プロキシ)は、経路410上に所望されるQoSリソースを予約せよ」という意味を示す情報を持つシグナリングメッセージである。なお、メッセージ5はプロキシが経路410に対して、QoSリソース予約をするために必要な情報(ターミナル406のアドレス情報や所望するQoSリソースの情報など)を持つ。この情報は上述したメッセージ4からコピーされる。
メッセージ5はNSISのシグナリングメッセージを本発明の第2の実施の形態用に拡張したものでもよく、新しく定義されたシグナリングメッセージであってもよい。ただし、各QNEのみがメッセージ5を受け取れるような機能(RAOが付加されているなど)を有している必要がある。なお、本発明の第2の実施の形態では、プロキシが付加的サービスのためのシグナリングメッセージの送信を開始するため、このシグナリングメッセージを受け取ったQNEが隣り合うQNEを知ることができる機能は必ずしも有していなくてもよい。
送信部604は、ターミナル400とターミナル406との間でやりとりされるデータやシグナリングメッセージなどを送信するもので、例えば生成されたメッセージ5をターミナル400を経由させてターミナル406に向けて送信する。ターミナル400経由でメッセージ5を送信するためには、例えばIP技術の既存技術であるstrict routeなどが利用できる。メッセージ5はいったんターミナル400を通過した後、経路410を通ってターミナル406へ送られるか、又はこのメッセージ5を受け取った最初のQNE(QNE402)で止められてそれ以上送信されなくてもよい。なお、取得部605はオプションであり、送信部604によって送信されたメッセージ5を最初に受信した中継ノードに関する情報をメッセージ5を最初に受信した中継ノードから取得するものである。中継ノード600は、経路412上でQNE408とターミナル400との間にはQNEが存在しないため、この隣り合うQNEが経路410上でターミナル400に最も近いQNEだということが分かる。記憶部606は、中継ノード600が行う処理によって生じた情報を格納したり、中継ノード600の動作を制御するための制御プログラムなどを格納したりするものである。
なお、上述した第1及び第2の実施の形態において、ターミナル100及びターミナル400が移動端末であり、不図示のアクセスポイントとその先の不図示のアクセスルータを介してネットワークに接続されている場合、メッセージ2及びメッセージ5の経由ポイントとなるのは、ターミナル100やターミナル400ではなく、ターミナル100やターミナル400がつながっているアクセスルータでもよい。この場合、ターミナル100やターミナル400は特にルータ機能を有していなくてもよい。
また、上述したように、ターミナル100及びターミナル400が移動端末であり、不図示のアクセスポイントとその先の不図示のアクセスルータを介してネットワークに接続されている場合において、ターミナル100又はターミナル400が、現時点におけるネットワーク接続のアクセスルータとは別のアクセスルータ(第2のアクセスルータとする)の配下のサブネットワークにハンドオーバを行おうとしているとする。この場合、ターミナル100又はターミナル400が実際にハンドオーバを行う前に、ターミナル106やターミナル406が第2のアクセスルータのIPアドレスが分かるのであれば、ターミナル106やターミナル406は、第2のアクセスルータあてにメッセージ1やメッセージ4を送信することにより、あらかじめ第2のアクセスルータからターミナル106やターミナル406方向への第2のアクセスルータに最も近いプロキシを発見することができる。
<第3の実施の形態>
次に、本発明の第3の実施の形態について説明する。後述するように、明確な数字、時刻、構造、そしてパラメータは本発明の理解を助けるために明らかにしている。しかしながら、本発明はこれら明らかな詳細なしに実施されることは当業者であれば明らかである。なお、本発明の第3の実施の形態におけるデータ通信システムと第1の実施の形態におけるデータ通信システムとは基本的には同様であるが、第3の実施の形態の説明では図7から図11を用いて説明する。
次に、本発明の第3の実施の形態について説明する。後述するように、明確な数字、時刻、構造、そしてパラメータは本発明の理解を助けるために明らかにしている。しかしながら、本発明はこれら明らかな詳細なしに実施されることは当業者であれば明らかである。なお、本発明の第3の実施の形態におけるデータ通信システムと第1の実施の形態におけるデータ通信システムとは基本的には同様であるが、第3の実施の形態の説明では図7から図11を用いて説明する。
2つのエンドノードであるCN(ターミナル106に相当)701とMN(ターミナル100に相当)707との間に通信セッションが存在する。CN701からMN707へのデータパスはパス7001、7003、7005であり、分岐点となるシグナリングノードであるQNE703及びQNE705を通っている。一方、MN707からCN701へのパスはパス7007、7009、7011であり、QNE709及びQNE703を通っている。この場合、MN707はシグナリング処理可能ノードではない。図7には問題を説明するための最小限の十分なノードが示されており、このことは当業者にとって明らかである。実際のアプリケーションにおいて、通信にはより多くのノードが含まれ、シグナリング処理可能ノードもシグナリングを処理できないノードも存在する。2つの方向における2つのデータパスが共通しないノードに割り当てられることはあり得る。しかしながら、これらは本発明の一般的な原理に影響しない。
ここで、本発明の第3の実施の形態をサポートするMNの構成の一例を図8に示す。MN707はSTC(Signaling Tunnel Control)801、TC(Transport Control)803、AL(Application Layer)805から構成されている。なお、STC801は上述した加工手段に相当する。インターフェース8001はTC803がSTC801にシグナリングメッセージを通すためのものであり、インターフェース8003はSTC801が送信のためにTC803に戻される応答メッセージを通すためのものである。AL805はCN701との通信する手段をもつ機能に相当する。それは通信セッションに関係する実際のアプリケーションで、SIP(Signaling Initiation Protocol)シグナリングレイヤやモバイルIPレイヤなどである。これが本発明の操作原理に影響を与えないことは明らかである。
次に、本発明の第3の実施の形態をサポートするCNの構成の一例について図9を用いて説明する。CN701は、SPC(Signaling Proxy Control)901、STC(Signaling Tunnel Control)903、TC(Transport Control)905、SC(Signaling Control)907、AL(Application Layer)909から構成されている。なお、STC903は上述したメッセージ生成手段に相当する。
本発明の第3の実施の形態をサポートするQNE(中継ノード)の構成の一例について図10を用いて説明する。なお、QNEは複数存在するためQNE709を一例にとって説明する。QNE709は、少なくともSC(Signaling Control)1001、TC(Transport Control)1003、AL(Application Layer)1005から構成されている。また、SC1001とAL1005とはインターフェース1007を介して接続されており、SC1001とTC1003とはインターフェース1009を介して接続されている。なお、SC1001は上述したメッセージ生成手段や制御手段に相当するが、メッセージ生成手段における処理と制御手段における処理をSC1001が行うのではなく、別々の構成要素がそれぞれ行うよう構成されていてもよい。
MN707のAL805とCN701のAL909はセッションを構築する。このセッションは、例えばSIPに基づくボイスセッション若しくは簡易なHTTP(Hyper Text Transfer Protocol)セッションである。セッションのタイプが本発明の原理に影響を与えないことは明らかであり、通信セッションのセットアップの間に通信ノードの能力は取り決められる。例えば、シグナリングに基づくSIPは能力取り決め(能力ネゴシエーション)を提供する。処理の間、CN701のAL909は、MN707がシグナリング能力を有していないことを知る。この場合、AL909はトリガーをし、インターフェース9009を介してCN701のSPC901にMN707のアドレスを渡す。SPC901は、MN707に対してプロキシとしてCN701自身がシグナリング(例えば、QoSシグナリング)を管理することを提案する。
MN707はシグナリング処理可能ノードではないため、シグナリングメッセージを用いてSPC901と直接通信することができない。それゆえ、SPC901は、メッセージが伝送されるようにMN707とコネクションを構築するSTC903を利用する必要がある。
SPC901は、インターフェース9001を介してSTC903にMN707のアドレスを渡す。STC903は、IPトンネリングのIP、IPSecなどのトンネリングメカニズムを用いる。それは負荷の軽い処理である。
MN707のアドレスを受けた後、STC903はMN707との通信チャンネルを構築するためのメッセージを生成する。例えば、仮にシグナリングがQoSに関連するものであれば、メッセージはQoS−Proxy−Inviteとなる。このメッセージはSPC901からのメッセージを通すため、MN707にトンネルを構築するための必要な情報を含み、例えばポート番号、暗号化スキームなどである。
STC903は、MN707に送信するためにTC905にQoS−Proxy−Inviteメッセージを渡す。TC905はCN701とMN707との間に存在する通信メカニズムに相当する。例えば、それはシンプルなIPプロトコル、モバイルIPプロトコル、トンネルなどである。異なる伝送メカニズムの使用が本発明の操作原理に影響を与えないことは明らかである。
ここで、図11を参照すると、CN701のTC905はMN707にQoS−Proxy−Inviteメッセージ1101を送る。このメッセージは送信元のアドレスとしてCN701のアドレス、送信先のアドレスとしてMN707のアドレスを有する。そのメッセージ1101は、2つの通信ノードの間の通常のデータメッセージのように、CN701からMN707に直接届けられる。
MN707のTC803がメッセージ1101を受け取り、そのメッセージ1101をQoS−Proxy−Inviteメッセージとして認識すると、TC803はそれに応じてSTC801を起動させ、インターフェース8001を介してメッセージ1101をSTC801へ渡す。メッセージ1101を識別するためにTC803には異なる方法がある。例えば、ポート番号により定めたり、プロトコルIDを用いたり、特別なフラグを用いたりする方法がある。メッセージを識別する方法が異なることは本発明の操作原理に影響を与えないことは明らかである。
セキュリティ(安全性)を考慮すると、QoS−Proxy−Inviteメッセージ1101は、非認証のコネクションの試みを防いだり、後述するメッセージ交換を保護したりするためのセキュリティアソシエーションを含む。例えば、セキュリティアソシエーションは、MN707のAL805とCN701のAL909との間でアプリケーションレイヤシグナリングを通じて構築される。このセキュリティアソシエーションの情報は、インターフェース8005を介してSTC801に渡され、インターフェース9009及びインターフェース9001を介してSTC903に渡される。そして、QoS−Proxy−Inviteメッセージ1101は、STC801がQoS−Proxy−Inviteメッセージ1101を確かめ、本物であることを証明できるようにセキュリティアソシエーションを含む。以下に、QoS−Proxy−Inviteメッセージ1101に含まれる情報の一例を示す。
QoS−Proxy−Invite:=[Tunnel Establish Info]
[Nonce-CN]
[Authentication Code]
[Nonce-CN]
[Authentication Code]
ここで、“Tunnel Establish Info”は、MN707とCN701との間のトンネルを構築するときに用いられる情報である。それは、例えばポート番号、暗号化スキームなどを含む。“Nonce-CN”は、メッセージの証明と後述するメッセージ交換の保護のための必要なセキュリティキーを構築するためのCN701によって生成された十分大きなランダムな数である。“Authentication Code”は、QoS−Proxy−Inviteメッセージ1101に対して生成された証明コードであり、あらかじめセットされた値に“Authentication Code”自身を有するものである。例えば、STC903はハッシュ関数(例えば、MD5(Message Digest 5))を利用し、“Authentication Code”を生成する。ここで、用いられるキーはAL909とAL805との間で構築されたセキュリティアソシエーションと“Nonce-CN”との連結である。他のタイプの方法が、本発明の操作原理に影響を与えることなく“Authentication Code”の生成に用いられることは明らかである。
QoS−Proxy−Inviteメッセージ1101を受け取った後、STC801はまず受けたメッセージに対して、同じハッシュ関数とキーを用いることによって“Authentication Code”を生成する。仮に同じ“Authentication Code”になった場合、STC801はメッセージの処理を続ける。さもなければメッセージを破棄する。または、仮にAL805が通知を指示するならば、STC801は適当なエラーコードを持つ返事を送る。
仮にQoS−Proxy−Inviteメッセージ1101が確認を通ったならば、STC801は“Tunnel Establish Info”を処理する。STC801は、例えば“Tunnel Establish Info”に含まれる情報に応じて、適当なトンネリングスキーム、暗号化スキーム、若しくは認証スキームなどを選択する。
処理の後、STC801は応答メッセージ、例えばQoS−Proxy−Responseメッセージ1103を生成する。ここで、QoS−Proxy−Responseメッセージ1103は以下に示す情報を含む。
QoS−Proxy−Response:=[Tunnel Establish Result]
[Nonce-MN]
[Authentication Code]
[Nonce-MN]
[Authentication Code]
ここで、“Tunnel Establish Result”はトンネル構築に関する情報を含み、例えば選択されたトンネルポート、トンネルスキーム、暗号化アルゴリズムなどの情報を含む。“Nonce-MN”はSTC801によって生成された十分大きなランダムな数である。それは後述するメッセージ交換を保護するための“Authentication Code”やキーを生成するために用いられる。Authentication Code”は、QoS−Proxy−Inviteメッセージ1101の“Authentication Code”に似せて生成される。“Authentication Code”を生成するためのキーは“Nonce-MN”とAL805からのセキュリティアソシエーションから得られる。
QoS−Proxy−Responseメッセージ1103は、MN707からCN701に直接送られる。STC903がQoS−Proxy−Responseメッセージ1103を受け取ると、“Authentication Code”が正しいと確認されれば、CN701とMN707との間にトンネルを構築することができる。
トンネルが構築されると、STC903はSPC901にトリガーを送る。SPC901はQoS−Proxy−Queryメッセージ1105を生成し、MN707に送信するためにSTC903へ渡す。STC903はMN707に直接このメッセージを構築されたトンネルを用いて転送する。
ここで、QoS−Proxy−Queryメッセージ1105の一例を以下に示す。
QoS−Proxy−Query:=[Tunnel Header]
[Src:=MN-Address]
[Dst:=CN-Address]
[Extra-Src-Op:=CN-Address]
[QoS-Query-Info]
[Src:=MN-Address]
[Dst:=CN-Address]
[Extra-Src-Op:=CN-Address]
[QoS-Query-Info]
ここで、“Tunnel Header”はCN701とMN707との間でメッセージ送信のための必要なヘッダ情報である。この情報が、QoS−Proxy−Inviteメッセージ1101とQoS−Proxy−Responseメッセージ1103が交換される手続きによって選択されたトンネリングスキームに依存することは明らかである。“Src”と“Dst”はそれぞれメッセージの送信元と送信先のアドレスであって、MN707のアドレスとCN701のアドレスである。“Extra-Src-Op”は現在のアドレスを格納している特別なオプションでありCN701のアドレスである。“CN-Address”の代わりに“Src”フィールドに“MN-Address”のアドレスを用いることは、ネットワークのイングレスフィルタリングの問題を回避するためである。QoS−Proxy−Queryメッセージ1105はトンネル内を送信されるとき暗号化される。暗号キーはQoS−Proxy−Inviteメッセージ1101とQoS−Proxy−Responseメッセージ1103から得られる。例えば、暗号キーはセキュリティアソシエーションの関数、“Nonce-CN”、“Nonce-MN”からなる。
STC801がQoS−Proxy−Queryメッセージ1105を受け取ると、STC801は“Tunnel Header”を取り除き、QoS−Query−Aメッセージ1107として送り出すためTC803に直接メッセージの残りを渡す。QoS−Query−Aメッセージ1107は以下のような構成である。
QoS−Query−A:=[Src:=MN-Address]
[Dst:=CN-Address]
[Extra-Src-Op:=CN-Address]
[QoS-Query-Info]
[Dst:=CN-Address]
[Extra-Src-Op:=CN-Address]
[QoS-Query-Info]
このメッセージは中間ノードによって通常のシグナリングメッセージとして見られ、MN707からCN701のデータパスを流れる。
それゆえ、QoS−Query−Aメッセージ1107はシグナリング処理可能ノード、例えばQNE709によってインタセプトされる。QNE709がメッセージを受け取った後、QNE709は通常のシグナリングメッセージとしてメッセージを処理する。通常のシグナリングスキーム、例えばNSISの場合、QNE709は逆のメッセージアソシエーションを構築する必要がある。QNE709は前のホップアドレスとして“Extra-Src-Op”フィールドに格納されたアドレスを取得する。そして、この場合、QNE709は特別なルーティングステートを生成する。すなわち、“MN-AddressからCN-Addressのシグナリングセッションに関して、Previous-hop:=CN-Address”というものである。この方法で、逆方向におけるシグナリングメッセージはQNE709からCN701へ送信される。
処理の後、QNE709は“QoS-Query-Info”のフィールドを更新し、“Dst”のフィールドに示されたアドレス、すなわちCN701のアドレスにメッセージを転送する。同時に、QNE709は“Extra-Src-Op”のフィールドをチェックする。そして、自身のアドレスに置き換える。それゆえ、転送されたQoS−Query−Bメッセージ1109は以下に示すものとなる。
QoS−Query−B:=[Src:=MN-Address]
[Dst:=CN-Address]
[Extra-Src-Op:=QNE709-Address]
[QoS-Query-Info]
[Dst:=CN-Address]
[Extra-Src-Op:=QNE709-Address]
[QoS-Query-Info]
QoS−Query−Bメッセージ1109は、MN707からCN701へのデータフローとして同じように流れる。それゆえ、QoS−Query−Bメッセージ1109は経路上のシグナリング処理可能ノード、QNE703によって再びインタセプトされる。QNE703は通常のシグナリング手続きに従ってメッセージを処理する。例えば、QNE703は対応する“QoS-Query-Info”のフィールドを更新する。同様にQNE703は“Extra-Src-Op”に従って逆方向のメッセージルーティングを構築する、すなわち構築されたルーティングはQNE709に向けられている。
処理の後、QNE703は“Dst”によって示されたアドレス、すなわちCN701のアドレスに向けてQueryメッセージを転送する。同時に、QNE703は“Extra-Src-Op”のフィールドをチェックする。QNE703は“Extra-Src-Op”のフィールドを自身のアドレスに更新する。そして、転送される新たなメッセージであるQoS−Query−Cメッセージ1111は以下に示されるようなものである。
QoS−Query−C:=[Src:=MN-Address]
[Dst:=CN-Address]
[Extra-Src-Op:=QNE703-Address]
[QoS-Query-Info]
[Dst:=CN-Address]
[Extra-Src-Op:=QNE703-Address]
[QoS-Query-Info]
CN701のTC905がQoS−Query−Cメッセージ1111を受け取ったとき、TC905はインターフェース9005を介してSC907に渡す。通常のシグナリング処理がメッセージに適用される。同時に、CN701は“Extra-Src-Op”に従って逆のシグナリングメッセージルーティングをQNE703に向けて構築する。
処理の後、SC907はQueryメッセージに対する応答を送ることを決める。SC907はQoS−Response−Cメッセージ1113を生成する。QoS−Response−Cメッセージ1113の一例を以下に示す。
QoS−Response−C:=[Src:=CN-Address]
[Dst:=QNE703-Address]
[Extra-Dst-Op:=MN-Address]
[QoS-Response-Info]
[Dst:=QNE703-Address]
[Extra-Dst-Op:=MN-Address]
[QoS-Response-Info]
ここで、“QoS-Response-Info”はシグナリング応答における必要な情報を含んでいる。明らかにQoS−Response−Cメッセージ1113は、QueryメッセージであるQoS−Query−Cメッセージ1111によって構築された逆ルーティング情報に基づいてホップごとに送信される。“Extra-Dst-Op”はシグナリングメッセージの最終目的地を示し、シグナリングの方向を示すものである。
QoS−Response−Cメッセージ1113がシグナリング処理可能ノードのQNE703によって受け取られると、QNE703は通常のシグナリング手続きに従ってメッセージを処理する。同時に、QNE703は、“Extra-Dst-Op”が自身のアドレスに等しくないMN707のアドレスを示すのでResponseメッセージを転送する。それゆえ、QNE703は逆ルーティングテーブルをチェックし、以前のホップがQNE709であるとわかる。新たなメッセージであるQoS−Response−Bメッセージ1115はQNE709に送信され、送信されるQoS−Response−Bメッセージ1115は以下に示すようなものである。
QoS−Response−B:=[Src:=QNE703-Address]
[Dst:=QNE709-Address]
[Extra-Src-Op:=MN-Address]
[QoS-Response-Info]
[Dst:=QNE709-Address]
[Extra-Src-Op:=MN-Address]
[QoS-Response-Info]
ここで、このメッセージがQNE709に到達すると、QNE709は通常のシグナリング手続きのように処理する。QNE709は“Extra-Src-Op”が自身のアドレスと違うため更にResponseを転送することを決める。QNE709は以前のホップにおける逆ルーティングをチェックする。そして、それはCN701である。それゆえ、新たなメッセージであるQoS−Response−Aメッセージ1117は以下に示すようなものである。
QoS−Response−A:=[Src:=QNE709-Address]
[Dst:=CN-Address]
[Extra-Dst-Op:=MN-Address]
[QoS-Response-Info]
[Dst:=CN-Address]
[Extra-Dst-Op:=MN-Address]
[QoS-Response-Info]
QoS−Response−Aメッセージ1117は、QNE709からCN701に直接送信される。TC905がそのメッセージを受け取った場合、TC905はインターフェース9005を介してSC907にそのメッセージを渡す。SC907は“Extra-Dst-Op”のフィールドをチェックし、MN707のアドレスに等しいためメッセージはインターフェース9011を介してSPC901に渡される。SPC901はMN707のためにシグナリングメッセージを処理する。
そのセッションにおける更なるシグナリングメッセージ交換においても、上述したQoS−QueryメッセージとQoS−Responseメッセージにおける同じ処理がなされる。この方法において、MN707はシグナリング処理可能なものである必要はない。MN707に要求されることはSTC801を動かすことであり、それは大変軽い負荷である。STC801はCN701から構築されたトンネルによりメッセージを受け取り、ヘッダを取り除いた後に転送する。シグナリング状態や処理はMN707において必要ではない。それゆえ、ほとんどリソースを要求せず、モバイルデバイスにとって適している。
<第4の実施の形態>
第3の実施の形態では、SPC901は常にMN707のSTC801にSTC903を介してメッセージを送信している。しかしながら、図11に示すように、QoS−Query−Aメッセージ1107とQoS−Response−Aメッセージ1117との間で、SPC901は既に次のホップのシグナリング処理可能ノードのアドレスの情報、例えばQNE709のアドレスの情報を得ている。処理の簡略化のため、最初のQoS−QueryとQoS−Responseの交換後、代わりにSPC901がQNE709に直接メッセージを送信することは可能である。
第3の実施の形態では、SPC901は常にMN707のSTC801にSTC903を介してメッセージを送信している。しかしながら、図11に示すように、QoS−Query−Aメッセージ1107とQoS−Response−Aメッセージ1117との間で、SPC901は既に次のホップのシグナリング処理可能ノードのアドレスの情報、例えばQNE709のアドレスの情報を得ている。処理の簡略化のため、最初のQoS−QueryとQoS−Responseの交換後、代わりにSPC901がQNE709に直接メッセージを送信することは可能である。
この場合、SPC901はSC907にインターフェース9011を介してメッセージを渡し、更にインターフェース9005を介してTC905に渡す。メッセージは以下のようなフォーマットになる。
QoS−Signal−Msg:=[Src:=CN-Address]
[Dst:=QNE709-Address]
[Extra-Dst-Op:=CN-Address]
[QoS-Signal-Info]
[Dst:=QNE709-Address]
[Extra-Dst-Op:=CN-Address]
[QoS-Signal-Info]
このように、メッセージはMN707を通ることなくCN701からQNE709に直接送信される。これはモバイルデバイスにおけるシグナリング負荷を軽減する。
<第5の実施の形態>
本発明の第5の実施の形態について図12を用いて説明する。図12に示すように、第5の実施の形態は、第3の実施の形態のデータ通信システムにおいてCN701とQNE703との間にHA(Home Agent)1201が存在するものである。第5の実施の形態では、HA1201がMN707のプロキシとして働く。HA1201は、MN707からBU(Binding Update)が受けると第3の実施の形態のようにQoS−Proxy−QueryメッセージをMN707に向けて送信する。HA1201は上述した第3の実施の形態におけるCN701が行う処理手続きを行う。なお、HA1201とMN707との間の経路はいくつかのフローがアグリゲートされており、それらはHA1201によって管理されている。
本発明の第5の実施の形態について図12を用いて説明する。図12に示すように、第5の実施の形態は、第3の実施の形態のデータ通信システムにおいてCN701とQNE703との間にHA(Home Agent)1201が存在するものである。第5の実施の形態では、HA1201がMN707のプロキシとして働く。HA1201は、MN707からBU(Binding Update)が受けると第3の実施の形態のようにQoS−Proxy−QueryメッセージをMN707に向けて送信する。HA1201は上述した第3の実施の形態におけるCN701が行う処理手続きを行う。なお、HA1201とMN707との間の経路はいくつかのフローがアグリゲートされており、それらはHA1201によって管理されている。
また、CN701はQoS−Proxy−Queryメッセージを依然送信することができる。このとき、HA1201とMN707との間ではトンネルが用いられているため、結果としてのQueryはCN701とHA1201との間以降のノードによって見られるのみである。これはネストされたケースの動作である。
<第6の実施の形態>
第6の実施の形態では、上述した第1〜第5の実施の形態におけるターミナル100、ターミナル400、MN707がハンドオーバをする場合について説明する。以下に、3つのパターンについて説明する。なお、3つのパターンを説明する際、ターミナル100、ターミナル400、MN707をMN1300とし、ターミナル106、ターミナル406、CN701をCN1301として説明する。
第6の実施の形態では、上述した第1〜第5の実施の形態におけるターミナル100、ターミナル400、MN707がハンドオーバをする場合について説明する。以下に、3つのパターンについて説明する。なお、3つのパターンを説明する際、ターミナル100、ターミナル400、MN707をMN1300とし、ターミナル106、ターミナル406、CN701をCN1301として説明する。
まず、1つ目のパターンについて図13を用いて説明する。1つ目のパターンは1つのインターフェースを有するMN1300がハンドオーバするパターンである。第1〜第5の実施の形態で説明したようにMN1300の代理となるプロキシが発見された後に、MN1300がハンドオーバを行う。ハンドオーバ前では、MN1300はQNE1302、QNE1303、QNE1304を介してCN1301と通信している。
MN1300がハンドオーバを開始すると、MN1300はQNE1302、QNE1305、QNE1306を介してCN1301と通信することになる。なお、ハンドオーバ先でのプロキシ探索のシグナリング及びシーケンスは、第1〜第5の実施の形態で説明したものと同様であり、MN1300のハンドオーバ先で同様の処理を行うことになる。
次に、2つ目のパターンについて図14を用いて説明する。2つ目のパターンは、複数(ここでは2つ)のインターフェースを有するMN1300がインターフェース間でハンドオーバするパターンである。第1〜第5の実施の形態で説明したようにMN1300の代理となるプロキシが発見された後に、MN1300がインターフェース間でハンドオーバを行う。すなわち、図14に示すように、インターフェース(IF1)からインターフェース(IF2)へハンドオーバする。インターフェース間のハンドオーバ前では、MN1300はIF1を用いてQNE1302、QNE1303、QNE1304を介してCN1301と通信している。
MN1300がインターフェース間のハンドオーバを開始すると、MN1300はIF2を用いてQNE1302、QNE1305、QNE1306を介してCN1301と通信することになる。このとき、MN1300は、ハンドオーバすることによりIF1からIF2へインターフェースが変更される。なお、インターフェース間のハンドオーバ先でのプロキシ探索のシグナリング及びシーケンスは、第1〜第5の実施の形態で説明したものと同様であり、MN1300のインターフェース間のハンドオーバ先で同様の処理を行うことになる。
次に、3つ目のパターンについて図15を用いて説明する。3つ目のパターンは、複数(ここでは2つ)のインターフェースを有するMN1300の1つのインターフェースがハンドオーバするパターンである。第1〜第5の実施の形態で説明したようにMN1300の代理となるプロキシがそれぞれ発見された後に、MN1300のインターフェース、例えばIF2がハンドオーバを行う。ハンドオーバ前では、MN1300はIF1を用いてQNE1302、QNE1303、QNE1304を介してCN1301と通信し、またMN1300はIF2を用いてQNE1302、QNE1305、QNE1306を介してCN1301と通信している。
MN1300のIF2がハンドオーバを開始すると、MN1300はIF2を用いてQNE1302、QNE1307、QNE1308を介してCN1301と通信することになる。なお、IF2のハンドオーバ先でのプロキシ探索のシグナリング及びシーケンスは、第1〜第5の実施の形態で説明したものと同様であり、IF2のハンドオーバ先で同様の処理を行うことになる。
なお、MN1300が複数のインターフェースを有する場合におけるシグナリングには、セッションID、フローIDに加え、パスタイプID(非特許文献7を参照)が追加される。パスタイプIDを用いることにより、同じセッションにおけるシグナリングはそれぞれ管理される。
なお、上記の本発明の各実施の形態の説明で用いた各機能ブロックは、典型的には集積回路であるLSI(Large Scale Integration)として実現される。これらは個別に1チップ化されてもよいし、一部又はすべてを含むように1チップ化されてもよい。なお、ここでは、LSIとしたが、集積度の違いにより、IC(Integrated Circuit)、システムLSI、スーパーLSI、ウルトラLSIと呼称されることもある。また、集積回路化の手法はLSIに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。さらには、半導体技術の進歩又は派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。例えば、バイオ技術の適応などが可能性としてあり得る。
本発明に係る代理ノード発見方法とその方法で用いられる中継ノードは、データ送信者とプロキシ、又はアプリケーションとプロキシとの間にローカルな技術が存在していなくても、プロキシを決定することができ、また、本発明に係るノード発見方法とその方法で用いられる第1のノード、第2のノード、中継ノードは、データ送信者とデータ送信者に隣接するノードとの間にローカルな技術が存在しなくても隣接するノードを決定することができるため、特定のシグナリングメッセージを処理することができないデータ送受信端末の代理として特定のシグナリングメッセージを処理する代理ノード(プロキシ)を決定するための代理ノード発見方法とその方法で用いられる中継ノード、及び特定のシグナリングメッセージを処理することができないデータ送受信端末のための代理として一方のデータ送受信端末が働く際の通信相手となるノードを発見するためのノード発見方法とその方法で用いられる第1のノード、第2のノード、中継ノードなどに有用である。
Claims (29)
- データを送受信する第1のノードと、前記第1のノードの通信相手である第2のノードと、前記第1のノードと前記第2のノードとの間で送受信されるデータを中継する複数の中継ノードとを備え、前記第2のノードから前記第1のノードへのデータは第1の経路を通り、前記第1のノードから前記第2のノードへのデータは第2の経路を通り、前記第1のノード及び前記中継ノードのうち少なくとも1つ以上の中継ノードが所定の性質を有するメッセージを受信し処理することができるデータ通信システムにおける、前記第2のノードの代理として前記所定の性質を有するメッセージを処理する前記第1の経路上に位置する代理ノードを発見する代理ノード発見方法であって、
前記第1のノードが、前記所定の性質を有するメッセージに、前記代理ノードの発見を依頼する旨を示す情報を付加した第1のメッセージを前記第2のノードに向けて送信するステップと、
前記第1のメッセージを受信した前記中継ノードが、自身が前記第2の経路上において前記第2のノードから最も近くに位置する中継ノードであるか否かを判断するステップと、
前記第2の経路上において前記第2のノードから最も近くに位置する中継ノードであると判断した中継ノードが、前記所定の性質を有するメッセージに、自身と隣り合う前記第1の経路上の中継ノードの発見をしている旨を示す情報を付加した第2のメッセージを前記第2のノードを経由させて送信するステップと、
前記第2のメッセージを送信した中継ノードが、送信された前記第2のメッセージを最初に受信した中継ノードを特定する情報を前記第2のメッセージを最初に受信した中継ノードから取得するステップとを、
有する代理ノード発見方法。 - 前記第1のメッセージは、前記第1の経路上において前記第2のノードから最も近くに位置する、前記所定の性質を有するメッセージを処理できる中継ノードの発見を要求する旨を示すメッセージであり、前記第2のノードのアドレス情報を含む請求項1に記載の代理ノード発見方法。
- 前記第2のメッセージを送信した中継ノード又は前記第2のメッセージを最初に受信した中継ノードは、前記所定の性質を有するメッセージに、前記第2のメッセージを最初に受信した中継ノードを特定する情報を含めた第3のメッセージを前記第1のノードに送信する請求項1に記載の代理ノード発見方法。
- 前記第1のメッセージは、前記第1の経路上において前記第2のノードから最も近くに位置する、前記所定の性質を有するメッセージを処理できる中継ノードの発見を要求する旨を示すメッセージで、更に発見された前記中継ノードに前記第1の経路にQoSリソースの予約を要求する旨を示すメッセージであり、前記第2のノードのアドレス情報、第1のノードのアドレス情報、前記第1の経路に予約する前記QoSリソースの情報のうち少なくとも1つ以上を含む請求項1に記載の代理ノード発見方法。
- 前記第2のメッセージは、更に前記第2のメッセージを最初に受信した中継ノードが前記第1の経路にQoSリソース予約をすることを要求する旨を示すメッセージであり、前記第1のノードのアドレス情報、前記第1の経路に予約する前記QoSリソースの情報のうち少なくとも1つ以上を含む請求項1に記載の代理ノード発見方法。
- 前記第1のメッセージ及び前記第2のメッセージには、前記所定の性質を有するメッセージを処理できる中継ノードに、前記第1のメッセージ及び前記第2のメッセージの受信を可能とさせるための情報が含まれている請求項1に記載の代理ノード発見方法。
- 前記代理ノードが発見された後に前記第2のノードが移動した場合、前記移動先における前記代理ノードを再度発見するよう構成された請求項1に記載の代理ノード発見方法。
- データを送受信する第1のノードと、前記第1のノードの通信相手である第2のノードと、前記第1のノードと前記第2のノードとの間で送受信されるデータを中継する複数の中継ノードとを備え、前記第2のノードから前記第1のノードへのデータは第1の経路を通り、前記第1のノードから前記第2のノードへのデータは第2の経路を通り、前記第1のノード及び前記中継ノードのうち少なくとも1つ以上の中継ノードが所定の性質を有するメッセージを受信し処理することができるデータ通信システムにおける、前記所定の性質を有するメッセージを処理することができる前記中継ノードであって、
前記第1のノードから送信された、前記所定の性質を有するメッセージに前記代理ノードの発見を依頼する旨を示す情報が付加された第1のメッセージを受信する受信手段と、
受信された前記第1のメッセージに基づいて、自身が前記第2の経路上において前記第2のノードから最も近くに位置する中継ノードであるか否かを判断する判断手段と、
前記第2の経路上において前記第2のノードから最も近くに位置する中継ノードであると判断した場合、前記所定の性質を有するメッセージに、自身と隣り合う前記第1の経路上の中継ノードの発見をしている旨を示す情報を付加した第2のメッセージを生成するメッセージ生成手段と、
生成された前記第2のメッセージを前記第2のノードを経由させて送信する送信手段と、
送信された前記第2のメッセージを最初に受信した中継ノードを特定する情報を前記第2のメッセージを最初に受信した中継ノードから取得する取得手段とを、
備える中継ノード。 - 前記第1のメッセージは、前記第1の経路上において前記第2のノードから最も近くに位置する、前記所定の性質を有するメッセージを処理できる中継ノードの発見を要求する旨を示すメッセージであり、前記第2のノードのアドレス情報を含む請求項8に記載の中継ノード。
- 前記取得手段は、前記第2のメッセージを最初に受信した中継ノードから前記第2のメッセージを最初に受信した前記中継ノードに関する情報を取得し、
前記メッセージ生成手段は、前記所定の性質を有するメッセージに、取得された前記中継ノードを特定する情報を含めた第3のメッセージを生成し、
前記送信手段は、生成された前記第3のメッセージを前記第1のノードに送信する請求項8に記載の中継ノード。 - 前記第1のメッセージは、前記第1の経路上において前記第2のノードから最も近くに位置する、前記所定の性質を有するメッセージを処理できる中継ノードの発見を要求する旨を示すメッセージで、更に発見された前記中継ノードに前記第1の経路にQoSリソースの予約を要求する旨を示すメッセージであり、前記第2のノードのアドレス情報、第1のノードのアドレス情報、第1の経路に予約する前記QoSリソースの情報のうち少なくとも1つ以上を含む請求項8に記載の中継ノード。
- 前記第2のメッセージは、更に前記第2のメッセージを最初に受信した中継ノードが前記第1の経路にQoSリソース予約をすることを要求する旨を示すメッセージであり、前記第1のノードのアドレス情報、第1の経路に予約する前記QoSリソースの情報のうち少なくとも1つ以上を含む請求項8に記載の中継ノード。
- 前記第1のメッセージ及び前記第2のメッセージには、前記所定の性質を有するメッセージを処理できる中継ノードに、前記第1のメッセージ及び前記第2のメッセージの受信を可能とさせるための情報が含まれている請求項8に記載の中継ノード。
- データを送受信する第1のノードと、前記第1のノードの通信相手である第2のノードと、前記第1のノードと前記第2のノードとの間で送受信されるデータを中継する複数の中継ノードとを備え、前記第2のノードから前記第1のノードへのデータは第1の経路を通り、前記第1のノードから前記第2のノードへのデータは第2の経路を通り、前記第1のノード及び前記中継ノードのうち少なくとも1つ以上の中継ノードが所定の性質を有するメッセージを受信し処理することができるデータ通信システムにおける、前記所定の性質を有するメッセージの処理が可能な前記第1の経路上に位置する前記第2のノードから最も近くに位置するノードを発見するノード発見方法であって、
前記第1のノードが、前記第1の経路上に位置する前記第2のノードから最も近くに位置する前記ノードを発見するためのメッセージを前記第2のノードに向けて送信するステップと、
前記第1のノードが、送信された前記第2のノードを経由した前記メッセージを基に、前記第1の経路上に位置する前記第2のノードから最も近くに位置する前記ノードによって送信されたメッセージに含まれる前記ノード自身を特定する情報を受信するステップとを、
有するノード発見方法。 - データを送受信する第1のノードと、前記第1のノードの通信相手である第2のノードと、前記第1のノードと前記第2のノードとの間で送受信されるデータを中継する複数の中継ノードとを備え、前記第2のノードから前記第1のノードへのデータは第1の経路を通り、前記第1のノードから前記第2のノードへのデータは第2の経路を通り、前記第1のノード及び前記中継ノードのうち少なくとも1つ以上の中継ノードが所定の性質を有するメッセージを受信し処理することができるデータ通信システムにおける、前記所定の性質を有するメッセージの処理が可能な前記第1の経路上に位置する前記第2のノードから最も近くに位置するノードを発見するノード発見方法であって、
前記第1のノードが、自身が前記第2のノードの代理として働く代理ノードとなることを提案する第1のメッセージを前記第2のノードに向けて送信するステップと、
前記第2のノードが、受信した前記第1のメッセージに基づいて前記第1のノードを前記代理ノードとして受け入れる場合、受信した前記第1のメッセージの一部を第2のメッセージとして前記第1のノードに向けて送信するステップと、
前記第2のノードによって送信された前記第2のメッセージを受信した前記中継ノードが、自身を特定するための情報を前記第2のメッセージに含めて前記第1のノードに向けて送信するステップとを、
有するノード発見方法。 - 前記第1のメッセージは、送信元のアドレスとして前記第2のノードのアドレス情報、送信先のアドレスとして前記第1のノードのアドレス情報、実際の送信元のノードのアドレス情報を少なくとも含み、所定のヘッダ情報によってカプセル化されている請求項15に記載のノード発見方法。
- 前記第2のノードは、前記第1のメッセージの前記所定のヘッダ情報を外し、外された前記第1のメッセージを前記第2のメッセージとして前記第1のノードに向けて送信する請求項16に記載のノード発見方法。
- 前記第2のメッセージを受信した前記中継ノードは、前記第2のメッセージに含まれる前記実際の送信元のノードのアドレス情報に基づいて、前記第2のメッセージを送信した前記第1の経路上で隣り合うノードであるホップノードのアドレス情報を取得し、前記第2のメッセージに含まれる前記実際の送信元のノードのアドレス情報を自身のアドレス情報に変更する請求項16に記載のノード発見方法。
- 前記第1のノードは、前記第2のノードが移動した場合、再度前記第1のメッセージを前記第2のノードに向けて送信する請求項15に記載のノード発見方法。
- データを送受信する第1のノードと、前記第1のノードの通信相手である第2のノードと、前記第1のノードと前記第2のノードとの間で送受信されるデータを中継する複数の中継ノードとを備え、前記第2のノードから前記第1のノードへのデータは第1の経路を通り、前記第1のノードから前記第2のノードへのデータは第2の経路を通り、前記第1のノード及び前記中継ノードのうち少なくとも1つ以上の中継ノードが所定の性質を有するメッセージを受信し処理することができるデータ通信システムにおける、前記所定の性質を有するメッセージの処理が可能な前記第1の経路上に位置する前記第2のノードから最も近くに位置するノードを発見するノード発見方法で用いられる前記第1のノードであって、
前記第1のノード自身が前記第2のノードの代理として働く代理ノードとなることを提案するための第1のメッセージを生成するメッセージ生成手段と、
生成された前記第1のメッセージを前記第2のノードに向けて送信する送信手段とを、
備える第1のノード。 - 前記第1のメッセージは、送信元のアドレスとして前記第2のノードのアドレス情報、送信先のアドレスとして前記第1のノードのアドレス情報、実際の送信元のノードのアドレス情報を少なくとも含み、所定のヘッダ情報によってカプセル化されている請求項20に記載の第1のノード。
- 前記送信手段は、前記第2のノードが移動した場合、再度前記第1のメッセージを前記第2のノードに向けて送信する請求項20に記載の第1のノード。
- データを送受信する第1のノードと、前記第1のノードの通信相手である第2のノードと、前記第1のノードと前記第2のノードとの間で送受信されるデータを中継する複数の中継ノードとを備え、前記第2のノードから前記第1のノードへのデータは第1の経路を通り、前記第1のノードから前記第2のノードへのデータは第2の経路を通り、前記第1のノード及び前記中継ノードのうち少なくとも1つ以上の中継ノードが所定の性質を有するメッセージを受信し処理することができるデータ通信システムにおける、前記所定の性質を有するメッセージの処理が可能な前記第1の経路上に位置する前記第2のノードから最も近くに位置するノードを発見するノード発見方法で用いられる前記第2のノードであって、
前記第1のノードによって送信された、前記第1のノードが前記第2のノードの代理として働く代理ノードとなることを提案する第1のメッセージを受信する受信手段と、
受信された前記第1のメッセージに基づいて前記第1のノードを前記代理ノードとして受け入れる場合、受信した前記第1のメッセージの一部を第2のメッセージに加工する加工手段と、
加工された前記第2のメッセージを前記第1のノードに向けて送信する送信手段とを、
備える第2のノード。 - 前記第1のメッセージは、送信元のアドレスとして前記第2のノードのアドレス情報、送信先のアドレスとして前記第1のノードのアドレス情報、実際の送信元のノードのアドレス情報を少なくとも含み、所定のヘッダ情報によってカプセル化されている請求項23に記載の第2のノード。
- 前記加工手段は、前記第1のメッセージの前記所定のヘッダ情報を外して前記第2のメッセージを生成する請求項24に記載の第2のノード。
- 前記送信手段は、前記第2のノード自身が移動した場合、再度前記第1のメッセージを前記第1のノードから受信するために、移動したことを知らせるメッセージを前記第1のノードに向けて送信する請求項23に記載の第2のノード。
- データを送受信する第1のノードと、前記第1のノードの通信相手である第2のノードと、前記第1のノードと前記第2のノードとの間で送受信されるデータを中継する複数の中継ノードとを備え、前記第2のノードから前記第1のノードへのデータは第1の経路を通り、前記第1のノードから前記第2のノードへのデータは第2の経路を通り、前記第1のノード及び前記中継ノードのうち少なくとも1つ以上の中継ノードが所定の性質を有するメッセージを受信し処理することができるデータ通信システムにおける、前記所定の性質を有するメッセージの処理が可能な前記第1の経路上に位置する前記第2のノードから最も近くに位置するノードを発見するノード発見方法で用いられる前記中継ノードであって、
前記第2のノードによって送信された、前記第2のノードの代理として働く代理ノードとなることを提案する前記第1のノードによる第1のメッセージの一部である第2のメッセージを受信する受信手段と、
前記第2のノード自身を特定するための情報を受信された前記第2のメッセージに含めるメッセージ生成手段と、
生成された前記第2のメッセージを前記第1のノードに向けて送信する送信手段とを、
備える中継ノード。 - 前記第1のメッセージは、送信元のアドレスとして前記第2のノードのアドレス情報、送信先のアドレスとして前記第1のノードのアドレス情報、実際の送信元のノードのアドレス情報を少なくとも含み、所定のヘッダ情報によってカプセル化されている請求項27に記載の中継ノード。
- 前記第2のメッセージに含まれる前記実際の送信元のノードのアドレス情報に基づいて、前記第2のメッセージを送信した前記第1の経路上で隣り合うノードであるホップノードのアドレス情報を取得し、前記第2のメッセージに含まれる前記実際の送信元のノードのアドレス情報を自身のアドレス情報に変更する制御手段を更に備える請求項28に記載の中継ノード。
Applications Claiming Priority (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005374133 | 2005-12-27 | ||
JP2005374133 | 2005-12-27 | ||
JP2006159114 | 2006-06-07 | ||
JP2006159114 | 2006-06-07 | ||
JP2006348503 | 2006-12-25 | ||
JP2006348503 | 2006-12-25 | ||
PCT/JP2006/326142 WO2007074885A1 (ja) | 2005-12-27 | 2006-12-27 | 代理ノード発見方法とその方法で用いられる中継ノード、及びノード発見方法とその方法で用いられる第1のノード、第2のノード、中継ノード |
Publications (1)
Publication Number | Publication Date |
---|---|
JPWO2007074885A1 true JPWO2007074885A1 (ja) | 2009-06-04 |
Family
ID=38218107
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007552017A Withdrawn JPWO2007074885A1 (ja) | 2005-12-27 | 2006-12-27 | 代理ノード発見方法とその方法で用いられる中継ノード、及びノード発見方法とその方法で用いられる第1のノード、第2のノード、中継ノード |
Country Status (3)
Country | Link |
---|---|
US (1) | US20090279553A1 (ja) |
JP (1) | JPWO2007074885A1 (ja) |
WO (1) | WO2007074885A1 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5815571B2 (ja) | 2010-03-11 | 2015-11-17 | エレクトロニクス アンド テレコミュニケーションズ リサーチ インスチチュートElectronics And Telecommunications Research Institute | 無線システムのコーディネータ装置、ソース装置及びリレイ装置の通信方法及びフレーム構造 |
EP3735038A4 (en) * | 2017-12-27 | 2020-11-04 | Guangdong Oppo Mobile Telecommunications Corp., Ltd. | DATA TRANSMISSION PROCESS, TERMINAL DEVICE, AND NETWORK DEVICE |
FR3096533A1 (fr) * | 2019-06-28 | 2020-11-27 | Orange | Procédé de gestion d’une communication entre terminaux dans un réseau de communication, et dispositifs pour la mise en œuvre du procédé |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7373508B1 (en) * | 2002-06-04 | 2008-05-13 | Cisco Technology, Inc. | Wireless security system and method |
US7272145B2 (en) * | 2002-07-31 | 2007-09-18 | At&T Knowledge Ventures, L.P. | Resource reservation protocol based guaranteed quality of service internet protocol connections over a switched network through proxy signaling |
JP3985638B2 (ja) * | 2002-09-11 | 2007-10-03 | 日本電気株式会社 | Rsvp代理応答ルータ、rsvp代理応答システム及びそれに用いるrsvp代理応答方法 |
KR100656206B1 (ko) * | 2004-12-28 | 2006-12-12 | 삼성전자주식회사 | 복수의 타겟 영역으로 패킷의 전송이 가능한 애드 혹네트워크 및 그 패킷 전송방법 |
WO2007149687A2 (en) * | 2006-05-30 | 2007-12-27 | Riverbed Technology, Inc. | Selecting proxies from among autodiscovered proxies |
-
2006
- 2006-12-27 JP JP2007552017A patent/JPWO2007074885A1/ja not_active Withdrawn
- 2006-12-27 US US12/159,004 patent/US20090279553A1/en not_active Abandoned
- 2006-12-27 WO PCT/JP2006/326142 patent/WO2007074885A1/ja active Application Filing
Also Published As
Publication number | Publication date |
---|---|
US20090279553A1 (en) | 2009-11-12 |
WO2007074885A1 (ja) | 2007-07-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2144416B1 (en) | Mobile network managing apparatus and mobile information managing apparatus for controlling access requests | |
US20080137625A1 (en) | Communication System Resource Management Device Resource Management Method Communication Management Device and Communication Management Method | |
US8345678B2 (en) | Communication method, communication message processing method, program for executing these methods on computer | |
JPWO2007119598A1 (ja) | 高速QoSハンドオーバ方法及びその方法で用いられる処理ノード | |
JPWO2007052527A1 (ja) | 無線通信システム、通信装置、及び中継装置 | |
BRPI0113044B1 (pt) | método e sistema para autorização da portadora em uma rede de comunicação sem fio fornecendo uma segurança melhorada ao autorizar o acesso ao serviço | |
US20090268664A1 (en) | Communication route optimization method and communication route optimization control device | |
JP4664965B2 (ja) | 通信システム及び通信ノード | |
WO2008063748A2 (en) | Method and apparatus for resource reservation in a multihop wireless network | |
JPWO2007074885A1 (ja) | 代理ノード発見方法とその方法で用いられる中継ノード、及びノード発見方法とその方法で用いられる第1のノード、第2のノード、中継ノード | |
US20090190551A1 (en) | Route Setting Method and Route Management Device | |
JP2006352444A (ja) | パケット転送システム及びパケット転送方法 | |
JPWO2007037372A1 (ja) | アグリゲーション管理方法、アグリゲートノード、デアグリゲートノード | |
JP4411171B2 (ja) | 通信システム、情報処理方法、およびルータ | |
JP4750115B2 (ja) | クロスオーバノード検出方法、この方法をコンピュータにより実行するためのクロスオーバノード検出用プログラム、クロスオーバノード検出方法で用いられる移動端末及び中継装置 | |
KR100959015B1 (ko) | 모바일 네트워크의 이동에 따른 라우팅 시스템 및 방법 | |
US20100157939A1 (en) | Crossover node detection pre-processing method, crossover node detection pre-processing program for executing this method by computer, and mobile terminal used in this method | |
JP4506883B2 (ja) | 移動通信システム、トラヒック転送装置、トラヒック転送方法及びプログラム | |
KR20010006684A (ko) | QoS 세션 형성 방법 및 장치 | |
WO2022056794A1 (zh) | 一种通信方法及装置 | |
WO2008072565A1 (ja) | QoS早期確立方法、その方法で用いられる移動端末、その方法で用いられるアクセスルータ、その方法で用いられる通信装置 | |
JP2003153330A (ja) | 移動体通信システムおよびラベルスイッチングパス設定方法 | |
JP2006094105A (ja) | トンネリング方法および装置、ならびにそのプログラムと記録媒体 | |
JP2008283417A (ja) | クロスオーバノード選択方法及びその方法で用いられる中継ノード | |
WO2007037346A1 (ja) | 高速QoSハンドオーバ方法及びその方法で用いられる処理ノード |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20100302 |