Skip to main content
QUICK REVIEW

[論文レビュー] PlaTIBART: a Platform for Transactive IoT Blockchain Applications with Repeatable Testing

Michael A. Walker, Abhishek Dubey|arXiv (Cornell University)|Sep 27, 2017
IoT and Edge/Fog Computing参考文献 8被引用数 8
ひとこと要約

PlaTIBART は、ドメイン固有言語(DSL)を用いてプライベートブロックチェーンネットワークを定義し、システム的なネットワーク管理ツールを提供するプラットフォームであり、アクター設計パターンと組み合わせることで、トランザクティブIoTブロックチェーンアプリケーションの開発、デプロイ、繰り返し可能なテストを可能にする。故障耐性は観察者ベースの回復メカニズムにより強化され、IoT-ブロックチェーンシステムのスケーラブルで再現可能なテストが実現され、ネットワークサイズに比例した性能スケーリングと高いテスト実行の一貫性を示している。

ABSTRACT

With the advent of blockchain-enabled IoT applications, there is an increased need for related software patterns, middleware concepts, and testing practices to ensure adequate quality and productivity. IoT and blockchain each provide different design goals, concepts, and practices that must be integrated, including the distributed actor model and fault tolerance from IoT and transactive information integrity over untrustworthy sources from blockchain. Both IoT and blockchain are emerging technologies and both lack codified patterns and practices for development of applications when combined. This paper describes PlaTIBART, which is a platform for transactive IoT blockchain applications with repeatable testing that combines the Actor pattern (which is a commonly used model of computation in IoT) together with a custom Domain Specific Language (DSL) and test network management tools. We show how PlaTIBART has been applied to develop, test, and analyze fault-tolerant IoT blockchain applications.

研究の動機と目的

  • 耐障害性があり、信頼性の高いトランザクティブIoTブロックチェーンアプリケーション(ITBA)を開発するための標準化されたパターンやツールの不足に対処すること。
  • IoT-ブロックチェーンシステムのためのプライベートブロックチェーンテストネットワークのデプロイおよび管理を体系的かつ繰り返し可能な方法で提供すること。
  • 機密性のためのブロックチェーン外通信や物理世界との相互作用といった、IoT固有の要件をブロックチェーンアプリケーション開発に統合すること。
  • 観察者パターンに基づく回復と自動ネットワーク管理を通じて、ブロックチェーンクライアントおよびテスト環境の故障耐性を向上させること。
  • Ethereumクライアントにおける構成エラーおよび文書化されていない挙動のリスクを、構造的で再現可能なデプロイによって低減すること。

提案手法

  • プラットフォームは、分散型IoTコンponentsをモデル化するためにアクター設計パターンを用い、並列実行および故障耐性を実現する。
  • ブロックチェーンネットワーク構成(chainId、gasLimit、ノードトポロジーなど)を指定するためのカスタムドメイン固有言語(DSL)を定義する。
  • テストネットワーク管理ツールは、DSLを用いてサイズの異なるネットワークを再現可能かつ動的にデプロイおよび管理する。
  • 故障耐性は、クライアント障害(例:応答のないgethインスタンス)を監視・回復する観察者設計パターンを用いて実装される。
  • 機密データのためのブロックチェーン外通信と、整合性を保つためのブロックチェーン上でのログ記録をサポートする。
  • 合成ワークロードを用いて、ネットワークサイズの増加に伴うスケーラビリティとテストネットワークにおける一貫性を測定することで、プラットフォームを評価する。

実験結果

リサーチクエスチョン

  • RQ1IoT-ブロックチェーンアプリケーションにおけるプライベートブロックチェーンネットワークのデプロイおよびテストを、繰り返し可能で体系的なアプローチで確立するにはどうすればよいか?
  • RQ2プラットフォームのDSLおよびネットワーク管理システムが、テストネットワーク実行における一貫性と予測可能性をどの程度保証するか?
  • RQ3プラットフォームの故障耐性メカニズムは、標準的なブロックチェーンクライアントデプロイと比較して、どれほど耐障害性を向上させるか?
  • RQ4ネットワーク規模の増大に伴うプラットフォームの性能特性は何か?また、線形にスケーリングするか?
  • RQ5Ethereumの文書化されていない振る舞いやクライアント動作、スマートコントラクト言語の欠陥が、ITBAの開発およびテストにどのように影響を及えるか?

主な発見

  • PlaTIBART は、DSLで定義された構成を用いて、プライベートブロックチェーンテストネットワークの再現可能で一貫性の高いデプロイを可能にし、複数回のテスト実行においても高い一貫性を示した。
  • 平均処理時間はネットワークサイズの増加に比例して線形にスケーリングし、標準偏差が0.065未満であったため、性能が予測可能であることが示された。
  • ネットワーク停止操作では一貫性のない挙動が観察されたが、他のすべての操作は高い信頼性を示した。
  • 観察者設計パターンに基づく故障耐性メカニズムにより、応答のないgethインスタンスなどのクライアント障害を効果的に検出し、回復できた。
  • 構造的で自動化されたデプロイを実装することで、Ethereumの文書化されていない挙動や構成脆弱性に起因するリスクを低減できた。
  • Ethereumの管理APIの制限やSolidityの制限(例:浮動小数点数のサポート欠如)は、ブロックチェーン外処理および注意深い設計により同定され、是正された。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。