From OpenSCADAWiki
Jump to: navigation, search

Особенности формирования адреса входных сокетов приведены в таблице ниже:

Тип сокета Адрес
TCP

[TCP:]{addr}:{port}[:{mode}[:{IDmess}]]
где:

  • addr — адрес открытия сокета, пустой или "*" адрес открывает сокет на всех интерфейсах. Допускаются как символьное, так и IPv4 "127.0.0.1" или IPv6 "[::1]" представление адреса.
  • port — сетевой порт на котором открывается сокет, возможно указание символьного имени порта согласно /etc/services.
  • mode — режим работы входного сокета:
    • 0 — принудительно разрывать соединение после сеанса приём-ответ.
    • 1(типовой) — не разрывать соединение, только с учётом параметров KeepAlive.
    • 2 — инициативное подключение. Включает режим инициативы подключения данного входного транспорта к удалённому хосту (адрес вместо локального) и переход в режим ожидания запросов от этого хоста. Значение "Keep alive время ожидания" используется как таймаут переподключения данного транспорта по отсутствию активности с целью восстановления возможно потерянного подключения.
  • IDmess — идентифицирующее сообщение инициативного подключения — режим 2.

Пример: "TCP::10001:1" — TCP-сокет доступен на всех интерфейсах, открыт на порту 10001 и соединения не разрывает.

UDP

UDP:{addr}:{port}
где:

  • addr — тоже, что в TCP;
  • port — тоже, что в TCP.

Пример: "UDP:localhost:10001" — UDP-сокет доступен только на интерфейсе "localhost" и открыт на порту 10001.

RAWCAN

RAWCAN:{if}:{mask}:{id}
где:

  • if — имя CAN интерфейса;
  • mask, id — маска и идентификатор фильтрации CAN кадров.

Пример: "RAWCAN:can0:0:0" — принимать все CAN кадры на интерфейсе "can0".

UNIX

UNIX:{name}:{mode}
где:

  • name — имя файла UNIX сокета;
  • mode — тоже, что в TCP.

Пример: "UNIX:/tmp/oscada:1" — UNIX-сокет доступен через файл "/tmp/oscada" и соединения не разрывает.