Mapping Salutation to Bluetooth 4 Overview 4 Bluetooth Summary 4 Salutation Architecture Summary 4...

35
Mapping Salutation to Bluetooth Overview Bluetooth Summary Salutation Architecture Summary Mapping Bluetooth SDP to Salutation APIs Mapping Bluetooth SDP to Jini APIs Conclusion

Transcript of Mapping Salutation to Bluetooth 4 Overview 4 Bluetooth Summary 4 Salutation Architecture Summary 4...

Page 1: Mapping Salutation to Bluetooth 4 Overview 4 Bluetooth Summary 4 Salutation Architecture Summary 4 Mapping Bluetooth SDP to Salutation APIs 4 Mapping Bluetooth.

Mapping Salutation to Bluetooth

Overview Bluetooth Summary Salutation Architecture Summary Mapping Bluetooth SDP to Salutation APIs Mapping Bluetooth SDP to Jini APIs Conclusion

Page 2: Mapping Salutation to Bluetooth 4 Overview 4 Bluetooth Summary 4 Salutation Architecture Summary 4 Mapping Bluetooth SDP to Salutation APIs 4 Mapping Bluetooth.

Overview

Bluetooth

SDP(service discovery protocol)

Service discovery profile

Salutation

capability to advertise

capability to search other applications

Page 3: Mapping Salutation to Bluetooth 4 Overview 4 Bluetooth Summary 4 Salutation Architecture Summary 4 Mapping Bluetooth SDP to Salutation APIs 4 Mapping Bluetooth.

Bluetooth Summary

Bluetooth Service Discovery Protocol

Bluetooth Profile Stack

Bluetooth Service Primitives

Page 4: Mapping Salutation to Bluetooth 4 Overview 4 Bluetooth Summary 4 Salutation Architecture Summary 4 Mapping Bluetooth SDP to Salutation APIs 4 Mapping Bluetooth.

Bluetooth SDP Structure

SrvDscApp RemSrvApp

BT_module

SDP SDP

Service

record DB

L2CAP layerCO

L2CAP layer

CO

LM LM

BasebandACL

BasebandACL

LocDev RemDev

Page 5: Mapping Salutation to Bluetooth 4 Overview 4 Bluetooth Summary 4 Salutation Architecture Summary 4 Mapping Bluetooth SDP to Salutation APIs 4 Mapping Bluetooth.

Bluetooth SDP features

An SDP block generates and receives Bluetooth SDP commands and responses from the lower layers of the Bluetooth stack

SDP involves communication between an SDP server located on RemDev and and SDP client located on LocDev

The server maintains a list of service records that describe the characteristics of services associated with the server

Page 6: Mapping Salutation to Bluetooth 4 Overview 4 Bluetooth Summary 4 Salutation Architecture Summary 4 Mapping Bluetooth SDP to Salutation APIs 4 Mapping Bluetooth.

Bluetooth SDP feature(cont.)

SDP uses a request/response model where each transaction consists of one request protocol data unit(PDU) and one response PDU.

ServiceSearch Transaction ServiceAttribute Transaction ServiceSearchAttribute Transaction Browsing for Services(use BrowseGroupList attribute)

Page 7: Mapping Salutation to Bluetooth 4 Overview 4 Bluetooth Summary 4 Salutation Architecture Summary 4 Mapping Bluetooth SDP to Salutation APIs 4 Mapping Bluetooth.

Bluetooth Profile Stack

Service discovery user application(SrvDscApp) in a local device(LocDev) to sedn service inquiries and receive service inquire responses fromother remote devices(RemDev)

SDP uses the connection-oriented(CO) transport service in L2CAP, which in turn uses the baseband asynchronous connectionless(ACL) links to carry ultimately the SDP PDUs over the air

Page 8: Mapping Salutation to Bluetooth 4 Overview 4 Bluetooth Summary 4 Salutation Architecture Summary 4 Mapping Bluetooth SDP to Salutation APIs 4 Mapping Bluetooth.

Bluetooth Service Primitives

serviceBrowse serviceSearch enumerateRemDev getRemDevName terminatePrimitive

Page 9: Mapping Salutation to Bluetooth 4 Overview 4 Bluetooth Summary 4 Salutation Architecture Summary 4 Mapping Bluetooth SDP to Salutation APIs 4 Mapping Bluetooth.

Salutation Architecture Summary

Salutation Archituture Model Salutation features Service Broker Tasks Salutation Manager API Salutation Discovery Flow

Page 10: Mapping Salutation to Bluetooth 4 Overview 4 Bluetooth Summary 4 Salutation Architecture Summary 4 Mapping Bluetooth SDP to Salutation APIs 4 Mapping Bluetooth.

Salutation Architecture Model

Service Client Client Service Client

SLM-API

SLMTM

Salutation ManagerTM TM

SLMTM

Xport XportTransport Transport

Page 11: Mapping Salutation to Bluetooth 4 Overview 4 Bluetooth Summary 4 Salutation Architecture Summary 4 Mapping Bluetooth SDP to Salutation APIs 4 Mapping Bluetooth.

Salutation features

Salutation Manager(SLM) functions as a service broker for applications, services and devices called a Networked Entitiy.

Service: register its capability with a Salutation Manager

Client: discovers Services and requests to use them through a Salutation Manager

Page 12: Mapping Salutation to Bluetooth 4 Overview 4 Bluetooth Summary 4 Salutation Architecture Summary 4 Mapping Bluetooth SDP to Salutation APIs 4 Mapping Bluetooth.

Salutation features (cont.)

SLM-API: Salutation Manager Application Program Interface

Salutation Manger Protocol TM: Transport Manager A Salutation Manager binds to a specific transport through

a TM unique to that transport class

Page 13: Mapping Salutation to Bluetooth 4 Overview 4 Bluetooth Summary 4 Salutation Architecture Summary 4 Mapping Bluetooth SDP to Salutation APIs 4 Mapping Bluetooth.

Service Broker Task

Salutation Manger provides four basic tasks to perform as service broker

Service Registry Service Discovery Service Availability Service Session Manager

Page 14: Mapping Salutation to Bluetooth 4 Overview 4 Bluetooth Summary 4 Salutation Architecture Summary 4 Mapping Bluetooth SDP to Salutation APIs 4 Mapping Bluetooth.

Service Broker Tasks(cont.)

Service Registry Salutation Manager contains a Registry to hold

information about Services. Registry stores information about Services

connected to the Salutation manager. Registry many optionally store information about

Services that are registed in other Salutation Managers.

Page 15: Mapping Salutation to Bluetooth 4 Overview 4 Bluetooth Summary 4 Salutation Architecture Summary 4 Mapping Bluetooth SDP to Salutation APIs 4 Mapping Bluetooth.

Service Broker Tasks(cont.)

Service Discovery Salutation manager can discover other remote

Salutation Mangers and determine the Services registered there.

Compare a required Services type(s), as specified by the local Salutation Manager, with the Service type(s) available on a remote Salutation Manager.

Page 16: Mapping Salutation to Bluetooth 4 Overview 4 Bluetooth Summary 4 Salutation Architecture Summary 4 Mapping Bluetooth SDP to Salutation APIs 4 Mapping Bluetooth.

Salutation Manger API

Service Registration slmRegisterCapability() slmUnregisterCapability()

Service Discovery slmSearchCapability() slmQueryCapability()

Page 17: Mapping Salutation to Bluetooth 4 Overview 4 Bluetooth Summary 4 Salutation Architecture Summary 4 Mapping Bluetooth SDP to Salutation APIs 4 Mapping Bluetooth.

Salutation Discovery Flow

Client

Client-sideSalutation manger

Salutation Protocol

Service-sideSalutation Manager

Function Unit

Page 18: Mapping Salutation to Bluetooth 4 Overview 4 Bluetooth Summary 4 Salutation Architecture Summary 4 Mapping Bluetooth SDP to Salutation APIs 4 Mapping Bluetooth.

Mapping Bluetooth SDP to Salutation APIs

Assume that the Salutation APIs are implemented on top of the Bluetooth service discovery.

Mapping will show how SDP attributes can be passed in the Salutation APIs

Assume that the Salutation Manager can be mapped directly to the SDP protocol using a Bluetooth specific Transport Manager

SDP is replaced by the Salutation Manager, with the Salutation Manager mapping its functionality to SDP protocol

Page 19: Mapping Salutation to Bluetooth 4 Overview 4 Bluetooth Summary 4 Salutation Architecture Summary 4 Mapping Bluetooth SDP to Salutation APIs 4 Mapping Bluetooth.

General Mapping Assumptions

SDP is a service manager Service requests by LocDev are accessed

through Salutation slmSearchCapability() and slmQueryCapability()

slmRegisterCapability() and slmUnregisterCapability() APIs call will be mapped on the RemDev side to support dynamic registry of services

Page 20: Mapping Salutation to Bluetooth 4 Overview 4 Bluetooth Summary 4 Salutation Architecture Summary 4 Mapping Bluetooth SDP to Salutation APIs 4 Mapping Bluetooth.

Salutation API mapping

Configuration

Model Diagram

Mapping

Page 21: Mapping Salutation to Bluetooth 4 Overview 4 Bluetooth Summary 4 Salutation Architecture Summary 4 Mapping Bluetooth SDP to Salutation APIs 4 Mapping Bluetooth.

Configuration

Use of the salutation APIs as the entry point to SDP.

No other changes have been made to the Bluetooth model

Page 22: Mapping Salutation to Bluetooth 4 Overview 4 Bluetooth Summary 4 Salutation Architecture Summary 4 Mapping Bluetooth SDP to Salutation APIs 4 Mapping Bluetooth.

Model Diagram

SrvDscApp RemSrvApp

BT_module

SDP SDP

L2CAP layerCO

L2CAP layer

CO

LM LM

BasebandACL

BasebandACL

LocDev RemDev

Service

record DB

Salutation APIs

Page 23: Mapping Salutation to Bluetooth 4 Overview 4 Bluetooth Summary 4 Salutation Architecture Summary 4 Mapping Bluetooth SDP to Salutation APIs 4 Mapping Bluetooth.

Mapping

This mapping uses the functional definition of the salutation APIs, but not the parameter values.

The API becomes a vehicle for passing the SDP parameters to the Bluetooth SDP Manager

The SLM-ID and Service Description Records parameters of the Salutation APIs are replaced with the appropriate SDP parameter values

parameters defined by SDP primitives are passed without modification to Bluetooth SDP manager via the Salutation API format

Page 24: Mapping Salutation to Bluetooth 4 Overview 4 Bluetooth Summary 4 Salutation Architecture Summary 4 Mapping Bluetooth SDP to Salutation APIs 4 Mapping Bluetooth.

Mapping (cont.)

ServiceBrowse getRemDevName

SlmqueryCapabilityInput Parameters

(

LIST(RemDev);

LIST(RemDevRelation);

LIST(browseGroup);

stopRule

)

Output Parameter

(

List of Device Names

)

Page 25: Mapping Salutation to Bluetooth 4 Overview 4 Bluetooth Summary 4 Salutation Architecture Summary 4 Mapping Bluetooth SDP to Salutation APIs 4 Mapping Bluetooth.

Mapping(cont.)

ServiceSearch getRemDevName

SlmQueryCapability()

Input Parameters

(

LIST(RemDev);

LIST(RemDevRelation);

LIST(searchPath, attributeList);

stopRule

)

Output Parameter

(

List of Device Names

)

Page 26: Mapping Salutation to Bluetooth 4 Overview 4 Bluetooth Summary 4 Salutation Architecture Summary 4 Mapping Bluetooth SDP to Salutation APIs 4 Mapping Bluetooth.

Salutation Manager Mapping

Configuration

Model Diagram

Mapping

Page 27: Mapping Salutation to Bluetooth 4 Overview 4 Bluetooth Summary 4 Salutation Architecture Summary 4 Mapping Bluetooth SDP to Salutation APIs 4 Mapping Bluetooth.

Configuration

Use of the Salutation Manager(SLM) in both LocDev and RemDev to provide the service the management functionality of SDP

SLM generates appropriate SDP protocol through its TM, handling it off to L2CAP layer

Page 28: Mapping Salutation to Bluetooth 4 Overview 4 Bluetooth Summary 4 Salutation Architecture Summary 4 Mapping Bluetooth SDP to Salutation APIs 4 Mapping Bluetooth.

Model Diagram

SrvDscApp RemSrvApp

BT_moduleSLMTM

SLMTM

Service

record DB

L2CAP layerCO

L2CAP layer

CO

LM LM

BasebandACL

BasebandACL

LocDev RemDev

Salutation APIs

Page 29: Mapping Salutation to Bluetooth 4 Overview 4 Bluetooth Summary 4 Salutation Architecture Summary 4 Mapping Bluetooth SDP to Salutation APIs 4 Mapping Bluetooth.

Mapping

LocDev and RemDev use the Salutation APIs to access their respective Salutation Managers. Bluetooth Service Discovery Protocol flows between the LocDev and RemDev Salutation Managers

Two transformations slmSearchCapability() <--> SDP_ServiceSearch slmQueryCapability() <--> SDP_ServiceSearch &

SDP_ServiceAttribute

Page 30: Mapping Salutation to Bluetooth 4 Overview 4 Bluetooth Summary 4 Salutation Architecture Summary 4 Mapping Bluetooth SDP to Salutation APIs 4 Mapping Bluetooth.

Capability Search

Salutation Manager maps the Functional Unit Description Record to a ServiceSearchPattern attribute

Salutation Manager makes an L2CAP connection with a Bluetooth RemDev and sends the Service SearchPattern to the RemDev in a SDP_ServiceSearchRequest

RemDev Salutation Manager returns a SDP_ServiceSearh Response to the LocDec Salutation Manger if there exists registered services with the ServiceSearchPattern

When all RemDevs have been contacted, the LocDev SM builds a list of device Ids returning positive reponses and return them as SLM-IDs

Page 31: Mapping Salutation to Bluetooth 4 Overview 4 Bluetooth Summary 4 Salutation Architecture Summary 4 Mapping Bluetooth SDP to Salutation APIs 4 Mapping Bluetooth.

Capability Qeury

LocDev SM maps the Service Description Record to a ServiceSearchPattern. SM then makes an L2CAP connection with the Bluetooth RemDev represented by the SLM-ID passed, and sends the SeviceSearchPattern to the RemDev in a SDP_ServiceSearchRequest

RemDev SM sent back to LocDev SM a list of service record handles for the registered services which matches the ServiceSearchPattern

Page 32: Mapping Salutation to Bluetooth 4 Overview 4 Bluetooth Summary 4 Salutation Architecture Summary 4 Mapping Bluetooth SDP to Salutation APIs 4 Mapping Bluetooth.

Capability Query (cont.)

LocDev SM selects one of the service handles returned, maps the Service Description Record to an AttributeIDList attribute and sends them to the RemDev in a SDP_ServiceAttributeRequest

RemDev returns a SDP_ServiceAttributeResponse containing an AttributeList identifying a list of attributes and their values for the requested service record

continue doing this until all the record handles been done

Page 33: Mapping Salutation to Bluetooth 4 Overview 4 Bluetooth Summary 4 Salutation Architecture Summary 4 Mapping Bluetooth SDP to Salutation APIs 4 Mapping Bluetooth.

Mapping Bluetooth SDP to Jini APIs

Assume that the Jini APIs are implemented on top of the Bluetooth service discovery.

Mapping will show how SDP attributes can be passed in the Jini APIs

Assume that the JLS can be mapped directly to the SDP protocol using a Bluetooth compatible transport layer(configure TCP/IP over bluetooth)

SDP is replaced by the JLS, with the JLS mapping its functionality to SDP protocol

Page 34: Mapping Salutation to Bluetooth 4 Overview 4 Bluetooth Summary 4 Salutation Architecture Summary 4 Mapping Bluetooth SDP to Salutation APIs 4 Mapping Bluetooth.

Conclusion from paper

Page 35: Mapping Salutation to Bluetooth 4 Overview 4 Bluetooth Summary 4 Salutation Architecture Summary 4 Mapping Bluetooth SDP to Salutation APIs 4 Mapping Bluetooth.

Personal Conclusion

Mapping the JLS functionality to SDP protocol will be more expecting