Здравствуйте, друзья! С вами опять Сисадминыч! Сегодня мы рассмотрим новый курс «Для самых маленьких», в котором мы поговорим о модели OSI. Многие админы и молодые IT специалисты что-то слышали об этом, но не решались спросить. Я скажу сразу, что любой инженер, программист или администратор, работающий в сети и интернете, должен отлично знать все, о чем я расскажу дальше. Этот материал будет полезен как профессионалам, так и новичкам.
Модель OSI, также известная как модель TCP/IP или модель открытых систем, или модель сетевого взаимодействия, является основой, на которой строится и функционирует любая современная сеть и все устройства, подключенные к ней. Поэтому знать её желательно всем, кто работает в сфере компьютерных сетей. Без этого знания будет сложно даже в программировании.
Модели OSI предоставляют возможность устройствам взаимодействовать в компьютерной сети в соответствии с определенными правилами и протоколами. Расшифровка аббревиатуры термина означает, что OSI — это «Open Systems Interconnection Basic Reference Model», что можно перевести как «Эталонная Модель Взаимодействия Открытых Систем». В этой модели присутствует 7 уровней, используемых для передачи информации от одного устройства к другому.
Уровни
Допустим, у нас есть пара компьютеров. Один принадлежит Василию, а второй — Диме. Оба подключены к одной сети. Василий послал письмо прямо Диме. Теперь возникает вопрос — как передать это письмо по сетевому кабелю? Нужно помнить, что компьютер может понимать только нули (0) и единицы (1).
Также мы не можем передавать информацию по кабелю в обычном текстовом виде, особенно если сообщение содержит только буквы. Возникает задача перевести это письмо на другое устройство. И вот почему нам необходима модель OSI с 7 уровнями.
Отправка сообщений проходит через 7 этапов, пока они не превратятся в обычные биты. Затем биты передаются по кабелю к компьютеру Димы, где происходит обратный процесс — они превращаются обратно в понятные для человека сообщения.
Используются протоколы TCP/IP. Просматривая информацию по этой теме, помните, что в настоящее время используются именно протоколы TCP/IP, приведенные в таблицах. В то время как другие протоколы, описанные в таблицах, уже устарели и служат лишь для общего ознакомления.
Давайте рассмотрим все 7 уровней модели OSI, чтобы вам было яснее, о чем я говорю:
- Уровень 7 — Прикладной — application.
- Уровень 6 — Представительский — presentation.
- Уровень 5 — Сеансовый — session.
- Уровень 4 — Транспортный — transport.
- Третий уровень — Сетевой —
- Второй уровень — Канальный — канальный уровень данных.
- Первый уровень — Физический — физический уровень.
Нумерация идет сверху вниз от более высокого до более низкого уровня: от седьмого прикладного уровня до первого — физического.
ЗАМЕЧАНИЕ! Для специалистов рекомендуется выписать и запомнить все уровни в правильной последовательности. Также важно запомнить английские названия, так как они часто встречаются в книгах и на иностранных веб-сайтах, посвященных данной тематике.
Каждый уровень выполняет определенные функции для преобразования информации из одного формата в другой. Также вы можете увидеть, что информация передается в различных формах. Практически каждый уровень имеет свою PDU (единица данных протокола) или единицу измерения информации. Например, на физическом уровне (самом низком) — это обычные биты или последовательность нулей и единиц, которые уже можно передавать по кабелю.
Почти каждый сетевой уровень работает с собственными протоколами данных. Можно увидеть примерную последовательность преобразования информации из одной PDU в другую:
- От седьмого до пятого уровня — данные обрабатываются.
- Затем на транспортном уровне данные преобразуются в сегменты или дейтаграммы.
- На сетевом уровне они преобразуются в пакеты.
- Затем происходит преобразование в кадры или фреймы.
- В конечном счете, вся информация преобразуется в обычные биты.
Кроме того, исходя из таблицы, можно заметить два наименования:
- Media Layers (нижние уровни) – обычно уже используются в коммутаторах, маршрутизаторах, хабах – где происходит передача информации по кабелю.
- Host Layers (верхние уровни) – используются на устройствах: телефонах, планшетах, компьютерах, ноутбуках и т.д.
Это приблизительное разделение всех уровней на две категории. Самые интересные из уровней – это именно класс «Media Layers», так как ими чаще всего оперируют сетевые инженеры, и они отвечают за них головой.
ПРИМЕЧАНИЕ! Вы можете ознакомиться с таблицей протоколов модели OSI, и вам примерно станет понятен уровень взаимодействия данных при передаче и приеме.
Принцип работы
Для более наглядного изучения работы семи уровней модели OSI давайте обратим взор на представленную ниже схему.
У нас имеются два компьютера, которые на определенном уровне способны взаимодействовать только через протоколы. Можно сказать, что это определенный тип данных, понятный компьютерам на данном уровне. Например, на физическом уровне модели OSI используются определенные протоколы, и данные передаются битами. На канальном уровне этой же модели OSI информация передается кадрами с использованием своих протоколов.
Однако для передачи информации с одного уровня на другой используются специальные службы. Также важно отметить, что на транспортном уровне данные впервые разбиваются на сегменты. Каждый сегмент имеет свою «нумерованную» метку. Эта метка необходима для того, чтобы второе устройство поняло, в каком порядке собирать эти сегменты, чтобы получить нужные данные. Затем на других уровнях происходит разбиение на пакеты, кадры и, в конечном итоге, на биты. Пакеты и кадры также имеют свои последовательные метки.
Давайте подробнее рассмотрим процесс перевода информации с одного уровня на другой. Рекомендую тщательно изучить эту информацию, так как это важно для полного понимания модели OSI. Если что-то неясно, перечитайте её или задайте мне вопросы в комментариях ниже. Для наглядного понимания давайте взглянем на схему ниже — она показывает процесс передачи информации на разных уровнях сетевой модели OSI.
Процесс упаковки данных их называют инкапсуляцией. При доставке информации ко второму компьютеру происходит процесс обратной инкапсуляции, который происходит в той же последовательности, но наоборот.
Уровень 1 – Физический
Физический уровень считается наименее высоким уровнем, поскольку передаваемая информация представлена в виде нулей и единиц. При этом возможно использование различных протоколов, от которых зависит форма этих самых нулей и единиц. На данном уровне происходит определение топологии сетей и передача данных по ним.
Существует два типа передачи битовых потоков:
- Дуплексная передача — когда устройство способно одновременно принимать и отправлять данные. Например, во время игры, когда приложению необходимо постоянно получать и отправлять информацию. Этот тип передачи также известен как двунаправленная передача.
- Полудуплексная передача — когда устройство может либо только принимать, либо только отправлять данные. Это можно сравнить с потоком данных. Такой тип передачи также называется однонаправленной передачей данных.
В настоящее время на физическом уровне существует несколько типов сред передачи данных. Для проводного подключения используют витую пару или оптоволокно, а также иногда коаксиальный кабель. Существует также беспроводная среда, где данные передаются по радиоволнам: 802.11 Wi-Fi, Bluetooth, DSL, GSM и другие технологии.
При выборе среды передачи данных необходимо учитывать не только тип подключения (порты), но и дальность передачи информации как при кабельном, так и при беспроводном подключении.
Рекомендуется изучить подробнее о средах физического уровня каждого типа подключения отдельно.
Уровень 2 – Канальный
Этот уровень в иерархической модели играет важную роль, так как здесь происходит адресация. Чтобы определить, куда передавать информацию в сети, состоящей из множества устройств, необходимо использовать адреса. На канальном уровне используются MAC-адреса.
Кроме того, этот уровень способен объединить два устройства с помощью последовательности команд. При помощи этих команд можно запросить повторную отправку данных, если они пришли в неправильном формате, или контрольная сумма не прошла на определенном кадре. Именно на канальном уровне коммутаторы чаще всего выполняют свою работу, так как именно здесь происходит адресация между устройствами при помощи таблицы коммутации, в которой содержатся MAC-адреса подключенных устройств.
Уровень 3 – Сетевой уровень
На сетевом уровне осуществляется работа с протоколами, которые используют IP адресацию. Этот уровень включает в себя почти все сетевое оборудование, хотя наиболее известными примерами являются роутеры (маршрутизаторы). Кроме того, здесь работают и коммутаторы.
Задачей сетевого уровня является передача пакетов нужному узлу. Например, удаленный компьютер может находиться в другой подсети или сети. В этом случае определяется оптимальный путь для отправки пакетов до конечного узла.
Мы настоятельно рекомендуем прочитать подробную статью о роутерах.
Уровень 4 – Транспортный
На уровне транспорта возможен прямой обмен данными между двумя узлами. Например, применяется протокол TCP для передачи конкретной информации, такой как картинки, тексты и файлы. В то же время, UDP чаще всего используется для потоковых данных, таких как видео, аудио, онлайн-игры и т.д.
Здесь часто используется прямое соединение, когда данные передаются напрямую. Также уровень транспорта первым взаимодействует с сеансовым уровнем и прямыми данными.
Например, на канальном уровне используется физическая топология сети для связи устройств, а на сетевом уровне — логическая топология. На уровне транспорта узел напрямую связывается с определенным сервером через DNS или IP-адрес, когда пользователь заходит на определенный сайт.
Уровень 5 – Сеансовый
Завершает процесс преобразования сегментов или дейтаграмм в понятные для компьютера данные. Кроме того, на данном этапе может произойти разрыв прямого соединения между отправляющим и принимающим компьютером.
Уровень 6 – Представительский
Информация окончательно приводится к определенному формату данных, который уже понятен человеку. Одним из примеров такого преобразования является кодировка текста. Например, когда данные поступают в кодировке ASCII и необходимо перевести их в UTF-8 или другой формат.
0
Уровень 7 – Прикладной уровень
Уровень, который отображает информацию в удобном для человека виде. Этот уровень также взаимодействует с пользователем напрямую. Одним из часто используемых протоколов на этом уровне является HTTPS, который обеспечивает представление и чтение данных в браузере.
1