IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社日立製作所の特許一覧

特開2023-103033通信管理方法および通信管理システム
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023103033
(43)【公開日】2023-07-26
(54)【発明の名称】通信管理方法および通信管理システム
(51)【国際特許分類】
   G06F 16/28 20190101AFI20230719BHJP
   H04L 61/50 20220101ALI20230719BHJP
【FI】
G06F16/28
H04L61/50
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2022003862
(22)【出願日】2022-01-13
(71)【出願人】
【識別番号】000005108
【氏名又は名称】株式会社日立製作所
(74)【代理人】
【識別番号】110001678
【氏名又は名称】藤央弁理士法人
(72)【発明者】
【氏名】猪股 宏文
(72)【発明者】
【氏名】大久保 敬子
(72)【発明者】
【氏名】郡浦 宏明
【テーマコード(参考)】
5B175
【Fターム(参考)】
5B175AA02
(57)【要約】      (修正有)
【課題】エンティティを低リソースで一元管理することが可能な通信管理方法および通信管理システムを提供する。
【解決手段】第1装置と第2装置とにより、データを処理するエンティティ群間の通信を管理する通信管理方法であって、第1装置は、エンティティIDを登録するDBを有し、第2装置は、エンティティを管理するエンティティ管理機能と、ブロックチェーンネットワークにおいて重複のないアドレスコードを発行するブロックチェーンネットワーク実現機能と、を有する。エンティティ管理機能は、ブロックチェーンネットワーク実現機能から第1アドレスコードを取得する。エンティティ管理機能は、アドレスコードを含むブロックチェーンネットワークへの加入要求を送信する。第1装置は、アドレスコードを含みかつ加入要求を承認する応答を受信するとアドレスコードをエンティティIDとしてDBに登録する。
【選択図】図1
【特許請求の範囲】
【請求項1】
第1装置と第2装置とにより、データを処理するエンティティ群間の通信を管理する通信管理方法であって、
前記第1装置は、前記エンティティを一意に特定するエンティティIDを登録する第1データベースを有し、
前記第2装置は、前記エンティティを管理するエンティティ管理機能と、ブロックチェーンネットワークを実現するために前記ブロックチェーンネットワークにおいて重複のないアドレスコードを発行するブロックチェーンネットワーク実現機能と、を有し、
前記エンティティ管理機能が、前記ブロックチェーンネットワーク実現機能から第1アドレスコードを取得し、
前記エンティティ管理機能が、前記第1アドレスコードを含む前記ブロックチェーンネットワークへの第1加入要求を送信し、
前記第1装置が、前記第1アドレスコードを含みかつ前記第1加入要求を承認する第1応答を受信すると、前記第1アドレスコードを前記エンティティIDとして前記第1データベースに登録する、
ことを特徴とする通信管理方法。
【請求項2】
請求項1に記載の通信管理方法であって、
前記第2装置は、前記エンティティに関する情報と前記エンティティIDとを関連付けた第2データベースを有し、
前記エンティティ管理機能が、前記第1応答を受信すると、前記第1アドレスコードを前記エンティティIDとして、前記エンティティ管理機能に関する情報と関連付けて前記第2データベースに登録する、
ことを特徴とする通信管理方法。
【請求項3】
請求項1に記載の通信管理方法であって、
前記第2装置は、前記装置のエンティティである管理対象デバイスを管理するデバイス管理機能を有し、
前記デバイス管理機能が、前記ブロックチェーンネットワーク実現機能から第2アドレスコードを取得し、
前記デバイス管理機能が、前記第2アドレスコードを含む前記ブロックチェーンネットワークへの第2加入要求を、前記エンティティ管理機能に送信し、
前記エンティティ管理機能が、前記第1アドレスコードおよび前記第2アドレスコードを含みかつ前記第2加入要求を承認する第2応答を、前記第1装置に送信し、
前記第1装置が、前記第2応答を受信すると、前記第2アドレスコードを前記エンティティIDとし、前記第1アドレスコードを前記デバイス管理機能の照会先エンティティの前記エンティティIDとして、前記第1アドレスコードおよび前記第2アドレスコードを関連付けて前記第1データベースに登録する、
ことを特徴とする通信管理方法。
【請求項4】
請求項3に記載の通信管理方法であって、
前記第2装置は、前記エンティティに関する情報と前記エンティティIDとを関連付けた第2データベースを有し、
前記エンティティ管理機能が、前記第2アドレスコードを前記エンティティIDとして、前記デバイス管理機能に関する情報と関連付けて前記第2データベースに登録する、
ことを特徴とする通信管理方法。
【請求項5】
請求項3に記載の通信管理方法であって、
前記管理対象デバイスは、前記管理対象デバイスを制御するデバイス制御機能と、前記ブロックチェーンネットワーク実現機能と、を有し、
前記デバイス制御機能が、前記デバイス制御機能が有する前記ブロックチェーンネットワーク実現機能から第3アドレスコードを取得し、
前記デバイス制御機能が、前記第3アドレスコードを含む前記ブロックチェーンネットワークへの第3加入要求を、前記エンティティ管理機能に送信し、
前記エンティティ管理機能が、前記第1アドレスコードおよび前記第3アドレスコードを含みかつ前記第3加入要求を承認する第3応答を、前記第1装置に送信し、
前記第1装置が、前記第3応答を受信すると、前記第3アドレスコードを前記エンティティIDとし、前記第1アドレスコードを前記デバイス制御機能の照会先エンティティの前記エンティティIDとして、前記第1アドレスコードおよび前記第3アドレスコードを関連付けて前記第1データベースに登録する、
ことを特徴とする通信管理方法。
【請求項6】
請求項5に記載の通信管理方法であって、
前記第2装置は、前記エンティティに関する情報と前記エンティティIDとを関連付けた第2データベースを有し、
前記エンティティ管理機能が、前記第3アドレスコードを前記エンティティIDとして、前記デバイス制御機能に関する情報と関連付けて前記第2データベースに登録する、
ことを特徴とする通信管理方法。
【請求項7】
請求項5に記載の通信管理方法であって、
前記デバイス管理機能が、前記第2アドレスコードを含む前記デバイス制御機能への第1接続申請を、前記エンティティ管理機能に送信し、
前記エンティティ管理機能が、前記第1接続申請を受信すると、前記デバイス制御機能への接続を許可する第1接続許可通知を、前記デバイス管理機能および前記第1装置に送信し、
前記デバイス制御機能が、前記第3アドレスコードを含む前記デバイス管理機能への第2接続申請を、前記エンティティ管理機能に送信し、
前記エンティティ管理機能が、前記第2接続申請を受信すると、前記デバイス管理機能への接続を許可する第2接続許可通知を、前記デバイス制御機能および前記第1装置に送信し、
前記第1装置が、前記第1接続許可通知および前記第2接続許可通知を受信すると、前記デバイス管理機能と前記デバイス制御機能とを通信可能に接続設定する、
ことを特徴とする通信管理方法。
【請求項8】
請求項7に記載の通信管理方法であって、
前記エンティティ管理機能が、前記第1接続申請を受信すると、前記第2アドレスコードを含む第1素性確認要求を前記第1装置に送信し、
前記第1装置が、前記第1素性確認要求を受信すると、前記第1データベースを参照して、前記第2アドレスコードの存否を確認し、前記第2アドレスコードが存在すれば、前記第2アドレスコードの存在を示す第1素性確認結果を前記エンティティ管理機能に送信し、
前記エンティティ管理機能が、前記第1素性確認結果を受信すると、前記第1接続許可通知を、前記デバイス管理機能および前記第1装置に送信し、
前記エンティティ管理機能が、前記第2接続申請を受信すると、前記第3アドレスコードを含む第2素性確認要求を前記第1装置に送信し、
前記第1装置が、前記第2素性確認要求を受信すると、前記第1データベースを参照して、前記第3アドレスコードの存否を確認し、前記第3アドレスコードが存在すれば、前記第3アドレスコードの存在を示す第2素性確認結果を前記エンティティ管理機能に送信し、
前記エンティティ管理機能が、前記第2素性確認結果を受信すると、前記第2接続許可通知を、前記デバイス制御機能および前記第1装置に送信する、
ことを特徴とする通信管理方法。
【請求項9】
第1装置と第2装置とにより、データを処理するエンティティ群間の通信を管理する通信管理システムであって、
前記第1装置は、データを処理する装置またはソフトウェアで実現されるデータを処理する機能であるエンティティを一意に特定するエンティティIDを登録する第1データベースを有し、
前記第2装置は、前記エンティティを管理するエンティティ管理機能と、ブロックチェーンネットワークを実現するために前記ブロックチェーンネットワークにおいて重複のないアドレスコードを発行するブロックチェーンネットワーク実現機能と、を有し、
前記エンティティ管理機能が、前記ブロックチェーンネットワーク実現機能から第1アドレスコードを取得し、
前記エンティティ管理機能が、前記第1アドレスコードを含む前記ブロックチェーンネットワークへの第1加入要求を送信し、
前記第1装置が、前記第1アドレスコードを含みかつ前記第1加入要求を承認する第1応答を受信すると、前記第1アドレスコードを前記エンティティIDとして前記第1データベースに登録する、
ことを特徴とする通信管理システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、通信を管理する通信管理方法および通信管理システムに関する。
【背景技術】
【0002】
昨今、Internet of Things(IoT)の普及に伴い、マルチベンダの大量のIoTエンティティ(センサデバイス、アクチェータ、アプリ、ネットワークスイッチ、サーバ、データストレージ)が連携し、サービスを安定に提供するIoTシステムのニーズが高まってきている。
【0003】
IoTシステムにおいては、工場での生産管理情報や、製造装置の稼働情報および保守情報の連携よる生産性の向上や、コネクテッドカーへの高信頼で安全なサービス提供を期待されている。特に、そのような信頼性と安全性の確立のため、多量に存在し得るIoTエンティティのメタ情報照会(素性確認照会)の一元化および一元管理が望まれている。
【0004】
なお、ここで言うIoTエンティティは、IoTシステムを構成する要素のことを意味する。また、以下の記載および図面において、読み易さのため、「IoTエンティティの識別ID」を、短縮して、「エンティティID」と略し、「アプリケーション」を、「AP」と略し、「データベース」を「DB」と略して記載することがある。また、「IoTデバイス装置」を「デバイス装置」、また、「IoTエンティティ」を「エンティティ」のように、「IoT」を略すこともある。また、「APプログラム」は、プログラムコードを示し、単に、「AP」と記載する場合、APプログラムコードが実行されているインスタンス(プロセス、スレッド、コンテナ、仮想マシン)を示す。
【0005】
特許文献1は、分散保管されている情報(ファイルなどのコンテンツ)の共有において、コンテンツのメタ情報(インベントリ情報)を、一元的管理する仕組みを開示する。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】米国特許6044374号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
昨今、デバイス装置の増加にともない、以下の課題が発生すると懸念されている。デバイス装置とAPとの通信に、インターネットが使用されている。今後、さらにIoTエンティティが大量化すると、APへの通信において、現在普及しているインターネットでは、エンティティを特定するIPアドレスが不足する。したがって、常時接続の場合に安定した通信が困難になると懸念される。
【0008】
またこれにより、デバイス装置を区別する識別IDにIPアドレスが使用できなくなる。通信においても、この大量なデバイス装置との通信を実現し、デバイス装置の区別を可能とする管理が必要とされる。特に、ミッションクリティカルな用途では、常時接続通信を含め安定したIoTシステムが要求される。
【0009】
また、IoTシステムにおける利便性並びに信頼性のために、マルチベンダでかつ膨大なデバイス装置を一元管理することが求められる。IoTエンティティのメタ情報(インベントリ情報を含む)のData Base Management System(DBMS)による一元管理も、計算リソースや記憶リソースの膨大な使用量を必要し、高コストとなり、実現が困難となる。
【0010】
本発明は、エンティティを低リソースで一元管理することを目的とする。
【課題を解決するための手段】
【0011】
本願において開示される発明の一側面となる通信管理方法は、第1装置と第2装置とにより、データを処理するエンティティ群間の通信を管理する通信管理方法であって、前記第1装置は、前記エンティティを一意に特定するエンティティIDを登録する第1データベースを有し、前記第2装置は、前記エンティティを管理するエンティティ管理機能と、ブロックチェーンネットワークを実現するために前記ブロックチェーンネットワークにおいて重複のないアドレスコードを発行するブロックチェーンネットワーク実現機能と、を有し、前記エンティティ管理機能が、前記ブロックチェーンネットワーク実現機能から第1アドレスコードを取得し、前記エンティティ管理機能が、前記第1アドレスコードを含む前記ブロックチェーンネットワークへの第1加入要求を送信し、前記第1装置が、前記第1アドレスコードを含みかつ前記第1加入要求を承認する第1応答を受信すると、前記第1アドレスコードを前記エンティティIDとして前記第1データベースに登録する、ことを特徴とする。
【発明の効果】
【0012】
本発明の代表的な実施の形態によれば、エンティティを低リソースで一元管理することすることができる。前述した以外の課題、構成及び効果は、以下の実施例の説明により明らかにされる。
【図面の簡単な説明】
【0013】
図1図1は、IoTシステムの全体構成例を示す説明図である。
図2図2は、サーバ装置のハードウェア構成例を示すブロック図である。
図3図3は、デバイス装置のハードウェア構成例を示すブロック図である。
図4図4は、ユーザ端末のハードウェア構成例を示すブロック図である。
図5図5は、ネットワークスイッチ装置のハードウェア構成例を示すブロック図である。
図6図6は、管理サイトのサーバ装置の主記憶装置が記憶するデータ例を示す説明図である。
図7図7は、A社サイトのサーバ装置の主記憶装置が記憶するデータ例を示す説明図である。
図8図8は、B社サイトのサーバ装置の主記憶装置が記憶するデータ例を示す説明図である。
図9図9は、IoTシステムが有する各APプログラムのインスタンスの接続関係の一例を示す説明図である。
図10図10は、素性確認の一元管理処理例を示す説明図である。
図11図11は、ネットワーク管理処理例を示す説明図である。
図12図12は、エンティティ管理APインスタンスのブロックチェーンネットワーク加入処理例を示す説明図である。
図13図13は、デバイス管理APインスタンスとデバイスAPインスタンスのブロックチェーンネットワーク加入処理例を示す説明図である。
図14図14は、デバイスAPインスタンスからのデータ収集処理例を示す説明図である。
図15図15は、デバイス操作例を示す説明図である。
図16図16は、エンティティ管理テーブルの一例を示す説明図である。
図17図17は、照会仲介管理テーブルの一例を示す説明図である。
図18図18は、業務DB内のテーブル群の一例を示す説明図である。
図19図19は、アクセス制御管理テーブルの一例を示す説明図である。
図20図20は、エンティティ統合管理APインスタンスによるエンティティ統合管理処理手順例を示すフローチャートである。
図21図21は、エンティティ管理APインスタンスによるエンティティ管理処理手順例(前半)を示すフローチャートである。
図22図22は、エンティティ管理APインスタンスによるエンティティ管理処理手順例(後半)を示すフローチャートである。
図23図23は、デバイス管理APインスタンスによるデバイス管理処理手順例を示すフローチャートである。
図24図24は、デバイスAPインスタンスによるデバイス処理手順例を示すフローチャートである。
図25図25は、ユーザ端末APインスタンスによる端末処理手順例を示すフローチャートである。
図26図26は、ネットワーク管理APインスタンスによる管理処理手順例を示すフローチャートである。
図27図27は、ネットワークスイッチAPインスタンスによる処理手順例を示すフローチャートである。
図28図28は、BCNAPインスタンスによる処理手順例を示すフローチャートである。
図29図29は、サプライチェーン管理APインスタンスの管理処理手順例を示すフローチャートである。
【発明を実施するための形態】
【0014】
本発明の実施形態を、添付図面を参照して説明する。なお、以下の説明では、ブロックチェーンネットワークを実現するブロックチェーンネットワークプログラム(以下、BCNAPPまたはブロックチェーンネットワーク実現機能。)の内部動作並びに仕様に関しては、たとえば、Open Source Software(OSS)として公開されているブロックチェーン・プラットフォームには、幾つかあり、たとえば、Hyperledger Fabric、Ethereum、Quorum、Bitcore、LISKなど既知であり、それらの機能を呼び出す関数名などに違いあるものの、どのブロックチェーン・プラットフォームでも提供されている機能の使用を前提としているので、以降、内部動作の詳細に関する説明は省略する。
【0015】
<IoTシステム全体構成例>
図1は、IoTシステムの全体構成例を示す説明図である。IoTシステム1は、管理サイト101と、1以上の管理対象サイト(本例では、A社サイト102およびB社サイト103)と、を有する。管理サイト101、A社サイト102およびB社サイト103は、それぞれ、ネットワークスイッチ装置500を介して、インターネット、LAN(Local Area Network)、WAN(Wide Area Network)などのデータ通信ネットワーク107に接続される。また、A社のデバイス装置301は、データ通信ネットワーク107に接続され、A社のデバイス装置302およびB社のユーザ端末401は、モバイル通信用の通信キャリア網108を介してデータ通信ネットワーク107に接続される。
【0016】
管理サイト101にあるサーバ装置111は、サプライチェーン管理APプログラム、エンティティ統合管理プログラム、ネットワーク管理APプログラムなど管理に関するプログラムと、照会仲介管理DB(Database)と、アクセス制御管理DB1900と、BCNAPPと、を有する。また、例として、A社サイト102のサーバ装置112は、デバイス管理APプログラムと、業務データDBと、エンティティ管理APプログラムと、エンティティ管理DB1600と、BCNAPPと、を有し、B社サイト103のサーバ装置113は、エンティティ管理APプログラムと、エンティティ管理DB1600と、BCNAPPと、を有する。これらは、本実施例の最低限のリソースである。
【0017】
<サーバ装置111~113のハードウェア構成例>
図2は、サーバ装置111~113のハードウェア構成例を示すブロック図である。サーバ装置111~113を区別しない場合は、サーバ装置201とする。サーバ装置111~113の違いは、主記憶装置209が有するプログラムコード並びにデータにより区別され、詳細は、図6図8で説明する。
【0018】
サーバ装置201は、プロセッサ204と、ユーザIF(Interface)205と、ネットワークスイッチ装置500へ接続するNIC(Network Interface Card)207と、主記憶装置209と、DB210(例:データストレージ)と、それらを接続するデータバス213と、ユーザIF205へ接続するディスプレイ202およびキーボード203と、を有する。
【0019】
プロセッサ204は、主記憶装置209に記憶された図1の各種プログラムを実行する。主記憶装置209は、サーバ装置201内の図1の各種プログラムを記憶する。DB210は、サーバ装置201内の図1に示した各種DBである。
【0020】
<デバイス装置301、302のハードウェア構成例>
図3は、デバイス装置301、302のハードウェア構成例を示すブロック図である。デバイス装置301、302を区別しない場合は、デバイス装置300と表記する。デバイス装置300は、主記憶装置306に記憶されているプログラムを実行するプロセッサ303と、最終的にデータ通信ネットワーク107へ接続する無線通信IF304またはNIC305と、プログラムを記憶する主記憶装置306と、センサ群307と、アクチュエータIF308と、それらを接続するデータバス411と、アクチュエータIF308から接続し制御するアクチュエータ320と、を有する。主記憶装置306は、デバイスAPプログラム309、作業領域410、およびBCNAPP604を有する。
【0021】
<ユーザ端末のハードウェア構成例>
図4は、ユーザ端末401のハードウェア構成例を示すブロック図である。ユーザ端末401の以下の説明では、スマートフォーンを例にしているが、パーソナルコンピュータでも差し支えない。ユーザ端末401は、タッチディスプレイ402と、音声入出403と、それらと接続するユーザIF405と、プログラムを実行するプロセッサ404と、通信キャリア網へ接続する無線通信IF406(NICに相当)と、主記憶装置407と、それらを接続するデータバス411と、を有する。主記憶装置407は、ユーザ端末APプログラム408、作業領域409、およびBCNAPP604を有する。
【0022】
図5は、ネットワークスイッチ装置500のハードウェア構成例を示すブロック図である。ネットワークスイッチ装置500は、プログラムを実行するコントローラ501と、1個以上のNIC502と、主記憶装置505と、それらを接続するデータバス508と、を有する。ネットワークスイッチ装置500、502、503は、それぞれサーバ装置111、112、113からデータ通信ネットワークへの通信を仲介する。主記憶装置505は、ネットワークスイッチAPプログラム506、アクセス制御情報507、およびBCNAPP604を有する。
【0023】
<サーバ装置201の主記憶装置209が記憶するデータ例>
つぎに、サーバ装置201の記憶データ例について、図6図8を用いて説明する。
【0024】
図6は、管理サイト101のサーバ装置111の主記憶装置209(以下、主記憶装置601)が記憶するデータ例を示す説明図である。サーバ装置111の主記憶装置601は、サプライチェーン管理APプログラム602と、エンティティ統合管理APプログラム603と、BCNAPP604と、ネットワーク管理APプログラム605と、作業領域606と、を有する。
【0025】
図7は、A社サイト102のサーバ装置112の主記憶装置209(以下、主記憶装置701)が記憶するデータ例を示す説明図である。主記憶装置701は、デバイス管理APプログラム702と、エンティティ管理APプログラム703と、BCNAPP604と、を有する。
【0026】
図8は、B社サイト103のサーバ装置112の主記憶装置209(以下、主記憶装置801)が記憶するデータ例を示す説明図である。主記憶装置801は、エンティティ管理APプログラム802と、BCNAPP604と、を有する。
【0027】
以上でハードウェア構成に関して、説明した。以下では、本ハードウェア構成上で実行されるプログラムの動作の説明をする。まず、横断的に、各APプログラムを介在するマクロ的な動作の簡便に説明を行った後に、各APプログラムの処理フローの説明をする。
【0028】
<IoTシステム1が有するAPプログラムのインスタンス構成例>
図9は、IoTシステム1が有する各APプログラムのインスタンスの接続関係の一例を示す説明図である。
【0029】
BCNAPインスタンス901は、BCNAPP604のインスタンスである。BCNAPインスタンス901は、ブロックチェーンネットワークを実現するためにブロックチェーンネットワークにおいて重複のないアドレスコードを発行するブロックチェーンネットワーク実現機能であり、具体的には、たとえば、BCNAPP604をプロセッサ204、303、プロセッサ404、コントローラ501にそれぞれ実行させることにより実現される。BCNAPインスタンス901は、アドレスコードの要求元に一度割り当てたアドレスコードを変更しない。同一の要求元から複数回アドレスコードの要求を受けた場合、BCNAPインスタンス901は、初回に割り当てたアドレスコードを要求元に返す。
【0030】
ネットワークスイッチAPインスタンス群902は、ネットワークスイッチ装置500を制御するネットワークスイッチAPプログラム506のインスタンス(ネットワークスイッチAPインスタンス)、すなわち、ネットワークスイッチ制御機能の集合である。ネットワークスイッチAPインスタンスは、具体的には、たとえば、ネットワークスイッチAPプログラム506をコントローラ501に実行させることにより実現される。
【0031】
デバイス管理APインスタンス903は、A社が管轄するデバイス装置301、302を管理(たとえば、例:保守)するA社のデバイス管理APプログラム702のインスタンスである。デバイス管理APインスタンス903は、デバイス装置300のような管理対象デバイスを管理するデバイス管理機能であり、具体的には、たとえば、デバイス管理APプログラム702をプロセッサ204にそれぞれ実行させることにより実現される。
【0032】
エンティティ管理APインスタンス904は、A社が管轄するデバイス装置301、302のエンティティIDを管理(たとえば、管轄するエンティティの管理や素性確認)するエンティティ管理APプログラム703のインスタンスであり、たとえば、データベースマネジメントシステムである。エンティティ管理APインスタンス904は、データを処理する装置またはソフトウェアで実現されるデータを処理する機能であるエンティティを管理するエンティティ管理機能であり、具体的には、たとえば、エンティティ管理APプログラム703をプロセッサ204に実行させることにより実現される。
【0033】
デバイスAPインスタンス905は、A社が管轄するデバイス装置301,302の動作を実行するデバイスAPプログラム309のインスタンスである。デバイスAPインスタンス905は、デバイス装置301,302のような管理対象デバイスを制御するデバイス制御機能であり、具体的には、たとえば、デバイスAPプログラム309をプロセッサ303に実行させることにより実現される。
【0034】
ユーザ端末APインスタンス906は、B社が管轄するユーザ端末401を制御するユーザ端末APプログラム408のインスタンスである。ユーザ端末APインスタンス906は、ユーザ端末401を制御する端末制御機能であり、具体的には、たとえば、ユーザ端末APプログラム408をプロセッサ404に実行させることにより実現される。
【0035】
エンティティ管理APインスタンス907は、B社が管轄するエンティティ管理APプログラム703のインスタンスである。エンティティ管理APインスタンス907は、エンティティ管理APインスタンス904と同様、エンティティを管理するエンティティ管理機能であり、具体的には、たとえば、エンティティ管理APプログラム802をプロセッサ204に実行させることにより実現される。
【0036】
ネットワーク管理APインスタンス908は、ネットワーク管理APプログラム605のインスタンスである。ネットワーク管理APインスタンス908は、ネットワークスイッチ装置500を管理するネットワーク管理機能であり、具体的には、たとえば、ネットワーク管理APプログラム605をプロセッサ204に実行させることにより実現される。
【0037】
エンティティ統合管理APインスタンス909は、エンティティ統合管理APプログラム603のインスタンスである。エンティティ統合管理APインスタンス909は、全エンティティを統合管理するエンティティ統合管理機能であり、具体的には、たとえば、エンティティ統合管理APプログラム603をプロセッサ204に実行させることにより実現される。
【0038】
サプライチェーン管理APインスタンス910は、サプライチェーンを管理するサプライチェーン管理APプログラム602のインスタンスである。サプライチェーン管理APインスタンス910は、サプライチェーンを管理するサプライチェーン管理機能であり、具体的には、たとえば、サプライチェーン管理APプログラム602をプロセッサ204に実行させることにより実現される。
【0039】
デバイス管理APインスタンス903~サプライチェーン管理APインスタンス910はそれぞれ、インスタンス901,902間に接続される。BCNAPインスタンス901は、各サーバ装置111~113に分散して存在するが、横断的に1つのインスタンスとして動作する性質があるので、図9では、1つのインスタンスとして記載する。
【0040】
<素性確認の一元管理>
図10は、素性確認の一元管理処理例を示す説明図である。図10では、ブロックチェーンネットワークであるBCNAPインスタンス901に接続されている外部管轄エンティティ1001を素性確認元とする。
【0041】
(1)照会
外部管轄エンティティ1001が、BCNAPインスタンス901に素性確認を発行する。素性確認は、素性確認対象エンティティのエンティティIDまたはエンティティIDを特定する素性確認対象エンティティに関する情報を含む。
【0042】
(2)照会
サーバ装置111のエンティティ統合管理APインスタンス909は、素性確認をCNAPインスタンス901から受信する。素性確認が素性確認対象エンティティのエンティティIDを含む場合は、エンティティ統合管理APインスタンス909は、(3)照会を実行する。素性確認がエンティティIDを特定する素性確認対象エンティティに関する情報を含む場合、エンティティ統合管理APインスタンス909は、素性確認対象エンティティIDと素性確認対象エンティティに関する情報とを対応付けた仮想的エンティティ管理DBを参照して、素性確認対象エンティティIDを特定する。
【0043】
(3)照会
サーバ装置111のエンティティ統合管理APインスタンス909は、素性確認対象のエンティティIDにより、照会仲介管理DB1700を検索して、素性確認対象のエンティティIDに関連付けられている照会先エンティティIDを取得する。エンティティ統合管理APインスタンス909は、照会先エンティティIDによって特定されるA社のエンティティ管理APインスタンス904に、素性確認を仲介する。すなわち、エンティティ統合管理APインスタンス909は、照会先エンティティIDによって特定されるA社のエンティティ管理APインスタンス904に、素性確認対象のエンティティIDでの照会を要求する。
【0044】
(4)(3)照会への応答
A社のエンティティ管理APインスタンス904は、保持するエンティティ管理DB1600を参照して素性確認対象のエンティティIDよって特定されるエンティティの素性確認を実行し、素性確認結果を、エンティティ統合管理APインスタンス909へ返す。素性確認結果は、素性確認対象のエンティティIDよって特定されるエンティティのメタ情報(またはインベントリ情報)を含む。
【0045】
(5)(2)照会への応答
エンティティ統合管理APインスタンス909は、A社のエンティティ管理APインスタンス904から受信した素性確認結果を作業領域606へ保持し、既定のフォーマットへ変換して、照会元であるBCNAPインスタンス901に送信する。なお、照会仲介管理DB1700では、デバイス装置300の追加の際に、当該デバイス装置300のエンティティIDとその照会先エンティティIDとを関連付けたレコードが追加される。
【0046】
(6)(3)照会への応答
BCNAPインスタンス901は、エンティティ統合管理APインスタンス909から受信した素性確認結果を外部管轄のエンティティ1001に返す。これにより、素性確認対象であるデバイス装置300の素性確認をおこなうことができる。
【0047】
<ネットワーク管理>
図11は、ネットワーク管理処理例を示す説明図である。IoTシステム1は、BCNAPインスタンス901経由では不得意な長大なデータを転送するために、BCNAPインスタンス901を介さずに、データ通信ネットワーク107を使用する。このための確実な通信主体同士の接続を行わせるために、IoTシステム1は、ネットワークスイッチ装置500のアクセス制御を介してデータ通信ネットワーク107を使用する。
【0048】
(1)設定
サーバ装置111のエンティティ統合管理APインスタンス909は、BCNAPインスタンス901を介して、ネットワーク管理APインスタンス908に、接続を許可するエンティティIDを設定する。ネットワーク管理APインスタンス908は、アクセス制御管理DB1900にアクセス可能であるため、アクセス制御管理DB1900に、接続を許可するエンティティIDが設定される。アクセス制御管理DB1900は、ネットワークAPのエンティティID、送信元のエンティティID、および受信先のエンティティIDを有する。接続を許可するエンティティIDは、送信元のエンティティIDまたは受信先のエンティティIDのいずれかとして設定される。
【0049】
(2)制御
ネットワーク管理APインスタンス908は、(1)設定でアクセス制御管理DB1900に設定されたエンティティIDのエンティティでネットワークスイッチAPを制御する。これにより、通信の制御を行う。すなわち、接続を許可するエンティティIDが、送信元のエンティティIDとして設定された場合は、サーバ装置111のエンティティ統合管理APインスタンス909は、その送信元エンティティからのデータを受信し、既設の送信先エンティティに転送する。また、接続を許可するエンティティIDが、受信先のエンティティIDとして設定された場合は、サーバ装置111のエンティティ統合管理APインスタンス909は、既設の信元エンティティからのデータを受信し、その受信先エンティティに転送する。
【0050】
<エンティティ管理APインスタンス904,907のブロックチェーンネットワーク加入>
図12は、エンティティ管理APインスタンス904,907のブロックチェーンネットワーク加入処理例を示す説明図である。図12では、例として、A社のエンティティ管理APプログラム703自身のブロックチェーンネットワークへの加入処理例を示す。
【0051】
(1)加入要求
A社のエンティティ管理APプログラム703のエンティティであるエンティティ管理APインスタンス904は、ブロックチェーンネットワークへの加入申請によりBCNAPインスタンス901からアドレスコードを取得し、取得したアドレスコードを含む加入要求をサプライチェーン管理APインスタンス910に送信する。
【0052】
(2)承認応答
サプライチェーン管理APインスタンス910は、受信した加入要求に対する手動操作または自動での承認応答を、BCNAPインスタンス901を介して、エンティティ管理APインスタンス904と、エンティティ統合管理APインスタンス909と、に送信する。
【0053】
エンティティ管理APインスタンス904は、取得したアドレスコードをエンティティIDとし、エンティティ管理APインスタンス904のメタ情報(またはインベントリ情報)と関連付けて、エンティティ管理DB1600に登録する。
【0054】
エンティティ統合管理APインスタンス909は、加入要求したエンティティ管理APインスタンス904が取得したアドレスコードを、エンティティIDとして照会仲介管理DB1700に登録する。これにより、エンティティ管理APインスタンス904が、エンティティ統合管理APインスタンス909の傘下に入る。
【0055】
<デバイス管理APインスタンスとデバイスAPインスタンスのブロックチェーンネットワーク加入>
図13は、デバイス管理APインスタンス903とデバイスAPインスタンス905のブロックチェーンネットワーク加入処理例を示す説明図である。図13では、エンティティ管理APインスタンス904へのA社のデバイス管理APインスタンス903およびA社のデバイスAPインスタンス905の加入が、エンティティ統合管理APインスタンス909の傘下に入る処理例を示す。
【0056】
(1)加入要求
A社のデバイス管理APインスタンス903は、ブロックチェーンネットワークへの加入申請によりBCNAPインスタンス901からアドレスコードを取得し、取得したアドレスコードおよびデバイス管理APインスタンス903のメタ情報(またはインベントリ情報)を含む加入要求をA社のエンティティ管理APインスタンス904に送信する。
【0057】
(2)承認応答
A社のエンティティ管理APインスタンス904は、(1)加入要求に対する承認応答をA社のデバイス管理APインスタンス903に返す((2)-1)とともに、BCNAPインスタンス901に送信する((2)-2)。承認応答は、A社のデバイス管理APインスタンス903が取得したアドレスコードとA社のエンティティ管理APインスタンス904のエンティティIDとを含む。
【0058】
なお、A社のエンティティ管理APインスタンス904は、A社のデバイス管理APインスタンス903のアドレスコードをエンティティIDとし、A社のデバイス管理APインスタンス903のメタ情報(またはインベントリ情報)と関連付けて、エンティティ管理DB1600に登録する。
【0059】
(3)承認応答
BCNAPインスタンス901は、A社のエンティティ管理APインスタンス904からの承認応答を、エンティティ統合管理APインスタンス909に送信する。エンティティ統合管理APインスタンス909は、A社のデバイス管理APインスタンス903が取得したアドレスコードをエンティティIDとし、A社のエンティティ管理APインスタンス904のエンティティIDを照会先エンティティIDとして、照会仲介管理DB1700に登録する。
【0060】
(4)加入要求
A社のデバイスAPインスタンス905は、ブロックチェーンネットワークへの加入申請によりBCNAPインスタンス901からアドレスコードを取得し、取得したアドレスコードおよびデバイスAPインスタンス905のメタ情報(またはインベントリ情報)を含む加入要求をA社のエンティティ管理APインスタンス904に送信する。
【0061】
(5)承認応答
A社のエンティティ管理APインスタンス904は、(4)加入要求に対する承認応答をA社のデバイスAPインスタンス905に返す((5)-1)とともに、BCNAPインスタンス901に送信する((5)-2)。承認応答は、A社のデバイスAPインスタンス905が取得したアドレスコードとA社のエンティティ管理APインスタンス904のエンティティIDとを含む。A社のデバイスAPインスタンス905が取得したアドレスコードは、A社のデバイス管理APインスタンス903が取得したアドレスコードと重複しない。
【0062】
なお、A社のエンティティ管理APインスタンス904は、A社のデバイスAPインスタンス905のアドレスコードをエンティティIDとし、A社のデバイスAPインスタンス905のメタ情報(またはインベントリ情報)と関連付けて、エンティティ管理DB1600に登録する。
【0063】
(6)承認応答
BCNAPインスタンス901は、A社のエンティティ管理APインスタンス904からの承認応答を、エンティティ統合管理APインスタンス909に送信する。エンティティ統合管理APインスタンス909は、A社のデバイスAPインスタンス905が取得したアドレスコードをエンティティIDとし、A社のエンティティ管理APインスタンス904のエンティティIDを照会先エンティティIDとして、照会仲介管理DB1700に登録する。
【0064】
<デバイスAPインスタンスからのデータ収集>
図14は、デバイスAPインスタンスからのデータ収集処理例を示す説明図である。図14では、A社のデバイス管理APインスタンス903が、A社のデバイスAPインスタンス905からのデータを収集する処理例を示す。
【0065】
(1)A社デバイス接続申請
A社のデバイス管理APインスタンス903は、BCNAPインスタンス901を介して、A社のエンティティ管理APインスタンス904に、デバイスAPインスタンス905への接続申請を送信する。
【0066】
(2)A社AP接続申請
デバイスAPインスタンス905は、BCNAPインスタンス901を介して、エンティティ管理APインスタンス904に、デバイス管理APインスタンス903への接続申請を送信する。
【0067】
(3)接続許可通知
エンティティ管理APインスタンス904は、(1)A社デバイス接続申請および(2)A社AP接続申請についてのエンティティ接続許可通知を、BCNAPインスタンス901を介して、エンティティ統合管理APインスタンス909へ送信する。
【0068】
エンティティ接続許可通知の発行に先立って、エンティティ管理APインスタンス904は、デバイス管理APインスタンス903およびデバイスAPインスタンス905の各々について、図10に示した素性確認要求を、エンティティ統合管理APインスタンス909に送信する。その結果、素性確認がされた場合、エンティティ管理APインスタンス904は、(1)A社デバイス接続申請および(2)A社AP接続申請についてのエンティティ接続許可通知をエンティティ統合管理APインスタンス909へ送信する。
【0069】
(4)ネットワーク接続許可設定
エンティティ統合管理APインスタンス909は、ネットワーク管理APインスタンス908に、接続許可設定を送信する。これにより、ネットワーク管理APインスタンス908は、ネットワークスイッチAPインスタンス群902を制御し、デバイスAPインスタンス905とデバイス管理APインスタンス903との通信を許可する。
【0070】
(5)データ収集
デバイスAPインスタンス905とデバイス管理APインスタンス903との通信が許可された後、デバイス管理APインスタンス903は、デバイスAPインスタンス905からのデータを受信して、業務DB1800に格納する。
【0071】
<デバイス操作>
図15は、デバイス操作例を示す説明図である。図15では、保守員がB社のユーザ端末401を有し、ユーザ端末401が保有するユーザ端末AP401を操作し、A社のデバイスAPインスタンス905の操作を行うまでの処理例を示す。
【0072】
なお、図12および図13に示した場合と同様、B社のエンティティ管理APインスタンス907のエンティティIDは、事前にBCNAPインスタンス901からアドレスコードとして取得され、照会仲介管理DB1700に登録されているものとする。また、B社のエンティティ管理APインスタンス907のエンティティIDおよびユーザ端末APインスタンス906のエンティティIDは、事前にBCNAPインスタンス901からアドレスコードとして取得され、B社のエンティティ管理APインスタンス907のエンティティID(照会先エンティティID)と関連付けて、照会仲介管理DB1700に登録されているものとする。また、B社のエンティティ管理DB1600には、B社のエンティティ管理APインスタンス907のエンティティIDおよびユーザ端末APインスタンス906のエンティティIDが登録されているものとする。
【0073】
(1)ユーザ端末401の操作
ユーザ端末401は、保守員の手動入力または無線通信(例:赤外線、Bluetooth(登録商標))で、ユーザ端末APインスタンス906のエンティティIDを入力する。
【0074】
(2)B社ユーザ端末接続申請
ユーザ端末401の操作によって、A社のデバイスAPインスタンス905は、A社のエンティティ管理APインスタンス904へ接続申請を送信する。接続申請は、ユーザ端末APインスタンス906のエンティティIDを含む。
【0075】
(3)B社ユーザ端末素性確認
A社のエンティティ管理APインスタンス904は、BCNAPインスタンス901を介して、エンティティ統合管理APインスタンス909へ素性確認要求を送信する。素性確認要求は、ユーザ端末APインスタンス906のエンティティIDを含む。
【0076】
(4)B社ユーザ端末素性確認要求
エンティティ統合管理APインスタンス909は、保有する照会仲介管理DB1700を検索して、照会先エンティティIDを取得し、B社のエンティティ管理APインスタンス907に、素性確認を送信する。素性確認は、取得した照会先エンティティIDを含む。
【0077】
(5)(4)の応答
エンティティ管理APインスタンス907は、(4)の素性確認に対する素性確認応答を、エンティティ統合管理APインスタンス909に送信する。エンティティ統合管理APインスタンス909は、その素性確認応答を、エンティティ管理APインスタンス904へ送信する。
【0078】
(6)接続許可通知
エンティティ管理APインスタンス904は、エンティティ統合管理APインスタンス909からの素性確認応答に基づき、接続許可通知を、エンティティ統合管理APインスタンス909へ送信する。
【0079】
(7)ネットワーク接続許可設定
エンティティ統合管理APインスタンス909は、(6)接続許可通知を受信すると、ネットワーク接続許可設定を、ネットワーク管理APインスタンス908に送信し、デバイスAPインスタンス905とユーザ端末APとの通信を許可するようネットワークスイッチAP群インスタンスを制御する。
【0080】
(8)操作(許可後)
接続許可後においては、ユーザ端末401は、ユーザ端末APインスタンス906により、A社のデバイスAPインスタンス905を操作する。
【0081】
(9)情報提供(許可後)
接続許可後においては、エンティティ管理APインスタンス904は、ユーザ端末APインスタンス906に情報を提供する。この情報は、エンティティ管理APインスタンス904が保持するエンティティ管理DB1600に登録されるデバイスAPインスタンス905のレコードである。
【0082】
以上、横断的に、各APプログラムを介在するマクロ的な動作の簡便に説明した。次に、DBのレコード定義を説明し、各APプログラムの動作を説明する。
【0083】
<DBのレコード定義>
図16は、エンティティ管理テーブルの一例を示す説明図である。エンティティ管理テーブル1610は、エンティティ管理DB1600に設けられる。エンティティ管理テーブル1610は、レコードのカラムとして、エンティティを一意に特定するエンティティID1611と、当該レコードが有効である有効期間の有効期間開始日時1612と、当該レコードが有効である有効期間の有効期間終了日時1613と、エンティティIDで特定されるエンティティの種別1614と、クライアント電子証明書1615と、を有する。種別1614は、デバイスの種類(センサ、アクチュエータ)の他、AP(エンティティ管理APなど)や、その他、サービスなども区別できるコードまたは文字列を保持する。有効期間開始日時1612、有効期間終了日時1613、種別1614およびクライアント電子証明書1615は、メタ情報(またはインベントリ情報)の一例である。
【0084】
図17は、照会仲介管理テーブルの一例を示す説明図である。照会仲介管理テーブル1710は、照会仲介管理DB1700に設けられる。照会仲介管理テーブル1710は、レコードのカラムとして、エンティティID1611と、照会先エンティティID1711と、を有する。照会先エンティティID1711は、照会先エンティティを一意に特定するエンティティID1611である。照会先エンティティとは、素性確認対象のエンティティを照会可能なエンティティである。
【0085】
図12の(2)承認応答では、加入要求したエンティティ管理APインスタンス904のアドレスコードが、エンティティID1611および照会先エンティティID1711の各々に登録されて、レコードが作成される。
【0086】
図13の(3)承認応答では、A社のデバイス管理APインスタンス903が取得したアドレスコードがエンティティID1611に、当該エンティティID1611に関連付けてエンティティ管理APインスタンス904のエンティティIDが照会先エンティティID1711に登録されて、レコードが作成される。
【0087】
図13の(6)承認応答では、A社のデバイスAPインスタンス905が取得したアドレスコードがエンティティID1611に、当該エンティティID1611に関連付けてエンティティ管理APインスタンス904のエンティティIDが照会先エンティティID1711に登録されて、レコードが作成される。
【0088】
図18は、業務DB1800内のテーブル群の一例を示す説明図である。業務DB1800は、デバイステーブル1801と、デバイスデータテーブル1802と、を有する。デバイステーブル1801は、レコードのカラムとして、管理対象エンティティID1810を有する。管理対象エンティティID1810は、管理対象エンティティを一意に特定するエンティティID1611である。管理対象エンティティとは、その業務DB1800を保持するサーバ装置201が管理するエンティティである。本例では、業務DB1800は、A社サイト102のサーバ装置112にのみ設けられているため、管理対象エンティティは、A社が管理するデバイス装置301、302である。
【0089】
デバイスデータテーブル1802は、レコードのカラムとして、管理対象エンティティID1810と、取得データ1820と、を有する。取得データ1820は、管理対象エンティティID1810で特定される管理対象エンティティが取得したデータである。
【0090】
図19は、アクセス制御管理テーブルの一例を示す説明図である。アクセス制御管理テーブル1910は、アクセス制御管理DB1900に設けられる。アクセス制御管理テーブル1910は、アクセス制御情報507であるレコードのカラムとして、ネットワークスイッチAPエンティティID1911と、送信側エンティティID1912と、受信側エンティティID1913と、を有する。
【0091】
ネットワークスイッチAPエンティティID1911は、ネットワークスイッチAPインスタンス群902内のネットワークスイッチAPインスタンスを一意に特定するエンティティID1611である。
【0092】
送信側エンティティID1912は、送信側エンティティを一意に特定するエンティティID1611である。送信側エンティティとは、送信元となるエンティティである。受信側エンティティID1913は、受信側エンティティを一意に特定するエンティティID1611である。受信側エンティティとは、宛先となるエンティティである。
【0093】
初期状態では、レコード1921のみがアクセス制御管理テーブル1910に登録されているものとする。レコード1921は、送信側エンティティID1912(xxx…x)で特定される既設のA社のデバイス装置301内のデバイスAPインスタンス905からネットワークスイッチAPエンティティID1911(aaa…a)で特定されるネットワークスイッチAPインスタンスを経由して、受信側エンティティID1913(ddd…d)で特定されるA社のデバイス管理APインスタンス903への通信経路を規定する。
【0094】
図14に示した作業がA社サイト102で行われる場合、レコード1922が追加される。レコード1922は、送信側エンティティID1912(yyy…y)で特定される新規のA社のデバイス装置302内のデバイスAPインスタンス905からネットワークスイッチAPエンティティID1911(aaa…a)で特定されるネットワークスイッチAPインスタンスを経由して、受信側エンティティID1913(ddd…d)で特定されるA社のデバイス管理APインスタンス903への通信経路を規定する。レコード1922の追加により、図14に示したように、A社のデバイスAPインスタンス905とA社のデバイス管理APインスタンス903との接続が許可される。
【0095】
図15に示した作業がA社サイト102とB社サイト103との間で行われる場合、レコード1923が追加される。レコード1923は、送信側エンティティID1912(bbb…b)で特定される新規のB社のユーザ端末401内のデバイスAPインスタンス905からネットワークスイッチAPエンティティID1911(aaa…a)で特定されるネットワークスイッチAPインスタンスを経由して、受信側エンティティID1913(yyy…y)で特定されるAA社のデバイス装置302内のデバイスAPインスタンス905への通信経路を規定する。レコード1923の追加により、図15に示したように、A社のデバイスAPインスタンス905とB社のユーザ端末401との接続が許可される。
【0096】
つぎに、上述したAPプログラムによる処理手順例について説明する。以下のAPプログラムによる処理では、APプログラムはプロセッサによって実行されるため、APプログラムの実行主体はプロセッサであるが、説明の便宜上、APプログラムを主語にして説明する。
【0097】
<エンティティ統合管理APインスタンス909によるエンティティ統合管理処理>
図20は、エンティティ統合管理APインスタンス909によるエンティティ統合管理処理手順例を示すフローチャートである。
【0098】
[ステップS2001]
エンティティ統合管理APインスタンス909は、素性確認要求の有無を判定する。エンティティ統合管理APインスタンス909は、素性確認要求があれば(ステップS2001:Yes)、ステップS2004に移行し、素性確認要求がなければ(ステップS2001:No)、ステップS2002に移行する。
【0099】
[ステップS2002]
エンティティ統合管理APインスタンス909は、承認応答受信の有無を判定し、承認応答受信があれば(ステップS2002:Yes)、ステップS2008に移行する。承認応答受信がなければ(ステップS2002:No)、ステップS2003に移行する。
【0100】
[ステップS2003]
エンティティ統合管理APインスタンス909は、接続許可通知受信の有無を判定する。接続許可通知受信があれば(ステップS2003:Yes)、ステップS2009に移行する。接続許可通知受信がなければ(ステップS2003:No)、処理が終了する。
【0101】
[ステップS2004]
エンティティ統合管理APインスタンス909は、素性確認するエンティティID1611を含んだデータを受信し、そのエンティティID1611で、照会仲介管理テーブルを検索し、ステップS2005に移行する。
【0102】
[ステップS2005]
エンティティ統合管理APインスタンス909は、ステップS2004の検索結果として登録の有無を判定する。登録があれば(ステップS2005:Yes)、ステップS2006を実行する。登録がなければ(ステップS2005:No)、ステップS2007に移行する。
【0103】
[ステップS2006]
エンティティ統合管理APインスタンス909は、照会先エンティティIDで特定されるエンティティ管理APインスタンスに素性確認を仲介し、その仲介結果を素性確認の問合せ元に応答する。これにより処理が終了する。
【0104】
[ステップS2007]
エンティティ統合管理APインスタンス909は、素性確認の問合せ元に、登録なしの応答をする。これにより処理が終了する。
【0105】
[ステップS2008]
エンティティ統合管理APインスタンス909は、承認されたエンティティID1611と、承認されたエンティティID1611を含んだデータと、を受信し、照会仲介管理テーブルに登録する。なお、仲介先の無い通知の場合、エンティティ統合管理APインスタンス909は、仲介先を、ブランクまたは通知されたエンティティIDと同じ値にして登録してもよい。この際、既に、登録済みであれば、エンティティ統合管理APインスタンス909は、レコードを更新する。これにより処理が終了する。
【0106】
[ステップS2009]
エンティティ統合管理APインスタンス909は、接続許可されたエンティティID間の通信を可能とする設定を、ネットワーク管理APインスタンス908へ送る。これにより処理が終了する。以上で、エンティティ統合管理APインスタンス909の処理を説明した。
【0107】
<エンティティ管理APインスタンス904,907によるエンティティ管理処理>
図21は、エンティティ管理APインスタンス904,907によるエンティティ管理処理手順例(前半)を示すフローチャートである。
【0108】
[ステップS2101]
エンティティ管理APインスタンス904,907は、加入要求受信の有無を判定する。加入要求受信があれば(ステップS2101:Yes)、ステップS2104に移行し、加入要求受信がなければ(ステップS2101:No)、ステップS2102に移行する。
【0109】
[ステップS2102]
エンティティ管理APインスタンス904,907は、素性確認受信の有無を判定し、素性確認受信があれば(ステップS2102:Yes)、ステップS2105に移行し、素性確認受信がなければ(ステップS2102:No)、ステップS2103に移行する。
【0110】
[ステップS2103]
エンティティ管理APインスタンス904,907は、加入申請の可否を判定し、加入申請が必要であれば(ステップS2103:Yes)、ステップS2106に移行し、加入申請が不要であれば(ステップS2103:No)、図22のステップS2201に移行する。ただし、加入申請は、新たに、エンティティ管理APインスタンス904,907自身をIoTシステム1に追加する時に発生する。
【0111】
[ステップS2104]
エンティティ管理APインスタンス904,907は、加入を求めるエンティティIDに対して、承認または非承認の入力を得て、ステップS2107に移行する。この承認または非承認の入力は、サーバ装置201のキーボード203などから手動でおこなっても、あらかじめ、承認予定のデータを用意しておいて、そのデータから判定するといった方法でも構わない。
【0112】
[ステップS2107]
エンティティ管理APインスタンス904,907は、ステップS2104の結果が承認であるか否かを判定し、承認であれば(ステップS2107:Yes)、ステップS2109に移行し、非承認であれば(ステップS2107:No)、ステップS2108に移行する。
【0113】
[ステップS2109]
エンティティ管理APインスタンス904,907は、加入を求めるエンティティIDをエンティティ管理テーブルに登録し、加入を求めるエンティティIDで特定されるエンティティに「承認」と応答する。これにより処理が終了する。
【0114】
[ステップS2108]
エンティティ管理APインスタンス904,907は、加入を求めるエンティティIDで特定されるエンティティに「非承認」と応答する。これにより処理が終了する。
【0115】
[ステップS2105]
エンティティ管理APインスタンス904,907は、素性確認するエンティティIDを、エンティティ管理テーブルから検索する。エンティティ管理APインスタンス904,907は、当該検索結果から得られる素性確認するエンティティIDの登録の有無を、問合せ元へ応答する。これにより処理が終了する。
【0116】
[ステップS2106]
エンティティ管理APインスタンス904,907は、BCNAPインスタンス901からアドレスコードを取得し、取得したアドレスコードをエンティティIDとして取得し、自身へ加入要求を送信し、承認応答を受信する。これにより処理が終了する。
【0117】
図22は、エンティティ管理APインスタンス904,907によるエンティティ管理処理手順例(後半)を示すフローチャートである。
【0118】
[ステップS2201]
エンティティ管理APインスタンス904,907は、接続申請受信の有無を判定して、接続申請受信があれば(ステップS2101:Yes)、ステップS2202に移行し、接続申請受信がなければ(ステップS2101:No)、終了する。
【0119】
[ステップS2202]
エンティティ管理APインスタンス904,907は、接続申請されたエンティティIDの素性確認を、エンティティ統合管理APインスタンス909へ行い、ステップS2203に移行する。
【0120】
[ステップS2203]
エンティティ管理APインスタンス904,907は、ステップS2202の素性確認結果において、接続申請されたエンティティIDの登録の有無を判定し、接続申請されたエンティティIDの登録があれば(ステップS2203:Yes)、ステップS2205に移行し、接続申請されたエンティティIDの登録がなければ(ステップS2203:No)、ステップS2204に移行する。
【0121】
[ステップS2205]
エンティティ管理APインスタンス904,907は、操作者などから接続許可の要否の入力を得て、ステップS2206に移行する。
【0122】
[ステップS2206]
エンティティ管理APインスタンス904,907は、接続許可要否の結果、接続許可が必要であれば(ステップS2206:Yes)、ステップS2207に移行し、接続許可が不要であれば(ステップS2206:No)、処理を終了する。
【0123】
[ステップS2204]
エンティティ管理APインスタンス904,907は、不許可を応答して、処理を終了する。以上で、エンティティ管理APインスタンス904,907の処理を説明した。
【0124】
<デバイス管理APインスタンス903によるエンティティ管理処理>
図23は、デバイス管理APインスタンス903によるデバイス管理処理手順例を示すフローチャートである。
【0125】
[ステップS2301]
デバイス管理APインスタンス903は、接続申請受信の有無を判定し、接続申請受信があれば(ステップS2301:Yes)、ステップS2304に移行し、接続申請受信がなければ(ステップS2301:No)、ステップS2302に移行する。
【0126】
[ステップS2302]
デバイス管理APインスタンス903は、加入申請要否の判定を行い、加入申請が必要であれば(ステップS2302:Yes)、ステップS2310に移行し、加入申請が必要でなければ(ステップS2302:No)、ステップS2303に移行する。加入申請要否の判定は、デバイス管理APインスタンス903をIoTシステム1へ追加する場合に発生する。
【0127】
[ステップS2303]
デバイス管理APインスタンス903は、デバイス装置300からのデータ受信の有無を判定し、データ受信があれば(ステップS2303:Yes)、ステップS2311に移行し、データ受信がなければ(ステップS2303:No)、処理を終了する。
【0128】
[ステップS2304]
デバイス管理APインスタンス903は、接続申請されたエンティティIDの素性確認を、エンティティ統合管理APインスタンス909へ行い、ステップS2305に移行する。
【0129】
[ステップS2305]
デバイス管理APインスタンス903は、ステップS2304の素性確認の結果、接続申請されたエンティティIDの登録があれば(ステップS2305:Yes)、ステップS2307に移行し、接続申請されたエンティティIDの登録がなければ(ステップS2305:No)、ステップS2306に移行する。
【0130】
[ステップS2307]
デバイス管理APインスタンス903は、接続許可の要否の入力を得て、ステップS2308に移行する。この接続許可の要否の入力は、手動による入力でもよく、あらかじめ接続許可を出すエンティティIDのリストデータを用意しておき、デバイス管理APインスタンス903がそのデータに基づき判定してもよい。
【0131】
[ステップS2306]
デバイス管理APインスタンス903は、不許可を応答して、ステップS2302に移行する。
【0132】
[ステップS2308]
デバイス管理APインスタンス903は、接続許可の要否の結果を判定して、接続許可が必要であれば(ステップS2308:Yes)、ステップS2309に移行し、接続許可不要であれば(ステップS2308:No)、ステップS2302に移行する。
【0133】
[ステップS2309]
デバイス管理APインスタンス903は、申請元とエンティティ統合管理APインスタンス909に接続許可通知を送り、ステップS2302に移行する。
【0134】
[ステップS2302]
デバイス管理APインスタンス903は、加入申請の要否を判定し、加入申請が必要であれば(ステップS2302:Yes)、ステップS2310に移行し、加入申請が不要であれば(ステップS2302:No)、ステップS2303に移行する。ステップS2302は、デバイス管理APインスタンス903を、IoTシステム1で追加するときに発生する。
【0135】
[ステップS2310]
デバイス管理APインスタンス903は、BCNAPインスタンス901からアドレスコードを取得し、取得したアドレスコードをエンティティIDとして、エンティティ管理APインスタンス904,907へ加入要求を送信し、エンティティ管理APインスタンス904,907から承認応答を受信して、ステップS2303に移行する。
【0136】
[ステップS2311]
デバイス管理APインスタンス903は、デバイス装置300からの受信データをデバイスデータテーブル1802へ登録する。これにより処理が終了する。以上で、デバイス管理APインスタンス903の処理を説明した。
【0137】
<デバイスAPインスタンス905によるデバイス処理>
図24は、デバイスAPインスタンス905によるデバイス処理手順例を示すフローチャートである。
【0138】
[ステップS2401]
デバイスAPインスタンス905は、加入申請の要否を判定し、加入申請が必要であれば(ステップS2401:Yes)、ステップS2403に移行し、加入申請が不要であれば(ステップS2401:No)、ステップS2402に移行する。
【0139】
[ステップS2403]
デバイスAPインスタンス905は、BCNAPインスタンス901からアドレスコードを取得し、取得したアドレスコードをエンティティIDとして、エンティティ管理APインスタンス904,907へ加入要求を送信し、エンティティ管理APインスタンス904,907から承認応答を受信して、ステップS2402に移行する。
【0140】
[ステップS2402]
デバイスAPインスタンス905は、接続申請の要否を判定して、接続申請が必要であれば(ステップS2402:Yes)、ステップS2404に移行して、接続申請が不要であれば(ステップS2402:No)、ステップS2405に移行する。接続申請の要否を判定は、手動入力により決める他に、タイマーなどの機能で、一定間間隔や定刻に、必要とする仕組みを用意しても差し支えない。
【0141】
[ステップS2404]
デバイスAPインスタンス905は、デバイス管理APインスタンス903との接続申請を、エンティティ管理APインスタンス904,907へ送り、ステップS2405に移行する。
【0142】
[ステップS2405]
デバイスAPインスタンス905は、接続許可かつデータ送信の要否判定を行い、接続許可かつデータ送信が必要であれば(ステップS2405:Yes)、ステップS2406に移行して、接続許可かつデータ送信が不要であれば(ステップS2405:No)、処理を終了する。接続許可かつデータ送信の要否判定については、ステップS2402に連動して、送信するデータがある場合、デバイスAPインスタンス905は、必要と判定してよい。
【0143】
[ステップS2406]
デバイスAPインスタンス905は、デバイス管理APインスタンス903にデータを送信し、処理を終了する。以上で、デバイスAPインスタンス905の処理を説明した。
【0144】
<ユーザ端末APインスタンス906による端末処理>
図25は、ユーザ端末APインスタンス906による端末処理手順例を示すフローチャートである。
【0145】
[ステップS2501]
ユーザ端末APインスタンス906は、加入申請の要否を判定し、加入申請が必要であれば(ステップS2501:Yes)、ステップS2503に移行し、加入申請が不要であれば(ステップS2501:No)、ステップS2502に移行する。
【0146】
[ステップS2502]
ユーザ端末APインスタンス906は、保守操作か否かの判定を行い、保守操作であれば(ステップS2502:Yes)、ステップS2504に移行し、保守操作でなければ(ステップS2502:No)、終了する。
【0147】
[ステップS2503]
ユーザ端末APインスタンス906は、BCNAPインスタンス901からアドレスコードを取得し、取得したアドレスコードをエンティティIDとして、エンティティ管理APインスタンス904,907に加入要求を送信し、エンティティ管理APインスタンス904,907から承認応答を受信し、ステップS2502に移行する。なお、ステップS2504で最初にアドレスコードが取得された場合、ユーザ端末APインスタンス906は、同一のアドレスコードを取得する。
【0148】
[ステップS2504]
ユーザ端末APインスタンス906は、BCNAPインスタンス901からアドレスコードを取得し、取得したアドレスコードをエンティティIDとして、保守対象のデバイスAPインスタンス905へ入力し、デバイス装置300が所属しているエンティティ管理APインスタンス904に接続許可を申請し、ステップS2505に移行する。なお、ステップS2503で最初にアドレスコードが取得された場合、ユーザ端末APインスタンス906は、同一のアドレスコードを取得する。
【0149】
[ステップS2505]
ユーザ端末APインスタンス906は、接続許可の判定し、接続許可があれば(ステップS2505:Yes)、ステップS2506に移行し、接続許可がなければ(ステップS2505:No)、処理を終了する。
【0150】
[ステップS2506]
ユーザ端末APインスタンス906は、当該デバイス装置へ操作を行い、処理を終了する。当該デバイス装置へ操作は、ユーザ端末APインスタンス906経由以外に、操作者が、該当デバイス装置を直接、操作することでもよい。以上で、ユーザ端末APインスタンス906の端末処理を説明した。
【0151】
<ネットワーク管理APインスタンス908による管理処理>
図26は、ネットワーク管理APインスタンス908による管理処理手順例を示すフローチャートである。
【0152】
[ステップS2601]
ネットワーク管理APインスタンス908は、接続許可通知受信の有無を判定し、接続許可通知受信があれば(ステップS2601:Yes)、ステップS2602に移行し、接続許可通知受信がなければ(ステップS2601:No)、終了する。
【0153】
[ステップS2602]
ネットワーク管理APインスタンス908は、アクセス制御管理テーブルを更新し、ステップS2909に移行する。
【0154】
[ステップS2603]
ネットワーク管理APインスタンス908は、ネットワークスイッチAPインスタンスへ設定情報を配布する。これにより処理が終了する。以上で、ネットワーク管理APインスタンス908の処理を説明した。
【0155】
<ネットワークスイッチAPインスタンスによる処理>
図27は、ネットワークスイッチAPインスタンスによる処理手順例を示すフローチャートである。
【0156】
[ステップS2701]
ネットワークスイッチAPインスタンスは、設定情報受信の有無を判定して、設定情報受信があれば(ステップS2701:Yes)、ステップS2702に移行し、設定情報受信がなければ(ステップS2701:No)、ステップS2703に移行する。
【0157】
[ステップS2702]
ネットワークスイッチAPインスタンスは、接続可否の状態を更新し、ステップS2703に移行する。
【0158】
[ステップS2703]
ネットワークスイッチAPインスタンスは、設定情報に基づく接続可否状態を維持する。これにより処理が終了する。以上で、ネットワークスイッチAPインスタンスの処理を説明した。
<BCNAPインスタンス901による処理>
図28は、BCNAPインスタンス901による処理手順例を示すフローチャートである。BCNAPインスタンス901は、OSS(Open Source Software)で普及しているインスタンスであり、図28では、本実施例に関わる処理のみを説明する。
【0159】
[ステップS2801]
BCNAPインスタンス901は、初期起動か否かの判定を行い、初期起動であれば(ステップS2801:Yes)、ステップS2805に移行し、初期起動でなければ(ステップS2801:No)、ステップS2802に移行する。
【0160】
[ステップS2802]
BCNAPインスタンス901は、アドレスコードの照会か否かの判定を行い、照会であれば(ステップS2802:Yes)、ステップS2806に移行し、照会でなければ(ステップS2802:No)、ステップS2803に移行する。
【0161】
[ステップS2803]
BCNAPインスタンス901は、データ送信要求の有無を判定し、データ送信要求があれば(ステップS2803:Yes)、ステップS2807に移行し、データ送信要求がなければ(ステップS2803:No)、ステップS2804に移行する。
【0162】
[ステップS2804]
BCNAPインスタンス901は、データ受信要求の有無の判定し、データ受信要求があれば(ステップS2804:Yes)、ステップS2808に移行し、データ受信要求がなければ(ステップS2804:No)、終了する。
【0163】
[ステップS2805]
BCNAPインスタンス901は、過去に重複の無いアドレスコードを生成し、保持し、ステップS2802に移行する。
【0164】
[ステップS2806]
BCNAPインスタンス901は、保持しているアドレスコードをアドレスコードの照会元に返し、ステップS2803に移行する。
【0165】
[ステップS2807]
BCNAPインスタンス901は、送信先のアドレスへデータを送信し、ステップS2804に移行する。
【0166】
[ステップS2808]
BCNAPインスタンス901は、受信したデータを取得する。これにより処理が終了する。以上で、BCNAPインスタンス901の処理を説明した。
【0167】
<サプライチェーン管理APインスタンス910の管理処理>
図29は、サプライチェーン管理APインスタンス910の管理処理手順例を示すフローチャートである。
【0168】
[ステップS2901]
サプライチェーン管理APインスタンス910は、初起起動か否か否かを判定し、初期起動であれば(ステップS2901:Yes)、ステップS2903に移行する。初期起動でなければ(ステップS2901:No)、ステップS2902に移行する。
【0169】
[ステップS2902]
サプライチェーン管理APインスタンス910は、加入要求の受信の有無を判定して、加入要求があれば(ステップS2902:Yes)、ステップS2904に移行する。加入要求の受信がなければ(ステップS2902:No)、処理を終了する。
【0170】
[ステップS2903]
サプライチェーン管理APインスタンス910は、BCNAPインスタンス901からアドレスコードを取得し、取得したアドレスコードを、自らのエンティティIDとして保持し、エンティティ統合管理APインスタンス909に承認応答(ID通知)して、ステップS2902に移行する。
【0171】
[ステップS2904]
サプライチェーン管理APインスタンス910は、ステップS2903の承認の可否の入力を取得して、ステップS2905に移行する。承認の可否の入力を取得する手段としては、キーボード203からの入力でもよく、または、予め承認する対象リストを主記憶装置209に格納しておく。対象リストは、エンティティIDのリストである。サプライチェーン管理APインスタンス910は、対象リストに基づいて承認することとしてもよい。具体的には、たとえば、サプライチェーン管理APインスタンス910は、加入要求に含まれているエンティティID(アドレスコード)が対象リスト内のいずれかのエンティティIDと一致すれば承認する。
【0172】
[ステップS2905]
サプライチェーン管理APインスタンス910は、承認と判定した場合(ステップS2904:Yes)、ステップS2906に移行する。非承認と判定した場合(ステップS2904:No)、ステップS2907に移行する。
【0173】
[ステップS2906]
サプライチェーン管理APインスタンス910は、加入要求の送信元とエンティティ統合管理APインスタンス909に承認応答し、処理を終了する。
【0174】
[ステップS2907]
サプライチェーン管理APインスタンス910は、加入要求の送信元に拒否を応答する。これにより処理が終了する。以上で、サプライチェーン管理APインスタンス910の処理を説明した。これで、各APインスタンスの処理を説明した。
【0175】
このように、IoTシステム1は、デバイス装置301,302と、ユーザ端末401と、サーバ装置111~113と、それらを接続して相互データ通信並びにデータ通信ネットワーク107との接続を提供するネットワークスイッチ装置500と、を有する。
【0176】
また、サーバ装置111は、ネットワークスイッチ装置500を介して、IoTシステム1の構成要素、すなわちエンティティの一部またはすべてに重複の無いアドレスコードを割り当てて相互のデータ通信を提供するBCNAPプログラムと、BCNAPプログラムにより割り当てられるアドレスコードを、エンティティIDとして使用し、アドレスコードが割り当てられたエンティティのメタ情報(インベントリ情報)と関連付けるレコードを保持するエンティティ管理データベース1600と、を有する。
【0177】
これにより、製品ベンダは、エンティティごとに、BCNAPインスタンス901で生成されるブロックチェーンネットワークに参加させ、ブロックチェーンネットワーク上で割り当てられる固有のアドレスコードを得て、そのアドレスコードを、エンティティの識別IDとして採用し、A社およびB社が備えるエンティティ管理APインスタンス904、907より、エンティティを管理する。ここで、デバイス装置301、302のみをエンティティとして扱うのでなく、アプリケーションやサービスといったブログラム上のインスタンスも、一律、エンティティとして扱うことで、リソース軽減を図ることができる。
【0178】
また、IoTシステム1は、通信が必要な企業グループごとに、ブロックチェーンネットワークを構築し、ブロックチェーンネットワークに参加しているエンティティ間のみの通信を提供してもよい。本例では、A社およびB社で1つの企業グループとしてブロックチェーンネットワークを構築したが、たとえば、B社、C社、D社で別のブロックチェーンネットワークを構築してもよい。
【0179】
なお、ブロックチェーンネットワークは、参加申請に対して、管理者または管理アプリケーションによる承認で重複のない固有のアドレスコードを発行し、固有のアドレスコードに基づいて、エンティティ間のデータ通信と、スマートコンストラクト機能(遠隔からのAP実行機能)によるサービス提供と、を可能にする。
【0180】
また、サーバ装置111は、エンティティ統合管理APインスタンス909および照会仲介管理テーブル1710を有する。サーバ装置111は、照会仲介管理テーブル1710を参照して、エンティティIDから、インベントリ情報またはメタ情報を保持していているIoTエンティティ管理アプリケーションプログラムの照会先エンティティIDを特定し、特定した照会先エンティティIDに関連付けられたエンティティ管理APインスタンス904、907に問合せることにより、インベントリ情報またはメタ情報を得るように動作し、インベントリ情報またはメタ情報の一元管理を提供する。
【0181】
エンティティ統合管理APインスタンス909は、素性確認(メタ情報の照会)の要求のあったエンティティのエンティティIDに基づき、スマートコンストラクト機能を介して、エンティティの情報を保持する企業のエンティティ管理APインスタンス904へ問合せを発行し、エンティティのメタ情報を取得し、要求元へ返送する。これにより、エンティティ統合管理APインスタンス909は、ワンストップの一元管理をIoTシステム1に提供する際、扱うすべてのエンティティのメタ情報を保持する必要がなく、IoTシステム1として、リソースの使用量を軽減することができる。
【0182】
以上のことから、IoTシステム1における膨大なエンティティの一元管理において、使用リソースの削減を図ることができる。エンティティ間の通信において、エンティティIDをアドレスとして通信できるようになり、枯渇が懸念されるIPアドレスの使用数の削減も図ることができる。
【0183】
なお、本発明は前述した実施例に限定されるものではなく、添付した特許請求の範囲の趣旨内における様々な変形例及び同等の構成が含まれる。たとえば、前述した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明したすべての構成を備えるものに本発明は限定されない。また、ある実施例の構成の一部を他の実施例の構成に置き換えてもよい。また、ある実施例の構成に他の実施例の構成を加えてもよい。また、各実施例の構成の一部について、他の構成の追加、削除、または置換をしてもよい。
【0184】
また、前述した各構成、機能、処理部、処理手段等は、それらの一部又は全部を、たとえば集積回路で設計する等により、ハードウェアで実現してもよく、プロセッサがそれぞれの機能を実現するインスタンスを解釈し実行することにより、ソフトウェアで実現してもよい。
【0185】
各機能を実現するインスタンス、テーブル、ファイル等の情報は、メモリ、ハードディスク、SSD(Solid State Drive)等の記憶装置、又は、IC(Integrated Circuit)カード、SDカード、DVD(Digital Versatile Disc)の記録媒体に格納することができる。
【0186】
また、制御線や情報線は説明上必要と考えられるものを示しており、実装上必要なすべての制御線や情報線を示しているとは限らない。実際には、ほとんどすべての構成が相互に接続されていると考えてよい。
【符号の説明】
【0187】
101 管理サイト
102 A社サイト
103 B社サイト
107 データ通信ネットワーク
108 通信キャリア網
111~113 サーバ装置
301,302 デバイス装置(管理対象デバイス)
401 ユーザ端末
500 ネットワークスイッチ装置
901 BCNAPインスタンス(ブロックチェーンネットワーク実現機能)
902 ネットワークスイッチAPインスタンス群(ネットワークスイッチ制御機能)
903 デバイス管理APインスタンス(デバイス管理機能)
904,907 エンティティ管理APインスタンス(エンティティ管理機能)
905 デバイスAPインスタンス(デバイス制御機能)
906 ユーザ端末APインスタンス(端末制御機能)
908 ネットワーク管理APインスタンス(ネットワーク管理機能)
909 エンティティ統合管理APインスタンス(エンティティ統合管理機能)
910 サプライチェーン管理APインスタンス(サプライチェーン管理機能)
1600 エンティティ管理DB
1610 エンティティ管理テーブル
1611 エンティティID
1700 照会仲介管理DB
1710 照会仲介管理テーブル
1711 照会先エンティティID
1800 業務DB
1801 デバイステーブル
1802 デバイスデータテーブル
1900 アクセス制御管理DB
1910 アクセス制御管理テーブル
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23
図24
図25
図26
図27
図28
図29