Уже где-то писал об этом. Сегодня еще потестировал - стабильно воспроизводится. Как быть - пока понять не могу. Сценарий такой: 1. Шлем на сервер UDP-запрос: "Эй, сервер, гони мне свои пакеты!" 2. Сервер начинает слать, скажем 30 пакетов в секунду по 10-15 кило каждый. 3. Получаю первые 5-10 пакетов, после чего у меня просто отваливается интернет. Если вовремя не закрыть приемник, то по значку LAN даже видно как сам сетевой интерфейс переинициализируется. 4. После этого на сервере случается ошибка, он перестает гнать трафик и у меня инет приходит в себя. У меня линия 4 мегабита, по идее трафик в 300-450 килобайт/сек должна вытягивать. В чем может заключаться сие колдовство?
Booster Ааа, да потерялся уже... Загрузка цп у всех в норме, остальные внешние признаки - тоже. Такое ощущение что меня пров просто отрубает из-за большого входящего трафа, вообще х.з. как это понимать.
_DEN_ Может и правда происходит перергруз на стороне прова, вот тебя и рубят когда буферы переполняются.
Booster Уже представляю как звоню в call-центр прова. "Здравствуйте, девушка! А вы не подскажете, я вот тут UDP-пакетики отправляю..."
Конечно снова встанет проблема уменьшения скорости. Но тут можно схитрить, сделать одно udp соединение для передачи данных, и второе tcp для команд. Они должны работать в разных потоках. По tcp сервер отправляет команду - "отправляю первый блок", и начинает передачу блока данных по udp, клиент как только получил команду от серверу тут же отправляет команду - "yes". Если сервер получил ответ от клиента, то может отправлять следующие команду и блок данных. Конечно если пинг будет очень большой, а канал очень быстр, то и это не спасёт.
Кстати в rtp тоже используется два соединения: данных и управления. http://book.itep.ru/4/44/rtp_4492.htm
Можно увидеть код клиента и сервера? Потому что, ответить на вопрос типа: "У меня отвалился инет, в чем проблема?", можно, но лучше не надо.
В смысле переинициализируется? По dhcp получает ip? Ну, собственно, какая разница в каком смысле, просто загляни в логи и посмотри, что ось думает о произошедшем. Потому как переполнение буферов на промежуточных хостах не может привести к такой проблеме -- они должны просто отбрасывать лишние пакеты не помещающиеся в очередь.