Сетевые модели OSI и TCP/IP: особенности и различия
В этой статье вы узнаете о различных сетевых моделях и начнете погружение в архитектуру сети.

Модель OSI и уровневая архитектура
Модель OSI (Open System Interconnection) — это эталонная модель, которая подробно описывает, как устройства в локальных и глобальных сетях взаимодействуют при обмене данными и что происходит с этими данными.
Она создавалась, чтобы установить единый стандарт для разработки сетевых протоколов и облегчить понимание сложных процессов передачи данных. Модель можно сравнить с руководством или схемой, которая помогает понять, как работают компьютерные сети.
Модель OSI разделяет процесс взаимодействия устройств в сети на семь взаимосвязанных уровней. Каждый из них выполняет свои функции и взаимодействует с уровнями непосредственно выше и ниже. Cамым верхним является седьмой (прикладной), а самым нижним — первый (физический). На каждом уровне кабели, оборудование, приложения и т.д. работают с одними и теми же данными по-разному.
Как это работает?
Предположим, пользователь отправляет информацию (например, изображение JPG) по email. Чтобы картинка транслировалась другому пользователю, данные обрабатываются на самом верхнем уровне (прикладном), кодируются и передаются в виде нулей и единиц до самого нижнего (физического) уровня. ПК получателя в свою очередь принимает биты, которые второй пользователь сможет увидеть в виде изображения. Подробнее этот механизм рассмотрим ниже.
У каждой формы, в которой представляются данные на разных уровнях модели OSI, есть свои особенности, которые важно учитывать, когда вы работаете с технологиями этого уровня. Например, на сетевом уровне используются пакеты. Маршрутизаторы, получая данные, смотрят на IP-адреса в заголовках пакетов и решают, куда отправить каждый пакет. Понимание того, что они работают именно с пакетами, и того, как устроен каждый пакет, позволяет им выполнять эту задачу.
В зависимости от специализации, сотрудники могут работать с разными уровнями модели OSI. Например, инженеры в основном сталкиваются с физическим и канальным уровнем, сетевые администраторы — с сетевым, транспортным и сеансовым, а веб-разработчики — с прикладным. Специалисты техподдержки могут взаимодействовать со всеми уровнями OSI, помогая клиентам решать различные проблемы.
Как модель OSI работает на практике?
Давайте рассмотрим на конкретном примере. Представьте, что вы хотите отправить сообщение другу в Telegram.
Прикладной уровень (L7)
Когда вы открываете Telegram и пишете сообщение, приложение работает именно на этом уровне. Вводите текст, нажимаете кнопку «Отправить», и данные отправляются на сервер Telegram.
Прикладной уровень позволяет пользователям взаимодействовать с приложением, не задумываясь о технических деталях передачи данных.
Уровень представления (L6)
На этом этапе введенные данные преобразуются в универсальный формат, понятный для разных устройств и операционных систем. Например, если ваш друг использует iPhone, а вы отправляете сообщение с компьютера на Windows, данные должны быть преобразованы в формат, понятный для iOS.
Сеансовый уровень (L5)
Чтобы сообщение успешно дошло до друга, необходимо установить сеанс связи — он обеспечивает непрерывность и синхронизацию передачи данных. Благодаря ему вы видите, что друг набирает сообщение или отправляет медиафайлы.
Главная задача сеанса — поддерживать стабильное соединение.
Транспортный уровень (L4)
На этом уровне данные готовятся к передаче. Они разбиваются на небольшие части — сегменты, к которым добавляется дополнительная информация, например, номера портов. Это гарантирует, что все фрагменты сообщения дойдут до получателя в правильном порядке и без ошибок.
Сетевой уровень (L3)
Теперь нужно найти путь к устройству друга, а затем отправить их по нему. Данные упаковываются в пакеты, и к ним добавляются IP-адреса отправителя и получателя. Маршрутизаторы используют эти адреса, чтобы определить маршрут передачи пакетов. Затем данные направляются к нужной локальной сети.
Канальный уровень (L2)
На этом уровне данные передаются от одного устройства к другому уже внутри локальной сети. Исходное сообщение разбивается на фреймы, к которым добавляются заголовки и другая служебная информация.
Физический уровень (L1)
Наконец, на физическом уровне данные преобразуются в электрические сигналы или радиоволны и передаются по проводам, кабелям или через антенны. Задача этого уровня — быстро реагировать на входящие и исходящие сигналы.
После прохождения всех уровней модели OSI сообщение успешно доставляется на устройство вашего друга. Правда, в реальности это занимает всего миллисекунды.
Зная архитектуру сети, гораздо проще ее строить и диагностировать. Как нельзя построить дом, не зная его архитектуры, так невозможно построить сеть, не зная модели OSI.
При проектировании важно учитывать все: взаимодействие каждого уровня с другими, насколько обеспечивается безопасность, шифрование данных внутри сети, какой прирост пользователей выдержит сеть без обрушения, будет ли возможно перенести сеть на другую машину и т.д. Каждый из перечисленных критериев укладывается в функции одного из семи уровней.
Модель TCP/IP
Модель TCP/IP — это фундаментальная сетевая модель, которая лежит в основе интернета и многих современных сетевых технологий. Она названа по двум ключевым протоколам, которые обеспечивают передачу данных и адресацию в этой модели.
Как и модель OSI, TCP/IP делится на уровни, внутри которых действуют определенные технологии и выполняются собственные функции. Отличие моделей в количестве этих уровней, здесь их всего четыре: канальный, межсетевой, транспортный и прикладной.
Несмотря на различия, между двумя моделями можно провести соответствие. Каждый уровень модели TCP/IP выполняет функции, аналогичные одному или нескольким уровням модели OSI.
Реальные сетевые технологии редко укладываются строго в один уровень модели OSI. С другой стороны, уровни модели TCP/IP непосредственно соответствуют реальным протоколам.
Остановимся на каждом уровне чуть подробнее.
Канальный уровень
Канальный уровень в модели TCP/IP объединяет в себе функции, которые в модели OSI разделены на два уровня: физический и канальный. Он обеспечивает физическое взаимодействие устройств в сети, позволяя им подключаться и обмениваться данными. На этом уровне работают технологии физического доступа, такие как Ethernet, Wi-Fi, кабельные соединения.
Канальный уровень определяет, как информация кодируется, делится на фреймы и передается по нужному каналу, то есть среде передачи. Он вычисляет скорость передачи данных, время задержки, максимальный размер фрейма и другие физические свойства.
Межсетевой уровень
Межсетевой уровень отвечает за адресацию и маршрутизацию пакетов данных. Он соответствует сетевому уровню модели OSI. На этом уровне работает протокол IP (Internet Protocol), который обеспечивает логическую связь между сетями.
Межсетевой уровень вычисляет IP-адрес для каждого устройства в сети и определяет оптимальный маршрут для передачи пакетов. Он использует адресацию и правила маршрутизации, чтобы пакеты могли достичь нужного адреса.
Транспортный уровень
Транспортный уровень выполняет те же функции, что и одноименный уровень модели OSI. Он отвечает за передачу данных между устройствами в сети и обеспечивает, чтобы данные были доставлены в правильном порядке и без потерь.
На этом уровне работают протоколы TCP и UDP:
- TCP гарантирует, что данные будут доставлены без ошибок и в нужном порядке. Он используется, когда важна надежность, например, при передаче файлов или веб-страниц.
- UDP обеспечивает быструю передачу, но без гарантии доставки всех пакетов. Он используется, когда скорость важнее, например, при передаче видео или голоса.
Прикладной уровень
Прикладной уровень объединяет три уровня модели OSI: сеансовый, уровень представления и прикладной. Он отвечает за взаимодействие с пользователем и обеспечивает работу сетевых сервисов.
Он занимается форматированием данных, обеспечением безопасности и управлением сессиями. На этом уровне работают протоколы HTTP, SMTP, FTP, DNS, предоставляя доступ к веб-страницам, почте, файлам и доменным именам.
Что такое стек протоколов TCP/IP
Информация не может передаваться между двумя компьютерами напрямую. Сначала фреймы передаются на межсетевой уровень, где компьютеру отправителя и компьютеру получателя назначается уникальный IP. После чего на транспортном уровне информация передается в виде TCP-сегментов либо UDP-датаграмм.
На каждом этапе, подобно снежному кому, к уже имеющейся информации добавляется служебная информация, например, порт на прикладном уровне, необходимый для идентификации сетевого приложения. Добавление служебной информации к основной обеспечивают разные протоколы: сначала Ethernet, поверх него IP, еще выше TCP, а над ним порт, означающий приложение с делегированным ему протоколом. Такая вложенность называется стеком, названным TCP/IP по двум главным протоколам модели.
Заключение
Модель OSI — это идеальная модель. Она используется в основном в образовательных и исследовательских целях, чтобы помочь в понимании сетевых протоколов и их взаимодействии. В реальных сетевых системах в чистом виде она практически не распространена, так как в них протоколы могут реализовываться по-разному, и не всегда строго соответствовать только одному уровню модели.
Вместо модели OSI на практике широко используется модель TCP/IP. Однако за счет большего, чем в TCP/IP, количества уровней модель OSI позволяет более детально рассмотреть процесс передачи данных по сети.