Сетевая модель OSI: протоколы, уровни
При изучении работы компьютерных сетей рано или поздно придется столкнуться с так называемой открытой сетевой моделью OSI. Модель оси очень важна для понимания сетевых технологий, и она часто вызывает неожиданные трудности у новичков.
Понятие протоколаПротоколы обмена (или просто протоколы) необходимы, чтобы участники обмена информацией понимали друг друга. В работе компьютерных сетей задействуется множество протоколов, относящихся к разным сетевым уровням. Например, сетевая карта компьютера следует протоколу, который описывает перевод цифровых данных в передающийся по проводам аналоговый сигнал; браузер связывается с сайтом в Интернете при помощи транспортного протокола TCP; сервер и браузер общаются, используя протокол HTTP.
Иными словами, протокол — это набор соглашений между разработчиками ПО и аппаратуры. Текст протокола отвечает на вопрос: “Что нужно сделать, чтобы программы и устройства могли взаимодействовать с другими программами/устройствами, поддерживающими протокол”.
OSIOSI — это аббревиатура от Open Systems Interconnection, что в переводе буквально означает “Взаимодействие открытых систем”. Речь не идет об Open Source, открытые системы в данном случае являются системами, построенными на основе открытых (общедоступных) спецификаций, соответствующих стандартам.
Часто можно встретить термин “эталонная модель OSI”. Эталонная модель описывает, какие уровни должны быть в сети и какие функции выполняются на каждом из уровней. OSI модель разделяет все протоколы на 7 таких уровней:
- Физический (Physical)
- Канальный (Datalink)
- Сетевой (Network)
- Транспортный (Transport)
- Сеансовый (Session)
- Представительный (Presentation)
- Прикладной (Application)
Модель OSI не включает описание протоколов; они определяются в отдельных стандартах.
Тем не менее ныне используемые протоколы приблизительно соответствуют уровням оси, а сама модель используется в качестве общего языка для описания устройства сетей.
Физический уровеньВсе уровни нумеруют, начиная с самого близкого к среде передачи данных. В данном случае первым будет физический уровень модели osi. Здесь происходит преобразование битов информации в сигналы, которые затем передаются по среде. Используемый физический протокол зависит от того, каким образом компьютер подключен к сети.
Например, в случае обычной локальной сети на основе витой пары применяется спецификация 100BASE-TX (стандарт IEEE 802.3u), определяющая кабели и разъемы для соединения, технические характеристики проводов, частоты, напряжение, кодировку и многое другое. Подключения через Wi-Fi сложнее, так как данные передаются по радиоканалам, а эфир один на всех. Взаимодействие Wi-Fi устройств описывается спецификацией IEEE 802.11, которая, как и Ethernet, включает помимо физического уровня часть канального.
При выходе в Интернет через сеть сотовой телефонной связи используются спецификации GSM, включающие специальные протоколы (например GPRS) и затрагивающие не только два первых, но и сетевой уровень. Бывают и относительно простые протоколы, например RS232. Он будет использоваться, если соединить два компьютера нуль-модемным кабелем через COM-порты.
Канальный уровеньДалее располагается канальный уровень модели osi. На этом слое пересылаются не биты, а целые сообщения (кадры, фреймы). Канальный уровень получает с физического поток бит, находит начало и конец сообщения и упаковывает биты в кадр. Также происходит обнаружение и коррекция ошибок. В многоточечных сетевых соединениях, где один и тот же канал связи используется разными компьютерами, канальный уровень дополнительно обеспечивает физическую адресацию и управление доступом к разделяемой среде передачи данных.
Часть задач, которые в теории решают протоколы этого уровня, решена в спецификациях Ethernet и Wi-Fi, но есть кое-что еще. Сетевые интерфейсы в многоточечном соединении опознают друг друга по специальным шестибайтовым идентификаторам, mac-адресам. При настройке сети сетевые адаптеры должны знать, кто из них отвечает за какой сетевой адрес (ip-адрес), чтобы отправлять пакеты (блоки данных, передаваемые в пакетном режиме) по назначению. Для автоматического построения таблиц соответствия ip- и mac-адресов используется протокол ARP (Address Resolution Protocol).
В соединениях “точка-точка” ARP не нужен. Зато часто применяется протокол PPP (Point to Point Protocol). Кроме структуры кадра и контроля его целостности, он содержит правила для установления соединения, проверки состояния линии связи и аутентификации участников.
Сетевой уровеньСледующий уровень — сетевой уровень модели osi. Он предназначен для построения крупных составных сетей на основе различных сетевых технологий. На этом уровне обеспечивается согласование различий в разных технологиях канального уровня и общая адресация с помощью глобальных адресов, позволяющих однозначно определить компьютер в сети. Также выполняется маршрутизация — определение маршрута пересылки пакетов через промежуточные узлы.
Иногда можно столкнуться с утверждением, что в Интернете в роли этого уровня выступает протокол IP (Internet Protocol). С одной стороны это так: именно IP определяет структуру отдельного пакета, передающегося по сети через шлюзы, систему сетевых адресов и некоторые другие функции. С другой стороны существует несколько других протоколов, которые также можно отнести к сетевому уровню, хотя они и работают “поверх” IP.
Наиболее важным среди них можно считать протокол ICMP (Internet Control Message Protocol). Благодаря ему участники соединений обмениваются сообщениями о всяких штатных и нештатных ситуациях: обрыв соединения, отсутствие подходящего маршрута и другие случаи невозможности доставки пакета. Иногда сообщения ICMP содержат рекомендации по использованию альтернативного маршрута.
Транспортный уровеньПакеты, передаваемые по сети при помощи протоколов сетевого уровня, обычно ограничены в размерах. Они могут доставляться не в том порядке, в котором были отправлены, теряться, или, наоборот, дублироваться. Прикладным программам требуется более высокий уровень сервиса, обеспечивающий надежность доставки данных и простоту работы. За это как раз отвечают протоколы транспортного уровня модели osi. Они следят за доставкой пакетов, отправляя и анализируя соответствующие подтверждения, нумеруют пакеты и расставляют их в нужном порядке после получения.
Как говорилось выше, протоколы сетевого уровня не гарантируют доставку пакета. Отправленный пакет может потеряться или, наоборот, прийти в двух экземплярах, а пакеты, отправленные раньше других, могут прийти к получателю позже. Содержимое такого пакета обычно называют дейтаграммой (datagram).
Одним из самых простых транспортных протоколов является UDP (user datagram protocol). Участники сетевого взаимодействия, работающие на одном компьютере, идентифицируются целыми числами, называемыми номерами портов (или просто портами). Протокол UDP предписывает добавлять к передаваемым через сеть данным номер порта отправителя и получателя, длину дейтаграммы и ее контрольную сумму. Все это “заворачивается” в пакет в соответствии с соглашениями протокола IP. При этом ответственность о подтверждениях, повторных отправках, о делении информации на небольшие порции и о последующем восстановлении исходной последовательности лежит на авторе программ. Поэтому UDP не защищает от возможности потери, дублирования пакета и нарушения порядка получения обеспечивается только целостность данных внутри одной дейтаграммы.
Существует также второй вид транспортного взаимодействия — потоковое. Решение всех проблем, связанных с потерями пакетов, восстановлением данных из отдельных фрагментов берет на себя реализация транспортного протокола, которая оказывается гораздо сложнее реализации протокола дейтаграммного. Соответствующий транспортный протокол, используемый в Интернете, называется TCP (transmission control protocol). В отличие от работы с UDP, при потоковой работе необходимо установить соединение. Гарантируется, что все байты, записанные в поток, будут затем доступны для чтения на другом конце потока, причем их порядок будет сохранен; при невозможности соблюдения этой гарантии соединение окажется разорвано, о чем узнают оба партнера. Протокол TCP предусматривает целый ряд нетривиальных соглашений, к счастью, всю их реализацию берет на себя операционная система.
Остальные уровниОпределить, какие из реально существующих протоколов относятся к оставшимся трем уровням, будет несколько сложней. После транспортного идет сеансовый уровень. По замыслу создателей оси модели, его целью является установка сеансов связи. Сюда можно включить определение очередности передачи сообщений в управлении диалогом, например в видеоконференциях, задачи одновременного доступа к некоторым критическим операциям и защиту от разрывов сетевого соединения (функция синхронизации). Проблема заключается в том, что на практике все это реализуется либо средствами протоколов прикладного уровня, либо еще более высокоуровневыми соглашениями, не входящими в модель OSI. Поэтому в реальных сетях сеансовый уровень не используется.
Следующий слой — уровень представления. Его задача заключается в предоставлении данных в виде, понятном как отправителю, так и получателю. Сюда можно включить различные форматы данных и правила их интерпретации: протоколы кодировки текста (ASCII, UTF-8, koi8r), спецификации разнообразных версий HTML\XHTML, графические форматы (JPEG, GIF, PNG), набор спецификаций MIME и прочее. На уровне представления реализуется шифрование и дешифрование. Самые популярные примеры — Transport Layer Security (TLS)/Secure Socket Layer (SSL).
С прикладным уровнем все просто. На нем организуется взаимодействие приложений, которыми пользуются конечные пользователи. Сюда входит электронная почта, “Всемирная паутина” (World Wide Web), социальные сети, видео и аудиосвязь и т. п.
Плюсы и минусыМодель OSI была принята Международной организацией по стандартизации (ISO) в 1983 году. В то время сетевые технологии активно развивались. Пока в комитете спорили о стандартах, все постепенно переходили на стек TCP/IP, вытесняющий другие протоколы. Когда свет увидел реализацию протоколов OSI, на нее обрушился шквал критики. Их ругали за несоответствие реальным технологиям, неполную спецификацию, малый спектр возможностей по сравнению с существующими протоколами.
Кроме того, эксперты отмечали деление на 7 уровней необоснованным. Некоторые слои практически не использовались, а одни и те же задачи решались на разных уровнях. Специалисты шутят, что модель OSI вышла семиуровневой, потому что в соответствующем комитете образовалось 7 подкомитетов и каждый предложил что-то свое. Между тем набор протоколов TCP/IP, на котором построен весь современный Интернет, разрабатывался узкой группой людей по принципу ad hoc — решение задачи здесь и сейчас. Никаких комитетов в создании TCP/IP участия не принимало.
Однако не все так плохо. Неоспоримым преимуществом модели OSI является хорошая теоретическая проработка вопросов сетевого взаимодействия, поэтому сегодня она является эталоном для документации и обучения. Некоторые считают, что не все потеряно, и, возможно, модель найдет свое место, например в облачных вычислениях.
Модель OSI
58
C# и .NET — Сетевое программирование — Модель OSI
В целях формализации процесса взаимодействия открытых систем OSI (Open System Interconnection) Международная организация по стандартизации (International Organization for Standardization, ISO) разработала для стандартизированной сети модель, которая заменила бы TCP/IP, DECNet и другие протоколы как основной сетевой протокол, использующийся в Интернете. Однако из-за сложности протокола OSI созданы и внедрены в эксплуатацию лишь немногие реализации. TCP/IP был гораздо проще, и поэтому он широко используется и сейчас.
Но многие новые идеи протокола OSI можно обнаружить в IPv6, следующей версии IP.Хотя протокол OSI не получил широкого распространения, семиуровневая модель OSI имела огромный успех, и она теперь используется как справочная модель, чтобы описать различные сетевые протоколы и их функциональные возможности.
Уровни модели OSI выделяют основные задачи, которые должны выполняться сетевыми протоколами, и описывают взаимодействие сетевых приложений. У каждого уровня есть особое назначение, и каждый уровень связан с уровнями, находящимися непосредственно выше и ниже его. OSI определяет следующие семь уровней:
Прикладной уровень определяет для пользовательских приложений программный интерфейс с сетью.
Представительский уровень отвечает за кодирование данных, полученных от прикладного уровня, в представление, готовое к передаче по сети, и наоборот.
Сеансовый уровень создает виртуальное соединение между приложениями.
Транспортный уровень делает возможным надежный обмен данными.
Сетевой уровень позволяет обращаться к узлам локальной сети, используя логическую адресацию.
Канальный уровень получает доступ к физической сети через физические адреса.
Физический уровень включает соединители, кабели и т. д.
На следующем рисунке показана связь между двумя машинами. Здесь можно увидеть, как данные опускаются по стеку протоколов (protocol stack) на отправителе и поднимаются по нему на получателе. Сообщение, отправленное приложением первой машины, содержащей букву D. Прикладной уровень (уровень 7) присоединяет к сообщению заголовок (названный на рисунке Н7) и передает сообщение представительскому уровню (уровень 6), который сначала добавляет к сообщению Н6, а затем передает его сеансовому уровню (уровень 5). Это продолжается до тех пор, пока сообщение со всеми его заголовками не достигнет физического уровня (уровень 1) и не будет передано получателю. На получающей стороне каждый уровень выполняет всю необходимую обработку и, удалив соответствующий заголовок, передает сообщение вверх на следующий уровень. В конце концов приложение-получатель получает доступ к исходным данным, отправленным приложением первого компьютера:
Теперь, когда нам стала понятна концепция семи уровней, мы можем рассмотреть функциональность каждого уровня более подробно. Начнем с самого низа и будем продвигаться вверх.
Физический уровень содержит физическую среду, в том числе требования к кабелям, соединители, спецификации интерфейсов, спецификации концентраторов, повторителей и т. д. На этом уровне точно определяется, какой физический сигнал будет использоваться для посылки «1», а какой будет представлять «0».
МАС-адрес, о котором уже рассказывалось в предыдущей статье, относится к уровню 2. Узлы локальной сети отправляют друг другу сообщения, используя IP-адреса, а они должны транслироваться в соответствующие МАС-адреса канальным уровнем. Протокол разрешения адресов (Address Resolution Protocol, ARP) транслирует IP-адреса в МАС-адреса.
Кэш, содержащий известные МАС-адреса, ускоряет этот процесс, и его можно исследовать с помощью утилиты arp. Команда arp -а показывает МАС-адреса всех недавно использованных узлов в кэше ARP.Утилита arp также позволяет установить соответствие между IP-адресами и МАC-адресами, с тем чтобы ARP-запросы для МАС-адресов больше не требовались. Однако это соответствие будет нарушено при замене сетевой платы, поэтому им следует пользоваться осторожно.
Другие обязанности канального уровня состоят в отправке и получении сообщений и обнаружении ошибок. В Ethernet также требуется обнаруживать конфликты, что мы уже обсуждали.
Коммутатор сети действует на канальном уровне, фильтруя сообщения в соответствии с МАС-адресами их получателей.
Уровнем выше над канальным уровнем находится сетевой уровень. На уровне 3 для соединения с другими узлами используется логическая адресация. МАС-адреса уровня 2 могут использоваться только внутри локальной сети, а обращаясь к узлам глобальной сети, надо использовать адресацию уровня 3.
На сетевом уровне хосты идентифицируются логическими адресами. На транспортном уровне идентифицируется приложение через так называемую конечную точку (endpoint). В протоколе TCP конечная точка задается комбинацией номера порта (port number) и IP-адреса.
Транспортный уровень различается в зависимости от того, используем ли мы надежную или ненадежную связь. При надежной связи, если сообщение было отправлено, но не было корректно получено, вырабатывается ошибка, в то время как при ненадежной связи сообщение отправляется, но никакой проверки, было ли оно вообще получено, не выполняется. При надежной связи транспортный уровень отвечает за отправку подтверждений на пакеты данных, что позволяет повторно передавать сообщения в случае искажения или потери данных, браковать дублирующие сообщения и т.
д.Сетевая связь на транспортном уровне может также различаться в зависимости от того, ориентирована ли она на соединения, или соединения отсутствуют:
При связи, ориентированной на соединения, до отправки или получения сообщения требуется установить соединение.
При связи без соединений устанавливать отдельные соединения необязательно и сообщения отправляются немедленно.
Протокол TCP использует ориентированный на соединения механизм связи, в то время как в UDP (User Datagram Protocol) используется механизм связи без организации соединений. Ориентированная на соединения связь является надежной, поскольку в этом случае отправляются подтверждения и сообщения посылаются повторно, если данные не получены или по какой-либо причине они были искажены.
Связь без установления соединений может быть полезна при широковещательной передаче, когда сообщения отправляются нескольким узлам. В этом случае доставка сообщения не гарантируется. Если необходим надежный обмен сообщениями, надежность может обеспечить протокол более высокого уровня, подключенный поверх механизма без установления соединения.
В модели OSI сеансовый уровень определяет обслуживание приложения, например, вход в приложение и выход из приложения. Сеанс представляет собой виртуальное (логическое) соединение между приложениями. Соединение сеансового уровня не зависит от расположенного ниже физического соединения на транспортном уровне, виртуальное соединение может существовать дольше, чем соединение на транспортном уровне. Для одного соединения сеансового уровня может потребоваться несколько соединений транспортного уровня.
Эти функциональные возможности мы сравниваем с возможностями, которые предоставляют сеансовые объекты ASP.NET. Сеансовые объекты существуют, пока сеанс не закончится по тайм-ауту (обычно через 20 минут), независимо от ТСР-соединений более низкого уровня.
Представительский уровень используется для форматирования данных в соответствии с требованиями приложений. На этом уровне обычно выполняются шифрование, дешифрование и сжатие.
Прикладной уровень—самый верхний уровень модели OSI. Этот уровень содержит приложения, в которых используются сетевые средства. Приложения могут выполнять такие задачи, как передача файлов, печать, электронная почта, Web-браузинг и т. д. Учебные приложения, которые мы будем создавать, принадлежат этому уровню.
Что такое протоколы OSI? — Определение из Techopedia
Что означают протоколы OSI?
Протоколы OSI представляют собой семейство стандартов для обмена информацией. Они состоят из набора правил, которые должны представлять собой стандарт для физических соединений, кабелей, форматов данных, моделей передачи, а также средств, обеспечивающих исправление ошибок и недостающих данных.
Эти протоколы были разработаны и разработаны Международной организацией по стандартизации (ISO). В 1977 была введена модель ISO, которая состояла из семи различных слоев. Эта модель подвергалась критике из-за ее технической сложности и ограниченных возможностей и никогда не достигала цели стать универсальным стандартом.
Каждый уровень модели ISO имеет свои собственные протоколы и функции. Стек протоколов OSI позже был адаптирован в стек TCP/IP.
В некоторых сетях по-прежнему популярны протоколы, использующие только канальный и сетевой уровни модели OSI.
Techopedia объясняет протоколы OSI
Стек протокола OSI работает в иерархической форме, от аппаратного физического уровня до уровня программного приложения. Всего слоев семь. Данные и информация принимаются каждым уровнем от верхнего уровня.
После необходимой обработки этот уровень передает информацию на следующий нижний уровень. Заголовок добавляется к пересылаемому сообщению для удобства следующего уровня. Каждый заголовок состоит из такой информации, как адреса источника и получателя, используемый протокол, порядковый номер и другие данные, относящиеся к управлению потоком.
Ниже перечислены протоколы OSI, используемые на семи уровнях модели OSI:
Уровень 1, физический уровень
Этот уровень связан с аппаратным обеспечением сетей, таким как кабели. Он определяет механические и электрические стандарты интерфейсных устройств и типы кабелей, используемых для передачи цифровых сигналов (например, оптическое волокно, коаксиальный кабель, беспроводной и т. д.).
Основные протоколы, используемые на этом уровне, включают Bluetooth, PON, OTN, DSL, IEEE.802.11, IEEE.802.3, L431 и TIA 449..
Этот уровень получает данные от физического уровня и компилирует их в форму преобразования, называемую кадрированием или кадром. Основной целью этого уровня является обнаружение ошибок передачи путем добавления заголовков к пакетам данных.
Протоколы, используемые канальным уровнем, включают: ARP, CSLIP, HDLC, IEEE.802.3, PPP, X-25, SLIP, ATM, SDLS и PLIP.
Уровень 3, сетевой уровень
Это самый важный уровень модели OSI, который выполняет обработку в реальном времени и передает данные от узлов к узлам. Маршрутизаторы и коммутаторы — это устройства, используемые на этом уровне, которые соединяют ноты в сети для передачи и управления потоком данных.
Сетевой уровень поддерживает следующие протоколы: Интернет-протокол (IPv4), Интернет-протокол (IPv6), IPX, AppleTalk, ICMP, IPSec и IGMP.
Уровень 4, транспортный уровень
Транспортный уровень работает в двух определенных режимах связи: с установлением соединения и без установления соединения. Этот уровень передает данные от источника к узлу назначения.
Он использует наиболее важные протоколы семейства протоколов OSI, а именно: протокол управления передачей (TCP), UDP, SPX, DCCP и SCTP.
Уровень 5, сеансовый уровень
Сеансовый уровень создает сеанс между исходным и целевым узлами и завершает сеансы по завершении процесса связи.
Используемые протоколы: PPTP, SAP, L2TP и NetBIOS.
Уровень 6, уровень представления
На этом уровне определены функции шифрования и дешифрования. Он обеспечивает передачу данных в стандартизированных форматах путем преобразования форматов данных в формат, читаемый прикладным уровнем.
Ниже перечислены протоколы уровня представления: XDR, TLS, SSL и MIME.
Уровень 7, уровень приложений
Этот уровень работает на стороне пользователя для взаимодействия с пользовательскими приложениями. QoS (качество обслуживания), передача файлов и электронная почта являются основными популярными услугами прикладного уровня.
Этот уровень использует следующие протоколы: HTTP, SMTP, DHCP, FTP, Telnet, SNMP и SMPP.
404: Страница не найдена
СетьСтраница, которую вы пытались открыть по этому адресу, похоже, не существует. Обычно это результат плохой или устаревшей ссылки. Мы приносим свои извинения за доставленные неудобства.
Что я могу сделать сейчас?
Если вы впервые посещаете TechTarget, добро пожаловать! Извините за обстоятельства, при которых мы встречаемся. Вот куда вы можете пойти отсюда:
Поиск- Узнайте последние новости.
- Наша домашняя страница содержит самую свежую информацию о работе в сети.
- Наша страница «О нас» содержит дополнительную информацию о сайте, на котором вы находитесь, Networking.
- Если вам нужно, свяжитесь с нами, мы будем рады услышать от вас.
Просмотр по категории
Унифицированные коммуникации
- Взвешивание плюсов и минусов асинхронного сотрудничества
Поставщики UCaaS разрабатывают инструменты, позволяющие удаленным сотрудникам сотрудничать в свободное от работы время. Эта гибкость может принести пользу, но…
- Компании сосредотачиваются на консолидации UCaaS
Замена избыточных инструментов для совместной работы платформой UCaaS находится в центре внимания многих компаний, стремящихся отказаться от унифицированных . ..
- Понимание плюсов и минусов горячих столов для гибридного офиса
Hot desking — это один из способов управления рабочими местами в гибридном офисе. Узнайте о плюсах и минусах горячих столов, чтобы решить, подходит ли это …
Мобильные вычисления
- Поиск лучших тарифных планов мобильных телефонов для малого бизнеса
Мобильный бизнес-план распространен на предприятиях, но для малого и среднего бизнеса картина не столь ясна. Если малый и средний бизнес решит приобрести телефон…
- 5 функций и платформ MDM для малого бизнеса
Когда предприятия малого и среднего бизнеса развертывают мобильные устройства, им необходимо найти жизнеспособное MDM, которое может удовлетворить их потребности. Прочтите о 5 ключевых функциях, на которые стоит обратить внимание…
- Как малому бизнесу выбрать подходящие мобильные устройства
Для предприятий малого и среднего бизнеса, испытывающих нехватку денежных средств, развертывание мобильных устройств может показаться излишним. Тем не менее, мобильные устройства являются ценным инструментом для повышения …
Центр обработки данных
- Квантовые центры обработки данных могут быть способом будущего
Квантовые вычисления обладают большим потенциалом для приложений с высокими вычислительными возможностями. Но технология все еще находится на ранних стадиях, поэтому она может…
- Изучите различные варианты использования озера данных и хранилища данных
Озера данных и хранилища данных хранят большие данные. При выборе озера или склада учитывайте такие факторы, как стоимость и то, что…
- Классические и квантовые вычисления: в чем разница?
Классические и квантовые компьютеры имеют много различий в своих вычислительных возможностях и рабочих характеристиках. Знай их …
ИТ-канал
- Перспективы кибербезопасности 2023: консультанты называют 6 тенденций
Руководители
ИТ-служб прогнозируют, что больше внимания будет уделяться обучению и защите пользователей, безопасности цепочки поставок и машинному обучению.