push
This commit is contained in:
commit
1d167420c3
89 changed files with 10707 additions and 0 deletions
76
misc/run-schannel-netns
Executable file
76
misc/run-schannel-netns
Executable file
|
|
@ -0,0 +1,76 @@
|
|||
#!/bin/bash
|
||||
|
||||
# Connects nodes in a network resembling an s-channel feynmann diagram.
|
||||
|
||||
# 1 5
|
||||
# \ /
|
||||
# 3--4
|
||||
# / \
|
||||
# 2 6
|
||||
|
||||
# Bandwidth constraints are applied to 4<->5 and 4<->6.
|
||||
# The idea is to make sure that bottlenecks on one link don't affect the other.
|
||||
|
||||
ip netns add node1
|
||||
ip netns add node2
|
||||
ip netns add node3
|
||||
ip netns add node4
|
||||
ip netns add node5
|
||||
ip netns add node6
|
||||
|
||||
ip link add veth13 type veth peer name veth31
|
||||
ip link set veth13 netns node1 up
|
||||
ip link set veth31 netns node3 up
|
||||
|
||||
ip link add veth23 type veth peer name veth32
|
||||
ip link set veth23 netns node2 up
|
||||
ip link set veth32 netns node3 up
|
||||
|
||||
ip link add veth34 type veth peer name veth43
|
||||
ip link set veth34 netns node3 up
|
||||
ip link set veth43 netns node4 up
|
||||
|
||||
ip link add veth45 type veth peer name veth54
|
||||
ip link set veth45 netns node4 up
|
||||
ip link set veth54 netns node5 up
|
||||
|
||||
ip link add veth46 type veth peer name veth64
|
||||
ip link set veth46 netns node4 up
|
||||
ip link set veth64 netns node6 up
|
||||
|
||||
ip netns exec node4 tc qdisc add dev veth45 root tbf rate 100mbit burst 8192 latency 1ms
|
||||
ip netns exec node5 tc qdisc add dev veth54 root tbf rate 100mbit burst 8192 latency 1ms
|
||||
|
||||
ip netns exec node4 tc qdisc add dev veth46 root tbf rate 10mbit burst 8192 latency 1ms
|
||||
ip netns exec node6 tc qdisc add dev veth64 root tbf rate 10mbit burst 8192 latency 1ms
|
||||
|
||||
ip netns exec node1 ip link set lo up
|
||||
ip netns exec node2 ip link set lo up
|
||||
ip netns exec node3 ip link set lo up
|
||||
ip netns exec node4 ip link set lo up
|
||||
ip netns exec node5 ip link set lo up
|
||||
ip netns exec node6 ip link set lo up
|
||||
|
||||
echo '{AdminListen: "none"}' | ip netns exec node1 env PPROFLISTEN=localhost:6060 ./yggdrasil --useconf &> /dev/null &
|
||||
echo '{AdminListen: "none"}' | ip netns exec node2 env PPROFLISTEN=localhost:6060 ./yggdrasil --useconf &> /dev/null &
|
||||
echo '{AdminListen: "none"}' | ip netns exec node3 env PPROFLISTEN=localhost:6060 ./yggdrasil --useconf &> /dev/null &
|
||||
echo '{AdminListen: "none"}' | ip netns exec node4 env PPROFLISTEN=localhost:6060 ./yggdrasil --useconf &> /dev/null &
|
||||
echo '{AdminListen: "none"}' | ip netns exec node5 env PPROFLISTEN=localhost:6060 ./yggdrasil --useconf &> /dev/null &
|
||||
echo '{AdminListen: "none"}' | ip netns exec node6 env PPROFLISTEN=localhost:6060 ./yggdrasil --useconf &> /dev/null &
|
||||
|
||||
echo "Started, to continue you should (possibly w/ sudo):"
|
||||
echo "kill" $(jobs -p)
|
||||
wait
|
||||
|
||||
ip netns delete node1
|
||||
ip netns delete node2
|
||||
ip netns delete node3
|
||||
ip netns delete node4
|
||||
ip netns delete node5
|
||||
ip netns delete node6
|
||||
|
||||
ip link delete veth13
|
||||
ip link delete veth23
|
||||
ip link delete veth34
|
||||
ip link delete veth45
|
||||
ip link delete veth46
|
||||
33
misc/run-twolink-test
Executable file
33
misc/run-twolink-test
Executable file
|
|
@ -0,0 +1,33 @@
|
|||
#!/bin/bash
|
||||
|
||||
# Connects nodes in two namespaces by two links with different bandwidth (10mbit and 100mbit)
|
||||
|
||||
ip netns add node1
|
||||
ip netns add node2
|
||||
|
||||
ip link add veth11 type veth peer name veth21
|
||||
ip link set veth11 netns node1 up
|
||||
ip link set veth21 netns node2 up
|
||||
|
||||
ip link add veth12 type veth peer name veth22
|
||||
ip link set veth12 netns node1 up
|
||||
ip link set veth22 netns node2 up
|
||||
|
||||
ip netns exec node1 tc qdisc add dev veth11 root tbf rate 10mbit burst 8192 latency 1ms
|
||||
ip netns exec node2 tc qdisc add dev veth21 root tbf rate 10mbit burst 8192 latency 1ms
|
||||
|
||||
ip netns exec node1 tc qdisc add dev veth12 root tbf rate 100mbit burst 8192 latency 1ms
|
||||
ip netns exec node2 tc qdisc add dev veth22 root tbf rate 100mbit burst 8192 latency 1ms
|
||||
|
||||
echo '{AdminListen: "unix://node1.sock"}' | ip netns exec node1 env PPROFLISTEN=localhost:6060 ./yggdrasil -logging "info,warn,error,debug" -useconf &> node1.log &
|
||||
echo '{AdminListen: "unix://node2.sock"}' | ip netns exec node2 env PPROFLISTEN=localhost:6060 ./yggdrasil -logging "info,warn,error,debug" -useconf &> node2.log &
|
||||
|
||||
echo "Started, to continue you should (possibly w/ sudo):"
|
||||
echo "kill" $(jobs -p)
|
||||
wait
|
||||
|
||||
ip netns delete node1
|
||||
ip netns delete node2
|
||||
|
||||
ip link delete veth11
|
||||
ip link delete veth12
|
||||
Loading…
Add table
Add a link
Reference in a new issue