Лекции. 1. информационные сети. Основные понятия становление информационных сетей
Скачать 1.52 Mb.
|
Интероперабельность. Поддерживается принципом по- сылки сообщения с использованием понятий полиморфизма и ди- намического связывания. В сообщении объекту (возможно уда- ленному) передается имя действия, которое должно быть им вы- полнено, и некоторые дополнительные аргументы сообщения. Как это действие выполнять, знает и решает только сам объект- получатель сообщения. От него только требуется выдать в ответ результат. Очевидно, что разные объекты будут по-разному реа- гировать на одинаковые сообщения (полиморфизм). Кроме того, удобно выбирать способ реализации в последний момент, при от- вете на сообщение, в зависимости от текущего состояния систе- мы (динамическое связывание). Для того, чтобы разные системы могли обмениваться сообщениями, необходима либо единая трактовка всех типов данных, в том числе абстрактных, либо ин- дивидуальная процедура преобразования сообщения для каждой пары неодинаковых взаимодействующих систем. Дружественность к пользователю (drivability, англ.). Удобство взаимодействия пользователя с системой требует наличия у неё всех вышеперечисленных свойств. Мобильность необходима ввиду быстрой смены старых и появления новых устройств, например, широкого использования средств мульти- медиа. Расширяемость требуется для разработки программной 19 Инкапсуляция ( encapsulation , англ.) – сокрытие внутренней структуры данных и методов реализации объекта от остальной части си- стемы. Другим объектам доступен только интерфейс объекта, через кото- рый осуществляется все взаимодействие с ним. 38 поддержки новых парадигм общения пользователя с системой. Интероперабельность просто рассматривает пользователя как другую систему, с которой открытая система должна уметь взаимодей- ствовать. Эти свойства, взятые по отдельности, были присущи и преды- дущим поколениям информационных систем. Новый взгляд на от- крытые системы определяется тем, что эти черты рассматриваются в совокупности, как взаимосвязанные и реализуемые в комплексе. 4.2. Преимущества идеологии открытых систем Концепция открытых систем получила признание и широ- кое распространение в первую очередь потому, что она обеспе- чивает существенные преимущества, как для специалистов, так и для пользователей бурно развивающейся IT-сферы. Для пользователей открытые системы обеспечивают: новые возможности сохранения сделанных вложений бла- годаря свойствам эволюции, постепенного развития функций си- стем, замены отдельных компонентов без перестройки всей системы; независимость от одного поставщика аппаратных или программных средств, возможность выбора продуктов из пред- ложенных на рынке при условии соблюдения поставщиком соот- ветствующих стандартов открытых систем; дружественность среды, в которой работает пользователь, мобильность персонала в процессе эволюции системы; возможность использования информационных ресурсов, имеющихся в других системах (организациях). Проектировщик информационных систем получает: возможность использования разных аппаратных платформ; возможность совместного использования прикладных программ, реализованных в разных ОС; развитые средства инструментальных сред, поддержива- ющих проектирование; возможности использования готовых программных про- дуктов и информационных ресурсов. Разработчики системных программных средств имеют: 39 новые возможности разделения труда, благодаря повтор- ному использованию программ (reusability, англ.); развитые инструментальные среды и системы программи- рования; возможности модульной организации программных ком- плексов благодаря стандартизации программных интерфейсов. Это последнее свойство открытых систем позволяет пере- смотреть традиционно сложившееся дублирование функций в разных программных продуктах, из-за чего системы, интегриру- ющие эти продукты, непомерно разрастаются по объему, теряют эффективность. Идеология и стандарты открытых систем позволяют по- новому взглянуть на распределение функций между программ- ными компонентами систем и значительно повысить тем самым их эффективность. Частично этот подход обеспечивает компен- сацию затрат ресурсов, которые приходится платить за преиму- щества открытых систем относительно закрытых систем, ресурсы которых в точности соответствуют задаче, решаемой системой. Значение идеологии открытых систем заключается в том, что она открывает методологические пути к унификации интер- фейсов в пределах родственных по функциям групп компонентов для отдельного класса систем определенного назначения или все- го множества открытых систем. Область распространения стан- дартов сферы сетевого взаимодействия является предметом со- гласования интересов разных групп участников сетевого инфор- мационного обмена – пользователей, разработчиков систем, по- ставщиков оборудования и программных продуктов. 4.3. Эталонная модель взаимодействия открытых систем Понятие «взаимодействие открытых систем» (Open System Interconnection – OSI) относится к процедурам передачи данных между информационными системами, «открытыми» друг другу в плане сетевого взаимодействия благодаря совместному исполь- зованию общих стандартов. Стремление создать единую, универсальную и открытую к 40 изменениям физической, логической и программной структур ар- хитектуру сети обусловило стандартизацию иерархии уровней се- тевого взаимодействия. Международная организация по стандарти- зации (International Standard Organization – ISO) в начале 80-х го- дов прошлого века предложила концепцию архитектуры откры- тых систем, в которой определена эталонная модель, используе- мая в качестве базовой при разработке международных стандартов. Эта модель называется моделью взаимодействия открытых си- стем (Open System Interconnection, OSI) или моделью OSI. В соответствии с эталонной моделью ИС представляется как распределенная, гетерогенная информационно-вычислительная среда, реализуемая большим числом разнообразных аппаратно- программных средств. Эта среда делится на ряд логических уровней, на каждом из которых реализуется определенный набор функций, востребованных в ходе сетевого взаимодействия. Модель OSI определяет уровни взаимодействия систем, дает им стандартные имена, указывает, какие функции должен выпол- нять каждый уровень и координирует: взаимодействие прикладных процессов; формы представления данных; единообразное хранение данных; управление сетевыми ресурсами; безопасность данных и защиту информации; диагностику программ и технических средств. В модели OSI средства взаимодействия делятся на семь уров- ней (снизу вверх): физический, канальный, сетевой, транспорт- ный, сеансовый, представительный и прикладной. Каждый из пе- речисленных уровней имеет дело с одним, вполне определённым аспектом сетевого взаимодействия пользователей (приложений). Физический уровень (Physical layer) имеет дело с передачей битов по физическим каналам связи, таким, например, как коак- сиальный кабель, витая пара, оптоволоконный кабель или радио- канал. К этому уровню имеют отношение характеристики физи- ческих сред передачи данных: полоса пропускания, помехоза- щищенность, волновое сопротивление и др. На этом уровне определяются характеристики сигналов, передающих дискрет- 41 ную информацию, например крутизна фронтов импульсов, уров- ни напряжения или тока передаваемого сигнала, длина волны, тип кодирования, скорость передачи сигналов. Здесь же стандар- тизуются типы разъемов и назначение каждого контакта. Функции физического уровня реализуются во всех устрой- ствах, подключенных к сети. Со стороны компьютера функции физического уровня обычно выполняются сетевым адаптером. Примером протокола физического уровня может служить, например, спецификация 100Base-T сетевой технологии Fast Ethernet, которая определяет в качестве используемого кабеля не- экранированную витую пару категории 5 с волновым сопротив- лением 100 Ом; разъем RJ-45; максимальную длину физического сегмента 100м и некоторые другие характеристики среды и элек- трических сигналов. Канальный уровень (Data Link layer). На физическом уровне осуществляется передача сигналов, кодирующих биты данных. При этом не учитывается, что в некоторых сетях линии связи могут использоваться попеременно несколькими парами взаимодействующих узлов (разделяемая среда передачи). Поэто- му одной из задач канального уровня является проверка доступ- ности среды передачи. Другой задачей канального уровня являет- ся реализация механизмов обнаружения и коррекции ошибок. Для этого на канальном уровне биты группируются в наборы, называемые кадрами (frames, англ.). Канальный уровень обеспе- чивает корректность передачи кадров, помещая для выделения каждого кадра в его начало и конец характерную последователь- ность бит, а также вычисляет контрольную сумму, обрабатывая все байты кадра по определенному алгоритму и добавляя кон- трольную сумму в специальное поле кадра. В локальных сетях протоколы канального уровня использу- ются компьютерами, мостами, коммутаторами и маршрутиза- торами. В компьютерах функции канального уровня реализуют- ся совместными усилиями сетевых адаптеров и их драйверов. В глобальных сетях, которые в отличие от локальных сетей не обладают регулярной топологией, канальный уровень обеспе- чивает обмен сообщениями только между двумя соседними уз- 42 лами, соединенными индивидуальной линией связи. Сетевой уровень (Network layer) служит для образования единой транспортной системы, объединяющей несколько сетей (подсетей – в терминологии объединённой сети), причем эти подсети могут использовать различные принципы передачи со- общений между конечными узлами и обладать произвольной то- пологией (структурой физических связей). Подсети соединяются между собой специальными устрой- ствами, называемыми маршрутизаторами. Маршрутизатор – устройство, которое собирает информацию о топологии межсете- вых соединений, на основании которой осуществляется пересыл- ка пакетов (packets, англ. – формат сообщения, обычно принятый на сетевом уровне) в сеть назначения. Для того чтобы передать пакеты от отправителя, находящегося в одной сети, получателю, находящемуся в другой сети, нужно, как правило, совершить не- которое количество транзитных передач между сетями. Таким образом, маршрут передачи представляет собой последователь- ность маршрутизаторов, через которые проходит пакет. Пробле- ма выбора наилучшего пути называется маршрутизацией, и ее решение является ещё одной задачей сетевого уровня. Сетевой уровень решает также задачи согласования разных технологий, упрощения адресации в крупных сетях и создания надежных и гибких барьеров на пути нежелательного трафика между сетями. Транспортный уровень (Transport layer). На пути от отпра- вителя к получателю пакеты могут быть искажены или утеряны. Хотя некоторые приложения имеют собственные средства обра- ботки ошибок, существуют и такие, которые предпочитают сразу иметь дело с надежным соединением. Функции транспортного уровня заключаются в том, чтобы обеспечить приложениям или верхним уровням – прикладному и сеансовому – передачу дан- ных с той степенью надежности, которая им требуется. Модель OSI определяет пять классов услуг, предоставляемых транспорт- ным уровнем. Эти виды услуг отличаются качеством: срочно- стью, возможностью восстановления прерванной связи, наличием средств мультиплексирования нескольких соединений между 43 различными прикладными протоколами через общий транспорт- ный протокол, а главное – способностью к обнаружению и ис- правлению ошибок передачи, таких как искажение, потеря и дуб- лирование пакетов. Как правило, все протоколы, начиная с транспортного уров- ня и выше, реализуются программными средствами конечных уз- лов сети – компонентами их сетевых операционных систем. Сеансовый уровень (Session layer) обеспечивает управление диалогом для того, чтобы фиксировать, какая из сторон является активной в настоящий момент, а также предоставляет средства синхронизации. Последние позволяют вставлять контрольные точки в длинные передачи, чтобы в случае отказа можно было вернуться к последней контрольной точке, предшествовавшей отказу, вместо того, чтобы повторять всю передачу с начала. На практике немногие приложения используют сеансовый уровень, и он редко реализуется в виде отдельных протоколов, хотя функ- ции этого уровня часто объединяют с функциями прикладного уровня и реализуют в общем протоколе. Представительный уровень или уровень представления данных (Presentation layer) имеет дело с формой представления передаваемой по сети информации, не меняя при этом ее содер- жания. За счет уровня представления информация, передаваемая прикладным уровнем одной системы, всегда понятна прикладно- му уровню в другой системе. С помощью средств этого уровня протоколы прикладных уровней могут преодолеть синтаксиче- ские различия в представлении данных или же различия кодовых алфавитов. На этом уровне может выполняться шифрование и дешифрирование данных, благодаря которому секретность обмена информацией обеспечивается сразу для всех прикладных служб. Прикладной уровень (Application layer) – это набор разно- образных протоколов, с помощью которых пользователи сети по- лучают доступ к различным сетевым сервисам. Примерами таких сервисов являются, например, электронная почта, файловая служба, служба передачи гипертекста, подключение удаленных терминалов к компьютеру по сети и др. Единица данных, которой оперирует прикладной уровень, обычно называется сообщением 44 (message, англ.). Модель OSI описывает только системные средства взаимо- действия, реализуемые системными аппаратными средствами, операционной системой, системными утилитами. Модель OSI не включает средства взаимодействия приложений конечных поль- зователей. Свои собственные протоколы взаимодействия прило- жения реализуют, обращаясь к системным средствам. Поэтому следует различать уровень взаимодействия приложений, не вхо- дит в модель OSI, и её прикладной уровень. В отдельных случаях приложения могут взять на себя функ- ции некоторых верхних уровней модели OSI. При построении транспортной сети наибольший интерес представляют функции физического, канального и сетевого уровней, напрямую связанные с реализацией конкретной сети, её топологией, используемым оборудованием и сетевыми техноло- гиями. Функции прикладного, представительного и сеансового уровней реализуются операционными системами и системными приложениями конечных узлов. Транспортный уровень выступа- ет своеобразным посредником между этими двумя группами про- токолов: он скрывает все детали функционирования нижних уровней от верхних, что позволяет разрабатывать приложения, не зависящие от технических средств непосредственной транспор- тировки сообщений. 5. ВЕДОМСТВЕННЫЕ СЕТЕВЫЕ АРХИТЕКТУРЫ Широкое международное признание модели OSI как произ- водителями сетевого оборудования и программного обеспечения, так и пользователями ИС, позволяет предположить, что в перспек- тиве вновь создаваемые коммуникационные сети будут опираться преимущественно на модель OSI и связанные с ней протоколы. Вместе с тем, ещё до создания эталонной модели, были раз- работаны и широко применялись ведомственные сетевые архи- тектуры, большая часть из которых сегодня перестали использо- ваться, другие, в модифицированном виде, продолжают приме- няться по сей день. К последним, прежде всего, следует отнести 45 архитектуру сети ARPA, протоколы которой послужили основой протокольного стека глобальной сети Internet. В большинстве случаев разработчики ведомственных сете- вых архитектур отдавали предпочтение обеспечению скорости работы сети в ущерб функциональной модульности. Чаще всего в архитектурах явно выделяются 3-4 уровня: уровень сетевых адаптеров, реализующий протоколы физического и канального уровней; сетевой уровень; транспортный уровень и уровень служб, вбирающий в себя функции сеансового, представительно- го и прикладного уровней. Ниже кратко рассматриваются архитектуры, оставившие за- метный след в теории и практике создания телекоммуникацион- ных сетей. Там же приводится примерное соответствие функцио- нальных уровней этих архитектур уровням эталонной модели OSI. 5.1. Открытая архитектура ARPA Агентство перспективных исследований (ARPA –Advanced Research Project Agency) Министерства обороны США 20 в конце 60-х годов прошлого столетия разработало собственную сетевую архитектуру, в соответствии с которой была построена исследо- вательская телекоммуникационная сеть ARPA (ARPANet). В настоящее время большая часть коммуникационных протоколов стека ARPA широко используется в международной глобальной сети Internet. Поскольку Министерство обороны США являлось и продолжает являться одним из крупнейших в мире пользователей средств вычислительной техники и связанного с ней ПО, потен- циальные выгоды от принятия в своё время открытой сетевой ар- хитектуры являются для него весьма значительными. Назначение этой архитектуры то же, что и OSI, но разрабо- тана она была раньше и поэтому в ней не достигнут тот же уро- вень функциональности, что в эталонной модели. В архитектуре ARPA (рис.5.1) выделяют четыре функцио- нальных уровня обеспечения сетевого взаимодействия. При этом 20 В некоторых источниках – Advanced Research Project Agency of the U.S. Department of Defense – DARPA. 46 функционал трех верхних уровней модели OSI здесь объединен в одном уровне вместе с функционалом пользовательских прило- жений (последний в состав модели OSI не входит). Рис.5.1. Функциональные уровни архитектуры ARPA и их соответствие модели OSI На уровне доступа к сети реализуются функции, которые обеспечивают интерфейс с используемой сетью. Архитектура задумывалась так, чтобы взаимодействие осу- 47 ществлялось сквозь несколько сетей. Возможность этого обеспе- чивает межсетевой уровень, основной функцией которого явля- ется маршрутизация в сети, что соответствует аналогичной части функционала сетевого уровня OSI. Опираясь на услуги, поставляемые межсетевым уровнем, уровень управления передачей регламентирует средства, с помо- щью которых два процесса поддерживают диалог. Протоколы этого уровня обеспечивают службы, работающие как без уста- новления соединения (дейтаграммный режим), так и с установ- лением соединения. В последнем случае логическое соединение называется сеансовым, но по отношению к эталонной модели оно ближе к логическому соединению, обеспечиваемому транспорт- ным уровнем. Логическое соединение позволяет пользователю надежно, с требуемым уровнем качества обмениваться сообще- ниями с прикладными процессами. Обычно службы, поддерживаемые протоколом управления передачей, становятся доступными с помощью уровня программ- ного обеспечения, называемого интерфейсом прикладных про- грамм. Так как в архитектуре ARPA уровень управления переда- чей образует интерфейс с прикладным процессом оконечного пользователя, то он является аналогом элемента пользователя, ас- социируемого в архитектуре OSI с прикладным процессом (при- ложением пользователя). Таким образом, программное обеспече- ние интерфейса прикладных программ меняется от узла к узлу и, следовательно, от одной операционной системы к другой, уста- новленных на этих узлах. В архитектуре ARPA нет предметно-ориентированного (прикладного) уровня, поэтому функции, связанные с этим уров- нем, включены в процессы пользователей. Здесь в интересах ко- нечных пользователей разработан ряд прикладных процессов, обеспечивающих специальные службы, близкие тем, которые на прикладном уровне модели OSI выполняют прикладные протоко- лы (передачи файлов, эмуляции удаленного терминала, удален- ного ввода заданий, электронной почты и др.). |