Тема № 2.________Модель OSI (Open  System Interconnection). Стек протоколов TCP\IP.

   

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

   С целью стандартизации уровней общения сетевых устройств международной организацией ISO (international organization of standard) была разработана модель OSI (Open System Interconnection), которая описывает, как, по каким правилам высокоуровневое сообщение преобразуется в конечном итоге в электрические сигналы, передающиеся по сетевому кабелю или телефонной сети, а затем восстанавливаются вновь у получателя.

    1. Прикладной.

Обеспечивает связь человека и компьютера или любого другого сетевого устройства. Определяет правила интерфейса с пользователем.

    1. Представления

Обеспечивает подготовку данных к передаче по сети, например, кодирование, упаковка.

    1. Сеансовый

Обеспечивает установление логического или физического соединения.

    1. Транспортный

Обеспечивает надежную передачу пакетов данных.

    1. Сетевой

Обеспечивает распределение пакетов по многоуровневой сети (с подсетями). Решаются вопросы адресации, выбора маршрута.

    1. Канальный

Обеспечивает прохождение пакета по каналу связи. Стандарты на сетевые технологии.

    1. Физический

   Описывает требования к физическим характеристикам сетевых устройств, способы кодирования, аппаратного контроля правильности и т.п.
   Сейчас нам важно понять, что для протоколов более старшего уровня  информация, получаемая от протоколов младшего уровня, рассматривается как непрерывный поток битов, которые разбиваются на некоторые куски, называемые пакетами или дейтаграммами в зависимости от типа соединения. Пакетом обычно называют единицу информации, передаваемой с подтверждением. А дейтаграммой – без подтверждения. Причем обе эти единицы рассматриваются на транспортном уровне. На канальном уровне единица передаваемой информации обычно называется кадром.
   Пусть исходный текст, который мы хотим передать по сети: «Данные». Тогда этот текст разобьется на некоторые фрагменты, размер которых соответствует размеру минимального буфера (минимум по источнику, получателю и промежуточным узлам). Каждый фрагмент снабжается заголовком. Такая конструкция называется пакетом. Заголовок пакета (адрес отправителя и адрес получателя + служебная информация).

Разделение каналов. Мультиплексирование.

   Выделенные каналы, как вы уже поняли, это дорого. На практике применяется так называемое разделение каналов или мультиплексирование, при котором канал связи поступает в распоряжение того или иного абонента по некоторым правилам.
   Существует множество алгоритмов, которые позволяют нескольким абонентам пользоваться одной линией связи. Как обычно, хороших и плохих алгоритмов не бывает, бывают более или менее соответствующие  заданным условиям.
    Так, например, самый простой алгоритм состоит в следующем: если узлу требуется передать данные, он их передает. При этом возможна ситуация, при которой в это же время начал передачу еще какой-нибудь узел. Очевидно, оба сообщения будут испорчены. (Если одновременно кричат два человека, не слышно никого!) Но, если вероятность такой одновременной передачи низка, то вполне можно согласиться на этот алгоритм.
    Пусть теперь узлы достаточно часто передают данные по сети, следовательно, требуется как-то упорядочить их работу. Рассмотрим канал с временным (ударение на последнем слоге слова!) разделением. При этом за каждым абонентом закрепляются промежутки времени,  в которые абонент момент передавать данные. Если абоненту нечего передавать, то в течение выделенного ему времени сеть простаивает. Вторая проблема этого протокола состоит в необходимости синхронизации узлов. В курсе «Надежность информационных систем» мы рассмотрим способы синхронизации. А сейчас главное – осознавать, что в случае неверно идущих часов у одного из узлов снова появляются коллизии (наложение и порча пакетов).
    Частотное мультиплексирование более распространено. При этом за каждым абонентом закрепляется определенная полоса пропускания – полоса частот, используемых для приема и передачи данных. Полосы не перекрываются и даже более: между ними есть неиспользуемые промежутки. Такой прием реализуем в случае, если физический сигнал обладает широким спектром, а передаваемый -ограниченным и значительно меньшим спектром. Частотное мультиплексирование сильно похоже на выделенную линию, хотя при этом  физическая линия распределена между несколькими абонентами, но диапазон частот закреплен. Теоретически коллизий данный алгоритм избегает.
    В следующих алгоритмах сделаем попытку отойти от выделенных каналов еще дальше.
    Есть еще термин коммутация. При мультиплексировании мы рассматриваем ситуацию, в которой находятся несколько желающих передать данные, при этом они имеют один канал связи. Сейчас мы будем говорить о ситуации, в которой есть несколько желающих и несколько каналов связи.
    Различают следующие виды коммутации: коммутация каналов, коммутация пакетов.  При коммутации каналов передача данных происходит следующим образом: если некоторый узел желает передать данные, то ему временно отдается в распоряжение канал связи. То есть образуется как будто выделенный канал на то время, пока узел не освободит его. В другое время этот же канал связи может быть передан в пользование другому абоненту. Обычные телефонные линии связи – пример коммутации каналов. Недостаток такого распределения каналов – недостаточно эффективное использование линий связи. Так, если, разговаривая с кем-то по телефону, вы молчите, обдумывая ответ, то выделенный вам канал связи простаивает.
    Наиболее эффективное использование каналов связи получается при коммутации пакетов. При этом передаваемые данные разных отправителей оформляются в пакеты ( на одни данные много пакетов!), и эти пакеты передаются друг за другом, занимая канал связи на небольшое время, максимально используя возникающие свободные промежутки.

 

Стек протоколов TCP/IP.  История и перспективы стека TCP/IP

    Transmission Control Protocol/Internet Protocol (TCP/IP) - это промышленный стандарт стека протоколов, разработанный для глобальных сетей.
    Стандарты TCP/IP опубликованы в серии документов, названных Request for Comment (RFC). Документы RFC описывают внутреннюю работу сети Internet. Некоторые RFC описывают сетевые сервисы или протоколы и их реализацию, в то время как другие обобщают условия применения. Стандарты TCP/IP всегда публикуются в виде документов RFC, но не все RFC определяют стандарты.
    Стек был разработан по инициативе Министерства обороны США (Department of Defence, DoD) в конце 70-х годов прошлого столетия для связи экспериментальной сети ARPAnet с другими подчиненными сетями. Стек представляет собой набор общих протоколов для разнородной вычислительной среды. Сеть ARPA поддерживала разработчиков и исследователей в военных областях. В сети ARPA связь между двумя компьютерами осуществлялась с использованием протокола Internet Protocol (IP), который и по сей день является одним из основных в стеке TCP/IP и фигурирует в названии стека.
    Большой вклад в развитие стека TCP/IP внес университет Беркли, реализовав протоколы стека в своей версии ОС UNIX. Широкое распространение ОС UNIX привело и к широкому распространению протокола IP и других протоколов стека. В основном на этом же стеке работает всемирная информационная сеть Internet, чье подразделение Internet Engineering Task Force (IETF) вносит основной вклад в совершенствование стандартов стека, публикуемых в форме спецификаций RFC.
Итак, лидирующая роль стека TCP/IP объясняется следующими его свойствами: