Currently, tests::fixture::RaftRouter offers some useful test utilities for simulating and observing raft clusters. Its isolate_node(target) method could take down RPC requests sent to or from target, making the node isolated on the application layer.
But real-world network problems will not only occur on the application layer. For example, a switcher connecting to some of your nodes, which is on the link layer, may fail and left your nodes unreachable, making network connections to them fail.
To simulate such situations, the Router should be enhanced.
Currently,
tests::fixture::RaftRouter
offers some useful test utilities for simulating and observing raft clusters. Itsisolate_node(target)
method could take down RPC requests sent to or fromtarget
, making the node isolated on the application layer.But real-world network problems will not only occur on the application layer. For example, a switcher connecting to some of your nodes, which is on the link layer, may fail and left your nodes unreachable, making network connections to them fail. To simulate such situations, the Router should be enhanced.