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

SyncML основывается на семействе протоколов XML и позволяет обойти традиционные проблемы беспроводной передачи информации. SyncML использует WAP Binary XML для уменьшения размера пакетов передаваемых данных и числа итераций типа запрос/ответ между устройствами, тем самым нейтрализуя эффект ограниченной полосы пропускания. SyncML также способен восстановить связь между устройствами, если происходят обрывы соединения. Кроме этого, SyncML эффективно работает с различными коммуникационными протоколами, такими как HTTP, Wireless Session Protocol, OBEX(Bluetooth, IrDA), SMTP, TCP/IP.

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

Программная структура SyncML основана на двух протоколах:

  • Протокол представления SyncML (SyncML Representation Protocol), который определяет формат представления SyncML-сообщений и описание внутренней конструкции работы SyncML.
  • Протокол синхронизации SyncML (SyncML Synchronisation Protocol), который определяет действия между SyncML-клиентом и SyncML-сервером.