Категории
Самые читаемые
💎Читать книги // БЕСПЛАТНО // 📱Online » Компьютеры и Интернет » Программное обеспечение » TCP/IP Архитектура, протоколы, реализация (включая IP версии 6 и IP Security) - Сидни Фейт

Читаем без скачивания TCP/IP Архитектура, протоколы, реализация (включая IP версии 6 и IP Security) - Сидни Фейт

Читать онлайн TCP/IP Архитектура, протоколы, реализация (включая IP версии 6 и IP Security) - Сидни Фейт

Шрифт:

-
+

Интервал:

-
+

Закладка:

Сделать
1 ... 68 69 70 71 72 73 74 75 76 ... 139
Перейти на страницу:

Что происходит, когда обе стороны отказываются от каждого запроса выбора варианта? Ответ прост — сеанс остается в режиме NVT.

13.6.1 Типы терминалов

Очень важен выбор типа терминала (Terminal Type). При этом происходит дополнительное согласование. Клиент посылает WILL TERMINAL TYPE, сообщая серверу типы терминалов, которые он может эмулировать. При желании ознакомиться с этой информацией сервер отвечает: DO TERMINAL TYPE.

Далее при дополнительном согласовании сервер запросит у клиента указать один из типов терминала, которые может эмулировать клиент. Клиент ответит сообщением установленного формата. Сервер продолжит запросы, пока не найдет в ответах клиента нужного типа терминала или пока не закончится список доступных для эмуляции клиентом типов терминалов. Допустимые типы терминалов определены в RFC Assigned Numbers: это могут быть DEC-VT100, HP-2648 или IBM-3278-2.

13.6.2 Согласование типа терминала VT100

В приведенном ниже примере диалога мы запустили сеанс telnet и ввели команду toggle options (переключение варианта), указывающую telnet на отображение операций по согласованию параметров. Команда open используется для запуска регистрации. Партнеры согласовывают между собой эмуляцию терминала ASCII VT100, выбирая следующие характеристики:

■ Сервер не будет посылать сообщений Go Ahead, поскольку сеанс работает в полнодуплексном режиме.

■ Используется дополнительное согласование типа терминала для указания на эмуляцию определенной модели терминала ASCII.

■ Сервер будет выполнять эхо-печать всех символов от клиента.

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

> telnet

telnet> toggle options

Will show option processing.

telnet> open cantor.cs.yale.edu

Trying 128.36.12.26 ... Connected to cantor.cs.yale.edu.

Escape character is '^]'.

SENT do SUPPRESS GO AHEAD

SENT will TERMINAL TYPE (ответ)

RCVD do TERMINAL TYPE (без ответа)

RCVD will SUPPRESS GO AHEAD (без ответа)

RCVD will ECHO (ответ)

SENT do ECHO (ответ)

login:

13.6.3 Согласование характеристик терминала 3270

Аналогичный обмен происходит при установке эмуляции типа терминала IBM 3270. Показанный ниже диалог представляет согласование регистрации на хосте IBM VM с терминала 3270. В этом примере удаленный хост выводит на экран сведения для дополнительного согласования при установке типа терминала. Партнеры согласовывают между собой эмуляцию терминала IBM 3278 Model 2 с выбором следующих характеристик:

■ Дополнительное согласование типа терминала специфицирует для терминала 3270 вариант "3278 модель 2".

■ Клиент и сервер запрашивают вариант END OF RECORD, чтобы установить для терминала 3270 блочный режим.

■ Обе стороны соглашаются использовать 8-разрядные двоичные данные для представления потока данных терминала 3270.

> tn3270

tn3270> toggle options

Will show option processing.

tn3270> open uoft.utoledo.edu

Trying...

Connected to uoft.utoledo.edu.

RCVD do TERMINAL TYPE (ответ)

SENT will TERMINAL TYPE (без ответа)

Received suboption Terminal type - request to send.

Sent suboption Terminal type is IBM-3278-2.

RCVD do END OF RECORD (ответ)

SENT will END OF RECORD (без ответа)

RCVD will END OF RECORD (ответ)

SENT do END OF RECORD (ответ)

RCVD do BINARY (ответ)

SENT will BINARY (без ответа)

RCVD will BINARY (ответ)

SENT do BINARY (ответ)

RUNNING

13.7 Управление текстовым клиентом telnet

Время от времени требуется осуществить взаимодействие с текстовым клиентом telnet и вывести или установить его параметры. Локальные команды конкретной реализации можно выяснить, если запустить telnet и напечатать "?" или "help".

> telnet

telnet> ?

Commands may be abbreviated. Commands are:

Close   close current connection

Display display operating parameters

Mode    try to enter line-by-line or character-at-a-time mode

Open    connect to a site

Quit    exit telnet

Send    transmit special characters ('send ?' for more)

Set     set operating parameters ('set ?' for more)

Status  print status information

Toggle  toggle operating parameters ('toggle ?' for more)

Z       suspend telnet

?       print help information

Как только пользователь попадает в окружение telnet, для соединения с удаленным хостом применяется команда open.

telnet> open plum.math.yale.edu

Trying 130.132.23.16 …

Connected to plum.math.yale.edu.

Escape character is '^]'.

login: xxxxxxxx

Password: xxxxxxxx

Last login: Sat Dec 28 06:30:44 from golem.cs.yale.ed

Sun UNIX 4.2 Release 3.4 (Plum-EGP) #3: Tue Aug 2 10:25:24 EDT 1988

*********************************************************

*                                                       *

* Welcome to the Yale Mathematics Department's Fabulous *

*                       ** Plum **                      *

*********************************************************

You have mail.

13.7.1 Важные управляющие последовательности

Как пользователь может изменить характеристики активного сеанса или прервать его? Одна комбинация управляющих клавиш всегда резервируется для операции перехода в командный режим telnet. По умолчанию такой последовательностью обычно бывает CONTROL и ] (иногда записывается как ^]). Эта esc-последовательность может быть переопределена пользователем. Вспомним, что после открытия соединения с plum.math.yale.edu были выведены три строки, одна из которых указывала используемый символ Esc (отмена):

Escape character is `^]'.

После вывода этой строки диалог был продолжен. Ввод esc-последовательности позволяет вывести приглашение telnet. Теперь можно узнать текущее состояние сеанса:

^]

telnet> status

Connected to plum.math.yale.edu.

Operating in character-at-a-time mode.

Escape character is `^]'.

Выполнив эту команду, сеанс возвращается в режим эмуляции терминала.

Для ввода следующей команды управления нужно опять воспользоваться esc-последовательностью.

Запросим вывод текущих атрибутов сеанса telnet

^]

telnet> display

will flush output when sending interrupt characters.

won't send interrupt characters in urgent mode.

won't map carriage return on output.

won't recognize certain control characters.

won't process ^S/^Q locally.

won't turn on socket level debugging.

won't print hexadecimal representation of network traffic. won't show option processing.

[^Е] echo.

[^]] escape.

[^?] erase.

[^0] flushoutput.

[^С] interrupt.

[^U] kill.

[^] quit.

[^D] eof.

13.8 Возможности NVT

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

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

Однако, когда telnet используется для создания приложений клиент/сервер, все взаимодействия или большая их часть происходят в режиме NVT. Рассмотрим характеристики этого режима более подробно.

13.8.1 Набор символов N1VT

Пересылаемые во время сеанса NVT октеты представляют собой символы USASCII и команды telnet. Существует 128 символов USASCII. Из них: 95 — доступные для отображения буквы, числа, символы и знаки препинания; 33 — управляющие символы ASCII (например, горизонтальная табуляция). Коды USASCII разработаны как 7-разрядные. Символы USASCII передаются как октеты со старшим битом, равным 0.

13.8.2 Принтер NVT

В течение основного сеанса NVT сервер telnet посылает алфавитно-цифровые и управляющие символы на клиентский принтер NVT, т.е. на экран терминала пользователя. Вывод на экран ограничен 95 символами USASCII, соответствующими кодам ASCII от 32 до 126.

Для управления экраном клиента серверу доступно небольшое подмножество управляющих символов (см. таблицу 13.1). В таблице коды ASCII представлены десятичными числами.

1 ... 68 69 70 71 72 73 74 75 76 ... 139
Перейти на страницу:
На этой странице вы можете бесплатно скачать TCP/IP Архитектура, протоколы, реализация (включая IP версии 6 и IP Security) - Сидни Фейт торрент бесплатно.
Комментарии