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 представлены десятичными числами.
Таблица 13.1 Управление принтером MVT
| Описание | Код ASCII |
|---|---|
| Null (Пустой, используется как заполнитель) | 0 |
| Bell (Звонок для вывода звукового сигнала) | 7 |
| Backspace (На шаг назад, перемещение на один символ влево) | 8 |
| Horizontal tab (Горизонтальная табуляция) | 9 |
| Line feed (Перевод строки) | 10 |
| Vertical tab (Вертикальная табуляция) | 11 |
| Form feed (Перевод формата, перемещение к следующей странице) | 12 |
| Carriage return (Возврат каретки) | 13 |
13.8.3 Взаимодействие клиент/сервер telnet в режиме NVT
Вспомним, что взаимодействие NVT является полудуплексным — клиент или сервер telnet в каждый момент времени производит одно из следующих действий:
■ После того как клиент telnet послал строку, завершенную CR и LF, управление передается серверу.
■ Сервер посылает клиенту строки, и в конце каждой выведенной строки он использует CR и LF для перехода к позиции следующей строки на дисплее клиента.