p2p: add network simulation framework (#14982)
This commit introduces a network simulation framework which can be used to run simulated networks of devp2p nodes. The intention is to use this for testing protocols, performing benchmarks and visualising emergent network behaviour.
Showing
- cmd/p2psim/main.go 414 additions, 0 deletionscmd/p2psim/main.go
- node/api.go 41 additions, 1 deletionnode/api.go
- node/config.go 7 additions, 0 deletionsnode/config.go
- node/node.go 15 additions, 4 deletionsnode/node.go
- p2p/dial.go 20 additions, 3 deletionsp2p/dial.go
- p2p/dial_test.go 1 addition, 1 deletionp2p/dial_test.go
- p2p/discover/node.go 40 additions, 0 deletionsp2p/discover/node.go
- p2p/discover/node_test.go 30 additions, 0 deletionsp2p/discover/node_test.go
- p2p/message.go 66 additions, 0 deletionsp2p/message.go
- p2p/peer.go 41 additions, 1 deletionp2p/peer.go
- p2p/server.go 48 additions, 8 deletionsp2p/server.go
- p2p/server_test.go 1 addition, 1 deletionp2p/server_test.go
- p2p/simulations/README.md 181 additions, 0 deletionsp2p/simulations/README.md
- p2p/simulations/adapters/docker.go 182 additions, 0 deletionsp2p/simulations/adapters/docker.go
- p2p/simulations/adapters/exec.go 504 additions, 0 deletionsp2p/simulations/adapters/exec.go
- p2p/simulations/adapters/inproc.go 314 additions, 0 deletionsp2p/simulations/adapters/inproc.go
- p2p/simulations/adapters/types.go 215 additions, 0 deletionsp2p/simulations/adapters/types.go
- p2p/simulations/events.go 108 additions, 0 deletionsp2p/simulations/events.go
- p2p/simulations/examples/README.md 39 additions, 0 deletionsp2p/simulations/examples/README.md
- p2p/simulations/examples/ping-pong.go 184 additions, 0 deletionsp2p/simulations/examples/ping-pong.go
Loading
Please register or sign in to comment