13.9.3 Кодирование запросов выбора вариантов
Запросы выбора вариантов кодируются тремя байтами: байтом IAC, октетом запроса и кодом варианта. Например, десятичное представление последовательности для WILL TERMINAL TYPE выглядит так:
| IAC | WILL | TERMINAL TYPE |
|---|---|---|
| 255 | 251 | 24 |
Это один из вариантов для дополнительного согласования. Далее должны следовать:
СЕРВЕР:
| IAC | SB | TERMINAL TYPE | SEND | IAC | SE |
|---|---|---|---|---|---|
| 255 | 250 | 24 | 1 | 255 | 240 |
КЛИЕНТ:
| IAC | SB | TERMINAL TYPE | IS | DEC-VT220 | IAC | SE |
|---|---|---|---|---|---|---|
| 255 | 250 | 24 | 0 | DEC-VT220 | 255 | 240 |
В таблице 13.3 показаны десятичные значения для кодов обычных и дополнительных согласований. Приведены также коды для часто используемых вариантов. Параметры дополнительного согласования и коды добавочных вариантов определены во многих RFC, относящихся к параметрам telnet (эти RFC перечислены в документе Assigned Numbers).
Таблица 13.3 Коды согласования и выбора вариантов
| Коды согласования | |
|---|---|
| Запрос | Код |
| WILL (будет) | 251 |
| WONT (не будет) | 252 |
| DO (выполнить) | 253 |
| DON'T (не выполнять) | 254 |
| SB (Start Subnegotiation, начало дополнительного согласования) | 250 |
| SE (End Subnegotiation, конец дополнительного согласования) | 240 |
| Примеры кодов вариантов | |
| Command Option (вариант команды) | Код |
| Transmit Binary (пересылка двоичных данных) | 0 |
| Echo (эхо-печать) | 1 |
| Suppress Go Ahead (подавление сообщения Go Ahead) | 3 |
| Status (состояние) | 5 |
| Timing Mark (метка времени) | 6 |
| Output Line Width (длина выходной строки) | 8 |
| Output Page Size (размер выводимой страницы) | 9 |
| Extended ASCII (расширенный набор ASCII) | 17 |
| Data Entry Terminal (терминал ввода данных) | 20 |
| Terminal Type (тип терминала) | 24 |
| End of Record (конец записи) | 25 |
| Window Size (размер окна) | 31 |
| Terminal Speed (скорость терминала) | 32 |
| Remote Flow Control (удаленное управление потоком) | 33 |
| Linemode (построчный режим) | 34 |
| Authentication (аутентификация) | 37 |
| Encryption (шифрование) | 38 |
| Extended Options List (расширенный список вариантов) | 255 |