Linux установил min_rto на устройстве IPv6

Я наткнулся на https://unix.stackexchange.com/questions/210367/changing-the-tcp-rto-value-in-linux , который в значительной степени делает именно то, что я хочу, но мне нужно сделать это с помощью туннеля IPv6.

$ sudo ip -6 route
aaaa::/64 dev tun0  proto kernel  metric 256
fe80::/64 dev eth0  proto kernel  metric 256
fe80::/64 dev wlan0  proto kernel  metric 256
fe80::/64 dev tun0  proto kernel  metric 256

Затем, если я посмотрю на свои активные соединения, мы увидим:

$ ss -i
tcp   ESTAB      0      0                                                                                             aaaa::1:51692

         cubic rto:360 rtt:157.424/6.438 ato:40 mss:64 cwnd:10 send 32.5Kbps pacing_rate 65.0Kbps rcv_space:28800

В настоящее время оно имеет rto 360. Это устройство работает только с со сверхнизкой пропускной способностью, высокой задержкой и сетями с потерями (например, 6LoWPaN) , поэтому я хочу увеличить min_rto как минимум до нескольких секунд.

Я отключил frto:

$ sudo cat /proc/sys/net/ipv4/tcp_frto
0

Теперь я хочу установить min_rto, как показано в связанном вопросе.

$ sudo ip -6 route change aaaa:: dev tun0 rto_min 2000
RTNETLINK answers: No such file or directory

Почему я получаю эту ошибку и как ее исправить?

Стоит отметить, что если я делаю 2000 мс (или 5 мс, как в связанном ответе), он сообщает мне, что это недопустимое значение , поэтому я отбросил часть ms. В случае необходимости, моя информация о Linux приведена ниже:

Linux 4.4.13-v7+ #894 SMP Mon Jun 13 13:13:27 BST 2016 armv7l GNU/Linux
0
задан 13 April 2017 в 15:37
1 ответ

Параметры tcp _ * , указанные в IPv4, также применимы к IPv6, согласно документации .

 IPv6 не имеет глобальных переменных, таких как tcp_ *.  tcp_ * настройки в ipv4 / также
применить к IPv6 [XXX?].
 

Учитывая вопрос в документации, было бы разумно проверить, что это применимо к вашему конкретному (более старому) ядру, прежде чем продолжить.

0
ответ дан 5 December 2019 в 08:37

Теги

Похожие вопросы