Следующая:Protocol Selection, Следующая:, Предыдущая:Accepting a Call, Вверх:sys File



Protocol Selection


protocol string

Определяет, какой протокол использовать для работы с другой системой, и в каком порядке следует использовать данные протоколы. Обычно данная команда не используется. Пример данной команды protocol tfg.

Значение по умолчанию зависит от характеристик порта и номеронабирателя (dialer), как они определяют командами seven- bit и reliable. Если ни порт, ни номеронабиратель (dialer) не используют данные команды, то предполагается следующее значение по умолчанию - 8-и битовое надежное (reliable) соединение. Команды seven-bit true или reliable false могут использоваться для переустановки данных значений в port-е или dialer-е. Каждый протокол имеет конкретные требования, которые должны быть выполнены прежде, чем он будет рассматриваться во время переговоров с удаленной стороной.

Протоколы t и e предназначены для использования через TCP или по некоторым другим коммуникационным соединениям с 'end to end reliability' (гарантированная доставка с концевыми подтверждениями), так как данные протоколы не выполняют никаких проверок вообще. Данные протоколы рассматриваются только на TCP портах, которые являются надежными и восьми битными. Технические детали приведены в t Protocol и в e Protocol.

Протокол i является двунаправленным протокол. При этом требуется восьми битное соединение. Данный протокол работает через полудуплексное соединение, например Telebit модем в PEP режиме, но для более эффективного использования таких соединений, следует использовать команду half-duplex (смотрите port File) Смотрите i Protocol.

Протокол g является надежным, но требует восьми битного соединения. Смотрите g Protocol.

Протокол G является версией g протокола системы System V Release 4. Смотрите Big G Protocol.

Протокол a - Zmodem подобный протокол, разработанный (contributed) Doug Evans. Данный протокол требует восьми битового подключения, но в отличие от протокола g или от протокола i, он будет работать, если некоторые управляющие символы не могут быть переданы по соединению.

Протокол j это вариант i протокола, который может исключить передачу некоторых управляющих символов. Набор символов, которые следует исключить при передаче, устанавливается параметром. В то время как технически не требуется восьми битового подключения (можно все настроить таким образом, чтобы избежать передачи всех символов с установленным старшим битом) будет очень неэффективно использовать такой подход. Протокол может быть полезен на восьми битовом соединении, которое не может передавать некоторые управляющие символы. Смотрите j Protocol.

Протокол f предназначен для использования с соединениями X.25; при этом подсчитываются контрольные суммы для каждого файла в целом, так что любая ошибка приводит к повторной передаче полного файла. Для данного протокола требуется надежное семибитовое соединение. Данный протокол является потоко ориентированным протоколом, если он используется на последовательном порте, то порт должен быть надежным и поддерживать управление потоком. Смотрите f Protocol.

Протокол v это g протокол, который используется DOS программой UUPC/Extended. Он введен только для того, чтобы пользователи UUPC/Extended могли использовать данный протокол; в других случаях нет никакой особой причины для выбора данного протокола. Смотрите v Protocol.

Протокол y - эффективный потоковый протокол. Протокол осуществляет проверку ошибок, но при обнаружении ошибки немедленно прерывает соединение. Он требует надежного, восьми битового потокового соединения, с управлением потоком. Практически он полезен только для соединений, которые почти всегда свободны от ошибок. В отличие от протоколов t и e, подключение не должно быть полностью свободным от ошибок, поэтому y протокол может использоваться на последовательном порте. Смотрите y Protocol.

Протоколы рассматриваются в указанном порядке. Это означает, что, если команды seven-bit, reliable не используются, то t протокол используется по TCP соединению, а i протокол используется на других типах соединений (если конечно эти протоколы поддерживаются удаленной системой; кроме того, предполагается, что все системы поддерживают g протокол).

Обратите внимание, что в настоящее время одновременное задание и seven-bit true reliable false не соответствует никакому протоколу. Если это происходит для заданной комбинации номеронабирателя и порта, то следует использовать команду protocol для системы или не задавать протокол вообще (единственный разумный выбор при этом - protocol f).

Список протоколов может также задаваться для порта (смотрите port File), но, если присутствует список для систем, список для портов игнорируется.

protocol-parameter character string ...

character это символ, который задает имя протокола. Остающиеся строки - это команды, специфичные для используемого протокола, который будет выполнен, если данный протокол используется. Пример команды - window 7. Конкретные команды являются протокольно зависимыми.

Протокол i поддерживает следующие команды, все из которых используют числовые параметры:

window
Размер окна, запрашиваемый у удаленной системы. Значение должно быть от 1 и до 16 включительно. Значение по умолчанию составляет 16.
packet-size
Размер пакета, запрашиваемый у удаленной системы. Должно быть, между 1 и 4095 включительно. Значение по умолчанию составляет 1024.
remote-packet-size
Если данный размер от 1 и до 4095 включительно, то размер пакета, запрашиваемый удаленной системой игнорируется, и используется указанное значение. Значение по умолчанию составляет 0, что означает, что принимается запрос удаленной системы.
sync-timeout
Отрезок времени, в секундах, на ожидание SYNC пакета от удаленной системы. Обмен SYNC пакетами происходит при старте протокола. Значение по умолчанию составляет 10.
sync-retries
Количество повторных отсылки SYNC пакетов перед отказом. Значение по умолчанию составляет 6.
timeout
Таймаут, в секундах, на ожидание поступающего пакета перед отсылкой отрицательного подтверждения. Значение по умолчанию составляет - 10.
retries
Количество повторов на отсылку пакетов или отрицательного подтверждения перед отказом и закрытием соединения. Значение по умолчанию составляет 6.
errors
Максимальное количество ошибок, которое разрешено до закрытия соединения. Значение по умолчанию составляет 100.
error-decay
Скорость игнорирования ошибок. Всякий раз, когда получено указанное количество пакетов, счетчик ошибок уменьшается на единицу, для того, чтобы соединение со случайной ошибкой не превысило предел, установленный командой errors. Значение по умолчанию составляет 10.
ack-frequency
Количество пакетов, получаемых перед отсылкой подтверждения. Значение по умолчанию половина запрошенного размера окна, что должно обеспечить хорошую работу в большинстве случаев.

Протоколы g, G и v поддерживают следующие команды, все из которых используют числовые параметры, за исключением short- packets, у которого в качестве аргументов используется булевский параметр:

window
Размер окна, который запрашивается у удаленной системы. Размер окна должен быть между 1 и 7 включительно. Значение по умолчанию составляет - 7.
packet-size
Размер пакета, запрашиваемый на использование у удаленной системы. Размер пакета должен быть степенью 2 и находится между 32 и 4096 включительно. Значение по умолчанию составляет 64 для протоколов g и G и 1024 для v протокола. Большинство старших пакетов UUCP не поддерживают размеры пакетов большие, чем 64, а другие не поддерживают размеры пакетов, которые большее чем 128. Некоторые UUCP пакеты даже сбрасывают DUMP ядра, если требуется больший размер пакета. Размер пакета не является предметом переговоров, и может отличаться для каждого направления. Если запрашивается размер пакета больше чем поддерживаемый удаленной системой, то вы не сможете отослать любые файлы.
startup-retries
Количество повторов инициализационной последовательности. Значение по умолчанию составляет 8.
init-retries
Количество повторов одной фазы инициализационной последовательности (всего существует три фазы инициализации). Значение по умолчанию составляет 4.
init-timeout
Таймаут в секундах для одной фазы инициализационной последовательности. Значение по умолчанию составляет 10.
retries
Количество переповторов на отсылку или пакета данных или запроса на отсылку следующего пакета. Значение по умолчанию составляет 6.
timeout
Таймаут в секундах на ожидание либо пакета данных или подтверждения. Значение по умолчанию составляет 10.
garbage
Количество нераспознанных байтов, которое разрешено перед сбросом соединения. Значение должно быть большее, чем размер пакета. Значение по умолчанию составляет 10000.
errors
Количество ошибок (бесформенные пакеты, пакеты не в порядке очереди, пакеты с плохой контрольной суммой, или пакеты откинутые удаленной системой) которые разрешены перед сбросом соединения. Значение по умолчанию составляет 100.
error-decay
Скорость игнорирования ошибок. Каждый раз, когда получено указанное количество пакетов, счетчик ошибки уменьшается на единицу, поэтому соединение со случайной ошибкой, не превышает предел, установленный с помощью команды errors. Значение по умолчанию составляет 10.
remote-window
Если указанное значение лежит между 1 и 7 включительно, то размер окна, запрошенный удаленной системой, игнорируется, и используется значение, указанное данной командой. Значение по умолчанию составляет 0, что обозначает что запрос удаленной системы принимается.
remote-packet-size
Если данное значение лежит между 32 и 4096 включительно, то размер пакета, запрошенный удаленной системой, игнорируется, и вместо этого используется указанное значение. Вероятно, не имеет смысла применять данную команду. Значение по умолчанию составляет 0, что обозначает, что запрос удаленной системы принимается.
short-packets
Если это верно, то код оптимизирует отсылку более коротких пакетов, при их отсылке. Это запутывает некоторые UUCP пакеты, такие как System V Release 4 (при использовании G протокола); при соединении с таким пакетом, данный параметр должен быть установлен в false. Значение по умолчанию составляет true (истина) для протоколов g и v и ложно для протокола G.

Протокол a это - Zmodem подобный протокол, разработанный Doug Evans. Данный протокол поддерживает следующие команды, которым передается числовые аргументы, за исключением escape-control, который принимает булевский параметр:

timeout
Количество секунд, ожидаемых на прибытие пакетов. Значение по умолчанию - 10.
retries
Количество попыток повторной отсылки пакета. Значение по умолчанию составляет 10.
startup-retries
Количество переповторов отсылаемых пакетов инициализации. Значение по умолчанию равно 4.
garbage
Количество ошибочных символов, принимаемых до закрытия соединения. Значение по умолчанию составляет 2400.
send-window
Количество символов, которые можно отослать перед полученным подтверждением. Значение по умолчанию составляет 1024.
escape-control
Определяет, поддерживаются ли управляющие (escape) символы. Если данное значение составляет истину, то протокол может использоваться по соединению, которое не передает некоторые управляющие символы, например XON или XOFF. Данное соединение по прежнему должно быть способным передавать восьми битовые символы, которые отличаются от управляющих символов. Значение по умолчанию составляет false.
Протокол j может использоваться по восьми битовому соединению, которое не передает некоторые управляющие символы. При этом воспринимаются те же самые протокольные параметры, которые воспринимает i протокол:
avoid
Список символов, которые следует избегать. Это строка, которая должна интерпретироваться как escape последовательность (смотрите Chat Scripts). У протокола нет возможности избежать printable ASCII символов (символов ASCII, которые могут быть напечатаны) (байты от 32 до 126, включительно); можно исключить только управляющие ASCII символы и восьми битовые символы. Значение по умолчанию составляет - \021\023; это символы XON и XOFF, которые используются на многих соединениях для управления потоком данных. Если пакет настроен на использование HAVE_BSD_TTY, то на некоторых версиях Unix, вероятно, придется избегать также кода \377, из-за того, как некоторые реализации терминального BSD драйвера обрабатывают сигналы.

Протокол f предназначен только для использования с модемами, которые поддерживают исправление ошибки; при этом подсчитываются контрольные суммы каждого файла целиком, поэтому любая ошибка приводит к полной перетрансляции файла целиком. Поддерживаются следующие команды, каждая из которых использует числовые параметры:

timeout
Таймаут в секундах. Значение по умолчанию составляет 120.
retries
Сколько раз следует повторять отсылку файла. Значение по умолчанию составляет 2.

Протоколы t и e предназначены для использования по TCP или по некоторым другим коммуникационным путям c меж концевой гарантированной доставкой, поскольку при этом проверка не делается вообще. Оба протокола поддерживают единственную команду, которая использует числовой аргумент:

timeout
Таймаут в секундах до отказа. Значение по умолчанию составляет 120.

Протокол y это потоковый протокол, предоставленный (contributed) Jorge Cwik. Поддерживает следующие команды, каждая из которых используют следующие числовые аргументы:

timeout
Таймаут в секундах на ожидание пакета. Значение по умолчанию составляет 60.
packet-size
Размер используемого пакета. Значение по умолчанию составляет 1024.

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