..
2026-09-27 21:02:18 -05:00
2026-09-27 20:39:37 -05:00
2026-09-27 23:03:17 -05:00
2026-09-27 22:46:24 -05:00
MP2 Distributed Group Membership
Files
peer.py- membership daemonscripts/cmd.sh- start/kill/control VMsscripts/view.sh- tmux membership dashboardscripts/pretty_membership.py- dashboard formatter
Running a node
Set MACHINE_INDEX to the VM's index, then run:
MACHINE_INDEX=1 python3 peer.py
Starting the demo
Start the dashboard. tmux is required:
./scripts/view.sh
From another terminal, start the VMs:
./scripts/cmd.sh start 1
./scripts/cmd.sh start 2 3 4 5
./scripts/cmd.sh start 6 7 8 9 10
Commands
The following commands are available in the peer prompt:
list_mem
list_self
leave
display_suspects
switch suspect
switch nosuspect
display_protocol
set_drop_rate <percent>
Demo/testing helpers
Run these from the MP2 directory:
./scripts/cmd.sh kill 4 8
./scripts/cmd.sh start 4 8
./scripts/cmd.sh cmd all "switch suspect"
./scripts/cmd.sh cmd all "set_drop_rate 10"
./scripts/cmd.sh status
./scripts/cmd.sh log
Introducer
VM1 / 172.22.156.3
Notes
- Gossip is default mode.
- Artificial drops are applied at receivers.
- Rejoining processes receive a new timestamp in their node ID.