(57)【要約】【課題】  無線ネットワークにおいてアプリケーションを効率的に実行する技術を提供する。【解決手段】  本発明のゲーム機２は、SSID設定部１４とチャネル設定部１６を備える。SSID設定部１４は、通信モードに応じてネットワーク識別子であるSSIDを設定する。通信モードとして、ダウンロード待受モード、ダウンロードモード、ロビーモード、ゲームモードが設定される。通信モードごとにSSIDを設定することで、モードごとに無線ネットワークを生成することができる。チャネル設定部１６は、SSIDに応じて、使用する通信チャネルを設定する。【選択図】図１３
2006020345.tif 000002
【特許請求の範囲】
【請求項１】
アプリケーションを共に実行する相手方を探索するための第１無線ネットワークに接続するステップと、
第１無線ネットワークに既に接続している無線通信端末を探索するステップと、
探索により端末情報を受信した無線通信端末に対して、アプリケーションを共に実行することを要求するステップと、
相手方から承諾の返答を受信した場合に、アプリケーションを実行するための第２無線ネットワークに接続するステップと、
第２無線ネットワークにおいてアプリケーションを開始するステップと、
を備えることを特徴とするアプリケーション実行方法。
【請求項２】
第２無線ネットワークの識別子は、自身または相手方の少なくとも一方の端末情報に基づいて設定されることを特徴とする請求項１に記載のアプリケーション実行方法。
【請求項３】
第１無線ネットワークは、アプリケーションごとに構築されることを特徴とする請求項１または２に記載のアプリケーション実行方法。
【請求項４】
第１無線ネットワークは、複数のアプリケーションに対して共通のものとして構築されることを特徴とする請求項１または２に記載のアプリケーション実行方法。
【請求項５】
ファイルデータをダウンロードさせてもらう相手方を探索するための第１無線ネットワークに接続するステップと、
第１無線ネットワークに既に接続している無線通信端末を探索するステップと、
探索により端末情報を受信した無線通信端末に対して、ファイルデータのダウンロードを要求するステップと、
相手方から承諾の返答を受信した場合に、ファイルデータのダウンロードを実行するための第２無線ネットワークに接続するステップと、
第２無線ネットワークにおいて相手方からファイルデータをダウンロードするステップと、
を備えることを特徴とするファイルデータダウンロード方法。
【請求項６】
第１無線ネットワークにおける探索結果として、ダウンロード可能なファイルデータ名と端末情報とを対応付けてモニタに表示するステップをさらに備えることを特徴とする請求項５に記載のファイルデータダウンロード方法。
【請求項７】
アプリケーションプログラムをダウンロードさせてもらう相手方を探索するための第１無線ネットワークに接続するステップと、
第１無線ネットワークに既に接続している無線通信端末を探索するステップと、
探索により端末情報を受信した無線通信端末に対して、アプリケーションプログラムのダウンロードを要求するステップと、
相手方から承諾の返答を受信した場合に、アプリケーションプログラムのダウンロードを実行するための第２無線ネットワークに接続するステップと、
第２無線ネットワークにおいて相手方からアプリケーションプログラムをダウンロードするステップと、
アプリケーションプログラムのダウンロードが完了した後、ダウンロードしたアプリケーションプログラムを起動して、アプリケーションを共に実行する相手方を探索するための第３無線ネットワークに接続するステップと、
第３無線ネットワークに既に接続している無線通信端末を探索するステップと、
探索により端末情報を受信した無線通信端末に対して、アプリケーションを共に実行することを要求するステップと、
相手方から承諾の返答を受信した場合に、アプリケーションを実行するための第４無線ネットワークに接続するステップと、
第４無線ネットワークにおいてアプリケーションを開始するステップと、
を備えることを特徴とするアプリケーション実行方法。
【請求項８】
無線ネットワークを特定する識別子を設定するネットワーク識別子設定部と、
設定したネットワーク識別子をもとに、無線ネットワークに接続する無線インタフェース部と、を備える無線通信端末装置であって、
ネットワーク識別子設定部は、アプリケーションプログラムをダウンロードさせてもらう相手方を探索するための第１無線ネットワークの識別子、アプリケーションプログラムのダウンロードを実行するための第２無線ネットワークの識別子、アプリケーションを共に実行する相手方を探索するための第３無線ネットワークの識別子、およびアプリケーションを実行するための第４無線ネットワークの識別子のいずれかを、通信モードに応じて設定することを特徴とする無線通信端末装置。
【請求項９】
無線通信機能を実行させることのできるコンピュータに、
アプリケーションを共に実行する相手方を探索するための第１無線ネットワークに接続させる機能と、
第１無線ネットワークに既に接続している無線通信端末を探索させる機能と、
探索により端末情報を受信した無線通信端末に対して、アプリケーションを共に実行することを要求させる機能と、
相手方から承諾の返答を受信した場合に、アプリケーションを実行するための第２無線ネットワークに接続させる機能と、
第２無線ネットワークにおいてアプリケーションを開始させる機能と、
を実行させるためのプログラム。
【請求項１０】
無線通信機能を実行させることのできるコンピュータに、
アプリケーションを共に実行する相手方を探索するための第１無線ネットワークに接続させる機能と、
第１無線ネットワークに既に接続している無線通信端末を探索させる機能と、
探索により端末情報を受信した無線通信端末に対して、アプリケーションを共に実行することを要求させる機能と、
相手方から承諾の返答を受信した場合に、アプリケーションを実行するための第２無線ネットワークに接続させる機能と、
第２無線ネットワークにおいてアプリケーションを開始させる機能と、
を実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体
【請求項１１】
無線通信機能を実行させることのできるコンピュータに、
ファイルデータをダウンロードさせてもらう相手方を探索するための第１無線ネットワークに接続させる機能と、
第１無線ネットワークに既に接続している無線通信端末を探索させる機能と、
探索により端末情報を受信した無線通信端末に対して、ファイルデータのダウンロードを要求させる機能と、
相手方から承諾の返答を受信した場合に、ファイルデータのダウンロードを実行するための第２無線ネットワークに接続させる機能と、
第２無線ネットワークにおいて相手方からファイルデータをダウンロードさせる機能と、
を実行させるためのプログラム。
【請求項１２】
無線通信機能を実行させることのできるコンピュータに、
ファイルデータをダウンロードさせてもらう相手方を探索するための第１無線ネットワークに接続させる機能と、
第１無線ネットワークに既に接続している無線通信端末を探索させる機能と、
探索により端末情報を受信した無線通信端末に対して、ファイルデータのダウンロードを要求させる機能と、
相手方から承諾の返答を受信した場合に、ファイルデータのダウンロードを実行するための第２無線ネットワークに接続させる機能と、
第２無線ネットワークにおいて相手方からファイルデータをダウンロードさせる機能と、
を実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項１３】
第１無線ネットワークに接続するステップと、
第１無線ネットワークに既に接続している無線通信端末を探索するステップと、
探索により端末情報を受信した無線通信端末に対して、個別に通信することを要求するステップと、
相手方から承諾の返答を受信した場合に、第２無線ネットワークに接続するステップと、
を備えることを特徴とする通信方法。
【請求項１４】
第２無線ネットワークの識別子は、自身または相手方の少なくとも一方の端末情報に基づいて設定されることを特徴とする請求項１３に記載の通信方法。
【請求項１５】
第１無線ネットワークに接続するステップと、
第１無線ネットワークに接続している他の無線通信端末からのファイルデータのダウンロード要求に対して、承諾の返答を送信するステップと、
ファイルデータのアップロードを実行するための第２無線ネットワークに接続するステップと、
第２無線ネットワークにおいてファイルデータをアップロードするステップと、
を備えることを特徴とするファイルデータアップロード方法。
【請求項１６】
無線通信機能を実行させることのできるコンピュータに、
第１無線ネットワークに接続させる機能と、
第１無線ネットワークに接続している他の無線通信端末からのファイルデータのダウンロード要求に対して、承諾の返答を送信させる機能と、
ファイルデータのアップロードを実行するための第２無線ネットワークに接続させる機能と、
第２無線ネットワークにおいてファイルデータをアップロードさせる機能と、
を実行させるためのプログラム。
【請求項１７】
無線通信機能を実行させることのできるコンピュータに、
第１無線ネットワークに接続させる機能と、
第１無線ネットワークに接続している他の無線通信端末からのファイルデータのダウンロード要求に対して、承諾の返答を送信させる機能と、
ファイルデータのアップロードを実行するための第２無線ネットワークに接続させる機能と、
第２無線ネットワークにおいてファイルデータをアップロードさせる機能と、
を実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項１８】
アプリケーションプログラムを起動する際、メモリの所定の領域に、無線ネットワークを特定する識別子が格納されているか否かを確認するステップと、
無線ネットワークの識別子が格納されている場合に、その識別子を、接続する無線ネットワークの識別子として設定するステップと、
を備えることを特徴とするネットワーク識別子設定方法。
【請求項１９】
コンピュータに、
アプリケーションプログラムを起動させる際、メモリの所定の領域に、無線ネットワークを特定する識別子が格納されているか否かを確認させる機能と、
無線ネットワークの識別子が格納されている場合に、その識別子を、接続する無線ネットワークの識別子として設定させる機能と、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の通信端末の間で通信を行う技術に関し、とくに無線ネットワークにおいてアプリケーションを効率的に実行する技術に関する。
【背景技術】
【０００２】
情報端末の小型化および軽量化が実現されたことにより、情報端末を持ち運ぶことが一般的になってきた。近年では、基地局やアクセスポイントなどのインフラを利用して、複数のユーザがゲームなどのアプリケーションを一緒に楽しめる無線通信環境が現実のものとなってきている。また一方で、オンデマンド型の通信として無線アドホックネットワークを構築する研究が行われている。アドホックネットワークでは、基地局やアクセスポイントが不要となるため、このようなインフラが存在しない場所でも簡易に無線ネットワークを構築することができる。アドホックネットワークでは、複数のユーザが携帯型ゲーム機を持ち寄って相互に無線通信することで、一緒にゲームを楽しむことも可能となる。
【０００３】
インフラストラクチャネットワークやアドホックネットワークは、IEEE802.11やBluetoothなどの技術を用いて実現される。従来想定されていた無線通信の環境としては、数台の端末が集まり、それらの端末間での通信を実現するものが一般であったが、インフラストラクチャネットワークやアドホックネットワークにおいては、例えば数十台といった数多くの端末が１つの環境に集まる状況も想定される。
【０００４】
IEEE802.11を用いた無線ネットワークでは、互いに通信する端末のグループを構成する基本単位として、BSS(Basic Service Set)を規定している。BSSは、互いに通信する端末のグループの集合を指し、同じBSSに所属する端末同士が通信できる。BSSは、48ビットの識別子(Basic Service Set ID: BSSID)で特定され、BSSIDには、環境内で唯一の値が割り当てられる。BSSIDとは別に、BSSを識別するために0-32バイトの文字列からなるSSID(Service Set ID)も存在する。SSIDは任意に設定可能であり、複数のBSSに同じSSIDを割り当てることも可能である。BSSは、端末またはアクセスポイントがビーコンと呼ばれる基準パケットを送信することで構成される。ビーコンが到達する範囲がBSSの空間的な範囲を構成し、同一の空間内に複数のBSSが存在してもよい。
【０００５】
IEEE802.11を用いた無線ネットワークを利用する場合、端末はいずれかのBSSに属する必要がある。そのために端末は、自身の周囲に存在するBSSの探索（スキャニング）を行う。端末が既存のグループに参加する場合、参加を希望するグループのSSIDを知っている場合はそのSSIDを指定すればよく、一方、SSIDを知らない場合には、周囲に存在する全てのBSSを探索して、探索したSSIDの中から１つのSSIDを選択して指定する。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
アクセスポイントを利用するインフラストラクチャモードを用いた無線ＬＡＮでは、アクセスポイントがビーコンを送信し、BSSを構成する。アクセスポイントは、多くの場合、インターネットもしくはエンタープライズネットワークのようなプライベートネットワークに接続されており、通常は、これらのネットワークの管理者がSSIDを決定してアクセスポイントに設定を行う。ネットワークのユーザは、ネットワーク管理者から通知されたSSIDをもとに無線通信を行う。
【０００７】
アクセスポイントを利用しないアドホックモードを用いた無線ＬＡＮでは、ネットワークの管理者は存在しない。したがって、ネットワークのユーザ自身がSSIDを決定して、接続を行う必要がある。この場合、端末同士の間で同じSSIDを選択しないと互いに接続できないため、あらかじめSSIDについてユーザ間で合意をとる必要がある。また、SSIDは任意に設定可能であるため、別々のグループ間で同じSSIDが設定された場合に、意図しない無線ネットワークに接続する可能性もある。このように、アドホックネットワークにおいて、ユーザ自身でSSIDを設定する作業は煩雑であり、また特に同一環境内に多数の無線ネットワークが構築されるような環境下では、通信の安定性を図ることが困難であるという問題がある。
【０００８】
そこで本発明は、SSIDなどのネットワーク識別子を効率的に設定することで、アプリケーションを効率的に実行する技術を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記課題を解決するために、本発明のある態様は、アプリケーションプログラムの実行方法に関する。この態様のアプリケーション実行方法は、アプリケーションを共に実行する相手方を探索するための第１無線ネットワークに接続するステップと、第１無線ネットワークに既に接続している無線通信端末を探索するステップと、探索により端末情報を受信した無線通信端末に対して、アプリケーションを共に実行することを要求するステップと、相手方から承諾の返答を受信した場合に、アプリケーションを実行するための第２無線ネットワークに接続するステップと、第２無線ネットワークにおいてアプリケーションを開始するステップとを備える。
【００１０】
本発明の別の態様は、ファイルデータのダウンロード方法に関する。この態様のファイルデータダウンロード方法は、ファイルデータをダウンロードさせてもらう相手方を探索するための第１無線ネットワークに接続するステップと、第１無線ネットワークに既に接続している無線通信端末を探索するステップと、探索により端末情報を受信した無線通信端末に対して、ファイルデータのダウンロードを要求するステップと、相手方から承諾の返答を受信した場合に、ファイルデータのダウンロードを実行するための第２無線ネットワークに接続するステップと、第２無線ネットワークにおいて相手方からファイルデータをダウンロードするステップとを備える。なお、ファイルデータは、プログラムファイルおよびデータファイルを含む。
【００１１】
本発明のさらに別の態様は、アプリケーションプログラムの実行方法に関する。この態様のアプリケーション実行方法は、アプリケーションプログラムをダウンロードさせてもらう相手方を探索するための第１無線ネットワークに接続するステップと、第１無線ネットワークに既に接続している無線通信端末を探索するステップと、探索により端末情報を受信した無線通信端末に対して、アプリケーションプログラムのダウンロードを要求するステップと、相手方から承諾の返答を受信した場合に、アプリケーションプログラムのダウンロードを実行するための第２無線ネットワークに接続するステップと、第２無線ネットワークにおいて相手方からアプリケーションプログラムをダウンロードするステップと、アプリケーションプログラムのダウンロードが完了した後、ダウンロードしたアプリケーションプログラムを起動して、アプリケーションを共に実行する相手方を探索するための第３無線ネットワークに接続するステップと、第３無線ネットワークに既に接続している無線通信端末を探索するステップと、探索により端末情報を受信した無線通信端末に対して、アプリケーションを共に実行することを要求するステップと、相手方から承諾の返答を受信した場合に、アプリケーションを実行するための第４無線ネットワークに接続するステップと、第４無線ネットワークにおいてアプリケーションを開始するステップとを備える。
【００１２】
本発明のさらに別の態様は、無線ネットワークを特定する識別子を設定するネットワーク識別子設定部と、設定したネットワーク識別子をもとに、無線ネットワークに接続する無線インタフェース部とを備える無線通信端末装置に関する。この態様の無線通信端末装置において、ネットワーク識別子設定部は、アプリケーションプログラムをダウンロードさせてもらう相手方を探索するための第１無線ネットワークの識別子、アプリケーションプログラムのダウンロードを実行するための第２無線ネットワークの識別子、アプリケーションを共に実行する相手方を探索するための第３無線ネットワークの識別子、およびアプリケーションを実行するための第４無線ネットワークの識別子のいずれかを、通信モードに応じて設定する。
【００１３】
本発明のさらに別の態様は、通信方法に関する。この態様の通信方法は、第１無線ネットワークに接続するステップと、第１無線ネットワークに既に接続している無線通信端末を探索するステップと、探索により端末情報を受信した無線通信端末に対して、個別に通信することを要求するステップと、相手方から承諾の返答を受信した場合に、第２無線ネットワークに接続するステップとを備える。
【００１４】
本発明のさらに別の態様は、第１無線ネットワークに接続するステップと、第１無線ネットワークに接続している他の無線通信端末からのファイルデータのダウンロード要求に対して、承諾の返答を送信するステップと、ファイルデータのアップロードを実行するための第２無線ネットワークに接続するステップと、第２無線ネットワークにおいてファイルデータをアップロードするステップとを備える。なお、ファイルデータは、プログラムファイルおよびデータファイルを含む。
【００１５】
本発明のさらに別の態様は、接続する無線ネットワークの識別子を設定する方法に関する。この態様のネットワーク識別子設定方法は、アプリケーションプログラムを起動する際、メモリの所定の領域に、無線ネットワークを特定する識別子が格納されているか否かを確認するステップと、無線ネットワークの識別子が格納されている場合に、その識別子を、接続する無線ネットワークの識別子として設定するステップとを備える。
【００１６】
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【００１７】
本発明によると、無線ネットワークにおいてアプリケーションを効率的に実行する技術を提供することができる。
【発明を実施するための最良の形態】
【００１８】
図１は、IEEE802.11を用いたアドホックネットワークにおける独立BSS(Independent Basic Service Set:IBSS)を概念的に示す。IBSSは無線ネットワークに相当する。IBSSのステーションは、互いに直接通信でき、ここでは、無線通信端末装置（ステーション）として４台のゲーム機２ａ、２ｂ、２ｃ、２ｄを例示している。なお、IBSSを構成するゲーム機２の台数は４台に限定するものではなく、４台以外の台数であってもよい。ゲーム機２は無線通信機能を有し、複数のゲーム機２が集まることによって、無線ネットワークを構築する。IEEE802.11などの無線ＬＡＮの規格を使用することで、無線アドホックネットワークを構築できる。IBSSでは、アドホックネットワークを構築することで、基地局やアクセスポイントなどのインフラストラクチャを別途必要とすることなく、複数のゲーム機２の間の通信を実現できる。IBSSの通信範囲は、基本サービスエリアと呼ばれ、この基本サービスエリアは、無線媒体の伝播特性によって決定される。
【００１９】
（実施例１）
図２は、実施例１においてプレイヤがゲームアプリケーションを開始するまでのフローチャートを示す。このフローチャートは、ゲーム機２の通信方法を示し、具体的にはアプリケーションの実行方法を示している。まず、プレイヤがゲーム機２の電源をオンする（Ｓ１０）。ゲーム機２のメディアドライブには、予め、プレイするゲームプログラムを記録した記録媒体が挿入されているものとする。記録媒体には、通信用のプログラムも記録されていてもよい。なお、通信用プログラムは、ゲーム機２のＲＯＭに予め格納されていてもよい。
【００２０】
電源がオンされると、ゲームプログラムが記録媒体から読み出され、ゲームアプリケーションが起動される。ゲーム機２のモニタには、１人プレイを行うか、または他のユーザとプレイを行うかの選択画面が表示される。他のユーザとのプレイとは、例えば格闘ゲームにおける対戦プレイであり、ユーザは、対戦モードを選択することで、無線ネットワークを通じて他のプレイヤとゲームを楽しむことができる。１人プレイを選択した場合は（Ｓ１２のＹ）、ゲームアプリケーションが開始され（Ｓ２４）、プレイヤは１人モードでゲームを行う。
【００２１】
対戦モードを選択した場合は（Ｓ１２のＮ）、ゲーム機２は、ロビーIBSSに参加すなわち接続する（Ｓ１４）。実施例のゲームシステムにおいて、ロビーIBSSは、アプリケーションを共に実行する相手方を探索するための無線ネットワークである。具体的に、ロビーIBSSは、他のゲーム機を探索したり、他のゲーム機と対戦交渉を行うロビールームとしての役割をもつ。ロビーIBSSのSSID（以下、「ロビーSSID」と呼ぶ）は、ネットワークを識別する識別子であり、ゲームタイトルごとに一意に設定される。ゲームタイトルごとにロビーSSIDを設定して、ロビーIBSSを構築することにより、１つのロビーIBSSには、同じゲームをプレイするゲーム機のみが集合することになる。同じゲームを行うプレイヤが集まることで、対戦相手を容易に探すことができるなど、ロビーIBSSの利用価値を高めることができる。
【００２２】
ロビーSSIDは、予めゲームプログラムに直接記述されてもよい。この場合、ゲーム機２がロビーSSIDをプログラムから読み出して、そのSSIDをもつIBSSを探索する。これにより、ロビーIBSSを探し出すことができ、ロビーIBSSのBSSIDを取得することで、ロビーIBSSに参加することができる。これにより、周囲の全てのロビーIBSSを探索する場合と比較すると、探索処理にかかる時間を省略することができ、接続時間を短縮できる。また、ユーザ間でSSID決定を行う必要もないため、その点からも接続時間の短縮化を実現できる。
【００２３】
なお、ゲームプログラム製作側の負担を低減するために、ロビーSSIDをゲームプログラムに直接記述させないことも可能である。この場合、ゲームプログラムには、ゲームタイトルごとに一意に割り当てられるロビーIDが記述され、通信用のプログラムが、ロビーIDをもとにSSIDを生成する。ロビーIDは、単純な文字列として定められることが好ましい。ロビーIDは、いわゆるゲームタイトルを特定するゲームIDとしての役割をもつものであってもよい。ゲームプログラムの製作者側にSSIDを意識させることなく、通信用のプログラムでSSIDを自動生成することにより、ゲームプログラムの製作者に余計な負担をかけなくてすむ。ここでは、ゲームタイトルＡのアプリケーションが起動されており、ゲームタイトルＡ用のロビーIBSSのSSIDが"TITLE_A_MATCHMAKE"と一意に決定されるものとする。
【００２４】
ロビーIBSSに参加したゲーム機２は、ロビーIBSSに既に参加している他のゲーム機を探索する（Ｓ１６）。ロビーIBSSに参加している各ゲーム機は、自身の状態を示す端末情報パケットをブロードキャスト送信している。端末情報パケットには、ゲーム機の呼び名（ニックネーム）が含まれる。ニックネームは、ゲーム機ごとにユーザにより予め設定されている。探索を行うゲーム機２は、他のゲーム機から端末情報パケットを受信することで、同じ無線ネットワーク（ロビーSSID）に接続しているゲーム機の存在および端末情報を知ることができる。探索処理の結果はリスト化され、ゲーム機２のモニタに表示される。
【００２５】
図３（ａ）は、ロビーIBSSにおけるゲーム機間の関係を示す。ゲーム機２ａが探索処理を行い、ゲーム機２ｂ、２ｃが端末情報パケットをブロードキャスト送信している。図３（ａ）中、矢印は、端末情報パケットが送信されている方向を示す。ゲーム機２ａは、ゲーム機２ｂ、２ｃから端末情報パケットを受信し、端末情報をリスト化する。なお、探索の方法として、例えばゲーム機２ａが探索用パケットを送信して、ゲーム機２ｂ、２ｃから返信される端末情報パケットを受信してもよい。図３（ｂ）は、ゲーム機２ａにおいて生成された端末情報リストを示す。端末情報リストでは、ゲーム機とニックネームとが対応付けられる。
【００２６】
図４は、生成した端末情報リストをゲーム機２ａのモニタに表示した例を示す。ユーザは操作ボタンなどを操作して、モニタに表示されたプレイヤ（ニックネーム）を選択することができる。友達と対戦したい場合は、予め友達のニックネームを知っておくことで、そのニックネームを選択して対戦することができる。
【００２７】
図２に戻って、ユーザが操作ボタンを操作して対戦相手を選択すると（Ｓ１８）、選択した相手側に対戦要求パケットが送信される。対戦要求パケットは、選択した対戦相手に対して、ゲームアプリケーションを共に実行することを要求するパケットである。対戦要求パケットには、ゲーム機２ａのニックネームが含まれる。ゲーム機２ａのニックネームは"HAL"とする。ゲーム機２ａからゲーム機２ｂに対して対戦要求パケットが送信されると、ゲーム機２ｂのモニタにゲーム機２ａから対戦要求があったことと、ゲーム機２ａのニックネームが表示され、ゲーム機２ｂのユーザは、対戦するか否かを決定する。対戦の可否は、返答パケットとしてゲーム機２ａに送信される。対戦が承諾された場合（Ｓ２０のＹ）、ゲーム機２ａ、２ｂは、"TITLE_A_MATCHMAKE"とは異なるSSIDを生成して、その無線ネットワークに移動する（Ｓ２２）。移動先の無線ネットワークは、ゲームの対戦を行うIBSSであり、このIBSSをゲーム専用IBSSと呼ぶ。すなわちゲーム専用IBSSは、対戦相手同士でアプリケーションを実行するための無線ネットワークである。対戦が拒否された場合（Ｓ２０のＮ）、ゲーム機２ａのユーザは、別のゲーム機、ここではゲーム機２ｃを対戦相手として選択し（Ｓ１８）、対戦要求パケットがゲーム機２ｃに送信される。
【００２８】
ゲーム専用IBSSのSSID（以下、「ゲームSSID」と呼ぶ）は、自身または相手方の少なくとも一方の端末情報に基づいて定められてもよい。具体的に、ゲームSSIDは、ゲーム２ａのニックネーム（HAL）とゲーム２ｂのニックネーム（Joe）に基づいて定められてもよい。対戦相手の少なくとも一方のニックネームをSSIDに含めることで、独自のSSIDを設定できる。例えば、ゲームSSIDを、"TITLE_A_PLAYING_HAL_JOE"と定めてもよい。ゲーム機２ａおよび２ｂは、ゲーム専用IBSSにおいて、ゲームアプリケーションを開始して（Ｓ２４）、対戦プレイを行う。なお、ここでゲームアプリケーションの開始とは、実際に相手と対戦プレイを行うことを意味する。
【００２９】
なお、Ｓ１６の探索処理において、他のゲーム機から端末情報パケットを受信できない場合、またＳ２０の合意判定において、他のゲーム機と対戦の合意に至らないような場合は、自ら端末情報パケットをブロードキャスト送信して、対戦相手を募集してもよい。
【００３０】
図５は、ゲーム機の通信モードの遷移図を示す。実施例のアドホックネットワークでは、どのIBSSにも参加していない未接続モード、ロビーIBSSに参加しているロビーモード、ゲーム専用IBSSに参加しているゲームモードの３つの通信モードが設定される。未接続モードは、ゲーム機２の電源オン直後の状態や、ユーザが１人プレイを行っている状態に対応する。
【００３１】
ロビーIBSSでは、各ゲーム機２は、同じIBSSに存在する他のゲーム機から端末情報パケットを受信し、または他のゲーム機に対して自身の端末情報パケットをブロードキャスト送信する。
【００３２】
ロビーIBSSに参加しているゲーム機２は、他のゲーム機との間で対戦の合意が成立すると、対戦グループ専用のゲーム専用IBSSへ移行できる。ゲーム専用IBSSは、ゲームを同時プレイする複数台のゲーム機により構成されるグループであり、グループごとに設定される個別の無線ネットワークに相当する。ゲーム専用IBSSは、同一環境内に複数存在してよい。
【００３３】
ロビーIBSSおよびゲーム専用IBSSからは、任意のタイミングで未接続モードに戻ることができる。ゲーム専用IBSSからロビーIBSSへ復帰する場合は、一旦未接続モードに移行した後、ロビーIBSSに参加する。
【００３４】
実施例のゲームシステムにおいて、省電力制御または信号の衝突回避制御などを実行する場合、ロビーIBSSとゲーム専用IBSSとで、制御モードを異ならせてもよい。ロビーIBSSとゲーム専用IBSSとでは、要求されるレイテンシなどが異なる場合があるため、設定されるIBSSごとに制御モードを変化させることで、効率よい通信を実現することが可能となる。
【００３５】
（実施例２）
実施例１では、ロビーIBSSのSSIDが、ゲームアプリケーションごと、すなわちゲームタイトルごとに設定され、ロビーIBSSがゲームタイトルごとに構築される場合について説明した。実施例２では、ロビーIBSSのSSIDを、すべてのゲームアプリケーションに共通に設定することを可能とする。この場合、ロビーIBSSが、複数のゲームアプリケーションに対して共通のものとして構築されることになる。ユーザがゲームアプリケーションを開始するまでの流れは、図２に示したフローチャートと同様である。
【００３６】
図２を参照して、まず、プレイヤがゲーム機２の電源をオンする（Ｓ１０）。ゲーム機２のメディアドライブには、予め、ゲームタイトルＡのゲームプログラムを記録した記録媒体が挿入されているものとする。
【００３７】
電源がオンされると、ゲームプログラムが記録媒体から読み出され、ゲームアプリケーションＡが起動される。ゲーム機２のモニタには、１人プレイを行うか、または他のユーザとプレイを行うかの選択画面が表示される。１人プレイを選択した場合は（Ｓ１２のＹ）、ゲームアプリケーションが開始され（Ｓ２４）、プレイヤは１人モードでゲームを行う。
【００３８】
対戦モードを選択した場合は（Ｓ１２のＮ）、ゲーム機２は、ロビーIBSSに参加すなわち接続する（Ｓ１４）。実施例２では、ロビーSSIDは、複数のゲームアプリケーションに共通であり、"COMMON_MATCHMAKE"と設定される。SSID"COMMON_MATCHMAKE"は、全てのゲーム機２のＲＯＭに記録されていてもよく、また全てのゲームプログラムに記述されていてもよい。これにより、ロビーIBSSの探索処理に必要な時間を省略することができ、接続時間を短縮できる。また、ユーザ間でSSID決定を行う必要もないため、その点からも接続時間の短縮化を実現できる。
【００３９】
ロビーIBSSに参加したゲーム機２は、ロビーIBSSに既に参加している他のゲーム機を探索する（Ｓ１６）。ロビーIBSSに参加している各ゲーム機は、自身の状態を示す端末情報パケットをブロードキャスト送信している。端末情報パケットには、アプリケーション名、アイコンデータおよびゲーム機の呼び名（ニックネーム）が含まれる。アイコンデータおよびニックネームは、ゲーム機ごとにユーザにより予め設定されている。探索を行うゲーム機２は、他のゲーム機から端末情報パケットを受信することで、同じ無線ネットワーク（ロビーSSID）に接続しているゲーム機の存在、アプリケーション情報および端末情報を知ることができる。探索処理の結果はリスト化され、ゲーム機２のモニタに表示される。実施例２ではアプリケーション共通のロビーSSIDを構築するために、自分とは別のゲームアプリケーションで対戦相手を募集している他のゲーム機の存在を知ることがでる。例えば、自分と同じゲームアプリケーションでは対戦相手がいない場合に、対戦相手を募集している他のゲームアプリケーションに切り替えることで、対戦プレイを楽しむことができるようになる。
【００４０】
図６（ａ）は、ロビーIBSSにおけるゲーム機間の関係を示す。ゲーム機２ａが探索処理を行い、ゲーム機２ｂ、２ｃが端末情報パケットをブロードキャスト送信している。ゲーム機２ｂはゲームアプリケーションＡを起動し、ゲーム機２ｃはゲームアプリケーションＢを起動している。図６（ａ）中、矢印は、端末情報パケットが送信されている方向を示す。ゲーム機２ａは、ゲーム機２ｂ、２ｃから端末情報パケットを受信し、アプリケーション情報および端末情報をリスト化する。なお、探索の方法として、例えばゲーム機２ａが探索用パケットを送信して、ゲーム機２ｂ、２ｃから返信される端末情報パケットを受信してもよい。図６（ｂ）は、ゲーム機２ａにおいて生成された端末情報リストを示す。端末情報リストでは、ゲーム機と、アイコン、アプリケーション名およびニックネームとが対応付けられる。
【００４１】
図７は、生成した端末情報リストをゲーム機２ａのモニタに表示した例を示す。ユーザは操作ボタンなどを操作して、モニタに表示されたプレイヤを選択することができる。
【００４２】
図２に戻って、ユーザが操作ボタンを操作して対戦相手を選択すると（Ｓ１８）、選択した相手側に対戦要求パケットが送信される。対戦要求パケットには、ゲーム機２ａのアプリケーション名、アイコンデータおよびニックネームが含まれる。ゲーム機２ａのニックネームは"HAL"とする。ゲーム機２ａからゲーム機２ｂに対して対戦要求パケットが送信されると、ゲーム機２ｂのモニタにゲーム機２ａから対戦要求があったことが表示される。このとき、ゲーム機２ａで起動されているアプリケーション名、アイコンデータおよびニックネームも表示される。これらの情報に基づいて、ゲーム機２ｂのユーザは、対戦するか否かを決定する。対戦の可否は、返答パケットとしてゲーム機２ａに送信される。対戦が承諾された場合（Ｓ２０のＹ）、ゲーム機２ａ、２ｂは、"COMMON_MATCHMAKE"とは異なるSSIDを生成して、その無線ネットワークに移動する（Ｓ２２）。移動先の無線ネットワークは、ゲームの対戦を行うゲーム専用IBSSである。実施例１で示したように、ゲーム専用IBSSはゲームアプリケーションを実行するための無線ネットワークであり、ゲーム専用IBSSのSSIDは、ゲーム機２ａまたは２ｂの少なくとも一方の端末情報に基づいて生成される。これにより、ゲーム専用IBSSは、ゲームシステム内で独自のものとして設定される。対戦が拒否された場合（Ｓ２０のＮ）、ゲーム機２ａのユーザは、別のゲーム機を選択する（Ｓ１８）。
【００４３】
ゲーム機２ａがタイトルＢのゲームプログラムを有する場合、ゲームアプリケーションＡを起動終了し、ゲームアプリケーションＢを起動して、ゲーム機２ｃに対戦を申し込むことも可能である。なお、Ｓ１６の探索処理において、他のゲーム機から端末情報パケットを受信できない場合、またＳ２０の合意判定において、他のゲーム機と対戦の合意に至らないような場合は、自ら端末情報パケットをブロードキャスト送信して、対戦相手を募集してもよい。
【００４４】
（実施例３）
実施例１および実施例２では、ゲーム機２がゲームプログラムを保有していることを前提として、ゲームアプリケーションを開始する方法を説明した。実施例３では、ゲーム機２がゲームプログラムを保有しておらず、周囲に存在する他のゲーム機からゲームプログラムをダウンロードする方法を説明する。
【００４５】
図８は、実施例３においてプレイヤがゲームプログラムをダウンロードするフローチャートを示す。まず、プレイヤがゲーム機２の電源をオンする（Ｓ３０）。実施例３では、ゲーム機２のメディアドライブに、ゲームプログラムを記録した記録媒体が挿入されておらず、ゲーム機２はゲームアプリケーションを起動できない。ユーザはゲームプログラムのダウンロードモードを選択する（Ｓ３２）。ゲーム機２のＲＯＭには、ダウンロード用のプログラムが記録されている。ダウンロードモードが選択されると、ダウンロード用のプログラムが自動的に起動され、ゲーム機２は、DL待受IBSSに参加すなわち接続する（Ｓ３４）。
【００４６】
DL待受IBSSのSSIDは、アプリケーションプログラムをダウンロードさせてもらう相手方を探索するためのネットワークを特定する識別子であり、例えば"DOWNLOAD_MATCHMAKE"と設定される。SSID"DOWNLOAD_MATCHMAKE"は、全てのゲーム機２のＲＯＭに記録されていてもよい。これにより、DL待受IBSSの探索処理に必要な時間を省略することができ、接続時間を短縮できる。
【００４７】
DL待受IBSSに参加したゲーム機２は、DL待受IBSSに既に参加している他のゲーム機を探索する（Ｓ３６）。DL待受IBSSにおいては、ダウンロード可能なアプリケーションをもつゲーム機が対戦相手を探すために、ダウンロードを希望する相手を探しているような状況が想定される。現実的には、ダウンロード可能なアプリケーションをもつゲーム機のユーザが、ダウンロードを希望するゲーム機２のユーザにゲームプログラムをダウンロードさせて、その後、一緒にゲームを楽しもうとする友達同士であることが多いと考えられる。
【００４８】
ダウンロード可能なアプリケーションをもつ各ゲーム機は、自身の状態を示す端末情報パケットをブロードキャスト送信している。端末情報パケットには、アプリケーション名、アイコンデータおよびゲーム機の呼び名（ニックネーム）が含まれる。アイコンデータおよびニックネームは、ゲーム機ごとにユーザにより予め設定されている。探索を行うゲーム機２は、他のゲーム機から端末情報パケットを受信することで、同じ無線ネットワーク（DL待受IBSS）に接続しているゲーム機の存在、ダウンロード可能なアプリケーション情報および端末情報を知ることができる。探索処理の結果はリスト化され、ゲーム機２のモニタに表示される。
【００４９】
図９（ａ）は、DL待受IBSSにおけるゲーム機間の関係を示す。ゲーム機２ａが探索処理を行い、ゲーム機２ｂ、２ｃが端末情報パケットをブロードキャスト送信している。ゲーム機２ｂはゲームアプリケーションＡを起動し、ゲーム機２ｃはゲームアプリケーションＢを起動している。図９（ａ）中、矢印は、端末情報パケットが送信されている方向を示す。ゲーム機２ａは、ゲーム機２ｂ、２ｃから端末情報パケットを受信し、端末情報をリスト化する。なお、探索の方法として、例えばゲーム機２ａが探索用パケットを送信して、ゲーム機２ｂ、２ｃから返信される端末情報パケットを受信してもよい。図９（ｂ）は、ゲーム機２ａにおいて生成された端末情報リストを示す。端末情報リストでは、ゲーム機と、アイコン、ダウンロード可能なアプリケーション名およびニックネームとが対応付けられる。
【００５０】
図１０は、生成した端末情報リストをゲーム機２ａのモニタに表示した例を示す。ユーザは操作ボタンなどを操作して、モニタに表示されたプレイヤを選択することができる。モニタには、ダウンロード可能なアプリケーションプログラム名と、ニックネームなどの端末情報とが対応付けて表示される。
【００５１】
図８に戻って、ユーザが操作ボタンを操作してダウンロード元となるプレイヤを選択すると（Ｓ３８）、選択した相手側にゲームプログラムの送信要求パケットが送信される。送信要求パケットは、特定のゲーム機に対してアプリケーションプログラムのダウンロードを要求するパケットである。送信要求パケットには、ゲーム機２ａのアイコンデータおよびニックネームも含まれる。ゲーム機２ａのニックネームは"HAL"とする。ゲーム機２ａからゲーム機２ｂに対して送信要求パケットが送信されると、ゲーム機２ｂのモニタにゲーム機２ａからゲームプログラムＡの送信要求があったことが表示される。このとき、ゲーム機２ａのアイコンデータおよびニックネームも表示される。これらの情報に基づいて、ゲーム機２ｂのユーザは、ゲームプログラムを送信するか否かを決定する。プログラム送信の可否は、返答パケットとしてゲーム機２ａに送信される。プログラム送信が拒否された場合（Ｓ４０のＮ）、ゲーム機２ａのユーザは、別のゲーム機を選択する（Ｓ３８）。
【００５２】
プログラム送信が承諾された場合（Ｓ４０のＹ）、ゲーム機２ａ、２ｂは、"DOWNLOAD_MATCHMAKE"とは異なるSSIDを生成して、その無線ネットワークに移動する（Ｓ４２）。移動先の無線ネットワークは、ゲームプログラムのダウンロードを実行するためのIBSSであり、このIBSSをDL用IBSSと呼ぶ。例えば、DL用IBSSのSSIDを、"TITLE_A_PLAYING_HAL_JOE"と定めてもよい。DL用IBSSで、ゲームプログラムＡがゲーム機２ｂからゲーム機２ａに送信される（Ｓ４４）。ゲーム機２ａはゲームプログラムＡをダウンロードすると、ゲームプログラムＡを起動して、ゲーム機２ｂと対戦プレイを行う。DL用IBSSでは、ゲームプログラムのダウンロードが行われるだけでなく、ゲーム機２ａと２ｂとの間でゲームアプリケーションを開始することもできる。
【００５３】
なお、ゲームプログラムＡをダウンロードしたゲーム機２ａは、ゲーム機２ｂ以外の他のゲーム機との間で対戦ゲームをプレイしてもよい。この場合、ゲーム機２ａは、ゲームアプリケーションＡのロビーIBSSへ移行し、対戦相手を探してもよい。ロビーIBSSに移行してからゲームアプリケーションを開始するまでの処理は、実施例１および実施例２において説明したとおりである。
【００５４】
図１１は、実施例３においてプレイヤがゲームプログラムをアップロードするフローチャートを示す。まず、プレイヤがゲーム機２の電源をオンする（Ｓ５０）。ゲーム機２のメディアドライブには、予め、プレイするゲームプログラムを記録した記録媒体が挿入されている。記録媒体には、通信用のプログラムも記録されていてもよい。なお、通信用プログラムは、ゲーム機２のＲＯＭに予め格納されていてもよい。
【００５５】
電源がオンされると、ゲームプログラムが記録媒体から読み出され、ゲームアプリケーションが起動される。プレイヤはゲームプログラムのアップロードモードを選択する（Ｓ５２）。アップロードモードは、ダウンロードモードにある他のゲーム機に対して自身のゲームプログラムをアップロードさせるモードである。実施例３では、アップロードモードとダウンロードモードとが表裏の関係にある。アップロードモードが選択されると、アップロード用のプログラムが自動的に起動され、ゲーム機２は、DL待受IBSSに参加すなわち接続する（Ｓ５４）。このとき、プレイヤは、１人モードでゲームを行うことができる。
【００５６】
ダウンロード可能なアプリケーションをもつゲーム機２は、自身の状態を示す端末情報パケットをブロードキャスト送信する。端末情報パケットには、アプリケーション名、アイコンデータおよびゲーム機の呼び名（ニックネーム）が含まれる。アイコンデータおよびニックネームは、ゲーム機２ごとにユーザにより予め設定されている。探索を行う他のゲーム機は、ゲーム機２から端末情報パケットを受信することで、同じ無線ネットワーク（DL待受IBSS）にゲーム機２が接続していることを知ることができる。
【００５７】
ゲーム機２は、ダウンロードを希望する他のゲーム機からゲームプログラムの送信要求パケットを受信する（Ｓ５６）。ゲーム機２のユーザは、ゲームプログラムをアップロードするか否かを決定する。プログラム送信の可否は、返答パケットとして、ダウンロードを希望するゲーム機に送信される。プログラムのアップロードを拒否する場合（Ｓ５８のＮ）、ゲーム機２は、別のゲーム機からのダウンロード要求を待機する。
【００５８】
プログラムのアップロードを承諾した場合（Ｓ５８のＹ）、ゲーム機２は、DL用IBSSに移動し（Ｓ６０）、ゲームプログラムをアップロードする（Ｓ６２）。
【００５９】
図１２は、実施例３におけるゲーム機の通信モードの遷移図を示す。実施例３のアドホックネットワークでは、どのIBSSにも参加していない未接続モード、DL待受IBSSに参加しているダウンロード待受モード、DL用IBSSに参加しているダウンロードモード、ロビーIBSSに参加しているロビーモード、ゲーム専用IBSSに参加しているゲームモードの５つの通信モードが設定される。未接続モードは、ゲーム機２の電源オン直後の状態や、ユーザが１人プレイを行っている状態に対応する。
【００６０】
DL待受IBSSでは、ゲーム機２は、ゲームプログラムをもつゲーム機に対して、ゲームプログラムの送信要求を送信する。ゲームプログラムをもつゲーム機は、ゲームプログラムを送信するための待機状態にあり、ゲームプログラムの送信要求を受信すると、送信の可否を決定する。
【００６１】
DL待受IBSSに参加しているゲーム機２は、他のゲーム機がゲームプログラムの送信を決定すると、ダウンロードを実行するためのDL用IBSSへ移行できる。DL用IBSSでは、ゲームプログラムのダウンロードが行われる。ダウンロードが完了したゲーム機２は、ダウンロードしたゲームプログラムを起動して、一旦未接続状態に戻る。このとき、ゲームプログラムをアップロードしてくれる相手方との間で、ゲームプログラムのダウンロード後にそのゲームアプリケーションを一緒に実行するか否かを予め定めておいてもよい。
【００６２】
この場合、ダウンロードの開始前、または終了後に、ゲームアプリケーションを一緒に行うSSIDを共に設定する。ダウンロードしたゲーム機２は、ゲームプログラムを起動する前に、設定したSSIDをメモリの所定の領域に格納しておく。このメモリは例えばフラッシュメモリであって、ゲーム機２を再起動することによってデータを消失しないものが用いられる。このゲーム機２は、ゲームプログラムの起動後、メモリの所定の領域を参照して、設定したSSIDが格納されているか否かを確認する。格納されている場合、ゲーム機２は、そのSSIDで特定されるIBSSに移行する。同様に、アップロードしたゲーム機も、設定したSSIDで特定されるIBSSに移行する。アップロードしたゲーム機は、アップロードの完了直後に、設定したSSIDで特定されるIBSSに移行してもよい。このIBSSは、ゲーム専用IBSSに相当する。
【００６３】
なお、両者はDL用IBSSにおいて対戦を行ってもよく、この場合は、ゲーム機２が、ダウンロードしたゲームプログラムの起動後、DL用IBSSに戻ればよい。また、ゲームアプリケーションを一緒に実行しない場合は、そのゲームのロビーIBSSに移行することができる。なお再起動したゲーム機２は、メモリの所定の領域を参照して、設定したSSIDが格納されていない場合は、プレイヤの操作入力に応じてゲームのロビーIBSSに移行する。
【００６４】
ロビーIBSSでは、各ゲーム機２は、同じIBSSに存在する他のゲーム機から端末情報パケットを受信し、または他のゲーム機に対して自身の端末情報パケットをブロードキャスト送信する。
【００６５】
ロビーIBSSに参加しているゲーム機２は、他のゲーム機との間で対戦の合意が成立すると、対戦グループ専用のゲーム専用IBSSへ移行できる。ゲーム専用IBSSは、ゲームを同時プレイする複数台のゲーム機により構成されるグループであり、グループごとに設定される個別の無線ネットワークに相当する。ゲーム専用IBSSは、同一環境内に複数存在してよい。また、ロビーIBSSに参加しているゲーム機２は、他のゲーム機との間でファイルデータをダウンロードまたはアップロードしてもよい。なお、ダウンロードまたはアップロードするために、ゲーム機同士で新たなIBSSへ移行してもよい。プログラムファイルやデータファイルなどのファイルデータのダウンロードまたはアップロードは、ゲームプログラムを記録した記録媒体がゲーム機２に挿入されているか否かを問わず、実行することが可能である。
【００６６】
このようにSSIDを通信モードごとに変えて、通信モードごとのIBSSを構築することにより、各無線ネットワークの利用価値を高めることが可能となる。なお、既述したように、DL用IBSSにおいて対戦プレイを行うことも可能であり、またDL用IBSSからロビーIBSSを経由せずに、ゲーム専用IBSSに直接移行することも可能である。DL待受IBSS、DL用IBSS、ロビーIBSSおよびゲーム専用IBSSからは、任意のタイミングで未接続モードに戻ることができる。DL用IBSSからDL待受IBSSへ復帰する場合、またゲーム専用IBSSからロビーIBSSへ復帰する場合は、一旦未接続モードに移行する必要がある。なお、実施例２で説明したように、ゲーム機２が複数のゲームアプリケーションに共通のロビーIBSSに入り、対戦相手の一方がゲームプログラムをもっていない場合に、DL用IBSSに入るようにしてもよい。
【００６７】
図１３は、ゲーム機２の機能ブロック図である。ゲーム機２は、無線通信端末装置として構成され、ゲーム処理に関する動作を主として行う処理装置１０と、通信に関する動作を行う無線インタフェース装置４０とを備える。処理装置１０および無線インタフェース装置４０は、別個のハードウェアとして設けられ、処理装置１０および無線インタフェース装置４０の間は、バスにより電気的に接続される。なお、処理装置１０はホストＰＣとして構成され、無線インタフェース装置４０の動作を管理する機能ももつ。無線インタフェース装置４０はＣＰＵを有して構成される。
【００６８】
本実施例におけるゲーム機２の通信機能は、処理装置１０および無線インタフェース装置４０において、ＣＰＵ、メモリ、メモリにロードされたプログラムなどによって実現され、ここではそれらの連携によって実現される構成を描いている。プログラムは、ゲーム機２に内蔵されていてもよく、また記録媒体に格納された形態で外部から供給されるものであってもよい。したがってこれらの機能ブロックがハードウエアのみ、ソフトウエアのみ、またはそれらの組合せによっていろいろな形で実現できることは、当業者に理解されるところである。図示の例では、処理装置１０のＣＰＵ１２が、SSID設定部１４、チャネル設定部１６、リスト生成部１８、アプリケーション処理部２０としての機能をもつ。SSID設定部１４は、ネットワークを識別するSSIDを設定し、チャネル設定部１６は、使用する通信チャネルを設定する。無線インタフェース装置４０は、無線ネットワークに接続する機能、無線ネットワーク内のゲーム機とパケットを送受信する機能をもつ。
【００６９】
入出力部２６は、ユーザからの入力を受け付け、またユーザへの出力を行う。具体的に、入力部として、ユーザからの操作指示を受け付ける方向キーなどの操作ボタン群が設けられ、また出力部として、モニタやスピーカが設けられる。記憶装置２４は、メモリスティックなどの外部記憶装置として構成され、ゲームデータのセーブなどに利用される。メディアドライブ２８には、ディスク状の記録媒体３０が挿入され、記録媒体３０に記録されているプログラムやデータなどが読み出される。読み出されたプログラムおよびデータはメモリ部２２に記憶され、ＣＰＵ１２における処理に利用される。また、実施例３においてアプリケーションプログラムをダウンロードするときには、メモリ部２２または記憶装置２４にアプリケーションプログラムが記憶される。
【００７０】
実施例３で説明したように、ゲーム機２の電源がオンされ、ユーザがダウンロードモードを選択すると、SSID設定部１４が、DL待受IBSSのSSIDを設定する。チャネル設定部１６は、SSID設定部１４で生成されたSSIDをもとに使用する通信チャネルを設定する。チャネル設定部１６におけるチャネル設定機能は全てのゲーム機２において共通のアルゴリズムとして組み込まれ、したがって、各ゲーム機２は、同一のSSIDをもとに同一の通信チャネルを設定する。
【００７１】
チャネル設定部１６は、複数のIBSS間での電波干渉を低減するために、各IBSSで使用する通信チャネルを、使用可能な周波数帯域内で分散する、すなわちばらけるように設定する。一例として、DL用IBSSで使用する通信チャネルが、他のIBSSで使用する通信チャネルとが重ならないように、各IBSSの通信チャネルが設定されてもよい。DL用IBSSでは、データ量の大きなアプリケーションプログラムが送信されるため、DL用IBSS内の通信を安定化させるべく、DL用IBSSの通信チャネルを、他のIBSSの通信チャネルとは異なるように設定することは有効である。
【００７２】
通信チャネルは、SSIDをもとに決定してもよい。例えば、SSIDをハッシュ関数を用いて演算処理し、IEEE802.11上で利用可能な通信チャネルの中から、演算処理結果に応じた通信チャネルを決定してもよい。演算処理の種類は問わないが、所定の関数を利用することで各IBSSの通信チャネルができるだけ分散するように、各ゲーム機２におけるチャネル設定部１６がそれぞれの通信チャネルを設定することが可能となる。また、単純な演算方法としては、SSIDのビットデータを、通信チャネル数でモジュロ演算し、その剰余項で通信チャネルを定めてもよい。通信チャネルに予め番号を付与しておき、その番号と剰余項の値とを対応付けておくことで、環境内において通信チャネルを分散して設定することが可能となる。以上の演算処理は、全てのゲーム機２において共通の通信チャネル設定アルゴリズムにより実現され、したがって、通信チャネルは各ゲーム機２においてSSIDをもとに一意に決定される。SSIDごとに使用チャネルを設定することで、それぞれのアドホックネットワーク間での電波干渉を低減することが可能となる。
【００７３】
SSID設定部１４で設定されたDL待受SSID、およびチャネル設定部１６で設定された通信チャネルは、無線インタフェース装置４０に送られる。無線インタフェース装置４０は、設定された通信チャネルでDL待受IBSSに接続する。これにより、ゲーム機２は、DL待受IBSSに参加することができる。無線インタフェース装置４０が、DL待受IBSSにおいて、ダウンロード可能なアプリケーションプログラムをもつゲーム機を探索する。無線インタフェース装置４０が、アプリケーションプログラムをもつゲーム機から端末情報パケットを受け取ると、リスト生成部１８が、ダウンロード可能なアプリケーションプログラム名と端末情報とを対応付けたリストを生成し、入出力部２６のモニタに表示させる。ユーザがモニタの表示画面からゲーム機を選択すると、無線インタフェース装置４０が、そのゲーム機に対してアプリケーションプログラムの送信要求を送信する。
【００７４】
無線インタフェース装置４０が、送信要求の承諾を示す返答パケットを受け取ると、SSID設定部１４が、DL用IBSSのSSIDを設定する。チャネル設定部１６は、SSID設定部１４で生成されたSSIDをもとに使用する通信チャネルを設定する。無線インタフェース装置４０は、設定された通信チャネルでDL用IBSSに接続する。これにより、ゲーム機２は、DL用IBSSに参加することができ、アプリケーションプログラムをダウンロードする。
【００７５】
次に、実施例１および実施例２で説明したように、アプリケーションプログラムが起動され、ユーザが対戦モードを選択すると、SSID設定部１４が、ロビーIBSSのSSIDを設定する。チャネル設定部１６は、SSID設定部１４で生成されたSSIDをもとに使用する通信チャネルを設定する。無線インタフェース装置４０は、設定された通信チャネルでロビーIBSSに接続する。これにより、ゲーム機２は、ロビーIBSSに参加し、対戦相手を探索することができる。
【００７６】
無線インタフェース装置４０が、ロビーIBSSにおいて、アプリケーションを共に実行するゲーム機を探索する。無線インタフェース装置４０が、他のゲーム機から端末情報パケットを受け取ると、リスト生成部１８が、対戦候補のリストを生成し、入出力部２６のモニタに表示させる。ユーザがモニタの表示画面からゲーム機を選択すると、無線インタフェース装置４０が、そのゲーム機に対して対戦要求を送信する。
【００７７】
無線インタフェース装置４０が、対戦要求の承諾を示す返答パケットを受け取ると、SSID設定部１４が、ゲーム専用IBSSのSSIDを設定する。チャネル設定部１６は、SSID設定部１４で生成されたSSIDをもとに使用する通信チャネルを設定する。無線インタフェース装置４０は、設定された通信チャネルでゲーム専用IBSSに接続する。これにより、ゲーム機２は、ゲーム専用IBSSに参加することができる。
【００７８】
アプリケーション処理部２０はゲームプログラムを実行する。ゲームSSIDにおいて、プレイヤからの操作入力は無線インタフェース装置４０を介してグループ内の他のゲーム機に伝達され、また、グループ内の他のゲーム機の操作入力は無線インタフェース装置を介して受信され、アプリケーション処理部２０により処理される。
【００７９】
このように、SSID設定部１４は、ダウンロードしてもらう相手方を探索するダウンロード待受モード、ダウンロードを実行するダウンロードモード、ゲームの対戦相手を探索するロビーモード、対戦相手とゲームを実行するゲームモードの４つの通信モードに応じて、それぞれSSIDを設定する。各通信モードに応じて無線ネットワークを設定することで、通信モード間の通信干渉を回避するとともに、各通信モードの利便性を高めることができる。
【００８０】
なおゲーム機２がアプリケーションプログラムを起動する際、SSID設定部１４は、フラッシュメモリなどのメモリの所定の領域に、設定されたSSIDが格納されているか否かを確認してもよい。SSIDが格納されている場合は、SSID設定部１４が、そのSSIDを、接続する無線ネットワークの識別子として設定する。一方、SSIDが格納されておらず、且つ対戦モードが選択された場合は、SSID設定部１４が、ロビーIBSSのSSIDを設定してもよい。
【００８１】
また、ゲーム機２がアプリケーションプログラムを起動する際、SSID設定部１４ではなく、ゲーム機２に設けられたＯＳ（オペレーティングシステム）が、メモリの所定の領域に、SSIDが格納されているか否かを確認してもよい。ゲーム機２のＯＳは、アプリケーションプログラム起動時に、メモリの所定のアドレスに格納されているデータを参照し、SSIDが格納されている場合には、そのSSIDを、接続する無線ネットワークの識別子として設定する。このようにゲーム機２のＯＳは、アプリケーションプログラムの起動時に、これらの処理を行う識別子設定プログラムを実行してもよい。ゲーム機２のＯＳは、引き続き、そのSSIDで識別される無線ネットワークへの接続処理を行ってもよい。なお、ゲーム機２のＯＳは、SSIDを読み出した後、SSID設定部１４にSSIDを引き渡し、SSID設定部１４が、そのSSIDを、接続する無線ネットワークの識別子として設定してもよい。
【００８２】
なお、ゲーム機２が、実施例３におけるアップロード側の無線通信端末として機能する場合、無線インタフェース装置４０が、DL待受IBSSにおいて端末情報を送信する。他のゲーム機からダウンロード要求を受信すると、ユーザからの承諾指示に応じて、ＣＰＵ１２が無線インタフェース装置４０を介して承諾の返答を送信する。SSID設定部１４は、DL用IBSSのSSIDを設定し、チャネル設定部１６は、通信チャネルを設定する。無線インタフェース装置４０は、設定された通信チャネルでDL用IBSSに接続し、ＣＰＵ１２が、無線インタフェース装置４０を介してアプリケーションプログラムをアップロードさせる。
【００８３】
以上、本発明を実施例をもとに説明した。この実施例は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。上記した実施例では、アドホックネットワークにおいてIBSSが生成される場合について説明したが、本発明は、アドホックネットワークに限らず、インフラストラクチャネットワークにおいても適用することが可能である。インフラストラクチャネットワークにおいては、アクセスポイントにSSIDを設定する機能をもたせることで、無線ネットワーク識別子が効率的に生成され、各ゲーム機が無線ネットワークに参加することが可能となる。
【図面の簡単な説明】
【００８４】
【図１】IEEE802.11を用いたアドホックネットワークにおけるIBSSを概念的に示す図である。
【図２】実施例においてプレイヤがゲームアプリケーションを開始するまでのフローチャートを示す図である。
【図３】（ａ）は、ロビーIBSSにおけるゲーム機間の関係を示す図であり、（ｂ）は、ゲーム機において生成された端末情報リストを示す図である。
【図４】端末情報リストをゲーム機のモニタに表示した例を示す図である。
【図５】ゲーム機の通信モードの遷移図である。
【図６】（ａ）は、ロビーIBSSにおけるゲーム機間の関係を示す図であり、（ｂ）は、ゲーム機において生成された端末情報リストを示す図である。
【図７】端末情報リストをゲーム機のモニタに表示した例を示す図である。
【図８】実施例においてプレイヤがゲームプログラムをダウンロードするフローチャートを示す図である。
【図９】（ａ）は、DL待受IBSSにおけるゲーム機間の関係を示す図であり、（ｂ）は、ゲーム機において生成された端末情報リストを示す図である。
【図１０】端末情報リストをゲーム機のモニタに表示した例を示す図である。
【図１１】実施例においてプレイヤがゲームプログラムをアップロードするフローチャートを示す図である。
【図１２】ゲーム機の通信モードの遷移図である。
【図１３】ゲーム機の機能ブロック図である。
【符号の説明】
【００８５】
２・・・ゲーム機、１０・・・処理装置、１２・・・ＣＰＵ、１４・・・SSID設定部、１６・・・チャネル設定部、１８・・・リスト生成部、２０・・・アプリケーション処理部、２２・・・メモリ部、２４・・・記憶装置、２６・・・入出力部、２８・・・メディアドライブ、３０・・・記録媒体、４０・・・無線インタフェース装置。
【図１】
2006020345.tif 000003
【図２】
2006020345.tif 000004
【図３】
2006020345.tif 000005
【図４】
2006020345.tif 000006
【図５】
2006020345.tif 000007
【図６】
2006020345.tif 000008
【図７】
2006020345.tif 000009
【図８】
2006020345.tif 000010
【図９】
2006020345.tif 000011
【図１０】
2006020345.tif 000012
【図１１】
2006020345.tif 000013
【図１２】
2006020345.tif 000014
【図１３】
2006020345.tif 000015