jepsen.net.proto
Protocols for network manipulation. High-level functions live in jepsen.net.
Net
protocol
members
drop!
(drop! net test src dest)
Drop traffic from src to dest.
fast!
(fast! net test)
Removes packet loss and delays.
flaky!
(flaky! net test)
Introduces randomized packet loss
heal!
(heal! net test)
End all traffic drops and restores network to fast operation.
shape!
(shape! net test nodes behavior)
Shapes network behavior, i.e. packet delay, loss, corruption, duplication, reordering, and rate for the given nodes.
slow!
(slow! net test)
(slow! net test opts)
Delays network packets with options:
{:mean ; (in ms)
:variance ; (in ms)
:distribution} ; (e.g. :normal)
PartitionAll
protocol
This optional protocol provides support for making multiple network changes in a single call. If you don’t support this protocol, we’ll use drop! instead.
members
drop-all!
(drop-all! net test grudge)
Takes a grudge: a map of nodes to collections of nodes they should drop messages from, and makes the appropriate changes to the network.