Модель OSI – это эталонная семиуровневая модель, которая описывает процесс передачи данных в компьютерных сетях.
Сегодня мы подробно разберем, что такое сетевая модель OSI, как она работает и почему важна для понимания современного цифрового мира. Наш материал пригодится каждому, кто планирует или уже работает с сетями и веб-технологиями.
Для начала – совсем немного исторического контекста.
Когда в 1960-х годах начали появляться первые компьютерные сети – в университетах, государственных и других учреждениях – каждая организация старалась придумать собственные сетевые протоколы, стандарты и правила передачи данных. В результате одно устройство не могло общаться с другими, особенно если они были от разных производителей.
Именно эту проблему – совместимость самых разных устройств – и призвана решить модель OSI (от англ. Open Systems Interconnection – взаимодействие открытых систем).
Она разработана в конце 1970-х годов и позволяет разобраться, как организована сеть, какие задачи выполняются на каждом этапе и как уровни взаимодействуют между собой.
Модель не только помогает понять устройство современных сетей, но и служит основой для проектирования, диагностики и оптимизации инфраструктуры. Даже несмотря на появление новых технологий, OSI остается базовым инструментом сетевого инженера.
Модель OSI включает такие уровни:
Отвечает за передачу сигналов – электрических, оптических или радиоволн. На физическом уровне сетевой модели OSI функционируют концентраторы, медиаконвертеры и прочие устройства, задача которых – принять сигнал и передать его дальше.
Объединяет устройства в одной локальной сети (компьютеры, принтеры, коммутаторы и т. п.) с целью обеспечить корректную передачу кадров по физическому каналу связи. Канальный уровень сетевой модели OSI выполняет формирование кадров из битов, определение MAC-адреса и контроль ошибок.
Главное, за что отвечает сетевой уровень модели OSI, – доставка данных между устройствами в разных сетях. Именно сетевой уровень модели OSI выполняет логическую адресацию (IP), маршрутизацию пакетов между сетями, сопоставление IP- и MAC-адресов с помощью ARP.
Четвертый уровень сетевой модели OSI следит, чтобы данные от приложения дошли до адресата без потерь и в правильном порядке. Для этого TCP разбивает данные на сегменты, которые затем инкапсулируются в IP-пакеты. В отличие от L3, который решает, куда доставить пакет, транспортный уровень сетевой модели OSI определяет, какому прикладному процессу (через номера портов) предназначены данные.
Обеспечивает установку, поддержание и завершение сеанса связи между приложениями. Например, когда к одному сайту подключаются несколько пользователей, необходимо поддержание логической сессии, управление состоянием соединения и его восстановление.
Задача шестого уровня – преобразование представления данных (кодировки, сжатие, шифрование, например, UTF-8, ASN.1, TLS-шифрование), чтобы приложения могли их воспринимать вне зависимости от того, как они устроены внутри. Здесь данные кодируются и декодируются, сжимаются и распаковываются, шифруются и дешифруются.
L7 – это точка, в которой сеть встречается с пользователем. Назначение уровня – дать приложениям возможность использовать сетевые функции для обмена данными, поэтому тут применяются такие протоколы, как HTTP, SMTP, FTP, DNS и проч. В результате конечный пользователь отправляет и получает данные, не заботясь о транспортных механизмах.
Эксперты также выделяют неформальный восьмой уровень, под которым понимается человеческий фактор и политические решения, – ведь кибербезопасность сейчас не ограничивается серверами, межсетевыми экранами и алгоритмами шифрования, а любое решение в конечном итоге принимает человек: пользователь, администратор, руководитель, регулятор, политик.
Теперь – о том, как модель OSI работает на практике.
Для наглядности на примере двух ситуаций разберем, что происходит на каждом уровне OSI.
В момент, когда письмо дойдет до сервера адресата, весь этот процесс запустится в обратном порядке.
Когда сервер в облаке принимает файл, декодирует, расшифровывает и сохраняет его, весь процесс запускается заново, уже в обратном порядке.
Знание работы сетевых протоколов позволяет глубже понимать, как работают ваши приложения и устройства. Это основа для всех, кто работает с устройствами, подключенными к единой сети.
Как и у любой абстрактной модели, у OSI есть плюсы и минусы – остановимся на них подробнее.
Начнем с сильных сторон модели:
Однако несмотря на свои достоинства, OSI считается скорее теоретической, чем практической моделью – и вот, почему:
Резюмируя, сегодня модель OSI используется как учебная и диагностическая модель, тогда как на практике востребованы другие модели – TCP/IP, стек протоколов IBM SNA и т. д.
Модель описывает идеальную структуру сетевого взаимодействия, а не конкретную реализацию сетей, тогда как реальные сети эволюционировали на основе более простого стека протоколов TCP/IP, который лишь частично соответствует уровням OSI.
Все уровни работают вместе, однако для конечного пользователя наиболее значим прикладной уровень – ведь именно на нем работают знакомые каждому приложения и сервисы.
Да, практически все сетевые устройства работают одновременно на нескольких уровнях, например, роутер – на сетевом и канальном.
Зная принцип работы OSI, можно понять, где именно возник сбой. Например, если сайт не открывается, но пинг до адреса проходит, значит, проблема не на сетевом и канальном уровнях, а выше – на транспортном или прикладном, что позволяет сосредоточить поиск на настройках файрвола, виртуального сервера или самого приложения.
На собеседованиях в IT-компаниях часто звучит вопрос: “Что происходит после того, как вы вводите URL сайта в адресную строку и нажимаете Enter?”.
Несмотря на кажущуюся простоту, этот вопрос затрагивает довольно широкий спектр тем, одной из которых и является OSI – своего рода справочная система, определяющая, как устройства взаимодействуют друг с другом по сети.
OSI часто относят к сетевым основам, входящим в техническую базу, которую должен знать любой IT-специалист, и особенно востребованными знания этой модели могут стать сегодня, когда развитие российского сетевого оборудования – амбициозная задача для многих компаний, на что указывают эксперты.
Развитие в первую очередь направлено в сторону повышения производительности, поддержки новых протоколов скоростной передачи данных. И это хороший тренд. Одновременно с этим также есть тренд на развитие решений программно-определяемых сетей, что очень важно для построения облачных и виртуальных инфраструктур.
Надеемся, эта статья была для вас полезна и знание модели OSI позволит использовать современные технологии и протоколы во благо вашего проекта, а если вы захотите работать с большими данными, то наша облачная инфраструктура может помочь решать самые разные задачи.
Если у вас возникли вопросы, свяжитесь с нами удобным для вас способом – и мы обязательно ответим. Также ждем вас в нашем официальном Telegram-канале, а пообщаться на любую тему с коллегами по цеху и сотрудниками Beget вы можете в нашем чате.