Чтобы несколько устройств могли надежно взаимодействовать друг с другом, важно иметь стандарты. Хотя создать один стандарт не должно быть слишком сложно, на самом деле вам нужно нечто большее. Чтобы иметь несколько стандартов, которые могут работать вместе, важно иметь хорошо понятную структуру, чтобы целевые стандарты могли выполнять жизненно важные роли.
Модель OSI — это структура, описывающая набор из семи коммуникационных уровней, необходимых для того, чтобы приложения могли взаимодействовать с другими устройствами через сетевое подключение. Важно отметить, что эта модель не основана на каком-либо стандарте, а это означает, что она не обязательно устаревает или нуждается в замене по мере устаревания протоколов.
Несмотря на это, были опубликованы другие модели, имеющие вариации на ту же тему, некоторые из которых по существу неофициально интегрированы в модель OSI. В ряде других моделей некоторые уровни упрощаются таким образом, чтобы лучше отражать используемые в настоящее время протоколы, такие как TCP/IP.
Слои разделены на две группы: медиа- и хост-слои. Уровни мультимедиа относятся к фактической передаче данных по соединению к месту назначения. Уровни хоста относятся к данным, которые необходимо передать, и к их форматированию. Уровнями мультимедиа являются физический, канальный и сетевой. Уровни хоста — это транспортный, сеансовый, презентационный и прикладной. Слои пронумерованы от первого до седьмого соответственно. Каждый уровень напрямую взаимодействует только с нижележащим уровнем, предоставляя при этом возможности для взаимодействия с вышележащим уровнем.
Уровень 1: физический уровень
Физический уровень отвечает за передачу и прием данных между двумя устройствами. Он преобразует цифровые биты, составляющие данные, в сигналы, используемые соответствующей транспортной средой. Нет определенного носителя, поэтому могут использоваться электрические, оптические или радиосигналы. Теоретически этим дело даже не ограничивается: может использоваться аудио, флаги или любой другой способ передачи данных.
Конкретные протоколы должны определить точные характеристики того, что составляет двоичную 1 или 0 на физическом уровне. Кроме того, конкретные протоколы определяют среду передачи. Для физических разъемов это может включать количество, положение и форму электрических контактов, а также способ их подключения от одного устройства к другому. Примерами протоколов, которые охватывают физический уровень, являются Bluetooth, Ethernet и USB.
Уровень 2: Уровень канала передачи данных
Канальный уровень обеспечивает структуру для двух напрямую подключенных устройств. Эти устройства будут находиться в одной сети и в одном домене коллизий. Фактор домена коллизий означает, что этот уровень декодируется и используется сетевыми коммутаторами, но не сетевыми концентраторами. Он предназначен для установления и завершения соединений между двумя подключенными устройствами, а также для обнаружения и, по возможности, исправления ошибок на физическом уровне.
Этот уровень был описан как два подуровня в модели IEEE 802. Уровни управления доступом к среде (MAC) и управления логическими связями (LLC). Уровень MAC отвечает за управление тем, как устройства получают доступ к среде передачи и разрешение на передачу данных. Уровень LLC инкапсулирует протоколы сетевого уровня и обеспечивает проверку ошибок и порядок кадров.
Ethernet, Wi-Fi и Bluetooth — все это примеры протоколов, которые охватывают канальный уровень. MAC-адреса сетевых интерфейсов вашего компьютера связаны с канальным уровнем.
Уровень 3: сетевой уровень
Сетевой уровень обеспечивает функциональность для передачи пакетов между сетями. Сетевой уровень предоставляет адрес назначения для сетевого пакета. Тем не менее, он не определяет, как туда добраться, оставляя это на усмотрение сети. IP-адрес является примером адреса сетевого уровня. Надежность доставки сообщений на сетевом уровне не гарантируется. Однако протоколы сетевого уровня могут реализовывать методы надежной доставки сообщений.
Уровень 4: Транспортный уровень
Транспортный уровень создает фактическую последовательность данных для передачи. Он создает данные в форматах, которые позволяют им соответствовать максимальному блоку передачи (MTU) канала соединения. MTU — это максимальное количество байтов пакета, включая все заголовки. Если пакет слишком велик, он сегментируется на несколько пакетов для последовательной передачи.
Транспортный уровень может дополнительно контролировать надежность соединения между источником и получателем по полному каналу, как если бы это было одно прямое соединение. Некоторые транспортные протоколы, такие как UDP, не применяют методы обеспечения надежности. Напротив, другие, такие как TCP, имеют функцию обнаружения ошибок и повторной передачи отброшенных пакетов.
Уровни 5, 6 и 7: уровни сеанса, представления и приложения.
Уровни 5, 6 и 7, как правило, сгруппированы в более современных коммуникационных моделях и объединяются в набор протоколов Интернета как уровень «приложения». В модели OSI сеансовый уровень устанавливает, контролирует и разрывает соединения между двумя или более компьютерами, что примерно соответствует процессам аутентификации.
Уровень представления инкапсулирует и деинкапсулирует данные. Это может быть простое форматирование данных в формате XML, а также шифрование/дешифрование с помощью TLS. Уровень приложений относится к фактическим приложениям и генерируемому ими сетевому трафику, такому как HTTP и FTP.
Вывод
Модель OSI — это концептуальная модель, описывающая стандартную структуру телекоммуникационных систем. Он специально не полагается на какой-либо протокол, помогающий избежать устаревания. По мере разработки новых протоколов некоторые определяемые им уровни были сгруппированы в более современные модели.
Это особенно заметно для слоев 5, 6 и 7, которые обычно сложно различить и определить с помощью современного программного обеспечения. Другие уровни объяснить проще, но некоторые протоколы не обязательно точно вписываются в одну категорию. Хотя модель OSI не идеальна, она помогает понять сложность и уровни протоколов и систем в интернет-коммуникациях.