OBEX

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску

OBEX (OBject EXchange) — протокол обмена объектами, позволяющий не только передавать и принимать текстовую информацию, но и пересылать Интернет-страницы, графику, музыку, мультимедиа-данные и просто двоичные файлы.

Одним из первых телефонов, поддерживающих протокол OBEX для передачи не только визитных карточек и календарных заметок, но и мелодий сигнала вызова и экранных логотипов, был Siemens S25. После появления протокола OBEX вышла спецификация Ir-MC (Infrared Mobile Communication), ставшая наиболее популярным стандартом соединения посредством ИК-связи. Была принята технология BlueTooth, также использующая протокол OBEX.

Различия между OBEX и HTTP[править | править код]

Дизайн и функциональные возможности OBEX похожи на протокол HTTP, в котором клиент использует надёжный транспорт для соединения с сервером и может запрашивать и предоставлять информацию. Несмотря на это сходство, OBEX имеет множество важных отличий:

  • Двоичные данные. HTTP использует понятный для человека текст, а OBEX использует двоичный формат в виде триад тип-длина-значение, которые называются «Заголовки» («Headers»). Для устройств с ограниченными ресурсами информация в таком виде значительно легче для разбора.
  • Поддержка сессий. Исторически HTTP не поддерживает состояние сессии (stateless): клиент открывает соединение, делает единичный запрос, получает ответ на него, закрывает соединение. В случае с OBEX, одно соединение может обслуживать множество операций. Более поздние спецификации OBEX позволяют сохранять целостность внезапно оборванных транзакций.

Программы, использующие OBEX[править | править код]