- Уровни Модели OSI и Сетевые Протоколы
- Что такое сетевая модель OSI?
- Уровни OSI
- Задачи компьютера ОТПРАВИТЕЛЯ:
- Задачи компьютера ПОЛУЧАТЕЛЯ:
- 7. Прикладной уровень (Application Layer)
- 6. Уровень представления (Presentation Layer)
- 5. Сеансовый уровень (Session Layer)
- 4. Транспортный уровень (Transport Layer)
- 3. Сетевой уровень (Network Layer)
- 2. Канальный уровень (Data Link Layer)
- 1. Физический уровень (Transport layer)
- Стеки протоколов
- Терминология при обозначении блока данных
- Сетевая архитектура Windows и модель OSI
- Физический уровень
- Уровень канала данных
- MAC
- LLC
- Сетевой уровень
- Транспортный уровень
Уровни Модели OSI и Сетевые Протоколы
Сетевая модель OSI — это эталонная модель взаимодействия открытых систем, на английском звучит как Open Systems Interconnection Basic Reference Model. Ее назначение в обобщенном представлении средств сетевого взаимодействия.
Что такое сетевая модель OSI?
То есть модель OSI — это обобщенные стандарты для разработчиков программ, благодаря которым любой компьютер одинаково может расшифровать данные, переданные с другого компьютера. Чтобы было понятно, приведу жизненный пример. Известно, что пчелы видят все окружающее их в утрафиалетовом свете. То есть одну и ту же картинку наш глаз и пчелиный воспринимает абсолютно по-разному и то, что видят насекомые, может быть незаметно для зрения человека.
То же самое и с компьютерами — если один разработчик пишет приложение на каком-либо программном языке, который понимает его собственный компьютер, но не доступен ни для одного другого, то на любом другом устройстве вы прочитать созданный этим приложением документ не сможете. Поэтому пришли к такой идее, чтобы при написании приложений следовать единому своду правил, понятному для всех.
Уровни OSI
Для наглядности процесс работы сети принято разделять на 7 уровней, на каждом из которых работает своя группа протоколов.
Сетевой протокол — это правила и технические процедуры, позволяющие компьютерам, объединенным в сеть, осуществлять соединение и обмен данными.
Группа протоколов, объединенных единой конечной целью, называется стек протоколов.
Для выполнения разных задач имеется несколько протоколов, которые занимаются обслуживанием систем, например, стек TCP/IP. Давайте здесь внимательно посмотрим на то, каким образом информация с одного компьютера отправляется по локальной сети на другой комп.
Задачи компьютера ОТПРАВИТЕЛЯ:
- Взять данные из приложения
- Разбить их на мелкие пакеты, если большой объем
- Подготовить к передаче, то есть указать маршрут следования, зашифровать и перекодировать в сетевой формат.
Задачи компьютера ПОЛУЧАТЕЛЯ:
- Принять пакеты данных
- Удалить из него служебную информацию
- Скопировать данные в буфер
- После полного приема всех пакетов сформаровать из них исходный блок данных
- Отдать его приложению
Для того, чтобы верно произвести все эти операции и нужен единый свод правил, то есть эталонная модель OSI.
Вернемся у к уровням OSI. Их принято отсчитывать в обратном порядке и в верхней части таблицы располагаются сетевые приложения, а в нижней — физическая среда передачи информации. По мере того, как данные от компьютера спускаются вниз непосредственно к сетевому кабелю, протоколы, работающие на разных уровнях, постепенно их преобразовывают, подготавливая к физической передаче.
7. Прикладной уровень (Application Layer)
Его задача забрать у сетевого приложения данные и отправить на 6 уровень.
6. Уровень представления (Presentation Layer)
Переводит эти данные на единый универсальный язык. Дело в том, что каждый компьютерный процессор имеет собственный формат обработки данных, но в сеть они должны попасть в 1 универсальном формате — именно этим и занимается уровень представления.
5. Сеансовый уровень (Session Layer)
- Установить сеанс связи с получателем. ПО предупреждает компьютер-получатель о том, что сейчас ему будут отправлены данные.
- Здесь же происходит распознавание имен и защита:
- идентификация — распознавание имен
- аутентификация — проверка по паролю
- регистрация — присвоение полномочий
- Реализация того, какая из сторон осуществляет передачу информации и как долго это будет происходить.
- Расстановка контрольных точек в общем потоке данных для того, чтобы в случае потери какой-то части легко было установить, какая именно часть потеряна и следует отправить повторно.
- Сегментация — разбивка большого блока на маленькие пакеты.
4. Транспортный уровень (Transport Layer)
Обеспечивает приложениям необходимую степень защиты при доставке сообщений. Имеется две группы протоколов:
- Протоколы, которые ориентированы на соединение — они отслеживают доставку данных и при необходимости запрашивают повторную отправку при неудаче. Это TCP — протокол контроля передачи информации.
- Не ориентированные на соединение (UDP) — они просто отправляют блоки и дальше не следят за их доставкой.
3. Сетевой уровень (Network Layer)
Обеспечивает сквозную передачу пакета, рассчитывая его маршрут. На этом уровне в пакетах ко всей предыдущей динформации, сформированной другими уровнями, добавляются IP адреса отправителя и получателя. Именно с этого момент пакет данных называется собственно ПАКЕТОМ, у которого есть IP адреса (IP протокол — это протокол межсетевого взаимодействия).
2. Канальный уровень (Data Link Layer)
Здесь происходит передача пакета в пределах одного кабеля, то есть одной локальной сети. Он работает только до пограничного маршрутизатора одной локальной сети. К полученному пакету канальный уровень добавляет свой заголовок — MAC адреса отправителя и получателя и в таком виде блок данных уже называется КАДРОМ.
При передачи за пределы одной локальной сети пакету присваивается MAC не хоста (компьютера), а маршрутизатора другой сети. Отсюда как раз появляется вопрос серых и белых IP, о которых шла речб в статье, на которую была выше дана ссылка. Серый — это адрес внутри одной локальной сети, который не используетс яза ее пределами. Белый — уникальный адрес во всем глобальном интернете.
При поступлении пакета на пограничный роутер IP пакета подменяется на IP этого роутера и вся локальная сеть выходит в глобальную, то есть интернет, под одним единственным IP адресом. Если адрес белый, то часть данных с IP адресом не изменяется.
1. Физический уровень (Transport layer)
Отвечает за преобразование двоичной информации в физический сигнал, который отправляется в физический канал передачи данных. Если это кабель, то сигнал электрический, если оптоволоконная сеть, то в оптический сигнал. Осуществляется это преобразование при помощи сетевого адаптера.
Стеки протоколов
TCP/IP — это стек протоколов, который управляет передачей данных как в локальной сети, так и в глобальной сети Интернет. Данный стек содержит 4 уровня, то есть по эталонной модели OSI каждый из них объединяет в себе несколько уровней.
- Прикладной (по OSI — прикладной, представления и сеансовый)
За данный уровень отвечают протоколы:- TELNET — удаленный сеанс связи в виде командной строки
- FTP — протокол передачи файлов
- SMTP — протокол пересылки почты
- POP3 и IMAP — приема почтовых отправлений
- HTTP — работы с гипертекстовыми документами
- Транспортный (по OSI то же самое) — это уже описанные выше TCP и UDP.
- Межсетевой (по OSI — сетевой) — это протокол IP
- Уровень сетевых интерфейсов (по OSI — канальный и физический)За работу этого уровня отвечают драйверы сетевых адаптеров.
Терминология при обозначении блока данных
- Поток — те данные, которыми оперируются на прикладном уровне
- Дейтаграмма — блок данных на выходе с UPD, то есть у которого нет гарантированной доставки.
- Сегмент — гарантированный для доставки блок на выходе с протокола TCP
- Пакет — блок данных на выходе с протокола IP. поскольку на данном уровне он еще не гарантирован к доставке, то тоже может называться дейтаграммой.
- Кадр — блок с присвоенными MAC адресами.
Сетевая архитектура Windows и модель OSI
В этом разделе рассматривается сетевая архитектура Windows и то, как сетевые драйверы Windows реализуют четыре нижних уровня модели OSI.
Общие сведения о всех семи уровнях модели см. в разделе Модель OSI.
Операционные системы Microsoft Windows используют сетевую архитектуру, основанную на семиуровневой сетевой модели, разработанной Международной организацией по стандартизации (ISO).
Представленная в 1978 году эталонная модель ISO Open Systems Interconnection (OSI) описывает сеть как «ряд уровней протокола с определенным набором функций, выделенных для каждого уровня. Каждый слой предлагает определенные службы для более высоких слоев, экранируя эти уровни от сведений о том, как они реализуются. Четко определенный интерфейс между каждой парой смежных слоев определяет службы, предлагаемые нижним и более высоким уровнями, и способ доступа к этим службам».
На следующей схеме показана модель OSI.
Сетевые драйверы Microsoft Windows реализуют четыре нижних уровня модели OSI.
Физический уровень
Физический уровень — это самый низкий уровень модели OSI. Этот уровень управляет приемом и передачей неструктурированного потока необработанных битов через физическую среду. В нем описываются электрические и оптические, механические и функциональные интерфейсы для физической среды. Физический слой несет сигналы для всех более высоких слоев.
В Windows физический уровень реализуется с помощью сетевого интерфейса карта (NIC), его приемопередатчика и среды, к которой подключен сетевой адаптер.
Уровень канала данных
Уровень связи данных отправляет кадры между физическими адресами и отвечает за обнаружение ошибок и восстановление, происходящие на физическом уровне.
Уровень канала данных также разделен Институтом инженеров электротехники и электроники (IEEE) на два подслоя: управление доступом к мультимедиа (MAC) и управление логическими ссылками (LLC).
MAC
Подслой MAC управляет доступом к физическому уровню, проверяет ошибки кадров и управляет распознаванием адресов полученных кадров.
В сетевой архитектуре Windows подслой MAC реализуется в сетевом адаптере. Сетевой адаптер управляется драйвером программного устройства, который называется драйвером мини-порта. Windows поддерживает несколько вариантов драйверов мини-портов, включая драйверы мини-портов WDM, диспетчеры вызовов мини-портов (MCM) и промежуточные драйверы минипорта.
LLC
Подслой LLC обеспечивает безошибочной передачу кадров данных с одного узла на другой. Подслой LLC устанавливает и завершает логические связи, управляет потоком кадров, последовательностью кадров, подтверждением кадров и повторной передачой непризнанных кадров. Подслой LLC использует подтверждение кадра и повторную передачу для обеспечения практически безошибочной передачи по ссылке на указанные выше слои.
В Windows подслой LLC реализуется программным драйвером, известным как драйвер протокола.
Сетевой уровень
Сетевой уровень управляет работой подсети. Этот уровень определяет физический путь, который должны пройти данные, на основе следующего:
- условия сети;
- Приоритет службы
- Другие факторы, такие как маршрутизация, управление трафиком, фрагментация кадров и повторная сборка, сопоставление логических и физических адресов и учет использования
Сетевой уровень реализуется драйвером протокола.
Транспортный уровень
Транспортный уровень гарантирует, что сообщения доставляются без ошибок, последовательно и без потери или дублирования. Этот уровень избавляет протоколы более высокого уровня от заботы о передаче данных со своими коллегами.
Минимальный транспортный уровень требуется в стеках протоколов, которые включают в себя надежную сеть или подслой LLC, предоставляющий возможности виртуального канала. Например, так как драйвер транспорта NetBEUI для Windows является подслоем LLC, совместимым с OSI, его функции транспортного уровня минимальны. Если стек протоколов не включает в себя подслой LLC и если сетевой уровень ненадежный и (или) поддерживает датаграммы (как в случае со слоем IP TCP/IP или уровнем IPX NWLink), транспортный уровень должен включать виртуализацию и подтверждение кадров, а также повторную передачу непризнанных кадров.
В сетевой архитектуре Windows транспортный уровень реализуется драйвером протокола, который иногда называется драйвером транспорта.