(57)【要約】【課題】センサー情報をサーバにアップロードする従来の収集システムでは、センサーにあらかじめサーバのアドレス情報を登録しておく必要があり，設定作業が煩雑になる課題があった。【解決手段】センサーとサーバの間にボーダルータ（ゲートウェイ装置）を導入する。センサーにはサーバのアドレスが設定されていないため、自身のアドレスが確定した後にセンサーデータ情報をボーダルータに対して送信する。ボーダルータはセンサー情報をセンサデータ管理サーバまで中継してデータ収集を実施する。これによりサーバ側はセンサーのアドレスを検出し、センサーアドレス宛のPull型データ収集も実施できる。【選択図】  図１
2014078773.tif 000002
【特許請求の範囲】
【請求項１】
複数の機器の少なくとも一部を収容する第１ルータについて収容する第２ルータとインターネットを介して接続する機器管理サーバと、
前記第２ルータと前記インターネットを介して接続する機器データ管理サーバとを備えるデータ管理システムであって、
前記機器管理サーバは、前記第２ルータから受信する、前記複数の機器の登録要求に基づいて、前記複数の機器のアドレス情報と、前記第２ルータのアドレス情報とを対応させて格納し、
前記機器データ管理サーバは、前記第２ルータから受信する、前記機器に由来しかつ前記第２ルータが中継処理をしたデータを、由来する前記機器のアドレス情報に対応つけて格納することを特徴とするデータ管理システム。
【請求項２】
前記第２ルータは、前記中継処理をするためのアプリケーションを備え、前記アプリケーションは、前記データを、前記前記複数の機器と前記第１ルータ及び前記第２ルータとが通信するネットワークに適した転送プロトコルから前記インターネットに適した転送プロトコルへ変換することを特徴とする請求項１に記載のデータ管理システム。
【請求項３】
前記複数の機器と前記第１ルータ及び前記第２ルータとが通信するネットワークは、ＩＰｖ６を用いることを特徴とする請求項１乃至請求項２に記載のデータ管理システム。
【請求項４】
前記複数の機器と前記第１ルータ及び前記第２ルータとが通信するネットワークは、前記インターネットと異なるネットワーク層プロトコルに従うものであることを特徴とする請求項１乃至請求項３に記載のデータ管理システム。
【請求項５】
前記複数の機器と前記第１ルータ及び前記第２ルータとが通信するネットワークは、ＩＰｖ６  ｏｖｅｒ  Ｌｏｗ−Ｐｏｗｅｒ  Ｗｉｒｅｌｅｓｓ  Ｐｅｒｓｏｎａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋｓを用いることを特徴とする請求項１乃至請求項４に記載のデータ管理システム。
【請求項６】
前記第２ルータはゲートウェイプログラムを備え、前記ゲートウェイプログラムは、アプリケーション転送プロトコルスタック、ＩＰｖ６スタック、6LoWPANスタック、及びIEEE802.15.4 MACスタックを有することを特徴とする請求項１乃至請求項５に記載のデータ管理システム。
【請求項７】
前記第２ルータはゲートウェイプログラムを備え、前記ゲートウェイプログラムは、カーネルのシリアルデバイスから受信する、前記第１ルータからの第１パケットに終端処理と前記中継処理とを行い第２パケットとし、前記第２パケットを前記カーネルの仮想ネットワークデバイスへ書き込むことにより、前記第２パケットを前記機器データ管理サーバに送信することを特徴とする請求項１乃至請求項６に記載のデータ管理システム。
【請求項８】
前記第２ルータはゲートウェイプログラムを備え、前記ゲートウェイプログラムは、カーネルのネットワークデバイスから受信する、前記機器データ管理サーバからの第３パケットに前記ＩＰｖ６ over Low-Power Wireless Personal Area Networksに沿った処理と、前記IEEE802.15.4に沿ったＭＡＣ処理と、前記中継処理を行い第４パケットとし、前記第４パケットを前記カーネルのシリアルデバイスへの書き込むことにより、前記機器に送信することを特徴とする請求項６に記載のデータ管理システム。
【請求項９】
前記機器管理サーバは、前記機器管理サーバのアドレス情報を含むプログラムを前記第２ルータにダウンロードさせることを特徴とする請求項１乃至請求項８に記載のデータ管理システム。
【請求項１０】
前記機器管理サーバは、前記第２ルータからの問合せへの応答として前記データ管理サーバのアドレス情報を前記第２ルータに送信し、
前記機器データ管理サーバは、前記データ管理サーバのアドレス情報を用いる前記第２ルータからデータ登録要求を受信するときに、前記データを格納することを特徴とする請求項１乃至請求項９に記載のデータ管理システム。
【請求項１１】
前記機器データ管理サーバは、前記データに対応付けて格納されている前記機器のアドレス情報に基づいて、前記機器に対してデータ登録要求を送信し、前記機器からデータ登録応答を受信するときに、新たにデータを格納することを特徴とする請求項１０に記載のデータ管理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、無線機器からのデータ収集を行うシステムに関する。
【背景技術】
【０００２】
インタネットや携帯電話、全地球測位システム(GPS)、無線ICタグ、スマートメーターなどの普及で、世界中で生み出されるデータ量は５年ごとに１０倍の勢いで急増している。 しかも、その８割は文章や動画像、センサー情報など従来のコンピュータシステムでは 管理や分析が難しい「非構造型データ」が占めるとされている。
【０００３】
多くのモノからの情報に基づいてモノを制御する、いわゆるM2M（Machine-to-Machine）システムの代表例としては、自動販売機、ホームセキュリティがある。これらのシステムでは、ネットワークI/Fを持っていない機器をネットワークに接続するために、独自規格のアダプタを用意することにより接続を実現している。このために設置コストが高くなる傾向があり、一般消費者の世界まで遍くM2Mサービスを拡げていくためには、前記のコスト課題とサービスにより受益者を受ける恩恵がコストに見合うものでなければならないという二つの課題があった。また、センサーに代表される機器をネットワークにつなげるためには、携帯電話と同じようなネットワークI/Fの内蔵が必要であった。近年、IEEE802.15.4などの低電力無線技術を使ったスマートメータ、各種ネットワーク家電機器のネットワーク接続により、コミュニティ全体として有効なエネルギー資源の活用を行う需要がある。そのために、センサーから収集したデータに基づいて全体最適化を行うBEMS、CEMS, HEMS制御に対する需要が高まっている。
【０００４】
例えば、温度、湿度、気圧、風向、放射能データなどの生活環境センサー情報について、ビッグデータ解析の生データとして様々なコミュニティへ活用することが期待されている。
【０００５】
例えば、非特許文献１には、低電力で損失的な無線ネットワークについて、IPv6 Neighbor Discoveryという概念が提案されている。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】Z. Shelby, Ed.他著、”Neighbor Discovery Optimization for Low Power and Lossy Networks, (6LoWPAN),draft-ietf-6lowpan-nd-21”、 ［online］、2012年8月24日、Internet Engineering Task Force (IETF)、インターネット〈URL：http://tools.ietf.org/html/draft-ietf-6lowpan-nd-21〉
【発明の概要】
【発明が解決しようとする課題】
【０００７】
機器のセンサー情報をクラウドサーバにアップロードする従来のデータ収集システムでは、センサーにあらかじめデータ登録を行うクラウドサーバのアドレス情報を登録しておく必要がある。この場合、センサー機器側にクラウドサーバのアドレス情報を予め設定しておいたり遠隔サーバからクラウドサーバのアドレスを設定する。しかしながら、この場合、システム全体の管理の煩雑につながるために、センサー機器の大量配置により、ビッグデータを収集するような大規模システム構築は非常に困難である。近年、非特許文献１に記載されるIPv6 over Low-Power Wireless Personal Area Networks （6LoWPAN）と呼ばれるネットワークプロトコルが提案されている。6LoWPANを採用したIPv6ベースのセンサー機器をM2M/IoT（Internet of Things）に採用する向きが盛り上がっている。しかしながら、6LoWPANネットワーク機能つきのセンサー機器を導入後簡単にクラウドなどのサーバにつなげることが課題となっている。
【課題を解決するための手段】
【０００８】
本発明によるデータ管理システムは一例として、  複数の機器の少なくとも一部を収容する第１ルータについて収容する第２ルータとインターネットを介して接続する機器管理サーバと、前記第２ルータと前記インターネットを介して接続する機器データ管理サーバとを備えるデータ管理システムであって、前記機器管理サーバは、前記第２ルータから受信する、前記複数の機器の登録要求に基づいて、前記複数の機器のアドレス情報と、前記第２ルータのアドレス情報とを対応させて格納し、前記機器データ管理サーバは、前記第２ルータから受信する、前記機器に由来しかつ前記第２ルータが中継処理をしたデータを、由来する前記機器のアドレス情報に対応つけて格納することを特徴とする。
【発明の効果】
【０００９】
従来は個別のレガシー通信技術を使って構築していたデータ収集システムを、センサー機器、及びＩＰベースのボーダルータを使って実現でき、柔軟性の高いデータ管理ができる。また、ボーダルータ上で動くゲートウェイプログラムを利用シーンに合わせて設定する場合、ビッグデータなどの膨大なデータを活用する多種多様なデータ用途に対応する、柔軟性の高いデータ管理ができる。
【図面の簡単な説明】
【００１０】
【図１】システム構成の一例を示す機能ブロック図。
【図２】センサー機器の構成の一例を示す機能ブロック図。
【図３】中継ルータの構成の一例を示す機能ブロック図。
【図４】ボーダルータの構成の一例を示す機能ブロック図。
【図５】機器管理サーバの構成の一例を示す機能ブロック図。
【図６】機器データ管理サーバの構成の一例を示す機能ブロック図。
【図７】機器登録方法の一例を示すシーケンス図。
【図８】プッシュ型データ登録方法の一例を示すシーケンス図。
【図９】プル型データ登録方法の一例を示すシーケンス図。
【図１０】機器管理DBのテーブルの一例を示す図。
【図１１】機器データ管理DBのテーブルの一例を示す図。
【図１２】ゲートウェイアプリケーション部ソフトウェア構成の一例を示す機能ブロック図。
【発明を実施するための形態】
【００１１】
本実施例の概要を図１を参照に説明する。本実施例では、センサー機器とクラウドサーバなどのサーバの間にボーダルータと呼ぶゲートウェイ装置を導入する。このゲートウェイ装置は主として６LoWPANドメインで管理するセンサー機器に対して、RPLと呼ばれるアドホックルーティングプロトコルなどを使って、インターネット側からボーダゲートウェイに割り当てられたIPv6プレフィックス情報をセンサー機器側に通知する。センサー機器、ルータは広告されたIPv6プレフックス情報に自分のMACアドレスを付加することで、インターネットと通信するためのグローバルIPv6アドレスを確定する。センサー機器１０１にはデータ登録先のクラウドサーバなどのサーバ群（１０４、１０５）のアドレスは設定されていないが、6LoWPAN、及びRPLプロトコルなどを用い、センサー機器１０１がボーダルータ１０３のアドレスを自動認識できる。このため、センサー機器１０１はクラウドサーバなどのサーバに蓄積するためのデータをボーダルータ１０３宛に送信する。ボーダルータ１０３は、インターネットを通じて予め機器管理サーバ１０４からゲートウェイアプリケーション４０７をダウンロードしておき、そのアプリケーションがデータを登録する機器データ管理サーバ１０５まで中継に寄与する。この手段により上り方向のデータ自動収集が可能となる。上り方向のセンサーデータが機器データ管理サーバ１０５に到達することにより、機器データ管理サーバ１０５にはセンサー機器１０１のアドレスとセンサーデータがデータベースに登録される。そのため、機器データ管理サーバ１０５が登録済みのセンサー機器のアドレス宛に直接データ収集要求を出すことにより、インターネット側からのプル型データ収集も可能となる。以上より、センサー機器が送信するデータ収集のみならず、インターネット（クラウド）側からの要求に基づいたオンデマンド型のデータ収集も自動的に行うことができ、ビッグデータなどのデータの収集を、主としてＩＰベースの制御で簡易に実行できる。
【００１２】
以下、図面を参照して本発明の実施例を詳細に説明する。
【実施例１】
【００１３】
図１は、システムの一実施例を示すシステム構成図である。６ＬｏＷＰＡＮ，及びＲＰＬ(Routing Protocol for Low-Power and Lossy Networks)に従うセンサー機器１０１、ルータ１０２、ボーダルータ１０３により６ＬｏＷＰＡＮと呼ばれる狭帯域・低消費電力向けのＰＡＮ（Ｐｅｒｓｏｎａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）を構成する。６ＬｏＷＰＡＮではネットワーク層のプロトコルとしてＩＰｖ６を用いる。また、センサー機器１０１は簡単のため１つのみ記載するが、複数配置する。複数のセンサー機器１０１は、ローカルルータ１０２  配下に複数配置したり、ローカルルータ１０２を複数配置しその各々の配下に１つ以上配置したりしてもよい。ボーダルータ１０３を境界としてインターネット（クラウド）側では、機器管理サーバ１０４、および機器データ管理サーバ１０５が位置し、ボーダルータ１０３を境界として６ＬｏＷＰＡＮ側と相互接続する構成をとる。
【００１４】
図２は、センサー機器１０１の一実施例を示すハードウェア構成図である。ＭＣＵ（Micro Control Unitマイクロコントロールユニット、マイクロ制御装置）（２０１）はプログラム用メモリ、及びワーク用メモリを内蔵しており無線通信Ｉ／Ｆモジュール２０２を介してセンサー２０３が出力する時系列データ情報を上位のルータ１０２、及びボーダルータ１０３経由でインターネット側の機器データ管理サーバ１０５のデータベースに登録する。
【００１５】
図３は、ローカルルータ１０２の一実施例を示すハードウェア構成図である。機器１０１と同様に、ＭＣＵ（Micro Control Unitマイクロコントロールユニット、マイクロ制御装置）（３０１）と無線通信Ｉ／Ｆモジュール３０２を有しており、ＭＣＵ内蔵のプログラムによりセンサーデータ情報、及び６ＬｏＷＰＡＮ、ＲＰＬなどの制御信号のアドホック中継転送を行う。
【００１６】
図４は、ボーダルータ１０３の一実施例を示すハードウェア構成図である。無線制御部４０１とゲートウェイ処理部４０２から構成される。無線制御部４０１はＭＣＵ（Micro Control Unitマイクロコントロールユニット、マイクロ制御装置）（４０４）と無線通信Ｉ／Ｆモジュール４０３から構成される。また、ゲートウェイ制御部４０２はＣＰＵ（処理部）（４０５）とインターネット側通信Ｉ／Ｆモジュール４０６とＧＷ（ゲートウェイ）アプリケーション部４０７から構成される。
【００１７】
図５は、機器管理サーバ１０４の一実施例を示すハードウェア構成図である。通信Ｉ／Ｆ部モジュール５０１とＣＰＵ(処理部)（５０２）とＧＷ（ゲートウェイ）アプリケーション（５０３）と機器管理データベース（５０４）から構成される。機器管理サーバ１０４は機器１０１とボーダルータ１０４の機器のアドレスを管理するサーバ装置である。
【００１８】
図６は、機器データ管理サーバ１０５の一実施例を示すハードウェア構成図である。通信Ｉ／Ｆモジュール６０１とＣＰＵ（処理部）（６０２）と機器データ管理データベース（６０３）から構成される。機器データ管理サーバ１０５は機器１０１のセンサーデータを蓄積する。
【００１９】
図７は、機器管理サーバ１０４に機器１０１の登録を行う手順の一実施例を示すシーケンス図である。予め、機器データ管理サーバ１０４はボーダルータ１０３に対して機器管理サーバアドレスなどのパラメータ情報を含むプログラムをダウンロードしておく（７０１）。これにより、ボーダルータ１０３は機器管理サーバアドレスを設定する（７０３）。機器１０１はパワーオン直後のシーケンスで６ＬｏＷＰＡＮ、ＲＰＬ仕様に基づいてグローバルＩＰｖ６アドレスとＭＡＣアドレスのペアをボーダルータ１０３内に登録（ローカル機器登録）するためのシーケンスを実行する。
【００２０】
以下、このシーケンスについて説明する。センサー機器１０１はルータ探索信号７０２を近隣のルータ１０２向けにマルチキャスト送信することにより近隣ルータからのルータ広告信号７０４を受信する。ルータ広告信号７０４には、プレフィックス情報（ＰＩＯ）、送信元リンクアドレス情報（ＳＬＬＡＯ）、コンテキスト情報（６ＣＯ）、ボーダルータ情報（ＡＢＲＯ）が含まれている。機器１０１は自分のグローバルＩＰｖ６アドレスを、受信したプレフィックス情報（ＰＩＯ）と自分のＭＡＣアドレスから（一時）生成する。一時生成されたアドレスを用いた近隣要請信号７０５をルータ１０２に送信すると、ルータ１０２が重複アドレス検出要求信号７０６に変換してボーダルータ１０３宛てに送信する。
【００２１】
ボーダルータ１０３は送信元リンクアドレス情報（ＳＬＬＡＯ）、権限ルータ情報（ＡＲＯ）を基にアドレス重複があると判断した場合、重複アドレス確認信号７０７を送信元ルータ宛に返信する。重複アドレス確認信号７０７を受信したルータ１０２は、近隣広告信号７０８に変換して一時グローバルＩＰｖ６アドレスに重複があったことを機器１０１に通知する。
【００２２】
機器１０１は、他の機器とのアドレス重複を確認した場合、別の一時グローバルＩＰｖ６アドレスを生成して、再度近隣要請信号７０９を送信する。
【００２３】
以上説明したように、メッシュトポロジー向けにメッセージ拡張したＮＤ（Ｎｅｉｇｈｂｏｕｒ  Ｄｉｓｃｏｖｅｒｙ）プロトコルを用いたＤＡＤ（Ｄｕｐｌｉｃａｔｅ  Ａｄｄｒｅｓｓ  Ｄｅｔｅｃｔｉｏｎ、重複アドレス検出）の初期動作としての実施を利用して、ボーダルータがローカル機器登録を実施する（７１０）。６ＬｏＷＰＡＮのネットワークでは、構成する機器がお互いにメッシュトポロジにより接続されるが、上記の通り、ボーダルータがただひとつのインターネット接続ポイントになるという特性をを利用する。
【００２４】
ローカル機器登録を実施した後、ＨＴＴＰに代表されるインターネット転送プロトコルを用いた機器登録要求信号７１１を送信する。機器管理サーバ１０４での機器登録（７１２）を経て、機器管理サーバ１０４から機器登録応答信号７１３を受信する。これにより、インターネット側のクラウド上の機器管理サーバ１０４での機器登録を完了する（７１２）。
【００２５】
図８は、機器１０１が生成するセンサーデータを機器データ管理サーバ１０５に登録するプッシュ型のデータ登録手順の一実施例を示すシーケンス図である。
【００２６】
機器がセンサーなどの低コスト装置で構成される場合には、柔軟性の高いシステムを構築する目的で、機器データ管理サーバのアドレスは機器の内部記憶に保持しない。その場合には、機器１０１はボーダルータ１０３のアドレスを宛先ＩＰｖ６アドレスとし、データ登録要求信号＃１（８０２）の中に実際に登録したいデータを入れて送信する。この時点では、機器１０１にはデータ登録先である機器データ管理サーバ１０５のアドレスは未だ登録されていないので、機器データ管理サーバ未登録状態８０１にいる。ボーダルータ１０３はデータ登録要求信号＃１（８０２）をトリガ信号にして、機器管理サーバ１０４に対して機器データ管理サーバアドレス問い合せ信号８０３を送信し、機器データ管理サーバ１０５は自分のアドレスを機器データ管理サーバアドレス応答信号８０４として返信する。これにより、ボーダルータ１０３は機器データ管理サーバ１０５のアドレスを記憶する（８０５）。
【００２７】
その後、ボーダルータ１０３は、バッファに蓄積しておいたデータに対して、データ中継処理＃１（８０６）を行い、機器データ管理サーバ１０５に対してデータ登録要求信号＃１（８０７）を送信する。これに対して機器データ管理サーバ１０５はデータ登録応答信号＃１（８０８）を、ボーダルータ１０３は機器１０１に対してデータ登録応答信号＃１（８０９）を返信する。
【００２８】
機器データ管理サーバ１０５が最初のデータ登録を行うと、機器データ未登録状態８１５から機器データ登録済状態８１６に状態遷移する。
【００２９】
以降のデータに関しては、データ登録要求信号＃ｎ（８１０）を受信したボーダルータ１０３は既にデータ管理サーバ１０５のアドレスをキャッシュ済みであるため、機器データ管理サーバ未登録時のシーケンスとは異なり、機器管理サーバ１０４に対する問い合わせ要求と応答シーケンスは発生しない。データ登録要求＃ｎ（８１０）信号に含まれる受信データに対してデータ中継処理＃ｎ（８１１）を実施した後、データ登録要求信号＃ｎ（８１２）を送信することでデータ登録要求を行い、データ登録応答信号＃ｎ（８１２）を受信することで機器１０１にデータ登録応答信号＃ｎ（８１３）を送信する。
【００３０】
なお、データ中継処理（８０５、８１１）の動作については、図１２の説明部分で詳細を明らかにする。以上、上り方向のデータ登録シーケンス動作について説明した。
【００３１】
図９は、機器１０１が生成するセンサーデータを機器データ管理サーバ１０５に登録するプル型のデータ登録手順の一実施例を示すシーケンス図である。
【００３２】
機器データ管理サーバ１０５が機器データ登録済み状態８１６に状態遷移済みである場合には、機器１０１のアドレスが登録されているためにボーダルータ１０３で中継処理を行う必要がない。このため、機器データ管理サーバ１０５が、機器データに対応付けて格納されている機器アドレスに基づいて、機器１０１にデータ登録要求信号（９０１，９０３）を送信すると、機器１０１がデータ登録応答信号（９０２、９０４）の中でデータを返すことにより、インターネット（クラウド）側のサーバ主導でデータ登録ができる。なお、データ登録要求信号は、機器データ管理サーバ１０５が定期的に発行することもできるが、他のシステムからの要求でオンデマンドで発行することも可能である。
【００３３】
図１０は、機器管理データベース（５０４）のテーブル１００１構成の一例を示した図である。ボーダルータ（ゲートウェイ）のインターネット側のアドレス１００１ａとゲートウェイ配下の機器１０１のＩＰｖ６アドレス１００１ｂが対応して格納されたテーブル構成になっている。なお、本実施例では、ゲートウェイのインターネット側のアドレスをＩＰｖ６アドレスで記述しているが、ＩＰｖ４アドレスを用いることも可能である。
【００３４】
図１１は、機器データ管理データベース（６０３）のテーブル１１０１構成の一例を示した図である。機器アドレス１１０１ａを主キーにして、図８で示したプッシュ型通信を使って受信した機器データと、図９で示したプル型通信を使って受信した機器データはテーブル１１０１の同一エントリの別カラムに時系列データとして挿入される。なお、本実施例では機器はＩＰｖ６アドレスで通信することを前提としているが、ＩＰｖ４アドレスを使うよう構成してもよい。ＩＰｖ６アドレスを使う場合は、ＩＰｖ６アドレスの潤沢性から、より多くの機器１０１を柔軟に設置することが可能となる。
【００３５】
なお、機器管理データベース（５０４）は機器自体を管理するデータベースであるために、そのテーブル１００１の列は時間と共に増えない一方、機器データ管理ＤＢ（６０３）のテーブル１１０１は時間と共に列が増大するという設定にする場合は特に、両テーブルは論理的には別管理することが望ましい。
【００３６】
図１２は、ゲートウェイアプリケーション部４０７のソフトウェア構成の一実施例を示すブロック図である。以後、無線制御部４０１に於いて、ＳＬＩＰ（Ｓｅｒｉａｌ  Ｌｉｎｅ  Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）に基づく、無線モデムファームウェアが予めＭＣＵ（４０４）に書き込まれているものとして説明する。
【００３７】
ＧＷ（ゲートウェイ）アプリケーション１２０１は、無線制御部４０１に対応するカーネル空間のシリアルデバイス１２０２をインターフェースデバイスとして、機器１０１、もしくはルータ１０２との間で低消費電力機器向けに開発された６ＬｏＷＰＡＮ、ＩＥＥＥ８０２．１５．４プロトコル通信を行う。また、仮想ネットワーク（トンネル）デバイス１２０３、及び実ネットワークデバイス１２０４をインターフェースデバイスとして、機器管理サーバ１０４、及び機器データ管理サーバ１０５との間でインターネット通信を行う。
【００３８】
まず最初に、機器１０１から機器データ管理サーバ１０５へのデータアップロード処理シーケンスについて説明する。機器から出力されるセンサーデータは全てボーダルータ１０３のシリアル通信Ｉ／Ｆ（４０８）を通過する。そして、カーネルのシリアルドライバによって受信されたデータは、カーネルのルーティング処理を経由することなくゲートウェイアプリケーション部１２０１が直接受信する。ゲートウェイアプリケーション部１２０１は、ＩＥＥＥ８０２．１５．４  ＭＡＣスタック、６ＬｏＷＰＡＮプロトコル、ＩＰｖ６プロトコル、アプリケーション転送プロトコルを順番に終端してデータ部のみが取り出される。次にゲートウェイアプリケーション部１２０１はデータ中継処理（８０６，８１１）を行った後、データ管理サーバ１０５に対応するカーネルソケットへの書き込み処理を行う。カーネルでのルーティング処理の結果、実ネットワークデバイス１２０４へ書き込みが行われ、データはインターネット（クラウド）側の通信Ｉ／Ｆ（４０９）を介して通信I/Fモジュール４０６に送られ、最終的に機器データ管理サーバ１０５に到達する。
【００３９】
次に、サーバから機器への下り通信処理について説明する。インターネット（クラウド）側通信処理Ｉ／Ｆモジュール４０６から受信したデータは、カーネルのルーティングテーブルの判断により仮想ネットワーク（トンネル）デバイスに送られた後、カーネルのネットワークスタック１２０５でアプリケーション転送プロトコル層までの終端処理が行われ、最後にはネットワーク受信割り込み処理によりゲートウェイアプリケーション部１２０１が受信する。
【００４０】
ＧＷ（ゲートウェイ）アプリケーション部１２０１は、アプリケーション転送プロトコルヘッダ追加処理、ＩＰｖ６ヘッダ追加処理、６ＬｏＷＰＡＮヘッダ追加処理、ＩＥＥＥ８０２．１５．４  ＭＡＣヘッダ追加処理、ＳＬＩＰヘッダ追加処理を順番に実行した後にカーネル空間のシリアルデバイス１２０２に対して書き込みを行う。ＳＬＩＰ形式の送信データはインターネット（クラウド）側通信Ｉ／Ｆ（４０８）を介して無線制御部４０１に送られる。無線制御部内のＭＣＵ（４０４）はＳＬＩＰプロトコルヘッダ除去処理を行った後のＭＡＣフレームを無線通信Ｉ／Ｆモジュール４０３に送信する。無線通信Ｉ／Ｆモジュール４０３はＩＥＥＥ８０２．１５．４形式の物理フレームヘッダを付加して機器１０１に送信する。
【００４１】
なお、ローカルアプリケーション１２０６から６ＬｏＷＰＡＮドメインの機器宛に送信されるパケットに関しても、カーネル空間のネットワークスタック１２０５、及び仮想ネットワーク（トンネル）デバイス１２０３経由でゲートウェイアプリケーション１２０１に送られる。ＧＷ（ゲートウェイ）アプリケーション１２０１は、必要なプロトコル処理を行いシリアルデバイス１２０２に送られる構成となっている。例えば、ローカルアプリケーションがPINGアプリケーションである場合には、６ＬｏＷＰＡＮ以下の処理が行われる。
【００４２】
このためゲートウェイアプリケーション１２０１の機能拡張を行う場合には、拡張機能をゲートウェイアプリケーションに取り込まずに外部ローカルアプリケーションで実現も可能である。
【００４３】
以上で説明したソフトウェア構成を用いることにより、現時点では汎用ＯＳではサポートされていない６ＬｏＷＰＡＮ／ＩＥＥＥ８０２．１５．４ＭＡＣスタックをカーネル側に追加実装することなしに、ユーザ空間のゲートウェイアプリケーション１２０１で実装することが可能となる。
【００４４】
さらにゲートウェイアプリケーションで行われるデータ中継処理（８０６，８１１）のアルゴリズムはアプリケーションの中に含まれている。この部分を入れ換えることで、収集したデータを様々な用途に使用することが可能である。またビジネスを計画している事業者の用途に合う多様なゲートウェイアプリケーションの実装環境を簡単に実現できる。
【００４５】
データ中継処理（８０６、８１１）は、基本的には機器とボーダルータ間は、ＣｏＡＰ（Ｃｏｎｓｔｒａｉｎｅｄ  Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）に代表される、６ＬｏＷＰＡＮに適したＵＤＰベース等のアプリケーション転送プロトコルを、ボーダルータと機器データ管理サーバ間は、ＨＴＴＰなどのＴＣＰベース等のインターネットと親和性の高いのアプリケーション転送プロトコルに変換するための処理である。中継するボーダルータの端末情報（具体的には、ボーダルータのアドレス）をＩＰv６拡張ヘッダに入れたＩＰｖ６パケットを作成し、上記中継処理を行い、機器データ管理サーバで当該パケット由来のデータを蓄積することにより、誰（この例では、ボーダルータ）がどの機器のデータを中継したかという情報もインターネット（クラウド）側サーバで管理できる。このような中継処理を行えば、例えば、特定端末から収集したユーザーのライフログ自動作成システム構築も可能となる。
【００４６】
ＧＷ（ゲートウェイ）アプリケーションは、現在の既存技術を使うならば、ゲートウェイアプリケーション１２０１をＯＳＧｉ（登録商標）（Ｏｐｅｎ  Ｓｅｒｖｉｃｅ  Ｇａｔｅｗａｙ  Ｉｎｉｔｉａｔｉｖｅ）環境下で動作するバンドル、もしくはＡｎｄｒｏｉｄ（登録商標）上のアプリケーションの形として機器管理サーバ１０４から配布することができる。
【００４７】
また、以上に説明した実施例に基づいて、端末ユーザが無線通信制御部４０１をＵＳＢ やＢｌｕｅｔｏｏｔｈ（登録商標）などのハードウェアＩ／Ｆを持ったスティック型のデバイスと接続すると共に、端末をボーダルータ化するソフトウェアをダウンロードすることで、あらゆるモノ（Things）の情報をクラウドサーバに自動登録するシステムの構築が期待される。
【００４８】
例えば、街中の温度情報をボーダルータ化された端末が受信して現在地の位置情報や端末の所有者などの情報と併せてインターネット（クラウド）側のサーバに登録し、ある日時にどこをどう移動してそのときの気温はどうだったかという、個人のライフログを自動的に生成することもできる。  また、機器からアップロードするデータを複数のルータのマルチホップによりボーダルータで集約する場合、無線デバイスの物理的な到達距離限界を超えたデータ収集も可能となる。
【符号の説明】
【００４９】
１０１  機器
１０２  ルータ
１０３  ボーダルータ
１０４  機器管理サーバ
１０５  機器データ管理サーバ
２０１  マイクロコントロールユニット
２０２  無線通信Ｉ／Ｆモジュール
２０３  センサー
３０１  マイクロコントロールユニット
３０２  無線通信Ｉ／Ｆモジュール
４０１  無線モデム
４０２  ＧＷ（ゲートウェイ）制御部
４０３  無線通信Ｉ／Ｆモジュール
４０４  マイクロコントロールユニット
４０５  マイクロプロセッサユニット
４０６  通信Ｉ／Ｆモジュール
４０７  ＧＷ（ゲートウェイ）アプリケーション
４０８  シリアル通信Ｉ／Ｆ
４０９  クラウド通信Ｉ／Ｆ
５０１  通信Ｉ／Ｆモジュール
５０２  マイクロプロセッサユニット
５０３  ＧＷ（ゲートウェイ）アプリケーション
５０４  機器管理ＤＢ
６０１  通信Ｉ／Ｆモジュール
６０２  マイクロプロセッサユニット
６０３  機器データ管理ＤＢ
７０１  ダウンロードプログラム
７０２  ルータ要請信号
７０３  機器管理サーバアドレス設定動作
７０４  ルータ広告信号
７０５、７０９  近隣要請信号
７０６  重複アドレス検出要求信号
７０７  重複アドレス確認信号
７０８  近隣広告信号
７１０  機器登録動作
７１１  機器登録要求信号
７１２  機器登録動作
７１３  機器登録応答信号
８０１  機器データ管理サーバアドレス未登録状態
８０２、８１０  データ登録要求信号
８０３  機器データ管理サーバアドレス問い合わせ信号
８０４  機器データ管理サーバアドレス応答信号
８０５  機器データ管理サーバアドレス登録済状態
８０６、８１１  データ中継処理
８０７、８１２  データ登録要求信号
８０８、８１３データ登録応答信号
８０９、８１４  データ登録応答信号
８１５  機器データ未登録状態
８１６  機器データ登録済状態
９０１、９０３  データ登録要求信号
９０２、９０４  データ登録応答信号
１００１  機器管理ＤＢテーブル
１００１ａ  ゲートウェイアドレスフィールド
１００１ｂ  機器アドレスフィールド
１１０１  機器データ管理ＤＢテーブル
１１０１ａ  機器アドレスフィールド
１１０１ｂ  データフィールド
１２０１  ゲートウェイアプリケーション
１２０２  シリアルデバイス
１２０３  仮想ネットワーク（トンネル）デバイス
１２０４  実ネットワークデバイス
１２０５  カーネル空間のネットワークスタック
１２０６  ローカルアプリケーション
【図１】
2014078773.tif 000003
【図２】
2014078773.tif 000004
【図３】
2014078773.tif 000005
【図４】
2014078773.tif 000006
【図５】
2014078773.tif 000007
【図６】
2014078773.tif 000008
【図７】
2014078773.tif 000009
【図８】
2014078773.tif 000010
【図９】
2014078773.tif 000011
【図１０】
2014078773.tif 000012
【図１１】
2014078773.tif 000013
【図１２】
2014078773.tif 000014