Лекция2.8МДК02.01БТС. Ключевые герои в истории osi
Скачать 0.59 Mb.
|
2.8 Модель OSI Ключевые герои в истории OSIНачнем с главных героев этой истории. Honeywell Information System – американская корпорация, производящая электронные системы управления и автоматизации. Именно здесь была собрана группа ученых, работающая над созданием семиуровневой модели. Майк Канепа (Mike Canepa) Майк Канепа (Mike Canepa) и Чарльз Бакман (Charles Bachman) – ученые и главы группы разработки модели OSI в компании Honeywell Information System. К сожалению, о Майке Канепа известно мало, но он часто упоминается в этой истории. А вот Чарльз Бакман является известным специалистом, интервью которого позволяют понять, что происходило в период разработки OSI. Он был пионером в области управления компьютерными системами и разработки баз данных. В группе создания OSI Чарльз также являлся главным техническим специалистом. Юбер Циммерманн (Hubert Zimmerman) – французский инженер-программист, специалист по компьютерным сетям и один из председателей группы ISO. Был одной из ключевых фигур, продвигающей идею эталонной модели OSI. Следующая и важнейшая компания в этой истории – это Международная организация по стандартизации (ISO). Независимая неправительственная организация, которая занимается разработкой международных стандартов. Здесь также стоит упомянуть американское объединение ANSI, поддерживающее деятельность ISO. История разработки модели OSIИстория разработки OSI началась с небольшой группы ученых, во главе которой стояли Майк Канепа и Чарльз Бакман. В начале и середине 1970-х годов основное внимание группы было сосредоточено на проектировании и разработке прототипов систем для компании Honeywell Information System. А в середине 1970-х группа поняла, что для поддержки машин с базами данных распределенного доступа и их взаимодействия необходима более структурированная коммуникационная архитектура. Honeywell Information System Ученые стали изучать некоторые из существующих тогда решений, в том числе и многоуровневую сетевую архитектуру IBM (SNA). Уже тогда они поняли, что будут конкурировать с ней, так как модель оказалась схожа с той, что разрабатывали в Honeywell. SNA (Systems Network Architecture) была создана IBM для определения общих соглашений связи и передачи данных между аппаратными и программными продуктами IBM. Она представляла собой иерархический подход к системам и имела архитектуру терминал-компьютер. В одном из своих интервью Чарльз Бакман отмечает, что у SNA были фундаментальные проблемы, связанные с ее иерархической системой, поэтому группа работала над собственной моделью. Возвращаемся к истории. Результатом исследований и работы над проектированием собственного решения стала разработка в 1977 году многоуровневой архитектуры, известной как архитектура распределенных систем HDSA (Honeywell Distributed System Architecture). Этот проект создавался, чтобы предоставить виды протоколов «процессор-процессор» и «процессор-терминал», необходимые для взаимодействия произвольного количества машин и произвольного количества людей. Это должно было стать основой для создания системных приложений (Чарльз Бакман, интервью Джеймса Л.Пелки). Создание комитета OSIВ 1977 году Британский институт стандартов предложил Международной организации по стандартизации (ISO) создать стандарты для открытого взаимодействия между устройствами. Новые стандарты должны были предложить альтернативу закрытым системам традиционных компьютеров, разработанных без возможности взаимодействия друг с другом. В результате ISO сформировала комитет по взаимосвязи открытых систем (OSI). А американскому национальному институту стандартов (ANSI), входящему в ISO, было поручено разработать предложения для первого заседания комитета. Бакман принял участие во встречах ANSI и представил многоуровневую модель. Она была выбрана как единственное предложение, которое представили комитету ISO SC-16. Вашингтон, округ Колумбия, март 1978 годаС 28 февраля по 2 марта 1978 года в Вашингтоне проходило собрание ISO, где команда Honeywell презентовала свое решение ISO. На встрече собралось множество делегатов из десяти стран и наблюдатели из 4 международных организаций. На этом совещании было достигнуто соглашение, что многоуровневая архитектура HDSA удовлетворяет большинству требований и что ее можно будет расширить позже. Для дальнейшей работы над усовершенствованием модели было решено собрать рабочие группы. Их главной целью было составление общего международного архитектурного положения. Модель, которую представили на собрании, состояла из шести слоев, куда изначально не входил нижний, физический уровень. И здесь вступает в игру Юбер Циммерманн, председатель OSI и глава архитектурной группы, который и предложил включить в модель физический уровень. Необходимо было узнать, как подавать импульсы на провода. Чарльз Бакман отмечает, что Юбер был одним из самых важных людей в этом комитете, с точки зрения его вклада в работу. Юбер Циммерман. Принятие модели как стандартаУченые проводили собрания каждые шесть месяцев и укладывались в очень жесткие графики. В интервью Бакман вспоминает, что все ночи, в которые проходили встречи и велись работы, были долгими и поздними, группы стремились достичь главной цели и создать международное предложение по стандартизации. Следующая встреча была в Париже. Перед ней группа ученых в 2 или 3 часа ночи обновляла и копировала текст документа (вспоминаются студенты перед сессией). Забавный факт: 6 или 7 человек группы Бакмана поместились, а точнее навалились друг на друга, в маленькую французскую машину Юбера Citroën 2CV (Deux Chevaux), чтобы успеть на собрание. Цель, которая двигала Бакмана и его коллег вперед – это возможность использовать модель на практике, познакомить всех с понятием многоуровневой архитектуры. Бакман отмечает, что каждая встреча была важна, на всех из них добивались прогресса. Однако на каждом собрании всегда присутствовали новые люди, поэтому часть времени тратилась на то, чтобы вовлечь их в процесс. Начиная с 1977 года, ISO провела программу по разработке общих стандартов и методов создания сетей, но аналогичный процесс появился в некоммерческой организации по стандартизации информационных и коммуникационных систем (ECMA) и Международном консультативном комитете по телеграфу и телефону (CCITT). Делегаты от этих групп присутствовали на собраниях ISO, и все они работали над одной целью. Позже CCITT приняла документы, которые почти идентичны документам ISO, и группа стала сотрудничать с ISO. В 1983 году документы CCITT и ISO были объединены, чтобы сформировать Базовую эталонную модель взаимодействия открытых систем или просто модель OSI. Общий документ был опубликован в 1984 году как стандарт ISO 7498. Теперь немного подробнее о самой модели OSI и ее принципах. Модель Open Systems Interconnection (OSI) – это скелет, фундамент и база всех сетевых сущностей. Модель определяет сетевые протоколы, распределяя их на 7 логических уровней. Для решения задачи совместимости разнообразных систем, организация по стандартизации выпустила в 1983 г. эталон модели OSI. Она описывает структуру открытых систем, их требования, и их взаимодействие. Важно отметить, что в любом процессе, управление сетевой передачей переходит от уровня к уровню, последовательно подключая протоколы на каждом из уровней. Нижние ступени системы с первой по третью, управляют физической доставкой данных по сети, их называют media layers. Более высокие уровни охватывают запросы, связанные с представлением данных. Остальные, уровни способствуют обеспечению точной доставки данных между компьютерами в сети, их называют хост-машины. Условно говоря, более высокие уровни отвечают за сетевые данные с точки зрения пользователя. Прикладной – это ближайший уровень к юзеру. Его отличие от других в том, что он не предоставляет услуги другим ступеням. Обеспечивает услугами прикладные процессы, которые лежат за пределами масштаба модели, например, передача базы данных, голоса, и другое. Модель OSI была изначально придумана как стандартный подход, архитектура или паттерн, который бы описывал сетевое взаимодействие любого сетевого приложения. #01: ФИЗИЧЕСКИЙ (PHYSICAL) УРОВЕНЬНа первом уровне модели OSI происходит передача физических сигналов (токов, света, радио) от источника к получателю. На этом уровне мы оперируем кабелями, контактами в разъемах, кодированием единиц и нулей, модуляцией и так далее. Среди технологий, которые живут на первом уровне, можно выделить самый основной стандарт - Ethernet. Он есть сейчас в каждом доме. Отметим, что в качестве носителя данных могут выступать не только электрические токи. Радиочастоты, световые или инфракрасные волны используются также повсеместно в современных сетях. Сетевые устройства, которые относят к первому уровню это концентраторы и репитеры – то есть «глупые» железки, которые могут просто работать с физическим сигналом, не вникая в его логику (не декодируя). В качестве канала передачи информации используются: Кабели: телефонный, коаксиал, витая пара, оптический. Беспроводные технологии, такие как, радиоволны, инфракрасное излучение. Спутниковые КС Беспроводная оптика или лазеры, применяются редко, из-за низкой скорости и большого количества помех. #02: КАНАЛЬНЫЙ (DATA LINK) УРОВЕНЬПредставьте, мы получили физический сигнал с первого уровня – физического. Это набор напряжений разной амплитуды, волн или радиочастот. При получении, на втором уровне проверяются и исправляются ошибки передачи. На втором уровне мы оперируем понятием «фрейм», или как еще говорят «кадр». Тут появляются первые идентификаторы – MAC – адреса. Они состоят из 48 бит и выглядят примерно так: 00:16:52:00:1f:03. Канальный уровень сложный. Поэтому, его условно говоря делят на два подуровня: управление логическим каналом (LLC, Logical Link Control) и управление доступом к среде (MAC, Media Access Control). На этом уровне обитают такие устройства как коммутаторы и мосты. Кстати! Стандарт Ethernet тоже тут. Он уютно расположился на первом и втором (1 и 2) уровнях модели OSI. Цель канального уровня – передача сообщений по КС – кадров. Задачи data linkНайти, где в потоке бит, начинается и оканчивается сообщение Обнаружить и скорректировать ошибки при отправке информации Адресация, необходимо знать, какому компьютеру отправлять информацию, потому что к разделяемой среде в основном, подключается несколько компьютеров Обеспечить согласованный доступ к разделяемой среде, чтобы в одно и то же время, информацию передавал один компьютер. На канальном уровне выявляются и исправляются ошибки. При обнаружении таковой проводится проверка правильности доставки данных, если неправильно, то кадр отбрасывается. Исправление ошибок, требует применение специальных кодов, которые добавляют избыточную информацию в передаваемые данные. Повторная отправка данных, применяется совместно с методом обнаружения ошибок. Если в кадре обнаружена ошибка, он отбрасывается, и отправитель направляет этот кадр заново. Некоторые протоколы, используемые на канальном уровне, это HDLC, Ethernet применяющая шинную топологию и другие. #03: СЕТЕВОЙ (NETWORK) УРОВЕНЬИдем вверх! Сетевой уровень вводит термин «маршрутизация» и, соответственно, IP – адрес. Кстати, для преобразования IP – адресов в MAC – адреса и обратно используется протокол ARP. Именно на этом уровне происходит маршрутизация трафика, как таковая. Если мы хотим попасть на сайт wiki.merionet.ru, то мы отправляем DNS – запрос, получаем ответ в виде IP – адреса и подставляем его в пакет. Да – да, если на втором уровне мы используем термин фрейм/кадр, как мы говорили ранее, то здесь мы используем пакет. Из устройств здесь живет его величество маршрутизатор :) Основная задача состоит в создании составных сетей построенных на основе сетевых технологий разного канального уровня: Ethernet, Wi-Fi, MPLS. Сетевой уровень — это «основа» интернета. Процесс, когда данные передаются с верхних уровней на нижние, называется инкапсуляцией данных, а когда наоборот, наверх, с первого, физического к седьмому, то этот процесс называется декапсуляцией данных. Задачи сетевого уровня:Объединить сети, построенные разными технологиями; Обеспечить качественное обслуживание; Маршрутизация, поиск пути от отправителя информации к получателю, через промежуточные узлы сети. Протоколы, применяемые на этом этапе: интернет протокол IP; IPX, необходимый для маршрутизации пакетов в сетях и др. #04: ТРАНСПОРТНЫЙ (TRANSPORT) УРОВЕНЬТранспортный уровень, как можно понять из названия, обеспечивает передачу данных по сети. Здесь две основных рок – звезды – TCP и UDP. Разница в том, что различный транспорт применяется для разной категории трафика. Задачи транспортного уровняОтправка данных между процессами на разных хостах. Обеспечение адресации, нужно знать для какого процесса предназначен тот или другой пакет. Обеспечение надежности передачи информации. Принцип такой: Трафик чувствителен к потерям - нет проблем, TCP (Transmission Control Protocol)! Он обеспечивает контроль за передачей данных; Немного потеряем – не страшно - по факту, сейчас, когда вы читаете эту статью, пару пакетов могло и потеряться. Но это не чувствуется для вас, как для пользователя. UDP (User Datagram Protocol) вам подойдет. А если бы это была телефония? Потеря пакетов там критична, так как голос в реальном времени начнет попросту «квакать»; Модель взаимодействия open systemХосты — это устройства где функционируют полезные пользовательские программы и сетевое оборудование, например, коммутаторы, маршрутизаторы. Особенностью транспортного уровня является прямое взаимодействие одного компьютера с транспортным уровнем на другом компьютере, на остальных уровнях взаимодействие идет по звеньям цепи. Такой уровень обеспечивает сквозное соединение между двумя взаимодействующими хостами. Данный уровень независим от сети, он позволяет скрыть от разработчиков приложений детали сетевого взаимодействия. Для адресации на транспортном уровне используются порты, это числа от 1 до 65 535. Порты записываются вот так: 192.168.1.3:80 (IP адрес и порт). #05: СЕАНСОВЫЙ (SESSION) УРОВЕНЬСеансовый уровень занимается тем, что управляет соединениями, или попросту говоря, сессиями. Он их разрывает. Сеансовый (сессия) – это набор сетевых взаимодействий, целенаправленных на решение единственной задачи. Сейчас сетевое взаимодействие усложнилось и не состоит из простых вопросов и ответов, как было раньше. Например, Вы загружаете веб страничку, чтобы показать в браузере, сначала нужно загрузить сам текст веб страницы (.html), стилевой файл (.css), который описывает элементы оформления веб страницы, загрузка изображений. Таким образом, чтобы выполнить задачу, загрузить веб страницу, необходимо реализовать несколько, отдельных сетевых операций. Сеансовый определяет, какая будет передача информации между 2-мя прикладными процессами: полудуплексной (по очередная передача и прием данных); или дуплексной (одновременная передача и прием информации). #06 УРОВЕНЬ ПРЕДСТАВЛЕНИЯ (PRESENTATION)На шестом уровне творится преобразование форматов сообщений, такое как кодирование или сжатие. Тут живут JPEG и GIF, например. Так же уровень ответственен за передачу потока на четвертый (транспортный уровень). Функции – представить данные, передаваемых между прикладными процессами, в необходимой форме. Для описания этого уровня, используют автоматический перевод в сети с различных языков. Например, Вы набираете номер телефона, говорите на русском, сеть автоматом переводит на французский язык, передает информацию в Испанию, там человек поднимает трубку и слышит Ваш вопрос на испанском языке. Это задача, пока не реализована. Для защиты отправляемых данных по сети используется шифрование: secure sockets layer, а также transport layer security, эти технологии позволяют шифровать данные которые отправляются по сети. Протоколы прикладного уровня используют TSL/SSL и их можно отличить по букве s в конце. Например, https, ftps и другие. Если в браузере Вы видите, что используется протокол https и замок, это значит, что производится защита данных по сети при помощи шифрования. #07 УРОВЕНЬ ПРИЛОЖЕНИЯ (APPLICATION)На седьмом этаже, на самой верхушке айсберга, обитает уровень приложений! Тут находятся сетевые службы, которые позволяют нам, как конечным пользователям, серфить просторы интернета. Гляньте, по какому протоколу у вас открыта наша база знаний? Правильно, HTTPS. Еще тут живут простой HTTP, FTP и SMTP. Необходим для взаимодействия между собой сетевых приложений, таких как web, e-mail, skype и тд. По сути, представляет собой комплект спецификаций, позволяющих пользователю осуществлять вход на страницы для поиска нужной ему информации. Проще говоря, задачей application является обеспечение доступа к сетевым службам. Содержимое этого уровня очень разнообразно. Функции application:Решение задач, отправка файлов; управление заданиями и системой; Определение пользователей по их логину, e-mail адресу, паролям, электронным подписям; Запросы на соединение с иными прикладными процессами;
|