Вопрос про режим TCP client на ЛЭРС Ethernet 2.0

Согласовывая использование ЛЭРС Ethernet 2.0 в одной из региональных систем сбора я получил странный отзыв о режиме TCP client этого контроллера.

Вот он:
Данный контроллер не поддерживает статически заданный порт
При каждом разрыве соединения порт будет меняться, из за этого марсу потребуется заново определять какой прибор подключен на этот IP и порт, и он будет его определять с нуля, а в случае нестабильного интернета со стороны прибора, скорее всего счётчик вообще никогда не определится. Устройства ЛЭРС заточены на работу в режиме сервера.

Термин “марс” в тексте - это название региональной системы.

Мы работаем с ЛЭРС Ethernet 2.0 и такого не наблюдается. Но для упрощения согласования оборудования мне нужен ответ от тех.поддержки производителя.

Поэтому. Прошу оценить верность утверждения и указать есть ли какие-то особенности использования статического порт в режиме TCP client на ЛЭРС Ethernet 2.0

Я прошу ответить

Необходимо уточнить о каком порте идёт речь.

В рассматриваемом случае TCP соединение выглядит так:
Марс [TCP сервер (IP/port)] <=== ЛЭРС Ethernet 2.0 [TCP клиент (IP/port)]

TCP клиент подключается к TCP серверу по указанным параметрам (IP/port). При разрыве соединения TCP клиент будет предпринимать попытки подключиться именно к этому же адресу/порту.

Как понимать фразу “При каждом разрыве соединения порт будет меняться”?

Из представленной схемы соединения видно, что речь идёт о порте TCP клиента. Правильно я понял вопрос?

Да, из ответа ТП, который я привел следует, что IP-порт ЛЭРС Ethernet 2.0 после разрыва меняется.

Мне нужно чтобы Вы это опровергли :slight_smile:

Не опровергну. Порт TCP клиенту действительно присваивается из диапазона свободных адресов, определяемых ОС. Алгоритм назначения порта при каждом подключении к одному и тому же TCP серверу также зависит от ОС.

Эта тема о функционале ЛЭРС Ethernet 2.0.
Приведенная выше переписка об использовании ЛЭРС Ethernet 2.0 в режиме TCP client вместо преобразователей типа moxa NPort 5110 в режиме TCP client.

В таком контексте, я думаю, речь может идти только о работе с портом сервера, к которому подключается преобразователь.

С учетом уточнений, что можете сказать?

Каждый последовательный порт контроллера работает независимо от других и имеет свои настройки. Можно настраивать последовательные порты в любой комбинации клиент/сервер.

В режиме TCP клиента последовательный порт подключается к серверу (программе сбора данных) адрес/порт которого хранится в параметрах этого порта. При этом локальный порт TCP клиента (контроллера) назначается из диапазона свободных портов (контроллера). При обрыве соединения последовательный порт через указанный интервал времени пытается подключиться к серверу, естественно, к тому, который указан в параметрах этого порта, т. е. к тем же IP/port. При удачном соединении локальный порт TCP клиента (контроллера) назначается по алгоритму, заложенному в ОС контроллера. Обычно, это другой номер порта.

Если все три последовательных порта работают в режиме TCP клиент, то они могут подключаться к одному серверу по одному IP, но к разным портам сервера. В таком случае возможен одновременный независимый опрос трёх последовательных портов.

Можно настроить последовательные порты на подключение к разным серверам, тут, я думаю, всё понятно.

И всё-таки фраза “При каждом разрыве соединения порт будет меняться ” не оставляет выбора фантазии - меняется локальный порт клиента, и это стандартное поведение. Или Ваш клиент неправильно формулирует проблему.

Посмотрел документацию “moxa NPort 5110 в режиме TCP client” - там тоже нет статического порта клиента.

https://moxa.ru/files/manuals_nport/moxa-nport-5000-series-manual-v6_8.pdf стр. 70.

Статический ТСР-порт клиента есть в moxa этой серии. Это следует из практики и возможно из того же мануала. Об этом возможно говорит вот этот параметр

image

Вот пример moxa 5110. Настройка

А вот данные по соединениям в ЛЭРСе

Соединения с портов отличных от 5011 явно мусор в публичной сети, они закрываются сразу и по ним нет обмена.

Разговор с Вами привел к пониманию ответа тех.поддержки :slight_smile:

И поэтому вопрос. Возможно ли, чтобы для ЛЭРС Ethernet 2.0 в будущей прошивке фиксировался ТСР-порт клиента?

И если да, то насколько это время затратно. Этот функционал бы позволил использовать ЛЭРС Ethernet 2.0 с РИАС МАРС. А это потенциально больше кол-во приборов

Возможно. Внесём в план. Выход новой прошивки ориентировочно - декабрь этого года.