УПИС лекции / 8. Эталонная модель взаимодействия открытых систем
Сложность сетевых структур и разнообразие телекоммуникационных устройств, выпускаемых различными фирмами, привели к необходимости стандартизации как устройств, так и процедур обмена данными между пользователями. Международная организация стандартов (International Standards Organization – ISO ) создала эталонную модель взаимодействия открытых систем (Open System Interconnection reference model – OSI ), которая определяет концепцию и методологию создания сетей передачи данных. Модель описывает стандартные правила функционирования устройств и программных средств при обмене данными между узлами (компьютерами) в открытой системе. Открытая система состоит из программно-аппаратных средств, способных взаимодействовать между собой при использовании стандартных правил и устройств сопряжения (интерфейсов).
Модель ISO/OSI включает семь уровней. На рис. 1 показана модель взаимодействия двух устройств: узла источника (source) и узла назначения (destination). Совокупность правил, по которым происходит обмен данными между программно-аппаратными средствами, находящимися на одном уровне, называется протоколом. Набор протоколов называется стеком протоколов и задается определенным стандартом. Взаимодействие между уровнями определяется стандартными интерфейсами.
Рис. 1. Семиуровневая модель ISO/OSI
Взаимодействие соответствующих уровней является виртуальным, за исключением физического уровня, на котором происходит обмен данными по кабелям, соединяющим компьютеры. На рисунке приведены также примеры протоколов, управляющих взаимодействием узлов на различных уровнях модели OSI. Взаимодействие уровней между собой внутри узла происходит через межуровневый интерфейс, и каждый нижележащий уровень предоставляет услуги вышележащему.
Виртуальный обмен между соответствующими уровнями узлов A и B (рис. 2) происходит определенными единицами информации. На трех верхних уровнях – это сообщения или данные (Data), на транспортном уровне – сегменты (Segment), на сетевом уровне – пакеты (Packet), на канальном уровне – кадры (Frame ) и на физическом – последовательность битов.
Для каждой сетевой технологии существуют свои протоколы и свои технические средства, часть из которых имеет условные обозначения, приведенные на рис. 1. Данные обозначения введены фирмой Cisco и стали общепринятыми. Среди технических средств физического уровня следует отметить кабели, разъемы, повторители сигналов (repeater), многопортовые повторители или концентраторы (hub), преобразователи среды (transceiver), например, преобразователи электрических сигналов в оптические и наоборот. На канальном уровне – это мосты (bridge), коммутаторы (switch). На сетевом уровне – маршрутизаторы (router). Сетевые карты или адаптеры (Network Interface Card – NIC) функционируют как на канальном, так и на физическом уровне, что обусловлено сетевой технологией и средой передачи данных.
Рис. 2. Устройства и единицы информации соответствующих уровней
При передаче данных от источника к узлу назначения подготовленные на прикладном уровне передаваемые данные последовательно проходят от самого верхнего, Прикладного уровня 7 узла источника информации до самого нижнего – Физического уровня 1, затем передаются по физической среде узлу назначения, где последовательно проходят от нижнего уровня 1 до уровня 7.
Самый верхний, Прикладной уровень (Application Layer) 7 оперирует наиболее общей единицей данных – сообщением. На этом уровне реализуется управление общим доступом к сети, потоком данных, сетевыми службами, такими, как FTP, TFTP, HTTP, SMTP, SNMP и др.
Представительский уровень (Presentation Layer) 6 изменяет форму представления данных. Например, передаваемые с уровня 7 данные преобразуются в общепринятый формат ASCII. При приеме данных происходит обратный процесс. На уровне 6 также происходит шифрация и сжатие данных.
Сеансовый уровень (Session Layer) 5 устанавливает сеанс связи двух конечных узлов (компьютеров), определяет, какой компьютер является передатчиком, а какой приемником, задает для передающей стороны время передачи.
Транспортный уровень (Transport Layer) 4 делит большое сообщение узла источника информации на части, при этом добавляет заголовок и формирует сегменты определенного объема, а короткие сообщения может объединять в один сегмент. В узле назначения происходит обратный процесс. В заголовке сегмента задаются номера порта источника и назначения, которые адресуют службы верхнего прикладного уровня для обработки данного сегмента. Кроме того, транспортный уровень обеспечивает надежную доставку пакетов. При обнаружении потерь и ошибок на этом уровне формируется запрос повторной передачи, при этом используется протокол TCP. Когда необходимость проверки правильности доставленного сообщения отсутствует, то используется более простой и быстрый протокол дейтаграмм пользователя (User Datagram Protocol – UDP).
Сетевой уровень (Network Layer) 3 адресует сообщение, задавая единице передаваемых данных (пакету) логические сетевые адреса узла назначения и узла источника (IP-адреса ), определяет маршрут, по которому будет отправлен пакет данных, транслирует логические сетевые адреса в физические, а на приемной стороне – физические адреса в логические. Сетевые логические адреса принадлежат пользователям.
Канальный уровень (Data Link) 2 формирует из пакетов кадры данных (frames). На этом уровне задаются физические адреса устройства-отправителя и устройства-получателя данных. Например, физический адрес устройства может быть прописан в ПЗУ сетевой карты компьютера. На этом же уровне к передаваемым данным добавляется контрольная сумма, определяемая с помощью алгоритма циклического кода. На приемной стороне по контрольной сумме определяют и по возможности исправляют ошибки.
Физический уровень (Physical) 1 осуществляет передачу потока битов по соответствующей физической среде (электрический или оптический кабель, радиоканал) через соответствующий интерфейс. На этом уровне производится кодирование данных, синхронизация передаваемых битов информации.
Протоколы трех верхних уровней являются сетенезависимыми, три нижних уровня являются сетезависимыми. Связь между тремя верхними и тремя нижними уровнями происходит на транспортном уровне.
Важным процессом при передаче данных является инкапсуляция (encapsulation) данных. Передаваемое сообщение, сформированное приложением, проходит три верхних сетенезависимых уровня и поступает на транспортный уровень, где делится на части и каждая часть инкапсулируется (помещается) в сегмент данных (рис. 3). В заголовке сегмента содержится номер протокола прикладного уровня, с помощью которого подготовлено сообщение, и номер протокола, который будет обрабатывать данный сегмент.
Рис. 3. Инкапсуляция данных
На сетевом уровне сегмент инкапсулируется в пакет данных, заголовок ( header ) которого содержит, кроме прочего, сетевые (логические) адреса отправителя информации (источника) – Source Address ( SA ) и получателя (назначения) – Destination Address ( DA ). В данном курсе – это IP-адреса.
На канальном уровне пакет инкапсулируется в кадр или фрейм данных, заголовок которого содержит физические адреса узла передатчика и приемника, а также другую информацию. Кроме того, на этом уровне добавляется трейлер (концевик) кадра, содержащий информацию, необходимую для проверки правильности принятой информации. Таким образом, происходит обрамление данных заголовками со служебной информацией, т. е. инкапсуляция данных. Процесс, обратный инкапсуляции – декапсуляция.
Название информационных единиц на каждом уровне, их размер и другие параметры инкапсуляции задаются согласно протоколу единиц данных (Protocol Data Unit – PDU ). Итак, на трех верхних уровнях – это сообщение (Data), на Транспортном уровне 4 – сегмент (Segment), на Сетевом уровне 3 – пакет (Packet), на Канальном уровне 2 – кадр (Frame), на Физическом Уровне 1 – последовательность бит.
Помимо семиуровневой OSI модели на практике применяется четырехуровневая модель TCP/IP.
1. Эталонная модель взаимодействия открытых систем
Сетевая модель OSI (англ.open systems interconnection basic reference model — базовая эталонная модельвзаимодействия открытых систем) —сетевая модельстекасетевых протоколовOSI/ISO.
В связи с затянувшейся разработкой протоколов OSI, в настоящее время основным используемым стеком протоколов является TCP/IP, он был разработан ещё до принятия модели OSI и вне связи с ней.
6. Представительский (presentation)
Представление и шифрование данных
Прямая связь между конечными пунктами и надежность
Определение маршрута и логическая адресация
Работа со средой передачи, сигналами и двоичными данными
Уровни модели osi
В литературе наиболее часто принято начинать описание уровней модели OSI с 7-го уровня, называемого прикладным, на котором пользовательские приложения обращаются к сети. Модель OSI заканчивается 1-м уровнем — физическим, на котором определены стандарты, предъявляемые независимыми производителями к средам передачи данных:
- тип передающей среды (медный кабель, оптоволокно, радиоэфир и др.),
- тип модуляции сигнала,
- сигнальные уровни логических дискретных состояний (нуля и единицы).
- позволяет приложениям использовать сетевые службы:
- удалённый доступ к файлам и базам данных,
- пересылка электронной почты;
- Прикладной (5) уровень (Application Layer) или уровень приложений обеспечивает услуги, непосредственно поддерживающие приложения пользователя, например, программные средства передачи файлов, доступа к базам данных, средства электронной почты, службу регистрации на сервере. Этот уровень управляет всеми остальными уровнями. Например, если пользователь работает с электронными таблицами Excel и решает сохранить рабочий файл в своей директории на сетевом файл-сервере, то прикладной уровень обеспечивает перемещение файла с рабочего компьютера на сетевой диск прозрачно для пользователя.
- Транспортный (4) уровень (Transport Layer) обеспечивает доставку пакетов без ошибок и потерь, а также в нужной последовательности. Здесь же производится разбивка на блоки передаваемых данных, помещаемые в пакеты, и восстановление принимаемых данных из пакетов. Доставка пакетов возможна как с установлением соединения (виртуального канала), так и без. Транспортный уровень является пограничным и связующим между верхними тремя, сильно зависящими от приложений, и тремя нижними уровнями, сильно привязанными к конкретной сети.
- Сетевой (3) уровень (Network Layer) отвечает за адресацию пакетов и перевод логических имен (логических адресов, например, IP-адресов или IPX-адресов) в физические сетевые MAC-адреса (и обратно). На этом же уровне решается задача выбора маршрута (пути), по которому пакет доставляется по назначению (если в сети имеется несколько маршрутов). На сетевом уровне действуют такие сложные промежуточные сетевые устройства, как маршрутизаторы.
- Канальный (2) уровень или уровень управления линией передачи (Data link Layer) отвечает за формирование пакетов (кадров) стандартного для данной сети (Ethernet, Token-Ring, FDDI) вида, включающих начальное и конечное управляющие поля. Здесь же производится управление доступом к сети, обнаруживаются ошибки передачи путем подсчета контрольных сумм, и производится повторная пересылка приемнику ошибочных пакетов. Канальный уровень делится на два подуровня: верхний LLC и нижний MAC. На канальном уровне работают такие промежуточные сетевые устройства, как, например, коммутаторы.
- Физический (1) уровень (Physical Layer) – это самый нижний уровень модели, который отвечает за кодирование передаваемой информации в уровни сигналов, принятые в используемой среде передачи, и обратное декодирование. Здесь же определяются требования к соединителям, разъемам, электрическому согласованию, заземлению, защите от помех и т.д. На физическом уровне работают такие сетевые устройства, как трансиверы, репитеры и репитерные концентраторы.