240 likes | 445 Views
Short-Range Radio Frequency Networking. B. Ramamuthy. Purpose. Study personal area network PAN and related standard in bluetooth Based on java.sun.com Bluetooth API overview, design and development . Other sources: Colouris text and palo wireless bluetooth resource center .
E N D
Short-Range Radio Frequency Networking B. Ramamuthy
Purpose • Study personal area network PAN and related standard in bluetooth • Based on java.sun.com Bluetooth API overview, design and development. • Other sources: Colouris text and palo wireless bluetooth resource center. • Bluetooth.com source:
Introduction • Bluetooth is protocol for short range, frequency hopping radio link between devices. • Devices such as phones, PDAs, medical devices that are bluetooth-enabled. • Based on Industrial, Scientific and Medical (ISM) frequency band. • Unlicensed and globally available. • Originally from Ericsson; bluetooth named after a Nordic king instrumental in integration of Scandinavian countries.
IEEE No. Name Title Reference 802.3 Ethernet CSMA/CD Networks (Ethernet) [IEEE 1985a] 802.4 Token Bus Networks [IEEE 1985b] 802.5 Token Ring Networks [IEEE 1985c] 802.6 Metropolitan Area Networks [IEEE 1994] 802.11 WiFi Wireless Local Area Networks [IEEE 1999] 802.15.1 Bluetooth Wireless Personal Area Networks [IEEE 2002] 802.15.4 ZigBee Wireless Sensor Networks [IEEE 2003] 802.16 WiMAX Wireless Metropolitan Area Networks [IEEE 2004a] Figure 3.22IEEE 802 network standards
Details • Radio technology • Protocol stack • Interoperable profiles • How does the technology work? • How is the technology used? • Sample APIs to work with bluetooth: javax.bluetooth; javax.obex (for object exchange)
Radio technology • 2.5Ghz ISM band • The bluetooth devices in a proximity form a piconet comprising a master and upto 7 devices. • Piconets can connect, the master in a piconet can provide a bridge. • Global and unlicensed.
Protocol Stack • Protocol stack provides • a number of higher level APIs for service discovery and serial IO simulation, • lower-level protocols for packet segmentation and reassembly, • protocol multiplexing and QoS
Bluetooth Protocol Stack Application Java API for Bluetooth wireless technology (JSR-082) WAP UDP/TCP IP PPP Bluetooth Host Controller Stack (software) OBEX Service discovery protocol (SDP) RFCOMM (serial port emulation) Logical link control & Adaptation Protocol (L2CAP) Host controller interface (HCI) Host Controller Interface Firmware Link Manager protocol (LMP) Bluetooth Host Controller Firmware + Hardware Baseband Link Controller (LC) Bluetooth Radio
Typical application Scenarios • Bluetooth application can be either server or client • Peer-peer exposing both client and server functionality • Application need not be in Java • However J2ME-based devices can avail of the bluetooth API. • Though we discuss Java-based API here, MS Vista has a WS based API for devices.
Application activities java.sun.com Bluetooth intro
Bluetooth clients • DiscoveryAgent support discovery of services and devices. • Clients wanting to be notified should implement and register Discovery Listener interface.
Service/device discovery A similar sequence can be assumed for device Discovery. Services have a UUID There is LocalDevice And RemoteDevice APIs to control the devices.
Service discovery (contd.) • Once the local device has discovered at least one remote device, it can begin to search for available services – • Bluetooth applications it can use to accomplish useful tasks. • Because service discovery is much like device discovery, DiscoveryAgent also provides methods to discover services on a Bluetooth server device, and to initiate service-discovery transactions
Serial Port • The RFCOMM protocol, which is layered over the L2CAP protocol, emulates an RS-232 serial connection. • The Serial Port Profile (SPP) eases communication between Bluetooth devices by providing a stream-based interface to the RFCOMM protocol. Some capabilities and limitations to note: • Two devices can share only one RFCOMM session at a time. • Up to 60 logical serial connections can be multiplexed over this session. • A single Bluetooth device can have at most 30 active RFCOMM services. • A device can support only one client connection to any given service at a time.
Interoperable Profiles • Profiles have been developed to manage cross-platform interoperability among different manufacturer’s products. • They describe how implementations of user models have to be accomplished. • Lets examine the bluetooth profile as provided by palowireless.
bits: 72 18 18 18 0 - 2744 Access code Header Headercopy 2 Header Data for transmission copy 1 copy 3 bits: 3 1 1 1 4 8 Destination Flow Ack Seq Type Header checksum = ACL, SCO, Address within Piconet poll, null How does it work?Bluetooth frame structure Header SCO packets (e.g. for voice data) have a 240-bit payload containing 80 bits of data triplicated, filling exactly one timeslot.
Server operation • Construct a URL that indicates how to connect to the service, and store it in the service record • Make the service record available to the client • Accept a connection from the client • Send and receive data to and from the client • The URL placed in the service record may look something like: • btspp://102030405060740A1B1C1D1E100:5
Client operation • To set up an RFCOMM connection to a server the client must: • Initiate a service discovery to retrieve the service record • Construct a connection URL using the service record • Open a connection to the server • Send and receive data to and from the server
Uses of Bluetooth • Some are from Accenture: • Wiring the wired • Locating lost items • Activity sensing + auditing • Environmental control • Simple transactions • Medical applications are unlimited