(57)【要約】【課題】移動端末の物理的な位置情報に基づいて、少ない処理量で高速にパケットを中継することができる中継方法、端末、中継装置及びプログラムを提供する。【解決手段】端末が、緯度情報及び経度情報を１ビットずつ交互に挿入した緯度経度識別子を生成する。次に、端末が、緯度経度識別子を含む位置識別子を生成し、位置識別子及び端末アドレスを含む位置登録パケットを中継装置へ送信する。送信元端末が、データパケットを送信すべき宛先位置に基づく緯度情報及び経度情報を１ビットずつ交互に挿入した宛先緯度経度識別子を生成する。次に、送信元端末が、宛先緯度経度識別子を含む宛先位置識別子を生成し、宛先位置識別子を含むデータパケットを、中継装置へ送信する。中継装置が、宛先位置識別子に、最も長いビット長だけ一致する位置識別子を検索し、その端末アドレスを、データパケットの宛先アドレスに含めて送信する。【選択図】図１
2008109521.tif 000002
【特許請求の範囲】
【請求項１】
複数の端末と、該端末間でパケットを中継する中継装置とを有するシステムにおけるパケット中継方法において、
前記端末が、当該端末の存在位置に基づく緯度情報及び経度情報を１ビットずつ交互に挿入した緯度経度識別子を生成する第１のステップと、
前記端末が、前記緯度経度識別子を含む位置識別子を生成する第２のステップと、
前記端末が、前記位置識別子及び端末アドレスを含む位置登録パケットを、前記中継装置へ送信する第３のステップと、
前記中継装置が、前記位置登録パケットに含まれる前記位置識別子及び前記端末アドレスを経路テーブルに登録する第４のステップと、
送信元端末が、データパケットを送信すべき宛先位置に基づく緯度情報及び経度情報を１ビットずつ交互に挿入した宛先緯度経度識別子を生成する第５のステップと、
前記送信元端末が、前記宛先緯度経度識別子を含む宛先位置識別子を生成する第６のステップと、
前記送信元端末が、前記宛先位置識別子を含むデータパケットを、前記中継装置へ送信する第７のステップと、
前記中継装置が、前記データパケットに含まれる前記宛先位置識別子の最上位ビットから見て、最も長いビット長だけ一致する前記位置識別子を検索する第８のステップと、
前記中継装置が、検索された前記位置識別子に対応する前記端末アドレスを、前記データパケットの宛先アドレスに含めて送信する第９のステップと
を有することを特徴とするパケット中継方法。
【請求項２】
第１のステップは、緯度から順に生成した第１の緯度経度識別子と、経度から順に生成した第２の緯度経度識別子とを生成し、
第２のステップは、第１の緯度経度識別子を含む第１の位置識別子と、第２の緯度経度識別子を含む第２の位置識別子とを生成し、
第３のステップは、第１の位置識別子を含む第１の位置登録パケットと、第２の位置識別子を含む第２の位置登録パケットとの両方を、前記中継装置へ送信する
ことを特徴とする請求項１に記載のパケット中継方法。
【請求項３】
第５のステップについて、前記宛先位置を中心とする半径の範囲を指定するために、前記宛先位置識別子の最上位ビットからのマッチングビット数を更に生成し、
第７のステップについて、前記送信元端末が、前記宛先位置識別子及び前記マッチングビット数を含むデータパケットを、前記中継装置へ送信し、
第８のステップについて、前記中継装置が、最上位ビットから前記マッチングビット数の分のビット列が一致する、１つ以上の前記位置識別子を検索し、
第９のステップについて、前記中継装置が、検索された前記位置識別子毎に、複製された前記データパケットの宛先アドレスに、前記位置識別子に対応する前記端末アドレスを含めて同報送信する
ことを特徴とする請求項１又は２に記載のパケット中継方法。
【請求項４】
第５のステップは、
前記宛先緯度経度識別子におけるマッチングビット数に相当する一定範囲の中で、その範囲を四等分するマッチングビット数＋２ビットの分のビット列に一致する１つの緯度経度識別子を検索するステップと、
検索された緯度経度識別子を中心とする周辺領域の緯度経度識別子を検索するステップと
を有することを特徴とする請求項３に記載のパケット中継方法。
【請求項５】
パケットを中継する中継装置とデータパケットを送受信する端末において、
当該端末の存在位置に基づく緯度情報及び経度情報を１ビットずつ交互に挿入した緯度経度識別子を生成する緯度経度識別子生成手段と、
前記緯度経度識別子を含む位置識別子を生成する位置識別子生成手段と、
前記位置識別子及び端末アドレスを含む位置登録パケットを、前記中継装置へ送信する位置登録パケット送信手段と、
データパケットを送信すべき宛先位置に基づく緯度情報及び経度情報を１ビットずつ交互に挿入した宛先緯度経度識別子を生成する宛先緯度経度識別子生成手段と、
前記宛先緯度経度識別子を含む宛先位置識別子を生成する宛先位置識別子生成手段と、
前記宛先位置識別子を含むデータパケットを、前記中継装置へ送信するデータパケット送信手段と
を有することを特徴とする端末。
【請求項６】
前記緯度経度識別子生成手段は、緯度から順に生成した第１の緯度経度識別子と、経度から順に生成した第２の緯度経度識別子とを生成し、
前記位置識別子生成手段は、第１の緯度経度識別子を含む第１の位置識別子と、第２の緯度経度識別子を含む第２の位置識別子とを生成し、
前記位置登録パケット送信手段は、第１の位置識別子を含む第１の位置登録パケットと、第２の位置識別子を含む第２の位置登録パケットとの両方を、前記中継装置へ送信する
ことを特徴とする請求項５に記載の端末。
【請求項７】
前記宛先緯度経度識別子生成手段は、前記宛先位置を中心とする半径の範囲を指定するために、前記位置識別子の最上位ビットからのマッチングビット数を更に生成し、
前記データパケット送信手段は、前記送信元端末が、前記宛先位置識別子及び前記マッチングビット数を含むデータパケットを、前記中継装置へ送信する
ことを特徴とする請求項５又は６に記載の端末。
【請求項８】
前記宛先緯度経度識別子生成手段は、
前記宛先緯度経度識別子におけるマッチングビット数に相当する一定範囲の中で、その範囲を四等分するマッチングビット数＋２ビットの分のビット列に一致する１つの緯度経度識別子を検索し、
検索された緯度経度識別子を中心とする周辺領域の緯度経度識別子を検索する
ことを特徴とする請求項７に記載の端末。
【請求項９】
請求項５から８のいずれか１項に記載の端末の間でパケットを中継する中継装置において、
前記位置登録パケットを受信する位置登録パケット受信手段と、
前記位置登録パケットに含まれる前記位置識別子及び前記端末アドレスを経路テーブルに登録する経路テーブル手段と、
前記中継装置が、前記データパケットに含まれる前記宛先位置識別子の最上位ビットから見て、最も長いビット長だけ一致する前記位置識別子を検索する位置識別子検索手段と、
前記中継装置が、検索された前記位置識別子に対応する前記端末アドレスを、前記データパケットの宛先アドレスに含めて送信するデータパケット送信手段と
を有することを特徴とする中継装置。
【請求項１０】
前記位置識別子検索手段は、最上位ビットから前記マッチングビット数の分のビット列が一致する、１つ以上の前記位置識別子を検索し、
前記データパケット送信手段は、検索された前記位置識別子毎に、複製された前記データパケットの宛先アドレスに、前記位置識別子に対応する前記端末アドレスを含めて同報送信する
ことを特徴とする請求項９に記載の中継装置。
【請求項１１】
端末−中継装置間が、モバイルＩＰｖ６によって接続されている場合、
前記位置識別子は、モバイルＩＰｖ６におけるホームアドレスのインタフェース部に挿入されており、
前記中継装置は、モバイルＩＰｖ６のホームエージェントである
ことを特徴とする請求項９又は１０に記載の中継装置。
【請求項１２】
端末−中継装置間が、ＳＩＰによって接続されている場合、
前記位置識別子は、SIP-URI内に挿入されており、
前記中継装置は、ＳＩＰサーバである
ことを特徴とする請求項９又は１０に記載の中継装置。
【請求項１３】
パケットを中継する中継装置とデータパケットを送受信する端末に搭載されたコンピュータを機能させるプログラムにおいて、
当該端末の存在位置に基づく緯度情報及び経度情報を１ビットずつ交互に挿入した緯度経度識別子を生成する緯度経度識別子生成手段と、
前記緯度経度識別子を含む位置識別子を生成する位置識別子生成手段と、
前記位置識別子及び端末アドレスを含む位置登録パケットを、前記中継装置へ送信する位置登録パケット送信手段と、
データパケットを送信すべき宛先位置に基づく緯度情報及び経度情報を１ビットずつ交互に挿入した宛先緯度経度識別子を生成する宛先緯度経度識別子生成手段と、
前記宛先緯度経度識別子を含む宛先位置識別子を生成する宛先位置識別子生成手段と、
前記宛先位置識別子を含むデータパケットを、前記中継装置へ送信するデータパケット送信手段と
してコンピュータを機能させることを特徴とする端末用プログラム。
【請求項１４】
請求項５から８のいずれか１項に記載の端末の間でパケットを中継する中継装置に搭載されたコンピュータを機能させるプログラムにおいて、
前記位置登録パケットを受信する位置登録パケット受信手段と、
前記位置登録パケットに含まれる前記位置識別子及び前記端末アドレスを経路テーブルに登録する経路テーブル手段と、
前記中継装置が、前記データパケットに含まれる前記宛先位置識別子の最上位ビットから見て、最も長いビット長だけ一致する前記位置識別子を検索する位置識別子検索手段と、
前記中継装置が、検索された前記位置識別子に対応する前記端末アドレスを、前記データパケットの宛先アドレスに含めて送信するデータパケット送信手段と
してコンピュータを機能させることを特徴とする中継装置用プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、位置情報に基づいてパケットを中継する中継方法、端末、中継装置及びプログラムに関する。
【背景技術】
【０００２】
従来、インターネットに、車両の位置情報を蓄積したデータベースが接続されており、利用者の所持する端末から、リアルタイムに車両の位置情報を取得することができる車両運行管理サービスが提供されている（例えば非特許文献１参照）。車両に搭載された端末は、ＧＰＳ(Global Positioning System)により当該車両自身の位置情報を取得する。その位置情報は、移動アクセスネットワークを介して、データベースに登録される。利用者の所持する端末が、データベースにアクセスすることにより、特定車両の現在位置や移動履歴を取得できる。また、特定エリア内に存在する車両情報を検索することもできる。
【０００３】
【非特許文献１】「ＤｏＣｏです・カー」、ドコモ・システムズ株式会社、[online]、[平成１８年１０月１７日検索]、インターネット＜URL:http://info.doco-car.jp/car/index.html＞
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、データベースに登録される車両数が膨大な数になると、データベースの検索処理時間も大幅に増加する。例えば、特定のエリアに存在する車両を検索する場合、全車両の位置情報に対して、各車両の位置情報がエリア内に含まれるかどうかを判定しなければならない。位置情報は、緯度・経度及び範囲によって表される。従って、各車両の位置情報の緯度が、検索したい緯度の範囲内に存在し、且つ、各車両の位置情報の経度が、検索したい経度の範囲内に存在することを判定する。パケットを中継する中継装置が、このような判定処理をすることは、処理負荷が増大するだけでなく、経路制御に時間がかかることとなる。
【０００５】
従って、本発明は、移動端末の物理的な位置情報に基づいて、少ない処理量で高速にパケットを中継することができる中継方法、端末、中継装置及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明によれば、複数の端末と、該端末間でパケットを中継する中継装置とを有するシステムにおけるパケット中継方法において、
端末が、当該端末の存在位置に基づく緯度情報及び経度情報を１ビットずつ交互に挿入した緯度経度識別子を生成する第１のステップと、
端末が、緯度経度識別子を含む位置識別子を生成する第２のステップと、
端末が、位置識別子及び端末アドレスを含む位置登録パケットを、中継装置へ送信する第３のステップと、
中継装置が、位置登録パケットに含まれる位置識別子及び端末アドレスを経路テーブルに登録する第４のステップと、
送信元端末が、データパケットを送信すべき宛先位置に基づく緯度情報及び経度情報を１ビットずつ交互に挿入した宛先緯度経度識別子を生成する第５のステップと、
送信元端末が、宛先緯度経度識別子を含む宛先位置識別子を生成する第６のステップと、
送信元端末が、宛先位置識別子を含むデータパケットを、中継装置へ送信する第７のステップと、
中継装置が、データパケットに含まれる宛先位置識別子の最上位ビットから見て、最も長いビット長だけ一致する位置識別子を検索する第８のステップと、
中継装置が、検索された位置識別子に対応する端末アドレスを、データパケットの宛先アドレスに含めて送信する第９のステップと
を有することを特徴とする。
【０００７】
本発明のパケット中継方法における他の実施形態によれば、
第１のステップは、緯度から順に生成した第１の緯度経度識別子と、経度から順に生成した第２の緯度経度識別子とを生成し、
第２のステップは、第１の緯度経度識別子を含む第１の位置識別子と、第２の緯度経度識別子を含む第２の位置識別子とを生成し、
第３のステップは、第１の位置識別子を含む第１の位置登録パケットと、第２の位置識別子を含む第２の位置登録パケットとの両方を、中継装置へ送信することも好ましい。
【０００８】
本発明のパケット中継方法における他の実施形態によれば、
第５のステップについて、宛先位置を中心とする半径の範囲を指定するために、宛先位置識別子の最上位ビットからのマッチングビット数を更に生成し、
第７のステップについて、送信元端末が、宛先位置識別子及びマッチングビット数を含むデータパケットを、中継装置へ送信し、
第８のステップについて、中継装置が、最上位ビットからマッチングビット数の分のビット列が一致する、１つ以上の位置識別子を検索し、
第９のステップについて、中継装置が、検索された位置識別子毎に、複製されたデータパケットの宛先アドレスに、位置識別子に対応する端末アドレスを含めて同報送信することも好ましい。
【０００９】
本発明のパケット中継方法における他の実施形態によれば、第５のステップは、
宛先緯度経度識別子におけるマッチングビット数に相当する一定範囲の中で、その範囲を四等分するマッチングビット数＋２ビットの分のビット列に一致する１つの緯度経度識別子を検索するステップと、
検索された緯度経度識別子を中心とする周辺領域の緯度経度識別子を検索するステップとを有することも好ましい。
【００１０】
本発明によれば、パケットを中継する中継装置とデータパケットを送受信する端末において、
当該端末の存在位置に基づく緯度情報及び経度情報を１ビットずつ交互に挿入した緯度経度識別子を生成する緯度経度識別子生成手段と、
緯度経度識別子を含む位置識別子を生成する位置識別子生成手段と、
位置識別子及び端末アドレスを含む位置登録パケットを、中継装置へ送信する位置登録パケット送信手段と、
データパケットを送信すべき宛先位置に基づく緯度情報及び経度情報を１ビットずつ交互に挿入した宛先緯度経度識別子を生成する宛先緯度経度識別子生成手段と、
宛先緯度経度識別子を含む宛先位置識別子を生成する宛先位置識別子生成手段と、
宛先位置識別子を含むデータパケットを、中継装置へ送信するデータパケット送信手段とを有することを特徴とする。
【００１１】
本発明の端末における他の実施形態によれば、
緯度経度識別子生成手段は、緯度から順に生成した第１の緯度経度識別子と、経度から順に生成した第２の緯度経度識別子とを生成し、
位置識別子生成手段は、第１の緯度経度識別子を含む第１の位置識別子と、第２の緯度経度識別子を含む第２の位置識別子とを生成し、
位置登録パケット送信手段は、第１の位置識別子を含む第１の位置登録パケットと、第２の位置識別子を含む第２の位置登録パケットとの両方を、中継装置へ送信することも好ましい。
【００１２】
本発明の端末における他の実施形態によれば、
宛先緯度経度識別子生成手段は、宛先位置を中心とする半径の範囲を指定するために、位置識別子の最上位ビットからのマッチングビット数を更に生成し、
データパケット送信手段は、送信元端末が、宛先位置識別子及びマッチングビット数を含むデータパケットを、中継装置へ送信することも好ましい。
【００１３】
本発明の端末における他の実施形態によれば、宛先緯度経度識別子生成手段は、
宛先緯度経度識別子におけるマッチングビット数に相当する一定範囲の中で、その範囲を四等分するマッチングビット数＋２ビットの分のビット列に一致する１つの緯度経度識別子を検索し、
検索された緯度経度識別子を中心とする周辺領域の緯度経度識別子を検索することも好ましい。
【００１４】
本発明によれば、前述した端末の間でパケットを中継する中継装置において、
位置登録パケットを受信する位置登録パケット受信手段と、
位置登録パケットに含まれる位置識別子及び端末アドレスを経路テーブルに登録する経路テーブル手段と、
中継装置が、データパケットに含まれる宛先位置識別子の最上位ビットから見て、最も長いビット長だけ一致する位置識別子を検索する位置識別子検索手段と、
中継装置が、検索された位置識別子に対応する端末アドレスを、データパケットの宛先アドレスに含めて送信するデータパケット送信手段と
を有することを特徴とする。
【００１５】
本発明の中継装置における他の実施形態によれば、
位置識別子検索手段は、最上位ビットからマッチングビット数の分のビット列が一致する、１つ以上の位置識別子を検索し、
データパケット送信手段は、検索された位置識別子毎に、複製されたデータパケットの宛先アドレスに、位置識別子に対応する端末アドレスを含めて同報送信することも好ましい。
【００１６】
本発明の中継装置における他の実施形態によれば、端末−中継装置間が、モバイルＩＰｖ６によって接続されている場合、位置識別子は、モバイルＩＰｖ６におけるホームアドレスのインタフェース部に挿入されており、中継装置は、モバイルＩＰｖ６のホームエージェントであることも好ましい。
【００１７】
本発明の中継装置における他の実施形態によれば、端末−中継装置間が、ＳＩＰによって接続されている場合、位置識別子は、SIP-URI内に挿入されており、中継装置は、ＳＩＰサーバであることも好ましい。
【００１８】
本発明によれば、パケットを中継する中継装置とデータパケットを送受信する端末に搭載されたコンピュータを機能させるプログラムにおいて、
当該端末の存在位置に基づく緯度情報及び経度情報を１ビットずつ交互に挿入した緯度経度識別子を生成する緯度経度識別子生成手段と、
緯度経度識別子を含む位置識別子を生成する位置識別子生成手段と、
位置識別子及び端末アドレスを含む位置登録パケットを、中継装置へ送信する位置登録パケット送信手段と、
データパケットを送信すべき宛先位置に基づく緯度情報及び経度情報を１ビットずつ交互に挿入した宛先緯度経度識別子を生成する宛先緯度経度識別子生成手段と、
宛先緯度経度識別子を含む宛先位置識別子を生成する宛先位置識別子生成手段と、
宛先位置識別子を含むデータパケットを、中継装置へ送信するデータパケット送信手段としてコンピュータを機能させることを特徴とする。
【００１９】
本発明によれば、前述した端末の間でパケットを中継する中継装置に搭載されたコンピュータを機能させるプログラムにおいて、
位置登録パケットを受信する位置登録パケット受信手段と、
位置登録パケットに含まれる位置識別子及び端末アドレスを経路テーブルに登録する経路テーブル手段と、
中継装置が、データパケットに含まれる宛先位置識別子の最上位ビットから見て、最も長いビット長だけ一致する位置識別子を検索する位置識別子検索手段と、
中継装置が、検索された位置識別子に対応する端末アドレスを、データパケットの宛先アドレスに含めて送信するデータパケット送信手段としてコンピュータを機能させることを特徴とする。
【発明の効果】
【００２０】
本発明における中継方法、端末、中継装置及びプログラムによれば、位置識別子を比較するだけで経路制御をすることができるので、移動端末の物理的な位置情報に基づいて、少ない処理量で高速にパケットを中継することができる。
【発明を実施するための最良の形態】
【００２１】
以下では、図面を用いて、本発明を実施するための最良の形態について詳細に説明する。
【００２２】
表１は、本発明における位置識別子の構成図である。
【表１】
2008109521.tif 000003
【００２３】
表１によれば、位置識別子（２５６ビット）は、サービス識別子（１６０ビット）、タイプ（２ビット）、緯度経度識別子（６２ビット）及び端末アドレス（３２ビット）の４つの領域に区分されている。本発明によれば、位置識別子は、少なくとも緯度経度識別子を含む。
【００２４】
サービス識別子は、サービスを特定する識別子である。端末アドレスは、各ホスト（端末）のアドレスである。例えば、ＩＰ(Internet Protocol)アドレスであってもよい。
【００２５】
緯度経度識別子は、緯度情報及び経度情報を、１ビットずつ交互に挿入した識別子である。緯度経度識別子は、緯度から順に生成した第１の緯度経度識別子と、経度から順に生成した第２の緯度経度識別子とがある。また、タイプは、緯度経度識別子の緯度・経度順序を指定する。
【００２６】
表２は、タイプのビット列情報に対する、第１の緯度経度識別子及び第２の緯度経度識別子を表す。
【表２】
2008109521.tif 000004
【００２７】
表２によれば、タイプのビット列情報が「00」である場合、緯度->経度->緯度->・・・の順に並んでいることを表す。タイプのビット列情報が「01」の場合、経度->緯度->経度->・・・の順に並んでいることを表す。
【００２８】
緯度情報及び経度情報は、度分表記（例えば35°25.3531...）をビット列で表す。これは、度（９ビット）、分（整数）（６ビット）、分（小数）（１６ビット）のビット列（合計３１ビット）で表される。従って、緯度情報及び経度情報を１ビットずつ交互に挿入した緯度経度識別子は、合計６２ビット（３１ビット＋３１ビット）となる。尚、緯度経度識別子を６２ビットとすることにより、およそ２．８ｃｍの分解性能が得られる。
【００２９】
図１は、本発明におけるシーケンス図である。
【００３０】
図１によれば、複数の端末２の間で送受信されるパケットについて、中継装置１が、その経路を制御する。中継装置１は、ルータであってもよい。また、端末−中継装置間が、モバイルＩＰｖ６によって接続されている場合、中継装置は、モバイルＩＰｖ６のホームエージェントであってもよい。更に、端末−中継装置間が、ＳＩＰによって接続されている場合、中継装置は、ＳＩＰサーバであってもよい。
【００３１】
最初に、端末２が、中継装置１へ位置登録をする場合のシーケンスについて説明する。中継装置１は、端末毎に位置識別子及び端末アドレスを記録した経路テーブルを有する。
【００３２】
（Ｓ１０１）端末２は、ＧＰＳのような測位機能を有し、当該端末自身の位置情報を取得する。ここで、位置情報とは、緯度情報及び経度情報である。
（Ｓ１０２）端末２は、緯度情報及び経度情報を１ビットずつ交互に挿入した緯度経度識別子を生成する。ここでは、緯度から順に生成した第１の緯度経度識別子と、経度から順に生成した第２の緯度経度識別子とを生成する。
（Ｓ１０３）端末２は、第１の緯度経度識別子を含む第１の位置識別子と、第２の緯度経度識別子を含む第２の位置識別子とを生成する。ここで、位置識別子に端末アドレスを含むものであってもよい。端末アドレスは、例えば端末２のＩＰアドレスである。
【００３３】
（Ｓ１０４）端末２は、第１の位置識別子と端末アドレスを含む第１の位置登録パケットと、第２の位置識別子と端末アドレスを含む第２の位置登録パケットとの両方を、中継装置１へ送信する。
（Ｓ１０５）中継装置１は、位置登録パケットに含まれる位置識別子及び端末アドレスを経路テーブルに登録する。ここでは、１つの端末アドレスに対して、２つの位置識別子（第１の位置識別子、第２の位置識別子）が登録されることになる。
（Ｓ１０６）中継装置１は、第１の位置登録パケット及び第２の位置登録パケットに対する確認応答（ＡＣＫ）を、端末２へ返信する。
（Ｓ１０７）端末２毎に、Ｓ１０１〜Ｓ１０６のシーケンスを行い、中継装置１へ位置登録をする。尚、各端末は、定期的に、このような位置登録シーケンスを実行するのが好ましい。
【００３４】
次に、送信元端末が、データパケットを、中継装置１を介して送信する場合のシーケンスについて説明する。
【００３５】
（Ｓ１１０）送信元端末は、データパケットを送信すべき宛先位置に基づく緯度情報及び経度情報を決定する。ここで、送信元端末を操作する利用者が直接的に宛先位置を決定する場合や、送信元端末によって実行されているアプリケーションによって自立的に宛先位置を決定する場合がある。また、送信元端末は、送信すべきデータパケットについて、１つの端末のみへ送信するユニキャストモードと、一定範囲に存在する複数の端末へ同報的に送信するマルチキャストモードとを指定することができる。
【００３６】
（Ｓ１１１）送信元端末は、宛先位置に基づく緯度情報及び経度情報を、１ビットずつ交互に挿入した宛先緯度経度識別子を生成する。ここで、宛先緯度経度識別子は、緯度の精度を優先したい場合には、緯度から順に１ビットずつ交互に挿入する。また、経度の精度を優先したい場合には、経度から順に１ビットずつ交互に挿入する。これは、以下で説明するマッチングビット数が奇数となる場合に、緯度情報を表すビット数と、経度情報を表すビット数とに、１ビットの差を生じることになるからである。
【００３７】
（Ｓ１１２）送信元端末は、宛先位置を中心とする半径のエリア範囲を指定するために、宛先位置識別子の最上位ビットからのマッチングビット数を更に生成する。宛先緯度経度識別子は、宛先位置識別子に含まれており、表１によれば、最上位ビットにサービス識別子が含まれている。マッチングビット数が短いほど広い範囲を指定し、長いほど狭い範囲を指定する。マッチングビット数は、以下の式を用いて算出される。
マッチングビット数＝１９２＋２ｌｏｇ２（Reference／２・Area）
Area：エリア範囲[m]
Reference：該当場所で緯度１度あたりの長さ[m]（日本近郊では１８５２ｍ）
【００３８】
（Ｓ１１３）送信元端末は、宛先緯度経度識別子を含む宛先位置識別子を生成する。表３は、本発明における宛先位置識別子の構成図である。
【表３】
2008109521.tif 000005
【００３９】
（Ｓ１１４）送信元端末は、宛先位置識別子及びマッチングビット数を含むデータパケットを、中継装置１へ送信する。
【００４０】
（Ｓ１１５）中継装置１は、ユニキャストモードのデータパケットについては、そのデータパケットに含まれる宛先位置識別子の最上位ビットから見て、最も長いビット長だけ一致する位置識別子を検索する。検索された一致するビット長が、マッチングビット長以上の場合には、ＩＰアドレス宛てにデータパケットを転送する。検索された一致したビット長が、マッチングビット長よりも短い場合には、受信したデータパケットを破棄し、中継装置１は、送信元端末へＮＡＣＫを返信する。
【００４１】
また、中継装置１は、マルチキャストモードのデータパケットについては、最上位ビットからマッチングビット数の分のビット列が一致する、１つ以上の位置識別子を検索する。
【００４２】
（Ｓ１１６）中継装置１は、ユニキャストモードのデータパケットについては、検索された位置識別子に対応する端末アドレスを、データパケットの宛先アドレスに含めて送信する。
【００４３】
（Ｓ１１７）中継装置１は、マルチキャストモードのデータパケットについては、検索された位置識別子毎に、複製されたデータパケットの宛先アドレスに、その位置識別子に対応する端末アドレスを含めて同報送信する。
【００４４】
（Ｓ１１８）送信元端末２は、宛先緯度経度識別子におけるマッチングビット数に相当する一定範囲の中で、その範囲を四等分するマッチングビット数＋２ビットの分のビット列に一致する１つの緯度経度識別子を検索する。そして、検索された緯度経度識別子を中心とする周辺領域の緯度経度識別子を検索する。送信元端末２は、これら周辺領域の緯度経度識別子を含む宛先位置識別子を生成する。生成された宛先位置識別子は、Ｓ１１４で送信したデータパケットの複製となるデータパケットに含めて、中継装置１へ送信する。中継装置１は、Ｓ１１５〜Ｓ１１７と同じ操作をする。
【００４５】
尚、端末２が、データパケットを受信した際の動作は、アプリケーションに応じて異なる。端末２が、送信元端末へレスポンス応答する場合もある。この場合、レスポンス内に受信端末のＩＰアドレスを指定することにより、その後、送信元端末−受信端末間で、中継装置１を介することなく、直接的に通信をすることもできる。
【００４６】
更に、データパケットを受信した端末２が、当該端末自身が存在するネットワーク内に、受信したデータパケットをブロードキャストで送信するものであってもよい。例えば、移動通信システムにおいて基地局が端末２の役割を担い、受信したデータをカバレッジエリア内の移動端末に配信することが考えられる。
【００４７】
位置登録パケット及びデータパケットとして、モバイルＩＰ又はＳＩＰを用いることができる。モバイルＩＰの場合、ホームアドレスのインタフェース部（ＩＰｖ６における６４ビット）に、位置識別子を指定する。そして、Binding Updateを用いてホームアドレス及び自ＩＰアドレス（care-of-address）を、ホームエージェントとなる中継装置１に登録する。ホームエージェントは、Binding Cache内に、ホームアドレス及びcare-of-addressの対応を保持する。また、ホームエージェントは、データパケットを受信した際に、ホームアドレス内の位置識別子と、データパケット内で指定された宛先位置識別子とを比較する。最もビット長が一致する位置識別子か、又は、最小マッチングビット数が一致する複数の位置識別子を、Binding Cacheから検索する。検索された位置識別子のcare-of-address宛てにデータパケットを送信する。
【００４８】
ＳＩＰの場合、SIP-URIのユーザパートに位置識別子を挿入する。例えば、[位置識別子]@kddilabs.jpとする。ＳＩＰサーバとなる中継装置１へ送信する位置登録パケットについて、SIP REGISTERメッセージ内で、To/Fromフィールドによって位置識別子を指定する。また、Contactフィールドによって自ＩＰアドレスを指定する。位置登録パケットを受信したＳＩＰサーバは、REGISTERの情報を保持する。また、ＳＩＰサーバは、SIP
INVITEメッセージの受信時に、指定された位置識別子と登録されている位置識別子とを比較する。
【００４９】
図２は、宛先範囲を表す説明図である。
【００５０】
図２によれば、縦方向を緯度とし、横方向を経度として、一定範囲毎に３ビットが割り当てられている。各エリアには、上段に第１の緯度経度識別子IDreq1が表され、下段に第２の緯度経度識別子IDreq2が表されている。第１の緯度経度識別子IDreq1は、緯度->経度の順に並べられ、第２の緯度経度識別子IDreq2は、経度->緯度の順に並べられる。
【００５１】
図２によれば、データパケットを送信したい宛先位置が×で表されている。宛先位置は、緯度０１１及び経度０１０で表される。
第１の宛先緯度経度識別子IDreq1＝001110
第２の宛先緯度経度識別子IDreq1＝001101
【００５２】
ここで、例えばマッチングビット数Lm＝２とする。そうすると、上位２ビットが「００」を表す緯度経度識別子が検索され、その宛先範囲(1)に存在する端末が、宛先端末となる。
宛先範囲(1)：00 1110（緯度:011、経度:010）、Lm,1＝2
第１の緯度経度識別子IDreq1＝0000xy、0001xy、0010xy、0011xy
第２の緯度経度識別子IDreq2＝0000yx、0010yx、0001yx、0011yx
【００５３】
図３は、本発明における端末及び中継装置の機能構成図である。
【００５４】
図３によれば、端末２は、測位部２０１と、緯度経度識別子生成部２０２と、位置識別子生成部２０３と、位置登録パケット送信部２０４と、宛先緯度経度識別子生成部２０５と、宛先位置識別子生成部２０６と、データパケット送信部２０７とを有する。これら機能部は、端末に搭載されたコンピュータを機能させるプログラムを実行することによっても実現できる。
【００５５】
測位部２０１は、例えばＧＰＳ機能であって、端末２の現在の位置情報（緯度情報及び経度情報）を取得する。緯度情報及び経度情報は、緯度経度識別子生成部２０２へ通知される。
【００５６】
緯度経度識別子生成部２０２は、緯度->経度の順に、緯度情報及び経度情報を１ビットずつ交互に挿入した第１の緯度経度識別子と、経度->緯度の順に、緯度情報及び経度情報を１ビットずつ交互に挿入した第２の緯度経度識別子とを生成する。
【００５７】
位置識別子生成部２０３は、第１の緯度経度識別子を含む第１の位置識別子と、第２の緯度経度識別子を含む第２の位置識別子とを生成する。
【００５８】
位置登録パケット送信部２０４は、第１の位置識別子と端末アドレスを含む第１の位置登録パケットと、第２の位置識別子と端末アドレスを含む第２の位置登録パケットとの両方を、中継装置１へ送信する。
【００５９】
宛先緯度経度識別子生成部２０５は、データパケットを送信すべき宛先位置に基づく緯度情報及び経度情報を１ビットずつ交互に挿入した宛先緯度経度識別子を生成する。緯度の精度を優先したい場合、宛先緯度経度識別子は、緯度から順に１ビットずつ交互に挿入する。また、経度の精度を優先したい場合、宛先緯度経度識別子は、経度から順に１ビットずつ交互に挿入する。また、宛先緯度経度識別子生成部２０５は、宛先位置を中心とする半径の範囲を指定するために、宛先位置識別子の最上位ビットからのマッチングビット数を更に生成する。
【００６０】
また、宛先緯度経度識別子生成部２０５は、宛先緯度経度識別子におけるマッチングビット数に相当する一定範囲の中で、その範囲を四等分するマッチングビット数＋２ビットの分のビット列に一致する１つの緯度経度識別子を検索する。そして、検索された緯度経度識別子の範囲を中心とする周辺領域の緯度経度識別子を検索する。
【００６１】
宛先位置識別子生成部２０６は、宛先緯度経度識別子を含む宛先位置識別子を生成する。宛先緯度経度識別子生成部２０５が周辺領域の緯度経度識別子を検索した場合、宛先位置識別子生成部２０６は、これら周辺領域の緯度経度識別子を含む宛先位置識別子を生成する。
【００６２】
データパケット送信部２０７は、宛先位置識別子及びマッチングビット数を含むデータパケットを、中継装置１へ送信する。特に、周辺範囲について複数の宛先位置識別子が生成された場合、複製されたデータパケット毎に宛先位置識別子を含めて、中継装置１へ送信する。
【００６３】
また、図３によれば、中継装置１は、位置登録パケット受信部１０１と、経路テーブル部１０２と、データパケット受信部１０３と、位置識別子検索部１０４と、データパケット送信部１０５とを有する。これら機能部は、中継装置に搭載されたコンピュータを機能させるプログラムを実行することによっても実現できる。
【００６４】
位置登録パケット受信部１０１は、端末２から位置登録パケットを受信する。受信した位置登録パケットに含まれる位置識別子及び端末アドレスが、経路テーブル１０２へ通知される。
【００６５】
経路テーブル部１０２は、位置識別子及び端末アドレスを蓄積管理する。ここでは、１つの端末アドレスに対して、２つの位置識別子（第１の位置識別子、第２の位置識別子）が登録されることになる。
【００６６】
データパケット受信部１０３は、端末２から、中継するデータパケットを受信する。受信されたデータパケットは、位置識別子検索部１０４へ通知される。
【００６７】
位置識別子検索部１０４は、ユニキャストモードのデータパケットについて、そのデータパケットに含まれる宛先位置識別子の最上位ビットから見て、最も長いビット長だけ一致する位置識別子を検索する。検索された一致するビット長が、マッチングビット長以上の場合には、ＩＰアドレス宛てにデータパケットを転送する。マルチキャストモードのデータパケットについて、最上位ビットからマッチングビット数の分のビット列が一致する、１つ以上の位置識別子を検索する。
【００６８】
データパケット送信部１０５は、検索された位置識別子に対応する端末アドレスを、データパケットの宛先アドレスに含めて送信する。マルチキャストモードの場合、検索された位置識別子毎に、複製されたデータパケットの宛先アドレスに、その位置識別子に対応する端末アドレスを含めて同報送信する。
【００６９】
図４は、宛先範囲(1)の左下方向に宛先位置がある場合における補足範囲の説明図である。
【００７０】
図４によれば、補足範囲は、宛先範囲の左方向と、下方向と、左斜め下方向とに決定される。宛先範囲(1)は、緯度・経度による四角形の範囲になるために、宛先位置×に隣接している範囲に存在する端末には、データパケットが中継されない場合がある。そのため、宛先範囲(1)に加えて、宛先位置×に隣接する範囲（補足範囲）にも、データパケットが中継されるようにする。図４によれば、宛先範囲(1)に加えて、補足範囲(2)(3)(4)に存在する端末に対しても、データパケットを送信するようにする。
【００７１】
図２によれば、マッチングビット数Lm＝２として説明している。そこで、図４によれば、宛先緯度経度識別子におけるマッチングビット数に相当する一定範囲の中で、その範囲を四等分するマッチングビット数＋２ビットの分のビット列に一致する１つの緯度経度識別子を検索する。図２によれば、「0011xy」「0011yx」が宛先位置の緯度経度識別子となる。次に、この検索された緯度経度識別子を中心とする周辺領域の緯度経度識別子を検索する。図２によれば、以下のような周辺領域が、補足範囲として導出される。
宛先範囲(1)：00 1110（緯度:011、経度:010）、Lm,1＝2
補足範囲(2)：100 100（緯度:100、経度:010）、Lm,2＝3
補足範囲(3)：100 101（緯度:011、経度:100）、Lm,3＝3
補足範囲(4)：1100 00（緯度:100、経度:100）、Lm,4＝4
【００７２】
図４には、補足範囲に小さい×が表されている。これら×点を宛先緯度経度識別子とし、更に、補足範囲(2)(3)はマッチングビット数を＋１し、補足範囲(4)はマッチングビット数を＋２とする。そして、送信元端末が、データパケットを４つに複製し、宛先範囲(1)へ送信するデータパケットと、補足範囲(2)へ送信するデータパケットと、補足範囲(3)へ送信するデータパケットと、補足範囲(4)へ送信するデータパケットとを送信する。これにより、宛先位置の周辺範囲にまで、そのデータパケットを送信することができる。
【００７３】
図５は、宛先範囲(1)の右上方向に宛先位置がある場合における補足範囲の説明図である。
【００７４】
図５によれば、補足範囲は、宛先範囲の右方向と、上方向と、右斜め上方向とに決定される。
宛先範囲(1)：11 0010（緯度:101、経度:100）、Lm,1＝2
補足範囲(2)：011 010（緯度:011、経度:100）、Lm,2＝3
補足範囲(3)：011 011（緯度:101、経度:011）、Lm,3＝3
補足範囲(4)：0011 11（緯度:011、経度:011）、Lm,4＝4
【００７５】
図６は、宛先範囲(1)の左上方向に宛先位置がある場合における補足範囲の説明図である。
【００７６】
図６によれば、補足範囲は、宛先範囲の左方向と、上方向と、左斜め上方向とに決定される。
宛先範囲(1)：10 0110（緯度:101、経度:010）、Lm,1＝2
補足範囲(2)：001 110（緯度:011、経度:010）、Lm,2＝3
補足範囲(3)：110 001（緯度:101、経度:100）、Lm,3＝3
補足範囲(4)：0110 10（緯度:011、経度:100）、Lm,4＝4
【００７７】
最後に、補足範囲を導出するための方法について説明する。
【００７８】
IDreq：宛先位置の緯度経度識別子(IDreq,1：緯度経度の順、IDreq,2：経度緯度の順)
Iareq、Ioreq：宛先位置の緯度情報、経度情報
IDa1、IDa2、IDa3、IDa4：算出対象となる宛先範囲(1)、補足範囲(2)、補足範囲(3)、補足範囲(4)の緯度経度識別子
Lm：宛先範囲１辺をm[m]とした場合のマッチングビット数
ｑ＝IDreq[Lm+1, Lm+2]：IDreqでのマッチングビット長以降の下位２ビット
x×y：xとyのインタリーブ（xとyを１ビットずつ交互に挿入する）
Type：位置識別子内で指定するタイプ（00: 緯度経度の順、01:経度緯度の順）
x[1, l]：ビット列xの先頭からlbit目までを抽出
（x|| 1pad）、(x|| 0pad)：ビット列xを上位とし、ビット長が31bitとなるよう下位ビットに1あるいは0をパディングする
【００７９】
if q ＝ 00
IDa1＝IDreq,1, Lm,1＝Lm, Type=00
IDa2＝(lareq [1,Lm/2 + 1] - 1 || 1pad) × loreq, Lm,2＝ Lm + 1, Type=00
IDa3＝(loreq [1,Lm/2 + 1] - 1 || 1pad) × lareq, Lm,3＝ Lm + 1, Type=01
IDa4＝(lareq [1,Lm/2 + 1] - 1 || 1pad) × 
(loreq [1,Lm/2 + 1] - 1 || 1pad), Lm,4 ＝Lm + 2, Type=00
if q ＝ 01
IDa1＝IDreq,1, Lm,1 ＝ Lm, Type=00
IDa2＝(lareq [1,Lm/2 + 1] - 1 || 1pad) × loreq  ,Lm,2 ＝ Lm + 1, Type=00
IDa3＝(loreq [1,Lm/2 + 1] + 1 || 0pad) × lareq ,Lm,3＝ Lm + 1, Type=01
IDa4＝(lareq [1,Lm/2 + 1] - 1 || 1pad) × 
(loreq [1,Lm/2 + 1] + 1 || 0pad), Lm,4 ＝Lm + 2, Type=00
if q ＝ 10
IDa1＝IDreq,1, Lm,1 ＝ Lm, Type=00
IDa2＝(lareq [1,Lm/2 + 1] + 1 || 0pad) × loreq  ,Lm,2 ＝ Lm + 1, Type=00
IDa3＝(loreq [1,Lm/2 + 1] - 1 || 1pad) × lareq ,Lm,3＝ Lm + 1, Type=01
IDa4＝(lareq [1,Lm/2 + 1] + 1 || 0pad) ×
(loreq [1,Lm/2 + 1] - 1 || 1pad), Lm,4 ＝Lm + 2, Type=00
if q ＝ 11
IDa1＝IDreq,1, Lm,1 ＝ Lm, Type=00
IDa2＝(lareq [1,Lm/2 + 1] + 1 || 0pad) × loreq  ,Lm,2 ＝ Lm + 1, Type=00
IDa3＝(loreq [1,Lm/2 + 1] + 1 || 0pad) × lareq ,Lm,3＝ Lm + 1, Type=01
IDa4＝(lareq [1,Lm/2 + 1] + 1 || 0pad) ×
(loreq [1,Lm/2 + 1] + 1 || 0pad), Lm,4 ＝ Lm+ 2, Type=00
【００８０】
以下の例において、q=00でのIDa2の算出方法を説明する。
宛先位置の緯度情報Iareq＝0111101010101111010110101010100  (31bit)
宛先位置の経度情報Ioreq＝1010111011110100010010101000111  (31bit)
宛先範囲１辺をm[m]とした場合のマッチングビット数Lm＝32bit
【００８１】
（１）Iareq[1, Lm/2+1]：
Iareqの上位１bitから(Lm/2+1)=17bitまでを抽出する。
⇒ Iareq'＝01111010101011110
（２）Iareq[1, Lm/2+1]-1：
Iareq'から1を繰り下げる。
⇒ Iareq''＝01111010101011101
（３）Iareq[1, Lm/2+1]-1 || 1pad
Iareq''に対してビット長が揃うように、1をパディングする。
⇒ Iareq'''＝0111101010101110111111111111111(31bit）
（４）IDa2＝ (Iareq[1, Lm/2+1]-1 || 1pad) × Ioreq：
Iareq'''とIoreqをインタリーブする（１ビットずつ交互に挿入する）。
⇒ IDa2=01101110110111001101110110111000101110101110111011101010111111(62bit)
【００８２】
前述した実施形態によれば、端末間が、１台の中継装置を介してデータパケットを送受信する例について説明した。しかしながら、本発明は、中継装置は１台に限られず、複数の中継装置によって実現されるものであってもよい。例えば、複数の中継装置間で専用のネットワークを構成しており、前述した経路テーブルを分散協調的に管理するものであってもよい。例えば、第１の端末から第１の中継装置へ送信された位置登録パケットは、第１の中継装置から他の複数の中継装置へ転送され、第２の中継装置において位置識別子及び端末アドレスを管理する。第２の端末から第３の中継装置へ送信されたデータパケットは、他の複数の中継装置を介して第２の中継装置へ転送され、第２の中継装置が第１の端末へ転送する。位置識別子を管理する中継装置は、複数の中継装置間での専用の制御プロトコルを用いて決定される。
【００８３】
以上、詳細に説明したように、本発明における中継方法、端末、中継装置及びプログラムによれば、位置識別子を比較するだけで経路制御をすることができるので、移動端末の物理的な位置情報に基づいて、少ない処理量で高速にパケットを中継することができる。
【００８４】
前述した本発明における種々の実施形態によれば、当業者は、本発明の技術思想及び見地の範囲における種々の変更、修正及び省略を容易に行うことができる。前述の説明はあくまで例であって、何ら制約しようとするものではない。本発明は、特許請求の範囲及びその均等物として限定するものにのみ制約される。
【図面の簡単な説明】
【００８５】
【図１】本発明におけるシーケンス図である。
【図２】宛先範囲を表す説明図である。
【図３】本発明における端末及び中継装置の機能構成図である。
【図４】宛先範囲の左下方向に宛先位置がある場合における補足範囲の説明図である。
【図５】宛先範囲の右上方向に宛先位置がある場合における補足範囲の説明図である。
【図６】宛先範囲の左上方向に宛先位置がある場合における補足範囲の説明図である。
【符号の説明】
【００８６】
１  中継装置
１０１  位置登録パケット受信部
１０２  経路テーブル部
１０３  データパケット受信部
１０４  位置識別子検索部
１０５  データパケット送信部
２  端末
２０１  測位部
２０２  緯度経度識別子生成部
２０３  位置識別子生成部
２０４  位置登録パケット送信部
２０５  宛先緯度経度識別子生成部
２０６  宛先位置識別子生成部
２０７  データパケット送信部
【図１】
2008109521.tif 000006
【図２】
2008109521.tif 000007
【図３】
2008109521.tif 000008
【図４】
2008109521.tif 000009
【図５】
2008109521.tif 000010
【図６】
2008109521.tif 000011