On Thu, 24 Sep 2020, Clément Guivy wrote: > On 24/09/2020 14:37, Oliver wrote: > > Hello, > > > > after upgrading to debian buster with kernel 4.19 we also had problems. > > How filled is your route cache compared to the sysctl treshold? See the > (hex) value with : > cut -d'' -f 6 /proc/net/rt6_stats awk '{ print ("0x"$6)+0, "(" $6 ")" }' /proc/net/rt6_stats It is between 1315 (0523) and 1738 (06ca)
> Do you get a "Network is unreachable" error at some point if you do an "ip > route get" on each prefix of your (ipv6) routing table? (while you are doing > this test you should see the cache being filled according to the rt6_stats > file as said before) After we set "net.ipv6.route.max_size = 400000" we do not get any "Network is unreachable" anymore. This is how we tested it: ip -6 route |egrep "^[0-9a-f]{1,4}:"|awk '{ print $1; }'|sed "s#/.*##"|xargs -L 1 ip -6 route get 1> /dev/null > How filled is your neighbor table compared to the sysctl treshold? You can > read it with : > ip -6 neigh sh | wc -l 18 (so very low) > Do you notice random drops on Bird sessions? After we set "net.ipv6.route.max_size = 400000" we do not have any drops anymore. We have many ipv6_routes: cat /proc/net/ipv6_route | wc -l 207281 (so more then the normal full IPv6 BGP table which is around 90000) At the moment just the "jitter" is the problem we have. I just increased net.ipv6.route.gc_thresh to 102400 as suggested from micah. (1/4 of ipv6.route.max_size) With the increased value /proc/net/rt6_stats is going up to 2186 (088a) and stayes in that region. So for the past minutes with this config everything runs smoothly: net.ipv6.route.max_size = 400000 net.ipv6.route.gc_thresh = 102400 I did not changed the net.ipv6.neigh.default.gc_thresh* values. I will monitor the values and write again after some time. Oliver