Файл: Учебнопрактическое пособие Владимир 2021.pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 11.01.2024

Просмотров: 819

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

30 ная схема разделения функций, где прикладной компонент выделен как важнейший изолированный элемент приложения (рис. 1.2).
С развитием интранет - интернет технологий появилась разно- видность трехслойной архитектуры на основании использования web- технологий. В этой разновидности роль сервера приложений играет web-сервер, а в качестве клиента используется стандартный web- браузер. Достоинства – в пониженных требованиях к клиенту и в лег- кой встраиваемости данной архитектуры в мировые информационные сети. Основной недостаток – известные ограничения, накладываемые на интерфейс пользователя web-браузерами.
Эволюция моделей взаимодействия клиента и сервера показы- вает, что их совершенствование направлено на снижение трафика в сети, что повышает производительность системы. Однако реализация перечисленных моделей технологии «клиент-сервер» для построения баз данных в распределенных системах с использованием мобильных каналов связи вызывает значительные трудности. Дело в том, что в отличие от высокоскоростных и надежных локальных сетей, теле- фонные и особенно радиоканалы имеют намного более низкую про- пускную способность при более высоких уровнях помех. Даже в со- временных системах «клиент - сервер», где минимизируется количе- ство данных, передаваемых между клиентским приложением и серве- ром БД, применяемые протоколы взаимодействия клиента и сервера оказываются для этих каналов слишком ресурсоемкими, что в итоге приводит к значительному времени отклика при выполнении тран- закций. К тому же снижается вероятность их успешного завершения из-за возможного обрыва сеанса. Для примера, только время установ- ления сеанса с сервером может составлять от одной до нескольких минут.
Для разрешения проблемы большого времени отклика, возни- кающей при работе мобильных пользователей в режиме клиент- сервер по медленным каналам связи, используются мобильные аген- ты (рис.1.3). С целью уменьшения обмена по низкоскоростным кана- лам уже известная модель «клиент-сервер» трансформирована в но- вую - «клиент-агент-сервер».

31
1.4. Программы-агенты и модель «клиент-агент-сервер»
Правильная ориентация в современной компьютерной сети ста- новится чрезвычайно трудной. Решение этой задачи видится учеными и инженерами на пути использования технологии агентов. Предпола- гается, что по мере развития технологии агентов на узлах сети будет автоматически появляться подобранная с учетом индивидуальных по- требностей пользователя информация. Процесс индивидуализации будет происходить с использованием агентов незаметно для пользо- вателя. Лучшие из агентов смогут самостоятельно обучаться, подра- жая примеру пользователя. В них будет заложена способность отсле- живать последовательность действий, выполняемых во время сеанса просмотра, и накапливать информацию об интересующих вопросах, внося соответствующие коррективы в свое поведение.
В соответствии с определением, данным Э. Таненбаумом, про- граммный агент– это автономный процесс, способный реагировать на среду исполнения и вызывать изменения в среде исполнения, воз- можно, в кооперации с пользователями или другими агентами.
Агент должен обладать следующими свойствами:

реактивность;

автономность;

целенаправленность;

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


32 сверхвысокой частоты, радиоволны и т.д. Таким образом, окружение не является полностью наблюдаемым для агента. Аналогично, агент воздействует на окружение, путем разнообразных исполнительных механизмов, включая общую память. Разумеется, степень воздей- ствия, как и степень восприятия, является ограниченной. Агент может перевести окружение из некоторого состояния в некоторое другое, но не из любого в любое.
Свойство автономности означает, что агент является само- управляющимся, сам контролирует свои действия. Программный агент, находящийся на некотором сервере, обладает возможностью
«самозапуска». Он не требует от пользователя каких-либо специаль- ных действий по обеспечению его старта (подобно тому, как мы
«кликаем» два раза по иконке некоторого файла).
Свойство целенаправленности означает, что у агента имеется определенная цель и его поведение (воздействие на окружение) под- чинено этой цели, а не является простым откликом на сигналы из окружения. Иначе говоря, агент является управляющей системой, а не управляемым объектом.
Свойство коммуникативности означает, что агент общается с другими агентами (включая людей), используя для этого некоторый язык. Это не обязательно единый язык для всех агентов. Достаточно, чтобы у пары общающихся агентов был общий язык. Язык может быть сложным как, например, естественный язык. Но может быть и примитивным: обмен числами или короткими словами. Если много- словные фразы сложного языка несут всю информацию, как правило, в себе, то слова простого языка предполагают «умолчание»: обе сто- роны диалога «знают», о чем идет речь.
В отдельную категорию интеллектуальных агентов выделяют автономные агенты, обладающие свойством обучаемости. Свойство обучаемости означает, что агент может корректировать свое поведе- ние, основываясь на предыдущем опыте. Это не просто накопление в памяти параметров окружения, т.е. Использование исторических данных, но сопоставление истории собственных действий с историей

33 их влияния на окружение, и изменение в связи с этим своей програм- мы действий.
Одна из главнейших особенностей агента – это интеллектуаль- ность. Интеллектуальный агент владеет определенными знаниями о себе и об окружающей среде, и на основе этих знаний он способен определять свое поведение. Интеллектуальные агенты являются ос- новной сферой интересов агентной технологии. Важна также среда существования агента: это может быть, как реальный мир, так и вир- туальный, что становится важным в связи с широким распростране- нием сети Интернет. От агентов требуется способность к обучению и даже самообучению. Способность планировать свои действия делит агентов на регулирующие и планирующие. Если умение планировать не предусмотрено (регулирующий тип), то агент будет постоянно пе- реоценивать ситуацию и возобновлять свое воздействие на окружаю- щую среду. Планирующий агент может запланировать несколько действий на разные промежутки времени. При этом агент может мо- делировать развитие ситуации, что дает возможность более адекватно реагировать на текущие ситуации. При этом агент должен принимать во внимание не только свои действия и реакцию на них, но и сохра- нять модели объектов и агентов окружающей среды для прогнозиро- вания их возможных действий и реакций.
Агенты разделяются на две группы, исходя из того, где они находятся и функционируют. Стационарные агенты работают в ос- новном на стороне клиента или на стороне сервера. Эти программы функционируют во взаимодействии с браузером программой про- смотра сети и автоматизируют сеансы просмотра. Мобильные агенты относятся к более совершенной и многообещающей категории про- граммных продуктов. Такие агенты способны самостоятельно пере- мещаться от сервера к серверу в поисках нужной информации. Это выполняющиеся программы, несущие в себе информацию о соб- ственном состоянии, т. е. вполне автономные. Сегодня концепция программ, извлекающих ресурсы из удаленных точек сети, представ- ляется естественной, однако идея программ, перемещающихся от сервера к серверу, отличается новизной. Особенность мобильных


34 агентов – в их автономности. Перемещаясь по сети, они несут инфор- мацию о своем состоянии (все, что необходимо для их функциониро- вания). Обнаружив необходимые данные, они могут послать сообще- ние исходному клиенту или серверу. Безусловно, в таком случае важ- ной задачей становится обеспечение информационной безопасности.
Разработчики агентов всячески стараются исключить возможность превращения их в информационное оружие.
В модели «клиент-агент-сервер» работы каждое приложение разбивается на две взаимодействующие части. Первая - «клиент», находится на мобильном ПК, обеспечивая пользовательский интер- фейс для ввода данных и представления результатов и, возможно, не- которую локальную обработку. Вторая - «агент», располагается на компьютере в локальной сети и, выступая там представителем пер- вой, выполняет по ее запросам доступ к серверам БД, другим источ- никам данных, различного рода сервису типа электронной почты, пе- чати, передачи факсов и т.п. В отличие от клиент-серверной модели
«клиент-сервер» здесь не организуется сеанс работы пользователя с
БД. Вместо этого «клиент» посылает своему «агенту» короткие со- общения-запросы. Получив сообщение, «агент» работает самостоя- тельно и выполняет запрошенные действия, по окончании которых возвращает «клиенту» сообщение-ответ, содержащее требуемые дан- ные или же просто информацию об успешном завершении операции.
В новой модели работа мобильных клиентов по низкоскоростным ли- ниям сводится к минимуму с переносом основного трафика в компь- ютерную сеть.

35
Рис. 1.2. Модели доступа в современных информационных системах

36
Рис. 1.3. Примеры доступа компьютеров в глобальную сеть
1   2   3   4   5   6   7   8   9   ...   18

1.5. Технологии одноранговых сетей
Технология одноранговых сетей (или P2P-сетей от анг, peer-to-
peer – равный-к-равному) обеспечивает формирование распределен- ных систем на базе принципа децентрализации, где разделение вы- числительных ресурсов и сервисов производится напрямую посред- ством прямого взаимодействия между участниками сети друг с дру- гом, без участия центрального сервера. Одноранговые вычислитель- ные сети, в какой-то степени, являются противоположностью клиент- серверным архитектурам.
В отличие от традиционной клиент-серверной архитектуры в
P2P-сетях каждый узел, входящий в вычислительную сеть, может яв- ляться как клиентом, так и сервером, предоставляя или используя ре- сурсы сети. На рис. 1.4 представлены связи в сетях с P2P и с центра- лизованной архитектурой.

37
Рис. 1.4. Сравнение вида связей P2P и централизованной (клиент-серверной) ар- хитектур
Можно выделить следующие проблемы клиент-серверной архи- тектуры, связанные с наличием централизованного сервера, обеспе- чивающего обработку запросов от множества клиентов:

Проблемы масштабируемости. При увеличении количе- ства клиентов растут требования к мощности сервера и пропускной способности канала. Единственным вариантом решения данной зада- чи является наращивание пропускной способности канала до сервера и использование более высокопроизводительных решений для аппа- ратной платформы сервера;

Зависимость. Стабильная работа всех клиентов зависит от загруженности и функционирования одного сервера. При выходе из строя или отключении сервера, клиенты не смогут выполнять функ- циональные обязанности.
Этим проблемам можно противопоставить следующие преиму- щества P2P:

Отсутствие зависимости от централизованных сервисов и ресурсов;

Система может пережить серьезное изменение в структуре сети;

Высокая масштабируемость модели одноранговых вычис- лений.
Можно выделить следующие основные задачи, которые с легко- стью решают P2P сети:

38 1. Уменьшение/распределение затрат. Серверы централизован- ных систем, которые обслуживают большое количество клиентов, обычно несут на себе основной объем затрат ресурсов (денежных, вычислительных и др.) на поддержание вычислительной системы.
P2P архитектура может помочь распределить эти затраты между уз- лами сети. Так как узлы, как правило, автономны, важно, чтобы за- траты были распределены справедливо.
2. Объединение ресурсов. Каждый узел в P2P-системе обладает определенными ресурсами (вычислительные мощности, объем памя- ти). Приложения, которым необходимо большое количество ресурсов, например ресурсозатратные задачи моделирования или распределен- ные файловые системы, используют возможность объединения ре- сурсов всей сети для решения своей задачи. При этом важны как объ- ем дискового пространства для хранения данных, так и пропускная способность сети.
3. Повышенная масштабируемость. Поскольку в сетях Р2Р от- сутствует сильный центральный механизм, важной задачей является повышение масштабируемости и надежности системы. Масштабиру- емость определяет количество систем, которые могут быть достигну- ты из одного узла, сколько систем могут функционировать одновре- менно, сколько пользователей может пользоваться сетью, сколько памяти может быть использовано. Надежность сети определяется та- кими параметрами как количество сбоев в работе сети, отношение времени простоя к общему времени работы, доступностью ресурсов и т.д. Таким образом, основной проблемой становится разработка но- вых алгоритмов обнаружения ресурсов, на которых базируются но- вые P2P платформы.
4. Анонимность. Бывает, пользователь не желает, чтобы другие пользователи или поставщики услуг знали о его нахождении в сети.
При использовании центрального сервера трудно обеспечить ано- нимность, так как серверу, как правило, необходимо идентифициро- вать клиента, по крайней мере через интернет адрес. При использова- ния P2P-сети пользователи могут избежать предоставления любой информацию о себе.


39
Основные элементы P2P сетей
Пир(Peer)– это фундаментальный составляющий блок любой одноранговой сети:

Каждый пир имеет уникальный идентификатор;

Каждый пир принадлежит одной или нескольким группам;

Каждый пир может взаимодействовать с другими пирами, как в своей так и в других группах.
Можно выделить следующие виды пиров:

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

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

40 стям. Как только к группе подключается узел, обеспечивающий необ- ходимый сервис, он становиться доступной для всей группы.
P2P — это не только сети, но еще и сетевой протокол, обеспе- чивающий возможность создания и функционирования сети равно- правных узлов, их взаимодействия. Множество узлов, объединенных в единую систему и взаимодействующих в соответствии с протоко- лом P2P, образуют пиринговую сеть. P2P относятся к прикладному уровню сетевых протоколов и являются наложенной сетью, исполь- зующей существующие транспортные протоколы стека TCP/IP. Про- токолы сети P2P обеспечивают:

поиск узлов в сети;

получение списка служб отдельного узла;

получение информации о статусе узла;

использование службы на отдельном узле;

создание, объединение и выход из групп;

создание соединений с узлами;

маршрутизацию сообщений другим узлам.
Можно выделить следующие основные преимущества одноран- говых сетей:

высокая масштабируемость, связанная с равномерным распределением вычислительной нагрузки на всех участников сети;

стабильность работы сети, обусловленная отсутствием
«узкого места» – выделенного сервера, обрабатывающего все сетевые запросы;

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

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

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

Смотрите также файлы