Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Хайретдинов_Лекции_СИТ-n.doc
Скачиваний:
2
Добавлен:
01.04.2025
Размер:
14 Мб
Скачать
☆

Простой протокол telnet

Как мы сказали, TELNET — это протокол удаленного доступа для Internet. Он позволяет Вам, сидя за клавиатурой одного компьютера, входить по сети в удаленную (другую) систему. Связь может устанавливаться с компьютером, стоящим в этой же комнате, в этом же городе или в отдаленном уголке земного шара. Когда связь установлена, Вы можете работать так, как будто Ваша клавиатура подключена непосредственно к удаленному компьютеру. Вы можете пользоваться всеми средствами, которые удаленный компьютер предоставляет своим локальным терминалам, проводить обычный диалоговый сеанс (входить в систему, выполнять команды) или получать доступ к множеству специальных сервисных средств: просматривать библиотечные каталоги, читать газеты и журналы, узнавать репертуары театров и пользоваться многими другими услугами, предоставляемыми различными рабочими станциями сети.

Наиболее простой способ использования telnet - ввести следующую команду:

% telnet имя_удаленного_компьютера

на командном уровне. Мы используем интерпретатор команд csh операционной системы UNIX, поэтому в качестве приглашения для ввода команд используется знак процента (%). Если Вы работаете с другой операционной системой (DOS, VAX/VMS, Macintosh), команда в основном будет такой же, за исключением незначительных деталей. Ниже приведен очень общий пример:

% telnet sonne.uiuc.edu

Trying.

Connected to sonne.uiuc.edu.

Escape character is '^]'.

SunOS UNIX (sonne)

login: krol вход в удаленную систему

Password: пароль системой не отображается

Last login: Sat Sep 7 17:16:35 from uxl.uiuc.edu

SunOS Release 4.1 (GENERIC) #l:Tue Mar 6 17:27:17 PST 1990

sonne% ls команда выполняется удаленной системой

Mail News development project1

sonne% pwd команда выполняется удаленной системой

/home/sonne/krol

sonne% logout выход из удаленной системы

% возвращение в локальную систему

Мы дали программе telnet указание найти удаленный компьютер с именем sonne.uiuc.edu. Обнаружив этот компьютер, программа начала сеанс работы с терминалом. После начала сеанса диалог с компьютером имеет тот же вид, что и в случае, если бы Вы сидели за терминалом, подключенным непосредственно к удаленной рабочей станции.2 В частности, Вы должны входить в систему и выходить из нее точно так же, как если бы Вы были подключены непосредственно к этому компьютеру. После регистрации можете подавать любые команды, приемлемые для данной удаленной системы. Поскольку sonne.uiuc.edu — UNIX-система, то можно использовать все стандартные команды этой операционной системы (например, ls и pwd). При выходе из удаленной системы программа telnet завершает работу. Все дальнейшие команды будут выполняться Вашей локальной системой.

Вот в сущности и все, что делает telnet. Другими словами, это средство, которое позволяет Вам работать в сети на удаленных компьютерах. В этой главе мы обсудим ряд команд и возможностей программы telnet, а также увидим, что ее можно использовать для доступа к некоторым специальным серверам с особыми функциями. Но в данный момент все, что Вам нужно для начала работы — это простая команда telnet (плюс имя и пароль на удаленном компьютере).

Рассмотрим более подробно, что происходит, когда начинается сеанс работы с протоколом TELNET. Прикладная программа состоит из двух взаимодействующих между собой компонентов: программы-клиента, которая выполняется на компьютере, запрашивающем обслуживание, и программы-сервера, которая выполняется на компьютере, предоставляющем эту услугу. Сеть, реализующая средства протоколов TCP или UDP, является средой, через которую эти программные модули взаимодействуют между собой.

Программа-клиент, выполнение которой началось в Вашей системе, когда Вы набрали команду telnet, должна:

  • установить сетевое соединение с сервером посредством протокола TCP; >- принять от Вас входные данные в любой удобной форме;

  • преобразовать эти входные данные к стандартному формату и послать их серверу;

  • принять от сервера выходные данные в стандартном формате;

  • переформатировать полученные выходные данные для отображения на экране Вашего терминала.

Программа-сервер выполняется на компьютере, предоставляющем услугу; если программа-сервер не работает, услуга недоступна. В UNIX-системах программы-серверы часто называют демонами — системными заданиями, которые все время выполняются в фоновом режиме. Эти "молчаливые помощники" ожидают запросов на свои услуги и при поступлении такого запроса "бросаются в бой". Если программа-сервер готова принимать запросы, то она выполняет следующие действия:

  • информирует сетевое программное обеспечение о том, что она готова к установлению подсоединений;

  • ожидает запроса в стандартном формате;

  • обслуживает этот запрос;

  • посылает результаты обратно программе-клиенту в стандартном формате;

  • ожидает следующий запрос.

Программа-сервер должна обеспечивать работу с самыми разными клиентами, одни из которых работают на компьютерах того же типа, а другие — на компьютерах типа IBM PC, Macintosh, Amiga — словом, на том, что есть под рукой у клиента. Это достигается благодаря набору правил взаимодействия с сервером. Такой набор правил принято называть протоколом. В данном случае, поскольку протокол используется для взаимодействия частей прикладной программы, он называется прикладным протоколом. Любой программист может написать программу-клиент, используя любой тип компьютера. Если эта программа может устанавливать соединение по сети с программой-сервером и правильно выполнять протокол, то может получить доступ к данной услуге. На практике это означает, что Ваш Macintosh (IBM PC и т.д.) может использовать программу telnet и другие средства Internet для работы на огромном количестве разных систем, начиная с рабочих станций на базе ОС UNIX и заканчивая большими компьютерами фирмы IBM.

Прикладной протокол, как правило, позволяет программе-клиенту и программе-серверу различать данные, предназначенные для пользователя, и сообщения, которые эти программы используют для связи между собой" Часто это обеспечивается добавлением некоторого фрагмента текста в начало каждой строки. Например, если программа-сервер посылает программе-клиенту строку, в начале которой стоят символы "ТХТ", то остальную часть строки составляют данные, которые должны выводиться на экран терминала клиента. Если строка начинается с символов "CMD", то она является сообщением, которое программа-сервер посылает программе-клиенту. Естественно, Вы никогда не увидите идентифицирующих символов; к тому времени, как сообщение попадет к Вам, управляющая информация будет удалена. Посмотрим, как все это связано с TELNET.