(57)【要約】【課題】  通信装置により取得されたデータを複数のデータユニットからより少数のデータユニットに集約するかを判定するための処理に掛かる通信装置の処理負荷を低減する。【解決手段】  通信装置１０１は、複数の通信インターフェースを介してデータを取得する。そして通信装置１０１は、取得したデータを複数のデータユニットからより少数のデータユニットに集約するかを、予め定められた通信インターフェースを介して当該データが取得されたかに基づいて判定する。さらに通信装置１０１は、集約すると判定されたデータを、複数のデータユニットからより少数のデータユニットに集約して情報処理装置へ送信する。【選択図】  図５
2019012946.tif 000002
【特許請求の範囲】
【請求項１】
複数の通信インターフェースを介してデータを取得する取得手段と、
前記取得手段により取得されたデータを複数のデータユニットからより少数のデータユニットに集約するかを、集約されるべきデータを取得するための通信インターフェースとして予め定められた通信インターフェースを介して当該データが取得されたかに基づいて判定する判定手段と、
集約すると前記判定手段により判定されたデータを、複数のデータユニットからより少数のデータユニットに集約して情報処理装置へ送信する送信手段とを有することを特徴とする通信装置。
【請求項２】
前記判定手段は、前記取得手段により取得されたデータが、前記予め定められた通信インターフェースとは異なる通信インターフェースを介して取得されたデータである場合に、当該データを集約しないと判定し、
前記送信手段は、集約しないと前記判定手段により判定されたデータを、複数のデータユニットからより少数のデータユニットへの集約を行わずに送信することを特徴とする請求項１に記載の通信装置。
【請求項３】
前記判定手段は、前記取得手段により取得されたデータが前記予め定められた通信インターフェースを介して取得されたデータである場合に、当該データを集約するかを、当該データのヘッダ情報とペイロードのデータ形式との少なくとも何れかに基づいて判定することを特徴とする請求項２に記載の通信装置。
【請求項４】
前記予め定められた通信インターフェースは、データ量が閾値以下であるデータユニットを伝送するネットワークと接続する通信インターフェースであることを特徴とする請求項１乃至３の何れか１項に記載の通信装置。
【請求項５】
前記複数の通信インターフェースのうち、前記予め定められた通信インターフェースとは異なる通信インターフェースには、データ量が前記閾値より大きいデータユニットを伝送するネットワークと接続する通信インターフェースが含まれることを特徴とする請求項４に記載の通信装置。
【請求項６】
撮像を行って画像データを生成する生成手段を有し、
前記複数の通信インターフェースのうち、前記予め定められた通信インターフェースとは異なる通信インターフェースには、前記生成手段により生成された画像データを前記取得手段が取得するための通信インターフェースが含まれることを特徴とする請求項１乃至５の何れか１項に記載の通信装置。
【請求項７】
前記取得手段により取得されたデータを記憶する記憶部に前記予め定められた通信インターフェースを介して取得されたデータを入力する入力手段から、当該入力の完了を示す通知を受信する受信手段と、
前記取得手段により取得されたデータが前記予め定められた通信インターフェースを介して取得されたデータであるかを、前記受信手段により前記通知が受信されたかに基づいて判定する第２判定手段とを有し、
前記判定手段は、前記取得手段により取得されたデータを集約するかを、前記第２判定手段による判定結果に基づいて判定することを特徴とする請求項１乃至６の何れか１項に記載の通信装置。
【請求項８】
前記予め定められた通信インターフェースを介して取得されたデータを、前記送信手段が送信可能なデータの形式へ変換して前記記憶部に入力する前記入力手段を有することを特徴とする請求項７に記載の通信装置。
【請求項９】
撮像画像に対する解析結果を取得する第２取得手段を有し、
前記送信手段は、集約すると前記判定手段により判定されたデータを、前記第２取得手段により取得された解析結果に基づくタイミングで、複数のデータユニットからより少数のデータユニットに集約して情報処理装置へ送信することを特徴とする請求項１乃至８の何れか１項に記載の通信装置。
【請求項１０】
前記送信手段は、集約すると前記判定手段により判定されたデータを構成する複数のデータユニットであって宛先が同一である複数のデータユニットを、より少数のデータユニットに集約して当該宛先の情報処理装置へ送信することを特徴とする請求項１乃至９の何れか１項に記載の通信装置。
【請求項１１】
前記取得手段は、前記通信装置とは異なる装置から所定時間以下の間隔で送信されるデータを、前記予め定められた通信インターフェースを介して取得することを特徴とする請求項１乃至１０の何れか１項に記載の通信装置。
【請求項１２】
前記複数の通信インターフェースのうちユーザーによる指定に応じた通信インターフェースを、前記集約されるべきデータを取得するための通信インターフェースとして設定する設定手段を有することを特徴とする請求項１乃至１１の何れか１項に記載の通信装置。
【請求項１３】
前記予め定められた通信インターフェースは、６ＬｏＷＰＡＮ（ＩＰｖ６  ｏｖｅｒ  Ｌｏｗ  ｐｏｗｅｒ  Ｗｉｒｅｌｅｓｓ  Ｐｅｒｓｏｎａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋｓ）に従った通信が行われるネットワークと接続する通信インターフェースであることを特徴とする請求項１乃至１２の何れか１項に記載の通信装置。
【請求項１４】
前記送信手段は、集約すると前記判定手段により判定されたデータを、複数のデータユニットから、当該複数のデータユニットと同一の通信レイヤにおけるより少数のデータユニットに集約して送信することを特徴とする請求項１乃至１３の何れか１項に記載の通信装置。
【請求項１５】
複数のデータユニットから集約された単一のデータユニットは、当該複数のデータユニットのペイロードと単一のヘッダとから構成されることを特徴とする請求項１乃至１４の何れか１項に記載の通信装置。
【請求項１６】
複数のデータユニットから集約された単一のデータユニットは、Ａ−ＭＰＤＵ（Ａｇｇｒｅｇａｔｉｏｎ  ＭＡＣ  Ｐｒｏｔｏｃｏｌ  Ｄａｔａ  Ｕｎｉｔ）であることを特徴とする請求項１乃至１４の何れか１項に記載の通信装置。
【請求項１７】
複数の通信インターフェースを介してデータを取得する取得工程と、
前記取得工程において取得されたデータを複数のデータユニットからより少数のデータユニットに集約するかを、集約されるべきデータを取得するための通信インターフェースとして予め定められた通信インターフェースを介して当該データが取得されたかに基づいて判定する判定工程と、
集約すると前記判定工程において判定されたデータを、複数のデータユニットからより少数のデータユニットに集約して情報処理装置へ送信する送信工程とを有することを特徴とする通信方法。
【請求項１８】
前記判定工程においては、前記取得工程において取得されたデータが、前記予め定められた通信インターフェースとは異なる通信インターフェースを介して取得されたデータである場合に、当該データを集約しないと判定し、
前記送信工程においては、集約しないと前記判定工程において判定されたデータが、複数のデータユニットからより少数のデータユニットへの集約を行わずに送信されることを特徴とする請求項１７に記載の通信方法。
【請求項１９】
前記判定工程においては、前記取得工程において取得されたデータが前記予め定められた通信インターフェースを介して取得されたデータである場合に、当該データを集約するかを、当該データのヘッダ情報とペイロードのデータ形式との少なくとも何れかに基づいて判定することを特徴とする請求項１８に記載の通信方法。
【請求項２０】
コンピュータを、請求項１乃至１６の何れか１項に記載の通信装置の各手段として動作させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、取得したデータを複数のデータユニットから単一のデータユニットに集約して送信する技術に関する。
【背景技術】
【０００２】
近年、複数のセンサー装置により構成されるセンサーネットワークから送信されるセンサーデータを通信装置が受信して情報処理装置へ転送する通信システムが用いられている。通信装置が転送を行うことで、センサーデータが情報処理装置に集められ、情報処理装置において様々なデータ解析を行うことが可能となる。
【０００３】
センサーネットワークから送信されるセンサーデータには、１回の送信あたりのデータサイズが小さく、且つ頻繁に送信される場合が多いという特徴がある。このようにサイズが小さいセンサーデータが頻繁に送受信される通信システムにおいては、データを処理する情報処理装置や中継装置において、データの送受信処理の回数が多くなることで処理負荷が大きくなる。その結果、ネットワークの通信帯域を有効に活用できない場合が起こり得る。
【０００４】
この問題に対して、特許文献１には、通信装置が受信した複数のパケットを解析して、センサー情報を含むセンサーパケットを抽出することが記載されている。そして、通信装置が複数のセンサーパケットを単一のフレームに集約し、当該フレームを別の通信装置に送信することが記載されている。このような処理によれば、データ量が小さいセンサーパケットが通信装置から多数送信されることに起因する通信システムの負荷を低減することができる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１３−２２５８００号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、従来の方法では、通信装置により取得されるデータを複数のデータユニットからより少数のデータユニットに集約するかを判定するための処理に係る通信装置の処理負荷が大きくなる虞がある。例えば、集約されるべきデータを判別するために、通信装置が取得したカプセル化済みのデータ全てに対してデカプセル化とデータの内容を解析する処理とを行う場合、通信装置に大きな処理負荷が掛かることが考えられる。
【０００７】
本発明は上記課題に鑑み、通信装置により取得されたデータを複数のデータユニットからより少数のデータユニットに集約するかを判定するための処理に掛かる通信装置の処理負荷を低減することを目的とする。
【課題を解決するための手段】
【０００８】
上記の課題を解決するため、本発明に係る通信装置は、例えば以下の構成を有する。すなわち、複数の通信インターフェースを介してデータを取得する取得手段と、前記取得手段により取得されたデータを複数のデータユニットからより少数のデータユニットに集約するかを、集約されるべきデータを取得するための通信インターフェースとして予め定められた通信インターフェースを介して当該データが取得されたかに基づいて判定する判定手段と、集約すると前記判定手段により判定されたデータを、複数のデータユニットからより少数のデータユニットに集約して情報処理装置へ送信する送信手段とを有する。
【発明の効果】
【０００９】
本発明によれば、通信装置により取得されたデータを複数のデータユニットからより少数のデータユニットに集約するかを判定するための処理に係る通信装置の処理負荷を低減できる。
【図面の簡単な説明】
【００１０】
【図１】通信システム１００の構成について説明するための図である。
【図２】通信装置１０１のハードウェア構成について説明するためのブロック図である。
【図３】転送入力部２１９のハードウェア構成について説明するためのブロック図である。
【図４】転送処理部２２０のハードウェア構成について説明するためのブロック図である。
【図５】転送処理部２２０による転送処理に係る動作を説明するためのフローチャートである。
【図６】転送処理部２２０によるキューイングに係る動作を説明するためのフローチャートである。
【図７】転送処理部２２０による送信タイミングの判定に係る動作を説明するためのフローチャートである。
【図８】転送処理部２２０による送信処理に係る動作を説明するためのフローチャートである。
【発明を実施するための形態】
【００１１】
以下、本発明の実施形態について、図面を参照して説明する。なお、以下の実施形態で説明する特徴の組み合わせの全てが本発明に必須のものとは限らない。
【００１２】
［システム構成］
本実施形態に係る通信システム１００の構成を図１に示す。通信システム１００は、センサー１０３―１０６を有するＷＳＮ（Ｗｉｒｅｌｅｓｓ  Ｓｅｎｓｏｒ  Ｎｅｔｗｏｒｋ）１０８、通信装置１０１、ＬＡＮ／ＷＡＮ１０７、画像データ処理装置１０２、及びセンサーデータ処理装置１０９を備える。本実施形態において、単にセンサーと記載した場合は、センサー１０３―１０６の少なくとも１つを指すものとする。なお、図１においてはＷＳＮ１０８が４つのセンサーを有するものとしているが、センサーの数はこれに限らない。また、通信システム１００内の複数のＷＳＮ１０８はそれぞれ異なる数のセンサーを有していてよい。
【００１３】
通信装置１０１は、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）及びＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）を有するネットワークであるＬＡＮ／ＷＡＮ１０７に接続する。そして通信装置１０１は、ＬＡＮ／ＷＡＮ１０７を介して、画像データ処理装置１０２及びセンサーデータ処理装置１０９との間でＩＰｖ６（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ  ｖｅｒｓｉｏｎ６）に基づく通信を行う。本実施形態では、通信装置１０１とＬＡＮ／ＷＡＮ１０７とはＥｔｈｅｒｎｅｔ（登録商標）によって有線接続される。ただしこれに限らず、通信装置１０１とＬＡＮ／ＷＡＮ１０７とはＷＬＡＮ（Ｗｉｒｅｌｅｓｓ  ＬＡＮ；無線ＬＡＮ）やモバイル通信回線などによって無線接続されてもよい。
【００１４】
なお、本実施形態では通信装置１０１が画像データ処理装置１０２及びセンサーデータ処理装置１０９とＬＡＮ／ＷＡＮ１０７を介して接続する場合について説明するが、ＷＡＮ又はＬＡＮの何れかによって接続してもよい。また、通信装置１０１と画像データ処理装置１０２及びセンサーデータ処理装置１０９との間の通信に利用されるプロトコルはＩＰｖ６に限らず、例えばＩＰｖ４などが利用されてもよい。なお、本実施形態では、画像データ処理装置１０２とセンサーデータ処理装置１０９に対して複数の通信装置１０１がＬＡＮ／ＷＡＮ１０７を介して接続されているものとし、それら複数の通信装置１０１のうちの一つに注目して説明を行う。
【００１５】
通信装置１０１とセンサー１０３―１０６は、無線ＰＡＮ（Ｐｅｒｓｏｎａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）通信により、メッシュネットワークであるＷＳＮ１０８を構築する。なお、ＷＳＮ１０８はメッシュ型のネットワークトポロジーに限定されるものではなく、スター型のようなネットワークであってもよい。また、ＷＳＮ１０８を構成する装置は通信装置１０１とセンサー１０３―１０６だけでなくともよく、中継装置など他の装置を含むものであってもよい。また、ＷＳＮ１０８はＬＡＮやＷＡＮを有していてもよい。
【００１６】
無線ＰＡＮ通信のための通信規格としては、例えば、Ｂｌｕｅｔｏｏｔｈ（登録商標）やＺｉｇｂｅｅ（登録商標）、及びＷｉ−ＳＵＮ（登録商標）が挙げられる。  ＷＳＮ１０８内では、無線ＰＡＮ通信のためのいずれかの通信規格に従った通信が行われる。また、本実施形態におけるＷＳＮ１０８においては、ＩＰｖ６をベースとした無線ＰＡＮ通信のプロトコルである６ＬｏＷＰＡＮ（ＩＰｖ６  ｏｖｅｒ  Ｌｏｗ  ｐｏｗｅｒ  Ｗｉｒｅｌｅｓｓ  Ｐｅｒｓｏｎａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋｓ）が使用される。６ＬｏＷＰＡＮは、無線ＰＡＮのように送受信されるフレームの最大サイズが小さいネットワークに適したＩＰｖ６通信プロトコルである。ここで、フレームとはＯＳＩ参照モデルのデータリンク層の通信におけるデータの伝送単位（ＰＤＵ：Ｐｒｏｔｏｃｏｌ  Ｄａｔａ  Ｕｎｉｔ）であり、一方ネットワーク層の通信におけるデータの伝送単位はパケットと呼ばれる。なお、本実施形態ではＯＳＩ参照モデルにおける各層（通信レイヤ）におけるデータの伝送単位を区別しない場合にはまとめてデータユニットと呼ぶ。
【００１７】
本実施形態において、通信装置１０１は撮像部２０３を有するネットワークカメラであって、撮像画像に基づく画像データをＬＡＮ／ＷＡＮ１０７を介して画像データ処理装置１０２へストリーミング伝送する。ストリーミング伝送プロトコルには、ＲＴＰ（Ｒｅａｌ−Ｔｉｍｅ  Ｔｒａｎｓｐｏｒｔ  Ｐｒｏｔｏｃｏｌ）が使用されるものとする。ＲＴＰは、ライブ画像配信など、リアルタイムな画像配信に利用されるプロトコルである。なお、通信装置１０１から画像データ処理装置１０２への画像データの送信に用いられるプロトコルはＲＴＰに限定されない。また、画像データの送信はストリーミング伝送に限定されず、例えば動画ファイルのダウンロード配信であってもよい。また、通信装置１０１が送信する画像データは動画に限らず静止画であってもよい。さらに通信装置１０１は、例えばＰＣやスマートフォン、ルータなどであってもよく、自身は撮像部２０３を持たずに外部から受信した画像データを送信してもよい。
【００１８】
また、通信装置１０１は、ＷＳＮ１０８に接続し、ＷＳＮ１０８のＬＡＮ／ＷＡＮ１０７に対するゲートウェイとしての役割も担う。センサー１０３―１０６のそれぞれは、ＷＳＮ１０８を介して、センサーの検知結果を含むセンサーデータを通信装置１０１へ送信する。そして通信装置１０１は、ＷＳＮ１０８を介して受信したセンサーデータを、ＬＡＮ／ＷＡＮ１０７を介して画像データ処理装置１０２又はセンサーデータ処理装置１０９へ転送する。また通信装置１０１は、受信したセンサーデータの一部を画像データ処理装置１０２とセンサーデータ処理装置１０９の両方に転送してもよい。なお、本実施形態において通信装置１０１は、ＥｔｈｅｒｎｅｔによってＬＡＮ／ＷＡＮ１０７と接続されている。そのため、通信装置１０１は、ＷＳＮ１０８を介して受信した無線ＰＡＮ通信に応じた形式のフレームを、Ｅｔｈｅｒｎｅｔ形式のフレームに変換して転送する。
【００１９】
画像データ処理装置１０２は、通信装置１０１からストリーミング伝送される画像データを受信し、画像データの解析や蓄積、表示などの処理を実行する情報処理装置である。また画像データ処理装置１０２は、通信装置１０１から画像データ処理装置１０２へ転送されたセンターデータを用いて、画像データとセンサーデータとを関連付けた処理を行う。
【００２０】
センサーデータと画像データを関連付けて行う処理は、例えば、画像データ処理装置１０２が、一致又は近似する時間情報を有するセンサーデータと画像データとが対応付けて表示されるように制御する処理である。センサーデータが有する時間情報とは、例えばセンサーが測定を行ったタイミングや所定のイベントを検知したタイミング、センサーデータを送信したタイミング等を示す情報である。また画像データが有する時間情報とは、撮像が行われたタイミングや画像データが送信されたタイミング等を示す情報である。
【００２１】
画像データ処理装置１０２がこのような処理を行うことにより、例えば、何らかのイベントが発生した場合に、ユーザーはそのイベントの発生時の状況を撮像した撮像画像とその際のセンサーによる検知結果とを照らし合わせて確認することができる。具体的には、画像データ処理装置１０２は、センサーによりドアの開閉が検知された場合に、その検知のタイミングの前後におけるドア付近を撮像した撮像画像を表示部に表示させることができる。また画像データ処理装置１０２は、撮像画像から動体が検出された場合に、撮像対象領域への入り口となるドアの開閉がセンサーにより検知されたか否かを表示することもできる。なお、画像データ処理装置１０２が画像データとセンサーデータとを関連付けて行う処理はこれらに限らない。例えば、センサーデータが有する時間情報に応じて選択された画像データを録画したり、センサーデータに基づいて画像データの解析を行ったりする処理などであってもよい。
【００２２】
センサーデータ処理装置１０９は、センサー１０３―１０６から送信されたセンサーデータを、通信装置１０１を介して受信し、センサーデータの解析や蓄積を行う情報処理装置である。また、センサーデータ処理装置１０９は、センサーデータの解析結果を表示部に表示したり、解析結果に基づく情報を通信装置１０１や画像データ処理装置１０２に通知したりしてもよい。
【００２３】
画像データ処理装置１０２及びセンサーデータ処理装置１０９は、例えばＰＣやスマートフォンなどでもよく、またクラウドと呼ばれる仮想化基盤上に構築されたサーバであってもよい。なお、ＬＡＮ／ＷＡＮ１０７には複数の画像データ処理装置１０２や複数のセンサーデータ処理装置１０９が接続されていてもよい。また、画像データ処理装置１０２とセンサーデータ処理装置１０９の両方の機能を有する情報処理装置がＬＡＮ／ＷＡＮ１０７に接続されており、通信装置１０１が画像データ及びセンサーデータをその情報処理装置へ送信してもよい。
【００２４】
ＷＳＮ１０８に含まれるセンサー１０３―１０６は、それぞれ例えばジャイロ、加速度、方位、距離、振動、温度、照度、ＵＶ、気圧、ガス、放射能、におい、ドアや窓の開閉、侵入検知など、何らかの値の測定やイベント検知を行うことができる装置である。これらのセンサー１０３―１０６は、所定のイベントが検知されたことを示す情報及び測定から得られた数値の少なくとも何れかを含む検知結果を通信装置１０１に通知する。他にも例えば、センサー１０３―１０６は、設置場所の気温が閾値以上である等の所定の環境条件が満たされているか否かを示す情報を定期的に通知してもよい。検知結果を通知するための具体的な処理としては、センサー１０３―１０６は、検知結果と宛先アドレス等を含むセンサーデータを、ＷＳＮ１０８において使用される通信規格に従ったフレーム形式で送信する。
【００２５】
通信装置１０１により受信されるべきセンサーデータは、センサー１０３―１０６の各々により、例えば１秒以下など所定時間以下の間隔で送信される。そのため、特にＷＳＮ１０８が多数のセンサーを有する場合には、通信装置１０１が多数のフレームを転送することになる。ここで、通信装置１０１が受信するセンサーデータのフレームのサイズは、ＬＡＮ／ＷＡＮ１０７を介して通信装置１０１が送信可能なフレームの最大サイズよりも小さい。具体的には、本実施形態におけるＷＳＮ１０８では、６ＬｏＷＰＡＮに従った通信が行われる。そして、例えばＯＳＩ参照モデルの物理層における通信がＩＥＥＥ８０２．１５．４に従って行われる場合には、ＷＳＮ１０８はＭＴＵ（Ｍａｘｉｍｕｍ  Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｕｎｉｔ）が１２７バイトのネットワークとなる。一方、通信装置１０１はＭＴＵが１５００バイトであるＥｔｈｅｒｎｅｔによってＬＡＮ／ＷＡＮ１０７を介したデータの送信を行う。
【００２６】
そこで、本実施形態に係る通信装置１０１は、ＷＳＮ１０８から受信したセンサーデータを、複数の小さいフレームから単一の大きいフレームに集約する。そして通信装置１０１は、集約されたフレームをＬＡＮ／ＷＡＮ１０７を介して情報処理装置（画像データ処理装置１０２及び／又はセンサーデータ処理装置１０９）へ送信する。こうすることで、通信装置１０１が転送するフレームの数を減らし、通信装置１０１やＬＡＮ／ＷＡＮ１０７の処理負荷を低減することができる。
【００２７】
なお、上述したように本実施形態における通信装置１０１は、ＷＳＮ１０８を介して取得したセンサーデータと、通信装置１０１が有する撮像部２０３の撮像により取得された画像データとの両方を、ＬＡＮ／ＷＡＮ１０７を介して情報処理装置へ送信する。そこで、通信装置１０１は、センサーデータを集約処理の対象とし、画像データを集約処理の対象としないために、ＷＳＮ１０８を介して取得したデータと撮像部２０３から取得したデータとを判別する。こうすることで、画像データに対しては集約処理を行わず、画像データの取得から送信までの遅延を小さくしてストリーミング伝送を行うことができる。また、通信装置１０１は、画像データ処理装置１０２やセンサーデータ処理装置１０９、又はその他の装置から、ＬＡＮ／ＷＡＮ１０７を介して取得したデータを送信してもよい。その場合には通信装置１０１は、ＬＡＮ／ＷＡＮ１０７を介して取得したデータとＷＳＮ１０８を介して取得したデータとの判別も行う。
【００２８】
判別のための方法として、本実施形態に係る通信装置１０１は、通信装置１０１が有する複数の通信インターフェースのうちどの通信インターフェースがデータの取得に使用されたかに基づいて、取得されたデータが集約されるべきデータであるかを判別する。この方法によれば、通信装置１０１が取得した全てのデータの内容を一つひとつ解析して判別を行う場合よりも、通信装置の処理負荷を低減できる。
【００２９】
［通信装置１０１のハードウェア構成］
次に、本実施形態に係る通信装置１０１のハードウェア構成について、図２を参照して説明する。通信装置１０１は、そのハードウェア構成として、主に、システム部２０２と撮像部２０３と通信部２０４とを有する。
【００３０】
システム部２０２は、システムバス２０５、ＣＰＵ２０６、ＲＡＭ２０７、ＲＯＭ２０８、画像符号化部２０９、及び画像解析部２１０を備える。システムバス２０５は、ＣＰＵ２０６、ＲＡＭ２０７、ＲＯＭ２０８、画像符号化部２０９、及び画像解析部２１０を接続して情報を伝達する。ＣＰＵ２０６は、ＲＡＭ２０７やＲＯＭ２０８に格納されているコンピュータプログラムやデータを用いて通信装置１０１全体の制御を行う。ＣＰＵ２０６により実行されるプログラムにはＯＳやアプリケーション、ＴＣＰ／ＩＰプロトコルスタック、及びＰＡＮスタックなどが含まれる。
【００３１】
ＲＡＭ２０７は、通信装置１０１の主記憶部であり、ＣＰＵ２０６によるプログラムの実行や、通信部２０４及び撮像部２０３とシステム部２０２との間の入出力のための一時記憶領域として使用される。ＲＯＭ２０８は、ＣＰＵ２０６が実行するプログラムなどが格納される不揮発性の記憶部である。ＲＯＭ２０８に格納されるプログラムは、ＲＡＭ２０７に転送され、ＣＰＵ２０６によって読み出されて実行される。画像符号化部２０９は、撮像部２０３によって生成される画像データを、ＪＰＥＧやＨ．２６４などの圧縮形式の画像データに符号化する。画像符号化部２０９により符号化された画像データは、ＣＰＵ２０６によってＴＣＰ／ＩＰプロトコルスタックに基づいてフレームに変換され、転送処理部２２０へ入力される。すなわちシステム部２０２は、撮像部２０３と接続され転送処理部２２０へ画像データを入力する通信インターフェースとしての機能を有する。画像解析部２１０は、撮像部２０３が生成する画像データに対して、動体検出、人体や顔の検出、及び人物の認識などの画像解析処理を実行する。
【００３２】
撮像部２０３は、レンズ群２１１、ＣＣＤ（光電変換素子）２１２、ＣＣＤ制御部２１３、及び画像処理部２１４を含んでいる。レンズ群２１１は被写体像を光学的にＣＣＤ２１２へ投影するための複数枚のレンズで構成されている。ＣＣＤ２１２は、レンズ群２１１によって投影された像をアナログ電気信号に変換するための素子である。ＣＣＤ制御部２１３は、ＣＣＤ２１２に転送クロック信号やシャッター信号を入力するためのタイミングジェネレータや、ＣＣＤ２１２からの出力信号のノイズ除去やゲイン処理を行うための回路を含む。また、ＣＣＤ制御部２１３は、アナログ信号をデジタル信号に変換するためのＡ／Ｄ変換回路なども含んでいる。画像処理部２１４は、ＣＣＤ制御部２１３から出力されたデジタル信号に対してガンマ補正、色空間変換、ホワイトバランス補正及び露出補正等の画像処理を行う。撮像部２０３における以上の処理により、画像符号化部２０９において符号化可能な画像データが生成され、ＲＡＭ２０７へ出力される。
【００３３】
通信部２０４は、ローカルバス２１５、ＰＡＮ制御部２１６、ＬＡＮ制御部２１７、ＷＬＡＮ制御部２１８、転送入力部２１９、及び転送処理部２２０を備える。ローカルバス２１５は、ＰＡＮ制御部２１６、ＬＡＮ制御部２１７、転送入力部２１９、及び転送処理部２２０を接続し情報を伝達する。
【００３４】
ＰＡＮ制御部２１６は、ＷＳＮ１０８と接続する通信インターフェースとして機能し、無線ＰＡＮ規格に従ってＷＳＮ１０８との間におけるデータの送受信を実行する。また、ＰＡＮ制御部２１６は、例えばＺｉｇＢｅｅ等の無線通信規格に対応した接続制御を実行する。本実施形態では、通信装置１０１がメッシュネットワーク構成のＷＳＮ１０８に接続するものとしているが、通信装置１０１は各センサーとピアツーピア接続で通信してもよい。特にこのようなケースにおいて、ＰＡＮ制御部２１６はＢｌｕｅｔｏｏｔｈ規格に対応するものであってもよい。
【００３５】
ＬＡＮ制御部２１７は、ＬＡＮ／ＷＡＮ１０７に含まれる有線ＬＡＮ２２１と接続する通信インターフェースとして機能し、有線ＬＡＮ２２１との間におけるデータの送受信を実行する。また、ＬＡＮ制御部２１７には、伝送メディアのＰＨＹ及びＭＡＣ（伝送メディア制御）ハードウェア回路が含まれる。例えば通信装置１０１が接続する有線ＬＡＮ２２１がＥｔｈｅｒｎｅｔを用いるものである場合、ＬＡＮ制御部２１７は、Ｅｔｈｅｒｎｅｔ  ＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）に相当する。
【００３６】
ＷＬＡＮ制御部２１８は、ＬＡＮ／ＷＡＮ１０７に含まれる無線ＬＡＮ２２２と接続する通信インターフェースとして機能し、無線ＬＡＮ２２２との間におけるデータの送受信を実行する。ＷＬＡＮ制御部２１８にはＩＥＥＥ８０２．１１ａ／ｂ／ｇ／ｎ／ａｃ等の無線ＬＡＮ制御を実行するコントローラ及びＲＦ回路が含まれる。
【００３７】
転送入力部２１９は、ＰＡＮ制御部２１６がＷＳＮ１０８から受信したデータを、無線ＰＡＮ規格に応じたフレーム形式から転送処理部２２０が処理可能なＥｔｈｅｒｎｅｔフレーム形式に変換する。さらに転送入力部２１９は、該フレームのペイロードを、６ＬｏＷＰＡＮに応じた形式からＩＰｖ６パケットに応じた形式に変換する。そして転送入力部２１９は、これらの変換処理の後、該フレームを転送処理部２２０へ入力する。転送入力部２１９の詳細な説明については後述する。
【００３８】
転送処理部２２０は、複数の通信インターフェースを介して取得したデータを、画像データ処理装置１０２やセンサーデータ処理装置１０９等の情報処理装置へ送信するための、転送処理を行う。本実施形態において転送処理とは、転送処理部２２０が取得したフレームに対して行う処理である。具体的には、複数のフレームを単一のフレーム集約する処理や、フレームの宛先を書きかえる処理、ＬＡＮ制御部２１７又はＷＬＡＮ制御部２１８を介してフレームをＬＡＮ／ＷＡＮ１０７へ送信する処理などが含まれる。転送処理部２２０により取得されるフレームとしては、ＰＡＮ制御部２１６と転送入力部２１９とを介してＷＳＮ１０８から転送処理部２２０へ入力されるフレームや、システム部２０２を介して撮像部２０３から転送処理部２２０へ入力されるフレームがある。また転送処理部２２０は、ＬＡＮ制御部２１７やＷＬＡＮ制御部２１８を介してＬＡＮ／ＷＡＮ１０７から入力されるフレームの転送処理を行ってもよい。また、転送処理部２２０は、入力されたフレームがどの通信インターフェースから入力されたフレームであるかを判定し、当該判定結果に応じてフレームの集約処理を行う。転送処理部２２０の詳細な説明については後述する。
【００３９】
なお、本実施形態では通信装置１０１が撮像部２０３を内部に備えるハードウェア構成であるものとするが、撮像部２０３が通信装置１０１の外部に別の装置として存在していてもよい。この場合には、例えば、通信装置１０１と別体の撮像装置とが画像信号ケーブル等で接続される。転送処理部２２０は、撮像装置からシステム部２０２を介して画像データを取得してもよいし、ローカルバス２１５と接続する不図示の通信インターフェースを介して画像データを取得してもよい。
【００４０】
［転送入力部２１９の詳細］
次に、転送入力部２１９の詳細について説明する。図３は、転送入力部２１９の詳細なハードウェア構成を示している。転送入力部２１９は、フレームバッファ３０１、判定部３０２、変換部３０３、及びＤＭＡＣ（Ｄｉｒｅｃｔ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ  Ｃｏｎｔｒｏｌｌｅｒ）３０４を備える。
【００４１】
フレームバッファ３０１には、ＰＡＮ制御部２１６がＷＳＮ１０８から受信したフレームが、ローカルバス２１５を介して格納される。判定部３０２は、フレームバッファ３０１に格納されたフレームが、転送処理部２２０による転送処理の対象であるか否かを判定する。例えば、ＷＳＮ１０８内の通信を制御するためにＷＳＮ１０８内の装置間でのみ送受信される制御情報を構成するフレームは転送処理の対象でないと判定される。
【００４２】
変換部３０３は、転送処理部２２０による転送処理の対象であると判定部３０２により判定されたフレームを、転送処理部２２０が処理可能なＥｔｈｅｒｎｅｔフレーム形式に変換する。また、該フレームのペイロードを６ＬｏＷＰＡＮに応じた形式からＩＰｖ６パケットに応じた形式に変換する。ＤＭＡＣ３０４は、変換部３０３により変換されたフレームを転送処理部２２０にＤＭＡ転送する。またＤＭＡＣ３０４は、転送処理部２２０による転送処理の対象でないと判定部３０２により判定されたフレームを、フレームバッファ３０１からシステム部２０２内のＲＡＭ２０７へ転送する。ＲＡＭ２０７に転送されたフレームは、ＣＰＵ２０６によって処理される。
【００４３】
転送入力部２１９がフレームの変換処理を行うことで、Ｅｔｈｅｒｎｅｔフレーム形式のデータしか処理できない転送処理部２２０が、ＰＡＮ制御部２１６により受信されたフレームに対してフレームの集約処理等を含む転送処理を行うことができるようになる。
【００４４】
［転送処理部２２０の詳細］
次に、転送処理部２２０の詳細について説明する。本実施形態において通信装置１０１は、転送処理部２２０の機能によって、ＯｐｅｎＦｌｏｗ（登録商標）規格におけるＯｐｅｎＦｌｏｗスイッチとして動作する。ＯｐｅｎＦｌｏｗスイッチは、ＯｐｅｎＦｌｏｗコントローラからフロー情報と呼ばれる転送規則を受信する。本実施形態ではセンサーデータ処理装置１０９がＯｐｅｎＦｌｏｗコントローラとして動作する。フロー情報には、処理対象となるデータユニットを判別するための条件（マッチングルール）と、マッチングルールに適合したデータユニットに対して行われる１以上の処理の内容（アクションリスト）が含まれている。ＯｐｅｎＦｌｏｗスイッチは、ＯｐｅｎＦｌｏｗコントローラから受信した複数のフロー情報をフローテーブルとして記憶し、データユニットを取得した場合にはフローテーブルに基づいて決定された内容の処理を行う。アクションリストに含まれる処理としては、例えばデータユニットの宛先を書きかえて転送する処理等がある。ＯｐｅｎＦｌｏｗ技術を用いることで、通信装置１０１は、受信したセンサーデータの転送先を動的に変更することができる。
【００４５】
図４は、転送処理部２２０の詳細なハードウェア構成を示している。転送処理部２２０は、フレームバッファ４０１、制御用プロセッサ４０２、ローカルメモリ４０３、フロー情報管理部４０４、及びキュー管理部４０５を備える。制御用プロセッサ４０２は、転送処理部２２０による転送処理を実行するプロセッサである。ローカルメモリ４０３には、制御用プロセッサ４０２により実行されるプログラムが格納され、該プログラムの実行時にはデータの一時記憶領域としても利用される。
【００４６】
フロー情報管理部４０４は、転送処理部２２０に入力されたフレームに対する転送処理の内容を決定するためのフロー情報を管理する。図４に示すように、フロー情報管理部４０４はフロー情報処理部４１１とフロー情報記憶部４１２を含む。フロー情報記憶部４１２はフロー情報を記憶するメモリであり、フロー情報処理部４１１はフロー情報記憶部４１２に対するフロー情報の登録、削除、更新、及び検索を行う論理回路である。
【００４７】
キュー管理部４０５は、通信装置１０１が複数のフレームを単一のフレームに集約して転送するために、集約されるべきフレームをフレームの宛先毎にキューイングして管理する。図４に示すように、キュー管理部４０５は、データ転送部４１３、キュー管理制御部４１４、及びキュー記憶部４１５を含むように構成される。キュー記憶部４１５は、集約されるべきフレームを記憶しておくメモリである。キュー管理制御部４１４は、キュー記憶部４１５に記憶されるフレームを、フレームの宛先毎のキューとして管理する論理回路である。また、データ転送部４１３は、キュー記憶部４１５に対するフレームの入出力制御を行うＤＭＡ回路である。
【００４８】
前述したように、本実施形態において通信装置１０１には、センサーデータ処理装置１０９によりＯｐｅｎＦｌｏｗにおけるフロー情報が設定される。そして通信装置１０１は、設定されるフロー情報をフロー情報管理部４０４により管理する。具体的には、ＣＰＵ２０６がＯｐｅｎＦｌｏｗに応じた通信処理を実行し、センサーデータ処理装置１０９からフロー情報の設定や変更に関する指示データを受信し、ローカルメモリ４０３に指示データを記憶させる。そして制御用プロセッサ４０２が、ローカルメモリ４０３に記憶された指示データに従い、フロー情報管理部４０４に対してフロー情報の登録や更新等の制御を行う。なお、画像データ処理装置１０２やＬＡＮ／ＷＡＮ１０７と接続する他の装置等が通信装置１０１に対してフロー情報を設定してもよい。また、通信装置１０１がユーザーによる操作に応じてフロー情報を設定してもよいし、通信装置１０１において実行されるアプリケーションに応じてフロー情報が設定されてもよい。
【００４９】
また前述したように、転送入力部２１９は、ＰＡＮ制御部２１６を介して受信したセンサーデータのフレームを、転送処理部２２０が処理可能なフレーム形式に変換する。そして転送入力部２１９は、変換後のフレームをＤＭＡ転送により転送処理部２２０内のフレームバッファ４０１へ書き込む。また、ＣＰＵ２０６は、ＴＣＰ／ＩＰプロトコルスタックに基づいて生成した、撮像部２０３による撮像に基づく画像データのフレームを、フレームバッファ４０１へ書き込む。なお、ＬＡＮ制御部２１７及びＷＬＡＮ制御部２１８も、ＬＡＮ／ＷＡＮ１０７から受信したフレームをフレームバッファ４０１へ書き込んでもよい。
【００５０】
転送処理部２２０は、フレームバッファ４０１に書き込まれたフレームに対して転送処理を実行する。例えば転送処理部２２０は、フレームバッファ４０１に書きこまれた複数のフレームを、キュー管理部４０５により単一のフレームに集約する。そして転送処理部２２０は、フレームを、ＬＡＮ制御部２１７を介して有線ＬＡＮ２２１へ送出したり、ＷＬＡＮ制御部２１８を介して無線ＬＡＮ２２２へ送出したりする。
【００５１】
［転送処理部２２０の動作フロー］
次に、転送処理部２２０の転送処理に係る動作について、図５のフローチャートを参照して説明する。図５に示す処理は、制御用プロセッサ４０２がローカルメモリ４０３に記憶されたプログラムを実行することにより実現される。また、図５に示す処理は、転送処理部２２０がデータを取得したタイミング、すなわちフレームバッファ４０１にフレームが入力されたタイミングで開始され、各入力フレームに対して実行される。Ｓ５０１において、ＰＡＮ制御部２１６、システム部２０２、ＬＡＮ制御部２１７又はＷＬＡＮ制御部２１８の何れかの通信インターフェースを介してフレームバッファ４０１にフレームが入力され、処理が開始される。
【００５２】
Ｓ５０２において、転送処理部２２０は、Ｓ５０１において取得したフレームがＰＡＮ制御部２１６を介して取得したフレームであるかを判定する。なお、ＰＡＮ制御部２１６がＷＳＮ１０８から受信したフレームは、転送入力部２１９により、転送処理部２２０が送信可能なデータの形式へ変換された後に転送処理部２２０へ入力される。具体的には、転送入力部２１９内のＤＭＡＣ３０４が、転送処理部２２０が取得したフレームを記憶するフレームバッファ４０１に対して、ＰＡＮ制御部２１６により受信され変換部３０３により変換されたフレームを入力する。フレームの入力はＤＭＡ転送により行われ、ＤＭＡ転送が完了すると、制御用プロセッサ４０２はＤＭＡＣ３０４から入力の完了を示す通知を受信する。転送処理部２２０はこの通知の受信の有無に基づいて、転送入力部２１９からフレームが入力されたか否かを判断でき、取得したフレームがＰＡＮ制御部２１６を介して取得したフレームであるかを判定できる。ただし、転送処理部２２０により取得されたフレームがどの通信インターフェースを介して取得されたフレームであるかを判定する方法はこれに限らず、他の方法でもよい。
【００５３】
ここで、ＰＡＮ制御部２１６は、６ＬｏＷＰＡＮに従った通信が行われＭＴＵが小さいネットワークであるＷＳＮ１０８と接続する通信インターフェースとして機能する。そのため、ＰＡＮ制御部２１６を介して取得されるフレームは、ＬＡＮ／ＷＡＮ１０７を介して通信装置１０１が送信可能なフレームの最大サイズと比べて小さい。そこで、本実施形態において転送処理部２２０は、ＰＡＮ制御部２１６を介して取得した複数のフレームを集約し単一のフレームとして送信するためのフレーム集約処理を行う。すなわちＰＡＮ制御部２１６は、集約されるべきデータを取得するための通信インターフェースとして予め定められた通信インターフェースである。このような集約処理により、通信装置１０１から送信されるフレームの数を減らしてＬＡＮ／ＷＡＮ１０７の処理負荷を低減することができる。なお、集約されるべきデータを取得するための通信インターフェースは、通信装置１０１に固定的に設定されていてもよいし、通信装置１０１がユーザーによる指定などに応じて設定してもよいし、通信装置１０１が自動で選択して設定してもよい。
【００５４】
集約されるべきデータを取得するための通信インターフェースとして設定されるための条件としては、例えばデータ量が閾値以下であるデータユニットを伝送するネットワークと接続する通信インターフェースであること等が挙げられる。データ量が閾値以下であるデータユニットを伝送するネットワークは、例えばＭＴＵが閾値以下のネットワークである。また例えば、ＭＴＵは閾値より大きいが送受信装置間における制御により閾値以下のデータユニットしか伝送されないようなネットワークであってもよい。閾値の決め方としては、例えば集約されたデータユニットの送信に使用されるネットワーク（ＬＡＮ／ＷＡＮ１０７など）のＭＴＵの半分を閾値としてもよい。なお、閾値の決め方はこれに限定されない。また、集約されるべきデータを取得するための通信インターフェースとして設定されるための条件はこれに限らない。また、例えばフレーム形式の変換が必要ない場合などには、集約されるべきデータを取得するための通信インターフェースと転送処理部２２０との間に転送入力部２１９のような機能部が存在していなくてもよい。
【００５５】
本実施形態において、転送処理部２２０は、集約されるべきデータを取得するための通信インターフェースとして予め定められた通信インターフェースであるＰＡＮ制御部２１６とは異なる通信インターフェースを介したデータの取得も行う。具体的には、転送処理部２２０は、通信装置１０１が有する撮像部２０３により生成される画像データを取得するための通信インターフェースとして機能するシステム部２０２を介したデータの取得を行う。システム部２０２を介して取得される画像データはストリーミング伝送されるデータであり、集約処理を行わないことで画像データの取得から送信までの遅延を小さくできる。また転送処理部２２０は、データ量が閾値より大きいデータユニットを伝送するネットワークであるＬＡＮ／ＷＡＮ１０７と接続するＬＡＮ制御部２１７及びＷＬＡＮ制御部２１８を介してデータを取得してもよい。
【００５６】
Ｓ５０２における判定において、転送処理部２２０が取得したフレームがＰＡＮ制御部２１６とは異なる通信インターフェースを介して取得したフレームであった場合には、転送処理部２２０は、そのフレームが集約されるべきフレームではないと判定する。そしてＳ５０３に進み、転送処理部２２０は取得したフレームを転送する。具体的な処理としては、制御用プロセッサ４０２がフレームバッファ４０１内のフレームを、ＬＡＮ制御部２１７もしくはＷＬＡＮ制御部２１８の何れかの通信インターフェースへと転送する。そして、例えば取得したフレームが撮像部２０３により生成された画像データであった場合には、そのフレームは画像データ処理装置１０２へ送信される。Ｓ５０３において転送されるフレームに対してはフレームの集約処理が実行されないので、転送処理部２２０がそのフレームを取得してから転送するまでの遅延を短くできる。一方、Ｓ５０２における判定において、転送処理部２２０が取得したフレームがＰＡＮ制御部２１６を介して取得したフレームであった場合には、Ｓ５０４へ進む。
【００５７】
Ｓ５０４において、転送処理部２２０は、フロー情報記憶部４１２に記憶されているフロー情報から、Ｓ５０１において取得されたフレームバッファ４０１内のフレームと適合するフロー情報を検索する。具体的には、転送処理部２２０は、取得したフレームのヘッダ情報とペイロードのデータ形式の少なくとも何れかに基づいて、フロー情報のマッチングルールに関わる各種パラメータを抽出する。そして転送処理部２２０は、フロー情報管理部４０４を制御し、抽出したパラメータと適合するマッチングルールを有するフロー情報を検索する。
【００５８】
Ｓ５０５において、転送処理部２２０は、取得したフレームと適合するフロー情報がＳ５０４における検索で特定されたか否かに基づいて、取得したフレームが集約されるべきフレームであるかを判定する。適合するフロー情報が特定された場合はＳ５０７へ進み、そうでなければＳ５０６へ進む。Ｓ５０６に進んだ場合、転送処理部２２０は、入力されたフレームを転送せず破棄し、Ｓ５０９に進んで処理を終了する。このように、フロー情報に適合しないフレームが転送されずに破棄されることで、画像データ処理装置１０２やセンサーデータ処理装置１０９などの情報処理装置にとって不要なデータが通信装置１０１から情報処理装置へ送信されることが低減される。その結果、情報処理装置や通信装置１０１、及びＬＡＮ／ＷＡＮ１０７などのネットワークに係る負荷が低減される。
【００５９】
なお、取得したフレームに適合するフロー情報が特定されなかった場合に、転送処理部２２０は、そのフレームに適合するフロー情報をセンサーデータ処理装置１０９に要求してもよい。そして転送処理部２２０は、要求に応じてセンサーデータ処理装置１０９から送信されたフロー情報をフロー情報記憶部４１２に記憶し、Ｓ５０７の処理に進んでもよい。
【００６０】
Ｓ５０７において、転送処理部２２０は、Ｓ５０４における検索により特定されたフロー情報のアクションリストに応じた処理を実行する。例えば、転送処理部２２０は、取得したフレームのＥｔｈｅｒｎｅｔヘッダ情報やＩＰｖ６ヘッダ情報を変更することで、そのフレームの宛先のＩＰアドレスやＭＡＣアドレスを設定する。具体的には、取得されたフレームが画像データ処理装置１０２へ転送されるべきセンサーデータのフレームである場合には、そのフレームのＩＰｖ６ヘッダの宛先アドレスが画像データ処理装置１０２のアドレスに設定される。また、取得されたフレームがセンサーデータ処理装置１０９へ転送されるべきセンサーデータのフレームである場合には、そのフレームの宛先がセンサーデータ処理装置１０９に設定される。Ｓ５０７の処理により、転送処理部２２０へ入力されたフレームが、ＬＡＮ制御部２１７またはＷＬＡＮ制御部２１８により送信されるフレームとして再形成される。なお、転送処理部２２０は、取得したフレームをコピーして、画像データ処理装置１０２を宛先とするフレームとセンサーデータ処理装置１０９を宛先とするデータとを生成してもよい。
【００６１】
本実施形態において、センサーデータの宛先は、そのセンサーデータが撮像部２０３により生成される画像データに関連付けられるセンサーデータであるか否かに応じて決まる。具体的には、センサーデータ処理装置１０９が、撮像部２０３が撮像する対象物に設置されたセンサーや、撮像部２０３の撮像対象エリア内に設置されたセンサーによるセンサーデータを、画像データに関連付けられるセンサーデータとして指定する。ただしこれに限らず、振動や侵入検知など特定の種別の検知結果を含むセンサーデータが画像データに関連付けられるセンサーデータとして指定され、それ以外のセンサーデータが画像データに関連付けられないセンサーデータとして指定されてもよい。
【００６２】
そしてセンサーデータ処理装置１０９は、画像データと関連付けられるセンサーデータが画像データ処理装置１０２に転送されるように、通信装置１０１に対してフロー情報を設定する。また、画像データと関連付けられないセンサーデータはセンサーデータ処理装置１０９に転送されるように、フロー情報が設定される。これにより、画像データとセンサーデータとを関連付けた処理を行う画像データ処理装置１０２にとって必要なセンサーデータだけが通信装置１０１から画像データ処理装置１０２に送信される。そして、画像データ処理装置１０２における処理に用いられないセンサーデータはセンサーデータ処理装置１０９に送信され、画像データと関連しないセンサーデータの解析処理等が実行される。このように通信装置１０１は、データの使用目的に応じた転送先へデータを転送することができる。なお、画像データと関連付けられるセンサーデータが画像データ処理装置１０２とセンサーデータ処理装置１０９の両方に転送されるようにフロー情報が設定されてもよい。
【００６３】
Ｓ５０８において、転送処理部２２０は、取得したフレームを他のフレームと共に単一のフレームに集約して送信するための処理を行う。Ｓ５０８の処理の詳細については図６を用いて後述する。Ｓ５０８の処理の後、Ｓ５０９に進み、本フローの処理が終了する。以上のように、転送処理部２２０は、取得したフレームが集約されるべきフレームであるかを、そのフレームがＰＡＮ制御部２１６を介して取得されたフレームであるかに基づいて判定する。そして転送処理部２２０は、集約されるべきデータであると判定された複数のフレームを単一のフレームに集約して情報処理装置へ送信する。
【００６４】
なお、本実施形態では、予め定められた通信インターフェースを介して取得されたフレームであるとＳ５０２において判定されたフレームのうち、Ｓ５０５において適合するフロー情報が特定されたフレームが、集約されるべきフレームであると判定される。これにより、転送の必要がないフレームに対して不要な集約処理が行われることを抑制できる。しかしながらこれに限らず、転送処理部２２０により取得されたフレームは、予め定められた通信インターフェースを介して取得されたフレームである場合に、フロー情報に関わらず、集約されるべきフレームであると判定されてもよい。また、予め定められた通信インターフェースを介して取得されたフレームであり且つ適合するフロー情報が特定されたフレームであっても、フロー情報のアクションリストの内容によっては、集約されるべきフレームでないと判定されてもよい。
【００６５】
次に、Ｓ５０８における処理の詳細を、図６を用いて説明する。図６の処理は、図５のＳ５０７において、転送処理部２２０により取得された対象フレームに対してフロー情報に応じた処理が実行されたタイミングで、Ｓ６０１から開始される。図６に示す処理は、キュー管理部４０５が実行する処理であり、制御用プロセッサ４０２がキュー管理部４０５に対して対象フレームの宛先のＩＰｖ６アドレスと共に操作指示を通知したこと応じて実行される。Ｓ６０２において、キュー管理部４０５は、対象フレームの宛先のＩＰｖ６アドレスと対応付けて管理されている転送フレームキューがあるか否かを確認する。該当するキューが有ればＳ６０５に進み、無ければＳ６０３へと進む。
【００６６】
Ｓ６０３において、対象フレームの宛先のＩＰｖ６アドレスと対応付けて管理される転送フレームキューが新規に作成される。具体的には、制御用プロセッサ４０２がキュー管理部４０５に対し、該アドレスを指定したキュー作成指示を出す。この指示を受けて、キュー管理部４０５は新規の転送フレームキューを作成する。また、キュー管理部４０５は、作成するキューについて、フレームを保持する時間の期限や、保持するフレームの合計サイズの最大値、及びキュー内のフレームの送信に使用する通信インターフェースを特定する情報などを有する管理情報を設定する。なお管理情報は、制御用プロセッサ４０２からの指示に基づいて設定されてもよい。Ｓ６０４において、キュー管理部４０５は、新しく作成した転送フレームキューにおけるフレーム保持時間の計時を開始する。
【００６７】
Ｓ６０５において、対象フレームが、宛先のＩＰｖ６アドレスに対応する転送フレームキューへキューイングされる。具体的には、フレームバッファ４０１内の対象フレームがキュー管理部４０５内のキュー記憶部４１５へＤＭＡ転送される。そしてキュー管理制御部４１４が、対象フレームがキューイングされた転送フレームキューの状態情報を更新する。状態情報には、少なくともキューイングされているフレームの合計サイズが含まれるものとする。Ｓ６０６において、キュー管理部４０５は、転送フレームキューにキューイングされているフレームの合計サイズが閾値未満であるかを判定する。なお、閾値は制御用プロセッサ４０２による操作指示に応じて決定され、送信される集約済みフレームのサイズがこの閾値によって制御される。キューイングされているフレームの合計サイズが閾値未満であった場合、Ｓ６０９へ進んで本フローの処理が終了する。即ち、転送処理部２２０により取得された対象フレームはこの時点では送信されず、他のフレームと共に集約されるのを待つことになる。
【００６８】
一方、転送フレームキューにキューイングされているフレームの合計サイズが閾値以上である場合は、Ｓ６０７に進み、該転送フレームキュー内のフレームの送信処理が実行される。なお、Ｓ６０７における処理の詳細については図８を用いて後述する。Ｓ６０８において、キュー管理部４０５は、送信処理が実行された転送フレームキューを削除する。具体的には、該キューにキューイングされていた、キュー記憶部４１５内のフレームが削除され、キュー管理制御部４１４が該キューの管理情報を削除する。そしてＳ６０９に進み本フローの処理が終了する。
【００６９】
次に、転送フレームキューにキューイングされたフレームの送信タイミングを判定する処理について、図７を用いて説明する。図７に示す処理は、制御用プロセッサ４０２がローカルメモリ４０３に記憶されたプログラムを実行することにより実現され、各転送フレームキューに対して実行される。図７の処理は、図６のＳ６０３において転送フレームキューが作成されたタイミングで、Ｓ７０１から開始される。ただし、図７の処理の開始タイミングはこれに限定されない。
【００７０】
Ｓ７０２において、転送処理部２２０は、Ｓ６０４において計時が開始されたフレーム保持時間が、キュー管理部４０５に設定されている管理情報に含まれる保持時間の期限を超過しているか否かを判定する。この判定は、制御用プロセッサ４０２がキュー管理部４０５への問い合わせ指示を行うことにより実行される。フレーム保持時間が期限を超過している場合はＳ７０６へ進み、そうでなければＳ７０３へと進む。
【００７１】
Ｓ７０３において、転送処理部２２０は、転送フレームキューにキューイングされているフレームの送信処理を開始するか否かを判定するための判定処理を行う。Ｓ７０３における判定処理の詳細については後述する。この判定処理の結果に基づいて、Ｓ７０４において送信処理を開始しないと判定された場合にはＳ７０２に戻り、送信処理を開始すると判定された場合にはＳ７０５へ進みフレームの送信処理を実行する。なお、Ｓ７０５におけるフレームの送信処理の内容はＳ６０７における処理と同様であり、その詳細については後述する。
【００７２】
Ｓ７０６において、Ｓ６０８と同様の処理が行われ、転送フレームキューが削除される。つまり、保持時間が期限を超過した転送フレームキューにキューイングされていたフレームは、全て転送されずに破棄されることになる。これにより、生成されてから長い時間が経過し情報処理装置に転送される必要がなくなったセンサーデータの転送に係る処理負荷を低減できる。なおこれに限らず、転送フレームキューにキューイングされているフレームに対して、保持時間が期限を超過した時点でＳ７０５の送信処理が実行されてもよい。Ｓ７０６の処理の後にＳ７０７に進み、本フローの処理は終了する。
【００７３】
なお、図７に示す処理は、制御用プロセッサ４０２によりプリエンプティブマルチタスク処理を実現することで、キュー管理部４０５により管理されている転送フレームキューのそれぞれに対して実行される。具体的には、Ｓ６０３において転送フレームキューが新規作成される際に図７の処理に対応するタスクが生成され、Ｓ６０８やＳ７０６において転送フレームキューが削除される際に該タスクが削除される。
【００７４】
次に、Ｓ６０７及びＳ７０５におけるフレームの送信処理の詳細について、図８を用いて説明する。図８の処理は、制御用プロセッサ４０２がローカルメモリ４０３に記憶されたプログラムを実行することにより実現される。図８の処理は、Ｓ６０６において転送フレームキュー内のフレームの合計サイズが閾値以上であると判定されたタイミング、又はＳ７０４において送信処理が行われると判定されたタイミングで、Ｓ８０１から開始される。
【００７５】
Ｓ８０２において、転送処理部２２０は、転送フレームキューにキューイングされているフレームから集約フレームを生成するか否かを判定する。集約フレームとは、複数のフレームに基づいて生成される単一のフレームである。例えば、転送フレームキューには、ＷＳＮ１０８内のあるセンサーから異なる時刻に送信された複数のセンサーデータのフレームや、ＷＳＮ１０８内の複数のセンサーから送信された複数のセンサーデータのフレームがキューイングされている。転送処理部２２０はこれら複数のセンサーデータのフレームのペイロードを結合して単一のヘッダを付加することで、集約フレームを生成することができる。通信装置１０１から送信された集約フレームを受信した装置は、その集約フレームに対して分割処理を行うことで、集約前の複数のフレームを再生成することができる。
【００７６】
このように、通信装置１０１が送信すべき複数のフレームをより少数のフレームに集約することで、集約が行われずにサイズが小さいフレームが頻繁に送信される場合と比べて、通信システム１００の負荷を低減できる。具体的には、複数のフレームが有する複数のヘッダを単一のヘッダに置き換えてフレームを集約することで、送信すべきデータ全体のデータ量を削減することができる。また、通信装置１０１の送信能力は、単位時間あたりに送信可能なデータ量により制限されるだけでなく、単位時間あたりに送信可能なフレーム数によっても制限される。そのため、集約によって通信装置１０１が送信するフレーム数を削減することで、通信装置１０１による送信処理の効率を向上できる。
【００７７】
集約フレームの例としては、ＩＥＥＥ８０２．１１ｎやＩＥＥＥ８０２．１１ａｃにおいて規定されるＡ−ＭＰＤＵ（Ａｇｇｒｅｇａｔｉｏｎ  ＭＡＣ  Ｐｒｏｔｏｃｏｌ  Ｄａｔａ  Ｕｎｉｔ）が挙げられる。Ａ−ＭＰＤＵが集約フレームとして使用される場合には、Ｓ８０２において転送処理部２２０は、例えば転送フレームキュー内の複数のフレームからＡ−ＭＰＤＵを生成できるか否かに関する判定を行う。具体的には、転送フレームキュー内のフレームがＷＬＡＮ制御部２１８を介して送信されるフレームであり、且つＷＬＡＮ制御部２１８においてフレームアグリゲーションの機能が有効となっている場合に、集約フレームを作成すると判定され、Ｓ８０３へ進む。そうでない場合にはＳ８０４へ進む。
【００７８】
なお、集約フレームはＡ−ＭＰＤＵに限らない。同一の転送フレームキューにキューイングされる複数のフレームは、同一のＩＰｖ６アドレスを宛先とするフレームである。そのため、転送フレームキュー内の複数のフレームをペイロードに含む単一のＩＰｖ６パケットを生成し、そのＩＰｖ６パケットをカプセル化した単一のフレームを、集約フレームとしてもよい。この場合には、Ｓ８０２において転送処理部２２０は、例えば複数フレームのペイロードを含むように生成されるＩＰｖ６パケットのデータ量に関する判定を行う。具体的には、生成されるＩＰｖ６パケットのデータ量がＬＡＮ／ＷＡＮ１０７におけるＩＰ層のＭＴＵ以下である場合に、集約フレームを作成すると判定され、Ｓ８０３へ進む。そうでない場合にはＳ８０４へ進む。
【００７９】
なお、Ｓ８０２における判定の内容は上記のものに限らない。また、転送処理部２２０は、転送フレームキューにキューイングされているフレームの個数が１である場合には、集約フレームを作成しないと判定する。Ｓ８０４に進んだ場合、転送処理部２２０は、転送フレームキューにキューイングされている全てのフレームをそれぞれ送信する。そしてＳ８０６に進み、本フローの送信処理は終了する。
【００８０】
一方Ｓ８０３に進んだ場合、転送処理部２２０は転送フレームキューにキューイングされている複数のフレームから集約フレームを生成し、Ｓ８０５において集約フレームを送信する。そしてＳ８０６に進み、本フローの送信処理は終了する。なお、Ｓ８０４及びＳ８０５におけるフレームの送信においては、転送フレームキューの管理情報に設定されている通信インターフェースを介してフレームが送信される。具体的には、転送処理部２２０がデータ転送部４１３を用いてＬＡＮ制御部２１７もしくはＷＬＡＮ制御部２１８へフレームをＤＭＡ転送し、転送されたフレームはＬＡＮ／ＷＡＮ１０７へ送信される。以上のように、転送処理部２２０は、集約されるべきフレームであると判定されたフレームであって宛先が同一である複数のフレームを、単一のフレームに集約して当該宛先の情報処理装置へ送信する。これにより、送信された単一のフレームが宛先の情報処理装置へ伝送されるまでの間に分割される必要はなくなる。ただし、通信装置１０１と情報処理装置との間に存在する中継装置がフレームの分割処理や集約処理などを行う場合などには、転送処理部２２０は宛先が異なる複数のフレームを単一のフレームに集約して送信してもよい。
【００８１】
次に、図７のＳ７０３における判定処理について説明する。この処理では、転送処理部２２０が、転送フレームキューにキューイングされているフレームの送信処理を開始するか否かを判定する。以下に、Ｓ７０３における判定処理の例を３つ挙げる。なお、１つの転送フレームキューに対する判定処理が以下に示す複数の条件に基づいて行われてもよい。
【００８２】
第１の例として、転送処理部２２０は、転送フレームキューにキューイングされているフレームの数が予め設定された閾値に達しているか否かに基づいて、送信処理を開始するか否かを判定する。この判定処理は、転送フレームキュー毎に管理される状態情報に、キューイングされているフレームの数を示すカウンタを含め、そのカウンタと比較するための閾値を示すパラメータを該キューの管理情報に含めることで実現できる。キューイングされているフレームの数が閾値以上である場合に、送信処理が開始される。
【００８３】
第２の例として、転送処理部２２０は、転送フレームキューに特定のフレームがキューイングされたか否かに基づいて、送信処理を開始するか否かを判定する。この判定処理を実現するために、転送処理部２２０に設定されるフロー情報のアクションリストには、マッチングルールに適合したフレームにフラグを設定する処理が含まれる。転送処理部２２０は、フレームをキューイングする際に、そのフレームに上記のフラグが設定されている場合には、キューイング先の転送フレームキューの状態情報に転送待ちの解除を示す値を設定する。そしてＳ７０３の判定処理において、転送処理部２２０は、状態情報に転送待ちの解除を示す値が設定されている場合に送信処理を開始すると判定する。これにより転送処理部２２０は、例えば緊急性が高いセンサーデータを取得した場合に、同じ宛先の転送待ちのフレームとまとめて直ちに送信することができる。
【００８４】
第３の例として、転送処理部２２０は、画像解析部２１０による解析結果に基づいて、送信処理を開始するか否かを判定する。この判定処理を実現するために、転送処理部２２０は、撮像部２０３による撮像画像に対する解析結果を画像解析部２１０から取得する。そして転送処理部２２０は、取得した解析結果が動体の検出や人物の認識等の所定のイベントの発生を示している場合に、送信処理を開始すると判定する。すなわち、転送処理部２２０は、集約されるべきデータであると判定されたデータを、画像解析部２１０から取得した解析結果に基づくタイミングで、複数のフレームから単一のフレームに集約して送信する。これにより通信装置１０１は、例えば撮像画像に基づいて所定のイベントの発生が検知された場合に、イベント発生時刻の近傍の時刻におけるセンサーの検知結果を画像データ処理装置１０２に通知することができるようになる。
【００８５】
なお、送信処理が開始される条件は転送フレームキュー毎に異なっていてもよい。例えば上記の第３の例において、条件となる所定のイベントの内容が転送フレームキュー毎に異なっていてもよい。すなわち、送信処理の対象となる転送フレームキューが画像データの解析結果に応じて異なっていてもよい。また、キューイングされているフレームの宛先は転送フレームキュー毎に異なるため、転送処理部２２０は、例えば宛先となる情報処理装置の負荷状況や、宛先までの通信経路となるネットワークの状況に応じて、送信処理を開始するか否か判定することもできる。
【００８６】
以上説明したように、本実施形態に係る通信装置１０１は、複数の通信インターフェースを介してデータを取得する。そして通信装置１０１は、取得したデータを複数のデータユニットからより少数のデータユニットに集約するかを、予め定められた通信インターフェースを介して当該データが取得されたかに基づいて判定する。さらに通信装置１０１は、集約すると判定されたデータを、複数のデータユニットからより少数のデータユニットに集約して情報処理装置へ送信する。これにより通信装置１０１は、取得したデータを複数のデータユニットからより少数のデータユニットに集約するかを判定するための処理に係る処理負荷を低減することができる。
【００８７】
なお本実施形態では、通信装置１０１がデータの取得に使用する通信インターフェースが、システム部２０２、ＰＡＮ制御部２１６、ＬＡＮ制御部２１７及びＷＬＡＮ制御部２１８である場合を中心に説明した。ただし、通信装置１０１は複数の通信インターフェースを有していればよく、通信装置１０１が有する通信インターフェースは上記のものに限定されない。また、集約されるべきデータを取得するための通信インターフェースとして予め定められた通信インターフェースも、ＰＡＮ制御部２１６に限らず、他の通信インターフェースであってよい。
【００８８】
また本実施形態では、通信装置１０１が取得した複数のフレームを単一のフレームに集約して送信する場合を中心に説明した。ただしこれに限らず、通信装置１０１は取得した複数のデータユニットを単一のデータユニットに集約して送信すればよい。例えば通信装置１０１は、取得したデータが複数のパケットから単一のパケットに集約されるべきデータであるかを、そのデータが予め定められた通信インターフェースを介して取得したデータであるかに基づいて判定してもよい。そして通信装置１０１は、集約されるべきであると判定されたデータを、複数のパケットから単一のパケットに集約して情報処理装置へ送信してもよい。例えば通信装置１０１が複数のＴＣＰパケットを単一のＴＣＰパケットに集約して送信することで、受信すべきＡＣＫパケットの数を削減でき、ネットワークの通信効率を向上させることができる。
【００８９】
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ等）によっても実現可能である。また、そのプログラムをコンピュータにより読み取り可能な記録媒体に記録して提供してもよい。
【符号の説明】
【００９０】
１００  通信システム
１０１  通信装置
１０２  画像データ処理装置
１０９  センサーデータ処理装置
２１６  ＰＡＮ制御部
２１７  ＬＡＮ制御部
２１８  ＷＬＡＮ制御部
【図１】
2019012946.tif 000003
【図２】
2019012946.tif 000004
【図３】
2019012946.tif 000005
【図４】
2019012946.tif 000006
【図５】
2019012946.tif 000007
【図６】
2019012946.tif 000008
【図７】
2019012946.tif 000009
【図８】
2019012946.tif 000010