(57)【要約】【課題】無線ホスト、プログラム、および無線通信方法を提供すること。【解決手段】無線デバイスと通信する通信部１１０と、前記無線デバイスが前記無線ホストに対して所定の制御情報を送信するための制御通信時間帯を第１の頻度に設定する設定部と、前記設定部により設定された前記制御通信時間帯に前記通信部が前記無線デバイスから前記制御情報を受信したこと、または前記通信部が前記無線デバイスから前記制御情報を受信すると想定される制御通信想定状態を検出する検出部２３２、２６２とを備え、前記制御通信時間帯に前記通信部が前記無線デバイスから前記制御情報を受信したこと、または前記制御通信想定状態が前記検出部により検出されると、前記設定部は、前記第１の頻度より頻度が高い第２の頻度に前記制御通信時間帯を設定する。【選択図】図１２
2009055247.tif 000002
【特許請求の範囲】
【請求項１】
無線デバイスを配下に有する無線ホストであって：
前記無線デバイスと通信する通信部と：
前記無線デバイスが前記無線ホストに対して所定の制御情報を送信するための制御通信時間帯を第１の頻度および時間帯幅に設定する設定部と；
前記設定部により設定された前記制御通信時間帯に前記通信部が前記無線デバイスから前記制御情報を受信したこと、または前記通信部が前記無線デバイスから前記制御情報を受信すると想定される制御通信想定状態を検出する検出部と；
を備え、
前記制御通信時間帯に前記通信部が前記無線デバイスから前記制御情報を受信したこと、または前記制御通信想定状態が前記検出部により検出されると、前記設定部は、前記第１の頻度および時間帯幅をより頻度が高いか、もしくは時間帯幅が大きい第２の頻度および時間帯幅に前記制御通信時間帯を設定することを特徴とする、無線ホスト。
【請求項２】
前記検出部は、前記通信部が前記無線デバイスと設定速度以上の速度でデータを送受信することを前記制御通信想定状態として検出することを特徴とする、請求項１に記載の無線ホスト。
【請求項３】
前記検出部は、前記通信部から前記無線デバイスに対し、所定の要求が送信されたことを前記制御通信想定状態として検出することを特徴とする、請求項１に記載の無線ホスト。
【請求項４】
前記制御通信時間帯に前記通信部が前記無線デバイスから前記制御情報を受信しなくなったこと、または前記制御通信想定状態でなくなったことが前記検出部により検出されると、前記設定部は、設定している前記制御通信時間帯の頻度を下げることを特徴とする、請求項１に記載の無線ホスト。
【請求項５】
前記制御通信時間帯に前記通信部により受信される前記制御情報が新規であるか否かを判断する判断部をさらに備え、
前記設定部は、前記制御通信時間帯に前記通信部が前記判断部により新規であると判断された制御情報を前記無線デバイスから受信した場合に、前記第１の頻度より頻度が高い第２の頻度に前記制御通信時間帯を設定することを特徴とする、請求項１に記載の無線ホスト。
【請求項６】
前記設定部は、前記無線ホストの配下の無線デバイスの台数にかかわらず、前記制御通信時間帯の頻度を設定することを特徴とする、請求項１に記載の無線ホスト。
【請求項７】
コンピュータを、
無線デバイスを配下に有する無線ホストであって、
前記無線デバイスと通信する通信部と：
前記無線デバイスが前記無線ホストに対して所定の制御情報を送信するための制御通信時間帯を第１の頻度および時間帯幅に設定する設定部と；
前記設定部により設定された前記制御通信時間帯に前記通信部が前記無線デバイスから前記制御情報を受信したこと、または前記通信部が前記無線デバイスから前記制御情報を受信すると想定される制御通信想定状態を検出する検出部と；
を備え、
前記制御通信時間帯に前記通信部が前記無線デバイスから前記制御情報を受信したこと、または前記制御通信想定状態が前記検出部により検出されると、前記設定部は、前記第１の頻度および時間帯幅をより頻度が高いか、もしくは時間帯幅が長い第２の頻度および時間帯幅に前記制御通信時間帯を設定する無線ホストとして機能させるための、プログラム。
【請求項８】
無線デバイスと通信する無線ホストにおいて実行される無線通信方法であって：
前記無線デバイスが前記無線ホストに対して所定の制御情報を送信するための制御通信時間帯を第１の頻度および時間帯幅に設定するステップと；
前記制御通信時間帯に前記無線デバイスから前記制御情報を受信したこと、または前記無線デバイスから前記制御情報を受信すると想定される制御通信想定状態を検出するステップと；
前記第１の頻度および時間帯幅より頻度が高いか、もしくは時間帯幅が長い第２の頻度および時間帯幅に前記制御通信時間帯を設定するステップと；
を含むことを特徴とする、無線通信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、無線ホスト、プログラム、および無線通信方法に関する。
【背景技術】
【０００２】
近日、有線の通信規格であるＵＳＢ規格を無線に拡張したＣＷＵＳＢ（Ｃｅｒｔｉｆｉｅｄ  Ｗｉｒｅｌｅｓｓ  ＵＳＢ、以下、ワイヤレスＵＳＢ）が提案されている。ワイヤレスＵＳＢは、ＵＳＢ規格の通信トボロジーを踏襲し、１の無線ホストに複数の無線デバイスが接続される。そして、基本的には、無線ホストにより設定されたタイミングにおいて無線ホストおよび無線デバイス間でデータ通信が行われる。
【０００３】
一方、例外的に、無線デバイスから無線ホストに対して非同期通知が必要となる場合がある。非同期通知としては、
（１）無線ホストへの接続要求通知（ＤＮ  Ｃｏｎｎｅｃｔ）
（２）無線ホストへの接続終了要求通知（ＤＮ  Ｄｉｓｃｏｎｎｅｃｔ）
（３）パワーセーフモードへの移行通知（ＤＮ  Ｓｌｅｅｐ）
（４）エンドポイントバッファのバッファレディ通知（ＤＮ  ＥＰＲｄｙ）
（５）アクセス可能帯域の変化通知（ＤＮ  ＭＡＳＡｖａｉｌｌＣｈａｎｇｅｄ）
などがあげられる。
【０００４】
上述のような非同期通知は、事前の無線ホストがスケジューリングすることができないため、非同期通知を無線デバイスが送信する専用のアクセススロットとしてＤＮＴＳ（Ｄｅｖｉｃｅ  Ｎｏｔｉｆｉｃａｔｉｏｎ  Ｔｉｍｉｎｇ  Ｓｌｏｔ）が用意されている。このＤＮＴＳは頻度および1回あたりのスロット幅が可変と定義されており、無線ホストが状況に応じて頻度や時間帯幅を増減させることができる（以下、簡便のために制御通信時間帯の頻度と各回あたりの時間帯幅のことをひとまとめに「頻度」と記述する。すなわち、「頻度が高い」とは、制御通信時間帯の設定回数が多いか、または同じ設定回数でも
1回あたりの時間帯幅が大きいことを意味する）。かかるＤＮＴＳは、各無線デバイスに共通に用意されている。したがって、無線ホストは、ＤＮＴＳを多く設定すれば無線デバイス間での衝突を抑制できるが、非同期通知が利用されなければ通信のオーバーヘッドが増大してしまう。
【０００５】
このような事情により、無線ホストが動的に非同期スロットを設定する方法が提案されている。例えば、特許文献１には、無線ホストが、所定期間にわたって非同期通知がされた回数を測定し、非同期通知がされた回数に応じて非同期スロットの頻度を可変とする制御方法が記載されている。
【０００６】
【特許文献１】特開２００１−２４６４７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかし、非同期通知の種類によっては、数単位のＤＮＴＳにおいて送信されるに過ぎない。したがって、非同期通知の所定期間における回数を測定する従来の制御方法では、実際に非同期通知が増えてからＤＮＴＳの頻度を増やすまで時間を要するという問題があった。例えば、ＤＮＴＳの頻度を増やしたときには既に非同期通知が減少し、ＤＮＴＳの需要が無くなっている場合も想定された。
【０００８】
そこで、本発明は、上記問題に鑑みてなされたものであり、本発明の目的とするところは、非同期通知などの制御情報の送信のための制御通信時間帯の頻度を、制御情報の送信の需要に応じて迅速に変更することが可能な、新規かつ改良された無線ホスト、プログラム、および無線通信方法を提供することにある。
【課題を解決するための手段】
【０００９】
上記課題を解決するために、本発明のある観点によれば、無線デバイスを配下に有する無線ホストであって、無線デバイスと通信する通信部と、前記無線デバイスが前記無線ホストに対して所定の制御情報を送信するための制御通信時間帯を第１の頻度に設定する設定部と、前記設定部により設定された前記制御通信時間帯に前記通信部が前記無線デバイスから前記制御情報を受信したこと、または前記通信部が前記無線デバイスから前記制御情報を受信すると想定される制御通信想定状態を検出する検出部と、を備え、前記制御通信時間帯に前記通信部が前記無線デバイスから前記制御情報を受信したこと、または前記制御通信想定状態が前記検出部により検出されると、前記設定部は、前記第１の頻度より頻度が高い第２の頻度に前記制御通信時間帯を設定する無線ホストが提供される。
【００１０】
かかる構成においては、無線デバイスが無線ホストに対して所定の制御情報を送信するための制御通信時間帯を設定部が第１の頻度に設定する。また、通信部が無線デバイスから制御情報を受信したこと、または通信部が無線デバイスから制御情報を受信すると想定される制御通信想定状態を検出部が検出する。ここで、無線デバイスは、制御情報を一の制御通信時間帯でなく、複数の制御通信時間帯において連続的、あるいは間欠的に送信する場合が多い。したがって、ある無線デバイスが制御情報を送信し始めると、該無線デバイスがその後の制御通信時間帯を必要とすることが想定される。そこで、上記のように、設定部は、検出部により通信部が無線デバイスから制御情報を受信したこと、または制御通信想定状態が検出されると、第１の頻度より頻度が高い第２の頻度に制御通信時間帯を再設定する。その結果、該無線デバイスと他の無線デバイスとが制御情報の送信に利用しようとする制御通信時間帯の衝突を抑制することができる。また、設定部は、検出部により通信部が無線デバイスから制御情報を受信したこと、または制御通信想定状態が検出されない間は、比較的頻度が低い第１の頻度に制御通信時間帯を設定しておくことにより、制御通信時間帯を過剰に設定することにより生じるスループットの低下を防止することができる。
【００１１】
前記検出部は、前記通信部が前記無線デバイスと設定速度以上の速度でデータを送受信することを前記制御通信想定状態として検出してもよい。例えば、ワイヤレスUSBで使用している無線層では、PHY Rateとして53Mbps〜480Mbpsのデータレートが設定できるようになっている。ここで、単位時間あたりのデータ送受信量が多いと、無線デバイスのバッファがオーバーフロー、またはアンダーフローを起こしやすい。このような状態になると、一連の伝送プロトコルを一時的に中止する、いわゆるフローコントロール状態になる。その後、無線デバイスのバッファのオーバーフロー、またはアンダーフローが解消されると、無線デバイスは無線ホストに制御情報を送信し始める。そこで、通信部が無線デバイスと設定速度以上の速度でデータを送受信したことを検出部が制御通信想定状態として検出することにより、設定部に制御通信時間帯を第２の頻度に設定させ、複数のデバイス間での制御情報の送信の衝突を抑制することができる。
【００１２】
前記検出部は、前記通信部から前記無線デバイスに対し、所定の要求が送信されたことを前記制御通信想定状態として検出してもよい。ここで、無線ホストから無線デバイスに送信すると、無線デバイス内において処理が必要となり、すぐに応答できないことから無線デバイスがやはりフローコントロール状態となる要求がある。この場合も、無線デバイスは、該要求により生じたフローコントロール状態が解消されると、無線ホストに制御情報を送信し始める。そこで、該要求を通信部が無線デバイスに送信したことを検出部が制御通信想定状態として検出することにより、設定部に制御通信時間帯を第２の頻度に設定させ、複数のデバイス間での制御情報の送信の衝突を抑制することができる。
【００１３】
前記制御通信時間帯に前記通信部が前記無線デバイスから前記制御情報を受信しなくなったこと、または前記制御通信想定状態でなくなったことが前記検出部により検出されると、前記設定部は、設定している前記制御通信時間帯の頻度を下げてもよい。かかる構成においては、設定部が、制御情報の送信需要の減少と併せて制御通信時間帯の頻度を下げる。その結果、無線ホスト、無線デバイス間の通信のスループットの向上が期待される。
【００１４】
前記制御通信時間帯に前記通信部により受信される前記制御情報が新規であるか否かを判断する判断部をさらに備え、前記設定部は、前記制御通信時間帯に前記通信部が前記判断部により新規であると判断された制御情報を前記無線デバイスから受信した場合に、前記第１の頻度より頻度が高い第２の頻度に前記制御通信時間帯を設定してもよい。かかる構成においては、通信部が同一の無線デバイスから一連の制御情報を受信しているにも拘らず、設定部が制御通信時間帯の頻度を不要に高くしてしまうことを防止できる。
【００１５】
前記設定部は、前記無線ホストの配下の無線デバイスの台数の多少にかかわらず、前記制御通信時間帯の頻度を第１の頻度に設定してもよい。ここで、無線デバイスの台数が多いほど、複数のデバイスから同時期に制御情報が送信される可能性が高い。一方、無線デバイスが１台であれば、無線デバイスが制御情報を送信する制御通信時間帯が衝突する事態は考えづらい。そこで、設定部は、無線ホストの配下の無線デバイスの台数に応じて制御通信時間帯の頻度を設定する、という考え方もできる。しかし、本発明による考え方によれば、配下の無線デバイスの台数ではなく、その時点でいくつの独立した制御情報が出されているかに着目する。長い時間で平均すれば、制御情報は台数に比例して増加するが、ある時刻に着目すると必ずしも台数に比例しない。このように本発明による方法では実際の通信状況に即して、制御通信時間帯の衝突率を抑制しつつ、スループットの向上を図ることができる。
【００１６】
また、上記課題を解決するために、本発明の別の観点によれば、コンピュータを、無線デバイスを配下に有する無線ホストであって、前記無線デバイスと通信する通信部と、前記無線デバイスが前記無線ホストに対して所定の制御情報を送信するための制御通信時間帯を第１の頻度に設定する設定部と、前記設定部により設定された前記制御通信時間帯に前記通信部が前記無線デバイスから前記制御情報を受信したこと、または前記通信部が前記無線デバイスから前記制御情報を受信すると想定される制御通信想定状態を検出する検出部とを備え、前記制御通信時間帯に前記通信部が前記無線デバイスから前記制御情報を受信したこと、または前記制御通信想定状態が前記検出部により検出されると、前記設定部は、前記第１の頻度より頻度が高い第２の頻度に前記制御通信時間帯を設定する無線ホストとして機能させるためのプログラムが提供される。
【００１７】
かかるプログラムは、例えばＣＰＵ、ＲＯＭまたはＲＡＭなどを含むコンピュータのハードウェア資源に、上記のような通信部、設定部および検出部の機能を実行させることができる。すなわち、当該プログラムを用いるコンピュータを、上述の無線ホストとして機能させることが可能である。
【００１８】
また、上記課題を解決するために、本発明の別の観点によれば、無線デバイスと通信する無線ホストにおいて実行される無線通信方法であって、前記無線デバイスが前記無線ホストに対して所定の制御情報を送信するための制御通信時間帯を第１の頻度に設定するステップと、前記制御通信時間帯に前記無線デバイスから前記制御情報を受信したこと、または前記無線デバイスから前記制御情報を受信すると想定される制御通信想定状態を検出するステップと、前記第１の頻度より頻度が高い第２の頻度に前記制御通信時間帯を設定するステップと、を含む無線通信方法が提供される。
【発明の効果】
【００１９】
以上説明したように本発明にかかる無線ホスト、プログラム、および無線通信方法によれば、非同期通知などの制御情報の送信のための制御通信時間帯の頻度を、制御情報の送信の需要に応じて迅速に変更することができる。
【発明を実施するための最良の形態】
【００２０】
以下に添付図面を参照しながら、本発明の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【００２１】
まず、図１および図２を参照し、本実施形態にかかる無線通信システム１の概要を説明する。
【００２２】
図１は、本実施形態にかかる無線通信システム１の構成例を示した説明図である。図１に示したように、無線通信システム１は、無線ホスト１０と、無線デバイス２０Ａ、２０Ｂおよび２０Ｃを含む。
【００２３】
無線ホスト１０は、配下の無線デバイス２０Ａ、２０Ｂおよび２０Ｃと、無線ホスト１０との通信を管理する。例えば、無線ホスト１０は、無線デバイス２０Ａ、２０Ｂおよび２０Ｃにアドレスを割当てるアドレス割当て機能、無線デバイス２０Ａ、２０Ｂおよび２０Ｃと通信する時間帯を設定する通信時間帯設定機能などを有する。
【００２４】
無線デバイス２０Ａ、２０Ｂおよび２０Ｃは、無線ホスト１０により割当てられたアドレスを利用し、無線ホスト１０が設定した時間帯に各種データを送受信する。各種データとしては、例えば、音楽、講演およびラジオ番組などの音楽データや、映画、テレビジョン番組、ビデオプログラム、写真、文書、絵画および図表などの映像データや、ゲームおよびソフトフェアなどの任意のデータがあげられる。
【００２５】
以下では、無線ホスト１０がワイヤレスＵＳＢシステムにおけるＵＳＢホストに該当し、無線デバイス２０Ａ、２０Ｂおよび２０ＣがワイヤレスＵＳＢシステムにおけるＵＳＢデバイスに該当するものとして説明する。しかし、無線ホスト１０および無線デバイス２０Ａ、２０Ｂおよび２０Ｃが主従関係を有すれば、無線ホスト１０および無線デバイス２０Ａ、２０Ｂおよび２０ＣはワイヤレスＵＳＢに限定されることはない。また、特に区別する必要がない場合は、無線デバイス２０Ａ、２０Ｂまたは２０Ｃを、単に無線デバイス２０と称する。
【００２６】
また、図１においては、無線ホスト１０としてＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）を、無線デバイス２０Ａとして家庭用映像処理装置を、無線デバイス２０Ｂとして携帯型ゲーム機器を、無線デバイス２０Ｃとして撮像装置を記載している。しかし、無線ホスト１０および無線デバイス２０は図１に示した例に限定されず、例えば、ＰＣ、家庭用映像処理装置（ＤＶＤレコーダ、ビデオデッキなど）、携帯電話、ＰＨＳ（Ｐｅｒｓｏｎａｌ  Ｈａｎｄｙｐｈｏｎｅ  Ｓｙｓｔｅｍ）、携帯用音楽再生装置、携帯用映像処理装置、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔｓ）、家庭用ゲーム機器、携帯用ゲーム機器、家電機器などの情報処理装置であってもよい。
【００２７】
また、無線デバイス２０は、情報処理装置および無線通信機能を備えたハブであってもよい。この場合、無線ホスト１０およびハブ間でデータが無線通信され、ハブおよび情報処理装置間ではデータが有線通信される。さらに、無線ホスト１０は、無線通信機能を備えたホストワイヤーアダプターが接続されたＰＣなどの情報処理装置であってもよい。同様に、無線デバイス２０は、無線通信機能を備えたデバイスワイヤーアダプタが接続されたデジタルカメラなどの情報処理装置であってもよい。
【００２８】
上記説明したように、無線デバイス２０は、基本的に、無線ホスト１０により設定された時間帯を利用して無線通信を行う。しかし、例外的に、無線デバイスから無線ホスト１０に対して制御情報として非同期通知を送信する場合がある。非同期通知としては、
（１）無線ホストへの接続要求通知（ＤＮ  Ｃｏｎｎｅｃｔ）
（２）無線ホストへの接続終了要求通知（ＤＮ  Ｄｉｓｃｏｎｎｅｃｔ）
（３）パワーセーフモードへの移行通知（ＤＮ  Ｓｌｅｅｐ）
（４）エンドポイントバッファのバッファレディ通知（ＤＮ  ＥＰＲｄｙ）
（５）アクセス可能帯域の変化通知（ＤＮ  ＭＡＳＡｖａｉｌｌＣｈａｎｇｅｄ）
などがあげられる。以下、図２を参照してこのような非同期通知の送信タイミングについて説明する。
【００２９】
図２は、ＤＮＴＳの設定例を示した説明図である。図２に示したように、無線ホスト１０は、各トランザクショングループにおいて無線デバイス２０と無線通信を行う。また、トランザクショングループは、ＭＭＣ３１と、ＯＵＴ転送３２と、ＤＮＴＳ３３と、ＩＮ転送３４と、ＨＤＳＫ３５と、を含む。
【００３０】
ＭＭＣ（Ｍｉｃｒｏ−ｓｃｈｅｄｕｌｅｄ  Ｍａｎａｇｅｍｅｎｔ  Ｃｏｍｍａｎｄ）３１は、トランザクショングループの先頭に配され、当該トランザクショングループにＤＮＴＳ３３が含まれている場合には、ＤＮＴＳ３３のタイミングを示す情報を含む。その他、ＭＭＣ３１は、無線デバイス２０と同期をとるための時間情報、次のＭＭＣが送信されるまでの時間を示す次回ＭＭＣ情報などを含む。
【００３１】
ＯＵＴ転送３２は、無線ホスト１０が無線デバイス２０へ各種データを送信するための時間領域である。ＩＮ転送３４は、無線デバイス２０が無線ホスト１０へ各種データを送信するための時間領域である。
【００３２】
ＤＮＴＳ（Ｄｅｖｉｃｅ  Ｎｏｔｉｆｉｃａｔｉｏｎ  Ｔｉｍｉｎｇ  Ｓｌｏｔ）３３は、無線デバイス２０が必要に応じて上記の非同期通知を無線ホスト１０へ送信するための時間領域であって、無線ホスト１０により設定される。図２には、ＤＮＴＳ３３に４つの非同期アクセススロット（制御通信時間帯）が含まれる場合を示している。また、各トランザクショングループのＤＮＴＳ３３に非同期アクセススロットが４スロット分含まれていることを、各トランザクショングループを示す矩形内に「４」を記載して示している。
【００３３】
無線デバイス２０は、上記の非同期通知を無線ホスト１０に送信する必要がある場合、ＤＮＴＳ３３に含まれるいずれかの非同期アクセススロットを乱数に従ってランダムに選択し、選択した非同期アクセススロットにおいて非同期通知を送信することができる。
【００３４】
ここで、無線ホスト１０が非同期アクセススロットを設定する頻度を低くすると、無線デバイス２０が送信した非同期通知を無線ホスト１０が正常に受信するまでの時間が長くなる。非同期アクセススロットの頻度が少ないと、複数の無線デバイス２０が非同期通知を送信する非同期アクセススロットが衝突し、無線ホスト１０がいずれかの非同期通知しか正常に受信できない、あるいは全ての非同期通知を正常に受信できなくなるためである。
【００３５】
なお、非同期アクセススロットの設定頻度が少ない状態は、ＤＮＴＳ３３に含まれる非同期アクセススロット数が少ない状態、ＤＮＴＳ３３を含むトランザクショングループが少ない状態であってもよい。
【００３６】
無線ホスト１０が非同期通知を正常に受信するまでの時間が長くなると、スループットの低下を招来する点で問題である。例えば、無線デバイス２０内のバッファメモリのフローコントロール（オーバーフロー、またはアンダーフロー）が生じた場合、無線通信は一時中断される。そして、バッファメモリのデータ書き込み、または読み出しがある程度行なわれた段階で、無線デバイス２０が無線ホスト１０に「ＤＮ  ＥＰＲｄｙ」をいずれかの非同期アクセススロットにおいて送信する。中断されている無線通信は、無線ホスト１０が「ＤＮ  ＥＰＲｄｙ」を正常に受信し、所定の処理後に再開されるため、無線ホスト１０が非同期通知を正常に受信するまでの時間が長くなると無線通信が再開されるまでの時間が長くなり、スループットが低下する。
【００３７】
一方、非同期アクセススロットの設定頻度を高くしても、同様にスループットの低下を招来する。例えば、１つの非同期アクセススロットが２４μｓである場合、ワイヤレスＵＳＢにおいて採用されているＷｉＭｅｄｉａ規格のＴＤＭＡ基本アクセス単位（ＭＡＳ＝２５６μｓ）の約１０％に相当する。したがって、無線ホスト１０が、２つのＭＡＳ（５１２μｓ）を１つのトランザクショングループの単位とし、４つの非同期アクセススロットを含むＤＮＴＳ３３を毎トランザクショングループに設定すると、オーバーヘッドは約２０％となる。その結果、無線ホスト１０および無線デバイス２０間のデータ送受信のスループットが低下する。
【００３８】
そこで、上記のような事情に鑑みて本実施形態にかかる無線ホスト１０を創作するに至った。本実施形態にかかる無線ホスト１０は、非同期アクセススロットの頻度を動的に設定することにより、非同期通知の衝突率を抑制しつつ、スループットの向上を図ることができる。以下、当該無線ホスト１０の構成および動作について詳細に説明する。
【００３９】
なお、本実施形態にかかる無線ホスト１０を創作するに際し、以下の４点を考慮した。
（１）無線デバイス２０からの非同期通知の送信は、全体の動作からみて稀な動作である。
（２）非同期通知のうちで例外的に無線デバイス２０からの送信頻度が高いのは、フローコントロール時の「ＤＮ＿ＥＲＰｄｙ」である。また、「ＤＮ＿ＥＲＰｄｙ」を直ちに無線ホスト１０が正常に受信できるか否かによりスループットが上下する。
（３）無線デバイス２０は、非同期通知に対する無線ホスト１０からの応答を受信するまで、非同期通知を該非同期通知ごとに定められている回数、または期間にわたって繰り返し送信する。
（４）複数の無線デバイス２０が同一の非同期アクセススロットにおいて非同期通知を送信した場合、無線ホスト１０は、受信したアンテナにおいて電界強度が最も高かった非同期通知を正常に受信する。
【００４０】
図３は、本実施形態にかかる無線ホスト１０の構成を示した機能ブロック図である。図３に示したように、無線ホスト１０は、アンテナ１０８と、通信部１１０と、ホスト機能部２００と、メモリ１０２と、ＨＤＤ（ハードディスクドライブ）１０４と、インターフェース（Ｉ／Ｆ）１０６と、を備える。
【００４１】
また、通信部１１０は、高周波処理部１１４と、信号処理部１１８と、受信データ処理部１２２と、受信メモリ１２４と、割り込み生成部１２８と、送信メモリ１３２と、送信データ生成部１３６と、制御パケット生成部１４０と、スロット割り当て部１４８と、タイマ１５２と、コマンド処理部１５６と、を備える。
【００４２】
アンテナ１０８は、無線デバイス２０から送信されたデータおよび非同期通知などの無線信号を受信する。また、アンテナ１０８は、通信部１１０から入力された無線信号を無線デバイス２０に対して送信する。
【００４３】
高周波処理部１１４は、アンテナ１０８が無線デバイス２０から受信した信号をベースバンド信号にダウンコンバージョンする。また、高周波処理部１１４は、信号処理部１１８から入力された送信用のベースバンド信号を周波数変換し、無線信号を生成する。
【００４４】
信号処理部１１８は、高周波処理部１１４から入力されたベースバンド信号の復調処理や、エラー訂正処理を行う。また、信号処理部１１８は、送信データ生成部１３６から入力された信号をベースバンド信号に変調する。
【００４５】
受信データ処理部１２２は、信号処理部１１８により復調された受信データのチェックシーケンスを参照し、誤りの有無を検出するとともに、各種ヘッダに従って受信データの処理方法を決定する。受信メモリ１２４は受信データを格納する記憶部としての機能を有する。
【００４６】
割り込み生成部１２８は、無線ホスト１０が非同期通知を受信すると割り込みを送受信制御部１４４により設定され、ホスト機能部２００に対して非同期通知を受信した旨の割り込みをする。
【００４７】
送信メモリ１３２は、ホスト機能部２００から入力される送信データを記憶する記憶部としての機能を有する。送信データ生成部１３６は、送信データに各種ヘッダやチェックシーケンスを付加する。
【００４８】
送受信制御部１４４は、受信データ処理部１２２、送信データ処理部１３６、および信号処理部１１８などの動作設定およびタイミング制御を行う。コマンド処理部１５６は、ホスト機能部２００からのリクエスト（要求）を受信、実行したり、ハードウェアが取得して通信状況などのステータスやリクエスト実行結果などをホスト機能部２００に送り返す。
【００４９】
スロット割り当て部１４８は、ＤＮＴＳを含むトランザクショングループ内でのスロット割り当てを行なう。制御パケット生成部１４０は、スロット割り当て部１４８からの指示に従い、トランザクショングループの先頭に付加されるＴＤＭＡ動作の制御パケットであるＭＭＣを生成する。また、タイマ１５２は、通信部１１０の動作タイミングの基本となるクロックを生成する。
【００５０】
続いて、図４を参照し、ホスト機能部２００について詳細に説明する。
【００５１】
図４は、ホスト機能部２００の構成を示した機能ブロック図である。図４に示したように、ホスト機能部２００は、デバイス管理部２２０、転送管理部２４０、およびＷＵＳＢチャネル管理部２５０を含むＷＵＳＢ層管理部２１０と、無線層管理部２８０と、を備える。
【００５２】
デバイス管理部２２０は、接続管理部２２２、ＰＨＹＲａｔｅ管理部２２４、Ｐｏｗｅｒ  Ｓａｖｅ管理部２２６、Ｓｅｃｕｒｉｔｙ管理部２２８、および動作状態管理部２３０を備え、無線デバイス２０の情報、属性を管理する。例えば、接続管理部２２２は無線デバイス２０にアドレスを設定し、ＰＨＹＲａｔｅ管理部２２４は無線デバイス２０との通信速度を管理する。また、Ｐｏｗｅｒ  Ｓａｖｅ管理部２２６は無線デバイス２０が通常動作をしているか間欠動作をしているかなどの電力利用状態を管理し、Ｓｅｃｕｒｉｔｙ管理部２２８は無線デバイス２０ごとの暗号鍵などを管理する。
【００５３】
転送管理部２４０は、転送Ｑｕｅ生成部２４２、転送Ｑｕｅ処理部２４４、および転送エラー処理部２４６を備え、上位のアプリケーション層からの指示に基づいてデータ転送を管理する。
【００５４】
ＷＵＳＢチャネル管理部２５０は、ＭＭＣＩＥ管理部２５２、Ｓｅｃｕｒｉｔｙ管理部２５４、非同期通知管理部２６０、およびＤＮＴＳ設定部２７０を備える。例えば、Ｓｅｃｕｒｉｔｙ管理部２５４は、配下の全ての無線デバイス２０との通信に用いる暗号鍵などを管理する。
【００５５】
無線層管理部２８０は、ビーコン管理部２８２、帯域予約管理部２８４、およびデバイスアドレス管理部２８６を備える。例えば、ビーコン管理部２８２は、スーパーフレームの先頭に設けられたビーコンピリオドのビーコンスロットの利用状態を管理する。また、帯域予約管理部２８４は、スーパーフレームにおける時間帯、例えばＭＡＳの予約状態を管理する。デバイスアドレス管理部２８６は、無線ホスト１０の配下の各無線デバイス２０のアドレスを管理する。
【００５６】
以下、本実施形態にかかるホスト機能部２００のうちで特徴的な動作状態管理部２３０、非同期通知管理部２６０、およびＤＮＴＳ設定部２７０について図５〜図１２を参照して説明する。
【００５７】
非同期通知管理部２６０は、検出部２６２と、判断部２６４と、記憶部２６６と、を備える。
【００５８】
検出部２６２は、通信部１１０が無線デバイス２０から非同期通知を受信したことを検出する。具体的には、まず、送受信制御部１４４が、非同期アクセススロットが設定されている時刻になったら、信号処理部１１８を受信可能状態に設定する。そして、信号処理部１１８が非同期通知を受信すると、受信データ処理部１２２から送受信制御部１４４に非同期通知が受信された旨が通知される。送受信制御部１４４は、当該非同期通知の情報をコマンド処理部１５６に設定すると共に、割り込み生成部１２８に割り込みを設定する。
【００５９】
検出部２６２は、割り込み生成部１２８からの割り込みを受けると、コマンド処理部１５６に割り込み内容確認のリクエストを送付し、コマンド処理部１５６から割り込み要因である非同期通知を取得することにより非同期通知の受信を検出することができる。
【００６０】
なお、無線デバイス２０は、非同期通知を行なう必要が生じた場合、トランザクショングループの先頭に付加されているＭＭＣを受信し、非同期アクセススロットが設定されているか確認する。非同期アクセススロットが設定されている場合、無線デバイス２０は、いずれかの非同期アクセススロットを選択して非同期通知を送信する。
【００６１】
判断部２６４は、検出部２６２が検出した非同期通知が新規であるか否かを判断する。また、判断部２６４は、非同期通知が新規である場合、記憶部２６６が記憶している非同期通知管理テーブルを更新する。例えば、判断部２６４は、非同期通知に含まれる無線デバイス２０のデバイスアドレス、該当するエンドポイント番号、非同期通知の種類などに基づいて新規であるか否かを判断できる。詳細については図６を参照して後述する。
【００６２】
記憶部２６６は、無線デバイス２０から送信された非同期通知の情報を非同期通知管理テーブルとして記憶する。非同期通知管理テーブルの一例を、図５を参照して説明する。
【００６３】
図５は、非同期通知管理テーブルの一例を示した説明図である。図５に示したように、非同期通知管理テーブルは、デバイスアドレス、エンドポイント番号、非同期通知、および状態に関する情報を含む。
【００６４】
具体的には、記憶部２６６には、デバイスアドレスが「０ｘ０１」であり、エンドポイント番号が「３」であり、非同期通知が「ＤＮ＿Ｓｌｅｅｐ」であり、状態が「Ｒｅｓｐｏｎｄｅｄ」であるリストが１番目に記憶されている。ここで、状態「Ｒｅｓｐｏｎｄｅｄ」は、無線ホスト１０が、非同期通知に対する対応が終了し、状態解除までのタイマ待ちであることを示す。一方、状態「Ｐｒｏｃｅｓｓｉｎｇ」は、無線ホスト１０が非同期通知に対する対応をしていることを示す。
【００６５】
同様に、図５に示した例では、記憶部２６６に、デバイスアドレスが「０ｘ０３」であり、エンドポイント番号が「０」であり、非同期通知が「ＤＮ＿Ｄｉｓｃｏｎｎｅｃｔ」であり、状態が「Ｐｒｏｃｅｓｓｉｎｇ」であるリストが２番目に記憶されている。
【００６６】
なお、記憶部２６６は、ＥＥＰＲＯＭ（Ｅｌｅｃｔｒｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ−Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＥＰＲＯＭ（Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）などの不揮発性メモリや、ハードディスクおよび円盤型磁性体ディスクなどの磁気ディスクや、ＣＤ−Ｒ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ  Ｒｅｃｏｒｄａｂｌｅ）／ＲＷ（ＲｅＷｒｉｔａｂｌｅ）、ＤＶＤ−Ｒ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ  Ｒｅｃｏｒｄａｂｌｅ）／ＲＷ／＋Ｒ／＋ＲＷ／ＲＡＭ（Ｒａｍｄａｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）およびＢＤ（Ｂｌｕ−Ｒａｙ  Ｄｉｓｃ（登録商標））―Ｒ／ＢＤ−ＲＥなどの光ディスクや、ＭＯ（Ｍａｇｎｅｔｏ  Ｏｐｔｉｃａｌ）ディスクなどの記憶媒体であってもよい。
【００６７】
判断部２６４は、かかる非同期通知管理テーブルを参照することにより、検出部２６２により検出された非同期通知が新規であるか否かを判断することができる。該判断の方法の一例を、図６を参照して説明する。
【００６８】
図６は、判断部２６４の動作の流れを示したフローチャートである。まず、判断部２６４は、検出部２６２により検出された非同期通知の内容を取り込む（Ｓ３０４）。続いて、判断部２６４はｋ＝１に設定し（Ｓ３０８）、非同期通知管理テーブルのｋ番目のリストのデバイスアドレスと、検出部２６２により検出された非同期通知のデバイスアドレスが一致するか否か判断する（Ｓ３１２）。
【００６９】
続いて、判断部２６４は、ｋ番目のリストのデバイスアドレスと非同期通知のデバイスアドレスが一致すると判断した場合、ｋ番目のリストのエンドポイントと、非同期通知のエンドポイントが一致するか否か判断する（Ｓ３１６）。さらに、判断部２６４は、ｋ番目のリストのエンドポイントと非同期通知のエンドポイントが一致すると判断した場合、ｋ番目のリストの非同期通知の種類と、検出部２６２により検出された非同期通知の種類が一致するか否か判断する（Ｓ３１６）。
【００７０】
そして、判断部２６４は、ｋ番目のリストの非同期通知の種類と、検出部２６２により検出された非同期通知の種類が一致すると判断した場合、処理を終了する。一方、判断部２６４は、Ｓ３１２〜Ｓ３２０において、ｋ番目のリストと検出部２６２により検出された非同期通知とでデバイスアドレス、エンドポイント、または非同期通知の種類が一致しないと判断した場合、ｋ＝ｋｍａｘであるか否か判断する（Ｓ３２４）。ここで、ｋｍａｘは、非同期通知管理テーブルに含まれるリストの番号のうちで最も大きい番号を示す。
【００７１】
続いて、判断部２６４は、Ｓ３２４において判断部２６４がｋ＝ｋｍａｘでないと判断した場合、ｋの値をインクリメントしてＳ３１２の処理に戻る（Ｓ３２８）。一方、判断部２６４は、Ｓ３２４において判断部２６４がｋ＝ｋｍａｘであると判断した場合、検出部２６２により検出された非同期通知が新規であると判断し、記憶部２６６が記憶する非同期通知管理テーブルに当該非同期通知の情報を記録する。
【００７２】
なお、非同期通知に対する処理が終了した場合、非同期通知管理部２６０は非同期通知管理テーブルの該当するリストの状態を「Ｒｅｓｐｏｎｄｅｄ」に更新するとともにタイマをセットする。そして、非同期通知管理部２６０は、該タイマが終了した後に該リストに対応する非同期通知の管理を終了する（例えば、非同期通知管理テーブルから削除する。）。当該タイマは、非同期通知への無線ホスト１０による対応を無線デバイス２０側で認知し、無線デバイス２０が非同期通知の送信を停止するまでの猶予期間として機能する。非同期通知の終了は、非同期アクセススロット設定アルゴリズムに対して通知される。
【００７３】
以上説明した非同期通知管理部２６０における一連の動作の流れを図７を参照して説明する。
【００７４】
図７は、非同期通知管理部２６０の動作の流れを示したシーケンス図である。まず、無線デバイス２０は、無線デバイス２０内の状態が変化すると（Ｓ４０２）、必要に応じて非同期通知の送信を開始する（Ｓ４０４）。そして、無線ホスト１０の通信部１１０が非同期通知を受信すると（Ｓ４０６）、非同期通知管理部２６０は、通信部１１０により受信された非同期通知が新規であるか否かを判断する（Ｓ４０８）。非同期通知管理部２６０は、通信部１１０により受信された非同期通知が新規である場合には該非同期通知の情報を非同期通知管理テーブルに登録する（Ｓ４１０）。一方、通信部１１０により受信された非同期通知が新規でないと非同期通知管理部２６０により判断されると、該非同期通知に対する対応処理が継続的に行われる（Ｓ４１１）。
【００７５】
非同期通知管理テーブルに新規に非同期通知の情報が登録されると、非同期通知対応処理部は、該非同期通知に対する対応処理を開始する（Ｓ４１２）。このとき、非同期通知管理テーブルにおける該非同期通知に対応するリストの状態は「Ｐｒｏｃｅｓｓｉｎｇ」である。
【００７６】
なお、該対応処理を行う非同期通知対応処理部は非同期通知の種類に応じて異なる。例えば、非同期通知が「ＤＮ＿Ｃｏｎｎｅｃｔ」である場合は接続管理部２２２が非同期通知対応処理部であってもよく、非同期通知が「ＤＮ＿Ｓｌｅｅｐ」である場合はＰｏｗｅｒ  Ｓａｖｅ管理部２２８が非同期通知対応処理部であってもよい。また、非同期通知「ＤＮ＿ＥＲＰｄｙ」に対する対応処理は通信部１１０において行われてもよい。
【００７７】
そして、無線デバイス２０が非同期通知を送信し（Ｓ４１４）、通信部１１０が非同期通知を受信すると（Ｓ４１６）、非同期通知管理部２６０は該非同期通知が新規であるか否かを判断する（Ｓ４１８）。非同期通知管理部２６０は、該非同期通知が新規である場合、該非同期通知に関する情報を非同期通知管理テーブルに登録する（Ｓ４２０）。
【００７８】
さらに、無線デバイス２０が非同期通知を送信し（Ｓ４２２）、通信部１１０が非同期通知を受信すると（Ｓ４２４）、非同期通知管理部２６０は該非同期通知が新規であるか否かを判断する（Ｓ４２６）。非同期通知管理部２６０は、該非同期通知が新規である場合、該非同期通知に関する情報を非同期通知管理テーブルに登録する（Ｓ４２８）。
【００７９】
ここで、非同期通知管理部２６０は、非同期通知処理部から対応処理が終了した旨の通知を受信した場合、非同期通知管理テーブルにおける該非同期通知に対応するリストの状態を「Ｒｅｓｐｏｎｄｅｄ」に更新する（Ｓ４３０）。
【００８０】
続いて、無線デバイス２０が非同期通知を送信し（Ｓ４３２）、通信部１１０が非同期通知を受信すると（Ｓ４３４）、非同期通知管理部２６０は該非同期通知が新規であるか否かを判断する（Ｓ４３６）。非同期通知管理部２６０は、該非同期通知が新規である場合、該非同期通知に関する情報を非同期通知管理テーブルに登録する（Ｓ４３８）。その後、無線デバイス２０は、非同期通知処理部による対応処理が終了した旨の通知を受信し、非同期通知を送信する必要性が解消する（Ｓ４４０）。
【００８１】
ここで、図４を参照してホスト機能部２００の説明に戻ると、ＤＮＴＳ設定部２７０は、非同期通知管理テーブルを参照して非同期アクセススロットの頻度を動的に設定する設定部としての機能を有する。
【００８２】
上記説明したように、無線デバイス２０が非同期通知を送信するのは稀であるため、いずれの無線デバイス２０も非同期通知を送信していない場合、ＤＮＴＳは例えば５０〜１００ｍｓに一回の割合で設けられていれば十分である。さらに、１のＤＮＴＳに含まれる非同期アクセススロット数も１であってもよい。
【００８３】
一方、無線デバイス２０は一度非同期通知を送信すると、無線ホスト１０からの応答があるまで継続的に非同期通知を送信する。したがって、非同期アクセススロットの頻度が同一である場合、他の無線デバイス２０が非同期通知を送信しようとしたとき、利用する非同期アクセススロットが衝突してしまう確率が高くなる。
【００８４】
そこで、本実施形態にかかるＤＮＴＳ設定部２７０は、非同期通知を送信する無線デバイス２０が少ない、あるいは存在しない場合に第１の頻度に非同期アクセススロットを設定してもよい。そして、ＤＮＴＳ設定部２７０は、非同期通知を送信する無線デバイス２０が現れた、または増えた場合、第１の頻度より頻度が高い第２の頻度に非同期アクセススロットを設定してもよい。
【００８５】
例えば、第２の頻度は、第１の頻度と同一の割合でＤＮＴＳが設けられている場合、該ＤＮＴＳに含まれる非同期アクセススロット数が第１の頻度より多くてもよい。また、第２の頻度は、第１の頻度とＤＮＴＳに含まれる非同期アクセススロット数が同一である場合、ＤＮＴＳの割合が第１の頻度より高くてもよい。
【００８６】
かかる構成により、無線デバイス２０と他の無線デバイスとが非同期通知の送信に利用しようとする非同期アクセススロットの衝突を抑制することができる。また、ＤＮＴＳ設定部２７０は、検出部２６２により通信部１１０が無線デバイス２０から非同期通知を受信したことが検出されない間は、比較的頻度が低い第１の頻度に非同期アクセススロットを設定しておくことにより、非同期アクセススロットを過剰に設定した場合に生じるスループットの低下を防止することができる。
【００８７】
さらに、ＤＮＴＳ設定部２７０は、非同期通知を送信する無線デバイス２０の数が減少すると、非同期アクセススロットの頻度を下げてもよい。すなわち、ＤＮＴＳ設定部２７０は、非同期通知の送信需要の減少と併せて非同期アクセススロットの頻度を下げてもよい。その結果、無線ホスト１０、無線デバイス２０間の通信のスループットの向上が期待される。
【００８８】
なお、ＤＮＴＳ設定部２７０は、非同期アクセススロットの設定、または頻度を変更すると、ＣＰＵバスを介してコマンド処理部１５６にリクエストを送信する。コマンド処理部１５６は、該リクエストを受けると、スロット割り当て部１４８に非同期アクセススロットの設定、または頻度の変更を指示する。
【００８９】
スロット割り当て部１４８は、タイマ１５２を参照し、指示された頻度で非同期アクセススロット設定を制御パケット生成部１４０に指示する。制御パケット生成部１４０には、スロット割り当て部１４８からの指示に基づき、非同期アクセススロット設定をトランザクショングループの先頭で送信されるＭＭＣに埋め込む。そして、ＭＭＣを含むトランザクショングループは、送信データ生成部１３６、信号処理部１１８、および高周波処理部１１４を介して送信される。当該非同期アクセススロット設定は、一度ＤＮＴＳ設定部２７０により設定されれば、変更されない限りスロット割り当て部１４８が継続的に維持する。
【００９０】
以上、ＤＮＴＳ設定部２７０が非同期通知管理テーブルに基づいて非同期アクセススロットの頻度を動的に設定することにより、非同期通知の衝突率を抑制しつつ、スループットの向上を実現できることを説明した。しかし、例えば「ＤＮ＿ＥＲＰｄｙ」などの非同期通知は通信部１１０において処理が完結し、ホスト機能部２００が非同期通知の受信を検出できない場合がある。その結果、ＤＮＴＳ設定部２７０が適切に非同期アクセススロットの頻度を設定できないという事態が生じかねない。
【００９１】
そこで、本実施形態においては、動作状態管理部２３０が非同期通知が受信されるであろう擬似フローコントロール（制御通信想定状態）を検出することにより、ＤＮＴＳ設定部２７０がより適切に非同期アクセススロットの頻度を動的に設定できることとした。以下、図８を参照して具体的にこのような動作状態管理部２３０の機能を説明する。
【００９２】
動作状態管理部２３０は、検出部２３２と、記憶部２３４とを備える。検出部２３２は、無線デバイス２０がフローコントロールである、またはフローコントロールであろうことを、擬似フローコントロールとして検出する。例えば、検出部２３２は、以下の場合に擬似フローコントロールを検出する。
（１）無線ホスト１０から無線デバイス２０へ所定のリクエスト（要求）を送信した場合
ＵＳＢおよびＷＵＳＢにおいて標準的な例えばＳｅｔＡｄｄｒｅｓｓや、ＵＳＢおよびＷＵＳＢ上で動作するＭａｓｓ  Ｓｔｏｒａｇｅ  Ｃｌａｓｓの例えばＣＢＷ（Ｃｏｍｍａｎｄ  Ｂｌｏｃｋ  Ｗｒｉｔｅ）などのリクエストを無線ホスト１０が無線デバイス２０へ送信すると、無線デバイス２０がフローコントロールになる場合が多い。なお、ＣＢＷは、ＵＳＢメモリやＨＤＤなどのＲｅａｄ／Ｗｒｉｔｅなどのコマンドである。また、リクエストはこれに限られず、無線デバイス２０側において所定期間（例えば、ＤＮＴＳ間隔）にわたって処理が必要となる多様なリクエストが想定される。
（２）バルク転送で高いＰＨＹ  Ｒａｔｅが設定されている場合
単位時間当たりの転送データ量が多いと、無線デバイス２０のバッファのオーバーフロー、アンダーフローが生じやすい。
【００９３】
検出部２３２が上記擬似フローコントロールを検出すると、動作状態管理部２３０は、記憶部２３４が記憶するデバイス管理テーブルを更新する。以下、記憶部２３４が記憶するデバイス管理テーブルについて図８を参照して説明する。
【００９４】
図８は、動作状態管理部２３０の記憶部２３４が記憶するデバイス管理テーブルの一例を示した説明図である。図８に示したように、デバイス管理テーブルは、デバイスアドレス、エンドポイント番号、モード／方向、および状態に関する情報を含む。すなわち、記憶部２３４は、各無線デバイス２０のエンドポイント単位で情報を記憶している。
【００９５】
例えば、デバイスアドレスが「０ｘ０１」、エンドポイント番号が「０」、モード／方向が「ｃｏｎｔｒｏｌ」、状態が「Ａｃｔｉｖｅ」であるリストがデバイス管理テーブルの１番目に記憶されている。ここで、状態「Ａｃｔｉｖｅ」は正常に通信できる状態であることを示し、状態「擬似Ｆｌｏｗ  Ｃｏｎｔｒｏｌ」はフローコントロールが生じる、あるいは生じているであろう擬似フローコントロールであることを示す。
【００９６】
図８に示した例では、デバイスアドレスが「０ｘ０１」である無線デバイス２０のエンドポイント番号「３」と、デバイスアドレスが「０ｘ０２」である無線デバイス２０のエンドポイント番号「０」の２つが擬似フローコントロールである。
【００９７】
また、動作状態管理部２３０は、検出部２３２により擬似フローコントロールが解消されたことが検出されると、デバイス管理テーブルの状態を「Ａｃｔｉｖｅ」に戻す。同時に、ＤＮＴＳ設定部２７０に対して通知する。
【００９８】
なお、記憶部２３４は、非同期通知管理部２６０の記憶部２６６と同様に、ＥＥＰＲＯＭ、ＥＰＲＯＭなどの不揮発性メモリや、ハードディスクおよび円盤型磁性体ディスクなどの磁気ディスクや、ＣＤ−Ｒ／ＲＷ、ＤＶＤ−Ｒ／ＲＷ／＋Ｒ／＋ＲＷ／ＲＡＭおよびＢＤ（Ｂｌｕ−Ｒａｙ  Ｄｉｓｃ（登録商標））―Ｒ／ＢＤ−ＲＥなどの光ディスクや、ＭＯディスクなどの記憶媒体であってもよい。
【００９９】
ＤＮＴＳ設定部２７０は、非同期通知管理テーブルに加え、上記デバイス管理テーブルを参照することにより、さらに適切に非同期アクセススロットの頻度を動的に設定できる。具体的には、ＤＮＴＳ設定部２７０は、非同期通知を送信する無線デバイス２０、および擬似フローコントロールの無線デバイス２０の数に応じ、非同期アクセススロットの頻度を設定することができる。かかるＤＮＴＳ設定部２７０による非同期アクセススロットの頻度の変更設定例を、図９〜図１１を参照して説明する。
【０１００】
図９は、非同期アクセススロット設定の初期状態を示した説明図である。図９に示したように、いずれの無線デバイス２０からの非同期通知が検出されていなく、いずれの無線デバイス２０も擬似フローコントロールでない場合、非同期アクセススロットは例えば６４ｍｓ間隔で１スロットの頻度に設定される。すなわち、トランザクショングループ４０Ａ、Ｅ、およびＩがＤＮＴＳを含み、該ＤＮＴＳに１スロットの非同期アクセススロットが含まれている。その他のトランザクショングループ４０Ｂ、Ｃ、Ｄ、Ｆ、Ｇ、Ｈ、ＪおよびはＤＮＴＳを含まない。
【０１０１】
図９に示した状態において、無線デバイス２０からの非同期通知が検出されると、ＤＮＴＳ設定部２７０は例えば図１０に示すように非同期アクセススロットの設定を変更する。
【０１０２】
図１０は、非同期アクセススロット設定の頻度変更状態を示した説明図である。図１０に示したように、トランザクショングループ４２Ｅにおいて無線デバイス２０から非同期通知が送信されると、ＤＮＴＳ設定部２７０は非同期アクセススロットの設定頻度を高くする。図１０においては、ＤＮＴＳ設定部２７０が、ＤＮＴＳ間隔は変更せず、１のＤＮＴＳに含ませる非同期アクセススロットのスロットを１つ増やす場合を示している（トランザクショングループ４２Ｉ〜）。
【０１０３】
また、図９に示した状態において、無線デバイス２０から非同期通知が検出され、さらに無線デバイス２０のいずれかが擬似フローコントロールであるこが検出されると、ＤＮＴＳ設定部２７０は例えば図１１に示すように非同期アクセススロットの設定を変更する。
【０１０４】
図１１は、非同期アクセススロット設定の他の頻度変更状態を示した説明図である。図１１に示したように、トランザクショングループ４４Ｃにおいていずれかの無線デバイス２０が擬似フローコントロールであることが検出されると、ＤＮＴＳ設定部２７０は非同期アクセススロットの設定頻度を高くする。図１１においては、ＤＮＴＳ設定部２７０が、ＤＮＴＳ間隔を６４ｍｓから１６ｍｓに変更する場合を示している（トランザクショングループ４４Ｅ〜４４Ｈ）。
【０１０５】
さらに、トランザクショングループ４４Ｇにおいて無線デバイス２０から非同期通知が送信されると、ＤＮＴＳ設定部２７０は非同期アクセススロットの設定頻度をさらに高くする。図１１においては、ＤＮＴＳ設定部２７０が、１のＤＮＴＳに含ませる非同期アクセススロットのスロットを１つ増やす場合を示している（トランザクショングループ４２Ｉ〜ｚ）。
【０１０６】
次に、上述してきたＤＮＴＳ設定部２７０の動作の流れを図１２を参照して説明する。
【０１０７】
図１２は、ＤＮＴＳ設定部２７０の動作の流れを示したフローチャートである。まず、ＤＮＴＳ設定部２７０は、ＤＮＴＳ間隔を６４ｍｓに設定し（Ｓ５０４）、１のＤＮＴＳに含ませる非同期アクセススロット（以下、ＤＮＴＳスロットと称する。）数を１に設定する（Ｓ５０８）。
【０１０８】
続いて、ＤＮＴＳ設定部２７０は、新規の擬似フローコントロールが発生したか否かを判断する（Ｓ５１２）。ＤＮＴＳ設定部２７０は、新規の擬似フローコントロールが発生したと判断した場合、ＤＮＴＳ間隔を１６ｍｓに設定する（Ｓ５１６）。Ｓ５１２においてＤＮＴＳ設定部２７０が新規の擬似フローコントロールが発生していないと判断した場合、またはＳ５１６の後、ＤＮＴＳ設定部２７０は、擬似フローコントロールが全て解消したか否かを判断する（Ｓ５２０）。
【０１０９】
ＤＮＴＳ設定部２７０は、擬似フローコントロールが全て解消したと判断した場合、ＤＮＴＳ間隔を６４ｍｓに設定する（Ｓ５２４）。Ｓ５２０においてＤＮＴＳ設定部２７０が擬似フローコントロールが全て解消していないと判断した場合、またはＳ５２４の後、ＤＮＴＳ設定部２７０は非同期通知が新規に受信されたか否か判断する（Ｓ５２８）。
【０１１０】
ＤＮＴＳ設定部２７０は、非同期通知が新規に受信されたと判断した場合、ＤＮＴＳスロット数を１加算する（Ｓ５３２）。Ｓ５２８において非同期通知が新規に受信されていないと判断された場合、またはＳ５２４の後、ＤＮＴＳ設定部２７０は、非同期通知対応処理が終了したか否かを判断する（Ｓ５３６）。
【０１１１】
ＤＮＴＳ設定部２７０は、非同期通知対応処理が終了したと判断すると、ＤＮＴＳスロット数を１減算する（Ｓ５４０）。Ｓ５３６において非同期通知対応処理が終了していないと判断された場合、またはＳ５４０の後、ＤＮＴＳ設定部２７０はＳ５１２の処理に戻る。
【０１１２】
以上説明したように、本実施形態にかかる無線ホスト１０のＤＮＴＳ設定部２７０は、非同期通知を送信する無線デバイス２０が少ない、あるいは存在しない場合に第１の頻度に非同期アクセススロットを設定する。そして、ＤＮＴＳ設定部２７０は、非同期通知を送信する無線デバイス２０が現れた、または増えた場合、第１の頻度より頻度が高い第２の頻度に非同期アクセススロットを設定する。
【０１１３】
例えば、第２の頻度は、第１の頻度と同一の割合でＤＮＴＳが設けられている場合、該ＤＮＴＳに含まれる非同期アクセススロット数が第１の頻度より多くてもよい。また、第２の頻度は、第１の頻度とＤＮＴＳに含まれる非同期アクセススロット数が同一である場合、ＤＮＴＳの割合が第１の頻度より高くてもよい。
【０１１４】
かかる構成により、無線デバイス２０と他の無線デバイスとが非同期通知の送信に利用しようとする非同期アクセススロットの衝突を抑制することができる。また、ＤＮＴＳ設定部２７０は、検出部２６２により通信部１１０が無線デバイス２０から非同期通知を受信したことが検出されない間は、比較的頻度が低い第１の頻度に非同期アクセススロットを設定しておくことにより、非同期アクセススロットを過剰に設定した場合に生じるスループットの低下を防止することができる。
【０１１５】
また、本実施形態にかかる無線ホスト１０は、所定期間における非同期通知の送信状況を監視することなく、非同期通知が送信されたことを検出することにより非同期アクセススロットの頻度を迅速に変更することができる。また、本実施形態にかかる無線ホスト１０は、フローコントロール状態の発生が想定される場合（擬似フローコントロール）には、実際に非同期通知が送信される前に十分な非同期アクセススロットを確保し、より円滑な通信制御をすることができる。
【０１１６】
さらに、ＤＮＴＳ設定部２７０は、非同期通知を送信する無線デバイス２０の数が減少すると、非同期アクセススロットの頻度を下げてもよい。すなわち、ＤＮＴＳ設定部２７０は、非同期通知の送信需要の減少と併せて非同期アクセススロットの頻度を下げてもよい。その結果、無線ホスト１０、無線デバイス２０間の通信のスループットの向上が期待される。
【０１１７】
なお、添付図面を参照しながら本発明の好適な実施形態について説明したが、本発明は係る例に限定されないことは言うまでもない。当業者であれば、特許請求の範囲に記載された範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、それらについても当然に本発明の技術的範囲に属するものと了解される。
【０１１８】
例えば、本明細書の無線ホスト１０の処理における各ステップは、必ずしもフローチャートとして記載された順序に沿って時系列に処理する必要はない。例えば、無線ホスト１０の処理における各ステップは、並列的あるいは個別に実行される処理（例えば、並列処理あるいはオブジェクトによる処理）を含んでもよい。
【０１１９】
また、無線ホスト１０に内蔵されるＣＰＵ、ＲＯＭおよびＲＡＭなどのハードウェアを、上述した無線ホスト１０の各構成と同等の機能を発揮させるためのコンピュータプログラムも作成可能である。また、該コンピュータプログラムを記憶させた記憶媒体も提供される。また、図４の機能ブロック図で示したそれぞれの機能ブロックをハードウェアで構成することで、一連の処理をハードウェアで実現することもできる。
【図面の簡単な説明】
【０１２０】
【図１】本実施形態にかかる無線通信システムの構成例を示した説明図である。
【図２】ＤＮＴＳの設定例を示した説明図である。
【図３】本実施形態にかかる無線ホストの構成を示した機能ブロック図である。
【図４】ホスト機能部の構成を示した機能ブロック図である。
【図５】非同期通知管理テーブルの一例を示した説明図である。
【図６】判断部の動作の流れを示したフローチャートである。
【図７】非同期通知管理部の動作の流れを示したシーケンス図である。
【図８】動作状態管理部の記憶部が記憶するデバイス管理テーブルの一例を示した説明図である。
【図９】非同期アクセススロット設定の初期状態を示した説明図である。
【図１０】非同期アクセススロット設定の頻度変更状態を示した説明図である。
【図１１】非同期アクセススロット設定の他の頻度変更状態を示した説明図である。
【図１２】ＤＮＴＳ設定部の動作の流れを示したフローチャートである。
【符号の説明】
【０１２１】
１０      無線ホスト
２０      無線デバイス
１１０    通信部
２００    ホスト機能部
２３０    動作状態管理部
２３２、２６２  検出部
２６０    非同期通知管理部
２７０    ＤＮＴＳ設定部
【図１】
2009055247.tif 000003
【図２】
2009055247.tif 000004
【図３】
2009055247.tif 000005
【図４】
2009055247.tif 000006
【図５】
2009055247.tif 000007
【図６】
2009055247.tif 000008
【図７】
2009055247.tif 000009
【図８】
2009055247.tif 000010
【図９】
2009055247.tif 000011
【図１０】
2009055247.tif 000012
【図１１】
2009055247.tif 000013
【図１２】
2009055247.tif 000014