Open dtaht opened 6 years ago
so even filtering out these many routes on the couch server goes boom... let's try compiling the xnor branch!
root@gw1:~# ip route default via 172.23.252.1 dev eth0 proto static unreachable 50.197.142.144/29 proto babel metric 4294967295 onlink unreachable 172.20.2.5 proto babel metric 4294967295 onlink unreachable 172.20.2.95 proto babel metric 4294967295 onlink unreachable 172.20.4.0/23 proto babel metric 4294967295 onlink unreachable 172.20.142.6 proto babel metric 4294967295 onlink unreachable 172.20.142.12 proto babel metric 4294967295 onlink unreachable 172.20.142.187 proto babel metric 4294967295 onlink unreachable 172.20.142.242 proto babel metric 4294967295 onlink unreachable 172.20.187.0/24 proto babel metric 4294967295 onlink unreachable 172.20.240.0/23 proto babel metric 4294967295 onlink unreachable 172.20.240.1 proto babel metric 4294967295 onlink unreachable 172.20.241.1 proto babel metric 4294967295 onlink unreachable 172.20.242.0/23 proto babel metric 4294967295 onlink unreachable 172.21.0.0/22 proto babel metric 4294967295 onlink unreachable 172.21.2.5 proto babel metric 4294967295 onlink unreachable 172.21.2.6 proto babel metric 4294967295 onlink unreachable 172.21.142.186 proto babel metric 4294967295 onlink unreachable 172.21.186.0/24 proto babel metric 4294967295 onlink 172.22.0.0/24 dev br-lan proto kernel scope link src 172.22.0.2 unreachable 172.22.0.0/16 proto babel metric 4294967295 onlink 172.22.0.172 via 172.22.0.172 dev br-lan proto babel onlink unreachable 172.22.140.0/22 proto babel metric 4294967295 onlink 172.22.220.0/22 via 172.22.0.91 dev br-lan proto babel onlink unreachable 172.23.99.3 proto babel metric 4294967295 onlink unreachable 172.23.128.0/22 proto babel metric 4294967295 onlink unreachable 172.23.142.2 proto babel metric 4294967295 onlink unreachable 172.23.142.3 proto babel metric 4294967295 onlink unreachable 172.23.142.4 proto babel metric 4294967295 onlink unreachable 172.23.142.6 proto babel metric 4294967295 onlink unreachable 172.23.142.10 proto babel metric 4294967295 onlink 172.23.252.0/24 dev eth0 proto kernel scope link src 172.23.252.2
4096 routes on mips. ebpf and atomic updates are needed everywhere
32392 1 root R 2924 5% 31% /usr/sbin/babeld -I -c /etc/babeld.co 890 1 root S 1420 2% 31% /usr/sbin/odhcpd 816 1 dnsmasq S 1316 2% 31% /usr/sbin/dnsmasq -C /var/etc/dnsmasq. 3 2 root SW 0 0% 8% [ksoftirqd/0]
So I configured flent to send 100 non-ecn'd flows, while sqm was fq_codeling at 40Mbit, with 4096 routes from rtod. Basically all babel packets get marked on every burst.
qdisc fq_codel 110: parent 1:10 limit 1001p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn maxpacket 4542 drop_overlimit 0 new_flow_count 4872 ecn_mark 48 memory_used 316448
root@dancer:~/git/rtod# tc -s qdisc show dev eno1 | grep ecn qdisc fq_codel 110: parent 1:10 limit 1001p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn maxpacket 4542 drop_overlimit 0 new_flow_count 7906 ecn_mark 98 memory_used 302976
tcp_nup-2018-10-03T221206.114668.flent.gz
Normally what would happen to babel on a test like this is it would lose connectivity at some point. Let's try that!