Share via


1.3 Overview

The Infrared Data Association (IrDA) Object Exchange (OBEX) Protocol is specified by the Infrared Data Association in [IROBEX]. The primary use of the protocol is to connect two devices by using an infrared link and to allow sending and receiving of opaque data objects across the infrared link. [IROBEX] specifies the two major elements of the protocol: a model for representing objects with information that describes the objects, and a session protocol that provides a structure for the "conversation" between devices. The session protocol resides on top of and is used to transport opaque data objects over TinyTP which provides a reliable transport between the two devices, as specified in [IRTTP].

A major use of [IROBEX] is a "push" or "pull" application, allowing rapid and impromptu communications between portable devices. For instance, a laptop user pushes a file to another laptop or PDA, or an industrial computer pulls status and diagnostic information from a piece of factory machinery. Only the "push" portion of the [IROBEX] standards specification is implemented in this profile. Thus, our implementation is described as a profile of the [IROBEX] protocol as IrOBEX.

[IROBEX] describes message and header formats and defines how the client and server exchange messages. This IrDA Object Exchange (OBEX) Protocol Profile [MS-IRDA] specifies an additional user-defined header introduced in this profile that provides the ability for the inclusion of Win32 error codes. This profile specifies the header implementation details, and the portions of [IROBEX] that are not implemented. Certain optional behaviors from [IROBEX] are also implemented, whereas other behaviors (such as pull operations) are not. For implementation-specific behavior with this profile, see Appendix A.