(57)【要約】【課題】スムーズなハンドオーバを行うことができる移動通信装置を提供すること。【解決手段】データリンク層のデバイスドライバ内にデバイス依存の近隣アクセスポイント情報を格納するＡＰテーブル４０を備え、近隣アクセスポイントが送信するフレームを受信してＡＰテーブル４０を更新し、ＡＰテーブル４０の内容を抽象化した抽象アクセスポイント情報を格納する抽象テーブル５０を備え、抽象テーブル５０内の抽象アクセスポイント情報をデータリンク層よりも上位の層に供給する。【選択図】図２
2006332916.tif 000002
【特許請求の範囲】
【請求項１】
データリンク層のデバイスドライバ内にデバイス依存の近隣アクセスポイント情報を格納するＡＰテーブルと、
近隣アクセスポイントが送信するフレームを受信して該ＡＰテーブルを更新するＡＰテーブル更新手段と、
前記ＡＰテーブルの内容を抽象化する抽象化手段と、
該抽象化手段によって抽象化された抽象アクセスポイント情報を格納する抽象テーブルと、
前記抽象テーブル内の抽象アクセスポイント情報をデータリンク層よりも上位の層に供給する情報供給手段と
を備えることを特徴とする移動通信装置。
【請求項２】
前記近隣アクセスポイント情報には、電波強度及び再送回数が含まれることを特徴とする請求項１記載の移動通信装置。
【請求項３】
コンピュータを、
データリンク層のデバイスドライバ内にデバイス依存の近隣アクセスポイント情報を格納するＡＰテーブルと、近隣アクセスポイントが送信するフレームを受信して該ＡＰテーブルを更新するＡＰテーブル更新手段と、前記ＡＰテーブルの内容を抽象化する抽象化手段と、該抽象化手段によって抽象化された抽象アクセスポイント情報を格納する抽象テーブルと、前記抽象テーブル内の抽象アクセスポイント情報をデータリンク層よりも上位の層に供給する情報供給手段とを備える移動通信装置
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アクセスポイントを介して通信を行う携帯機器などの移動通信装置及びプログラム、特に、スムーズなハンドオーバを行うことができる移動通信装置及びプログラムに関する。
【背景技術】
【０００２】
近年、インターネットに接続可能な携帯機器が普及しつつある。この種の携帯機器はパケット通信を行って、例えば、インターネット上のサーバが提供するホームページをブラウジングしたり、当該サーバから各種コンテンツをダウンロードすることができる。ところで、携帯機器を利用した通信サービスにおいては、一般に、通信サービスエリアを多数のセルで構成するセルラ方式が採用されている。このセルラ方式では、携帯機器が異なるセルに移動する度に無線チャネルを切り換えていく処理、いわゆるハンドオーバがなされ、これにより、携帯機器は異なるセルに移動しても、通信回線を接続した状態を維持することができる。
【０００３】
このハンドオーバは、まずデータリンク層において、各アクセスポイントから送信されるビーコン信号の電波強度に基づいてチャネルを切り換え、つぎに、ネットワーク層において、新しいアクセスルータから送信されるメッセージ信号を受信して、移動登録要求信号を位置管理サーバに送信して、登録されることにより完了する。ここで、データリンク層は、ＯＳＩ（Open Systems Interconnection）参照モデルの第２層に位置し、ネットワーク上で直結されている機器同士での通信方式を定めたものである。また、ネットワーク層は、ＯＳＩ参照モデルの第３層に位置し、データリンク層以下のプロトコルを使用して接続されているネットワーク同士の通信を行うための方式を定めたものである。
【０００４】
このため、データリンク層でチャネル切換えされてから、ネットワーク層で移動登録されるまでの間は接続が遮断され、この間に送信されるパケットは廃棄されてしまい、再送処理が必要になってしまう。
【０００５】
これに対処するために、データリンク層のチャネル切換えに応答してネットワーク層において移動登録要求を送信することが提案されている（特許文献１参照）。
【特許文献１】特開２００１−２５８０５８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかし、この場合でもデータリンク層でのチャネル切換えの後にネットワーク層において移動登録要求を送信して、その後に新しい接続が完了することになり、やはりこの間に送信されるパケットは廃棄されてしまい、再送処理が必要になってしまう。
【０００７】
本発明は、上記問題点に鑑み、スムーズなハンドオーバを行うことができる移動通信装置及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の移動通信装置は、データリンク層のデバイスドライバ内にデバイス依存の近隣アクセスポイント情報を格納するＡＰテーブルと、近隣アクセスポイントが送信するフレームを受信して該ＡＰテーブルを更新するＡＰテーブル更新手段と、前記ＡＰテーブルの内容を抽象化する抽象化手段と、該抽象化手段によって抽象化された抽象アクセスポイント情報を格納する抽象テーブルと、前記抽象テーブル内の抽象アクセスポイント情報をデータリンク層よりも上位の層に供給する情報供給手段とを備えることを特徴とする。
【０００９】
また、前記近隣アクセスポイント情報には、電波強度及び再送回数が含まれることで、接続するのに適切なアクセスポイントに関する情報を取得することができる。
【００１０】
また、本発明は、コンピュータを、データリンク層のデバイスドライバ内にデバイス依存の近隣アクセスポイント情報を格納するＡＰテーブルと、近隣アクセスポイントが送信するフレームを受信して該ＡＰテーブルを更新するＡＰテーブル更新手段と、前記ＡＰテーブルの内容を抽象化する抽象化手段と、該抽象化手段によって抽象化された抽象アクセスポイント情報を格納する抽象テーブルと、前記抽象テーブル内の抽象アクセスポイント情報をデータリンク層よりも上位の層に供給する情報供給手段とを備える移動通信装置として機能させるためのプログラムである。
【発明の効果】
【００１１】
本発明によれば、スムーズなハンドオーバを行うことができる。
【発明を実施するための最良の形態】
【００１２】
以下、添付図面を参照しながら本発明を実施するための最良の形態について詳細に説明する。
【実施例】
【００１３】
図１は、本発明の一実施例に係る移動通信装置を含むシステム全体の構成を示すブロック図である。同図に示すように、このシステムは、移動通信装置である携帯機器１０、アクセスポイント２０、アクセスルータ３０、及び位置管理サーバ３５によって構成される。
【００１４】
携帯機器１０は、無線セル１００Ａ〜１００Ｄなどに在圏してアクセスポイント２０Ａ〜２０Ｄなどを介してパケットデータ通信を行う。アクセスポイント２０Ａ〜２０Ｄは、それぞれ無線セル１００Ａ〜１００Ｄを形成し、該無線セル１００Ａ〜１００Ｄに在圏する携帯機器１０との間で無線通信を行う。アクセスルータ３０Ａ、３０Ｂは、所定数のアクセスポイント２０Ａ〜２０Ｄを収容し、当該アクセスポイント２０Ａ〜２０Ｄの無線セル１００Ａ〜１００Ｄに在圏する携帯機器１０の通信に関する経路制御を行う。位置管理サーバ３５は携帯機器１０の現在のネットワーク層アドレスを管理するサーバである。携帯機器１０は異なるアクセスルータ３０Ａ、３０Ｂ間で移動するとネットワーク層アドレスが変化する。図１においては、携帯機器１０が無線セル１００Ｂと無線セル１００Ｃの間で移動すると携帯機器１０のネットワーク層アドレスは変化する。
【００１５】
図２は、本実施例に係る移動通信装置の構成を示すブロック図である。図２は、この移動通信装置である携帯機器１０の構成をハードウエア、デバイスドライバ、及び上位層に分けて示している。デバイスドライバは、無線ＬＡＮカードなどのハードウエアを制御するソフトウェアで、データリンク層に該当するオペレーティングシステムの一部である。上位層はネットワーク層などである。この携帯機器１０は、ＡＰテーブル４０、抽象テーブル５０、フレーム受信割込部６１、フレーム受信関数６２、フレーム処理関数６３、接続通知部６４、電波強度・ノイズ情報など更新部６５、ＡＰパラメータ更新部６６、タイマ６７、抽象化部６８、切断割込部６９、切断検出関数７０、切断通知部７１、ＡＰ検出・消失・切断予測通知部７２、情報要求と取得部７３、接続・断指示部７４、接続・切断関数７５、及びハードウエア指示部７６からなる。
【００１６】
デバイスドライバのＡＰテーブル４０は、受信フレームのアクセスポイントの電波強度、ノイズ情報、ＢＳＳＩＤ、ＥＳＳＩＤ、及び通信レートなどを記録する。抽象テーブル５０は、通信品質、ＡＰ識別子、及び通信レートなどを記録する。ハードウエアのフレーム受信割込部６１は、フレーム受信というイベントの発生及びその内容をデバイスドライバのフレーム受信関数６２に通知する。フレーム受信関数６２及びフレーム処理関数６３は、近隣アクセスポイントが送信するフレームを受信して、近隣アクセスポイント情報を取得する。全てのアクセスポイントが同一のチャンネルを利用している状況であれば、特別な操作を必要とせず近隣の全てのアクセスポイントに関する情報を取得することができる。異なるチャンネルを使用するアクセスポイントがある状況であれば、異なるチャンネルに対してもスキャンを行うことでそれらのアクセスポイントに関する情報も取得することができる。取得する情報はビーコンフレームとプローブレスポンスフレームに格納されているアクセスポイントのパラメータに関する情報、及び受信フレームの電波強度やノイズ情報である。取得可能な情報には以下のようなものが考えられる。これ以外にもデバイス固有の情報や、各種統計情報などを取得することができる。
・ 電波強度
・ ノイズ情報
・ BSSID (アクセスポイントの識別子) 
・ ESSID (無線ネットワークの識別子) 
・ 使用可能な転送レート
・ 使用しているチャンネル
・ ビーコン送信間隔
フレーム受信関数６２は、受信フレームの電波強度やノイズ情報を取得する。電波強度・ノイズ情報など更新部６５は、電波強度やノイズ情報をＡＰテーブル４０に記録して、更新し、その変化の履歴も保持する。フレーム処理関数６３は、アクセスポイントのパラメータに関する情報を取得する。ＡＰパラメータ更新部６６は、アクセスポイントのパラメータに関する情報をＡＰテーブル４０に記録して、更新する。接続通知部６４は、アソシエーションの確立を示すアソシエーションレスポンスフレームを受信したと判断される場合にアクセスポイントとの接続を上位層であるネットワーク層に通知する。切断割込部６９は、アソシエーションが解除された場合や、一定数以上のビーコンフレームを受信できなかった場合などアクセスポイントとの間の無線通信が切断されたと判断される場合にそのイベントをデバイスドライバの切断検出関数７０に通知する。切断検出関数７０は、切断を検出して、切断通知部７１が上位層であるネットワーク層に切断を通知する。
【００１７】
上記で集められた情報はデバイス依存の情報を含む。例えば、電波強度の算出方法はデバイスによって異なり、異なるベンダのデバイスの電波強度をそのままの形で比較することはできない。例えば、ある環境でベンダatherosのデバイスath0の[quality/signal/noise]＝[ 0 70 0 ]であったのに対して、同じ環境で、ベンダlucentのデバイスwi0の[quality/signal/noise]＝[ 48 115 67 ]であった。したがって、これらの数値をそのまま上位層に通知しても使うことができない。また、デバイスによってはノイズ情報を取得できない場合もある。そこで、これらの情報を上位層で扱いやすいように抽象化する。
【００１８】
電波強度やノイズ情報などを上位層から扱える形にするために、通信品質としてデバイス非依存な指標を定める。例えば、これは以下の５段階に表すことができる。
・ Very Good - 高品質
・ Good - やや高品質
・ Fair - 通常の品質
・ Bad - やや低品質
・ Very Bad - 低品質
電波強度やノイズ情報から共通の指標への抽象化の処理はデバイス毎に異なるが、抽象化した情報についてはデバイスに依らず比較することが可能である。
【００１９】
抽象化部６８は、タイマ６７によって、定期的にＡＰテーブル４０内のデバイス依存の情報を、デバイス非依存の情報に抽象化して、抽象テーブル５０に記録する。ＡＰ検出・消失・切断予測通知部７２は、抽象化部６８によって抽象化した情報の変化を検出して、接続可能なアクセスポイントの検出、アクセスポイントの消失、及び現在接続中のアクセスポイントの切断予測を上位層に通知する。これらのイベントの検出は、通信品質がある閾値を上回った、あるいは下回ったことを検出することで実現する。情報要求と取得部７３は、抽象テーブル５０の内容を要求して取得する。接続・切断指示部７４は、上位層からデバイスドライバにアクセスポイントとの接続及び切断を指示し、接続・切断関数７５は、ハードウエア指示部７６を介してハードウエアにアクセスポイントとの接続及び切断を指示する。デバイスによって具体的な処理内容は異なる。そこで、デバイスドライバで行う処理を、例えばアクセスポイントへの接続指示や切断指示などのデバイス非依存な形で指示する。
【００２０】
これにより、上位層は、ハンドオーバに関する判断をするための情報を知ることができ、上位層の判断によって、予めハンドオーバの準備をしておいて、データリンク層のチャネル切換えと上位層の移動登録とを実質的に同時に実行することが可能となる。
【００２１】
この点について、従来の手順では、
１、データリンク層の判断でデータリンク層の切換えが発生
２、データリンク層の切換えが終了
３、ネットワーク層が移動を検出
４、ネットワーク層のハンドオーバ(アドレスや経路設定と位置登録)
となるのに対して、本実施例では、
１、データリンク層がネットワーク層に切断の予測を通知
２、ネットワーク層はハンドオーバの必要性と移動先を判断して準備
３、ネットワーク層がデータリンク層に切換えを指示
４、データリンク層がネットワーク層に切換え完了を通知
５、切換え完了通知を受けて、ネットワーク層のハンドオーバ
となる。これによって、ハンドオーバに伴う切断時間を短縮することができる。
【００２２】
図３は、本実施例において抽象アクセスポイント情報の更新の手順を示すフローチャートである。通常は受信待ちの状態にあって（ステップＳ１）、デバイスドライバは近隣のアクセスポイントが送信するビーコンフレームやプローブレスポンスフレームなどのブロードキャストフレームを受信する（ステップＳ２）。また、接続しているアクセスポイントが送信する自分宛のフレームも受信する。もしも、デバイスがプロミスキャスモードで動作していれば、それらに限らず全てのフレームを受信する。フレームを受信すると、受信フレームの電波強度やノイズ情報を取得する。ＡＰテーブル４０から送信元アクセスポイントを検索し、送信元アクセスポイントに該当するエントリがあった場合には、取得した電波強度やノイズ情報を用いてエントリを更新する（ステップＳ３）。該当するエントリが無かった場合には新たにエントリを作成する。
【００２３】
受信フレームがアクセスポイントに関する情報を広告するためのビーコンフレームやプローブレスポンスフレームであった場合には（ステップＳ４）、受信フレームが格納するパラメータと、該当するエントリのパラメータを比較し、変更があった場合には該当するエントリを更新する（ステップＳ５）。
【００２４】
定期的にＡＰテーブル４０の情報をチェックし（ステップＳ１１）、一定時間フレームを受信しなかったアクセスポイントに関するエントリは削除する（ステップＳ１２）。定期的にＡＰテーブル４０の情報を用いて、抽象テーブル５０の更新を行う（ステップＳ１３）。抽象テーブル５０の更新の際には、電波強度やノイズ情報の変化を、通信品質という形でデバイス非依存な指標へと抽象化する。この抽象化の処理はデバイスによって異なる。
【００２５】
なお、本発明は上記実施例に限定されるものではない。
【００２６】
本発明の移動通信装置は、コンピュータを本移動通信装置として機能させるためのプログラムでも実現される。このプログラムは、コンピュータで読み取り可能な記録媒体に格納されていてもよい。
【００２７】
このプログラムを記録した記録媒体は、移動通信装置のＲＯＭそのものであってもよいし、また、外部記憶装置としてＣＤ−ＲＯＭドライブ等のプログラム読取装置が設けられ、そこに記録媒体を挿入することで読み取り可能なＣＤ−ＲＯＭ等であってもよい。
【００２８】
また、上記記録媒体は、磁気テープ、カセットテープ、フレキシブルディスク、ハードディスク、ＭＯ／ＭＤ／ＤＶＤ等、又は半導体メモリであってもよい。
【図面の簡単な説明】
【００２９】
【図１】本発明の一実施例に係る移動通信装置を含むシステム全体の構成を示すブロック図である。
【図２】本実施例に係る移動通信装置の構成を示すブロック図である。
【図３】本実施例において抽象アクセスポイント情報の更新の手順を示すフローチャートである。
【符号の説明】
【００３０】
１０  携帯機器
２０Ａ〜２０Ｄ  アクセスポイント
３０Ａ、３０Ｂ  アクセスルータ
３５  位置管理サーバ
４０  ＡＰテーブル
５０  抽象テーブル
６１  フレーム受信割込部
６２  フレーム受信関数
６３  フレーム処理関数
６４  接続通知部
６５  電波強度・ノイズ情報など更新部
６６  ＡＰパラメータ更新部
６７  タイマ
６８  抽象化部
６９  切断割込部
７０  切断検出関数
７１  切断通知部
７２  ＡＰ検出・消失・切断予測通知部
７３  情報要求と取得部
７４  接続・切断指示部
７５  接続・切断関数
７６  ハードウエア指示部
１００Ａ〜１００Ｄ  無線セル
【図１】
2006332916.tif 000003
【図２】
2006332916.tif 000004
【図３】
2006332916.tif 000005