URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID6
Нить номер: 660
[ Назад ]

Исходное сообщение
"BAD request "

Отправлено Ilya , 29-Мрт-13 13:39 
На клиенте установлен linux, работает приложение которое работает с сервером по протоколу http на нестандартному порту. Периодически приложение выдает что "не может соединиться с сервером". На порту коммутатора Cisco 3560 и на контроллере ошибок нет. Никакие файерволы и acl трафик точно не блокируют.
Собрал дамп трафика, после анализа wireshark'ом вижу, что в момент сбоя - клиент получает ответ от сервера BAD REQUEST [400], а перед этим много "tcp retransmission" и "tcp dup ack".

Вопрос - это проблема прикладного уровня или все же, где то проблема на более низком(сетевом/транспортном) уровне


Содержание

Сообщения в этом обсуждении
"BAD request "
Отправлено Merridius , 29-Мрт-13 14:52 
> На клиенте установлен linux, работает приложение которое работает с сервером по протоколу
> http на нестандартному порту. Периодически приложение выдает что "не может соединиться
> с сервером". На порту коммутатора Cisco 3560 и на контроллере ошибок
> нет. Никакие файерволы и acl трафик точно не блокируют.
> Собрал дамп трафика, после анализа wireshark'ом вижу, что в момент сбоя -
> клиент получает ответ от сервера BAD REQUEST [400], а перед этим
> много "tcp retransmission" и "tcp dup ack".
> Вопрос - это проблема прикладного уровня или все же, где то проблема
> на более низком(сетевом/транспортном) уровне

А если выключить SACK?


"BAD request "
Отправлено Ilya , 01-Апр-13 12:06 

> А если выключить SACK?

TCP ведь протокол надежной доставки. Может быть такое что по каким-то причинам от клиента на сервер придет битый запрос, который сервер и посчитает некорректным и ответит BAD request?


"BAD request "
Отправлено Merridius , 01-Апр-13 12:56 

>> А если выключить SACK?
> TCP ведь протокол надежной доставки. Может быть такое что по каким-то причинам
> от клиента на сервер придет битый запрос, который сервер и посчитает
> некорректным и ответит BAD request?

Как вариант глючные сетевухи, multi-path routing, MTU или заторы в сети.

Если получаете tcp retransmit значит сервер не получил отправленный клиентом ACK.
Про Dup ACK и SACK можно почитать например здесь:
http://packetlife.net/blog/2010/jun/17/tcp-selective-acknowl...


"BAD request "
Отправлено 555 , 01-Апр-13 14:27 
>>> А если выключить SACK?
>> TCP ведь протокол надежной доставки. Может быть такое что по каким-то причинам
>> от клиента на сервер придет битый запрос, который сервер и посчитает
>> некорректным и ответит BAD request?
> Как вариант глючные сетевухи, multi-path routing, MTU или заторы в сети.
> Если получаете tcp retransmit значит сервер не получил отправленный клиентом ACK.
> Про Dup ACK и SACK можно почитать например здесь:
> http://packetlife.net/blog/2010/jun/17/tcp-selective-acknowl.../

спасибо почитаю.
ссылка у меня не работает "404 Not Found"


"BAD request "
Отправлено Ilya , 04-Апр-13 12:14 
>>>> А если выключить SACK?
>>> TCP ведь протокол надежной доставки. Может быть такое что по каким-то причинам
>>> от клиента на сервер придет битый запрос, который сервер и посчитает
>>> некорректным и ответит BAD request?
>> Как вариант глючные сетевухи, multi-path routing, MTU или заторы в сети.
>> Если получаете tcp retransmit значит сервер не получил отправленный клиентом ACK.
>> Про Dup ACK и SACK можно почитать например здесь:
>> http://packetlife.net/blog/2010/jun/17/tcp-selective-acknowl.../
> спасибо почитаю.
> ссылка у меня не работает "404 Not Found"

ссылка заработала, почитал, спасибо.
Отключил эту опцию TCP вот уже сутки ошибок не наблюдаю, спасибо, думаю в этом и была проблема.
Кстати сервер Win2003, там SACK включена. Видимо не договариваются.