18579

Системы распределенных вычислений

Доклад

Информатика, кибернетика и программирование

Системы распределенных вычислений При выполнении проектных процедур с использованием более чем одного узла сети различают режимы удаленного узла и дистанционного управления рис. 5.1. В режиме удаленного узла основные процедуры приложения исполняются на терминальн...

Русский

2013-07-08

42.5 KB

8 чел.

Системы распределенных вычислений

При выполнении проектных процедур с использованием более чем одного узла сети различают режимы удаленного узла и дистанционного управления

(рис. 5.1).

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

Дистанционное управление обеспечивает передачу клавишных команд в прямом направлении и экранных изображений (обычно лишь изменений в них) в сжатом виде в обратном направлении, поэтому задержки меньше.

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

Программное обеспечение организации распределенных вычислений называют ПО промежуточного слоя (Middleware). Современная организация распределенных вычислений в сетях Internet /Intranet основана на создании и использовании программных средств, которые могут работать в различных аппаратно-программных средах. Совокупность таких средств называют также многоплатформенной распределенной средой — МРС (Crossware).

Рис. 5.1. Режимы удаленного узла и дистанционного управления


Находят применение технологии распределенных вычислений RPC (Remote Procedure Call), ORB (Object Request Broker), DCE (Distributed Computing Environment), мониторы трагоакций TPM (Transaction Processing Monitors) и др.

Средства RPC входят во многие системы сетевого ПО. Процедурная блокирующая синхронная технология RPC предложена фирмой Sun Microsystems. Вызов удаленных программ подобен вызову функций в языке С. При пересылках на основе транспортных протоколов TCP или UDP данные представляются в едином формате обмена. Синхронность и блокирование означают, что клиент, обратившись к серверу, для продолжения работы ждет ответа от сервера.

Для систем распределенных вычислений разработаны специальные языки, например для RPC — язык IDL (Interface Definition Language), который позволяет пользователю оперировать различными объектами безотносительно к их расположению в сети. На этом языке описываются интерфейсы к распределенным по сети компонентам в виде списка выполняемых компонентами процедур, типов аргументов и результатов процедур. С помощью компилятора языка IDL описание интерфейса преобразуется в программные модули, называемые стабами. Стаб на стороне клиента предназначен для упаковки параметров процедуры и обращения к системному вызову «послать», который позволяет передать параметры серверу. Стаб на стороне сервера распаковывает параметры и вызывает запрошенную процедуру. После выполнения процедуры аналогичным образом стабы участвуют в передаче клиенту результатов процедуры.

Формат RPC-сообщения:

идентификатор сообщения;

тип сообщения (запрос или ответ);

идентификатор клиента;

идентификатор удаленной процедуры;

аргументы.

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

ORB — технология объектно-ориентированного подхода, базирующаяся на спецификациях CORBA. Спецификации CORBA (Common Object Request Broker Architecture) устанавливают способы использования удаленных объектов (серверных компонентов) в клиентских программах. Взаимодействие клиента с сервером происходит с помощью программы-посредника (брокера) ORB. В случае применения ORB (в отличие от RPC) хранить сведения о расположении серверных объектов в узле-клиенте не нужно, достаточно знать расположение в сети брокера ORB. Поэтому доступ пользователя к различным объектам

(программам, данным, принтерам и т.п.) существенно упрощен. Брокер должен определять, в каком месте сети находится запрашиваемый ресурс, и инициализировать серверную программу. После этого клиент может направлять запрос в серверный узел, а после выполнения запроса сервер будет возвращать результаты пользователю.

Для описания интерфейсов распределенных объектов используют язык ШЬ, предложенный в CORBA. Этот язык отличается от языка IDL технологии RPC, в нем имеются средства описания интерфейсов, но нет средств описания операций.

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

В CORBA создан протокол ПОР (Internet Inter-ORB Protocol), который обеспечивает взаимодействие между брокерами разных производителей.

Мониторы транзакций отличаются от RPC наличием готовых процедур обработки транзакций (в том числе отката транзакций), что упрощает работу программистов. Принимая запросы от клиентов и мультиплексируя их, монитор транзакций избавляет от необходимости создавать для каждого клиента отдельное соединение с базой данных. Мониторы транзакций могут оптимально распределять нагрузку на серверы, выполнять автоматическое восстановление после сбоя и перезапуск системы.

Технология DCE разработана консорциумом OSF (Open Software Foundation). Она не противопоставляется другим технологиям (RPC, ORB), а является средой для их использования, например, в одной из реализаций DCE пакет Encina есть монитор транзакций, а пакет Orbix ORB представляет собой технологию ORB.

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

К функциям DCE относятся распределение вычислений по технологии RPC; распараллеливание вычислений (но программист сам проектирует параллельный процесс); защита данных; синхронизация (согласование времени); поддержка распределенной файловой системы.

Работая в DCE, пользователь дополнительно к своей прикладной программе пишет IDL-файл, в котором указывает свое имя, требуемые операции и типы данных. IDL-компилятор на основе этого файла создает три модуля: клиентский стаб (О), серверный стаб (Sr), головной файл (Hd). Модуль С1 содержит вызовы процедур, Sr—обращения к базе процедур, Hd устанавливает связь между стабами.

Определение нужного сервера в DCE либо происходит автоматически с помощью ORB, либо возлагается на программиста, как в RPC.


 

А также другие работы, которые могут Вас заинтересовать

77228. Разработка приложения для платформы Google Аndroid 430.36 KB
  Цель курсовой работы – разработка приложения Underworld, многопользовательской игры, для платформы Google Android, предоставляющего удобный геймплей с использованием мощной функциональности, предоставляемой платформой.
77229. Параллельная реализация алгоритма ACO 69 KB
  В настоящее время биоинформатика также включает в себя теоретические методы и алгоритмы решения задач возникающих из анализа биологических данных.
77230. Интеграция мультимедиа решений с аппаратным ускорением для MID устройства 205 KB
  MID (mobile internet device) - это устройства, которые отвечают требованиям низкого энергопотребления, мобильности, а также предоставляющие обширные возможности для работы в сети. По сути MID - это компьютер по размеру не многим больше телефона...
77231. Создание среды разработки библиотек формул подсчета технико-экономических показателей теплоэлектростанций 443 KB
  В процессе создания новой системы для планирования расчёта и учёта технико-экономических показателей ТЭС возникла необходимость в модуле предоставляющем удобный пользовательский интерфейс и обладающим следующими возможностями: ввод перечня технико-экономических показателей ввод формул...
77232. Конечный мозг, его развитие, строение (отделы, полость, ее стенки, части, белое и серое вещество). Границы долей полушарий большого мозга. Артерии большого мозга 15.86 KB
  Границы долей полушарий большого мозга. Артерии большого мозга. Конечный мозг telencephlon является производным переднего мозгового пузыря и представлен двумя полушариями большого мозга hemispheri cerebrtes. Продольная щель мозга разделяет полушария между собой поперечная щель мозжечок от затылочных долей.
77233. Белое вещество полушарий большого мозга. Внутренняя капсула. Корково-ядерный пусть 16.34 KB
  Белое вещество полушарий большого мозга. Оно представлено многочисленными волокнами: Проекционные волокна представлены пучками афферентных и эфферентных волокон осуществляющих связи проекционных центров коры полушарий большого мозга с базальными ганглиями ядрами ствола головного мозга или ядрами спинного мозга. свода мозга fornix cerebri обеспечивают связь подкорковых центров обоняния c проекционным центром обоняния столбы свода тело свода спайка свода и бахромки гиппокампа Ассоциативные волокна соединяют различные участки коры в...
77234. Обонятельный мозг развивается из вентральной части конечного мозга и состоит из двух отделов: центрального и переферического 243.57 KB
  Рецептор переферические отростки биполярных клеток 1 нейроны в regio olfctori сллизистой полости носа. Центральные отростки биполярных клеток образуют nn. Аксоны митральных клеток проходят в составе обонятельного тракта и вблизи обонятельного треугольника распадаются на три пучка: Медиальный пучок Промежуточный пучок Латеральный пучок Через переднюю спайку мозга в обонятельный тракт противоположной стороны к митральным клеткам обонятельной луковицы. Образованы центральными отростками биполярных клеток расположенных в обонятельной области...
77235. Борозды и извилины лобной доли. Динамическая локализация функций в лобной доле 80.82 KB
  precentrlis inferiorчасто сливается с верхней в единую предцентральную борозду gyrus frontlis inferior Проекционные центры участки коры полушарий большого мозга представляющие собой корковую часть анлизатора имеющие непосредственную морфофункциональную связь через проводящие пути с подкорковыми центрами. Ассоциативные центры участки коры не имеющие непосредственной связи с подкорковыми центрами связанные временной двусторонней связью с проекционными центрами. Центры лобной доли.
77236. Борозды и извилины теменной и затылочной долей коры больший полушарий. Динамическая локализация функций 252.5 KB
  Теменная доля: Борозды: Постцентральная борозда Внутритеменная борозда Извилины: Постцентральная извилина Нижняя теменная долька состоит из надкраевой и угловой извилин Центры: Проекционный центр общей чувствительности g. postcentrlis Проекционный центр схемы тела s. intrprietlis Ассоциативный центр стереогнозии узнавания предметов на ощупь lobus prietlis superior Ассоциативный центр праксии целенаправленных отработанных движений g. suprmrginlis Ассоциативный центр лексии зрительный анализатор письменной...