
- •Распределенные информационные системы и сети
- •Архитектура распределенных систем и основные понятия распределенной обработки данных
- •Концепция открытых систем
- •Преимущества идеологии открытых систем.
- •Открытые системы и объектно-ориентированный подход
- •Компьютерные (информационные) сети
- •Глобальные сети
- •Локальные сети
- •Многопроцессорные компьютеры
- •Взаимодействующие процессы
- •От централизованных систем - к вычислительным сетям
- •1.1. Эволюция вычислительных систем
- •Системы пакетной обработки
- •Многотерминальные системы - прообраз сети
- •Появление глобальных сетей
- •Первые локальные сети
- •Создание стандартных технологий локальных сетей
- •Современные тенденции
- •1.2. Вычислительные сети - частный случай распределенных систем
- •Мультипроцессорные компьютеры
- •Многомашинные системы
- •Вычислительные сети
- •Распределенные программы
- •Преимущества использования сетей
- •2.1. Проблемы физической передачи данных по линиям связи
- •2.2. Проблемы объединения нескольких компьютеров
- •Топология физических связей
- •Организация совместного использования линий связи
- •Адресация компьютеров
- •2.3. Стандартные решения сетевых проблем
- •2.4. Структуризация как средство построения больших сетей.
- •Физическая структуризация сети
- •Логическая структуризация сети
- •3.1. Многоуровневый подход. Протокол. Интерфейс. Стек протоколов
- •3.2. Модель osi
- •3.3. Уровни модели osi Физический уровень
- •Канальный уровень
- •Сетевой уровень
- •Транспортный уровень
- •Сеансовый уровень
- •Представительный уровень
- •Прикладной уровень
- •Сетезависимые и сетенезависимые уровни
- •3.4. Стандартные стеки коммуникационных протоколов
- •Стек tcp/ip
- •Стек ipx/spx (Internetwork Packet Exchange/ Sequenced Packet Exchange)
- •Стек NetBios/smb (Network Basic Input/Output System / Server Message Block)
- •4.1. Локальные и глобальные сети
- •4.2 Требования, предъявляемые к современным вычислительным сетям
- •Производительность
- •Надежность и безопасность
- •Расширяемость и масштабируемость
- •Прозрачность
- •Поддержка разных видов трафика
- •Управляемость
- •Совместимость
- •5.1. Типы линий связи
- •5.2. Аппаратура линий связи
- •5.3. Характеристики линий связи
- •Амплитудно-частотная характеристика, полоса пропускания и затухание
- •Пропускная способность линии
- •Связь между пропускной способностью линии и ее полосой пропускания
- •Помехоустойчивость и достоверность
- •Коаксиальные кабели
- •Кабели на основе неэкранированной витой пары
- •Кабели на основе экранированной витой пары
- •Волоконно-оптические кабели
- •6.1. Аналоговая модуляция
- •Методы аналоговой модуляции
- •Спектр модулированного сигнала
- •6.2. Цифровое кодирование
- •Требования к методам цифрового кодирования
- •Потенциальный код без возвращения к нулю
- •Метод биполярного кодирования с альтернативной инверсией
- •Потенциальный код с инверсией при единице
- •Биполярный импульсный код
- •Манчестерский код
- •Потенциальный код 2b1q
- •6.3. Логическое кодирование
- •Избыточные коды
- •Скрэмблирование
- •6.4. Дискретная модуляция аналоговых сигналов
- •6.5. Асинхронная и синхронная передачи
- •7.1. Методы передачи данных канального уровня
- •Асинхронные протоколы
- •Синхронные символьно-ориентированные и бит-ориентированные протоколы
- •Символьно-ориентированные протоколы
- •Бит-ориентированные протоколы
- •Протоколы с гибким форматом кадра
- •Передача с установлением соединения и без установления соединения
- •Обнаружение и коррекция ошибок
- •Методы обнаружения ошибок
- •Методы восстановления искаженных и потерянных кадров
- •Компрессия данных
- •7.2. Методы коммутации
- •Коммутация каналов
- •Коммутация каналов на основе частотного мультиплексирования
- •Коммутация каналов на основе разделения времени
- •Общие свойства сетей с коммутацией каналов
- •Обеспечение дуплексного режима работы на основе технологий fdm, tdm и wdm
- •Коммутация пакетов Принципы коммутации пакетов
- •Виртуальные каналы в сетях с коммутацией пакетов
- •Пропускная способность сетей с коммутацией пакетов
- •Коммутация сообщений
- •Общая характеристика протоколов локальных сетей
- •3.1.2. Структура стандартов ieee 802.X
- •Максимальная производительность сети Ethernet
- •Основные характеристики технологии
- •Маркерный метод доступа к разделяемой среде
- •Форматы кадров Token Ring
- •Физический уровень технологии Token Ring
- •10.2. Технология fddi
- •Основные характеристики технологии
- •Особенности метода доступа fddi
- •Отказоустойчивость технологии fddi
- •Физический уровень технологии fddi
- •Сравнение fddi с технологиями Ethernet и Token Ring
- •Структурированная кабельная система
- •Иерархия в кабельной системе
- •Выбор типа кабеля для горизонтальных подсистем
- •Выбор типа кабеля для вертикальных подсистем
- •Выбор типа кабеля для подсистемы кампуса
- •Глобальные сети
- •Обобщенная структура и функции глобальной сети Транспортные функции глобальной сети
- •Высокоуровневые услуги глобальных сетей
- •Структура глобальной сети
- •Интерфейсы dte-dce
- •Типы глобальных сетей
- •Выделенные каналы
- •Протоколы семейства hdlc
- •Протокол ppp
- •Глобальные сети с коммутацией каналов
- •Глобальные сети с коммутацией пакетов
- •Магистральные сети и сети доступа
- •Сети х.25 Протоколы сетей х.25 были специально разработаны для низкоскоростных линий с высоким уровнем помех. Назначение и структура сетей х.25
- •Адресация в сетях х.25
- •Стек протоколов сети х.25
- •Сети Frame Relay Назначение и общая характеристика
- •Стек протоколов frame relay
- •Поддержка качества обслуживания
- •Использование сетей frame relay
- •Технология атм
- •Основные принципы технологии атм
- •Стек протоколов атм
- •Уровень адаптации aal
- •Протокол атм
- •Категории услуг протокола атм и управление трафиком
- •Сосуществование атм с традиционными технологиями локальных сетей
- •Использование технологии атм
- •100Vg-Anylan
- •6.5. Удаленный доступ
- •6.5.1. Основные схемы глобальных связей при удаленном доступе
- •Типы взаимодействующих систем
- •Типы поддерживаемых служб
- •Типы используемых глобальных служб
- •6.5.2. Доступ компьютер - сеть
- •Удаленный узел
- •Удаленное управление и терминальный доступ
- •6.5.3. Удаленный доступ через промежуточную сеть Общая схема двухступенчатого доступа
- •Технологии ускоренного доступа к Internet через абонентские окончания телефонных и кабельных сетей
- •11.2. Концентраторы и сетевые адаптеры
- •Сетевые адаптеры (в лабораторной работе) Функции и характеристики сетевых адаптеров
- •Классификация сетевых адаптеров
- •Концентраторы Основные и дополнительные функции концентраторов
- •Отключение портов
- •Поддержка резервных связей
- •Защита от несанкционированного доступа
- •Многосегментные концентраторы
- •Управление концентратором по протоколу snmp
- •Конструктивное исполнение концентраторов
- •13.1. Принципы объединения сетей на основе протоколов сетевого уровня
- •Ограничения мостов и коммутаторов
- •Понятие internetworking
- •Функции маршрутизатора
- •Реализация межсетевого взаимодействия средствами tcp/ip
- •Многоуровневая структура стека tcp/ip
- •Уровень межсетевого взаимодействия
- •Основной уровень
- •Прикладной уровень
- •Уровень сетевых интерфейсов
- •Соответствие уровней стека tcp/ip семиуровневой модели iso/osi
- •13.2. Адресация в ip-сетях Типы адресов стека tcp/ip
- •Классы ip-адресов
- •Особые ip-адреса
- •Использование масок в ip-адресации
- •Порядок распределения ip-адресов
- •Автоматизация процесса назначения ip-адресов
- •Отображение ip-адресов на локальные адреса
- •Отображение доменных имен на ip-адреса Организация доменов и доменных имен
- •Система доменных имен dns
- •14.1. Основные функции протокола ip
- •14.2. Структура ip-пакета
- •14.3. Таблицы маршрутизации в ip-сетях
- •Примеры таблиц различных типов маршрутизаторов
- •Назначение полей таблицы маршрутизации
- •Источники и типы записей в таблице маршрутизации
- •14.4. Маршрутизация без использования масок
- •14.5. Маршрутизация с использованием масок Использование масок для структуризации сети
- •Использование масок переменной длины
- •Технология бесклассовой междоменной маршрутизации cidr
- •14.6. Фрагментация ip-пакетов
- •14.7. Протокол надежной доставки tcp-сообщений
- •Сегменты и потоки
- •Соединения
- •Реализация скользящего окна в протоколе tcp
- •Раздел 2
- •6.2.3. Протоколы канального уровня для выделенных линий
- •Протокол slip
- •Протоколы семейства hdlc
- •Протокол ppp
- •6.2.4. Использование выделенных линий для построения корпоративной сети
- •6.3. Глобальные связи на основе сетей с коммутацией каналов
- •6.3.1. Аналоговые телефонные сети Организация аналоговых телефонных сетей
- •Модемы для работы на коммутируемых аналоговых линиях
- •6.3.2. Служба коммутируемых цифровых каналов Switched 56
- •6.3.3. Isdn - сети с интегральными услугами Цели и история создания технологии isdn
- •Пользовательские интерфейсы isdn
- •Подключение пользовательского оборудования к сети isdn
- •Адресация в сетях isdn
- •Стек протоколов и структура сети isdn
- •Использование служб isdn в корпоративных сетях
- •6.4. Компьютерные глобальные сети с коммутацией пакетов
- •6.4.1. Принцип коммутации пакетов с использованием техники виртуальных каналов
Преимущества идеологии открытых систем.
Подход открытых систем пользуется успехом только потому, что обеспечивает преимущества для различных специалистов, связанных с областью компьютеров.
Для пользователя открытые системы обеспечивают следующее:
новые возможности сохранения сделанных вложений благодаря свойствам эволюции, постепенного развития функций систем, замены отдельных компонентов без перестройки всей системы;
независимость от поставщиков аппаратных или программных средств, возможность выбора продуктов из предложенных на рынке при условии соблюдения поставщиком соответствующих стандартов открытых систем;
дружественность среды, в которой работает пользователь, мобильность персонала в процессе эволюции системы;
возможность использования информационных ресурсов, имеющихся в других системах (организациях).
Проектировщик информационных систем получает:
возможность использования разных аппаратных платформ;
возможность совместного использования прикладных программ, реализованных в разных ОС;
развитые средства инструментальных сред, поддерживающих проектирование;
возможность использования готовых программных продуктов и информационных ресурсов.
Разработчики общесистемных программных средств имеют:
новые возможности разделения труда, благодаря повторному использованию программ (reusability);
развитые инструментальные среды и системы программирования;
возможности модульной организации программных комплексов благодаря стандартизации программных интерфейсов.
Последнее свойство открытых систем позволяет пересмотреть традиционно сложившееся дублирование функций в разных программных продуктах, из-за чего системы, интегрирующие эти продукты, непомерно разрастаются по объему, теряют эффективность.
Известно, что в одной и той же области обработки данных и текстов многие продукты, предлагаемые на рынке (текстовые редакторы, настольные издательства, электронные таблицы, системы управления базами данных) по ряду функций дублируют друг друга, а иногда и подменяют функции ОС. Кроме того, замечено, что в каждой новой версии этих продуктов их размеры увеличиваются на 15 %.
В распределенных системах, содержащих несколько рабочих мест на персональных компьютерах и серверов в локальной сети, избыточность программных кодов из-за дублирования возрастает многократно.
Идеология и стандарты открытых систем позволяют по-новому взглянуть на распределение функций между программными компонентами систем и значительно повысить тем самым эффективность.
Частично этот подход обеспечивает компенсацию затрат ресурсов, которые приходится платить за преимущества открытых систем относительно закрытых, ресурсы которых в точности соответствуют задаче, решаемой системой.
Открытые системы и объектно-ориентированный подход
В связи с применением открытых систем весьма перспективным направлением представляется объектно-ориентированный подход проектирования и программирования.
Объектно-ориентированное программирование - это относительно новый подход к разработке программных систем.
Основные принципы объектно-ориентированного подхода:
- данные и процедуры объединяют в программные объекты;
- для связи объектов используют механизм посылки сообщения;
- объекты с похожими свойствами объединяют в классы;
- объекты наследуют свойства других объектов через иерархию классов.
Объектно-ориентированные системы обладают следующими основными cвойствами:
инкапсуляция (скрытие реализации) - данные и процедуры объекта скрываются от внешнего пользователя, и связь с объектом ограничивается набором сообщений, которые «понимает» объект;
полиморфизм (многозначность сообщений) - одинаковые сообщения по-разному понимаются разными объектами, в зависимости от их класса;
динамическое (позднее) связывание - значение имени (область памяти для данных или текст программы для процедур) становится известным только во время выполнения программы;
абстрактные типы данных - объединение данных и операций для описания новых типов, позволяющие использовать новые типы наравне с уже существующими.
наследование - позволяет при создании новых объектов использовать свойства уже существующих объектов, описывая заново только те свойства, которые отличаются.
Объектно-ориентированный подход реализации системы хорошо согласуется с основными свойствами открытых систем (табл. 2).
Таблица 2. Свойства открытых систем и объектно-ориентированных систем программирования
Свойства открытых систем |
Дружественность (пользователь) |
Мобильность (платформы) |
Расширяемость (новые функции и области применения) |
Интероперабель-ность (другие системы, пользователь) |
Свойства объектно-ориентированных систем программирования |
Объектное представление предметной области, наиболее удобное человеку. Сочетание всех других свойств при конструировании пользовательского интерфейса |
Инкапсуляция (скрытие реализации) |
Наследование, абстрактные типы данных |
Полиформизм, динамическое связывание |
Дружественность.
Удобство взаимодействия человека с системой требует от последней наличия всех трех вышеуказанных качеств:
Мобильность необходима ввиду быстрой смены старых и появления новых устройств, в частности, средств мультимедиа.
Расширяемость необходима для разработки программной поддержки новых парадигм общения человека с машиной.
Интероперабельность рассматривает человека как другую систему, с которой открытая система должна уметь взаимодействовать.
Мобильность.
Инкапсуляция позволяет хорошо скрыть машинно-зависимые части системы, которые должны быть реализованы заново при переходе на другую платформу. При этом гарантируется, что остальная часть системы не потребует изменений.
При реализации новых машинно-зависимых частей многое может быть взято из уже существующей системы благодаря механизму наследования.
Расширяемость.
Наследование позволяет сэкономить значительные средства при расширении системы, поскольку многое не нужно создавать заново, а некоторые новые компоненты можно получить, лишь слегка изменив старые. Использование отлаженных компонентов увеличивает надежность.
Интероперабельность.
Способность системы взаимодействовать с другими системами базируется на принципе посылки сообщения и соответствующих понятий полиморфизма и динамического связывания.
В сообщении объекту (возможно удаленному) передается имя действия, которое должно быть им выполнено, и некоторые дополнительные аргументы сообщения. Как это действие выполнять знает и решает только сам объект-получатель сообщения. От него только требуется выдать в ответ результат. Совершенно очевидно, что различные объекты будут по-разному реагировать на одинаковые сообщения (полиморфизм). Кроме того, очень удобно выбирать способ реализации в последний момент (при ответе на сообщение) в зависимости от текущего состояния системы (динамическое связывание).
Для того, чтобы разные системы могли обмениваться сообщениями, необходима:
либо единая трактовка всех типов данных, в том числе абстрактных,
либо индивидуальная процедура преобразования сообщения для каждой пары неодинаковых взаимодействующих систем.
Простота понятия абстрактных типов данных в объектно-ориентированных системах существенно облегчает разработку такой процедуры.
Возможность конструирования абстрактных типов данных для создания новых средств обеспечивается самим понятием класса, объединяющего похожие объекты с одинаковым набором операций.