OSI имеет две основные составляющие: абстрактную модель сетевого взаимодействия (семислойная модель) и набор функциональных протоколов. Часть семиуровневой модели OSI повлияла на продвижение интернет-протокола, как и сама абстрактная модель, задокументированная в OSI под номером 7498. В этой конструкции сетевая система поделена на уровни, внутри которых один или несколько объектов реализуют свою функциональность. Каждый объект контактирует только со слоем, расположенным под ним, и предоставляет средства для использования в нем. Протоколы позволяют взаимодействовать в хосте с конкретным объектом на том же уровне.
Введение в модель OSI
Производители компьютеров предлагали перспективные сетевые архитектуры, специфичные для своего оборудования. Например, IBM представила SNA, DEC - ДНК. Однако у этих архитектур были все те же недостатки. Из-за проприетарного характера их нельзя было объединить и избежать распространения межсетевых решений гетерогенных архитектур.
ISO-орган, состоящий из 140 национальных органов по стандартизации, разработал семиуровневую модель OSI, которая расшифровывается как "взаимосвязь сетевых систем". Она описывает используемые концепции и применяемый подход для стандартизации взаимосвязи между открытыми системами.
При разработке этой модели основное внимание было уделено гетерогенности оборудования, а также разрешению взаимосвязи с подобными системами по историческим и экономическим причинам. Модель не должна была отдавать предпочтение конкретному поставщику, при этом должна быть адаптирована к эволюции потоков информации, подлежащих обработке, без ущерба для предыдущих разработок. Рассмотрение неоднородности требовало принятия общих правил коммуникации между оборудованием, то есть эта разработка должна была логически привести к международной стандартизации протоколов.
Семиуровневая модель OSI не является сетевой архитектурой, поскольку не указывает конкретные уровневые службы и протоколы, а только описывает работоспособность слоев.
Первая работа над моделью OSI началась в 1977 году. Она основывалась на опыте работы с крупными сетями. Модель стала действующей для всех типов сетей. В 1978 году ISO предлагает ее как ISO IS7498. В 1984 г. 12 европейских производителей, присоединившихся к крупным американским производителям, приняли этот стандарт.
7-слойная системная конструкция
Модель выполнена из 7 слоев. Каждый из них определен узконаправленной задачей по организации связи между двумя системами. Каждый уровень наделен функциями и протоколами, выполняющими конкретные цели. При обмене данными связь проходит через все 7 слоев OSI дважды: первый раз - на передатчике, второй - на приемнике.
Журналы представляют собой набор правил на определенном уровне семиуровневой модели OSI. Протоколы в значительной степени прозрачны для сверхвысоких и подчиненных слоев, так что их поведение находится в прямой связи с журналами. Переходы между уровнями – это интерфейсы, которые понимаются протоколами. Поскольку некоторые протоколы предназначены только для конкретных приложений, то они охватывают несколько уровней и несколько задач. Бывает, что в некоторых соединениях отдельные задачи выполняются в несколько смен и, следовательно, несколько раз.
Принципы создания слоев
Принципы, которые используют при создании уровней модели OSI:
- Слой обязан быть создан, когда системе требуется новый уровень.
- Слой имеет индивидуальные функции, соответствующих Европейскому международному стандарту.
- При выборе границ слоя поток информации, поступающей на интерфейсы, должен быть минимизирован.
- Количество уровней модели OSI должно препятствовать возникновению разных функций внутри одного и того же слоя.
- Проста и надежность. Архитектура не должна быть сложной для управления.
Учитывая эти принципы, сообщество приняло установки о том, что нижние слои (1, 2, 3 и 4) необходимы для маршрутизации информации между соответствующими концами и зависят от физической среды. Верхние уровни (5, 6 и 7) отвечают за обработку информации, относящейся к управлению обменами между компьютерными системами. Кроме того, слои 1-3 взаимодействуют между соседними машинами, а не между конечными, которые могут быть разделены несколькими маршрутизаторами. И напротив, слои с 4-го по 7-й взаимодействуют только между удаленными хостами.
Виды уровней и их назначения
Первый физический уровень 7-уровневой модели OSI связан с передачей бит необработанным способом по каналу связи и гарантирует идеальный транзит данных. Отправленный бит, равный 1, должен быть принят как бит, равный 1. В конкретном плане этот слой стандартизирует электрические характеристики, например, бит, равный 1, должен быть представлен напряжением 5 В.
Механическая стандартизация связана характеристиками: это форма разъемов, топология и т. д. А функциональная - с характеристиками цепей передачи данных и процедур установления, поддержания и освобождения схемы данных. Типичной информационной единицей этого слоя является бит, представляемый определенной разностью потенциалов.
Уровень канала передачи данных 7-уровневой модели OSI для «связующего» преобразует физический уровень в ссылку, которая априори не имеет ошибок передачи. Слой разбивает входные данные передатчика на фреймы, передает их и управляет кадрами подтверждения, возвращаемыми приемником.
Для этого уровня данные не имеют особого значения, а уровень канала передачи данных способен распознавать границы кадров. Это может вызвать некоторые проблемы, так как бит-последовательности, используемые для этого распознавания, могут отображаться в данных.
Уровень канала передачи данных должен иметь возможность возвращать кадр, если на линии возникла проблема. В общем, важной ролью этого слоя является выявление и исправление ошибок, возникающих на физическом уровне. Он также включает функцию управления предотвращением засорения приемника.
Информационным блоком 7-уровневой модели OSI является кадр, который включает от нескольких сотен до тысяч байтов. Сетевой уровень управляет подсетью. Во время его разработки необходимо определить механизм маршрутизации и расчет таблиц маршрутизации, статических или динамических. Сетевой уровень также управляет перегрузкой подсети. Его информационным блоком является пакет.
Транспортный уровень отвечает за правильную маршрутизацию полных сообщений получателю. Он принимает сообщения из сеансового слоя, если нужно, сокращает их на более мелкие и передает на сетевой уровень с гарантией качества. Этот слой также выполняет повторную сборку сообщения, когда блоки получены. Он ответственен за оптимизацию сетевых ресурсов, создает сетевое соединение по требованию сеанса и способен обеспечивать множество сетевых подключений для процесса. И наоборот, он использует одно соединение для переноса нескольких сообщений одновременно через мультиплексирование. Данный уровень ответственен за установление и освобождение соединений. Поэтому он - один из самых важных, поскольку предоставляет основную услугу в сети, а также управляет всеми процессами соединения со всеми ограничениями, являясь информационным устройством.
Сессионный уровень организует и синхронизирует обмены между удаленными задачами. Он реализует связь между логическими и физическими адресами распределенных задач, а также устанавливает связь между прикладными программами, которые должны сотрудничать и командовать диалогом. В последнем случае эта служба называется управлением токеном.
Уровень представления отвечает за синтаксис и семантику данных и обрабатывает информацию, чтобы сделать ее совместимой между передаваемыми потоками. Это обеспечит независимость пользователя от транспортировки информации. Как правило, этот слой преобразовывает данные, переформатирует, шифрует и сжимает их.
Уровень приложения является точкой контакта пользователя и сети. Именно поэтому он будет предоставлять пользователю основные услуги, предлагаемые сетью: передачу файлов и обмен сообщениями.
Межуровневая передача данных
Семиуровневая модель OSI для "чайников" представляет собой инструкцию по организации передачи данных. Процесс отправителя доставляет данные, которые перемещаются в процесс приемника на уровне приложения с одним заголовком AH. Затем результат передается на уровень, который преобразует это сообщение, и добавляет новый заголовок. Уровень презентации не знает и не должен знать о возможном существовании AH. Для уровня представления AH фактически является частью пользовательских данных. По завершению обработки слой представления отправляет новое «сообщение» на уровень сеанса, и тот же процесс начинается снова.
Затем данные достигают физического уровня, который фактически передает их получателю. На приеме сообщение будет подниматься по уровням, а заголовки постепенно удаляются до достижения процесса приема. Важная концепция семиуровневой модели OSI для "чайников" заключается в следующем:
- Каждый слой запрограммирован так, как если бы он был действительно горизонтальным.
- При взаимодействии каждый слой добавляет заголовок и отправляет его благодаря нижележащему слою.
Инструкция для "чайников"
Даже после прочтения описания каждого из семи уровней пользователь все еще может быть не до конца осведомлен относительно того, какие функции модели OSI применяются в реальной сети. Обычно он неправильно понимает, как модель может использоваться для решения реальных проблем (а в некоторых случаях она может быть и не лучшим подходом для этого). Однако во многих аспектах информационно-коммуникационной технологии (ИКТ) модель может быть чрезвычайно полезна, что напрямую относится к модели OSI.
Когда начинающий пользователь впервые обнаруживает проблему с сетью, это может ввести в заблуждение, и он не знает, с чего должен начать. Модель OSI для чайников помогает приступить к выяснению источника проблемы и, следовательно, способствует ее решению. Например, компьютеру клиента не удается связаться с веб-сайтом. Проблема изолирована от одного устройства в сети, поэтому можно предположить, что она, вероятно, создается на уровне приложения.
Однако после тестирования обнаруживается, что проблема все еще существует, когда используется другой веб-браузер, поэтому прикладной уровень ошибки исключается. Пользователь предполагает, что проблема находится на уровне презентации, и начинает искать неправильные настройки. После некоторого анализа он обнаруживает, что клиент ошибочно ввел настройки DNS.
Возможно, человек уже использует модель OSI для простого решения проблем, таких как приведенный выше пример, даже не осознавая этого. Однако при работе с крупными корпоративными сетями целенаправленное использование модели делает этот процесс намного проще и приятнее.
Описание настройки соединения
Функции отдельных слоев предоставляют родительскому слою определенную услугу. Задачи отдельных слоев определяются в модели уровней OSI. Представленная и описанная здесь, она значительно упрощена и адаптирована к сетевым технологиям. Эта модель слоя не является полной или окончательной. С точки зрения пользователя ниже объясняется упрощенный вид OSI.
Уровни приложений 5, 6 и 7 определяют все протоколы, к которым напрямую обращаются программы.
В мире сети Windows SMB использует NetBIOS для подключения к уровню передачи. Когда Unix входит в контакт с Windows, служба применяется для предоставления им ресурсов в сети Windows в Unix. Связь между уровнями 7 моделей OSI приложения и передачи устанавливается через порты TCP. Приложения и службы идентифицируют свои данные через эти порты. Поток данных упаковывается посредством TCP-протокола, ориентированного на соединение, или протокола UDP без установления соединения.
Интернет-протокол (IP) обрабатывает адресацию пакетов. Битовый поток отправляется в NDIS, который контактирует с драйвером сетевой карты. Драйвер отправляет данные на сетевую карту (NIC), оттуда они поступают в сеть.
Для входящих данных они возвращаются обратным образом:
- NetBIOS - сетевая базовая система ввода/вывода.
- TCP - протокол сетевого управления.
- UDP - протокол пользовательских дейтаграмм.
- IPv4 - протокол Интернета версии 4URL-адрес (универсальный локатор ресурсов) в Windows, имя NetBIOS для компьютера. Применяется для идентификации компьютера и служб, которые выполняются на нем.
- Чтобы разрешить URL-адрес IP-адреса, используют файл hosts, в котором перечислены все URL- и IP-адреса. Поскольку существует много URL-адресов, была введена DNS (система доменных имен), которая является иерархической. Так называемые DNS-серверы могут запрашивать неизвестные имена DNS с более высокого уровня DNS-сервера.
- В сети Windows файл lmhosts или WINS (сервер) используется для разрешения имен NetBIOS на IP-адреса. Если IP-адрес уровня передачи разрешен, тогда ARP (протокол разрешения адресов) используется для разрешения IP-адреса на MAC-адрес (Media Access Control) NIC (физического уровня).
- MAC-адрес является единственным окончательным адресом, который можно использовать для надежной идентификации компьютера в сети. Он фиксируется на сетевой карте,
Где:
- URL - единый указатель ресурсов.
- DNS - система доменных имен.
- WINS - служба имен доменов Windows.
- ARP - протокол разрешения адресов.
- MAC - адрес.
Критика сетевой структуры
Самое поразительное в модели OSI - это то, что она - самая изученная и всемирно признанная сетевая структура, и тем не менее в полном сетевом смысле она не является моделью. Специалисты, которые проанализировали этот провал, определили основные причины сбоя:
- Модель взаимодействия OSI идеально позиционировалась в отношении исследований, но TCP/IP уже находилась в ярко выраженной инвестиционной фазе, когда модель OSI была выпущена. Университеты США уже с успехом использовали TCP/IP, и промышленники не чувствовали необходимости инвестировать в нее.
- Сложная технология. OSI на самом деле слишком сложна для правильной и эффективной реализации. Комитету, разрабатывающему стандарт, даже пришлось оставить в стороне определенные технические моменты, такие как безопасность и кодирование, поскольку было сложно поддерживать определенную роль для каждого завершенного слоя. Управление потоком и ошибками появляется почти на каждом уровне, что усложняет использование 7-уровневой модели OSI для чайников. На уровне реализации TCP/IP гораздо более оптимизирована и эффективна.
- Самая жесткая критика, которая звучит в адрес модели, заключается в том, что она совсем не подходит для компьютерных телекоммуникационных приложений. Некоторые сделанные выборы не согласуются с тем, как общаются компьютеры с программным обеспечением. Стандарт фактически сделал выбор «системы прерываний» для сигнализации событий, а на языках программирования высокого уровня это невозможно.
- Неправильная реализация семиуровневой модели OSI. Кратко причины можно объяснить так: это происходит потому, что она относительно сложна, и в результате первые реализации были относительно громоздкими и медленными. Напротив, пилотная реализация TCP/IP в Университете Беркли Unix (BSD) была бесплатной и относительно эффективной. Исторически сложилось так, что появилась естественная тенденция использовать TCP/IP.
- Модель OSI фактически страдает от слишком большой стандартизации. Усилия по внедрению модели были в основном бюрократическими. И наоборот, TCP/IP поступает из Unix и сразу же используется. Отсутствие стандартизации TCP/IP уравновешивается быстрой и эффективной реализацией и использованием в среде, способствующей ее распространению.
- Базовая справочная модель OSI получила гораздо большее признание, чем сами протоколы OSI. На это есть несколько причин. Процессный процесс, основанный на комитете OSI, породил невообразимые неэффективные протоколы.
- Самая большая проблема OSI - в том, что на самом деле ничего нового она не предлагает. Самым сильным примером для реализации является ее статус «международного стандарта», но у людей уже есть де-факто международный стандарт – это Интернет, вокруг которого существуют протоколы OSI.
Преимущества многослойной платформы
Самым значительным вкладом OSI является философия сетей, представленная многоуровневой моделью. Она чаще всего рассматривается как модель, которая объясняет сетевые возможности. Уровни модели OSI определяют в веб-разработке, иногда ее называют «стеком». Когда разработчик использует стек терминов, он ссылается на операционную систему, в которой работает приложение, программное обеспечение базы данных и программное обеспечение для внутреннего использования. Обычным применением стека слов является LAMP.
Главные преимущества модели:
- Создает общую платформу для разработчиков программного обеспечения и аппаратных средств, которые поощряют выпуск сетевых продуктов, способных общаться друг с другом по сети. Это помогает сетевым администраторам разделять большой процесс обмена данными на более мелкие сегменты.
- Благодаря независимости слоев предотвращается перенос изменения одного слоя на другие.
- Стандартизация сетевых компонентов позволяет развивать несколько поставщиков.
- Очень хорошо структурирует функции, характерные для каждого слоя, что уменьшает сложность, ускоряет эволюцию и упрощает обучение.
- Использование OSI для устранения неполадок в сети очень полезно.
Практическое применение
Модель уровня OSI очень часто используется в качестве ссылки, когда речь идет о представлении процессов передачи сообщений. Но на самом деле модель уровня DoD (TCP/IP) намного ближе к реальности.
Проблема модели уровня OSI - это стандартизация организации ISO, которая была просто слишком громоздкой, чтобы быстро установить структуру для задач протоколов и систем передачи в сетевых технологиях. TCP/IP был в свободном доступе, работал и быстро распространялся с другими протоколами уровней модели OSI. Поэтому у ИСО не было выбора. Небходимо было рассмотреть TCP/IP в модели уровня OSI.
В дополнение к TCP/IP разработаны другие сетевые протоколы. Однако в конечном итоге они были заменены именно им. Почти все сети сегодня работают на основе TCP/IP.
Будущее стандартизации сетевого мира
Несмотря на обновление в 1994 году, семиуровневая модель взаимодействия открытых систем OSI явно проиграла войну против TCP/IP. Только некоторые крупные доминирующие производители сохраняют модель, но многие специалисты считают, что она будет исчезать все быстрее, поскольку Интернет взрывает TCP/IP. И, тем не менее, модель OSI останется в использовании, поскольку это одно из первых крупных усилий по стандартизации сетевого мира.
OSI также будет существовать по другой причине: даже если TCP/IP используется на практике, то OSI применяют в качестве текущей модели эталонной сети. Фактически, TCP/IP и OSI имеют очень похожие структуры, и в основном это стандартизация OSI, которая обусловила путаницу между двумя моделями. TCP/IP обычно рассматривается как фактическая реализация OS.
Если пользователь осваивает новую специальность, чтобы стать сетевым инженером, или просто заинтересован в концепциях высокого уровня, модель OSI - отличная модель для изучения. Независимо от того, в какой субобласти ИТ он планирует работать, система поможет решить ему даже самые сложные задачи.