Отношения модели OSI и сетевых протоколов

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

  
  • На каком уровне OSI работает IS-IS?
  •   
  • Является ли HTML протоколом презентации или приложения?
  •   
  • Есть ли туннели VPN 2 или 3?
  •   

Как ученик (или специалист по этому вопросу) понимает взаимосвязь между моделью OSI и протоколами, с которыми он /она работает?

osi
23 голоса | спросил Ron Trunk 20 FebruaryEurope/MoscowbThu, 20 Feb 2014 07:06:39 +0400000000amThu, 20 Feb 2014 07:06:39 +040014 2014, 07:06:39

4 ответа


31

Есть два важных факта, которые следует помнить о модели OSI:

  1. Это концептуальная модель. Это означает, что он описывает идеализированную абстрактную теоретическую группу сетевых функций. Он не описывает ничего, что кто-то действительно построил (по крайней мере, ничего, что используется сегодня).

  2. Это не единственная модель. Существуют и другие модели, в первую очередь пакет протокола TCP /IP (RFC-1122 и RFC-1123), который намного ближе к тому, что в настоящее время используется.

Немного истории: вы, вероятно, все слышали о первых днях пакетной сети, в том числе ARPANET, предшественника Интернета. В дополнение к усилиям Департамента обороны США по созданию сетевых протоколов были задействованы еще несколько групп и компаний. Каждая группа разрабатывала свои собственные протоколы в совершенно новой области коммутации пакетов. IBM и телефонные компании разрабатывали свои собственные стандарты. Во Франции исследователи работали над собственным сетевым проектом под названием Cyclades.

Работа над моделью OSI началась в конце 1970-х годов, в основном в качестве реакции на растущее влияние крупных компаний, таких как IBM, NCR, Burroughs, Honeywell (и другие) и их патентованных протоколов и оборудования. Идея этого заключалась в создании открытого стандарта, который обеспечивал бы совместимость между разными производителями. Но поскольку модель ИСО носила международный характер, у нее было много конкурирующих политических, культурных и технических интересов. Потребовалось более шести лет, чтобы прийти к консенсусу и опубликовать стандарты.

Между тем была также разработана модель TCP /IP. Это было просто, легко реализовать, и, самое главное, оно было бесплатным. Вы должны были приобрести стандартные спецификации OSI для создания программного обеспечения для него. Все внимание и усилия в области развития тяготеют к TCP /IP. В результате модель OSI никогда не была реализована как набор протоколов, а TCP /IP стал стандартом для Интернета.

Дело в том, что все протоколы, используемые сегодня, набор TCP /IP; протоколы маршрутизации, такие как RIP, OSPF и BGP; и протоколы хост-систем, такие как Windows SMB и Unix RPC, были разработаны без учета модели OSI. Они иногда имеют некоторое сходство с ним, но стандарты OSI никогда не соблюдались во время их развития. Так что это безумное поручение, чтобы попытаться установить эти протоколы в OSI. Они просто не подходят.

Это не означает, что модель не имеет значения; по-прежнему неплохо изучить его, чтобы вы могли понять общие понятия. Концепция слоев OSI настолько вплетена в сетевую терминологию, что мы говорим о слоях 1, 2 и 3 в повседневной сетевой речи. Определение слоев 1, 2 и 3, если вы немного пощупать, довольно хорошо согласовано. По этой причине он заслуживает того, чтобы знать.

Наиболее важными для понимания OSI (или любой другой) модели являются:

  • Мы можем разделить протоколы на слои
  • Слои обеспечивают инкапсуляцию
  • Слои обеспечивают абстракцию
  • Слои отделяются от других функций

Разделение протоколов на слои позволяет нам говорить об их разных аспектах отдельно. Это упрощает понимание протоколов и упрощает их устранение. Мы можем легко изолировать определенные функции и сгруппировать их с помощью аналогичных функций других протоколов.

Каждая «функция» (в широком смысле) инкапсулирует слой (ы) над ним. Сетевой уровень инкапсулирует слои над ним. Уровень канала передачи данных инкапсулирует сетевой уровень и т. Д.

Слои абстрагируют слои под ним. Вашему веб-браузеру не нужно знать, используете ли вы TCP /IP или что-то еще на сетевом уровне (как если бы было что-то еще). Для вашего браузера нижние слои просто предоставляют поток данных. Как этот поток удается обнаружить, скрыт от браузера. TCP /IP не знает (или не заботится), если вы используете Ethernet, кабельный модем, линию T1 или спутник. Он просто обрабатывает пакеты. Представьте себе, как сложно было бы разработать приложение, которое должно было бы справиться со всем этим. Уровни абстрагируют нижние слои, поэтому разработка и использование программного обеспечения становится намного проще.

Развязка: теоретически вы можете заменить одну специальную технологию другим на том же уровне. До тех пор, пока слой обменивается с одним выше и тем ниже, таким образом, он не должен влиять на то, как он реализован. Например, мы можем удалить очень известный протокол уровня 3, IP-версию 4 и заменить его на IP-версию 6. Все остальное должно работать точно так же. Для вашего браузера или вашего кабельного модема это не имеет значения.

Модель TCP /IP - это то, на чем основан пакет протоколов TCP /IP (сюрприз!). Он имеет только четыре уровня, и все, что находится над транспортом, - это просто «приложение». Это проще понять и предотвращает бесконечные вопросы, такие как «Этот слой сеанса или уровень презентации». Но это тоже просто модель, и некоторые вещи не очень хорошо вписываются вэто либо, как протоколы туннелирования (GRE, MPLS, IPSec, чтобы назвать несколько).

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

ответил Ron Trunk 20 FebruaryEurope/MoscowbThu, 20 Feb 2014 07:06:39 +0400000000amThu, 20 Feb 2014 07:06:39 +040014 2014, 07:06:39
2

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

ответил MAW 22 32017vEurope/Moscow11bEurope/MoscowWed, 22 Nov 2017 23:58:39 +0300 2017, 23:58:39
1

HTTP (не HTML) имеет как презентационный, так и прикладной уровень. Туннели VPN добавляют наложенные слои в существующий стек: это может быть либо уровень 2, либо уровень 3 зависят от их типа. Затем вы сможете увидеть этот добавленный слой (ы) дважды в пакете.

ответил alexlev2004 19 FebruaryEurope/MoscowbSun, 19 Feb 2017 13:35:55 +0300000000pmSun, 19 Feb 2017 13:35:55 +030017 2017, 13:35:55
0

Протоколы маршрутизации IGP (внутренние шлюзы) работают на уровне 3. Внешний BGP работает на уровне 4, а внутренний работает на уровне 3.

Физический уровень - работает с аппаратными сетевыми устройствами, то есть ноутбуками, мобильными телефонами, рабочими столами. Уровень 1, как известно, является областью коллизий, PDU уровня 1 (блок данных протокола - это бит).

Уровень данных /ссылок. Этот уровень относится к коммутаторам уровня 2, широковещательным доменам, VLANS, STP, VTP. Блок данных протокола этого уровня называется фреймами.

Сетевой уровень - это когда происходит маршрутизация, большинство протоколов маршрутизации работают на этом уровне. Это также известно как уровень IP, с которым взаимодействует VLANS. PDU для этого слоя известен как пакеты.

Транспортный уровень. Транспортный уровень связан с портами TCP и UDP, где пакеты из слоев 3 отправляются в их целевые порты. Важно помнить, что TCP - это протокол, ориентированный на соединение, в то время как UDP - это ориентированный на соединение протокол (не гарантированная доставка данных). PDU для этого слоя - датаграммы.

Сессионный уровень - Уровень сеанса - это то, где пакеты инкапсулированы из декапсулированного из уровня 3. Этот уровень имеет дело с несколькими языками программирования на стороне сервера, где вы можете создавать программные приложения и преобразовывать их в ->

Уровень презентации. Этот уровень касается кодов клиентской стороны, которые вы видите в своем веб-браузере, или когда вы делаете щелчок правой кнопкой мыши и просматриваете источник, это в основном коды HTM /CSS /Javascript, которые позволяют вам просматривать ваш ->

Уровень приложения. Здесь GUI (графический интерфейс пользователя) преобразует коды HTML /CSS из слоя 6 в этот слой. То, что вы видите в своем веб-браузере, - это графический интерфейс переднего плана. Слой 5,6,7 PDU называется сообщением.

Я надеюсь, что они ответят на все вопросы, связанные с OSI.

На каком уровне OSI работает IS-IS? - Уровень 3
Является ли HTML протоколом презентации или приложения? - Презентация
Являются ли туннели VPN 2 или 3? - > L2TP - это слой 2 -> VPN-туннели обычно работают на уровне 3, например IPSEC.

ответил chris 20 FebruaryEurope/MoscowbThu, 20 Feb 2014 09:48:03 +0400000000amThu, 20 Feb 2014 09:48:03 +040014 2014, 09:48:03

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132