Пока писал предидущий пост появилась эта информация )
То-есть всё же в данном случае односторонний поток данных фактически получается? От "датчиков" к некоему польту - верно я понимаю?
23.07.10 12:20
Не совсем.
Данные от датчиков собираются и анализируются автономной системой, а потом уже передаются на комп.
Причем канал передачи
RS232 (COM). Эти данные собираются программой драйвером и уже потом
идет обмен (о котором и идет речь в этой теме) с программой сервером.
Вопрос возник не случайно, в нормальных условиях по TCP все работает как положено.
Только недавно возникла ситуация: случайно сильно пережали сетевой кабель UTP.
После этого вроде сеть работает, но ... программа на компах, которые были подключены по этой линии связи практически не работала, и все в целом было похоже на DDOS атаку.
TCP в данном случае не справлялся.
Как мы поняли потом, пытаясь запросить повторно "кривые" пакеты TCP подвешивал связь местами намертво.
Думаю, что в случае с UDP такого просто не было.
Т.е. принимая в очередной раз "кривые" данные (контрольные суммы то никто не отменял
) можно было бы программно оценить, что присутствуют огромные проблемы при передаче.
В случае с TCP эти "проблемы" берет на себя протокол, но при этом "программа", которая с ним работает не знает о проблемах.
Описанную выше ситуацию смогли определить только через 2 дня и то практически случайно.
Первоначально думали на вирусы.
Отсюда и был задан вопрос, с учетом запаса "прочности" какой все таки протокол лучше использовать, поскольку с UDP тоже не все так гладко.