Особенности формирования адреса входных сокетов приведены в таблице ниже:
Тип сокета |
Адрес
|
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" и соединения не разрывает.
|