SlideShare a Scribd company logo
Sharing Blockchain
Performance Knowledge for
Edge Service Development
Filip Rydzi
Independent, Slovakia
Hong-Linh Truong,
Department of Computer Science
http://rdsea.github.io
Content
▪ Motivation
▪ GIAU (knowledge for blockchaIn Applications and Utilities)
▪ Experiments
▪ Conclusion and future works
5th IEEE CIC 2019, Los Angeles, USA
2
1/10/2020
Motivation
Edge service development:
complex software topologies,
multiple types of components,
interactions, and protocols
Blockchain application
development:
▪ different blockchain
systems
▪ complex interactions
▪ depending on the
application, knowledge
requirement can be very
intensive
5th IEEE CIC 2019, Los Angeles, USA
3
blockchain
ops
1/10/2020
Motivation
▪ Very challenging in mastering knowledge of both edge
services and blockchain systems
▪ Key concerns in our work for collaborations among
developers
▪ impacts of blockchain deployment on performance of edge services
▪ impacts of structures of edge services on performance of blockchain
operations
▪ selection of blockchain systems for coupling with edge services
5th IEEE CIC 2019, Los Angeles, USA
4
1/10/2020
Example, e.g. report obstacles in the road
▪ choosing blockchain
technologies and
operation
performance (e.g., if
just use blockchain-
as-a-service)
▪ managing backend
deployment of
blockchain systems
5th IEEE CIC 2019, Los Angeles, USA
5
1/10/2020
Contributions
▪ Which blockchain features/software artefact
should be selected and deployed for which
topologies?
▪ Contribution: extensible, sharing knowledge
services about benchmarks, performance
monitoring, and testing for developer
collaboration
5th IEEE CIC 2019, Los Angeles, USA
6
1/10/2020
Types of information
▪ Blockchain information
▪ operations (e.g., mining, creating transaction, …)
▪ blockchain deployment (blockchain nodes, locations and resources)
▪ Edge services
▪ IoT/mobile components
▪ edge services
▪ cloud services
▪ Metrics
▪ time, resources, availability, failure, etc.
▪ Dependencies must be captured!
5th IEEE CIC 2019, Los Angeles, USA
7
1/10/2020
GIAU Architecture
5th IEEE CIC 2019, Los Angeles, USA
8
1/10/2020
Infrastructures
External
software
artefact
repositoriesEdge
deployment
Metrics
Application
Linking
blockchain
knowledge
with service
&
infrastructure
knowledge
5th IEEE CIC 2019, Los Angeles, USA
9
1/10/2020
Capturing deployment patterns
▪ Deployment patterns
▪ important knowledge when a developer also must develop and
operate the blockchain systems
▪ optimization of operations given deployment of blockchain systems
▪ Our consideration
▪ deployment of blockchain is represented in graphs (similar to
edge/cloud deployment model)
▪ capture it through deployment description
5th IEEE CIC 2019, Los Angeles, USA
10
1/10/2020
Representing blockchain software
artefacts
▪ We support two levels:
▪ blockchain nodes and operations
▪ Blockchain nodes at the blockchain system level
▪ represent as a whole: an executable blockchain software artefact
that take a role as a node/component in the blockchain systems
▪ e.g., a Hyperledger Fabric peer node, ETH full/light/archive nodes
▪ Blockchain operations at the application level
▪ mapped to typical operations in blockchain applications
▪ operations creating, signing and submitting a transaction
5th IEEE CIC 2019, Los Angeles, USA
11
1/10/2020
Examples
5th IEEE CIC 2019, Los Angeles, USA
12
{
name: 'hyperledger-fabric peer',
implementation: 'hyperledger',
feature: 'creator',
executionEnvironment: 'docker',
imageTag: 'hyperledger/fabric-peer',
configuration: {
organization {
peer_name: "peer1",
domain: "org1.example.com"
},
environment_variables: {
CORE_PEER_ID: "peer1",
CORE_PEER_TLS_ENABLED: false,
CORE_PEER_GOSSIP_USELEADERELECTION: true,
CORE_PEER_GOSSIP_ORGLEADER: false,
...
}
}
}
Node level information Operation level information
1/10/2020
Modeling experiments information
▪ We manage shared information in terms of experiment
management
▪ allow capturing different runtime information of the same
deployment structure under different benchmarks/tests
▪ there are a lot of contextual information associated with blockchain
and performance
▪ An experiment includes
▪ topology of blockchain-based edge deployment
▪ benchmark/monitoring information
5th IEEE CIC 2019, Los Angeles, USA
13
1/10/2020
Incorporating benchmark and
monitoring data
▪ Key issue for the success of any sharing knowledge service
▪ Our approach is generic:
▪ allow different benchmark and monitoring information to be stored
▪ It is not our goal to say “standard” or “best information” but
provide useful information
▪ Combine both document database and graph database to
store information
▪ documents: software artefact and infrastructure information from
the benchmarks
▪ graphs: deployment pattern
5th IEEE CIC 2019, Los Angeles, USA
14
1/10/2020
Searching knowledge
▪ Apply basic search
▪ input: a deployment pattern
(derived from the application’s
topology)
▪ output: a recommendation to
the developer about a suitable
deployment
▪ Support TOSCA
▪ we derive node types from
existing TOSCA Cloudify node
types
5th IEEE CIC 2019, Los Angeles, USA
15
1/10/2020
From provided deployment pattern we
create interaction pairs and use them
to search possibilities (not optimal but
work)
Prototype
▪ Microservices
architecture
▪ Typescript/NodeJS
▪ MongoDB/Neo4J
for knowledge
store
5th IEEE CIC 2019, Los Angeles, USA
16
https://github.com/rdsea/blockchainbenmarkservice/tree/master/giau
1/10/2020
Experiments
▪ Challenging: difficult to find a real performance for blockain
based edge services
→ we have also developed our own benchmark (not in this talk)
https://www.researchgate.net/publication/333388734_Benchmarking_Blockchain_Interaction
s_in_Mobile_Edge_Cloud_Software_Systems
▪ Use both realistic data and emulated data
▪ real data: based on 324 benchmarks we run with Hyperledger and
Ethereum using cloud resources
▪ emulated data: 250 diverse deployment patterns, generated
randomly by following a normal distribution
5th IEEE CIC 2019, Los Angeles, USA
17
1/10/2020
Example of searching knowledge
node_templates:
edge_dev1:
type: giau.nodes.rsu
relationships:
- target: iot1
type: giau.relationships.nodes_network
edge_node:
type: giau.nodes.edge
relationships:
- target: edge_dev2
type: giau.relationships.nodes_network
- target: edge_dev1
type: giau.relationships.nodes_network
- target: iot3
type: giau.relationships.nodes_network
……
5th IEEE CIC 2019, Los Angeles, USA
18
Input
Output visualized by Cloudify
1/10/2020
Input & output search example
https://github.com/rdsea/blockchainbenmarkservice/tree/master/
giau/tests/data/examples
5th IEEE CIC 2019, Los Angeles, USA
19
1/10/2020
Performance Evaluation
5th IEEE CIC 2019, Los Angeles, USA
20
Configuration: Intel Core i7-6820HQ CPU, 16GB RAM memory,
Ubuntu 18.04 during the testing
Data: the most complex
emulated deployment
patterns is composed of 196
nodes (99 thing node types,
43 edge dev, 41 edge node,
12 cloud).
1/10/2020
REST APIs
5th IEEE CIC 2019, Los Angeles, USA
21
Enable benchmark
data ingestion
pipelines e.g.,
Logstash, Apache Nifi,
and Python/JavaScript
programs
1/10/2020
Example of ingesting benchmark
results
https://github.com/rdsea/blockchainbenmarkservice/tree/master/
experiments/results/benchmarks_results
https://github.com/rdsea/blockchainbenmarkservice/tree/master/
utilities/results_parser
https://github.com/rdsea/blockchainbenmarkservice/blob/master
/utilities/results_parser/allResultsToGIAU.sh
5th IEEE CIC 2019, Los Angeles, USA
22
1/10/2020
Example of using APIs for search
https://github.com/rdsea/blockchainbenmarkservice/tree/master/
giau/src/examples
5th IEEE CIC 2019, Los Angeles, USA
23
1/10/2020
Conclusions and future work
▪ Sharing knowledge about blockchain and edge deployment
▪ crucial for blockchain-based edge development
▪ GIAU is a generic microservice framework
▪ generic knowledge models and experiment management, extensible
APIs for ingestion and search
▪ Future work
▪ prototype improvement, search features & integration with DevOps
▪ Prototype is under continuous development:
▪ https://github.com/rdsea/blockchainbenmarkservice/tree/master/giau
5th IEEE CIC 2019, Los Angeles, USA
24
1/10/2020
Thanks!
Hong-Linh Truong
Department of Computer Science
rdsea.github.io
5th IEEE CIC 2019, Los Angeles, USA
25
1/10/2020
We are hiring PhD students/Postdocs! Pls. contact me if you are
interested!

More Related Content

Similar to Sharing Blockchain Performance Knowledge for Edge Service Development (20)

PPTX
(R)evolution of the computing continuum - A few challenges
Frederic Desprez
 
PPTX
Akraino and Edge Computing
Liz Warner
 
PPTX
Unit-I.pptxsgsggggggggggggggZcvzvzfvzgghszg
rajukolluri
 
PPTX
Unit-I.pptxmbmbmbmbm,b,hkggjfgjfc gvbn mm
rajukolluri
 
PDF
Edge computing PPT slides and it's benifits and drawbacks
1GV20CS058Shivaraj
 
PDF
Edge Computing Standardisation and Initiatives
Axel Rennoch
 
PPTX
Shopify - CNCF March 2025 Meetup - Presentation - 26-03-25.pptx
Michael Foster
 
PDF
Walking through the fog (computing) - Keynote talk at Italian Networking Work...
FBK CREATE-NET
 
PDF
Kubernetes Native Infrastructure and CoreOS Operator Framework for 5G Edge Cl...
Hidetsugu Sugiyama
 
PDF
Connectivity is here (5 g, swarm,...). now, let's build interplanetary apps! (1)
Samy Fodil
 
PDF
Edge computing and its role in architecting IoT
Kiran Kumar Pattanaik
 
PPTX
Service Mesh in the Real World [Raleigh NC Meetup]
Solo.io
 
PPTX
Blockchain in the enterprise
Jesus Rodriguez
 
PDF
GaruaGeo: Global Scale Data Aggregation in Hybrid Edge and Cloud Computing En...
Otávio Carvalho
 
PDF
SFSCON23 - Andrea Alfonsi - Kubernetes for IoT
South Tyrol Free Software Conference
 
PDF
Testing Challenges and Approaches in Edge Computing
Axel Rennoch
 
PPTX
Edge Computing Architecture using GPUs and Kubernetes
VirtualTech Japan Inc.
 
PPTX
IoT and Cloud services interactions
AGILE IoT
 
PDF
[WSO2Con Asia 2018] Architecting for Container-native Environments
WSO2
 
PPTX
IWCI21: Distributed Ledgers for Distributed Edge
eichhorl
 
(R)evolution of the computing continuum - A few challenges
Frederic Desprez
 
Akraino and Edge Computing
Liz Warner
 
Unit-I.pptxsgsggggggggggggggZcvzvzfvzgghszg
rajukolluri
 
Unit-I.pptxmbmbmbmbm,b,hkggjfgjfc gvbn mm
rajukolluri
 
Edge computing PPT slides and it's benifits and drawbacks
1GV20CS058Shivaraj
 
Edge Computing Standardisation and Initiatives
Axel Rennoch
 
Shopify - CNCF March 2025 Meetup - Presentation - 26-03-25.pptx
Michael Foster
 
Walking through the fog (computing) - Keynote talk at Italian Networking Work...
FBK CREATE-NET
 
Kubernetes Native Infrastructure and CoreOS Operator Framework for 5G Edge Cl...
Hidetsugu Sugiyama
 
Connectivity is here (5 g, swarm,...). now, let's build interplanetary apps! (1)
Samy Fodil
 
Edge computing and its role in architecting IoT
Kiran Kumar Pattanaik
 
Service Mesh in the Real World [Raleigh NC Meetup]
Solo.io
 
Blockchain in the enterprise
Jesus Rodriguez
 
GaruaGeo: Global Scale Data Aggregation in Hybrid Edge and Cloud Computing En...
Otávio Carvalho
 
SFSCON23 - Andrea Alfonsi - Kubernetes for IoT
South Tyrol Free Software Conference
 
Testing Challenges and Approaches in Edge Computing
Axel Rennoch
 
Edge Computing Architecture using GPUs and Kubernetes
VirtualTech Japan Inc.
 
IoT and Cloud services interactions
AGILE IoT
 
[WSO2Con Asia 2018] Architecting for Container-native Environments
WSO2
 
IWCI21: Distributed Ledgers for Distributed Edge
eichhorl
 

More from Hong-Linh Truong (20)

PDF
Measuring, Quantifying, & Predicting the Cost-Accuracy Tradeoff
Hong-Linh Truong
 
PDF
DevOps for Dynamic Interoperability of IoT, Edge and Cloud Systems
Hong-Linh Truong
 
PDF
Dynamic IoT data, protocol, and middleware interoperability with resource sli...
Hong-Linh Truong
 
PDF
Integrated Analytics for IIoT Predictive Maintenance using IoT Big Data Cloud...
Hong-Linh Truong
 
PDF
Modeling and Provisioning IoT Cloud Systems for Testing Uncertainties
Hong-Linh Truong
 
PDF
Characterizing Incidents in Cloud-based IoT Data Analytics
Hong-Linh Truong
 
PDF
Enabling Edge Analytics of IoT Data: The Case of LoRaWAN
Hong-Linh Truong
 
PDF
Analytics of Performance and Data Quality for Mobile Edge Cloud Applications
Hong-Linh Truong
 
PDF
Testing Uncertainty of Cyber-Physical Systems in IoT Cloud Infrastructures: C...
Hong-Linh Truong
 
PDF
Deep Context-Awareness: Context Coupling and New Types of Context Information...
Hong-Linh Truong
 
PDF
Managing and Testing Ensembles of IoT, Network functions, and Clouds
Hong-Linh Truong
 
PDF
On Supporting Contract-aware IoT Dataspace Services
Hong-Linh Truong
 
PDF
Towards the Realization of Multi-dimensional Elasticity for Distributed Cloud...
Hong-Linh Truong
 
PDF
On Engineering Analytics of Elastic IoT Cloud Systems
Hong-Linh Truong
 
PDF
HINC – Harmonizing Diverse Resource Information Across IoT, Network Functions...
Hong-Linh Truong
 
PDF
SINC – An Information-Centric Approach for End-to-End IoT Cloud Resource Prov...
Hong-Linh Truong
 
PDF
Governing Elastic IoT Cloud Systems under Uncertainties
Hong-Linh Truong
 
PDF
SmartSociety – A Platform for Collaborative People-Machine Computation
Hong-Linh Truong
 
PDF
On Developing and Operating of Data Elasticity Management Process
Hong-Linh Truong
 
PDF
ICSOC 2015 Panel: Service Engineering Analytics in the IoT Cloud Systems
Hong-Linh Truong
 
Measuring, Quantifying, & Predicting the Cost-Accuracy Tradeoff
Hong-Linh Truong
 
DevOps for Dynamic Interoperability of IoT, Edge and Cloud Systems
Hong-Linh Truong
 
Dynamic IoT data, protocol, and middleware interoperability with resource sli...
Hong-Linh Truong
 
Integrated Analytics for IIoT Predictive Maintenance using IoT Big Data Cloud...
Hong-Linh Truong
 
Modeling and Provisioning IoT Cloud Systems for Testing Uncertainties
Hong-Linh Truong
 
Characterizing Incidents in Cloud-based IoT Data Analytics
Hong-Linh Truong
 
Enabling Edge Analytics of IoT Data: The Case of LoRaWAN
Hong-Linh Truong
 
Analytics of Performance and Data Quality for Mobile Edge Cloud Applications
Hong-Linh Truong
 
Testing Uncertainty of Cyber-Physical Systems in IoT Cloud Infrastructures: C...
Hong-Linh Truong
 
Deep Context-Awareness: Context Coupling and New Types of Context Information...
Hong-Linh Truong
 
Managing and Testing Ensembles of IoT, Network functions, and Clouds
Hong-Linh Truong
 
On Supporting Contract-aware IoT Dataspace Services
Hong-Linh Truong
 
Towards the Realization of Multi-dimensional Elasticity for Distributed Cloud...
Hong-Linh Truong
 
On Engineering Analytics of Elastic IoT Cloud Systems
Hong-Linh Truong
 
HINC – Harmonizing Diverse Resource Information Across IoT, Network Functions...
Hong-Linh Truong
 
SINC – An Information-Centric Approach for End-to-End IoT Cloud Resource Prov...
Hong-Linh Truong
 
Governing Elastic IoT Cloud Systems under Uncertainties
Hong-Linh Truong
 
SmartSociety – A Platform for Collaborative People-Machine Computation
Hong-Linh Truong
 
On Developing and Operating of Data Elasticity Management Process
Hong-Linh Truong
 
ICSOC 2015 Panel: Service Engineering Analytics in the IoT Cloud Systems
Hong-Linh Truong
 
Ad

Recently uploaded (20)

PPTX
SPINA BIFIDA: NURSING MANAGEMENT .pptx
PRADEEP ABOTHU
 
PDF
0725.WHITEPAPER-UNIQUEWAYSOFPROTOTYPINGANDUXNOW.pdf
Thomas GIRARD, MA, CDP
 
PDF
Women's Health: Essential Tips for Every Stage.pdf
Iftikhar Ahmed
 
PPTX
How to Create a PDF Report in Odoo 18 - Odoo Slides
Celine George
 
PPSX
HEALTH ASSESSMENT (Community Health Nursing) - GNM 1st Year
Priyanshu Anand
 
PDF
The History of Phone Numbers in Stoke Newington by Billy Thomas
History of Stoke Newington
 
PDF
CEREBRAL PALSY: NURSING MANAGEMENT .pdf
PRADEEP ABOTHU
 
PPTX
How to Set Maximum Difference Odoo 18 POS
Celine George
 
PDF
Dimensions of Societal Planning in Commonism
StefanMz
 
PPTX
ASRB NET 2023 PREVIOUS YEAR QUESTION PAPER GENETICS AND PLANT BREEDING BY SAT...
Krashi Coaching
 
PPTX
MENINGITIS: NURSING MANAGEMENT, BACTERIAL MENINGITIS, VIRAL MENINGITIS.pptx
PRADEEP ABOTHU
 
PDF
ARAL-Orientation_Morning-Session_Day-11.pdf
JoelVilloso1
 
PDF
Biological Bilingual Glossary Hindi and English Medium
World of Wisdom
 
PDF
LAW OF CONTRACT ( 5 YEAR LLB & UNITARY LLB)- MODULE-3 - LEARN THROUGH PICTURE
APARNA T SHAIL KUMAR
 
PPT
Talk on Critical Theory, Part II, Philosophy of Social Sciences
Soraj Hongladarom
 
PPTX
I AM MALALA The Girl Who Stood Up for Education and was Shot by the Taliban...
Beena E S
 
PDF
The Different Types of Non-Experimental Research
Thelma Villaflores
 
PDF
Reconstruct, Restore, Reimagine: New Perspectives on Stoke Newington’s Histor...
History of Stoke Newington
 
PDF
Chapter-V-DED-Entrepreneurship: Institutions Facilitating Entrepreneurship
Dayanand Huded
 
PDF
community health nursing question paper 2.pdf
Prince kumar
 
SPINA BIFIDA: NURSING MANAGEMENT .pptx
PRADEEP ABOTHU
 
0725.WHITEPAPER-UNIQUEWAYSOFPROTOTYPINGANDUXNOW.pdf
Thomas GIRARD, MA, CDP
 
Women's Health: Essential Tips for Every Stage.pdf
Iftikhar Ahmed
 
How to Create a PDF Report in Odoo 18 - Odoo Slides
Celine George
 
HEALTH ASSESSMENT (Community Health Nursing) - GNM 1st Year
Priyanshu Anand
 
The History of Phone Numbers in Stoke Newington by Billy Thomas
History of Stoke Newington
 
CEREBRAL PALSY: NURSING MANAGEMENT .pdf
PRADEEP ABOTHU
 
How to Set Maximum Difference Odoo 18 POS
Celine George
 
Dimensions of Societal Planning in Commonism
StefanMz
 
ASRB NET 2023 PREVIOUS YEAR QUESTION PAPER GENETICS AND PLANT BREEDING BY SAT...
Krashi Coaching
 
MENINGITIS: NURSING MANAGEMENT, BACTERIAL MENINGITIS, VIRAL MENINGITIS.pptx
PRADEEP ABOTHU
 
ARAL-Orientation_Morning-Session_Day-11.pdf
JoelVilloso1
 
Biological Bilingual Glossary Hindi and English Medium
World of Wisdom
 
LAW OF CONTRACT ( 5 YEAR LLB & UNITARY LLB)- MODULE-3 - LEARN THROUGH PICTURE
APARNA T SHAIL KUMAR
 
Talk on Critical Theory, Part II, Philosophy of Social Sciences
Soraj Hongladarom
 
I AM MALALA The Girl Who Stood Up for Education and was Shot by the Taliban...
Beena E S
 
The Different Types of Non-Experimental Research
Thelma Villaflores
 
Reconstruct, Restore, Reimagine: New Perspectives on Stoke Newington’s Histor...
History of Stoke Newington
 
Chapter-V-DED-Entrepreneurship: Institutions Facilitating Entrepreneurship
Dayanand Huded
 
community health nursing question paper 2.pdf
Prince kumar
 
Ad

Sharing Blockchain Performance Knowledge for Edge Service Development

  • 1. Sharing Blockchain Performance Knowledge for Edge Service Development Filip Rydzi Independent, Slovakia Hong-Linh Truong, Department of Computer Science http://rdsea.github.io
  • 2. Content ▪ Motivation ▪ GIAU (knowledge for blockchaIn Applications and Utilities) ▪ Experiments ▪ Conclusion and future works 5th IEEE CIC 2019, Los Angeles, USA 2 1/10/2020
  • 3. Motivation Edge service development: complex software topologies, multiple types of components, interactions, and protocols Blockchain application development: ▪ different blockchain systems ▪ complex interactions ▪ depending on the application, knowledge requirement can be very intensive 5th IEEE CIC 2019, Los Angeles, USA 3 blockchain ops 1/10/2020
  • 4. Motivation ▪ Very challenging in mastering knowledge of both edge services and blockchain systems ▪ Key concerns in our work for collaborations among developers ▪ impacts of blockchain deployment on performance of edge services ▪ impacts of structures of edge services on performance of blockchain operations ▪ selection of blockchain systems for coupling with edge services 5th IEEE CIC 2019, Los Angeles, USA 4 1/10/2020
  • 5. Example, e.g. report obstacles in the road ▪ choosing blockchain technologies and operation performance (e.g., if just use blockchain- as-a-service) ▪ managing backend deployment of blockchain systems 5th IEEE CIC 2019, Los Angeles, USA 5 1/10/2020
  • 6. Contributions ▪ Which blockchain features/software artefact should be selected and deployed for which topologies? ▪ Contribution: extensible, sharing knowledge services about benchmarks, performance monitoring, and testing for developer collaboration 5th IEEE CIC 2019, Los Angeles, USA 6 1/10/2020
  • 7. Types of information ▪ Blockchain information ▪ operations (e.g., mining, creating transaction, …) ▪ blockchain deployment (blockchain nodes, locations and resources) ▪ Edge services ▪ IoT/mobile components ▪ edge services ▪ cloud services ▪ Metrics ▪ time, resources, availability, failure, etc. ▪ Dependencies must be captured! 5th IEEE CIC 2019, Los Angeles, USA 7 1/10/2020
  • 8. GIAU Architecture 5th IEEE CIC 2019, Los Angeles, USA 8 1/10/2020 Infrastructures External software artefact repositoriesEdge deployment Metrics Application
  • 10. Capturing deployment patterns ▪ Deployment patterns ▪ important knowledge when a developer also must develop and operate the blockchain systems ▪ optimization of operations given deployment of blockchain systems ▪ Our consideration ▪ deployment of blockchain is represented in graphs (similar to edge/cloud deployment model) ▪ capture it through deployment description 5th IEEE CIC 2019, Los Angeles, USA 10 1/10/2020
  • 11. Representing blockchain software artefacts ▪ We support two levels: ▪ blockchain nodes and operations ▪ Blockchain nodes at the blockchain system level ▪ represent as a whole: an executable blockchain software artefact that take a role as a node/component in the blockchain systems ▪ e.g., a Hyperledger Fabric peer node, ETH full/light/archive nodes ▪ Blockchain operations at the application level ▪ mapped to typical operations in blockchain applications ▪ operations creating, signing and submitting a transaction 5th IEEE CIC 2019, Los Angeles, USA 11 1/10/2020
  • 12. Examples 5th IEEE CIC 2019, Los Angeles, USA 12 { name: 'hyperledger-fabric peer', implementation: 'hyperledger', feature: 'creator', executionEnvironment: 'docker', imageTag: 'hyperledger/fabric-peer', configuration: { organization { peer_name: "peer1", domain: "org1.example.com" }, environment_variables: { CORE_PEER_ID: "peer1", CORE_PEER_TLS_ENABLED: false, CORE_PEER_GOSSIP_USELEADERELECTION: true, CORE_PEER_GOSSIP_ORGLEADER: false, ... } } } Node level information Operation level information 1/10/2020
  • 13. Modeling experiments information ▪ We manage shared information in terms of experiment management ▪ allow capturing different runtime information of the same deployment structure under different benchmarks/tests ▪ there are a lot of contextual information associated with blockchain and performance ▪ An experiment includes ▪ topology of blockchain-based edge deployment ▪ benchmark/monitoring information 5th IEEE CIC 2019, Los Angeles, USA 13 1/10/2020
  • 14. Incorporating benchmark and monitoring data ▪ Key issue for the success of any sharing knowledge service ▪ Our approach is generic: ▪ allow different benchmark and monitoring information to be stored ▪ It is not our goal to say “standard” or “best information” but provide useful information ▪ Combine both document database and graph database to store information ▪ documents: software artefact and infrastructure information from the benchmarks ▪ graphs: deployment pattern 5th IEEE CIC 2019, Los Angeles, USA 14 1/10/2020
  • 15. Searching knowledge ▪ Apply basic search ▪ input: a deployment pattern (derived from the application’s topology) ▪ output: a recommendation to the developer about a suitable deployment ▪ Support TOSCA ▪ we derive node types from existing TOSCA Cloudify node types 5th IEEE CIC 2019, Los Angeles, USA 15 1/10/2020 From provided deployment pattern we create interaction pairs and use them to search possibilities (not optimal but work)
  • 16. Prototype ▪ Microservices architecture ▪ Typescript/NodeJS ▪ MongoDB/Neo4J for knowledge store 5th IEEE CIC 2019, Los Angeles, USA 16 https://github.com/rdsea/blockchainbenmarkservice/tree/master/giau 1/10/2020
  • 17. Experiments ▪ Challenging: difficult to find a real performance for blockain based edge services → we have also developed our own benchmark (not in this talk) https://www.researchgate.net/publication/333388734_Benchmarking_Blockchain_Interaction s_in_Mobile_Edge_Cloud_Software_Systems ▪ Use both realistic data and emulated data ▪ real data: based on 324 benchmarks we run with Hyperledger and Ethereum using cloud resources ▪ emulated data: 250 diverse deployment patterns, generated randomly by following a normal distribution 5th IEEE CIC 2019, Los Angeles, USA 17 1/10/2020
  • 18. Example of searching knowledge node_templates: edge_dev1: type: giau.nodes.rsu relationships: - target: iot1 type: giau.relationships.nodes_network edge_node: type: giau.nodes.edge relationships: - target: edge_dev2 type: giau.relationships.nodes_network - target: edge_dev1 type: giau.relationships.nodes_network - target: iot3 type: giau.relationships.nodes_network …… 5th IEEE CIC 2019, Los Angeles, USA 18 Input Output visualized by Cloudify 1/10/2020
  • 19. Input & output search example https://github.com/rdsea/blockchainbenmarkservice/tree/master/ giau/tests/data/examples 5th IEEE CIC 2019, Los Angeles, USA 19 1/10/2020
  • 20. Performance Evaluation 5th IEEE CIC 2019, Los Angeles, USA 20 Configuration: Intel Core i7-6820HQ CPU, 16GB RAM memory, Ubuntu 18.04 during the testing Data: the most complex emulated deployment patterns is composed of 196 nodes (99 thing node types, 43 edge dev, 41 edge node, 12 cloud). 1/10/2020
  • 21. REST APIs 5th IEEE CIC 2019, Los Angeles, USA 21 Enable benchmark data ingestion pipelines e.g., Logstash, Apache Nifi, and Python/JavaScript programs 1/10/2020
  • 22. Example of ingesting benchmark results https://github.com/rdsea/blockchainbenmarkservice/tree/master/ experiments/results/benchmarks_results https://github.com/rdsea/blockchainbenmarkservice/tree/master/ utilities/results_parser https://github.com/rdsea/blockchainbenmarkservice/blob/master /utilities/results_parser/allResultsToGIAU.sh 5th IEEE CIC 2019, Los Angeles, USA 22 1/10/2020
  • 23. Example of using APIs for search https://github.com/rdsea/blockchainbenmarkservice/tree/master/ giau/src/examples 5th IEEE CIC 2019, Los Angeles, USA 23 1/10/2020
  • 24. Conclusions and future work ▪ Sharing knowledge about blockchain and edge deployment ▪ crucial for blockchain-based edge development ▪ GIAU is a generic microservice framework ▪ generic knowledge models and experiment management, extensible APIs for ingestion and search ▪ Future work ▪ prototype improvement, search features & integration with DevOps ▪ Prototype is under continuous development: ▪ https://github.com/rdsea/blockchainbenmarkservice/tree/master/giau 5th IEEE CIC 2019, Los Angeles, USA 24 1/10/2020
  • 25. Thanks! Hong-Linh Truong Department of Computer Science rdsea.github.io 5th IEEE CIC 2019, Los Angeles, USA 25 1/10/2020 We are hiring PhD students/Postdocs! Pls. contact me if you are interested!