04.07.2022

Cетевая модель OSI – The Open Systems Interconnection model

Аббревиатура OSI расшифровывается как Open Systems Interconnection (Модель взаимодействия открытых систем). Это стандарт принятый в 1983 году международной организацией по стандартизации. Модель OSI состоит из 7 уровней которые описывают как работают сетевые устройства. Другими словами, описывает, как устройства взаимодействуют друг с другом по сети. При этом, каждый уровень выполняет определенные функции во время работы. Стоит отметить, что модель OSI не является сетевой архитектурой по той причине, что не включает описание протоколов. Протоколы же описаны в отдельных стандартах и они не применяются на практике. Что касается практики, модель OSI не используется, ее особенностью является хорошая теоретическая база сетевого взаимодействия.

На практике же используется модель TCP/IP, о которой поговорим в одной из следующих статей. Тем не менее, знать как устроена модель OSI все же необходимо. По этому мы вкратце пробежимся по всем 7 уровням, что бы иметь представление о взаимодействии устройств в сети.

Уровни модели OSI

Как уже говорилось выше, модель OSI состоит из 7 уровней, обычно описание уровней начинается с того, который находится ближе к передаче данных – 7 уровня. Ниже представлены все 7 уровней модели OSI:

7 - Прикладной
6 - Представления
5 - Сеансовый
4 - Транспортный
3 - Сетевой
2 - Канальный
1 - Физический

Cетевая модель OSI The Open Systems Interconnection model 1

Физический уровень

Физический уровень модели OSI предназначен для передачи битов по каналу связи соединяющему сетевые устройства. Бит – единица измерения информации, принимает два значения – 1 или 0. Этот уровень не анализирует информацию, которая передается, его основная задача состоит в том, что бы представить биты информации в виде сигналов. Эта информация может передаваться в виде электрического сигнала (Витая пара), радиоволн (Wi-Fi, Bluetooth) либо в качестве света (Оптического сигнала).

Сетевые устройства которые можно отнести к первому уровню – Hub и Repeater:

Cетевая модель OSI The Open Systems Interconnection model 2 1

На физическом уровне присутствуют такие протоколы как IRDA, EIA RS-232, EIA-422, EIA-423, RS-449, RS-485, DSL, ISDN, SONET/SDH, 802.11 Wi-Fi, Etherloop, GSM.

Канальный уровень

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

На канальном уровне обеспечивается обнаружение и коррекцию ошибок. Тут уже можно встретить MAC адреса, которые состоят из 48 бит (ff:ff:ff:ff:ff:ff). MAC адрес служит для идентификации устройств в одной сети. На этом уровне работают коммутаторы, мосты:

Cетевая модель OSI The Open Systems Interconnection model 3

На канальном уровне существуют протоколы CDP, PPP, MPLS, многим известный PPPoE и многие другие.

Сетевой уровень

Сетевой уровень отвечает за передачу данных между различными сетями и определяет кратчайшие маршруты для передачи данных. Обеспечивает отслеживание неполадок и «заторов» в сети. На сетевом уровне единицей пересылаемых данных является пакет. Пакет состоит из заголовка и поля данных. Протоколы сетевого уровня обеспечивают маршрутизацию данных от источника к получателю по IP адресу (IPv4/IPv6). Стоит отметить, что многим знакомая утилита “ping” работает как раз на сетевом уровне.

На этом уровне обитают протоколы ICMP, OSPF, RIP, OSPF и так далее. Устройства работающие на этом уровне, а именно маршрутизаторы, так и называют – устройствами третьего уровня.

Транспортный уровень

Транспортный уровень модели OSI предназначен для надежной передачи данных по сети от клиента серверу. Единицей передаваемых данных по транспортному уровню является сегмент. Сегмент состоит из заголовка и отправляемых данных. Одними из самых главных протоколов транспортного уровня является протоколы TCP (Transmission Control Protocol) и UDP (User Datagram Protocol). Если трафик, который передается по сети чувствителен к потере данных, то используется протокол TCP. То есть, протокол TCP обеспечивает надёжную, непрерывную передачу данных, исключающую потерю данных или нарушение порядка их поступления и дублирования. Как пример, один потерянный бит – и мы не сможет войти в соц сеть по паролю.

Протокол UDP наоборот, не исключает возможности потери или дублирования пакетов, по этому он считается не безопасным протоколом. К примеру, вы играете в онлайн шутер, в этом случае вам не важно, потерялись пакеты или нет, вам нужно, что бы картинка отображалась в прямо сейчас в настоящее время.

Протоколы транспортного уровня ATP, DCCP, FCP, NCP и так далее.

Сеансовый уровень

Сеансовый уровень координирует связи между двумя узлами сети и отвечает за установление, поддержание и прекращение сеанса. Другими словами, сеансовый уровень модели OSI занимается обеспечением поддержания связи – сессии. На этом уровне происходит обмен информацией, синхронизацией задач, определением права на передачу данных и поддержанием сеанса в периоды не активности. Например, на этом уровне проходит видео и аудио конференции.

Протоколы сеансового уровня: H.245, iSNS, L2TP, PPTP, SMPP, SCP…

Уровень представления

Когда мы пересылаем данные между двумя устройствами, мы используем разные форматы, например, отправляя данные с TCP протокола на верхний уровень. На TCP протоколе мы отправляем байты, а для пользователя мы должны выводить данные в строковом формате. Именно за перевод из байтов в данном случае в символы и отвечает уровень представления. Когда мы пересылаем данные с уровня приложения (с самого верхнего уровня модели OSI) мы должны их инкапсулировать в более низкие уровни модели OSI. Например, в транспортный протокол TCP, и для отправки сообщений по транспортному уровню необходимо использовать другой формат данных. Собственно переводом данных из одного формата в другой и занимается уровень представления.

P.S. Капсуляция данных – это когда данные передаются с верхних уровней модели OSI на нижние. А декапсуляцией называется процесс когда данные передаются с нижних моделей на верхние.

Проще говоря, уровень представления обеспечивает преобразование протоколов и кодирование/декодирование, сжатие/распаковка или шифрование/дешифрование данных. Уровень представления обычно представляет собой промежуточный протокол для преобразования информации из соседних уровней.

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

Cетевая модель OSI The Open Systems Interconnection model 4

Протоколы уровня представления: AFP, LPP, NCP, X.25 PAD, XDR…

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

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

Другими словами, на этом уровне расположены сетевые службы которые позволяют нам изучать просторы интернета. Например, на этом уровне комфортно расположился HTPPS и DNS благодаря которому вы получаете информацию с сайтов.

Протоколы прикладного уровня: RDP, HTTP, SMTP, SNMP, POP3, FTP, XMPP, OSCAR, Modbus, SIP, TELNET, LPT, NFS, DNS, DHCP, FTP…

Заключение

В заключении хотелось бы немного рассказать о некоторых атаках, которые могут быть применены в разных уровнях модели OSI. Для чего это необходимо? Что бы понять как происходят атаки на сеть, к примеру тот же DOS о котором готовится статья. Тем более, вспомните про самую крупную атаку на Яндекс, который смог отразить DDOS атаку. Узнав на каких сетевых протоколах это возможно, вы сможете лучше понять как организуются данные атаки и на каких уровнях они применяются.

Угрозы физического уровня

Если говорить про угрозы, то в первую очередь это атаки типа – отказ в обслуживании (DOS), расшифровывается как – Denial of Services. При желании можно создать широкополосные помехи в эфире WI-FI, что приведет к тому, что устройства работающие по сети WI-FI не смогут обмениваться информацией.

Если вы живете в многоквартирном доме и у вас стал плохо работать WI-FI, есть вероятность того, что все ваши соседи использую частоту 2.4ГГц. То есть, эфир частоты 2.4 ГГц полностью забит, в этом случае, если ваш роутер поддерживает частоту в 5 ГГц рекомендуется перевести его на работу именно в эту частоту.

Cетевая модель OSI The Open Systems Interconnection model 5

Угрозы на канальном уровне

На канальном уровне существует несколько угроз, в основном это атака человек посередине (Man-in-the-middle, MITM) или угроза – отказ в обслуживании (DOS). Атака MITM (человек посередине) позволяет перехватывать сообщение от одного устройства, считывать их, при необходимости вносить изменения и отправлять другому устройству. Комутатор имеет таблицу MAC адресов и эта таблица имеет определенные размеры. При DOS атаке можно добиться переполнения этой таблицы MAC адресов. В результате комутатор не сможет передавать информацию по сети.

Угрозы сетевого уровня

Одним из примеров атаки на сетевом уровне является ICMP флуд. ICMP флуд относится к атакам типа – отказ в обслуживании (DOS), что приводит к тому, что устройства перестают работать. Атака заключается в отправке большого количества ICMP пакетов с эхо-запросами на хост. Соответственно, хост обязан принять эти запросы, обработать их и отправить ответ. Из-за отправки большого количество таких запросов все сетевое взаимодействие уходит под реализацию сетевых ответов на ICMP запрос, в результате устройство перестает быть доступным по сети. Таким образом реализуется атака – отказ в обслуживании (DOS).

Угрозы верхних уровней OSI

На верхних уровнях модели OSI существует множество атак, одной из таких атак является атака типа человек посередине (MITM). Обычно в рамках этой атаки злоумышленник перехватывает не защищенные пакеты данных по протоколам верхнего уровня. Например, если используется протокол HTTP, то злоумышленник может в открытом виде прочитать конфиденциальные данные пользователя. Как вариант, если пользователь ввел на каком то сайте свой пароль, то злоумышленник может его перехватить и взломать страницу пользователя.

Рекомендую так же к прочтению статью про создание SSH туннеля, а возможно, вас заинтересует настройка сети в Debian или как задать статический IP адрес в Ubuntu.

А на этом сегодня все, надеюсь, данная статья будет вам полезна.
Если вам нравится данный проект и вы хотите что бы он процветал, то вы можете поддержать журнал “Cyber-X” перейдя в сооветствующий раздел на сайте.
Журнал Cyber-X

Источник.