OpenSCADAWiki: Doc/ Soсkets ...

Home | Index | Changes | Comments | Users | Registration | Login  Password:  
 
English (1 Кб) English Version
Ukrainian (1 Кб) Українська версія?

Модуль подсистемы “Транспорты” <Soсkets>

Модуль:Sockets
Имя:Сокеты
Тип:Транспорт
Источник:tr_Sockets.so
Версия:1.5.1
Автор:Роман Савоченко
Описание:Предоставляет транспорт, основанный на сокетах. Поддерживаются интернет и unix сокеты. Интернет сокет использует TCP и UDP протоколы.
Лицензия:GPL

Contents

Введение

Модуль транспорта Sockets предоставляет в систему поддержку транспортов, основанных на сокетах. Поддерживаются входящие и исходящие транспорты, основанные на интернет сокетах: TCP, UDP и UNIX сокете. Добавить новые входящие и исходящие сокеты можно посредством конфигурации транспортной подсистемы в любом конфигураторе системы OpenSCADA.

1. Входящие транспорты

Сконфигурированный и запущенный входящий транспорт открывает серверный сокет для ожидания соединения клиентов. В случае с UNIX сокетом создаётся файл UNIX сокета. Сокеты TCP и UNIX являются многопоточными, т.е. при подключении клиента к сокетам данных типов создаётся клиентский сокет и новый поток, в котором производиться обслуживание клиента. Серверный сокет в этот момент переходит к ожиданию запросов от нового клиента. Таким образом достигается параллельное обслуживание клиентов.


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


Диалог конфигурации входящего сокета изображён на рис.1.


Диалог конфигурации входящего сокета. (80 Кб)
Рис.1. Диалог конфигурации входящего сокета.

С помощью этого диалога можно установить:


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

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

TCP:{адрес}:{порт}:{режим}
где:

  • адрес – Адрес, на котором открывается сокет. Должен быть одним из адресов хоста. Если ничего не указано, то сокет будет доступен на всех интерфейсах хоста. Допускаются как символьное, так и IP представление адреса.
  • порт – Сетевой порт, на котором открывается сокет. Возможно указание символьного имени порта (в соответствии с /etc/services).
  • режим – режим работы входящего сокета (0 – разрывать соединение после сеанса приём-ответ; 1 – не разрывать).

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

UDP

UDP:{адрес}:{порт}
где:

  • адрес – тоже что в TCP;
  • порт – тоже что в TCP.

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

UNIX

UNIX:{имя}:{режим}
где:

  • имя – имя файла UNIX сокета;
  • режим – тоже что в TCP.

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

2. Исходящие транспорты

Сконфигурированный и запущенный исходящий транспорт открывает соединение с указанным сервером. При разрыве соединения исходящий транспорт отключается. Для возобновления соединения транспорт нужно снова запустить.


Главная вкладка страницы конфигурации исходящего сокета изображёна на рис.2.


Диалог конфигурации исходящего сокета. (80 Кб)
Рис.2. Главная вкладка страницы конфигурации исходящего сокета.

С помощью этого диалога можно установить:


Адреса исходящих сокетов различного типа формируются следующим образом:

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

TCP:{адрес}:{порт}
UDP:{адрес}:{порт}
где:

  • адрес – Адрес, с которым выполняется соединение. Допускаются как символьное так и IP представление адреса.
  • порт – Сетевой порт, с которым выполняется соединение. Возможно указание символьного имени порта (в соответствии с /etc/services).

Пример: "TCP:127.0.0.1:7634" — соединится с портом 7634 на хосте 127.0.0.1.

UNIX

UNIX:{имя}
где:

  • имя – имя файла UNIX сокета.

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

Ссылки

Referring pages: Doc
Doc/BFN
Doc/OPCUA
Doc/QuickStart
Function
HomePageUk/Doc
HomePageUk/Function
HomePageUk/Using/SmartHouse
Using/SmartHouse

 
There are 3 files on this page.[Display files/form]
There is no comment on this page. [Display comments/form]