5. Прикладной уровень

В модели TCP/IP сетевое взаимодействие разделено на разные уровни, и мы начнем с самого верхнего — прикладного уровня. Это уровень, с которым вы взаимодействуете наиболее непосредственно, поскольку он отвечает за предоставление сетевых служб пользовательским приложениям, таким как веб-браузеры и почтовые клиенты.

Роль прикладного уровня

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

Что такое протокол прикладного уровня

Для управления обменом данными прикладной уровень использует специальные протоколы. Итак, что такое протокол прикладного уровня? Это набор правил, определяющих, как приложения обмениваются данными по сети. Разные задачи используют разные протоколы. Например, для просмотра веб-страниц используются HTTP или HTTPS, для передачи файлов — FTP, а для отправки электронной почты обычно используется SMTP (Simple Mail Transfer Protocol). Каждый протокол гарантирует, что и отправитель, и получатель понимают формат и смысл сообщений.

Пример протокола прикладного уровня

Рассмотрим электронное письмо как пример протокола прикладного уровня в действии. Представьте, что вы отправляете электронное письмо другу.

  1. Вы составляете сообщение в почтовом клиенте.
  2. Когда вы нажимаете «Отправить», почтовый клиент (приложение) передает данные прикладному уровню.
  3. Прикладной уровень использует протокол SMTP для правильного форматирования электронного письма.

Инкапсуляция данных и заголовок прикладного уровня

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

Сочетание заголовка и ваших данных становится полезной нагрузкой для следующего уровня. По мере того как данные проходят по сетевому стеку вниз, каждый уровень добавляет свой собственный заголовок. Хотя мы часто используем общий термин «пакет» для описания данных, отправляемых по сети, разные уровни имеют свои специфические названия для единицы данных. На транспортном уровне это «сегмент», а на канальном уровне — «кадр».

В нашем примере с электронной почтой данные, отформатированные SMTP, передаются на транспортный уровень через определенный порт (порт 25 для SMTP), где они будут дополнительно инкапсулированы для путешествия по сети.

Войдите, чтобы сохранить ваш прогресс обучения

Вход

Упражнения

Практика ведет к совершенству! Вот практическая лабораторная работа для закрепления вашего понимания сетевых уровней и портов:

  1. Анализ сетевых портов и сеансов с помощью netstat в Linux — В этой лаборатории вы научитесь использовать команду netstat для анализа сетевой активности, изучая фундаментальные концепции, такие как сетевые порты, сокеты и активные соединения. Это даст вам практическое представление о том, как службы взаимодействуют по сети, что напрямую связано с обсуждаемыми концепциями транспортного уровня.

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

Тест

Какой уровень используется для представления данных пакета в удобном для пользователя формате?