Introduction
Related work
The edge computing in cyber-physical system
Research and development status of blockchain and cyber-physical system
Extension schemes to improve the performance of blockchain system
Data-chains partitioning algorithm
Trust model of nodes
Data-chains partitioning algorithm based on community structure clustering
-
Step 1. Set a threshold decided by the communication tightness between the nodes in the CPS, and divide the communication relationship between the nodes into two types. One is the more close communication relationship, whose edge weight between nodes is greater than the threshold; The other is a group whose edge weights between nodes are less than the threshold or no edges exist. Then, divide nodes with high communication tightness into the same group according to the classification results;
-
Step 2. Collect the results and check whether all nodes are connected with the edge whose weight is greater than the threshold value. Otherwise, adjust the threshold value and repeat the first step until all nodes in the CPS are connected and the edge weight between two nodes is greater than the threshold value.
-
Step 3. Remove the edges whose weight value is less than the threshold, and take the greater ones as the research object. Then, divide the nodes into different communities according to the degree of the nodes;
-
Step 4. During the community partition, we start to set the number of nodes in a community as K=3. After that, the number of nodes will be increased one in the community by turns. Record the kinds of community partition and the number of communities on each turn (each node should be included in at least one community), until the value of K makes it impossible for all nodes in the network to divide a new community, then we think it that all communities have been listed and the partition of communities is complete.
-
Step 5. Whether all nodes in the system are included in the partition result of each community, and the overlapping (common) nodes are pointed out.
Experimental analysis
Experimental setup
Grouping method | Combination of nodes | Interchain node | count | cross | |
---|---|---|---|---|---|
Ungrouped | all nodes | Null | 2141348 | 0 | |
Random grouping | dividing into 3 groups No.1 | ‘32’,‘33’,‘34’,‘35’,‘36’,‘37’,‘16’,‘17’,‘18’,‘19’,‘20’, ‘21’,‘22’,‘23’,‘26’,‘39’;‘01’,‘02’,‘03’,‘04’,‘05’,‘06’, ‘07’,‘08’,‘09’,‘10’,‘11’,‘12’,‘13’,‘14’,‘15’;‘24’,‘25’, ‘27’,‘28’,‘29’,‘30’,‘31’,‘38’,‘40’, ‘41’,‘42’; | Null | 834634 | 231041 |
dividing into 3 groups No.2 | ‘32’,‘33’,‘16’,‘23’,‘01’,‘02’,‘03’;‘34’,‘35’,‘36’,‘37’, ‘07’,‘08’,‘09’,‘10’,‘11’,‘12’,‘13’,‘28’,‘29’,‘30’,‘31’, ‘38’,‘39’,‘40’,‘41’,‘17’,‘20’,‘18’,‘14’,‘15’,‘24’,‘25’; ‘19’,‘21’,‘04’,‘05’,‘06’,‘26’,‘27’,‘42’,‘22’; | Null | 1399677 | 944376 | |
dividing into 4 groups No.1 | ‘30’,‘29’,‘31’,‘24’,‘34’,‘33’,‘37’,‘35’,‘32’,‘36’;‘08’, ‘14’,‘13’,‘39’,‘06’,‘03’,‘02’,‘09’,‘10’,‘05’,‘07’,‘15’; ‘17’,‘18’,‘16’,‘20’,‘21’,‘23’,‘22’,‘19’,‘28’,‘25’,‘27’, ‘26’;‘43’,‘42’,‘41’,‘39’,‘38’,‘26’,‘40’,‘01’,‘12’,‘11’, ‘04’; | Null | 697724 | 275052 | |
dividing into 4 groups No.2 | ‘30’,‘29’,‘31’,‘35’,‘32’,‘36’,‘39’,‘38’,‘26’,‘40’,‘01’, ‘18’,‘16’;‘08’,‘14’,‘13’,‘39’,‘06’,‘03’,‘02’,‘09’,‘10’, ‘05’,‘07’,‘15’,‘24’,‘34’,‘33’,‘37’;‘17’,‘20’,‘21’,‘25’, ‘27’,‘26’;‘42’,‘41’,‘12’,‘11’,‘04’,‘23’,‘22’,‘19’,‘28’; | Null | 958928 | 731827 | |
dividing into 5 groups No.1 | ‘20’,‘21’,‘19’,‘17’,‘16’,‘23’,‘18’,‘22’;‘08’,‘09’,‘02’, ‘13’,‘15’,‘06’,‘04’,‘12’,‘11’,‘07’,‘01’,‘14’,‘05’,‘10’, ‘03’;‘38’,‘42’,‘41’,‘40’;‘29’,‘24’,‘28’,‘25’,‘31’,‘27’, ‘30’;‘37’,‘35’,‘33’,‘32’,‘36’,‘34’,‘39’,‘26’; | Null | 510002 | 126346 | |
dividing into 5 groups No.2 | ‘30’,‘39’,‘34’,‘33’,‘37’,‘36’,‘13’;‘08’,‘14’,‘39’,‘06’, ‘03’,‘02’,‘07’,‘15’,‘29’,‘41’,‘26’,‘40’;‘17’,‘20’,‘21’, ‘23’,‘22’,‘27’,‘26’;‘42’,‘31’,‘24’,‘38’,‘01’,‘12’,‘11’, ‘04’,‘05’,‘35’,‘32’,‘18’,‘16’;‘09’,‘10’,‘19’,‘28’,‘25’; | Null | 835004 | 678367 | |
Grouping by edge strength (3 groups) | ‘32’,‘33’,‘34’,‘35’,‘36’,‘37’;‘16’,‘17’,‘18’,‘19’,‘20’, ‘21’,‘22’,‘23’;‘01’,‘02’,‘03’,‘04’,‘05’,‘06’,‘07’,‘08’, ‘09’,‘10’,‘11’,‘12’,‘13’,‘14’,‘15’,‘24’,‘25’,‘26’,‘27’, ‘28’,‘29’,‘30’,‘31’,‘38’,‘39’,‘40’,‘41’,‘42’; | Null | 1068800 | 8798 | |
Grouping by Community Structure(5 groups) | ‘20’,‘21’,‘19’,‘17’,‘16’,‘23’,‘18’,‘22’;‘08’,‘09’,‘02’, ‘13’,‘15’,‘06’,‘04’,‘12’,‘11’,‘07’,‘01’,‘14’,‘39’,‘05’, ‘10’,‘03’;‘38’,‘42’,‘39’,‘41’,‘40’,‘26’;‘29’,‘24’,‘28’, ‘25’,‘31’,‘27’,‘30’,‘26’;‘37’,‘35’,‘33’,‘32’,‘36’,‘34’; | ‘26’,‘31’, ‘36’,‘37’ | 509960 | 84444 |
Experiment result
> Partition Method | Storage Space Occupancy | Concurrent Performance |
---|---|---|
> no use grouping | 1 | process in turn |
> randomly grouping | random fluctuation | allow concurrent |
> grouping by edge strength | 0.499 | allow concurrent |
> grouping by community structure | 0.238 | allow concurrent |
> |