本発明は、包括的には、移動端末を受け持つ第1の基地局から移動端末を受け持つと予想される第2の基地局へ移動端末のハンドオーバ手順を実行しなければならないかどうかを判断することの分野に関する。
現在の無線セルラーネットワークは、たとえ、その無線セルラーネットワーク内の移動端末のロケーションが変化していても、離れた電気通信デバイスと通信を継続する可能性を移動端末に提供する。従来の無線セルラーネットワークは、複数の基地局で構成され、各基地局は、所与のエリアをカバーする1つ又は数個のセルを制御する。基地局のそれぞれは、集中化装置によって制御され、通信パラメータ等の通知を受ける。無線セルラーネットワークの集中化装置は、課金目的で通信に関係したアイテムを監視すること、又は、異なる基地局を通じた通信の継続に必要な情報を収集するために通信に関係したアイテムを監視することを前提とする。遠隔電気通信デバイスと通信している移動端末が、或る基地局によって制御された或るセルから、別の基地局によって制御された別のセルへ移動する時、集中化装置は、その別の基地局へ、移動端末と遠隔電気通信デバイスとの間の通信の継続に必要なすべての情報を転送する。このような無線セルラーネットワークは、従来、モバイル運営者(mobile operator)によって設置されて管理される。人的資源、基盤、金融資源、及び時間の点からの投下資本によるだけでなく、集中化装置の容量によっても、モバイル運営者がこれらの無線セルラーネットワークによって提供されるサービスを拡張することは制限を受ける。
このような制限は、セルが数百平方メートルの限られたエリアをカバーする場合に大幅に増加する。その理由は、所与のサイズのエリアをカバーするようにモバイル運営者によって運営されるべきである、一般にマイクロセルと呼ばれるこのようなセルの個数が、従来使用されていたセルの個数と比較して増加するからである。換言すれば、単一のモバイル運営者によって管理される無線セルラーネットワークの従来の集中化アーキテクチャは、マイクロセルネットワークに適合していない。
無線インターネットサービスプロバイダ(WISP)の中には、例としてWiFiローカルエリアネットワークのような、異なる無線ローカルエリアネットワーク(WLAN)を通じてインターネットサービスにアクセスする可能性を移動端末に提供することを開始したものがある。WiFiローカルエリアネットワークは、小規模オフィス又はホーム市場でますます採用されている。このようなWLANが必要とする、人的資源、基盤、金融資源の点での投下資本は、無線セルラーネットワークと比較してはるかに少ない。このような無線エリアネットワークの増大によって、隣接した無線ローカルエリアネットワークの各カバーエリア間でいくつかのオーバーラップが生み出されている。
カバーエリアのこのようなオーバーラップによって、従来の無線セルラーネットワークのセルにより生み出された状況と類似した状況が生み出されている。
これまで、これらの無線ローカルエリアネットワークの基地局が、効率的なハンドオーバ手順に必要な情報を得るための手段を有しない限り、このような無線ローカルエリアネットワーク間での通信の何らかのハンドオーバ手順を実現することは困難であった。
米国特許出願公開第2003/0235163号明細書(要約書、段落[0006]、[0007]、[0024]〜[0026])
欧州特許出願公開第1578059号明細書(要約書、段落[0005]〜[0008]、[0012]、[0016]、[0017]、[0022]〜[0024])
米国特許第6577868号明細書(要約書、第2欄1行〜62行、第4欄18行〜第7欄40行)
したがって、本発明の目的は、非集中化無線ネットワークにおいて、(特に基地局が異なるエンティティに属する場合に)移動端末を受け持つ第1の基地局から移動端末を受け持つと予想される第2の基地局へ移動端末のハンドオーバを可能にする方法及びデバイスを提案することである。
その目的のために、本発明は、移動端末を受け持つ第1の基地局から移動端末を受け持つと予想される第2の基地局へ移動端末のハンドオーバ手順を実行しなければならないかどうかを判断するための方法であって、移動端末は、第1の基地局を通じて電気通信デバイスと通信しており、当該方法は、第2の基地局が、移動端末と電気通信デバイスとの間で通信の開始から転送されたアイテムに関係した情報を受信した場合に、第2の基地局が、ハンドオーバ手順を実行する、ことを特徴とする方法に関する。
本発明はまた、移動端末を受け持つ第1の基地局から移動端末を受け持つと予想される第2の基地局へ移動端末のハンドオーバ手順を実行しなければならないかどうかを判断するためのデバイスであって、移動端末は、第1の基地局を通じて電気通信デバイスと通信しており、当該デバイスは、第2の基地局に含まれ、且つ、当該デバイスは、移動端末と電気通信デバイスとの間で通信の開始から転送されたアイテムに関係した情報を受信するための手段と、アイテムに関係した情報に従ってハンドオーバ手順を実行しなければならないかどうか決定するための手段とを備える、ことを特徴とするデバイスに関する。
したがって、第2の基地局は、ハンドオーバ手順を実行する前に、移動端末と電気通信デバイスとの間で転送されるアイテムに関係した情報を知っている。第2の基地局は、さらに、自身を通過し得る残りの通信の内容の予測を可能にするいくらかの情報を有する。第2の基地局は、これによって、行わなければならない現在のタスク及びハンドオーバが実行されると実行されると予測されたタスクによるいくつかの起こり得る輻輳問題を回避することができる。
特定の特徴によれば、アイテムに関係した情報は、第1の基地局が移動端末から取得し、移動端末を受け持つ第1の基地局によって第2の基地局へ転送される。
したがって、移動端末と電気通信デバイスとの間で転送されるアイテムに関係した情報を求めなければならない集中化システムは必要とされない。
さらに、移動端末間の通信は、ハンドオーバ手順によっていくつかの基地局を通過する可能性があるので、移動端末は、通信の開始からのアイテムに関係した情報を求めるのに最も良く適合したデバイスである。基地局は、電気通信デバイスとの通信中の単なる一時的な参加者にすぎない。
また、移動端末は、通信の開始からのアイテムに関係した情報を求めるが、第2の基地局との通信リンクを確立する前に、アイテムに関係した情報を第2の基地局へ転送する必要はない。この転送は、ハンドオーバが実現される前に行うことができる。したがって、移動端末は、遠隔デバイスとの通信を継続するための第1の基地局との通信、及び、ハンドオーバを実現する前にこの情報を転送するための第2の基地局との通信を同時に行うためのデュアル受信機を保持する必要はない。
特定の特徴によれば、第2の基地局は、ハンドオーバ手順の後に、移動端末から、移動端末と電気通信デバイスとの間で通信の開始から転送されたアイテムに関係した情報をさらに受信する。
したがって、第2の基地局は、第1の基地局から受信したアイテムに関係した情報が、移動端末から受信したアイテムに関係した情報と矛盾しない(compatible)かどうかをチェックすることができる。
これらの情報が矛盾する場合、それは、移動端末又は第1の基地局が、誤った情報を転送したことを意味する。第1の基地局が誤った情報を転送した場合は、ハンドオーバを実行する決定が信頼できない情報から行われており、第2の基地局のオペレーションを妨害するおそれがある。移動端末が誤った情報を転送した場合、それは、移動端末の決定が不正確であるか、又は、改竄されていることを意味する。
第2の基地局は、さらに、アイテムに関係した情報が矛盾している場合に、通信の転送を停止することもできる。
したがって、移動端末からの不正確な決定又は改竄された決定を提供した第1の基地局からの通信のハンドオーバを受け付けた第2の基地局のオペレーションの妨害は、時間的に限定される。
特定の特徴によれば、アイテムに関係した情報は、最初に転送されたアイテムと最後に転送されたアイテムとの間で経過した時間、及び/又は、通信の開始から転送されたアイテムの量、及び/又は、アイテムに関連したサービス品質、及び/又は、通信の開始から転送されたアイテムのタイプ、及び/又は、通信の開始から転送されていないアイテムの量である。
したがって、第2の基地局は、最初に転送されたアイテムと最後に転送されたアイテムとの間で経過した時間を知っているので、第1の基地局又は移動端末が、通信の開始から経過した時間を増加または減少させようとしているかどうかをチェックすることができる。このような情報は、通信の代金が、通信の継続期間に従って移動端末に請求される場合に重要である。アイテムに関係した情報を求めることが、移動端末によって行われる限り、誰かが通信の継続期間を減少させようと試みる可能性がある。第1の基地局又は第2の基地局が、移動端末、又は、その移動端末がクライアントであるモバイル運営者に提供されるサービスの代金を請求する場合、第1の基地局は、余分の支払いを得るために通信の継続時間を増加させようと試みる可能性がある。
さらに、第2の基地局は、通信の開始から経過した時間及び通信の開始から転送されたアイテムの量、並びに/又は、アイテムに関連したサービス品質、並びに/又は、通信の開始から転送されたアイテムのタイプ、並びに/又は、通信の開始から転送されていないアイテムの量に関係した情報を知っているので、通信の予測された内容が、アイテムに関係した情報に従っているかどうかをチェックすることができ、さらに、通信が第2の基地局の資源を通過する認可を与え続けるかどうかを決定する。
特定の特徴によれば、移動端末と電気通信デバイスとの間で転送されたアイテムに関係した情報は、証明書に含まれ、当該証明書は、移動端末の一意の識別子と、その移動端末がクライアントであるモバイル運営者のサーバの一意の識別子と、タイムスタンプと、処理中の通信の識別子と、上記情報、上記識別子、上記タイムスタンプを、移動端末の私有鍵によって、又は、移動端末がクライアントであるモバイル運営者のサーバの私有鍵によって、符号化することにより取得された署名とをさらに含む。
したがって、第2の基地局は、受信した情報が破損しているかどうかをチェックすることができる。第1の基地局がアイテムに関係した情報を変更した場合、第2の基地局は、それを検出し、自身の処理資源を他のタスク用に節約するために、第1の基地局とのさらなるハンドオーバを停止するように決定することができる。
さらに、第2の基地局のオペレーションは、移動端末からの不正確な決定又は改竄された決定を提供した第1の基地局からの通信ハンドオーバの要求によって妨害されない。
さらに、第2の基地局は、移動端末、又は、その移動端末がクライアントであるモバイル運営者のサーバを識別することができる。第2の基地局は、さらに、アイテムに関係した情報と共にこれらの識別子を使用して、第2の基地局が提供しているサービスのいくつかの経済的補償を要求することができる。また、第2の基地局は、移動端末がクライアントであるモバイル運営者のサーバに、移動端末が電気通信デバイスと通信していることを通知することもできる。
さらに、証明書がタイムスタンプを含む限り、タイムスタンプの値に従って証明書を順序付けることが可能である。加えて、最後に受信した証明書のタイムスタンプよりも古いタイムスタンプを含む証明書を受信した場合、誰かが古い証明書をコピーキャット(copycat)として再利用しようと試みていることを検出することが可能である。
さらに、証明書が通信の識別子を含む場合、異なる通信に関係した証明書を混合することはもはや可能ではない。したがって、通信ごとのレベルで経済的補償に差異を設けることができる。
さらに、移動端末がクライアントであるモバイル運営者のサーバの私有鍵を使用して署名が取得される場合、第2の基地局は、第1の基地局でも移動端末でもない第3のパーティからの証明された情報を有する。
特定の特徴によれば、第2の基地局が、移動端末を受け持つことを停止する時に、第2の基地局は、移動端末がクライアントであるモバイル運営者のサーバへ、少なくとも移動端末から最後に受信した証明書を含むメッセージを転送する。
したがって、サーバは、第2の基地局を通過する通信の一部において転送されたアイテムの継続時間及び/又は量を求めることができる。
さらに、サーバ又は第2の基地局は、課金又は補償の目的で証明書を使用することができる。この場合、課金の決定は、大幅に削減され、もはや複雑な処理も専用デバイスも何ら必要としない。移動端末は、通信の期間中に転送されたアイテムに関係した情報を求め、サーバ又は第2の基地局は、その後、無線セルラーネットワークのワークロードを評価するために、又は、上述したような他の目的で、その情報を使用することができる。
さらに別の態様によれば、本発明は、移動端末を受け持つ第1の基地局から移動端末を受け持つと予想される第2の基地局へ移動端末のハンドオーバ手順の情報を転送するための方法であって、移動端末は、第1の基地局を通じて電気通信デバイスと通信しており、当該方法は、ハンドオーバ手順よりも前に、第1の基地局が、移動端末と電気通信デバイスとの間で通信の開始から転送されたアイテムに関係した情報を第2の基地局へ転送する、ことを特徴とする方法に関する。
本発明はまた、移動端末を受け持つ第1の基地局から移動端末を受け持つと予想される第2の基地局へ移動端末のハンドオーバ手順の情報を転送するためのデバイスであって、移動端末は、第1の基地局を通じて電気通信デバイスと通信しており、当該デバイスは、第1の基地局に含まれ、且つ、当該デバイスは、ハンドオーバ手順よりも前に、移動端末と電気通信デバイスとの間で通信の開始から転送されたアイテムに関係した情報を第2の基地局へ転送するための手段を備える、ことを特徴とするデバイスに関する。
特定の特徴によれば、第1の基地局は、ハンドオーバ手順よりも前に、移動端末から複数の証明書を受信し、移動端末から受信した各証明書は、少なくとも、移動端末と電気通信デバイスとの間で通信の開始から転送されたアイテムに関係した情報と、移動端末の一意の識別子と、その移動端末がクライアントであるモバイル運営者のサーバの一意の識別子と、処理中の通信の識別子と、少なくとも上記情報及びこれらの識別子を移動端末の私有鍵によって符号化することにより取得された署名とを含む。
したがって、第1の基地局のタスクは簡単化され、第1の基地局は、以前に移動端末から受信した1つ又は複数の証明書を第2の基地局へ単に転送するだけでよい。
特定の特徴によれば、第1の基地局が、移動端末を受け持つことを停止する時に、基地局は、その移動端末がクライアントであるモバイル運営者のサーバへ、少なくとも移動端末から最後に受信した証明書、又は、移動端末から最初および最後に受信した証明書を含むメッセージを転送する。
したがって、サーバは、移動端末によって使用される基地局のそれぞれを通過する通信の一部において転送されたアイテムの継続時間及び/又は量を求めることができる。
さらに、サーバ又は基地局は、課金目的で証明書を使用することもできる。この場合、課金の決定は大幅に削減され、複雑な処理も専用デバイスも何ら必要としない。移動端末は、通信の期間中に転送されたアイテムに関係した情報を転送し、サーバ又は基地局は、その後、無線セルラーネットワークのワークロードを評価するために、又は、上述したような他の目的で、その情報を使用することができる。
さらに、進行中の通信の補償を得るために、第1の基地局が記憶する必要があるものは、その通信について最後に受信した証明書、又は、最初の証明書及び最後の証明書のみである。中間の証明書は廃棄することができる。第1の基地局の記憶ユニットのサイズは、したがって、最小にすることができる。
特定の特徴によれば、第1の基地局は、サーバへ転送されたメッセージに応答して、アイテムの証明された量と、サーバの一意の識別子と、処理中の通信の識別子と、少なくともアイテムの証明された量及び識別子をサーバの私有鍵によって符号化することにより取得された署名とを含む証明書をサーバから受信し、アイテムの証明された量は、移動端末と電気通信デバイスとの間で第1の基地局を通じて転送されたアイテムの量である。
したがって、第1の基地局は、課金目的で証明書を使用することができる。この場合、課金の決定は大幅に削減され、複雑な処理も専用デバイスも何ら必要としない。
特定の特徴によれば、アイテムの証明された量は、サーバへ転送された、最初に受信した証明書及び最後に受信した証明書に含まれるアイテムに関係した情報から計算されるか、又は、サーバへ転送された、最後に受信した証明書に含まれるアイテムに関係した情報と、前に移動端末を受け持っていた別の基地局によってサーバへ転送され、最後に受信された証明書に含まれるアイテムに関係した情報とから計算される。
特定の特徴によれば、第1の基地局は、第2の基地局へ転送されたアイテムに関係した情報に応答して、第2の基地局から証明書を受信し、当該証明書は、少なくとも、アイテムに関係した情報と、第2の基地局の一意の識別子と、処理中の通信の識別子と、少なくとも上記情報及び上記識別子を第2の基地局の私有鍵によって符号化することにより取得された署名とを含む。
特定の特徴によれば、第1の基地局は、移動端末がクライアントであるモバイル運営者のサーバへ、第2の基地局から受信した証明書を転送する。
特定の特徴によれば、第1の基地局は、移動端末がクライアントであるモバイル運営者のサーバから、移動端末を認証する証明書を受信する。
さらに別の態様によれば、本発明は、プログラマブルデバイスに直接ロード可能とすることができるコンピュータプログラムであって、該コンピュータプログラムがプログラマブルデバイスで実行されると、本発明による方法のステップを実施するための命令又はコード部分を含む、コンピュータプログラムに関する。
コンピュータプログラムに関係した機能及び利点は、本発明による方法及びデバイスに関係して上記で述べた機能及び利点と同じであるので、ここでは繰り返さないことにする。
また、本発明は、第1の基地局及び第2の基地局から転送される信号であって、第1の基地局は移動端末を受け持ち、第2の基地局は移動端末を受け持つと予想され、移動端末は、第1の基地局を通じて電気通信デバイスと通信しており、該信号は、移動端末と電気通信デバイスとの間で通信の開始から転送されたアイテムに関係した情報を含む、ことを特徴とする信号に関する。
信号に関係した機能及び利点は、本発明による方法及びデバイスに関係して上記で述べた機能及び利点と同じであるので、ここでは繰り返さないことにする。
本発明の特徴は、一例の実施の形態の以下の説明を読むことによってより明らかになる。以下の説明は、添付図面に関して作成されたものである。
図1は、本発明による無線セルラーネットワークのアーキテクチャを表す図である。
図1の無線セルラーネットワークでは、いくつかの基地局10a、10b、10c、及び10dが、電気通信ネットワーク50を通じて互いにリンクされている。これらの基地局10a〜10dは、電気通信ネットワーク50を通じて、モバイル運営者のサーバ20a及び20bと情報を交換する。基地局10a〜10dは、固有のアクセスネットワーク運営者(access network operator)の基地局10であるか、又は、さまざまなアクセスネットワーク運営者の基地局10である。
アクセスネットワーク運営者は、少なくとも基地局10が属する会社の人のようなエンティティである。
モバイル運営者は、自身のクライアントに通信サービスを提供するエンティティである。モバイル運営者のクライアントは、モバイル運営者によって提供されるサービスへのアクセス許可を受けるために、モバイル運営者に代金を支払う。
本発明によれば、通信中に転送されるアイテムは、限定ではなく例として、パケット、データグラム、又は一連のフローのセグメントの形で転送されるデータである。
モバイル運営者によって提供されるサービスは、限定ではなくたとえば、移動端末30と遠隔電気通信デバイス40との間のデータ通信セッションの確立である。このデータ通信セッションは、事前に交渉されたサービス品質を有する。このサービス品質は、セッション継続期間、セッション中に交換されるデータのボリューム、アイテム又はデータの交換に使用されるデータ転送速度、パケットデータ伝送の待ち時間等の点における移動端末からの要件を表す。
アクセス運営者(access operator)は、そのアクセス運営者の基地局10が移動端末30を受け持つと、移動端末30のユーザ又は移動端末30のモバイル運営者のいずれかに料金を請求することができる。
サーバ20a及び20bは、異なるモバイル運営者のサーバである。各サーバ20は、各モバイル運営者のクライアントの移動端末30の識別子を記憶し、各クライアントのモバイル運営者のサービスの使用に応じて各クライアントが支払わなければならない金額を決定することができる。サーバ20a及び20bは、基地局10から受信する情報及び/又は基地局10へ転送する情報を証明する(certify)ことができる。
各基地局10a〜10dは、それぞれのセル15a〜15dを担当する。基地局10a〜10dは、限定ではなく一例としてWiFiローカルエリアネットワークのような無線ネットワークの基地局である。
セル15a又は15d内に位置する移動端末30a〜30dは、セル15a又は15dを管理する基地局10a又は10dを通じていくつかの通信を確立することができ、且つ/又は、受信することができる。
図1では、4つの基地局10a〜10dしか示されていないが、より重要な数(a more important number)の基地局10を本発明で使用できることが理解できる。図1では、基地局10a、10b、10c、及び10dごとにそれぞれ1つのセル15a、15b、15c、及び15dしか示されていないが、より重要な数のセル15が本発明で基地局10によって管理されることが理解できる。
セル15は、ある基地局10がそのセル15に含まれる移動端末30に対して最高の通信品質を提供する地理的ロケーションの集合として定義することができる。
基地局10は、移動端末30と遠隔電気通信デバイス40との間に当該基地局10を通じて通信が確立された場合に移動端末30を受け持つことになる。
図1では、2つの移動端末30しか示されていないが、より重要な数の移動端末30が、本発明で無線セルラーネットワークのサービスにアクセスすることが理解できる。
本発明によれば、各移動端末30は、遠隔電気通信デバイス40との、無線セルラーネットワークを通じた通信の開始から転送されたアイテムに関係した情報を求めるための手段を有する。アイテムに関係した情報を求めるための手段は、例として、通信の開始から転送されたアイテムの量をカウントするための手段、転送されたアイテムのタイプを記憶するための手段、あるアイテムが転送された時刻を求めるための手段である。アイテムに関係した情報は、限定ではなく例として、最初のアイテムの転送と最後の転送アイテムとの間に経過した時間、及び/又は、通信の開始から転送されたアイテムの量、及び/又は、アイテムに関連したサービス品質、及び/又は、通信の開始から転送されたアイテムのタイプ、及び/又は、通信の開始から転送されていないアイテムの量である。
各移動端末30には、一つの私有鍵及び一つの公開鍵が関連付けられる。移動端末30は、自身の私有鍵を秘密状態に保持する。モバイル運営者の各サーバ20は、そのモバイル運営者のクライアントである移動端末30の公開鍵を記憶する。各サーバ20は、要求に応じて、公開鍵を基地局10a〜10dへ配信する。移動端末30の私有鍵は、証明書に含まれるデータの完全性を保護する署名を生成するのに使用される。移動端末30の公開鍵によって、基地局10は、移動端末30の私有鍵で生成された証明書に含まれる情報が破損しているかどうかをチェックすることが可能になる。
より正確に言えば、通信している各移動端末30は、証明書の形の情報を定期的に送信する。証明書は、移動端末30の一意の識別子と、移動端末30のモバイル運営者のサーバ20の一意の識別子と、移動端末30と電気通信デバイス40との間で通信の開始から転送されたアイテムに関係した情報と、タイムスタンプと、処理中の通信の識別子と、少なくとも上記情報および上記識別子を移動端末30の私有鍵によって符号化することにより取得された署名とを含む。公開鍵は、証明書の内容と共に、証明書の内容の完全性(integrity)を保証するのに使用でき、且つ、移動端末30を証明書の送信元として認証するのに使用できる。私有鍵及び公開鍵の性質、署名の生成、完全性の検出、及び送信元認証方式は、たとえば、RSA認証アルゴリズムに準拠するように選ぶことができる。
電気通信ネットワーク50は、限定ではなく例として、専用有線ネットワーク、又は、公衆交換ネットワークのような公衆ネットワーク、又は、IPベースネットワーク、又は、無線ネットワーク、又は、上記列挙したネットワークを組み合わせたものである。
電気通信ネットワーク50は、本発明に従って、基地局10、遠隔電気通信デバイス40、及びサーバ20を互いに接続し、基地局10間のメッセージの転送、基地局10と遠隔電気通信デバイス40との間のメッセージの転送、及び、基地局10とサーバ20との間のメッセージの転送を可能にする。
本発明では、各移動端末30は、各通信の期間中、移動端末と遠隔電気通信デバイス40との間で転送されたアイテムに関係した情報を求め、その通信の開始から転送されたアイテムに関係した情報を他の情報と組み合わせて、証明書の形で、移動端末30を受け持つ基地局10へ定期的に転送する。
移動端末30を受け持つ基地局10とは、その基地局10を介して、その移動端末30と、別の移動端末又はサーバ、ビデオオンデマンドサーバ又はSMSサーバ等のような遠隔電気通信デバイス40との間で通信が確立される、基地局10である。
このような通信を通じて転送されたアイテムのタイプは、従来の電話呼のような同期サービス、又は、SMSメッセージの転送若しくは画像転送若しくは画像シーケンスの転送のような非同期サービスのように、遠隔電気通信デバイス40によって提供されるサービスに関係している。
アイテムに関連したサービス品質は、限定ではなく例として、受信アイテムについて、移動端末30により求められたパケットエラーレートである。
通信フェーズの終了時、たとえば、移動端末30と遠隔電気通信デバイス40との間の通信セッションの終了時、又は、別の基地局10との通信のハンドオーバを行わなければならない時に、移動端末30を受け持つ基地局10は、移動端末30のモバイル運営者又はユーザから補償を得るために、移動端末30のモバイル運営者のサーバ20へ、少なくとも移動端末30から最後に受信された証明書を転送する。この補償は、限定ではなく例として、合計金額、又は、電気通信ネットワーク50に接続するための手数料の削減であり、それが移動端末30のモバイル運営者及び/又はユーザに提供したサービスに従うものである。同様にして、モバイル運営者は、移動端末30のユーザに料金を請求するために、受信した複数の証明書又は1つの証明書を使用する。
さまざまなエンティティが無線セルラーネットワークの確立に貢献し、これらのエンティティのそれぞれは、本発明により、無線セルラーネットワークにおけるその貢献度に従って、無線エリアネットワークを通じて確立された通信から信頼できる収益を得ることができる。
本発明の一般的原理は、基地局10が移動端末30を受け持ち、且つ、基地局10から別の第2の基地局10(以下、移動端末30を受け持つと予想される基地局10という)へ移動端末30のハンドオーバを実行しなければならない時に、移動端末30を受け持つと予想される基地局10が、移動端末30と遠隔電気通信デバイス40との間で通信の開始から転送されたアイテムに関係した情報を受信した場合に限り、ハンドオーバを認可するということである。このような情報は、限定ではなく好ましくは、移動端末30を現在受け持っている基地局10によって転送される。
図2は、本発明によるモバイル運営者のサーバのアーキテクチャを表す図である。
サーバ20は、たとえば、バス201によって相互接続されるコンポーネント、並びに、図5、図6及び図9に開示するようなプログラムによって制御されるプロセッサ200に基づくアーキテクチャを有する。
バス201は、読み出し専用メモリROM202、ランダムアクセスメモリRAM203、電気通信ネットワークインターフェース206、及びデータベース204にプロセッサ200をリンクする。
メモリ203は、変数、並びに、図5、図6及び図9に開示するようなアルゴリズムに関係するプログラムの命令を収容することを目的とするレジスタを含む。
プロセッサ200は、図5、図6及び図9に開示するようなアルゴリズムを実行する。
読み出し専用メモリ202は、図5、図6及び図9に開示するようなアルゴリズムに関係するプログラムの命令を含む。これらの命令は、サーバ20の電源が投入された時にランダムアクセスメモリ203へ転送される。
サーバ20は、ネットワークインターフェース206を通じて電気通信ネットワーク50に接続されている。例として、ネットワークインターフェース206は、DSL(デジタル加入者線)モデム、又は、ISDN(サービス総合デジタル網)インターフェース、又は、PLC(電力線通信)インターフェース、又は、無線インターフェース等である。このようなインターフェースを通じて、サーバ20は、図5、図6及び図9に関して開示されるように、基地局10とメッセージを交換する。
データベース204は、サーバ20が属するモバイル運営者のクライアントの移動端末30に関係したすべての情報、及び、基地局10によって実行されるサービスに関係した情報を含む。データベース204は、移動端末30の公開鍵、及び、サーバ20が属するモバイル運営者のクライアントの移動端末30に関係した基地局10a〜10dによって転送される証明書を含む。
図3は、本発明による基地局のアーキテクチャを表す図である。
基地局10は、たとえば、バス301によって相互接続されるコンポーネント、並びに、図4、図7及び図8に開示するようなプログラムによって制御されるプロセッサ300に基づくアーキテクチャを有する。
バス301は、読み出し専用メモリROM302、ランダムアクセスメモリRAM303、ネットワークインターフェース304、及び無線インターフェース306にプロセッサ300をリンクする。
RAMメモリ303は、変数と、移動端末30又は他の基地局10又はサーバ20によって転送された証明書と、移動端末30及びサーバ20の公開鍵と、信頼できないサーバ20のリストと、信頼できない移動端末30のリストと、信頼できない基地局10のリストと、図4、図7、及び図8に開示したようなアルゴリズムに関係したプログラムの命令とを収容することを目的としたレジスタを含む。
プロセッサ300は、ネットワークインターフェース304及び無線インターフェース306のオペレーションを制御する。
読み出し専用メモリ302は、図4、図7及び図8に開示するようなアルゴリズムに関係するプログラムの命令を含む。これらの命令は、基地局10の電源が投入された時にランダムアクセスメモリ303へ転送される。
基地局10は、ネットワークインターフェース304を通じて電気通信ネットワーク50に接続されている。例として、ネットワークインターフェース304は、DSL(デジタル加入者線)モデム又はISDN(サービス総合デジタル網)インターフェース等である。このようなインターフェースを通じて、基地局10は、サーバ20及び無線セルラー電気通信ネットワークの他の基地局10と情報を交換する。基地局10のセル15に含まれる移動端末30によって確立又は受信された、遠隔電気通信デバイス40との通信は、ネットワークインターフェース304及び無線インターフェース306を通過する。
無線インターフェース306を通じて、基地局10は、基地局10が受け持つ移動端末30から、他の情報と組み合わせて、通信の開始から転送されたアイテムに関係した情報を定期的に受信する。
図4は、本発明による、基地局によって実行されるアルゴリズムである。
本アルゴリズムは、基地局10のセル15に含まれる移動端末30が、基地局10を通じて遠隔電気通信デバイス40との通信の確立を開始するごとに、若しくは、基地局10を通じて遠隔電気通信デバイス40から通信を受信するごとに、又は、基地局10が受け持つ移動端末30のハンドオーバ手順が行われる時に、実行される。
基地局10のセル15に含まれる移動端末30が、図1に示す遠隔電気通信デバイス40との通信の確立を開始する時、基地局10は、無線インターフェース306からメッセージを受信する。
基地局10のセル15に含まれる移動端末30が、遠隔電気通信デバイス40から通信を受信した時、又は、ハンドオーバ手順が行われる時、基地局10は、ネットワークインターフェース304からメッセージを受信する。このようなメッセージは、例として、無線セルラーネットワークの、図1には図示しないサーバによって送信される。
このようなメッセージは、少なくとも、移動端末30の識別子及びモバイル運営者(この移動端末30がクライアントであるか又は登録されているモバイル運営者)のサーバ20の識別子を含む。
ステップS400において、基地局10のプロセッサ300は、メッセージがハンドオーバ手順を表すのか、それとも新たな通信を表すのかをチェックする。
メッセージがハンドオーバ手順を表す場合、プロセッサ300は、ステップS419に移動する。メッセージが新たな通信を表し、その移動端末30の識別子が信頼できない移動端末30のリストに含まれず、その移動端末30のモバイル運営者のサーバ20の識別子が信頼できないサーバのリストに含まれない場合、プロセッサ300は、ステップS401に移動する。それ以外の場合、プロセッサ300は、後続のメッセージを取り扱うために、ステップS400に戻る。
ステップS401において、プロセッサ300は、無線インターフェース306及びネットワークインターフェース304を通じて、移動端末30と遠隔電気通信デバイス40との間に通信を確立する。同じステップにおいて、プロセッサ300は、その通信に関連したタイマをリセットし、移動端末30の公開鍵を有しない場合には、サーバ20又は移動端末30から移動端末30の公開鍵を得る。この公開鍵は、その後、RAM303に記憶される。
次のステップS402において、プロセッサ300は、基地局10が受け持つ移動端末30から証明書を受信したかどうかをチェックする。この証明書は、限定ではなく例として、移動端末30の一意の識別子と、移動端末30がクライアントであるモバイル運営者のサーバ20の一意の識別子と、移動端末30と遠隔電気通信デバイス40との間で通信の開始から転送されたアイテムに関係した情報と、タイムスタンプと、処理中の通信の識別子と、署名とを含む。
証明書が受信されない場合、プロセッサ300は、ステップS403に移動する。ステップS403において、プロセッサ300は、処理中の通信に関連したタイマが満了しているかどうかをチェックする。タイマが満了していない場合、プロセッサ300は、ステップS402に戻る。タイマが満了しており、且つ、証明書がステップS402で移動端末30から受信されない場合、プロセッサ300は、ステップS404に移動して、通信を停止する。
次のステップS430において、プロセッサ300は、RAMメモリ303が、処理中の通信の期間中に記憶された1つの証明書を含むかどうかをチェックする。証明書が記憶されている場合、プロセッサ300は、ステップS409に移動する。そうでない場合、プロセッサ300は、ステップS400に戻り、処理する別のメッセージを待つ。
証明書が移動端末30から受信された場合、プロセッサ300は、ステップS402からステップS405に移動する。
そのステップにおいて、プロセッサ300は、受信された証明書が受け付け可能なものである(acceptable)かどうかをチェックする。
そのために、プロセッサ300は、RAMメモリ303に含まれる移動端末30の公開鍵で署名を復号し、復号した情報が、証明書に含まれる情報と同一であるかどうかを判断する。情報が異なる場合、証明書は破損しており、プロセッサ300は、次に、ステップS404に移動して、通信の処理を停止する。また、プロセッサ300は、モバイル運営者のサーバ20の識別子が、信頼できないとみなされた識別子の1つであるかどうかもチェックする。サーバ20の識別子が信頼できない場合、プロセッサ300は、ステップS404に移動して、通信を停止する。証明書に含まれる、通信の開始から転送されたアイテムに関係した情報又はタイムスタンプが、以前に移動端末30から受信した証明書に含まれる、通信の開始から転送されたアイテムに関係した情報又はタイムスタンプと矛盾する場合、プロセッサはステップS404に移動して、通信を停止する。証明書に含まれる、通信の開始から転送されたアイテムに関係した情報が、後に開示するステップS421で記憶された、通信の開始から転送されたアイテムに関係した情報と矛盾する場合、すなわち、この情報よりも少ない場合、プロセッサ300は、ステップS404に移動して、通信を停止する。
証明書が受け付け可能なものである場合、プロセッサ300は、ステップS406に移動して、受信した証明書をRAMメモリ303に記憶する。
次のステップS407において、プロセッサ300は、移動端末30についてハンドオーバが要求されているかどうか、又は、必要とされているかどうかをチェックする。ハンドオーバが要求されておらず必要ともされていない場合、プロセッサ300は、ステップS408に移動する。ハンドオーバが要求されているか必要とされている場合、プロセッサ300は、ステップS411に移動する。
ステップS408において、プロセッサ300は、通信が解放されている(released)かどうかをチェックする。通信が解放されていない場合、プロセッサ300は、ステップS402に戻って、別の証明書を待つ。通信が解放されている場合、プロセッサ300は、ステップS409に移動して、最後に記憶された証明書をRAMメモリ303から読み出す。
実現の一変形では、プロセッサ300は、ステップS409において、処理中の通信の移動端末30から受信した最初の証明書も読み出す。
次のステップS410において、プロセッサ300は、読み出した1つ又は複数の証明書を含むメッセージを、通信が終了したことを示す情報と共にサーバ20へ転送する。同じステップにおいて、プロセッサ300は、その転送に関連したタイマをリセットする。プロセッサ300は、次に、ステップS414に移動する。
ステップS407において、ハンドオーバが要求されているか、又は、必要とされていると判断される場合、プロセッサ300は、ステップS411に移動する。
そのステップにおいて、プロセッサ300は、最後に記憶された証明書をRAMメモリ303から読み出す。
実現の一変形では、プロセッサ300は、処理中の通信の移動端末30から受信した最初の証明書も読み出す。
次のステップS412において、プロセッサ300は、少なくとも、最後に受信した証明書に含まれる、移動端末30と遠隔電気通信デバイス40との間で通信の開始から転送されたアイテムに関係した情報を転送する。好ましくは、プロセッサ300は、最後に受信した証明書を、移動端末30を受け持つと予想される基地局10へ転送する。プロセッサ300は、次に、ステップS413に移動する。
ステップS413において、プロセッサ300は、読み出した1つ又は複数の証明書と、ハンドオーバが実行されると予想されることを示す情報とを含むメッセージを、移動端末30がクライアントであるモバイル運営者のサーバ20へ転送する。同じステップにおいて、プロセッサ300は、その転送に関連したタイマをリセットする。プロセッサ300は、次に、ステップS414に移動する。
ステップS414において、プロセッサ300は、ステップS410又はS413で送信されたメッセージに応答して、そのサーバ20からの確認メッセージをネットワークインターフェース304から受信したかどうかをチェックする。
このような確認は、例として、移動端末30の一意の識別子と、サーバ20の一意の識別子と、移動端末30と遠隔電気通信デバイス40との間で転送されたアイテムの証明された量と、タイムスタンプと、処理中の通信の識別子と、少なくともアイテムの上記証明された量及び上記識別子をサーバ20の私有鍵によって符号化することにより取得された署名とを含む証明書である。また、この確認メッセージは、必要ならば、サーバ20の公開鍵も含む。確認メッセージは、実現の一変形では、ステップS410又はS413で送信された1つ又は複数の証明書の受信を確認するメッセージである。
確認メッセージが受信されない場合、プロセッサ300は、ステップS415に移動する。
そのステップにおいて、プロセッサ300は、その転送に関連したタイマが満了しているかどうかをチェックする。タイマが満了していない場合、プロセッサ300は、ステップS414に戻る。タイマが満了しており、且つ、確認メッセージがサーバ20から受信されない場合、プロセッサ300は、ステップS416に移動する。
そのステップにおいて、プロセッサ300は、RAMメモリ303の信頼できないサーバ20のリストにサーバ20の識別子を追加する。ここで、信頼できないサーバ20のリストにサーバ20の識別子を追加するよりも前に、基地局10は、或る警告メッセージをサーバ20へ送信して、そのサーバ20が所定の遅延内に確認メッセージを送信しない場合には、そのサーバ20の識別子が信頼できないサーバ20のリストに含まれることを、そのサーバ20に知らせるということに留意しなければならない。
実現の一変形では、移動端末30の識別子は、RAMメモリ303の信頼できない移動端末30のリストに追加される。
ステップS414において、確認メッセージが、サーバ20から受信された場合、プロセッサ300は、ステップS414からステップS417に移動する。
そのステップにおいて、プロセッサ300は、確認メッセージが受け付け可能なものであるかどうかをチェックする。
確認メッセージが証明書である場合、プロセッサ300は、サーバ20の公開鍵で署名を復号し、復号した情報が、証明書に含まれる情報と同一であるかどうかを判断する。情報が異なる場合、証明書は破損しており、プロセッサ300は、次に、ステップS416に移動する。少なくともアイテムの証明された量を含む復号した情報が、ステップS410又はS413で転送された1つ又は複数の証明書に含まれる、通信の開始から転送されたアイテムに関係した情報と矛盾する場合、プロセッサ300は、ステップS416に移動する。
証明書が受け付け可能なものである場合、プロセッサ300は、ステップS418に移動する。
確認メッセージが、受信確認応答である場合、プロセッサ300は、ステップS417からステップS418に直接移動する。
そのステップにおいて、プロセッサ300は、確認メッセージを記憶する。このようなメッセージは、その後、移動端末30のモバイル運営者及び/又はユーザに課金するのに使用される。
ステップS400において、基地局10のプロセッサ300が、メッセージがハンドオーバ手順を表すものであると判断した場合、この基地局10は、別の基地局10が現在受け持っている移動端末30を受け持つと予想される基地局10であると考えられる。プロセッサ300は、したがって、ステップS400からステップS419に移動する。
そのステップにおいて、プロセッサ300は、移動端末30と遠隔電気通信デバイス40との間で通信の開始から転送されたアイテムに関係した情報を受信したかどうかをチェックする。
このような情報は、例として、移動端末30を現在受け持っている基地局10によって転送された証明書に含まれる。
アイテムに関係した情報が受信されない場合、プロセッサ300は、ステップS423に移動して、ハンドオーバ手順を拒否し、移動端末30を受け持つことを拒否する。
好ましい一実施の形態では、プロセッサ300は、移動端末30を受け持つ基地局10を、RAMメモリ303の信頼できない基地局10のリストに追加する。
移動端末と遠隔電気通信デバイスとの間で通信の開始から転送されたアイテムに関係した情報が受信された場合、プロセッサ300は、ステップS420に移動する。
そのステップにおいて、プロセッサ300は、ハンドオーバを受け付けることができるかどうかをチェックする。
そのために、プロセッサ300は、移動端末30と遠隔電気通信デバイス40との間で転送されたアイテムに関係した情報を使用して、基地局10を通過し得る通信の内容を予測し、予測した通信の内容が重要な処理資源を必要とするかどうかを判断するか、又は、電気通信ネットワーク50における通信用の予測帯域幅を求め、そして、その通信を担当できるかどうかをチェックする。
移動端末30と遠隔電気通信デバイス40との間で転送されたアイテムに関係した情報が、通信の開始からの最初のアイテムの転送から最後のアイテムの転送までに経過した時間、及び/又は、通信の開始から転送されたアイテムの量、及び/又は、通信に関連したサービス品質である場合、プロセッサ300は、通信用の予測帯域幅を求めるためにこれらの情報を使用し、その予測帯域幅が、他の通信によって使用される帯域幅と矛盾しないかどうかをチェックする。移動端末30と遠隔電気通信デバイス40との間で転送されたアイテムに関係した情報が、通信の開始から転送されたアイテムのタイプである場合、プロセッサ300は、通信に対して許可しなければならない帯域幅及び処理資源を評価し、これらがプロセッサ300の現在のタスクと矛盾しないかどうかをチェックする。
移動端末30と遠隔電気通信デバイス40との間で転送されたアイテムに関係した情報が、通信の開始から転送されていないデータの量である場合、プロセッサ300は、アイテムのいくつかの再送を管理しなければならない場合があると推論し、次いで、これらの再送に十分なメモリを有するかどうかをチェックする。
メッセージを送信した基地局10が、信頼できない基地局10のリストに含まれている場合、プロセッサ300は、ハンドオーバを受け付けない決定を行う。
プロセッサ300は、基地局10が通信を担当できると判断した場合には、ステップS421に移動し、そうでない場合には、ステップS423に移動する。
次のステップS421において、プロセッサ300は証明書を記憶する。
次のステップS422において、プロセッサ300は、ハンドオーバ手順を実行し、移動端末30を受け持ち、すでに説明したステップS402に移動する。
図5は、本発明の第1の実現モードによる、サーバによって実行されるアルゴリズムである。
この第1の実現モードでは、サーバ20は、遠隔電気通信デバイスとの通信の期間中に移動端末30を受け持っていた基地局のそれぞれへ確認メッセージを送信する。
本アルゴリズムは、各サーバ20のプロセッサ200によって実行される。
ステップS500において、プロセッサ200は、ネットワークインターフェース206を通じた1つ又は2つの証明書と、通信が終了したかどうか、又は、ハンドオーバ手順が進行中であるかどうかを示す情報とを含むメッセージの受信を、検出する。このような1つ又は複数の証明書は、図4のステップS413又はステップS410で基地局10によって転送された証明書(複数可)と同様のものである。
次のステップS501において、プロセッサ200は、受信した1つ又は複数の証明書が受け付け可能なものであるかどうかをチェックする。
そのために、受信した各証明書について、プロセッサ200は、証明書の発信元である移動端末30の公開鍵で署名を復号し、復号した情報が、証明書に含まれる情報と同一であるかどうかを判断する。少なくとも1つの情報が異なる場合、メッセージは破損しており、プロセッサ200は、処理中の通信について本アルゴリズムを停止する。また、プロセッサ200は、その移動端末30の識別子が、そのクライアントの移動端末30の識別子の1つであるかどうかもチェックする。その移動端末30の識別子が、そのクライアントの移動端末30の識別子の1つでない場合、プロセッサ200は、処理中の通信について本アルゴリズムを停止する。証明書が受け付け可能なものである場合、プロセッサ200は、ステップS502に移動する。
ステップS502において、プロセッサ200は、移動端末30と遠隔電気通信デバイス40との間の通信に関連した変数をリセットし、変数Iを1にセットする。通信に関連した変数をHov、Cert(0,s)と表す。ここで、sは、1又は2に等しい。
次のステップS503において、プロセッサ200は、メッセージが通信の終了又はハンドオーバの情報を含むかどうかを判断する。メッセージが、通信の終了の情報を含む場合、プロセッサ200は、ステップS509に移動する。メッセージがハンドオーバの情報を含む場合、プロセッサ200は、ステップS504に移動する。
ステップS504において、プロセッサ200は、変数Hovを1にセットする。
次のステップS505において、プロセッサ200は、受信した証明書をデータベース204に記憶し、変数Cert(I,2)の内容を、受信したメッセージに含まれる、移動端末30と遠隔電気通信デバイス40との間で通信の開始から転送されたアイテムに関係した情報にセットする。移動端末30と遠隔電気通信デバイス40との間で通信の開始から転送されたアイテムに関係した情報は、そのメッセージの転送よりも前に送信された最初のアイテムの転送と最後のアイテムの転送との間で経過した時間であるか、又は、その通信中にそのメッセージ転送よりも前に転送されたアイテムの量である。
実現のこの変形によれば、2つの証明書が、受信したメッセージに含まれる。プロセッサ200は、それら2つの証明書をデータベース204に記憶する。より古いタイムスタンプを有する方の受信した証明書に含まれる、移動端末と遠隔電気通信デバイス40との間で通信の開始から転送されたアイテムに関係した情報は、変数Cert(I,1)の下に記憶され、他方の情報は変数Cert(I,2)の下に記憶される。
次のステップS506において、プロセッサ200は、変数Iを1つだけ増加させる。
次のステップS507において、プロセッサ200は、少なくとも1つの証明書を含む少なくとも1つのメッセージが、基地局10から受信されたかどうかをチェックする。メッセージが受信されない限り、プロセッサ200は、ステップS507によって構成されたループを実行する。メッセージが受信された場合、プロセッサ200は、ステップS508に移動する。
ここで、メッセージが、所定の時間の間に受信されない場合、プロセッサ200は、本アルゴリズムを停止して、ステップS500に戻ることに留意しなければならない。
ステップS508において、プロセッサ200は、メッセージに含まれる各証明書が受け付け可能なものであるかどうかをチェックする。
プロセッサ200は、ステップS501に関して開示したオペレーションと同様のオペレーションを実行し、さらにチェックも実行する。例として、プロセッサ200は、各証明書に含まれる、移動端末30と遠隔電気通信デバイス40との間で転送されたアイテムに関係した情報が、以前の証明書で受信された情報と矛盾しないかどうかをチェックする。すなわち、移動端末30と遠隔電気通信デバイス40との間で転送されたアイテムに関係した情報が、以前の証明書に含まれる情報を下回らないかどうかをチェックする。
受信した1つの証明書が受け付け可能なものでない場合、プロセッサ200は、本アルゴリズムを停止する。
メッセージに含まれる証明書のそれぞれが受け付け可能なものである場合、プロセッサ200は、ステップS503に戻る。
プロセッサ200は、ステップS503において、メッセージが通信の終了の指示を含むと判断すると、ステップS503からステップS509に移動する。
そのステップにおいて、プロセッサ200は、受信したメッセージに含まれる受信した証明書をデータベース204に記憶し、変数Cert(I,2)の内容を、受信したメッセージに含まれる、移動端末30と遠隔電気通信デバイス40との間で通信の開始から転送されたアイテムに関係した情報にセットし、メッセージを送信した基地局10の識別子を記憶する。
実現のこの変形によれば、2つの証明書が、受信したメッセージに含まれる。プロセッサ200は、それら2つの証明書をデータベース204に記憶する。より古いタイムスタンプを有する方の受信したメッセージに含まれるアイテムに関係した情報は、変数Cert(I,1)の下に記憶され、他方の情報は変数Cert(I,2)の下に記憶される。
次のステップS510において、プロセッサ200は、変数Hovが1に等しいかどうかをチェックする。このような変数は、少なくとも1つのハンドオーバが実行されたことを示す。
Hovが0に等しい場合、プロセッサ200は、ステップS511に移動し、受信したメッセージを送信した基地局10へ、そのメッセージが取り扱われたことを示す確認メッセージを転送する。
このような確認は、例として、移動端末30の一意の識別子と、サーバ20の一意の識別子と、移動端末30と遠隔電気通信デバイス40との間で転送されたアイテムの証明された量、すなわち、最も近時のタイムスタンプを有する受信したメッセージに含まれる、移動端末30と遠隔電気通信デバイス40との間で転送されたアイテムに関係した情報と、タイムスタンプと、処理中の通信の識別子と、少なくともアイテムの上記証明された量および上記識別子をサーバ20の私有鍵によって符号化することにより取得された署名とを含む証明書である。
アイテムの証明された量は、移動端末30と電気通信デバイス40との間で基地局10を通じて転送されたアイテムの量である。
プロセッサ200は、次に、処理中の通信について本アルゴリズムを停止する。
Hovが1に等しい場合、プロセッサ200は、ステップS512に移動して、Jで表す変数を1にセットする。
プロセッサ200は、次に、ステップS513に移動して、移動端末30と遠隔電気通信デバイス40との間で転送されたアイテムの量CF(J)=Cert(J,2)−Cert(J−1,2)を計算する。
本発明の実現のこの変形によれば、2つの証明書が、受信したメッセージに含まれる場合には、CF(J)=Cert(J,2)−Cert(J,1)である。
次のステップS514において、プロセッサ200は、J番目に受信したメッセージを送信した基地局10へ、そのメッセージが取り扱われたことを示す確認メッセージを転送する。
このような確認は、例として、移動端末30の一意の識別子と、サーバ20の一意の識別子と、アイテムの証明された量CF(J)と、タイムスタンプと、処理中の通信の識別子と、少なくともアイテムの上記証明された量および上記識別子をサーバ20の私有鍵によって符号化することにより取得された署名とを含む証明書である。
アイテムの証明された量は、移動端末30と電気通信デバイス40との間でJ番目に受信されたメッセージを送信した基地局10を通じて転送されたアイテムの量である。
次のステップS515において、プロセッサ200は、変数Jが変数Iに等しいかどうかをチェックする。それらの変数が同一である場合、プロセッサ200は、処理中の通信について本アルゴリズムを停止する。それらの変数が異なる場合、プロセッサ200は、ステップS516に移動して、変数Jを1つだけ増加させ、ステップS513に戻る。
図6は、本発明の第2の実現モードによる、サーバによって実行されるアルゴリズムである。
この第2の実現モードでは、ハンドオーバ手順後に移動端末30を受け持つ基地局10が、少なくとも2つの証明書を含むメッセージをサーバ20へ送信すると、サーバ20は、ハンドオーバ手順よりも前の通信について移動端末30を受け持っていた基地局10へ確認メッセージを送信する。
本アルゴリズムは、各サーバ20のプロセッサ200によって実行される。
ステップS600において、プロセッサ200は、ネットワークインターフェース206を通じた2つの証明書と、通信が終了したかどうか、又は、ハンドオーバ手順が進行中であるかどうかを示す情報とを含むメッセージのネットワークインターフェース206を通じた受信を検出する。このような証明書は、実現のこの変形によれば、図4のステップS413又はステップS410で基地局10により転送された証明書と同様のものである。
次のステップS601において、プロセッサ200は、受信した証明書が受け付け可能なものであるかどうかをチェックする。
そのために、受信した各証明書について、プロセッサ200は、証明書の発信元である移動端末30の公開鍵で署名を復号し、復号した情報が、証明書に含まれる情報と同一であるかどうかを判断する。情報が異なる場合、メッセージは破損しており、プロセッサ200は、処理中の通信について本アルゴリズムを停止する。また、プロセッサ200は、移動端末30の識別子が、そのモバイル運営者のクライアントの1つの識別子であるかどうかもチェックする。移動端末30の識別子が、そのクライアントの1つの識別子でない場合、プロセッサ200は、処理中の通信について本アルゴリズムを停止する。証明書が受け付け可能なものである場合、プロセッサ200は、ステップS602に移動する。
ステップS602において、プロセッサ200は、移動端末30と遠隔電気通信デバイス40との間の通信に関連した変数をリセットし、変数Iを1にセットする。通信に関連した変数をConf、Cert(0,s)と表す。ここで、sは、1又は2に等しい。
次のステップS603において、プロセッサ200は、メッセージが通信の終了の指示又はハンドオーバの指示を含むかどうかを判断する。メッセージが、通信の終了の指示を含む場合、プロセッサ200は、ステップS613に移動する。メッセージがハンドオーバの指示を含む場合、プロセッサ200は、ステップS604に移動する。
ステップS604において、プロセッサ200は、変数Confが1に等しいかどうかをチェックする。変数Confは、確認メッセージを基地局10へ転送する必要性を表す。変数Confが1に等しい場合、プロセッサ200は、ステップS609に移動する。変数Confがヌルである場合、プロセッサ200はステップS605に移動する。
ステップS605において、プロセッサ200は、変数Confを1にセットする。
次のステップS606において、プロセッサ200は、受信した証明書を記憶する。より古いタイムスタンプを有する方の受信した証明書に含まれるアイテムに関係した情報は、変数Cert(I,1)の下に記憶され、他方の証明書に含まれるアイテムに関係した情報は、変数Cert(I,2)の下に記憶される。
移動端末30と遠隔電気通信デバイス40との間で通信の開始から転送されたアイテムに関係した情報は、そのメッセージの転送よりも前に送信された最初のアイテムの転送と最後のアイテムの転送との間で経過した時間であるか、又は、その通信中にそのメッセージ転送よりも前に転送されたアイテムの量である。
次のステップS607において、プロセッサ200は、変数Iを1つだけ増加させる。
次のステップS608において、プロセッサ200は、2つの証明書を含む別のメッセージが、移動端末30と遠隔電気通信デバイス40との間の通信について受信されたかどうかをチェックする。メッセージが受信されない限り、プロセッサ200は、ステップS608によって構成されたループを実行する。
ここで、メッセージが、所定の時間の間に受信されない場合、プロセッサ200は、本アルゴリズムを停止して、ステップS500に戻ることに留意しなければならない。
メッセージが受信された場合、プロセッサ200は、ステップS609に移動する。
ステップS609において、プロセッサ200は、受信したメッセージに含まれる証明書が受け付け可能なものであるかどうかをチェックする。
プロセッサ200は、ステップS601に関して開示したオペレーションと同様のオペレーションを実行し、さらにチェックも実行する。
受信した1つの証明書が受け付け可能なものでない場合、プロセッサ200は、証明書を廃棄して、ステップS614に移動する。
受信した証明書が受け付け可能なものである場合、プロセッサ200は、ステップS603に戻る。
プロセッサ200は、変数Confが1に等しいとステップS604で判断した場合、ステップS604からステップS609に移動する。
そのステップにおいて、プロセッサ200は、受信したメッセージに含まれる証明書を記憶し、より古い方のタイムスタンプを有する証明書に含まれるアイテムに関係した情報を変数Cert(I,1)の下にセットし、他方の証明書に含まれるアイテムに関係した情報を変数Cert(I,2)の下にセットする。
次のステップS610において、プロセッサ200は、移動端末30と遠隔電気通信デバイス40との間で転送されたアイテムの証明された量CF(I−1)を計算する。CF(I−1)は、
CF(I−1)=(Min(Cert(I−1,2) Cert(I,1)))−Cert(I−1,1)
に等しい。
次のステップS611において、プロセッサ200は、(I−1)番目に受信したメッセージを送信した基地局10へ、そのメッセージが取り扱われたことを示す確認メッセージを転送する。
このような確認は、例として、移動端末30の一意の識別子と、サーバ20の一意の識別子と、アイテムの証明された量CF(I−1)と、タイムスタンプと、処理中の通信の識別子と、少なくともアイテムの上記証明された量および上記識別子をサーバ20の私有鍵によって符号化することにより取得された署名とを含む証明書である。
CF(I−1)は、移動端末30と電気通信デバイス40との間の(I−1)番目に受信されたメッセージを送信した基地局10を通じて転送されたアイテムの証明された量である。
次のステップS612において、プロセッサ200は、変数Iを1つだけ増加させ、すでに説明したステップS608に移動する。
ステップS603において、プロセッサ200は、メッセージが通信の終了の指示を含むと判断すると、ステップS603からステップS613に移動する。
そのステップにおいて、プロセッサ200は、受信したメッセージに含まれる証明書を記憶し、より古い方のタイムスタンプを有する受信した証明書に含まれるアイテムに関係した情報を変数Cert(I,1)の下にセットし、他方の証明書に含まれるアイテムに関係した情報を変数Cert(I,2)の下に記憶する。
次のステップS614において、プロセッサ200は、変数Confが1に等しいかどうかをチェックする。変数Confが1に等しくない場合、プロセッサ200は、ステップS617に移動し、1に等しい場合、プロセッサ200は、ステップS615に移動する。
ステップS615において、プロセッサ200は、移動端末30と遠隔電気通信デバイス40との間で転送されたアイテムの量CF(I−1)を計算する。CF(I−1)は、
CF(I−1)=(Min(Cert(I−1,2) Cert(I,1)))−Cert(I−1,1)
に等しい。
次のステップS616において、プロセッサ200は、(I−1)番目に受信したメッセージを送信した基地局10へ、そのメッセージが取り扱われたことを示す確認メッセージを転送する。
このような確認メッセージは、例として、移動端末30の一意の識別子と、サーバ20の一意の識別子と、アイテムの証明された量CF(I−1)と、タイムスタンプと、処理中の通信の識別子と、少なくともアイテムの上記証明された量および上記識別子をサーバ20の私有鍵によって符号化することにより取得された署名とを含む証明書である。
CF(I−1)は、移動端末30と電気通信デバイス40との間の(I−1)番目に受信されたメッセージを送信した基地局10を通じて転送されたアイテムの証明された量である。
ステップS617において、プロセッサ200は、移動端末30と遠隔電気通信デバイス40との間で転送されたアイテムの証明された量CF(I)を計算する。CF(I)は、
CF(I)=Cert(I,2)−Cert(I,1)
に等しい。
次のステップS618において、プロセッサ200は、I番目に受信したメッセージを送信した基地局10へ、そのメッセージが取り扱われたことを示す確認メッセージを転送する。
このような確認は、例として、移動端末30の一意の識別子と、サーバ20の一意の識別子と、アイテムの証明された量CF(I)と、タイムスタンプと、処理中の通信の識別子と、少なくともアイテムの上記証明された量および上記識別子をサーバ20の私有鍵によって符号化することにより取得された署名とを含む証明書である。
CF(I)は、移動端末30と電気通信デバイス40との間の(I)番目に受信したメッセージを送信した基地局10を通じて転送されたアイテムの証明された量である。
図7は、本発明の第3の実現モードによる、基地局によって実行されるアルゴリズムである。
その実現モードの基本概念は、ハンドオーバが2つの基地局10間で行われる時に、移動端末30を現在受け持っている基地局10が、移動端末30から最後に受信した証明書を、移動端末30を受け持つと予想される他の基地局10へ送信することである。他方の基地局10は、自身の私有鍵を使用して、自身の署名と、受信した証明書に含まれる情報と、自身の一意の識別子とを含むメッセージを形成し、そのメッセージを、移動端末30を現在受け持っている基地局10へ転送する。
移動端末30を現在受け持っている基地局10は、移動端末30から最初に受信した証明書と、移動端末30を受け持つと予想される基地局10が受信した証明書とを含むメッセージを、移動端末30がクライアントであるサーバ20に対して形成する。
図7のアルゴリズムは、ステップS421がステップS721a〜S721cに置き換えられ、図4のステップS413がステップS713a及び713bに置き換えられている点で、図4のアルゴリズムと異なる。図7のアルゴリズムのそれ以外のステップは、図4のステップと同一であるので、以下では、これら異なるステップについてのみ開示することにする。
ステップS721aにおいて、プロセッサ300は、ステップ719で受信した証明書に含まれる情報と、自身の一意の識別子との完全性を保護する署名を自身の私有鍵を使用して符号化することにより、ステップS719で解析された証明書に含まれる情報を証明する。
ステップS721bにおいて、プロセッサ300は、署名と、ステップS719で受信した証明書に含まれる情報と、自身の一意の識別子とを含むメッセージを形成する。
ステップS722に移動する前に、ステップS721cにおいて、プロセッサ300は、形成されたメッセージを、ステップS719でチェックされた証明書を送信した基地局10へ転送する。
ステップS713aにおいて、プロセッサ300は、ステップS721bで開示したメッセージと同様のメッセージを受信したかどうかをチェックする。
メッセージが受信されない場合、ハンドオーバ手順に関与している他方の基地局10が信頼できないとみなされる限り、プロセッサ300は、ハンドオーバ手順を停止し、移動端末30と遠隔電気通信デバイス40との間の通信を継続する。
メッセージが受信された場合、プロセッサ300は、ステップS713bに移動し、受信したメッセージを、移動端末30から最初に受信した証明書と組み合わせて、移動端末30がクライアントであるサーバ20へ転送する。
ステップS721bで開示したような証明書は、移動端末30から最後に受信した証明書であるので、サーバ20は、この証明書を使用することに留意しなければならない。
図8は、本発明の第4の実現モードによる、基地局によって実行されるアルゴリズムである。
その実現モードの基本概念は、移動端末30との通信をセットアップすることが予定された時に、移動端末30を受け持つ可能性のある基地局10が、移動端末30がモバイル運営者のクライアントであることを認証する証明書を得るために、サーバ20へメッセージを送信することである。
ハンドオーバが2つの基地局10間で行われる時、移動端末30を現在受け持っている基地局10は、移動端末30から最後に受信した証明書を含むメッセージをサーバ20へ送信する。サーバ20は、それに応答して、移動端末30を認証する証明書を含んだ確認を、移動端末30を現在受け持っている基地局10へ転送する。移動端末30を現在受け持っている基地局10は、サーバ20から受信した証明書を、移動端末30を受け持つと予想される基地局10へ転送する。
図8のアルゴリズムは、ステップS401がステップS801a及びS801bに置き換えられ、図4のステップS419がステップS819aに置き換えられ、図4のステップS412が削除され、図4のステップS418がステップS818a〜S818cに置き換えられている点で、図4のアルゴリズムと異なる。図8のそれ以外のステップは、図4のステップと同一であるので、以下では、これら異なるステップについてのみ開示することにする。
ステップS801aにおいて、プロセッサ300は、移動端末30を認証する証明書を移動端末30のサーバ20に問い合わせるメッセージをサーバ20へ転送する。そのために、プロセッサ300は、通信をセットアップすることが予定された移動端末30の一意の識別子を含むメッセージをサーバ20に送信する。このようなメッセージは、好ましくは、移動端末30の一意の識別子と、基地局10の一意の識別子と、サーバ20の一意の識別子と、サービスの開始の指示と、上述した識別子をサーバ20の私有鍵によって符号化することにより作成された署名とを含む証明書である。証明書が受信されない場合、プロセッサ300は本アルゴリズムを停止し、移動端末30と遠隔電気通信デバイス40との間の通信は確立されない。
このような証明書が受信されると、プロセッサ300は、ステップS801bに移動し、無線インターフェース306及びネットワークインターフェース304を通じて、移動端末30と遠隔電気通信デバイス40との間の通信を確立する。同じステップにおいて、プロセッサ300は、その通信に関連したタイマをリセットし、サーバ20又は移動端末10から移動端末30の公開鍵を得る。この公開鍵は、RAM303に記憶される。
ステップS818aにおいて、プロセッサ300は、ハンドオーバ手順がステップS807で要求されたかどうかをチェックする。ハンドオーバ手順がステップS807で要求されていた場合、プロセッサ300は、ステップS818bに移動して、移動端末30を受け持つと予想される他方の基地局10へ、サーバ20から受信した確認メッセージに含まれる証明書を転送する。
次のS818cにおいて、プロセッサ300は、確認メッセージに含まれる証明書を記憶する。このようなメッセージは、その後、例として、移動端末30のモバイル運営者又はユーザに課金するのに使用することができる。
ステップS819aにおいて、プロセッサ300は、移動端末と遠隔電気通信デバイス40との間で通信の開始から転送されたアイテムに関係した情報を受信しているかどうかチェックする。
このような情報は、例として、移動端末30を現在受け持っている基地局10によってステップS818bで転送されたような証明書である。
ステップS820において、プロセッサ300は、サーバ20の公開鍵で署名を復号し、復号した情報が、証明書に含まれる情報と同一であるかどうかを判断する。情報が異なる場合、メッセージは破損しており、プロセッサは、そのメッセージを送信した基地局10を、信頼できない基地局のリストに追加して、ステップS823に移動する。
図9は、本発明の第4の実現モードによる、サーバによって実行されるアルゴリズムである。
ステップS900において、サーバ20のプロセッサ200は、基地局10からメッセージを受信する。このようなメッセージは、図8のアルゴリズムのステップS801aで開示したメッセージと同様のものである。
次のステップS901において、プロセッサ200は、通信のために基地局10を使用する予定の移動端末30の少なくとも識別子を証明するメッセージを形成する。このようなメッセージは、好ましくは、移動端末30の一意の識別子と、基地局10の一意の識別子と、サーバ20の一意の識別子と、上述した識別子をサーバ20の私有鍵によって符号化することにより作成された署名とを含む証明書である。
次のステップS902において、プロセッサ200は、このメッセージを基地局10へ転送する。
次のステップS903において、プロセッサ200は、ネットワークインターフェース206を通じて、2つの証明書を含むメッセージの受信を検出する。このような証明書は、実現のこの変形によれば、図4のステップS412で基地局10により転送された証明書と同様のものである。
次のステップS901において、プロセッサ200は、メッセージが基地局10から受信されたかどうかをチェックする。ここで、この基地局10は、一意の識別子がステップS900で受信されたメッセージに含まれていた移動端末30を受け持つものである。このようなメッセージは、好ましくは、2つの証明書を含む。
メッセージが受信された場合、プロセッサ200は、ステップS904に移動し、メッセージが受け付け可能なものであるかどうかをチェックする。
そのために、受信した各証明書について、プロセッサ200は、証明書を転送した移動端末30の公開鍵で署名を復号し、復号した情報が、証明書に含まれる情報と同一であるかどうかを判断する。情報が異なる場合、メッセージは破損しており、プロセッサ200は、通信を停止する。また、証明書の1つが受け付け可能なものでない場合、プロセッサ200は、本アルゴリズムを停止する。証明書が受け付け可能なものである場合、プロセッサ200は、ステップS905に移動する。2つの証明書の第1のものは、ステップS902でサーバ20によって転送されたもの、又は、図8のステップS818bで開示されたように転送された証明書のいずれかである。2つの証明書の第2のものは、移動端末30によって基地局10へ送信された最後の証明書である。
次のステップS905において、プロセッサ200は、移動端末30の一意の識別子と、サーバ20の一意の識別子と、アイテムの証明された量、すなわち、基地局10が移動端末30から最後に受信した証明書に含まれるアイテムに関係した情報と、タイムスタンプと、処理中の通信の識別子と、これらの情報をサーバ20の私有鍵によって符号化することにより取得された署名とを含む証明書を形成する。
次のステップS906において、プロセッサ200は、確認メッセージを基地局10へ転送する。このような確認メッセージは、ステップS905で形成された証明書を含む。
次のステップS907において、プロセッサ200は、ステップS903で受信したメッセージが、通信の終了を表す情報又はハンドオーバ手順を表す情報を含むかどうかをチェックする。
メッセージが、通信の終了を表す情報を含む場合、プロセッサ200は、本アルゴリズムを停止する。
メッセージが、通信の終了を表す情報を含む場合、プロセッサ200は、ステップS903に戻る。
当然ながら、本発明の範囲から逸脱することなく、上述した本発明の実施の形態に多くの変更を行うことができる。
詳細には、本明細書では、移動端末30を現在受け持っている基地局10が、移動端末30と遠隔電気通信デバイス40との間で通信の開始から転送されたアイテムに関係した情報を、ハンドオーバ手順後に移動端末30を受け持つと予想される基地局10へ、転送することが開示されている。移動端末30と遠隔電気通信デバイス40との間で通信の開始から転送されたアイテムに関係した情報は、一変形では、第4の実施の形態のアルゴリズムの一変形の例として、移動端末30がクライアントであるモバイル運営者のサーバ20によって転送される。