И вообще: как могут теряться данные на localhost-е
Запросто могут.
Сам долго мучался с этим, могу поделиться опытом....
Не нужно это читать. Нужно понимать, что делаешь, тогда ничего не будет теряться.
На локальном хосте данные могут теряться так же как и на удаленном. Достаточно чтобы отправитель посылал больше чем получатель может обработать. Речь о UDP. Поэтому является плохой практикой считать, что раз все локально, то все придет и не потеряется. Теряется еще как и в самый неподходящий момент. У протокола UDP есть свое предназначение и использую его нужно четко осозноват, что данные могут и будут потерянны.
Вернемся к нашим баранам.
... отсылаю 1000 раз на каждый сокет по 1024 байта ...
Не помню сколько сейчас размер tx buffer (не знаю как русски, извиняюсь) в сокете, но думаю что 4К. Т.е. 4 пакета полностью забивают трансмит и еще 4 полностью забивают ресив и остальные начинают выбрасываться. Врядли отправка 8-ми пакетов происходит медленнее, чем происходит переключение процессов. В данном случае последствия не предсказуемые. Почему приходит больше до сих пор остается загадкой

Чуствую, что без косяков в коде не обошлось.
Ну и напоследок, TCP идеально подходит для перекачивания даты из одного конца в другой, даже пакетизацию делать не нужно, тупо пиши в файл все, что прочитал.
Вот теперь важное.
При отправке нужно соблюдать временную дистанцию между пакетами в 100 - 500 микросек.
Если очередь начала сильно расти, то задержку уменьшаем, если уменьшается, то увеличиваем.
Люди сидели (ночами не спали) разрабатывали reliable connection oriented protocol with flow control, но
*** нам нужно. Мы же тут все стратеги, хули нам 100500 функций вокруг UDP навалить с потоками и задержками.
При чем все равно потеряется дата в самый неподходящий момент, но главное же не дата, главное у нас
Ничего лучше я придумать не смог, однако оно не плохо работает.
Если есть какое-то радикальное решение, то буду рад услышать.
Ты не поверишь
Используй TCP
Пользователь решил продолжить мысль 12 Мая 2012, 17:43:49:
... Не подходит мне TCP, вот никак.
Ну звиняй хлопец, бананау у нас нема
___________________________
На Форуме ЗАПРЕЩЕНО
2.1. Использовать ненормативную лексику в любом виде. В том числе сокращённые и искажённые нецензурные слова. Замена нецензурных слов спецсимволами также не допускается.
grad-data