Presentation is loading. Please wait.

Presentation is loading. Please wait.

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

Similar presentations


Presentation on theme: "GloServ: Global Service Discovery Architecture Knarig Arabshian and Henning Schulzrinne IRT internal talk April 8, 2004."— Presentation transcript:

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

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

3 GloServ/Knarig3 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 GloServ/Knarig4 Why global services? Ubiquitous computing is becoming prevalent in today’s 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 GloServ/Knarig5 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 GloServ/Knarig6 Service description (RDF) Italian 6 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

7 GloServ/Knarig7 More RDF [2] (subject, predicate, object) doc, title, My resume doc, editor, <> <>, homePage, http://… <>, fullName, Alice Cueba http://www.home.com/doc http://www/~alice My resume Alice Cueba titleeditor homePage fullName

8 GloServ/Knarig8 More RDF [3] My resume Alice Cueba

9 GloServ/Knarig9 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) => (Class, property, property value) Example: Restaurant, rating, 6 Restaurant, cuisine, Italian Rating = (domain=>Restaurant, range=>literal) Class  property : can be many-to-many Classes can have subclasses, Properties can have subproperties

10 GloServ/Knarig10 RDF schema [2] A dining establishment Restaurant Italian 6

11 GloServ/Knarig11 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 X=“http://…/PatsPizza” Result: Y=6 Find me the rating of pat’s pizza

12 GloServ/Knarig12 Query in RDF [2] Querying the properties that belong to a particular domain select @X from Property{@X} where @X in domain( Restaurant ) =>Result: @X = Rating, Cuisine Querying subclasses of a particular class select $X from Class{$X} where $X in subClassOf( Event ) =>Result: $X = Classical, Medical, Emergency

13 GloServ/Knarig13 Architecture: Hierarchy medical.event serviceevent concert.event jazz.concert.eventclassical.concert.event restaurant.service

14 GloServ/Knarig14 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 GloServ/Knarig15 Registration gloserv:registrar restaurant.service 2) Choose hierarchy level to register to 1)Present user with service hierarchy 3) Generate URI and contact correct server to obtain meta data for GUI 4)Create form (according to the meta data) for user to fill out Service Agent Operator 5)Verify service agent and store RDF document in server

16 GloServ/Knarig16 User Query Local user agent restaurant.service 2) Choose service to query to 1)Present user with services offered 3) Generate URI and contact correct server to obtain meta data for GUI 4)Create query form (according to the meta data) for user to fill out User 5)Formulate RQL query and obtain list of services

17 GloServ/Knarig17 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->restaurant will evaluate to gloserv:restaurant.service

18 GloServ/Knarig18 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: gloserv:restaurant.service.new_york.ny.us If this URI doesn’t exist, try the sibling location gloserv:restaurant.service.brooklyn.ny.us May also try just the service URI itself in case it is not a location-based service (gloserv:restaurant.service)

19 GloServ/Knarig19 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 GloServ/Knarig20 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 doesn’t exist: UAs repeatedly multicast messages to Sas that responds to the UAs via unicast.

21 GloServ/Knarig21 Related Work JINI Built on top of the Java object and RMI system. Service registries, similar to SLP’s DAs The Java class hierarchy defines services and their attributes. UPnP Doesn’t 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 GloServ/Knarig22 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 GloServ/Knarig23 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


Download ppt "GloServ: Global Service Discovery Architecture Knarig Arabshian and Henning Schulzrinne IRT internal talk April 8, 2004."

Similar presentations


Ads by Google