Как отследить изменения состояния сети с помощью ПО для мобильных устройств

Опубликовано: 28 февраля 2007 г. | Последние Изменения: 15 августа 2008 г.
Задача
Информация об отслеживании изменения состояния сети приложениями для мобильных устройств и соответствующей реакции на эти изменения. Проблема заключается в том, чтобы сохранить работоспособность за пределами офиса. Последние обновления платформы позволяют решить многие из этих задач. Батареи служат дольше, чем раньше, новый дизайн устройств делает их легче и удобнее, а интегрированные карты для подключения к беспроводной сети обеспечивают соединение с любой из более чем 20 000 имеющихся в США точек подключения. Однако возможность подключиться к сети практически в любом месте приводит к возникновению новых вопросов.

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

Необходимость постоянного наблюдения за наличием сетевого подключения, чтобы иметь возможность закончить начатую задачу, негативно влияет на производительность, а постоянно растущая сложность среды усугубляет отрицательный эффект. В будущем количество сетей, доступных для мобильных ПК, будет расти, их станет не две (проводная Ethernet и Wi-Fi), а много (проводная сеть Ethernet, Wi-Fi, сотовые, WiMax, UWB, Bluetooth*, GPS и т. п.). Проблемы подключения потребуют дополнительной поддержки пользователей со стороны ИТ-подразделений и приведут к росту затрат и дальнейшему снижению производительности.

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

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

Все это не намного сложнее, чем использование алгоритма, который задает использование локальной базы данных, когда скорость сетевого подключения меньше 100 Кбит/с, и сетевой базы данных, когда скорость подключения 100 Кбит/с и более. Такой алгоритм подходит для определенных типов приложений, которые не предполагают широкого обмена данными и не предъявляют особых требований к безопасности. Однако приложения с более высокими требованиями к сетевому подключению требуют использования более сложных алгоритмов управления политикой.

Для большинства продуктов имеет смысл разместить управление политикой в отношении мобильных устройств в один объект или компонент. Это позволит легче отличать код, который отвечает за принятие решений в рамках политики, от кода, который отвечает за передачу сетевых данных. Кроме того, такая практика облегчает повышение сложности политики управления мобильными устройствами с течением времени.

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

Имеется два способа избежать такого рода недостатков. Во-первых, нужно правильно назначать приоритет данных. Назначение приоритета данных относится к числу решений, которые должен принимать менеджер по политике. Второй способ избежать блокировки данных — спроектировать транспортный уровень для передачи пакетов и поддержки нескольких задач. Этот тип архитектуры позволяет менеджеру по политике лучше удовлетворять потребности пользователей.

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

  • Автономные хранилища данных. Когда недоступно сетевое подключение, наличие локальной копии данных необходимо для поддержки функциональности приложения. Локальная копия часто используемых сетевых данных позволяет существенно сократить время отклика приложения даже тогда, когда оно работает в интерактивном режиме. Когда система подключена к сети, наличие локальной копии данных позволяет передавать по сети только изменения данных. Это сокращает для пользователя время ожидания доступа к полным данным.
  • Дифференциация. Если не вдаваться в подробности, эта технология отменяет необходимость отправки данных, которые другой пользователь успешно отправил. Если приложение уже скопировало запись, файл, сообщение электронной почты, изображение и т. п. из автономного хранилища данных или запись была передана ранее, такие данные не нужно отправлять повторно. Если запись была изменена, по сети должна быть передана только разница между старой и новой записью.
  • Перезапуски. Иногда подключения прерываются, а задачам назначаются другие приоритеты. В любом случае передача данных может закончиться неудачно или быть отложена, и приложение должно иметь возможность снова запустит передачу, при этом избегая повторной отправки уже отправленных данных.
  • Сжатие. Для того чтобы максимально эффективно использовать доступную пропускную способность сети, данные должны быть по возможности сжаты. Сжатие данных обеспечивает не только большую скорость сетевого подключения, но и позволяет сэкономить средства, так как в некоторых сетях взимается плата за сетевое подключение поминутно или за количество мегабайт, например при определенных видах GPRS-подключений или в общедоступных точках подключения.

Этот документ является одной из глав руководства How to Mobilize Software Applications (Как адаптировать программные приложения для мобильных устройств).

Источник

Post a comment If you have any questions, please contact our support team.