Jump to content

Recommended Posts

Добрый день!

У нас в работе сейчас в работе запущен ViPNet Coordinator HW2000, к которому подключаются масса HW1000 с клиентами и подсеть с серверами.

Соответственно, сервера приходят на один интерфейс HW2000, там данные шифруются и рассылаются к клиентам на HW1000

 

С недавних пор некоторые "долгие" запросы HTTP перестали успешно завершаться. Проанализировав трафик, я выяснил, что HW2000 убивает проходящее через него TCP-соединение ровно через 300 секунд после отправки по данному соединению последнего пакета. В итога получается, что клиентские запросы, которые выполняются более 5 минут (отчёты, поиск и пр.) просто напросто не могут получить ответ от сервера т.к. TCP-соединения нет.

WireShark запрос относительно клиента выглядит вот так:

 

No.    Time        Source        Destination    ProtocolLeigth    Info    
33    1.261490000    10.0.0.101    10.0.0.4    TCP    74    54863→80 [SYN] Seq=0 Win=29200 Len=0 MSS=1460 SACK_PERM=1 TSval=10823079 TSecr=0 WS=128
34    1.261838000    10.0.0.4    10.0.0.101    TCP    74    80→54863 [SYN, ACK] Seq=0 Ack=1 Win=14480 Len=0 MSS=1460 SACK_PERM=1 TSval=847151612 TSecr=10823079 WS=128
35    1.261852000    10.0.0.101    10.0.0.4    TCP    66    54863→80 [ACK] Seq=1 Ack=1 Win=29312 Len=0 TSval=10823079 TSecr=847151612
36    1.261909000    10.0.0.101    10.0.0.4    HTTP    759    POST /getmodule.php HTTP/1.1  (application/x-www-form-urlencoded)
37    1.262264000    10.0.0.4    10.0.0.101    TCP    66    80→54863 [ACK] Seq=1 Ack=694 Win=15872 Len=0 TSval=847151612 TSecr=10823079
429    11.279537000    10.0.0.101    10.0.0.4    TCP    66    [TCP Keep-Alive] 54863→80 [ACK] Seq=693 Ack=1 Win=29312 Len=0 TSval=10825584 TSecr=847151612
430    11.279916000    10.0.0.4    10.0.0.101    TCP    66    [TCP Keep-Alive ACK] 80→54863 [ACK] Seq=1 Ack=694 Win=15872 Len=0 TSval=847161630 TSecr=10823079
5357    21.295601000    10.0.0.101    10.0.0.4    TCP    66    [TCP Keep-Alive] 54863→80 [ACK] Seq=693 Ack=1 Win=29312 Len=0 TSval=10828088 TSecr=847161630
5358    21.296037000    10.0.0.4    10.0.0.101    TCP    66    [TCP Keep-Alive ACK] 80→54863 [ACK] Seq=1 Ack=694 Win=15872 Len=0 TSval=847171646 TSecr=10823079
...
30022    291.727535000    10.0.0.101    10.0.0.4    TCP    66    [TCP Keep-Alive] 54863→80 [ACK] Seq=693 Ack=1 Win=29312 Len=0 TSval=10895696 TSecr=847432064
30023    291.727888000    10.0.0.4    10.0.0.101    TCP    66    [TCP Keep-Alive ACK] 80→54863 [ACK] Seq=1 Ack=694 Win=15872 Len=0 TSval=847442080 TSecr=10823079
30120    301.743538000    10.0.0.101    10.0.0.4    TCP    66    [TCP Keep-Alive] 54863→80 [ACK] Seq=693 Ack=1 Win=29312 Len=0 TSval=10898200 TSecr=847442080
30121    301.743884000    10.0.0.4    10.0.0.101    TCP    66    [TCP Keep-Alive ACK] 80→54863 [ACK] Seq=1 Ack=694 Win=15872 Len=0 TSval=847452096 TSecr=10823079

И всё. Дальше больше ни одного пакета не идёт, в netstat соединение пропадает.

Пробовал подключаться в обход HW2000 и делать похожие действия - TCP-соединение спокойно проходит планку 300 секунд и где-то на 460 секунде возвращает пользователю результат.

Полазив в настройках HW2000 я не нашёл каких-либо опций для увеличения данного таймаута хотя бы до 600. Я даже залез в shell и посмотрел sysctl, но там на 300 были только 2 опции (net.ipv4.neigh.default.base_reachable_time_ms = 30000  и net.ipv4.route.gc_timeout = 300), увеличение которых никак на проблеме не сказались.

 

Подскажите, где можно увеличить данный таймаут для TCP-соединения?

 

 

 

 

 

Share this post


Link to post
Share on other sites

Приветствую.

Посмотрите в документации к вашей версии ПО координатора вот такой параметр:

connection-ttl-tcp 

А load-balancer'а перед веб-сервером нет случайно? Обычно у них как раз такое значение тайм-аута..

 

Share this post


Link to post
Share on other sites

connection-ttl-tcp= 310

Очень похоже кстати. Я его видел, но пропустил т.к. решил, что это не секунды, а прыжки.

Сейчас попробую поменять и отпишусь

 

Load-balancer есть, но он уже настроен на увеличенный тайм-аут. Пробовал с ним напрямую работать - всё в порядке.

 

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.