В чем разница между HTTP, FTP и SMTP?

Опубликовано: 20 Декабря, 2021

Предварительные требования - HTTP, FTP и SMTP
HTTP означает протокол передачи гипертекста, FTP - протокол передачи файлов, а SMTP означает простой протокол передачи почты. Все три используются для передачи информации по компьютерной сети и являются неотъемлемой частью современного Интернета.

Зачем нам нужны три протокола для передачи файлов?
Нам нужны три протокола, поскольку все они служат разным целям. Это HTTP, FTP и SMTP.

  1. HTTP - это основа всемирной паутины (WWW). Он определяет формат сообщений, через которые обмениваются данными веб-браузеры (например, Firefox, Chrome) и веб-серверы, а также определяет, как веб-браузер должен отвечать на конкретный запрос веб-браузера.
  2. FTP - это базовый протокол, который, как следует из названия, используется для передачи файлов по сети связи. Он устанавливает два TCP-соединения: Control Connection для аутентификации пользователя и Data Connection для передачи файлов.
  3. SMTP - это то, что используется серверами электронной почты по всему миру для связи друг с другом, так что задание, которое вы отправили в 23:59, попадет в почтовый ящик вашего профессора в течение установленного срока.

Чем отличаются их реализации?
Все три являются протоколами прикладного уровня, использующими TCP в качестве базового протокола транспортного уровня. Но то, как они его используют и в целом реализуют, сильно отличается. В таблице ниже они кратко различаются.

Параметр HTTP FTP SMTP
Номер порта 80 20 и 21 25
Тип ленточного переноса Внутриполосный Из группы Внутриполосный
Состояние Без гражданства Поддерживает состояние -
Количество TCP-соединений 1 2 (соединение данных и соединение управления) 1
Тип TCP-соединения Может использовать как постоянное, так и непостоянное Стойкий для
Контрольное соединение.
Непостоянный для
Подключение для передачи данных
Настойчивый
Тип протокола Протокол вытягивания (в основном) - Протолкнуть протокол (в первую очередь)
Тип трансфера Передача файлов между веб-сервером и веб-клиентом Передача напрямую между компьютерами Передает почту через почтовые серверы
  • HTTP не имеет состояния. Протокол без сохранения состояния подразумевает, что веб-сервер HTTP не поддерживает, какой запрос был отправлен от какого пользователя. Следовательно, чтобы предоставить пользователю индивидуальную услугу, HTTP использует файлы cookie.
  • FTP является внеполосным, так как он использует отдельный канал для отправки данных (соединение для передачи данных), а также для отправки управляющей информации (контрольное соединение).
  • Поскольку SMTP намного старше HTTP, он ограничивает все свои сообщения 7-битным форматом ASCII. В то время как HTTP не имеет такого ограничения.
  • HTTP инкапсулирует каждый файл в отдельное сообщение HTTP. В то время как SMTP помещает все содержимое письма в одно сообщение.