(57)【要約】【課題】ゲーム機などの無線通信端末装置が効率的に無線ネットワークに参加できる技術を提供する。【解決手段】本発明のゲーム機２は、処理装置１０と無線インタフェース装置４０とを備える。例えば、IEEE802.11を用いた無線通信環境において、処理装置１０のメモリ部２２は、自身の所属する無線ネットワークを識別するネットワーク識別子を記憶する。識別子変更部１８は、メモリ部２２に記憶されているネットワーク識別子にパターンを追加し、またはネットワーク識別子に含まれているパターンを除くことで、新たなネットワーク識別子を生成する。【選択図】図５
2008079314.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としてANYを指定して探索することに相当する。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
このように、近隣に多数のBSSが存在する場合、参加を希望するBSSのSSIDを知らなければ、ANYを指定して、近隣の全てのBSSをリスト化し、ユーザは、そのリストから所望のBSSを選択して指定する必要がある。１つのBSSに関するデータには様々な情報が付随しており、また近隣の全てのBSSについての情報をリスト化することで、数多くのBSSが存在する場合には、リストが大きくなるという問題がある。この場合、リストを保持するための記憶領域を確保する必要があるが、リストを保持するだけの目的のために、メモリ容量を大きくすることは好ましくない。また、周囲に存在する全てのBSSをリスト化するため、自分が参加したいBSSを発見するまでの時間がかかるという問題もある。以上の理由から、接続する対象となるBSSの候補リストを効率的に作成することが要求される。
本発明は、無線通信端末装置が、効率的に無線ネットワークに参加する技術を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、本発明のある態様は、自身の所属する無線ネットワークを識別するネットワーク識別子を記憶するメモリ部と、メモリ部に記憶されているネットワーク識別子にパターンを追加し、またはネットワーク識別子に含まれているパターンを除くことで、新たなネットワーク識別子を生成する識別子変更部とを備える無線通信端末装置に関する。
【０００８】
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【０００９】
本発明によると、無線通信端末装置が無線ネットワークに効率的に参加できる技術を提供することができる。
【発明を実施するための最良の形態】
【００１０】
図１は、IEEE802.11を用いたアドホックネットワークにおける独立BSS(Independent Basic Service Set:IBSS)を概念的に示す。IBSSは無線ネットワークに相当する。IBSSのステーションは、互いに直接通信でき、ここでは、無線通信端末装置（ステーション）として４台のゲーム機２ａ、２ｂ、２ｃ、２ｄを例示している。なお、IBSSを構成するゲーム機２の台数は４台に限定するものではなく、４台以外の台数であってもよい。ゲーム機２は無線通信機能を有し、複数のゲーム機２が集まることによって、無線ネットワークを構築する。IEEE802.11などの無線ＬＡＮの規格を使用することで、無線アドホックネットワークを構築できる。
【００１１】
IBSSでは、アドホックネットワークを構築することで、基地局やアクセスポイントなどのインフラストラクチャを別途必要とすることなく、複数のゲーム機２の間の通信を実現できる。なお、本発明は、アドホックネットワークにおいてのみ適用されるものではなく、インフラストラクチャネットワークにおいて適用されることも可能である。以下では、本発明を適用する環境の一例として、アドホックネットワークを例にとる。
【００１２】
図２は、ある環境内に複数のIBSSが生成されている状態を示す。図２の例では、３つのIBSSが生成されており、１つのゲーム機２が、IBSS1、IBSS2、IBSS3の通信範囲内に存在している。IBSSの通信範囲は、基本サービスエリアと呼ばれ、この基本サービスエリアは、無線媒体の伝播特性によって決定される。例えば、各IBSSにおいてメンバ同士でゲームアプリケーションを実行している場合、ゲーム機２は、プレイしたいゲームアプリケーションが実行されているIBSSに加入することで、ゲームに参加することが可能となる。
【００１３】
図３は、本実施例においてプレイヤがゲームアプリケーションを開始するまでのフローチャートを示す。まず、プレイヤがゲーム機２の電源をオンする（Ｓ１０）。ゲーム機２のメディアドライブには、予め、プレイするゲームプログラムを記録した記録媒体が挿入されているものとする。記録媒体には、通信用のプログラムも記録されていてもよい。なお、通信用プログラムは、ゲーム機２のＲＯＭに予め格納されていてもよい。
【００１４】
電源がオンされると、ゲームプログラムが記録媒体から読み出され、ゲームアプリケーションが起動される。ゲーム機２のモニタには、１人プレイを行うか、または他のユーザとプレイを行うかの選択画面が表示される。他のユーザとのプレイとは、例えば格闘ゲームにおける対戦プレイであり、ユーザは、対戦モードを選択することで、無線ネットワークを通じて他のプレイヤとゲームを楽しむことができる。１人プレイを選択した場合は（Ｓ１２のＹ）、ゲームアプリケーションが開始され（Ｓ２２）、プレイヤは１人モードでゲームを行う。
【００１５】
対戦モードを選択した場合（Ｓ１２のＮ）、ゲーム機２は、参加するBSSを探索する（Ｓ１４）。BSS探索の方法としては、ゲーム機２が探索用パケットを送信して、それに対する返答パケットを受信する方法と、一定時間の間ビーコンを受信する方法の２つがある。返答パケットやビーコンには、BSSすなわち無線ネットワークに関するBSSIDやSSIDなどのネットワーク情報が含まれている。
【００１６】
ここで、周囲に数十台、数百台のオーダで他のゲーム機が存在している場合、ANYを指定して、全てのBSSを探索するのでは、リストが巨大化して、ゲーム機２のメモリに記憶しきれない状態が発生しうる。周囲に存在するBSSの個数は不明のため、あらゆる状況に対応できるようにメモリ容量を予め大きく設定することも可能であるが、当然のことながらメモリ容量は小さく設定する方がコスト的に有利である。そのため、生成するBSSリストの規模を小さくして、小さいメモリ容量で対応可能とさせることが、コスト面また処理時間の観点からも好ましい。
【００１７】
本実施例のゲームシステムにおいて、ゲーム機２は、対戦相手となる他のゲーム機を探したり、また他のゲーム機と対戦を行うことのできるロビーIBSSを探索する。ロビーIBSSのSSID（以下、「ロビーSSID」と呼ぶ）は、ゲームタイトルに応じて設定される。１つのゲームアプリケーションに対して、複数のロビーIBSSが構築されてもよい。例えば、ゲームアプリケーションの一般的なロビールームとしての役割をもつロビーIBSSや、そのゲームアプリケーションの技量に応じたロビールームとしての役割をもつロビーIBSSなど、そのゲームアプリケーションに関して様々な役割をもつロビーIBSSが生成されてもよい。ゲームタイトルに応じてロビーIBSSを生成することにより、１つのロビーIBSSには、同じゲームをプレイするゲーム機のみが集合することになる。同じゲームを行うプレイヤが集まることで、対戦をその場で実行したり、また対戦相手を容易に探すことができるなど、ロビーIBSSの利用価値を高めることができる。
【００１８】
本実施例では、１つのゲームアプリケーションに関するロビーIBSSのSSIDが、ゲームアプリケーションに対して一意に設定されるパターンを含んで生成される。ゲームアプリケーションごとに設定されるパターンを、「ゲーム識別パターン」と呼ぶ。本実施例において、ゲームアプリケーションＡのゲーム識別パターンが"TITLE_A"と設定されている場合、ゲームアプリケーションＡにおけるロビーSSIDは、"TITLE_A"に文字列を追加した態様で設定される。なお、ゲーム識別パターン自身がロビーSSIDとして機能してもよい。
【００１９】
ゲーム識別パターンは、予めゲームプログラムに直接記述されてもよい。この場合、ゲーム機２がゲーム識別パターンをゲームプログラムから読み出して、そのゲーム識別パターンをもつSSIDを探索する。これにより、ゲーム識別パターンで特定されるゲームアプリケーションのロビーIBSSを探し出すことができ、ロビーIBSSのBSSIDを取得することで、ロビーIBSSに参加することができる。なお、ゲームプログラム製作側の負担を低減するために、ゲーム識別パターンをゲームプログラムに直接記述させないことも可能である。この場合、ゲームプログラムには、ゲームタイトルごとに一意に割り当てられるロビーIDが記述され、ゲーム機２に予め用意されている通信用のプログラムが、ロビーIDをもとにゲーム識別パターンを生成する。ロビーIDは、単純な文字列として定められることが好ましい。以下では、説明を単純化するために、ゲームタイトルＡに対して設定されるゲーム識別パターンを、"TITLE_A"とし、ゲームタイトルＢに対して設定されるゲーム識別パターンを、"TITLE_B"とする。
【００２０】
ロビーIDは、いわゆるゲームタイトルを特定するゲームIDとしての役割をもつものであってもよい。ゲームプログラムの製作者側にゲーム識別パターンを意識させることなく、通信用のプログラムでゲーム識別パターンを自動生成することにより、ゲームプログラムの製作者に余計な負担をかけなくてすむ。なお、特定のユーザ同士で専用のロビーIBSSに集まりたい場合には、ユーザがグループ名を設定し、通信用プログラムが、ロビーIDとグループ名とに基づいて、同一タイトルのロビーIBSSから独立した新たなロビーIBSSを別途作成してもよい。
【００２１】
本実施例では、ゲーム機２が、周囲のBSSを探索して、所定のパターンを含んだSSIDをもつネットワーク情報を取得してリスト化する。ゲームアプリケーションＡに関するBSSを探索する場合には、"TITLE_A"を含んだSSIDをもつネットワーク情報をリスト化することになる。SSIDをフィルタリングすることにより、リスト化するSSIDの個数を制限する。これにより、周囲に存在する全てのBSSをリスト化する場合と比較すると、リストを小さく作成することができ、小さいメモリ容量でリストを保持することが可能となる。生成されたリストは、ゲーム機２のモニタに表示される（Ｓ１６）。例えば、モニタには、初級者用のロビールーム、中級者用のロビールーム、上級者用のロビールームなどがリストとして表示される態様であってもよい。
【００２２】
ユーザは、ゲーム機２の表示されるリストを見て、参加したいBSSを選択する（Ｓ１８）。これにより、ゲーム機２はロビーIBSSに参加することになる（Ｓ２０）。続いて、ゲーム機２においてゲームアプリケーションが開始され（Ｓ２２）、グループ内の他のゲーム機との間で無線通信により情報を送受信することで、ユーザはゲームを対戦プレイすることができる。
【００２３】
図４は、ゲーム機の通信状態の遷移図を示す。本実施例のアドホックネットワークでは、どのIBSSにも参加していない未接続状態、ロビーIBSSに参加している状態、ゲーム専用IBSSに参加している状態の３つの通信状態が設定される。未接続状態は、ゲーム機２の電源オン直後の状態や、ユーザが１人プレイを行っている状態に対応する。未接続状態において、ゲーム機２は、所定のパターンを含んだネットワーク情報を取得してリスト化し、ユーザがリストから１つの無線ネットワークを選択することで、ロビーIBSSに移行する。
【００２４】
ロビーIBSSでは、各ゲーム機２は、チャットをしたり、対戦を行ったりすることができる。本実施例において、ゲームタイトルＡについてのゲーム識別パターンは、"TITLE_A"と設定されており、例えば初級者用のロビーSSID、中級者用のロビーSSID、上級者用のロビーSSIDが、この"TITLE_A"にそれぞれ異なる文字列を付加することで設定されている。そのため、未接続状態でゲームタイトルＡについてのロビーIBSSを探索する場合は、SSIDに"TITLE_A"を含んだものを探すことで、他のゲームタイトルのIBSSやゲームアプリケーション以外のIBSSを探索結果から除外することができる。
【００２５】
例として示したように、ゲームの腕前に応じて、ロビーIBSSが形成されてもよい。この場合、初級者用のロビーIBSS、中級者用のロビーIBSS、上級者用のロビーIBSSなどを生成することができる。ユーザは、自分の技量に合わせて、どのロビーIBSSに参加するかを決めることができ、同じ技量のユーザとゲームを楽しむことができる。このとき、初級者用のロビーIBSSのSSIDを"TITLE_A_CLASS_1"、中級者用のロビーIBSSのSSIDを"TITLE_A_CLASS_2"、上級者用のロビーIBSSのSSIDを"TITLE_A_CLASS_3"と設定してもよい。このように、ロビーIBSSのSSIDに、少なくともゲーム識別パターン、ここでは"TITLE_A"を含ませることによって、同一タイトルのロビーIBSSのSSIDを関連付けることが好ましい。この関連付けにより、同一タイトルのロビーIBSSの探索処理を容易に実行することが可能となる。この例のように、ロビーIBSSのSSIDが、ゲーム識別パターンの後方に、それぞれ異なる文字列パターンを付与することで構成されてもよい。
【００２６】
このように、同じゲームタイトルの複数のロビーIBSSのSSIDに共通のパターンを含ませることで、これらのIBSSを関連付けすることができる。この例では、"TITLE_A"（ないしは"TITLE_A_"）が共通パターンに相当する。共通パターンを設定することで、ロビーIBSSの探索処理を効率的に実現することが可能となる。
【００２７】
また、ゲームの進行状況、例えばゲームのステージに応じて、ロビーIBSSが形成されてもよい。この場合、ステージ１のロビーIBSS、ステージ２のロビーIBSS、ステージ３のロビーIBSSなどを生成することができる。この場合も同様に、複数のロビーIBSSのSSIDには、共通のパターンを含ませる。ステージ１用のロビーIBSSのSSIDを"TITLE_A_STAGE_1"、ステージ２用のロビーIBSSのSSIDを"TITLE_A_STAGE_2"、ステージ３用のロビーIBSSのSSIDを"TITLE_A_STAGE_3"と設定してもよい。この例でも、"TITLE_A"が共通パターンに相当する。
【００２８】
ロビーIBSSに参加しているゲーム機２は、対戦グループ専用のゲーム専用IBSSへ移行できる。ロビーIBSSにおいてもゲームの対戦を行うことができるが、本実施例のゲームシステムでは、対戦を行うグループを確定した後、第三者のゲーム参加を受け付けたくないような場合に、グループで新たなゲーム専用IBSSを構築することができる。ゲーム専用IBSSへ移行するには、そのグループ内で用いられているゲーム専用IBSSパラメータを共有する。例えば、グループを構成しようとする１人のメンバがゲーム専用IBSSパラメータを生成し、そのパラメータを他のメンバに通知することで、パラメータを互いに共有することができる。パラメータは例えばSSIDや使用周波数帯などである。ゲーム機２は、ゲーム専用IBSSパラメータをライブラリにセットすることによりゲーム専用IBSSへ移行する。ゲーム専用IBSSは、ゲームを同時プレイする複数台のゲーム機により構成されるグループであり、グループごとに設定される個別の無線ネットワークに相当する。ゲーム専用IBSSは、同一環境内に複数存在してよい。
【００２９】
ロビーIBSSおよびゲーム専用IBSSからは、任意のタイミングで未接続状態に戻ることができる。ゲーム専用IBSSからロビーIBSSへ復帰する場合は、一旦未接続状態に移行した後、ロビーIBSSに参加する。
【００３０】
実施例のゲームシステムにおいて、省電力制御または信号の衝突回避制御などを実行する場合、ロビーIBSSとゲーム専用IBSSとで、制御モードを異ならせてもよい。ロビーIBSSとゲーム専用IBSSとでは、要求されるレイテンシなどが異なる場合があるため、設定されるIBSSごとに制御モードを変化させることで、効率よい通信を実現することが可能となる。
【００３１】
図５は、ゲーム機２の機能ブロック図である。ゲーム機２は、無線通信端末装置として構成され、ゲーム処理に関する動作を主として行う処理装置１０と、通信に関する動作を行う無線インタフェース装置４０とを備える。処理装置１０および無線インタフェース装置４０は、別個のハードウェアとして設けられ、処理装置１０および無線インタフェース装置４０の間は、バスにより電気的に接続される。なお、処理装置１０はホストＰＣとして構成され、無線インタフェース装置４０の動作を管理する機能ももつ。
【００３２】
本実施例におけるゲーム機２の通信機能は、処理装置１０および無線インタフェース装置４０において、ＣＰＵ、メモリ、メモリにロードされたプログラムなどによって実現され、ここではそれらの連携によって実現される構成を描いている。プログラムは、ゲーム機２に内蔵されていてもよく、また記録媒体に格納された形態で外部から供給されるものであってもよい。したがってこれらの機能ブロックがハードウエアのみ、ソフトウエアのみ、またはそれらの組合せによっていろいろな形で実現できることは、当業者に理解されるところである。図示の例では、処理装置１０のＣＰＵ１２が、リスト表示部１３、スキャン指示部１４、決定部１６、識別子変更部１８およびアプリケーション処理部２０としての機能をもつ。また、無線インタフェース装置４０のＣＰＵ４２は、BSSの探索処理を実行する機能をもつ。
【００３３】
入出力部２６は、ユーザからの入力を受け付け、またユーザへの出力を行う。具体的に、入力部として、ユーザからの操作指示を受け付ける方向キーなどの操作ボタン群が設けられ、また出力部として、モニタやスピーカが設けられる。記憶装置２４は、メモリスティックなどの外部記憶装置として構成され、ゲームデータのセーブなどに利用される。メディアドライブ２８には、ディスク状の記録媒体３０が挿入され、記録媒体３０に記録されているプログラムやデータなどが読み出される。読み出されたプログラムおよびデータはメモリ部２２に記憶され、ＣＰＵ１２における処理に利用される。なお、メモリ部２２は、無線インタフェース装置４０側のメモリ部４４よりも大きい容量で構成される。図５では、メモリ部が処理装置１０と無線インタフェース装置４０の双方に設けられている場合を示しているが、メモリ部は、１つにまとめられてもよい。なお、メモリ部が１つにまとめられる場合は、処理装置１０と無線インタフェース装置４０とが一体に構成されてもよい。
【００３４】
ゲーム機２の電源がオンされ、ユーザが対戦モードを選択すると、スキャン指示部１４が、ゲームプログラムに記述されているロビーIDを取得し、このロビーIDからゲーム識別パターンを生成する。ゲーム識別パターンは、ロビーIDから一意に定められる。既述のように、ゲーム識別パターンがゲームタイトルに応じて一意に設定されることで、同じゲームタイトルであれば、各ゲーム機２において、同一のゲーム識別パターンが決定されることになる。ゲームタイトルＡのゲーム識別パターンは、ゲームタイトルＡのロビーIDに基づいて"TITLE_A"と決定され、ゲームタイトルＢのゲーム識別パターンは、同様にゲームタイトルＢのロビーIDに基づいて"TITLE_B"と決定される。ここでは、記録媒体３０にゲームタイトルＡのゲームプログラムが記録されており、したがってスキャン指示部１４がゲーム識別パターン"TITLE_A"を生成する。なお、スキャン指示部１４は、ユーザにより入力部を介して設定されたパターンをゲーム識別パターンと設定してもよい。
【００３５】
スキャン指示部１４は、周囲のロビーIBSSを探索するようにＣＰＵ４２に指示する。スキャン指示部１４のこれらの動作は、ユーザがゲームモードとして対戦モードを選択したことに基づいて行われる。このとき、周囲には、ゲームタイトルＡのIBSSだけでなく、別のゲームタイトルのIBSSや、また、ゲームとは異なるアプリケーションのIBSSなども存在している可能性がある。多数の無線ネットワークが構築されるような環境下では、従来のように、SSID"ANY"を指定した探索処理により無線IF部４６において受信した全てのネットワーク情報からリストを作成しようとすると、リストが大きくなりすぎ、所期のネットワーク情報をメモリ部４４に記憶できないという不具合が生じることもある。
【００３６】
本実施例では、スキャン指示部１４が、無線インタフェース装置４０のＣＰＵ４２に、所定のパターン（ゲーム識別パターン）を含んだSSIDを探索するように指示する。このとき、スキャン指示部１４は、探索するIBSSのSSIDを、"TITLE_A*"と指定する。"*"は、０文字以上のすべての文字にマッチするパターンである。ゲームタイトルＡのロビーSSIDには、先頭に"TITLE_A"が含まれることになるため、探索するIBSSのSSIDを、"TITLE_A*"と指定することで、ゲームタイトルＡのロビーIBSSをソフトウェア的に容易に検出することが可能となる。
【００３７】
図２を参照して、ゲーム機２が探索処理を行う場合を考える。IBSS1のSSIDが"TITLE_A_CLASS_1"、IBSS2のSSIDが"TITLE_A_CLASS_2"、IBSS3のSSIDが"TITLE_B_STAGE_2"であるとする。探索の結果、無線IF部４６においてIBSS1、IBSS2、IBSS3からSSIDを含むネットワーク情報を受信すると、ＣＰＵ４２は、スキャン指示部１４により指定された"TITLE_A*"を用いて、パターンマッチング処理を行う。パターンマッチング処理は、SSID中に、所定のパターン、すなわちSSIDの前方に"TITLE_A"を含んだものがあるか否かの判断に基づいて行われる。その結果、"TITLE_A_CLASS_1"と"TITLE_A_CLASS_2"とが前方に"TITLE_A"を含んでおり、ＣＰＵ４２は、SSIDが"TITLE_A_CLASS_1"と"TITLE_A_CLASS_2"である無線ネットワークに関するネットワーク情報をメモリ部４４にリストとして記憶させる。このように、ＣＰＵ４２は、少なくとも一部分に所定のパターンを含んだSSIDを選択する選択部として機能する。このとき、ＣＰＵ４２は、"TITLE_B_STAGE_2"のネットワーク情報を破棄する。このように、リスト化するSSIDにフィルタ処理を施すことで、リストを小さく形成し、メモリ部４４の容量を効率的に利用することができる。
【００３８】
なお、上記の例では、ロビーSSIDが、ゲーム識別パターンの後方に文字パターンを付加することで構成されているため、いわゆる「前方一致」による探索処理を行っている。ロビーSSIDが、ゲーム識別パターンの前方に文字パターンを付加することで構成されている場合には、「後方一致」でロビーSSIDを探索処理すればよい。また、ロビーSSIDが、ゲーム識別パターンの前後に文字パターンを付加することで構成されている場合には、ゲーム識別パターンをいずれかの箇所に含んでいるか否かの判断でロビーSSIDを探索処理すればよい。このように、本実施例は、スキャン処理におけるパターンマッチングの箇所について、特に限定するものではない。
【００３９】
図６は、メモリ部４４に記憶するBSSリストを示す。BSSリストには、BSSID、SSIDなど、無線ネットワークに関するネットワーク情報が記録される。SSIDは、無線ネットワークを識別するネットワーク識別子としての機能をもつが、既述したように、同一のSSIDを複数の無線ネットワークに割当可能である。それに対して、BSSIDは、無線ネットワークを一意に識別するネットワーク識別子である。したがって、所期のIBSSに参加するためには、BSSIDをもとに無線ネットワークを特定することが好ましい。BSSリストは、処理装置側のメモリ部２２に読み出され、記憶される。
【００４０】
リスト表示部１３は、メモリ部２２に記憶されたネットワーク情報から導き出される情報を、処理装置１０のモニタにリストとして表示させる。例えば、SSID中に"CLASS_1"を含むものについては「初級者用対戦モード」、"CLASS_2"を含むものについては「中級者用対戦モード」との表示がなされてもよい。また、その他の情報から表示内容が定められてもよく、例えば、プレイヤ同士の間で予め決めていたグループ名などが表示されてもよい。プレイヤは、入力部を用いて参加するグループを指定する。この指定入力されたグループをもとに、決定部１６は、BSSリストに含まれる無線ネットワークの中から、ゲーム機２が参加する無線ネットワークのBSSIDを決定する。BSSIDは無線インタフェース装置４０のＣＰＵ４２に通知されて、以後、このグループ内の通信は、BSSIDを用いて行われることになる。具体的には、アプリケーション処理部２０がゲームプログラムを実行し、プレイヤからの操作入力は、無線インタフェース装置４０を介して、BSSIDを含めたパケットでグループ内の他のゲーム機に伝達され、また、グループ内の他のゲーム機の操作入力が、無線インタフェース装置４０を介して受信されて、アプリケーション処理部２０により処理される。
【００４１】
以上のように、接続対象となる候補のIBSSのみをリスト化することで、無線インタフェース装置４０のメモリ消費を減らすことができ、メモリ部４４を小さく構成することが可能となる。また、例えば、パターンマッチングによりIBSSが検出されるまで、処理装置１０を省電力モードにセットすることで、IBSSが発見されない間の処理装置１０における電力消費を抑えることも可能である。
【００４２】
図７は、探索処理のフローを示す。探索の方法として、ゲーム機２が探索用パケットを送信して、それに対する返答パケットを受信してもよく、また一定時間の間、他のゲーム機から送信されるビーコンを受信してもよい（Ｓ３０）。返答パケットやビーコンにはBSSIDやSSIDなどのネットワーク情報が含まれている。
【００４３】
無線インタフェース装置４０において、ＣＰＵ４２が、ネットワーク情報に含まれるSSIDと、スキャン指示部１４により指定されたSSIDパターンとが一致しているか否かを判断する（Ｓ３２）。一致していない場合には（Ｓ３２のＮ）、別のネットワーク情報について、SSIDパターンとの一致判断を行う。
【００４４】
一方、一致する場合には（Ｓ３２のＹ）、そのSSIDを含んだネットワーク情報をBSSリストに追加する（Ｓ３４）。このように、一部分に所定のパターンを含んだSSIDのみをBSSリストに追加することで、接続候補となり得ないIBSSのネットワーク情報をBSSリストに登録せずにすみ、BSSリストを小さく形成することが可能となる。まだ、未調査のSSIDが存在する場合には（Ｓ３６のＮ）、Ｓ３０からＳ３４までの処理を繰り返し、全てのSSIDを調査すると、探索処理を終了する（Ｓ３６のＹ）。
【００４５】
次に、識別子を変更する方法について説明する。上記した例では、ロビーSSIDは、ゲーム識別パターンの末尾に文字列を追加することで構成されている。既に、参加したいIBSSが形成されている場合は、ゲーム機２側で新たにSSIDを作成する必要はないが、まだIBSSが構成されていない場合には、いずれかのゲーム機２がSSIDを作成する必要がある。このような場合に、識別子変更部１８が、ゲーム識別パターンに文字列を追加することで、新たなIBSSを生成することができる。具体的には、ゲームタイトルＡの上級者の対戦モード用のロビーSSIDが作成されていない場合、識別子変更部１８が、ゲーム識別パターン（TITLE_A）に文字列（_CLASS_3）を追加することで、新たなSSID（TITLE_A_CLASS_3）を生成することが可能となる。
【００４６】
識別子変更部１８は、さらに新たなSSIDを生成してもよい。例えば、初級者の対戦モード用のロビーIBSSにおいて、特定のプレイヤとのみゲームをプレイしたい場合には、識別子変更部１８が、TITLE_A_CLASS_1に文字列（例えば、_friends）を追加することで、新たなSSID（TITLE_A_CLASS_1_friends）を生成することが可能である。所定人数でプレイするゲーム、例えば麻雀ゲームなどでは、４人集まった時点で、参加者を募る必要はない。そこで、SSIDを新たに設定して、新たなIBSSを構築することで、４人のみのグループを作ることができる。このとき、第三者の途中参加を受け付けないようにすることで、４人で閉じた環境で、麻雀ゲームを楽しむことが可能となる。
【００４７】
途中参加を受け付けない方法として、ロビーSSID（TITLE_A_CLASS_1）に含まれる共通部分、すなわちゲーム識別パターン"TITLE_A"を除いた態様の新たなSSIDを生成してもよい。TITLE_Aは、ゲームアプリケーションＡのロビーIBSSを探索するためのキーワードであるため、識別子変更部１８が、このキーワードを外したSSIDを新たに作成することで、他のゲーム機からの探索処理にかからないこととなり、他のゲーム機におけるリスト量の削減に寄与することができる。
【００４８】
以上、本発明を実施例をもとに説明した。この実施例は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。上記した実施例では、アドホックネットワークにおいてIBSSが生成される場合について説明したが、本発明は、アドホックネットワークに限らず、インフラストラクチャネットワークにおいても適用することが可能である。インフラストラクチャネットワークにおいても、一部分に所定のパターンを含んだSSIDを検出してリスト化することで、リスト量を削減することができ、メモリ部４４の効率的な利用を実現できるとともに、無線ネットワークへの参加を効率的に行うことが可能となる。
【００４９】
また本実施例では、未接続状態からロビーIBSSへの移行時に探索処理を行うこととしているが、ロビーIBSSにおいて探索処理を行うことも可能である。例えば、初級者用のロビーIBSSに移行した後、中級者用のロビーIBSSへ移行するために、初級者用のロビーIBSSにいながら、探索処理を実行してもよい。これにより、未接続状態だけでなく、ロビーIBSSにおいても同一のアプリケーションを実行するIBSSをリスト化することができ、ロビーIBSS間の移行を短時間で実現することが可能となる。
【図面の簡単な説明】
【００５０】
【図１】IEEE802.11を用いたアドホックネットワークにおけるIBSSを示す図である。
【図２】１つの環境内に複数のIBSSが構成されている状態を示す図である。
【図３】プレイヤがゲームアプリケーションを開始するまでのフローチャートを示す図である。
【図４】ゲーム機の通信状態を示す図である。
【図５】ゲーム機の機能ブロック図である。
【図６】メモリ部に記憶するBSSリストを示す図である。
【図７】探索処理のフローチャート示す図である。
【符号の説明】
【００５１】
２・・・ゲーム機、１０・・・処理装置、１２・・・ＣＰＵ、１３・・・リスト表示部、１４・・・スキャン指示部、１６・・・決定部、１８・・・識別子変更部、２０・・・アプリケーション処理部、２２・・・メモリ部、２４・・・記憶装置、２６・・・入出力部、２８・・・メディアドライブ、３０・・・記録媒体、４０・・・無線インタフェース装置、４２・・・ＣＰＵ、４４・・・メモリ部、４６・・・無線IF部。
【図１】
2008079314.tif 000003
【図２】
2008079314.tif 000004
【図３】
2008079314.tif 000005
【図４】
2008079314.tif 000006
【図５】
2008079314.tif 000007
【図６】
2008079314.tif 000008
【図７】
2008079314.tif 000009