Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
Технология «Клиент-сервер» применительно к Intranet
Для реализации всех достоинств глобальной сети в пределах сети организации, при этом обеспечивая секретность внутренней информации разработали Intranet. Intranet - частная компьютерная сеть, являющаяся внутренней web-системой, локализованной в пределах одной организации, в которой используются стандарты и протоколы Internet (сервисы Web, TCP/IP, http, протоколы связи и HTML – страницы). Другими словами, Intranet – это частная, защищенная внутрикорпоративная сеть, при построении которой используются технологии Internet, доступная только сотрудникам организации, причем независимо от их физического местонахождения, ведь для доступа в Intranet сети используется Internet как транспорт Термин «Intranet» впервые появился 19 апреля 1995 году в журнале Digital News & Review. Для преобразования локальной или региональной компьютерной сети в Intranet не потребуется распродавать старое оборудование, можно обойтись уже существующими ресурсами. Архитектура Intranet основана на архитектуре «Клиент-сервер» (рисунок 57). В качестве клиентских программ используются браузеры. При изменениях функциональности корпоративной информационной системы обновление клиентского ПО не требуется. Web-сервер выступает в качестве сервера приложений. Клиент и сервер взаимодействуют обычно по локальной сети, где есть выход в Internet через брандмауэр. Брандмауэром (firewall) – это компьютер с установленным на нем специальном программным обеспечением, позволяющим: - идентифицировать любого входящего извне пользователя, чтобы запретить или разрешить ему доступ; - аудит и протоколирование вхождений - запись, кто, когда и зачем входил во внутреннюю сеть; - криптографию - шифрование секретной информации. - экранирование - возможность односторонней передачи данных. Рисунок 56 – Простейшая схема Intranet с архитектурой «Клиент – сервер» Наличие диалоговых свойств в HTML и интерфейса CGI позволяет строить Internet-приложения с доступом к БД. Наиболее распространена схема динамической публикации отчетов. При этом в качестве CGI-процедуры используется параметризуемый генератор отчетов. Однако это не единственная схема, возможно применять программы ввода и обновления информации в БД. Если используются традиционные статичные страницы гипертекста, то в ответ на запрос клиента Web-сервер передает страницу в формате HTML. При работе с базой данных клиент указывает в форме программу или сценарий для запуска на сервере. Серверная процедура получает введенные пользователем данные, формирует и передает SQL-запрос (определяющий логику управления данными) и, возможно, данные к СУБД. Сервер БД по запросу выполняет обновление, вставку, удаление или выборку записей из БД. CGI-процедура преобразует полученные результаты в формат HTML или в формат диалоговых переменных. Затем Web-сервер посылает полученную HTML-cтраницу или значения диалоговых переменных браузеру для отображения. Использование CGI-процедур имеет ряд недостатков – статичное представление информации, преобразование результата-отчета в HTML-файл, отсутствие динамического просмотра изменения информации в базе данных, процедура «не помнит состояний запросов» – каждое обращение к БД требует повторного установления соединения. Кроме того, такой принцип работы перегружает коммуникационную среду и имеет системные издержки при запуске серверных процессов. Для устранения недостатков CGI используют возможности специальных API для Web-серверов и включают дополнительное «релейное» звено в архитектуру. Все это только подталкивает к дальнейшему совершенствования архитектуры «Клиент-сервер». Intranet имеет пять основных функций: - электронная почта; - совместное использование файлов; - каталогизация; - кросс-платформенная совместимость; - поиск и управление сетью. Эти функции позволяют организации публиковать, хранить, извлекать и управлять информацией, причем формируется единое информационное пространство, сотрудники могут находиться на различных этажах здания центрального офиса компании, в различных регионах и даже в разных странах. Основные достоинства Intranet: -универсальность; Благодаря технологии Intranet поддерживается единый документооборот в организации, если различные ее подразделения используют отличные друг от друга средства доступа к информации. -прозрачная интеграция; Web, благодаря поддержке открытых стандартов, легко интегрируется в уже существующую гетерогенную среду, сохраняя затраты на аппаратное обеспечение. -гибкость; Web, как средство доступа к базам данных и приложениям, меняет традиционное отношение к архитектуре «Клиент – сервер». Используя браузер, как средство доступа к корпоративной сети, пользователь получает единый инструмент для работы с базами данных, приложениями и различными другими службами. -ценовая эффективность; По сравнению с традиционными методами разработки, дистрибуции и поддержки приложений «Клиент – сервер» затраты при использовании Intranet Web-технологии достаточно низкие. Например, в Web-приложениях, работающих с базами данных, используя Web-браузер как единый интерфейс, существенно снижается стоимость разработки и сопровождения программного обеспечения клиентской части. - безопасность; Используя гибкие и мощные механизмы защиты можно построить Intranet-сеть той степени защищенности, которая необходима. -высокая производительность. Для достижения такого уровня производительности в сети используется один из основополагающих принципов построения Intranet - наращиваемость. Недостатки Intranet: - легкий доступ к корпоративным данным может спровоцировать их утечку к конкурентам через недобросовестного работника; - работоспособность и гибкость Интранет требуют значительных накладных расходов на разработку и администрирование; - Intranet, как и любая сеть может быть взломана и использована в корыстных целях. Понятие программного агента В соответствии с определением, данным Э. Таненбаумом, программный агент – это автономный процесс, способный реагировать на среду исполнения и вызывать изменения в среде исполнения, возможно, в кооперации с пользова- телями или другими агентами [2]. Агенты могут применяться при решении следующих задач: мобильные вычисления: миграция агентов может поддерживаться не только между постоянно подсоединенными к сети узлами, но и между мобильны- ми платформами, подключаемыми к постоянной сети на некоторые про- межутки времени и возможно по низкоскоростным каналам. Клиент может подсоединяться к постоянной сети на короткий промежуток времени с мо- бильной платформы, отсылать агента для выполнения задачи и отключать- ся от сети. Затем клиент подсоединяется к другой точке сети и забирает ре- зультаты работы агента. Второй вариант – сервер, на который должен пе- реместиться агент, подсоединяется к сети, а затем отсоединяется. В этом случае агент должен уметь переместиться на такой временно подсоединя- емый сервер и вернуться в постоянную сеть; поиск информации: один человек может быть не в состоянии за короткий срок найти и проанализировать всю необходимую ему информацию. Ис- пользование агента позволяет автоматизировать данный процесс. Агент может странствовать по сети и собирать информацию, лучше всего удо- влетворяющую поставленной задаче. Поисковые агенты могут содержать сведения о различных информационных источниках (включая тип инфор- мации, способ доступа к ней, а также такие характеристики информацион- ного источника, как надежность и точность данных); отбор (обработка) информации. Из всех данных, приходящих к клиенту, агент может выбирать только те данные, которые могут быть интересны клиенту; мониторинг данных. Агент может осуществлять извещение пользователя об изменениях в различных источниках данных в реальном времени (например, мобильный агент перемещается на вычислительный узел, на котором расположен источник данных; это эффективнее, чем использовать статического агента, посылающего запросы источнику данных); универсальный доступ к данным. Агенты могут быть посредниками для работы с различными источниками данных, имеющими механизмы для взаимодействия друг с другом (например, агент создает несколько агентов, каждый из которых работает со своим источником данных). С. Франклин и А. Грэссер в 1996 году предложили следующее обобщенное определение автономного агента [32]: Автономный агент – это система, находящаяся внутри окружения и явля- ющаяся его частью, воспринимающая это окружение (его сигналы) и воздей- ствующая на окружение для выполнения собственной программы действий. Рис. 17. Автономный агент Можно выделить следующие основные составляющие автономного агента (рис. 17): Сенсоры: блоки агента, обеспечивающие получение информации об окру- жающей среде и других агентах; Актуаторы: блоки агента, обеспечивающие воздействие на окружающую среду. При работе простой автономный агент руководствуется стандартным набором правил «Если-то» (рис. 18). Автономный агент должен обладать сле- дующими свойствами: реактивность; автономность; целенаправленность; коммуникативность. Разные авторы не совсем одинаково трактуют перечисленные свойства. Попытаемся объяснить их подробнее [1]. Свойство реактивности означает, что агент временами отвечает на изме- нения в окружении. Агент имеет сенсоры, с помощью которых получает ин- формацию от окружения. Сенсоры могут быть самыми различными. Это могут быть микрофоны, воспринимающие акустические сигналы и преобразующие их в электрические, видеокарты захвата изображений, клавиатура компьютера или общая область памяти, в которую окружение помещает данные и из которой программный агент берет данные для вычислений. Не все изменения окруже- ния становятся известными (доступными) сенсорам агента. Это вполне есте- ственно. Ведь и человек не воспринимает звуки сверхвысокой частоты, радио- волны и т.д. Таким образом, окружение не является полностью наблюдаемым для агента. Аналогично, агент воздействует на окружение, путем разнообраз- ных исполнительных механизмов, включая общую память. Разумеется, степень воздействия, как и степень восприятия, является ограниченной. Агент может перевести окружение из некоторого состояния в некоторое другое, но не из лю- бого в любое. Свойство автономности означает, что агент является самоуправляющим- ся, сам контролирует свои действия. Программный агент, находящийся на не- котором сервере, обладает возможностью «самозапуска». Он не требует от пользователя каких-либо специальных действий по обеспечению его старта (подобно тому, как мы «кликаем» два раза по иконке некоторого файла). Свойство целенаправленности означает, что у агента имеется определен- ная цель и его поведение (воздействие на окружение) подчинено этой цели, а не является простым откликом на сигналы из окружения. Иначе говоря, агент яв- ляется управляющей системой, а не управляемым объектом. Свойство коммуникативности означает, что агент общается с другими агентами (включая людей), используя для этого некоторый язык. Это не обяза- тельно единый язык для всех агентов. Достаточно, чтобы у пары общающихся агентов был общий язык. Язык может быть сложным как, например, естествен- ный язык. Но может быть и примитивным: обмен числами или короткими сло- вами. Если многословные фразы сложного языка несут всю информацию, как правило, в себе, то слова простого языка предполагают «умолчание»: обе сто- роны диалога «знают», о чем идет речь (как в известном анекдоте о занумеро- ванных анекдотах). В отдельную категорию интеллектуальных агентов выделяют автономные агенты, обладающие свойством обучаемости. Свойство обучаемости означает, что агент может корректировать свое поведение, основываясь на предыдущем опыте. Это не просто накопление в памяти параметров окружения, т.е. исполь- зование исторических данных, но сопоставление истории собственных дей- ствий с историей их влияния на окружение, и изменение в связи с этим своей программы действий. Одна из главнейших особенностей агента – это интеллектуальность. Интеллектуальный агент владеет определенными знаниями о себе и об окружа- ющей среде, и на основе этих знаний он способен определять свое поведение (рис. 19). Интеллектуальные агенты являются основной сферой интересов агентной технологии. Важна также среда существования агента: это может быть как реальный мир, так и виртуальный, что становится важным в связи с широким распространением сети Интернет. От агентов требуется способность к обучению и даже самообучению [12]. Способность планировать свои действия делит агентов на регулирующие и планирующие. Если умение планировать не предусмотрено (регулирующий тип), то агент будет постоянно переоценивать ситуацию и возобновлять свое воздействие на окружающую среду. Планирую- щий агент может запланировать несколько действий на разные промежутки времени. При этом агент может моделировать развитие ситуации, что дает воз- можность более адекватно реагировать на текущие ситуации. При этом агент должен принимать во внимание не только свои действия и реакцию на них, но и сохранять модели объектов и агентов окружающей среды для прогнозирования их возможных действий и реакций.
Мультиагентные системы Мультиагентная система (МАС, англ. Multi-agent system) — это система, образованная несколькими взаимодействующими агентами. Мультиагентные системы могут быть использованы для решения таких проблем, которые сложно или невозможно решить с помощью одного агента или монолитной системы. В мультиагентной системе необязательно все агенты взаимодействуют (общаются) между собой. В крайнем случае, общения нет вообще. Такие систе- мы назовем дискретными мультиагентными системами. Второй крайний случай – каждый агент общается с каждым. Такую систему можно назвать полносвяз- ной мультиагентной системой [1]. Мультиагентная система, действующая как единый агент, должна характе- ризоваться и некоторой общей для всех субагентов целью и координацией дей- ствий по достижению этой цели. Поскольку встречаются и другие ситуации, когда агенты не связаны столь тесно, то такие системы можно назвать обще- ствами агентов. Отсутствие единой цели, однако, не отрицает возможного группового поведения агентов. Но оно является, скорее, эпизодическим, чем систематическим. Важным отличием мультиагентной системы от программы или одного агента является то, что входящие в систему программные агенты (по крайней мере, некоторые) не были спроектированы специально для этой системы. Мо- жет быть, это – повторно используемые агенты, или агенты, разработанные для решения более универсальных задач. В этих случаях агенты имеют собствен- ные цели, не совпадающие полностью с целями системы (организации), но сов- местимые с ними. Тем не менее, они могут быть полезны друг другу для реше- ния стоящих перед ними задач и, поэтому, очень важным для них с этой точки зрения является свойство коммуникативности [1]. Агентные платформы Агентная платформа – это промежуточное программное обеспечение, поддерживающее создание, интерпретацию, запуск, перемещение и уничтоже- ние агентов. Как «воздух» для человека, агентная платформа обеспечивает агентам среду для жизни и работы. Агентная система – это приложение, однозначно идентифицируемое име- нем и адресом, которое обеспечивает жизненный цикл агентов на конкретном узле РВС. На одной машине могут размещаться несколько агентных систем. Тип агентной системы определяется агентной платформой и описывает сово- купность параметров агента. Все общение между агентными системами осуществляется через коммуни- кационную инфраструктуру. Рис. 21. Связи между агентными системами Коммуникационная инфраструктура обеспечивает транспортные службы связи (например, RPC), службу имен и службу безопасности для агентных си- стем. На сегодняшний день, можно выделить следующие наиболее распростра- ненные агентные платформы. 1. JADE (Java Agent DEvelopment Framework) [39] – Инфраструктура для раз- работки агентов на языке Java. JADE включает в себя: Динамическую среду, где JADE агенты могут «жить»; Библиотеку классов для разработки агентов; Набор графических инструментов, позволяющий управлять и сле- дить за активностью запущенных агентов. 2. Cougaar (Cognitive Agent Architecture) [12] – это основанная на Java архи- тектура для построения высокомасштабируемых распределенных агентных приложений. Популярное:
|
Последнее изменение этой страницы: 2016-05-28; Просмотров: 1420; Нарушение авторского права страницы