dynamic service discovery l.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Dynamic Service Discovery PowerPoint Presentation
Download Presentation
Dynamic Service Discovery

Loading in 2 Seconds...

play fullscreen
1 / 38

Dynamic Service Discovery - PowerPoint PPT Presentation


  • 465 Views
  • Uploaded on

Dynamic Service Discovery Workshop on Web of Services for Enterprise Computing Kinga Dziembowski 02.27.2007 Presentation Agenda Bio and company background The problem of Services Discovery in a commercial environment The problem of Services Discovery for US military environment

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Dynamic Service Discovery' - Sophia


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
dynamic service discovery

Dynamic Service Discovery

Workshop on Web of Services for Enterprise Computing

Kinga Dziembowski02.27.2007

presentation agenda
PresentationAgenda
  • Bio and company background
  • The problem of Services Discovery in a commercial environment
  • The problem of Services Discovery for US military environment
    • What needs to be discovered?
  • An approach
    • Dynamic Discovery
    • Service Type and Service Instance
    • Dynamic Discovery pattern architectures
  • Interoperability problem – should Dynamic Service Discovery be an infrastructure resident service?
  • Summary
kinga dziembowski edziembowski@gestalt llc com
Kinga Dziembowski edziembowski@gestalt-llc.com
  • Bluestone - Application Server Company
  • HP
    • HP Web Service Platform (AS, SOAP Server, UDDI Server)
      • SOAP server
        • Apache Cocoon contributor
      • WSMF – Web Services Management Framework
        • Spec, reference implementation
        • End-to-end integration of TIBCO environment with OpenView using WSMF and then WSDM
      • WSDM – OASIS standard
        • Spec reference implementation
        • Apache Committer - muse, wsrf, pubsub
  • Gestalt
    • ARCES – Applied Research for Computing Enterprise Services
gestalt llc overview
Gestalt-LLC Overview
  • Gestalt-LLC - http://www.gestalt-llc.com/
  • Is an international professional services firm
  • Provides business consulting and technology solutions to the Defense and Energy markets
  •  Develops practical yet innovative solutions that drive competitive advantage in complex decision environments
  • ARCES project:
    • is sponsored by Electronic System Center ESC
    • is a research on SOA in DoD Net-Centric vision (NCES,GIG)
    • uses Modeling techniques – CPN, Extend, Opnet
my position
My position
  • Service Discovery in the dynamic and transient nature of a highly distributed and mobile enterprise, such as the US military, requires a much more dynamic concept of Service Discovery than what is currently handled by most commercial Service-Oriented Architecture implementations.
discovery problem
Discovery problem
  • Discovery (observation), observing or finding something unknown to one's culture [Wikipedia]
what are the consumer needs
What are the consumer needs?
  • Figure out if the functionality (Service) s/he needs exists.
  • Find enough information to “interface” with the Service
  • Use this same “interface” all the time
  • Be able to access the Service at any time
  • Be able to access the Service from any place
  • Be notified of any change which violates basic needs
  • Consumer needs to find the Service satisfying his/her requirements - Service Discovery process will help
discovery in a stable environment
Discovery in a Stable Environment
  • The problem of Services Discovery in a commercial environment
    • The infrastructure in which the service customers and providers operate is stable.
    • Service Discovery is concerned about
      • Service Type
      • Service End point URL
how does this story translates to the soa
How does this story translates to the SOA ?
  • Assumptions:
    • Stable infrastructure
    • Services deployed stay deployed
    • End point URLs once established stay operational
    • Non operational services consist of business lost for enterprise
    • Consumer operates in a static environment

Publish

Discover

Service

Registry

Bind/Invoke

Service

Service

Consumer

Provider

  • Commercial world comprises the “core” environment. Here, the Service Discovery triangle paradigm works quite well.
dynamic environment
Dynamic Environment
  • The problem of Services Discovery for US military environment
    • Commercial world comprises the “core” environment in which the well known Service Discovery triangle paradigm works quite well
    • In the highly distributed and mobile world of the military, the space in which Web Services and web technologies operates is much more complex
dynamic nature of consumer and provider
Dynamic nature of consumer and provider
  • Core
    • The “core” is static, stable, has known behaviors, is established, and is always connected. Services are assumed to be operational 24x7.
  • Edge
    • The “edge” is dynamic, transient, and sometimes disconnected; you cannot assume that the Service is available at any point of time.
  • Consumer environment changes
    • he needs to adapt to the environment
  • Provider environment changes
    • he needs to adapt to the environment
  • In the highly distributed and mobile world of the military, the space in which web technologies operates is much more complex
something is missing
Something is missing
  • Even with my dry cleaner story I could not satisfy my Discovery need using static registry – telephone book
  • At the first Web Service maturity level, the simplistic assumptions that the Web Services operate in a static world were OK
  • It is time to move to the next maturity level and address dynamic nature of the Web Services Instances
  • The canonical Service Discovery paradigm is not enough for dynamic environments
  • Additional runtime Dynamic Service Discovery is needed
    • Service Instances are of main concern
    • Service Instance presence and availability are needed
  • Service Instance, presence and availability is needed for Dynamic Service Discovery
dynamic discovery pattern use cases
Dynamic Discovery Pattern Use Cases
  • Mobile Service Clients
    • - Such clients plug into existing systems and need to discover where the needed Services Providers are in the current environment.
  • Mobile Services Providers
    • – The Service Instance is moving from point to point on the network. What is important for this use case is the ability for the client to invoke a specific Service Instance – the state associated with the Service Instance matters.
  • Changing Service Instance population – (transient services).
    • - The goal for Service Discovery is to find what Service Instances are currently available, it is not important to find a specific Instance, any Instance of a particular service type will satisfy the consumer need.
  • Instance federation
    • – In this use case multiple Services Instances spread resource responsibilities. The population of the Instances is static or slowly changing (“the core”). Service Discovery is concerned with finding the Service Instance with the appropriate context. Each Instance context changes.
discovery use case mobile service client

Service

Provider

Service

Provider

Service

Provider

Discovery Use Case - Mobile Service Client
dynamic discovery pattern
Dynamic Discovery Pattern
  • Initial Discovery Pattern
    • Repository for Service Type and Service Instance metadata
    • Discovery Engine that fronts metadata repository
    • Services publish Service Instance metadata to repository; update as metadata changes
    • Clients query discovery engine
    • Extension to existing design-time discovery mechanisms
dynamic discovery pattern19
Dynamic Discovery Pattern

Service Type

Registry/Metadata

Service Instance

Registry/Metadata

Metadata

Discover

Service Type

Discover

Service Instance

Discover

Service Type

Publish

Service Instance

Publish

Service Type

Discover

Discovery

Bind/Invoke

Service

Provider

Service

Consumer

what needs to be discovered
What needs to be discovered?
  • Service Type
    • Established at design time
    • Can be uniquely identified
    • Consists of
      • Interface definition
      • Semantic information
      • Metadata definition (context)

Static part – values established at design time and never changes

1……….

2.……….

3……….

4.……….

Para-dynamic part – values established post design time

5……….

6.……….

Dynamic part - Instance values established at run time

what needs to be discovered21
What needs to be discovered?
  • Service Instance
    • Running Instance of Service defined by Service Type
    • Implementation of semantic and syntactic contract defined by Service Type
    • Establishes dynamic metadata values defined by Service Type
    • What consumer actually interacts with
    • Can be uniquely identified
    • Updates its context document when the dynamic metadata values changes
  • Service Instance is independently managed entity, can appear and disappear, has its own dynamic metadata values
interoperability problem
Interoperability problem
  • What are the minimal responsibilities of Service Instance to participate in Dynamic Service Discovery?
  • Should we define Web Service as implementing several Interfaces
    • Business interface (the functionality which defines the Service)
    • Discoverable interface (set of operations, properties, capabilities needed to Discover service in interoperable way)
    • Management Interface (set of operations, properties, capabilities needed to Manage service in interoperable way)
  • Should we query Web Service to learn what are its capabilities and use this dynamic knowledge to interact with it appropriately?
  • Should Dynamic Service Discovery be an infrastructure resident service – ESB ?
summary
Summary
  • Dynamic and transient nature of a highly distributed and mobile enterprise, such as the US military, requires run time Service Instances discovery
  • Discoverable Services
  • Service Type describes the Service
  • Service Instance is implementation of the Service Type
  • Service Instance has dynamic context
  • Metadata context needs to be part of the contract - Service Type Definition (wsdl?)
  • Service Instance Presence and Availability
conclusions
Conclusions
  • Dynamic Service Discovery problem needs to be solved in global, systematic way
  • Develop supporting standards, architectures, reference implementations
  • Provide design patterns, recommendations and best practices
  • If this problem is not solved at the architecture and standards level, the main benefit of SOA – INTEROPERABILIRY- will be compromised or lost
slide25
Info
  • Kinga Dziembowski mailto:edziembowski@gestalt-llc.com
  • Gestalt-LLC - http://www.gestalt-llc.com/
  • Terms:
  • NCES – Net Centric Enterprise Services
  • GIG – Global Information Grid
  • DISA – Defense Information Systems Agency
the 5 w s in soa world
The 5 W’s in SOA world
  • Who does discovery?
    • Machine vs. Human
  • What is being discovered?
    • Service Definitions
    • Service Instances
    • Service Endpoints
  • Where is the searching done - what is the scope of the search?
    • Global/Public
    • Enterprise
    • COI
    • Application
  • Why is discovery being performed?
    • What problems does discovery solve?
  • When is discovery performed?
    • Design-time vs. Run-time
consumers and providers
Consumers and Providers

P2

P1

C5

C22

P9

P3

C2

P4

C4

P10

P5

C1

P11

global discovery engine
Global Discovery Engine

P2

R

P1

C5

C22

P9

P3

C2

P4

C4

P10

P5

C1

P11

grouping of services and consumers

R

R

Grouping of services and consumers

P1

C22

P2

C5

C2

R

R

P4

P9

P5

P10

C4

P3

COI (Communities Of Interest )

R

P11

C1

slide32

R

Query

Discovery Engines organizations

peer-to-peer

federated

hierarchical

slide33

R

R

R

R

R

Peer-to-peer

slide34

Query

R

R

R

R

R

R

Federated

slide35

R

R

R

R

R

R

R

R

Hierarchical

slide36

How does it work?

R

C1

P1

R

P3

C3

R

C2

P4

P2

P5

summary38
Summary
  • Dynamic and transient nature of a highly distributed and mobile enterprise, such as the US military, requires run time Service Instances discovery
  • Service Type describes the Service
  • Service Instance is implementation of the Service Type
  • Service Instance has dynamic context
  • Meta Data context needs to be part of the contract - Service Type Definition (wsdl?)
  • Service Instance context changes over time – Dynamic Service Discovery needs to be notified
  • Dynamic Service Discovery is similar to query search – as a result we get hitlist of Service Instances context documents
  • Service consumer select the document from the hitlist and invoke the Service Business interface