Как найти где теряется UDP пакет
От: Sshur Россия http://shurygin-sergey.livejournal.com
Дата: 25.11.11 07:02
Оценка:
Привет, All

Может быть, вопрос ближе к системному администрированию, не знаю.

Разбираюсь с библиотечкой sip телефонии. Собранный пример не авторизуется на сервере и все тут. А на другом компьютере он же авторизуется. Благодаря отладке выяснил, что ответ на авторизацию от сервера клиент не получает. Сервер пакет посылает. Через роутер UDP пакет проходит и уходит на мой ip. Все брандмауэры/файерволы выключил. Кто блокирует пакет — неясно.

Куда можно копнуть?
Шурыгин Сергей

"Не следует преумножать сущности сверх необходимости" (с) Оккам
Re: Как найти где теряется UDP пакет
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 25.11.11 07:07
Оценка: 6 (1)
Здравствуйте, Sshur, Вы писали:

S>Может быть, вопрос ближе к системному администрированию, не знаю.


S>Разбираюсь с библиотечкой sip телефонии. Собранный пример не авторизуется на сервере и все тут. А на другом компьютере он же авторизуется. Благодаря отладке выяснил, что ответ на авторизацию от сервера клиент не получает. Сервер пакет посылает. Через роутер UDP пакет проходит и уходит на мой ip. Все брандмауэры/файерволы выключил. Кто блокирует пакет — неясно.


S>Куда можно копнуть?


Взять wireshark/winpcap/etc., посмотреть прохождение пакета (есть или нет) на обеих сторонах. Они смотрят на границе между драйвером сетевого адаптера и IP стеком, и сравнением с данными твоего софта можно уточнить место пропадания.

Платформа-то какая?
The God is real, unless declared integer.
Re: Как найти где теряется UDP пакет
От: Vlad_SP  
Дата: 25.11.11 07:10
Оценка:
Здравствуйте, Sshur,

UDP — протокол без гарантии доставки сообщения. Поэтому потеряться UDP пакет может по массе разнообразных причин, и никто за это не отвечает. В том числе, реализации стека протоколов могут тупо отправить его в мусорку, например, при перегрузке, или по какой-нибудь другой причине. Мне многократно доводилось сталкиваться с потерей UDP пакетов даже без всяких роутеров и прочего оборудования, всего лишь при передаче их в пределах одной машины, 127.0.0.1 -> 127.0.0.1
Re[2]: Как найти где теряется UDP пакет
От: Sshur Россия http://shurygin-sergey.livejournal.com
Дата: 25.11.11 07:11
Оценка:
Здравствуйте, Vlad_SP, Вы писали:

V_S>Здравствуйте, Sshur,


V_S>UDP — протокол без гарантии доставки сообщения. Поэтому потеряться UDP пакет может по массе разнообразных причин, и никто за это не отвечает. В том числе, реализации стека протоколов могут тупо отправить его в мусорку, например, при перегрузке, или по какой-нибудь другой причине. Мне многократно доводилось сталкиваться с потерей UDP пакетов даже без всяких роутеров и прочего оборудования, всего лишь при передаче их в пределах одной машины, 127.0.0.1 -> 127.0.0.1


Ну я в курсе про негарантированную доставку. Но не 100% пакетов же
Шурыгин Сергей

"Не следует преумножать сущности сверх необходимости" (с) Оккам
Re[2]: Как найти где теряется UDP пакет
От: Sshur Россия http://shurygin-sergey.livejournal.com
Дата: 25.11.11 07:14
Оценка:
Здравствуйте, netch80, Вы писали:

S>>Куда можно копнуть?


N>Взять wireshark/winpcap/etc., посмотреть прохождение пакета (есть или нет) на обеих сторонах. Они смотрят на границе между драйвером сетевого адаптера и IP стеком, и сравнением с данными твоего софта можно уточнить место пропадания.


N>Платформа-то какая?


Клиент Windows. Сервер Asterisk на Debian. Но оттуда пакет уходит — проверили на роутере.
Шурыгин Сергей

"Не следует преумножать сущности сверх необходимости" (с) Оккам
Re[3]: Как найти где теряется UDP пакет
От: Vlad_SP  
Дата: 25.11.11 07:14
Оценка:
Здравствуйте, Sshur,

хм, а платформа то какая? Мне приходилось сталкиваться с тем, что в Win Server 2008 R2 недостаточно просто отключить файер — приходится еще поплясать вокруг него с бубном....
Re[4]: Как найти где теряется UDP пакет
От: Sshur Россия http://shurygin-sergey.livejournal.com
Дата: 25.11.11 07:19
Оценка:
Здравствуйте, Vlad_SP, Вы писали:

V_S>Здравствуйте, Sshur,


V_S>хм, а платформа то какая? Мне приходилось сталкиваться с тем, что в Win Server 2008 R2 недостаточно просто отключить файер — приходится еще поплясать вокруг него с бубном....ъ


Обычная XP
Шурыгин Сергей

"Не следует преумножать сущности сверх необходимости" (с) Оккам
Re[2]: Как найти где теряется UDP пакет
От: Sshur Россия http://shurygin-sergey.livejournal.com
Дата: 25.11.11 07:41
Оценка:
Здравствуйте, netch80, Вы писали:

N>Взять wireshark/winpcap/etc., посмотреть прохождение пакета (есть или нет) на обеих сторонах. Они смотрят на границе между драйвером сетевого адаптера и IP стеком, и сравнением с данными твоего софта можно уточнить место пропадания.



Мистика полная. Поставил wireshark — все начало ходить как надо
Шурыгин Сергей

"Не следует преумножать сущности сверх необходимости" (с) Оккам
Re[3]: Как найти где теряется UDP пакет
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 25.11.11 09:02
Оценка:
Здравствуйте, Sshur, Вы писали:

S>Здравствуйте, netch80, Вы писали:


N>>Взять wireshark/winpcap/etc., посмотреть прохождение пакета (есть или нет) на обеих сторонах. Они смотрят на границе между драйвером сетевого адаптера и IP стеком, и сравнением с данными твоего софта можно уточнить место пропадания.



S>Мистика полная. Поставил wireshark — все начало ходить как надо


Значит, была таки какая-то фигня в стеке, которая этой установкой исправилась.
По идее, ситуация слабо воспроизводима, так что лучше пока что игнорировать.
The God is real, unless declared integer.
Re[3]: Как найти где теряется UDP пакет
От: ononim  
Дата: 25.11.11 12:40
Оценка:
N>>Взять wireshark/winpcap/etc., посмотреть прохождение пакета (есть или нет) на обеих сторонах. Они смотрят на границе между драйвером сетевого адаптера и IP стеком, и сравнением с данными твоего софта можно уточнить место пропадания.
S>Мистика полная. Поставил wireshark — все начало ходить как надо
wireshark включает promiscuous mode сетевухи. Так что можно предположить, что dst mac адрес в IP пакете почему-то корявый, и его не пропускает сетевуха в нормальных условиях.
Как много веселых ребят, и все делают велосипед...
Re[4]: Как найти где теряется UDP пакет
От: Sshur Россия http://shurygin-sergey.livejournal.com
Дата: 25.11.11 12:45
Оценка:
Здравствуйте, ononim, Вы писали:

N>>>Взять wireshark/winpcap/etc., посмотреть прохождение пакета (есть или нет) на обеих сторонах. Они смотрят на границе между драйвером сетевого адаптера и IP стеком, и сравнением с данными твоего софта можно уточнить место пропадания.

S>>Мистика полная. Поставил wireshark — все начало ходить как надо
O>wireshark включает promiscuous mode сетевухи. Так что можно предположить, что dst mac адрес в IP пакете почему-то корявый, и его не пропускает сетевуха в нормальных условиях.


С закрытым wireshark'ом тоже все работает. Видно действительно была какая-то ошибка в системе, которую исправила установка wireshark
Шурыгин Сергей

"Не следует преумножать сущности сверх необходимости" (с) Оккам
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.