Инструменты пользователя

Инструменты сайта


examination:computer_science:question56

Вопрос №56 Основные сетевые протоколы (FTP, Telnet, IRC, POP3, SMTP)

Сетевой протокол - это набор правил и стандартов, по которым происходит обмен данными в компьютерной сети.

Разные протоколы описывают лишь разные стороны одного типа связи. Вместе они образуют стек протоколов.

Протокол FTP относится к прикладному уровню модели OSI и TCP/IP (этот уровень обеспечивает взаимодействие пользовательских приложений с сетью. Этот уровень позволяет приложениям использовать сетевые службы, такие как удалённый доступ к файлам и базам данных, пересылка электронной почты. Также отвечает за передачу служебной информации, предоставляет приложениям информацию об ошибках и формирует запросы к уровню представления)

FTP (англ. File Transfer Protocol — протокол передачи файлов) — протокол, предназначенный для передачи файлов в компьютерных сетях. FTP позволяет подключаться к серверам FTP, просматривать содержимое каталогов и загружать файлы с сервера или на сервер; кроме того, возможен режим передачи файлов между серверами.

Как работает FTP.

Для передачи файла с помощью протокола FTP нужны две программы: FTP-клиент и FTP-сервер.

FTP-клиент: FTP-клиент - это сервисная программа, с помощью которой можно произвести соединение с FTP сервером. Обычно эта программа имеет командную строку, но некоторые имеют оконный интерфейс и не требуют запоминания команд.

FTP-сервер: FTP-сервер - компьютер, который содержит общедоступные файлы и настроен на поддержку протокола FTP (FTP-сервер должен иметь программное обеспечение, поддерживающее протокол FTP).

Программа, поддерживающая протокол FTP на FTP-сервере, отслеживает все запросы, приходящие от других компьютеров (например, с вашего), обрабатывает их и даёт ответ.

При установке FTP-сервера указывается доступная для других программ клиентов директория.

Все файлы и директории имеют свои атрибуты, которые ограничивают к ним доступ с удалённых компьютеров.

Например, можно сделать так, чтобы один файл был доступен только для чтения, другой - для чтения и записи, третий - только для выполнения, четвёртый - полностью открыт для других машин и так далее. То же самое и с директориями.

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

О режимах соединения с сервером по FTP

Режим соединения определяет правила создания соединений по передаче данных через протокол FTP. Для соединения с FTP-сервером существует два режима:

активный (active) – режим передачи данных, при котором клиент соединяется с сервером по порту 21 и передает ему команды, а для передачи файлов сервер соединяется с клиентом, и уже по этому каналу передаются файлы. Такой режим невозможно использовать пользователям выходящим в интернет через NAT (Network Address Translation).

пассивный (passive) – режим передачи данных, при котором клиент соединяется с сервером по порту 21 и передает ему команды, а для передачи файлов сервер открывает дополнительный порт и сообщает клиенту его номер командой PORT [NUM]. После этого клиент открывает дополнительное соединение к порту [NUM] и начинает передачу данных.

Что такое FTP соединение.

FTP соединение означает, что вы соединились с удаленным компьютером при помощи FTP протокола.

URL FTP-сервера, выглядит так - ftp.ххх.хх

Пример (адрес FTP сервера):ftp.narod.ru

Алгоритм работы протокола FTP состоит в следующем:

Сервер FTP использует в качестве управляющего соединение на TCP порт 21, который всегда находится в состоянии ожидания соединения со стороны пользователя FTP.

После того как устанавливается управляющее соединение модуля 'Интерпретатор протокола пользователя' с модулем сервера - 'Интерпретатор протокола сервера', пользователь (клиент) может отправлять на сервер команды. FTP-команды определяют параметры соединения передачи данных: роль участников соединения (активный или пассивный), порт соединения (как для модуля 'Программа передачи данных пользователя', так и для модуля 'Программа передачи данных сервера'), тип передачи, тип передаваемых данных, структуру данных и управляющие директивы, обозначающие действия, которые пользователь хочет совершить (например, сохранить, считать, добавить или удалить данные или файл и другие).

После того как согласованы все параметры канала передачи данных, один из участников соединения, который является пассивным (например, 'Программа передачи данных пользователя'), становится в режим ожидания открытия соединения на заданный для передачи данных порт. После этого активный модуль (например, 'Программа передачи данных сервера') открывает соединение и начинает передачу данных.

После окончания передачи данных, соединение между 'Программой передачи данных сервера' и 'Программой передачи данных пользователя' закрывается, но управляющее соединение 'Интерпретатора протокола сервера' и 'Интерпретатора протокола пользователя' остается открытым. Пользователь, не закрывая сессии FTP, может еще раз открыть канал передачи данных.


Протокол Telnet относится к прикладному уровню модели TCP/IP (Верхний уровень модели, обеспечивает взаимодействие пользовательских приложений с сетью. Этот уровень позволяет приложениям использовать сетевые службы, такие как удалённый доступ к файлам и базам данных, пересылка электронной почты. Также отвечает за передачу служебной информации, предоставляет приложениям информацию об ошибках и формирует запросы к уровню представления)

TELNET (англ. TELecommunication NETwork) — сетевой протокол для реализации текстового интерфейса по сети (в современной форме — при помощи транспорта TCP). Название «telnet» имеют также некоторые утилиты, реализующие клиентскую часть протокола.

TELNET представляет собой протокол эмуляции терминала(Когда устанавливается TELNET соединение, предполагается, что на каждом конце соединения порождается и завершается «Виртуальный Сетевой Терминал» или ВСТ. ВСТ — это воображаемое устройство которое предоставляет стандартное, доступное через cеть, промежуточное представление классического терминала. Это устраняет необходимость в «серверном» и «клиентском» узлах для хранения информации о характеристиках каждого терминала и договоренностей о взаимодействии. Все узлы, как клиентский, так и серверный, отображают свои локальные характеристики устройства с тем, чтобы выступать в сети как ВСТ, и каждый мог принять похожее отображение с другой стороны. ВСТ предназначен для сведения баланса между чрезмерным ограничением и чрезмерными возможностями.) в стеке TCP/IP. Современные варианты TELNET обеспечивают эмуляцию практически всех функций терминалов различных типов, разработанных в течение последних 20 лет. Набор опций позволяет протоколу TELNET поддерживать передачу двоичных данных, макросы, эмуляцию графических терминалов и передачу информации для поддержки централизованного управления терминалами.

TELNET использует транспортный протокол TCP для организации виртуальных соединений между серверами и клиентами. После организации соединения сервер и клиент TELNET входят в фазу согласования параметров, определяющих режим работы каждой из сторон соединения. В течение сеанса любая из сторон может заново инициализировать старые параметры или согласовать новый набор параметров. В общем случае каждая сторона TELNET-соединения пытается реализовать максимально возможный набор поддерживаемых опций.

В типовой реализации клиент TELNET посылает информацию о нажатии клавиш, в ответ на которую сервер TELNET может передать один или несколько символов. При использовании опции Echo (эхо) сервер TELNET передает клиенту символы, соответствующие нажатиям клавиш на стороне клиента TELNET.

В среде специалистов по технологиям internet распространено мнение, что клиент Telnet пригоден для осуществления ручного доступа (например, в целях отладки) к таким протоколам прикладного уровня как HTTP, IRC, SMTP, POP3 и прочим текст-ориентированным протоколам на основе транспорта TCP.


Протокол IRC относится к прикладному уровню модели TCP/IP (Верхний уровень модели, обеспечивает взаимодействие пользовательских приложений с сетью. Этот уровень позволяет приложениям использовать сетевые службы, такие как удалённый доступ к файлам и базам данных, пересылка электронной почты. Также отвечает за передачу служебной информации, предоставляет приложениям информацию об ошибках и формирует запросы к уровню представления)

IRC (англ. Internet Relay Chat — ретранслируемый интернет-чат) — сервисная система, при помощи которой можно общаться через сеть Интернет с другими людьми в режиме реального времени.

Протокол IRC (Internet Relay Chat) входит в стандартный набор Интернет-протоколов. Он был разработан именно как средство связи нескольких чат-серверов работающих в разных сегментах Интернета. Основное его достоинство — это, несомненно, возможность связывать между собой несколько территориально разрозненных серверов. Таким образом, при использовании одного единственного сервера, IRC протокол привносит довольно большую избыточность в сетевой трафик уже по своей изначальной природе. Исторически, протокол IRC содержал довольно малый ассортимент сервисов, и лишь потом, когда жизнь признавала те или иные его возможности недостаточными, они расширялись все новыми документами и «под-стандартами». Так появились возможности DCC, позволяющие пересылать файлы и организовывать индивидуальные разговоры, так возникло огромное множество советов на тему «как преодолеть проблему многоязычности в Интернете» (стандартный IRC не поддерживает Unicode), и всё это, в результате, создало некоторые проблемы совместимости между разными версиями протоколов, расширений и нововведений от производителей популярных серверов и клиентов (в том числе есть и расширение IRCX от Microsoft, например).

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

IRC не имеет никаких встроенных средств для контроля сетевого трафика или его минимизации. Созданный более десяти лет назад, IRC ставит главной целью гарантированность доставки сообщения до каждого абонента даже огромной IRC-сети.

При подключении к серверу IRC пользователь видит список доступных каналов, в каждый из которых (или сразу в несколько) он может «войти» (подключиться). Канал представляет собой виртуальную «комнату», в которой могут находиться несколько пользователей. Все сообщения, выдаваемые в канал, видны всем пользователям, которые находятся только на этом же канале. Каждый канал имеет своё название и, как правило, определённую тему для обсуждения. После «входа» на канал пользователь может видеть, что пишут остальные участники канала, а также может сам писать сообщения. Тема, обсуждаемая на канале, обычно следует из его названия (например, канал #Wikipedia-ru).

Разные серверы могут объединяться (линковаться) в сеть с единым пространством имён пользователей и каналов. Крупные мировые IRC-сети насчитывают в своём составе сотни серверов. Аварийный временный разрыв IRC-сети на две части называется netsplit'ом (сплитом).

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

Операторы IRC-сети управляют работой серверов и сети в целом. Как правило, в IRC-сетях на операторов обычно тоже устанавливаются ограничения на уровне правил сети, сетевого этикета или даже на уровне IRCd/IRC-сервисов.


Протокол POP3 относится к прикладному уровню модели TCP/IP (Верхний уровень модели, обеспечивает взаимодействие пользовательских приложений с сетью. Этот уровень позволяет приложениям использовать сетевые службы, такие как удалённый доступ к файлам и базам данных, пересылка электронной почты. Также отвечает за передачу служебной информации, предоставляет приложениям информацию об ошибках и формирует запросы к уровню представления)

POP3 (англ. Post Office Protocol Version 3 — протокол почтового отделения, версия 3) используется почтовым клиентом для получения сообщений электронной почты с сервера. Обычно используется в паре с протоколом SMTP. POP3 mail протокол представляет собой протокол доступа почтового клиента (pop3 client) к какому-либо почтовому серверу (pop3 server) который позволяет клиенту скачивать и удалять письма с сервера на локальный компьютер клиента. POP3 порт на сервере, к которому подключается почтовая программа, по стандарту - 110. В случае, когда сервер поддерживает «безопасную почту» с шифрованием (pop3 SSL), порт либо тот - же, либо 995.

Состояния сеанса

В протоколе POP3 предусмотрено 3 состояния сеанса:

  • 1)Авторизация (Клиент проходит процедуру Аутентификации)
  • 2)Транзакция (Клиент получает информацию о состоянии почтового ящика, принимает и удаляет почту)
  • 3)Обновление (Сервер удаляет выбранные письма и закрывает соединение)

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


Протокол SMTP относится к прикладному уровню модели TCP/IP (Верхний уровень модели, обеспечивает взаимодействие пользовательских приложений с сетью. Этот уровень позволяет приложениям использовать сетевые службы, такие как удалённый доступ к файлам и базам данных, пересылка электронной почты. Также отвечает за передачу служебной информации, предоставляет приложениям информацию об ошибках и формирует запросы к уровню представления)

SMTP (англ. Simple Mail Transfer Protocol — простой протокол передачи почты) — это сетевой протокол, предназначенный для передачи электронной почты в сетях TCP/IP.

Основная задача протокола SMTP (Simple Mail Transfer Protocol) заключается в том, чтобы обеспечивать передачу электронных сообщений (почту). Для работы через протокол SMTP клиент создаёт TCP соединение с сервером через порт 25. Затем клиент и SMTP сервер обмениваются информацией пока соединение не будет закрыто или прервано. Основной процедурой в SMTP является передача почты (Mail Procedure). Далее идут процедуры форвардинга почты (Mail Forwarding), проверка имён почтового ящика и вывод списков почтовых групп. Самой первой процедурой является открытие канала передачи, а последней - его закрытие.

SMTP базируется на следующей модели коммуникаций: в ответ на запрос пользователя почтовая программа-отправитель устанавливает двухстороннюю связь с программой-приемником (TCP, порт 25). Получателем может быть оконечный или промежуточный адресат. SMTP-команды генерируются отправителем и посылаются получателю. На каждую команду должен быть отправлен и получен отклик.

Когда канал организован, отправитель посылает команду MAIL, идентифицирую себя. Если получатель готов к приему сообщения, он посылает положительное подтверждение. Далее отправитель посылает команду RCPT, идентифицируя получателя почтового сообщения. Если получатель может принять сообщение для оконечного адресата, он выдает снова положительное подтверждение (схема формирования откликов помещена в приложении 10.14). В противном случае он отвергает получение сообщения для данного адресата, но не вообще почтовой посылки.

examination/computer_science/question56.txt · Последние изменения: 2014/01/15 12:15 (внешнее изменение)