1 / 18

Patterns in Bluetooth

Patterns in Bluetooth. Aniruddha Gokhale agokhale@lucent.com Bell Labs Research, Lucent Technologies Murray Hill, NJ, USA. Overview of Patterns .

santo
Download Presentation

Patterns in Bluetooth

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Patterns in Bluetooth Aniruddha Gokhale agokhale@lucent.com Bell Labs Research, Lucent Technologies Murray Hill, NJ, USA

  2. Overview of Patterns Patterns codify expert knowledge to help generate software architectures by capturing recurring structures & dynamics and resolving common design forces www.posa.uci.edu/ Design patterns capture the static & dynamic roles & relationships in solutions that occur repeatedly Architectural patterns express a fundamental structural organization for software systems that provide a set of predefined subsystems, specify their relationships, & include the rules and guidelines for organizing the relationships between them Optimization principle patterns document rules for avoiding common design & implementation mistakes that degrade performance

  3. Overview of Bluetooth • www.bluetooth.com • De facto standard for low-cost, short range radio links between mobile devices • Formed by a consortium of telecommunications • Goal is to eliminate the need for cable connectivity and promote full scale ad hoc networking • Operates in the unlicensed ISM band at 2.4 GHz Primary components include a radio unit, a link control unit, and a support unit for link management and host-terminal interface

  4. Layers Pattern Intent Helps to structure applications that can be decomposed into groups of subtasks in which each group of subtasks is at a particular level of abstraction Forces Tasks independent of each other need to be decoupled Bluetooth Usage Defines a protocol stack Known Uses OSI Seven Layers, STREAMS

  5. Bluetooth Protocol Stack • Link Manager Protocol (LMP) • Used for link setup, security, and control • Baseband Specification • Short range radio link • Uses slotted channel • channels point-to-point or point-to-multipoint • Supports both circuit-switched (SCO - synchronous connection-oriented) and packet-switched (ACL - asynchronous connectionless) links. • Radio Specification • 2.4 GHz ISM band (2,400-2,483.5 MHz) • Channels spaced 1MHz apart • Gaussian FSK modulation

  6. Bluetooth Protocol Stack Logical Link Control and Adaptation Protocol (L2CAP) • Higher layer protocol multiplexing for SDP, TCS, RFCOMM • Packet segmentation and reassembly • Only for ACL links • Provides group abstractions • Provides the means to convey QoS information • MTU = 64 Kbytes

  7. SDP RFCOMM TCS L2CAP Multiplexor & Dispatcher Pattern Intent Multiplex messages from differing tasks into one task, and de-multiplex and dispatch messages from one task to one of several tasks Forces Support several tasks with differing message formats on top of a single task with its own message format Bluetooth Usage L2CAP Layer multiplexes packets from SDP, RFCOMM, TCS, and IP telephony protocol layers • Known Uses • TCP/IP • System V STREAMS • ACE Reactor

  8. SDP RFCOMM TCS L2CAP SAR Pattern Intent Reassemble fragmented messages in the correct order before dispatching them to their destination task Forces Guarantee ordered delivery of messages to upper layers when lower layers fragment messages and can lose or reorder messages • Bluetooth Usage • L2CAP segments and reassembles packets for SDP, RFCOMM, TCS, and IP telephony protocols • Known Uses • TCP/IP • Reliable multicast over UDP

  9. Bluetooth Protocol Stack Service Discovery Protocol (SDP) • Locating services and their characteristics • Allows search based on attributes or service classes • Allows discovery without consulting a third device • Provides only information about the service and not direct access to the service RFCOMM • Provides emulation of serial ports over L2CAP • Provides a unified interface for communication medium between Bluetooth devices

  10. Client Server request SDP Client SDP Server response Lookup Pattern Intent Describes how to find and retrieve initial references to distributed objects and services Forces Discover services in an ad hoc network • Bluetooth Usage • SDP allows discovery of services, however, actual initial references must be obtained differently • Known Uses • JINI Lookup Service • CORBA Naming and Trading Service

  11. Client Server request SDP Client SDP Server response Service Browsing Pattern Intent Allows browsing all services offered by a Lookup Service Forces Ability to query based on class or characteristics of services • Bluetooth Usage • SDP allows discovering all services based on attributes • Known Uses • JINI Lookup Service • CORBA Trading Service

  12. Bluetooth Protocol Stack IrDA Interoperability (IrOBEX) • Protocol to function over both short range RF and infra red (Ir) media • IrOBEX is a session protocol mapped over RFCOMM, IrDA, or TCP/IP • Provides a model for representing objects that follow a client/server request/response paradigm Telephony Control (TCS) • Defines the call control signaling for the establishment of speech and data calls between Bluetooth devices • Defines mobility management issues

  13. Client Server request IrOBEX IrOBEX response Broker Pattern Intent Used to structure distributed systems with decoupled components that interact by remote method invocations Forces Request/response communication between Bluetooth devices • Bluetooth Usage • OBEX (OBject EXchange) protocol provides a model to represent objects using client/server paradigm • Known Uses • CORBA ORB • Java RMI • DCOM

  14. Client Server request IrOBEX IrOBEX response Facade Pattern Intent Provide a unified interface to a set of interfaces in a subsystem Forces Several disparate interfaces that must be unified • Bluetooth Usage • OBEX (OBject EXchange) protocol provides a unified interface for the underlying transport • RFCOMM provides a unified interface over communication medium between Bluetooth devices BT Device BT Device RFCOMM BT Device Modem Device Network RFCOMM • Known Uses • ACE

  15. IrOBEX IrDA RFCOMM TCP/IP Pluggable Protocol Pattern Intent To be able to use disparate subtasks to deliver messages belonging to a particular task Forces Unifying several disparate lower layers in a Layer pattern • Bluetooth Usage • OBEX (OBject EXchange) protocol can run on top of IrDA, RFCOMM, and TCP/IP • Known Uses • TAO ORB supporting several underlying transports such as TCP/IP, ATM, shared memory

  16. Interoperability Requirements for Wireless Application Protocol (WAP) • Many characteristics of Bluetooth devices shared with WAP target platforms • Same device may be enabled for both protocols • WAP clients and servers use PPP to use the physical and link control medium provided by Bluetooth • Provide access to WAP’s value-added services using the ad hoc, dynamic characteristics of Bluetooth

  17. WAP Application Layer (WAE) Session Layer (WSP) Transaction Layer (WTP) Security Layer (WTLS) Transport Layer (WDP) Bearer: e.g., PPP, CDMA Bluetooth Bridge Pattern Intent Decouples an abstraction from its implementation so that the two can vary independently Forces Maintain independence between WAP and Bluetooth, however, allowing WAP applications to communicate over Bluetooth Bluetooth Usage PPP serves as the bridge between WAP applications and the communication medium offered by Bluetooth • Known Uses • ET++ • libg++ • ACE

  18. Concluding Remarks • Bluetooth is the de facto standard for low cost, short range, wireless communications between portable devices • Bluetooth aims to eliminate the need for cables and promote full scale ad hoc networking

More Related