<Назад
Знакомство с моделью OSI

Всем привет! 🖖

В этой статье мы начнем рассматривать фундаментальную модель сетевого взаимодействия - OSI.


Уже к 70-м годам существовало множество различных стеков коммуникационных протоколов: TCP/IP, IBM SNA и другие. Подобное разнообразие породило проблему несовместимости устройств, использующих разные протоколы. В начале 80-х ISO (International Standards Organization) и ITU (International Telecommunications Union) разработали стандартную модель взаимодействия открытых систем (OSI).


Модель OSI определяет:

  1. уровни взаимодействия;
  2. стандартные названия уровней;
  3. функции уровней.


Средства взаимодействия в модели OSI делятся на семь уровней:

  • прикладной (application layer);
  • представления (presentation layer);
  • сеансовый (session layer);
  • транспортный (transport layer);
  • сетевой (network layer);
  • канальный (data link layer);
  • физический (physical layer).


Давайте, абстрактно, рассмотрим как происходит взаимодействие по модели OSI между двумя приложениями.


Предположим, у нас есть два приложения A и B, которые запущены на разных компьютерах. Приложение А это браузер, а приложение B это сервер интернет-магазина. Они обмениваются различными сообщениями, например информацией о товарах или заказах.



Браузер с помощью системных вызовов операционной системы, образующих API, отправляет запросы к системным средствам прикладного уровня с просьбой передать запрос на сервер-интернет магазина. Далее это сообщение проходит через каждый уровень, который отвечает за конкретную функцию, например уровень представления за перекодировку сообщения. На каждом уровне к сообщению добавляются служебные заголовки уровня, которые будут анализироваться на компьютере, которому адресован запрос (на изображении клетки с цифрами 1-7).


Когда сообщение достигает средств физического уровня, который и отвечает за передачу запроса по линиям связи, оно отправляется к адресату.


Стоит отметить, что в данном примере хождение по уровням, до момента попадания на линию происходит в рамках процессов на одном компьютере.


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


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


В следующих статьях мы рассмотрим каждый из уровней более детально.

Хэштеги:
#сети
#osi
Поделиться:

Самое свежее

CSS анимация пульсации

Простой пример того, как реализовать анимацию пульсации, используя HTML и CSS

#css

Неверная оценка стоимости услуг ИТ подрядчика

Сегодня мы поговорим о неверной оценке стоимости разработки ИТ решений. Эта боль - одна из основных для предприятий и стартапов, включая самих ИТ подрядчиков.

#консалтинг

Зачем VPN бизнесу?

В этой статье мы рассмотрим то, как можно обезопасить доступ к облачным ресурсам предприятия с помощью VPN

#сети
#vpn

Сокращаем срок реализации MVP

Разберемся со сроками реализации MVP.

#процессразработки

Документирование кода в языке программирования Rust

В этой статье рассмотрим то, как происходит документирование в Rust и рассмотрим очень полезную возможность - написание тестов через документирование.

#rust

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

В этой статье мы более подробно рассмотрим каждый из уровней модели OSI

#сети
#osi

Введение в паттерны проектирования в разработке программного обеспечения

В этой статье мы начнем погружаться в мир оптимизации архитектуры приложений с помощью шаблонов проектирования

#шаблоныпроектирования

В чем отличие аутсорсинга разработки от аутстаффинга ИТ-сотрудника для разработки?

В этой статье разберемся, что такое аутсорс- и аутстафф-разработка.

#процессразработки

От идеи к концепции

В этой публикации мы поговорим о том, чем идея отличается от концепции. Сделаем это на примере конкретной цели

#процессразработки

Знакомьтесь, Пентест

Начинаем рассматривать один из основных методов оценки безопасности компьютерных систем и сетей на предмет потенциальных уязвимостей - тестирование на проникновение

#pentest
#infosec

Введение в разработку

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

#процессразработки

От концепции к MVP

В этой статье вы узнаете, на примере, о том, как перейти от концепции к MVP без лишних усложнений в функционале продукта

#процессразработки