MobiCom 2000
Tutorial
Service Discovery and Device Cooperation
MobiCom 2000
Tutorial
Service Discovery and Device Cooperation
Tutorial
Overview
Introduction
to Mobile Computing
Ubiquitous,
Mobile, Nomadic
What does
Mobile Computing Offer?
Offerings (2)
A One Slide
Case Study
The Toys
Portable
Information Appliances
Case
Study: Palm VII
Characteristics
of Mobile Devices
Characteristics
(2)
Characteristics
(3)
Other Mobile
Computing Challenges
Mobile
Computing Challenges
Challenges (2)
Proxies, Proxies
Adaptation
Challenges (3)
Service
Discovery
Why?
Service
Discovery: Scenarios
Dynamic
Discovery of Devices
Dynamic System
Configuration
Service
Discovery: Capabilities
Service
Discovery: Components
Who?
A Simple
Scheme: DNS SRV
DNS SRV RR
Details (from RFC)
DNS SRV RFC
Details (2)
DNS SRV
Example
DNS SRV
Limitations
Bluetooth:
Goals
Piconets /
Scatternets
Who is
Bluetooth?
The Cordless
Desktop
Goodbye
Cables…Hello Cooperation
“Send” and
Forget...
"Last
hop" Network Access
Bluetooth
Kills Trees...
Bluetooth vs.
Bluetooth SDP
Bluetooth
Hardware
Bluetooth
Hardware
Aside:
Bluetooth vs. IrDA
Bluetooth
Protocol Stack (!)
Bluetooth
Device Connection States
Bluetooth
States
Bluetooth SDP:
What?
Bluetooth SDP
Bluetooth SDP
Bluetooth SDP:
NOT
SDP: Service
Classes
SDP: Service Records
SDP: Service
Attributes
SDP Service
Primitives
A Brief Look
at Security Issues
Bluetooth
Security
Bluetooth
Security (2)
Bluetooth
Security (3)
Bluetooth:
Concerns
Jini: Goals
Jini
Requirements
Aside:
Multiple Devices per JVM
Jini
Requirements (2)
Jini
Technology
Jini
Infrastructure Initialization
Jini Entities
What is a Jini
Service?
Jini Lookup
Services
Lookup Service
Discovery
Finding a
Lookup Server: Protocols
Jini:
Multicast Request Protocol
Jini:
Multicast Request Protocol
Jini:
Multicast Request Protocol
Jini:
Multicast Request Protocol
Jini:
Multicast Request Protocol
Jini:
Multicast Request Protocol
Jini: Unicast
Discovery Protocol
Unicast
Discovery: LookupLocator
Jini:
Multicast Announcement Protocol
What Service
Do I Want?
ServiceRegistrar:
Remote Control for Lookup Server
Registration: ServiceItem
Choosing
Services: ServiceTemplate
Globally
Unique Service Identifiers!
Scope of
Lookup Discovery Protocols
Other Jini
Stuff
Jini Security
Jini Security
(2)
Java Security
Manager
Even with the
Security Manager..
Jini: Concerns
Jini: Simple Example
SLP: Service
Location Protocol
SLP: Agent
Duties
SLP: Goals
SLP:
Discovering DAs
Service
Templates
SLP
Advertisement/Queries
Some of the
SLP Message Types
SLP Schematic
(From Whitepaper)
SLP: Reducing
Traffic
SLP: Security
Microsoft
Offerings
Microsoft:
UPnP
UPnP: Device
Model
UPnP Device
Model Example
UPnP: Six Steps
Addressing:
AutoIP
AutoIP
Discovery:
SSDP
SSDP in Action
SSDP Service
Announcement
SSDP Response:
The Details…
UPnP
Description Documents
Description
Document, Cont.
UPnP: Control
UPnP: Events
(GENA)
UPnP:
Presentation
UPnP Security
SLP vs. SSDP
UPnP vs. Jini
UPnP: Concerns
Salutation
Consortium
Salutation
Overview
Salutation:
Architecture
Salutation:
Functional Units
[FAX]
[DOC]
Searching for
Services
Salutation
Architecture
Salutation
API: Quick Peek
Salutation
Lite
Salutation
Security
Salutation:
Concerns
Interoperability
Jini ßŕ SLP Bridge
Jini ßŕ SLP Bridge (2)
Final Thoughts
Useful
References
Useful
References (2)
Useful
References (3)
Useful
References (4)
Useful
References (5)