Увеличение tcp медленного запуска Initial Window в ядре linux 3.0
Я проверял IW для своего сайта и понял, что его 4.
[user~]$ sudo tcpdump -n -i any 'tcp[tcpflags] & (tcp-syn|tcp-ack) == tcp-syn and port 80'
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on any, link-type LINUX_SLL (Linux cooked), capture size 65535 bytes
10:13:20.971391 IP 175.x.x.x > 17.x.x.x.http: Flags [S], seq 3929903562, win 5840, options [mss 1460,sackOK,TS val 1701657127 ecr 0,nop,wscale 6], length 0
я бегу
[user~]$ uname -r
3.0.4x86_64-linode21
Как я могу увеличить начальное окно?
Вы рекомендуете перекомпилировать в новое ядро? (Не хочу делать) или есть другой способ?
HTTP-кэширование nginx требует
[site ~]$ time curl www.site.com/ >/dev/null
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  6440    0  6440    0     0  26002      0 --:--:-- --:--:-- --:--:-- 39753
real    0m0.268s
user    0m0.004s
sys     0m0.012s
не менее.3 сек.
2 ответа
Это было подробно обсуждено в записи Hacker News недавно, и процесс включает в себя использование команды "ip route change" с некоторыми конкретными параметрами. В первом комментарии к дискуссии есть дополнительная помощь, и я бы посоветовал вам взглянуть туда, чтобы попробовать это решение и посмотреть, работает ли оно.
У вас довольно свежее ядро, поэтому параметр initrwnd, который устанавливает настройку медленного старта, по умолчанию равен 10... так что ваше значение 4 немного странно. В любом случае, просто протестируйте его и дайте нам знать, если вы заметили какие-либо улучшения!
Если у вас ядро меньше 3.2, я бы посоветовал
sudo ip route change default via ip.address dev eth0 initcwnd 15 
Вы можете выяснить это IP-адрес с
ip route show
Вам нужно будет добавить это в сценарий запуска, как rc.local