VinSS писал(а):Не получается запустить примеры их LNet, они все хотят LCLBase>=1.0.1, пытаюсь поставить из самого лазаря, получаю: пакет lclbase не имеет процедуры "Register", даже если согласиться, установки все равно не произойдет.

Сколько раз убеждался, что использование компонентов и библиотек без понимания физического уровня решаемой задачи приводят к большим сложностям, ошибкам и прочим проблемам.
Самое надежное и быстрое, взять API (WinAPI если вы работаете под виндой) и написать задачу на низком уровне (Socket). На это при грамотном подходе и с использованием инета уйдет 1-2 дня, и вы получите рабочее решение примерно в 200 строк кода. После освоения API и понимания, как на самом деле происходит передача данных по сети (любая передача идет через Socket, в т.ч. DCOM, http), можно заниматься подбором библиотеки, когда глядя в ее код будет понятно, что она делает и зачем, т.к. библиотека должна помогать, а не мешать решению задачи.
Добавлено спустя 56 минут 24 секунды:SSerge писал(а):С точки зрения администрирования сети, входящие несанкционированные соединения, тем более по UDP, на станциях должны быть закрыты. К тому же, сам протокол не имеет средств определения, дошли куда то пакеты или не дошли. И, вот у вас, скажем 200 станций. На каждую надо прописать правила, разрешающую трафик на нужный порт, а на самом сервере - весь пул адресов для вашей программы, куда он будет рассылать сообщения. А сервер - один.

Не проще ли все входящие организовывать на нем, а не на периферии?
Весь вопрос вопрос знает ли сервер своих клиентов (в смысле IP), поэтому такие сообщения не будут несанкционированными. Сами по себе входящие пакеты ни UDP, ни TCP не опасны, с позиции безопасности. Опасность может заключаться в том, что стоит несанкционированный софт, получающий несанкционированные пакеты. Но если наш UDP будет прослушиваться конкретной программой, то другая программа не может это сделать. Так что опасности это не добавляет. А так как известен и клиент и сервер, то на уровне firewall можно это явно прописать. Кстати, с позиции безопасности нужно в первую очередь защищать сервер, а не рабочие станции, в т.ч. защищать сервер от несанкционированных или слишком частых пакетов.
Если проверять сообщения нужно редко (например, 1 раз в несколько секунд и клиентов мало), то можно выбрать TCP. Но если клиентов например 10 000, а новые сообщения нужно проверять каждые 100 мс, то выбор TCP просто положит сеть и сервер непрерывными запросами. UDP хорош тем, что пойдет только пакет с сообщением и все, а пустых запросов вообще нет. Сервер будет знать о том, что сообщения не дошли, т.к. я предлагаю после передачи первичного UDP организовать TCP соединение, в результате чего сервер узнает, что клиент получил сообщение. Соответственно, если клиент не вышел на связь, значит клиент не получил сообщение.