Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/j-w-yun/ecs265
https://github.com/j-w-yun/ecs265
Last synced: about 7 hours ago
JSON representation
- Host: GitHub
- URL: https://github.com/j-w-yun/ecs265
- Owner: j-w-yun
- Created: 2021-10-21T00:47:39.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2021-12-11T01:43:19.000Z (almost 3 years ago)
- Last Synced: 2024-03-17T23:10:52.947Z (8 months ago)
- Language: Python
- Size: 75.2 KB
- Stars: 2
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# PBFT Dashboard
1, Download the code.2, Open the terminal/command line and navigate to the folder of the code.
3, Install specific libraries:
```
pip3 uninstall "python-socketio[client]"
pip3 install "python-socketio[client]"==5.3.0
```4, Set target size of network in `global_const.py`:
```
NODE_TOTAL_NUMBER = 4
```5, Run replicas:
In the path of the folder of the code, open terminal/command-line interfaces with the number of NODE_TOTAL_NUMBER.
In the first interface, run "python replica.py 0", as the number 0 indicates it is running node 0.
In the second interface, run "python replica.py 1", as the number 1 indicates it is running node 1.
Etc.```
python replica.py 0
...
python replica.py 3
```6, PBFT Dashboard:
Go to https://jaewan-yun.com/project/pbft press the ">" button at the center of the bottom to send the client message. See the visualization result in the top left corner.7, Rules and View change:
Use the "Add Rule" button to add rules. Select a feature in the first block and phase in the second block, put the node number you want to directly affect in the "Source" blank, and "Target" is the node receiving the message from the directly affected node. "Value" can be used to give a value of latency.
Press "Apply Rules" after entering rules.
When needed view change, press the "Trigger View Change" button. The visualization part will show the change of the primary node.8, To change the total number of replicas, change the target size of the network in step 4 and then run a specific number of replicas in step 5.