Цитата Сообщение от Юрий Горелый2 Посмотреть сообщение
более того, в документации на ModbusTCP пример такого рода системы разобран чёрным по белому
"TCP-NODELAY:
Small packets (called tinygrams) are normally not a problem on LANs, since most LANs
are not congested, but these tinygrams can lead to congestion on wide area networks.
A simple solution, called the "NAGLE algorithm", is to collect small amounts of data and
sends them in a single segment when TCP acknowledgments of previous packets
arrive.
In order to have better real-time behavior it is recommended to send small amounts of
data directly without trying to gather them in a single segment. That is why it is
recommended to force the TCP-NODELAY option that disables the "NAGLE algorithm"
on client and server connections. "

плавно намекая на то, что большим количеством маленьких пакетов сеть будет загажена и их надо Специально упаковывать
в нужного размера пакеты. ( считать отдельно делать адресное пространство требуемым образом) а нужный размер максимум 300 байт.


далее по тексту в описании ModbusTCP отдельно указано что же будет с сокетами на серверАХ и клиенте и что с ними должно быть
"SO-REUSEADDR:
When a MODBUS server closes a TCP connection initialized by a remote client, the
local port number used for this connection cannot be reused for a new opening while
that connection stays in the "Time-wait" state (during two MSL : Maximum Segment
Lifetime).
It is recommended specifying the SO-REUSEADDR option for each client and server
connection to bypass this restriction. This option allows the process to assign itself a
port number that is part of a connection that is in the 2MSL wait for client and listening
socket.
"

Далее по тексту указано почему, когда и как стоит закрывать сокеты и создавать новые -
"SO-KEEPALIVE:"

"
By default on TCP/IP protocol no data are sent across an idle TCP connection.
Therefore if no process at the ends of a TCP connection is sending data to the other,
nothing is exchanged between the two TCP modules. This assumes that either the
client application or the server application uses timers to detect inactivity in order to
close a connection.
It is recommended to enable the KEEPALIVE option on both client and server
connection in order to poll the other end to know if the distant has either crashed and is
down or crashed and rebooted.
Nevertheless we must keep on mind that enabling KEEPALIVE can cause perfectly
good connections to be dropped during transient failures, that it consumes unnecessary
bandwidth on the network if the keep alive timer is too short."
"

из этого и вытекает, что за 200 параметрами к 50-и системам обращаясь, даже близко не будет пахнуть 50-ю сокетами.
В процитированной Вами документации говориться про алгоритм NAGLE и свойство KEEPALIVE.
К количеству одновременно открытых сокетов не имеет никакого отношения.