В модели OSI/ISO сетевые функции распределены между семью уровнями.
Уровень | Наименование | ФУНКЦИЯ |
1em1 | Физический | Собственно кабель или физический носитель |
2 | Канальный | Передача и прием пакетов, определение аппаратных адресов |
3 | Сетевой | Маршрутизация и ведение учета |
4 | Транспортный | Обеспечение корректной сквозной пересылки данных |
5 | Сеансовый | Аутентификация и проверка полномочий |
6 | Представления данных | Интерпретация и сжатие данных |
7 | Прикладной | Предоставление услуг на уровне конечного пользователя: почта, регистрация и т.д. |
В числе "семь" нет ничего магического, просто в разработке Эталонной модели участвовали семь комитетов, и для каждого из них был создан один уровень. Схема OSI - не просто абстрактная модель; ее сопровождает реальный набор "стандартных" протоколов. Создание системы OSI началось в первой половине 80-х годов и растянулось на многие годы. Пока комитеты ISO спорили о своих стандартах, за их спиной менялась вся концепция организации сетей и по всему миру внедрялся протокол TCP/IP.
Каждому уровню соответствуют различные сетевые операции, оборудование и протоколы.
0.1mm
Рис. 1. Семь уровней модели OSI
На рис. 1 представлена многоуровневая архитектура модели OSI. На каждом уровне выполняются определенные сетевые функции, которые взаимодействуют с функциями соседних уровней, вышележащего и нижележащего. Например, Сеансовый уровень должен взаимодействовать только с Представительным и Транспортным. Все эти функции подробно описаны.
Прикладной уровень
Уровень 7, Прикладной (Application Layer), - самый верхний уровень модели OS1.
Он представляет собой окно для доступа прикладных процессов к сетевым услугам. Прикладной уровень обеспечивает доступ прикладных процессов в среде OSI. Функции прикладного уровня разделяются на две группы: общие и специальные. Первые дают средства взаимодействия, используемые различными приложениями, например, средства организации связи между прикладными процессами. Вторые обеспечивают определенные потребности конкретных приложений, например, обмен файлами, доступ к базам данных и электронную почту.
Представительный уровень
Уровень 6, Представительный (Presentation Layer),
Представительный уровень предназначен для представления данных, подлежащих передаче между прикладными объектами, представления структур данных, на которые ссылаются прикладные объекты, представлением методов, которые могут использоваться для манипулирования и обработки данных. Представительный уровень имеет дело с синтаксисом, т.е. с формальным их представлением. Семантика, т.е. способ интерпретации данных, их смысл - прерогатива только прикладного уровня. Наличие представительного уровня освобождает приложения от необходимости заботиться о проблеме общего представления данных и обеспечивает независимость от синтаксиса. Это позволяет прикладным объектам использовать любой локальный синтаксис, представительный уровень обеспечивает преобразование локальных синтаксисов в согласованный обеими прикладными объектами. Преобразования синтаксисов выполняются локально и видны для других открытых систем. В связи с этим представительные протоколы не стандартизируются.
Функции представительного уровня включают:
Сущность второй и третьей функции заключается в следующем. Существует три варианта синтаксиса данных: синтаксис отправителя, синтаксис получателя и синтаксис, используемый объектами представительного уровня (синтаксис пердачи). Любые или два из них могут быть иденитичными. Уровень представления содержит функции, необходимое для преобразования между синтаксисом передачи и каждым из синтаксисов прикладных объектов по мере необходимости. Единого синтаксиса передачи для всей OSI не существует поэтому представительные объекты-корреспонденты согласуют синтаксис в процессе установления соединения. Представительный объект должен знать синтаксис своего прикладного объекта и согласованный синтаксис передачи. Согласование синтаксиса передачи осуществляется в процессе диалога между объектами представительного уровня либо в процессе установления соединения, либо в любое время в процессе передачи данных.
Представительный уровень отвечает за преобразование протоколов, трансляцию данных, их шифрование, смену или преобразование применяемого набора символов (кодовой таблицы) и расширение графических команд. Представительский уровень, кроме того, управляет сжатием данных для уменьшения передаваемых битов. На этом уровне в Win/DOS работает утилита, называемая редиректором (redirector). Ее назначение - переадресовать операции ввода/вывода к ресурсам сервера Lan Manager.
Сеансовый уровень
Уровень 5, Сеансовый (Session Layer)
Сеансовый уровень предназначен для организации и синхронизации диалога и управления обменом данными. С этой целью уровень предоставляет услуги по установлению сеансового соединения между двумя представительными объектами и поддержанию упорядоченного взаимодействия при обмене данными между ними. Для осуществления передачи данных между представительными объектами сеанс отображается на транспортное соединение и использует последнее. Сеанс может быть расторгнут сеансовыми или представительными объектами.
Функции сеансового уровня сводятся к установлению и расторжению сеансового соединения; обмену нормальными и срочными данными; управлению взаимодействием; синхронизации сеанса; восстановлению сеанса. Все эти функции тесно связаны с сеансовым сервисом, поскольку собственные, не инициированные со стороны верхнего уровня действия практически отсутствуют.
Синхронизацию между пользовательскими задачами сеансовый уровень обеспечивает посредством расстановки в потоке данных контрольных точек (chekpoints). Ta-ким образом, в случае сетевой ошибки, потребуется заново передать только данные, следующие за последней контрольной точкой. На этом уровне выполняется управление диалогом между взаимодействующими процессами, т.е. регулируется, какая из сторон осуществляет передачу, когда, как долго и т.д.
Транспортный уровень
Уровень 4, Транспортный (Transport Layer)
Транспортный уровень обеспечивает прозрачную передачу данных между сеансовыми объектами и освобождает их от функций, связанных с надежной и экономически эффективной передачей данных. Уровень оптимизирует использолвание имеющихся сетевых ресурсов представляя транспортный сервис при минимальной стоимости. Оптимизация выполняется при ограничениях, накладываемых всеми взаимодействующими в пределах сети сеансовыми объектами, с одной стороны, и возможностями и параметрами сетевого сервиса, который используется транспортным уровнем, с другой. Протоколы транспортного уровня предназначены для межконцевого (point-to-point) взаимодействия, где концы определяются как транспортные объекты-корреспонденты. Транспортный уровень освобождается от маршрутизации и ретрансляции и занимается исключительно обеспечением взаимодействия между оконечными открытыми системами. Транспортные функции зависят от сетевого сервиса и включают:
Транспортный уровень гарантирует доставку пакетов без ошибок, в той же последовательности, без потерь и дублирования. На этом уровне сообщения переупаковываются: длинные разбиваются на несколько пакетов, а короткие объединяются в один. Это увеличивает эффективность передачи пакетов по сети. На транспортном уровне узла-получателя сообщения распаковываются, восстанавливаются в первоначальном виде, и обычно посылается сигнал подтверждения приема. Транспортный уровень управляет потоком, проверяет ошибки и участвует в нии проблем, связанных с отправкой и получением пакетов.
Сетевой уровень
Уровень 3, Сетевой (Network Layer)
Сетевой уровень отвечает за адресацию сообщений и перевод логических адресов и имен в физические адреса. Сетевой уровень обеспечивает установление, поддержание и разъединение сетевых соединений между системами, содержащими взаимодействующие прикладные объекты, а также предоставляет функциональные и процедурные средства для блочного обмена данными между транспортными объектами по сетевым соединениям.
Сетевой уровень определяет маршрут транспортного объекта-отправителя к транспортному бъекту-получателю и обеспечивает независимость от особенностей маршрутизации и ретрансляции, связанных с установлением и использованием данного сетевого соединения. Это тот случай, когда несколько [под]сетей используются последовательно или параллельно.
На этом уровне решаются также такие задачи и проблемы, связанные с сетевым трафиком, как коммутация пакетов, маршрутизация и перегрузки. Если сетевой адаптер маршрутизатора не может передавать большие блоки данных, посланные компьютером-отправителем, на сетевом уровне эти блоки разбиваются на меньшие. Сетевой уровень компьютера-получателя собирает эти данные в исходное состояние.
Функции сетевого уровня:
Сетевые соединения могут иметь различную конфигурацию - от простого двух-точечного соединения до сложной комбинации подсетей с различными характеристиками. Обычно сетевые функции разделяются на подуровни. Б.м. подробно такое разделение описано в оригинальных документах ISO, описывающих модель OSI.
Канальный уровень
Уровень 2, Канальный (Data Link Layer),
Канальный уровень осуществляет передачу кадров (frames) данных от cетевого уровня к физическому. Кадры - это логически организованная структура в которую можно помещать данные. Канальный уровень узла-получателя упаковывает сырой поток битов, поступающих от физического уровня, в кадры данных.
На рис. 3.3 представлен простой кадр данных, где идентификатор отправителя-адрес узла-отправителя, а идентификатор получателя © адрес узла-получателя. Управляющая информация используется для маршрутизации, а также указывает на тип пакета и сегментацию. Данные - собственно передаваемая информация. CRC (Избыточный циклический код) - это сведения, которые помогут выявить ошибки, что, в свою очередь, гарантирует правильный прием информации.
Канальный уровень обеспечивает функциональные и процедурные средства для установления, поддержания и расторжения канальных соединений между сетевыми объектами и передачи блоков данных. Канальное соединение (канал передачи данных) строится на одном или нескольких физических соединениях.
Канальный уровень обнаруживает и, в большинстве случаев исправляет ошибки, которые могут возникнуть на физическом уровне. Это позволяет сетевому уровню считать передачу данных по сетевому соединению фактически безошибочной. Помимо этого канальный уровень позволяет сетевому управлять взаимными соединениями физических каналов.
Обычно, когда канальный уровень посылает кадр, он ожидает со стороны получателя подтверждения приема. Канальный уровень получателя проверяет наличие возможных ошибок передачи. Кадры, поврежденные при передаче, или кадры, получение которых не подтверждено, посылаются вторично.
Функции канального уровня:
Физический уровень
Уровень 1, Физический (Physical Layer)
Это самый нижний в модели OSI. Этот уровень осуществляет передачу неструктурированного, ©сырого© потока бит по физической среде (например, по сетевому кабелю).
Физический уровень обеспечивает механические, электрические, функциональные и процедурные средства активизации, поддержания и деактивизации физических соединений для передачи данных между канальными объектами. Функции уровня сводятся к активизации и деактивизации физического соединения, а также передачи данных.
Здесь реализуются электрический, оптический, механический и функциональный интерфейсы с кабелем. Физический уровень также формирует сигналы, которые переносят данные, поступившие от всех вышележащих уровней.
На этом уровне определяется способ соединения сетевого кабеля с платой сетевого адаптера, в частности, количество контактов в разъемах и их функции. Кроме того, здесь определяется способ передачи данных по сетевому кабелю.
Физический уровень предназначен для передачи битов (нулей и единиц) от одного компьютера к другому. Уровень отвечает за кодирование данных и синхронизацию битов, гарантируя, что переданная единица будет воспринята именно как единица, а не как ноль. Также физический уровень устанавливает длительность каждого бита и способ перевода бита в соответствующие электрические или оптические импульсы, передаваемые по сетевому кабелю.
Нижние уровни 1-й и 2-й определяют физическую среду передачи данных и сопутствующие задачи, такие, как передача битов данных через плату сетевого адаптера и кабель. Самые верхние уровни определяют, каким способом осуществляется доступ приложений к услугам связи. Чем выше уровень, тем более сложную задачу он решает.
Каждый уровень предоставляет несколько услуг (т.е. выполняет несколько операций), подготавливающих данные для доставки по сети на другой компьютер. Уровни отделяются друг от друга границами - интерфейсами. Все запросы от одного уровня (другому передаются через интерфейс. Каждый уровень использует услуги нижележащего уровня.
Взаимодействие уровней модели OSI
Задача каждого уровня - предоставление услуг вышележащему уровню, маскируя©детали реализации этих услуг. При этом каждый уровень работает таким образом, будто существует прямая связь между всеми объектами одного уровня, где бы они не находились. Эта логическая, или виртуальная, связь между одинаковыми уровнями показана на рисунке 3.2.