Трофименко Иван Сергеевич

Факультет компьютерных наук и технологий

Кафедра электронных вычислительных машин

Специальность «Компьютерные системы и сети»

Тема выпускной работы: Усовершенствование систем распределения данных в высоконагруженных сетях

Научный руководитель: Баркалов Александр Александрович

RUS | UKR | ENG

Усовершенствование систем распределения данных в высоконагруженных сетях

Введение

С каждым годом производительность автоматизированных рабочих мест и рост мощностей современных аппаратных средств обработки информации дает возможность по-новому взглянуть на суть реализации современных систем организации и обработки данных. Однако в промышленных сетях, где количество датчиков и обрабатывающих механизмов столь велико, что позволяет использовать только простейшие элементы (например, микроконтроллеры) для обработки результатов ввиду особенностей среды, в которой работает данная система.[10] Существуют различные решения проблемы построения подобных сетей. Но для обработки данных, когда одна обрабатывающая точка не может справиться с нагрузкой, в основу решения ложится модель распределенных объектных технологий. Наглядный пример распределения данных показан на рисунке 1. Выбор модели реаспределенной информационной системы во многом определяет свойства проектируемой информационной системы.[1]

Широко известно, что подобные системы с рапсределенными объектными технологиями состоят из совокупности программно-аппаратных компонент, которые взаимодействуют друг с другом. Каждая из таких компонент представляет собой аппаратный модуль, выполняющий определенную задачу в рамках одного отдельно взятого процесса. При данной реализации возможно применение объектно-ориентированного подхода при создании крупных информационных систем. Следовательно, компоненты подобных систем рассматриваются на различных уровнях абстрации, где каждый объект обладает определенной линией поведения.[2] Коммуникация объектов, в большинстве случаев, осуществляется при помощи некоторой среды взаимодействия, целью которой является обмен сообщениями между объектами, синхронизация действий, обобщение полученных результатов.[6]

Большая часть проблем, которые решаются использованием распределенных систем программного обеспечения, так же, как и ограничений, с которыми это использование постоянно сталкивается, могут быть поняты при рассмотрении процесса эволюционного развития методов распределенной обработки информации. Необходимо осознавать, что, несмотря на то, что сама технология работы программистов и пользователей их программ изменилась, проблемы остаются теми же самыми, что были и в прошлом. Распределенная система – это набор независимых компьютеров (аппаратных узлов), представляющихся их пользователям единой объединенной системой. От конечных пользователей скрыты различия между компьютерами и способы связи между ними. Пользователи и приложения единообразно работают в распределенных системах, независимо от того, где и когда происходит их взаимодействие.[7] Вычислительная система, состоящая из множества различных вычислительных узлов, на которых установлено самое разное программное обеспечение, может называться распределенной системой только в том случае, если для своих пользователей она выглядит и ведет себя как классическая однопроцессорная система с разделением времени. Чтобы поддерживать представление различных компьютеров и вычислительных сетей в виде единой системы, организация распределенных систем часто включает в себя дополнительный уровень программного обеспечения. Этот уровень называется уровнем системной поддержки (middleware). Основная задача распределенных систем программного обеспечения – облегчить их пользователям доступ к удаленным ресурсам, а также контролировать совместное использование этих ресурсов.[3] Ресурсы могут быть виртуальными, но могут быть и традиционными – компьютерами, принтерами, устройствами хранения файлов, файлами и данными.[8]


Рисунок 1 - Пример реализации распределения данных (анимация, 14 кадров, 34КБ)

Цели и задачи

Целью данной магистерской работуы является повышение производтельности промышленной высоконагруженной сети путем усовершенствования системы обработки и распределения даных. Чтобы достичь поставленную цель, требуется решить следующие задачи:
  1. Изучить существующие протоколы, их особенности промышленных стандартов, предлагаемые фирмами-разработчиками для проектирования промышленных сетей, а также провести обзор уже готовых решений
  2. Ознакомиться с существующими алгоритмами распределения данных в сетях, в том числе и методами, используемыми в РБД
  3. Определить набор параметров, которые требуются для определения эффективности функционирования системы в целом
  4. Исследовать существующие алгоритмы, применимые для конкретной промышленной сети
  5. Модифицировать алгоритм оптимизации распределения данных, и исследовать влияние изменение на производительность системы

Актуальность выбора темы

Суть работы заключается в построении распределенной промышленной сети, которая сможет обрабатывать большие объемы информации, получаемой от всевозможных датчиков и устройств посредством распределенных вычислений. Примером таких систем могут служить как системы контроля работы на заводе, где время срабатывания аварийной системы должно быть минимальным. Для быстрого реагирования на опасность система контроля должна обеспечивать как можно более быструю и эффективную обработку данных, получаемых от систем слежения за ходом работы завода. А введение распределения данных в высоконагруженных сетях позволит сократить время реакции. Подобные системы широко используются на всех этапах производства, поэтому данная тема является актуальной в наши дни. Предполагаемая практическая ценность заключается в том, что результирующая система позволит сократить время реагирования сигнальной системы на опасность. А в цехах с повышенным риском для сотрудников завода своевременное реагирование аварийной системы (пожаротушение, система вентиляции, аварийного отключения конвеера и т.д.) может спасти жизнь и здоровье работников завода.[10]

Обзор существующих промышленных сетей

ASI

Данная технология поддерживается рядом известных фирм: Limberg, Siemens, Pepperl+Fuchs, IFM и др.

Основная задача данной сети - объединить в единую информационную структуру устройства самого нижнего уровня автоматизируемого процесса (датчики и разнообразные исполнительные механизмы) с системой контроллеров. Это следует из названия: Actuator Sensor Interface (ASI).

ASI-интерфейс позволяет через свои коммуникационные линии передавать не только данные, но и запитывать датчики. Здесь используется принцип последовательной передачи на базовой частоте. Информационный сигнал модулируется на питающую частоту.

В качестве физической среды используется специальный неэкранированный двухпроводный кабель с трапециевидным профилем. Этот кабель позволяет подключать датчики, устанавливаемые на подвижных частях механизмов. Топологией ASI-сети может быть шина, звезда, кольцо или дерево с циклом опроса 31 узла за 5 мс. Максимальный объем данных с одного ASI-узла - 4 бит.

CAN

История этого протокола началась в начале 80-х годов, когда технология создания и эксплуатации современных транспортных средств потребовала установки на них большого числа датчиков, увязываемых в единую информационную сеть с замыканием на бортовом компьютере автомобиля. Компания BOSCH (Германия) разработала для этой цели протокол CAN (Control Area Network), получивший статус международного стандарта ISO11898. По своим характеристикам он удовлетворяет не только требованиям задач реального времени, но и реализует высокую степень обнаружения и исправления ошибочных телеграмм.

CANbus - это последовательная шина с децентрализованным доступом на основе модели CSMA/CM. Возможные коллизии, связанные с одновременным запросом шины, разрешаются на основе приоритетности передаваемых сообщений.

История развития этого протокола - яркий пример того, как не доведенная до конца работа по стандартизации приводит к появлению целого семейства несовместимых друг с другом протоколов. Дело в том, что развитие CAN остановилось на определении только первых двух уровней OSI-модели. Появилось большое число разработок 7-го уровня для CAN, оформленных как самостоятельные протокольные решения: SDS (Honeywell), DeviceNET (Allen Bradley), CAL (CiA-ассоциация), CAN11 (BMW), SeleCAN (Selectron), Kingdom (Kvaser), MiCAN (RMI) и несколько других.

Ясно, что такая ситуация мало устраивает пользователей- им самим предлагается сделать выбор в пользу той или иной вариации на тему CAN. При этом лидерами в этом семействе, безусловно, являются SDS и DeviceNET (американский рынок) и CAL (Европа).

HART

Протокол HART (Highway Addressable Remote Transducer), разработанный фирмой Rosemount Inc. в середине 80-х годов, реализует известный стандарт BELL 202 FSK (Frequency Shift Keying), основанный на 4 20мА-технологии.

Схема взаимоотношений между узлами сети основана на принципе MASTER/SLAVE. В HART-сети может присутствовать до 2 MASTER-узлов (обычно один). Второй MASTER, как правило, освобожден от поддержания циклов передачи и используется для организации связи с какой-либо системой контроля/отображения данных. Стандартная топология - "звезда", но возможна и шинная организация. Для передачи данных по сети используются два режима:

1) асинхронный: по схеме "MASTER-запрос\SLAVE-ответ" (один цикл укладывается в 500 мс);

2) синхронный: пассивные узлы непрерывно передают свои данные MASTER-узлу (время обновления данных в MASTER-узле за 250-300 мс).

За одну посылку один узел может передать другому до 4 технологических переменных, а каждое HART-устройство может иметь до 256 переменных, описывающих его состояние. Контроль корректности передаваемых данных основан на получении подтверждения.

FOUNDATION FIELDBUS

Эта сеть родилась в результате сотрудничества двух ведущих американских ассоциаций - ISP и WorldFIP, которые до 1993 года пытались самостоятельно создать универсальную промышленную сеть. В 1994 году появилась ассоциация Fieldbus Foundation, продвигающая на рынке и обеспечивающая поддержку сети Foundation Filedbus (FF). После многолетних безуспешных попыток разработать универсальную промышленную сеть, предпринятых ведущими комитетами по стандартизации IEC и ISA, ассоциация Fieldbus Foundation пришла к синтезированному решению с использованием наработок из разных источников под общим названием Foundation Fieldbus. Итак, FF сегодня - это:

У протоколов FF и Profibus-PA много общего и именно поэтому со стороны европейской ассоциации по стандартизации CENELEC сделано предложение о включении FF в стандарт EuroNorm 50170 в качестве самостоятельной его части.

LON

Протокол LON (точнее LONTalk) был разработан американской компанией Echelon Corporation для построения интеллектуальных систем жизнеобеспечения зданий. В основе LON-технологии лежит использование специального интерфейсного кристалла Neuron. В 1990Кг. компания ECHELON заключила договор с компаниями Toshiba и Motorola об исключительном праве этих компаний на его производство. Этот однокорпусный кристалл содержит 3 микропроцессора: MAC (media access control CPU - ЦП доступа к среде передачи), NET (network CPU - сетевой ЦП) и APP (application CPU - ЦП приложений). MAC-процессор поддерживает первый и второй уровни OSI-модели; NET-процессор реализует функции с третьего по шестой уровень; APP-процессор обрабатывает функции прикладного уровня.

Существуют протоколы и методы кодирования для самых разнообразных физических каналов передачи данных. Например, метод дифференциального манчестерского кодирования выбран для витой пары, FSK-модуляция применяется для работы на сегментах линий электропроводки и на радиоканалах. LON-сеть может состоять из сегментов с различными физическими средами передачи: витая пара, радиочастотный канал, инфракрасный луч, линии напряжения, коаксиальный и оптический кабели. Для каждого типа физического канала существуют трансиверы, обеспечивающие работу сети на различных по длине каналах, скоростях передачи и сетевых топологиях.

При разрешении коллизий используется предсказывающий алгоритм их предупреждения, то есть доступ к каналу упорядочивается на основе знания о предполагаемой нагрузке этого канала. Узел, желающий передавать, всегда получает доступ к каналу со случайной задержкой из некоторого диапазона. Для предотвращения снижения пропускной способности сети величина задержки представлена как функция числа незавершенных заданий (backlog), стоящих в очереди на выполнение. Способность алгоритма, реализованного на MAC-уровне, "предсказывать" основана на оценке числа незавершенных заданий. Каждый узел имеет и поддерживает текущее значение backlog: инкрементирование и декрементирование происходит по результатам отправления и приема пакетов.

Максимальная размерность LON-сети - 32000 узлов, соединенных различными физическими средами в произвольной сетевой конфигурации.

PROFIBUS

При построении многоуровневых систем автоматизации, как правило, стоят задачи организации информационного обмена между уровнями. В одном случае необходим обмен комплексными сообщениями на средних скоростях. В другом - быстрый обмен короткими сообщениями с использованием упрощенного протокола обмена (уровень датчиков). В третьем требуется работа в опасных участках производства (переработка газа, химическое производство). Для всех этих случаев PROFIBUS имеет решение. Сегодня, говоря о PROFIBUS, необходимо иметь ввиду, что под этим общим названием понимается совокупность трех отдельных протоколов: PROFIBUS-FMS, PROFIBUS-DP и PROFIBUS-PA. Все три варианта протокола используют общий канальный уровень (уровень 2 OSI-модели).

Протокол PROFIBUS-DP был спроектирован для организации быстрого канала связи с датчиковым уровнем. В основе алгоритма работы лежит модель циклического опроса каналов. Кроме этого, существует набор ациклических функций для конфигурирования, диагностики и поддержки сигналов. В DP-протоколе существуют три типа устройств:

DP-протокол позволяет организовать мономастерную (один DPM1 и до 126 DP-Slaves) и многомастерную конфигурацию (несколько DPM1 и DP-Slaves).

Протокол PROFIBUS-FMS появился первым и был предназначен для работы на так называемом цеховом уровне. Здесь требуется высокая степень функциональности, и этот критерий важнее критерия скорости. FMS-протокол допускает гибридную архитектуру взаимодействия узлов, основанную на таких понятиях, как виртуальное устройство сети, объектный словарь устройства (переменная, массив, запись, область памяти, событие и др.), логическая адресация и т.д.

Протокол PROFIBUS-PA - это расширение DP-протокола в части технологии передачи, основанной не на RS485, а на реализации стандарта IEC1158-2 для организации технологии передачи во взрывоопасных средах. Он может использоваться в качестве замены старой 4-20мА-технологии связи. Для коммутации устройств нужна всего одна витая пара, которая может одновременно использоваться и для информационного обмена, и для запитывания устройств.

На одном физическом канале (RS485 или оптоволоконном) одновременно могут работать устройства PROFIBUS всех трех типов. Рабочая скорость передачи может быть выбрана в диапазоне 9,6-12000Ккбит/с.

PROFIBUS - это маркерная шина, в которой все циклы строго регламентированы по времени и организована продуманная система тайм-аутов. Протокол хорошо разрешает разнообразные коллизии в сети. Настройка всех основных временных параметров идет по сценарию пользователя.

Исследования, проведенные независимыми западными маркетинговыми компаниями, свидетельствуют о том, что PROFIBUS покрывает свыше 40% рынка открытых промышленных сетей в Германии и Европе. Идет стремительный процесс завоевания и американского рынка. Но самое главное то, что сегодня PROFIBUS рассматривается как кандидат на обретение статуса международного стандарта IEC (МЭК).

BitBus

Bitbus была впервые представлена Intel как измененная система Multibus, с добавленными функциями удаленного ввода/вывода. Эта уникальная промышленная сеть в настоящие дни является одной из самых зрелых и наиболее используемых сетей. Bitbus позволяет программам загружаться и выполняться в удаленном узле для по-настоящему распределенным системам конфигурация.

Сеть типа "клиент-сервер", использующая в качестве коммуникации обмен сообщениями длиной макс 248 байт. Состоит из шины, оборудованной терминалами на обоих концах. Возможно удлинение шины при помощи повторителей. В качестве кабеля для передачи данных используется витая пара с проводом заземления и экранирующим сигналом. Всего в сети может быть 250 устройств, разбитых по сегментам (макс 28 устройств на каждый сегмент). Скорость передачи данных при длине кабеля в 300м около 375Кбит\сек, а на 1200м - 62,5Кбит\сек. Возможно увелиечение скоростейпри помощи современных трансиверов

WorldFIP

WorldFIP обеспечивает детерминированную и надежную схему для передачи параметров процесса (генерируемых сенсорами) и сообщений (событий, конфигурационными командами) со скоростью до 1Мбит в секунду на основе недорогого кабеля витой пары. FIP использует оригинальный механизм, где в шину поступает широковещательный сигнал для всех узлов сети, который позволяет воспроизвести эту переменную в любой точке сети. Все модули в сети получают эту переменную одновременно. Эта концепция представляет собой децентрализованную базу данных переменных в узлах и обладает неплохими временными характеристиками. Эта функция исключает понятие адрес узла и дает возможность для разработки действительно распределенных систем управления технологическими процессами.[5]

ArcNet

ARCNET позиционируется как высокоскоростная локальная вычислительная сеть (LAN), которая хорошо подходит для управления в реальном времени приложений в промышленных сетях. На официальном сайте сказано, что в сети используются недорогие встроенные микроконтроллеры, что значительно снижает стоимость данной разработки.

Первоначально системы была разработана в корпорации Datapoint в середине 70-х и была переоборудована на кремний в 1982 году. Сеть ARCNET постоянно расширяет сферы использования далеко за пределы своей первоначальной области применения, широко используется в промышленных сетях в качестве присоединений новых узлов сети.[4]

Планируемые собственные результаты

В результате выполнения магистерской работы планируется спроектировать модель промышленной сети, и ускорить систему обработки информации, что позволит сократить время получения результатов обработки данных. Данная система может быть применена в тех случаях, когда объемы информации, поступающей на вход обрабатывающей системы, многократно превышают возможности отдельно взятого вычислительного узла. Система позволит распределить нагрузку между вычислительными станциями, что позволит избежать переполнения очереди заявок на обработку сигналов.

Заключение

В данной работе рассмотрена проблема распределения данных в промышленных сетях, проведен поверхностный обзор существующих решений. Суть проблемы заключается в обработке больших объемов данных, получаемых с различных устройств, датчиков. Основная цель исследований – минимизация времени реагирования системы на возможную опасность. Решением данной проблемы является усовершенствование системы распределения данных между обработчиками. В результате проведенной работы эффективность данного метода должна будет подтверждена экспериментально, при помощи построения модели промышленной сети.

Литература

  1. Цегелик Г.Г. Системы распределенных баз данных. - Львов: Свит, 1990. – 168 с.
  2. I. Ahmad Evolutionary Algorithms for Allocating Data in Distributed Database Systems [Электронный ресурс]. Режим доступа: http://ranger.uta.edu/~iahmad/journal-papers/[J39]...
  3. Date C.J. What is distributed database?. - InfoDB, 1987.
  4. Сайты разработчиков спецификаций промышленных сетей. ARCNET Resource Center [Электронный ресурс]. Режим доступа: http://www.arcnet.com/
  5. Володькин И.Н. Основы проектирования промышленных сетей. - М.: Москва, 2004.
  6. IEC 61804-1 Function blocks (FB) for process control. - BSI, 2004
  7. ISA/ANSI. Standards and practices Department Procedure [Электронный ресурс]. Режим доступа: http://ieeexplore.ieee.org.
  8. Архипов А.С., Нагруженные сети: модели, разработка, реализация. - СПб.: Питер, 1998.
  9. Колесников Д.Г., Оптимизация распределения информационных файлов в сетях ЭВМ с параллельной обработкой .- Ростов-на-Дону,1999.
  10. Петров В.Н., Информационные системы: учебное пособие .- СПб.: Питер, 2002.