IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ サイレックス・テクノロジー株式会社の特許一覧

<>
  • 特開-通信装置、通信方法およびプログラム 図1
  • 特開-通信装置、通信方法およびプログラム 図2
  • 特開-通信装置、通信方法およびプログラム 図3
  • 特開-通信装置、通信方法およびプログラム 図4
  • 特開-通信装置、通信方法およびプログラム 図5
  • 特開-通信装置、通信方法およびプログラム 図6
  • 特開-通信装置、通信方法およびプログラム 図7
  • 特開-通信装置、通信方法およびプログラム 図8
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2025005876
(43)【公開日】2025-01-17
(54)【発明の名称】通信装置、通信方法およびプログラム
(51)【国際特許分類】
   H04W 36/00 20090101AFI20250109BHJP
【FI】
H04W36/00
【審査請求】未請求
【請求項の数】11
【出願形態】OL
(21)【出願番号】P 2023106286
(22)【出願日】2023-06-28
(71)【出願人】
【識別番号】500112146
【氏名又は名称】サイレックス・テクノロジー株式会社
(74)【代理人】
【識別番号】100109210
【弁理士】
【氏名又は名称】新居 広守
(72)【発明者】
【氏名】西原 友美
【テーマコード(参考)】
5K067
【Fターム(参考)】
5K067EE02
5K067EE10
5K067JJ71
(57)【要約】
【課題】効率的にデータ通信とスキャンとを両立することができる通信装置を提供する。
【解決手段】親機を介して無線通信を行う通信装置10は、親機を介して、親機と接続中の機器と無線通信を行うための通信部11と、機器とのデータの送受信の内容を記憶する記憶部13と、スキャンの実行の要求を受けた場合に、記憶部13に記憶された上記要求を受けた時刻から遡って所定期間内に行われた送受信の内容に基づいて、機器と今後データ通信を行う可能性が高いか否かを判定し、当該判定の結果に基づいて、スキャンの実行を制御する制御部12と、を備える。
【選択図】図2
【特許請求の範囲】
【請求項1】
親機を介して無線通信を行う通信装置であって、
前記親機を介して、前記親機と接続中の機器と無線通信を行うための通信部と、
前記機器とのデータの送受信の内容を記憶する記憶部と、
スキャンの実行の要求を受けた場合に、前記記憶部に記憶された前記要求を受けた時刻から遡って所定期間内に行われた送受信の内容に基づいて、前記機器と今後データ通信を行う可能性が高いか否かを判定し、前記判定の結果に基づいて、スキャンの実行を制御する制御部と、を備える、
通信装置。
【請求項2】
前記制御部は、前記機器と今後データ通信を行う可能性が高いと判定した場合、前記要求に対してスキャンを実行せず、
前記制御部は、前記機器と今後データ通信を行う可能性が低いと判定した場合、前記要求に対してスキャンを実行する、
請求項1に記載の通信装置。
【請求項3】
前記制御部は、前記機器と今後データ通信を行う可能性が低いと判定した場合、前記要求に対してフォアグラウンドスキャンまたはバックグラウンドスキャンを実行する、
請求項2に記載の通信装置。
【請求項4】
前記制御部は、前記要求を受けた時刻から遡って所定期間内に行われた前記送受信の内容が、今後データ通信を行う可能性が低いことを示す情報である場合、前記要求に対してフォアグラウンドスキャンを実行する、
請求項3に記載の通信装置。
【請求項5】
前記制御部は、前記要求を受けた時刻から遡って所定期間内に前記送受信が行われておらず、かつ、前記機器との間でコネクションが確立されている場合には、前記要求に対してバックグラウンドスキャンを実行する、
請求項3に記載の通信装置。
【請求項6】
前記制御部は、前記機器と今後データ通信を行う可能性が高いと判定した場合、所定時間後に再度、前記要求を行うように、前記要求の要求元に指示する、
請求項2に記載の通信装置。
【請求項7】
前記制御部は、前記機器と今後データ通信を行う可能性が高いと判定した場合、所定時間後に再度、前記記憶部に記憶された前記送受信の内容に基づいて、前記機器と今後データ通信を行う可能性が高いか否かを判定し、当該判定の結果に基づいて、スキャンの実行を制御する、
請求項2に記載の通信装置。
【請求項8】
前記制御部は、前記要求を受けた時刻から遡って所定期間内に行われた前記送受信の内容が、ARP(Address Resolution Protocol)の送受信、TCP(Transmission Control Protocol)の送受信またはDHCP(Dynamic Host Configuration Protocol)の送受信を示す場合、前記機器と今後データ通信を行う可能性が高いと判定する、
請求項1、2、6、7のいずれか1項に記載の通信装置。
【請求項9】
前記制御部は、前記要求を受けた時刻から遡って所定期間内に行われた前記送受信の内容がUDP(User Datagram Protcol)の送受信を示す場合、または、前記要求を受けた時刻から遡って所定期間内に行われた前記送受信の内容がない場合、前記機器と今後データ通信を行う可能性が低いと判定する、
請求項1~4のいずれか1項に記載の通信装置。
【請求項10】
親機を介して無線通信を行う通信装置により実行される通信方法であって、
前記通信装置は、
前記親機を介して、前記親機と接続中の機器と無線通信を行うための通信部と、
前記機器とのデータの送受信の内容を記憶する記憶部と、を備え、
前記通信方法では、
前記通信装置がスキャンの実行の要求を受けた場合に、前記記憶部に記憶された前記要求を受けた時刻から遡って所定期間内に行われた送受信の内容に基づいて、前記機器と今後データ通信を行う可能性が高いか否かを判定するステップと、
前記判定の結果に基づいて、前記機器に対するスキャンの実行を制御するステップと、を含む、
通信方法。
【請求項11】
請求項10に記載の通信方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、親機と無線通信を行う子機である通信装置などに関する。
【背景技術】
【0002】
特許文献1には、親機と無線通信を行っている子機がハンドオーバ先となる他の基地局(親機)をスキャンする際のスループットの低下を抑制する技術が記載されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2015-201780号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
親機と無線通信を行っている子機が、スキャンを行う際に、接続中の親機との通信が行えなくなることによってデータ通信のスループットの低下が生じ得る。このようなスループットの低下を抑制する技術としては、特許文献1に記載された技術以外にも、例えば、最後のデータ送受信から一定期間の時間が経過していない場合には、スキャンを行わないといった技術もある。しかし、一律に一定期間の時間が経過していない場合にはスキャンを行わないとすると、スキャンの実施率が低下したり、一定期間の時間分データ通信の開始が遅れたりするといった問題がある。これに対して、効率的にデータ通信とスキャンとを両立することが望まれている。
【0005】
本発明は、上記問題を解決するためになされたものであり、効率的にデータ通信とスキャンとを両立することができる通信装置などを提供することを目的とする。
【課題を解決するための手段】
【0006】
上記課題を解決するために、本発明の一態様に係る通信装置は、親機を介して無線通信を行う通信装置であって、前記親機を介して、前記親機と接続中の機器と無線通信を行うための通信部と、前記機器とのデータの送受信の内容を記憶する記憶部と、スキャンの実行の要求を受けた場合に、前記記憶部に記憶された前記要求を受けた時刻から遡って所定期間内に行われた送受信の内容に基づいて、前記機器と今後データ通信を行う可能性が高いか否かを判定し、前記判定の結果に基づいて、スキャンの実行を制御する制御部と、を備える。
【0007】
これによれば、要求を受けた時刻から遡って所定期間内に行われた機器とのデータの送受信の内容には、機器と今後データ通信を行う可能性が高いか否かを示す情報が含まれ得るため、要求を受けた時刻から遡って所定期間内に行われた機器とのデータの送受信の内容に基づいて、機器と今後データ通信を行う可能性が高いか否かを判定することができる。機器と今後データ通信を行う可能性が高い場合には、データ通信を優先しつつスキャンの開始のタイミングを調整することができ、機器と今後データ通信を行う可能性が低い場合には、スキャンを優先することができるため、効率的にデータ通信とスキャンとを両立することができる。
【0008】
また、前記制御部は、前記機器と今後データ通信を行う可能性が高いと判定した場合、前記要求に対してスキャンを実行せず、前記制御部は、前記機器と今後データ通信を行う可能性が低いと判定した場合、前記要求に対してスキャンを実行してもよい。
【0009】
これによれば、機器と今後データ通信を行う可能性が低い場合には、今回受けたスキャンの実行の要求に対してスキャンを実行することができる。一方、機器と今後データ通信を行う可能性が高い場合には、今回受けたスキャンの実行の要求に対してスキャンを実行せずに、今回はデータ通信を優先し、機器と今後データ通信を行う可能性が低くなった場合にスキャンを実行することができる。
【0010】
また、前記制御部は、前記機器と今後データ通信を行う可能性が低いと判定した場合、前記要求に対してフォアグラウンドスキャンまたはバックグラウンドスキャンを実行してもよい。
【0011】
これによれば、機器と今後データ通信を行う可能性が低い場合であっても、状況によってはデータ通信が行われる場合がある。そこで、機器と今後データ通信を行う可能性が低い場合に、状況に応じてスキャンの種別を判定して、フォアグラウンドスキャンまたはバックグラウンドスキャンを実行することで、より効率的にデータ通信とスキャンとを両立することができる。
【0012】
また、前記制御部は、前記要求を受けた時刻から遡って所定期間内に行われた前記送受信の内容が、今後データ通信を行う可能性が低いことを示す情報である場合、前記要求に対してフォアグラウンドスキャンを実行してもよい。
【0013】
これによれば、要求を受けた時刻から遡って所定期間内に行われた機器とのデータの送受信の内容が、今後データ通信を行う可能性が低いことを示す情報である場合、フォアグラウンドスキャンをしている間はデータ通信を実行せず、スキャンを優先して実行することができる。
【0014】
また、前記制御部は、前記要求を受けた時刻から遡って所定期間内に前記送受信が行われておらず、かつ、前記機器との間でコネクションが確立されている場合には、前記要求に対してバックグラウンドスキャンを実行してもよい。
【0015】
これによれば、要求を受けた時刻から遡って所定期間内に機器とデータの送受信が行われていない場合であっても、機器との間でコネクションが確立されているときには、データ通信が行われる可能性がある。そこで、バックグラウンドスキャンを実行することで、スキャンするチャネルの切り替わりのタイミングでデータ通信を行うことが可能となっている。
【0016】
また、前記制御部は、前記機器と今後データ通信を行う可能性が高いと判定した場合、所定時間後に再度、前記要求を行うように、前記要求の要求元に指示してもよい。
【0017】
これによれば、機器と今後データ通信を行う可能性が高い場合には、所定時間後に再度要求を行うように要求元に指示されるため、機器と今後データ通信を行う可能性が低くなった場合にスキャンを実行することができる。
【0018】
また、前記制御部は、前記機器と今後データ通信を行う可能性が高いと判定した場合、所定時間後に再度、前記記憶部に記憶された前記送受信の内容に基づいて、前記機器と今後データ通信を行う可能性が高いか否かを判定し、当該判定の結果に基づいて、スキャンの実行を制御してもよい。
【0019】
これによれば、機器と今後データ通信を行う可能性が高い場合には、所定時間後に再度機器と今後データ通信を行う可能性が高いか否かの判定が行われるため、機器と今後データ通信を行う可能性が低くなった場合にスキャンを実行することができる。
【0020】
また、前記制御部は、前記要求を受けた時刻から遡って所定期間内に行われた前記送受信の内容が、ARP(Address Resolution Protocol)の送受信、TCP(Transmission Control Protocol)の送受信またはDHCP(Dynamic Host Configuration Protocol)の送受信を示す場合、前記機器と今後データ通信を行う可能性が高いと判定してもよい。
【0021】
このようにして、機器と今後データ通信を行う可能性が高いと判定することができる。
【0022】
また、前記制御部は、前記要求を受けた時刻から遡って所定期間内に行われた前記送受信の内容がUDP(User Datagram Protcol)の送受信を示す場合、または、前記要求を受けた時刻から遡って所定期間内に行われた前記送受信の内容がない場合、前記機器と今後データ通信を行う可能性が低いと判定してもよい。
【0023】
このようにして、機器と今後データ通信を行う可能性が低いと判定することができる。
【0024】
上記課題を解決するために、本発明の一態様に係る通信方法は、親機を介して無線通信を行う通信装置により実行される通信方法であって、前記通信装置は、前記親機を介して、前記親機と接続中の機器と無線通信を行うための通信部と、前記機器とのデータの送受信の内容を記憶する記憶部と、を備え、前記通信方法では、前記通信装置がスキャンの実行の要求を受けた場合に、前記記憶部に記憶された前記要求を受けた時刻から遡って所定期間内に行われた送受信の内容に基づいて、前記機器と今後データ通信を行う可能性が高いか否かを判定するステップと、前記判定の結果に基づいて、前記機器に対するスキャンの実行を制御するステップと、を含む。
【0025】
これによれば、効率的にデータ通信とスキャンとを両立することができる通信方法を提供できる。
【0026】
上記課題を解決するために、本発明の一態様に係るプログラムは、上記の通信方法をコンピュータに実行させる。
【0027】
これによれば、効率的にデータ通信とスキャンとを両立することができるプログラムを提供できる。
【発明の効果】
【0028】
本発明により、効率的にデータ通信とスキャンとを両立することができる。
【図面の簡単な説明】
【0029】
図1】実施の形態に係る通信システムの一例を示す構成図である。
図2】実施の形態に係る通信装置の一例を示す構成図である。
図3】実施の形態に係る通信装置の動作の一例を示すフローチャートである。
図4】子機とのデータの送受信の内容の一例を示す図である。
図5】実施の形態におけるスキャンの実行の制御の一例を示すフローチャートである。
図6】スキャンを実行しないときの動作の一例を示すシーケンス図である。
図7】フォアグラウンドスキャンを実行するときの動作の一例を示すシーケンス図である。
図8】バックグラウンドスキャンを実行するときの動作の一例を示すシーケンス図である。
【発明を実施するための形態】
【0030】
以下、実施の形態について、図面を参照しながら具体的に説明する。
【0031】
以下で説明する実施の形態は、いずれも本発明の好ましい一具体例を示すものである。以下の実施の形態で示される数値、形状、材料、構成要素、構成要素の配置位置および接続形態、ステップ、ステップの順序などは、一例であり、本発明を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、独立請求項に記載されていない構成要素については、より好ましい形態を構成する任意の構成要素として説明される。なお、同一の構成要素には同一の符号を付し、説明を省略する場合がある。
【0032】
(実施の形態)
以下、実施の形態について図1から図8を用いて説明する。
【0033】
図1は、実施の形態に係る通信システム1の一例を示す構成図である。
【0034】
通信システム1では、1つの親機(例えばAP:アクセスポイント)200に対して複数の子機(例えばSTA:ステーション)100および通信装置10が接続されており、インフラストラクチャーモードにより、複数の子機100および通信装置10のそれぞれは、親機200を介して互いに通信可能となっている。親機200、各子機100、および通信装置10とは、無線LAN(Local Area Network)により接続される。なお、複数の子機100は以後、総称して子機100と呼ぶこともある。
【0035】
通信装置10は、例えば周辺の無線環境を調査するため、または、ローミング候補先の親機200を発見するために、自装置の周囲に存在する無線フレームをスキャンする場合などがある。ここで、通信装置10がスキャンを実行するとは、自装置の無線通信を受信可能な範囲に存在する無線フレームを取得する処理である。通信装置10は、現在接続中の親機200との通信に用いているチャネルとは異なるチャネルを用いてスキャンを行うため、スキャン中には現在接続中の親機200とデータ通信ができなくなる。このため、効率的にデータ通信とスキャンとを両立することが望まれている。以下では、このような通信システム1において効率的にデータ通信とスキャンとを両立することができる通信装置10について説明する。
【0036】
図2は、実施の形態に係る通信装置10の一例を示す構成図である。
【0037】
通信装置10は、親機200を介して無線通信を行う通信装置であり、例えば、携帯端末(スマートフォン、タブレット端末など)もしくはノードPC(Personal Computer)などの無線端末、または、ネットワーク機器などである。通信装置10は、本実施の形態では親機200を介して複数の子機100と無線通信を行っているとして説明するが、これに限らず、親機200に他のネットワークを介して接続する他の通信装置(図示しない)と通信していてもよい。通信装置10は、通信部11、制御部12および記憶部13を備える。通信装置10は、プロセッサ、メモリおよび通信インタフェースなどのハードウェアを備えるコンピュータである。メモリは、ROM(Read Only Memory)およびRAM(Random Access Memory)などであり、プロセッサにより実行されるプログラムを記憶することができる。制御部12は、メモリに格納されたプログラムを実行するプロセッサなどによって実現される。通信部11は、通信プログラム、通信回路およびアンテナなどの通信インタフェースなどによって実現され、制御部12によって制御されることで情報の送受信を行うことができる。例えば、通信部11の通信インタフェースは、IEEE802.11通信規格に準拠した無線インタフェースである。記憶部13は、メモリによって実現されるが、プログラムが記憶されるメモリと記憶部13とは別のメモリであってもよい。
【0038】
通信部11は、親機200を介して子機100と無線通信を行うための処理部である。子機100は、親機200と接続中の機器の一例である。なお、上述したように、通信部11は、親機200に他のネットワークを介して接続する他の通信装置(図示しない)と無線通信を行ってもよい。この場合、当該他の通信装置は、親機200と接続中の機器の一例である。例えば、子機100が親機200と無線により接続されている場合に、通信部11は、親機200を介して子機100と無線通信を行うことができる。
【0039】
記憶部13は、通信部11が無線通信を行っている子機100とのデータの送受信の内容を記憶する。記憶部13に記憶される子機100とのデータの送受信の内容の例については後述する。なお、記憶部13は、子機100とのコネクションの確立の状況についても記憶していてもよい。また、記憶部13は、例えばスキャンを行うことにより無線フレームに格納された種々のデータ(情報)を取得した情報を記憶してもよい。
【0040】
制御部12は、例えば通信装置10を使用するユーザから入力部(図示しない)を介してスキャンの実行の要求を受けた場合に、記憶部13に記憶された、当該要求を受けた時刻から遡って所定期間内に行われた子機100とのデータの送受信の内容に基づいて、子機100と今後データ通信を行う可能性が高いか否かを判定し、当該判定の結果に基づいて、スキャンの実行を制御する。以下、スキャンの実行の要求をスキャン要求とも呼ぶ。スキャン要求は、例えば周辺の無線環境を調査するため、または、ローミング候補先を発見するためになされる。スキャン要求の要求元は、通信装置10を操作するユーザ以外に、例えば、通信装置10にインストールされたアプリケーションであってもよい。
【0041】
次に、通信装置10(具体的には制御部12)の動作について図3を用いて説明する。
【0042】
図3は、実施の形態に係る通信装置10の動作の一例を示すフローチャートである。
【0043】
まず、制御部12は、スキャンの実行の要求(スキャン要求)を受けたか否かを判定する(ステップS11)。
【0044】
制御部12は、スキャン要求を受けなかった場合(ステップS11でNo)、スキャン要求を受けるまでステップS11での処理を繰り返す。つまり、制御部12は、ステップS11でスキャン要求を受けるまで待機する。
【0045】
制御部12は、スキャン要求を受けた場合(ステップS11でYes)、記憶部13に記憶された、スキャン要求を受けた時刻から遡って所定期間内に行われた送受信の内容に基づいて、子機100と今後データ通信を行う可能性が高いか否かを判定する(ステップS12)。ここで、記憶部13に記憶される子機100とのデータの送受信の内容の例について図4を用いて説明する。
【0046】
図4は、子機100とのデータの送受信の内容の一例を示す図である。
【0047】
例えば、記憶部13には、データフレームのヘッダの内容が記憶され、具体的には、ヘッダに含まれるプロトコルの種別、パケットの種別およびタイムスタンプ(送受信が行われた時刻)などが記憶される。例えば、図4には、プロトコルの種類として、ARP(Address Resolution Protocol)およびUDP(User Datagram Protcol)が示されている。
【0048】
ARPは、IPアドレスからEthernet(登録商標)のMAC(Media Access Control)アドレスを得るためのプロトコルであり、データ通信を行うためにARPのデータフレームの送受信が行われる。ARPには、パケットの種別として、RequestとReplyがある。例えば、通信装置10は親機200を介して、MACアドレスを知りたいIPアドレスを含むARP Requestをブロードキャストで送信し、当該IPアドレスを有する子機100は親機200を介して通信装置10に対して、自身のMACアドレスを含むARP Replyを送信する。これにより、通信装置10と子機100とは、以降データ通信を行うことができる。このように、データ通信を行うために必要となるARP Requestが送信されると、その応答としてARP Replyが送信される蓋然性が高い。
【0049】
UDPは、コネクションレス型の通信を行うプロトコルであり、主に動画や音声などのリアルタイム性を求められるデータ通信、高速なデータ通信、および、名前解決などのDNS(Domain Name System)のような応答性が優先されるデータ通信などを行うのに適している。UDPでは、TCP(Transmission Control Protocol)の3ウェイハンドシェイクのようなコネクションの確立は行われない。
【0050】
また、図示していないが、記憶部13に記憶されるプロトコルの種別として、TCPがある。TCPは、コネクション型の通信を行うプロトコルであり、信頼性が必要なデータ通信を行うのに適している。TCPによってデータ通信が行われる前に、3ウェイハンドシェイクによるコネクションの確立が行われる。TCPのコネクションの確立時のパケットの種別として、SYN、SYN/ACK、ACKがある。例えば、通信装置10は親機200を介して、コネクションを確立したい子機100に対して、SYNパケットを送信し、SYNパケットを受信した子機100は親機200を介して、通信装置10に対して、SYN/ACKパケットを送信し、通信装置10は親機200を介して、子機100に対して、ACKパケットを送信する。これにより、通信装置10と子機100とのコネクションが確立する。
【0051】
なお、子機100とのデータの送受信の内容として、プロトコルの種別、パケットの種別およびタイムスタンプ以外にも、ポート番号、IPアドレスまたはMACアドレスなどが記憶部13に記憶されてもよい。このように、コネクションを確立してからデータ通信を行うTCP通信では、コネクションを確立するための3ウェイハンドシェイクが開始されると、データ通信が行われる蓋然性が高く、またコネクションが確立したのちにも一定のデータ通信が行われる可能性がある。
【0052】
また、記憶部13に記憶される子機100とのデータの送受信の内容は古いものから削除されていってもよい。
【0053】
ここで、図4に示す様な種々のプロトコルの種別を例に、通信装置10がスキャン要求を受けた時刻から遡って所定期間内に行われた子機100とのデータの送受信の内容に基づいて、子機100と今後データ通信を行う可能性が高いか否かを判定する際の具体例を説明する。制御部12は、記憶部13に記憶された、スキャン要求を受けた時刻から遡って所定期間内に行われた子機100とのデータの送受信の内容に基づいて、子機100と今後データ通信を行う可能性が高いか否かを判定する。所定期間は特に限定されず、通信装置10が適用されるシステムなどに応じて適宜設定される。
【0054】
例えば、制御部12は、スキャン要求を受けた時刻から遡って所定期間内に行われた送受信の内容がARPの送受信を示す場合、子機100と今後データ通信を行う可能性が高いと判定する。通信装置10と子機100との間で今後データ通信を行うためにARPの送受信が行われており、今後データ通信が行われる可能性が高いためである。
【0055】
例えば、制御部12は、スキャン要求を受けた時刻から遡って所定期間内に行われた送受信の内容がUDPなどの単発のデータの送受信を示す場合、子機100と今後データ通信を行う可能性が低いと判定する。通信装置10と子機100との間で単発のデータ通信が行われており、今後継続してデータ通信が行われる可能性が低いためである。
【0056】
例えば、制御部12は、スキャン要求を受けた時刻から遡って所定期間内に行われた送受信の内容がTCPの送受信を示している場合、または、TCPのコネクションの確立時のSYN、SYN/ACK、ACKパケットの送受信を示している場合、子機100と今後データ通信を行う可能性が高いと判定する。通信装置10と子機100との間でTCPのデータの送受信が行われていたり、TCPのコネクションが確立されてこれからデータ通信が行われようとしていたりしており、今後データ通信が行われる可能性が高いためである。
【0057】
例えば、制御部12は、スキャン要求を受けた時刻から遡って所定期間内に行われた送受信の内容がない場合、つまり、当該所定期間内にデータ通信が行われていなかった場合、子機100と今後データ通信を行う可能性が低いと判定する。通信装置10と子機100との間でデータ通信が行われておらず、今後もデータ通信が行われる可能性が低いためである。
【0058】
図3での説明に戻り、制御部12は、子機100と今後データ通信を行う可能性が高いか否かの判定の結果に基づいて、スキャンの実行を制御する(ステップS13)。ここで、スキャンの実行の制御例について、図5を用いて説明する。
【0059】
図5は、実施の形態におけるスキャンの実行の制御の一例を示すフローチャートである。
【0060】
制御部12は、子機100と今後データ通信を行う可能性が高いか否かを判定する(ステップS21)。具体的には、上述したように、記憶部13に記憶された、スキャン要求を受けた時刻から遡って所定期間内に行われた送受信の内容に基づいて、当該判定が行われる。
【0061】
制御部12は、子機100と今後データ通信を行う可能性が高いと判定した場合(ステップS21でYes)、スキャン要求に対してスキャンを実行しない(ステップS22)。子機100と今後データ通信を行う可能性が高い場合には、今回受けたスキャン要求に対してスキャンを実行せずに、今回はデータ通信を優先し、子機100と今後データ通信を行う可能性が低くなった場合にスキャンを実行することができる。
【0062】
例えば、制御部12は、子機100と今後データ通信を行う可能性が高いと判定した場合、所定時間後に再度、スキャン要求を行うように、スキャン要求の要求元に指示する(ステップS23)。子機100と今後データ通信を行う可能性が高い場合には、所定時間後に再度スキャン要求を行うように要求元に指示されるため、子機100と今後データ通信を行う可能性が低くなった場合にスキャンを実行することができる。なお、所定時間は特に限定されず、通信装置10が適用されるシステムなどに応じて適宜設定される。
【0063】
なお、制御部12は、子機100と今後データ通信を行う可能性が高いと判定した場合に、所定時間後に再度、スキャン要求を行うように、スキャン要求の要求元に指示せず、例えば、所定時間後に再度、記憶部13に記憶された送受信の内容に基づいて、子機100と今後データ通信を行う可能性が高いか否かを判定し、当該判定の結果に基づいて、スキャンの実行を制御してもよい。つまり、再度のスキャン要求がなくても、所定時間後に自動的に、ステップS21に戻って、再度子機100と今後データ通信を行う可能性が高いか否かの判定が行われてもよい。このように、子機100と今後データ通信を行う可能性が高い場合には、所定時間後に再度子機100と今後データ通信を行う可能性が高いか否かの判定が行われるため、子機100と今後データ通信を行う可能性が低くなった場合にスキャンを実行することができる。
【0064】
一方、制御部12は、子機100と今後データ通信を行う可能性が低いと判定した場合(ステップS21でNo)、スキャン要求に対してスキャンを実行する(ステップS24)。子機100と今後データ通信を行う可能性が低い場合には、今回のスキャン要求に対してスキャンを実行することができる。
【0065】
ここで、スキャンを実行しないときの通信装置10、親機200、子機100およびユーザの動作について図6を用いて説明する。
【0066】
図6は、スキャンを実行しないときの動作の一例を示すシーケンス図である。
【0067】
例えば、通信装置10と親機200とは無線LANで接続されており、親機200と子機100とは無線LANで接続されているとする。
【0068】
例えば、通信装置10(制御部12)は、スキャン要求を受けた場合、スキャン要求を受けた時刻から遡って所定期間(例えば1秒)内に行われた送受信の内容が今後データ通信を行う可能性が高いことを示す情報であるか否かを判定する。図6に示されるように、通信装置10が備える入力部(図示せず)を介してユーザからスキャン要求を受けた時刻から遡って1秒以内にARP送受信が行われており、送受信の内容が今後データ通信を行う可能性が高いことを示す情報であるため、通信装置10は、スキャン要求を却下し、スキャンを実行しない。また、他の一例として、スキャン要求を受けた時刻から遡って所定期間内に行われた送受信の内容が、DHCP(Dynamic Host Configuration Protocol)の送受信である場合にも、DHCPの送受信は、今後データ通信を行う可能性が高いことを示すため、通信装置10は、スキャン要求を却下し、スキャンを実行しなくてもよい。
【0069】
なお、通信装置10は、自装置に予め設定された通信に用い得るチャネルの候補を1チャネルずつスキャンしていくが、スキャンの種別としては、フォアグラウンドスキャンおよびバックグラウンドスキャンがある。このため、例えば、制御部12は、子機100と今後データ通信を行う可能性が低いと判定した場合、スキャン要求に対してフォアグラウンドスキャンまたはバックグラウンドスキャンを実行する。
【0070】
フォアグラウンドスキャンは、スキャン対象のチャネルを1チャネルずつ連続して切り替えながらスキャンする方法である。例えば、通信装置10が接続中の親機200との通信に用いるチャネルが第1チャネルであり、自装置に予め設定された通信に用い得るチャネルが第2チャネル、第3チャネル、・・・とする。この場合、フォアグラウンドスキャンでは、第1チャネルから第2チャネルに切り替えられて第2チャネルのスキャンが所定時間(例えば100ms)行われ、次に、第2チャネルから第3チャネルに切り替えられて第3チャネルのスキャンが所定時間行われる。自装置に予め設定されたスキャン対象であるチャネルを全てスキャンされるまでこの処理が行われる。このため、通信装置10がフォアグラウンドスキャンをしている間は、子機100とはデータ通信ができない。
【0071】
一方、バックグラウンドスキャンは、スキャン対象のチャネルと、通信装置10が接続中の親機200との通信に用いるチャネルとを交互に切り替えながらスキャンする方法である。例えば、通信装置10が接続中の親機200との通信に用いるチャネルが第1チャネルであり、スキャン対象のチャネルが第2チャネル、第3チャネル、・・・とする。この場合、バックグラウンドスキャンでは、第1チャネルから第2チャネルに切り替えられて第2チャネルのスキャンが所定時間(例えば100ms)行われ、次に、第2チャネルから第1チャネルに切り替えられて子機100とのデータ通信が発生していないかの確認が行われる。具体的には、第2チャネルのスキャンが行われている間に親機200が子機100から通信装置10へのデータを受信した場合には、親機200は、当該データをバッファリングしておき、第1チャネルに切り替えられたときに通信装置10へ送信する。これにより、通信装置10は、バックグラウンドスキャンをしながら、子機100とのデータ通信も行うことができる。
【0072】
そして次に、第1チャネルから第3チャネルに切り替えられて第3チャネルのスキャンが所定時間行われ、次に、第3チャネルから第1チャネルに切り替えられて親機200とのデータ通信が発生していないかの確認が行われる。自装置に予め設定されたスキャン対象のチャネルを全てスキャンされるまでこの処理が繰り返される。
【0073】
例えば、制御部12は、スキャン要求を受けた時刻から遡って所定期間内に行われた送受信の内容が、今後データ通信を行う可能性が低いことを示す情報である場合、スキャン要求に対してフォアグラウンドスキャンを実行する。
【0074】
ここで、フォアグラウンドスキャンを実行するときの通信装置10、親機200、子機100およびユーザの動作について図7を用いて説明する。
【0075】
図7は、フォアグラウンドスキャンを実行するときの動作の一例を示すシーケンス図である。
【0076】
例えば、通信装置10と親機200とは無線LANで接続されており、親機200と子機100とは無線LANで接続されているとする。
【0077】
例えば、通信装置10(制御部12)は、スキャン要求を受けた場合、スキャン要求を受けた時刻から遡って所定期間(例えば10秒)内に行われた送受信の内容が今後データ通信を行う可能性が高いことを示す情報であるか否かを判定する。図7に示されるように、通信装置10が備える入力部(図示せず)を介してユーザからスキャン要求を受けた時刻から遡って10秒以内にUDPの受信が2回だけ行われており、送受信の内容が今後データ通信を行う可能性が低いことを示す情報であるため、通信装置10は、スキャン要求に対してフォアグラウンドスキャンを実行する。
【0078】
このように、スキャン要求を受けた時刻から遡って所定期間内に行われた子機100とのデータの送受信の内容が、今後データ通信を行う可能性が低いことを示す情報である場合、フォアグラウンドスキャンをしている間はデータ通信を実行せず、スキャンを優先して実行することができる。
【0079】
例えば、制御部12は、スキャン要求を受けた時刻から遡って所定期間内に送受信が行われておらず、かつ、子機100との間でコネクションが確立されている場合には、今後データ通信が発生する可能性は低いと判定するものの、スキャンの最中にデータ受信ができないリスクを避けて、スキャン要求に対してバックグラウンドスキャンを実行する。
【0080】
ここで、バックグラウンドスキャンを実行するときの通信装置10、親機200、子機100およびユーザの動作について図8を用いて説明する。
【0081】
図8は、バックグラウンドスキャンを実行するときの動作の一例を示すシーケンス図である。
【0082】
例えば、通信装置10と親機200とは無線LANで接続されており、親機200と子機100とは無線LANで接続されているとする。
【0083】
例えば、通信装置10(制御部12)は、スキャン要求を受けた場合、スキャン要求を受けた時刻から遡って所定期間(例えば10秒)内に行われた送受信の内容が今後データ通信を行う可能性が高いことを示す情報であるか否かを判定する。図8に示されるように、最後のデータ送受信から10秒以上経過している場合、通信装置10は、スキャン要求を受けた時刻から遡って所定期間(例えば10秒)内に送受信が行われていないため、今後データ通信が発生する可能性は低いと判定する一方、通信装置10と子機100との間でコネクションが確立されているか否かを判定する。例えば、記憶部13は、子機100とのコネクションの確立の状況について記憶していてもよく、通信装置10は、記憶部13を参照することで、通信装置10と子機100との間でコネクションが確立されているか否かを判定することができる。図8に示されるように、通信装置10と子機100との間でTCPのコネクションが確立されているため、この場合、通信装置10は、スキャン要求に対してバックグラウンドスキャンを実行する。
【0084】
このように、スキャン要求を受けた時刻から遡って所定期間内に子機100とデータの送受信が行われていない場合であっても、子機100との間でコネクションが確立されているときには、データ通信が行われる可能性がある。そこで、バックグラウンドスキャンを実行することで、スキャンするチャネルの切り替わりのタイミングで親機200を介したデータ通信を開始することが可能となっている。なお、スキャン要求を受けた時刻から遡って所定期間内に子機100とデータの送受信が行われていない場合に、子機100との間でコネクションが確立されていないときには、子機100と今後データ通信を行う可能性が低いため、スキャン要求に対してフォアグラウンドスキャンが実行される。
【0085】
このように、子機100と今後データ通信を行う可能性が低い場合に、状況に応じてスキャンの種別を判定して、フォアグラウンドスキャンまたはバックグラウンドスキャンを実行することで、より効率的にデータ通信とスキャンとを両立することができる。
【0086】
以上説明した通り、スキャン要求を受けた時刻から遡って所定期間内に行われた子機100とのデータの送受信の内容には、子機100と今後データ通信を行う可能性が高いか否かを示す情報が含まれ得るため、スキャン要求を受けた時刻から遡って所定期間内に行われた子機100とのデータの送受信の内容に基づいて、子機100と今後データ通信を行う可能性が高いか否かを判定することができる。子機100と今後データ通信を行う可能性が高い場合には、データ通信を優先しつつスキャンの開始のタイミングを調整することができ、子機100と今後データ通信を行う可能性が低い場合には、スキャンを優先することができるため、効率的にデータ通信とスキャンとを両立することができる。
【0087】
(その他の実施の形態)
以上のように、本発明に係る技術の例示として実施の形態を説明した。しかしながら、本発明に係る技術は、これに限定されず、適宜、変更、置き換え、付加、省略などを行った実施の形態にも適用可能である。例えば、以下のような変形例も本発明の一実施の形態に含まれる。
【0088】
例えば、本発明は、通信装置10として実現できるだけでなく、通信装置10を構成する構成要素が行うステップ(処理)を含む通信方法として実現できる。
【0089】
通信方法は、親機200を介して無線通信を行う通信装置10により実行される通信方法であって、通信装置10は、親機200を介して親機200と接続中の機器(子機100)と無線通信を行うための通信部11と、子機100とのデータの送受信の内容を記憶する記憶部13と、を備え、通信方法では、図3に示されるように、通信装置10がスキャンの実行の要求を受けた場合に(ステップS11でYes)、記憶部13に記憶された当該要求を受けた時刻から遡って所定期間内に行われた送受信の内容に基づいて、子機100と今後データ通信を行う可能性が高いか否かを判定するステップ(ステップS12)と、当該判定の結果に基づいて、スキャンの実行を制御するステップ(ステップS13)と、を含む。
【0090】
例えば、本発明は、通信方法に含まれるステップを、コンピュータ(プロセッサ)に実行させるためのプログラムとして実現できる。さらに、本発明は、そのプログラムを記録したCD-ROM等である非一時的なコンピュータ読み取り可能な記録媒体として実現できる。
【0091】
例えば、本発明が、プログラム(ソフトウェア)で実現される場合には、コンピュータのCPU、メモリおよび入出力回路などのハードウェア資源を利用してプログラムが実行されることによって、各ステップが実行される。つまり、CPUがデータをメモリまたは入出力回路などから取得して演算したり、演算結果をメモリまたは入出力回路などに出力したりすることによって、各ステップが実行される。
【0092】
なお、上記実施の形態において、通信装置10に含まれる各構成要素は、専用のハードウェアで構成されるか、各構成要素に適したソフトウェアプログラムを実行することによって実現されてもよい。各構成要素は、CPUまたはプロセッサなどのプログラム実行部が、ハードディスクまたは半導体メモリなどの記録媒体に記録されたソフトウェアプログラムを読み出して実行することによって実現されてもよい。
【0093】
上記実施の形態に係る通信装置10の機能の一部または全ては典型的には集積回路であるLSIとして実現される。これらは個別に1チップ化されてもよいし、一部または全てを含むように1チップ化されてもよい。また、集積回路化はLSIに限るものではなく、専用回路または汎用プロセッサで実現してもよい。LSI製造後にプログラムすることが可能なFPGA(Field Programmable Gate Array)、またはLSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。
【0094】
さらに、半導体技術の進歩または派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて、通信装置10に含まれる各構成要素の集積回路化が行われてもよい。
【0095】
その他、実施の形態に対して当業者が思いつく各種変形を施して得られる形態、本発明の趣旨を逸脱しない範囲で各実施の形態における構成要素および機能を任意に組み合わせることで実現される形態も本発明に含まれる。
【産業上の利用可能性】
【0096】
本発明は、親機(AP)を介して子機同士が通信を行うシステムなどに適用できる。
【符号の説明】
【0097】
1 通信システム
10 通信装置
11 通信部
12 制御部
13 記憶部
100 子機
200 親機
図1
図2
図3
図4
図5
図6
図7
図8