Открыть сервис

Direct Push

Direct Push — это протокол синхронизации данных для мобильных устройств, разработанный корпорацией Microsoft. Он обеспечивает автоматическую и мгновенную доставку электронной почты, элементов календаря, контактов и задач с сервера Microsoft Exchange на мобильные устройства под управлением Windows Mobile, а также некоторых других платформ. Direct Push является альтернативой технологии push-уведомлений, использующей внешние серверы (например, BlackBerry Enterprise Server), и функционирует через постоянное HTTPS-соединение, что позволяет устройству оперативно получать обновления без ручной проверки почты.

История

Технология Direct Push была представлена Microsoft в 2007 году как часть пакета обновлений для операционной системы Windows Mobile 5.0 (AKU 3.0). Основной целью её создания было снижение задержек при доставке сообщений на мобильные устройства в корпоративной среде, где использовался Microsoft Exchange Server 2003 SP2. Ранее синхронизация почты по протоколу Exchange ActiveSync (EAS) требовала периодических запросов от устройства к серверу (pull-технология), что приводило к задержкам и повышенному расходу заряда батареи.

В 2008 году Direct Push был интегрирован в Windows Mobile 6.1, а позже — в платформу Windows Phone (до версии 8.0). Поддержка технологии также была реализована на устройствах других производителей, использующих лицензированные версии Exchange ActiveSync, например, на телефонах Nokia (Symbian) и некоторых моделях под управлением Android. С распространением облачных сервисов, таких как Microsoft Exchange Online (часть Office 365, ныне Microsoft 365), Direct Push уступил место более современным протоколам, таким как ActiveSync с длинным опросом (long polling) и push-уведомления через службы Windows Push Notification Services (WNS), хотя его принципы легли в основу последующих технологий синхронизации.

Принцип работы

Direct Push основан на поддержании длительного TCP-соединения между мобильным устройством и сервером Exchange. Процесс включает следующие этапы:

  1. Инициализация соединения: Устройство устанавливает HTTPS-соединение с сервером Exchange через протокол Exchange ActiveSync (обычно порт 443).
  2. Запрос на уведомление: Отправив запрос PROVISION и SYNC, устройство передаёт токен уведомления и сообщает серверу о готовности к прямому пушу.
  3. Ожидание сервера: Сервер не закрывает соединение после отправки ответа, а удерживает его открытым, отслеживая изменения в почтовом ящике. Если в течение определённого времени (по умолчанию 30 минут) изменений не происходит, сервер отправляет пустое уведомление (heartbeat) для поддержания соединения.
  4. Доставка обновлений: При появлении нового сообщения, изменения в календаре или контактах сервер немедленно отправляет команду SYNC с соответствующими данными. Устройство обрабатывает их и обновляет локальную базу данных.
  5. Переустановка соединения: После успешного получения обновлений или после тайм-аута устройство инициирует новый сеанс и повторяет цикл.

Такой подход устраняет необходимость в частых опросах сервера (polling), что снижает нагрузку на сеть и экономит заряд батареи, однако требует стабильного интернет-соединения и корректной работы брандмауэров, так как Direct Push зависит от долговременных соединений.

Технические характеристики

Протокол Exchange ActiveSync

Direct Pus является частью протокола Exchange ActiveSync (EAS), который поддерживает синхронизацию таких элементов:

Версия Exchange ActiveSync, используемая в Direct Push (начиная с EAS 2.5), поддерживает сжатие данных (GZIP) для экономии трафика, а также шифрование через SSL/TLS для обеспечения безопасности.

Требования к серверу

Для работы Direct Push необходим сервер Microsoft Exchange Server версии 2003 SP2 или новее (включая Exchange 2007, 2010, 2013 и их облачные версии). Также требуется корректно настроенный сертификат SSL для HTTPS-соединения, так как Direct Push не работает через незащищённые каналы.

Требования к устройству

Применение

Корпоративная среда

Direct Push широко использовался в корпоративных сетях, где требовалась быстрая синхронизация почты и календаря между мобильными сотрудниками и сервером Exchange. Технология позволяла уменьшить задержки доставки сообщений с нескольких минут (при обычном polling) до нескольких секунд, что было критически важно для оперативной работы.

Мобильные устройства

На устройствах под управлением Windows Mobile Direct Push был встроенной функцией, не требовавшей установки дополнительного ПО. Для Windows Phone поддержка была реализована до версии 8.1, после чего Microsoft перешла на собственную систему push-уведомлений WNS. Устройства BlackBerry (организация признана нежелательной в РФ) и iPhone (Apple Inc.) для доступа к Exchange также могли использовать Direct Push через сторонние приложения, такие как TouchDown для Android или даже почтовый клиент iOS (ограниченно).

Облачные сервисы

В облачных версиях Exchange (Office 365, ныне Microsoft 365) Direct Push был вытеснен более современными протоколами, такими как ActiveSync с длинным опросом, который поддерживает более эффективное управление соединениями и устойчивость к разрывам сети.

Преимущества и недостатки

Преимущества

Недостатки

Критика и альтернативы

Несмотря на преимущества, Direct Push подвергался критике за сложности в настройке в корпоративных сетях с политиками безопасности, а также за возможные уязвимости, связанные с долговременными соединениями. Например, при нестабильной сети устройство могло удерживать соединение даже после потери сигнала, что приводило к «залипанию» и лишним уведомлениям.

В качестве альтернативы для доставки почты на мобильные устройства использовались:

В последние годы Direct Push практически полностью вытеснен протоколами на основе облачных push-сервисов (Google Cloud Messaging, Firebase Cloud Messaging, WNS), которые более устойчивы к разрывам и не зависят от открытых соединений на устройстве.

Интересные факты

Источники

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →