Changes between Version 2 and Version 3 of EndpointR422


Ignore:
Timestamp:
Mar 12, 2020, 6:36:53 PM (5 years ago)
Author:
alx
Comment:

Исправлена опечатка, переформулировано описание резолвинга.

Legend:

Unmodified
Added
Removed
Modified
  • EndpointR422

    v2 v3  
    2121=== Установка соединения в режиме Клиент ===
    2222
    23 При работе в режиме "клиент" канальное окончание R422 само устанавливает соединение TCP с удаленным сервером, имя (адрес) и номер порта которого заданы конфигурационными параметрами "Сервер" и "Порт" соответственно. Установка соединения начинается с резолвинга имени сервера. Для этого канальное окончание запрашивает у DNS записи AAAA и A для имени, указанного в конфигурационном параметре "Сервер", переходит в состояние `Resolving` и ожидает ответ. При получении успешного ответа от DNS канальное окончание создает сокет TCP, начинает процесс соединения и переходит в состояние `Connecting`. При успешной установке соединения канальное окончание переходит в состояние `Connected`. В состоянии `Connected` канальное окончание R422 передает данные данными между линиями RS-422 и удаленным хостом. Подробно этот процесс описан в разделе "Передача данных через установленное соединение" ниже. В случае, если установка соединения не удалась, и у сервера имеются другие IP адреса, канальное окончание пытается установить соединение с другим адресом.
     23При работе в режиме "клиент" канальное окончание R422 само устанавливает соединение TCP с удаленным сервером, имя (адрес) и номер порта которого заданы конфигурационными параметрами "Сервер" и "Порт" соответственно. Установка соединения начинается с перехода канального окончания в состояние `Resolving`. В этом состоянии канальное окончание резолвит имя сервера, указанное в конфигурационном параметре "Сервер", в адреса IP. При успешном резолвинге канальное окончание создает сокет TCP, начинает процесс подключения к серверу и переходит в состояние `Connecting`. При успешном подключении канальное окончание переходит в состояние `Connected`. В состоянии `Connected` канальное окончание R422 передает данные данными между линиями RS-422 и удаленным хостом. Подробно этот процесс описан в разделе "Передача данных через установленное соединение" ниже. В случае, если установка соединения не удалась, и у сервера имеются другие IP адреса, канальное окончание пытается установить соединение с другим адресом.
    2424
    2525В случае, если попытки установки соединения со всеми имеющимися адресами IP сервера закончились ошибками, или ошибка возникла при резолвинге имени сервера, канальное окончание переходит в состояние `Error`. В состоянии `Error` канальное окончание выдерживает паузу 30 секунд, после чего описанный выше процесс подключения начинается с начала (с резолвинга имени сервера).
     
    3333Данные, поступающие от удаленного хоста, передаются на выходную пару интерфейса RS-422.
    3434
    35 Данные, принимаемые по входной паре интерфейса RS-422, передаются удаленному хосту. Алгоритм этой передачи зависит от значения конфигурационного параметра "Таймаут передачи". При нулевом значении параметра принятые из интерфейса RS-422 данные немедленно передаются в сеть удаленному хосту (записываются в сокет). При ненулевом значении параметра при приеме из интрерфейса RS-422 первого октета данных принятый октет помещается во временный буфер, при этом запускается таймер передачи на значение таймаута, установленное конфигурационным параметром. До истечения заданного таймаута все принимаемые из интерфейса RS-422 данные дописываются во временный буфер. При истечении заданного таймаута все накопленные во временном буфере данные передаются в сеть удаленному хосту. Таким образом, установка ненулевого значения таймаута передачи позволяет снизить частоту передаваемых через соединение TCP сегментов данных и тем самым сократить накладные расходы и уменьшить общий объем данных, передаваемых по сети, ценой некоторого увеличения задержки передачи. Это может быть полезно, например, в случае передачи через широкополосный канал с оплатой по объему трафика.
     35Данные, принимаемые по входной паре интерфейса RS-422, передаются удаленному хосту. Алгоритм этой передачи зависит от значения конфигурационного параметра "Таймаут передачи". При нулевом значении параметра принятые из интерфейса RS-422 данные немедленно передаются в сеть удаленному хосту (записываются в сокет). При ненулевом значении параметра при приеме из интерфейса RS-422 первого октета данных принятый октет помещается во временный буфер, при этом запускается таймер передачи на значение таймаута, установленное конфигурационным параметром. До истечения заданного таймаута все принимаемые из интерфейса RS-422 данные дописываются во временный буфер. При истечении заданного таймаута все накопленные во временном буфере данные передаются в сеть удаленному хосту. Таким образом, установка ненулевого значения таймаута передачи позволяет снизить частоту передаваемых через соединение TCP сегментов данных и тем самым сократить накладные расходы и уменьшить общий объем данных, передаваемых по сети, ценой некоторого увеличения задержки передачи. Это может быть полезно, например, в случае передачи через широкополосный канал с оплатой по объему трафика.
    3636
    3737 //Обратите внимание, что установка нулевого значения конфигурационного параметра "Таймаут передачи" не гарантирует, что принятые из интерфейса RS-422 данные будут немедленно отправлены в сеть. Отправка сегмента данных может быть задержана алгоритмами протокола TCP, например при наличии потерь из-за узкой полосы или низкого качества канала связи.//