JP6147234B2 - 分散データベースの結合 - Google Patents

分散データベースの結合 Download PDF

Info

Publication number
JP6147234B2
JP6147234B2 JP2014187456A JP2014187456A JP6147234B2 JP 6147234 B2 JP6147234 B2 JP 6147234B2 JP 2014187456 A JP2014187456 A JP 2014187456A JP 2014187456 A JP2014187456 A JP 2014187456A JP 6147234 B2 JP6147234 B2 JP 6147234B2
Authority
JP
Japan
Prior art keywords
data
peer
agreement
distributed
based distributed
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.)
Active
Application number
JP2014187456A
Other languages
English (en)
Other versions
JP2015057702A (ja
JP2015057702A5 (ja
Inventor
マティアス ブルース
マティアス ブルース
Original Assignee
アクシス アーベー
アクシス アーベー
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 アクシス アーベー, アクシス アーベー filed Critical アクシス アーベー
Publication of JP2015057702A publication Critical patent/JP2015057702A/ja
Publication of JP2015057702A5 publication Critical patent/JP2015057702A5/ja
Application granted granted Critical
Publication of JP6147234B2 publication Critical patent/JP6147234B2/ja
Active 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/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/18Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits
    • G06F11/182Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits based on mutual exchange of the output between redundant processing components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • G06F16/1834Distributed file systems implemented based on peer-to-peer networks, e.g. gnutella
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • G06F16/1834Distributed file systems implemented based on peer-to-peer networks, e.g. gnutella
    • G06F16/1837Management specially adapted to peer-to-peer storage networks

Description

本開示は、分散型の物理アクセス制御システムにおける分散データベースと結合するデバイスに関し、より一般的には分散データベースと結合するデバイスに関する。
施設への物理アクセスを制御するのにアクセス制御システムが使用され得る。アクセス制御システム(ならびに他の種類の制御システム)は、各々、システムの異なる部分を管理する多数のコントローラを備えることができる。各コントローラは、構成情報や周辺設定などのデバイス固有の情報を記憶することができる。
一実施形態では、方法は、第1のデータをデバイスのメモリの第1のメモリ領域に保存するステップを含み得る。上記第1のメモリ領域は、合意ベース(consensus−based)の分散データベース(DB)のためのデータを保存するように指定され得る。上記第1のデータは、ピア・ツー・ピア・ネットワーク内の他のデバイスの間で分散される上記合意ベースの分散DBに追加される。上記方法は、上記第1のデータを上記デバイスの上記メモリの第2のメモリ領域にコピーするステップと、上記第1のデータを上記第2のメモリ領域にコピーした後に上記デバイスを上記ピア・ツー・ピア・ネットワークに追加するステップと、を含み得る。上記方法は、上記ピア・ツー・ピア・ネットワーク内の上記他のデバイスからデータを受信するステップと、上記受信されたデータを上記第1のメモリ領域に保存することにより上記受信されたデータを上記合意ベースの分散DBに追加するステップと、をさらに含み得る。上記方法は、上記デバイスを上記ピア・ツー・ピア・ネットワークに追加した後に、上記第1のデータを上記第2のメモリ領域から上記第1のメモリ領域へコピーすることにより、上記第1のデータを上記合意ベースの分散DBに追加するステップを含み得る。さらに、上記方法は、上記ピア・ツー・ピア・ネットワーク内の上記他のピア・ツー・ピア・ネットワークのデバイスへ上記第1のデータを上記合意ベースの分散DBの一部として配布するステップを含み得る。
この実施形態では、上記第1のデータは、デバイス固有データを含み得る。そして、上記第2のメモリ領域は、非合意ベース(non−consensus−based)のDBのためのデータを保存するように指定され得る。上記デバイス固有データは、分散制御システム内のコントローラの構成データを含み得る。上記構成データは、上記コントローラに接続された周辺デバイスを定義するデータを含み得る。
この実施形態では、上記デバイスは、分散型の物理アクセス制御システム(DPACS)内のコントローラを含み得る。上記他のデバイスは、上記DPACS内の他のコントローラを含み得る。この実施形態では、上記第1のデータは、上記コントローラを構成するためのデータを含み得る。
別の実施形態では、方法は、合意ベースの分散DBをデバイス内のメモリの第1のメモリ領域に保存するステップを含み得る。上記デバイスは、ピア・ツー・ピア・ネットワーク内の他のデバイスの間で上記合意ベースの分散DBを分散させる上記ピア・ツー・ピア・ネットワークに接続され得る。上記方法は、上記合意ベースの分散DB内に保存される第1のデータを上記デバイスの上記メモリの第2のメモリ領域にコピーするステップと、上記第1のデータを上記第2のメモリ領域にコピーした後に上記ピア・ツー・ピア・ネットワークから上記デバイスを撤去するステップと、を含み得る。上記方法は、上記第1のデータを上記第2のメモリ領域にコピーした後、および上記ピア・ツー・ピア・ネットワークから上記デバイスを撤去した後に、上記合意ベースの分散DB内のデータを削除するステップを含み得る。上記方法は、上記合意ベースの分散DB内の上記データを削除した後に、上記第1のデータを上記第2のメモリ領域から上記合意ベースの分散DBへコピーするステップを含み得る。
この実施形態では、上記第1のデータは、デバイス固有データを含み得る。そして、上記第2のメモリ領域は、非合意ベースのDBのためのデータを保存するように指定され得る。さらに、上記デバイス固有データは、分散制御システム内のコントローラの構成情報を含み得る。この実施形態では、上記構成データは、上記コントローラに接続された周辺デバイスを定義するデータを含み得る。さらに、上記デバイスは、DPACS内のコントローラであり得る。そして、上記他のデバイスは、上記DPACS内の他のコントローラを含み得る。この実施形態では、上記第1のデータは、上記コントローラを構成するためのデータを含み得る。
別の実施形態では、デバイスは、合意ベースの分散DBのためのデータを保存する、上記デバイスのメモリの第1のメモリ領域を含み得る。上記第1のデータは、ピア・ツー・ピア・ネットワーク内の他のデバイスの間で分散される上記合意ベースの分散DBに追加される。上記デバイスは、上記第1のデータを上記デバイスの上記メモリの第2のメモリ領域にコピーし、そして、上記第1のデータを上記第2のメモリ領域にコピーした後に上記デバイスを上記ピア・ツー・ピア・ネットワークに追加するプロセッサを含み得る。上記デバイスは、また、上記ピア・ツー・ピア・ネットワーク内の上記他のデバイスからデータを受信する受信機を含み得る。さらに、上記プロセッサは、受信されたデータを上記第1のメモリ領域内に保存することにより上記受信されたデータを上記合意ベースの分散DBに加えるように構成され得る。そして、上記プロセッサは、上記デバイスを上記ピア・ツー・ピア・ネットワークに加えた後に上記第1のデータを上記第2のメモリ領域から上記第1のメモリ領域にコピーすることにより、上記第1のデータを上記合意ベースの分散DBに加えるように構成され得る。上記デバイスは、上記ピア・ツー・ピア・ネットワーク内の上記他のデバイスへ上記第1のデータを上記合意ベースの分散DBの一部として送信する送信機を含み得る。
この実施形態では、上記第1のデータは、デバイス固有データを含み得る。そして、上記第2のメモリ領域は、非合意ベースのDBのためのデータを保存するように指定され得る。上記デバイス固有データは、分散制御システム内のコントローラの構成データを含み得る。上記デバイス固有データは、上記コントローラに接続された周辺デバイスを定義するデータを含み得る。
この実施形態では、上記デバイスは、DPACS内のコントローラを含み得る。そして、上記他のデバイスは、上記DPACS内の他のコントローラを含み得る。この実施形態では、上記第1のデータは、上記コントローラを構成するためのデータを含み得る。
別の実施形態では、デバイスは、合意ベースの分散DBを保存する、上記デバイス内のメモリの第1のメモリ領域を含み得る。上記デバイスは、ピア・ツー・ピア・ネットワーク内の他のデバイスの間で上記合意ベースの分散DBを分散させる上記ピア・ツー・ピア・ネットワークに接続され得る。上記デバイスは、上記合意ベースの分散DB内に保存される第1のデータを上記デバイスの上記メモリの第2のメモリ領域にコピーするプロセッサを含み得る。上記プロセッサは、上記第1のデータを上記第2のメモリ領域にコピーした後に上記ピア・ツー・ピア・ネットワークから上記デバイスを撤去するように構成され得る。上記プロセッサは、上記第1のデータを上記第2のメモリ領域にコピーした後、および上記ピア・ツー・ピア・ネットワークから上記デバイスを撤去した後に上記合意ベースの分散DB内のデータを削除するように構成され得る。上記プロセッサは、上記合意ベースの分散DB内の上記データを削除した後に上記第1のデータを上記第2のメモリ領域から上記合意ベースの分散DBへコピーするように構成され得る。
この実施形態では、上記第1のデータは、デバイス固有データを含み得る。そして、上記第2のメモリ領域は、非合意ベースのDBのためのデータを保存するように指定され得る。上記デバイス固有データは、分散制御システム内のコントローラの構成情報を含み得る。上記コントローラを構成するための上記データは、上記コントローラに接続された周辺デバイスを定義するデータを含み得る。
この実施形態では、上記デバイスは、DPACS内のコントローラを含み得る。そして、上記他のデバイスは、上記DPACS内の他のコントローラを含み得る。この実施形態では、上記第1のデータは、上記コントローラを構成するためのデータを含み得る。
他の実施形態については以下で説明する。すなわち、上記の実施形態は例として示したにすぎない。
本明細書に記載する実施形態による例示的な環境を示すブロック図である。 図1のシステムユニットの例示的な構成要素を示すブロック図である。 図1のシステムユニットの例示的な構成要素を示すブロック図である。 一実施形態における図1のシステムユニットの機能的構成要素を示すブロック図である。 一実施形態における図1のシステムユニットの機能的構成要素を示すブロック図である。 一実施形態における図3Bの記憶層の機能的構成要素を示すブロック図である。 一構成における例示的なシステムユニットを示すブロック図である。 スタンドアローン構成における図4Aのシステムユニットを示すブロック図である。 ネットワーク構成における図4Aのシステムユニットを示すブロック図である。 ネットワーク構成における図4Aのシステムユニットを示すブロック図である。 ネットワーク構成における図4Aのシステムユニットを示すブロック図である。 図1の管理デバイスの例示的な構成要素を示すブロック図である。 図4Aのシステムユニットを他のシステムユニットのネットワークに追加するための例示的なプロセスのフローチャートである。 図4Aのシステムユニットを他のシステムユニットのネットワークから撤去するための例示的なプロセスのフローチャートである。
以下の詳細な説明では添付の図面を参照する。異なる図面の同じ参照番号は同じ要素または類似の要素を識別する。
以下に記載する一実施形態は、物理アクセス制御システム(PACS:physical access control system)におけるコントローラに関するものである。他の実施形態は、建物の管理システム内、監視システム内、およびセキュリティシステム内の異なるアプリケーションを制御するためのシステムにおけるコントローラといった、PACS以外のデバイスまたはシステムを含んでもよい。一実施形態は、例えば、ホーム・オートメーション・システムにおけるコントローラを含んでもよい。
前述のように、制御システムは、各コントローラがシステムの異なる部分を制御するような、多数のコントローラを備え得る。各コントローラは、構成データ、周辺設定などといったデバイス固有データを記憶し得る。このデバイス固有データが分散されて例えば合意ベースのデータベース内に記憶される場合、このデバイス固有データは、合意ベースのデータベースを配布する他のコントローラの新しいネットワークまたは異なるネットワークに、対応するコントローラが結合するときに取り除かれ、削除され、または上書きされ得る。以下に記載する一実施形態では、デバイス固有の情報は、コントローラが合意ベースのデータベースと結合するときに維持されて、当該合意ベースのデータベースに(何らかのデバイス固有データの欠損を避けるように)導入され得る。
同様に、デバイス固有データが分散されて例えば合意ベースのデータベース内に記憶される場合、このデバイス固有データは、合意ベースのデータベースを配布するコントローラのネットワークを、対応するコントローラが離れるときに取り除かれ、削除され、または上書きされ得る。以下に記載する一実施形態では、デバイス固有の情報は、コントローラが合意ベースのデータベースを離れるときに維持されて、当該合意ベースのデータベースに再導入され得る。
以下の1もしくは複数の実施形態は、分散型の物理アクセス制御システムにおける分散データベースと結合するデバイスに関するものである。以下に記載するように、他の実施形態は、(例えば、物理アクセス制御システム以外の)他の種類のシステムにおける分散データベースと結合するデバイスに関するものである。
図1は、以下に記載するシステムおよび方法が実装され得る例示的な環境100のブロック図である。図1に示すように、環境100は、分散制御システム110(分散型の物理アクセス制御システムなど)、ネットワーク120、および管理デバイス130を含み得る。
分散制御システム110は、システムユニット115‐A〜115‐N(まとめて「システムユニット115」または「ユニット115」と呼ぶ。また、個別に「ユニット115」と呼ぶ)を含む分散コンピューティングシステムを含み得る。一実施形態では、システムユニット115は、物理アクセス制御デバイスを含む。例えば、システムユニット115は、部屋や部屋群といったセキュアな領域へのアクセスを制御するコントローラを含み得る。システムユニット115は、読取デバイスを介して認証情報(アクセスカード認証情報など)を受信し、そして、認証情報が本物であり、セキュアな領域にアクセスする権限と関連付けられているかどうかを判定することができる。認証情報が本物である場合、コントローラは、ドアの錠を開くコマンドを発行し、またはセキュアな領域へのアクセスを許可することと関連付けられた他の動作を実行することができる。
分散制御システム110は、1もしくは複数の分散データセットを含み得る。分散データセットは、分散データセットと関連付けられたシステムユニット115に分散されて(おそらくは重複して)記憶されたデータを含む。一実施形態では、分散データセットは、複数のデバイス上で複製される。例えば、分散データセット全体は、すべてのユニット115に記憶されてもよい。別の実施形態では、1もしくは複数のユニット115は、分散データセットの一部を記憶することができる。また、分散データセットは、すべてのシステムユニット115と関連付けられてもよく、また、システムユニット115の一部と関連付けられてもよい。
一実施形態では、分散データセット(合意ベースの分散データベースなど)において変更を加えるために、ユニット115の間で合意に達し得る。システムユニット115は、合意ベースの分散データセットに変更を提案することができる。分散データセットと関連付けられた定足数のユニット115によって変更が受け入れられる場合、ユニット115は、合意に達し、そして、関連付けられた各ユニット115内の分散データセットの各ローカルコピーに変更を伝搬させてもよい。すなわち、分散データセットの変更に関する合意は、定足数の関連付けられたユニット115が変更に賛成した場合に達し得る。
この文脈では、定足数は、関連付けられたユニット115の最小多数に対応していてよい。例えば、分散データセットがN個のユニット115と関連付けられている場合、Nが偶数であり、かつ、N/2+1個の関連付けられたユニット115が変更に賛成した場合に、または、Nが奇数であり、かつ、(N−1)/2+1個の関連付けられたユニット115が変更に賛成した場合に、定足数は達せられ得る。定足数に達するのに最小多数を必要とすることによって、2つの競合する提案を考慮するときに、少なくとも1つのシステムユニット115が両方の提案を受け取り、そして合意のために両方の提案のうちの1つを選択することが保証され得る。
合意ベースの分散データセットは、分散データセットと関連付けられた任意のシステムユニット115が、分散データセットによって管理される情報(一実施形態におけるすべての情報など)を含むことを保証することができる。例えば、分散データセットはアクセスルールを含んでもよく、アクセスルールは、当該分散データセットに関連付けられる任意のシステムユニット115にとって利用可能であってよい。このように、1もしくは複数の分散データセットの結果として、一実施形態において、制御システム110は、サーバデバイスといった中央制御デバイスを伴わない非集中化型のシステムに相当し得る。他の実施形態において、制御システム110は、非集中化型のシステム及び(サーバデバイスといった)中央制御デバイスの双方を含んでもよい。制御システム110への変更は任意のシステムユニット115において構成され得る。そして、変更が、分散データセットと関連付けられる場合には、当該変更は、当該分散データセットと関連付けられた他のシステムユニット115へ伝搬され得る。さらに、制御システム110は、デバイス障害に関して、シングルポイントの障害が回避され得るようなロバスト性を呈し得る。例えば、特定のシステムユニット115が障害を起こした場合に、他のシステムユニット115は、データのロスなく(又はデータの最小限のロスのみで)動作を継続し得る。別の実施形態では、合意なしで、分散データセットへ変更が加えられてよい。
ネットワーク120は、ユニット115が相互に通信することを可能にすることができ、かつ/または管理デバイス130が特定のユニット115と通信することを可能にし得る。ネットワーク120は、1もしくは複数の回線交換網および/またはパケット交換網を含んでもよい。例えば、ネットワーク120は、ローカル・エリア・ネットワーク(LAN:local area network)、ワイド・エリア・ネットワーク(WAN:wide area network)、メトロポリタン・エリア・ネットワーク(MAN:metropolitan area network)、公衆交換電話網(PSTN:Public Switched Telephone Network)、アドホックネットワーク、イントラネット、インターネット、光ファイバベースのネットワーク、無線ネットワーク、および/または上記その他の種類のネットワークの組み合わせを含んでもよい。
管理デバイス130は、制御システム110を構成し、制御システム110の構成を変更し、制御システム110から情報を受信し、かつ/またはそれ以外に制御システム110を管理するために、管理者が特定のユニット115に接続することを可能にする。管理デバイス130は、1もしくは複数のユニット115と通信するように構成された任意のデバイスを含んでもよい。例えば、管理デバイス130は、携帯用通信デバイス(携帯電話、スマートフォン、ファブレットデバイス、全地球測位システム(GPS:global positioning system)デバイス、および/または別の種類の無線デバイスなど)、パーソナルコンピュータ、ワークステーション、サーバデバイス、ラップトップ、タブレット、または別の種類の携帯用コンピュータ、ならびに/または通信機能を備える任意の種類のデバイスを含んでもよい。一実施形態では、管理デバイス130は、ユニット115の一部であってもよい。よって、管理者は、1もしくは複数のユニット115から制御システム110を管理することができる。
図1には環境100の例示的な構成要素が示されているが、他の実装では、環境100は、図1に示すものと比べてより少数の構成要素、異なった構成要素、異なった配置の構成要素、または追加的な構成要素を含んでもよい。加えて、または代替として、環境100内の任意の1つのデバイス(または任意のデバイス群)が、環境100内の1もしくは複数の他のデバイスによって実行されると記載されている機能を実行してもよい。
図2Aおよび図2Bは、ユニット115の例示的な構成要素を示すブロック図である。図2Aに示すように、ユニット115は、コントローラ210、および1もしくは複数の周辺デバイス230を含み得る。コントローラ210は、ユニット115の動作を制御することができ、他のユニット115と通信することができ、管理デバイス130と通信することができ、かつ/または周辺デバイス230を制御することができる。周辺デバイス230は、コントローラ210に情報を提供するデバイス、コントローラ210によって制御されるデバイス、および/またはそれ以外にコントローラ210と通信するデバイスを含んでもよい。一実施形態では、周辺デバイス230は、任意の種類のセキュリティデバイスを含んでもよい。例えば、周辺デバイス230は、読取デバイス240、施錠デバイス250、センサ260(カメラなど)、および/またはアクチュエータ270といったセキュリティデバイスを含んでもよい。
図2Bに示すように、コントローラ210は、バス212、プロセッサ214、メモリ216、ネットワークインターフェース218、周辺インターフェース220、および筐体222を含み得る。バス212は、コントローラ210の構成要素間の通信を許容する経路を含む。プロセッサ214は、任意の種類のシングルコアプロセッサ、マルチコアプロセッサ、マイクロプロセッサ、ラッチベースのプロセッサ、および/もしくは、命令を解釈し、実行する処理ロジック(またはプロセッサ、マイクロプロセッサ、および/もしくは処理ロジックのファミリ)を含んでもよい。他の実施形態では、プロセッサ214は、特定用途向け集積回路(ASIC:application−specific integrated circuit)、フィールド・プログラマブル・ゲート・アレイ(FPGA:field−programmable gate array)、および/または別の種類の集積回路もしくは処理ロジックを含んでもよい。
メモリ216は、情報、データ、および/または命令を記憶する。メモリ216は、任意の種類の動的記憶デバイス、揮発性記憶デバイス、および/または不揮発性記憶デバイスを含んでもよい。メモリ216は、プロセッサ214が実行するための命令、またはプロセッサ214が使用するための情報を記憶することができる。例えば、メモリ216は、ランダムアクセスメモリ(RAM:random access memory)もしくは別の種類の動的記憶デバイス、読取専用メモリ(ROM:read−only memory)デバイスもしくは別の種類の静的記憶デバイス、連想メモリ(CAM:content addressable memory)、磁気的記録メモリデバイスおよび/もしくは光学的記録メモリデバイスおよび当該デバイスに対応するドライブ(例えばハードディスクドライブ、光ドライブなど)、ならびに/またはフラッシュメモリといった取り外し可能な形態のメモリを含んでもよい。
ネットワークインターフェース218は、コントローラ210が、有線通信リンク(例えば、導電性ワイヤ、ツイストペアケーブル、同軸ケーブル、伝送線、光ファイバケーブル、および/もしくは導波管など)、無線通信リンク(例えば、無線周波数、赤外線、および/もしくは可視光線など)、または無線通信リンクと有線通信リンクとの組み合わせを介して他のデバイスおよび/またはシステムと通信する(データの送信および/または受信を行う)送受信機(送信機および/または受信機など)を含み得る。ネットワークインターフェース218は、ベースバンド信号を無線周波数(RF:radio frequency)信号に変換する送信機、および/またはRF信号をベースバンド信号に変換する受信機を含んでもよい。ネットワークインターフェース218は、RF信号を送受信するためのアンテナに結合されていてもよい。
ネットワークインターフェース218は、入力ポートおよび/または出力ポート、入力システムおよび/または出力システム、ならびに/または他のデバイスへのデータの伝送を円滑化する他の入力構成要素および出力構成要素を含む論理構成要素を含み得る。例えば、ネットワークインターフェース218は、有線通信のためのネットワークインターフェースカード(イーサネット(登録商標)カードなど)および/または無線通信のための無線ネットワークインターフェース(例えばWiFi)カードを含んでもよい。また、ネットワークインターフェース218は、ケーブル上の通信のためのユニバーサル・シリアル・バス(USB:universal serial bus)ポート、Bluetooth(登録商標)無線インターフェース、RFID(radio−frequency identification)インターフェース、近距離無線通信(NFC:near‐field communication)無線インターフェース、および/またはある形式から別の形式へデータを変換する任意の他の種類のインターフェースも含んでもよい。
周辺インターフェース220は、1もしくは複数の周辺デバイス230と通信するように構成され得る。例えば、周辺インターフェース220は、入力ポートおよび/または出力ポート、入力システムおよび/または出力システム、ならびに/または、周辺デバイス230へのデータの伝送を円滑化する他の入力構成要素および出力構成要素を含む1もしくは複数の論理構成要素を含んでもよい。一例として、周辺インターフェース220は、SPI(Serial Peripheral Interface)バスプロトコル(例えばWiegandプロトコルおよび/またはRS‐485プロトコル)を用いて周辺デバイス230と通信することができる。別の例として、周辺インターフェース220は、異なる種類のプロトコルを使用することができる。一実施形態では、ネットワークインターフェース218は、周辺デバイス230をコントローラ210に結合するための周辺インターフェースとして機能することもできる。
筐体222は、コントローラ210の構成要素を囲うことができる。また、筐体222は、コントローラ210の構成要素を環境から保護することができる。一実施形態では、筐体222は、1もしくは複数の周辺デバイス230を含んでもよい。別の実施形態では、筐体222は、管理デバイス130を含んでもよい。筐体222は、複数のシステムユニット115および/または複数のコントローラ210を有するシステムにおいて、1つのシステムユニット115および/またはコントローラ210と他のシステムユニット115および/またはコントローラ210との境界を定義することができる。
以下に記載するように、コントローラ210は、1もしくは複数のデバイス上の1もしくは複数のサービスのためのユーザ認証情報の配布に関連した動作を実行することができる。コントローラ210はこれらの動作を、ASICの配線回路の結果として実行することができる。コントローラ210は、また(あるいは代替として)、これらの動作を、メモリ216といったコンピュータ可読媒体に含まれるソフトウェア命令をプロセッサ214が実行したことに応答して実行することもできる。コンピュータ可読媒体は、非一時的メモリデバイスおよび/または有体メモリデバイスを含んでもよい。メモリ216は、単一の物理的なメモリデバイス内で実装されてもよいし、複数の物理的なメモリデバイスにまたがって分散されて実装されてもよい。ソフトウェア命令は、別のコンピュータ可読媒体から、または別のデバイスからメモリ216に読み込まれてもよい。メモリ216に含まれるソフトウェア命令は、プロセッサ214に、本明細書に記載するプロセスを実行させることができる。よって、本明細書に記載する実装は、ハードウェア回路とソフトウェアとの特定の組み合わせに限定されない。
周辺デバイス230に戻って説明を行う。読取デバイス240は、ユーザからの認証情報を読み取り、当該認証情報をコントローラ210に提供するデバイスを含み得る。例えば、読取デバイス240は、英数字の個人識別番号(PIN:personal identification number)をユーザから受け取るように構成されたキーパッド、磁気ストリップ上にカードコードを格納するカード、またはRFIDタグといった他の種類の記憶デバイスを構成するカードリーダ、ユーザの指紋を読み取るように構成された指紋リーダ、ユーザの虹彩を読み取るように構成された虹彩リーダ、ユーザの声紋を記録するように構成されたマイクロフォンおよび声紋識別装置、NFCリーダ、顔認識ソフトウェアと関連付けられたカメラ、音声認識ソフトウェアと関連づけられたマイクロフォン、ならびに/または別の種類の読取デバイスを含んでもよい。読取デバイス240は、認証情報を提供することが可能な任意の種類のセキュリティデバイスを含んでもよい。そして、読取デバイス240は、センサ260に関して以下で説明する任意のセンサデバイスといった、1もしくは複数のセンサを含んでもよい。例えば、読取デバイス240は、顔認識に使用されるカメラ、および/または音声認識に使用されるマイクロフォンを含んでもよい。この場合には、ユーザの音声または顔を認証情報として用いることができる。
施錠デバイス250は、コントローラ210によって制御される錠を含み得る。施錠デバイス250は、ドア(例えば、ドアが開閉しないようにする)、窓、HVAC通気孔、および/またはセキュアな領域の開放可能部への他の種類のアクセスに施錠することができる。例えば、施錠デバイス250は、電磁錠、コントローラ210によって制御されるモータを備える機械錠、電気機械錠、および/または別の種類の錠を含んでもよい。
センサ260は、感知デバイスを含み得る。例として、センサ260は、ドアが開いているか閉じているかを感知するドアセンサ、可視光監視デバイス(例えば、カメラ)、赤外(IR)光監視デバイス、熱シグネチャ監視デバイス、オーディオ監視デバイス(例えば、マイクロフォン)、および/もしくは別の種類の監視デバイス、例えば動きセンサ、熱センサ、圧力センサ、および/もしくは別の種類の警報センサといった警報センサ、ユニット115内部に位置する位置センサといったタンパーセンサ、ならびに/またはユニット115と関連付けられたセキュリティ保護された領域内に位置する「request‐to‐exit(退出要求)」ボタン、ならびに/または別の種類のセンサデバイスを含んでもよい。以下の例では、センサ260を「カメラ260」と呼ぶこともある。
アクチュエータ270はアクチュエータデバイスを含み得る。一例として、アクチュエータ270は、照明デバイスを制御することができる。他の例として、アクチュエータ270は、盗難予防警報器、メッセージを再生しまたは警報信号を発生させるスピーカ、表示デバイス、センサ260を動かす(例えば、カメラもしくは他の監視デバイスの視野を制御する)モータ、例えばドア、窓、HVAC通気孔、および/または、セキュアな領域と関連付けられた別の開放可能部を開閉するためのモータ、施錠デバイス250を施錠位置もしくは開錠位置で固定するモータ、消火デバイス、ならびに/または別の種類のアクチュエータデバイスを含んでもよい。
図2Aおよび図2Bは、ユニット115の例示的な構成要素を示しているが、他の実装では、ユニット115は、図2Aおよび図2Bに示すものと比べてより少数の構成要素、異なる構成要素、追加的な構成要素、または異なった配置の構成要素を含んでもよい。例えば、図2Aには単一の読取デバイス240、単一の施錠デバイス250、単一のセンサ260、および単一のアクチュエータ270が示されているが、実際には、周辺デバイス230は、複数の読取デバイス240、複数の施錠デバイス250、複数のセンサ260、および/または複数のアクチュエータ270を含んでもよい。また周辺デバイス230は、図2Aに示すデバイスのうちの1もしくは複数を含まなくてもよい。加えて、または代替として、ユニット115の任意の構成要素(または任意の構成要素群)は、ユニット115が有する1もしくは複数の他の構成要素によって実行されるものとして記載された1もしくは複数のタスクを実行してもよい。
さらに、例示的な分散制御システム110は物理アクセス分散制御システムを含むが、他の実装は、物理アクセス以外のシステムを制御することができる。一方で、分散制御システム110は、(例えば、動作環境に)ドアを開閉するための制御システム、または建物もしくは施設への物理アクセスを制御するための制御システムといった任意の種類の物理アクセス制御システムを含んでもよい。また、分散制御システム110は、ファンを制御する(例えば始動または停止する)システム、建物管理システム内で警報を始動させるシステム(例えば、認証失敗、認証成功など)、または産業オートメーションシステムでロボットアームを制御するシステムを含んでもよい。
図3Aは、システムユニット115の例示的な機能層を示すブロック図である。図3Aに示すように、ユニット115は、アプリケーションプログラミングインターフェース(API:application program interface)層310、アプリケーション層320、配布層340、および記憶層350を含み得る。
API層310は、例えば、管理デバイス130と通信するように構成されたAPIを含む。管理者が管理デバイス130を使用してユニット115にログインするときに、API層310は、管理デバイス130と通信して管理者を認証することができる。別の例として、API層310は、管理デバイス130と通信してユニット115の構成を変更することもできる。API層310は、管理デバイス130からデータを受信し、当該データを配布層340および/または記憶層350に提供することができる。またAPI層310は、管理デバイス130と通信してアプリケーション層320にアプリケーションをインストールすることもできる。API層310は、様々な種類の管理者を取り扱うように構成されてもよい。例えば、API層310は、ウェブサービス管理者、Linux管理者、オープンネットワークビデオインターフェースフォーラム(ONVIF:Open Network Video Interface Forum)管理者、および/または別の種類のAPIを含んでもよい。
アプリケーション層320は、ユニット115上にインストールされた1もしくは複数のアプリケーションを含み得る。アプリケーションは、中でも特に、制御ロジックアプリケーション、ドアを開閉するためのドア制御アプリケーション、ユーザ認証情報を受け取るためのリーダ制御アプリケーションを含む。アプリケーションについては図3Bに関連してより詳細に論じる。
配布層340は、ユニット115と関連付けられた1もしくは複数の分散データセットを管理することができる。例えば、配布層340は、データセットの配布のためにピア・ツー・ピア・ネットワークでコントローラ210を接続することができる。配布層340は、プロトコル(PAXOSプロトコルなど)を使用して、特定の合意ベースの分散データセットの変更に関する合意を確立することができる。一例として、配布層340は、分散データセットと関連付けられた他のシステムユニット115へ変更の提案を送ることができる。そして、配布層340は、当該他のシステムユニット115から変更のための定足数を受け取ることができる。別の例として、配布層340は、別のユニット115から受け取った提案に賛成投票することもできる。さらに別の例として、配布層340は、変更に賛成投票せずに、変更についての合意に達したという指示を受け取ることもできる。変更についての合意の指示が受け取られると、配布層340は、分散データセットのローカルコピーの変更を行うことができる。配布層340は、ネットワーク120上で他のユニット115とのセキュアな接続(例えば、トランスポート層セキュリティ(TLS:Transport Layer Security)接続)を維持することができる。
記憶層350は、ユニット115と関連付けられた1もしくは複数のデータセットを記憶することができる。記憶層350に記憶されたデータセットは、ローカルデータセットに対応してもよく、または分散データセットに対応してもよい。ローカルデータセットは、ローカルデータセットを記憶する特定のユニット115と関連付けられた(かつ/または特定のユニット115とだけ関連付けられた)情報を記憶することができる。分散データセットは、分散データセットと関連付けられた他のシステムユニット115の間で分散される情報を記憶することができる。
図3Bは、アプリケーション層320および記憶層350についてさらなる詳細を示す、コントローラ210の例示的な機能構成要素のブロック図である。図3Bに示すように、アプリケーション層320は、制御ロジックアプリケーション322(もしくは「制御ロジック322」)、ドア制御アプリケーション324、リーダ制御アプリケーション326、イベント処理アプリケーション328、および/またはスケジュール処理アプリケーション330を含み得る。他のアプリケーションは、例えば、警報アプリケーションや制御アプリケーションを含んでもよい。
制御ロジック322は、受信された認証情報に基づいて、また、記憶されたアクセスルールに基づいて、ユーザに物理アクセスを許可すべきかどうかを判定することができる。制御ロジック322は、また、当該判定に基づいてアクセス(例えば、リモートログインといったリモートアクセス)を許可することができる。よって、制御ロジック322は、認証情報(例えば、ユーザ名とパスワード)に基づいて管理者を認証することや、(例えば、他の管理者のために、かつ/または物理アクセスの許可を得ようとするユーザのために)ユーザ認証情報の更新を管理者に許可することなどを行うことができる。制御ロジック322のこれらの機能は、図3Cに関連して以下で説明する。
ドア制御アプリケーション324は、1もしくは複数のドア、および/または関連付けられた施錠デバイス250を制御することができる。例えば、ドア制御アプリケーション324は、ドアが開いているかそれとも閉じているか、かつ/または施錠されているかそれとも開錠されているかを判定することができる。そして、ドア制御アプリケーション324は、1もしくは複数のデバイスに、ドアを開けるもしくは閉じるように、かつ/またはドアを施錠するもしくは開錠するように動作させることができる。リーダ制御アプリケーション326は、1もしくは複数の読取デバイス240を制御することができる。そして、リーダ制御アプリケーション326は、1もしくは複数の読取デバイス240から受信された認証情報を取得し、処理することができる。イベント処理アプリケーション328は、ドア開けイベント、警報イベント、センサイベント、および/または他の種類のログに記録されたイベントといった、ユニット115によって記録されたイベントを処理することができる。イベント処理アプリケーション328は、報告および/または警報を生成し、生成した報告および/または警報を管理デバイス130へ(かつ/または他のユニット115といった別の指定のデバイスへ)送信することができる。スケジュール処理アプリケーション330は、ユニット115と関連付けられた1もしくは複数のスケジュールを管理することができる。例えば、特定のユーザグループについてのアクセスルールが、特定の時刻に基づいて変化してもよい。
記憶層350は、合意データ領域360、および非合意データ領域370を含み得る。一実施形態では、合意データ領域360は、分散された合意ベースのデータベースを含んでもよい。そして、非合意データ領域370は、合意ベースでない、かつ/または分散されていない(すなわち、前述したローカルデータセットのような)データベースを含んでもよい。
図3Cは、記憶層350の例示的な構成要素のブロック図である。図3Cに示したように、合意データ領域360は、デバイス固有データ362(または第1のデータ362)、管理者認証情報DB364、およびアクセス認証情報DB366を含み得る。前述したように、デバイス固有データ362は、ユニット115および/またはコントローラ210のハードウェア構成、コントローラ210に接続された周辺デバイス230、アプリケーション層320にインストールされたアプリケーション、または他の種類の情報といった、特定のユニット115に関連づけられた情報を含み得る。別の実施形態では、デバイス固有データ362は、必ずしも固有ではない情報、または特定のユニット115に関連づけられていない情報を含んでもよい(例えば、デバイス固有データ362は、複数のユニット115および/または複数のコントローラ210に関連づけられた情報を含んでもよい)。よって、デバイス固有データ362を「第1のデータ362」と呼ぶこともある。
管理者認証情報DB364は、(例えばリモートログインで)システムユニット115を管理することができるユーザを認証するための認証情報(例えば、ユーザ名とパスワード)を記憶し得る。一実施形態では、管理者認証情報DB364は、同じ管理者らがコントローラ210またはユニット115のうちのいずれかからシステム110を管理することができるように、他のコントローラ210の間で(例えば、合意ベースのデータベース内で)分散される。
アクセス認証情報DB366は、物理的領域にアクセスすることを望むユーザについての認証情報(例えば、カード情報および暗証番号情報、指紋情報など)を記憶し得る。一実施形態では、アクセス認証情報DB366内のデータは、ネットワーク内の他のコントローラに(例えば、合意ベースの分散データベース内で)配布され得る。
図3A〜図3Cには、ユニット115の例示的な機能構成要素が示されているが、他の実装では、ユニット115は、図3A〜図3Cに示すものと比べて、より少数の機能構成要素、異なる機能構成要素、異なった配置の機能構成要素、または追加的な機能構成要素を含んでもよい。加えて、ユニット115の構成要素のうちのいずれか1つ(またはいずれかの構成要素群)が、ユニット115の1もしくは複数の他の機能構成要素によって実行されるものと記載された機能を実行してもよい。さらに、ユニット115の機能構成要素は、例えば、1もしくは複数のASICの配線回路によって実装されてもよい。加えて、または代替として、ユニット115の機能構成要素は、メモリ216からの命令を実行するプロセッサ214によって実装されてもよい。
図4Aは、一構成におけるシステムユニット115−Aを示すブロック図である。図4Aに示すように、ユニット115−Aは、コントローラ210−A、読取デバイス240−A、施錠デバイス250−A、センサ260−A(例えば、カメラ)、およびアクチュエータ270−Aを含む。ユニット115−Aは、ユニット115−Aが設置され得る位置から遠隔的に構成され得る。設置者は、ユニット115−Aの設置のために設置者の作業場からクライアントの位置へユニット115−Aを運ぶことができる。あるいは、ユニット115は、例えば配送サービスを通して設置のための位置へ到着し得る。
以下に記載するように、ユニット115−Aは、スタンドアローンのユニット(一つのユニット115のネットワーク内で当該ユニット115単体で動作する)として設置され得る。または、ユニット115−Aは、他の複数のユニット115のネットワーク内に設置され得る。図4Bは、スタンドアローン構成における図4Aのユニット115−Aを示すブロック図である。一方で、図5A〜図5Cは、他のユニット115のネットワーク構成500内のユニット115−Aを示すブロック図である。ユニット115−Aがネットワーク構成500内に設置される場合、図5Bに示したような他のシステムユニット115−B〜システムユニット115−Fを含む既存のネットワークに導入され得る。あるいは、図5Cに示したように、他のシステムユニット115−B〜システムユニット115−Fは、スタンドアローンのユニットとして(例えば、一つのユニットのネットワークとして)ユニット115−Aに追加され得る(または連結され得る)。
図4Bは、スタンドアローン構成400における図4Aのユニット115−Aを示すブロック図である。図4Bに示すように、構成400は、壁410、ドア420、およびシステムユニット115−Aを含んでもよい。前述したように、システムユニット115−Aは、コントローラ210−A、読取デバイス240−A、施錠デバイス250−A、センサ260−A、およびアクチュエータ270−Aを含む。
壁410は、建物内の部屋といったセキュアな領域440を取り囲む。ドア420は、セキュアな領域440へのユーザのアクセスを可能にする。この実施形態では、コントローラ210−Aは、セキュアな領域440の内部に設置されている。他の実施形態では、コントローラ210−Aは、セキュアでない領域450に設置されてもよい。読取デバイス240−Aは、セキュアな領域440の外部に設置されており、施錠デバイス250−Aはセキュアな領域440の内部における壁410とドア420とに設置されている。センサ260−Aは、この例では、セキュアな領域440外部のセキュアでない領域450に取り付けられた監視デバイスである。アクチュエータ270−Aは、この例の監視デバイスの視野を制御するために使用されるモータを含む。
ユーザが(例えば、PINを入力する、アクセスカードをスキャンする、虹彩をスキャンするなどによって)読取デバイス240−Aに認証情報を入力すると、コントローラ210−Aは認証情報を使用してユーザの身元を認証することができ、そして、アクセスルールテーブル内で検索を実行して、ユーザの身元およびアクセスルールに基づいてユーザにアクセスを許可すべきかどうかを判定することができる。アクセスが許可されるべきであるとコントローラ210−Aが判定した場合、コントローラ210−Aは施錠デバイス250−Aを作動させてドア420を開錠して、セキュアな領域440へのアクセスをユーザに許可する。
図4Bには、構成400の例示的な構成要素が示されているが、他の実装では、構成400は、図4Bに示すものと比べて、より少数の構成要素、異なる構成要素、追加的な構成要素、または異なった配置の構成要素を含んでもよい。加えて、または代替として、構成400内のいずれか1つの構成要素(または構成要素群)が、構成400の1もしくは複数の他の構成要素によって実行されるものと記載された1もしくは複数のタスクを実行してもよい。
図5A〜図5Cは、(例えば、図4Bにおけるスタンドアローン構成400でなく)他のシステムユニット115‐B〜システムユニット115‐Fのネットワーク構成500におけるシステムユニット115‐Aを示すブロック図である。図5Aに示すように、構成500は、部屋520‐A〜部屋520‐Fを有する建物510を含み得る。イーサネット(登録商標)ネットワークといったローカルネットワーク530は、システムユニット115‐A〜システムユニット115‐Fを相互接続してもよい。この例は、図4Aに示した特定のシステムユニット115‐Aを異なる環境、つまり、スタンドアローンではなく他のシステムユニット115‐B〜システムユニット115‐Fのネットワーク内に含む。図5Aにおけるシステムユニット115‐Aは、図4Aにおけるシステムユニット115‐Aと同様に(例えば、コントローラ210−A、読取デバイス240−A、施錠デバイス250−A、センサ260−A、およびアクチュエータ270−Aを含むように)構成される。システムユニット115‐Aは、この構成に異なる方法で到着したかもしれない。例えば、図5Cに示したように、システムユニット115‐Aは、システムユニット115‐B〜システムユニット115‐Fが徐々に追加された(または結合された)、単独のシステムユニットのシステムであったかもしれない。あるいは、図5Bに示したように、システムユニット115‐Aは、システムユニット115‐B〜システムユニット115‐Fをすでに含む既存のネットワークの構成500に追加された(または結合された)かもしれない。
この例では、システムユニット115‐Bは、部屋520‐Bに通じる2つのドアを制御する。システムユニット115‐Aは、部屋520‐Aに通じる外側のドアを制御する。システムユニット115‐Cは、部屋520‐Aから部屋520‐Cに通じる1つのドアを制御する。システムユニット115‐Dは、部屋520‐Cから部屋520‐Dに通じる1つのドアを制御する。システムユニット115‐Eは、部屋520‐Dから部屋520‐Eに通じる1つのドアを制御する。そして、システムユニット115‐Fは、部屋520‐Fに通じる外側のドアを制御する。
この例では、システムユニット115‐A〜システムユニット115‐Fは、中央制御デバイス(例えば、サーバ)を含まず、1もしくは複数の分散データセットを含み得る。例えば、システムユニット115‐A〜システムユニット115‐Fは、分散される認証情報テーブル、分散されるアクセスルールテーブル、および/または分散されるイベントログを保持することができる。管理者が管理デバイス130を使用してシステムユニット115‐Aにログインして、ユーザを追加し、ユーザと関連付けられた認証情報を追加するものと仮定する。それらの追加される認証情報は、ユーザがアクセスできる部屋に通じるドアを制御する他のシステムユニット115に配布され得る。例えば、システムユニット115‐Bに障害が発生した場合、システムユニット115‐Bによって収集されたデータは、その他のシステムユニットに含まれる分散されたイベントログの結果として引き続き利用することができる。
図5A〜図5Cでは、各ユニット115はコントローラ210と関連付けられている。さらに、図5A〜図5Cの実装では、各コントローラ210は、他のコントローラ210と異なった場所(例えば異なった部屋520)にある。他の実装では、あるコントローラ210およびユニット115が、他のコントローラ210およびユニット115とは異なった建物、異なった地理的区域、異なった国、異なった大陸などに位置してもよい。一実施形態では、ユニット115およびコントローラ210は、それらが多様な場所にあるにもかかわらず、相互に探索し合い(またはそうするよう最善を尽くし)、ピア・ツー・ピア・ネットワークを形成し、データセットを配布することができる。
図5A〜図5Cには、構成500の例示的な構成要素が示されているが、他の実装では、構成500は、図5A〜図5Cに示すものと比べて、より少数の構成要素、異なる構成要素、追加的な構成要素、または異なった配置の構成要素を含んでもよい。例えば、別の実施形態では、中央制御デバイス(例えば、サーバ)が、1もしくは複数の分散データセットと併用されてもよい。加えて、または代替として、構成500の1もしくは複数の構成要素が、構成500の1もしくは複数の他の構成要素によって実行されるものと記載された1もしくは複数のタスクを実行してもよい。
図6は、管理デバイス130の例示的な構成要素を示すブロック図である。図6に示すように、管理デバイス130は、バス610、プロセッサ620、メモリ630、入力デバイス640、出力デバイス650、および通信インターフェース660を含み得る。
バス610は、管理デバイス130の構成要素間の通信を許容する経路を含む。プロセッサ620は、命令を解釈し、実行する、任意の種類のシングルコアプロセッサ、マルチコアプロセッサ、マイクロプロセッサ、ラッチベースのプロセッサ、および/または処理ロジック(または、プロセッサ、マイクロプロセッサ、および/または処理ロジックのファミリ)を含んでもよい。他の実施形態では、プロセッサ620は、ASIC、FPGA、および/または別の種類の集積回路もしくは処理ロジックを含んでもよい。
メモリ630は、情報、データ、および/または命令を記憶する。メモリ630は、動的記憶デバイス、揮発性記憶デバイス、および/または不揮発性記憶デバイスを含んでもよい。メモリ630は、プロセッサ620が実行するための命令、またはプロセッサ620が使用するための情報を記憶することができる。例えば、メモリ630は、RAM、ROM、CAM、磁気的記録メモリデバイスおよび/または光学的記録メモリデバイスなどを含んでもよい。
入力デバイス640は、オペレータが管理デバイス130へ情報を入力することを可能にする。入力デバイス640は、例えば、キーボード、マウス、ペン、マイクロフォン、タッチスクリーンディスプレイなどを含んでもよい。出力デバイス650は、管理デバイス130のオペレータに情報を出力することができる。出力デバイス650は、ディスプレイ、プリンタ、スピーカ、および/または別の種類の出力デバイスを含んでもよい。
通信インターフェース660は、コントローラ210が、有線通信リンク、無線通信リンク、または無線通信リンクと有線通信リンクとの組み合わせを介して、他のデバイスおよび/または他のシステムと通信する(例えば、データを送信し、かつ/またはデータを受信する)ことを可能にする機器(例えば、送信機および/または受信機)を含み得る。通信インターフェース660は、有線通信のためのネットワークインターフェースカード(例えば、イーサネット(登録商標)カード)、および/または無線通信のための無線ネットワークインターフェース(例えば、WiFi)カードを含んでもよい。
管理デバイス130は、システム110内のユニット115の管理に関連した動作を実行することができる。管理デバイス130は、これらの動作を、メモリ630といったコンピュータ可読媒体に含まれるソフトウェア命令をプロセッサ620が実行することに応答して行うこともできる。メモリ630に含まれるソフトウェア命令は、プロセッサ620にこれらの動作を実行させることができる。
図7は、システムユニット115‐Aを追加して(または、システムユニット115‐Aをネットワークに結合させて)ネットワーク構成500(例えば、他のシステムユニット115‐B〜システムユニット115‐Fを有する分散された環境)を作るための例示的なプロセス700のフローチャートである。プロセス700は、システムユニット115‐Aがスタンドアローンのユニット(図4Bの構成400)、またはネットワーク構成内のユニット(図5A〜図5Cの構成500における最初のユニットまたは追加されたユニットのいずれか)になる状況を示している。プロセス700は、例えば、コントローラ210内で動作する制御ロジック322および/または配布層ロジック340によって実行され得る。
この例では、プロセス700は、デバイス固有データまたは他のデータ(例えば、構成データ、コントローラ210についての初期データ、またはコントローラ210についての第1のデータ)の受信または決定から開始する(ブロック702)。例えば、管理デバイス130を使用する管理者は、読取デバイス240−A、施錠デバイス250−A、センサ260−A、およびアクチュエータ270−Aを有する(図4Aに示した)コントローラ210−Aを構成することができる。構成(および、デバイス固有データの生成)の間、管理者は、システムユニット115−Aが構成400(図4Bに示したスタンドアローン)と、ネットワーク構成500(図5に示した、システムユニット115−B〜システムユニット115−Fを有するネットワーク)とのどちらに設置されるかを知らなくてもよい。さらに、システムユニット115−Aがネットワーク構成500内に設置される場合、管理者は、システムユニット115−Aがネットワークの最初のユニット(システムユニット115−Aが構成400のスタンドアローンのデバイスである場合における図5Cに示した状況)であるか、もしくはシステムユニット115−B〜システムユニット115−Fの既存のネットワーク(図5Bに示した状況)に追加されるかを知らなくてもよい。
よって、デバイス固有データ(例えば、構成データまたは第1のデータ)は、他のコントローラ210(またはシステムユニット115)への配布のためにデータベースにおける第1のメモリ領域(例えば、合意データ領域360)内に保存され得る(ブロック704)。この例では、デバイス固有データは、記憶層350における合意データ領域360のデバイス固有データ362として保存されてもよい。システムユニット115−Aがスタンドアローンのユニットである場合、システムユニット115−Aは、いつでも(すぐに)(一つのデバイスのネットワークにおける)構成400内に設置され得る。さらに、システムユニット115−Aは、いつでも(すぐに)他のシステムユニット115を自己に結合させて、システムユニット115のより大きなネットワーク(図5Cの状況)を形成することができる。後者の場合には、他のコントローラがシステムユニット115−Aに追加されると同時に、合意データ領域360内のデータは、他のコントローラに配布されてもよい。
一方で、システムユニット115−Aが、システムユニット115−B〜システムユニット115−Fの既存のネットワーク(図5Bの状況)に結合する場合、合意ベースのデータベースを分散させる新しいネットワーク(例えば、ピア・ツー・ピア・ネットワーク)にコントローラ210−A(システムユニット115−A)を追加することの確認が受信される(ブロック706)。この場合、ブロック702で管理者によって提供されたデバイス固有データ362を取り除くこと、削除すること、または上書きすることを避けるための注意がなされるべきである。言い換えれば、システムユニット115−Aがシステムユニット115−B〜システムユニット115−Fに結合した場合、当該システムは、合意の不足を理由として、システムユニット115−Aについてのデバイス固有データ362が上書きされるリスクを冒す。よって、一実施形態は、デバイス固有データ362が上書きされることなく、システムユニット115−B〜システムユニット115−Fによって分散される合意ベースのDBにデバイス固有データ362が導入されることを許容する。別の実施形態では、システムユニット115−Aが既存のネットワークに追加されるために確認が受信される必要がない。
デバイス固有データ362(第1のデータ362)が上書きされること、削除されること、または分散データベースから取り除かれることを防ぐために、デバイス固有データ362(第1のデータ362)は、非合意データ領域370(図3C参照)といった別のメモリ領域(例えば、第2のメモリ領域)内に保存され得る(ブロック708)。デバイス固有データ362のコピーの後に、システムユニット115−A(すなわち、コントローラ210−A)は、システムユニット115−B〜システムユニット115−F(例えば、ピア・ツー・ピア・ネットワーク)の間で合意ベースのデータベースを分散させる新しいネットワーク(例えば、図5Bの状況)と結合し得る(または追加され得る)(ブロック710)。新しいネットワークの一部として、システムユニット115−A(すなわち、コントローラ210−A)は、当該ネットワーク(例えば、ピア・ツー・ピア・ネットワーク)における他のデバイス(システムユニット115−B〜システムユニット115−F)からデータを受信し、そして、受信されたデータを第1のメモリ領域(すなわち、合意データ領域360)に保存することにより、受信されたデータを合意ベースのデータ領域に追加することができる。
システムユニット115−A(例えば、コントローラ210−A)は、デバイス固有データ(第1のデータ)を合意ベースのデータに追加することの確認を受信し得る。例えば、構成500のネットワークにシステムユニット115−Aを追加する管理者は、デバイス固有データが構成500の分散DBに追加されるべきかどうかを促され得る。デバイス固有データが構成500の分散DBに追加される場合、コントローラ210−Aは、システムユニット115−B〜システムユニット115−Fによって形成されるネットワークにおける他のシステムユニット115および/または他のコントローラ210への配布のために、デバイス固有データのコピー372(第1のデータのコピー372)を非合意データ領域370(すなわち、第2のメモリ領域)から合意データ領域360(例えば、第1のメモリ領域)へ追加またはコピーする(ブロック714)。よって、システムユニット115−Aは、デバイス固有データ362が変化せずに、適切に配布されながら、ネットワーク構成500に追加される。この例では、配布層340は、合意データ領域360(デバイス固有データ362を含む)内に保存された合意ベースのデータを配布する。一実施形態では、不正である可能性が高いデバイス固有データに関して合意の不足を生じさせるために、デバイス固有データ362は、デバイス識別子(ID)(例えば、一意なデバイス識別子)がタグ付けされる。
システムユニット115−Aがネットワーク構成500の一部である後で、管理者は、システムユニット115−Aをネットワーク構成500から撤去することを望む場合がある。削除の後に、管理者は、システムユニット115−Aに、図4の構成400に示したようなスタンドアローンのユニットとして動作させることを望む場合がある。図8は、図5Aに示したネットワーク構成500からシステムユニット115−Aを撤去するための例示的なプロセス800のフローチャートである。
プロセス800は、システムユニット115−Aが既存のネットワーク構成500から撤去されることの確認の受信(ブロック802)、およびシステムユニット115−Aについてのデバイス固有データ(第1のデータ)が維持されることの確認の受信(ブロック804)から開始する。デバイス固有データ(第1のデータ)が維持される場合、デバイス固有データ(第1のデータ)は、(例えば、合意データ領域360(第1のメモリ領域360)から)非合意データ領域370(第2のメモリ領域370)(図3C参照)にコピーされる(ブロック806)。
システムユニット115−Aは、その後、当該ネットワーク構成を離れ得る(例えば、ピア・ツー・ピア・ネットワークから撤去され得る)。そして、分散DBは再設定され得る(ブロック808)。分散DBの再設定は、合意データ領域360内に保存されたデータを削除することにより合意データ領域360を再設定することを含んでもよい。デバイス固有データ362(第1のデータ362)は、その後、非合意データ領域370(第2のメモリ領域370)から合意データ領域360(第1のメモリ領域360)へコピーされ得る(ブロック810)。この場合には、例えば、管理者は、システムユニット115−Aのデバイス固有の構成情報(例えば、コントローラ210−Aに接続された周辺デバイスに関する構成情報など)を維持しながら、システムユニット115−Aをネットワーク構成500から撤去することができる。
以上の明細書では、添付の図面を参照して様々な実施形態を説明した。しかし、添付の特許請求の範囲に記載される本発明のより広い範囲から逸脱することなく、実施形態に様々な改変および変更を加えることができ、追加的な実施形態を実現することができることは明らかであろう。本明細書および図面は、したがって、限定としてではなく例示とみなされるべきである。例えば、図7および図8に関連して一連のブロックが記載されているが、各ブロックおよび/または信号フローの順序は、他の実装では変更されてもよい。さらに、非依存のブロックおよび/または信号フローは並列に実行されてもよい。
前述のシステムおよび/または方法は、各図に示す実装において、多くの異なる形態のソフトウェア、ファームウェア、およびハードウェアで実装され得ることが理解されるであろう。これらのシステムおよび方法を実装するのに使用される実際のソフトウェアコードまたは専用の制御ハードウェアは、各実施形態を限定するものではない。よって、システムおよび方法の動作および挙動は、特定のソフトウェアコードを参照せずに記載された。すなわち、ソフトウェアおよび制御ハードウェアは、本明細書の記載に基づくシステムおよび方法を実装するように設計され得ることが理解される。
さらに、前述のある特定の部分が、1もしくは複数の機能を実行する構成要素として実装されてもよい。構成要素とは、本明細書で使用される場合、プロセッサ、ASIC、FPGAといったハードウェア、またはハードウェアとソフトウェアの組み合わせ(例えば、ソフトウェアを実行するプロセッサ)を含み得る。
「comprises」および/または「comprising」という用語は、本明細書で使用する場合、記述される特徴、整数、ステップまたは構成要素の存在を指定するが、1もしくは複数の他の特徴、整数、ステップ、構成要素またはそのグループを排除するものではない。さらに、「例示的な」(例えば「例示的な実施形態」、「例示的な構成」など)という用語は、「一例として」を意味し、「好ましい」、「最善の」などを意味するものではない。
本出願で使用されるいかなる要素、動作、または命令も、特に明示しない限り、実施形態にとって不可欠または本質的であると解釈すべきではない。また、本明細書で使用する場合、冠詞の「a」は1もしくは複数の項目を含むことが意図されている。さらに、「〜に基づいて(based on)」という句は、特に明示しない限り、「少なくとも一部は〜に基づいて」を意味するものである。

Claims (20)

  1. デバイス固有データを特定のデバイスの第1のメモリ領域に保存するステップと、
    ここで、前記第1のメモリ領域は、合意ベースの分散データベース(DB)のためのデータを保存するように設計され、
    記デバイス固有データは、ピア・ツー・ピア・ネットワーク内のデバイスの間で分散される前記合意ベースの分散DBに追加され、
    前記ピア・ツー・ピア・ネットワーク内の前記デバイスは、前記特定のデバイスおよびピアデバイスを含み、
    前記合意ベースの分散DBは、前記合意ベースの分散DB内に保存されたデータにおける変更に対する合意が定足数によって達するときに前記データに変更を加えるように構成され、
    前記定足数は、前記合意ベースの分散DBが分散される前記ピア・ツー・ピア・ネットワーク内のデバイスの全数よりも少ない数であり、かつ、
    前記デバイス固有データは、前記特定のデバイスを構成するためのデータを含み、
    記デバイスを前記ピア・ツー・ピア・ネットワークに追加するステップと、
    一以上の前記ピアデバイスからデータを受信し、前記受信されたデータを前記第1のメモリ領域に保存することにより前記受信されたデータを前記合意ベースの分散DBに追加するステップと、
    前記特定のデバイスを前記ピア・ツー・ピア・ネットワークに追加するときに前記特定のデバイス内の前記デバイス固有データを維持するステップと、
    を含み、
    前記デバイス固有データを維持するステップは、
    前記デバイス固有データを前記特定のデバイスの第2のメモリ領域へコピーすることと、
    前記デバイス固有データを前記特定のデバイスの前記第2のメモリ領域へコピーした後、および、前記特定のデバイスを前記ピア・ツー・ピア・ネットワークに追加した後に、前記デバイス固有データを前記第2のメモリ領域から前記第1のメモリ領域へコピーし、かつ、前記デバイス固有データを前記合意ベースの分散DBに追加することにより前記合意ベースの分散DB内に保存された前記データを変更することと、
    前記デバイス固有データを前記合意ベースの分散DBに追加した後に、前記ピア・ツー・ピア・ネットワーク内の前記ピアデバイスへ前記デバイス固有データを前記合意ベースの分散DBの一部として配布することと、を含む、方法。
  2. 前記第2のメモリ領域は、非合意ベースのDBのためのデータを保存するように指定される、請求項1に記載の方法。
  3. 前記デバイス固有データは、分散制御システム内のコントローラを構成するための構成データを含む請求項2に記載の方法。
  4. 前記構成データは、前記コントローラに接続された周辺デバイスを定義するデータを含む、請求項3に記載の方法。
  5. 前記デバイスは、分散型の物理アクセス制御システム(DPACS)内のコントローラを含み、
    前記ピアデバイスは、前記DPACS内の他のコントローラを含み、
    前記デバイス固有データは、前記コントローラを構成するためのデータを含む、請求項1に記載の方法。
  6. 合意ベースの分散データベース(DB)を特定のデバイス内の第1のメモリ領域に保存するステップと、
    ここで、前記特定のデバイスは、ピアデバイスのピア・ツー・ピア・ネットワーク内のデバイスの間で前記合意ベースの分散DBを分散させる前記ピア・ツー・ピア・ネットワークに接続され、
    前記ピア・ツー・ピア・ネットワーク内の前記デバイスは、前記特定のデバイスおよびピアデバイスを含み、
    前記合意ベースの分散DBは、前記合意ベースの分散DB内に保存されたデータにおける変更に対する合意が定足数によって達するときに前記データに変更を加えるように構成され、
    前記定足数は、前記合意ベースの分散DBが分散される前記ピア・ツー・ピア・ネットワーク内のデバイスの全数よりも少ない数であり、かつ、
    前記合意ベースの分散DBは、前記特定のデバイスを構成するためのデバイス固有データを保存し、
    前記特定のデバイスを前記ピア・ツー・ピア・ネットワークから撤去するときに前記特定のデバイス内の前記デバイス固有データを維持するステップと、
    を含み、
    前記デバイス固有データを維持するステップは、
    前記デバイス固有データを前記特定のデバイスの第2のメモリ領域にコピーすることと、
    前記デバイス固有データを前記第2のメモリ領域にコピーした後に前記ピア・ツー・ピア・ネットワークから前記特定のデバイスを撤去することと、
    前記デバイス固有データを前記第2のメモリ領域にコピーした後、および前記ピア・ツー・ピア・ネットワークから前記特定のデバイスを撤去した後に前記合意ベースの分散DB内のデータを削除することと、
    前記デバイス固有データを前記第2のメモリ領域から前記第1のメモリ領域へコピーし、かつ、前記合意ベースの分散DB内の前記データを削除した後に前記デバイス固有データを前記合意ベースの分散DBに追加することにより、前記合意ベースの分散DB内に保存された前記データを変更することと、を含む、方法。
  7. 記第2のメモリ領域は、非合意ベースのDBのためのデータを保存するように指定される、請求項に記載の方法。
  8. 前記デバイス固有データは、分散制御システム内のコントローラを構成するための構成データを含む請求項に記載の方法。
  9. 前記構成データは、前記特定のデバイスに接続された周辺デバイスを定義する、請求項に記載の方法。
  10. 前記特定のデバイスは、分散型の物理アクセス制御システム(DPACS)内のコントローラであり、
    前記ピアデバイスは、前記DPACS内の他のコントローラを含む、請求項に記載の方法。
  11. デバイスであって、
    合意ベースの分散データベース(DB)のためのデバイス固有データを保存する、前記デバイスの第1のメモリ領域と、
    ここで、前記デバイス固有データは、ピア・ツー・ピア・ネットワーク内の複数のデバイスの間で分散される前記合意ベースの分散DBに追加され、
    前記ピア・ツー・ピア・ネットワーク内の前記複数のデバイスは、前記デバイスおよびピアデバイスを含み、
    前記合意ベースの分散DBは、前記合意ベースの分散DB内に保存されたデータにおける変更に対する合意が定足数によって達するときに前記データに変更を加えるように構成され、
    前記定足数は、前記合意ベースの分散DBが分散される前記ピア・ツー・ピア・ネットワーク内のデバイスの全数よりも少ない数であり、かつ、
    前記デバイス固有データは、前記デバイスを構成するためのデータであり、
    記デバイスを前記ピア・ツー・ピア・ネットワークに追加するプロセッサと、
    前記ピア・ツー・ピア・ネットワーク内の前記ピアデバイスからデータを受信する受信機と、
    ここで、前記プロセッサは、前記受信されたデータを前記第1のメモリ領域内に保存し、かつ、前記受信されたデータを前記合意ベースの分散DBに追加するように構成され、
    前記プロセッサは、前記デバイスを前記ピア・ツー・ピア・ネットワークに追加するときに前記デバイス内の前記デバイス固有データを維持するようにさらに構成され、
    前記プロセッサは、
    前記デバイス固有データを前記デバイスの第2のメモリ領域へコピーし、かつ、
    前記デバイス固有データを前記デバイスの前記第2のメモリ領域へコピーした後、および、前記デバイスを前記ピア・ツー・ピア・ネットワークに追加した後に、前記デバイス固有データを前記第2のメモリ領域から前記第1のメモリ領域へコピーし、かつ、前記デバイスを前記ピア・ツー・ピア・ネットワークに追加した後に前記デバイス固有データを前記合意ベースの分散DBに追加することにより前記合意ベースの分散DB内に保存された前記データを変更するように構成され、
    前記ピア・ツー・ピア・ネットワーク内の前記ピアデバイスへ前記デバイス固有データを前記合意ベースの分散DBの一部として送信する送信機と、
    を含む、デバイス。
  12. 記第2のメモリ領域は、非合意ベースのDBのためのデータを保存するように指定される、請求項11に記載のデバイス。
  13. 前記デバイス固有データは、分散制御システム内のコントローラを構成するための構成データを含む請求項1に記載のデバイス。
  14. 前記構成データは、前記コントローラに接続された周辺デバイスを定義する、請求項1に記載のデバイス。
  15. 前記デバイスは、分散型の物理アクセス制御システム(DPACS)内のコントローラをさらに含み、
    前記ピアデバイスは、前記DPACS内の他のコントローラを含む、請求項14に記載のデバイス。
  16. デバイスであって、
    意ベースの分散データベース(DB)を保存する、前記デバイス内の第1のメモリ領域と、
    ここで、前記デバイスは、ピア・ツー・ピア・ネットワーク内の複数のデバイスの間に前記合意ベースの分散DBを分散させる前記ピア・ツー・ピア・ネットワークに接続され、
    前記ピア・ツー・ピア・ネットワーク内の前記複数のデバイスは、前記デバイスおよびピアデバイスを含み、
    前記合意ベースの分散DBは、前記合意ベースの分散DB内に保存されたデータにおける変更に対する合意が定足数によって達するときに前記データに変更を加えるように構成され、
    前記定足数は、前記合意ベースの分散DBが分散される前記ピア・ツー・ピア・ネットワーク内のデバイスの全数よりも少ない数であり、かつ、
    前記合意ベースの分散DBは、前記デバイスを構成するためのデバイス固有データを保存し、
    前記デバイスが前記ピア・ツー・ピア・ネットワークから撤去されるときに前記デバイス内の前記デバイス固有データを維持するプロセッサと、
    を含み、
    前記プロセッサは、
    前記合意ベースの分散DB内に保存された前記デバイス固有データを前記デバイスの第2のメモリ領域にコピーし、
    前記デバイス固有データを前記第2のメモリ領域にコピーした後に前記ピア・ツー・ピア・ネットワークから前記デバイスを撤去し、
    前記デバイス固有データを前記第2のメモリ領域にコピーした後、および前記ピア・ツー・ピア・ネットワークから前記デバイスを撤去した後に前記合意ベースの分散DB内のデータを削除し、かつ、
    前記デバイス固有データを前記第2のメモリ領域から前記第1のメモリ領域にコピーし、そして、前記合意ベースの分散DB内の前記データを削除した後に前記デバイス固有データを前記合意ベースの分散DBに追加することにより、前記合意ベースの分散DB内に保存された前記データを変更するように構成される、デバイス。
  17. 前記第2のメモリ領域は、非合意ベースのDBのためのデータを保存するように指定される請求項1に記載のデバイス。
  18. 前記デバイス固有データは、分散制御システム内のコントローラを構成するための構成データを含む、請求項1に記載のデバイス。
  19. 前記構成データは、前記コントローラに接続される周辺デバイスを定義する、請求項1に記載のデバイス。
  20. 前記デバイスは、分散型の物理アクセス制御システム(DPACS)内のコントローラをさらに含み、
    前記ピアデバイスは、前記DPACS内の他のコントローラを含む、請求項1に記載のデバイス。
JP2014187456A 2013-09-16 2014-09-16 分散データベースの結合 Active JP6147234B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/028,059 US9621644B2 (en) 2013-09-16 2013-09-16 Joining a distributed database
US14/028,059 2013-09-16

Publications (3)

Publication Number Publication Date
JP2015057702A JP2015057702A (ja) 2015-03-26
JP2015057702A5 JP2015057702A5 (ja) 2017-05-18
JP6147234B2 true JP6147234B2 (ja) 2017-06-14

Family

ID=49223671

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014187456A Active JP6147234B2 (ja) 2013-09-16 2014-09-16 分散データベースの結合

Country Status (6)

Country Link
US (1) US9621644B2 (ja)
EP (1) EP2849062B1 (ja)
JP (1) JP6147234B2 (ja)
KR (1) KR101757345B1 (ja)
CN (1) CN104462171B (ja)
TW (1) TWI595370B (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180147722A1 (en) * 2016-11-30 2018-05-31 Nanjing Avatarmind Robot Technology Co., Ltd. Method and system for managing wireless networking of units inside robot
US10831917B2 (en) 2018-10-29 2020-11-10 At&T Intellectual Property I, L.P. Database system consensus-based access control
TWI753716B (zh) * 2020-12-23 2022-01-21 財團法人工業技術研究院 運動數據收集方法及系統

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6047332A (en) 1997-06-30 2000-04-04 Sun Microsystems, Inc. Global file system-based system and method for rendering devices on a cluster globally visible
US6243744B1 (en) 1998-05-26 2001-06-05 Compaq Computer Corporation Computer network cluster generation indicator
US7085805B1 (en) * 2000-07-07 2006-08-01 Sun Microsystems, Inc. Remote device management in grouped server environment
WO2004081818A1 (en) * 2003-03-10 2004-09-23 Koninklijke Philips Electronics N.V. Method and apparatus for ownership transfer of transactions in peer-to-peer systems
US20060195361A1 (en) * 2005-10-01 2006-08-31 Outland Research Location-based demographic profiling system and method of use
US7426653B2 (en) 2005-04-13 2008-09-16 Progress Software Corporation Fault tolerant distributed lock management
TWI291665B (en) * 2005-12-30 2007-12-21 Ind Tech Res Inst Product managing system and method using RFID technology
US20070240227A1 (en) * 2006-03-29 2007-10-11 Rickman Dale M Managing an entity
RU2009120689A (ru) * 2006-11-02 2010-12-10 Конинклейке Филипс Электроникс, Н.В. (Nl) Распределенная отмена полномочий устройств
US8856206B2 (en) 2007-08-28 2014-10-07 International Business Machines Corporation Maintaining message versions at nodes in a network
US8122497B2 (en) * 2007-09-10 2012-02-21 Redcloud, Inc. Networked physical security access control system and method
US8554865B2 (en) 2007-09-21 2013-10-08 Honeywell International Inc. System and method for remotely administering and synchronizing a clustered group of access control panels
US10296937B2 (en) * 2009-06-29 2019-05-21 Excalibur Ip, Llc Operating a sensor recording marketplace
US20130124546A1 (en) * 2010-02-26 2013-05-16 Adobe Systems, Inc. Group access control for a distributed system
US8381017B2 (en) 2010-05-20 2013-02-19 International Business Machines Corporation Automated node fencing integrated within a quorum service of a cluster infrastructure

Also Published As

Publication number Publication date
CN104462171A (zh) 2015-03-25
CN104462171B (zh) 2019-07-26
EP2849062A1 (en) 2015-03-18
TW201528012A (zh) 2015-07-16
US20150081831A1 (en) 2015-03-19
JP2015057702A (ja) 2015-03-26
US9621644B2 (en) 2017-04-11
KR20150032187A (ko) 2015-03-25
KR101757345B1 (ko) 2017-07-12
TWI595370B (zh) 2017-08-11
EP2849062B1 (en) 2019-06-26

Similar Documents

Publication Publication Date Title
JP6247618B2 (ja) アクセス制御システムにおける匿名の決定
JP6234348B2 (ja) ユーザ認証情報の配信
JP6307393B2 (ja) アクセス制御システムにおける分散されたイベント
JP6400990B2 (ja) 分散制御システムにおけるアプリケーションデータの管理
JP6254499B2 (ja) 分散制御システムにおける合意の欠損
JP6147234B2 (ja) 分散データベースの結合

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141216

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170327

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170327

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20170327

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20170417

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: 20170425

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170516

R150 Certificate of patent or registration of utility model

Ref document number: 6147234

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250