- •1 Расчет конфигурации сети Ethernet 4
- •2 Изучение структуры ip-адреса 17
- •3 Взаимодействие прикладных программ с помощью транспортного протокола tcp 25
- •4 Взаимодействие прикладных программ с помощью протокола электронной почты smtp 40
- •5 Взаимодействие прикладных программ с помощью протокола электронной почты pop3 52
- •6 Взаимодействие прикладных программ с помощью протокола передачи данных ftp 61
- •Расчет конфигурации сети Ethernet
- •1.1Критерии корректности конфигурации
- •1.2Методика расчета времени двойного оборота и уменьшения межкадрового интервала
- •1.3Пример расчета конфигурации сети
- •1.4Задание на лабораторную работу
- •1.5Справочные данные ieee
- •1.6Контрольные вопросы
- •Изучение структуры ip-адреса
- •1.7Типы адресов стека tcp/ip
- •1.8Классы ip-адресов
- •1.9Особые ip-адреса
- •1.10Использование масок в ip-адресации
- •1.11Задание на лабораторную работу
- •1.12Контрольные вопросы
- •Взаимодействие прикладных программ с помощью транспортного протокола tcp
- •1.13Транспортный протокол tcp
- •1.14Транспортный протокол udp
- •1.15Порты, мультиплексирование и демультиплексирование
- •1.16Логические соединения
- •1.17Программирование обмена данными на основе транспортных протоколов
- •1.18Пример реализации простейшего клиент-серверного приложения на основе сокетов
- •1.19Задание на лабораторную работу
- •1.20Справочные данные
- •1.21Контрольные вопросы
- •Взаимодействие прикладных программ с помощью протокола электронной почты smtp
- •1.22Модель протокола, команды и коды ответов smtp
- •1.23Кодировка сообщений
- •1.24Процесс передачи сообщений
- •1.25Пример последовательности команд почтовой транзакции
- •1.26Задание на лабораторную работу
- •1.27Справочные данные
- •1.28Контрольные вопросы
- •Взаимодействие прикладных программ с помощью протокола электронной почты pop3
- •1.29Модель протокола рор3, его назначение и стадии рор3-сессии
- •1.30Формат сообщений
- •1.31Процесс получения сообщений. Команды и ответы протокола рор3
- •1.32Задание на лабораторную работу
- •1.33Справочные данные
- •1.34Контрольные вопросы
- •Взаимодействие прикладных программ с помощью протокола передачи данных ftp
- •1.35Назначение и модели работы протокола ftp
- •1.36Особенности управления процессом обмена данными
- •1.37Команды и ответы протокола ftp
- •1.38Задание на лабораторную работу
- •1.39Справочные данные
- •1.40Контрольные вопросы
- •Список рекомендуемой литературы
1.36Особенности управления процессом обмена данными
Основу передачи данных FTP составляет механизм установления соединения между соответствующими портами и выбора параметров передачи. Каждый участник FTP-соединения должен поддерживать порт передачи данных по умолчанию. По умолчанию «Программа передачи данных пользователя» использует тот же порт, что и для передачи команд, а «Программа передачи данных сервера» использует порт L-1, где L – управляющий порт. Однако для ускорения процессов обмена данными участники соединения часто используют другие порты передачи данных.
Передача данных может вестись в активном или пассивном режиме. Если доступ к ftp-серверу осуществляется через proxy-сервер, то возможна работа только в пассивном режиме.
Установление соединения передачи данных при активном режиме работы происходит следующим образом:
Клиент создает сокет на выбранном им порте Р и активизирует его (переводит в режим ожидания соединения).
Клиент направляет серверу по управляющему соединению команду PORT (описание приведено ниже), в которой указывает свой IP-адрес и выбранный для передачи данных порт Р.
В случае успешного получения и обработки команды PORT сервер по управляющему соединению отправляет клиенту положительный отклик. Затем сервер пытается соединиться с портом Р клиента со своего локального порта данных А (может быть выбран сервером произвольно).
Клиент обнаруживает событие соединения на порт Р и начинает процесс передачи данных с использованием управляющего соединения для отправки команд FTP-сервиса и соединения передачи данных для получения либо отправки данных.
Установление соединения передачи данных при пассивном режиме работы происходит следующим образом:
Клиент отправляет по управляющему соединению команду PASV, указывающую серверу о намерении клиента работать в пассивном режиме.
В случае успешного получения и обработки команды PASV сервер создает сокет на выбранном им порте Р, активизирует его (переводит его в режим ожидания соединения) и отправляет клиенту по управляющему соединению отклик, в котором указываются параметры соединения (IP-адрес сервера и порт Р).
Клиент, получив положительный отклик с параметрами соединения, создает на произвольном порте А сокет и активизирует его, то есть пытается соединиться с портом Р сервера.
В случае успешного установления соединения клиент начинает процесс передачи данных с использованием управляющего соединения для отправки команд FTP-сервиса и соединения передачи данных для получения либо отправки данных.
Одновременно с передачей данных по установленному соединению в обоих режимах по каналу «Интерпретатор протокола сервера» – «Интерпретатор протокола пользователя» могут передаваться уведомления о получении данных. Протокол FTP требует, чтобы управляющее соединение было открыто, пока по каналу обмена данными идет передача.
Как правило, сервер FTP ответственен за открытие и закрытие канала передачи данных. Сервер FTP должен самостоятельно закрыть канал передачи данных в следующих случаях:
Сервер закончил передачу данных в формате, который требует закрытия соединения.
Сервер получил от пользователя команду «прервать соединение».
Пользователь изменил параметры порта передачи данных.
Было закрыто управляющее соединение.
Возникли ошибки, при которых невозможно возобновить передачу данных.