第1の無線ネットワークに接続が可能なクライアントが前記第1の無線ネットワークと第2の無線ネットワークに接続が可能なホストを経由して前記第2の無線ネットワークにアクセスする方法であって、前記ホストと前記クライアントがそれぞれ第1の通信方式で前記第1の無線ネットワークに接続するステップと、前記ホストが前記第1の無線ネットワークに対する通信品質を監視するステップと、前記通信品質が低下したと判断したときに前記ホストが前記第2の無線ネットワークに接続して前記クライアントを前記第2の無線ネットワークに接続する共有通信モードに移行するステップと、前記共有通信モードに移行したホストが前記クライアントと第2の通信方式で接続して前記クライアントを前記第2の無線ネットワークに接続するステップとを有する方法。前記第1の無線ネットワークが無線LANで前記第2の無線ネットワークが無線MANまたは無線WANである請求項1に記載の方法。前記第1の通信方式がインフラストラクチャモードの通信方式で前記第2の通信方式がアドホックモードの通信方式である請求項1または請求項2に記載の方法。前記クライアントが前記第2の通信方式で接続して前記ホストに前記共有通信モードで動作することを要求するステップと、前記クライアントの要求に応じて前記ホストが前記共有通信モードに移行するステップとを有する請求項1から請求項3のいずれかに記載の方法。前記ホストは前記共有通信モードでの接続を許可する複数のクライアントの識別情報を登録したグループリストを保持する請求項1から請求項4のいずれかに記載の方法。前記ホストは、前記共有通信モードに移行している間に前記グループリストに登録された複数のクライアントが前記第2の通信方式で通信できる範囲に存在するか否かを判断し、いずれのクライアントも通信できる範囲に存在しないと判断したときに前記第1の無線ネットワークに接続する無線アダプタを所定の時間の間だけ停止するステップを有する請求項5に記載の方法。前記ホストが、前記共有通信モードに移行している間に前記第1の無線ネットワークが送信する電波の強度を測定するステップと、前記ホストは前記電波の強度が所定値以上であると判断したときに、前記クライアントと前記共有通信モードを終了するネゴシエーションをするステップとを有する請求項1から請求項6のいずれかに記載の方法。第1の無線ネットワークに接続が可能なクライアントが前記第1の無線ネットワークと第2の無線ネットワークに接続が可能なホストを経由して前記第2の無線ネットワークにアクセスする方法であって、前記ホストと前記クライアントが前記第1の無線ネットワークに第1の通信方式で接続するステップと、前記クライアントが前記第1の無線ネットワークに対する通信品質を監視するステップと、前記通信品質が低下したと判断したときに前記ホストに第2の通信方式で接続した前記クライアントが、前記第2の無線ネットワークに接続して前記クライアントを前記第2の無線ネットワークに接続する共有通信モードで動作することを要求するステップと、前記要求に応じて前記共有通信モードに移行した前記ホストと前記クライアントが前記第2の通信方式で通信するステップとを有する方法。前記第1の無線ネットワークのアクセスポイントが形成するセルよりも前記第2の無線ネットワークのアクセスポイントが形成するセルが大きい請求項8に記載の方法。前記ホストが前記第2の通信方式で接続して前記クライアントに前記第2の通信方式での通信を終了することを要求するステップと、前記ホストの要求に応じて前記クライアントが前記第2の通信方式での通信を終了して前記第1の無線ネットワークに接続するステップとを有する請求項8または請求項9に記載の方法。前記クライアントが、前記第2の通信方式で前記ホストと接続している間に前記第1の無線ネットワークが送信するビーコンフレームの電波強度を検出するステップと、前記クライアントは前記電波強度が所定値以上であると判断したときに、前記第2の通信方式での通信を終了して前記第1の無線ネットワークに接続するステップとを有する請求項8から請求項10のいずれかに記載の方法。第1の無線ネットワークまたはクライアント端末装置に接続が可能な第1の無線アダプタと第2の無線ネットワークに接続が可能な第2の無線アダプタを備えるホスト端末装置であって、前記第1の無線アダプタを第1の通信方式で前記第1の無線ネットワークに接続する単独通信モードまたは前記第2の無線アダプタを前記第2の無線ネットワークに接続し前記第1の無線アダプタを第2の通信方式で前記クライアント端末装置に接続して前記クライアント端末装置と前記第2の無線ネットワークを接続する共有通信モードの少なくともいずれかで動作するように制御する通信制御部と、前記第1の無線ネットワークに対する通信品質を評価して第1の切換信号を出力する評価部と、前記第1の切換信号に応じて前記通信制御部に前記単独通信モードから前記共有通信モードに切り換える信号を送る動作モード制御部とを有するホスト端末装置。前記動作モード制御部は、前記クライアント端末装置から要求があったときに前記通信制御部に前記単独通信モードから前記共有通信モードに切り換える信号を送る請求項12に記載のホスト端末装置。前記第1の無線アダプタの電力を制御する電力制御部を有し、前記評価部は前記共有通信モードで動作している間に前記クライアント端末装置が送信する前記第2の通信方式の電波の強度が所定値以下のときに第2の切換信号を出力し、前記動作モード制御部は前記第2の切換信号に応じて前記電力制御部に前記第1の無線アダプタを所定時間の間だけ停止する信号を送る請求項12または請求項13に記載のホスト端末装置。前記評価部は、前記共有通信モードで動作している間の前記第1の無線ネットワークの電波強度が所定値以上のときに第3の切換信号を出力し、前記動作モード制御部は前記第3の切換信号に応じて前記通信制御部に前記共有通信モードから前記単独通信モードに切り換える信号を送る請求項12から請求項14のいずれかに記載のホスト端末装置。第1の無線ネットワークと第2の無線ネットワークに接続可能なホスト端末装置に接続可能なクライアント端末装置であって、第1の通信方式で前記第1の無線ネットワークに接続することが可能で、第2の通信方式で前記ホスト端末装置に接続することが可能な無線アダプタと、前記無線アダプタの接続先が、前記第1の無線ネットワークまたは前記ホスト端末装置のいずれかとなるように制御する通信制御部と、前記第1の無線ネットワークに対する通信品質を評価して第1の切換信号を出力する評価部と、前記第1の切換信号に応じて前記ホスト端末装置と通信して前記ホスト端末装置が前記第1の無線ネットワークに接続する単独通信モードから、前記第2の無線ネットワークに接続し前記クライアント端末装置に前記第2の通信方式で接続して前記クライアント端末装置を前記第2の無線ネットワークに接続する共有通信モードに切り換えるように要求する動作モード制御部とを有するクライアント端末装置。前記通信制御部は、前記ホスト端末装置から前記第2の通信方式での通信の終了要求を受け取ったときに前記第2の通信方式での通信を終了して前記第1の無線ネットワークに接続する請求項16に記載のクライアント端末装置。前記評価部は、前記ホスト端末装置と通信している間の前記第1の無線ネットワークの電波強度が所定値以上であると判断したときに第2の切換信号を出力し、前記動作モード制御部は前記第2の切換信号に応じて前記通信制御部に前記ホスト端末装置との通信を停止して前記第1の無線ネットワークに接続する信号を送る請求項16または請求項17に記載のクライアント端末装置。第1の無線ネットワークに接続が可能な無線端末装置と該第1の無線ネットワークと第2の無線ネットワークに接続が可能なコンピュータに、前記第1の無線ネットワークに第1の通信方式で接続する機能と、前記無線端末装置に第2の通信方式で接続する機能と、前記第1の無線ネットワークに対する通信品質を評価する機能と、前記第1の無線ネットワークに対する通信品質が低下したと判断したときに前記第2の無線ネットワークに接続し前記無線端末装置に前記第2の通信方式で接続して前記無線端末装置を前記第2の無線ネットワークに接続する機能とを実現させるためのコンピュータプログラム。第1の無線ネットワークと第2の無線ネットワークに接続が可能な無線端末装置と前記第1の無線ネットワークに接続が可能なコンピュータに、前記第1の無線ネットワークに第1の通信方式で接続する機能と、前記無線端末装置に第2の通信方式で接続する機能と、前記第1の無線ネットワークに対する通信品質を評価する機能と、前記第1の無線ネットワークに対する通信品質が低下したと判断したときに前記無線端末装置に接続して前記コンピュータを前記第2の無線ネットワークに接続するように要求する機能とを実現させるためのコンピュータプログラム。先行技術では、ホストとなる1台の無線端末装置を無線ルータとして設定し、ホストを通じてクライアントとなる他の無線端末装置をインターネットに接続する場合には、ユーザがその都度ホストとクライアントを共有通信ができるように設定する必要がある。また、共有通信の必要がないときにホストの無線LANアダプタの消費電力を低減することについては検討されていない。そこで本発明の目的は、共有通信を利用してクライアント端末装置のインターネットに対する接続を維持する方法を提供することにある。さらに本発明の目的は、特定の無線ネットワークに接続する無線アダプタを装備していないクライアント端末装置を当該特定の無線ネットワークにホスト端末装置を経由して接続する方法を提供することにある。さらに本発明の目的は、特定の無線ネットワークに接続する無線アダプタを装備していないクライアント端末装置を簡単に当該特定の無線ネットワークに接続する方法を提供することにある。さらに本発明の目的は、ホスト端末装置が装備する無線アダプタの消費電力を低減する方法を提供することにある。さらに本発明の目的は、そのような方法を実現するホスト端末装置、クライアント端末装置およびコンピュータプログラムを提供することにある。本発明の第1の態様は、第1の無線ネットワークに接続が可能なクライアントが第1の無線ネットワークと第2の無線ネットワークに接続が可能なホストを経由して第2の無線ネットワークにアクセスする方法を提供する。ホストとクライアントはそれぞれ第1の通信方式で第1の無線ネットワークに接続する。ホストは第1の無線ネットワークに対する通信品質を監視する。通信品質が低下したと判断したときにホストが第2の無線ネットワークに接続してクライアントを第2の無線ネットワークに接続する共有通信モードに移行する。共有通信モードに移行したホストはクライアントと第2の通信方式で接続してクライアントを第2の無線ネットワークに接続する。このような構成によれば、ホストが第1の無線ネットワークに接続ができないときに、クライアントも第1の無線ネットワークに接続できないような状態が発生するような環境では、ホストは自らの通信品質を監視してクライアントの接続先を第1の無線ネットワークから第2の無線ネットワークに移行させてインターネットに対する接続を維持させることができる。また、クライアントは第1の無線ネットワークに対する通信品質を監視したり共有通信に移行するための操作をしたりする必要がない。ホストのユーザとクライアントのユーザは異なっていてもよい。第1の無線ネットワークは無線LANで第2の無線ネットワークは無線MANまたは無線WANとすることができる。また、第1の通信方式はインフラストラクチャモードの通信方式で第2の通信方式はアドホックモードの通信方式とすることができる。第2の通信方式はVirtualWiFi、SoftAP、IntelMyWiFiTechnology、WifiDirectを使った通信方式としても良い。クライアントは第1の無線ネットワークに対する通信品質が低下した場合に第2の通信方式で通信してホストに共有通信モードで動作することを要求することができる。クライアントの要求に応じてホストが共有通信モードに移行すれば、クライアントが先に第1の無線ネットワークに対する通信品質が低下したような場合にもクライアントのインターネットに対する接続を維持することができる。なおホストは、クライアントのインターネットに対する接続を、ICSを利用して維持することができる。ホストは共有通信モードでの通信を許可する複数のクライアントの識別情報を登録したグループリストを保持することができる。そしてホストは、共有通信モードで動作している間にグループリストに登録された複数のクライアントが第2の通信方式で通信できる範囲に存在するか否かを判断し、いずれのクライアントも通信できる範囲に存在しないと判断したときに第1の無線ネットワークに接続する無線アダプタを所定の時間の間だけ停止することができる。このような構成によれば、ホストは第1の無線ネットワークの通信品質が低下したときに第2の無線ネットワークに接続して無線アダプタを停止する機会を得るため消費電力を低減することができる。ホストは、共有通信モードに移行している間に第1の無線ネットワークが送信する電波の強度を測定することができる。そしてホストは電波の強度が所定値以上であると判断したときに、クライアントと共有通信モードを終了するネゴシエーションをすることができる。このような構成によれば、クライアントが第1の無線ネットワークに接続できるときにホストも第1の無線ネットワークに移行することができる。本発明の第2の態様は、第1の無線ネットワークに接続が可能なクライアントが第1の無線ネットワークと第2の無線ネットワークに接続が可能なホストを経由して第2の無線ネットワークにアクセスする方法を提供する。ホストとクライアントは第1の無線ネットワークに第1の通信方式で接続する。クライアントは第1の無線ネットワークに対する通信品質を監視する。通信品質が低下したと判断したときにホストと第2の通信方式で接続したクライアントは、第2の無線ネットワークに接続してクライアントを第2の無線ネットワークに接続する共有通信モードで動作するように要求する。要求に応じて共有通信モードに移行したホストとクライアントは第2の通信方式で通信する。このような構成によれば、クライアントは第1の無線ネットワークに接続ができない状態を検出したときに、ホストに共有通信モードに移行する要求をしてインターネットに対する接続を維持することができる。ホストは第2の通信方式で通信してクライアントに第2の通信方式での通信を終了することを要求することができる。そして、ホストの要求に応じてクライアントは第2の通信方式での通信を終了して第1の無線ネットワークに接続することができる。クライアントは、第2の通信方式でホストと通信している間に第1の無線ネットワークが送信するビーコンフレームの電波強度を検出することができる。そして、クライアントは電波強度が所定値以上であると判断したときに、第2の通信方式での通信を終了して第1の無線ネットワークに接続することができる。本発明により、共有通信を利用してクライアント端末装置のインターネットに対する接続を維持する方法を提供することができた。さらに本発明により、特定の無線ネットワークに接続する無線アダプタを装備していないクライアント端末装置を当該特定の無線ネットワークにホスト端末装置を経由して接続する方法を提供することができた。さらに本発明により、特定の無線ネットワークに接続する無線アダプタを装備していないクライアント端末装置を簡単に当該特定の無線ネットワークに接続する方法を提供することができた。さらに本発明により、ホスト端末装置が装備する無線アダプタの消費電力を低減する方法を提供することができた。さらに本発明により、そのような方法を実現するホスト端末装置、クライアント端末装置およびコンピュータプログラムを提供することができた。[無線ネットワーク環境]図1は、本発明を適用する無線ネットワーク環境を説明する図である。図1の無線ネットワーク10は、LAN11、インターネット12、およびWAN13のバックボーンネットワークを含んでいる。さらに図1では、LAN11のアクセスポイント15に接続された無線端末装置STA100a、100b、100c、100dおよびWAN13のアクセスポイント17に接続されたSTA100a、100e、100fを例示している。LAN11は、有線および無線で接続されたバックボーンネットワークで、IEEE802.11が定める規格でSTAに接続するAP15を含んでいる。AP15は、企業や自宅のような特定のエリアだけでなく、空港やホテルといった公衆エリアにも設けられている。AP15は有線でLAN11に接続されてSTA100a~100dとともにインフラストラクチャモードの無線LAN19を構築している。広義のAPは、いずれかのSTA100a~100dをソフトウェアでAPに構成した仮想APも含むが、図1に示すAP15はSTAとは兼用しないという意味でまたLAN11に有線で接続されている意味で専用APとして区別することができる。図1には、STA100aとSTA100bの間にアドホックモードで接続する無線LANアドホックネットワーク23も構築されている。アドホックネットワーク23は、AP15を経由しないSTA同士が直接接続する無線ネットワークである。アドホックネットワーク23は、STA100a~STA100dの任意の2つの組み合わせにおいて構築することができるが、本発明ではアドホックネットワークをSTA100aと他の任意のSTA100b~100dとの間で構築する。WAN13は無線LANとは異なる通信規格の有線または無線で接続されたバックボーンネットワークでAP17を含んでいる。AP17とSTA100a、100e、100fとの間には、無線WAN21が構築されている。STA100e、100fは、無線ネットワーク10の説明をするために記載した携帯電話のようなWANにだけ接続することができる携帯端末装置であり、本発明とは直接的な関係はない。STA100aを以後適宜ホストといい、STA100b~100dをそれぞれクライアントという。STA100aは、無線LANまたは無線WANの任意のいずれか一方に接続することができる。ここでは、STA100aは例示した無線LAN19AP15または無線WAN21AP17の任意のいずれか一方に接続することができる。STA100b~100dは無線LANにだけ接続することができる。ここでは、STA100b~100dは例示した無線LAN19AP15にだけ接続することができる。LAN11、インターネット12、またはWAN13には図1には示していないWebサーバ、メールサーバ、DNSサーバ、DHCPサーバおよびデータベースサーバなどのさまざまなサーバおよび他のSTAが接続される。STA100a~100dは、AP15のセルの範囲に存在するときだけ無線LAN19に接続することができ、STA100a、100e、100fは、AP17のセルの範囲に存在するときだけ無線WAN21に接続することができる。STA100aは、無線LAN19と無線WAN21の両方に接続可能なときは、APの電波強度が強い無線ネットワークまたはスループットの大きなネットワークを選択していずれか一方に接続することができる。本発明においてはSTA100a~100dが、相互の距離を所定の範囲内に維持しながら一緒に移動することを前提にしている。また本発明は、STA100a~STA100dのいずれもAP15に接続できないときであっても、相互間の距離が所定以内に維持されることでアドホックネットワーク23はいつでも構築できることを前提にしている。AP17のセルはAP15のセルよりも大きい。したがって、STA100a~100dのグループが全体として移動したときには、STA100a~STA100dのいずれもAP15に接続できず、かつSTA100aだけがAP17に接続できる状態が存在する。[STAのハードウェア構成]図2は、STA100aのハードウェアの構成を示す機能ブロック図である。STA100aはCPU101、メインメモリ103、ディスクドライブ105、LCD107、無線LANアダプタ109および無線WANアダプタ113がバス115に接続されている。ディスクドライブ105には、オペレーティングシステムOS、アプリケーションプログラム、およびデバイスドライバなどの図3に示すプログラムが格納されている。無線LANアダプタ109にはアンテナ111が接続され、無線WANアダプタ113にはアンテナ115が接続されている。無線LANアダプタ109および無線WANアダプタ113はデバイスドライバと157、159と協働して送信機および受信機として動作する。無線LANアダプタ109および無線WANアダプタ113は、バス115と無線媒体との間でフレームを双方向に転送する際のバッファ機能を含む。無線LANアダプタ109および無線WANアダプタ113はさらに送信時にデータを符号化および変調してアンテナ111、115に高周波信号として出力する機能および受信時に復調および誤り訂正処理をする機能を含む。さらに無線LANアダプタ109および無線WANアダプタ113は、AP15、17から受信したビーコンフレームの電波強度を測定したり、通信パケットのエラーレートおよびSN比を測定したりすることができる。電波強度、エラーレートおよびSN比は、STA100aのAP15に対する通信品質に相当する。通信品質が低下すると転送フレームのスループットが低下する。無線LANアダプタ109は、VirtualWiFi、MyWiFiTechnologyまたはWiFiDirectのようにソフトウェアによる仮想化に対応している。無線LANアダプタ109はさらに仮想APに対応していてもよい。無線LANアダプタ109、無線WANアダプタ113のEEPROMには、固有の識別子であるMACアドレスが製造メーカにより登録されている。クライアントとして動作するSTA100b~100dの構成は図1を参照して説明することができる。STA100b~100dがSTA100aと異なる点は、無線WANアダプタ113およびアンテナ115を搭載していない点と、無線LANアダプタ109がソフトウェアによる仮想化に対応する必要がない点である。本発明との関連においてSTA100a~100dのハードウェアの構成は周知である。[STAのソフトウェア構成]図3は、STA100aに実装されるソフトウェアの概略の構成を説明する機能ブロック図である。接続ユーティリティ151およびアプリケーション153は、OS155上で動作するプログラムである。接続ユーティリティ151は、デバイスドライバ157から無線LANアダプタ109が測定した通信品質に関するデータを受け取って評価しOS155に無線通信の動作モードを切り換えるように指示するプログラムである。接続ユーティリティ151が指示するSTA100aの動作モードには、単独通信モードと共有通信モードがある。広義の共有通信モードは、通信規格の異なる2種類の無線ネットワークに接続しているホストが、一方の無線ネットワークで接続したクライアントと自らを他方の無線ネットワークに接続するときのホストの動作状態をいい、共有通信モードで他方の無線ネットワークとホストおよびクライアントが通信している状態を共有通信という。本実施の形態における共有通信は、STA100aがアドホックネットワーク23でSTA100b~100dのいずれかまたはすべてに接続し、STA100aとSTA100b~100dのいずれかまたはすべてを無線WAN21に接続することに相当する。単独通信モードはSTA100aが共有通信モード以外の動作モードで通信する動作状態をいい、STA100aが無線LAN19または無線WAN21のいずれかに接続している状態を含む。また、STA100aが無線LANに接続しているときは、インフラストラクチャモードでAP15に接続している状態またはアドホックモードで他のSTA100b~100dのいずれかまたはすべてに接続している状態と、STA100b~100dのいずれかまたはすべてとAP15に同時に接続している状態の2つの状態を含む。接続ユーティリティ151は、グループリスト152を使って共有通信モードを許可するSTA100b~100dを管理する。接続ユーティリティ151は共有通信モードで動作しているときに、アドホックネットワーク23の電波が届く範囲に共有通信のサービスを提供するSTA100b~100dのいずれも存在しないと判断したときに、デバイスドライバ157を通じて無線LANアダプタ109の動作を所定の時間の間停止させその後復帰させる。グループリスト152は、ホストが共有通信のサービスを提供するクライアントのユーザID、パスワード、およびアドホックネットワーク23で使用するSSIDを含むグループ情報を登録している。グループ情報の登録は、ホストの管理者が接続ユーティリティ151を通じて行う。ホストの管理者は、クライアントのユーザと対面したり、信頼できるネットワーク管理者から情報を受け取ったりしてグループ情報を登録する。アプリケーション153は、Webブラウザ、メールソフトウエア、または動画再生ソフトウェアといったようにユーザが作業に利用してLAN11、インターネット12またはWAN13にアクセスするためのプログラムである。アプリケーション153は、データの転送先を認識することはなく、送信データに送信先のIPアドレスに関連する識別子を付加してOS155に渡す。OS155はWindows登録商標7に搭載されているVirtualWiFi機能およびICS機能またはこれと同等の機能を備えている。OS155は、TCP/IPプロトコルモデル階層のトランスポート層とインターネット層の機能を含み、TCPパケットおよびIPパケットを処理する。OS155は、AP15またはAP17に接続したときにLAN11またはWAN17の中に存在するDHCPサーバから送信元として使用するグローバルIPアドレスを取得する。OS155は送信時に、アプリケーション153が作成したユーザデータにTCPヘッダおよびIPヘッダを付加してIPパケットを生成しデバイスドライバ157、159に渡す。OS155は受信時にデバイスドライバ157、159から受け取ったIPパケットからユーザデータを取り出して、ポート番号で指定されたアプリケーション153に渡す。OS155は、無線LANアダプタ109に対して2つの仮想化したLANアダプタを構築し、ひとつの仮想LANアダプタを通じて直接STA100b~100dに対するインフラストラクチャモードのAPの役割と同時に自らはAP15またはAP17と通信することができる。あるいはOS155は、無線LANアダプタ109に対して直接STA100b~100dとアドホックネットワーク23で通信しながら自らはAP15またはAP17と通信することができる。OS155は、各仮想LANアダプタが有効になるタイムスロットを設定して、無線LANアダプタ109におけるフレームの送信および受信を制御する。OS155はルータ機能を有しており、共有通信モードで動作するときに、アドホックモードで接続するSTA100b~100から無線LANアダプタ109を経由して受け取ったフレームを、無線WANアダプタ113を経由して無線WAN21に転送しまたその逆方向のフレーム転送を行う。OS155は同時に複数のSTA100b~100dとアドホックモードで接続して各STAに対して共有通信を実現することができる。共有通信モードで動作するときにOS155は、STA100b~100dと最初にアドホックモードで接続する際に、それらにローカルIPアドレスを付与する。STA100b~100dは受け取ったローカルIPアドレスを送信元のIPアドレスに使用してSTA100aと通信する。OS155は共有通信モードで動作するときに、各STA100b~100dから受け取ったフレームに含まれる送信元のローカルIPアドレスをグローバルIPアドレスに変換してデバイスドライバ159に渡す。OS155は共有通信モードで動作するときに、デバイスドライバ159から受け取ったフレームの宛先がMACアドレスによりSTA100b~100dのいずれかであると判断した場合に、ユーザデータに当該STA100b~100dのローカルIPアドレスを宛先とするIPヘッダを付加してデバイスドライバ157に渡す。本発明との関連におけるOSの機能は周知である。デバイスドライバ157は、無線LANアダプタ109の動作を制御したり無線LANアダプタ109とOS155との間のデータ通信を制御したりするプログラムである。デバイスドライバ159も同様に無線WANアダプタ113の動作を制御したりOS155との間のデータ通信を制御したりするプログラムである。デバイスドライバ157、159、無線LANアダプタ109、無線WANアダプタ113はTCP/IPプロトコルモデル階層のネットワークインターフェース層に位置する。デバイスドライバ157は送信時に、OS155から受け取ったIPパケットにイーサネット登録商標ヘッダを付加してフレームを生成し無線LANアダプタ109を通じてAP15またはアドホックモードで接続するSTA100b~100dに送信する。デバイスドライバ157は受信時に、AP15またはSTA100b~100dから受信したフレームからイーサネットヘッダを取り除いてIPパケットを取り出しOS155に送る。デバイスドライバ159は送信時に、OS155から受け取ったIPパケットに無線WANのヘッダを付加してフレームを生成し無線WANアダプタ113を通じて送信する。デバイスドライバ159は受信時に、AP17から受信したフレームからヘッダを取り除いてIPパケットを取り出しOS155に送る。接続ユーティリティ151はデバイスドライバ157のAPIを利用してAP15が送信するビーコンフレームの電波強度RSSI、データ転送時の信号対雑音比SN比またはエラーレートを測定して通信品質を判断する。接続ユーティリティ151は、通信品質がAP15とSTA100aとの間のスループットに影響を与える程度まで低下していると判断した場合は、接続先を無線WAN21に設定して動作モードを共有通信モードに設定するか否かを決定する。共有通信モードへの設定はOS155を経由して無線LANアダプタ109をアドホックネットワークに接続してSTA100b-100dへの通信を開始するか、APの役割を持つインフラストラクチャモードでSTA100b-100dと通信を開始して行う。クライアントとなるSTA100b~100dの構成は、図3を参照して説明することができる。STA100aとSTA100b~100dの相違点は、STA100b~100dが無線WANアダプタ113、デバイスドライバ159を含んでいない点がある。また、OS155は、無線LANアダプタ109の仮想化機能およびICS機能に対応する必要はない。また、グループリスト152には、ホストであるSTA100aがアドホックモードで使用するSSID、自らのユーザIDおよび自らの共有通信のパスワードだけを登録すればよい。上記のソフトウェアは、CPU101およびメインメモリ103などのハードウェア資源と協働して、ハードウェアとしての機能を発揮する。接続ユーティリティ151は、デバイスドライバ157から受け取った通信品質を評価して、通信モードを切り換えるための切換信号を出力する評価部として機能する。さらに接続ユーティリティ151は、評価部の切換信号に応じて、単独通信モードと共有通信モードのいずれで動作するかを決定する動作モード制御部として機能する。OS155とデバイスドライバ157は、無線LANアダプタ109と無線WANアダプタ113を単独通信モードまたは共有通信モードで動作させる通信制御部として機能する。デバイスドライバ157は、評価部から指示されたときに無線LANアダプタ15を停止させたり動作させたりする電力制御部として機能する。[ホストの動作]つぎに、共有通信をするときのホストの動作を図4のフローチャートを参照して説明する。ブロック201でSTA100a~100dが動作を開始する。グループリスト152には、STA100b~100dのグループ情報が登録されている。STA100aのユーザは新たにグループに参加したいユーザのSTAまたは自らが所有する新たなSTAが存在するときには、接続ユーティリティ151を通じてグループリスト152にグループ情報を追加する。STA100a~100dは相互にアドホックモードでの通信ができる距離を維持しながら移動している。このような環境では、STA100a~100dのAP15に対する接続の可否はほぼ一致すると考えられるが、各STA100a~100dの性能、AP15に対する距離の相違、または障害物の有無などの相違などに起因して接続可否が一致しない場合がある。以下の手順では、STA100a~100dのいずれかにおいて、AP15に対する通信品質が低下したときにSTA100aが自動的に共有通信モードに移行してSTA100b~100dの無線WAN21に対するアクセスを確保する。ブロック203でSTA100aは、AP15が定期的に送信するビーコンフレームのRSSIを検出してAP15との間でアソシエーションおよび認証を行いインフラストラクチャモードで無線LAN19に接続する。STA100b~100dも同様にインフラストラクチャモードで無線LAN19に接続する。インフラストラクチャモードで通信する各STA100a~100dは、AP15からローカルIPアドレスを取得する。この時点では、STA100aとSTA100b~100dのいずれかとの間にはアドホックネットワーク23が構築されていない。ブロック205でSTA100aは定期的にAP15が送信するビーコンフレームのRSSIを測定したり、AP15から受け取ったフレームのエラーレートおよびSN比を測定したりしてAP15に対する通信品質を評価する。通信品質が低下していないと判断したときはブロック207に移行し、低下したと判断したときはブロック209に移行する。ブロック207では、STA100b~100cのいずれかがSTA100aよりも先に通信品質が低下してSTA100aに共有通信モードへの切換要求をしてくる場合の手順を示している。ブロック207の切換要求は、図5のブロック309の手順に相当する。アドホックネットワーク23は、他のSTAと通信を開始しようとするいずれのSTAでも構築することができる。アドホックネットワーク23では、アドホックネットワーク23を構築するSTAの電波が届く範囲に存在する他のSTAとの間にピアツーピアの通信経路が形成される。ここでは、インフラストラクチャモードによるAP15に対する通信品質が先に低下したSTA100bがアドホックネットワーク23を構築するものとする。STA100bはアクティブスキャニング方式またはパッシブスキャニング方式でSTA100aを探索する。アクティブスキャニング方式の場合は、STA100bは、アドホックモードで使用するSSIDを含むプローブ要求フレームを送信し、それに対してSTA100aがプローブ応答フレームを返信することでアドホックネットワーク23を構築する。パッシブスキャニング方式ではSTA100bはSTA100aが送信するビーコンフレームのSSIDを検出してアドホックネットワークを構築する。STA100aは、STA100bから受け取ったパスワードとユーザIDを確認するとアドホックモードによるSTA100bとの通信を開始する。ただし、この時点では共有通信は開始していないため、STA100bが送信したフレームが無線WAN21に転送されることはない。STA100bから共有通信モードに移行する要求があった場合はブロック209に移行する。要求がない場合は、ブロック203に戻ってSTA100aはインフラストラクチャモードによる無線LAN19への接続を維持する。ブロック209でSTA100aは、AP17が帰属するWAN通信サービスプロバイダー名、通信可能なRSSI、および通信モード3GWANモード、GPRSモードなどなどの検出を行い、接続が可能な場合はAP17との間でアソシエーションおよび認証を行ってから無線WAN21に接続する。このときSTA100aは、WAN13のDHCPサーバからグローバルIPアドレスを取得する。無線WANに接続したSTA100aはブロック211で共有通信モードに移行する。ブロック207を通じて共有通信モードに移行したSTA100aはブロック213で、STA100bに共有通信モードに移行したことを示す通知をする。以後、STA100bはブロック207で構築していたアドホックネットワーク23と共有通信モードで動作するSTA100aを通じて無線WAN21に接続することができるようになる。ブロック205でSTA100aの通信品質が低下して共有通信モードに移行したSTA100aは、ブロック213でSTA100b~100dとの間にアドホックネットワーク23を構築して共有通信の要求をする。この手順は、図5のブロック307の手順に相当する。STA100aは、アドホックネットワークで使用するSSIDを含むビーコンフレームを定期的に送信してパッシブスキャニング方式で通信相手を探索する。STA100a~100dは一定の距離を保ちながら移動していることを想定しているため、STA100aのAP15に対する通信品質が低下したことは、他のSTA100b~100dの通信品質も低下していると予想される。STA100aが送信するビーコンフレームは、周辺に存在するSTA100b~100dに対して、共有通信モードを利用して無線WAN21に接続することを要求することに相当する。STA100b~100dの中で、共有通信モードを利用して無線WAN21にアクセスを希望するSTAは、STA100aとアドホックモードで通信する。あるいはSTA100aはパッシブスキャニング方式を採用して、各STA100b~100dにプローブ要求フレームを送信して順番にアドホックネットワークを構築するようにしてもよい。この手順は図5のブロック311に相当する。ブロック215でSTA100aは、クライアント100b~100dが定期的に送信するビーコンフレームのRSSIを測定して、アドホックネットワーク23を構築できる範囲にグループリスト152に登録された共有通信のサービスを提供する必要があるクライアントが存在するか否かを判断する。STA100aは近くにクライアントが存在しないと判断したときは、ブロック217に移行して無線LANアダプタ109の動作を停止し消費電力を低減する。ブロック219では、一定時間が経過した後にブロック221に移行して再び無線LANアダプタ109を動作させてからブロック223に移行する。ブロック215でSTA100aが近辺にクライアントが存在すると判断した場合もブロック223に移行する。ブロック223でSTA100aは、AP15が送信するビーコンフレームのRSSIを測定してインフラストラクチャモードの無線LAN19に接続できるか否かを判断する。AP15に接続できないと判断したときは、無線WAN21への接続を維持しながらブロック215に戻る。ブロック223でSTA100aは、AP15が送信するビーコンフレームのRSSIが所定値以上あると判断したときは、ブロック225で近辺に存在するSTA100b~100dとアドホックモードで通信して共有通信モードを終了するためのネゴシエーションをする。この手順は図5のブロック313に相当する。依然としてAP15のRSSIが小さいと判断したSTA100b~100dは、このネゴシエーションに応じない可能性がある。すべてのクライアントがSTA100aとのネゴシエーションに応じたときは、ブロック227でSTA100aは共有通信モードを終了して単独通信モードに移行する。ネゴシエーションに応じないクライアントが存在する間は、ブロック215に戻る。ブロック227でSTA100aはAP17との接続を切断してブロック203に移行して無線LAN19に接続する。通常無線LAN15のスループットは無線WAN21よりも大きいため、STA100a~100dはAP15に接続してパフォーマンスを向上することができる。以上の手順においては、STA100aの管理者またはユーザは、共有通信モードと単独通信モードの切換のための操作を一切行う必要がない。[クライアントの動作]つぎに、クライアントの動作を図5のフローチャートを参照して説明する。ブロック301で動作を開始したSTA100a~100dがブロック303でAP15に接続している。ブロック305でSTA100bは、定期的にAP15に対する通信品質を監視する。ブロック305で通信品質が低下していないと判断したときは、ブロック307に移行する。ブロック307でSTA100bは、図4のブロック213で説明したように、STA100aのAP15に対する通信品質が先に低下して共有通信モードに入り、STA100bにアドホックモードでの共有通信の要求をしたか否かを判断する。要求がない場合はブロック303に戻って、インフラストラクチャモードの無線LAN19への接続を維持する。共有通信の要求があった場合はブロック311に移行する。ブロック305でSTA100bは通信品質が低下したと判断したときは、ブロック309でSTA100aにアドホックモードで通信して共有通信モードに移行するように要求する。この手順は図4のブロック207に相当する。要求を受けたSTA100aは、現在単独通信モードで動作し、かつ共有通信モードへの移行が可能なときは共有通信モードに移行する。ブロック311では、STA100aとSTA100bとの間にアドホックネットワーク23が構築され、STA100aが共有通信モードに移行して、STA100bは共有通信でSTA100aを経由して無線WAN21にアクセスすることができる。ブロック313はSTA100aからSTA100bに、共有通信を終了する要求があった場合の手順を示す。この要求は、図4のブロック225の手順に相当する。要求があった場合はブロック315でSTA100bはAP15のRSSIが所定値以上あるか否かを判断する。STA100bは、RSSIが所定値以上あるときは、ブロック317に移行しアドホックモードの通信を終了してブロック303に戻る。STA100bはAP15のRSSIが小さいと判断したときは、STA100aにしばらく共有通信を継続するようにネゴシエーションしてブロック311に戻る。なお、ブロック313の手順を省略して、STA100bはAP15のRSSIが所定値以上あると判断したときに、アドホックモードでの通信を一方的に終了してAP15に接続するようにしてもよい。これまで本発明について図面に示した特定の実施の形態をもって説明してきたが、本発明は図面に示した実施の形態に限定されるものではなく、本発明の効果を奏する限り、これまで知られたいかなる構成であっても採用することができることはいうまでもないことである。