(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-03-17
(45)【発行日】2022-03-28
(54)【発明の名称】情報処理装置、制御方法、情報処理システム、および、制御プログラム
(51)【国際特許分類】
H04L 69/00 20220101AFI20220318BHJP
H04L 12/02 20060101ALI20220318BHJP
【FI】
H04L69/00
H04L12/02
(21)【出願番号】P 2018072322
(22)【出願日】2018-04-04
【審査請求日】2021-02-03
(73)【特許権者】
【識別番号】000233778
【氏名又は名称】任天堂株式会社
(74)【代理人】
【識別番号】110001195
【氏名又は名称】特許業務法人深見特許事務所
(74)【代理人】
【識別番号】100130269
【氏名又は名称】石原 盛規
(72)【発明者】
【氏名】黒瀬 翔
(72)【発明者】
【氏名】庄司 昌弘
(72)【発明者】
【氏名】柴田 崇由
(72)【発明者】
【氏名】延 偉偉
(72)【発明者】
【氏名】竹内 博是
(72)【発明者】
【氏名】近藤 良久
(72)【発明者】
【氏名】松岡 政義
(72)【発明者】
【氏名】井村 慶崇
【審査官】宮島 郁美
(56)【参考文献】
【文献】特開2001-160839(JP,A)
【文献】特開2009-134696(JP,A)
【文献】米国特許第08179792(US,B1)
【文献】特開2006-279821(JP,A)
【文献】特開2005-094628(JP,A)
【文献】韓国公開特許第10-2006-0083051(KR,A)
【文献】国際公開第2008/084541(WO,A1)
【文献】米国特許出願公開第2011/0213992(US,A1)
【文献】特開2007-267337(JP,A)
【文献】特開2004-260432(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04L12/00-13/18,41/00-69/40
G06F13/00
(57)【特許請求の範囲】
【請求項1】
他の装置から無線通信によりパケットを繰返し受信する受信部と、
前記受信部により受信されたパケットを記憶する記憶部と、
所定の情報処理を実行可能であるとともに、少なくとも第1モードと前記第1モードより電力消費の少ない第2モードとの間でモード遷移が可能な情報処理部と、
前記記憶部に記憶されたパケットの数およびパケットのデータ量の少なくとも一方が第1条件を満たした場合に、前記情報処理部を前記第2モードから前記第1モードにモード遷移させるモード管理部と、
前記情報処理部が前記第2モードから前記第1モードにモード遷移した場合に、前記記憶部に記憶されたパケットを読込む読込部とを備え、
前記情報処理部は、前記読込部によるパケットの読込みを含む所定の処理を実行すると、前記第1モードから前記第2モードにモード遷移
し、
前記記憶部は、前記受信部により受信されたパケットのうち所定の第2条件を満たすものを記憶し、
前記第2条件の少なくとも一部は、前記記憶部に記憶されたパケットであって、前記情報処理部により未だ読込まれていないパケットに基づいて定められる、情報処理装置。
【請求項2】
前記第1条件は、受信したパケットの数が所定の数を超えたことを少なくとも含む、請求項1に記載の情報処理装置。
【請求項3】
前記第1条件は、受信したパケットのデータ量が所定のデータ量を超えたことを少なくとも含む、請求項1または2に記載の情報処理装置。
【請求項4】
前記第2条件は、前記受信部により受信されたパケットが所定のフォーマットに合致することを少なくとも含む、請求項
1~3のいずれか1項に記載の情報処理装置。
【請求項5】
前記第2条件の少なくとも一部は、前記受信部により先に受信されたパケットの識別情報に基づいて定められる、請求項
1~4のいずれか1項に記載の情報処理装置。
【請求項6】
前記識別情報は、前記受信部により受信されたパケットを構成するデータを代表する値、および、前記受信部により受信されたパケットを構成するデータの少なくとも一部、の少なくとも一方である、請求項
5に記載の情報処理装置。
【請求項7】
前記受信部により受信されたパケットを構成するデータを代表する値は、当該パケットを構成するデータから算出されるハッシュ値である、請求項
6に記載の情報処理装置。
【請求項8】
前記ハッシュ値は、対象のパケットの送信元において付加される、請求項
7に記載の情報処理装置。
【請求項9】
前記第2条件の少なくとも一部は、前記情報処理部により決定される、請求項
1~
8のいずれか1項に記載の情報処理装置。
【請求項10】
前記第2モードにおいて、前記受信部による受信と前記記憶部による記憶とが繰返し行なわれる、請求項1~
9のいずれか1項に記載の情報処理装置。
【請求項11】
前記読込部は、前記記憶部に記憶されたパケットを読込んだ後、前記記憶部から当該パケットを削除する、請求項1~
10のいずれか1項に記載の情報処理装置。
【請求項12】
前記受信部は、前記他の装置との間で接続を確立せずに、前記パケットを受信する、請求項1~
11のいずれか1項に記載の情報処理装置。
【請求項13】
前記他の装置との間でハンドシェークが実施されない、請求項
12に記載の情報処理装置。
【請求項14】
前記受信部は、受信されたパケットに時間情報を付与する、請求項1~
13のいずれか1項に記載の情報処理装置。
【請求項15】
前記パケットは、ゲームアプリケーションに関するデータを含む、請求項1~
14のいずれか1項に記載の情報処理装置。
【請求項16】
前記情報処理装置には、少なくとも前記受信部を含む、前記情報処理部とは異なる無線処理部が配置されており、
前記情報処理部は、前記無線処理部のプロセッサより消費電力の高いプロセッサを含む、請求項1~
15のいずれか1項に記載の情報処理装置。
【請求項17】
前記情報処理部は、前記第2モードにおいても、前記無線処理部からのモード遷移を指示する信号を検知可能に構成される、請求項
16に記載の情報処理装置。
【請求項18】
前記パケットを他の装置へ送信する送信部をさらに備える、請求項1~
17のいずれか1項に記載の情報処理装置。
【請求項19】
前記モード管理部は、前記受信部により受信されたパケットに前記第2モードへのモード遷移を指示するデータに応答して、前記記憶部に記憶されたパケットのデータ量に依存することなく、前記情報処理部を前記第2モードから前記第1モードにモード遷移させる、請求項1~
18のいずれか1項に記載の情報処理装置。
【請求項20】
他の装置から無線通信によりパケットを繰返し受信する受信部と、前記受信部により受信されたパケットを記憶する記憶部と、所定の情報処理を実行可能であるとともに、少なくとも第1モードと前記第1モードより電力消費の少ない第2モードとの間でモード遷移が可能な情報処理部とを備える情報処理装置における制御方法であって、
前記記憶部に記憶されたパケットの数およびパケットのデータ量の少なくとも一方が第1条件を満たした場合に、前記情報処理部を前記第2モードから前記第1モードにモード遷移させるステップと、
前記第2モードから前記第1モードに遷移した場合に、前記記憶部に記憶されたパケットの読込みを含む所定の処理を実行するステップと、
前記情報処理部が、前記所定の処理の実行後、前記第1モードから前記第2モードにモード遷移するステップと
、
前記受信部により受信されたパケットのうち所定の第2条件を満たすもの前記記憶部に記憶するステップとを備え
、
前記第2条件の少なくとも一部は、前記記憶部に記憶されたパケットであって、前記情報処理部により未だ読込まれていないパケットに基づいて定められる、制御方法。
【請求項21】
第1情報処理装置および第2情報処理装置を備える情報処理システムであって、
前記第1情報処理装置は、
前記第2情報処理装置から無線通信によりパケットを繰返し受信する受信部と、
前記受信部により受信されたパケットを記憶する記憶部と、
所定の情報処理を実行可能であるとともに、少なくとも第1モードと前記第1モードより電力消費の少ない第2モードとの間でモード遷移が可能な情報処理部と、
前記記憶部に記憶されたパケットの数およびパケットのデータ量の少なくとも一方が第1条件を満たした場合に、前記情報処理部を前記第2モードから前記第1モードにモード遷移させるモード管理部と、
前記情報処理部が前記第2モードから前記第1モードにモード遷移した場合に、前記記憶部に記憶されたパケットを読込む読込部とを備え、
前記情報処理部は、前記読込部によるパケットの読込みを含む所定の処理を実行すると、前記第1モードから前記第2モードにモード遷移
し、
前記記憶部は、前記受信部により受信されたパケットのうち所定の第2条件を満たすものを記憶し、
前記第2条件の少なくとも一部は、前記記憶部に記憶されたパケットであって、前記情報処理部により未だ読込まれていないパケットに基づいて定められる、情報処理システム。
【請求項22】
情報処理装置で実行される制御プログラムであって、
前記情報処理装置は、
他の装置から無線通信によりパケットを繰返し受信する受信部を含む無線通信部と、
前記受信部により受信されたパケットを記憶する記憶部と、
所定の情報処理を実行可能であるとともに、少なくとも第1モードと前記第1モードより電力消費の少ない第2モードとの間でモード遷移が可能な情報処理部とを備え、
前記制御プログラムは、前記無線通信部に、前記記憶部に記憶されたパケットの数およびパケットのデータ量の少なくとも一方が第1条件を満たした場合に、前記情報処理部を前記第2モードから前記第1モードにモード遷移させるステップ
と、
前記受信部により受信されたパケットのうち所定の第2条件を満たすもの前記記憶部に記憶するステップとを実行させ、
前記情報処理部は、前記第2モードから前記第1モードに遷移した場合に、前記記憶部に記憶されたパケットの読込みを含む所定の処理を実行し、当該所定の処理の実行後、前記第1モードから前記第2モードにモード遷移
し、
前記第2条件の少なくとも一部は、前記記憶部に記憶されたパケットであって、前記情報処理部により未だ読込まれていないパケットに基づいて定められる、制御プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本技術は、他の装置から無線通信によりパケットを受信できる情報処理装置、その情報処理装置で実行される制御方法、その情報処理装置を含む情報処理システム、および、その情報処理装置で実行される制御プログラムに関する。
【背景技術】
【0002】
情報処理装置の間で無線通信によりデータを交換する技術が知られている。例えば、自端末から所定の位置範囲にある他の通信端末との間でデータの送受信を行なう送受信手段を有する通信端末が知られている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
データを交換するタイミングが装置間で共有されていない場合、予期せぬタイミングでデータが送信されることになる。そのため、情報処理装置は、連続的または定期的にデータの受信待ち状態になる。
【0005】
一方で、電力消費を低減したいというニーズが存在する。特に、携帯型の情報処理装置では、低消費電力化が要求される。
【0006】
本技術は、他の装置から無線通信によりパケットを繰返し受信する構成において、消費電力を低減するための手法を提供する。
【課題を解決するための手段】
【0007】
ある実施の形態に従う情報処理装置は、他の装置から無線通信によりパケットを繰返し受信する受信部と、受信部により受信されたパケットを記憶する記憶部と、所定の情報処理を実行可能であるとともに、少なくとも第1モードと第1モードより電力消費の少ない第2モードとの間でモード遷移が可能な情報処理部と、記憶部に記憶されたパケットの数、パケットのデータ量、および、パケットの内容の少なくともいずれか1つが第1条件を満たした場合に、情報処理部を第2モードから第1モードにモード遷移させるモード管理部と、情報処理部が第2モードから第1モードにモード遷移した場合に、記憶部に記憶されたパケットを読込む読込部とを含む。情報処理部は、読込部によるパケットの読込みを含む所定の処理を実行すると、第1モードから第2モードにモード遷移する。
【0008】
この実施の形態によれば、情報処理部が電力消費の少ない第2モードにある場合であっても、受信部によるパケットの受信が可能である。受信部により受信されて記憶部に記憶されたパケットのデータ量が第1条件に合致すると、情報処理部は、第2モードから第1モードにモード遷移して必要な処理を実行し、再度第2モードへモード遷移する。このような情報処理部におけるモード遷移を利用することで、情報処理装置での消費電力を低減できる。
【0009】
第1条件は、受信したパケットの数が所定の数を超えたことを少なくとも含んでいてもよい。このような構成を採用することで、受信したパケットの数に応じて、第1モードと第2モードとの間のモード遷移を実行できる。
【0010】
第1条件は、受信したパケットのデータ量が所定のデータ量を超えたことを少なくとも含んでいてもよい。このような構成を採用することで、受信したパケットのデータ量に応じて、第1モードと第2モードとの間のモード遷移を実行できる。
【0011】
第1条件は、受信したパケットに所定のデータが含まれていることを少なくとも含んでいてもよい。このような構成を採用することで、受信したパケットの内容に応じて、第1モードと第2モードとの間のモード遷移を実行できる。
【0012】
記憶部は、受信部により受信されたパケットのうち第2条件を満たすものを記憶するようにしてもよい。このような構成を採用することで、記憶部の記憶領域を効率的に使用しつつ、より多くの種類のパケットを記憶できる。
【0013】
第2条件は、受信部により受信されたパケットが所定のフォーマットに合致することを少なくとも含んでもよい。このような構成を採用することで、受信部により受信される多種多様なパケットのうち、必要なパケットのみをより簡単な処理で選別できる。
【0014】
第2条件の少なくとも一部は、受信部により先に受信されたパケットの識別情報に基づいて定められるようにしてもよい。このような構成を採用することで、同一のパケットを重複受信した場合であっても、そのような同一のパケットが記憶部に重複記憶されることを防止できる。
【0015】
識別情報は、受信部により受信されたパケットを構成するデータを代表する値、および、受信部により受信されたパケットを構成するデータの少なくとも一部、の少なくとも一方であってもよい。このような構成を採用することで、受信部により受信されたパケットと同一のパケットを確実に特定できる。
【0016】
受信部により受信されたパケットを構成するデータを代表する値は、当該パケットを構成するデータから算出されるハッシュ値であってもよい。このような構成を採用することで、同一のパケットであるか否かを判断する処理を簡素化できる。
【0017】
ハッシュ値は、対象のパケットの送信元において付加されていてもよい。このような構成を採用することで、受信側でパケットの同一性の処理をより高速化できるとともに、受信されたパケット自体の正当性なども判断できる。
【0018】
第2条件の少なくとも一部は、記憶部に記憶されたパケットであって、情報処理部により未だ読込まれていないパケットに基づいて定められてもよい。このような構成を採用することで、時間的に近接したタイミングで受信される同一のパケットの重複記憶を防止できる。
【0019】
第2条件の少なくとも一部は、情報処理部により決定されるようにしてもよい。このような構成を採用することで、情報処理部において実行される所定の情報処理の結果を反映して、記憶すべきパケットを決定できる。
【0020】
第2モードにおいて、受信部による受信と記憶部による記憶とが繰返し行なわれてもよい。このような構成を採用することで、連続的なパケットの受信を実現できる。
【0021】
読込部は、記憶部に記憶されたパケットを読込んだ後、当該記憶部から当該パケットを削除するようにしてもよい。このような構成を採用することで、限られた記憶容量で連続的なパケットの受信を実現できる。
【0022】
受信部は、他の装置との間で接続を確立せずに、パケットを受信するようにしてもよい。このような構成を採用することで、データ伝送に係る処理を簡素化でき、その結果、パケットの送受信に必要な時間を短縮できる。
【0023】
他の装置との間でハンドシェークが実施されないようにしてもよい。このような構成を採用することで、パケットの送受信に必要な時間をさらに短縮できる。
【0024】
受信部は、受信されたパケットに時間情報を付与するようにしてもよい。このような構成を採用することで、情報処理部が事後的に受信されたパケットを処理する場合であっても、処理対象の各パケットが実際に受信されたタイミングを知ることができ、受信タイミングなどが必要となる情報処理も実現できる。
【0025】
パケットは、ゲームアプリケーションに関するデータを含むようにしてもよい。このような構成を採用することで、本実施の形態に従う情報処理装置をゲームアプリケーションへも応用できる。
【0026】
情報処理装置には、少なくとも受信部を含む、情報処理部とは異なる無線処理部が配置されていてもよく、情報処理部は、無線処理部より消費電力が高くてもよい。このような構成を採用することで、パケットの受信は、比較的電力消費の少ない無線処理部に担当させるとともに、比較的電力消費の大きい情報処理部には、必要な期間のみ、受信されたパケットをまとめて処理するような使用形態が可能となる。
【0027】
情報処理部は、第2モードにおいても、無線処理部からのモード遷移を指示する信号を検知可能に構成されてもよい。このような構成を採用することで、情報処理部は、どのようなタイミングであっても、無線処理部からのモード遷移を指示する信号が与えられると、第2モードから第1モードにモード遷移できる。
【0028】
情報処理装置は、パケットを他の装置へ送信する送信部をさらに含んでいてもよい。情報処理装置の送信部がパケットを他の装置へ送信することで、情報処理装置間で双方向のデータ交換が可能となる。
【0029】
モード管理部は、受信部により受信されたパケットに第2モードへのモード遷移を指示するデータに応答して、記憶部に記憶されたパケットのデータ量に依存することなく、情報処理部を第2モードから第1モードにモード遷移させるようにしてもよい。このような構成を採用することで、情報処理部に任意のタイミングで何らかの処理を実行させたいという要求を実現できる。
【0030】
別の実施の形態に従えば、他の装置から無線通信によりパケットを繰返し受信する受信部と、受信部により受信されたパケットを記憶する記憶部と、所定の情報処理を実行可能であるとともに、少なくとも第1モードと第1モードより電力消費の少ない第2モードとの間でモード遷移が可能な情報処理部とを含む情報処理装置における制御方法が提供される。制御方法は、憶部に記憶されたパケットの数、パケットのデータ量、および、パケットの内容の少なくともいずれか1つが第1条件を満たした場合に、情報処理部を第2モードから第1モードにモード遷移させるステップと、第2モードから第1モードに遷移した場合に、記憶部に記憶されたパケットの読込みを含む所定の処理を実行するステップと、情報処理部が、所定の処理の実行後、第1モードから第2モードにモード遷移するステップとを含む。
【0031】
さらに別の実施の形態に従えば、第1情報処理装置および第2情報処理装置を備える情報処理システムが提供される。第1情報処理装置は、第2情報処理装置から無線通信によりパケットを繰返し受信する受信部と、受信部により受信されたパケットを記憶する記憶部と、所定の情報処理を実行可能であるとともに、少なくとも第1モードと第1モードより電力消費の少ない第2モードとの間でモード遷移が可能な情報処理部と、記憶部に記憶されたパケットの数、パケットのデータ量、および、パケットの内容の少なくともいずれか1つが第1条件を満たした場合に、情報処理部を第2モードから第1モードにモード遷移させるモード管理部と、情報処理部が第2モードから第1モードにモード遷移した場合に、記憶部に記憶されたパケットを読込む読込部とを含む。情報処理部は、読込部によるパケットの読込みを含む所定の処理を実行すると、第1モードから第2モードにモード遷移する。
【0032】
さらに別の実施の形態に従えば、情報処理装置で実行される制御プログラムが提供される。情報処理装置は、他の装置から無線通信によりパケットを繰返し受信する受信部を含む無線通信部と、受信部により受信されたパケットを記憶する記憶部と、所定の情報処理を実行可能であるとともに、少なくとも第1モードと第1モードより電力消費の少ない第2モードとの間でモード遷移が可能な情報処理部とを含む。制御プログラムは、無線通信部に、記憶部に記憶されたパケットの数、パケットのデータ量、および、パケットの内容の少なくともいずれか1つが第1条件を満たした場合に、情報処理部を第2モードから第1モードにモード遷移させるステップを実行させる。情報処理部は、第2モードから第1モードに遷移した場合に、記憶部に記憶されたパケットの読込みを含む所定の処理を実行し、当該所定の処理の実行後、第1モードから第2モードにモード遷移する。
【発明の効果】
【0033】
本技術によれば、他の装置から無線通信によりパケットを繰返し受信する構成において、消費電力を低減できる。
【図面の簡単な説明】
【0034】
【
図1】本実施の形態に従う情報処理システムの概要を説明するための図である。
【
図2】本実施の形態に従う情報処理装置のハードウェア構成の一例を示す模式図である。
【
図3】本実施の形態に従う情報処理装置におけるパケットの送受信手順の一例を説明するための図である。
【
図4】本実施の形態に従う情報処理システムにおけるデータ交換手順の一例を説明するための図である。
【
図5】本実施の形態に従う情報処理装置における動作モードの管理を実現するための機能構成の一例を示す模式図である。
【
図6】本実施の形態に従う情報処理装置における動作モードの管理の一例を説明するタイムチャートである。
【
図7】本実施の形態に従う情報処理装置が送信するパケットのデータフォーマットの一例を示す模式図である。
【
図8】本実施の形態に従う情報処理装置における受信パケットに対するフィルタ処理の一例を示す模式図である。
【
図9】本実施の形態に従う情報処理装置における受信パケットに対するフィルタ処理を実現するための構成例を示す模式図である。
【
図10】本実施の形態に従う情報処理装置におけるパケットの送受信に係る処理手順を示すフローチャートである。
【
図11】本実施の形態に従う情報処理装置の記憶部に記憶される受信パケットのデータ構造の一例を示す模式図である。
【発明を実施するための形態】
【0035】
本実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰返さない。
【0036】
[A.情報処理システム]
まず、本実施の形態に従う情報処理システム1の概略について説明する。
【0037】
図1は、本実施の形態に従う情報処理システム1の概要を説明するための図である。
図1を参照して、情報処理システム1は、無線通信によりデータ交換可能な複数の情報処理装置100-1,100-2,100-3,・・・(以下、「情報処理装置100」とも総称する。)を含む。
【0038】
情報処理装置100-1,100-2,100-3,・・・の各々は、自装置が保持している情報を含むパケット300を周期的または任意のイベント毎に送信する。情報処理装置100の各々は、1または複数のパケット300を受信することになる。
【0039】
パケット300は、典型的には、ブロードキャストの形で送信される。但し、パケット300の送信方式は、ブロードキャストに限られず、マルチキャストでもよいし、何らかの方法で送信先の情報処理装置100が特定できる場合には、ユニキャストでもよい。
【0040】
また、情報処理装置100-1,100-2,100-3,・・・の各々は、パケット300を受信する受信待ち状態にもなる。この受信待ち状態の期間(以下、「受信待ち期間」とも称す。)において、いずれかの情報処理装置100からのパケット300が到来すると、パケット300が受信されることになる。
【0041】
図1に示すような情報処理システム1は、不特定多数のユーザ間で任意の情報を交換するようなアプリケーションに適用可能である。このようなアプリケーションの一例として、ゲームアプリケーションなどが想定される。この場合には、各情報処理装置100が送受信するパケットは、ゲームアプリケーションに関するデータを含むことになる。
【0042】
別の一例として、例えば、任意のクーポンなどを配布するようなアプリケーションなどにも適用できる。この場合いは、各情報処理装置100が送受信するパケットは、クーポンに関するデータを含むことになる。
【0043】
本明細書において、「パケット」との用語は、それぞれの情報処理装置100が送信する任意のパケットを包含するものであり、後述するようなデータフォーマットを有するパケットに加えて、他のデータフォーマットを有するパケットを含み得る。
【0044】
情報処理装置100が利用する無線通信としては、例えば、IEEE802.11規格に従う無線LAN(Local Area Network)や、Bluetooth(登録商標)などを用いることができる。但し、後述するように、本実施の形態に従う情報処理システム1においては、情報処理装置100の間でパケット300が交換される際には、ハンドシェークなどの手続きは行なわれない。
【0045】
本実施の形態に従う情報処理システム1は、どのようなアプリケーションにも適用できるが、典型例として、ゲームシステムとして実装できる。このような実装においては、情報処理装置100は、ゲーム装置と呼ぶこともできる。但し、情報処理装置100は、ゲーム装置に限らず、スマートフォンやタブレットなどの携帯デバイスを用いて実現することもできる。
【0046】
なお、
図1に示す情報処理システム1を構成する情報処理装置100は、予め定められている場合だけではなく、パケットを送受信できる機能を有する情報処理装置100が互いに通信可能な範囲に存在することで、自律的に構成される場合もある。本発明の技術的範囲は、任意の情報処理装置100が自律的に構成する情報処理システム1も包含し得るものである。
【0047】
[B.情報処理装置]
次に、本実施の形態に従う情報処理システム1を構成する情報処理装置100の概要について説明する。
【0048】
図2は、本実施の形態に従う情報処理装置100のハードウェア構成の一例を示す模式図である。
図2を参照して、情報処理装置100は、主制御部110と、無線通信部120と、操作部102と、インジケータ104と、ディスプレイ106と、スピーカ108と、バッテリ140とを含む。
【0049】
主制御部110は、情報処理装置100における処理全体を制御する主体であり、アプリケーションプロセッサとも称される。主制御部110は、主要なコンポーネントとして、プロセッサ112と、メインメモリ114と、不揮発性メモリ116とを含む。
【0050】
プロセッサ112は、CPU(Central Processing Unit)やGPU(Graphical Processing Unit)などからなり、不揮発性メモリ116に記憶されたプログラムをメインメモリ114に展開して実行する。メインメモリ114は、DRAM(Dynamic Random Access Memory)やSRAM(Static Random Access Memory)などで構成され、データを揮発的に保持する。不揮発性メモリ116は、フラッシュメモリやEEPROM(Electrically Erasable Programmable Read-Only Memory)などで構成され、データを不揮発的に保持する。不揮発性メモリ116には、典型的には、情報処理装置100における基本機能を提供する制御プログラム130と、任意のゲームや情報処理を実現するためのアプリケーションプログラム132と、無線通信部120によって受信されたパケット(以下、「受信パケット」とも称す。)を含む受信データ134とが記憶される。受信データ134は、1または複数の受信パケットの内容を含み、アプリケーションプログラム132などから適宜利用される。
【0051】
主制御部110は、上述したコンポーネントを含むシステムLSI(Large Scale Integration)として実装してもよい。この場合、それぞれのコンポーネントを一体化した、SoC(System-on-a-Chip)の形で実装してもよい。
【0052】
無線処理部に相当する無線通信部120は、他の装置から無線通信によりパケット300を繰返し受信するとともに、パケット300を他の装置へ送信する機能を有する。無線通信部120は、典型的な動作状態として、(1)データを送信する送信状態、(2)データを受信する受信状態、(3)データの送信および受信を行なう送受信状態、(4)送信および受信のいずれも行なわないパワーセーブ状態を取り得る。無線通信部120は、主要なコンポーネントとして、無線モジュール122と、無線コントローラ124と、バッファメモリ128とを含む。
【0053】
無線モジュール122は、電気的に接続されたアンテナ123を介して、他の情報処理装置100との間で無線信号を送受信する回路であり、受信回路122RXおよび送信回路122TXを含む。受信回路122RXが他の装置から無線通信によりパケットを繰返し受信する受信部に相当し、送信回路122TXがパケットを他の装置へ送信する送信部に相当する。なお、受信部としては、無線モジュール122だけではなく、アンテナ123も含み得る。
【0054】
無線モジュール122は、基本的には、予め用意された複数のチャネルのうち任意の1つのチャネルを利用してパケットを送受信する。パケットの送信に用いるチャネルとパケットの受信に用いるチャネルとは同一であってもよいし、異なっていてもよい。また、必要に応じて、複数のチャネルを同時に使用するようにしてもよい。
【0055】
より具体的には、無線モジュール122は、高周波発生回路、変調回路、復調回路、符号化回路などを含む。無線モジュール122は、実装される通信方式に応じて、適切な周波数や変調方式を実現するための構成が採用される。
【0056】
無線コントローラ124は、プロセッサ126が制御プログラムであるファームウェア127を実行することで、無線モジュール122での無線信号の送受信を制御する。なお、無線コントローラ124により実行される処理の全部または一部を、プロセッサ126に代えて、ASIC(Application Specific Integrated Circuit)やFPGA(Field-Programmable Gate Array)などの回路を用いて実装してもよい。
【0057】
バッファメモリ128は、無線モジュール122から送出されるデータ(パケット300)および無線モジュール122にて受信されたデータ(受信パケット)を一時的に記憶する。バッファメモリ128は、典型的には、FIFO(First-In First-Out)メモリなどを用いて実装され、バッファメモリ128との間のデータの書込みおよび読込みについては、無線コントローラ124および主制御部110によって制御される。
【0058】
図2に示す構成においては、無線通信部120の一部としてバッファメモリ128を実装する例を示すが、これに限らず、バッファメモリ128に相当する機能を主制御部110内に配置してもよいし、主制御部110および無線通信部120以外の部位に配置してもよい。また、主制御部110内にバッファメモリ128に相当する機能を実装する場合には、メインメモリ114または不揮発性メモリ116の一部の領域をバッファメモリとして用いてもよい。
【0059】
このように、無線処理部としての無線通信部120は、受信部に相当する無線モジュール122を含む。また、基本的には、情報処理部に相当する主制御部110は、無線通信部120より消費電力(単位時間当たりに消費される電力量(W))が高い。
【0060】
操作部102は、ユーザ操作を受け付け、そのユーザ操作の内容を示す情報を主制御部110へ出力する。典型的には、操作部102は、押ボタン、操作レバー、タッチパネル、マウスなどを含む。あるいは、操作部102としては、情報処理装置100とは別体の、有線または無線で接続されるコントローラを含むようにしてもよい。
【0061】
インジケータ104は、情報処理装置100の表面に露出して配置され、主制御部110からの指令に従って、ユーザに対して視覚的な態様で通知を行なう。典型的には、インジケータ104は、LED(Light Emitting Diode)などを含む。
【0062】
ディスプレイ106は、情報処理装置100の主面などに配置され、主制御部110からの指令に従って、任意の画像を表示する。ディスプレイ106は、典型的には、LCD(Liquid Crystal Display)などからなる。
【0063】
スピーカ108は、情報処理装置100の表面に部分的に露出して配置され、主制御部110からの指令に従って、ユーザに対して聴覚的な態様で通知を行なう。
【0064】
バッテリ140は、主制御部110および無線通信部120などに電力を供給する。後述するように、主制御部110は、通常の処理を実行できる動作モード(以下、「通常モード」とも称す。)と、通常モードより電力消費の少ない動作モード(以下、「省電力モード」とも称す。)とを切り替え可能になっている。主制御部110が省電力モードの場合には、通常モードにおいて主制御部110に供給される電力より少ない電力が主制御部110に供給されることになる。
【0065】
なお、「省電力モード」は、例えば、待機モードまたはスリープモードといった呼び方をすることができる。本発明は、電力消費の異なる2つの動作モードを有する任意の装置あるいは任意のシステムに対して、適用可能である。
【0066】
典型例として、以下の説明においては、主制御部110が一体として省電力モードにモード遷移する例を示すが、主制御部110の一部(典型的には、プロセッサ112)だけが通常モードより電力消費の少ない動作モードに遷移した場合についても、本発明の「省電力モード」の概念に含まれ得る。
【0067】
一方、無線通信部120は、バッテリ140からの電力を受けて、無線信号の送受信が可能な状態が維持される。但し、送信期間と受信期間(あるいは、受信待ち期間)とは、周期的に切り替えられるため、送信または受信が可能な状態が常に継続しているとは限らない。
【0068】
[C.パケットの送受信手順]
本実施の形態に従う情報処理システム1において、情報処理装置100の各々は、周期的にパケット300を送信(ブロードキャスト)する。パケット300を送信した情報処理装置100に近接した位置に存在する他の情報処理装置100が、その送信されたパケット300を受信することで、パケット300の送信が成功する。
【0069】
図3は、本実施の形態に従う情報処理装置100におけるパケット300の送受信手順の一例を説明するための図である。
図3を参照して、情報処理装置100の各々は、予め定められた送信周期T1毎にパケット300を送信(ブロードキャスト)する。なお、各送信周期におけるパケット300の送信は、複数回実施されてもよい。すなわち、同一のパケット300がバースト的に複数回送信されてもよい。
【0070】
また、情報処理装置100の各々は、パケット300を送信していない期間において、他の情報処理装置100からのパケット300を待ち受ける(受信待ち)の状態となる(受信待ち期間DT)。この受信待ち期間DTは、受信周期T2毎に設けられてもよい。
【0071】
例えば、送信周期T1は100[msec]に設定され、受信周期T2は送信周期T1の数10倍(例えば、3[sec])に設定されてもよい。
【0072】
このように、パケット300の送信およびパケット300の待ち受けを間欠的に行なうことで、情報処理装置100の無線通信部120における消費電力を低減できる。
【0073】
図4は、本実施の形態に従う情報処理システム1におけるデータ交換手順の一例を説明するための図である。
図4には、情報処理装置100-1および情報処理装置100-2が互いに通信可能な範囲に存在している例を示す。
【0074】
情報処理装置100-1は、時刻t1,t2,t3,t4,・・・においてパケット300を送信するとともに、時刻t2におけるパケット300の送信後から時刻t3までの期間において、パケット300を受信する。
【0075】
一方、情報処理装置100-2は、時刻t1’,t2’,t3’,・・・においてパケット300を送信するとともに、時刻t1’におけるパケット300の送信後から時刻t2’までの期間において、他の情報処理装置100からのパケット300を受信する。
【0076】
図4に示す例においては、情報処理装置100-1が時刻t2においてパケット300を送信する際、情報処理装置100-2はパケット300の受信待ち状態となっているので、情報処理装置100-1から送信されたパケット300が情報処理装置100-2により受信される。
【0077】
また、情報処理装置100-2が時刻t2’においてパケット300を送信する際、情報処理装置100-1はパケット300の受信待ち状態となっているので、情報処理装置100-1から送信されたパケット300が情報処理装置100-2により受信される。
【0078】
図4に示すように、情報処理装置100の各々は、各装置独自のタイミングでパケット300を送信および受信する。また、情報処理装置100の間では、送信周期および受信周期が厳密には同一ではないので、一方の情報処理装置100がパケット300を送信するタイミングにおいて、他方の情報処理装置100が受信待ち状態になっていれば、パケット300の送信が成功する。
【0079】
図4に示すように、情報処理システム1においては、情報処理装置100の各々がパケットを送信し、受信待ち状態のいずれかの情報処理装置100がそのパケットを受信すれば、パケットを成功裡に伝送できる。このように、情報処理装置100を構成する無線通信部120の受信部1202(無線モジュール122)は、他の情報処理装置100との間で接続を確立することなく、パケットを受信できる。このような情報処理装置100間の接続を不要としたプロトコルを採用することで、シンプルかつ高速なデータ交換を実現できる。すなわち、次回の通信イベントのタイミングを互いに調整しなくてもよい(依然、次回の通信がいつ送信先から到来するのかは分からない状態)ので、接続手順を簡素化できる。
【0080】
本実施の形態において採用されるプロトコルでは、情報処理装置100を構成する無線通信部120の受信部1202(無線モジュール122)は、パケットを受信しても、応答を送信しないようになっている。
【0081】
本実施の形態に従う情報処理システム1においては、情報処理装置100の間におけるハンドシェークが必要とされないので、情報処理装置100間におけるパケット300の送信および受信のタイミングさえ合えば、パケット300を即座に伝送できる。
【0082】
[D.動作モード管理]
次に、本実施の形態に従う情報処理システム1を構成する情報処理装置100における動作モードの管理について説明する。
【0083】
本実施の形態に従う情報処理装置100は、主制御部110と無線通信部120とを有している(
図2など参照)。主制御部110は、無線通信部120に比較して消費電力が大きい。そのため、データ交換に係るパケット300の送信処理および受信処理(受信待ち)は、主として、無線通信部120が担当し、主制御部110は、必要に応じて情報処理を実行するものの、情報処理の実行が必要ない期間においては、省電力モードを維持する。このように、主制御部110の動作モードを適切に管理することで、情報処理装置100全体としての消費電力を低減できる。
【0084】
図5は、本実施の形態に従う情報処理装置100における動作モードの管理を実現するための機能構成の一例を示す模式図である。
【0085】
図5を参照して、主制御部110は、情報処理部に相当し、所定の情報処理を実行可能であるとともに、少なくとも、通常モード(第1モード)と通常モードより電力消費の少ない省電力モード(第2モード)との間でモード遷移が可能である。
【0086】
主制御部110は、その機能構成として、データ読込部1102と、データ処理部1104とを含む。データ読込部1102およびデータ処理部1104は、典型的には、プロセッサ112が制御プログラム130および/またはアプリケーションプログラム132(いずれも
図2参照)を実行することで実現される。
【0087】
無線通信部120は、その機構構成として、受信部1202と、記憶部1204と、モード管理部1208とを含む。典型的には、受信部1202は、無線モジュール122によって実現され、記憶部1204は、バッファメモリ128によって実現され、モード管理部1208は、無線コントローラ124がファームウェア127を実行することで実現される。
【0088】
受信部1202は、他の情報処理装置100から無線通信によりパケット300を繰返し受信する。記憶部1204は、受信部1202により受信された受信パケット1206を累積的に記憶する。すなわち、記憶部1204は、予め定められた上限数までの受信パケット1206を蓄積する。そして、記憶部1204に蓄積された受信パケット1206が上限数まで到達すると、一部または全部の受信パケット1206が削除されてもよい。
【0089】
特に、省電力モードである場合には、主制御部110は、受信されたパケットを即座に処理できないので、当該受信されたパケットは、受信パケット1206として記憶部1204に蓄積される。このように、省電力モードにおいて、受信部1202による受信と記憶部1204による記憶とが繰返し行なわれる。
【0090】
モード管理部1208は、記憶部1204に記憶された受信パケット1206の数、受信パケット1206のデータ量、および、受信パケット1206の内容の少なくともいずれか1つが所定の第1条件を満たした場合に、主制御部110を省電力モードから通常モードにモード遷移させる。
【0091】
典型的には、第1条件は、受信パケット1206の数が所定の数を超えたことを少なくとも含む。すなわち、モード管理部1208は、受信パケット1206の数が所定の数を超えた場合に、主制御部110を省電力モードから通常モードにモード遷移させる。受信パケット1206の数は、記憶されている受信パケット1206の数に相当する。
【0092】
別の典型例として、第1条件は、受信パケット1206のデータ量が所定のデータ量を超えたことを少なくとも含む。すなわち、モード管理部1208は、受信パケット1206のデータ量が所定のデータ量を超えた場合に、主制御部110を省電力モードから通常モードにモード遷移させる。受信パケット1206のデータ量は、記憶されている(1または複数の)受信パケット1206のデータ総量に相当する。受信パケット1206の内容は、記憶されている受信パケット1206のコンテンツに相当する。
【0093】
より具体的には、モード管理部1208は、記憶部1204に記憶された受信パケット1206のデータ量が第1条件を満たすと、主制御部110に対して復帰指令を与える。主制御部110は、無線通信部120からの復帰指令に応答して、省電力モードから通常モードにモード遷移する。
【0094】
なお、受信したパケットの数(所定個数のパケットを受信したかどうか)に応じて、主制御部110を復帰させてもよい。
【0095】
このような復帰指令としては、任意の割込信号を用いることができる。このような割込信号としては、例えば、GPIO(General-Purpose Input/Output)を利用した割込信号、PCI(Peripheral Component Interconnect)Expressにおいて用意される割込信号(INTx)、USB(Universal Serial Bus)において用意される割込信号などを用いることができる。主制御部110は、省電力モードにおいても、このような割込信号の検知は可能になっている。すなわち、主制御部110は、省電力モードにおいても、無線通信部120からのモード遷移を指示する信号(復帰指令または割込信号)を検知可能に構成されている。
【0096】
主制御部110は、省電力モードから通常モードに遷移した場合に、記憶部1204に記憶された受信パケット1206のデータ読込部1102による読込みを含む所定の処理を実行し、当該所定の処理の実行後、通常モードから省電力モードにモード遷移する。より具体的には、主制御部110のデータ読込部1102が記憶部1204へアクセスして、記憶部1204に記憶されている受信パケット1206を読込むとともに、データ処理部1104がデータ読込部1102により読込まれた受信パケット1206を処理する。
【0097】
このとき、主制御部110は、記憶部1204に記憶されている読込んだ受信パケット1206を削除するようにしてもよい。すなわち、主制御部110のデータ読込部1102は、記憶部1204に記憶されたパケットを読込んだ後、記憶部1204から当該読込んだパケットを削除するようにしてもよい。
【0098】
このように、データ読込部1102は、主制御部110が省電力モードから通常モードにモード遷移した場合に、記憶部1204に記憶された受信パケット1206を読込む。データ処理部1104により処理された受信パケット1206は、基本的には、記憶部1204から削除される。その後、主制御部110は、自動的に通常モードから省電力モードに遷移する。すなわち、主制御部110の省電力モードへ戻る処理は、ユーザからの操作などは必要とせず、必要な処理が完了したことを条件に、自律的に実行されることになる。
【0099】
データ処理部1104によって実行される読込まれた受信パケット1206に対する処理は、特に限定されるものではなく、任意の処理を採用可能である。さらに、データ処理部1104においては、読込まれた受信パケット1206に対する処理だけではなく、他の処理も付加的に実行するようにしてもよい。そして、データ処理部1104による処理が完了すると、情報処理装置100は省電力モードに戻り、無線通信部120からの復帰指令を待つことになる。
【0100】
なお、
図5においては、記憶部1204を無線通信部120の一部として構成した例を示すが、主制御部110の一部として構成してもよいし、無線通信部120および主制御部110とは独立して構成してもよい。
【0101】
また、
図5においては、データ読込部1102を主制御部110の一部として構成した例を示すが、無線通信部120の一部として構成してもよいし、無線通信部120および主制御部110とは独立して構成してもよい。
【0102】
図6は、本実施の形態に従う情報処理装置100における動作モードの管理の一例を説明するタイムチャートである。
図6を参照して、無線通信部120は、周期的に受信待ち状態になる。この受信待ち状態において、他の情報処理装置100からパケット300が到来すると、その到来したパケット300が受信されて、受信パケット1206として記憶部1204に記憶される。
【0103】
記憶部1204には、受信部1202により受信された受信パケット1206が順次記憶される。
【0104】
受信部1202に記憶された受信パケット1206のデータ量が第1条件を満たすと、無線通信部120(モード管理部1208)は、主制御部110に対して、復帰指令400を与える。なお、後述するように、受信パケット1206を記憶するための複数の領域が予め用意されている場合には、当該複数の領域のうち、受信パケット1206が既に記憶されている領域の数(すなわち、予め用意されている記憶領域のうち、いくつの記憶領域が既に使用されているか)に基づいて、復帰指令400を与えるか否かを判断してもよい。
【0105】
このように、本発明における「記憶部1204に記憶されたパケットのデータ量に基づく」とは、記憶部1204に記憶されている受信パケット1206のデータ総量(数値)を用いて判断する場合に加えて、記憶されている受信パケット1206の数を用いて判断する場合を含む概念である。
【0106】
主制御部110は、復帰指令400に応答して、省電力モードから通常モードにモード遷移する。そして、主制御部110(データ読込部1102およびデータ処理部1104)は、記憶部1204に記憶されている受信パケット1206のデータ読込部1102による読込処理402を含む所定の処理を実行する。読込処理402を含む所定の処理の実行が完了すると(処理完了404)、主制御部110は、通常モードから元の省電力モードに戻る。
【0107】
本実施の形態に従う情報処理装置100においては、無線通信部120は、パケット300の送受信を連続的に実行するとともに、主制御部110は、無線通信部120により受信パケット1206に対する処理を間欠的に実行する。このような主制御部110および無線通信部120における動作を採用することで、パケット300の送受信を継続させつつ、主制御部110を必要な期間のみ動作させることで、情報処理装置100全体として消費電力を低減できる。
【0108】
[E.パケットのデータフォーマット]
次に、情報処理装置100が送信するパケット300のデータフォーマットの一例について説明する。
【0109】
図7は、本実施の形態に従う情報処理装置100が送信するパケット300のデータフォーマットの一例を示す模式図である。
図7を参照して、パケット300のデータフォーマットは、主として、802.11ヘッダ302と、アクションフレーム定義部310と、ベンダー定義部320と、ペイロード部330とを含む。
【0110】
本実施の形態に従う情報処理装置100は、IEEE802.11規格に従ってパケットを送受信する。そのため、パケット300の802.11ヘッダ302には、IEEE802.11規格により規定されたヘッダ情報が格納される。
【0111】
アクションフレーム定義部310には、パケット300がIEEE802.11規格において規定されたアクションフレームであることを示す情報が格納される。パケット300はベンダー定義の独自フレームであり、アクションフレーム定義部310には、ベンダー定義の独自フレームであることを示す情報(OUI(Organizationally Unique Identifier)とも称される。)が格納される。より具体的には、アクションフレーム定義部310は、OUIタイプエリア312と、OUIエリア314と、OUIサブタイプエリア316とを含む。
【0112】
ベンダー定義部320は、本実施の形態に従うデータ交換に必要な情報が格納される。より具体的には、ベンダー定義部320は、バージョンエリア322と、コマンドエリア324と、ハッシュ値エリア326とを含む。バージョンエリア322には、本実施の形態に従うデータ交換プロトコルの互換性を確保するための識別情報が格納される。コマンドエリア324には、送信されるパケット300の種別を示す情報などが格納される。ハッシュ値エリア326には、パケット300を識別するための識別情報としてのハッシュ値が格納される。ハッシュ値エリア326に格納されるハッシュ値は、ペイロード部330に格納されるペイロード(実体データ)から算出される。ハッシュ値エリア326に格納されるハッシュ値は、パケット300の送信元の情報処理装置100において予め算出される。
【0113】
なお、パケット300を識別できればよいので、識別情報(ハッシュ値)としては、上述の内容とは異なり、ペイロード(実体データ)に依存しないユニークな情報を用いてもよい。
【0114】
ペイロード部330には、パケット300が搬送するデータの実体が格納される。
[F.受信パケットに対するフィルタ処理]
本実施の形態に従う情報処理システム1においては、各情報処理装置100は、パケットを周期的に送信する。そして、いずれかの情報処理装置100の受信待ち期間において、送信されたパケットが到来すれば、当該パケットは受信されることになる。このような通信手順を採用している関係上、同一の情報処理装置100からの同一のパケットが複数回にわたって受信されることもある。
【0115】
そこで、本実施の形態においては、情報処理装置100により受信されたパケットのうち、所定の第2条件を満たすパケットのみを記憶部1204に記憶することが好ましい。このような第2条件を満たすパケットのみを選択的に記憶する処理を、以下では、「フィルタ処理」とも称す。また、第2条件を「フィルタ条件」とも称す。以下、受信パケットにするフィルタ処理について説明する。
【0116】
図8は、本実施の形態に従う情報処理装置100における受信パケットに対するフィルタ処理の一例を示す模式図である。
図8を参照して、例えば、情報処理装置100の受信部1202が複数のパケット(パケット01,パケット02,パケット03,・・・)を時系列に受信したとする。
【0117】
本実施の形態に従う情報処理装置100におけるフィルタ処理の典型例としては、受信された複数のパケットのうち、先に受信されたパケットと同一ではないパケットのみを記憶部1204に記憶するといったフィルタ条件が想定される。すなわち、受信された複数のパケットのうち、先に受信されたパケットと同一のパケットについては、記憶部1204の記憶対象からは除外するような条件が想定される。
【0118】
このようなフィルタ条件を採用した場合には、
図8に示すように、同一のパケットを含む複数のパケットが受信されたとしても、ユニークなパケット(
図8に示す例では、パケット01、パケット02、パケット03の3種類)のみが記憶部1204に記憶されることになる。すなわち、フィルタ処理を適用することで、記憶領域が限られている場合であっても、より多くの種類の受信パケットを記憶できる。
【0119】
このように、情報処理装置100の記憶部1204は、受信部1202により受信されたパケットのうちフィルタ条件を満たすものを記憶する。
【0120】
図9は、本実施の形態に従う情報処理装置100における受信パケットに対するフィルタ処理を実現するための構成例を示す模式図である。
【0121】
図9を参照して、無線通信部120は、フィルタ処理部1210および論理スイッチ1212とをさらに含む。フィルタ処理部1210および論理スイッチ1212は、無線コントローラ124のプロセッサ126がファームウェア127を実行することで実現される。
【0122】
主制御部110は、データ読込部1102およびデータ処理部1104に加えて、記憶部1106を含む。記憶部1106は、メインメモリ114および/または不揮発性メモリ116(
図2)によって実現される。記憶部1106には、第2ハッシュ値群1226を含むハッシュ値テーブルが設けられている。
【0123】
フィルタ処理部1210は、受信部1202により受信されたパケットがフィルタ条件を満たすか否かを判断するとともに、フィルタ条件が満たされていると判断すると、論理スイッチ1212をアクティブ化して、受信部1202と記憶部1204とを論理的に結合する。これによって、受信部1202により受信されたパケットは記憶部1204に記憶される。
【0124】
記憶部1204には、受信パケットバッファ1220と、ハッシュ値テーブル1222とが設けられている。受信パケットバッファ1220は、受信されたパケットを一時的に記憶する。ハッシュ値テーブル1222には、フィルタ条件の一例として使用される、パケットに含まれる実体データから算出されるハッシュ値が含まれる。ハッシュ値は、受信されたパケットを識別するための識別情報の一例であり、パケットを構成するデータを代表する値に相当する。
【0125】
本実施の形態においては、受信部1202により受信されたパケットを構成するデータを代表する値として、当該パケットを構成するデータから算出されるハッシュ値が用いられる。但し、ハッシュ値に限らず、受信されたパケットを他のパケットと識別できる情報であれば、どのような種類の情報を識別情報として用いてもよい。例えば、受信されたパケットに含まれる実体データの一部または全部そのものを識別情報として用いてもよい。
【0126】
このように、識別情報としては、受信部1202により受信されたパケットを構成するデータを代表する値(この例では、ハッシュ値)を用いてもよいし、受信部1202により受信されたパケットを構成するデータの少なくとも一部をそのまま用いてもよい。
【0127】
上述の
図7を用いて説明したように、各情報処理装置100から送信されるパケット300には、各パケット300に格納されるペイロード(実体データ)から一意に算出されるハッシュ値が付加されている。このように、フィルタ条件として用いられるハッシュ値は、対象のパケット300の送信元において付加されることで、無線通信部120における処理を簡素化および高速化できる。なお、パケット300の送信元においてハッシュ値を付加することは必須ではなく、無線通信部120がパケットを受信するたびに、対応するハッシュ値を算出するようにしてもよい。
【0128】
フィルタ処理部1210は、ハッシュ値テーブル1222を参照して、受信部1202により受信されたパケットから算出されるハッシュ値と、ハッシュ値テーブル1222に記憶されているハッシュ値との一致を判断する。受信されたパケットから算出されるハッシュ値が、ハッシュ値テーブル1222に記憶されているいずれかのハッシュ値と一致する場合には、当該受信されたパケットを記憶部1204の記憶対象から除外する(例えば、受信されたパケットを破棄する)。
【0129】
フィルタ条件(すなわち、受信パケットのうち記憶部1204に記憶されるための第2条件)は、受信部1202により先に受信されたパケットの識別情報(この例では、ハッシュ値)に基づいて定められることになる。そして、このようなフィルタ条件は、ハッシュ値テーブル1222に記憶される。
【0130】
図9に示す例では、ハッシュ値テーブル1222には、典型例として、2種類のハッシュ値が含まれる。具体的には、ハッシュ値テーブル1222は、第1ハッシュ値群1224および第2ハッシュ値群1226Aを含む。
【0131】
第1ハッシュ値群1224は、受信パケットバッファ1220に記憶されている各受信パケットに対応するハッシュ値からなる。第1ハッシュ値群1224のハッシュ値は、受信パケットバッファ1220に記憶されている受信パケットの状態に応じて動的に更新されることになる。より具体的には、フィルタ処理部1210は、受信パケットバッファ1220に記憶されている受信パケットから算出されるハッシュ値を、ハッシュ値テーブル1222の第1ハッシュ値群1224に反映する。
【0132】
受信パケットバッファ1220と第1ハッシュ値群1224との反映処理を採用することで、受信パケットバッファ1220に記憶されている受信パケットが主制御部110のデータ読込部1102により読込まれて空になると、第1ハッシュ値群1224の内容も空になる。このように、第1ハッシュ値群1224に含まれるハッシュ値は、受信パケットバッファ1220に記憶されている受信パケットの状態を反映するものである。
【0133】
このように、フィルタ条件(すなわち、受信パケットのうち記憶部1204に記憶されるための第2条件)の少なくとも一部は、記憶部1204に記憶されており、かつ、主制御部110により未だ読込まれていない、受信パケットに基づいて決定される。すなわち、記憶部1204の受信パケットバッファ1220に保持されている受信パケットのハッシュ値がフィルタ条件の少なくとも一部に相当し、これらのハッシュ値は、第1ハッシュ値群1224として、ハッシュ値テーブル1222に記憶される。
【0134】
第2ハッシュ値群1226は、主制御部110により内容が設定および更新される。第2ハッシュ値群1226は、主制御部110が通常モードであるときに、主にアクセスされてもよい。
【0135】
図9に示す例においては、主制御部110のデータ処理部1104が、記憶部1106の第2ハッシュ値群1226に含まれるハッシュ値の追加および更新を担当する。典型的には、データ処理部1104は、処理した受信パケットから算出されるハッシュ値を、第2ハッシュ値群1226に追加し、あるいは、第2ハッシュ値群1226に含まれるいずれかのハッシュ値を処理した受信パケットから算出されるハッシュ値で更新する。
【0136】
主制御部110の記憶部1106に格納される第2ハッシュ値群1226は、無線通信部120の記憶部1204に格納されるハッシュ値テーブル1222に含まれる第2ハッシュ値群1226Aと同期される。より具体的には、フィルタ処理部1210が、主制御部110の記憶部1106にアクセスして、第2ハッシュ値群1226を記憶部1204にコピーするようにしてもよい。あるいは、主制御部110のデータ処理部1104が、主制御部110の記憶部1106に格納される第2ハッシュ値群1226を、記憶部1204にコピーするようにしてもよい。
【0137】
このように、主制御部110の記憶部1106に格納される第2ハッシュ値群1226の内容を、無線通信部120の記憶部1204に格納されるハッシュ値テーブル1222に反映することで、無線通信部120は、主制御部110により定められるフィルタ条件に従って、受信部1202により受信されたパケットを処理できる。
【0138】
上述したように、ハッシュ値の追加処理を採用することで、受信パケットバッファ1220に記憶されていた受信パケットがデータ処理部1104により処理されて、受信パケットバッファ1220から削除されると、その削除された受信パケットバッファ1220の識別情報であるハッシュ値は、第1ハッシュ値群1224から第2ハッシュ値群1226に移ることになる。すなわち、受信パケットバッファ1220に記憶されていた受信パケットが削除されたとしても、ハッシュ値テーブル1222には対応するハッシュ値が存在し続けるので、既に受信されたパケットと同一のパケットを受信した場合であっても、重複して処理されることを避けることができる。
【0139】
また、第2ハッシュ値群1226は、典型的には、データ処理部1104が処理した受信パケットのハッシュ値を含むことになるが、必ずしもこれに限る必要はない。例えば、他の情報処理装置100において受信された、不正な、あるいは、悪意のあるパケットについての事前情報を取得できる場合には、その事前情報に基づいて、受信すべきではないパケットのハッシュ値を第2ハッシュ値群1226に含めるようにしてもよい(ブラックリスト的な使用)。
【0140】
さらに、上述の説明においては、ハッシュ値テーブル1222に含まれるハッシュ値とは異なる場合に限って、受信されたパケットを記憶部1204に記憶する例を示すが、逆に、ハッシュ値テーブル1222に含まれるハッシュ値とは一致する場合に限って、受信されたパケットを記憶部1204に記憶するようにしてもよい(ホワイトリスト的な使用)。
【0141】
このように、フィルタ条件(すなわち、受信パケットのうち記憶部1204に記憶されるための第2条件)の少なくとも一部は、主制御部110により決定される。主制御部110により決定されるフィルタ条件(この例では、ハッシュ値)は、第2ハッシュ値群1226として、ハッシュ値テーブル1222に記憶される。
【0142】
図9には、第1ハッシュ値群1224および第2ハッシュ値群1226がハッシュ値テーブル1222に含まれる構成例を示すが、これに限らず、いずれか一方のハッシュ値群のみをハッシュ値テーブル1222に含めるようにしてもよい。すなわち、フィルタ条件は、1つの条件のみからなるようにしてもよい。
【0143】
上述したようなハッシュ値を取得する方法としては、(1)パケットの受信後に、当該受信したパケットの少なくとも一部に基づいて動的に生成する方法と、(2)パケットの送信元でハッシュ値を付加(すなわち、最初からパケットにハッシュ値を付加)する方法の2つが存在する。(1)および(2)の一方のみを採用してもよいし、両方を採用してもよい。
【0144】
図9に示す構成例においては、主制御部110の記憶部1106に、第2ハッシュ値群1226が格納され、無線通信部120の記憶部1204に、第1ハッシュ値群1224および第2ハッシュ値群1226A(第2ハッシュ値群1226と同期される)が格納される構成を示したが、ハッシュ値を格納する記憶部は、いずれの位置に配置してもよい。例えば、主制御部110および無線通信部120以外のいずれかの部位に記憶部を配置してもよい。
【0145】
あるいは、主制御部110の記憶部1106に格納される第2ハッシュ値群1226を省略して、主制御部110から無線通信部120の記憶部1204へ第2ハッシュ値群1226を直接書込むようにしてもよい。さらにあるいは、無線通信部120の記憶部1204に格納される第1ハッシュ値群1224を省略して、主制御部110の記憶部1106に、第1ハッシュ値群1224および第2ハッシュ値群1226を格納するようにしてもよい。
【0146】
一般的に、無線通信部120の記憶部1204は、主制御部110の記憶部1106に比較して総容量が小さいので、過去のフィルタ条件として使用したハッシュ値をいつまでも記憶しておくことができない場合もある。そのため、適切なタイミングで、無線通信部120の記憶部1204に記憶されたハッシュ値を主制御部110の記憶部1106に移すようにしてもよい。さらに、無線通信部120の記憶部1204から主制御部110に移されたハッシュ値を無線通信部120の記憶部1204に戻すことで、当該ハッシュ値を無線通信部120にて再利用することもできる。
【0147】
[G.処理手順]
次に、本実施の形態に従う情報処理装置100におけるパケット300の送受信に係る処理手順について説明する。
【0148】
図10は、本実施の形態に従う情報処理装置100におけるパケット300の送受信に係る処理手順を示すフローチャートである。
図10には、情報処理装置100を構成する主制御部110および無線通信部120におけるそれぞれの処理を区別して記載する。
【0149】
図10を参照して、無線通信部120に含まれる無線コントローラ124のプロセッサ126は、パケット300の送信周期が到来したか否かを判断する(ステップS100)。パケット300の送信周期が到来していなければ(ステップS100においてNO)、ステップS100の処理を繰返す。
【0150】
パケット300の送信周期が到来していれば(ステップS100においてYES)、無線通信部120は、パケット300を送信する(ステップS102)。
【0151】
続いて、無線通信部120のプロセッサ126は、受信周期が到来したか否かを判断する(ステップS104)。受信周期が到来していなければ(ステップS104においてNO)、以下の処理はスキップされて、ステップS100以下の処理が繰返される。
【0152】
受信周期が到来していれば(ステップS104においてYES)、無線通信部120のプロセッサ126は、何らかのパケットを受信したか否かを判断する(ステップS106)。何らのパケットも受信していなければ(ステップS106においてNO)、無線通信部120のプロセッサ126は、受信周期の到来から所定の受信待ち期間が経過したか否かを判断する(ステップS108)。
【0153】
受信周期の到来から所定の受信待ち期間が経過していなければ(ステップS108においてNO)、ステップS106以下の処理が繰返される。これに対して、受信周期の到来から所定の受信待ち期間が経過していれば(ステップS108においてYES)、ステップS100以下の処理が繰返される。
【0154】
また、何らかのパケットを受信していれば(ステップS106においてYES)、無線通信部120のプロセッサ126は、受信されたパケットが受信すべき所定のフォーマットに合致するか否かを判断する(ステップS110)。受信されたパケットが受信すべき所定のフォーマットに合致しなければ(ステップS110においてNO)、無線通信部120は、受信されたパケットを廃棄する(ステップS122)。そして、ステップS100以下の処理が繰返される。
【0155】
一方、受信されたパケットが受信すべき所定のフォーマットに合致していれば(ステップS110においてYES)、無線通信部120のプロセッサ126は、受信されたパケットのハッシュ値が第1ハッシュ値群1224に含まれているいずれかのハッシュ値と一致するか否かを判断する(ステップS112)。受信されたパケットのハッシュ値が第1ハッシュ値群1224に含まれているいずれかのハッシュ値と一致すれば(ステップS112においてYES)、無線通信部120は、受信されたパケットを廃棄する(ステップS122)。そして、ステップS100以下の処理が繰返される。
【0156】
一方、受信されたパケットのハッシュ値が第1ハッシュ値群1224に含まれているいずれのハッシュ値とも一致しなければ(ステップS112においてNO)、無線通信部120のプロセッサ126は、受信されたパケットのハッシュ値が第2ハッシュ値群1226に含まれているいずれかのハッシュ値と一致するか否かを判断する(ステップS114)。受信されたパケットのハッシュ値が第2ハッシュ値群1226に含まれているいずれかのハッシュ値と一致すれば(ステップS114においてYES)、無線通信部120は、受信されたパケットを廃棄する(ステップS122)。そして、ステップS100以下の処理が繰返される。
【0157】
一方、受信されたパケットのハッシュ値が第2ハッシュ値群1226に含まれているいずれのハッシュ値とも一致しなければ(ステップS114においてNO)、無線通信部120のプロセッサ126は、受信されたパケットを受信パケットとして記憶部1204に記憶するとともに、受信されたパケットのハッシュ値を第1ハッシュ値群1224に追加する(ステップS116)。そして、無線通信部120のプロセッサ126は、記憶部1204に記憶されている受信パケットのデータ量が第1条件を満たすか否か(この例においては、受信パケットのデータ量が所定のデータ量を超えたか否か)を判断する(ステップS118)。
【0158】
記憶部1204に記憶されている受信パケットのデータ量が第1条件を満たしていなければ(ステップS118においてNO)、現在の受信周期における処理は終了となり、ステップS100以下の処理が繰返される。
【0159】
上述の処理手順においては、記憶部1204に記憶されたパケットのデータ量が第1条件を満たしたか否かを判断する処理(ステップS118)を例示した。これに限らず、ステップS118として、記憶部1204に記憶されたパケットの数が第1条件を満たすか否か(より具体的には、記憶部1204に記憶されたパケットの数が所定の個数を超えたか否か)を判断する処理を採用してもよい。
【0160】
あるいは、後述するように、ステップS118として、記憶部1204に記憶されたパケットの内容が第1条件を満たすか否か(より具体的には、記憶部1204に記憶されたパケットの内容に所定のデータが含まれているか否か)を判断する処理を採用してもよい。
【0161】
このように、上述のステップS118においては、受信パケットのデータ量が所定のデータ量を超えたか否かの判断、および、受信パケットの数が所定の個数を超えたか否かの判断、受信パケットの内容に所定のデータが含まれているか否かの判断のいずれかの判断が択一的になされてもよいし、これらの判断のうち複数の判断が同時になされてもよい。
【0162】
これに対して、記憶部1204に記憶されている受信パケットのデータ量が第1条件を満たしていれば(ステップS118においてYES)、無線通信部120のプロセッサ126は、主制御部110に対して復帰指令400を与える(ステップS120)。そして、無線通信部120の現在の受信周期における処理は終了となり、ステップS100以下の処理が繰返される。
【0163】
一方、無線通信部120から復帰指令400を受けた主制御部110は、省電力モードから通常モードにモード遷移する(ステップS200)。そして、主制御部110は、無線通信部120の記憶部1204に記憶されている受信パケット1206を読込む(ステップS202)。そして、主制御部110は、読込まれた受信パケット1206に対して所定の処理を実行する(ステップS204)。
【0164】
主制御部110は、無線通信部120の記憶部1204に記憶されているすべての受信パケット1206の読込みが完了したか否かを判断する(ステップS206)。無線通信部120の記憶部1204に記憶されているすべての受信パケット1206の読込みが完了していなければ(ステップS206においてNO)、ステップS202以下の処理が繰返される。
【0165】
無線通信部120の記憶部1204に記憶されているすべての受信パケット1206の読込みが完了していれば(ステップS206においてYES)、無線通信部120のプロセッサ126は、無線通信部120の記憶部1204に記憶されているすべての受信パケット1206、および、第1ハッシュ値群1224に含まれているすべてのハッシュ値を削除する(ステップS208)。
【0166】
続いて、主制御部110は、処理の実行結果に基づくなどして、処理された受信パケット1206のハッシュ値を記憶部1106の第2ハッシュ値群1226に追加する(S210)。なお、記憶部1106に記憶された第2ハッシュ値群1226の数が上限まで達している場合には、予め定められた規則に従って、既に記憶されている第2ハッシュ値群1226の一部または全部のハッシュ値を削除した上で、新たなハッシュ値を追加するようにしてもよい。記憶部1106に記憶された更新後の第2ハッシュ値群1226の内容が、無線通信部120の記憶部1204に記憶されたハッシュ値テーブル1222に反映される。
【0167】
そして、主制御部110は、通常モードから省電力モードにモード遷移する(ステップS212)。これによって、無線通信部120における一連の処理は終了する。
【0168】
なお、説明の便宜上、
図10においては、主制御部110が無線通信部120の記憶部1204に記憶されている受信パケット1206および第1ハッシュ値群1224を削除する処理例を示したが、主制御部110および無線通信部120が連係して、これらのデータを削除するようにしてもよい。例えば、主制御部110から無線通信部120に対して削除指令が与えられると、無線通信部120が記憶部1204に対するデータ削除の処理を実行するようにしてもよい。
【0169】
なお、上述の
図10において、ステップS202において、主制御部110が記憶部1204に記憶されている受信パケット1206を一度に全部読込むようにしてもよい。
【0170】
[H.フォーマットチェックおよびフィルタ処理の変形例]
上述の説明においては、受信パケットに対するフィルタ処理として、受信されたパケットを識別するための識別情報(例えば、ハッシュ値)を用いて、同一のパケットを重複記憶しないようにする処理を例示したが、本実施の形態に従うフィルタ処理は、受信されたパケットが所定のフォーマットに合致するか否かを判断する処理を含む(
図10のステップS110など参照)。
【0171】
このような受信されたパケットに対するフォーマットチェックの一例としては、当該パケットに含まれるアクションフレーム定義部310およびベンダー定義部320(
図7参照)の内容が用いられる。より具体的には、予め受信することが予定されているベンダー定義の情報がアクションフレーム定義部310に格納されていること、および/または、ベンダー定義部320に格納されるバージョンやコマンドが予め受信することが予定されている情報であることなどが条件として採用されてもよい。
【0172】
さらに、受信されたパケットを記憶部1204に記憶するか否かを判断するための第2条件(フィルタ条件)としては、パケットに含まれる1または複数の任意の情報を用いることができる。
【0173】
例えば、受信されたパケットの802.11ヘッダ302(
図7参照)には、当該パケットの送信元のMAC(Media Access Control)アドレスやIP(Internet Protocol)アドレスを含む。このようなMACアドレスまたはIPアドレスといったパケットの送信元を特定するための情報をフィルタ条件として用いてもよい。この場合、特定のアドレスを有する送信元からのパケットのみを受信する(ホワイトリスト)、あるいは、特定のアドレスを有する送信元からのパケットは受信しない(ブラックリスト)といったフィルタ処理を適用できる。
【0174】
また、MACアドレスなどの装置固有の識別情報やOUIなどの特定メーカ固有の識別情報などを参照して、一度パケットを受け取った装置からは、(たとえ種類の異なるパケットであっても)フィルタして受信しないようにしてもよい。
【0175】
また、本実施の形態に従うパケット300には、送信元で算出されたハッシュ値が付加されるので、パケット300の受信側で改めて算出されたハッシュ値と、当該パケット300に付加されたハッシュ値との同一性を評価するようにしてもよい。このようなハッシュ値の同一性を評価することで、送信過程におけるパケット300の破損や改ざんなどを検知できる。
【0176】
さらに、複数の要素を組合せてフィルタ処理を実施してもよい。例えば、MACアドレスとハッシュ値とを組合せることができる。
【0177】
また、パケット300の送信元において、パケット300のペイロード部330に識別情報を付加しておき、受信側において、ペイロード部330に格納された識別情報に基づいて、受信されたパケット300を記憶部1204に記憶するか否かを判断するようにしてもよい。すなわち、受信されたパケット300を記憶部1204に記憶するか否かを判断する第2条件(フィルタ条件)の少なくとも一部は、受信部1202により先に受信されたパケットの識別情報に基づいて定められてもよい。
【0178】
[I.付加的な構成]
次に、本実施の形態に従う情報処理システム1の付加的な構成のいくつかについて説明する。
(i1:時間情報)
本実施の形態に従う情報処理装置100においては、主制御部110が省電力モードにある期間に無線通信部120によって受信されたパケットを、主制御部110が事後的に処理する。そのため、主制御部110がパケットを処理するタイミングは、当該処理対象のパケットが受信されたタイミングから遅れることになる。また、主制御部110は各パケットが受信されたタイミングを取得できない可能性もある。
【0179】
そこで、本実施の形態においては、無線通信部120がパケットを受信して、記憶部1204に当該受信されたパケットを記憶する際には、各パケットが受信されたタイミングを示す情報を付加するようにしてもよい。
【0180】
図11は、本実施の形態に従う情報処理装置100の記憶部に記憶される受信パケットのデータ構造の一例を示す模式図である。
図11を参照して、情報処理装置100の記憶部1204の受信パケットバッファ1220には、受信パケットに対応付けて、各受信パケットが受信された時刻を示す時間情報の一例としてタイムスタンプを付加して記憶するようにしてもよい。
【0181】
より具体的には、無線通信部120は、受信パケットを受信すると、当該受信パケットが受信されたタイミングで、無線通信部120に実装されるリアルタイムクロックからタイムスタンプを取得し、当該受信パケットに付加する。
【0182】
このように、無線通信部120の受信部1202は、受信されたパケットにタイムスタンプを付与するようにしてもよい。各パケットにタイムスタンプを付加することで、主制御部110が事後的にパケットを処理する場合であっても、受信タイミングなどの情報を利用した処理を実現できる。
【0183】
より具体的には、主制御部110が1または複数の受信パケットを読込んだときに、当該読込んだ受信パケットの間で付加されているタイムスタンプの値を比較して、より新しもの、あるいは、より古いものを選択的に利用するようにしてもよい。
(i2:強制起動モード)
上述の説明においては、無線通信部120の記憶部1204に記憶された受信パケット1206のデータ量が第1条件を満たすと、主制御部110を省電力モードから通常モードにモード遷移する例を説明したが、記憶部1204に記憶された受信パケット1206のデータ量にかかわらず、主制御部110を省電力モードから通常モードにモード遷移できるような処理を設けてもよい。
【0184】
より具体的には、例えば、パケットに含まれるベンダー定義部320のコマンドエリア324(
図7参照)に、主制御部110を省電力モードから通常モードにモード遷移させるための(所定の情報(例えば、指令に係る情報)を含めることで実現できる。すなわち、無線通信部120の受信部1202は、受信されたパケットに対するフォーマットチェックを行なう際に、ベンダー定義部320のコマンドエリア324に、主制御部110を省電力モードから通常モードにモード遷移させるためのコマンドが含まれているか否かを判断するようにしてもよい。
【0185】
このような構成を採用することで、無線通信部120のモード管理部1208は、受信部1202により受信されたパケットに通常モードへのモード遷移を指示するデータに応答して、記憶部1204に記憶されたパケットの数、および、パケットのデータ量に依存することなく(パケットの内容に依拠して)、主制御部110を省電力モードから通常モードにモード遷移させることができる。すなわち、無線通信部120の記憶部1204に記憶された受信パケット1206の内容が第1条件を満たす場合(例えば、受信パケット1206に所定のコマンドが含まれている場合)に、主制御部110を省電力モードから通常モードにモード遷移させることができる。
【0186】
このようなコマンドを含むパケットが受信されることで、主制御部110を通常モードに復帰させて、必要な処理を実行させることができる。例えば、ユーザに対して何らかの通知を行なうためのパケットが受信されると、即座に必要な通知処理を実行するような応用が想定される。
【0187】
[J.利点]
本実施の形態によれば、主制御部110が電力消費の少ない省電力モードにある場合であっても、無線通信部120の受信部1202によるパケットの受信が可能である。受信部1202により受信されて記憶部1204に記憶された受信パケット1206の数、パケットのデータ量、および、パケットの内容の少なくともいずれか1つが第1条件に合致すると、主制御部110は、省電力モードから通常モードにモード遷移して必要な処理を実行し、再度省電力モードへモード遷移する。このような主制御部110におけるモード遷移を利用することで、情報処理装置100での消費電力を低減できる。
【0188】
また、本実施の形態によれば、同一のパケットが重複受信されることも多いと想定されるが、このような同一のパケットを重複受信した場合であっても、同一のパケットが重複して記憶されることを防止して、情報処理を効率化できる。
【0189】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【0190】
1 情報処理システム、100 情報処理装置、102 操作部、104 インジケータ、106 ディスプレイ、108 スピーカ、110 主制御部、112,126 プロセッサ、114 メインメモリ、116 不揮発性メモリ、120 無線通信部、122 無線モジュール、122RX 受信回路、122TX 送信回路、123 アンテナ、124 無線コントローラ、127 ファームウェア、128 バッファメモリ、130 制御プログラム、132 アプリケーションプログラム、134 受信データ、140 バッテリ、300 パケット、302 802.11ヘッダ、310 アクションフレーム定義部、312 タイプエリア、314 OUIエリア、316 OUIサブタイプエリア、320 ベンダー定義部、322 バージョンエリア、324 コマンドエリア、326 ハッシュ値エリア、330 ペイロード部、400 復帰指令、402 読込処理、404 処理完了、1102 データ読込部、1104 データ処理部、1202 受信部、1106,1204 記憶部、1206 受信パケット、1208 モード管理部、1210 フィルタ処理部、1212 論理スイッチ、1220 受信パケットバッファ、1222 ハッシュ値テーブル、1224 第1ハッシュ値群、1226,1226A 第2ハッシュ値群、DT 受信待ち期間、T1 送信周期、T2 受信周期。