· логическую декомпозицию сложной сети на обозримые части – уровни;
· стандартные интерфейсы между сетевыми функциями;
· симметрию в отношении функций, реализуемых в каждом узле сети;
· общий язык для взаимопонимания разработчиков различных частей сети.
Модель OSI делится на 7 уровней, пронумерованных снизу вверх:
№ уров-ня | Наименование уровня | Назначение |
7 | Прикладной (Application Layer) | Является границей между процессами модели OSI и прикладными процессами. Отвечает за обеспечение доступа прикладных программ к различным службам и ресурсам сети. Примеры задач этого уровня: передача файлов, электронная почта, управление сетью и др. Примеры протоколов – NCP стека Novell; SMB в стеке Windows NT; NFS, FTP, SNMP, Telnet стека TCP/IP |
6 | Представления данных (Presentation Layer) | Преобразует сообщения пользователя к форме, используемой нижними уровнями. Целью преобразования является, например, сжатие данных или их шифрование, преодоление синтаксических различий. Выше этого уровня сообщения имеют явную смысловую форму, ниже этого уровня данные рассматриваются как передаточный груз. Пример протокола – Secure Socket Layer (SSL), обеспечивающий конфиденциальность передачи данных в стеке TCP/IP |
5 | Сеансовый (Session Layer) | Обеспечивает организацию сеанса связи между двумя абонентами сети, управляет диалогом взаимодействующих сторон, фиксирует, какая из сторон является активной в каждый момент времени, обеспечивает синхронизацию и последовательность пакетов в сетевом диалоге. В виде отдельного протокола реализуется редко. Его функции часто объединяют с функциями прикладного уровня в едином протоколе. …..Примеры протокола – NetBIOS, NetBEUI |
4 | Транспортный (Transport Layer) | Делит длинные сообщения на пакеты данных и обеспечивает их правильную сборку, исключая смешивания и потерю пакетов, отвечает за передачу пакетов с заданным уровнем качества (пропускная способность, минимальная задержка, уровень достоверности). Примеры протоколов транспортного уровня – TCP и UDP стека TCP/IP, SPX стека Novell |
3 | Сетевой (Network Layer) | Отвечает за адресацию в составной сети, обеспечивает маршрутизацию данных по сети, объединяющей несколько подсетей, решает задачу согласования разных технологий. Примеры протоколов сетевого уровня – IPX стека Novell, IP стека TCP/IP |
2 | Канальный или уровень звена данных (Data Link Layer) | Определяет правила совместного использования физического уровня узлами сети (проверка доступности среды передачи); обеспечивает формирование фреймов (кадров) и их безошибочное прохождение по сети, используя методы обнаружения и коррекции ошибок в кадрах, контрольную сумму, скрывает от вышестоящих уровней подробности технической реализации сети. В стандарте IEEE 802 делится на подуровни MAC и LLC. Примеры протоколов канального уровня – Ethernet, Token Ring, FDDI. |
1 | Физический (Physical Layer) | Выполняет физическое кодирование бит данных в электрические сигналы и передачу их по линиям связи, определяет тип кабеля и разъемов, параметры и формат физических сигналов. Примеры протоколов физического уровня – спецификация 10BASE-T, EIA/TIA-232-D (ревизия и расширение RS-232C) |
Рассмотрим, как осуществляется взаимодействие между одинаковыми уровнями между двумя узлами сети. Пусть приложение обращается с запросом к прикладному уровню, например, к файловой службе. На основании этого запроса программное обеспечение прикладного уровня формирует собственное сообщение стандартного формата. Обычно сообщение состоит из заголовка и поля данных. Заголовок содержит служебную информацию, которую необходимо передать через сеть прикладному уровню машины-адресата, чтобы сообщить ему, какую работу должна выполнить принимающая программа с полученными данными. В нашем случае заголовок, очевидно, будет содержать информацию о местонахождении файла и о типе операции, которую нужно над ним выполнить. Поле данных сообщения может быть пустым или содержит какие-либо данные, например, те, которые нужно записать в удаленный файл.
После формирования сообщения прикладной уровень направляет его вниз по стеку представительскому уровню. Протокол представительского уровня на основании информации, полученной из заголовка прикладного уровня, выполняет необходимые действия и добавляет к сообщению собственный заголовок, в котором содержится указания для протокола представительского уровня машины-адресата.
Полученное результирующее сообщение передается вниз по стеку протоколов сеансовому уровню, который в свою очередь добавляет в него свой заголовок и т.д. Некоторые реализации протоколов помещают служебную информацию не только в начале сообщения в виде заголовков, но и в конце, в виде так называемого "концевика".
Наконец, сообщение достигает нижнего, физического уровня, который передает его по линиям связи машине-адресату. К этому моменту исходное сообщение обрастает вложенными заголовками и, возможно, концевиками всех уровней.
Когда сообщение поступает по сети на машину-адресат, оно принимается ее физическим уровнем. Затем каждый уровень машины-адресата, начиная с физического, анализирует и обрабатывает заголовок своего уровня, выполняет соответствующие данному уровню функции, затем удаляет из полученного сообщения заголовок своего уровня и передает его вышележащему уровню.
Наряду с термином сообщение (message) в стандартах OSI для обозначения единиц данных, с которыми имеют дело протоколы разных уровней, используется более общее название протокольный блок данных. Для обозначения протокольных блоков данных определенных уровней часто используются специальные названия: кадр (frame) на канальном уровне, пакет (packet) на сетевом, дейтаграмма (datagram), сегмент (segment) – на транспортном.
В модели OSI различают два основных типа протоколов. В протоколах с установлением соединения перед обменом данными отправитель и получатель должны установить соединение и, возможно, выбрать некоторые параметры протокола, которые они затем будут использовать при обмене данными. После завершения диалога они должны разорвать соединение. Протоколы с установлением соединения обеспечивают гарантированный сервис, подтверждающий доставку сообщения адресату. Протоколы без предварительного установления соединения, называемые также дейтаграммными, позволяют послать сообщение, когда оно готово, без подтверждения, т.е. предоставляют негарантированный сервис.
Три нижних уровня – физический, канальный и сетевой – являются сетезависимыми, т.е. протоколы этих уровней тесно связаны с технической реализацией сети и используемым коммуникационным оборудованием. Например, переход на оборудование FDDI означает полную смену протоколов физического а канального уровней во всех узлах сети.
Три верхних уровня – прикладной, представительский и сеансовый – ориентированы на приложения и мало зависят от технических особенностей построения сети. На протоколы этих уровней не влияют какие-либо изменения в топологии сети, замена оборудования или переход на другую сетевую технологию.
Транспортный уровень является пограничным и связующим между верхними уровнями и нижними уровнями, он скрывает от верхних уровней все детали функционирования нижних уровней. Относительно этой границы и определяются IS – промежуточные системы, использующие функции нижних уровней, и ES – конечные системы, работающие на верхних уровнях.
Модель OSI представляет хотя и важную, но только одну из возможных моделей коммуникаций. Эти другие модели и связанные с ними стеки протоколов могут отличаться количеством уровней, их функциями, форматами сообщений, службами, поддерживаемыми на верхних уровнях и т.д. Обычно ради повышения производительности количество уровней в реальной системе уменьшается до 3-4 с объединением функций смежных уровней (при этом уменьшаются накладные расходы на организацию межуровневых интерфейсов). Однако соотнесение реальных функциональных моделей с уровнями модели OSI помогает осмыслению особенностей взаимодействия разнородных систем. Отметим, что при разнообразии подходов к реализации верхних уровней стеков, стандартизация на физическом, канальном и сетевом уровнях соблюдается довольно строго.
Определив функции уровней модели OSI, можно уточнить рассмотренные выше основные понятия, используемые в компьютерных сетях:
· Узлы сети – конечные и промежуточные устройства, наделенные сетевыми адресами. К узлам сети относятся серверы и рабочие станции, сетевые периферийные устройства (принтеры, плоттеры, сканеры), телекоммуникационные устройства (модемные пулы, модемы коллективного использования), маршрутизаторы;
· Сегмент сети (логический сегмент) – совокупность узлов сети, использующих общую разделяемую среду передачи;
· Сеть (логическая) - совокупность узлов сети, имеющих единую систему адресации третьего уровня модели OSI, например, IP-сеть. Сеть может состоять из нескольких подсетей, каждая из которых имеет индивидуальный сетевой адрес;
· Облако – коммуникационная инфраструктура с однородными внешними интерфейсами, подробностями внутренней организации которой не интересуются. Примером облака является телефонная сеть; в любом ее месте можно подключить телефонный аппарат и связываться с абонентами;
· Повторитель – устройство физического уровня, позволяющее преодолевать топологические ограничения кабельных сегментов, связанные с ослаблением и искажением сигнала в кабеле;