Ubiquitous Networking - PowerPoint PPT Presentation

1 / 106
About This Presentation
Title:

Ubiquitous Networking

Description:

Human will be surrounded by a various computing devices. ... XML based registry for business; White pages, Yellow pages, Green pages ... – PowerPoint PPT presentation

Number of Views:1866
Avg rating:3.0/5.0
Slides: 107
Provided by: youngh5
Category:

less

Transcript and Presenter's Notes

Title: Ubiquitous Networking


1
Ubiquitous Networking
  • Lecture 9 Service Discovery
  • Prof. Younghee Lee

2
Why service discovery?
  • Human will be surrounded by a various computing
    devices.
  • Tiny sensors, PDA, PC, CP, notebook, server
  • Extreme complexity to manage those devices
  • Zero-administration, Zero-configuration
  • Need to facilitate interaction between the
    computer
  • Goal of Service discovery
  • Originally, to lower the burden of system
    configuration
  • Plug and play or zero configuration
  • In more dynamic or ad-hoc environments, service
    discovery is a necessity.

3
Service Discovery
  • What is service discovery?
  • A protocol which enables users to discover the
    most appropriate services to the given context by
    automatically detecting the services available in
    the network.
  • Components and issues
  • Directory repository
  • Directory structurization
  • Service description and matching
  • Semantic representation and matching
  • Query and service announcement
  • Semantic routing

4
Why service discovery?
  • Scenario 1
  • Mr. Sue visits ICU
  • He searches the Web and finds an on-line Map
    using his PDA.
  • But its too small to view on his PDA
  • PDA locates the printers
  • Mr. Sue (or system) picks up a closest printer
    among the public printers that are allowed to be
    used by the guests
  • PDA requests printing service (without having a
    driver for the printer) without Mr. Sues
    intervention
  • We need to find appropriate services
  • Printing service, Wireless connection service and
    Location information service.
  • Service discovery system will do that with your
    minimum intervention

5
Pervasive Service Discovery vs Web service
discovery
  • Web Service Discovery
  • No physical location limitation
  • Focuses only on interoperation among applications
  • Interoperability through standards such as WSDL
    and XML
  • Universal Description, Discovery, and
    Integration(UDDI)
  • XML based registry for business White pages,
    Yellow pages, Green pages
  • The discovery and configuration process
    analysts, programmers, administrators
  • Registry and data structure mainly for EC. too
    specific for Pervasive computing service
  • Pervasive Service Discovery
  • Ambient Services Discovery Local
  • Focuses also on both among applications and
    people
  • Integration with people and their ambient
    environments.

6
Pervasive Service Discovery
  • Integration with People
  • Integration of computing devices with people
  • How do we protect personal privacy?
  • Personal information persons presence, even
    health status from wearable medical device,
    users intention..
  • Privacy vs. Trust need personal information for
    trust
  • How much prior knowledge a user or service
    provider must have for service discovery?
  • Ambiguity print service, printing service,
    standard service name?
  • Integration with Environments
  • How can we precisely define the ambient
    environment ?
  • Location, current user tasks,
  • Visitors view differs from hosts view
  • Heterogeneity
  • H/W, S/W platform, network protocols common
    platform?
  • Dynamic conditions
  • Time based approaches soft state and leased
    based approaches

7
Service Discovery
  • Research Trend

Context-aware Discovery - Context-based Ranking
Pervasiveness
Semantic Discovery -Semantic representation
Matching
Discovery in Ad-hoc/sensor Networks - Mobility,
Minimizing Cost
Discovery in Large-scale Networks - Structured
architecture (e.g. DHT)
Discovery in LAN -Jini, UPnP, SLP, Salutation
Static Directory Service -X.500, LDAP
Time
8
Service Discovery
  • Standards / Specifications
  • Discovery Protocols
  • Jini, UPnP, SLP, Salutation
  • UDDI
  • Web Service Dynamic Discovery (WS-Discovery)
  • complementary to UDDI which is focusing on
    dealing with devices and systems that are not
    always connected to the network (by MS, Intel,
    Canon )
  • WSMX (Web Services Execution Environment)
  • an execution environment which enables discovery,
    selection, mediation, invocation and
    interoperation of the Semantic Web Services (WSMX
    working group)
  • Includes WSMO and WSML
  • Service Description
  • Web Service Description Language (WSDL)
  • SOAP Service Description Language (SSDL)
  • Web Service Modeling Language (WSML)
  • Ontology architecture for Semantic Description
  • DAML-S, OWL-S
  • Web Services Modeling Ontology (WSMO)

9
Service Discovery
  • Challenges
  • Existing researches have considered the
    functionality and performance issues in isolation
  • They should be considered at the same time

Service Discovery
require
require
Rich Functionality
Good Performance
Semantics-based matching
Heterogeneous networks
Scalability
Context-based ranking
Scalable directory management and message
forwarding
Need for adaptation to the characteristics of
underlying network
The best service can be different according to
the given context
Users need not to have pre-knowledge about
services to specify the desired services
10
Components
  • Announcement
  • Register
  • Multicast/broadcast
  • Query/Service Access
  • Syntax
  • Ontology
  • Programming language dependency
  • Directory repository
  • Centralized
  • Distributed
  • Hierarchical
  • Structured P2P
  • Ad hoc
  • Service description
  • Attribute/value
  • Tree-like
  • XML
  • Ontology (DAML, OWL)

11
Service and attribute naming
  • Service Naming
  • printing, print
  • Naming standard to avoid the naming conflict
  • Bluetooth maps service names to 128-bit number
  • SLP service template define format for name
    attribute
  • Apples Rendezvous (Bonjour) based on Internets
    DNS
  • When a mobile client moves to another service
    directory domain, it need to understand different
    service protocol and vocabularies.
  • Solution?
  • How to support new services?
  • Client should know new service name and then
    learn the new term.
  • Its easy to add new service name to a service
    protocol standard.
  • Attribute naming
  • Standard naming convention
  • More precise query requirements, fewer selected
    services
  • Wild card searches
  • Let clients examine all the available services

12
Ontology Definition
the study of being or existence. It seeks to
describe or posit the basic categories and
relationships of being or existence to define
entities and types of entities within its
framework. existence statements of first-order
logic of the form "for some x Fx".
conceptual model of a domain (ontological theory)
unambiguous terminology definitions
  • formal, explicit specification of a shared
    conceptualization

commonly accepted understanding
machine-readability with computational semantics
13
Ontology Example
name
email
  • Concept
  • conceptual entity of the domain
  • Property
  • attribute describing a concept
  • Relation
  • relationship between concepts or properties
  • Axiom
  • coherency description between Concepts /
    Properties / Relations via logical expressions

Person
matr.-nr.
research field
isA hierarchy (taxonomy)
Student
Professor
attends
holds
Lecture
topic
lecture nr.
holds(Professor, Lecture) Lecture.topic
Professor.researchField
14
DAML/OWL Language
  • OWL Web Ontology Language
  • a revision of the DAMLOIL web ontology language
  • Extends vocabulary of
  • XML and RDF/S
  • Rich ontology representation language
  • Language features chosen for efficient
    implementations

Web Languages RDF/S XML
DAML-ONT
DAMLOIL OWL
OIL
Formal Foundations Description Logics
Frame Systems
FACT, CLASSIC, DLP,
15
Do I have to build the ontologies myself? Maybe
not.Ontologies (suitable for reuse) are exploding
  • Upper Level Ontologies
  • UNSPSC, SUO, OpenCyc, OpenDirectory, TAP,
  • Specialized Ontologies
  • UMLS, SNOMED, GO, CIA World Fact book, DAML-S,
    even vcs Ontology Libraries
  • http//www.daml.org/ontologies/
  • http//www.ksl.stanford.edu/ontolingua
  • Advisory bodies
  • Semantic Web Science Foundation, NIST,
    Ontology.org,

16
Ontologies in most areas including the
environment
  • Quick web search yielded
  • Semantic Web for Earth and Environmental
    Terminology JPL. http//oceanesip.jpl.nasa.gov/sw
    eet
  • National Institute for environmental eScience
    Cambridge - http//www.niees.ac.uk/
  • Gene Ontology dynamic controlled vocabulary
    that can be applied to all organisms
    http//www.geneontology.org/
  • Design and Creation of Ontologies for
    Environmental Information Retrieval- Telecordia -
    http//sern.ucalgary.ca/KSI/KAW/KAW99/papers/Kashy
    ap1/kashyap.pdf
  • Ontologies of environmental applications for a
    digital library of scientific collections -
    http//dlforum.external.forth.gr8080/papers/Envir
    oInfo.pdf
  • Waste water ontology decision support for
    wastewater treatment processes -
    http//citeseer.nj.nec.com/ceccaroni00wawo.html
  • ... Many others

17
CoBrA An Ontology for Context Aware Pervasive
Computing(03)
  • The CoBrA Ontology

Key top-level ontology of CoBrA
18
Tools
  • Tools developing http//www.daml.org/tools/
  • Annotation Ontology Translation
  • Browser Persistence
  • Crawler Query Tools
  • Editor RDMS Mapping
  • Graph Visualizer Report Generation
  • Transformation Search
  • Validator Ontology Analyzer
  • Importer Ontology Editor
  • Inference Engine Merging
  • Many are in research labs, but companies
    emerging and lasting
  • Network Inference, Sandpiper, Ontoprise,
    AppliedSemantics, Sentius, .

19
Service Design
  • Service Invocation
  • RPC salutation
  • Downloadable Java Code Jini
  • Need JVM not suitable for resource limited
    device
  • XML, SOAP, HTTP UPnP
  • Service status Inquiry
  • Polling
  • Service event notification implement this
  • Register with the service. Service will notify
    clients who have shown interest

20
Directory Design
  • Centralized directories
  • It stores all the services information
  • Bottleneck, SPF, inefficient in large service
    discovery system
  • Distributed directories
  • Store services information within their own
    domain
  • A service lookup may go through several
    directories.
  • Number of copies
  • Single copy
  • Multiple copies Jini, SLP
  • More reliable
  • INS fully replicated copy only go to the
    directory where a client attached
  • Consistency
  • Flat vs. Hierarchical Directory structure
  • DNS
  • Difficult to make directories both scalable and
    efficient
  • DHT

21
Service announcement and lookup
  • Query/ announcement, non-directory-based/directory
    -based
  • Q/A also known as active/passive or pull/push
  • Unicast
  • Unicast message to directory
  • Anycast
  • INS overlay network anycast Application layer
    anycast a set of similar service - select a
    service with the best service weight
  • Multicast
  • Clients, service, and directories use multicast
    address for announcement and query
  • network address need not to be configured or
    known ahead of time
  • Limited multicast address at the network layer
  • Not all the routers have multicast capabilities
  • Broadcast
  • Bluetooth, salutation

22
Directory Design
  • Service state in Directories
  • Soft state most protocol
  • Will not be valid after expiration (service
    announcement include life span)
  • No need to monitor service state even when
    service is down.
  • need regular service announcement
  • Hard state
  • Keep until it is told to change
  • Few service announcements and housekeeping jobs
  • Difficult to guarantee that all service
    information is up to date
  • Service will go down without notification
    network communication error
  • Solution? polling

23
Directory Design
  • Garbage collection
  • Removing network state associated with deceased
    clients and services
  • Leasing
  • A lease is assigned for each registration
  • The service must send renewal at a specified
    interval
  • Failure to send a renewal results that the
    service catalogue (e.g. DA) purges all
    information related to the service from the list
    of available services
  • Advertised expiration
  • Attach timeouts to service advertisement
    (soft-state)
  • Directory address
  • DNS listen on well known ports
  • Moving to different networks directory address?
    If no DHCP?
  • Multicast address Directory listen to and talk
    on a multicast address SLP, Secure Service
    Discovery Service (SSDS)
  • Multiple response? client pick one. Good for
    fault tolerance

24
Service selection
  • User vs. Protocol Selection
  • To find services for users efficiently and
    accurately
  • Protocol selection
  • Little user involvement
  • No reflect the actual users will
  • User selection
  • Tedious for a user to examine many printers and
    compare them
  • Balance?
  • Best match
  • Matches the best service based on application
    defined metrics (Intention) INS
  • Personalized service
  • Context-awareness
  • Location, connection, persons situation
  • Scope-awareness
  • To support a large amount of services, defining
    and grouping services in scope location (INS
    with Cricket), optional attribute for location
    (Jini)
  • Administrative domain information multiple
    hierarchy directory
  • Yellow pages, White pages service information
    in non-leaf directory hashed (SSDS)
  • QoS-awareness
  • Better service less loaded services or better
    resource price services

25
Security and Privacy
  • User authentication, service authorization
  • Servers user information and key ad hoc
    environment?
  • Confidentiality, Integrity
  • Communication btw service discovery components
  • Attack from malicious users message encryption
    and authentication code
  • Non-repudiation, availability, and user privacy
  • Digital signature for non-repudiation
  • Overhead of administration huge in dynamic
    environment

26
Service Integration
  • Service composition
  • Simple service integration chains services
    together
  • Complex service integration interact with
    multiple servers
  • Static service integration
  • Dynamic service integration more difficult
  • May replace failed services or add in more
    services
  • Context aware service composition
  • Fault tolerance and failure Recovery

27
Interoperability
  • Bidirectional bridging of UPnP and Jini
  • Salutation mapping the Salutation architecture
    for service discovery to Bluetooth SDP
  • Common API for each service discovery middleware

28
Well-known protocols
  • Jini
  • UPnP
  • SLP
  • Bluetooth SDP
  • Salutation

29
Well-known protocols
30
Well-known protocols
31
Jini - introduction
  • Java-based and distributed network-connecting
    technology by Sun Microsystems
  • Network Plug-And-Work
  • Enable spontaneous networking
  • Promote service-based architecture
  • A federation of clients and services
  • Entities in federation provide and/or obtain
    services to/from other entities
  • All developments in Java
  • Code mobility
  • Relies heavily on
  • Object serialization
  • RMI Remote Method Invocation

32
JINI Discovery Related Services
  • Lookup service
  • Holds information regarding available services
  • Query of lookup service by Jini client
  • Match request
  • Download object providing service from lookup
    service
  • Registration of a Jini client or Jini service
    with lookup service
  • Send message to well-known IP multicast address,
    identical to all Jini instances
  • Limit multicast to LAN using time-to-live
    attribute
  • Use of leases that need to be renewed
    periodically for registering Jini services

33
Jini - operation
34
JINI Discovery Scenario
35
Jini evaluation
  • Pros
  • Plug Work ? Simple System
  • Code Mobility ? decoupling stub and skeleton
  • Extensibility to the legacy IP based networks
  • Compatibility with Java based products
  • Cons
  • Requires adoption of Java
  • In general, device must be capable of supporting
    a Java VM, and all the core Java 2 classes
  • Raises the computational bar slightly higher than
    other approaches
  • Security problem due to the mobile code
  • High dependence on Lookup Server

36
UPnP
  • Service advertisement and discovery architecture
    supported by UPnP Forum
  • Peer-to-Peer Model
  • Based on current Internet protocols and
    technologies
  • XML/HTTP, RPC
  • No mobile codeinstead, standardized protocols
    and service descriptions
  • XML-based service descriptions
  • UPnP V1.0 Spec in 2000

37
UPnP Six Steps
  • Addressing ? AutoIP
  • For the IP address impaired
  • Discovery ? SSDP, Simple Service Discovery
    Protocol
  • Discovery and advertisement
  • multicast discovery support
  • XML UDP unicast and multicast packets to
    advertise their services
  • Description ? (HTTP)
  • What are the characteristics of a service?, XML
  • Control ? SOAP
  • Making a service do its thing(s)
  • Eventing ? GENA, General Event Notification
    Architecture
  • Updates on interesting service state changes
  • Presentation ? (HTTP)
  • Device GUI

38
UPnP - Architecture
39
UPnP evaluation
  • Lighter weight than Jini
  • Some serious limitations
  • No directory agents
  • No security architecture
  • Limited search capabilities
  • only with service name or type
  • How much community involvement?
  • Widespread adoption possibility

40
Service Location Protocol (SLP)
  • IETF standard protocol for service discovery and
    advertisement
  • Designed solely for IP-based networks
  • Doesnt define the protocol used between the
    client and server

41
Service Location Protocol (SLP)
  • Consider the following example of a new employee
    setting up his workstation to use one of the
    department printers. Here's a dialog between this
    new employee (Newbie), and his coworker (Stan),
    who's been around for a while
  • Traditional Newbie "Hey Stan, the setup program
    is asking me for the name of our printer. What
    should I type in?"Stan "Which printer do you
    want?"Newbie "The big one by the copier."Stan
    "I've heard it doesn't work well with postscript
    applications. You'll have to use the one down the
    hall."Newbie "Ok. What should I type in."Stan
    "Actually, I don't know I use the one by the
    copier. You'll probably have to call the IS help
    desk."Newbie ...
  • With SLP A setup program uses SLP to display to
    the user the description (including location) of
    the printers that work with postscript. The user
    selects one that is close to his office. The SLP
    service returns all necessary addressing
    information directly to his device setup
    application.

42
SLP Entities
  • User Agents perform service discovery on behalf
    of client software
  • Service Agents advertise the location and
    attributes of services
  • Directory Agents aggregate service information
  • Service advertisement
  • Services are advertised using service URL IP
    address, port number and depending on the service
    type, path
  • Service templates description of the service
    attributes and service scheme associated with a
    particular service type

43
SLP Service Discovery
  • Standard Case
  • No- DA case

44
Salutation Introduction
  • The Salutation Architecture was invented to
  • Solve the problems of service discovery and
    utilization
  • Among broad set of appliances and equipments
  • In an environment of widespread connectivity and
    mobility
  • Find and Bind on a network
  • Devices
  • Applications
  • Services
  • Open Architecture
  • Independent of
  • Operating System
  • Network Protocol
  • Product Class

45
Salutation Architecture
  • The Salutation Manager (SM)
  • Middleware to isolate the developer from the
    protocol
  • Resource Manager for capability information
  • Service Broker for functional units
  • Registry,discovery, availability, session
    management
  • Transport Manager(TM)
  • allows separation with the underlying network

46
Salutation Manager
47
Salutation Functional Units
  • Functional Units
  • Abstract representation of the functions provided
    by applications, service or devices.
  • Client Functional Units
  • Service user
  • registers capability with the local SM
  • Service Functional Units
  • Service provider
  • Discover and request service use through a SM
  • Server Functional Unit may be on a remote entity
    or implemented locally

48
Salutation Proxy Service
  • A Client or Service Functional unit need not be
    implemented in an entity containing a Salutation
    Manager.
  • The Architecture provides for one
    Salutation-enabled entity to act as a proxy for
    Functional Units not supporting the Architecture.

49
Salutation Discovery Process
FUDRFunctional Unit Description Record
50
Salutation Evaluation
  • Unlike others, Salutation Architecture is
  • Non-proprietary
  • Royalty Free
  • Independent of
  • Programming language
  • Network protocol
  • Operating environment
  • Salutation has product shipping today
  • Salutation has no hidden agenda

51
More protocolsmSLP mesh-enhanced SLP
  • Fully-meshed peering DA architecture with one or
    more scopes in common
  • Reliability
  • Scalability
  • Backward Compatibility- extends DA Advertisement
    with a mesh-enhanced attribute

10 mSLP mesh enhanced SLP, ICCCN, 2000
52
More protocolsUDDI Universal Description,
Discovery and Integration
  • UDDI specifications and schemas used to build
    discovery services on the Internet web service
    discovery system
  • Provide consistent publishing interface
  • Allow programmatic discovery of services
  • Who Sun, IBM, Microsoft partnership

15 UDDI technical white paper, 2000
53
Service discoveries in ad-hoc networks
  • No central directory service
  • Limited use of network/device resources
  • Distributed
  • Main entities
  • Node acts as client server
  • Service announcement
  • Flooding How to reduce flooding traffic?
  • Periodically, delta announcement (Konark)
  • Slotted (DEAPSpace uses slottedperiodic)
  • Cache advertisements
  • TTL

54
Service discovery in ad hoc networks
  • Service description
  • What is described?
  • service name, type, attribute, keywords,
    properties and functions
  • Service hierarchy - tree like structure (Konark,
    GSD)
  • Interface format, e.g., function prototype.
  • How is it described and stored?
  • WSDL file (Konark)
  • Data structures similar to ASN.1 (DEAPSpace)
  • Encoder/decoder
  • Ontology OWL, DAMLOIL (GSD)
  • Access to the service
  • RPC
  • SOAP/HTTP (Konark)
  • Specific Interface, e.g., function prototype
  • Encoder/decoder (DEAPSpace)
  • Query formation
  • Path based or syntax based
  • Request routing
  • Policy based (Allia)

55
Service discovery in ad hoc network
56
Group based Service Discovery (GSD)
  • Pervasive computing environment
  • Comprised of handheld, wearable and embedded
    computers regular desktop clients and server
  • Customized information, services in their
    vicinity
  • Two important aspects of service discovery
  • Discovery architecture
  • Request-broadcast-based global broadcast scale
    poorly
  • Advertisement-based cache size increases with
    the number of service
  • propose group-based service discovery
  • Service matching mechanism
  • propose semantic matching using OWL

57
Service Discovery Protocol GSD
  • Service Advertisements and peer to peer caching
  • , Service-Group, Other-Group, Hop-Count,
    Lifetime, ADV_DIAMETER
  • ( Remember Routing Information Advertisement )

58
Service Discovery Protocol GSD
  • Service Advertisements and peer to peer caching
  • , Service-Group, Other-Group, Hop-Count,
    Lifetime, ADV_DIAMETER
  • G1 Other-Group in Fig 5 (b)

59
Service Discovery Protocol GSD
  • Request Routing
  • GSD selectively forwards the request to those
    nodes
  • When a node does not have enough information to
    selectively forward a request, it broadcasts the
    request to its neighboring nodes
  • (False forward) which case?

60
Service Discovery Protocol GSD
  • Reverse routing of service reply
  • Like AODV, DSDV
  • Service matching
  • Like DReggie
  • Adaptability
  • User control advertisement diameter, max.
    hop-count of discovery requests and advertisement
    frequency
  • Dynamic self-starting property

61
Semantic service discovery
  • Difficulties of Service Discovery
  • Different Resources
  • Computing Devices, Software Services, Information
    Sources
  • Representations, Capabilities, Usage
  • Distinct Environmental Characteristics
  • Preference, Permission, Context
  • Research Issues
  • Abstract Representations
  • Semantic Matching
  • Context-awareness
  • Use of semantic ontology
  • Inexact/exact querying
  • More powerful reasoning engines and AI tools
  • Enhancing current service location protocols

Find me the best Pizza service
62
Context vs. Semantics
  • Context
  • Any information that can be used to characterize
    the situation of entities (i.e. whether a person,
    place or object)
  • Identity, Location, Status (or Activity), Time
  • Semantics
  • Abstract notions which can be implicitly derived
    to identify the differences and correlations
    between objects/concepts
  • What is the semantics of Alarm?
  • Definition in dictionary
  • Sudden fear produced by awareness of danger
  • A noise warning of danger
  • A bell and etc. which sounds to warn of danger or
    to wake a person from sleep

63
An Infrastructure for Context-Awareness based on
First Order Logic(03)
  • The Context Model
  • The basic structure the context predicate
  • ContextType(,,)
  • Example context predicates
  • Location(chris, entering, room 3231)
  • Temperature(room 3231, , 98 F)
  • Sister(venus, serena)
  • StockQuote(msft, , 60)
  • PrinterStatus(srgalwl printer queue, is, empty)
  • Time(New York,
  • The structures of different context predicates
    are specified in an ontology.

64
Semantic service discovery
  • DReggie 8
  • Enhanced Jini lookup service to enables semantic
    service discovery of Jini enabled services.
  • Target application M-commerce
  • Two main concepts for service discovery
  • DAML based service ontology
  • service components and their some properties such
    as service name, capability, requirements.
  • Prolog reasoner for semantic discovery
  • Enhanced SDP in Bluetooth 10
  • Semantic service discovery in ad hoc network
  • Two main concepts for semantic matching
  • DAML based service ontology
  • Prolog-based XSB Reasoning engine
  • Limitation
  • Does not assume pervasive environment need
    components for evaluation of dynamic attributes
  • Ontology restriction describe only service

65
Ontologies in pervasive computing emviroment
  • Ontologies in CoBrA 18
  • Modeling the context in an intelligent meeting
    room environment.
  • Main ontologies
  • place related classes
  • agent related classes
  • agents location context related classes
  • agents activity context related classes.
  • Ontologies in GAIA 17
  • Describing various parts of the GAIA environment
  • entities - applications, services, devices, users
  • context information - locations, activities,
    weather information, and other information
  • Limitation
  • Define additional classes for representing
    relation among classes
  • Explosion of class definition in large domain
  • Lack of semantics for describing which services
    can be provided by a device
  • Interoperability between different ontology sets?

66
Location-aware service discovery
  • Where is the closest Italian restaurant to me?
  • Location sensing
  • Nomadic users
  • Handy devices

67
CoolTown
  • Every service (e.g., printer) has a web server,
    and a tag.
  • Users walk in and receive URL from tag beacons
  • Connect to the URL which describes the service
    and can invokes it
  • Place manager maintains resources in a place,
    with web interface (HTML and XML)
  • Resources can be grouped.
  • Also acts as a resolver for some places

68
Splendor
  • Tag-based location aware
  • Tag label location and people
  • Proxies
  • Enhanced security
  • Service management (registration, security)

Trusted servers managing services
Bootstrapping using multicast
69
Agents2Go
PalmApp (with CDPD modem)
Cell tower
Location identified by cell tower id
register
Restaurant agent or other services
Initial query form
User query
Brokers
Area 2
User query
Locator
Area 3
Maps geographic area to broker
Agents2Go Server
70
Contributions
  • Attach web URL to services and periodically
    broadcast (CoolTown)
  • Intermediate trusted proxy for security and
    service management (Splendor)
  • Localized brokers store services in the location
    and are mapped to based on the user location
    (Agent2Go)

71
Internet-scale discovery
  • Construct scalable, robust services
  • Huge throughput demands and availability
  • Interoperability
  • Efficiency
  • Fault tolerance

INS/Twine, Ninja/SDS, WSPDS
72
Intentional Naming System (INS)
  • Environment
  • Heterogeneous network with mobile devices,
    sensors and computers
  • Location dependent wireless services
  • Todays network problems
  • Applications cannot learn about network no
    control
  • Failures are common
  • Dynamic environment
  • No centralized server (no DHCP/directory server)
  • Zero configuration is desirable
  • Need new naming system and resolution
    architecture
  • Large part of this teaching materials (slides
    on INS) are prepared referencing the tutorial
    made by Prof. Hari Balakrishnan MIT Lab for
    Computer Science http//wind.lcs.mit.edu/hari_at_lcs
    .mit.edu

73
Whats in a name?
  • Expressive name language (like XML)
  • Resolver architecture decoupled from language
  • Names are queries
  • Attribute-value matches
  • Range queries
  • Wildcard matches

74
Resolver network
  • Resolvers exchange routing information about
    names
  • Multicast messages forwarded via resolvers
  • Decentralized construction and maintenance
  • Implemented as an overlay network over UDP
    tunnels
  • Not every node needs to be a resolver
  • Too many neighbors causes overload, but need a
    connected graph
  • Overlay link metric should reflect performance
  • Current implementation builds a spanning tree

75
Intentional Naming System (INS)
  • Robustness
  • Name as soft-state no need for explicit
    de-registration
  • Resolution via network of replicated resolvers
  • Names are weakly consistent, like network layer
    routes
  • Fate sharing with services, not INRs
  • Self configuring resolvers
  • INR-to-INR ping experiments for link weights
  • Forms evolving spanning tree
  • Scaling
  • Two potential problems
  • Lookup overhead
  • Handled by load-balancing by spawning new INR
  • Routing protocol overhead
  • Handled by Virtual space partitioning

76
Intentional Naming System (INS)
  • Applications
  • Wireless Networks of Devices (WIND)
  • Location-dependent mobile applications
  • Status
  • Wide area design for scalability
  • Increasing number of services on overlay networks
  • Distributed web caches
  • Transcoders
  • Multiparty communication
  • Naming systems
  • IPTV..

77
INS/Twine
  • Uses Chord
  • structured peer to peer system
  • Lookup in Log(N)
  • Service Propagation
  • Resource state changes, update is propagated
  • Periodic refreshing of resource information
  • edge resolvers attached to clients update
    frequently
  • Internal resolvers infrequently

root
subject
res
resolver
camera
traffic
model
man
AModel
ACompany
Resource is a camera, manufactured by ACompany
and filming traffic.
StrandMapper Hash(strand)
Distributed hash table (Chord). KeyRouter maps to
Chord.
30 INS/Twine a scalable p2p architecture for
intentional resource discovery, 2002
78
Ninja
  • Secure Service Discovery Service (SDS)
  • Uses XML to encode service descriptions at
    service catalog
  • Service advertisements are encripted
  • Certificate Authority to authentication and
    Capability Managers for security
  • Client possessing certain credentials are allowed
    to discover the services
  • Servers dynamically organize themselves into
    hierarchies for scalability
  • Filters query upwards to avoid overloading one
    node (Bloom filter)

Services running on clusters of workstations
Distributed data structures
A chain across proxies and bases to find better
service
Stateless and soft-state proxy
Heterogeneous devices and sensors
79
Multi-tier ubiquitous service discovery protocol
Global Services Registry-gateway to global network
  • Context attributes provided by services
  • Distance to server
  • Server load
  • Service channel
  • Attribute-value pair service description
  • Localized Service Propagation
  • propagate upward with attenuation factor of
    service attributes
  • Query Routing
  • Overlay hierarchy

Brokering Agent-recommends appropriate service
Global Services
26 A multi-tier ubiquitous service discovery
protocol, Mobisys, 2003
Domain Hierarchy
80
Ontology-based semantic service discovery for a
pervasive home environment (ICU)
  • Home environment
  • making home more comfortable, safe and convenient
  • controlling devices automatically without users
    knowledge
  • pervasive computing
  • Automatic service discovery with minimized users
    intervention is needed

81
Ontology based semantic service discovery (ICU 03)
  • Existing Service Discovery
  • Automatic discovery of network devices and
    services
  • Automatic configuration and reconfiguration of
    network devices and services
  • Limitation
  • Lack of service representation such as their
    functionality and capability
  • Service description does not include semantic
    meaning
  • Syntactic level service discovery only support
    exact matching
  • Attribute-based matching Jini, UPnP, Salutation
  • Object-based matching RMI registry, CORBA
    naming service, UDDI
  • Ontology based semantic service discovery is
    needed

82
Introduction challenges
  • Design and development of efficient and
    specialized ontologies for a pervasive home
    environment
  • Rich description of devices and services
  • To make possible various service request message
    type
  • Represents all kinds of device and service in
    home network environment.
  • device attributes, device status, service state
    variable, control interface, and their
    relationship
  • Extensibility
  • New device and service should be added without
    modifying ontology.
  • Develop service discovery system to determine
    whether the developed ontologies can be
    applicable
  • Most suitable service should be discovered in
    real-time

83
Ontologies in home environment
  • Ontology design method
  • Determine domain and scope of the ontology
  • Domain Common middle-class family
  • Scope Describing device and service, device
    attributes, service state variable, control
    interface, and their relationship
  • Enumerate important terms in the ontology
  • Device
  • physical unit of providing a service.
  • All device maintain their device status and
    attribute
  • Service
  • User may requests a service-based query
  • Some devices play more than one service
  • Primitive service
  • Mediator between device and service
  • Define class and class hierarchy
  • Define properties, slots and instance

84
Ontologies in home environment
  • Advantage of our ontology structure
  • Low complexity
  • Easily define relation between device and service
  • To make possible composition of services and
    device attributes based query message

85
Ontologies in home environment
  • Ontology structure
  • Device ontology
  • A smallest physical unit of providing a service
  • Service ontology
  • Primitive service composition, and primitive
    service and device attribute composition
  • Primitive service ontology
  • A smallest logical unit of providing service
  • A mediator between device and service
  • Attribute ontology
  • Device attributes
  • Represent device attribute efficiently
  • State Variable / Control Interface ontology
  • models state of primitive services with state
    variables and control primitive service through
    control interfaces

86
Ontologies in home environment
  • Relationship among device, service and primitive
    service

Audio Device
Embedded device- Mike
Sound primitive service
Alarm service
Clock primitive service
Sound primitive service Clock primitive service
Player primitive service
Embedded device- Speaker
Recorder primitive service
Radio primitive service
87
Service Ontology
  • Service ontology structure
  • Service ontology
  • primitive service ? ( primitive service n
    primitive service)
  • ? ( primitive service n device attribute)
  • ? ( primitive service n state variable)
  • Service ontology example
  • Alarm service Alarm clock primitive service
  • ? (Clock primitive service n Sound primitive
    service)
  • ? (Clock primitive service n Light primitive
    service (illumination (over127lux)))

88
Implementation
  • Architecture of Extended Lookup Service

89
Activity Policy-based Service Discovery Framework
for Pervasive Computing(ICU 06)
  • Semantic Service Discovery (Gaia, Aura, MIDAS,
    ABSD, TCE)
  • Abstract representations
  • Semantic matching
  • Use of domain-specific ontologies for context
    sharing and reuse
  • Context-aware Service Discovery (Anatomy, Solar,
    CAttr, CaOb)
  • Exact or abstract representations
  • Syntactic or semantic matching
  • Use a variety of contexts
  • not consider dynamic changes of service
    semantics in different contexts

90
Problem Statement
  • Because the semantics of services is dynamically
    changed in different contexts, the acquired
    services might be inappropriate in some
    situations
  • For Example
  • Abstraction maximizes the availability of
    services
  • MusicPlayer WinAmp or WindowsMediaPlayer
    (from Gaia)
  • EditText MSWord or Emacs (from Aura)
  • Context-awareness minimizes user distractions
  • Near MusicPlayer ServiceTypeMusicPlayer,
    Location getCurrentLocation(Woo-Hyun)
  • Available EditText ServiceTypeEditText,
    ExecutionEnvgetCurrentExecutionEnv()
  • The changes of semantics in different contexts
    make both of the benefits useless
  • Bright Light ServiceTypeLight, Brightness??!
  • Brightness 30 (in daytime)
  • Brightness 10 (at night)
  • Alarm Clock ServiceTypeClock, Effect??!
  • Effect Sound (in case of driving, or sleeping)
  • Effect Vibration (in case of studying)
  • Effect Display (in case of working)

91
Design Consideration
Context-aware Semantics. The semantics on
abstract representations must be dynamically
changed according to different contexts
High Availability. When the required services are
not available or found, substitutable services
which are functionally similar to the ones must
be found
92
Proposed Approach
  • Policy-based Query Coordination Context-aware
    Semantics
  • Queries are dynamically changed according to
    policies
  • IOPE-based Semantic Matching High Availability
  • Services are semantically described and
    discovered by using IOPEs, especially with effect
    ontology

93
Proposed Approach (contd)
  • Policy-based Query Coordination
  • What is policy for?
  • Adopt different resource constraints according to
    different contexts
  • Reflect the changes of semantics between
    abstraction and context-awareness
  • How to work?

94
Proposed Approach (contd)
  • Policy-based Query Coordination (contd)
  • An Example of Query Coordination

95
Proposed Approach (contd)
  • IOPE-based Semantic Matching
  • Why is a fine-grained service description
    required?
  • Different aspects of semantics lead better
    service discovery, selection, composition,
    invocation, interoperation, and
    executionMETEORS
  • capabilities, requirements, effects, and
    execution pattern
  • Granularity of semantics (less) Aura Gaia
    Semantic Web (more)
  • How to design effects?

96
Proposed Approach (contd)
  • IOPE-based Semantic Matching (contd)
  • Processes of IOPE-based Semantic Matching

97
Contributions
98
Large scale semantic service discovery UbiSearch
(ICU 07)
  • Proposed idea
  • Semantically similar services are clustered
    around nearby resolvers in the service discovery
    overlay network
  • The search space for a query is efficiently
    limited

C
D
A
B
C
G
A
B
H
D
E
F
mapping
E
service discovery resolver service
indexes semantic vector space
I
F
G
H
I
99
Overview of UbiSearch
  • Features of UbiSearch
  • Semantic service description and similarity
    measuring function
  • Ontology based attribute-value pairs (AV-pairs)
  • Semantic distance function
  • Semantic association between services and
    resolvers
  • Semantic vector space
  • Semantic service discovery network
  • Resolver organizing
  • Registration query routing

100
Service Description
  • Ontology based attribute-value pair (AV-pair)

TC1004
Traffic Monitoring Camera
location
Broadway

traffic state
Busy
road condition
Dry



Examples of ontology hierarchy for locations and
traffic states. The arrows represent subsumption
relationships.
A service description for Traffic Monitoring
Camera.
101
Semantic Distance Function
  • Distance function between two concepts in
    hierarchically-structured semantic network 11
  • where l is the length of the shortest path
    between two concepts c1 and c2 in the semantic
    tree and h is the level of the tree of the direct
    common subsumer from c1 and c2 .
  • a 0 and ß 0 are parameters scaling the
    contribution of shortest path length and depth,
    respectively.
  • According to benchmark tests, the optimal
    parameters are a 0.2 and ß 0.6.
  • Distance function between two services
  • where n is the number of attributes, vi1 and vi2
    are the values of attribute ai of service S1 and
    S2, respectively.
  • ?i is the weighting factor for attribute ai given
    by a user during query request where ? ?i is n.

102
Semantic Coordination
  • Lipschitz embedding
  • Defined as follow
  • For a given set L l1, l2, , ln, L ? X, and
    distance function d
  • the Lipschitz embedding with respect to L is the
    mapping f X ? Rn such that f(x) d(x, l1),
    d(x, l2), , d(x, ln) where L n, where n is
    dimensionality of a coordinate vector.
  • To obtain the coordinate vector xi ? Rn for
    service Si, the j-th component of xi is set to
    the measured distance between service Si and
    landmark service j, for j1,,n.
  • In general, the accuracy of the coordination
    improves as the number of landmarks increases.
  • In our case, the distance function with ?i 1 is
    used for d.

103
Semantic Service Discovery Network
  • Service Registration and Query Routing
  • A service is registered with a resolver whose
    zone contains its coordinate.
  • Similarly, a query is routed to the resolver

104
Service discovery
  • Service-centric networking
  • Current Internet Finding paths to network nodes
  • Applications run on top of routing.
  • Future Internet Finding paths to services
  • Applications run on top of Service Discovery
  • Requirements
  • Semantic Matching
  • Similarity-based service matching and ranking
  • Personalization
  • Scalability

105
Service discovery (cont.)
  • Recent trends
  • Service discovery in MANETs
  • Flooding based
  • Tight coupling between SD and routing
  • DHT based
  • Data items are distributed randomly in the
    network
  • Nodes which are logical neighbors of each other
    store unrelated data items
  • Efficient in data lookup but support only
    syntactic matching
  • Semantic encoding/indexing
  • Target the problem of distributed
    similarity-based searching
  • Key idea encode data items (service instance) to
    keys
  • Semantic-preservation

106
Service discovery (cont.)
  • Summary
  • DHT-based architecture seems to be a better
    choice for design
  • Separate complex function into layers
  • Designing a shared infrastructure is still
    challenging
  • Service/data representations are
    application-specific.
  • Personalized service discovery and ranking is the
    key for a shared infrastructure
  • Service discovery at various heterogeneous
    network such as sensor network, ad hoc network
    and wired/wireless network.
Write a Comment
User Comments (0)
About PowerShow.com