From OpenSCADAWiki
Jump to: navigation, search

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

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

[TCP:]{addr}[:{port}[,{port2}[,{portN}]][:{mode}[:{IDmess}]]]
де:

  • addr — адреса відкриття сокету, порожня або "*" адреса відкриває сокет на всіх інтерфейсах. Допускаються як символьне, так й IPv4 "127.0.0.1" або IPv6 "[::1]" представлення адреси.
  • port, port2, portN — мережеві порти на яких послідовно відкривається сокет (при зайнятості перших), можливе вказання символьної назви порту відповідно до /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" та з'єднання не розриває.