Команды On-the-fly (<connection onthefly>)

Синтаксис:<connection ... [onthefly="outofband|inband|disabled"]/>
Значение по умолчанию (если не указано):"outofband"
Условия применимости:---

Команды On-the-fly используются для изменения конфигурации последовательного порта DS по мере необходимости («на лету»). Конфигурация порта, заданная командами on-the-fly, переопределяет постоянную, которая задана настройками последовательного порта DS. Отличие изменений, внесённых командами on-the-fly, от изменений через настройки DS в том, что команды on-the-fly действуют сразу и не требуют перезагрузки DS, чтобы новые значения были применены.

Когда команды on-the-fly включены, последовательный порт DS всегда настроен так, как требуется приложению на ПК, которое обменивается данными с этим DS через VSP. Когда приложение открывает VSP (или меняются параметры связи), приложение сообщает VSP о нужных изменениях, а VSP передаёт эту информацию DS в виде команд on-the-fly.

Кроме того, команды on-the-fly используются VSP для управления выходами RTS и DTR последовательного порта DS. Состояние входов CTS и DSR последовательного порта DS также может передаваться в VSP - для этого используются так называемые «уведомляющие сообщения».

Выпадающий список On-the-fly commands предлагает три варианта:

"outofband"Команды on-the-fly включены и отправляются в виде команд out-of-band (UDP). Настройка On-the-fly commands (RC) на DS должна быть установлена в 1 (включено), чтобы команды out-of-band принимались.
"inband"Команды on-the-fly включены и отправляются в виде команд inband (TCP). Настройка On-the-fly commands (RC) на DS должна быть установлена в 1 (включено), чтобы команды on-the-fly принимались. Кроме того, нужно выполнить ещё несколько шагов настройки, прежде чем DS начнёт распознавать inband-команды - см. подготовку DS к inband-доступу.
"disabled"Команды on-the-fly не отправляются вообще, поэтому последовательный порт DS использует «постоянную» конфигурацию, заданную в настройках последовательного порта. В этом режиме не имеет значения, какие параметры порта заданы в программе на ПК - DS о них знать не будет!

Как правило, рекомендуется оставлять команды on-the-fly включёнными (если нет особых причин, мешающих этому). Включённые команды on-the-fly поддерживают конфигурацию последовательного порта DS в соответствии с требованиями программы, которая использует VSP.

При выборе между режимами out-of-band и inband рекомендуется руководствоваться следующим:

Команды out-of-band работают в большинстве случаев, особенно когда ПК (на котором работает VSP) и DS находятся в одном сетевом сегменте. Команды out-of-band могут работать плохо или не работать вовсе для удалённых DS, которые находятся за маршрутизаторами, межсетевыми экранами и т. п.*. Причины этого следующие:

  • Маршрутизаторы известны тем, что «отбрасывают» UDP-датаграммы (на которых основаны команды on-the-fly out-of-band) при высокой сетевой нагрузке.
  • UDP-трафик блокируется межсетевыми экранами многих сетей (поэтому команды on-the-fly out-of-band в таких сетях не используются вовсе). Чтобы команды on-the-fly out-of-band работали, сеть должна разрешать UDP-трафик на порт 65535 или 32767!

Если возникла одна из описанных ситуаций, используйте inband-команды on-the-fly или не используйте команды on-the-fly вовсе!

* Сетевой сегмент подразумевает, что между ПК и всеми остальными устройствами сегмента есть только сетевые концентраторы (без маршрутизаторов, мостов, межсетевых экранов и т. п.).

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