GloServ: Global Service Discovery Architecture - PowerPoint PPT Presentation

1 / 23
About This Presentation
Title:

GloServ: Global Service Discovery Architecture

Description:

What Italian restaurants are near Columbia University? Events services. Can be location-based ... across the street, near your hotel ... GloServ/Knarig ... – PowerPoint PPT presentation

Number of Views:57
Avg rating:3.0/5.0
Slides: 24
Provided by: kundan8
Category:

less

Transcript and Presenter's Notes

Title: GloServ: Global Service Discovery Architecture


1
GloServ Global Service Discovery Architecture
  • Knarig Arabshian and Henning Schulzrinne
  • IRT internal talk
  • April 8, 2004

2
Agenda
  • Motivation
  • Background
  • RDF and RQL
  • Architecture
  • Hierarchy, registration, query
  • Related work
  • Conclusions and future work

3
What is service discovery?
  • Where is foo? Who is responsible for bar?
  • What Italian restaurants are near Columbia
    University?
  • Events services
  • Can be location-based

there is a classical music concert at 7pm across
the street, near your hotel ...
4
Why global services?
  • Ubiquitous computing is becoming prevalent in
    todays society
  • Traveler visiting a new city wants to know all
    classical music events.
  • Doctor visiting a hospital wants to know medical
    services in this hospital.
  • Visitor in starbucks wants to know if it offers
    local internet TV.

Service discovery should be global
5
What are the challenges?
  • Service description and querying
  • Too specific does not extend to a new service
  • Too broad difficult to search or find
  • Semantically describe services
  • Global scale
  • Flat does not scale
  • Hierarchy like DNS
  • Location based restaurant.service.newyork.ny.us
  • Service based newyork.ny.us.service.restaurant

6
Service description (RDF)
  • Resource Description Framework (RDF)
  • XML-based by W3C
  • Originally designed to represent metadata for web
    resources
  • Semantically defines web resources
  • Identify things using URI
  • Describe using properties and property values
  • lt?xml version1.0?gt
  • ltRDFgt
  • ltRestaurant abouthttp///PatsPizza.htmlgt
  • ltCuisinegtItalianlt/Cuisinegt
  • ltRatinggt6lt/Ratinggt
  • lt/Restaurantgt
  • lt/RDFgt

7
More RDF 2
  • (subject, predicate, object)
  • doc , title, My resume
  • doc, editor, ltgt
  • ltgt, homePage, http//
  • ltgt, fullName, Alice Cueba

http//www.home.com/doc
title
editor
My resume
fullName
homePage
http//www/alice
Alice Cueba
8
More RDF 3
  • lt?xml version1.0gt
  • ltrdfRDF xmlnsrdf gt
  • ltrdfDescription rdfabouthttp//www.home.com/
    docgt
  • ltdctitlegtMy resumelt/dctitlegt
  • ltaeditor rdfnodeIDeditorInfo/gt
  • lt/rdfDescriptiongt
  • ltrdfDescription rdfnodeIDeditorInfogt
  • ltafullNamegtAlice Cuebalt/afullNamegt
  • ltahomePage rdfresourcehttp//www/alice/gt
  • lt/rdfDescriptiongt
  • lt/rdfRDFgt

9
RDF schema
  • Vocabulary description language that provides a
    type system for RDF.
  • Classes are similar to object-oriented classes
  • Properties are similar to members within a class
  • (Subject, predicate, object) gt (Class,
    property, property value)
  • Example
  • Restaurant, rating, 6
  • Restaurant, cuisine, Italian
  • Rating
  • (domaingtRestaurant, rangegtliteral)
  • Class?property can be many-to-many
  • Classes can have subclasses, Properties can have
    subproperties

10
RDF schema 2
  • ltRDF gt
  • ltClass IDRestaurantgt
  • ltCommentgtA dining establishment
  • lt/Commentgt
  • ltlabelgtRestaurantlt/labelgt
  • lt/Classgt
  • ltProperty IDRatinggt
  • ltdomain resourceRestaurantgt
  • ltrange resourceLiteralgt
  • lt/Propertygt
  • ltProperty IDCuisinegt
  • ltdomain resourceRestaurantgt
  • ltrange resourceLiteralgt
  • lt/Propertygt
  • lt/RDFgt
  • ltRDF gt
  • ltRestaurant abouthttp///PatsPizza.htmlgt
  • ltCuisinegtItalianlt/Cuisinegt
  • ltRatinggt6lt/Ratinggt
  • lt/Restaurantgt
  • lt/RDFgt

11
Query in RDF
  • Different querying languages for RDF
  • RDF data query language (RDQL)
  • RDF query language (RQL)
  • Chose RQL
  • Allows schema query (why needed?)
  • Select Y from X rating Y
  • Where Xhttp///PatsPizza
  • Result Y6

Find me the rating of pats pizza
12
Query in RDF 2
  • Querying the properties that belong to a
    particular domain
  • select _at_X from Property_at_X where _at_X in domain(
    Restaurant )
  • gtResult _at_X Rating, Cuisine
  • Querying subclasses of a particular class
  • select X from ClassX where X in subClassOf(
    Event )
  • gtResult X Classical, Medical, Emergency

13
Architecture Hierarchy
service
event
restaurant.service
medical.event
concert.event
jazz.concert.event
classical.concert.event
14
Determination of Service Hierarchy
  • The GloServ architecture is similar to DNS
  • root name servers
  • authoritative name servers that manage the
    information of services.
  • Separate classification system similar to North
    American Industry Classification System (NAICS)
  • classifies the hierarchy of services
  • establishes RDF schemas that describe each type
    of service
  • The service categorization is similar to yellow
    pages directory.
  • Authority such as ICANN delegates the top level
    services

15
Registration
Service Agent Operator
1)Present user with service hierarchy
2) Choose hierarchy level to register to
gloservregistrar
4)Create form (according to the meta data)
for user to fill out
3) Generate URI and contact correct server
to obtain meta data for GUI
5)Verify service agent and store RDF document
in server
restaurant.service
16
User Query
User
1)Present user with services offered
2) Choose service to query to
Local user agent
4)Create query form (according to the meta data)
for user to fill out
3) Generate URI and contact correct server
to obtain meta data for GUI
5)Formulate RQL query and obtain list of
services
restaurant.service
17
Generating URI to contact correct Authoritative
Server
  • Service Level
  • User chooses the level of the hierarchy it wants
    to either register to or query to
  • Registrar and Local User Agent
  • Concatenate the service hierarchy into a URI
  • service-gtrestaurant will evaluate to
    gloservrestaurant.service

18
Generating URI to contact correct Authoritative
Server
  • Location Level
  • Find out the nearest location-based servers by
    querying its cached RDF store of its location
    hierarchy new_york.ny.us
  • Generate URI gloservrestaurant.service.new_york.
    ny.us
  • If this URI doesnt exist, try the sibling
    location gloservrestaurant.service.brooklyn.ny.us
  • May also try just the service URI itself in case
    it is not a location-based service
    (gloservrestaurant.service)

19
Query within Authoritative Server
  • restaurant.service authoritative server will
    execute RQL query on its RDF store and return
    matches
  • User may also add additional text to search for
  • This evaluates to a heuristic that searches for
    (subject, predicate, objects) that match the text
  • May not be as accurate
  • Gives user opportunity to choose from a broader
    list of services

20
Related Work
  • SLP (Service Location protocol)
  • User Agents (UA) perform service discovery on
    behalf of a client
  • Service Agents (SA) which advertise location and
    characteristics of the service on behalf of the
    service
  • Directory Agents (DA), records available services
    and also responds to service requests from UAs
    (optional).
  • Two modes of operation
  • DA exists UAs learn of services available by
    unicasting their requests to the DA.
  • DA doesnt exist UAs repeatedly multicast
    messages to Sas that responds to the UAs via
    unicast.

21
Related Work
  • JINI
  • Built on top of the Java object and RMI system.
  • Service registries, similar to SLPs DAs
  • The Java class hierarchy defines services and
    their attributes.
  • UPnP
  • Doesnt have a central service registry
  • Services multicast their announcements to control
    points that are listening
  • Control points can also multicast discovery
    messages and search for devices within the
    system.
  • XML describes the services in greater detail.

22
Differences/Similarities
  • Scaling
  • SLP and Jini can cover small networks as well as
  • larger enterprise networks
  • UPnP appropriate for home or small office
    networks.
  • Querying
  • Simple text-based attribute-value query languages
    for SLP and Jini
  • UPnP provides more descriptive queries through
    XML.
  • Main Drawbacks
  • do not cover a wide area network that spans the
    whole Internet
  • SLP, Jini provide simpler querying mechanism
    which do not give enough flexibility to the
    system.

23
Conclusion and Future Work
  • GloServ is a global service discovery
    architecture
  • Uses RDF/RQL to describe and query for services
  • Hierarchical definition of services
  • Building a prototype implementation of GloServ
Write a Comment
User Comments (0)
About PowerShow.com