JPWO2010055630A1 - アドレス登録方法、アドレス登録システム、移動装置及び移動管理装置 - Google Patents

アドレス登録方法、アドレス登録システム、移動装置及び移動管理装置 Download PDF

Info

Publication number
JPWO2010055630A1
JPWO2010055630A1 JP2010537680A JP2010537680A JPWO2010055630A1 JP WO2010055630 A1 JPWO2010055630 A1 JP WO2010055630A1 JP 2010537680 A JP2010537680 A JP 2010537680A JP 2010537680 A JP2010537680 A JP 2010537680A JP WO2010055630 A1 JPWO2010055630 A1 JP WO2010055630A1
Authority
JP
Japan
Prior art keywords
address
registration
message
bulk
bulk registration
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
Application number
JP2010537680A
Other languages
English (en)
Inventor
チュン キョン ベンジャミン リム
チュン キョン ベンジャミン リム
啓吾 阿相
啓吾 阿相
ンー チャン ワー
チャン ワー ンー
モハナ ダマヤンティ ジャヤタラン
モハナ ダマヤンティ ジャヤタラン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Publication of JPWO2010055630A1 publication Critical patent/JPWO2010055630A1/ja
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W60/00Affiliation to network, e.g. registration; Terminating affiliation with the network, e.g. de-registration
    • H04W60/005Multiple registrations, e.g. multihoming
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/02Processing of mobility data, e.g. registration information at HLR [Home Location Register] or VLR [Visitor Location Register]; Transfer of mobility data, e.g. between HLR, VLR or external networks
    • H04W8/06Registration at serving network Location Register, VLR or user mobility server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W80/00Wireless network protocols or protocol adaptations to wireless operation
    • H04W80/04Network layer protocols, e.g. mobile IP [Internet Protocol]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

移動装置の複数のインタフェースの各アドレスを移動管理装置に登録する場合に、バルク登録メッセージの送信元アドレス以外のアドレスあてのパケット送信の遅延を防止する技術が開示され、その技術によればMN100がIF1000、1001に関連付けられたアドレスのそれぞれを送信元アドレスとして、送信元アドレスを個別に登録するための個別登録BUメッセージS30、S31をHA101に送信し、HA101が個別登録BUメッセージS30、S31を受信した場合に、その送信元アドレスが外部ネットワーク・ドメイン11のイングレス・フィルタリングにより検証されたものとみなして登録するとともに、各アドレスを一括して更新するバルク登録を許可するBAメッセージS32、S33をMN100に送信する。

Description

本発明は、移動装置の複数のインタフェースの各アドレスを、移動装置の移動を管理する移動管理装置に登録するアドレス登録方法及びアドレス登録システムに関する。
また本発明は、上記のアドレス登録システムにおける移動装置及び移動管理装置に関する。
下記の非特許文献1におけるモバイルIPv6(MIPv6)によれば、モバイルノードは、インターネットに対する接続点(point-of-attachment)を変更しても、1つのIPアドレスを永久的に維持することができる。MIPv6におけるこの永久的なIPアドレスとは、モバイルノードのホームネットワーク・ドメイン内のアドレスであって、ホームアドレスとして知られている。また、モバイルノードは、外部ネットワーク・ドメインに接続(attach)すると、その外部ネットワーク・ドメインで使用するIPアドレスを、その外部ネットワーク・ドメインにより広告されるサブネット・プリフィックスからも構成することができる。このように構成されたIPアドレスは気付アドレス(Care-of Address)と呼ばれ、気付アドレスをモバイルノードのあて先とすることもできる。
モバイルノードがその位置に関係なく到達性(reachability)を維持するためには、モバイルノードは、自身の移動管理装置であるホームエージェントにおいて現在の気付アドレスをホームアドレスにバインドする。MIPv6では、ホームエージェントとは、モバイルノードのホームネットワーク・ドメイン内においてモバイルノードの気付アドレスを登録するルータである。この登録は、モバイルノードがバインディング・アップデート(BU)メッセージをホームエージェントに送信することにより実現される。モバイルノードがホームネットワーク・ドメインからアウェイに位置する間は、ホームエージェントは、モバイルノードのホームアドレスあてのパケットをインタセプトして、モバイルノードの気付アドレスあてにトンネル化する。MIPv6では、ホストがモビリティ管理に含まれるので、MIPv6は、ホストベースのモビリティ管理プロトコルとも呼ばれている。
ところで、複数のネットワーク・インタフェースが集積された携帯型の電子周辺機器が導入されると、モバイルノード及びルータは、複数の気付アドレスを1つのホームアドレスに登録することができる(例えば下記の非特許文献2)。非特許文献2に記載されている方法では、1つのホームアドレスに対する複数のバインディングを区別するために、バインディング・ユニーク識別子(BID)番号と呼ばれる識別子番号が使用される。このBIDは、インタフェース又は、モバイルノード及びルータの1つのホームアドレスにバインドされる気付けアドレスに割り当てられる。このため、ホームアドレスがモバイルノード及びルータに関連付けられるのに対し、BIDは、モバイルノードにより同時に登録される複数のバインディングの各々を識別する。モバイルノード及びルータは、BUメッセージを用いてBIDをホームエージェントに通知し、ホームエージェントは、このBIDをバインディング・キャッシュに記録する。
図1は、ホストベースのモビリティ管理が使用されるシステムの想定例を示す。図1において、2つのインタフェース(IF)1000、1001を有するMN100は、元々はホームネットワーク・ドメイン10に位置していて、ホームアドレス(HoA)を用いて通信相手(CN:Correspondent Node)300と通信を行っていたものとする。MN100はホームネットワーク・ドメイン10外に移動して、グローバル通信ドメイン12を跨がって外部ネットワーク・ドメイン11をローミングするときにMIPv6を使用して、CN300と継続して通信を行うものとする。このために、MN100は、外部ネットワーク・ドメイン11をローミングするときに、ホームネットワーク・ドメイン10内のHA101に対し、現在の気付アドレス(CoA)をHoAにバインドする。
MN100は、3Gセルラ・ネットワーク110と通信可能なインタフェース(IF)1000と、ワイヤレス・ローカルエリアネットワーク(WLAN)111と通信可能なIF1001を有し、外部ネットワーク・ドメイン11においてIF1000、1001を同時に接続するものとする。MN100は、非特許文献2を採用して、IF1000について構成したIPアドレス(CoA1とする)と、IF1001について構成したIPアドレス(CoA2とする)をHA101においてHoAにバインドする。
通常では、MN100は、各IPアドレスCoA1、CoA2をそれぞれバインドする個々のBUメッセージ(以下では、個別登録BUメッセージ)をHA101に送信するが、MN100とHA101の間のシグナリングを最適化する方法として、非特許文献2では、複数の個別登録BUメッセージを1つのBUメッセージ(以下では、バルク登録BUメッセージ)に集合することが提案されている。この技術は、バルク登録として知られ、MN100とHA101の間のシグナリング・メッセージ数を減少するという利点を有する。シグナリング・メッセージの数が減少するということは、メッセージのパケットのオーバヘッドが非常に減少することを黙示している。例えばMN100が2つの個別登録BUメッセージの代わりに1つのバルク登録BUメッセージを送信すると、パケットのオーバヘッドを45%セーブすることができる場合がある。パケットのオーバヘッドのセーブについては下記の非特許文献3に詳しく説明されている。
さらに、このシステムが3GPPオペレータにより設けられている場合、ネットワークを悪意のある行動から保護するために、何らかのセキュリティ対策が設けられる。考えられるセキュリティ対策としては、下記の非特許文献4に記載されているようなイングレス・フィルタリングがある。ネットワーク側はイングレス・フィルタリングにより、意図する送信元から特定のパケットが来たことを知得することができる。各ネットワークのゲートウェイ・ルータは、パケットの送信元IPアドレスをチェックして、特定のルータが取り扱うIPアドレスのリストとマッチングすることを確保することができる。ゲートウェイ・ルータは、パケットの送信元IPアドレスが上記のIPアドレスのリスト内に存在しない場合には、そのパケットに悪意があると疑って破棄する。したがって、外部ネットワーク・ドメイン11内のゲートウェイ・ルータがイングレス・フィルタリングによりパケットの送信元IPアドレスをチェックするので、HA101は、MN100が外部ネットワーク・ドメイン11において送信されるパケットが真であると確信することができる。
しかしながら、バルク登録BUメッセージの送信元アドレスには、複数の気付アドレス(CoA)のうちの1つのみが記述され、残りの気付アドレスは、暗号化されたバルク登録BUメッセージ内に伝送されるので、ゲートウェイ・ルータは、上記の残りの気付アドレスが偽か否かをチェックすることができない。例えばIF1000が気付アドレス3G.Addrを使用し、IF1001が気付アドレスWLAN.Addrを使用して通信を行うものとして、MN100がバルク登録BUメッセージをIF1000からHA101に送信する場合、バルク登録BUメッセージの送信元アドレスは気付アドレス3G.Addrであるので、HA101にとっては、気付アドレス3G.Addrは、外部ネットワーク・ドメイン11のイングレス・フィルタリングにより検証(verify)される。
他方、バルク登録BUメッセージ内の気付アドレスWLAN.Addrは、HA101に登録するためにオプションで伝送される。このため、外部ネットワーク・ドメイン11によるイングレス・フィルタリングでは、HA101は、気付アドレスWLAN.Addrが外部ネットワーク・ドメイン11内で使用されるIPアドレスであることを確信できないので、HA101は、MN100との間で確立した信頼関係に頼るしかなく、MN100が気付アドレスWLAN.Addrを使用しているものと仮定するしかない。ところで、MN100に悪意があり、MN100がHA101との信頼関係を乱用して、あるIPアドレスをバルク登録BUメッセージ内に記述した場合を考える。もし、このIPアドレスが他のモバイルノードにより使用されている場合、MN100はHA101に対し、他のモバイルノードのIPアドレスにパケットを転送するよう指示できることになる。この意味は、MN100が犠牲となるモバイルノードに対し、HA101に無意味なパケットを洪水のごとく転送させてリ・ダイレクション攻撃できるということであり、このため、犠牲となるモバイルノードの本来のパケット送受信を輻輳させることができるということである。
このため、3GPPオペレータは、バルク登録による悪意のある攻撃を防止するために、別のセキュリティ対策を採用するかもしれない。また、HA101にとって簡単かつ明白な方法は、バルク登録BUメッセージ内に記述されている各アドレス(送信元アドレスを除く)を検証することである。この場合、HA101は、バルク登録BUメッセージ内に記述されている各アドレスあてに暗号化メッセージを送信して、MN100に復号化メッセージを送り返すよう依頼することができる。HA101がMN100から送り返された復号化メッセージを受信できるということは、HA101にとって、MN100がバルク登録BUメッセージ内に記述されている各アドレスを使用しているものと検証できる。この方法の詳細は、下記の非特許文献5、特許文献1、特許文献2、特許文献3に示されている。
同様に、MN100が複数のインタフェースを有する場合には、HA101が1つのインタフェース経由で暗号化メッセージを送信して、MN100に別のインタフェース経由で復号化メッセージを送り返すよう依頼することにより、検証プロセスを最適化できる。例えばIF1000が気付アドレス3G.Addrを使用し、IF1001が気付アドレスWLAN.Addrを使用して通信を行うものとして、MN100が気付アドレス3G.Addr、WLAN.AddrをHA101に登録するためのバルク登録BUメッセージをIF1000からHA101に送信したものとする。この場合、HA101は、気付アドレスWLAN.Addrを検証するために、IF1000に暗号化メッセージを送信して、MN100にIF1001経由で復号化メッセージを送り返すよう依頼する。このように、ネットワークにより既に検証(=外部ネットワーク・ドメイン11によりイングレス・フィルタリング)されているアドレス(3G.Addr)あてに暗号化メッセージを送信する利点は、未だ検証されていないアドレス(WLAN.Addr)あてにHA101がパケットを送信してリ・ダイレクション(redirection)攻撃を意図的に開始しないようにすることにある。この方法の詳細は、下記の特許文献4に示されている。
以上説明した従来技術では、HA101が、送信元アドレス以外のIPアドレスを検証するためにMN100とメッセージ交換を行うので、MN100が実際のパケット・ルーティング目的で、送信元アドレス以外のIPアドレスを使用する時点が遅れるという問題がある。例えばIF1000が気付アドレス3G.Addrを使用し、IF1001が気付アドレスWLAN.Addrを使用して通信を行うものとして、MN100が気付アドレス3G.Addr、WLAN.AddrをHA101に登録するためのバルク登録BUメッセージをIF1000からHA101に送信し、HA101は、気付アドレスWLAN.Addrを検証するために、IF1000に暗号化メッセージを送信したものとすると、この場合には、HA101は、MN100からの復号化メッセージを受信するまでは、パケットをMN100に転送するために気付アドレスWLAN.Addrを使用すべきでない。これにより、HA101がリ・ダイレクション攻撃を意図的でなく仕掛けないことを保証することができる。しかしながら、以上説明した方法では、HA101がパケットをMN100に転送するために気付アドレスWLAN.Addrを使用するためには、HA101は、3つのメッセージ交換の時間を必要とする。
上記の遅延の問題を解決する明白な方法として、HA101との間に信頼関係が確立されているプロキシ・エンティティがMN100のIPアドレスをHA101に登録する方法がある。例えばホームネットワーク・ドメイン10の3GPPオペレータが外部ネットワーク・ドメイン11の3GPPオペレータと何らかのサービス契約を締結しているかもしれない。このサービス契約では、HA101と、外部ネットワーク・ドメイン11のプロキシ・エンティティ(例えばAAA(Authentication, Authorization and Accounting)サーバ)の間に相互の信頼関係が確立される。HA101は、このような相互の信頼関係を確立しておくことにより、プロキシ・エンティティがMN100のために登録するIPアドレスを信頼する。この方法の詳細は、下記の特許文献5、特許文献6に示されている。また、特許文献7には、プロキシ・エンティティが、HA101あての登録メッセージ内に記述されているMN100のIPアドレスが真であることを登録メッセージのパケットヘッダ内に記述することが記載されている。
しかしながら、以上説明した従来技術では、パケット転送を目的とするIPアドレス使用の遅延を減少するために、IPアドレスを検証する第3のエンティティをシステム内に導入している。さらに、従来技術の方法を用いる前に、ホームネットワーク・ドメイン10と外部ネットワーク・ドメイン11の間で何らかの信頼関係を確立しなければならない。しかしながら、すべての3GPPオペレータがお互いにこのような信頼関係を確立して維持することは困難である。
上記の遅延の問題を解決する明白な他の方法として、MN100が暗号化を用いて、HA101に登録するIPアドレスを生成する方法がある。この方法の詳細は、下記の非特許文献6に示されている。しかしながら、暗号化して生成したIPアドレスでは、MN100は、自身が保持していないIPアドレスをバインドすることができない。また、暗号化して生成したIPアドレスを使用する場合には、MN100は、IPアドレスを得るために複雑なハッシュ関数を動作させる必要があるので、構成がより複雑になり、より高い処理能力を必要とする。加えて、MN100は、IPアドレスを生成するのに使用したパラメータをHA101あてのBUメッセージ内に含ませる必要がある。なお、このパラメータは、IPアドレスが真であることを検証する際にHA101により使用される。また、IPアドレスを生成するのに使用したパラメータをバルク登録BUメッセージ内に付加すると、メッセージサイズが非常に増大する。例えば下記の非特許文献7には、各パラメータ・オプションが255バイトまでに限定され、1つのメッセージが複数のパラメータ・オプションを含むであろうことが記載されている。
P. Danny, T. Daniel C., and B. Richard, "Link discovery and verification procedure using loopback", US Patent No. 6,834,139 B1, December 21, 2004. S. John A., "Methods and apparatus for determining, verifying, and rediscovering network IP addresses", US Patent No. 6,195,706 B1, February 27, 2001. C. Josep, D. Scott N. and V. Theodore B., "Apparatus, system, and method for automatically verifying access to a mulitipathed target at boot time", US Patent Application Publication No. 2007/0143583 A1, June 21, 2007. J. Hirano, B. Lim, C-W. Ng, B. Koh and P-Y. Tan, "Method and apparatus for address verification during multiple address registration", WO Patent Application Publication No. 2008/023845 A1, February 28, 2008. K. Leung and G. Dommety, "Methods and apparatus for providing mobility of a node that does not support mobility", US Patent No. 6,466,964 B1, October 15, 2002. H. Guan, J. Wang and Y. Huang, "Method and System for Authorizing and Charging Host with Multiple Addresses in IPv6 Network", US Patent Application Publication No.2007/0169180 A1, July 19, 2007. P-A. Son, "System and method for carrying trusted network provided access network information in session initiation protocol", US Patent Application Publication No. 2008/0039085 A1, February 14, 2008.
D. Johnson, C. Perkins and J. Arkko, "Mobility Support in IPv6", Internet Engineering Task Force Request For Comments 3775, June 2004. R. Wakikawa, T. Ernst and K. Nagami, "Multiple Care-of Addresses Registration", draft-ietf-monami6-multiplecoa-00.txt, June 12, 2006. M. Kuparinen, H. Mahkonen and T. Kauppinen, "Multiple CoA Performance Analysis", draft-kuparinen-monami6-mcoa-performance-00.txt, April 20, 2006. F. Baker and P. Savola, "Ingress Filtering for Multihomed Networks", Internet Engineering Task Force Request For Comments 3704, March 2004. F. Dupont, and J-M. Combes, "Care-of Address Test for MIPv6 using a State Cookie", draft-dupont-mipv6-rrcookie-00.txt, January 10, 2005. T. Aura, "Cryptographically Generated Addresses (CGA)", Internet Engineering Task Force Request For Comments 3972, March, 2005. J. Arkko, C. Vogt and W. Haddad, "Enhanced Route Optimization for Mobile IPv6", Internet Engineering Task Force Request For Comments 4866, May, 2007.
以上説明したように、モバイルノードの複数のインタフェースに関連付けられた各アドレスを、モバイルノードの移動を管理する移動管理装置に登録する場合に、バルク登録メッセージの送信元アドレス以外のアドレスあてのパケット送信に遅延が発生するという問題点がある。
本発明は上記の問題点に鑑み、移動装置の複数のインタフェースに関連付けられた各アドレスを、移動装置の移動を管理する移動管理装置に登録する場合に、バルク登録メッセージの送信元アドレス以外のアドレスあてのパケット送信の遅延を防止することができるアドレス登録方法、アドレス登録システム、移動装置及び移動管理装置を提供することを目的とする。
本発明は上記目的を達成するために、移動装置の複数のインタフェースに割り当てられた複数のアドレスを前記移動装置の移動管理装置に登録するアドレス登録方法であって、
前記複数のインタフェースに関連付けられたアドレスのそれぞれを送信元アドレスとして、前記送信元アドレスを個別に登録するための複数の個別登録メッセージを前記移動管理装置に送信する第1のステップと、
前記移動管理装置が前記複数の個別登録メッセージを受信した場合に、その送信元アドレスを登録するとともに、前記複数のアドレスを一括して更新するバルク登録を許可する応答メッセージを前記移動装置に送信する第2のステップと、
前記移動装置が前記応答メッセージを受信した後に前記複数のアドレスを一括して更新する場合に、前記複数のインタフェースの1つを送信元として他のインタフェースのアドレスを送信元アドレスフィールド外に含むバルク登録メッセージを前記移動管理装置に送信する第3のステップとを、
有する構成とした。
また本発明は上記目的を達成するために、移動装置の複数のインタフェースに割り当てられた複数のアドレスを前記移動装置の移動管理装置に登録するアドレス登録システムであって、
前記移動装置が前記複数のインタフェースに関連付けられたアドレスのそれぞれを送信元アドレスとして、前記送信元アドレスを個別に登録するための複数の個別登録メッセージを前記移動管理装置に送信する第1の手段と、
前記移動管理装置が前記複数の個別登録メッセージを受信した場合に、その送信元アドレスを登録するとともに、前記複数のアドレスを一括して更新するバルク登録を許可する応答メッセージを前記移動装置に送信する第2の手段と、
前記移動装置が前記応答メッセージを受信した後に前記複数のアドレスを一括して更新する場合に、前記複数のインタフェースの1つを送信元として他のインタフェースのアドレスを送信元アドレスフィールド外に含むバルク登録メッセージを前記移動管理装置に送信する第3の手段とを、
有する構成とした。
また本発明は上記目的を達成するために、移動装置の複数のインタフェースに割り当てられた複数のアドレスを前記移動装置の移動管理装置に登録するアドレス登録システムにおける前記移動装置であって、
前記移動装置が前記複数のインタフェースに関連付けられたアドレスのそれぞれを送信元アドレスとして、前記送信元アドレスを個別に登録するための複数の個別登録メッセージを前記移動管理装置に送信する手段と、
前記複数のアドレスを一括して更新するバルク登録を許可する応答メッセージを前記移動管理装置から受信した後に前記複数のアドレスを一括して更新する場合に、前記複数のインタフェースの1つを送信元として他のインタフェースのアドレスを送信元アドレスフィールド外に含むバルク登録メッセージを前記移動管理装置に送信する手段とを、
有する構成とした。
また本発明は上記目的を達成するために、移動装置の複数のインタフェースに割り当てられた複数のアドレスを前記移動装置の移動管理装置に登録するアドレス登録システムにおける前記移動管理装置であって、
前記移動装置から、前記複数のインタフェースに関連付けられたアドレスのそれぞれを送信元アドレスとして、前記送信元アドレスを個別に登録するための複数の個別登録メッセージを受信した場合に、その送信元アドレスを登録するとともに、前記複数のアドレスを一括して更新するバルク登録を許可する応答メッセージを前記移動装置に送信する手段と、
前記応答メッセージを送信した後に、前記複数のインタフェースの1つを送信元として他のインタフェースのアドレスを送信元アドレスフィールド外に含むバルク登録メッセージを前記移動装置から受信した場合に、前記複数のアドレスを一括して更新する手段とを、
有する構成とした。
この構成により、移動装置の複数のインタフェースに割り当てられた複数のアドレスを最初に移動管理装置に登録する場合には、個別登録メッセージを使用して各アドレスをネットワークのイングレス・フィルタリングなどにより認証し、この登録後には複数のアドレスを一括して更新する場合にバルク登録メッセージを使用するので、バルク登録メッセージの送信元アドレス以外のアドレスあてのパケット送信の遅延を防止することができる。
本発明によれば、移動装置の複数のインタフェースに関連付けられた各アドレスを、移動装置の移動を管理する移動管理装置に登録する場合に、バルク登録メッセージの送信元アドレス以外のアドレスあてのパケット送信の遅延を防止することができる。
本発明のアドレス登録方法が適用されるシステムの想定例を示すブロック図 本発明の第1の実施の形態におけるモバイルノードの構成を機能的に示すブロック図 本発明の第1の実施の形態におけるホームエージェントの構成を機能的に示すブロック図 本発明の第1の実施の形態における通信シーケンスを示す説明図 本発明の第1の実施の形態の通知メッセージのフォーマットを示す説明図 本発明の第1の実施の形態におけるモバイルノードがバルク登録の可否を判断する処理を説明するためのフローチャート 本発明の第1の実施の形態におけるホームエージェントがバルク登録BUメッセージを検証する処理を説明するためのフローチャート 本発明の第2の実施の形態の通信シーケンスを示す説明図 本発明の第2の実施の形態における個別登録BUメッセージのフォーマット を示す説明図 本発明の第2の実施の形態におけるモバイルノードがバルク登録の可否を判断する処理を示すフローチャート 本発明の第2の実施の形態におけるホームエージェントがバルク登録BUメッセージを検証する処理を説明するためのフローチャート 本発明の第3の実施の形態における通信シーケンスを示す説明図 本発明の第3の実施の形態におけるバルク登録BUメッセージのフォーマットを示す説明図 本発明の第3の実施の形態におけるプロキシがバルク登録BUメッセージ内のIPアドレス検証を援助する処理を示すフローチャート 本発明の第6の実施の形態におけるバルク登録BAメッセージのフォーマットを示す説明図 本発明の第6の実施の形態におけるモバイルノードがバルク登録BAメッセージを受信した場合の処理を示すフローチャート 本発明の第8の実施の形態におけるシステムの想定例を示すブロック図 本発明の第8の実施の形態におけるメッセージシーケンスを示す説明図 本発明の第8の実施の形態における個別登録BAメッセージのフォーマットを示す説明図 本発明の第8の実施の形態における個別登録BUメッセージのフォーマットを示す説明図
以下、図面を参照して本発明の実施の形態について説明する。以下に記載されている特定の数字、時間、構造、プロトコル名及び他のパラメータは、本発明を理解するための説明であって、当業者であれば、本発明は、これらに限定されることなく実現可能なことは明らかである。また、ブロック図に示されている名称は、本発明を不必要に不明瞭にしないように用いられている。
図1は、本発明のアドレス登録方法が使用されるシステムの想定例を示す。図1におけるシステムの概略的な構成は、「背景技術」において説明したので、ここでは詳細な説明を省略する。なお、このシステムは、3GPP−LTE(Third Generation Partnership Project Long Term Evolution)プロジェクトが作業を行っているSAE(System Architecture Evolution)と関連付けることができる。このシステムとSAEの関係について説明すると、ホームエージェント(HA)101は、SAEのパケットデータ・ネットワーク・ゲートウェイ(PDN−GW:Packet Data Network Gateway)と関連付けることができ、同様に、モバイルノード(MN)100は、SAEのユーザ機器(UE:User Equipment)と関連付けることができる。なお、ネットワーク111はNon−3GPPネットワークであり、WLANに限らず、WiMAXなどの他のアクセスネットワークであってもよい。
本発明では、2つのインタフェース(IF)1000(3GPPインタフェース)、1001(Non−3GPPインタフェース)を有するMN100は、外部ネットワーク・ドメイン11においてIF1000、1001に割り当てられたIPアドレス(気付アドレス:CoA)をHA101に登録してさらに更新するために、最初は、MN100は、IF1000、1001のそれぞれを送信元アドレスとして、送信元アドレスを個別に登録するための複数の個別登録BUメッセージをHA101に送信する。HA101は、複数の個別登録メッセージを受信した場合に、その送信元アドレスが外部ネットワーク・ドメイン11のイングレス・フィルタリングにより検証されたものとみなして登録するとともに、MN100による今後のBUメッセージの送信を効率化するために、どのようにBUメッセージを送信するべきかを示す情報を含む応答メッセージ(BAメッセージ)をMN100に送信する。その情報には、バルク登録BUメッセージの送信方法を指示する情報(バルクパターン情報)が含まれており、MN100はその情報に従って、以降のBUメッセージを送信する。
<MNの構成>
図2はMN100の構成を機能的に示すブロック図である。なお、図2に示す構成は、MN100以外のノード、例えばモバイル・ルータなどにも適用することができる。MN100は、ネットワーク・インタフェース・モジュール21と、モビリティ・バインディング・エンジン22と、データベース・モジュール23と、バルク登録可否判断エンジン24を有する。ネットワーク・インタフェース・モジュール21は、通信メディアを介して他のノードと通信するために必要なプログラム及びソフトウエアを実行する機能ブロックである。関連する技術分野において用いられている用語を使用すれば、ネットワーク・インタフェース・モジュール21は、レイヤ1(物理層)とレイヤ2(データリンク層)の通信コンポーネント、ファームウェア、ドライバ及び通信プロトコルを表す。当業者であれば、ネットワーク・インタフェース・モジュール21は1以上設けられることは明らかである(例えば図1のIF1000、1001)。
ネットワーク・インタフェース・モジュール21とモビリティ・バインディング・エンジン22は、シグナル/データパスS21を介してトリガ信号及びパケットを相互に伝送することができる。例えばネットワーク・インタフェース・モジュール21は、他のノードから受信したモビリティ・シグナリング・メッセージ(例えばHA101から受信したBAメッセージ)をモビリティ・バインディング・エンジン22に転送して処理させる。同様に、モビリティ・バインディング・エンジン22は、モビリティ・シグナリング・メッセージ(例えばBUメッセージ)をネットワーク・インタフェース・モジュール21に転送して他のノード(例えばHA101)に送信させる。
モビリティ・バインディング・エンジン22はMN100のモビリティを管理する。関連する技術分野において用いられている用語を使用すれば、モビリティ・バインディング・エンジン22はレイヤ3(ネットワーク層)プロトコル、例えばMIPv4又はMIPv6(Mobile Internet Protocol version 4 or 6)の機能を表す。モビリティ・バインディング・エンジン22とデータベース・モジュール23は、シグナル/データパスS22を介してトリガ信号及びパケットを相互に伝送することができる。例えばモビリティ・バインディング・エンジン22はモビリティ管理機能を実行するために、データベース・モジュール23内の情報(例えば気付アドレス)をアップデートしたり、データベース・モジュール23から情報を引き出したりする。
同様に、モビリティ・バインディング・エンジン22とバルク登録可否判断エンジン24は、シグナル/データパスS23を介してトリガ信号及びパケットを相互に伝送することができる。例えばモビリティ・バインディング・エンジン22は、HA101に登録されているMN100のアドレスのバインディングをリフレッシュする前にバルク登録可否判断エンジン24をトリガして、どのアドレスがバルク登録に使用可能かを識別することができる。
データベース・モジュール23は、MN100に必要な情報を蓄積し、この望ましい実施の形態ではバインディング・アップデートリスト230と、バルク登録有効期間231と、アドレス検証情報232を蓄積している。バインディング・アップデートリスト230は、あて先ノード(例えばHA101、CN300)に登録しているMN100の現在の気付アドレスに関する1以上のエントリを含む。加えて、第1の実施の形態では、バルク登録に使用する1又は複数の気付アドレスに対してバルク登録有効期間231を導入している。アドレス検証情報232は、バルク登録可否判断エンジン24が判断を実行するのに関連するデータ(例えばバルク登録に使用される1又は複数の気付アドレス、公開鍵及び秘密鍵)を含む。
本発明では、バルク登録可否判断エンジン24を導入して、特定の気付アドレスがバルク登録に使用可能か否か(HA101によりバルク登録が許可されているか否か)を判断している。例えばバルク登録可否判断エンジン24の目的は、データベース・モジュール23内のバルク登録有効期間231を使用して、特定の気付アドレスがバルク登録可能か否かを判断することにある。
<HAの構成>
図3はHA101の構成を機能的に示すブロック図である。なお、図3に示す構成は、HA101以外のノード、例えばCN300などにも適用することができる。HA101は、ネットワーク・インタフェース・モジュール25と、モビリティ・バインディング・エンジン26と、データベース・モジュール27と、バルク登録検証エンジン28を有する。ネットワーク・インタフェース・モジュール25は、図2と同様に、通信メディアを介して他のノードと通信するために必要なプログラム及びソフトウエアを実行する機能ブロックであるので、詳細な説明を省略する。当業者であれば、ネットワーク・インタフェース・モジュール25は1以上設けられることは明らかである。
また、図2と同様に、ネットワーク・インタフェース・モジュール25とモビリティ・バインディング・エンジン26は、シグナル/データパスS25を介してトリガ信号及びパケットを相互に伝送することができる。ネットワーク・インタフェース・モジュール25は、他のノードから受信したモビリティ・シグナリング・メッセージとして、例えばMN100から受信したBUメッセージ(個別登録BUメッセージ、バルク登録BUメッセージ)をモビリティ・バインディング・エンジン26に転送して処理させる。同様に、モビリティ・バインディング・エンジン26は、モビリティ・シグナリング・メッセージをネットワーク・インタフェース・モジュール21に転送して他のノードに送信させ、例えばBAメッセージ(個別登録BAメッセージ、バルク登録BAメッセージ)をMN100に送信させる。
モビリティ・バインディング・エンジン26はHA101のモビリティを管理する。図2と同様に、関連する技術分野において用いられている用語を使用すれば、モビリティ・バインディング・エンジン26はレイヤ3(ネットワーク層)プロトコル、例えばMIPv4又はMIPv6(Mobile Internet Protocol version 4 or 6)の機能を表す。モビリティ・バインディング・エンジン26とデータベース・モジュール27は、シグナル/データパスS26を介してトリガ信号及びパケットを相互に伝送することができる。例えばモビリティ・バインディング・エンジン26はモビリティ管理機能を実行するために、データベース・モジュール27内の情報(例えば気付アドレス)をアップデートしたり、データベース・モジュール27から情報を引き出したりする。
同様に、モビリティ・バインディング・エンジン26とバルク登録検証エンジン28は、シグナル/データパスS27を介してトリガ信号及びパケットを相互に伝送することができる。例えばモビリティ・バインディング・エンジン27は、HA101に登録されているMN100のアドレスのバインディングをリフレッシュする前にバルク登録検証エンジン28をトリガして、どのアドレスがバルク登録に使用可能か(バルク登録を許可しているか)を識別することができる。
データベース・モジュール27は、HA101に必要な情報を蓄積し、この望ましい実施の形態ではバインディング・キャッシュ270と、バルク登録有効期間271と、アドレス検証情報272を蓄積している。バインディング・キャッシュ270は、あて先ノード(例えばMN100)の現在の気付アドレスに関する1以上のエントリを含む。加えて、第1の実施の形態では、MN100がバルク登録に使用する1又は複数の気付アドレスに対してバルク登録有効期間271を導入している。アドレス検証情報272は、バルク登録検証エンジン28が実行するのに関連するデータ(例えばバルク登録に使用される1又は複数の気付アドレス、公開鍵及び秘密鍵)を含む。本発明では、バルク登録検証エンジン28を導入している。バルク登録検証エンジン28の目的は、バルク登録BUメッセージ内の気付アドレスがバルク登録可能か否かを検証することにある。この検証については、後述する他の実施の形態では、HA101が検証するのをプロキシが援助する。
<第1の実施の形態:HAがMNにバルク登録可否を通知>
図4は第1の実施の形態の通信シーケンスを示す。ここで、MN100は3Gセルラ・インタフェース1000とWLANインタフェース1001を有し、3Gセルラ・インタフェース1000、WLANインタフェース1001はそれぞれ、アドレス3G.Addr、WLAN.Addrを使用している。また、MN100は図1に示すように、ホームネットワーク・ドメイン10外の外部ネットワーク・ドメイン11内をローミングしており、MN100が現在使用している気付アドレスに関してHA101をアップデートするものとする。
このため、MN100は、アドレス3G.Addrを個別にHA101に登録するために3Gセルラ・インタフェース1000から個別登録BUメッセージS30をHA101に送信する。同様に、MN100は、アドレスWLAN.AddrをHA101に登録するためにWLANインタフェース1001から個別登録BUメッセージS31(図では単に、個別BU)をHA101に送信する。HA101では、外部ネットワーク・ドメイン11のイングレス・フィルタリングにより、アドレス3G.Addrが、そのアドレスが割り当てられている送信元から来たと検証することが保証されるので、HA101は個別登録BUメッセージS30をアクセプトして、アドレス3G.Addrが登録されたことを個別に通知(図では、BND−OK)するためのバインディング確認(個別登録BA)メッセージS32(図では単に、個別BA)をMN100に送り返す。
同様に、アドレスWLAN.Addrに関しても、外部ネットワーク・ドメイン11によるイングレス・フィルタリングに基づいて、同様の手順で処理が行われる。ここでは、HA101は、MN100が複数の気付アドレスを登録していることを検出して、バインディング確認(BND−OK)の通知と共に、アドレスWLAN.Addrがバルク登録可能であること(BLK−OK)を記述した個別登録BAメッセージS33をMN100に送り返す。個別登録BAメッセージS33ではまた、HA101は、アドレスWLAN.Addrのバルク登録有効期間をMN100に通知する。
MN100は、次のBUメッセージをHA101に送信しようとするときには、アドレスWLAN.Addrのバルク登録有効期間が未だ満了していないか否かをチェックする。バルク登録有効期間が未だ満了していない場合には、MN100は、アドレス3G.Addr、WLAN.Addrをバルク登録でHA101に登録するためにバルク登録BUメッセージS34a(図では単に、バルクBU)を継続して使用してHA101に送信する。HA101はバルク登録BUメッセージS34に対する応答として、2つの個別登録BAメッセージS34b(3G.Addr宛の個別登録BAメッセージとWLAN.Addr宛の個別登録BAメッセージ)又は1つのバルク登録BAメッセージS34cを送り返す。
MN100は、バルク登録有効期間が満了した場合には(図のS35)、個別登録BUメッセージS36、S37をHA101に送信して、それぞれアドレス3G.Addr、WLAN.AddrをHA101に登録する。個別登録BUメッセージS36、S37により、HA101は再びイングレス・フィルタリングにより送信元アドレスが検証されたとして、MN100が登録しようとしている気付アドレス3G.Addr、WLAN.Addrが真であると検証することができる。
MN100は、アドレス3G.Addr、WLAN.Addrが変更された場合には、そのアドレスはバルク登録BUメッセージ内には含ませない。その理由は、新しいIPアドレスは、HA101によりイングレス・フィルタリングを使用して検証されていないからである。もしMN100が新しいIPアドレスを登録するためにバルク登録を使用した場合、HA101は、新しいIPアドレスを使用する前に、何らかのアドレス検証メカニズムをトリガして新しいIPアドレスを検証する。なお、アドレスの検証をした後に、そのアドレスがバルク登録可能であること(BLK−OK)を記述した個別登録BAメッセージS33をMN100に返してもよい。例えばMN100がWLANインタフェース1001の新しいIPアドレスとしてアドレスWLAN.Addr2を構成した場合、アドレスWLAN.Addr2がHA101により未だ検証されていないので、MN100は、個別登録BUメッセージを使用してアドレスWLAN.Addr2をHA101に登録する。この手法により、HA101はイングレス・フィルタリングを使用して、MN100が本当にアドレスWLAN.Addr2を使用していることを検証できる。他方、MN100が個別登録BUメッセージをHA101に送信する前に、バルク登録を使用してアドレスWLAN.Addr2をHA101に登録しようとした場合、HA101は、アドレスWLAN.Addr2がバインディング・キャッシュ270に存在しないことを検知して、アドレスWLAN.Addr2がバルク登録不可であることを知得し、アドレス検証を実行する。
なお、HA101は、バルク登録が不可であるアドレスに対してアドレス検証処理を実行する代わりに、MN100に対してバルク登録が拒否されたことのみを通知するBAメッセージを送信してもよい。これにより、個別登録BUメッセージでの再送をするか否かをMN100の判断に委ねることができる。MN100は、バルク登録ではなく個別登録BUメッセージを送信するべきであることを認識し、自ら個別登録BUメッセージで再送を開始することができるため、検証処理の実行に伴う負荷をHA101から取り除くことができる。
また、HA101は、バルク登録BUメッセージに含まれるアドレスが、バインディング・キャッシュ270に全く存在しないアドレスである場合に、前述のバルク登録が拒否されたことを通知するBAメッセージを送信し、一方、バインディング・キャッシュ270に存在するが、バルク登録有効期間が満了している場合にアドレスの検証処理を実行するようにしてもよい。これにより、HA101によるアドレス検証を特定の場合に限定することができるため、アドレス検証に伴う負荷を軽減することができる。例えば、個別BUメッセージの再送に伴うMN100の負荷の方が、アドレス検証処理に伴うHA101の負荷よりも大きい場合には、MN100は自身の負荷を軽減するために、最初からバルク登録BUメッセージで送信することを選択するかもしれない。これに伴うHA101の負荷が増大することは、ネットワークオペレータにとって望ましいものではない。そのため、上記のようにHA101がアドレス検証を実行する機会をできるだけ制限することで、このようなMN100の行為を防ぐことができる。
<通知メッセージのフォーマット>
図5は望ましい第1の実施の形態の通知メッセージのフォーマットを示す。この通知メッセージは、パケットヘッダ40とモビリティ・オプション41を有する。パケットヘッダ40はメッセージ送信元と、メッセージタイプとメッセージ長の各フィールドを有し、メッセージ送信元は、IPv4又はIPv6のアドレスであるが、これには限定されない。モビリティ・オプション41は、ステータス・オプション410と通知オプション411を有する。ステータス・オプション410は、このメッセージが個別登録BAメッセージS32、S33の場合、個別登録BUメッセージS30、S31により要求された気付アドレスの登録が完了したか否か(BND−OK/NO)を示す。また、通知オプション411は、このメッセージがアドレスWLAN.Addrの個別登録BAメッセージS33であってバルク登録可(BLK−OK)の場合、バルク登録有効期間を含む。
ステータス・オプション410と通知オプション411について、図4に示す例を参照して詳しく説明すると、MN100がアドレス3G.Addrを個別にHA101に登録するために、3Gセルラ・インタフェース1000から個別登録BUメッセージS30をHA101に送信すると、HA101はMN100に対し、アドレス3G.Addrの登録が完了したこと(BND−OK)を示すステータス・オプション410を含む個別登録BAメッセージS32を送り返す。さらに、MN100がアドレスWLAN.Addrを個別にHA101に登録するために、WLANインタフェース1001から個別登録BUメッセージS31をHA101に送信すると、HA101はMN100に対し、アドレスWLAN.Addrの登録が完了したこと(BND−OK)を記述したステータス・オプション410と、アドレスWLAN.Addrのバルク登録有効期間(例えば7分)を記述した通知オプション411を含む個別登録BAメッセージS33を送り返す。このため、次の7分間は、MN100は、アドレスWLAN.Addrをリフレッシュするために、3Gセルラ・インタフェース1000からバルク登録BUメッセージS34aを送信することができる。
<バルク登録有効期間>
通知オプション411に記述する「バルク登録有効期間」は、外部ネットワーク・ドメイン11によりMN100の通信のために割り当てられているIPアドレスの存続期間(以下、「アドレス存続期間」)に対応しており、バルク登録有効期間が、アドレス存続期間と同等か、それ以下とすることが望ましい。外部ネットワーク・ドメイン11に位置する不図示のDHCP(Dynamic Host Control Protocol)サーバにより、アドレスWLAN.Addrのアドレス存続期間が割り当てられている場合を例にして説明する。DHCPサーバは、アドレスWLAN.AddrをMN100に割り当てるときに、アドレスWLAN.Addrのアドレス存続期間(例えば7分)を指示する。このアドレス存続期間の間は、DHCPサーバは、MN100がアドレスWLAN.Addrを使用しなくても、アドレスWLAN.Addrを他のモバイルノードに割り当てない。
このようにDHCPサーバが動作する理由は、MN100が予期しない接続ロスにあうかもしれないからである。MN100は、アドレスWLAN.Addrの接続ロスの後に再接続すると、CN300との間で継続しているセッションを変更しないためにアドレスWLAN.Addrを要求する。MN100がアドレスWLAN.Addrの接続を失った時点から再接続するまでの間に、もしDHCPサーバがアドレスWLAN.Addrを他のモバイルノードに割り当てると、MN100はアドレスWLAN.Addrを再び使用できなくなる。MN100がアドレスWLAN.Addrを再び使用できなくなるということは、MN100が新しいIPアドレスをCN300に通知する必要があるので、MN100とCN300との間のセッションに対する通信サービスが崩壊することを黙示している。さらに、アドレスWLAN.Addrが他のモバイルノードに割り当てられたことをCN300が知得していないので、他のモバイルノードは、アドレスWLAN.Addrを使用すると、無用なパケットをCN300から受信する。この行為は、MN100が悪意のあるノードである場合にはリ・ダイレクション攻撃とみなされる。
DHCPサーバから割り当て中のアドレス存続期間にバルク登録有効期間が関連付けされていない場合に、悪意のあるMN100がDHCPサーバを利用してリ・ダイレクション攻撃を行う方法について説明する。MN100がDHCPサーバから外部ネットワーク・ドメイン11で使用するアドレスWLAN.Addrを割り当てられた場合、MN100は、アドレスWLAN.Addrを使用してCN300とセッションを開始し、アドレスWLAN.Addrあてのパケット送信を開始して1分間、継続する。次に、MN100は、アドレスWLAN.Addrの接続を意図的に失い、DHCPサーバを欺いてアドレスWLAN.Addrを他のモバイルノードに割り当てさせる。一旦、他のモバイルノード(すなわち犠牲者)がアドレスWLAN.Addrを取得すると、CN300からのパケットは、犠牲となるモバイルノードに到達を開始して無用なパケットを大量に受信させることができる。
このため、この望ましい第1の実施の形態では、HA101からMN100に対して通知するIPアドレスのバルク登録有効期間を、外部ネットワーク・ドメイン11内のDHCPサーバから割り当てるアドレス存続期間と同じ、またはそれ以下としている。さらに、バルク登録有効期間がアドレス存続期間よりも短い場合、アドレス存続期間が終了するタイミングと、バルク登録有効期間が終了するタイミングが一致していることが望ましい。これにより、アドレス存続期間が終了した時点で、バルク登録有効期間がまだ有効である期間が生じてしまうことを防ぐことができる。このようにバルク登録有効期間を導入することにより、前述したようなリ・ダイレクション攻撃を防止することができる。変形例として、バルク登録有効期間は、すべてのエンティティが知得している周知の期間でもよい。さらに他の変形例として、バルク登録有効期間は、ホームネットワーク・ドメイン10と外部ネットワーク・ドメイン11の間で交渉した期間でもよい。
加えて、バルク登録有効期間は、MN100がこのIPアドレスを既に使用していないときに、MN100がこのIPアドレスの使用を誤って申し立てる可能性を低減することができる。例えばMN100がWLANインタフェース1001をシャットダウンしたとき、MN100は悪意で、アドレスWLAN.Addrをリフレッシュするために3Gセルラ・インタフェース1000からバルク登録BUメッセージを送信することにより、アドレスWLAN.Addrの使用を申し立てることができる。しかしながら、DHCPサーバがアドレスWLAN.Addrを、そのアドレス存続期間が満了するまで割り当てないので、MN100は、リ・ダイレクション攻撃を、犠牲となるモバイルノードに仕掛けることができない。また、バルク登録有効期間が満了すると、HA101は、MN100がWLANインタフェース1001から個別登録BUメッセージを送信して、MN100が未だアドレスWLAN.Addrを使用していることをイングレス・フィルタリングで検証することを必要とする。したがって、バルク登録有効期間を導入することにより、MN100が悪意のある行動をとる可能性を低減することができる。
<MNの処理>
図6はMN100がバルク登録の可否を判断する処理を説明するためのフローチャートである。この処理は、BUメッセージをHA101に送信する必要がある場合に、バルク登録可否判断エンジン24がモビリティ・バインディング・エンジン22からトリガ信号を受信したときにスタートし(ステップS50のBU受信トリガ)、データベース・モジュール23から関連情報(例えばバインディング・アップデートリスト230のエントリとバルク登録有効期間231)を引き出す(ステップS51)。次いで、バルク登録有効期間231に基づいてそのIPアドレスのバルク登録有効期間が満了しているか否かをチェックする(ステップS52)。そして、バルク登録有効期間が満了している場合にはステップS53に進んでバインディング・アップデートリスト230におけるそのIPアドレスに対して「バルク登録不可」をマークしてステップS55に進む。他方、バルク登録有効期間が満了していない場合にはステップS54に進んでバインディング・アップデートリスト230におけるそのIPアドレスに対して「バルク登録可」をマークしてステップS55に進む。ステップS55では、バインディング・アップデートリストにおけるすべてのエントリをチェックした場合に、その結果(バルク登録不可/バルク登録可)をリスト化してモビリティ・バインディング・エンジン22に転送する。モビリティ・バインディング・エンジン22はこのリストに基づいて個別登録BUメッセージ又はバルク登録BUメッセージを選択的に生成する。
上記の処理の例を説明する。MN100は既に、アドレス3G.Addr、WLAN.AddrをHA101に登録しているものとする。また、HA101はMN100に対して、アドレスWLAN.Addrが7分間、バルク登録可能な旨を通知している。その4分後、MN100は、HA101における現在のバインディングをリフレッシュする必要があるものとする。MN100は、未だアドレス3G.Addr、WLAN.Addrの両方を使用しており、アドレスWLAN.Addrのバルク登録有効期間が満了していないので、アドレス3G.Addr、WLAN.Addrの両方をリフレッシュするためのバルク登録BUメッセージをHA101に送信する。さらにその4分後、MN100は、HA101における現在のバインディングをリフレッシュする必要があるものとする。MN100は、未だアドレス3G.Addr、WLAN.Addrの両方を使用しているが、アドレスWLAN.Addrのバルク登録有効期間が満了しているので、アドレス3G.Addr、WLAN.Addrを個別にリフレッシュするための個別登録BUメッセージをHA101に送信する。
<HAの処理>
図7はHA101がMN100からのバルク登録BUメッセージを検証する処理を説明するためのフローチャートである。この処理は、モビリティ・バインディング・エンジン26がMN100からバルク登録BUメッセージを受信して、バルク登録検証エンジン28がモビリティ・バインディング・エンジン26からトリガ信号を受信したときにスタートし(ステップS60のバルクBU受信)、データベース・モジュール27から関連情報(すなわちバインディング・キャッシュ270とバルク登録有効期間271)を引き出す(ステップS61)。次いで、取得したバインディング・キャッシュ270とバルク登録有効期間271内に、バルク登録BUメッセージ内に記述されているIPアドレスが有るか否かをチェックし(ステップS62)、ある場合にはステップS63に進み、他方、ない場合にはステップS65に進む。
ステップS63では、バルク登録有効期間271を参照してそのIPアドレスのバルク登録有効期間が満了しているか否かをチェックする。そして、そのIPアドレスのバルク登録有効期間が満了していない場合にはステップS64に進み、他方、満了している場合にはステップS65に進む。ステップS64では、バインディング・キャッシュ270におけるそのIPアドレスに対して、パケット転送前のアドレス検証が不要である旨(アドレス検証不要)をマークしてステップS66に進む。ステップS65では、バインディング・キャッシュ270におけるそのIPアドレスに対して、パケット転送前のアドレス検証が必要である旨(アドレス検証要)をマークしてステップS66に進む。ステップS66では、その結果をリスト化してモビリティ・バインディング・エンジン26に転送する。モビリティ・バインディング・エンジン26はこのリストに基づいてそのバルク登録BUメッセージを処理(アクセプト又は拒絶など)する。
上記の処理の例を説明する。HA101は現在、MN100からのアドレス3G.Addr、WLAN.Addrのアクティブなバインディングを有する。さらに、HA101は、アドレスWLAN.Addrのバルク登録が7分間、許可されていることを了解している。その4分後、HA101は、MN100からアドレスWLAN.Addrをリフレッシュするためのバルク登録BUメッセージを受信したものとする。アドレスWLAN.Addrのバルク登録有効期間が満了していないので、HA101は、そのバインディング・リフレッシュ要求をアクセプトする。さらにその4分後、HA101は、MN100からアドレスWLAN.Addrをリフレッシュするためのバルク登録BUメッセージを受信したものとする。アドレスWLAN.Addrのバルク登録有効期間が満了しているので、HA101は、アドレスWLAN.Addrあてにパケットを送信する前に、アドレスWLAN.Addrを検証する手順に移行する。
また、MN100が新しいアドレスWLAN.Addr2を登録するためのバルク登録BUメッセージを送信した場合、HA101は、アドレスWLAN.Addr2がバインディング・キャッシュ270内に存在しないので、アドレス検証プロセスをトリガする。アドレスWLAN.Addr2のアドレス検証が成功すると、HA101は、アドレスWLAN.Addr2が関連するバインディング・エントリをアップデートする。このように、HA101がアドレスWLAN.Addrのバルク登録有効期間をMN100に通知するので、MN100はアドレスWLAN.Addrに対して、どのタイプのBUメッセージを送信すべきかを知得できる。この意味は、MN100にとって、アドレスWLAN.Addrを使用したパケット転送が遅れることがないということである。
<第2の実施の形態:MNがバルク登録可否をHAに問い合わせる>
第2の実施の形態では、MN100がHA101に対して、バルク登録を希望する特定のIPアドレスがバルク登録可能か否かを問い合わせる。図8は第2の実施の形態の通信シーケンスを示す。まず、第1の実施の形態と同様に、MN100は3Gセルラ・インタフェース1000とWLANインタフェース1001を有し、3Gセルラ・インタフェース1000、WLANインタフェース1001はそれぞれ、アドレス3G.Addr、WLAN.Addrを使用しているものとする。また、MN100は図1に示すように、ホームネットワーク・ドメイン10外をローミングしており、MN100が現在使用している気付アドレスに関してHA101をアップデートするものとする。
このため、MN100は、アドレス3G.Addrを個別にHA101に登録するために3Gセルラ・インタフェース1000から個別登録BUメッセージS70をHA101に送信する。同様に、MN100は、アドレスWLAN.Addrを個別にHA101に登録するためにWLANインタフェース1001から個別登録BUメッセージS71をHA101に送信する。第2の実施の形態では、個別登録BUメッセージS71はさらに、アドレスWLAN.Addrがバルク登録可能か否かを問い合わせるバルク登録許可要求を含む。
HA101では、アドレス3G.Addrが目的の送信元から来たと検証されることがイングレス・フィルタリングにより保証されるので、HA101は個別登録BUメッセージS30をアクセプトして、アドレス3G.Addrを個別にバインディング確認(OK)するための個別登録BAメッセージS32をMN100に送り返す。同様に、アドレスWLAN.Addrに関してもイングレス・フィルタリングされるので、HA101は、アドレスWLAN.Addrを個別にバインディング確認(OK)するとともに、MN100が複数の気付アドレスを登録していることを検出して、アドレスWLAN.Addrのバルク登録を許可する応答(BLK−OK)を記述した個別登録BAメッセージS33をMN100に送り返す。
ここで、第1の実施の形態と異なり、MN100がバルク登録許可を要求する利点として、HA101は、特定のIPアドレスに対してバルク登録を使用しようとしているか否かを推測する必要がない。この意味は、HA101がMN100からバルク登録許可要求を受信しない場合に、MN100がバルク登録を必要としていないものと推測できるということである。
<バルク登録許可要求メッセージ>
図9は、第2の実施の形態においてアドレスWLAN.Addrがバルク登録可能か否かを問い合わせるバルク登録許可要求を含む個別登録BUメッセージS71のフォーマットを示す。メッセージ71は、パケットヘッダ80とモビリティ・オプション81を有する。パケットヘッダ80はメッセージ送信元と、メッセージタイプとメッセージ長の各フィールドを有し、メッセージ送信元は、IPv4又はIPv6のアドレスであるが、これには限定されない。モビリティ・オプション81は、バインディング識別子(BID)オプション810とフラグ811を含む。BIDオプション810は通常、MN100とHA101が自身のバインディング・キャッシュをルックアップするための識別子を示し、関連するバインディング・エントリをより早く発見するのに使用される。第2の実施の形態におけるフラグ811は、モビリティ・オプション81内に1ビットとして設けられて、デフォルト値(=0)のときに、パケットヘッダ80内の送信元アドレスに対してバルク登録許可を要求しないことを示し、他方、フラグ811=1のときには、パケットヘッダ80内の送信元アドレスに対してバルク登録許可を要求することを示す。
当業者であれば、フラグ811は、オプションタイプとして設けることができることは明らかである。但し、本発明はこれにも限定されない。オプションタイプとして設ける場合には、MN100は、複数の個別登録BUメッセージによるパケットオーバヘッドを最適化することを希望するときには、1つの個別登録BUメッセージのみにこのオプションを添付することもできる。このオプションは、複数のIPアドレスに対してバルク登録許可を要求していることを示す。同様に、変形例として、フラグ811は、BIDオプション810内に設けられたフラグであってもよい。また、このオプションは、MN100がHA101に送信する他の形態のメッセージに添付することもできる。
フラグ811の使用例を説明する。MN100は、アドレスWLAN.Addrを個別にHA101に登録するためにWLANインタフェース1001から個別登録BUメッセージS71をHA101に送信する際に、フラグ811を1にセットしてアドレスWLAN.Addrがバルク登録可能か否かをHA101に問い合わせる。HA101では、何らかのチェック機能により、アドレスWLAN.Addrがバルク登録可能か否かを決定する。このチェック機能としては、HA101がHSSサーバやAAAサーバへ問い合わせ、MN100がバルク登録サービスに加入しているか、又はアドレスWLAN.Addrが信頼できる外部の3GPPオペレータから来たものかをチェックする。但し、これには限定されない。チェックが成功すると、HA101は、アドレスWLAN.Addrがバルク登録可能であること(BLK−OK)を示す個別登録BAメッセージをMN100に送り返す。また、変形例として、HA101はMN100に対し、アドレスWLAN.Addrのバルク登録有効期間(例えば7分間)も通知する。
<MNの動作>
図10は、MN100がバルク登録の可否を判断する処理を示す。この処理は、BUメッセージをHA50に送信する必要がある場合に、バルク登録可否判断エンジン24がモビリティ・バインディング・エンジン22からトリガ信号を受信したときにスタートし(ステップS90のBU送信トリガ)、データベース・モジュール23のバインディング・アップデートリスト230から1つのエントリを引き出す(ステップS91)。次いで、取得したエントリにおけるIPアドレスがバルク登録を許可されているか否かをチェックし(ステップS92)、許可されていない場合にはステップS93に進み、他方、許可されている場合にはステップS94に進む。ステップS93では、そのエントリのIPアドレスに対して、個別登録しなければならない旨(個別登録=バルク登録不可)をマークしてステップS95に進む。ステップS94では、そのエントリのIPアドレスに対して、バルク登録できる旨(バルク登録可)をマークしてステップS95に進む。ステップS95では、バインディング・アップデートリスト230におけるすべてのエントリをチェックしたか否かを判定し、チェックしていなければステップS91に戻り、他方、チェック済みであれば結果をリスト化してモビリティ・バインディング・エンジン22に転送する。モビリティ・バインディング・エンジン22はこのリストに基づいて個別登録BUメッセージ又はバルク登録BUメッセージを選択的に生成する。
上記の処理の例を説明する。MN100は既に、アドレス3G.Addr、WLAN.AddrをHA101に登録しているものとする。またMN100は、アドレスWLAN.Addrがバルク登録可能な旨を通知されている。すなわち、MN100におけるアドレス検証情報232では、アドレスWLAN.Addrがバルク登録を許可されている。MN100は、HA101における現在のバインディングをリフレッシュする必要がある場合、アドレスWLAN.Addrのバルク登録が許可されているか否かをチェックする。このチェックは、アドレス検証情報232がアドレスWLAN.Addrを含むか否かをチェックすることにより可能である。含むということは、MN100がアドレスWLAN.Addrをバルク登録BUメッセージに使用できることを意味する。
また、HA101は、MN100がIPアドレスをバルク登録に使用可能か否かをアップデートすることができる。変形例として、HA101は、図9に示すメッセージを使用して、MN100のバルク登録可否ステータスをアップデートすることができる。例えばHA101は、アドレスWLAN.Addrが既にバルク登録に使用できないことを決定すると、アドレスWLAN.AddrのBIDオプション810とフラグ811=0を含むBAメッセージを送信する。HA101はこのBAメッセージにより、MN100に対し、アドレスWLAN.Addrが既にバルク登録に使用できないことを通知する。なお、メッセージの種類はBAメッセージに限らず、Binding Revocationメッセージや、Binding Errorメッセージなどを使用してもよい。
<HAの処理>
図11は、HA101がMN100からのバルク登録BUメッセージを検証する処理を示す。この処理は、MN100からのバルク登録BUメッセージを受信して、バルク登録検証エンジン28がモビリティ・バインディング・エンジン26からトリガ信号を受信したときにスタートし(ステップS100のバルクBU受信トリガ)、まず、バインディング・キャッシュ270から、受信したバルク登録BUメッセージ内のIPアドレスに関連する情報(1つのエントリ)を引き出す(ステップS101)。次いで、取得したエントリにおけるIPアドレスがバルク登録を許可されているか否かをチェックし(ステップS102)、許可されていない場合にはステップS103に進み、そのエントリのIPアドレスに対して、受信したバルク登録BUメッセージ内のIPアドレスが「間違った形式のBUメッセージで送信された旨」をマークする。他方、許可されている場合にはステップS104に進む、受信したバルク登録BUメッセージ内のIPアドレスが「正しい形式のBUメッセージで送信された旨」をマークする。次いで、キャッシュ270において関連エントリをすべてチェックしたか否かを判定し、チェックしていなければステップS101に戻り、他方、チェック済みであれば結果をリスト化してモビリティ・バインディング・エンジン26に転送する。HA101は、「間違った形式のBUメッセージで送信されたIPアドレス」に対してアドレス検証を実行するか、またはバルク登録が許可されていないことを示すレスポンスメッセージを返す。
上記の処理の例を説明する。HA101は現在、MN100のアドレス3G.Addr、WLAN.Addrのアクティブなバインディングを有しているものとする。またHA101は、アドレスWLAN.Addrがバルク登録可能な旨を了解している。HA101はMN100から、アドレスWLAN.Addrをリフレッシュするためのバルク登録BUメッセージを受信すると、データベース・モジュール27により、アドレスWLAN.Addrのバルク登録が許可されているか否かをチェックする。このチェックは、アドレスWLAN.Addrがアドレス検証情報272内に存在するか否かを識別することにより可能である。すなわち、存在する場合には、アドレスWLAN.Addrのバルク登録が許可されていることを示し、存在しない場合には、アドレスWLAN.Addrのバルク登録が許可されていないことを示す。このステータスにより、HA101は、アドレスWLAN.Addrのリフレッシュ要求をアクセプトするか、又は拒絶する。その結果、拒絶する場合には、HA101は、アドレスWLAN.Addrあてにパケットを転送する前にアドレスWLAN.Addrを検証する。
このように、MN100が、バルク登録BUメッセージ内にバルク登録許可要求を付加することにより、HA101がMN100に対して、特定のアドレスに対してバルク登録をするつもりであるか否かを推測する必要性を除去することができる。また、HA101の負荷を減少することができ、特定のアドレスあてのパケット転送が遅延することを防止することができる。
<第3の実施の形態:プロキシがアドレス検証を援助>
第3の実施の形態では、MN100のIPアドレスの検証を助けるためにプロキシ・エンティティ(代理ノード)が用いられている。プロキシ・エンティティは、望ましくはプロキシ・モバイルIP(PMIP)プロトコルを採用しているローカル・モビリティ・アンカー(LMA)である。図12は、プロキシ1100を用いた第3の実施の形態の通信シーケンスを示す。まず、第1、第2の実施の形態の同様に、MN100は3Gセルラ・インタフェース1000とWLANインタフェース1001を有し、3Gセルラ・インタフェース1000、WLANインタフェース1001はそれぞれ、アドレス3G.Addr、WLAN.Addrを使用している。また、MN100は図1に示すように、ホームネットワーク・ドメイン10外をローミングしており、MN100が現在使用している気付アドレスに関してHA101をアップデートするものとする。このため、MN100は、アドレス3G.Addrを個別にHA101に登録するために3Gセルラ・インタフェース1000から個別登録BUメッセージS110をHA110に送信する。同様に、MN100は、アドレスWLAN.Addrを個別にHA101に登録するためにWLANインタフェース1001から個別登録BUメッセージS111をHA101に送信する。
HA101では、アドレス3G.Addrが目的の送信元から来たことが検証されることがイングレス・フィルタリングにより保証されるので、HA101は個別登録BUメッセージS30をアクセプトして、アドレス3G.Addrを個別にバインディング確認(OK)するための個別登録BAメッセージS112をMN100に送り返す。同様に、アドレスWLAN.Addrに関してもイングレス・フィルタリングされるため、個別登録BAメッセージS113をMN100に送り返す。HA101は、MN100が複数の気付アドレスを登録していることを検出するが、第3の実施の形態では、アドレスWLAN.Addrを個別にバインディング確認(OK)するとともに、バルク登録BUメッセージを検証するプロキシ1100が外部ネットワーク・ドメイン11に存在すること(図のproxy)を記述した個別登録BAメッセージS113をMN100に送り返す。MN100がプロキシ1100の配下に位置することをHA101が知得する方法としては、アドレスWLAN.AddrのプリフィックスからMN100が信頼できる外部3GPPオペレータ・ネットワークに属していることを識別する方法がある。但し、これには限定されない。
MN100は、個別登録BAメッセージS113を受信すると、プロキシ1100のIPアドレスをクエリ・メッセージS114で外部ネットワーク・ドメイン11に問い合わせる(図のQuery proxy Addr)。クエリ・メッセージS114により、プロキシ1100は自身のIPアドレスを応答メッセージS115でMN100に送り返す(図のResponse proxy Addr)。第3の実施の形態では、クエリ・メッセージS114と応答メッセージS115は、DNS(domain name service)プロトコルを用いることができるが、本発明はこれには限定されない。MN100は、プロキシ1100のIPアドレスを知得すると、アドレスWLAN.Addrの検証を要求するためのバルク登録BUメッセージS116を3Gセルラ・インタフェース1000からプロキシ1100に送信する。
バルク登録BUメッセージS116はプロキシ1100に対し、メッセージS116内に検証要求するIPアドレス(すなわちアドレスWLAN.Addr)が記述されていることを指示する。プロキシ1100にアドレスWLAN.Addrを通知する理由は、メッセージS116がMN100とHA101との間で暗号化されているからである。この意味は、プロキシ1100がメッセージS116を解読してアドレスWLAN.Addrが真か否かを検証できないということである。そこで、プロキシ1100は一旦、メッセージS116内で検証要求されているIPアドレスがMN100に属するものとみなして、メッセージS116に署名したバルク登録BUメッセージS117をHA101に送信する。この署名は、CGA(cryptographically generated addresses)プロトコルを用いることができるが、本発明はこれには限定されない。CGAプロトコルの場合、プロキシ1100は、バルク登録BUメッセージS117をプロキシ1100の秘密キーで署名し、HA101は、受信したバルク登録BUメッセージS117をプロキシ1100の公開鍵を使用して検証する。
MN100のバルク登録BUメッセージを検証するためにプロキシ1100を使用する利点は、MN100がIPアドレスを暗号化する必要があるという複雑さを除去することにある。MN100が暗号化する必要性をプロキシ1100(例えばサーバ)にシフトすることにより、MN100の処理する負担を軽減することができる。なお、サーバであるプロキシ1100は、MN100より計算能力が高い。
<バルク登録BUメッセージ>
図13は第3の実施の形態におけるバルク登録BUメッセージS116、S117のフォーマットを示す。メッセージS116、S117は、パケットヘッダ120と、モビリティ・オプション121と、モバイルノード識別子122と、検証オプション123を含む。パケットヘッダ80はメッセージ送信元と、メッセージタイプとメッセージ長の各フィールドを有し、メッセージ送信元は、IPv4又はIPv6のアドレスであるが、これには限定されない。モビリティ・オプション121は、バインディング識別子(BID)オプション1210とIPアドレス・オプション1211を含む。BIDオプション1210は通常、MN100とHA101がそれぞれ自身のバインディング・アップデートリスト230、バインディング・キャッシュ270をルックアップするための識別子を示し、関連するバインディング・エントリをより早く発見するのに使用される。
IPアドレス・オプション1211は、パケットヘッダ120内の送信元アドレスに加えて、MN100がHA101に登録を希望する1つの追加のIPアドレスを含む。この追加のIPアドレスは、BIDオプション1210内のBIDに関連している。バルク登録BUメッセージS116、S117は、1を超えるIPアドレス・オプション1211を含んでもよい。これは、バルク登録BUメッセージS116、S117が複数のBIDオプション1210と複数のIPアドレス・オプション1211を含むことを意味する。モバイルノード識別子122には、このバルク登録BUメッセージS116、S117を送信したMN100の識別子を記述する。モバイルノード識別子122により、プロキシ1100は、バルク登録BUメッセージS116を検証するときに、追加のIPアドレスがMN100に属するかを知得することができる。
検証オプション123は、IPアドレス・オプション1230と、パラメータ・オプション1231と、署名オプション1232を含む。IPアドレス・オプション1230には、MN100がプロキシ1100に検証させる追加のIPアドレスを記述する。IPアドレス・オプション1230におけるIPアドレスとIPアドレス・オプション1211におけるIPアドレスは、望ましくは同じである。パラメータ・オプション1231は、HA101に対して、プロキシ1100がバルク登録BUメッセージS116を検証するために使用するセキュリティ・パラメータを指示する。望ましくは、パラメータ・オプション1231内の情報は、プロキシ1100の公開鍵か、又はプロキシ1100がCGAで使用する偶数のパラメータであるが、本発明ではこれには限定されない。
最後に、署名オプション1232は、一般的にはプロキシ1100の署名を含む。この署名はHA101に対し、バルク登録BUメッセージS117内のIPアドレスが真であることをプロキシ1100が検証したことを示す。この署名は望ましくは、バルク登録BUメッセージS117の全体とプロキシ1100の秘密鍵の連結である。オプションとして、パケットサイズを低減するために、この署名は、バルク登録BUメッセージS117の全体とプロキシ1100の秘密鍵の連結の一部でもよい。
プロキシ1100がバルク登録BUメッセージS116に署名する理由は、悪意のあるノードがリプレイ・アタックを仕掛けることを防止するためである。リプレイ・アタックとは、悪意のあるノードがバルク登録BUメッセージS116、S117を盗み見て改変し、後でHA101に送信することを言う。例えばプロキシ1100がアドレスWLAN.Addr用のバルク登録BUメッセージS116を検証する場合、プロキシ1100は、検証オプション123のみにアドレスWLAN.Addrを記述して署名する。HA101は、この署名が正しいと確認すると、アドレスWLAN.Addrをアクセプトしてバインディング・キャッシュ230に登録する。
さて、悪意のあるノードがバルク登録BUメッセージS117を盗み見て、IPアドレス・オプション1211内のIPアドレスを他のIPアドレスに改変し、この改変したバルク登録BUメッセージS117をHA101に送信したとする。上記のように署名が正しいと確認したHA101は、検証オプション123内のアドレスWLAN.AddrがIPアドレス・オプション1211内のIPアドレスと異なることに気付く。このため、HA101は、送信元が悪意のあるノードであるとして、バインディング・キャッシュ230からアドレスWLAN.Addrを削除する。このような動作により、悪意のあるノードがアドレスWLAN.Addrを悪用して通信サービスが崩壊することを防止することができる。悪意のある行為を防止するためには、プロキシ1100は、バルク登録BUメッセージS117の全体に署名すべきである。この方法により、悪意のあるノードがバルク登録BUメッセージS117を改変することを困難にすることができる。
<プロキシの処理>
図14は、プロキシ1100がバルク登録BUメッセージS116内のIPアドレス検証を援助する処理を示す。この処理は、バルク登録BUメッセージS116を受信したときにスタートし(ステップS130)、メッセージS116の検証オプション123内から1つのIPアドレスを引き出して(ステップS131)、そのIPアドレスをMN100が実際に使用しているか否か、すなわちそのIPアドレスがMN100に属するか否かをチェックする(ステップS132)。このチェック方法の1つとして、プロキシ1100のデータベースにおいてそのIPアドレスがバルク登録BUメッセージS116内のモバイルノード識別子に対応しているかを識別する。そのIPアドレスがMN100に属しないと判定した場合には、バルク登録BUメッセージS116を拒絶して検証オプション123内の他のIPアドレスをチェックせず(ステップS133)、次いでアイドルモードに戻る(ステップS136)。
他方、ステップS132においてそのIPアドレスがMN100に属すると判定した場合には、検証オプション123内に残りのIPアドレスが存在するか否かをチェックし(ステップS134)、存在する場合にはステップS131に戻る。ステップS134において検証オプション123内に残りのIPアドレスが存在しない場合には、バルク登録BUメッセージS116の全体に署名してHA101に転送し(ステップS135)、次いでアイドルモードに戻る(ステップS136)。
プロキシ1100の処理をさらに詳しく説明する。プロキシ1100は、バルク登録BUメッセージS116を受信すると、モバイルノード識別子122に基づいてバルク登録BUメッセージS116がMN100から来たことを確認する。また、検証オプション123内のIPアドレス・オプション1230により、プロキシ1100は、MN100がアドレスWLAN.AddrをHA101に登録したいことを知得する。プロキシ1100は自身のデータベースをチェックして、アドレスWLAN.Addrが外部ネットワーク・ドメイン11でMN100に割り当てられたものかを識別する。望ましくは、プロキシ1100は、DCHPサーバに問い合わせて、アドレスWLAN.AddrがMN100に割り当てられたものかを検証する。DCHPサーバからの応答が肯定である場合、プロキシ1100は、署名を署名オプション1232に添付し、バルク登録BUメッセージS117をMN100のHA101に転送する。逆に、DCHPサーバからの応答が否定である場合、プロキシ1100は、バルク登録BUメッセージS116を拒絶する。その結果、プロキシ1100は、バルク登録BUメッセージS116の送信元が悪意のあるノードの疑いがあるとして今後のチェックのためにマークすることができる。
プロキシ1100を使用すると、HA101がMN100のIPアドレスを検証するために通信するエンティティの数を減少することができる。例えばHA101は、グローバル通信ドメイン12配下の数千のモバイルノードではなく、グローバル通信ドメイン12内の選択されたアンカーポイントと通信するのみでよい。また、通信チャネルが減少すると、MN100がパケット転送のために気付アドレスを使用するのが遅れることを防止できる。
<第4の実施の形態:MN/HAがバルク登録可否を外部ネットワークに応じて決定>
第4の実施の形態では、例えばMN100は、バルク登録を行うか否かの判断を、外部ネットワーク・ドメイン11において初期起動したときに、以前にHA101により通知されていた情報に基づいて行う。望ましくは、その情報は、どのアクセスネットワークのIPアドレスがバルク登録可能か(バルク登録として使用されているか)の情報である。但し、本発明はこれには限定されない。例えばHA101は、MN100が接続(connect)しているアクセスネットワークに基づいてMN100のバルク登録動作をアップデートしている。HA101は、MN100が全世界的に相互に動作可能なマイクロ波アクセス・ネットワーク(WiMAXネットワーク)に接続(connect)していることを了解すると、MN100のどのWiMAXアドレスもバルク登録可能であること(BLK−OK)を通知する。望ましくは、MN100が接続(connect)しているどのアクセスネットワークがバルク登録可能かをHA101がいかに知得するかは、ホームネットワーク・ドメイン10と外部ネットワーク・ドメイン11との間の交渉次第である。MN100は、WiMAXアドレスについてHA101をアップデートしたいときにはいつでも、WiMAXアドレスをバルク登録するためのバルク登録BUメッセージをHA101に送信する。
変形例として、どのタイプのIPアドレスがバルク登録可能かを示す情報を予めMN100に設定しておく。この手法によれば、この情報をMN100とHA101との間で通信する必要性を除去することができる。MN100は、どのタイプのアクセスネットワークがHA101にとって信頼できるかを知得していると、HA101に送信すべきBUメッセージのタイプがわかる、したがって、MN100がパケット転送のために気付アドレスを使用するのが遅れることを防止できる。
<第5の実施の形態:MNが送信元アドレスを切り換えてバルク登録有効期間を延長>
第5の実施の形態では、MN100がバルク登録BUメッセージを使用して個々のアドレスのバルク登録有効期間を延長する。この手法を実現するために、MN100は、HA101におけるIPアドレスを更新するときに、インタフェース1000、1001を交互に使用する。この手法により、バルク登録BUメッセージの送信元アドレスで送信されるIPアドレスが交互にイングレス・フィルタリングにより検証される。
以下に具体例を説明する。MN100がアドレス3G.Addr、WLAN.Addrの両方をHA101に登録する場合、WLANアクセスネットワーク111が不安定であるので、HA101は、アドレスWLAN.Addrのバルク登録有効期間として5分間を割り当てる。また、3Gセルラ・アクセスネットワーク11が安定しているので、HA101は、アドレス3G.Addrのバルク登録有効期間として7分間を割り当てる。5分後、MN100は、HA101におけるアドレス3G.Addr、WLAN.Addrの登録をリフレッシュする必要がある場合、アドレス3G.Addrのバルク登録有効期間が未だアクティブであるので、送信元アドレスをアドレスWLAN.Addrとし、追加のIPアドレスをアドレス3G.Addrとしたバルク登録BUメッセージを送信する。この手法により、イングレス・フィルタリングによりアドレスWLAN.Addrが検証されるのみならず、アドレス3G.Addr用の個別登録BUメッセージを送信する必要性を除去することができる。イングレス・フィルタリングによりアドレスWLAN.Addrが検証されると、HA101は、アドレスWLAN.Addrのバルク登録有効期間を延長する。
変形例として、MN100のすべてのIPアドレスのバルク登録有効期間を同じとする。このため、送信元アドレスを順番に入れ換えるか、2つのIPアドレスをペアリングし(一方を送信元アドレスとする)、バルク登録BUメッセージを使用して各IPアドレスのバルク登録有効期間を延長することができる。
MN100がHA101におけるIPアドレスの登録を更新するときに、インタフェース1000、1001を交互に使用できるということは、特定のIPアドレスのバルク登録有効期間を、HA101と素早く交渉して延長することができるということである。このHA101との効率的な交渉により、MN100がパケット転送のための気付アドレス使用が遅れることを防止できる。
<第6の実施の形態:バルクBA>
第6の実施の形態では、図4において、HA101は個別登録BUメッセージS30、S31、バルク登録BUメッセージ34aの応答として、MN100に複数の個別登録BAメッセージS32、S33、S34bを送り返す代わりに、1つのBAメッセージ(以下、バルク登録BAメッセージ34c)を送り返す。図15はバルク登録BAメッセージ34cのフォーマットを示す。バルク登録BAメッセージ34cは、パケットヘッダ140と、フラグ141と、モビリティ・オプション142を含む。パケットヘッダ140は、メッセージ送信元と、メッセージタイプとメッセージ長の各フィールドを有し、メッセージ送信元は、IPv4又はIPv6のアドレスであるが、これには限定されない。フラグ141は、HA101がMN100に対し、このバルク登録BAメッセージ34cが各IPアドレスに関するバルク登録についての複数の異なる通知を含むか否かを通知する。フラグ141は1ビットでよく、デフォルト値(=0)は、このバルク登録BAメッセージ34c内のすべての通知が同じであることを示す。他方、フラグ141=1の場合、このバルク登録BAメッセージ34c内の通知が異なることを示す。この場合、MN100は、モビリティ・オプション142内の個々の通知を検査する必要がある。
モビリティ・オプション142は、BIDオプション1420と、シーケンス番号オプション1421と、ステータス・オプション1422と、通知オプション1423を含む。BIDオプション1420は、MN100がHA101に登録するIPアドレスに割り当てられたBIDを示す。望ましくは、BIDオプション1420に記述されているBIDは、MN100がHA101に送信したバルク登録BUメッセージ34aに記述されているBIDである。シーケンス番号オプション1421は典型的には、HA101が受信したバルク登録BUメッセージ34aで伝送されたシーケンス番号を示す。シーケンス番号により、MN100は、MN100が送信したバルク登録BUメッセージ34aにこのバルク登録BAメッセージ34cが対応しているかを識別することができる。
ステータス・オプション1422はMN100に対して、特定のIPアドレスの登録がHA101において成功したか否かを通知する。ステータス・オプション1422はさらに、典型的にはMN100に対してHA101が登録を拒否した理由も通知する。最後の通知オプション1423は、特定のIPアドレスがバルク登録可能か否かのHA101の意図を示す。望ましくは、通知オプション1423はさらに、バルク登録有効期間を示す。このバルク登録BAメッセージは、1を超えるモビリティ・オプション142を含むことができる。すなわち、バルク登録BAメッセージ34cは、個別登録BUメッセージS30、S31、バルク登録BUメッセージ34aで登録が要求された個々のアドレスそれぞれに対応する複数のBIDオプション1420と、複数のシーケンス番号オプション1421と、複数のステータス・オプション1422と、複数の通知オプション1423を含むことができる。
変形例として、このバルク登録BAメッセージ34cは、同じシーケンス番号を含んでもよい。例えば、もしMN100が1つのバルク登録BUメッセージ34aをHA101に送信した場合、1つのシーケンス番号によりこのバルク登録BUメッセージ34aを識別する。この場合、バルク登録BAメッセージ34cのパケットサイズを最適化するために、HA101は、すべての登録されたIPアドレスに対して1つのシーケンス番号オプション1421を使用することができる。
他の変形例として、バルク登録BAメッセージ34cは、同じステータスを含んでもよい。例えばHA101は、もしバルク登録BUメッセージ34a内のすべてのIPアドレス登録をアクセプトする場合、1つのステータス・オプション1422を使用してすべてのIPアドレスのステータスを示すことができる。さらに他の変形例として、このバルクBAメッセージは、同じ通知を含んでもよい。例えばHA101は、もしすべての登録されたIPアドレスに対して同じバルク登録有効期間を割り当てる場合、バルク登録BAメッセージ34cのパケットサイズを最適化するために、1つの通知オプション1423を使用して共通のバルク登録有効期間を示すことができる。
さらには、登録されたすべてのIPアドレスのそれぞれに対するモビリティ・オプション142を含めるのではなく、1つのモビリティ・オプション142を含めて、すべてのIPアドレスが登録されたことを示してもよい。この場合、バルク登録BAメッセージ34cに含まれている1つのモビリティ・オプション142の中のBIDオプション1420の値や、ステータス・オプション1422の値として、すべてのIPアドレスが登録されたことを示す特別な値を指定することが望ましい。
図16は、MN100がバルク登録BAメッセージ34cを受信した場合の処理を示す。この処理は、バルク登録BAメッセージ34cをHA101から受信した場合にスタートし(ステップS150)、受信したメッセージ34cから1つのモビリティ・オプション142を引き出す(ステップS151)。1つのモビリティ・オプション142を引き出すと、モビリティ・オプション142内のステータス・オプション1422に基づいて1つのIPアドレス登録要求がアクセプトされたか否かをチェックする(ステップS152)。アクセプトされなかった場合にはそのIPアドレスに対して「拒絶」をマークし(ステップS153)、次いでステップS157に進む。
ステップS152においてアクセプトされた場合には、そのIPアドレスがバルク登録されたか否かをチェックする(ステップS154)。バルク登録されなかった場合には、そのIPアドレスに対して「アクセプト」と「バルク登録不可」をマークし(ステップS155)、次いでステップS157に進む。ステップS154においてバルク登録された場合には、そのIPアドレスに対して「アクセプト」と「バルク登録可」をマークし(ステップS156)、次いでステップS157に進む。ステップS157では、受信したメッセージ34c内に次のモビリティ・オプション142があるか否かをチェックし、もしあればステップS151に戻り、他方、最後のモビリティ・オプション142であれば、バインディング・アップデートリスト230をアップデートするために、処理結果をリスト化してモビリティ・バインディング・エンジン22に転送する(ステップS158)。
具体例を説明する。MN100は現在、HA101におけるアドレス3G.Addr、WLAN.Addrをリフレッシュするためにバルク登録を使用しているものとする。MN100は、許可されているアドレス3G.Addr、WLAN.Addrのバルク登録有効期間に基づいて、アドレス3G.Addr、WLAN.Addrのバルク登録有効期間がまもなく満了することを知得している。このことは、MN100がアドレス3G.Addr、WLAN.Addrを個別にリフレッシュするために個別登録BUメッセージを送信する必要があることを黙示している。HA101は、これらの個別登録BUメッセージを受信すると、アドレス3G.Addr、WLAN.Addrそれぞれの新しいバルク登録有効期間をMN100に通知する必要がある。そこで、HA101は、個別登録BAメッセージ34bを送信する代わりに、バルク登録BAメッセージ34cを使用してアドレス3G.Addr、WLAN.Addrの各バルク登録有効期間をMN100に通知する。この手法により、HA101がMN100に送信しなければならないメッセージ数を最適化することができる。
バルク登録BAメッセージ34cを使用することにより、HA101がMN100に対して、MN100のIPアドレスのバルク登録サポートのステータスを通知する方法を効率化することができる。したがって、MN100がパケット転送のために気付アドレスを使用するのが遅れることを防止できる。
<第7の実施の形態:HAがバルクBU送信IFを指示>
第7の実施の形態では、HA101がMN100に対し、IF1000、1001のうち、バルク登録BUメッセージ34aを送信すべきIFを指示する。図8を参照して第7の実施の形態について説明する。HA101からMN100に送信されるアドレスWLAN.Addrの個別登録BAメッセージS73は、バルク登録BUメッセージ34aを送信すべきIFを指示する。例えば、HA101は、MN100がIF1001(アドレスWLAN.Addr)からバルク登録BUメッセージ34aを送信することを希望するものと仮定する。この場合、MN100がHA101におけるアドレス3G.Addr、WLAN.Addrの両方の登録を更新するためのバルク登録BUメッセージ34aを送信する必要があるときには、MN100は、HA101により指示されたIF1001(アドレスWLAN.Addr)からバルク登録BUメッセージ34aを送信する。つまりこの場合、3G.Addrがバルク登録されるアドレスとなる。なお、バルク登録BUメッセージを送信するべきIFを指示する代わりに、バルク登録を許可するアドレスを指示してもよい。例えば、HA101は、MN100のアドレス3G.Addrを、アドレスWLAN.Addrの登録BUメッセージに挿入してバルク登録メッセージとして送信してもよいと判断した場合には、個別登録BAメッセージS72に、バルク登録を指示する情報が含まれる。また、HA101は、MN100のアドレスWLAN.Addrを、アドレス3G.Addrの登録BUメッセージに挿入してバルク登録メッセージとして送信してもよいと判断した場合には、個別登録BAメッセージS73に、バルク登録を指示する情報が含まれる。
<第8の実施の形態:UEのIF1000がホームネットワーク・ドメイン10に直接接続>
第8の実施の形態では、図17に示すように、UE100のIF1000が3Gセルラ110を介してUE100のホームネットワーク・ドメイン10に直接接続し、IF1001がWLAN111(又はWiMAX、HRPD:High Rate Packet Data)などのNon−3GPPネットワーク(Non−3GPP Network)を介してホームネットワーク・ドメイン10へ接続している場合に、HA101は、WLAN111から取得したIPアドレスをCoAとして通知・登録するための個別登録BUメッセージ送信するべきIFを指示する。本発明の第7の実施の形態との違いは、IF1000(3Gインタフェース、3G−IF)が接続しているネットワークが外部ネットワーク・ドメインではなく、ホームネットワーク・ドメイン10であるため、HA101によって指定されたIFから送信されるメッセージが、バルク登録BUメッセージではなく、IF1001(WLANインタフェース、WLAN−IF)に関するCoAを含む個別登録BUメッセージである点である。つまり、HA101はBUメッセージを送信するIFを指定するが、それを受けたUE100が送信するBUメッセージは、バルク登録BUメッセージに限らず、図17に示す接続形態の場合には、個別登録BUメッセージを指定されたIFから送信する。
本実施の形態で述べるように、UE100が、バルクBUメッセージだけでなく、個別登録BUメッセージをIF1000から送信することができれば、3Gセルラ110が提供する様々な利点(安定した帯域(QoS)や接続状態、強固なセキュリティ、HA101への最短パス)を使用してBUメッセージを送信することができるという利点をUE100及びホームネットワーク・ドメイン10の双方で得られる。
通常3Gセルラ110への接続は、PMIPやGTP(GPRS Tunneling Protocol)などのネットワークベースの移動制御プロトコルによって管理されるため、UE100は、IF1000に割り当てられたアドレスを個別登録BUメッセージで通知する必要はなく、割り当てられたアドレスをホームアドレス(HoA)として直接使用することができる。一方、Non−3GPPネットワークへの接続ではUE100はMIPv6(又はMIPv4)を使用するため、WLAN111から割り当てられたアドレスをHoAに対するCoAとしてHA101へ登録する。
図18は、本実施の形態におけるメッセージシーケンスを表したものである。UE100は、Non−3GPPネットワークへ接続しているIF1001のIPアドレスをHA101へ登録するために、個別登録BUメッセージを送信する。UE100からの個別登録BUメッセージを受けたHA101は、UE100が登録済みのバインディング・キャッシュを更新するための個別登録BUメッセージを送信する際に、IF1000を使用することを許可するか否かを判断する。この判断は、例えば、通知されたCoAを割り当てたネットワーク(WLAN111)が、ホームネットワーク・ドメイン10にとって信頼できるネットワークであるか否かを確認することによって行うことができるが、これに限定されない。また、Non−3GPPネットワークが、HA101が属するオペレータによって管理されているネットワークである場合に、IF1000の使用を許可すると判断してもよい。さらにまた、IF1001から送信されたBUメッセージを一定回数受信した場合に、それ以降のBUメッセージをIF1000から送信するよう指示してもよい。さらにまた、UEが同一のNon−3GPPネットワークに一定時間以上接続している場合に、それ以降のBUメッセージをIF1000から送信するよう指示してもよい。
HA101が、IF1000を使用した個別登録BUメッセージの送信を許可する場合は、UE100に対し、IF1001の使用が許可されたこと(IF1000を使用すること)を示すステータスを含む個別登録BAメッセージをレスポンスとして返す。なお、HA101は、IF1000の使用が許可されている期間を示す3G−IF有効期間を通知してもよい。
個別登録BAメッセージを受けたUE100は、IF1001のIPアドレスに関するバインディング・アップデートリストエントリの中に、IF1000の使用が可能であることを示す情報を格納する。そして、バインディング・キャッシュを更新するために個別登録BUメッセージを送信する際に、バインディング・アップデートリストエントリを参照し、IF1000の使用が可能であるか否かを確認する。確認の結果、可能であった場合には、IF1001のIPアドレスを登録するための個別登録BUメッセージを、IF1000を使用して送信する。なお、3G−IF有効期間が通知されている場合は、3G−IF有効期間が経過した時点で、バインディング・アップデートリストエントリ内のIF1000使用可能情報は無効化される。無効化された後に個別登録BUメッセージを送信する場合には、IF1001が使用される。
図19は、個別登録BAメッセージのフォーマット例である。モビリティ・オプションには、登録対象のCoAに対応するBIDを含むBIDオプションと、CoAの登録結果を示すステータスと、次回以降の送信にIF1000を使用することが可能であるか否か(3G−IF使用許可情報)を示す通知オプションが含まれている。3G−IF使用許可情報は、ステータスがOKの場合に許可または不許可が示される。なお、ステータス、及び3G−IF使用許可情報は、BIDオプションの中に含まれていてもよいし、BAヘッダ(不図示)の中に含まれていてもよい。
図20は、IF1000を使用して送信する場合の個別登録BUメッセージのフォーマット例である。パケットヘッダの送信元アドレスにはIF1000に割り当てられているIPアドレス(ホームアドレス)が設定され、宛先アドレスにはHA101のアドレスが設定される。また、パケットヘッダには、BUヘッダも含まれている。さらに、モビリティ・オプションとして、ホームアドレスを含むHoAオプションや、登録対象のCoA及び対応するBIDが含まれる。また、個別登録BUメッセージが3G−IFを使用して送信されたメッセージであり、通常の個別登録BUメッセージと区別ができるように、3G−IF使用情報が含まれる。3G−IF使用情報は、BIDオプションの中にフラグ(3G−IF使用許可フラグ)として含まれていてもよい。またCoAもBIDオプションに含まれていてもよい。なお、IF1000を使用して送信する場合の個別登録BUメッセージとしては、IF1001から送信する場合の個別登録BUメッセージをIF1000のアドレスでカプセル化して送信する方法を用いてもよい。また、カプセル化の代わりに、CoAを含むルーティングヘッダを付加して送信してもよい。
図2を用いてUE100の構成を説明すると、バルク登録可否判断エンジン24は、本実施の形態では、3G−IF使用可否判断エンジンとして機能する。つまり、モビリティ・バインディング・エンジン22によって、バインディング・キャッシュの更新がトリガされると、3G−IF使用可否判断エンジンは、IF1001のIPアドレスを登録する際に、データベース・モジュール23内のバインディング・アップデートリスト230を参照し、IF1000を使用することが許可されているか否か、または、IF1000を使用することが指定されているか否かを確認する。確認の結果、IF1000の使用が許可されている場合には、図20に示されている個別登録BUメッセージを生成し、IF1001を用いて送信する。
図3を用いてHA101の構成を説明する。第7の実施の形態において、バルク登録検証エンジン28が許可するバルク登録は、UE100はIF1001のCoAをIF1000から送信するBUメッセージに含めてもよいということを意味する。したがって、本実施の形態のHA101は、第7の実施の形態におけるバルク登録の可否判断と同様の判断を行うと定義することができる。一方、本実施の形態のHA101は、3G−IFを使用して個別登録BUメッセージの送信の可否を判断すると定義することもできる。この場合、バルク登録検証エンジン28は、3G−IF使用検証エンジンとして機能する。つまり、モビリティ・バインディング・エンジン26によって受信された個別登録BUメッセージについて、UE100がIF1000を使用して送信することを許可するか否かを判断する。許可すると判断した場合には、バインディング・キャッシュ270に、許可を示す情報を格納するとともに、許可を示すステータスを含む個別登録BAメッセージを返す。
本発明の第8の実施の形態によって、UE100は、Non−3GPPネットワークに接続しているIFに割り当てられたIPアドレスを登録するBUメッセージを、3Gネットワークに接続するIFから送信することができることを知得することができ、不安定なNon−3GPPネットワークではなく、安定した信頼性のある3GPPネットワークを使用してBUメッセージを送信することが可能となる。
以上、本発明の望ましい実施の形態について説明したが、当業者であれば、本発明の範囲を逸脱しない範囲で、種々の変形が可能であることは明らかである。例えば、MN100については、当業者であれば、ネットワーク・モビリティ(NEMO)プロトコルを採用したモバイル・ルータにも適用することができることは明らかである。この場合、モバイル・ルータは、バルク登録BUメッセージ34aを使用してプリフィックスをHA101に登録する。このことは、プリフィックスの範囲内で構成されたIPアドレスがモバイル・ルータに属することを目視している。
また、本発明は、プロキシ・モバイルIP(PMIP)プロトコルを採用したモバイル・アクセス・ゲートウェイ(MAG)にも適用することができる。ここで、MAGは、前述した実施の形態におけるプロキシ1100であって、ローカル・モビリティ・アンカー(LMA)がIPアドレスを検証するのを助ける。このため、MAGは、バルク登録BUメッセージ34aを使用して多くのモバイル装置(モバイルノードやモバイル・ルータ)のIPアドレスをLMAに登録する。
加えて、本発明は、MIPv4(mobile IP version 4)を採用した外部エージェントにも適用することができる。この場合、外部エージェントはバルク登録BUメッセージ34aを使用して、MN100が複数のIPアドレスをHA101に登録するのを助ける。さらに、外部エージェントは、前述した実施の形態におけるプロキシ1100であって、HA101がIPアドレスを検証するのを助けることも可能である。
最後に、上記の実施の形態では、HA101がMN100からのBUメッセージS30、S31、S34a等の受信側であって、MN100へのBAメッセージS32、S33、S34b、S34c等の送信側である場合について説明したが、当業者であれば、HA101は、他のエンティティ(例えば通信相手のノード、通信相手のルータ、LMA)に置き換えても、MN100からのBUメッセージS30、S31、S34a等を受信してMN100へのBAメッセージS32、S33、S34b、S34c等を送信することも可能である。
なお、上記各実施の形態の説明に用いた各機能ブロックは、典型的には集積回路であるLSIとして実現される。これらは個別に1チップ化されてもよいし、一部又はすべてを含むように1チップ化されてもよい。ここでは、LSIとしたが、集積度の違いにより、IC、システムLSI、スーパーLSI、ウルトラLSIと呼称されることもある。また、集積回路化の手法はLSIに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブ ル・プロセッサーを利用してもよい。さらには、半導体技術の進歩又は派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。例えば、バイオ技術の適用などが可能性としてあり得る。
本発明によれば、特許請求の範囲に記載した発明の他に、以下のような発明が提供される。
(1)前記第2の手段は、前記移動管理装置が前記個別登録メッセージを受信した場合に、その送信元アドレスがネットワークのイングレス・フィルタリングにより検証されたものとみなして登録するとともに、その送信元アドレスあてに前記バルク登録を許可する応答メッセージを送信し、
前記第3の手段は、前記移動装置が前記バルク登録メッセージを送信する場合に、前記バルク登録を許可されたアドレス以外のインタフェースを送信元として、前記バルク登録を許可された送信元アドレスを送信元アドレスフィールド外に含む前記バルク登録メッセージを送信することを特徴とする請求項10に記載のアドレス登録システム。
(2)前記第2の手段は、前記移動管理装置が前記応答メッセージによりバルク登録有効期間を前記移動装置に通知し、
前記第3の手段は、前記移動装置が前記バルク登録メッセージを前記バルク登録有効期間内に送信することを特徴とする請求項10又は上記の(1)に記載のアドレス登録システム。
(3)前記第1の手段は、前記移動装置が前記バルク登録を希望するアドレスを送信元アドレスとする前記個別登録メッセージにより、バルク登録許可を前記移動管理装置に要求し、
前記第3の手段は、前記移動装置が前記バルク登録を許可されたアドレスを送信元アドレスフィールド外に含むバルク登録メッセージを前記移動管理装置に送信することを特徴とする請求項10、上記の(1)及び(2)のいずれか1つに記載のアドレス登録システム。
(4)前記第2の手段は、前記移動管理装置が前記応答メッセージにより代理ノードを移動装置に通知し、
前記第3の手段は、移動装置が前記バルク登録メッセージを前記応答メッセージにより通知された代理ノードに送信し、前記代理ノードが前記バルク登録メッセージに署名して前記移動管理装置に送信することを特徴とする請求項10に記載のアドレス登録システム。
(5)前記第2の手段は、前記移動管理装置が前記個別登録メッセージを受信した場合に、その送信元アドレスを有するインタフェースの接続するネットワークに応じて前記バルク登録を許可するか否かを決定することを特徴とする請求項10に記載のアドレス登録システム。
(6)前記第2の手段は、前記移動管理装置が前記複数の個別登録メッセージを受信した場合に、その送信元アドレスを登録するとともに、個々の送信元アドレスのバルク登録有効期間を前記移動装置に通知し、
前記第3の手段は、前記移動装置が、前記個々の送信元アドレスのバルク登録有効期間に応じて送信元アドレスを前記個々の送信元アドレス間で変更して前記バルク登録メッセージを前記移動管理装置に送信することを特徴とする請求項10に記載のアドレス登録システム。
(7)前記第2の手段は、前記移動管理装置が前記バルク登録を許可する応答メッセージとして、前記複数の個別登録メッセージの各送信元アドレスの登録を一括して確認するバルク登録確認メッセージを、前記移動装置の複数のインタフェースのいずれかあてに送信することを特徴とする請求項10、上記の(1)から(6)までのいずれか1つに記載のアドレス登録システム。
(8)前記第2の手段は、前記移動管理装置が前記バルク登録を許可する応答メッセージにより、前記バルク登録メッセージを送信するインタフェースを前記移動装置に指示することを特徴とする請求項10、上記の(1)、(2)、(4)(5)及び(7)のいずれか1つに記載のアドレス登録システム。
(9)前記個別登録メッセージを受信した場合に、その送信元アドレスがネットワークのイングレス・フィルタリングにより検証されたものとみなして登録するとともに、その送信元アドレスあてに前記バルク登録を許可する応答メッセージを送信することを特徴とする請求項17に記載の移動管理装置。
(10)前記応答メッセージによりバルク登録有効期間を前記移動装置に通知することを特徴とする請求項17又は上記の(9)に記載の移動管理装置。
(11)前記応答メッセージにより、前記移動装置が前記バルク登録メッセージを送信する代理ノードを前記移動装置に通知することを特徴とする請求項17又は上記の(9)に記載の移動管理装置。
(12)前記個別登録メッセージを受信した場合に、その送信元アドレスを有するインタフェースの接続するネットワークに応じて前記バルク登録を許可するか否かを決定することを特徴とする請求項17に記載の移動管理装置。
(13)前記複数の個別登録メッセージを受信した場合に、その送信元アドレスを登録するとともに、個々の送信元アドレスのバルク登録有効期間を前記移動装置に通知することを特徴とする請求項17に記載の移動管理装置。
(14)前記バルク登録を許可する応答メッセージとして、前記複数の個別登録メッセージの各送信元アドレスの登録を一括して確認するバルク登録確認メッセージを、前記移動装置の複数のインタフェースのいずれかあてに送信することを特徴とする請求項17、及び上記の(9)から(13)のいずれか1つに記載の移動管理装置。
(15)前記バルク登録を許可する応答メッセージにより、前記バルク登録メッセージを送信するインタフェースを前記移動装置に指示することを特徴とする請求項17、及び上記の(9)から(14)のいずれか1つに記載の移動管理装置。
本発明は、移動装置の複数のインタフェースに関連付けられた各アドレスを、移動装置の移動を管理する移動管理装置に登録する場合に、バルク登録メッセージの送信元アドレス以外のアドレスあてのパケット送信の遅延を防止することができるという効果を有し、3GPP−LTE(Third Generation Partnership Project Long Term Evolution)プロジェクトが作業を行っているSAE(System Architecture Evolution)などに利用することができる。
本発明は、移動装置の複数のインタフェースの各アドレスを、移動装置の移動を管理する移動管理装置に登録するアドレス登録方法及びアドレス登録システムに関する。
また本発明は、上記のアドレス登録システムにおける移動装置及び移動管理装置に関する。
下記の非特許文献1におけるモバイルIPv6(MIPv6)によれば、モバイルノードは、インターネットに対する接続点(point-of-attachment)を変更しても、1つのIPアドレスを永久的に維持することができる。MIPv6におけるこの永久的なIPアドレスとは、モバイルノードのホームネットワーク・ドメイン内のアドレスであって、ホームアドレスとして知られている。また、モバイルノードは、外部ネットワーク・ドメインに接続(attach)すると、その外部ネットワーク・ドメインで使用するIPアドレスを、その外部ネットワーク・ドメインにより広告されるサブネット・プリフィックスからも構成することができる。このように構成されたIPアドレスは気付アドレス(Care-of Address)と呼ばれ、気付アドレスをモバイルノードのあて先とすることもできる。
モバイルノードがその位置に関係なく到達性(reachability)を維持するためには、モバイルノードは、自身の移動管理装置であるホームエージェントにおいて現在の気付アドレスをホームアドレスにバインドする。MIPv6では、ホームエージェントとは、モバイルノードのホームネットワーク・ドメイン内においてモバイルノードの気付アドレスを登録するルータである。この登録は、モバイルノードがバインディング・アップデート(BU)メッセージをホームエージェントに送信することにより実現される。モバイルノードがホームネットワーク・ドメインからアウェイに位置する間は、ホームエージェントは、モバイルノードのホームアドレスあてのパケットをインタセプトして、モバイルノードの気付アドレスあてにトンネル化する。MIPv6では、ホストがモビリティ管理に含まれるので、MIPv6は、ホストベースのモビリティ管理プロトコルとも呼ばれている。
ところで、複数のネットワーク・インタフェースが集積された携帯型の電子周辺機器が導入されると、モバイルノード及びルータは、複数の気付アドレスを1つのホームアドレスに登録することができる(例えば下記の非特許文献2)。非特許文献2に記載されている方法では、1つのホームアドレスに対する複数のバインディングを区別するために、バインディング・ユニーク識別子(BID)番号と呼ばれる識別子番号が使用される。このBIDは、インタフェース又は、モバイルノード及びルータの1つのホームアドレスにバインドされる気付けアドレスに割り当てられる。このため、ホームアドレスがモバイルノード及びルータに関連付けられるのに対し、BIDは、モバイルノードにより同時に登録される複数のバインディングの各々を識別する。モバイルノード及びルータは、BUメッセージを用いてBIDをホームエージェントに通知し、ホームエージェントは、このBIDをバインディング・キャッシュに記録する。
図1は、ホストベースのモビリティ管理が使用されるシステムの想定例を示す。図1において、2つのインタフェース(IF)1000、1001を有するMN100は、元々はホームネットワーク・ドメイン10に位置していて、ホームアドレス(HoA)を用いて通信相手(CN:Correspondent Node)300と通信を行っていたものとする。MN100はホームネットワーク・ドメイン10外に移動して、グローバル通信ドメイン12を跨がって外部ネットワーク・ドメイン11をローミングするときにMIPv6を使用して、CN300と継続して通信を行うものとする。このために、MN100は、外部ネットワーク・ドメイン11をローミングするときに、ホームネットワーク・ドメイン10内のHA101に対し、現在の気付アドレス(CoA)をHoAにバインドする。
MN100は、3Gセルラ・ネットワーク110と通信可能なインタフェース(IF)1000と、ワイヤレス・ローカルエリアネットワーク(WLAN)111と通信可能なIF1001を有し、外部ネットワーク・ドメイン11においてIF1000、1001を同時に接続するものとする。MN100は、非特許文献2を採用して、IF1000について構成したIPアドレス(CoA1とする)と、IF1001について構成したIPアドレス(CoA2とする)をHA101においてHoAにバインドする。
通常では、MN100は、各IPアドレスCoA1、CoA2をそれぞれバインドする個々のBUメッセージ(以下では、個別登録BUメッセージ)をHA101に送信するが、MN100とHA101の間のシグナリングを最適化する方法として、非特許文献2では、複数の個別登録BUメッセージを1つのBUメッセージ(以下では、バルク登録BUメッセージ)に集合することが提案されている。この技術は、バルク登録として知られ、MN100とHA101の間のシグナリング・メッセージ数を減少するという利点を有する。シグナリング・メッセージの数が減少するということは、メッセージのパケットのオーバヘッドが非常に減少することを黙示している。例えばMN100が2つの個別登録BUメッセージの代わりに1つのバルク登録BUメッセージを送信すると、パケットのオーバヘッドを45%セーブすることができる場合がある。パケットのオーバヘッドのセーブについては下記の非特許文献3に詳しく説明されている。
さらに、このシステムが3GPPオペレータにより設けられている場合、ネットワークを悪意のある行動から保護するために、何らかのセキュリティ対策が設けられる。考えられるセキュリティ対策としては、下記の非特許文献4に記載されているようなイングレス・フィルタリングがある。ネットワーク側はイングレス・フィルタリングにより、意図する送信元から特定のパケットが来たことを知得することができる。各ネットワークのゲートウェイ・ルータは、パケットの送信元IPアドレスをチェックして、特定のルータが取り扱うIPアドレスのリストとマッチングすることを確保することができる。ゲートウェイ・ルータは、パケットの送信元IPアドレスが上記のIPアドレスのリスト内に存在しない場合には、そのパケットに悪意があると疑って破棄する。したがって、外部ネットワーク・ドメイン11内のゲートウェイ・ルータがイングレス・フィルタリングによりパケットの送信元IPアドレスをチェックするので、HA101は、MN100が外部ネットワーク・ドメイン11において送信されるパケットが真であると確信することができる。
しかしながら、バルク登録BUメッセージの送信元アドレスには、複数の気付アドレス(CoA)のうちの1つのみが記述され、残りの気付アドレスは、暗号化されたバルク登録BUメッセージ内に伝送されるので、ゲートウェイ・ルータは、上記の残りの気付アドレスが偽か否かをチェックすることができない。例えばIF1000が気付アドレス3G.Addrを使用し、IF1001が気付アドレスWLAN.Addrを使用して通信を行うものとして、MN100がバルク登録BUメッセージをIF1000からHA101に送信する場合、バルク登録BUメッセージの送信元アドレスは気付アドレス3G.Addrであるので、HA101にとっては、気付アドレス3G.Addrは、外部ネットワーク・ドメイン11のイングレス・フィルタリングにより検証(verify)される。
他方、バルク登録BUメッセージ内の気付アドレスWLAN.Addrは、HA101に登録するためにオプションで伝送される。このため、外部ネットワーク・ドメイン11によるイングレス・フィルタリングでは、HA101は、気付アドレスWLAN.Addrが外部ネットワーク・ドメイン11内で使用されるIPアドレスであることを確信できないので、HA101は、MN100との間で確立した信頼関係に頼るしかなく、MN100が気付アドレスWLAN.Addrを使用しているものと仮定するしかない。ところで、MN100に悪意があり、MN100がHA101との信頼関係を乱用して、あるIPアドレスをバルク登録BUメッセージ内に記述した場合を考える。もし、このIPアドレスが他のモバイルノードにより使用されている場合、MN100はHA101に対し、他のモバイルノードのIPアドレスにパケットを転送するよう指示できることになる。この意味は、MN100が犠牲となるモバイルノードに対し、HA101に無意味なパケットを洪水のごとく転送させてリ・ダイレクション攻撃できるということであり、このため、犠牲となるモバイルノードの本来のパケット送受信を輻輳させることができるということである。
このため、3GPPオペレータは、バルク登録による悪意のある攻撃を防止するために、別のセキュリティ対策を採用するかもしれない。また、HA101にとって簡単かつ明白な方法は、バルク登録BUメッセージ内に記述されている各アドレス(送信元アドレスを除く)を検証することである。この場合、HA101は、バルク登録BUメッセージ内に記述されている各アドレスあてに暗号化メッセージを送信して、MN100に復号化メッセージを送り返すよう依頼することができる。HA101がMN100から送り返された復号化メッセージを受信できるということは、HA101にとって、MN100がバルク登録BUメッセージ内に記述されている各アドレスを使用しているものと検証できる。この方法の詳細は、下記の非特許文献5、特許文献1、特許文献2、特許文献3に示されている。
同様に、MN100が複数のインタフェースを有する場合には、HA101が1つのインタフェース経由で暗号化メッセージを送信して、MN100に別のインタフェース経由で復号化メッセージを送り返すよう依頼することにより、検証プロセスを最適化できる。例えばIF1000が気付アドレス3G.Addrを使用し、IF1001が気付アドレスWLAN.Addrを使用して通信を行うものとして、MN100が気付アドレス3G.Addr、WLAN.AddrをHA101に登録するためのバルク登録BUメッセージをIF1000からHA101に送信したものとする。この場合、HA101は、気付アドレスWLAN.Addrを検証するために、IF1000に暗号化メッセージを送信して、MN100にIF1001経由で復号化メッセージを送り返すよう依頼する。このように、ネットワークにより既に検証(=外部ネットワーク・ドメイン11によりイングレス・フィルタリング)されているアドレス(3G.Addr)あてに暗号化メッセージを送信する利点は、未だ検証されていないアドレス(WLAN.Addr)あてにHA101がパケットを送信してリ・ダイレクション(redirection)攻撃を意図的に開始しないようにすることにある。この方法の詳細は、下記の特許文献4に示されている。
以上説明した従来技術では、HA101が、送信元アドレス以外のIPアドレスを検証するためにMN100とメッセージ交換を行うので、MN100が実際のパケット・ルーティング目的で、送信元アドレス以外のIPアドレスを使用する時点が遅れるという問題がある。例えばIF1000が気付アドレス3G.Addrを使用し、IF1001が気付アドレスWLAN.Addrを使用して通信を行うものとして、MN100が気付アドレス3G.Addr、WLAN.AddrをHA101に登録するためのバルク登録BUメッセージをIF1000からHA101に送信し、HA101は、気付アドレスWLAN.Addrを検証するために、IF1000に暗号化メッセージを送信したものとすると、この場合には、HA101は、MN100からの復号化メッセージを受信するまでは、パケットをMN100に転送するために気付アドレスWLAN.Addrを使用すべきでない。これにより、HA101がリ・ダイレクション攻撃を意図的でなく仕掛けないことを保証することができる。しかしながら、以上説明した方法では、HA101がパケットをMN100に転送するために気付アドレスWLAN.Addrを使用するためには、HA101は、3つのメッセージ交換の時間を必要とする。
上記の遅延の問題を解決する明白な方法として、HA101との間に信頼関係が確立されているプロキシ・エンティティがMN100のIPアドレスをHA101に登録する方法がある。例えばホームネットワーク・ドメイン10の3GPPオペレータが外部ネットワーク・ドメイン11の3GPPオペレータと何らかのサービス契約を締結しているかもしれない。このサービス契約では、HA101と、外部ネットワーク・ドメイン11のプロキシ・エンティティ(例えばAAA(Authentication, Authorization and Accounting)サーバ)の間に相互の信頼関係が確立される。HA101は、このような相互の信頼関係を確立しておくことにより、プロキシ・エンティティがMN100のために登録するIPアドレスを信頼する。この方法の詳細は、下記の特許文献5、特許文献6に示されている。また、特許文献7には、プロキシ・エンティティが、HA101あての登録メッセージ内に記述されているMN100のIPアドレスが真であることを登録メッセージのパケットヘッダ内に記述することが記載されている。
しかしながら、以上説明した従来技術では、パケット転送を目的とするIPアドレス使用の遅延を減少するために、IPアドレスを検証する第3のエンティティをシステム内に導入している。さらに、従来技術の方法を用いる前に、ホームネットワーク・ドメイン10と外部ネットワーク・ドメイン11の間で何らかの信頼関係を確立しなければならない。しかしながら、すべての3GPPオペレータがお互いにこのような信頼関係を確立して維持することは困難である。
上記の遅延の問題を解決する明白な他の方法として、MN100が暗号化を用いて、HA101に登録するIPアドレスを生成する方法がある。この方法の詳細は、下記の非特許文献6に示されている。しかしながら、暗号化して生成したIPアドレスでは、MN100は、自身が保持していないIPアドレスをバインドすることができない。また、暗号化して生成したIPアドレスを使用する場合には、MN100は、IPアドレスを得るために複雑なハッシュ関数を動作させる必要があるので、構成がより複雑になり、より高い処理能力を必要とする。加えて、MN100は、IPアドレスを生成するのに使用したパラメータをHA101あてのBUメッセージ内に含ませる必要がある。なお、このパラメータは、IPアドレスが真であることを検証する際にHA101により使用される。また、IPアドレスを生成するのに使用したパラメータをバルク登録BUメッセージ内に付加すると、メッセージサイズが非常に増大する。例えば下記の非特許文献7には、各パラメータ・オプションが255バイトまでに限定され、1つのメッセージが複数のパラメータ・オプションを含むであろうことが記載されている。
P. Danny, T. Daniel C., and B. Richard, "Link discovery and verification procedure using loopback", US Patent No. 6,834,139 B1, December 21, 2004. S. John A., "Methods and apparatus for determining, verifying, and rediscovering network IP addresses", US Patent No. 6,195,706 B1, February 27, 2001. C. Josep, D. Scott N. and V. Theodore B., "Apparatus, system, and method for automatically verifying access to a mulitipathed target at boot time", US Patent Application Publication No. 2007/0143583 A1, June 21, 2007. J. Hirano, B. Lim, C-W. Ng, B. Koh and P-Y. Tan, "Method and apparatus for address verification during multiple address registration", WO Patent Application Publication No. 2008/023845 A1, February 28, 2008. K. Leung and G. Dommety, "Methods and apparatus for providing mobility of a node that does not support mobility", US Patent No. 6,466,964 B1, October 15, 2002. H. Guan, J. Wang and Y. Huang, "Method and System for Authorizing and Charging Host with Multiple Addresses in IPv6 Network", US Patent Application Publication No.2007/0169180 A1, July 19, 2007. P-A. Son, "System and method for carrying trusted network provided access network information in session initiation protocol", US Patent Application Publication No. 2008/0039085 A1, February 14, 2008.
D. Johnson, C. Perkins and J. Arkko, "Mobility Support in IPv6", Internet Engineering Task Force Request For Comments 3775, June 2004. R. Wakikawa, T. Ernst and K. Nagami, "Multiple Care-of Addresses Registration", draft-ietf-monami6-multiplecoa-00.txt, June 12, 2006. M. Kuparinen, H. Mahkonen and T. Kauppinen, "Multiple CoA Performance Analysis", draft-kuparinen-monami6-mcoa-performance-00.txt, April 20, 2006. F. Baker and P. Savola, "Ingress Filtering for Multihomed Networks", Internet Engineering Task Force Request For Comments 3704, March 2004. F. Dupont, and J-M. Combes, "Care-of Address Test for MIPv6 using a State Cookie", draft-dupont-mipv6-rrcookie-00.txt, January 10, 2005. T. Aura, "Cryptographically Generated Addresses (CGA)", Internet Engineering Task Force Request For Comments 3972, March, 2005. J. Arkko, C. Vogt and W. Haddad, "Enhanced Route Optimization for Mobile IPv6", Internet Engineering Task Force Request For Comments 4866, May, 2007.
以上説明したように、モバイルノードの複数のインタフェースに関連付けられた各アドレスを、モバイルノードの移動を管理する移動管理装置に登録する場合に、バルク登録メッセージの送信元アドレス以外のアドレスあてのパケット送信に遅延が発生するという問題点がある。
本発明は上記の問題点に鑑み、移動装置の複数のインタフェースに関連付けられた各アドレスを、移動装置の移動を管理する移動管理装置に登録する場合に、バルク登録メッセージの送信元アドレス以外のアドレスあてのパケット送信の遅延を防止することができるアドレス登録方法、アドレス登録システム、移動装置及び移動管理装置を提供することを目的とする。
本発明は上記目的を達成するために、移動装置の複数のインタフェースに割り当てられた複数のアドレスを前記移動装置の移動管理装置に登録するアドレス登録方法であって、
前記複数のインタフェースに関連付けられたアドレスのそれぞれを送信元アドレスとして、前記送信元アドレスを個別に登録するための複数の個別登録メッセージを前記移動管理装置に送信する第1のステップと、
前記移動管理装置が前記複数の個別登録メッセージを受信した場合に、その送信元アドレスを登録するとともに、前記複数のアドレスを一括して更新するバルク登録を許可する応答メッセージを前記移動装置に送信する第2のステップと、
前記移動装置が前記応答メッセージを受信した後に前記複数のアドレスを一括して更新する場合に、前記複数のインタフェースの1つを送信元として他のインタフェースのアドレスを送信元アドレスフィールド外に含むバルク登録メッセージを前記移動管理装置に送信する第3のステップとを、
有する構成とした。
また本発明は上記目的を達成するために、移動装置の複数のインタフェースに割り当てられた複数のアドレスを前記移動装置の移動管理装置に登録するアドレス登録システムであって、
前記移動装置が前記複数のインタフェースに関連付けられたアドレスのそれぞれを送信元アドレスとして、前記送信元アドレスを個別に登録するための複数の個別登録メッセージを前記移動管理装置に送信する第1の手段と、
前記移動管理装置が前記複数の個別登録メッセージを受信した場合に、その送信元アドレスを登録するとともに、前記複数のアドレスを一括して更新するバルク登録を許可する応答メッセージを前記移動装置に送信する第2の手段と、
前記移動装置が前記応答メッセージを受信した後に前記複数のアドレスを一括して更新する場合に、前記複数のインタフェースの1つを送信元として他のインタフェースのアドレスを送信元アドレスフィールド外に含むバルク登録メッセージを前記移動管理装置に送信する第3の手段とを、
有する構成とした。
また本発明は上記目的を達成するために、移動装置の複数のインタフェースに割り当てられた複数のアドレスを前記移動装置の移動管理装置に登録するアドレス登録システムにおける前記移動装置であって、
前記移動装置が前記複数のインタフェースに関連付けられたアドレスのそれぞれを送信元アドレスとして、前記送信元アドレスを個別に登録するための複数の個別登録メッセージを前記移動管理装置に送信する手段と、
前記複数のアドレスを一括して更新するバルク登録を許可する応答メッセージを前記移動管理装置から受信した後に前記複数のアドレスを一括して更新する場合に、前記複数のインタフェースの1つを送信元として他のインタフェースのアドレスを送信元アドレスフィールド外に含むバルク登録メッセージを前記移動管理装置に送信する手段とを、
有する構成とした。
また本発明は上記目的を達成するために、移動装置の複数のインタフェースに割り当てられた複数のアドレスを前記移動装置の移動管理装置に登録するアドレス登録システムにおける前記移動管理装置であって、
前記移動装置から、前記複数のインタフェースに関連付けられたアドレスのそれぞれを送信元アドレスとして、前記送信元アドレスを個別に登録するための複数の個別登録メッセージを受信した場合に、その送信元アドレスを登録するとともに、前記複数のアドレスを一括して更新するバルク登録を許可する応答メッセージを前記移動装置に送信する手段と、
前記応答メッセージを送信した後に、前記複数のインタフェースの1つを送信元として他のインタフェースのアドレスを送信元アドレスフィールド外に含むバルク登録メッセージを前記移動装置から受信した場合に、前記複数のアドレスを一括して更新する手段とを、
有する構成とした。
この構成により、移動装置の複数のインタフェースに割り当てられた複数のアドレスを最初に移動管理装置に登録する場合には、個別登録メッセージを使用して各アドレスをネットワークのイングレス・フィルタリングなどにより認証し、この登録後には複数のアドレスを一括して更新する場合にバルク登録メッセージを使用するので、バルク登録メッセージの送信元アドレス以外のアドレスあてのパケット送信の遅延を防止することができる。
本発明によれば、移動装置の複数のインタフェースに関連付けられた各アドレスを、移動装置の移動を管理する移動管理装置に登録する場合に、バルク登録メッセージの送信元アドレス以外のアドレスあてのパケット送信の遅延を防止することができる。
本発明のアドレス登録方法が適用されるシステムの想定例を示すブロック図 本発明の第1の実施の形態におけるモバイルノードの構成を機能的に示すブロック図 本発明の第1の実施の形態におけるホームエージェントの構成を機能的に示すブロック図 本発明の第1の実施の形態における通信シーケンスを示す説明図 本発明の第1の実施の形態の通知メッセージのフォーマットを示す説明図 本発明の第1の実施の形態におけるモバイルノードがバルク登録の可否を判断する処理を説明するためのフローチャート 本発明の第1の実施の形態におけるホームエージェントがバルク登録BUメッセージを検証する処理を説明するためのフローチャート 本発明の第2の実施の形態の通信シーケンスを示す説明図 本発明の第2の実施の形態における個別登録BUメッセージのフォーマット を示す説明図 本発明の第2の実施の形態におけるモバイルノードがバルク登録の可否を判断する処理を示すフローチャート 本発明の第2の実施の形態におけるホームエージェントがバルク登録BUメッセージを検証する処理を説明するためのフローチャート 本発明の第3の実施の形態における通信シーケンスを示す説明図 本発明の第3の実施の形態におけるバルク登録BUメッセージのフォーマットを示す説明図 本発明の第3の実施の形態におけるプロキシがバルク登録BUメッセージ内のIPアドレス検証を援助する処理を示すフローチャート 本発明の第6の実施の形態におけるバルク登録BAメッセージのフォーマットを示す説明図 本発明の第6の実施の形態におけるモバイルノードがバルク登録BAメッセージを受信した場合の処理を示すフローチャート 本発明の第8の実施の形態におけるシステムの想定例を示すブロック図 本発明の第8の実施の形態におけるメッセージシーケンスを示す説明図 本発明の第8の実施の形態における個別登録BAメッセージのフォーマットを示す説明図 本発明の第8の実施の形態における個別登録BUメッセージのフォーマットを示す説明図
以下、図面を参照して本発明の実施の形態について説明する。以下に記載されている特定の数字、時間、構造、プロトコル名及び他のパラメータは、本発明を理解するための説明であって、当業者であれば、本発明は、これらに限定されることなく実現可能なことは明らかである。また、ブロック図に示されている名称は、本発明を不必要に不明瞭にしないように用いられている。
図1は、本発明のアドレス登録方法が使用されるシステムの想定例を示す。図1におけるシステムの概略的な構成は、「背景技術」において説明したので、ここでは詳細な説明を省略する。なお、このシステムは、3GPP−LTE(Third Generation Partnership Project Long Term Evolution)プロジェクトが作業を行っているSAE(System Architecture Evolution)と関連付けることができる。このシステムとSAEの関係について説明すると、ホームエージェント(HA)101は、SAEのパケットデータ・ネットワーク・ゲートウェイ(PDN−GW:Packet Data Network Gateway)と関連付けることができ、同様に、モバイルノード(MN)100は、SAEのユーザ機器(UE:User Equipment)と関連付けることができる。なお、ネットワーク111はNon−3GPPネットワークであり、WLANに限らず、WiMAXなどの他のアクセスネットワークであってもよい。
本発明では、2つのインタフェース(IF)1000(3GPPインタフェース)、1001(Non−3GPPインタフェース)を有するMN100は、外部ネットワーク・ドメイン11においてIF1000、1001に割り当てられたIPアドレス(気付アドレス:CoA)をHA101に登録してさらに更新するために、最初は、MN100は、IF1000、1001のそれぞれを送信元アドレスとして、送信元アドレスを個別に登録するための複数の個別登録BUメッセージをHA101に送信する。HA101は、複数の個別登録メッセージを受信した場合に、その送信元アドレスが外部ネットワーク・ドメイン11のイングレス・フィルタリングにより検証されたものとみなして登録するとともに、MN100による今後のBUメッセージの送信を効率化するために、どのようにBUメッセージを送信するべきかを示す情報を含む応答メッセージ(BAメッセージ)をMN100に送信する。その情報には、バルク登録BUメッセージの送信方法を指示する情報(バルクパターン情報)が含まれており、MN100はその情報に従って、以降のBUメッセージを送信する。
<MNの構成>
図2はMN100の構成を機能的に示すブロック図である。なお、図2に示す構成は、MN100以外のノード、例えばモバイル・ルータなどにも適用することができる。MN100は、ネットワーク・インタフェース・モジュール21と、モビリティ・バインディング・エンジン22と、データベース・モジュール23と、バルク登録可否判断エンジン24を有する。ネットワーク・インタフェース・モジュール21は、通信メディアを介して他のノードと通信するために必要なプログラム及びソフトウエアを実行する機能ブロックである。関連する技術分野において用いられている用語を使用すれば、ネットワーク・インタフェース・モジュール21は、レイヤ1(物理層)とレイヤ2(データリンク層)の通信コンポーネント、ファームウェア、ドライバ及び通信プロトコルを表す。当業者であれば、ネットワーク・インタフェース・モジュール21は1以上設けられることは明らかである(例えば図1のIF1000、1001)。
ネットワーク・インタフェース・モジュール21とモビリティ・バインディング・エンジン22は、シグナル/データパスS21を介してトリガ信号及びパケットを相互に伝送することができる。例えばネットワーク・インタフェース・モジュール21は、他のノードから受信したモビリティ・シグナリング・メッセージ(例えばHA101から受信したBAメッセージ)をモビリティ・バインディング・エンジン22に転送して処理させる。同様に、モビリティ・バインディング・エンジン22は、モビリティ・シグナリング・メッセージ(例えばBUメッセージ)をネットワーク・インタフェース・モジュール21に転送して他のノード(例えばHA101)に送信させる。
モビリティ・バインディング・エンジン22はMN100のモビリティを管理する。関連する技術分野において用いられている用語を使用すれば、モビリティ・バインディング・エンジン22はレイヤ3(ネットワーク層)プロトコル、例えばMIPv4又はMIPv6(Mobile Internet Protocol version 4 or 6)の機能を表す。モビリティ・バインディング・エンジン22とデータベース・モジュール23は、シグナル/データパスS22を介してトリガ信号及びパケットを相互に伝送することができる。例えばモビリティ・バインディング・エンジン22はモビリティ管理機能を実行するために、データベース・モジュール23内の情報(例えば気付アドレス)をアップデートしたり、データベース・モジュール23から情報を引き出したりする。
同様に、モビリティ・バインディング・エンジン22とバルク登録可否判断エンジン24は、シグナル/データパスS23を介してトリガ信号及びパケットを相互に伝送することができる。例えばモビリティ・バインディング・エンジン22は、HA101に登録されているMN100のアドレスのバインディングをリフレッシュする前にバルク登録可否判断エンジン24をトリガして、どのアドレスがバルク登録に使用可能かを識別することができる。
データベース・モジュール23は、MN100に必要な情報を蓄積し、この望ましい実施の形態ではバインディング・アップデートリスト230と、バルク登録有効期間231と、アドレス検証情報232を蓄積している。バインディング・アップデートリスト230は、あて先ノード(例えばHA101、CN300)に登録しているMN100の現在の気付アドレスに関する1以上のエントリを含む。加えて、第1の実施の形態では、バルク登録に使用する1又は複数の気付アドレスに対してバルク登録有効期間231を導入している。アドレス検証情報232は、バルク登録可否判断エンジン24が判断を実行するのに関連するデータ(例えばバルク登録に使用される1又は複数の気付アドレス、公開鍵及び秘密鍵)を含む。
本発明では、バルク登録可否判断エンジン24を導入して、特定の気付アドレスがバルク登録に使用可能か否か(HA101によりバルク登録が許可されているか否か)を判断している。例えばバルク登録可否判断エンジン24の目的は、データベース・モジュール23内のバルク登録有効期間231を使用して、特定の気付アドレスがバルク登録可能か否かを判断することにある。
<HAの構成>
図3はHA101の構成を機能的に示すブロック図である。なお、図3に示す構成は、HA101以外のノード、例えばCN300などにも適用することができる。HA101は、ネットワーク・インタフェース・モジュール25と、モビリティ・バインディング・エンジン26と、データベース・モジュール27と、バルク登録検証エンジン28を有する。ネットワーク・インタフェース・モジュール25は、図2と同様に、通信メディアを介して他のノードと通信するために必要なプログラム及びソフトウエアを実行する機能ブロックであるので、詳細な説明を省略する。当業者であれば、ネットワーク・インタフェース・モジュール25は1以上設けられることは明らかである。
また、図2と同様に、ネットワーク・インタフェース・モジュール25とモビリティ・バインディング・エンジン26は、シグナル/データパスS25を介してトリガ信号及びパケットを相互に伝送することができる。ネットワーク・インタフェース・モジュール25は、他のノードから受信したモビリティ・シグナリング・メッセージとして、例えばMN100から受信したBUメッセージ(個別登録BUメッセージ、バルク登録BUメッセージ)をモビリティ・バインディング・エンジン26に転送して処理させる。同様に、モビリティ・バインディング・エンジン26は、モビリティ・シグナリング・メッセージをネットワーク・インタフェース・モジュール21に転送して他のノードに送信させ、例えばBAメッセージ(個別登録BAメッセージ、バルク登録BAメッセージ)をMN100に送信させる。
モビリティ・バインディング・エンジン26はHA101のモビリティを管理する。図2と同様に、関連する技術分野において用いられている用語を使用すれば、モビリティ・バインディング・エンジン26はレイヤ3(ネットワーク層)プロトコル、例えばMIPv4又はMIPv6(Mobile Internet Protocol version 4 or 6)の機能を表す。モビリティ・バインディング・エンジン26とデータベース・モジュール27は、シグナル/データパスS26を介してトリガ信号及びパケットを相互に伝送することができる。例えばモビリティ・バインディング・エンジン26はモビリティ管理機能を実行するために、データベース・モジュール27内の情報(例えば気付アドレス)をアップデートしたり、データベース・モジュール27から情報を引き出したりする。
同様に、モビリティ・バインディング・エンジン26とバルク登録検証エンジン28は、シグナル/データパスS27を介してトリガ信号及びパケットを相互に伝送することができる。例えばモビリティ・バインディング・エンジン27は、HA101に登録されているMN100のアドレスのバインディングをリフレッシュする前にバルク登録検証エンジン28をトリガして、どのアドレスがバルク登録に使用可能か(バルク登録を許可しているか)を識別することができる。
データベース・モジュール27は、HA101に必要な情報を蓄積し、この望ましい実施の形態ではバインディング・キャッシュ270と、バルク登録有効期間271と、アドレス検証情報272を蓄積している。バインディング・キャッシュ270は、あて先ノード(例えばMN100)の現在の気付アドレスに関する1以上のエントリを含む。加えて、第1の実施の形態では、MN100がバルク登録に使用する1又は複数の気付アドレスに対してバルク登録有効期間271を導入している。アドレス検証情報272は、バルク登録検証エンジン28が実行するのに関連するデータ(例えばバルク登録に使用される1又は複数の気付アドレス、公開鍵及び秘密鍵)を含む。本発明では、バルク登録検証エンジン28を導入している。バルク登録検証エンジン28の目的は、バルク登録BUメッセージ内の気付アドレスがバルク登録可能か否かを検証することにある。この検証については、後述する他の実施の形態では、HA101が検証するのをプロキシが援助する。
<第1の実施の形態:HAがMNにバルク登録可否を通知>
図4は第1の実施の形態の通信シーケンスを示す。ここで、MN100は3Gセルラ・インタフェース1000とWLANインタフェース1001を有し、3Gセルラ・インタフェース1000、WLANインタフェース1001はそれぞれ、アドレス3G.Addr、WLAN.Addrを使用している。また、MN100は図1に示すように、ホームネットワーク・ドメイン10外の外部ネットワーク・ドメイン11内をローミングしており、MN100が現在使用している気付アドレスに関してHA101をアップデートするものとする。
このため、MN100は、アドレス3G.Addrを個別にHA101に登録するために3Gセルラ・インタフェース1000から個別登録BUメッセージS30をHA101に送信する。同様に、MN100は、アドレスWLAN.AddrをHA101に登録するためにWLANインタフェース1001から個別登録BUメッセージS31(図では単に、個別BU)をHA101に送信する。HA101では、外部ネットワーク・ドメイン11のイングレス・フィルタリングにより、アドレス3G.Addrが、そのアドレスが割り当てられている送信元から来たと検証することが保証されるので、HA101は個別登録BUメッセージS30をアクセプトして、アドレス3G.Addrが登録されたことを個別に通知(図では、BND−OK)するためのバインディング確認(個別登録BA)メッセージS32(図では単に、個別BA)をMN100に送り返す。
同様に、アドレスWLAN.Addrに関しても、外部ネットワーク・ドメイン11によるイングレス・フィルタリングに基づいて、同様の手順で処理が行われる。ここでは、HA101は、MN100が複数の気付アドレスを登録していることを検出して、バインディング確認(BND−OK)の通知と共に、アドレスWLAN.Addrがバルク登録可能であること(BLK−OK)を記述した個別登録BAメッセージS33をMN100に送り返す。個別登録BAメッセージS33ではまた、HA101は、アドレスWLAN.Addrのバルク登録有効期間をMN100に通知する。
MN100は、次のBUメッセージをHA101に送信しようとするときには、アドレスWLAN.Addrのバルク登録有効期間が未だ満了していないか否かをチェックする。バルク登録有効期間が未だ満了していない場合には、MN100は、アドレス3G.Addr、WLAN.Addrをバルク登録でHA101に登録するためにバルク登録BUメッセージS34a(図では単に、バルクBU)を継続して使用してHA101に送信する。HA101はバルク登録BUメッセージS34に対する応答として、2つの個別登録BAメッセージS34b(3G.Addr宛の個別登録BAメッセージとWLAN.Addr宛の個別登録BAメッセージ)又は1つのバルク登録BAメッセージS34cを送り返す。
MN100は、バルク登録有効期間が満了した場合には(図のS35)、個別登録BUメッセージS36、S37をHA101に送信して、それぞれアドレス3G.Addr、WLAN.AddrをHA101に登録する。個別登録BUメッセージS36、S37により、HA101は再びイングレス・フィルタリングにより送信元アドレスが検証されたとして、MN100が登録しようとしている気付アドレス3G.Addr、WLAN.Addrが真であると検証することができる。
MN100は、アドレス3G.Addr、WLAN.Addrが変更された場合には、そのアドレスはバルク登録BUメッセージ内には含ませない。その理由は、新しいIPアドレスは、HA101によりイングレス・フィルタリングを使用して検証されていないからである。もしMN100が新しいIPアドレスを登録するためにバルク登録を使用した場合、HA101は、新しいIPアドレスを使用する前に、何らかのアドレス検証メカニズムをトリガして新しいIPアドレスを検証する。なお、アドレスの検証をした後に、そのアドレスがバルク登録可能であること(BLK−OK)を記述した個別登録BAメッセージS33をMN100に返してもよい。例えばMN100がWLANインタフェース1001の新しいIPアドレスとしてアドレスWLAN.Addr2を構成した場合、アドレスWLAN.Addr2がHA101により未だ検証されていないので、MN100は、個別登録BUメッセージを使用してアドレスWLAN.Addr2をHA101に登録する。この手法により、HA101はイングレス・フィルタリングを使用して、MN100が本当にアドレスWLAN.Addr2を使用していることを検証できる。他方、MN100が個別登録BUメッセージをHA101に送信する前に、バルク登録を使用してアドレスWLAN.Addr2をHA101に登録しようとした場合、HA101は、アドレスWLAN.Addr2がバインディング・キャッシュ270に存在しないことを検知して、アドレスWLAN.Addr2がバルク登録不可であることを知得し、アドレス検証を実行する。
なお、HA101は、バルク登録が不可であるアドレスに対してアドレス検証処理を実行する代わりに、MN100に対してバルク登録が拒否されたことのみを通知するBAメッセージを送信してもよい。これにより、個別登録BUメッセージでの再送をするか否かをMN100の判断に委ねることができる。MN100は、バルク登録ではなく個別登録BUメッセージを送信するべきであることを認識し、自ら個別登録BUメッセージで再送を開始することができるため、検証処理の実行に伴う負荷をHA101から取り除くことができる。
また、HA101は、バルク登録BUメッセージに含まれるアドレスが、バインディング・キャッシュ270に全く存在しないアドレスである場合に、前述のバルク登録が拒否されたことを通知するBAメッセージを送信し、一方、バインディング・キャッシュ270に存在するが、バルク登録有効期間が満了している場合にアドレスの検証処理を実行するようにしてもよい。これにより、HA101によるアドレス検証を特定の場合に限定することができるため、アドレス検証に伴う負荷を軽減することができる。例えば、個別BUメッセージの再送に伴うMN100の負荷の方が、アドレス検証処理に伴うHA101の負荷よりも大きい場合には、MN100は自身の負荷を軽減するために、最初からバルク登録BUメッセージで送信することを選択するかもしれない。これに伴うHA101の負荷が増大することは、ネットワークオペレータにとって望ましいものではない。そのため、上記のようにHA101がアドレス検証を実行する機会をできるだけ制限することで、このようなMN100の行為を防ぐことができる。
<通知メッセージのフォーマット>
図5は望ましい第1の実施の形態の通知メッセージのフォーマットを示す。この通知メッセージは、パケットヘッダ40とモビリティ・オプション41を有する。パケットヘッダ40はメッセージ送信元と、メッセージタイプとメッセージ長の各フィールドを有し、メッセージ送信元は、IPv4又はIPv6のアドレスであるが、これには限定されない。モビリティ・オプション41は、ステータス・オプション410と通知オプション411を有する。ステータス・オプション410は、このメッセージが個別登録BAメッセージS32、S33の場合、個別登録BUメッセージS30、S31により要求された気付アドレスの登録が完了したか否か(BND−OK/NO)を示す。また、通知オプション411は、このメッセージがアドレスWLAN.Addrの個別登録BAメッセージS33であってバルク登録可(BLK−OK)の場合、バルク登録有効期間を含む。
ステータス・オプション410と通知オプション411について、図4に示す例を参照して詳しく説明すると、MN100がアドレス3G.Addrを個別にHA101に登録するために、3Gセルラ・インタフェース1000から個別登録BUメッセージS30をHA101に送信すると、HA101はMN100に対し、アドレス3G.Addrの登録が完了したこと(BND−OK)を示すステータス・オプション410を含む個別登録BAメッセージS32を送り返す。さらに、MN100がアドレスWLAN.Addrを個別にHA101に登録するために、WLANインタフェース1001から個別登録BUメッセージS31をHA101に送信すると、HA101はMN100に対し、アドレスWLAN.Addrの登録が完了したこと(BND−OK)を記述したステータス・オプション410と、アドレスWLAN.Addrのバルク登録有効期間(例えば7分)を記述した通知オプション411を含む個別登録BAメッセージS33を送り返す。このため、次の7分間は、MN100は、アドレスWLAN.Addrをリフレッシュするために、3Gセルラ・インタフェース1000からバルク登録BUメッセージS34aを送信することができる。
<バルク登録有効期間>
通知オプション411に記述する「バルク登録有効期間」は、外部ネットワーク・ドメイン11によりMN100の通信のために割り当てられているIPアドレスの存続期間(以下、「アドレス存続期間」)に対応しており、バルク登録有効期間が、アドレス存続期間と同等か、それ以下とすることが望ましい。外部ネットワーク・ドメイン11に位置する不図示のDHCP(Dynamic Host Control Protocol)サーバにより、アドレスWLAN.Addrのアドレス存続期間が割り当てられている場合を例にして説明する。DHCPサーバは、アドレスWLAN.AddrをMN100に割り当てるときに、アドレスWLAN.Addrのアドレス存続期間(例えば7分)を指示する。このアドレス存続期間の間は、DHCPサーバは、MN100がアドレスWLAN.Addrを使用しなくても、アドレスWLAN.Addrを他のモバイルノードに割り当てない。
このようにDHCPサーバが動作する理由は、MN100が予期しない接続ロスにあうかもしれないからである。MN100は、アドレスWLAN.Addrの接続ロスの後に再接続すると、CN300との間で継続しているセッションを変更しないためにアドレスWLAN.Addrを要求する。MN100がアドレスWLAN.Addrの接続を失った時点から再接続するまでの間に、もしDHCPサーバがアドレスWLAN.Addrを他のモバイルノードに割り当てると、MN100はアドレスWLAN.Addrを再び使用できなくなる。MN100がアドレスWLAN.Addrを再び使用できなくなるということは、MN100が新しいIPアドレスをCN300に通知する必要があるので、MN100とCN300との間のセッションに対する通信サービスが崩壊することを黙示している。さらに、アドレスWLAN.Addrが他のモバイルノードに割り当てられたことをCN300が知得していないので、他のモバイルノードは、アドレスWLAN.Addrを使用すると、無用なパケットをCN300から受信する。この行為は、MN100が悪意のあるノードである場合にはリ・ダイレクション攻撃とみなされる。
DHCPサーバから割り当て中のアドレス存続期間にバルク登録有効期間が関連付けされていない場合に、悪意のあるMN100がDHCPサーバを利用してリ・ダイレクション攻撃を行う方法について説明する。MN100がDHCPサーバから外部ネットワーク・ドメイン11で使用するアドレスWLAN.Addrを割り当てられた場合、MN100は、アドレスWLAN.Addrを使用してCN300とセッションを開始し、アドレスWLAN.Addrあてのパケット送信を開始して1分間、継続する。次に、MN100は、アドレスWLAN.Addrの接続を意図的に失い、DHCPサーバを欺いてアドレスWLAN.Addrを他のモバイルノードに割り当てさせる。一旦、他のモバイルノード(すなわち犠牲者)がアドレスWLAN.Addrを取得すると、CN300からのパケットは、犠牲となるモバイルノードに到達を開始して無用なパケットを大量に受信させることができる。
このため、この望ましい第1の実施の形態では、HA101からMN100に対して通知するIPアドレスのバルク登録有効期間を、外部ネットワーク・ドメイン11内のDHCPサーバから割り当てるアドレス存続期間と同じ、またはそれ以下としている。さらに、バルク登録有効期間がアドレス存続期間よりも短い場合、アドレス存続期間が終了するタイミングと、バルク登録有効期間が終了するタイミングが一致していることが望ましい。これにより、アドレス存続期間が終了した時点で、バルク登録有効期間がまだ有効である期間が生じてしまうことを防ぐことができる。このようにバルク登録有効期間を導入することにより、前述したようなリ・ダイレクション攻撃を防止することができる。変形例として、バルク登録有効期間は、すべてのエンティティが知得している周知の期間でもよい。さらに他の変形例として、バルク登録有効期間は、ホームネットワーク・ドメイン10と外部ネットワーク・ドメイン11の間で交渉した期間でもよい。
加えて、バルク登録有効期間は、MN100がこのIPアドレスを既に使用していないときに、MN100がこのIPアドレスの使用を誤って申し立てる可能性を低減することができる。例えばMN100がWLANインタフェース1001をシャットダウンしたとき、MN100は悪意で、アドレスWLAN.Addrをリフレッシュするために3Gセルラ・インタフェース1000からバルク登録BUメッセージを送信することにより、アドレスWLAN.Addrの使用を申し立てることができる。しかしながら、DHCPサーバがアドレスWLAN.Addrを、そのアドレス存続期間が満了するまで割り当てないので、MN100は、リ・ダイレクション攻撃を、犠牲となるモバイルノードに仕掛けることができない。また、バルク登録有効期間が満了すると、HA101は、MN100がWLANインタフェース1001から個別登録BUメッセージを送信して、MN100が未だアドレスWLAN.Addrを使用していることをイングレス・フィルタリングで検証することを必要とする。したがって、バルク登録有効期間を導入することにより、MN100が悪意のある行動をとる可能性を低減することができる。
<MNの処理>
図6はMN100がバルク登録の可否を判断する処理を説明するためのフローチャートである。この処理は、BUメッセージをHA101に送信する必要がある場合に、バルク登録可否判断エンジン24がモビリティ・バインディング・エンジン22からトリガ信号を受信したときにスタートし(ステップS50のBU受信トリガ)、データベース・モジュール23から関連情報(例えばバインディング・アップデートリスト230のエントリとバルク登録有効期間231)を引き出す(ステップS51)。次いで、バルク登録有効期間231に基づいてそのIPアドレスのバルク登録有効期間が満了しているか否かをチェックする(ステップS52)。そして、バルク登録有効期間が満了している場合にはステップS53に進んでバインディング・アップデートリスト230におけるそのIPアドレスに対して「バルク登録不可」をマークしてステップS55に進む。他方、バルク登録有効期間が満了していない場合にはステップS54に進んでバインディング・アップデートリスト230におけるそのIPアドレスに対して「バルク登録可」をマークしてステップS55に進む。ステップS55では、バインディング・アップデートリストにおけるすべてのエントリをチェックした場合に、その結果(バルク登録不可/バルク登録可)をリスト化してモビリティ・バインディング・エンジン22に転送する。モビリティ・バインディング・エンジン22はこのリストに基づいて個別登録BUメッセージ又はバルク登録BUメッセージを選択的に生成する。
上記の処理の例を説明する。MN100は既に、アドレス3G.Addr、WLAN.AddrをHA101に登録しているものとする。また、HA101はMN100に対して、アドレスWLAN.Addrが7分間、バルク登録可能な旨を通知している。その4分後、MN100は、HA101における現在のバインディングをリフレッシュする必要があるものとする。MN100は、未だアドレス3G.Addr、WLAN.Addrの両方を使用しており、アドレスWLAN.Addrのバルク登録有効期間が満了していないので、アドレス3G.Addr、WLAN.Addrの両方をリフレッシュするためのバルク登録BUメッセージをHA101に送信する。さらにその4分後、MN100は、HA101における現在のバインディングをリフレッシュする必要があるものとする。MN100は、未だアドレス3G.Addr、WLAN.Addrの両方を使用しているが、アドレスWLAN.Addrのバルク登録有効期間が満了しているので、アドレス3G.Addr、WLAN.Addrを個別にリフレッシュするための個別登録BUメッセージをHA101に送信する。
<HAの処理>
図7はHA101がMN100からのバルク登録BUメッセージを検証する処理を説明するためのフローチャートである。この処理は、モビリティ・バインディング・エンジン26がMN100からバルク登録BUメッセージを受信して、バルク登録検証エンジン28がモビリティ・バインディング・エンジン26からトリガ信号を受信したときにスタートし(ステップS60のバルクBU受信)、データベース・モジュール27から関連情報(すなわちバインディング・キャッシュ270とバルク登録有効期間271)を引き出す(ステップS61)。次いで、取得したバインディング・キャッシュ270とバルク登録有効期間271内に、バルク登録BUメッセージ内に記述されているIPアドレスが有るか否かをチェックし(ステップS62)、ある場合にはステップS63に進み、他方、ない場合にはステップS65に進む。
ステップS63では、バルク登録有効期間271を参照してそのIPアドレスのバルク登録有効期間が満了しているか否かをチェックする。そして、そのIPアドレスのバルク登録有効期間が満了していない場合にはステップS64に進み、他方、満了している場合にはステップS65に進む。ステップS64では、バインディング・キャッシュ270におけるそのIPアドレスに対して、パケット転送前のアドレス検証が不要である旨(アドレス検証不要)をマークしてステップS66に進む。ステップS65では、バインディング・キャッシュ270におけるそのIPアドレスに対して、パケット転送前のアドレス検証が必要である旨(アドレス検証要)をマークしてステップS66に進む。ステップS66では、その結果をリスト化してモビリティ・バインディング・エンジン26に転送する。モビリティ・バインディング・エンジン26はこのリストに基づいてそのバルク登録BUメッセージを処理(アクセプト又は拒絶など)する。
上記の処理の例を説明する。HA101は現在、MN100からのアドレス3G.Addr、WLAN.Addrのアクティブなバインディングを有する。さらに、HA101は、アドレスWLAN.Addrのバルク登録が7分間、許可されていることを了解している。その4分後、HA101は、MN100からアドレスWLAN.Addrをリフレッシュするためのバルク登録BUメッセージを受信したものとする。アドレスWLAN.Addrのバルク登録有効期間が満了していないので、HA101は、そのバインディング・リフレッシュ要求をアクセプトする。さらにその4分後、HA101は、MN100からアドレスWLAN.Addrをリフレッシュするためのバルク登録BUメッセージを受信したものとする。アドレスWLAN.Addrのバルク登録有効期間が満了しているので、HA101は、アドレスWLAN.Addrあてにパケットを送信する前に、アドレスWLAN.Addrを検証する手順に移行する。
また、MN100が新しいアドレスWLAN.Addr2を登録するためのバルク登録BUメッセージを送信した場合、HA101は、アドレスWLAN.Addr2がバインディング・キャッシュ270内に存在しないので、アドレス検証プロセスをトリガする。アドレスWLAN.Addr2のアドレス検証が成功すると、HA101は、アドレスWLAN.Addr2が関連するバインディング・エントリをアップデートする。このように、HA101がアドレスWLAN.Addrのバルク登録有効期間をMN100に通知するので、MN100はアドレスWLAN.Addrに対して、どのタイプのBUメッセージを送信すべきかを知得できる。この意味は、MN100にとって、アドレスWLAN.Addrを使用したパケット転送が遅れることがないということである。
<第2の実施の形態:MNがバルク登録可否をHAに問い合わせる>
第2の実施の形態では、MN100がHA101に対して、バルク登録を希望する特定のIPアドレスがバルク登録可能か否かを問い合わせる。図8は第2の実施の形態の通信シーケンスを示す。まず、第1の実施の形態と同様に、MN100は3Gセルラ・インタフェース1000とWLANインタフェース1001を有し、3Gセルラ・インタフェース1000、WLANインタフェース1001はそれぞれ、アドレス3G.Addr、WLAN.Addrを使用しているものとする。また、MN100は図1に示すように、ホームネットワーク・ドメイン10外をローミングしており、MN100が現在使用している気付アドレスに関してHA101をアップデートするものとする。
このため、MN100は、アドレス3G.Addrを個別にHA101に登録するために3Gセルラ・インタフェース1000から個別登録BUメッセージS70をHA101に送信する。同様に、MN100は、アドレスWLAN.Addrを個別にHA101に登録するためにWLANインタフェース1001から個別登録BUメッセージS71をHA101に送信する。第2の実施の形態では、個別登録BUメッセージS71はさらに、アドレスWLAN.Addrがバルク登録可能か否かを問い合わせるバルク登録許可要求を含む。
HA101では、アドレス3G.Addrが目的の送信元から来たと検証されることがイングレス・フィルタリングにより保証されるので、HA101は個別登録BUメッセージS30をアクセプトして、アドレス3G.Addrを個別にバインディング確認(OK)するための個別登録BAメッセージS32をMN100に送り返す。同様に、アドレスWLAN.Addrに関してもイングレス・フィルタリングされるので、HA101は、アドレスWLAN.Addrを個別にバインディング確認(OK)するとともに、MN100が複数の気付アドレスを登録していることを検出して、アドレスWLAN.Addrのバルク登録を許可する応答(BLK−OK)を記述した個別登録BAメッセージS33をMN100に送り返す。
ここで、第1の実施の形態と異なり、MN100がバルク登録許可を要求する利点として、HA101は、特定のIPアドレスに対してバルク登録を使用しようとしているか否かを推測する必要がない。この意味は、HA101がMN100からバルク登録許可要求を受信しない場合に、MN100がバルク登録を必要としていないものと推測できるということである。
<バルク登録許可要求メッセージ>
図9は、第2の実施の形態においてアドレスWLAN.Addrがバルク登録可能か否かを問い合わせるバルク登録許可要求を含む個別登録BUメッセージS71のフォーマットを示す。メッセージ71は、パケットヘッダ80とモビリティ・オプション81を有する。パケットヘッダ80はメッセージ送信元と、メッセージタイプとメッセージ長の各フィールドを有し、メッセージ送信元は、IPv4又はIPv6のアドレスであるが、これには限定されない。モビリティ・オプション81は、バインディング識別子(BID)オプション810とフラグ811を含む。BIDオプション810は通常、MN100とHA101が自身のバインディング・キャッシュをルックアップするための識別子を示し、関連するバインディング・エントリをより早く発見するのに使用される。第2の実施の形態におけるフラグ811は、モビリティ・オプション81内に1ビットとして設けられて、デフォルト値(=0)のときに、パケットヘッダ80内の送信元アドレスに対してバルク登録許可を要求しないことを示し、他方、フラグ811=1のときには、パケットヘッダ80内の送信元アドレスに対してバルク登録許可を要求することを示す。
当業者であれば、フラグ811は、オプションタイプとして設けることができることは明らかである。但し、本発明はこれにも限定されない。オプションタイプとして設ける場合には、MN100は、複数の個別登録BUメッセージによるパケットオーバヘッドを最適化することを希望するときには、1つの個別登録BUメッセージのみにこのオプションを添付することもできる。このオプションは、複数のIPアドレスに対してバルク登録許可を要求していることを示す。同様に、変形例として、フラグ811は、BIDオプション810内に設けられたフラグであってもよい。また、このオプションは、MN100がHA101に送信する他の形態のメッセージに添付することもできる。
フラグ811の使用例を説明する。MN100は、アドレスWLAN.Addrを個別にHA101に登録するためにWLANインタフェース1001から個別登録BUメッセージS71をHA101に送信する際に、フラグ811を1にセットしてアドレスWLAN.Addrがバルク登録可能か否かをHA101に問い合わせる。HA101では、何らかのチェック機能により、アドレスWLAN.Addrがバルク登録可能か否かを決定する。このチェック機能としては、HA101がHSSサーバやAAAサーバへ問い合わせ、MN100がバルク登録サービスに加入しているか、又はアドレスWLAN.Addrが信頼できる外部の3GPPオペレータから来たものかをチェックする。但し、これには限定されない。チェックが成功すると、HA101は、アドレスWLAN.Addrがバルク登録可能であること(BLK−OK)を示す個別登録BAメッセージをMN100に送り返す。また、変形例として、HA101はMN100に対し、アドレスWLAN.Addrのバルク登録有効期間(例えば7分間)も通知する。
<MNの動作>
図10は、MN100がバルク登録の可否を判断する処理を示す。この処理は、BUメッセージをHA101に送信する必要がある場合に、バルク登録可否判断エンジン24がモビリティ・バインディング・エンジン22からトリガ信号を受信したときにスタートし(ステップS90のBU送信トリガ)、データベース・モジュール23のバインディング・アップデートリスト230から1つのエントリを引き出す(ステップS91)。次いで、取得したエントリにおけるIPアドレスがバルク登録を許可されているか否かをチェックし(ステップS92)、許可されていない場合にはステップS93に進み、他方、許可されている場合にはステップS94に進む。ステップS93では、そのエントリのIPアドレスに対して、個別登録しなければならない旨(個別登録=バルク登録不可)をマークしてステップS95に進む。ステップS94では、そのエントリのIPアドレスに対して、バルク登録できる旨(バルク登録可)をマークしてステップS95に進む。ステップS95では、バインディング・アップデートリスト230におけるすべてのエントリをチェックしたか否かを判定し、チェックしていなければステップS91に戻り、他方、チェック済みであれば結果をリスト化してモビリティ・バインディング・エンジン22に転送する。モビリティ・バインディング・エンジン22はこのリストに基づいて個別登録BUメッセージ又はバルク登録BUメッセージを選択的に生成する。
上記の処理の例を説明する。MN100は既に、アドレス3G.Addr、WLAN.AddrをHA101に登録しているものとする。またMN100は、アドレスWLAN.Addrがバルク登録可能な旨を通知されている。すなわち、MN100におけるアドレス検証情報232では、アドレスWLAN.Addrがバルク登録を許可されている。MN100は、HA101における現在のバインディングをリフレッシュする必要がある場合、アドレスWLAN.Addrのバルク登録が許可されているか否かをチェックする。このチェックは、アドレス検証情報232がアドレスWLAN.Addrを含むか否かをチェックすることにより可能である。含むということは、MN100がアドレスWLAN.Addrをバルク登録BUメッセージに使用できることを意味する。
また、HA101は、MN100がIPアドレスをバルク登録に使用可能か否かをアップデートすることができる。変形例として、HA101は、図9に示すメッセージを使用して、MN100のバルク登録可否ステータスをアップデートすることができる。例えばHA101は、アドレスWLAN.Addrが既にバルク登録に使用できないことを決定すると、アドレスWLAN.AddrのBIDオプション810とフラグ811=0を含むBAメッセージを送信する。HA101はこのBAメッセージにより、MN100に対し、アドレスWLAN.Addrが既にバルク登録に使用できないことを通知する。なお、メッセージの種類はBAメッセージに限らず、Binding Revocationメッセージや、Binding Errorメッセージなどを使用してもよい。
<HAの処理>
図11は、HA101がMN100からのバルク登録BUメッセージを検証する処理を示す。この処理は、MN100からのバルク登録BUメッセージを受信して、バルク登録検証エンジン28がモビリティ・バインディング・エンジン26からトリガ信号を受信したときにスタートし(ステップS100のバルクBU受信トリガ)、まず、バインディング・キャッシュ270から、受信したバルク登録BUメッセージ内のIPアドレスに関連する情報(1つのエントリ)を引き出す(ステップS101)。次いで、取得したエントリにおけるIPアドレスがバルク登録を許可されているか否かをチェックし(ステップS102)、許可されていない場合にはステップS103に進み、そのエントリのIPアドレスに対して、受信したバルク登録BUメッセージ内のIPアドレスが「間違った形式のBUメッセージで送信された旨」をマークする。他方、許可されている場合にはステップS104に進む、受信したバルク登録BUメッセージ内のIPアドレスが「正しい形式のBUメッセージで送信された旨」をマークする。次いで、キャッシュ270において関連エントリをすべてチェックしたか否かを判定し、チェックしていなければステップS101に戻り、他方、チェック済みであれば結果をリスト化してモビリティ・バインディング・エンジン26に転送する。HA101は、「間違った形式のBUメッセージで送信されたIPアドレス」に対してアドレス検証を実行するか、またはバルク登録が許可されていないことを示すレスポンスメッセージを返す。
上記の処理の例を説明する。HA101は現在、MN100のアドレス3G.Addr、WLAN.Addrのアクティブなバインディングを有しているものとする。またHA101は、アドレスWLAN.Addrがバルク登録可能な旨を了解している。HA101はMN100から、アドレスWLAN.Addrをリフレッシュするためのバルク登録BUメッセージを受信すると、データベース・モジュール27により、アドレスWLAN.Addrのバルク登録が許可されているか否かをチェックする。このチェックは、アドレスWLAN.Addrがアドレス検証情報272内に存在するか否かを識別することにより可能である。すなわち、存在する場合には、アドレスWLAN.Addrのバルク登録が許可されていることを示し、存在しない場合には、アドレスWLAN.Addrのバルク登録が許可されていないことを示す。このステータスにより、HA101は、アドレスWLAN.Addrのリフレッシュ要求をアクセプトするか、又は拒絶する。その結果、拒絶する場合には、HA101は、アドレスWLAN.Addrあてにパケットを転送する前にアドレスWLAN.Addrを検証する。
このように、MN100が、バルク登録BUメッセージ内にバルク登録許可要求を付加することにより、HA101がMN100に対して、特定のアドレスに対してバルク登録をするつもりであるか否かを推測する必要性を除去することができる。また、HA101の負荷を減少することができ、特定のアドレスあてのパケット転送が遅延することを防止することができる。
<第3の実施の形態:プロキシがアドレス検証を援助>
第3の実施の形態では、MN100のIPアドレスの検証を助けるためにプロキシ・エンティティ(代理ノード)が用いられている。プロキシ・エンティティは、望ましくはプロキシ・モバイルIP(PMIP)プロトコルを採用しているローカル・モビリティ・アンカー(LMA)である。図12は、プロキシ1100を用いた第3の実施の形態の通信シーケンスを示す。まず、第1、第2の実施の形態の同様に、MN100は3Gセルラ・インタフェース1000とWLANインタフェース1001を有し、3Gセルラ・インタフェース1000、WLANインタフェース1001はそれぞれ、アドレス3G.Addr、WLAN.Addrを使用している。また、MN100は図1に示すように、ホームネットワーク・ドメイン10外をローミングしており、MN100が現在使用している気付アドレスに関してHA101をアップデートするものとする。このため、MN100は、アドレス3G.Addrを個別にHA101に登録するために3Gセルラ・インタフェース1000から個別登録BUメッセージS110をHA110に送信する。同様に、MN100は、アドレスWLAN.Addrを個別にHA101に登録するためにWLANインタフェース1001から個別登録BUメッセージS111をHA101に送信する。
HA101では、アドレス3G.Addrが目的の送信元から来たことが検証されることがイングレス・フィルタリングにより保証されるので、HA101は個別登録BUメッセージS30をアクセプトして、アドレス3G.Addrを個別にバインディング確認(OK)するための個別登録BAメッセージS112をMN100に送り返す。同様に、アドレスWLAN.Addrに関してもイングレス・フィルタリングされるため、個別登録BAメッセージS113をMN100に送り返す。HA101は、MN100が複数の気付アドレスを登録していることを検出するが、第3の実施の形態では、アドレスWLAN.Addrを個別にバインディング確認(OK)するとともに、バルク登録BUメッセージを検証するプロキシ1100が外部ネットワーク・ドメイン11に存在すること(図のproxy)を記述した個別登録BAメッセージS113をMN100に送り返す。MN100がプロキシ1100の配下に位置することをHA101が知得する方法としては、アドレスWLAN.AddrのプリフィックスからMN100が信頼できる外部3GPPオペレータ・ネットワークに属していることを識別する方法がある。但し、これには限定されない。
MN100は、個別登録BAメッセージS113を受信すると、プロキシ1100のIPアドレスをクエリ・メッセージS114で外部ネットワーク・ドメイン11に問い合わせる(図のQuery proxy Addr)。クエリ・メッセージS114により、プロキシ1100は自身のIPアドレスを応答メッセージS115でMN100に送り返す(図のResponse proxy Addr)。第3の実施の形態では、クエリ・メッセージS114と応答メッセージS115は、DNS(domain name service)プロトコルを用いることができるが、本発明はこれには限定されない。MN100は、プロキシ1100のIPアドレスを知得すると、アドレスWLAN.Addrの検証を要求するためのバルク登録BUメッセージS116を3Gセルラ・インタフェース1000からプロキシ1100に送信する。
バルク登録BUメッセージS116はプロキシ1100に対し、メッセージS116内に検証要求するIPアドレス(すなわちアドレスWLAN.Addr)が記述されていることを指示する。プロキシ1100にアドレスWLAN.Addrを通知する理由は、メッセージS116がMN100とHA101との間で暗号化されているからである。この意味は、プロキシ1100がメッセージS116を解読してアドレスWLAN.Addrが真か否かを検証できないということである。そこで、プロキシ1100は一旦、メッセージS116内で検証要求されているIPアドレスがMN100に属するものとみなして、メッセージS116に署名したバルク登録BUメッセージS117をHA101に送信する。この署名は、CGA(cryptographically generated addresses)プロトコルを用いることができるが、本発明はこれには限定されない。CGAプロトコルの場合、プロキシ1100は、バルク登録BUメッセージS117をプロキシ1100の秘密キーで署名し、HA101は、受信したバルク登録BUメッセージS117をプロキシ1100の公開鍵を使用して検証する。
MN100のバルク登録BUメッセージを検証するためにプロキシ1100を使用する利点は、MN100がIPアドレスを暗号化する必要があるという複雑さを除去することにある。MN100が暗号化する必要性をプロキシ1100(例えばサーバ)にシフトすることにより、MN100の処理する負担を軽減することができる。なお、サーバであるプロキシ1100は、MN100より計算能力が高い。
<バルク登録BUメッセージ>
図13は第3の実施の形態におけるバルク登録BUメッセージS116、S117のフォーマットを示す。メッセージS116、S117は、パケットヘッダ120と、モビリティ・オプション121と、モバイルノード識別子122と、検証オプション123を含む。パケットヘッダ80はメッセージ送信元と、メッセージタイプとメッセージ長の各フィールドを有し、メッセージ送信元は、IPv4又はIPv6のアドレスであるが、これには限定されない。モビリティ・オプション121は、バインディング識別子(BID)オプション1210とIPアドレス・オプション1211を含む。BIDオプション1210は通常、MN100とHA101がそれぞれ自身のバインディング・アップデートリスト230、バインディング・キャッシュ270をルックアップするための識別子を示し、関連するバインディング・エントリをより早く発見するのに使用される。
IPアドレス・オプション1211は、パケットヘッダ120内の送信元アドレスに加えて、MN100がHA101に登録を希望する1つの追加のIPアドレスを含む。この追加のIPアドレスは、BIDオプション1210内のBIDに関連している。バルク登録BUメッセージS116、S117は、1を超えるIPアドレス・オプション1211を含んでもよい。これは、バルク登録BUメッセージS116、S117が複数のBIDオプション1210と複数のIPアドレス・オプション1211を含むことを意味する。モバイルノード識別子122には、このバルク登録BUメッセージS116、S117を送信したMN100の識別子を記述する。モバイルノード識別子122により、プロキシ1100は、バルク登録BUメッセージS116を検証するときに、追加のIPアドレスがMN100に属するかを知得することができる。
検証オプション123は、IPアドレス・オプション1230と、パラメータ・オプション1231と、署名オプション1232を含む。IPアドレス・オプション1230には、MN100がプロキシ1100に検証させる追加のIPアドレスを記述する。IPアドレス・オプション1230におけるIPアドレスとIPアドレス・オプション1211におけるIPアドレスは、望ましくは同じである。パラメータ・オプション1231は、HA101に対して、プロキシ1100がバルク登録BUメッセージS116を検証するために使用するセキュリティ・パラメータを指示する。望ましくは、パラメータ・オプション1231内の情報は、プロキシ1100の公開鍵か、又はプロキシ1100がCGAで使用する偶数のパラメータであるが、本発明ではこれには限定されない。
最後に、署名オプション1232は、一般的にはプロキシ1100の署名を含む。この署名はHA101に対し、バルク登録BUメッセージS117内のIPアドレスが真であることをプロキシ1100が検証したことを示す。この署名は望ましくは、バルク登録BUメッセージS117の全体とプロキシ1100の秘密鍵の連結である。オプションとして、パケットサイズを低減するために、この署名は、バルク登録BUメッセージS117の全体とプロキシ1100の秘密鍵の連結の一部でもよい。
プロキシ1100がバルク登録BUメッセージS116に署名する理由は、悪意のあるノードがリプレイ・アタックを仕掛けることを防止するためである。リプレイ・アタックとは、悪意のあるノードがバルク登録BUメッセージS116、S117を盗み見て改変し、後でHA101に送信することを言う。例えばプロキシ1100がアドレスWLAN.Addr用のバルク登録BUメッセージS116を検証する場合、プロキシ1100は、検証オプション123のみにアドレスWLAN.Addrを記述して署名する。HA101は、この署名が正しいと確認すると、アドレスWLAN.Addrをアクセプトしてバインディング・キャッシュ230に登録する。
さて、悪意のあるノードがバルク登録BUメッセージS117を盗み見て、IPアドレス・オプション1211内のIPアドレスを他のIPアドレスに改変し、この改変したバルク登録BUメッセージS117をHA101に送信したとする。上記のように署名が正しいと確認したHA101は、検証オプション123内のアドレスWLAN.AddrがIPアドレス・オプション1211内のIPアドレスと異なることに気付く。このため、HA101は、送信元が悪意のあるノードであるとして、バインディング・キャッシュ230からアドレスWLAN.Addrを削除する。このような動作により、悪意のあるノードがアドレスWLAN.Addrを悪用して通信サービスが崩壊することを防止することができる。悪意のある行為を防止するためには、プロキシ1100は、バルク登録BUメッセージS117の全体に署名すべきである。この方法により、悪意のあるノードがバルク登録BUメッセージS117を改変することを困難にすることができる。
<プロキシの処理>
図14は、プロキシ1100がバルク登録BUメッセージS116内のIPアドレス検証を援助する処理を示す。この処理は、バルク登録BUメッセージS116を受信したときにスタートし(ステップS130)、メッセージS116の検証オプション123内から1つのIPアドレスを引き出して(ステップS131)、そのIPアドレスをMN100が実際に使用しているか否か、すなわちそのIPアドレスがMN100に属するか否かをチェックする(ステップS132)。このチェック方法の1つとして、プロキシ1100のデータベースにおいてそのIPアドレスがバルク登録BUメッセージS116内のモバイルノード識別子に対応しているかを識別する。そのIPアドレスがMN100に属しないと判定した場合には、バルク登録BUメッセージS116を拒絶して検証オプション123内の他のIPアドレスをチェックせず(ステップS133)、次いでアイドルモードに戻る(ステップS136)。
他方、ステップS132においてそのIPアドレスがMN100に属すると判定した場合には、検証オプション123内に残りのIPアドレスが存在するか否かをチェックし(ステップS134)、存在する場合にはステップS131に戻る。ステップS134において検証オプション123内に残りのIPアドレスが存在しない場合には、バルク登録BUメッセージS116の全体に署名してHA101に転送し(ステップS135)、次いでアイドルモードに戻る(ステップS136)。
プロキシ1100の処理をさらに詳しく説明する。プロキシ1100は、バルク登録BUメッセージS116を受信すると、モバイルノード識別子122に基づいてバルク登録BUメッセージS116がMN100から来たことを確認する。また、検証オプション123内のIPアドレス・オプション1230により、プロキシ1100は、MN100がアドレスWLAN.AddrをHA101に登録したいことを知得する。プロキシ1100は自身のデータベースをチェックして、アドレスWLAN.Addrが外部ネットワーク・ドメイン11でMN100に割り当てられたものかを識別する。望ましくは、プロキシ1100は、DCHPサーバに問い合わせて、アドレスWLAN.AddrがMN100に割り当てられたものかを検証する。DCHPサーバからの応答が肯定である場合、プロキシ1100は、署名を署名オプション1232に添付し、バルク登録BUメッセージS117をMN100のHA101に転送する。逆に、DCHPサーバからの応答が否定である場合、プロキシ1100は、バルク登録BUメッセージS116を拒絶する。その結果、プロキシ1100は、バルク登録BUメッセージS116の送信元が悪意のあるノードの疑いがあるとして今後のチェックのためにマークすることができる。
プロキシ1100を使用すると、HA101がMN100のIPアドレスを検証するために通信するエンティティの数を減少することができる。例えばHA101は、グローバル通信ドメイン12配下の数千のモバイルノードではなく、グローバル通信ドメイン12内の選択されたアンカーポイントと通信するのみでよい。また、通信チャネルが減少すると、MN100がパケット転送のために気付アドレスを使用するのが遅れることを防止できる。
<第4の実施の形態:MN/HAがバルク登録可否を外部ネットワークに応じて決定>
第4の実施の形態では、例えばMN100は、バルク登録を行うか否かの判断を、外部ネットワーク・ドメイン11において初期起動したときに、以前にHA101により通知されていた情報に基づいて行う。望ましくは、その情報は、どのアクセスネットワークのIPアドレスがバルク登録可能か(バルク登録として使用されているか)の情報である。但し、本発明はこれには限定されない。例えばHA101は、MN100が接続(connect)しているアクセスネットワークに基づいてMN100のバルク登録動作をアップデートしている。HA101は、MN100が全世界的に相互に動作可能なマイクロ波アクセス・ネットワーク(WiMAXネットワーク)に接続(connect)していることを了解すると、MN100のどのWiMAXアドレスもバルク登録可能であること(BLK−OK)を通知する。望ましくは、MN100が接続(connect)しているどのアクセスネットワークがバルク登録可能かをHA101がいかに知得するかは、ホームネットワーク・ドメイン10と外部ネットワーク・ドメイン11との間の交渉次第である。MN100は、WiMAXアドレスについてHA101をアップデートしたいときにはいつでも、WiMAXアドレスをバルク登録するためのバルク登録BUメッセージをHA101に送信する。
変形例として、どのタイプのIPアドレスがバルク登録可能かを示す情報を予めMN100に設定しておく。この手法によれば、この情報をMN100とHA101との間で通信する必要性を除去することができる。MN100は、どのタイプのアクセスネットワークがHA101にとって信頼できるかを知得していると、HA101に送信すべきBUメッセージのタイプがわかる、したがって、MN100がパケット転送のために気付アドレスを使用するのが遅れることを防止できる。
<第5の実施の形態:MNが送信元アドレスを切り換えてバルク登録有効期間を延長>
第5の実施の形態では、MN100がバルク登録BUメッセージを使用して個々のアドレスのバルク登録有効期間を延長する。この手法を実現するために、MN100は、HA101におけるIPアドレスを更新するときに、インタフェース1000、1001を交互に使用する。この手法により、バルク登録BUメッセージの送信元アドレスで送信されるIPアドレスが交互にイングレス・フィルタリングにより検証される。
以下に具体例を説明する。MN100がアドレス3G.Addr、WLAN.Addrの両方をHA101に登録する場合、WLANアクセスネットワーク111が不安定であるので、HA101は、アドレスWLAN.Addrのバルク登録有効期間として5分間を割り当てる。また、3Gセルラ・アクセスネットワーク11が安定しているので、HA101は、アドレス3G.Addrのバルク登録有効期間として7分間を割り当てる。5分後、MN100は、HA101におけるアドレス3G.Addr、WLAN.Addrの登録をリフレッシュする必要がある場合、アドレス3G.Addrのバルク登録有効期間が未だアクティブであるので、送信元アドレスをアドレスWLAN.Addrとし、追加のIPアドレスをアドレス3G.Addrとしたバルク登録BUメッセージを送信する。この手法により、イングレス・フィルタリングによりアドレスWLAN.Addrが検証されるのみならず、アドレス3G.Addr用の個別登録BUメッセージを送信する必要性を除去することができる。イングレス・フィルタリングによりアドレスWLAN.Addrが検証されると、HA101は、アドレスWLAN.Addrのバルク登録有効期間を延長する。
変形例として、MN100のすべてのIPアドレスのバルク登録有効期間を同じとする。このため、送信元アドレスを順番に入れ換えるか、2つのIPアドレスをペアリングし(一方を送信元アドレスとする)、バルク登録BUメッセージを使用して各IPアドレスのバルク登録有効期間を延長することができる。
MN100がHA101におけるIPアドレスの登録を更新するときに、インタフェース1000、1001を交互に使用できるということは、特定のIPアドレスのバルク登録有効期間を、HA101と素早く交渉して延長することができるということである。このHA101との効率的な交渉により、MN100がパケット転送のための気付アドレス使用が遅れることを防止できる。
<第6の実施の形態:バルクBA>
第6の実施の形態では、図4において、HA101は個別登録BUメッセージS30、S31、バルク登録BUメッセージ34aの応答として、MN100に複数の個別登録BAメッセージS32、S33、S34bを送り返す代わりに、1つのBAメッセージ(以下、バルク登録BAメッセージ34c)を送り返す。図15はバルク登録BAメッセージ34cのフォーマットを示す。バルク登録BAメッセージ34cは、パケットヘッダ140と、フラグ141と、モビリティ・オプション142を含む。パケットヘッダ140は、メッセージ送信元と、メッセージタイプとメッセージ長の各フィールドを有し、メッセージ送信元は、IPv4又はIPv6のアドレスであるが、これには限定されない。フラグ141は、HA101がMN100に対し、このバルク登録BAメッセージ34cが各IPアドレスに関するバルク登録についての複数の異なる通知を含むか否かを通知する。フラグ141は1ビットでよく、デフォルト値(=0)は、このバルク登録BAメッセージ34c内のすべての通知が同じであることを示す。他方、フラグ141=1の場合、このバルク登録BAメッセージ34c内の通知が異なることを示す。この場合、MN100は、モビリティ・オプション142内の個々の通知を検査する必要がある。
モビリティ・オプション142は、BIDオプション1420と、シーケンス番号オプション1421と、ステータス・オプション1422と、通知オプション1423を含む。BIDオプション1420は、MN100がHA101に登録するIPアドレスに割り当てられたBIDを示す。望ましくは、BIDオプション1420に記述されているBIDは、MN100がHA101に送信したバルク登録BUメッセージ34aに記述されているBIDである。シーケンス番号オプション1421は典型的には、HA101が受信したバルク登録BUメッセージ34aで伝送されたシーケンス番号を示す。シーケンス番号により、MN100は、MN100が送信したバルク登録BUメッセージ34aにこのバルク登録BAメッセージ34cが対応しているかを識別することができる。
ステータス・オプション1422はMN100に対して、特定のIPアドレスの登録がHA101において成功したか否かを通知する。ステータス・オプション1422はさらに、典型的にはMN100に対してHA101が登録を拒否した理由も通知する。最後の通知オプション1423は、特定のIPアドレスがバルク登録可能か否かのHA101の意図を示す。望ましくは、通知オプション1423はさらに、バルク登録有効期間を示す。このバルク登録BAメッセージは、1を超えるモビリティ・オプション142を含むことができる。すなわち、バルク登録BAメッセージ34cは、個別登録BUメッセージS30、S31、バルク登録BUメッセージ34aで登録が要求された個々のアドレスそれぞれに対応する複数のBIDオプション1420と、複数のシーケンス番号オプション1421と、複数のステータス・オプション1422と、複数の通知オプション1423を含むことができる。
変形例として、このバルク登録BAメッセージ34cは、同じシーケンス番号を含んでもよい。例えば、もしMN100が1つのバルク登録BUメッセージ34aをHA101に送信した場合、1つのシーケンス番号によりこのバルク登録BUメッセージ34aを識別する。この場合、バルク登録BAメッセージ34cのパケットサイズを最適化するために、HA101は、すべての登録されたIPアドレスに対して1つのシーケンス番号オプション1421を使用することができる。
他の変形例として、バルク登録BAメッセージ34cは、同じステータスを含んでもよい。例えばHA101は、もしバルク登録BUメッセージ34a内のすべてのIPアドレス登録をアクセプトする場合、1つのステータス・オプション1422を使用してすべてのIPアドレスのステータスを示すことができる。さらに他の変形例として、このバルクBAメッセージは、同じ通知を含んでもよい。例えばHA101は、もしすべての登録されたIPアドレスに対して同じバルク登録有効期間を割り当てる場合、バルク登録BAメッセージ34cのパケットサイズを最適化するために、1つの通知オプション1423を使用して共通のバルク登録有効期間を示すことができる。
さらには、登録されたすべてのIPアドレスのそれぞれに対するモビリティ・オプション142を含めるのではなく、1つのモビリティ・オプション142を含めて、すべてのIPアドレスが登録されたことを示してもよい。
この場合、バルク登録BAメッセージ34cに含まれている1つのモビリティ・オプション142の中のBIDオプション1420の値や、ステータス・オプション1422の値として、すべてのIPアドレスが登録されたことを示す特別な値を指定することが望ましい。
図16は、MN100がバルク登録BAメッセージ34cを受信した場合の処理を示す。この処理は、バルク登録BAメッセージ34cをHA101から受信した場合にスタートし(ステップS150)、受信したメッセージ34cから1つのモビリティ・オプション142を引き出す(ステップS151)。1つのモビリティ・オプション142を引き出すと、モビリティ・オプション142内のステータス・オプション1422に基づいて1つのIPアドレス登録要求がアクセプトされたか否かをチェックする(ステップS152)。アクセプトされなかった場合にはそのIPアドレスに対して「拒絶」をマークし(ステップS153)、次いでステップS157に進む。
ステップS152においてアクセプトされた場合には、そのIPアドレスがバルク登録されたか否かをチェックする(ステップS154)。バルク登録されなかった場合には、そのIPアドレスに対して「アクセプト」と「バルク登録不可」をマークし(ステップS155)、次いでステップS157に進む。ステップS154においてバルク登録された場合には、そのIPアドレスに対して「アクセプト」と「バルク登録可」をマークし(ステップS156)、次いでステップS157に進む。ステップS157では、受信したメッセージ34c内に次のモビリティ・オプション142があるか否かをチェックし、もしあればステップS151に戻り、他方、最後のモビリティ・オプション142であれば、バインディング・アップデートリスト230をアップデートするために、処理結果をリスト化してモビリティ・バインディング・エンジン22に転送する(ステップS158)。
具体例を説明する。MN100は現在、HA101におけるアドレス3G.Addr、WLAN.Addrをリフレッシュするためにバルク登録を使用しているものとする。MN100は、許可されているアドレス3G.Addr、WLAN.Addrのバルク登録有効期間に基づいて、アドレス3G.Addr、WLAN.Addrのバルク登録有効期間がまもなく満了することを知得している。このことは、MN100がアドレス3G.Addr、WLAN.Addrを個別にリフレッシュするために個別登録BUメッセージを送信する必要があることを黙示している。HA101は、これらの個別登録BUメッセージを受信すると、アドレス3G.Addr、WLAN.Addrそれぞれの新しいバルク登録有効期間をMN100に通知する必要がある。そこで、HA101は、個別登録BAメッセージ34bを送信する代わりに、バルク登録BAメッセージ34cを使用してアドレス3G.Addr、WLAN.Addrの各バルク登録有効期間をMN100に通知する。この手法により、HA101がMN100に送信しなければならないメッセージ数を最適化することができる。
バルク登録BAメッセージ34cを使用することにより、HA101がMN100に対して、MN100のIPアドレスのバルク登録サポートのステータスを通知する方法を効率化することができる。したがって、MN100がパケット転送のために気付アドレスを使用するのが遅れることを防止できる。
<第7の実施の形態:HAがバルクBU送信IFを指示>
第7の実施の形態では、HA101がMN100に対し、IF1000、1001のうち、バルク登録BUメッセージ34aを送信すべきIFを指示する。図8を参照して第7の実施の形態について説明する。HA101からMN100に送信されるアドレスWLAN.Addrの個別登録BAメッセージS73は、バルク登録BUメッセージ34aを送信すべきIFを指示する。例えば、HA101は、MN100がIF1001(アドレスWLAN.Addr)からバルク登録BUメッセージ34aを送信することを希望するものと仮定する。この場合、MN100がHA101におけるアドレス3G.Addr、WLAN.Addrの両方の登録を更新するためのバルク登録BUメッセージ34aを送信する必要があるときには、MN100は、HA101により指示されたIF1001(アドレスWLAN.Addr)からバルク登録BUメッセージ34aを送信する。つまりこの場合、3G.Addrがバルク登録されるアドレスとなる。なお、バルク登録BUメッセージを送信するべきIFを指示する代わりに、バルク登録を許可するアドレスを指示してもよい。例えば、HA101は、MN100のアドレス3G.Addrを、アドレスWLAN.Addrの登録BUメッセージに挿入してバルク登録メッセージとして送信してもよいと判断した場合には、個別登録BAメッセージS72に、バルク登録を指示する情報が含まれる。また、HA101は、MN100のアドレスWLAN.Addrを、アドレス3G.Addrの登録BUメッセージに挿入してバルク登録メッセージとして送信してもよいと判断した場合には、個別登録BAメッセージS73に、バルク登録を指示する情報が含まれる。
<第8の実施の形態:UEのIF1000がホームネットワーク・ドメイン10に直接接続>
第8の実施の形態では、図17に示すように、UE100のIF1000が3Gセルラ110を介してUE100のホームネットワーク・ドメイン10に直接接続し、IF1001がWLAN111(又はWiMAX、HRPD:High Rate Packet Data)などのNon−3GPPネットワーク(Non−3GPP Network)を介してホームネットワーク・ドメイン10へ接続している場合に、HA101は、WLAN111から取得したIPアドレスをCoAとして通知・登録するための個別登録BUメッセージ送信するべきIFを指示する。本発明の第7の実施の形態との違いは、IF1000(3Gインタフェース、3G−IF)が接続しているネットワークが外部ネットワーク・ドメインではなく、ホームネットワーク・ドメイン10であるため、HA101によって指定されたIFから送信されるメッセージが、バルク登録BUメッセージではなく、IF1001(WLANインタフェース、WLAN−IF)に関するCoAを含む個別登録BUメッセージである点である。つまり、HA101はBUメッセージを送信するIFを指定するが、それを受けたUE100が送信するBUメッセージは、バルク登録BUメッセージに限らず、図17に示す接続形態の場合には、個別登録BUメッセージを指定されたIFから送信する。
本実施の形態で述べるように、UE100が、バルクBUメッセージだけでなく、個別登録BUメッセージをIF1000から送信することができれば、3Gセルラ110が提供する様々な利点(安定した帯域(QoS)や接続状態、強固なセキュリティ、HA101への最短パス)を使用してBUメッセージを送信することができるという利点をUE100及びホームネットワーク・ドメイン10の双方で得られる。
通常3Gセルラ110への接続は、PMIPやGTP(GPRS Tunneling Protocol)などのネットワークベースの移動制御プロトコルによって管理されるため、UE100は、IF1000に割り当てられたアドレスを個別登録BUメッセージで通知する必要はなく、割り当てられたアドレスをホームアドレス(HoA)として直接使用することができる。一方、Non−3GPPネットワークへの接続ではUE100はMIPv6(又はMIPv4)を使用するため、WLAN111から割り当てられたアドレスをHoAに対するCoAとしてHA101へ登録する。
図18は、本実施の形態におけるメッセージシーケンスを表したものである。UE100は、Non−3GPPネットワークへ接続しているIF1001のIPアドレスをHA101へ登録するために、個別登録BUメッセージを送信する。UE100からの個別登録BUメッセージを受けたHA101は、UE100が登録済みのバインディング・キャッシュを更新するための個別登録BUメッセージを送信する際に、IF1000を使用することを許可するか否かを判断する。この判断は、例えば、通知されたCoAを割り当てたネットワーク(WLAN111)が、ホームネットワーク・ドメイン10にとって信頼できるネットワークであるか否かを確認することによって行うことができるが、これに限定されない。また、Non−3GPPネットワークが、HA101が属するオペレータによって管理されているネットワークである場合に、IF1000の使用を許可すると判断してもよい。さらにまた、IF1001から送信されたBUメッセージを一定回数受信した場合に、それ以降のBUメッセージをIF1000から送信するよう指示してもよい。さらにまた、UEが同一のNon−3GPPネットワークに一定時間以上接続している場合に、それ以降のBUメッセージをIF1000から送信するよう指示してもよい。
HA101が、IF1000を使用した個別登録BUメッセージの送信を許可する場合は、UE100に対し、IF1001の使用が許可されたこと(IF1000を使用すること)を示すステータスを含む個別登録BAメッセージをレスポンスとして返す。なお、HA101は、IF1000の使用が許可されている期間を示す3G−IF有効期間を通知してもよい。
個別登録BAメッセージを受けたUE100は、IF1001のIPアドレスに関するバインディング・アップデートリストエントリの中に、IF1000の使用が可能であることを示す情報を格納する。そして、バインディング・キャッシュを更新するために個別登録BUメッセージを送信する際に、バインディング・アップデートリストエントリを参照し、IF1000の使用が可能であるか否かを確認する。確認の結果、可能であった場合には、IF1001のIPアドレスを登録するための個別登録BUメッセージを、IF1000を使用して送信する。なお、3G−IF有効期間が通知されている場合は、3G−IF有効期間が経過した時点で、バインディング・アップデートリストエントリ内のIF1000使用可能情報は無効化される。無効化された後に個別登録BUメッセージを送信する場合には、IF1001が使用される。
図19は、個別登録BAメッセージのフォーマット例である。モビリティ・オプションには、登録対象のCoAに対応するBIDを含むBIDオプションと、CoAの登録結果を示すステータスと、次回以降の送信にIF1000を使用することが可能であるか否か(3G−IF使用許可情報)を示す通知オプションが含まれている。3G−IF使用許可情報は、ステータスがOKの場合に許可または不許可が示される。なお、ステータス、及び3G−IF使用許可情報は、BIDオプションの中に含まれていてもよいし、BAヘッダ(不図示)の中に含まれていてもよい。
図20は、IF1000を使用して送信する場合の個別登録BUメッセージのフォーマット例である。パケットヘッダの送信元アドレスにはIF1000に割り当てられているIPアドレス(ホームアドレス)が設定され、宛先アドレスにはHA101のアドレスが設定される。また、パケットヘッダには、BUヘッダも含まれている。さらに、モビリティ・オプションとして、ホームアドレスを含むHoAオプションや、登録対象のCoA及び対応するBIDが含まれる。また、個別登録BUメッセージが3G−IFを使用して送信されたメッセージであり、通常の個別登録BUメッセージと区別ができるように、3G−IF使用情報が含まれる。3G−IF使用情報は、BIDオプションの中にフラグ(3G−IF使用許可フラグ)として含まれていてもよい。またCoAもBIDオプションに含まれていてもよい。なお、IF1000を使用して送信する場合の個別登録BUメッセージとしては、IF1001から送信する場合の個別登録BUメッセージをIF1000のアドレスでカプセル化して送信する方法を用いてもよい。また、カプセル化の代わりに、CoAを含むルーティングヘッダを付加して送信してもよい。
図2を用いてUE100の構成を説明すると、バルク登録可否判断エンジン24は、本実施の形態では、3G−IF使用可否判断エンジンとして機能する。つまり、モビリティ・バインディング・エンジン22によって、バインディング・キャッシュの更新がトリガされると、3G−IF使用可否判断エンジンは、IF1001のIPアドレスを登録する際に、データベース・モジュール23内のバインディング・アップデートリスト230を参照し、IF1000を使用することが許可されているか否か、または、IF1000を使用することが指定されているか否かを確認する。確認の結果、IF1000の使用が許可されている場合には、図20に示されている個別登録BUメッセージを生成し、IF1001を用いて送信する。
図3を用いてHA101の構成を説明する。第7の実施の形態において、バルク登録検証エンジン28が許可するバルク登録は、UE100はIF1001のCoAをIF1000から送信するBUメッセージに含めてもよいということを意味する。したがって、本実施の形態のHA101は、第7の実施の形態におけるバルク登録の可否判断と同様の判断を行うと定義することができる。一方、本実施の形態のHA101は、3G−IFを使用して個別登録BUメッセージの送信の可否を判断すると定義することもできる。この場合、バルク登録検証エンジン28は、3G−IF使用検証エンジンとして機能する。つまり、モビリティ・バインディング・エンジン26によって受信された個別登録BUメッセージについて、UE100がIF1000を使用して送信することを許可するか否かを判断する。許可すると判断した場合には、バインディング・キャッシュ270に、許可を示す情報を格納するとともに、許可を示すステータスを含む個別登録BAメッセージを返す。
本発明の第8の実施の形態によって、UE100は、Non−3GPPネットワークに接続しているIFに割り当てられたIPアドレスを登録するBUメッセージを、3Gネットワークに接続するIFから送信することができることを知得することができ、不安定なNon−3GPPネットワークではなく、安定した信頼性のある3GPPネットワークを使用してBUメッセージを送信することが可能となる。
以上、本発明の望ましい実施の形態について説明したが、当業者であれば、本発明の範囲を逸脱しない範囲で、種々の変形が可能であることは明らかである。例えば、MN100については、当業者であれば、ネットワーク・モビリティ(NEMO)プロトコルを採用したモバイル・ルータにも適用することができることは明らかである。この場合、モバイル・ルータは、バルク登録BUメッセージ34aを使用してプリフィックスをHA101に登録する。このことは、プリフィックスの範囲内で構成されたIPアドレスがモバイル・ルータに属することを目視している。
また、本発明は、プロキシ・モバイルIP(PMIP)プロトコルを採用したモバイル・アクセス・ゲートウェイ(MAG)にも適用することができる。ここで、MAGは、前述した実施の形態におけるプロキシ1100であって、ローカル・モビリティ・アンカー(LMA)がIPアドレスを検証するのを助ける。このため、MAGは、バルク登録BUメッセージ34aを使用して多くのモバイル装置(モバイルノードやモバイル・ルータ)のIPアドレスをLMAに登録する。
加えて、本発明は、MIPv4(mobile IP version 4)を採用した外部エージェントにも適用することができる。この場合、外部エージェントはバルク登録BUメッセージ34aを使用して、MN100が複数のIPアドレスをHA101に登録するのを助ける。さらに、外部エージェントは、前述した実施の形態におけるプロキシ1100であって、HA101がIPアドレスを検証するのを助けることも可能である。
最後に、上記の実施の形態では、HA101がMN100からのBUメッセージS30、S31、S34a等の受信側であって、MN100へのBAメッセージS32、S33、S34b、S34c等の送信側である場合について説明したが、当業者であれば、HA101は、他のエンティティ(例えば通信相手のノード、通信相手のルータ、LMA)に置き換えても、MN100からのBUメッセージS30、S31、S34a等を受信してMN100へのBAメッセージS32、S33、S34b、S34c等を送信することも可能である。
なお、上記各実施の形態の説明に用いた各機能ブロックは、典型的には集積回路であるLSIとして実現される。これらは個別に1チップ化されてもよいし、一部又はすべてを含むように1チップ化されてもよい。ここでは、LSIとしたが、集積度の違いにより、IC、システムLSI、スーパーLSI、ウルトラLSIと呼称されることもある。また、集積回路化の手法はLSIに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブ ル・プロセッサーを利用してもよい。さらには、半導体技術の進歩又は派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。例えば、バイオ技術の適用などが可能性としてあり得る。
本発明によれば、特許請求の範囲に記載した発明の他に、以下のような発明が提供される。
(1)前記第2の手段は、前記移動管理装置が前記個別登録メッセージを受信した場合に、その送信元アドレスがネットワークのイングレス・フィルタリングにより検証されたものとみなして登録するとともに、その送信元アドレスあてに前記バルク登録を許可する応答メッセージを送信し、
前記第3の手段は、前記移動装置が前記バルク登録メッセージを送信する場合に、前記バルク登録を許可されたアドレス以外のインタフェースを送信元として、前記バルク登録を許可された送信元アドレスを送信元アドレスフィールド外に含む前記バルク登録メッセージを送信することを特徴とする請求項10に記載のアドレス登録システム。
(2)前記第2の手段は、前記移動管理装置が前記応答メッセージによりバルク登録有効期間を前記移動装置に通知し、
前記第3の手段は、前記移動装置が前記バルク登録メッセージを前記バルク登録有効期間内に送信することを特徴とする請求項10又は上記の(1)に記載のアドレス登録システム。
(3)前記第1の手段は、前記移動装置が前記バルク登録を希望するアドレスを送信元アドレスとする前記個別登録メッセージにより、バルク登録許可を前記移動管理装置に要求し、
前記第3の手段は、前記移動装置が前記バルク登録を許可されたアドレスを送信元アドレスフィールド外に含むバルク登録メッセージを前記移動管理装置に送信することを特徴とする請求項10、上記の(1)及び(2)のいずれか1つに記載のアドレス登録システム。
(4)前記第2の手段は、前記移動管理装置が前記応答メッセージにより代理ノードを移動装置に通知し、
前記第3の手段は、移動装置が前記バルク登録メッセージを前記応答メッセージにより通知された代理ノードに送信し、前記代理ノードが前記バルク登録メッセージに署名して前記移動管理装置に送信することを特徴とする請求項10に記載のアドレス登録システム。
(5)前記第2の手段は、前記移動管理装置が前記個別登録メッセージを受信した場合に、その送信元アドレスを有するインタフェースの接続するネットワークに応じて前記バルク登録を許可するか否かを決定することを特徴とする請求項10に記載のアドレス登録システム。
(6)前記第2の手段は、前記移動管理装置が前記複数の個別登録メッセージを受信した場合に、その送信元アドレスを登録するとともに、個々の送信元アドレスのバルク登録有効期間を前記移動装置に通知し、
前記第3の手段は、前記移動装置が、前記個々の送信元アドレスのバルク登録有効期間に応じて送信元アドレスを前記個々の送信元アドレス間で変更して前記バルク登録メッセージを前記移動管理装置に送信することを特徴とする請求項10に記載のアドレス登録システム。
(7)前記第2の手段は、前記移動管理装置が前記バルク登録を許可する応答メッセージとして、前記複数の個別登録メッセージの各送信元アドレスの登録を一括して確認するバルク登録確認メッセージを、前記移動装置の複数のインタフェースのいずれかあてに送信することを特徴とする請求項10、上記の(1)から(6)までのいずれか1つに記載のアドレス登録システム。
(8)前記第2の手段は、前記移動管理装置が前記バルク登録を許可する応答メッセージにより、前記バルク登録メッセージを送信するインタフェースを前記移動装置に指示することを特徴とする請求項10、上記の(1)、(2)、(4)(5)及び(7)のいずれか1つに記載のアドレス登録システム。
(9)前記個別登録メッセージを受信した場合に、その送信元アドレスがネットワークのイングレス・フィルタリングにより検証されたものとみなして登録するとともに、その送信元アドレスあてに前記バルク登録を許可する応答メッセージを送信することを特徴とする請求項17に記載の移動管理装置。
(10)前記応答メッセージによりバルク登録有効期間を前記移動装置に通知することを特徴とする請求項17又は上記の(9)に記載の移動管理装置。
(11)前記応答メッセージにより、前記移動装置が前記バルク登録メッセージを送信する代理ノードを前記移動装置に通知することを特徴とする請求項17又は上記の(9)に記載の移動管理装置。
(12)前記個別登録メッセージを受信した場合に、その送信元アドレスを有するインタフェースの接続するネットワークに応じて前記バルク登録を許可するか否かを決定することを特徴とする請求項17に記載の移動管理装置。
(13)前記複数の個別登録メッセージを受信した場合に、その送信元アドレスを登録するとともに、個々の送信元アドレスのバルク登録有効期間を前記移動装置に通知することを特徴とする請求項17に記載の移動管理装置。
(14)前記バルク登録を許可する応答メッセージとして、前記複数の個別登録メッセージの各送信元アドレスの登録を一括して確認するバルク登録確認メッセージを、前記移動装置の複数のインタフェースのいずれかあてに送信することを特徴とする請求項17、及び上記の(9)から(13)のいずれか1つに記載の移動管理装置。
(15)前記バルク登録を許可する応答メッセージにより、前記バルク登録メッセージを送信するインタフェースを前記移動装置に指示することを特徴とする請求項17、及び上記の(9)から(14)のいずれか1つに記載の移動管理装置。
本発明は、移動装置の複数のインタフェースに関連付けられた各アドレスを、移動装置の移動を管理する移動管理装置に登録する場合に、バルク登録メッセージの送信元アドレス以外のアドレスあてのパケット送信の遅延を防止することができるという効果を有し、3GPP−LTE(Third Generation Partnership Project Long Term Evolution)プロジェクトが作業を行っているSAE(System Architecture Evolution)などに利用することができる。

Claims (17)

  1. 移動装置の複数のインタフェースに割り当てられた複数のアドレスを前記移動装置の移動管理装置に登録するアドレス登録方法であって、
    前記移動装置が前記複数のインタフェースに関連付けられたアドレスのそれぞれを送信元アドレスとして、前記送信元アドレスを個別に登録するための複数の個別登録メッセージを前記移動管理装置に送信する第1のステップと、
    前記移動管理装置が前記複数の個別登録メッセージを受信した場合に、その送信元アドレスを登録するとともに、前記複数のアドレスを一括して更新するバルク登録を許可する応答メッセージを前記移動装置に送信する第2のステップと、
    前記移動装置が前記応答メッセージを受信した後に前記複数のアドレスを一括して更新する場合に、前記複数のインタフェースの1つを送信元として他のインタフェースのアドレスを送信元アドレスフィールド外に含むバルク登録メッセージを前記移動管理装置に送信する第3のステップとを、
    有するアドレス登録方法。
  2. 前記第2のステップは、前記移動管理装置が前記個別登録メッセージを受信した場合に、その送信元アドレスがネットワークのイングレス・フィルタリングにより検証されたものとみなして登録するとともに、その送信元アドレスあてに前記バルク登録を許可する応答メッセージを送信し、
    前記第3のステップは、前記移動装置が前記バルク登録メッセージを送信する場合に、前記バルク登録を許可されたアドレス以外のインタフェースを送信元として前記バルク登録を許可されたアドレスを送信元アドレスフィールド外に含む前記バルク登録メッセージを送信することを特徴とする請求項1に記載のアドレス登録方法。
  3. 前記第2のステップは、前記移動管理装置が前記応答メッセージによりバルク登録有効期間を前記移動装置に通知し、
    前記第3のステップは、前記移動装置が前記バルク登録メッセージを前記バルク登録有効期間内に送信することを特徴とする請求項1又は2に記載のアドレス登録方法。
  4. 前記第1のステップは、前記移動装置が前記バルク登録を希望するアドレスを送信元アドレスとする前記個別登録メッセージにより、バルク登録許可を前記移動管理装置に要求し、
    前記第3のステップは、前記移動装置が前記バルク登録を許可されたアドレスを送信元アドレスフィールド外に含むバルク登録メッセージを前記移動管理装置に送信することを特徴とする請求項1に記載のアドレス登録方法。
  5. 前記第2のステップは、前記移動管理装置が前記応答メッセージにより代理ノードを前記移動装置に通知し、
    前記第3のステップは、移動装置が前記バルク登録メッセージを前記応答メッセージにより通知された代理ノードに送信し、前記代理ノードが前記バルク登録メッセージに署名して前記移動管理装置に送信することを特徴とする請求項1に記載のアドレス登録方法。
  6. 前記第2のステップは、前記移動管理装置が前記個別登録メッセージを受信した場合に、その送信元アドレスを有するインタフェースの接続するネットワークに応じて前記バルク登録を許可するか否かを決定することを特徴とする請求項1に記載のアドレス登録方法。
  7. 前記第2のステップは、前記移動管理装置が前記複数の個別登録メッセージを受信した場合に、その送信元アドレスを登録するとともに、個々の送信元アドレスのバルク登録有効期間を前記移動装置に通知し、
    前記第3のステップは、前記移動装置が、前記個々の送信元アドレスのバルク登録有効期間に応じて送信元アドレスを前記個々の送信元アドレス間で変更して前記バルク登録メッセージを送信することを特徴とする請求項1に記載のアドレス登録方法。
  8. 前記第2のステップは、前記バルク登録を許可する応答メッセージとして、前記複数の個別登録メッセージの各送信元アドレスの登録を一括して確認するバルク登録確認メッセージを、前記移動装置の複数のインタフェースのいずれかあてに送信することを特徴とする請求項1に記載のアドレス登録方法。
  9. 前記第2のステップは、前記移動管理装置が前記バルク登録を許可する応答メッセージにより、前記バルク登録メッセージを送信するインタフェースを前記移動装置に指示することを特徴とする請求項1に記載のアドレス登録方法。
  10. 移動装置の複数のインタフェースに割り当てられた複数のアドレスを前記移動装置の移動管理装置に登録するアドレス登録システムであって、
    前記移動装置が前記複数のインタフェースに関連付けられたアドレスのそれぞれを送信元アドレスとして、前記送信元アドレスを個別に登録するための複数の個別登録メッセージを前記移動管理装置に送信する第1の手段と、
    前記移動管理装置が前記複数の個別登録メッセージを受信した場合に、その送信元アドレスを登録するとともに、前記複数のアドレスを一括して更新するバルク登録を許可する応答メッセージを前記移動装置に送信する第2の手段と、
    前記移動装置が前記応答メッセージを受信した後に前記複数のアドレスを一括して更新する場合に、前記複数のインタフェースの1つを送信元として他のインタフェースのアドレスを送信元アドレスフィールド外に含むバルク登録メッセージを前記移動管理装置に送信する第3の手段とを、
    有するアドレス登録システム。
  11. 移動装置の複数のインタフェースに割り当てられた複数のアドレスを前記移動装置の移動管理装置に登録するアドレス登録システムにおける前記移動装置であって、
    前記複数のインタフェースに関連付けられたアドレスのそれぞれを送信元アドレスとして、前記送信元アドレスを個別に登録するための複数の個別登録メッセージを前記移動管理装置に送信する手段と、
    前記複数のアドレスを一括して更新するバルク登録を許可する応答メッセージを前記移動管理装置から受信した後に前記複数のアドレスを一括して更新する場合に、前記複数のインタフェースの1つを送信元として他のインタフェースのアドレスを送信元アドレスフィールド外に含むバルク登録メッセージを前記移動管理装置に送信する手段とを、
    有する移動装置。
  12. 前記バルク登録メッセージを送信する場合に、前記バルク登録を許可された送信元アドレス以外のインタフェースを送信元アドレスとして、前記バルク登録を許可された送信元アドレスを送信元アドレスフィールド外に含む前記バルク登録メッセージを送信することを特徴とする請求項11に記載の移動装置。
  13. 前記移動管理装置から前記応答メッセージにより通知されたバルク登録有効期間に前記バルク登録メッセージを送信することを特徴とする請求項11又は12に記載の移動装置。
  14. 前記バルク登録を希望するアドレスを送信元アドレスとする前記個別登録メッセージにより、バルク登録許可を前記移動管理装置に要求し、
    前記バルク登録を許可されたアドレスを送信元アドレスフィールド外に含むバルク登録メッセージを前記移動管理装置に送信することを特徴とする請求項11に記載の移動装置。
  15. 前記バルク登録メッセージを前記応答メッセージにより通知された代理ノードに送信することを特徴とする請求項11に記載の移動装置。
  16. 個々の送信元アドレスのバルク登録有効期間に応じて送信元アドレスを前記個々の送信元アドレス間で変更して前記バルク登録メッセージを前記移動管理装置に送信することを特徴とする請求項11に記載の移動装置。
  17. 移動装置の複数のインタフェースに割り当てられた複数のアドレスを前記移動装置の移動管理装置に登録するアドレス登録システムにおける前記移動管理装置であって、
    前記移動装置から、前記複数のインタフェースに関連付けられたアドレスのそれぞれを送信元アドレスとして、前記送信元アドレスを個別に登録するための複数の個別登録メッセージを受信した場合に、その送信元アドレスを登録するとともに、前記複数のアドレスを一括して更新するバルク登録を許可する応答メッセージを前記移動装置に送信する手段と、
    前記応答メッセージを送信した後に、前記複数のインタフェースの1つを送信元として他のインタフェースのアドレスを送信元アドレスフィールド外に含むバルク登録メッセージを前記移動装置から受信した場合に、前記複数のアドレスを一括して更新する手段とを、
    有する移動管理装置。
JP2010537680A 2008-11-11 2009-11-09 アドレス登録方法、アドレス登録システム、移動装置及び移動管理装置 Withdrawn JPWO2010055630A1 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2008288776 2008-11-11
JP2008288776 2008-11-11
PCT/JP2009/005937 WO2010055630A1 (ja) 2008-11-11 2009-11-09 アドレス登録方法、アドレス登録システム、移動装置及び移動管理装置

Publications (1)

Publication Number Publication Date
JPWO2010055630A1 true JPWO2010055630A1 (ja) 2012-04-12

Family

ID=42169776

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010537680A Withdrawn JPWO2010055630A1 (ja) 2008-11-11 2009-11-09 アドレス登録方法、アドレス登録システム、移動装置及び移動管理装置

Country Status (3)

Country Link
US (1) US20110208847A1 (ja)
JP (1) JPWO2010055630A1 (ja)
WO (1) WO2010055630A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2518197C2 (ru) * 2008-08-14 2014-06-10 Самсунг Электроникс Ко., Лтд. Способ и система для обработки освобождения адреса межсетевого протокола версии 4 по протоколу динамической конфигурации хостов
US8762384B2 (en) * 2010-08-19 2014-06-24 Sap Aktiengesellschaft Method and system for search structured data from a natural language search request

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6195706B1 (en) * 1998-07-07 2001-02-27 Emc Corporation Methods and apparatus for determining, verifying, and rediscovering network IP addresses
US6466964B1 (en) * 1999-06-15 2002-10-15 Cisco Technology, Inc. Methods and apparatus for providing mobility of a node that does not support mobility
US7295551B1 (en) * 2000-12-28 2007-11-13 Cisco Technology, Inc. Support mobile device in asymmetric link environment
US6834139B1 (en) * 2001-10-02 2004-12-21 Cisco Technology, Inc. Link discovery and verification procedure using loopback
US7505432B2 (en) * 2003-04-28 2009-03-17 Cisco Technology, Inc. Methods and apparatus for securing proxy Mobile IP
CN100344094C (zh) * 2004-09-01 2007-10-17 华为技术有限公司 IPv6网络中对多地址用户进行授权计费的实现方法
EP1764970A1 (en) * 2005-09-19 2007-03-21 Matsushita Electric Industrial Co., Ltd. Multiple interface mobile node with simultaneous home- and foreign network connection
US8001267B2 (en) * 2005-12-15 2011-08-16 International Business Machines Corporation Apparatus, system, and method for automatically verifying access to a multipathed target at boot time
US9419955B2 (en) * 2006-03-28 2016-08-16 Inventergy Inc. System and method for carrying trusted network provided access network information in session initiation protocol
EP2047656B1 (en) * 2006-07-28 2011-01-05 Panasonic Corporation Address updating method, corresponding mobile terminal and node
US20100241737A1 (en) * 2006-08-25 2010-09-23 Panasonic Corporation Method and apparatus for address verification during multiple addresses registration
US20100226338A1 (en) * 2006-10-31 2010-09-09 Panasonic Corporation Communication method, communication system, home agent, mobile node, and communication node
JPWO2008059750A1 (ja) * 2006-11-13 2010-03-04 日本電気株式会社 移動体通信管理システム、移動体通信管理方法
US8146140B2 (en) * 2007-06-29 2012-03-27 Ericsson Ab Mobile IP bulk registration revocation
WO2009098876A1 (ja) * 2008-02-05 2009-08-13 Panasonic Corporation 移動端末及びネットワークノード
WO2009116246A1 (ja) * 2008-03-17 2009-09-24 パナソニック株式会社 通信方法、通信システム、モバイルノード及びアクセスルータ
US20100054217A1 (en) * 2008-08-26 2010-03-04 Telefonaktiebolaget Lm Ericsson (Publ) Registration of multiple care-of-addresses
US8311014B2 (en) * 2009-11-06 2012-11-13 Telefonaktiebolaget L M Ericsson (Publ) Virtual care-of address for mobile IP (internet protocol)

Also Published As

Publication number Publication date
US20110208847A1 (en) 2011-08-25
WO2010055630A1 (ja) 2010-05-20

Similar Documents

Publication Publication Date Title
US11477634B2 (en) Home agent discovery upon changing the mobility management scheme
US8792453B2 (en) Secure tunnel establishment upon attachment or handover to an access network
EP1739901B1 (en) Mobile IPv6 optimised reverse tunnelling for multi-homed terminals
JP5214737B2 (ja) 通信ネットワークで使用する方法および装置
EP1933520A1 (en) Local mobility anchor relocation and route optimization during handover of a mobile node to another network area
US8879504B2 (en) Redirection method, redirection system, mobile node, home agent, and proxy node
EP2203005A1 (en) Optimized home link detection
JP2012501129A (ja) ネットワークによって用いられるモビリティマネジメント機能の検出
EP2107726A1 (en) Communication method, communication system, mobile node, proxy node, and management node
US8411658B2 (en) Mobile terminal and network node
WO2010067569A1 (ja) 経路最適化方法、経路最適化システム、移動通信装置、移動管理装置及び相手先通信装置並びにホーム基地局
US20100241737A1 (en) Method and apparatus for address verification during multiple addresses registration
WO2010055630A1 (ja) アドレス登録方法、アドレス登録システム、移動装置及び移動管理装置
JP4990920B2 (ja) マルチホーム端末のためのモバイルIPv6の最適化リバース・トンネリング
WO2007101628A1 (en) Mobile ipv6 optimised reverse tunnelling for multi-homed terminals

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: 20130205