JP2016091064A - 機器管理中継装置、方法、およびプログラム - Google Patents

機器管理中継装置、方法、およびプログラム Download PDF

Info

Publication number
JP2016091064A
JP2016091064A JP2014220862A JP2014220862A JP2016091064A JP 2016091064 A JP2016091064 A JP 2016091064A JP 2014220862 A JP2014220862 A JP 2014220862A JP 2014220862 A JP2014220862 A JP 2014220862A JP 2016091064 A JP2016091064 A JP 2016091064A
Authority
JP
Japan
Prior art keywords
value
attribute information
cpu
acquisition request
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2014220862A
Other languages
English (en)
Other versions
JP6384271B2 (ja
Inventor
祐介 江尻
Yusuke Ejiri
祐介 江尻
健司 藤原
Kenji Fujiwara
健司 藤原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2014220862A priority Critical patent/JP6384271B2/ja
Priority to US14/827,921 priority patent/US10356196B2/en
Priority to CN201510586547.9A priority patent/CN105577743B/zh
Publication of JP2016091064A publication Critical patent/JP2016091064A/ja
Application granted granted Critical
Publication of JP6384271B2 publication Critical patent/JP6384271B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/62Establishing a time schedule for servicing the requests
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/26Pc applications
    • G05B2219/2642Domotique, domestic, home control, automation, smart house

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Small-Scale Networks (AREA)
  • Automation & Control Theory (AREA)
  • Information Transfer Between Computers (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)
  • Computing Systems (AREA)

Abstract

【課題】センサや電化製品等の管理対象機器からデータを取得、制御する機器管理システムにおいて、短時間に重複するパケットを送信することなく、ゲートウェイが許容する時間範囲の最新データを取得する。
【解決手段】機器データ管理テーブル203−3は、機器103の属性情報および属性情報の受信時刻を含む情報を保持する。キャッシュデータ制御部203−2は、機器103から属性情報を受信し、受信時刻とともに属性情報保持部に保持する。GW102から属性情報取得要求を受信すると、対応する属性情報を機器データ管理テーブル203−3が保持しているか否か、および属性情報取得要求の受信時刻と機器データ管理テーブル203−3が保持している属性情報の受信時刻との差に応じて、機器データ管理テーブル203−3が保持している属性情報をGW102に代理応答する処理、属性情報を機器103から取得してGW102に送信する処理を実行する。
【選択図】図2

Description

宅内のセンサや電化製品等の管理対象機器からデータを取得し、取得したデータをもとに機器を制御する機器管理システムにおける機器管理中継装置、方法、およびプログラムに関する。
近年、住宅やビル等の宅内のホームネットワークとインターネット等の外部ネットワークとを接続する、ホームゲートウェイ装置またはゲートウェイ装置(以後「GW」と記載)と呼ばれる装置が知られている(例えば特許文献1または2に記載の技術)。
例えば、インターネット上のサーバやゲートウェイ装置上で動作するアプリケーションソフトウェアによるサービスは、GWを介して、ホームネットワークに接続されたセンサや電化製品等の管理対象機器に対して、データの収集や制御を行う。より具体的には、サービスの一例では、宅内の家庭用電化製品が宅外からインターネットを介して制御される。あるいは、サービスの他の例では、電力会社やガス会社から各契約宅内の電力計やガスメータに対して遠隔で検診が行われる。
このようなサービスが同一のホームネットワーク内で複数利用される場合において、同一のホームネットワークに複数のGWが接続され、同一の管理対象機器に対して複数のGWからデータ収集が行われる場合が考えられる。
ここで、クライアントからホームサーバへのパスに沿って、ネットワーク内で自動的、透過的、分散的なキャッシュ方法からなる技術が知られている(例えば特許文献3に記載の技術)。
特開2010−245681号公報 特表2001−526814号公報 WO2006/126355号公報
上述のように、同一の管理対象機器に対して複数のGWからデータ収集が行われる場合、短時間に複数のGWから複数のデータ取得メッセージが同一の管理対象機器に対して送信される可能性がある。ここで、管理対象機器には様々なものが存在し得るため、管理対象機器において、受信バッファ等のハードリソースが少ない場合が考えられる。この場合例えば、一つの管理対象機器に複数のデータ取得メッセージが集中することにより、受信バッファでの保持可能数を超えるパケットが受信された場合、受信バッファ溢れによりパケットが破棄されてしまい、サービスに影響を及ぼしてしまう可能性がある。
受信バッファ溢れへの対策として、受信バッファを構成するメモリを増強し最大受信バッファ数を増やす方法が考えられるが、ホームネットワークシステムでは通常、既存の電化製品やセンサ機器を利用しハード内を変更できない場合が多いため、現実的には困難である。
そこで、本発明の1つの側面では、管理対象機器における受信バッファ等のリソースの消費を低減することを目的とする。
態様の一例では、管理対象機器からの属性情報を受信時刻とともに保持する属性情報保持部と、機器管理装置から属性情報の取得要求を受信すると、前記取得要求の受信時刻と前記属性情報の受信時刻との差に応じて、前記属性情報保持部が保持している属性情報を前記機器管理装置に応答すること、または前記取得要求に対応する属性情報を前記管理対象機器から取得して前記機器管理装置に応答することのいずれかを行う応答制御部と、からなることを特徴とする機器管理中継装置、を提供する。
管理対象機器における受信バッファ等のリソースの消費を低減することが可能となる。
本実施形態による機器管理システムの構成例を示す図である。 スイッチ101およびGW102の機能構成例を示すブロック図である。 スイッチ101およびGW102のハードウェア構成例を示す図である。 機器データ管理テーブル203−3のデータ構成例を示す図である。 ECHONET Liteオブジェクトデータ管理テーブル213のデータ構成例を示す図である。 ECHONET Liteフレームが格納されたイーサネットフレームデータの構成例を示す図である。 スイッチ101の立上げ時の代理応答処理の例を示すフローチャートである。 スイッチ101のフレーム受信時の代理応答処理の例を示すフローチャートである。 スイッチ101のデータ取得要求受信時処理の詳細例を示すフローチャートである。 スイッチ101の状態通知・応答受信時処理の詳細例を示すフローチャートである。 GW102のキャッシュ値許容時間登録・更新状態通知処理の例を示すフローチャートである。 GW102へのキャッシュ値許容時間登録のシーケンス例を示す図である。 GW102でのキャッシュ値許容時間登録に続くキャッシュ値許容時間登録状態通知処理のシーケンス例を示す図である。 スイッチ101の立上げ時のインスタンスリスト通知要求処理およびキャッシュ値許容時間取得処理のシーケンス例を示す図である。 GW102からのインスタンスリスト取得要求処理(機器検出処理)のシーケンス例を示す図である。 GW102からのプロパティ値取得要求処理のシーケンス例(その1)を示す図である。 GW102からのプロパティ値取得要求処理のシーケンス例(その2)を示す図である。 機器103からの状態通知処理のシーケンス例を示す図である。 本実施形態の効果を説明するシーケンス例を示す図である。
以下、本発明を実施するための形態(以下、「本実施形態」と記載)について図面を参照しながら詳細に説明する。
図1は、本実施形態による機器管理システムの構成例を示す図である。
住宅・ビル等の宅内100に設置されるセンサ機器や電化製品等の#1、#2、・・・、#nのn台(nは1以上の任意の整数)の機器103(管理対象機器)が、スイッチ101に接続される。また、#1、#2、・・・、#mのm台(mは1以上の任意の整数)のGW102(機器管理装置)が、スイッチ101に接続される。例えばGW102(#2)は、ルータ104を介して、インターネット等のグローバルネットワーク106に接続される。グローバルネットワーク106には、サーバ105が接続される。
例えばGW102(#2)は、グローバルネットワーク106上のサーバ105で実行されるアプリケーションソフトウェアのサービスからの要求に応じて、スイッチ101を介して、#1〜#nのうちの任意の1つ以上の機器(管理対象機器)103と通信する。また、他の所定のGW102は、GW102自身に搭載されたアプリケーションソフトウェアのサービスからの要求に応じて、スイッチ101を介して、#1〜#nのうちの任意の1つ以上の機器103と通信する。
本実施形態では、GW102が機器103が管理するプロパティ値(属性情報)の取得を要求する場合に、機器103に問い合わせる代わりに、スイッチ101内にキャッシュした機器103ごとおよびその機器103のプロパティ値ごとのキャッシュ値を代理応答することで、機器103への通信を削減することができる。この場合、スイッチ101での各プロパティ値のキャッシュの保持時間が長いと、機器103の各プロパティ値の変更が長時間反映されず、短期的な更新が必要なサービスへ影響が出てしまう。逆に、各プロパティ値のキャッシュの保持時間が短いと、機器103へのアクセス頻度が高くなってしまう。すなわち、通常のキャッシュ技術を用いて機器103への送信パケット削減をすると、リアルタイムなデータを取得することができない。そこで、本実施形態では、予めスイッチ101に登録されたGW102ごとのキャッシュ値許容時間に基づいて、キャッシュ応答をするか機器103に問い合わせるかが制御される。
これにより、本実施形態では、同一の機器103に対するプロパティ値の取得要求数を減少させて機器103に到達するパケット数を削減することにより、機器103への問合せを最小限に抑えることを可能とする。これとともに、本実施形態では、GW102が許容する時間範囲の最新データを、スイッチ101からGW102に代理応答することを可能とする。
このようにして、本実施形態では、機器103への問合せが削減される結果、機器103に大きな容量の受信バッファを搭載する必要がなくなり、受信バッファ等のリソースの消費を低減できる。さらに、バッファ溢れによるパケット破棄数を削減することが可能となる。また、本実施形態では、機器103における取得要求への応答処理等の処理負荷を低減することが可能となる。さらに、本実施形態は、GW102やそのGW102が接続されるサーバで実行されるサービスの要求に応じたリアルタイムなデータの取得が、スイッチ101に搭載されるキャッシュ機構を通じて可能になる。
図2は、図1のスイッチ101およびGW102の機能構成例を示すブロック図である。
スイッチ101は、スイッチ機能部201、スイッチ側送受信部202、および代理応答部203を含む。
スイッチ側送受信部202は、図1のGW102(図2では#1、#2、#3)および図1の機器103(図2では#1、#2、#3)のそれぞれと、特には図示しないポート部を介して接続され、各GW102または各機器103との間で、フレームデータを送信または受信する。
スイッチ機能部201は、スイッチ側送受信部202の任意のポート部で受信されるフレームデータを、そのフレームデータに設定されている宛先MAC(Media Access Control)アドレスに従って、他の宛先のポート部に中継転送する。
代理応答部203は、フレーム振分け部203−1、キャッシュデータ制御部203−2、および機器データ管理テーブル203−3を含む。
フレーム振分け部203−1は、スイッチ機能部201が転送するフレームデータを監視する。そして、フレーム振分け部203−1は、GW102と機器103との間の通信プロトコルに従うフレームデータについては、そのフレームデータをキャッシュデータ制御部203−2へ引き渡す。GW102と機器103との間の通信プロトコルは例えば、エコーネットコンソーシアムが策定し、国際標準化機構(ISO)規格および国際電気標準会議(IEC)規格として国際標準化されたECHONET Lite通信プロトコルである。ECHONET Lite通信プロトコルは、ECHONET Liteフレームと呼ばれるメッセージ(後述する図6参照)によって、GW102が機器103に対してデータ収集をしまたは制御する通信手順である。
属性情報保持部たとえば、機器データ管理テーブル203−3は、機器103のプロパティ(属性情報)およびそのプロパティの受信時刻を含む情報を保持する。より具体的には、機器データ管理テーブル203−3は、機器103またはGW102ごとにエントリを有し、そのエントリごとにプロパティおよびそのプロパティの受信時刻が登録される。プロパティは、機器103ごとに定義されているプロパティ名とその値の組の集合である。この詳細については、図4の機器データ管理テーブル203−3の説明において後述する。
属性情報応答制御部たとえば、キャッシュデータ制御部203−2は、機器103からプロパティを受信すると、そのプロパティをその受信時刻とともに機器データ管理テーブル203−3に保持する。また、キャッシュデータ制御部203−2は、GW102からプロパティ値取得要求を受信すると、以下の動作を実行する。キャッシュデータ制御部203−2は、プロパティ値取得要求に対応して機器データ管理テーブル203−3が保持するプロパティ値をGW102に代理応答する処理、又はプロパティ値取得要求に対応するプロパティ値を機器103から取得してGW102に代理応答する処理の何れかを実行する。どちらの応答処理が実行されるかは、プロパティ値取得要求に対応するプロパティ値を機器データ管理テーブル203−3が保持しているか否かおよびプロパティ値取得要求の受信時刻と機器データ管理テーブル203−3が保持している各プロパティ値の受信時刻との差に基づき決定される。キャッシュデータ制御部203−2のその他の動作の詳細については、図7〜図10のフローチャートによるキャッシュデータ制御部203−2の詳細動作の説明において後述する。
次にGW102は、図2の#1のGW102として示されるように、ECHONET Liteプロトコル処理部210(図2中では「プロトコル処理部」と表記)を含む。、また、GW102は、GW側送受信部211、およびキャッシュ値許容時間登録インタフェース(図2中では「キャッシュ値許容時間登録IF」と表記)212を含む。さらに、GW102は、ECHONET Liteオブジェクトデータ管理テーブル(図2中では「オブジェクトデータ」と表記)213を含む。
GW側送受信部211は、図2のスイッチ101内のスイッチ側送受信部202との間で、フレームデータの送受信を行う。
ECHONET Liteプロトコル処理部210は、ECHONET Lite通信プロトコルに従って、GW側送受信部211が受信したECHONET Liteフレームの受信処理や、ECHONET Liteオブジェクトデータ管理テーブル213の通知処理を行う。例えば、ECHONET Liteオブジェクトデータ管理テーブル213においてキャッシュ値許容時間プロパティの値が更新されたら、その旨を通知する状態通知メッセージを、GW側送受信部211を介してマルチキャストにて送信する。
ここで、キャッシュ値許容時間は、後述するように、スイッチ101内のキャッシュデータ制御部203−2が、GW102からプロパティ値取得要求を受信したときに、対応するプロパティ値が機器データ管理テーブル203−3のエントリに保持されているときに、プロパティ値取得要求の受信時刻とそのエントリのプロパティ値の受信時刻との時間差を判定するためのデータである。キャッシュ値許容時間は、上述の状態通知メッセージによって、図2のスイッチ101に通知され、機器データ管理テーブル203−3内のエントリに保持される。スイッチ101内のキャッシュデータ制御部203−2は、上記時間差が対応するGW102のキャッシュ値許容時間に比較して小さければ、上記エントリに保持されているプロパティ値を、上記GW102に代理応答する。一方、キャッシュデータ制御部203−2は、上記時間差が対応するGW102のキャッシュ値許容時間に比較して大きければ、プロパティ値取得要求に対応する機器103から新たなプロパティ値を取得して、GW102に代理応答する。
このように、本実施形態では、予めスイッチ101に登録されたGW102ごとのキャッシュ値許容時間に基づいて、キャッシュ応答をするか機器103に問い合わせるかが制御される。これにより、本実施形態では、GW102が許容する時間範囲の最新データを、機器103に問い合わせることなく、スイッチ101からGW102にキャッシュデータとして代理応答することが可能となる。
図2において、GW102内のECHONET Liteオブジェクトデータ管理テーブル213は、ECHONET Lite通信プロトコルにおけるコントローラオブジェクトとして、GW102のオブジェクトのデータを保持する。より具体的には、ECHONET Liteオブジェクトデータ管理テーブル213は、個別プロパティとして、キャッシュ値許容時間プロパティを保持する。
GW102内のキャッシュ値許容時間登録インタフェース212は、GW102の管理者または上位システムのサービスなどによって、ECHONET Liteオブジェクトデータ管理テーブル213のキャッシュ値許容時間プロパティに値を登録するためのインタフェースである。
図2において例えば、#1または#3のGW102は、GW102自身に搭載されたアプリケーションソフトウェアのサービス1または3からの要求に応じて、スイッチ101を介して、#1、#2、#3のうちの任意の1つ以上の機器103に対してデータ収集を行う。また#2のGW102は、図1のグローバルネットワーク106上のサーバ105で実行されるアプリケーションソフトウェアのサービス2からの要求に応じて、スイッチ101を介して、#1、#2、#3のうちの任意の1つ以上の機器103に対してデータ収集を行う。
図3(a)は、図1または図2のスイッチ101のハードウェア構成例を示す図である。スイッチ101は、CPU(中央演算処理装置)301、メモリ302、ストレージ303、フレーム転送エンジン304、複数のLAN(ローカルエリアネットワーク)インタフェース部305、システムバス306、および通信バス307を含む。CPU301、メモリ302、ストレージ303、およびフレーム転送エンジン304は、システムバス306によって相互に接続される。フレーム転送エンジン304および複数のLANインタフェース部305は、通信バス307によって相互に接続される。
CPU301は、ストレージ303からメモリ302に読み出した制御プログラムを実行することにより、図2のフレーム振分け部203−1およびキャッシュデータ制御部203−2に対応する動作を実行する。
LANインタフェース部305は、図2のスイッチ側送受信部202内の特には図示しない各ポート部に対応し、図2のスイッチ側送受信部202とGW側送受信部211とを接続するLANに対して送受信されるフレームデータを終端する。
フレーム転送エンジン304は、図2のスイッチ機能部201に対応する動作を実行するハードウェアである。フレーム転送エンジン304は、LANインタフェース部305ごとに、それに接続される図1または図2の機器103またはGW102のMACアドレスを接続先MACアドレスとして保持する。そして、フレーム転送エンジン304は、LANインタフェース部305で受信されたフレームデータを、それに設定されている宛先MACアドレスに対応するLANインタフェース部305に中継転送する。
ストレージ303は、上記CPU301が実行する制御プログラムを記憶するほか、図2の機器データ管理テーブル203−3のデータ等を記憶する。
本実施形態では、後述する図7から図10のフローチャート等で実現される機能を搭載した制御プログラムをCPU301が実行することで実現される。その制御プログラムは、例えばストレージ303に記録して配布してもよく、或いはLANインタフェース部305によりネットワークから取得できるようにしてもよい。
図3(b)は、図1または図2のGW102のハードウェア構成例を示す図である。GW102は、CPU311、メモリ312、ストレージ313、LANインタフェース部314、他システムインタフェース部315、およびユーザインタフェース部316が、システムバス317によって相互に接続された構成を有する。
CPU311は、ストレージ313からメモリ312に読み出した制御プログラムを実行することにより、図2のプロトコル処理部210およびキャッシュ値許容時間登録インタフェース212に対応する動作を実行する。
LANインタフェース部314は、図2のGW側送受信部211に対応し、図2のスイッチ側送受信部202とGW側送受信部211とを接続するLANに対して送受信されるフレームデータを終端する。
他システムインタフェース部315は、図1のルータ104を介してグローバルネットワーク106との間で送受信されるデータを終端する。
ユーザインタフェース部316は、CPU311と連携して、図2のキャッシュ値許容時間登録インタフェース212の動作を実行するハードウェアである。
ストレージ313は、上記CPU311が実行する制御プログラムを記憶するほか、図2のECHONET Liteオブジェクトデータ管理テーブル213のデータ等を記憶する。
図4は、図2の機器データ管理テーブル203−3のデータ構成例を示す図である。機器データ管理テーブル203−3は、前述したように、スイッチ101に接続される機器103またはGW102ごとにエントリを有する。このエントリは、「機種種別」「MACアドレス」「IPアドレス」「EOJ」「プロパティ名」「値」および「更新日時」の各項目を有する。
「機種種別」項目には、そのエントリに対応する機器103またはGW102の機種の種別が登録される。各エントリが、図1または図2の#1または#2の各機器103に対応している場合は、「機種種別」項目には、「機器(#1)」、「機器(#2)」、・・・等が登録される。各エントリが、図1または図2の#1、#2、#3の各GW102に対応している場合は、「機種種別」項目には、「コントローラ(#1)」、「コントローラ(#2)」、「コントローラ(#3)」等が登録される。
「MACアドレス」項目および「IPアドレス」項目には、そのエントリに対応する機器103またはGW102のMACアドレスおよびIPアドレスが登録される。
「EOJ」項目には、そのエントリに対応する機器103またはGW102のECHONET Liteオブジェクト識別子が、16進数値で登録される。なお、図4において、「EOJ」項目内の「0x」は、それに続く数値が16進数であることを示している。
「プロパティ名」項目には、そのエントリが機器103に対応する場合、機器103が管理する1つ以上のプロパティ項目の名称が登録され、「値」項目には、「プロパティ名」項目ごとの値が登録される。図4では、機器103(#1)に対して、「プロパティ名」=「値」として、「動作状態」=「ON」(オン状態)、「設定温度」=「26度」(目標の温度)、「温度」=「28度」(現在の温度)、および「タイマ設定」=「ON」(稼働状態)が登録されている。これは、機器103(#1)がセンサである場合の例である。一方、機器103(#2)に対して、「動作状態」=「ON」、・・・、「CPU使用率」=「15%」、「稼働時間」=「8h」(時間)、「エラー累計数」=「52回」、および「メモリ残容量」=「1.2GB」(ギガバイト)が登録されている。これは、機器103(#2)がコンピュータである場合の例である。
また、「更新日時」項目には、「プロパティ名」項目ごとの「値」の、機器103からの受信時刻が登録されている。
さらに、「プロパティ名」項目には、そのエントリがGW102に対応する場合、GW102が管理する名称「キャッシュ値許容時間」が登録され、「値」項目には、GW102から通知された実際のキャッシュ値許容時間の時間値が登録される。図4では、コントローラ(#1)(GW102(#1))にはキャッシュ値許容時間=「5秒」が登録されている。また、コントローラ(#2)(GW102(#2))にはキャッシュ値許容時間=「60秒」が登録されている。そして、コントローラ(#3)GW102(#3))にはキャッシュ値許容時間=「1秒」が登録されている。
図5は、図2のGW102が保持するECHONET Liteオブジェクトデータ管理テーブル213のデータ構成例を示す図であり、このテーブルのエントリは、GW102のECHONET Liteオブジェクトとしてのプロパティを保持する。このテーブルは、GW102の「機器種別」項目=「コントローラ」、「EOJ」=GW102の識別子、「動作状態」項目=「ON」または「OFF」、「メーカコード」=メーカが設定したコード番号等の必須プロパティおよび個別プロパティを有する。また、このテーブルは、キャッシュ値許容時間を保持する。
図6は、図1または図2のGW102、スイッチ101、機器103間で送受信される、ECHONET Lite通信プロトコルに基づくECHONET Liteフレームが格納されたイーサネットフレームデータの構成例を示す図である。
まず、送信元MACアドレス601と宛先MACアドレス602は、イーサネットフレームのヘッダを構成する。送信元MACアドレス601は、このイーサネットフレームを送信した機器(スイッチ101、GW102、または機器103)のMACアドレスである。宛先MACアドレス602は、このイーサネットフレームの宛先の機器のMACアドレスである。
送信元IPアドレス603と宛先IPアドレス604は、イーサネットフレームに格納されるIP(インターネットプロトコル)パケットのヘッダを構成する。送信元IPアドレス603は、このIPパケットを送信した機器のIPアドレスである。宛先IPアドレス604は、このIPパケットの宛先の機器のIPアドレスである。
送信元ポート番号605と宛先ポート番号606は、IPパケットに格納されるTCP(トランスミッションコントロールプロトコル)セグメントのヘッダを構成する。送信元ポート番号605は、このTCPセグメントを送信した機器のポート番号(サービスに対応)である。宛先ポート番号606は、このTCPセグメントの宛先の機器のポート番号(サービスに対応)である。
ECHONET Liteフレーム607は、TCPセグメントのデータ部に格納され、ECHONET Lite通信プロトコルに従って、スイッチ101、GW102、機器103間で送受信されるプロパティである。
ECHONET Liteフレーム607は、特には図示しないヘッダ「EHD」に続いて、「TID」、「SEOJ」、「DEOJ」、「ESV」、「OPC」の各データを含む。さらに、ECHONET Liteフレームは、上記データ群に続く(「EPC1」、「PDC1」、「EDT1」)〜(「EPCn」、「PDCn」、「EDTn」)のプロパティ値の組を含む。
TIDは、トランザクション識別子である。TIDについては、後述する。
「SEOJ」は、送信元ECHONET Liteオブジェクトの識別子、「DEOJ」は、宛先ECHONET Liteオブジェクトの識別子である。これらの識別子は、送信元または宛先の機器を識別するとともに、その機器の種別を示している。
「ESV」は、ECHONET Liteのアクセスルールを指定するサービス値であり、その値=「0x6X」のときには、そのECHONET Liteフレームがプロパティ値取得要求メッセージであることを示す。なお、「0x」は「6X」が16進数であることを示し、「X」は任意の16進値である。また、上記値=「0x5X」または「0x7X」のときには、そのECHONET Liteフレームが応答メッセージであることを示す。
「OPC」は、処理プロパティ数=nが格納される。
上記nに対応する処理プロパティ数を有するプロパティ値の組(「EPC1」、「PDC1」、「EDT1」)〜(「EPCn」、「PDCn」、「EDTn」)は、「EPC」がアクセス先プロパティ、「EDT」がプロパティ値データを示す。また、「PDC」は、「EDT」のバイト数を示す。
図7は、スイッチ101の立上げ時の代理応答処理の例を示すフローチャートである。この処理は、図3(a)のハードウェア構成例において、CPU301がストレージ303からメモリ302に読み出したスイッチ立上げ処理プログラムを実行する処理である。この処理は、図2の代理応答部203の動作の一部である。
まず、スイッチ101は、スイッチ101自身のIPアドレスを取得する。具体的には、スイッチ101のCPU301は、DHCP(Dynamic Host Configuration Protocol)などとして知られるIPアドレス自動取得技術を用いて、特には図示しないDHCPサーバ(例えば図1のルータ104)に問い合わせる。これにより、CPU301は、スイッチ101自身のためのIPアドレスを取得し、例えばメモリ302に設定する(以上、図7のステップS701)。
次に、スイッチ101は、インスタンスリスト通知要求メッセージを、スイッチ101に接続されている全ての機器103およびGW102に向けて、マルチキャストで送信する。具体的には、スイッチ101のCPU301は、ECHONET Lite通信プロトコルに従った要求メッセージであるGet要求メッセージとして、インスタンスリスト通知要求メッセージが格納されたフレームデータを、マルチキャストで送出する。図3(a)のフレーム転送エンジン304は、宛先MACアドレス602がマルチキャストであるフレームデータは、各LANインタフェース部305に中継転送して送信する(図7のステップS702)。この場合、送信される図6のデータ構成例のフレームデータにおいて、インスタンスリスト通知要求メッセージは、ECHONET Liteフレーム607に格納される。送信元MACアドレス601には、各LANインタフェース部305のMACアドレスが格納される。宛先MACアドレス602には、マルチキャスト用のMACアドレスが格納される。送信元IPアドレス603(図7のステップS702では「SA」と表記)には、ステップ701で取得したスイッチ101自身(代理応答部203)のIPアドレスが格納される。宛先IPアドレス604には、マルチキャスト用のIPアドレスが格納される。送信元ポート番号605および宛先ポート番号606にはそれぞれ、ECHONET Lite通信プロトコルに割り当てられているポート番号が格納される。
次に、スイッチ101のCPU301は、上記インスタンスリスト通知要求メッセージに応答してきた各機器103および各GW102(図1)の機器リストを、機器データ管理テーブル203−3(図2)に登録する(図7のステップS703)。具体的には、CPU301は、インスタンスリスト通知要求メッセージに応答した各機器103および各GW102(図1)からのインスタンスリスト通知応答メッセージを、図3(a)の各LANインタフェース部305およびフレーム転送エンジン304を介して受信する。この場合、受信された図6のデータ構成例のフレームデータにおいて、インスタンスリスト通知応答メッセージは、ECHONET Liteフレーム607に格納されている。送信元MACアドレス601および送信元IPアドレス603には、応答元の機器103またはGW102のMACアドレスおよびIPアドレスが格納されている。また、ECHONET Liteフレーム607内の「SEOJ」項目には、応答元の機器103またはGW102のECHONET Liteオブジェクト識別子が格納されている。CPU301は、上記送信元MACアドレス601、送信元IPアドレス603、および「SEOJ」項目値をそれぞれ、メモリ302またはストレージ303内の機器データ管理テーブル203−3(図2参照)に登録する。より具体的には、CPU301は、機器データ管理テーブル203−3に、図4のデータ構成例を有する新規エントリを生成する。そして、CPU301は、そのエントリの「MACアドレス」項目、「IPアドレス」項目、および「EOJ」項目にそれぞれ、送信元MACアドレス601、送信元IPアドレス603、および「SEOJ」項目値を登録する。また、CPU301は、「EOJ」項目によって定まる機器種別名を、図4の機器データ管理テーブル203−3の上記新規エントリの「機種種別」項目に登録する。また、CPU301は、インスタンスリスト通知応答メッセージに設定されているプロパティ名を、上記新規エントリの「プロパティ名」項目に登録する。このプロパティ名は、受信された図6のデータ構成例のフレームデータにおいて、「EPC1」〜「EPCn」などの値として通知される。
次に、スイッチ101は、破線で囲まれたキャッシュ値許容時間登録処理Aを実行する。
まず、スイッチ101のCPU301は、ステップ703の登録処理において、プロパティ名として「キャッシュ値許容時間」を含む「コントローラ」種別の機器があるか否かを判定する(図7のステップS704)。
スイッチ101のCPU301は、ステップS704の判定がYESならば、ステップS704のYES判定を生じさせた応答元のGW102に対して、キャッシュ値許容時間通知要求メッセージを送信する(図7のステップS705)。この場合、送信される図6のデータ構成例のフレームデータにおいて、キャッシュ値許容時間通知要求メッセージは、ECHONET Liteフレーム607に格納される。送信元MACアドレス601(図7のステップS705では「SA」と表記)には、各LANインタフェース部305のMACアドレスが格納される。宛先MACアドレス602には、ステップS704のYES判定を生じさせた受信フレームデータに設定されていた送信元MACアドレス601が格納される。送信元IPアドレス603には、ステップ701で取得したスイッチ101自身(図2の代理応答部203)のIPアドレスが格納される。宛先IPアドレス604には、ステップS704のYES判定を生じさせた受信フレームデータに設定されていた送信元IPアドレス603が格納される。送信元ポート番号605および宛先ポート番号606には、ECHONET Lite通信プロトコルに割り当てられているポート番号が格納される。
次に、スイッチ101は、上記キャッシュ値許容時間通知要求メッセージに応答してきたGW102(図1)からのキャッシュ値許容時間通知応答メッセージに含まれているキャッシュ値許容時間を、機器データ管理テーブル203−3に登録する。具体的には、スイッチ101のCPU301は、キャッシュ値許容時間通知応答メッセージを、図3(a)のいずれかのLANインタフェース部305およびフレーム転送エンジン304を介して受信する。この場合、受信された図6のデータ構成例のフレームデータにおいて、キャッシュ値許容時間通知応答メッセージは、ECHONET Liteフレーム607に格納されている。送信元MACアドレス601および送信元IPアドレス603には、応答元のGW102のMACアドレスおよびIPアドレスが格納されている。また、ECHONET Liteフレーム607内の「SEOJ」項目には、応答元のGW102のECHONET Liteオブジェクト識別子が格納されている。さらに、ECHONET Liteフレーム607内の「EPC1」項目には名称「キャッシュ値許容時間」が、「EDT1」項目にはキャッシュ値許容時間値が、それぞれ格納されている。なお、「RDC1」項目には「EDT1」項目値のバイト数が格納されている。CPU301は、図4のデータ構成例の機器データ管理テーブル203−3において、上記送信元MACアドレス601、送信元IPアドレス603、または「SEOJ」項目値が格納されている「コントローラ」種別のエントリを抽出する。そして、CPU301は、そのエントリにおいて、「プロパティ名」項目=「キャッシュ値許容時間」に対応する「値」項目に、上記「EDT1」項目のキャッシュ値許容時間値を登録する(以上、図7のステップS706)。
CPU301は、ステップS704の判定がNOならば、上述のステップS705とS706の処理はスキップする。
その後、スイッチ101のCPU301は、ステップ703の登録処理において、「コントローラ」種別の機器ではあるが、プロパティ名として「キャッシュ値許容時間」を含まないものについては、以下の処理を実行する。CPU301は、図4のデータ構成例の機器データ管理テーブル203−3の上記条件を満たすエントリにおいて、「プロパティ名」項目=「キャッシュ値許容時間」に対応する「値」項目に、「0」を登録する(図7のステップS707)。
図8は、スイッチ101のフレーム受信時の代理応答処理の例を示すフローチャートである。この処理は、図3(a)のハードウェア構成例において、フレーム転送エンジン304からのフレーム受信通知に基づいて、CPU301がストレージ303からメモリ302に読み出したフレーム受信処理プログラムを実行する処理である。この処理は、図2の代理応答部203の動作の一部である。
まず、スイッチ101のCPU301は、図3(a)のいずれかのLANインタフェース部305からフレーム転送エンジン304にて受信されたフレームデータが、ECHONET Liteフレームであるか否かを判定する(図8のステップS801)。具体的には、CPU301は、フレーム転送エンジン304から通知された図6のデータ構成例のフレームデータにおいて、宛先ポート番号606に、ECHONET Lite通信プロトコルに対応するポート番号値「3610」が格納されているか否かを判定する。
ステップS801の判定がNOならば、CPU301は、フレーム転送エンジン304に対して、受信フレームデータを通常通り転送するよう指示をして(図8のステップS802)、図8のフローチャートのフレーム受信処理プログラムを終了する。これにより、フレーム転送エンジン304は、いずれかのLANインタフェース部305で受信されたフレームデータの宛先MACアドレス602に基づいて、そのMACアドレスが登録されているLANインタフェース部305に、上記フレームデータを中継転送する。
ステップS801の判定がYESならば、CPU301は、フレーム転送エンジン304にその受信フレームデータの転送処理は実施させずに、図8のステップS803からS806の一連の処理で示される代理応答処理を実行する。
まず、CPU301は、受信した図6のデータ構成例のフレームデータにおいて、以下の判定を実行する(図8のステップS803)。CPU301は、フレームデータ中の送信元MACアドレス601およびECHONET Liteフレーム607内の「SEOJ」項目値が、機器データ管理テーブル203−3のいずれかのエントリに登録されているか否かを判定する(ステップS803)。すなわち、CPU301は、送信元MACアドレス601と「SEOJ」項目値がそれぞれ、図4のデータ構成例の機器データ管理テーブル203−3において、いずれかのエントリの「MACアドレス」項目と「EOJ」項目に登録されているか否かを判定する。
ステップS803の判定がYESならば、CPU301は、受信した図6のデータ構成例のフレームデータ中のECHONET Liteフレーム607内の「ESV」項目値を判定する(図8のステップS804)。
CPU301は、ステップS804の判定で「ESV」=「0x6X」なら、受信フレームデータのECHONET Liteフレーム607はデータ取得要求メッセージであると判定する。この場合、CPU301は、後述するデータ取得要求受信時処理を実行する(図8のステップS805)。
一方、CPU301は、ステップS804の判定で「ESV」=「0x5X」または「0x7X」なら、受信フレームデータのECHONET Liteフレーム607は状態通知または応答メッセージであると判定する。この場合、CPU301は、後述する状態通知・応答受信時処理を実行する(図8のステップS806)。
上記ステップS805またはS806の処理の後、CPU301は、図8のフローチャートのフレーム受信処理プログラムを終了する。
前述したステップS803の判定がNOならば、スイッチ101のCPU301は、受信フレームデータを送信した機器103またはGW102(図1)を、機器データ管理テーブル203−3(図2)に登録する(図8のステップS807)。具体的には、CPU301は、受信された図6のデータ構成例のフレームデータから、送信元MACアドレス601、送信元IPアドレス603、および「SEOJ」項目値を取り出す。次に、CPU301は、メモリ302またはストレージ303内の機器データ管理テーブル203−3(図2参照)に、図4のデータ構成例を有する新規エントリを生成する。そして、CPU301は、そのエントリの「MACアドレス」項目、「IPアドレス」項目、および「EOJ」項目にそれぞれ、送信元MACアドレス601、送信元IPアドレス603、および「SEOJ」項目値を登録する。また、CPU301は、「EOJ」項目によって定まる機器種別名を、図4の機器データ管理テーブル203−3の上記新規エントリの「機種種別」項目に登録する。また、CPU301は、インスタンスリスト通知応答メッセージに設定されているプロパティ名を、上記新規エントリの「プロパティ名」項目に登録する。このプロパティ名は、受信された図6のデータ構成例のフレームデータにおいて、「EPC1」〜「EPCn」などの値として通知される。
次に、スイッチ101のCPU301は、図7の破線で囲まれたキャッシュ値許容時間登録処理Aを実行する(図8のステップS808)。これにより、ステップ807の登録処理において、プロパティ名として「キャッシュ値許容時間」を含む「コントローラ」種別の機器があった場合には、CPU301は、受信フレームデータの送信元のGW102に、キャッシュ値許容時間を問い合わせる。そして、CPU301は、GW102から応答されたキャッシュ値許容時間を、ステップS807の登録処理で生成した機器データ管理テーブル203−3上のエントリに登録する。
その後、CPU301は、前述したステップS804からS806の一連の処理を実行する。
図9は、図8のステップS805のデータ取得要求受信時処理の詳細例を示すフローチャートである。
スイッチ101のCPU301はまず、フレーム転送エンジン304を介して受信したフレームデータのECHONET Liteフレーム607が、インスタンスリスト取得要求メッセージであるか否かを判定する(図9のステップS901)。
ステップS901の判定がYESならば、CPU301は、図4のデータ構成例の機器データ管理テーブル203−3の各エントリに登録されているインスタンスのリストを生成して、インスタンスリスト取得要求メッセージの送信元に応答する(図9のステップS902)。具体的には、CPU301は、上記エントリごとに、インスタンスリスト取得応答メッセージを生成する。この場合、応答される図6のデータ構成例のフレームデータにおいて、送信元MACアドレス601には、応答されるフレームデータが送出されるLANインタフェース部305自身のMACアドレスが格納される。宛先MACアドレス602には、図8のフローチャートに対応するフレーム受信処理プログラムの起動時の受信フレームデータに設定されていた送信元MACアドレス601が格納される。送信元IPアドレス603には、処理対象エントリの「IPアドレス」項目(図4参照)に登録されているIPアドレスが格納される。すなわち、スイッチ101は、処理対象エントリの機器を代理してIPアドレスを応答することになる。宛先IPアドレス604には、上記受信フレームデータに設定されていた送信元IPアドレス603が格納される。送信元ポート番号605および宛先ポート番号606には、ECHONET Lite通信プロトコルに対応するポート番号が格納される。ECHONET Liteフレーム607内の「SEOJ」項目には、処理対象エントリの「EOJ」項目(図4参照)に登録されているオブジェクト識別子が格納される。この場合も、スイッチ101は、処理対象エントリの機器を代理してEOJ値を応答することになる。ECHONET Liteフレーム607内の「ESV」項目には、応答を示す値が格納される。ECHONET Liteフレーム607内のプロパティ値の組(「EPC1」、「PDC1」、「EDT1」)〜(「EPCn」、「PDCn」、「EDTn」)には、処理対象エントリの「プロパティ名」項目と「値」項目の組が格納される。この場合、「EPC1」〜「EPCn」に「プロパティ名」項目が、「EDT1」〜「EDTn」には「値」項目が、それぞれ格納される。「PDC1」〜「PDCn」には、「EDT1」〜「EDTn」の各バイト数が格納される。ECHONET Liteフレーム607内の「OPC」項目には、処理対象エントリの「プロパティ名」項目と「値」項目の組の数が処理プロパティ数として格納される。
ステップS902の処理の後、CPU301は、図9のフローチャートで示される図8のステップS805のデータ取得要求受信時処理を終了する。
以上のようにして、スイッチ101は、インスタンスリスト取得要求メッセージに対して、各機器103またはGW102からの応答を代理して、各インスタンスリスト取得応答メッセージのフレームデータを応答することができる。
ステップS901の判定がNOならば、スイッチ101のCPU301は、受信されたフレームデータによるデータ取得要求メッセージは、プロパティ値取得要求メッセージであると判定する。この場合、CPU301は、要求プロパティのうち、機器データ管理テーブル203−3にあるプロパティについて、そのプロパティの更新日時と、現在日時との差分時間を算出する(図9のステップS903)。具体的には、プロパティ値取得要求メッセージに対応する図6のデータ構成例のフレームデータに格納されているECHONET Liteフレーム607の「DEOJ」には、プロパティ値を要求する機器103のオブジェクト識別子が格納されている。また、ECHONET Liteフレーム607の「EPC1」〜「EPCn」項目には、要求されるプロパティ値に対応するプロパティ名が格納されている。一方、図4のデータ構成例の機器データ管理テーブル203−3の各エントリには、「EOJ」項目に各機器のオブジェクト識別子が登録され、「プロパティ名」項目と「値」項目の組ごとに、値が更新された更新日時が「更新日時」項目に登録されている。CPU301はまず、機器データ管理テーブル203−3上で、プロパティ値取得要求メッセージ内の「DEOJ」項目の値が「EOJ」項目に登録されているエントリを特定する。そして、CPU301は、そのエントリにおいて、プロパティ値取得要求メッセージにより要求されたプロパティ名「EPC1」〜「EPCn」ごとに、各プロパティ名が登録されている「プロパティ名」項目に対応する「値」項目に値が登録されているか否かを判定する。この登録がなされている場合、CPU301は、その登録がなされている「値」項目に対応する「更新日時」項目に登録されている更新日時と、現在日時(プロパティ値取得要求メッセージが受信された日時)との差分時間を算出する。
次に、スイッチ101のCPU301は、上記プロパティ値取得要求メッセージにより要求された全てのプロパティにおいてステップS903で差分時間が算出でき、かつ差分時間がキャッシュ値許容時間内か否かを判定する(図9のステップS904)。このとき、CPU301は、キャッシュ値許容時間を以下のようにして取得する。CPU301は、図4のデータ構成例の機器データ管理テーブル203−3から、プロパティ値取得要求メッセージを送信したGW102に対応する「コントローラ」種別のエントリを抽出する。具体的には、CPU301は、プロパティ値取得要求メッセージに対応する図6のデータ構成例のフレームデータに格納されているECHONET Liteフレーム607の「SEOJ」項目値が「EOJ」項目に格納されているエントリを抽出する。そして、CPU301は、その抽出したエントリの「プロパティ名」項目=「キャッシュ値許容時間」に対応する「値」項目から、キャッシュ値許容時間の値を取得する。
ステップS904の判定がYESならCPU301は、機器データ管理テーブル203−3に登録されている該当エントリのデータで、プロパティ値取得応答メッセージを構築する(図9のステップS905)。
具体的には、まずCPU301は、図6のデータ構成例のフレームデータに格納されるべきプロパティ値取得応答メッセージに対応するECHONET Liteフレーム607として、以下のデータを生成する。CPU301は、ステップS903で特定したエントリから、プロパティ値取得要求メッセージが要求する各プロパティ名「EPC1」〜「EPCn」が登録されている各「プロパティ名」項目に対応する各「値」項目値を取得する。そして、CPU301は、各「値」項目値が「EDT1」から「EDTn」として設定された、プロパティ値の組(「EPC1」、「PDC1」、「EDT1」)〜(「EPCn」、「PDCn」、「EDTn」)を生成する。なお、CPU301は、「PDC1」〜「PDCn」を、「EDT1」〜「EDTn」の各バイト数として設定する。CPU301は、処理プロパティ数nを「OPC」項目値として設定する。CPU301は、「SEOJ」項目値として、ステップS903で特定したエントリの「EOJ」項目値を設定する。また、CPU301は、「DEOJ」項目値として、プロパティ値取得要求メッセージに対応する図6のデータ構成例のフレームデータに格納されているECHONET Liteフレーム607の「SEOJ」項目値を設定する。そして、CPU301は、「ESV」項目値として、応答を示す値を設定する。
例えば、図4の機器データ管理テーブル203−3のデータ構成例において、プロパティ値取得要求メッセージが機器(#1)の全プロパティ値を要求している場合、CPU301は、プロパティ値取得応答メッセージとして、次のようなECHONET Liteフレーム607を生成する。
・プロパティ値の組
(「動作状態」「2」「ON」)
(「設定温度」「2」「26」)
(「温度」「2」「28」)
(「タイマ設定」「2」「ON」)
・「OPC」=4
・「SEOJ」=「0x013001」
・「DEOJ」=「0x05FF01」
・「ESV」=「0x7」
次に、CPU301は、以上のようにして生成したECHONET Liteフレーム607が格納された図6のデータ構成例のフレームデータを生成する。このとき、CPU301は、送信元MACアドレス601として、プロパティ値取得要求メッセージのフレームデータを受信した図2のLANインタフェース部305のMACアドレスを設定する。CPU301は、宛先MACアドレス602として、プロパティ値取得要求メッセージのフレームデータに設定されていた送信元MACアドレス601を設定する。CPU301は、送信元IPアドレス603として、ステップS903で特定したエントリの「IPアドレス」項目値を設定する。CPU301は、宛先IPアドレス604として、プロパティ値取得要求メッセージのフレームデータに設定されていた送信元IPアドレス603を設定する。そして、CPU301は、送信元ポート番号605および宛先ポート番号606として、ECHONET Lite通信プロトコルに対応するポート番号を設定する。
スイッチ101は、上記プロパティ値取得応答メッセージを、要求元に送信する。具体的には、CPU301は、ステップS905で構築したプロパティ値取得応答メッセージが格納されたフレームデータを、図3(a)のフレーム転送エンジン304に送信依頼する(図9のステップS906)。フレーム転送エンジン304は、依頼されたフレームデータを、そのフレームデータの宛先MACアドレス602が接続先MACアドレスとして保持されているLANインタフェース部305から送信する。
ステップS906の処理の後、CPU301は、図9のフローチャートで示される図8のステップS805のデータ取得要求受信時処理を終了する。
ステップS904の判定がNOの場合、スイッチ101は、「機器データ管理テーブル203−3にない要求プロパティ」+「差分時間がキャッシュ値許容時間外のプロパティ」で、プロパティ値取得要求メッセージを再構築する。そして、スイッチ101は、その要求メッセージを、現在要求が行われている宛先の機器103に送信する(図9のステップS907)。具体的には、CPU301は、ステップS903で特定したエントリにおいて、以下の抽出処理を実行する。CPU301は、プロパティ値取得要求メッセージにより要求された各プロパティ名「EPC1」〜「EPCn」が登録されている「プロパティ名」項目のうち、「値」項目に値が登録されていないプロパティ名を抽出する。さらに、CPU301は、ステップS903で算出した差分時間が前述したキャッシュ値許容時間外である(以内でない)プロパティ名を抽出する。そして、CPU301は、これらの抽出したプロパティ名が設定されたプロパティ値取得要求メッセージを再構築して、該当する機器103に向けて送信する。
より具体的には、まずCPU301は、図6のデータ構成例のフレームデータに格納されるべきプロパティ値取得要求メッセージに対応するECHONET Liteフレーム607として、以下のデータを生成する。CPU301は、ステップS907で抽出した各プロパティ名を含むを含むプロパティ値の組「EPC1」〜「EPCn」を生成する。CPU301は、処理プロパティ数nを「OPC」項目値として設定する。CPU301は、「DEOJ」項目値として、ステップS903で特定したエントリの「EOJ」項目値を設定する。また、CPU301は、「ESV」項目値として、要求を示す値を設定する。例えば、「ESV」=「0x5X」である。さらに、CPU301は、「TID」項目値として、今回のプロパティ値取得要求メッセージに対して一意に生成した識別値を設定する。
次に、CPU301は、以上のようにして生成したECHONET Liteフレーム607が格納された図6のデータ構成例のフレームデータを生成する。このとき、CPU301は、宛先MACアドレス602として、ステップS903で特定したエントリの「MACアドレス」項目値を設定する。CPU301は、送信元MACアドレス601として、上記宛先MACアドレス602が接続先MACアドレスとして設定されている図3(a)のLANインタフェース部305自身のMACアドレスを設定する。CPU301は、送信元IPアドレス603として、図7のステップS701で取得しメモリ302に保持しているスイッチ101自身のIPアドレスを設定する。CPU301は、宛先IPアドレス604として、ステップS903で特定したエントリの「IPアドレス」項目値を設定する。そして、CPU301は、送信元ポート番号605および宛先ポート番号606として、ECHONET Lite通信プロトコルに対応するポート番号を設定する。
CPU301は、以上のプロパティ値取得要求メッセージが格納されたフレームデータを、図3(a)のフレーム転送エンジン304に送信依頼する。フレーム転送エンジン304は、依頼されたフレームデータを、そのフレームデータの宛先MACアドレス602が接続先MACアドレスとして保持されているLANインタフェース部305から送信する。
以上のステップS907では、機器データ管理テーブル203−3のエントリに登録されていないプロパティ名と、差分時間がキャッシュ値許容時間外であるプロパティ名についてのみ、プロパティ値取得要求メッセージが機器103に送信される。これに対して、プロパティ値取得要求メッセージにより要求された全てのプロパティ名「EPC1」〜「EPCn」について、プロパティ値取得要求メッセージが機器103に送信されて、全てのプロパティ値の再取得が要求されてもよい。
一方、CPU301は、差分時間がキャッシュ値許容時間内の機器データ管理テーブル203−3上のプロパティ値は、応答待ちプロパティとして、ステップS907で付与したTID値とともに、メモリ302に一時保持する(図9のステップS908)。なお、CPU301は、プロパティ値取得要求メッセージの送信元(要求元)のGW102の情報も一緒に保持する。この結果、ステップS907で送信されたプロパティ値取得要求メッセージに対して機器103からプロパティ値が応答された場合に、そのプロパティ値とメモリ302に一時保持したプロパティ値をTIDで紐付けして、要求元のGW102に応答することが可能となる。すなわち、CPU301は、受信された応答のフレームデータに付与されているTID値と同じTID値が付与されているメモリ302上の応答待ちプロパティの値を、受信された応答のフレームデータ中のプロパティ値ととりまとめて、要求元のGW102に応答する。
ステップS908の処理の後、CPU301は、図9のフローチャートで示される図8のステップS805のデータ取得要求受信時処理を終了する。
図10は、図8のステップS806の状態通知・応答受信時処理の詳細例を示すフローチャートである。
CPU301は、受信された状態通知または応答のフレームデータに格納されているECHONET Liteフレーム607によって、機器データ管理テーブル203−3の該当するエントリのプロパティを更新する(図10のステップS1001)。この場合、受信された図6のデータ構成例のフレームデータに格納されているECHONET Liteフレーム607の「SEOJ」には、プロパティ値を更新すべき機器103またはGW102のオブジェクト識別子が格納されている。また、ECHONET Liteフレーム607内のプロパティ値の組(「EPC1」、「PDC1」、「EDT1」)〜(「EPCn」、「PDCn」、「EDTn」)には、更新すべてきプロパティのプロパティ名とプロパティ値の組が格納されている。CPU301はまず、機器データ管理テーブル203−3上で、上記フレーム内の「SEOJ」項目の値が「EOJ」項目に登録されているエントリを特定する。そして、CPU301は、そのエントリにおいて、上記プロパティ値の組で、対応する「プロパティ名」項目ごとの「値」項目の値を更新する。また、CPU301は、その登録がなされている「値」項目に対応する「更新日時」項目に、現在日時(状態通知・応答のメッセージが受信された日時)を登録する。
次に、CPU301は、受信された応答のメッセージに対応する応答待ちプロパティが、メモリ302にあるか否かを判定する(図10のステップS1002)。具体的には、CPU301は、受信された応答メッセージのフレームデータに格納されているECHONET Liteフレーム607の「TID」項目のTID値と同じTID値が付与されている応答待ちプロパティを、メモリ302上で検索する。
ステップS1002の判定がNOとなった場合、スイッチ101は、受信された状態通知メッセージまたは応答メッセージをそのまま宛先のポートに中継する。具体的には、CPU301は、受信された状態通知メッセージまたは応答メッセージをそのまま中継して送信するよう、フレーム転送エンジン304に指示する(図10のステップS1003)。フレーム転送エンジン304は、状態通知メッセージのフレームデータの宛先MACアドレス602(図6参照)に、マルチキャストを示す値が設定されているのを確認後、そのフレームデータを図3(a)の全てのLANインタフェース部305に中継転送する。
一方、ステップS1002の判定がYESとなる場合は、受信されたメッセージが、図9のステップS907で送信されたプロパティ値取得要求メッセージに対するスイッチ101自身宛ての応答メッセージで、かつ応答待ちプロパティがある場合である。この場合、CPU301は、ステップS1002でメモリ302上で検索された応答待ちプロパティのプロパティ値を、受信された応答のフレームデータ中のプロパティ値ととりまとめて、プロパティ値取得応答メッセージを再構築する(図10のステップS1004)。CPU301は、応答待ちプロパティとともに保持していた要求元のGW102の情報に基づいて、上記再構築したプロパティ値取得応答メッセージがECHONET Liteフレーム607(図6参照)として格納されたフレームデータを生成する。この生成のしかたは、図9のステップS905の場合と同様である。
スイッチ101は、それに対応するプロパティ値取得要求メッセージを送信した宛先に、上記プロパティ値取得応答メッセージを応答する(図10のステップS1003)。具体的には、CPU301は、以上のステップS1004で構築したプロパティ値取得応答メッセージが格納されたフレームデータを、図3(a)のフレーム転送エンジン304に送信依頼する。フレーム転送エンジン304は、依頼されたフレームデータを、そのフレームデータの宛先MACアドレス602が接続先MACアドレスとして保持されているLANインタフェース部305から送信する。
ステップS1003の処理の後、CPU301は、図10のフローチャートで示される図8のステップS806の状態通知・応答受信時処理を終了する。
図11は、GW102のキャッシュ値許容時間登録・更新状態通知処理の例を示すフローチャートである。この処理は、図3(b)のハードウェア構成例において、CPU311がストレージ313からメモリ312に読み出したキャッシュ値許容時間登録・更新状態通知処理プログラムを実行する処理である。この処理は、図2のプロトコル処理部210の動作の一部である。
図2のGW102内のキャッシュ値許容時間登録インタフェース212は、GW102の管理者または上位システムのサービスから、キャッシュ値許容時間の登録または更新を受け付ける。この結果、キャッシュ値許容時間登録インタフェース212は、図3(b)のメモリ312またはストレージ313に記憶されているECHONET Liteオブジェクトデータ管理テーブル213(図2)を更新する。具体的には、キャッシュ値許容時間登録インタフェース212は、図5のデータ構成例を有するECHONET Liteオブジェクトデータ管理テーブル213上で、「キャッシュ値許容時間」項目値を登録または更新する。
これに対して、GW102のCPU311は、ECHONET Liteオブジェクトデータ管理テーブル213上の「キャッシュ値許容時間」項目値が登録または更新されたか否かを判定待機している(図11のステップS1101)。
ステップS1101の判定がYESになると、GW102のCPU311は、登録または更新されたキャッシュ値許容時間を、図3(a)のLANインタフェース部314を介して、マルチキャストで状態通知する(図11のステップS1102)。具体的には、送信される図6のデータ構成例のフレームデータのECHONET Liteフレーム607において、送信元MACアドレス601および送信元IPアドレス603には、応答元のGW102のMACアドレスおよびIPアドレスが格納される。また、宛先MACアドレス602には、マルチキャストに対応する「値」が格納される。さらに、ECHONET Liteフレーム607内の「SEOJ」項目には、応答元のGW102のECHONET Liteオブジェクト識別子が格納される。加えて、ECHONET Liteフレーム607内の「EPC1」項目には名称「キャッシュ値許容時間」が、「EDT1」項目にはキャッシュ値許容時間値が、それぞれ格納される。なお、「RDC1」項目には「EDT1」項目値のバイト数が格納されている。
ステップS1102の処理の後、CPU311は、図11のフローチャートで示されるキャッシュ値許容時間登録処理を終了する。
上述のようにしてGW102から送信されたキャッシュ値許容時間の状態通知メッセージのフレームデータを受信したスイッチ101は、図8のフレーム受信時の代理応答処理において、ステップS804からS806を実行することにより、図10のステップS1001でその状態通知メッセージを処理する。
ステップS1001で、図3(a)のCPU301は、図4のデータ構成例の機器データ管理テーブル203−3において、キャッシュ値許容時間の状態通知メッセージ中の「SEOJ」項目値が格納されている「コントローラ」種別のエントリを抽出する。そして、CPU301は、そのエントリにおいて、「プロパティ名」項目=「キャッシュ値許容時間」に 対応する「値」項目に、キャッシュ値許容時間の状態通知メッセージ中の「EDT1」項目のキャッシュ値許容時間値を登録する。
このようにして、GW102上でのキャッシュ値許容時間の登録・更新に応じてGW102から送信されるマルチキャストの状態通知に基づき、スイッチ101の機器データ管理テーブル203−3の該当エントリのキャッシュ値許容時間を登録・更新することができる。
以上説明した図7から図11のフローチャートで例示される制御処理による動作シーケンスを以下に説明する。
図12は、GW102へのキャッシュ値許容時間登録のシーケンス例を示す図である。
図2のGW102(#1)内のキャッシュ値許容時間登録インタフェース212は、GW102(#1)のサービス1管理者から、キャッシュ値許容時間の登録を受け付ける。この時間値を例えば5秒とする。この結果、GW102(#1)における図2のキャッシュ値許容時間登録インタフェース212は、ECHONET Liteオブジェクトデータ管理テーブル213(図2)の「キャッシュ値許容時間」項目に「5秒」を登録する(図12のS1201)。
一方、図2のGW102(#2)内のキャッシュ値許容時間登録インタフェース212は、上位システムのサービスから、キャッシュ値許容時間の登録を受け付ける。この時間値を例えば60秒とする。この結果、GW102(#2)における図2のキャッシュ値許容時間登録インタフェース212は、ECHONET Liteオブジェクトデータ管理テーブル213(図2)の「キャッシュ値許容時間」項目に「60秒」を登録する(図12のS1202)。
図13は、図12のシーケンス例で示されるGW102(#1)およびGW102(#2)でのキャッシュ値許容時間登録に続くキャッシュ値許容時間登録状態通知処理のシーケンス例を示す図である。
GW102(#1)のCPU311は、図11のフローチャートで例示されるキャッシュ値許容時間登録・更新状態通知処理を実行している。GW102(#1)の図5のデータ構成例を有するECHONET Liteオブジェクトデータ管理テーブル213の「キャッシュ値許容時間」項目にキャッシュ値許容時間=「5秒」が登録されると、CPU311が、図11のステップS1101で、登録を検出する。そして、CPU311は、図11のステップS1102で、登録されたキャッシュ値許容時間=「5秒」を、マルチキャストの状態通知として送信する(図13のS1301)。
この結果、GW102(#1)から送信されたキャッシュ値許容時間=「5秒」の状態通知メッセージのフレームデータは、スイッチ101で、GW102(#1)が接続される図3(a)のLANインタフェース部305を介して、フレーム転送エンジン304で受信される。スイッチ101のCPU301は、フレーム転送エンジン304から上記状態通知メッセージのフレームデータを受け取る。CPU301は、図8のステップS804からS806のフレーム受信の処理を実行することにより、図10のステップS1001を実行する。これにより、上記状態通知メッセージ内のキャッシュ値許容時間=5秒が、図4のデータ構成例の機器データ管理テーブル203−3内のコントローラ(#1)のエントリのプロパティ名=「キャッシュ値許容時間」に対応する「値」項目に登録される(図13のS1302)。
GW102(#2)でも同様に、CPU311は、図11のフローチャートで例示されるキャッシュ値許容時間登録・更新状態通知処理を実行している。GW102(#2)の図5のデータ構成例を有するECHONET Liteオブジェクトデータ管理テーブル213の「キャッシュ値許容時間」項目にキャッシュ値許容時間=「60秒」が登録されると、CPU311が、図11のステップS1101で、登録を検出する。CPU311は、図11のステップS1102で、登録されたキャッシュ値許容時間=「60秒」を、マルチキャストの状態通知として送信する(図13のS1303)。
この結果、GW102(#2)から送信されたキャッシュ値許容時間=「60秒」の状態通知メッセージのフレームデータは、スイッチ101で、GW102(#2)が接続される図3(a)のLANインタフェース部305を介して、フレーム転送エンジン304で受信される。スイッチ101のCPU301は、フレーム転送エンジン304から上記状態通知メッセージのフレームデータを受け取る。CPU301は、図8のステップS804からS806のフレーム受信の処理を実行することにより、図10のステップS1001を実行する。上記状態通知メッセージ内のキャッシュ値許容時間=60秒が、図4のデータ構成例の機器データ管理テーブル203−3内のコントローラ(#2)のエントリのプロパティ名=「キャッシュ値許容時間」に対応する「値」項目に登録される(図13のS1304)。
以上の図13のシーケンス例は、スイッチ101が、GW102(#1)やGW102(#2)よりも先に起動していて、各GW102におけるキャッシュ値許容時間が、あとからスイッチ101に登録される場合の例である。
図14は、スイッチ101の立上げ時のインスタンスリスト通知要求処理およびキャッシュ値許容時間取得処理のシーケンス例を示す図である。
スイッチ101が起動されると(図14のS1401)、CPU301は、図7のフローチャートで例示されるスイッチ101の立上げ時の代理応答処理をスタートさせる。
この結果、CPU301は、図7のステップS701により、スイッチ101自身のIPアドレスを取得する(図14のS1402)。
その後、CPU301は、図7のステップS702により、Get要求として、インスタンスリスト通知要求メッセージのフレームデータを、マルチキャストで送信する(図14のS1403)。
このフレームデータは、図3(a)のフレーム転送エンジン304から各LANインタフェース部305を介して、GW102(#1)、機器103(#1)、GW102(#2)などに到達する。ここで、機器103(#2)は、例えば起動していない。
GW102(#1)、機器103(#1)、GW102(#2)等は、上記インスタンスリスト通知要求メッセージを受信すると、それぞれの機器が管理しているプロパティ名が格納されたインスタンスリスト通知応答メッセージを応答する。応答の形式は、ECHONET Lite通信プロトコルに従ったGet応答による。
この結果、CPU301は、図7のステップS703により、図3(a)の各LANインタフェース部305およびフレーム転送エンジン304を介して、各インスタンスリスト通知応答メッセージを受信する(図14のS1404、S1405、S1406)。これを受けて、CPU301は、図4のデータ構成例を有する機器データ管理テーブル203−3に、「機種種別」、「MACアドレス」、「IPアドレス」、「EOJ」、および「プロパティ名」の各項目値が設定された各エントリを生成する(図14のS1407)。例えば、「機種種別」項目に「機器(#1)」「コントローラ(#1)」「コントローラ(#2)」などがそれぞれ設定された各エントリが生成される。
さらに、CPU301は、図7のステップS704からS705の処理により、上記応答機器の中にプロパティ名として「キャッシュ値許容時間」を含む「コントローラ」種別の機器がある場合には、それらのGW102に、キャッシュ値許容時間通知要求メッセージを送信する。
GW102(#1)宛てのキャッシュ値許容時間通知要求メッセージのフレームデータは、図3(a)のフレーム転送エンジン304からGW102(#1)が接続されたLANインタフェース部305を介してGW102(#1)に到達する(図14のS1408)。
GW102(#1)内のCPU311は、上記キャッシュ値許容時間通知要求メッセージを受信すると、以下の制御動作を実行する。CPU311は、メモリ312等から、図5のデータ構成例を有するECHONET Liteオブジェクトデータ管理テーブル213(図2参照)の「キャッシュ値許容時間」項目に登録されているキャッシュ値許容時間=「5秒」を読み出す。CPU311は、キャッシュ値許容時間値=「5秒」が設定されたキャッシュ値許容時間通知応答メッセージを生成して、図3(b)のLANインタフェース部314からスイッチ101に向けて応答する。応答の形式は、Get応答による(図14のS1409)。
スイッチ101内のCPU301は、上記キャッシュ値許容時間通知応答メッセージを、GW102(#1)が接続される図3(a)のLANインタフェース部305およびフレーム転送エンジン304を介して受信する。CPU301は、図7のステップS706により、キャッシュ値許容時間通知応答メッセージからキャッシュ値許容時間値を取り出す。そして、CPU301は、機器データ管理テーブル203−3上のGW102(#1)に対応するエントリにおいて、「プロパティ名」項目=「キャッシュ値許容時間」に対応する「値」項目に、上記キャッシュ値許容時間値=「5秒」を登録する(図14のS1410)。
GW102(#2)宛てのキャッシュ値許容時間通知要求メッセージも同様に処理され(図14のS1411)、GW102(#2)からのキャッシュ値許容時間通知応答メッセージからキャッシュ値許容時間値=「60秒」が取り出される(図14のS1412)。そして、機器データ管理テーブル203−3上のGW102(#2)に対応するエントリにおいて、「プロパティ名」項目=「キャッシュ値許容時間」に対応する「値」項目に、キャッシュ値許容時間値=「60秒」が登録される(図14のS1413)。
図14のシーケンス例は、図13のシーケンス例とは逆に、スイッチ101が、GW102(#1)やGW102(#2)よりも後に起動する場合であって、スイッチ101が後から各GW102にキャッシュ値許容時間を要求して取得する場合の例である。
図15は、例えばGW102(#1)からのインスタンスリスト取得要求処理(機器検出処理)のシーケンス例を示す図である。例えばGW102(#1)が後から起動したようなケースにおいて、GW102(#1)上で稼働するサービスが、ネットワークにどの機器が接続されているかを知りたい場合がある。
このような場合に、GW102(#1)等は、インスタンスリスト取得要求メッセージをマルチキャストで送信する。GW102(#1)のCPU311は、送信されるフレームの図6のデータ構成例のフレームデータのECHONET Liteフレーム607において、「ESV」項目にデータ取得要求を示す値「0x6X」を設定する。これに対して、スイッチ101のCPU301は、図3(a)の各LANインタフェース部305およびフレーム転送エンジン304を介して、上記インスタンスリスト取得要求メッセージのフレームデータを受信する(図15のS1501)。
この結果、CPU301は、図8のフレーム受信時の代理応答処理を起動し、図8のステップS801→S803→S804→S805と実行し、さらにステップS805の詳細である図9のS901で判定がYESとなって、図9のステップS902を実行する。CPU301は、図4のデータ構成例の機器データ管理テーブル203−3の各エントリに登録されているインスタンスのリストを生成して、インスタンスリスト取得要求メッセージの送信元に応答する(図15のS1502)。
この場合、CPU301は、上記エントリごとに、各エントリの機器を代理するGet応答によるインスタンスリスト取得応答メッセージを生成して、GW102(#1)に応答する(図14のS1503、S1504)。これにより、例えば図15において、GW102(#1)は、あたかも機器103(#1)およびGW102(#2)(コントローラ(#2))が応答したかのように、各インスタンスリスト取得応答メッセージを受信する。
実際には、機器103(#1)およびGW102(#2)にはアクセスは行われておらず、スイッチ101が代理応答しているため、特に各機器103へのアクセス数が削減され、余分な要求メッセージを機器103に送信しなくて済むという効果が得られる。なお、GW102(#1)が他のGW102(#2)の接続状態を知りたい場合もあるため、GW102(#2)の代理応答の対象となる(図14のS1504)。この結果、GW102にも余分な要求メッセージが送信されなくなるため、ネットワーク全体のトラフィックを減少ささせる効果がある。
図16は、GW102からのプロパティ値取得要求処理のシーケンス例(その1)を示す図である。
まず、例えばGW102(#1)が、機器103(#1)に対して、Get要求によるプロパティ値取得要求メッセージを送信する(図16のS1601)。GW102(#1)のCPU311は、送信されるフレームの図6のデータ構成例のフレームデータのECHONET Liteフレーム607において、予め取得しているインスタンスリスト(図15参照)から、次の値を設定する。CPU311は、「SEOJ」項目に、GW102(#1)自身のオブジェクト識別子=「0x05FF01」(図4のコントローラ(#1)のエントリの「EOJ」項目値を参照)を設定する。CPU311は、「DEOJ」項目に、機器103(#1)のオブジェクト識別子=「0x013001」(図4の機器(#1)のエントリの「EOJ」項目値を参照)を設定する。さらに、CPU311は、要求プロパティとして、「EPC1」=「動作状態」を設定する。これに対して、スイッチ101のCPU301は、GW102(#1)が接続される図3(a)のLANインタフェース部305およびフレーム転送エンジン304を介して、上記プロパティ値取得要求メッセージのフレームデータを受信する(図16のS1601)。
この結果、CPU301は、図8のフレーム受信時の代理応答処理を起動し、図8のステップS801→S803→S804→S805と実行し、さらにステップS805の詳細である図9のS901で判定がNOとなって、図9のステップS903を実行する。CPU301は、プロパティ値取得要求メッセージから、「SEOJ」=「0x05FF01」と、「DEOJ」=「0x013001」と、要求プロパティ「EPC1」=「動作状態」を取り出す。CPU301は、機器データ管理テーブル203−3において、「EOJ」項目値が「0x013001」である機器103(#1)のエントリを特定する(図4参照)。CPU301は、そのエントリの「プロパティ名」=「動作状態」に対応する「更新日時」=「2014/1/24 10:15:40」と、上記メッセージの受信時刻=「2014/1/24 10:15:55」との差分時間=「15」秒を算出する。CPU301は、機器データ管理テーブル203−3において、「EOJ」項目値が「0x05FF01」であるコントローラ(#1)(=GW102(#1))のエントリから、プロパティ名=「キャッシュ値許容時間」に対応する「値」=「5」秒を抽出する。CPU301は、図9のステップS904で、上記差分時間=「15」秒が上記キャッシュ値許容時間=「5」秒内ではないことを判定し、図9のステップS907の処理に進む(図16のS1602)。
CPU301は、図9のステップS907で、差分時間がキャッシュ値許容時間内になかった要求プロパティ「EPC1」=「動作状態」が設定されたプロパティ値取得要求メッセージを再構築する。CPU301は、そのプロパティ値取得要求メッセージを、Get要求として機器103(#1)に向けて送信する(図16のS1603)。
上記プロパティ値取得要求メッセージを受信した機器103(#1)は、要求プロパティ「EPC1」=「動作状態」に対応するプロパティ値「EDT1」=「ON」が設定されたプロパティ値取得応答メッセージを、Get応答として応答する。このほか、上記メッセージには、「SEOJ」=機器103(#1)自身のオブジェクト識別子=「0x013001」、「ESV」=「0x7X」が設定される。これに対して、スイッチ101のCPU301は、図3(a)の機器103(#1)が接続されるLANインタフェース部305およびフレーム転送エンジン304を介して、上記プロパティ値取得応答メッセージのフレームデータを受信する(図16のS1604)。
この結果、CPU301は、図8のフレーム受信時の代理応答処理を起動し、図8のステップS801→S803→S804と実行する。ステップS804で、CPU301は、上記メッセージから「ESV」=「0x7X」を取り出して判定した結果、図8のステップS806を実行し、さらにステップS806の詳細である図10のS1001を実行する。CPU301は、受信したプロパティ値取得応答メッセージから、要求プロパティ「EPC1」=「動作状態」に対応するプロパティ値「EDT1」=「ON」、「SEOJ」=「0x013001」を取り出す。CPU301は、図4のデータ構成例の機器データ管理テーブル203−3の「EOJ」項目値が「0x013001」である機器103(#1)のエントリを特定する(図4参照)。CPU301は、そのエントリの「プロパティ名」=「動作状態」に対応する「値」項目値を「ON」に更新し、「更新日時」項目値に現在時刻「2014/1/24 10:15:56」を登録する(図16のS1605)。
そして、CPU301は、図10のステップS1002の判定がNOとなった後、ステップS1003を実行する。CPU301は、図3のフレーム転送エンジン304を介して、受信されたプロパティ値取得応答メッセージをそのまま、GW102(#1)が接続されるLANインタフェース部305に中継転送する。この結果、GW102(#1)に対して、Get応答によるプロパティ値取得応答メッセージが通知される(図16のS1606)。
このようにして、GW102(#1)は、機器103(#1)に関する要求プロパティ=「動作状態」に対する最新のプロパティ値=「ON」を取得することができる。
続いて、例えばGW102(#2)が、機器103(#1)に対して、要求プロパティとして「EPC1」=「動作状態」が設定されたGet要求によるプロパティ値取得要求メッセージを送信する。この動作は、GW102(#1)に関するS1601の場合と同様である。これに対して、スイッチ101のCPU301は、GW102(#2)が接続される図3(a)のLANインタフェース部305およびフレーム転送エンジン304を介して、上記プロパティ値取得要求メッセージのフレームデータを受信する(図16のS1607)。
この結果、CPU301は、S1602の場合と同様にして、図9のステップS903で、機器データ管理テーブル203−3の機器103(#1)のエントリで、要求プロパティの「更新日時」項目値と上記メッセージの受信時刻との差分時間を算出する。具体的には、CPU301は、「プロパティ名」=「動作状態」に対応する「更新日時」=「2014/1/24 10:15:56」とメッセージ受信時刻=「2014/1/24 10:16:10」との差分時間=「14」秒を算出する。一方、CPU301は、S1602と同様に、図9のステップS904で、機器データ管理テーブル203−3のコントローラ(#2)(=GW102(#2))のエントリから、プロパティ名=「キャッシュ値許容時間」の「値」=「60」秒を抽出する。CPU301は、図9のステップS904で、上記差分時間=「14」秒が上記キャッシュ値許容時間=「60」秒内であることを判定し、図9のステップS905の処理に進む(図16のS1608)。
CPU301は、図9のステップS905およびS906で、機器データ管理テーブル203−3において、機器103(#1)のエントリの「プロパティ名」=「動作状態」に対応するプロパティ値=「ON」を読み出す(図16のS1609)。
この結果、CPU301は、要求プロパティ名=「動作状態」に対応するプロパティ値=「ON」が設定されたプロパティ値取得応答メッセージを生成し、GW102(#2)に代理応答する(図16のS1610)。
このようにして、GW102(#2)は、スイッチ101による代理応答により、GW102(#2)に対応するキャッシュ値許容時間=「60」秒の範囲内で、要求プロパティ名=「動作状態」に対応する最新のプロパティ値=「ON」を取得することが可能となる。この場合、GW102(#2)から送信されたプロパティ値取得要求メッセージは、機器103(#1)には転送されずにスイッチ101で代理で処理されるため、機器103(#1)に対する処理負担を最小限に抑えることが可能となる。
図17は、GW102からのプロパティ値取得要求処理のシーケンス例(その2)を示す図である。
図17では、機器データ管理テーブル203−3の機器103(#1)のエントリの「プロパティ名」項目=「動作状態」に対応する「値」項目が、図16のS1609で最新状態に更新された状態をスタートとする。この状態における機器データ管理テーブル203−3は、図17のAに示される内容を有している。すなわち、機器103(#1)のエントリにおいて、「プロパティ名」項目=「動作状態」の「更新日時」項目の値は、「2014/1/24 10:15:56」になっている。また、上記エントリのその他の「プロパティ名」項目=「設定温度」と「プロパティ名」項目=「温度」の「更新日時」項目の値は、「2014/1/24 10:15:56」で最新状態にはなっていない。
上記状態において、GW102(#2)が、機器103(#1)に対して、3つの要求プロパティ「EPC1」=「動作状態」、「EPC2」=「設定温度」、「EPC3」=「温度」が設定されたGet要求によるプロパティ値取得要求メッセージを送信したとする。このメッセージは、図16のS1601の場合と同様にして送信される。これに対して、スイッチ101のCPU301は、GW102(#2)が接続される図3(a)のLANインタフェース部305およびフレーム転送エンジン304を介して、上記プロパティ値取得要求メッセージのフレームデータを受信する(図17のS1701)。
CPU301は、図16のS1602の場合と同様に、図9のステップS903で、図17のAの機器データ管理テーブル203−3の機器103(#1)のエントリで、要求プロパティごとに、「更新日時」項目値と上記メッセージの受信時刻との差分時間を算出する。具体的には、要求プロパティ=「動作状態」については、「更新日時」=「2014/1/24 10:15:56」とメッセージの受信時刻=「2014/1/24 10:16:45」との差分時間=「49」秒が算出される。また、要求プロパティ=「設定温度」については、「更新日時」=「2014/1/24 10:15:40」とメッセージの受信時刻=「2014/1/24 10:16:45」との差分時間=「65」秒が算出される。さらに、要求プロパティ=「動作状態」については、「更新日時」=「2014/1/24 10:15:40」とメッセージの受信時刻=「2014/1/24 10:16:45」との差分時間=「65」秒が算出される。一方、CPU301は、図16のS1602と同様に、図9のステップS904で、機器データ管理テーブル203−3のコントローラ(#2)(=GW102(#2))のエントリから、プロパティ名=「キャッシュ値許容時間」の「値」=「60」秒を抽出する。CPU301は、図9のステップS904で、要求プロパティ=「動作状態」の差分時間=「49」秒のみが上記キャッシュ値許容時間以内で、要求プロパティ=「設定温度」と「温度」については、それらの差分時間=「65」秒は上記キャッシュ値許容時間外と判定する。
この結果、CPU301は、図9のステップS907の処理に進む。
CPU301は、図9のステップS907により、差分時間がキャッシュ値許容時間外である要求プロパティ=「設定温度」と「温度」が設定されたプロパティ値取得要求メッセージを再構築する。CPU301は、そのプロパティ値取得要求メッセージを、Get要求として機器103(#1)に向けて送信する(図17のS1703)。このとき、CPU301は、プロパティ値取得要求メッセージを構成する図6のデータ構成例のフレームデータ内のECHONET Liteフレーム607の「TID」項目に、一意に決定した値(図17では「12345」と例示)を設定する。
一方、CPU301は、図9のステップS908により、差分時間がキャッシュ値許容時間内となった要求プロパティ=「動作状態」の「値」項目=「ON」については、応答待ちプロパティとして、メモリ302に一時保持する(図17のS1704)。このとき、CPU301は、ステップS907で付与したTID値も、応答待ちプロパティの一部として保持する。なお、図17には特には図示しないが、CPU301は、プロパティ値取得要求メッセージの送信元(要求元)のGW102(#2)の情報も一緒に保持する。
上記プロパティ値取得要求メッセージを受信した機器103(#1)は、以下の制御動作を実行する。機器103(#1)は、図16のS1604と同様に、要求プロパティ「EPC1」=「設定温度」と「EPC2」=「温度」に対応するプロパティ値「EDT1」=「24」度と「EDT2」=「27」度が設定されたプロパティ値取得応答メッセージをGet応答する。ただし、図17の例の場合、機器103(#1)は、プロパティ値取得応答メッセージに、プロパティ値取得要求メッセージに付与されていた「TID」項目値(図17の例では「12345」)を付与して応答する。これに対して、スイッチ101のCPU301は、図3(a)の機器103(#1)が接続されるLANインタフェース部305およびフレーム転送エンジン304を介して、上記プロパティ値取得応答メッセージのフレームデータを受信する(図17のS1705)。
この結果、CPU301は、図16のS1605と同様にして、図10のS1001により、図4のデータ構成例の機器データ管理テーブル203−3の機器103(#1)のエントリにおいて、以下の更新を実行する。CPU301は、「プロパティ名」=「設定温度」に対応する「値」項目値を「24」度に、「プロパティ名」=「温度」に対応する「値」項目値を「27」度にそれぞれ更新する。さらに、CPU301は、それぞれの「更新日時」項目値に現在時刻「2014/1/24 10:16:46」を登録する(図17のS1706)。この結果、機器データ管理テーブル203−3の機器103(#1)のエントリは、図17のBに示される内容に更新される。
ここで、メモリ302には、S1704により、上記プロパティ値取得応答メッセージに付与されているTID値(=「12345」)と同じTID値を含む応答待ちプロパティが保持されている。上記TID値の一致を判定することにより、CPU301は、図10のステップS1002の判定がYESとなった後、ステップS1004を実行する。CPU301は、応答待ちプロパティの値「動作状態」=「ON」と、プロパティ値取得応答メッセージの要求プロパティの値「設定温度」=「24」および「温度」=「27」とをとりまとめて、プロパティ値取得応答メッセージを再構築する。CPU301は、図10のステップS1003により、応答待ちプロパティとともに保持していたGW102(#2)の情報に基づき、上記プロパティ値取得応答メッセージが格納されたフレームデータを生成する(図17のS1707)。
CPU301は、上記プロパティ値取得応答メッセージが格納されたフレームデータを、GW102(#2)に代理応答する(図17のS1708)。
以上のようにして、図17のケースでは、スイッチ101は、GW102(#2)のキャッシュ値許容時間内の要求プロパティについては、機器データ管理テーブル203−3内のキャッシュ値を代理応答する。また、スイッチ101は、キャッシュ値許容時間外の要求プロパティについては、新たに機器103(#1)から取得した最新のプロパティ値を代理応答する。このようにして、本実施形態によれば、機器103への問合せを最小限に抑えながら、GW102が許容する時間範囲の最新データを、スイッチ101からGW102に代理応答することが可能となる。
図18は、機器103からの状態通知処理のシーケンス例を示す図である。
スイッチ101のCPU301は、機器103が接続される図3(a)のLANインタフェース部305およびフレーム転送エンジン304を介して、機器103から、最新のプロパティ値が格納された状態通知メッセージを受信する(図18のS1801)。図18の例では、プロパティ=「動作状態」の値「ON」が、状態通知メッセージに格納されている。
この結果、CPU301は、図16のS1605と同様にして、図10のS1001により、図4のデータ構成例の機器データ管理テーブル203−3の機器103(#1)のエントリにおいて、以下の更新を実行する。CPU301は、「プロパティ名」=「動作状態」に対応する「値」項目値を「ON」に更新し、「更新日時」項目値に現在時刻を登録する(図18のS1802)。
CPU301は、図10のステップS1002の判定がNOとなった後、ステップS1003により、受信された状態通知メッセージをそのまま中継して送信するよう、図3のフレーム転送エンジン304に指示する。フレーム転送エンジン304は、状態通知メッセージのフレームデータの宛先MACアドレス602(図6参照)に、マルチキャストを示す値が設定されているのを確認後、そのフレームデータを図3(a)の全てのLANインタフェース部305に中継転送する。この結果、機器103(#1)からの状態通知メッセージが、GW102(#1)およびGW102(#2)に到達する(図18のS1803)。各GW102は、通知されたプロパティ値に基づいて、自装置が管理するプロパティ値を更新する。
図19は、本実施形態の効果を説明するシーケンス例を示す図である。
例えば、キャッシュ値許容時間が異なるGW102(#A)、(#B)、(#C)があり、それぞれのキャッシュ値許容時間は1秒、3秒、5秒で、それぞれ7秒、9秒、9秒の周期で、同一の機器103(#1)の同一のプロパティのデータAの取得を行うとする。
図19のシーケンス例では、スイッチ101は、S1801またはS1804でのGW102(#A)からのプロパティ値取得要求により機器103(#1)から取得したデータを機器データ管理テーブル203−3に保持し、同時にGW102(#A)に応答する。その後、GW102(#B)、(#C)の2周期目までのプロパティ値取得要求(S1802、S1803、およびS1805、S1806)については、それぞれのキャッシュ値許容時間内である。このため、スイッチ101が、機器データ管理テーブル203−3にキャッシュされているデータAを代理応答する。そして、上記プロパティ値取得要求は、機器103(#1)へは送信されず、機器103(#1)への到達フレームが削減される。
3周期目では、スイッチ101は、S1807でのGW102(#A)からのプロパティ値取得要求により機器103(#1)から取得したデータを、機器データ管理テーブル203−3に保持し、同時にGW102(#A)に応答する。その後、GW102(#B)からのプロパティ値取得要求の受信時には、上記S1807で更新された機器データ管理テーブル203−3内のデータでは、GW102(#B)のキャッシュ値許容時間外となる。つまり、このタイミングにおける機器データ管理テーブル203−3内のデータは、GW102(#B)にとっては古いデータとなる。このため、スイッチ101は、S1808におけるGW102(#B)からのプロパティ値取得要求に基づいて機器103(#1)にアクセスし、その結果機器103(#1)から応答された最新データを、GW102(#B)に送信する。このようにして、要求元のGW102が定めるキャッシュ値許容時間内のデータを常に要求元のGW102へ応答することができる。
また、4周期目では、GW102(#B)がS1809でデータ取得した直後のS1810でGW102(#A)からプロパティ値取得要求が送信されている。この場合は、スイッチ101は、キャッシュ許容時間が最も短いGW102(#A)に対しても、機器データ管理テーブル203−3にキャッシュされたデータを応答することができ、機器103(#1)への到達フレームが削減される。
このように、本実施形態では、スイッチ101内で1つのキャッシュ許容時間ではなく、要求元ごとのキャッシュ値許容時間を管理することで、要求元のサービスが許容する範囲で機器103へ到達するフレームを削減することが可能となる。
なお、キャッシュ値許容時間は、必ずしも要求元のGW102に対応させなくてもよく、GW102と機器103との間の通信量が最適となるように、様々な基準に基づいて決定してよい。
以上のようにして、本実施形態によれば、GW102から電化製品やセンサ等の機器103へのデータ取得要求時に、最適に設定(例えばサービスごとに設定)されたキャッシュ値許容時間に応じて、スイッチ101がキャッシュデータを代理応答する。これにより、同一の機器103に対するプロパティ値の取得要求数を削減し、機器103における受信バッファ等のリソースの消費を低減し、取得要求への応答処理等の処理負荷を低減することが可能となる。
以上の実施形態に関して、更に以下の付記を開示する。
(付記1)
管理対象機器からの属性情報を受信時刻とともに保持する属性情報保持部と、
機器管理装置から属性情報の取得要求を受信すると、前記取得要求の受信時刻と前記属性情報の受信時刻との差に応じて、前記属性情報保持部が保持している属性情報を前記機器管理装置に応答すること、
または前記取得要求に対応する属性情報を前記管理対象機器から取得して前記機器管理装置に応答することのいずれかを行う応答制御部と、
からなることを特徴とする機器管理中継装置。
(付記2)
前記属性情報保持部は、キャッシュ値許容時間を前記各機器管理装置の属性情報として保持し、
前記応答制御部は、前記取得要求の受信時刻と前記属性情報との差が、前記キャッシュ値許容時間より小さい場合は前記取得要求に対応する属性情報を前記機器管理装置に応答する、
ことを特徴とする付記1に記載の機器管理中継装置。
(付記3)
前記応答制御部は、各前記機器管理装置に対して前記キャッシュ値許容時間通知要求を送信することにより、または、いずれかの前記機器管理装置からの前記キャッシュ値許容時間の更新通知を受信することにより、前記キャッシュ値許容時間を取得する、
ことを特徴とする付記2に記載の機器管理中継装置。
(付記4)
前記機器管理装置の管理者または上位システムからの指示によって登録または更新されたキャッシュ値許容時間を前記機器管理装置から受信することを特徴とする付記3に記載の機器管理中継装置。
(付記5)
前記属性情報保持部は、前記管理対象機器または前記機器管理装置ごとにエントリを有し、当該エントリごとに前記属性情報および前記受信時刻が登録される機器データ管理テーブルのデータを記憶する、
ことを特徴とする付記2ないし4のいずれかに記載の機器管理中継装置。
(付記6)
前記応答制御部は、前記機器管理装置からマルチキャストによるインスタンスリスト取得要求を受信すると、前記機器データ管理テーブルのエントリごとに、当該エントリに登録されている前記管理対象機器または前記機器管理装置のアドレス情報または識別情報および属性情報の項目名情報を含むインスタンスを、当該エントリに対応する管理対象機器または機器管理装置を代理して前記機器管理装置に応答する、
ことを特徴とする付記5に記載の機器管理中継装置。
(付記7)
前記応答制御部は、前記機器データ管理テーブルのエントリごとに、当該エントリに登録されている前記管理対象機器または前記機器管理装置のアドレス情報または識別情報および属性情報の項目名情報のインスタンスを、当該各エントリに設定されている前記アドレス情報が送信元アドレスとして設定され、前記インスタンスリスト取得要求に含まれるアドレス情報が宛先アドレスとして設定され、前記属性情報の項目名情報がデータフィールドに設定されたフレームデータによって、当該エントリに対応する管理対象機器または機器管理装置を代理して前記機器管理装置に応答する、
ことを特徴とする付記6に記載の機器管理中継装置。
(付記8)
取得要求のフレームデータに設定され前記機器管理装置のアドレス情報は前記機器データ管理テーブル上に設定されている、
ことを特徴とする付記5ないし7に記載の機器管理中継装置。
(付記9)
前記応答制御部は、前記取得要求の属性情報が複数の属性値を含む場合、前記取得要求の受信時刻と当該属性値の受信時刻との差が前記キャッシュ値許容時間に比較して小さい属性値については、前記属性情報保持部が保持している内容を前記属性値ごとに応答値とし、
当該属性値以外の属性値については、前記管理対象機器に要求して取得した値を応答値として、前記複数の属性値に対応する応答値が揃った時点で、当該応答値を前記機器管理装置に応答する、
ことを特徴とする付記2ないし8のいずれかに記載の機器管理中継装置。
(付記10)
管理対象機器からの属性情報を受信時刻とともに保持し、
機器管理装置から属性情報の取得要求を受信すると、前記取得要求の受信時刻と前記属性情報の受信時刻との差に応じて、前記保持されている属性情報を前記機器管理装置に応答し、
または前記取得要求に対応する属性情報を前記管理対象機器から取得して前記機器管理装置に応答する、
ことを特徴とする機器管理中継方法。
(付記11)
管理対象機器からの属性情報を受信時刻とともに保持する処理と、
機器管理装置から属性情報の取得要求を受信すると、前記取得要求の受信時刻と前記属性情報の受信時刻との差に応じて、前記保持されている属性情報を前記機器管理装置に応答し、
または前記取得要求に対応する属性情報を前記管理対象機器から取得して前記機器管理装置に応答する処理と、
をコンピュータに実行させるためのプログラム。
100 宅内
101 スイッチ
102 GW
103 機器
104 ルータ
105 サーバ
106 グローバルネットワーク
201 スイッチ機能部
202 スイッチ側送受信部
203 代理応答部
203−1 フレーム振分け部
203−2 キャッシュデータ制御部
203−3 機器データ管理テーブル
210 ECHONET Liteプロトコル処理部
211 GW側送受信部
212 キャッシュ値許容時間登録インタフェース
213 ECHONET Liteオブジェクトデータ管理テーブル
301、311 CPU
302、312 メモリ
303、313 ストレージ
304 フレーム転送エンジン
305、314 LANインタフェース部
306、317 システムバス
307 通信バス
315 他システムインタフェース部
316 ユーザインタフェース部
601 送信元MACアドレス
602 宛先MACアドレス
603 送信元IPアドレス
604 宛先IPアドレス
605 送信元ポート番号
606 宛先ポート番号
607 ECHONET Liteフレーム

Claims (8)

  1. 管理対象機器からの属性情報を受信時刻とともに保持する属性情報保持部と、
    機器管理装置から属性情報の取得要求を受信すると、前記取得要求の受信時刻と前記属性情報の受信時刻との差に応じて、前記属性情報保持部が保持している属性情報を前記機器管理装置に応答すること、
    または前記取得要求に対応する属性情報を前記管理対象機器から取得して前記機器管理装置に応答することのいずれかを行う応答制御部と、
    からなることを特徴とする機器管理中継装置。
  2. 前記属性情報保持部は、キャッシュ値許容時間を前記各機器管理装置の属性情報として保持し、
    前記応答制御部は、前記取得要求の受信時刻と前記属性情報との差が、前記キャッシュ値許容時間より小さい場合は前記取得要求に対応する属性情報を前記機器管理装置に応答する、
    ことを特徴とする請求項1に記載の機器管理中継装置。
  3. 前記応答制御部は、各前記機器管理装置に対して前記キャッシュ値許容時間通知要求を送信することにより、または、いずれかの前記機器管理装置からの前記キャッシュ値許容時間の更新通知を受信することにより、前記キャッシュ値許容時間を取得する、
    ことを特徴とする請求項2に記載の機器管理中継装置。
  4. 前記属性情報保持部は、前記管理対象機器または前記機器管理装置ごとにエントリを有し、当該エントリごとに前記属性情報および前記受信時刻が登録される機器データ管理テーブルのデータを記憶する、
    ことを特徴とする請求項2または3に記載の機器管理中継装置。
  5. 取得要求のフレームデータに設定される前記機器管理装置のアドレス情報は前記機器データ管理テーブル上に設定されている、
    ことを特徴とする請求項4に記載の機器管理中継装置。
  6. 前記応答制御部は、前記取得要求の属性情報が複数の属性値を含む場合、前記取得要求の受信時刻と当該属性値の受信時刻との差が前記キャッシュ値許容時間に比較して小さい属性値については、前記属性情報保持部が保持している内容を前記属性値ごとに応答値とし、
    当該属性値以外の属性値については、前記管理対象機器に要求して取得した値を応答値として、前記複数の属性値に対応する応答値が揃った時点で、当該応答値を前記機器管理装置に応答する、
    ことを特徴とする請求項2ないし5のいずれかに記載の機器管理中継装置。
  7. 管理対象機器からの属性情報を受信時刻とともに保持し、
    機器管理装置から属性情報の取得要求を受信すると、前記取得要求の受信時刻と前記属性情報の受信時刻との差に応じて、前記保持されている属性情報を前記機器管理装置に応答し、
    または前記取得要求に対応する属性情報を前記管理対象機器から取得して前記機器管理装置に応答する、
    ことを特徴とする機器管理中継方法。
  8. 管理対象機器からの属性情報を受信時刻とともに保持する処理と、
    機器管理装置から属性情報の取得要求を受信すると、前記取得要求の受信時刻と前記属性情報の受信時刻との差に応じて、前記保持されている属性情報を前記機器管理装置に応答し、
    または前記取得要求に対応する属性情報を前記管理対象機器から取得して前記機器管理装置に応答する処理と、
    をコンピュータに実行させるためのプログラム。
JP2014220862A 2014-10-29 2014-10-29 機器管理中継装置、方法、およびプログラム Expired - Fee Related JP6384271B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2014220862A JP6384271B2 (ja) 2014-10-29 2014-10-29 機器管理中継装置、方法、およびプログラム
US14/827,921 US10356196B2 (en) 2014-10-29 2015-08-17 Apparatus and method for managing devices
CN201510586547.9A CN105577743B (zh) 2014-10-29 2015-09-15 用于管理装置的设备和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014220862A JP6384271B2 (ja) 2014-10-29 2014-10-29 機器管理中継装置、方法、およびプログラム

Publications (2)

Publication Number Publication Date
JP2016091064A true JP2016091064A (ja) 2016-05-23
JP6384271B2 JP6384271B2 (ja) 2018-09-05

Family

ID=55853891

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014220862A Expired - Fee Related JP6384271B2 (ja) 2014-10-29 2014-10-29 機器管理中継装置、方法、およびプログラム

Country Status (3)

Country Link
US (1) US10356196B2 (ja)
JP (1) JP6384271B2 (ja)
CN (1) CN105577743B (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101713321B1 (ko) * 2016-09-27 2017-03-22 주식회사 바론시스템 해양 플랫폼의 모니터링 데이터 관리 방법

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107104760B (zh) * 2017-04-13 2020-09-08 腾讯科技(深圳)有限公司 一种传输数据包的方法、客户端以及服务器
JP2020101953A (ja) * 2018-12-21 2020-07-02 富士通株式会社 通信プログラム、通信装置および通信方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001526814A (ja) * 1997-05-22 2001-12-18 トラスティーズ・オブ・ボストン・ユニバーシティ 分散型キャッシュ、プリフェッチ、複写の方法およびそのシステム
WO2006126355A1 (ja) * 2005-05-24 2006-11-30 Matsushita Electric Industrial Co., Ltd. ゲートウェイ装置及び制御装置
WO2008056670A1 (fr) * 2006-11-06 2008-05-15 Nec Corporation Système, procédé, appareil et programme fournissant des informations de ressource
JP2010245681A (ja) * 2009-04-02 2010-10-28 Nippon Telegr & Teleph Corp <Ntt> ホームゲートウェイ装置およびホームネットワークシステム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7383329B2 (en) * 2001-02-13 2008-06-03 Aventail, Llc Distributed cache for state transfer operations
US7882256B2 (en) 2005-05-24 2011-02-01 Panasonic Corporation Gateway device and control device
WO2012149043A2 (en) * 2011-04-25 2012-11-01 Ikanos Communications, Inc. Method and apparatus for caching in a networked environment

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001526814A (ja) * 1997-05-22 2001-12-18 トラスティーズ・オブ・ボストン・ユニバーシティ 分散型キャッシュ、プリフェッチ、複写の方法およびそのシステム
WO2006126355A1 (ja) * 2005-05-24 2006-11-30 Matsushita Electric Industrial Co., Ltd. ゲートウェイ装置及び制御装置
WO2008056670A1 (fr) * 2006-11-06 2008-05-15 Nec Corporation Système, procédé, appareil et programme fournissant des informations de ressource
JP2010245681A (ja) * 2009-04-02 2010-10-28 Nippon Telegr & Teleph Corp <Ntt> ホームゲートウェイ装置およびホームネットワークシステム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101713321B1 (ko) * 2016-09-27 2017-03-22 주식회사 바론시스템 해양 플랫폼의 모니터링 데이터 관리 방법
WO2018062649A3 (ko) * 2016-09-27 2018-09-07 주식회사 바론시스템 해양 플랫폼의 모니터링 데이터 관리 방법

Also Published As

Publication number Publication date
CN105577743A (zh) 2016-05-11
CN105577743B (zh) 2018-10-12
JP6384271B2 (ja) 2018-09-05
US10356196B2 (en) 2019-07-16
US20160127143A1 (en) 2016-05-05

Similar Documents

Publication Publication Date Title
CN110247784B (zh) 确定网络拓扑结构的方法和装置
KR101317178B1 (ko) 지그비 게이트웨이 및 이의 메시지 동일화 방법
US20170244792A1 (en) Power-Line Carrier Terminal Control Apparatus, System, and Method
KR101531532B1 (ko) 원격 접속에 기초해 홈 네트워크 디바이스의 서비스를 이용하는 방법 및 장치
US20110289235A1 (en) Distributed processing system and distributed processing method
JP6384271B2 (ja) 機器管理中継装置、方法、およびプログラム
US10003543B2 (en) Communication device, communication system, and communication method
JP2017011487A (ja) 情報処理システム、情報処理システムの制御プログラム及び情報処理システムの制御方法
JP2006261827A (ja) ネットワーク機器、その管理装置、そのネットワーク接続方法およびそのネットワーク接続管理方法
CN109510748B (zh) 节点及节点交互方法和系统
JP2022510676A (ja) ネットワーク又はシステムの障害の後におけるパーソナルエリアネットワーク又はシステムの再構築
JP2013206209A (ja) 制御プログラム、制御方法、記憶制御装置および情報処理システム
KR20160103110A (ko) 네트워크 요소 데이터 액세스 방법, 액세스 장치, 및 네트워크 관리 시스템
JP2016144186A (ja) 通信情報制御装置、中継システム、通信情報制御方法、および、通信情報制御プログラム
CN110505648A (zh) 一种无线设备防掉线方法
US20180124576A1 (en) Method and apparatus for implementing member resource processing
JP2000076218A (ja) データベース間の同期化システム
CN106470249A (zh) Gateway-whois域名注册查询方法和装置
JP2015192287A (ja) 情報処理装置、情報処理方法、及び、プログラム
JP6577907B2 (ja) 通信監視装置および通信監視方法
JP2015115014A (ja) ノード装置、情報処理システム、情報処理方法、及び情報処理プログラム
WO2015001671A1 (ja) 通信制御装置、通信制御装置の制御方法、及び情報処理システム
WO2016184025A1 (zh) 一种设备管理方法和装置
US20160282139A1 (en) Data Collection Device and Method to Support Multiple Profiles in a Utility Meter System
CN108805741B (zh) 一种电能质量数据的融合方法、装置及系统

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170605

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180710

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180723

R150 Certificate of patent or registration of utility model

Ref document number: 6384271

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees