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

 

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

 

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

 

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

 

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

 

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

 

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

 

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

 

- некоторая прикладная транзакция требует около 50 обменов элементарными сообщениями между клиентом и сервером (заметим, что это число обменов не очень велико, так как для выполнения одного SQL-оператора обычно необходимо от 2 до 20 обменов);

 

- количество данных, возвращаемых клиенту, также невелико  -  200 - 500 байтов.

 

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

 

- архитектура клиент-сервер: Время обработки = 50 х Время задержки (в локальной сети);

 

- архитектура клиент-агент-сервер: Время обработки = 1 х Время задержки (в канале связи клиент-агент) + 50 х Время задержки (в локальной сети).

 

Примерные значения времен обработки, рассчитанных по данным формулам, приведены в таблице.

 

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

 

Корпорация Oracle реализовала архитектуру клиент-агент-сервер с помощью специально разработанного комплекса программных средств  -  Oracle Mobile Agents, подлежащего сертификации в ФАПСИ при наличии в нем средств шифрования.

 

Продукт Oracle Mobile Agents состоит из следующих основных частей:

 

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

 

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

 

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

 

- Менеджера событий, отвечающего за взаимодействие между агентами и Шлюзом сообщений (аналогично Менеджеру сообщений на мобильном клиенте);

 

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

 

- сервера корпоративной БД, почтового сервера, факс-сервера, Web-сервера и др.

 

Таким образом, в продукте Oracle Mobile Agents все сообщения последовательно пересылаются по цепочке:

 

Клиентское приложение Ц Менеджер сообщений Ц Шлюз сообщений Ц Менеджер событий агента Ц агент Ц сервер (или сервис).

 

Таким образом, корпорация Oracle одной из первых обеспечила доступ к базам данных с мобильных компьютеров.

 

Владимир Дрожжинов

 

Версия для печати