UDON (Utility Driven Overlay Network) is a framework for routing service requests in highly dynamic large scale shared infrastructures (a.k.a cloud) using an utility function to find service instances that match their QoS requirements with a high probability and low overhead.
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Utility Driven Service Routing over Large Scale Infrastructures
1. Utility Driven Service Routing
over Large Scale Infrastructures
Pablo Chacin
Polytechnic University of Catalonia
(UPC), Spain
2. Authors
• Pablo Chacin, Polytechnic University of
Catalonia, Spain (UPC)
• Leandro Navarro, UPC
• Pedro Garcia López, Rovira i Virgili
University, Spain
3. 13-15 December 2010 ServiceWave 2010
Key Points
• UDON is an Utility Driven Overlay Network for routing
service requests to service instances that match some QoS
requirements
• It is aimed for highly dynamic large-scale shared
infrastructures.
• Combines an application provided utility function to express
QoS with an epidemic protocol to disseminate the
information that supports the routing
• Experimental analysis shows that UDON allocates requests
meeting QoS with a high probability and low overhead; it is
scalable, robust and adapts well to a wide range of
conditions.
4. 13-15 December 2010 ServiceWave 2010
Outline
• Defining the problem context
• Design principles
• Experimental evaluation
• Conclusions
5. 13-15 December 2010 ServiceWave 2010
Internet of Services
Source: Schroth, C., Janner, T.: Web 2.0 and soa: Converging concepts enabling
the internet of services. IT Professional 9(3), 36–41 (May/June 2007)
7. 13-15 December 2010 ServiceWave 2010
Challenges
• Non dedicated Servers
– The QoS a server can offer is hard to predict
• Fluctuations in the demand
• Different QoS requirements for different users
– e.g. free/paid; bronze/silver/gold
• Large scale
• Number of instances may vary
– Activations/deactivations due to fluctuations on the
demand
– Failures
8. 13-15 December 2010 ServiceWave 2010
Guiding principles
• Decentralized decisions using local information
– No global view; no single point of failure; more
scalable and adaptable
• Representation of QoS as an Utility Function
– Compact representation
– Facilitate comparisons despite heterogeneity
• Model-less adaptation
– No need to elicit or learn a performance model for
the systems
– If information is not exact, rationality may not
help.
10. 13-15 December 2010 ServiceWave 2010
Utility Function
• In economics, utility is a
measure of relative
satisfaction
• Summarizes multiple
attributes into a single
scalar value
– F(a1
,..an
) → [0,1]
• Facilitates comparison,
allow private evaluations
Cobb-Douglas utility function
U(t,c) = t(a
c(1-a)
t = execution time
c = cost
11. 13-15 December 2010 ServiceWave 2010
Epidemic Overlay
• Simple maintenance algorithm
– Each node has a local view of
the state of a set of neighbors
– Periodically choses some
neighbors and sends its local
view + own state
– Each node merges its local
view with the received views
keeping the most recently
updated entries
• Disseminates information with low
overhead
• Highly scalable and resilient
12. 13-15 December 2010 ServiceWave 2010
Randomized Greedy Utility
Routing
• Multi-hop routing using local
information
– On each hop, ranks
neighbors based on its
(potentially outdated)
utility
– Forward to the node with
a probability based on
ranking
• Simple concept. Allows
multiple heuristics for
ranking (evaluation is an
ongoing work)
Image source: physics.org
Greedy Routing Enables Network Navigation
Without a 'Map'
http://www.physorg.com/news154093231.html
14. 13-15 December 2010 ServiceWave 2010
Simulation Model
• Network topology is abstracted
– One single cluster, 1000's of servers.
– Constant, negligible delays
• Utility Function simulated as a Random Process
– Make evaluation more general, not tied to a
particular utility definition
– Evaluate the effect of different parameters
• Compared with other overlays of the same family
– Random: no organization (baseline)
– Gradient: keep instances with similar QoS close
16. 13-15 December 2010 ServiceWave 2010
Metrics
• Overlay (information dissemination)
– Age: how old is the information in the
local view (average)
– Staleness: how accurate is the local view
with respect of real current information
• Routing
– Satisfied demand: how effective and
reliable is the allocation (% of success)
– Hops: how efficient
17. 13-15 December 2010 ServiceWave 2010
Overlay
Maintains “fresh”
information
Minimizes
staleness
18. 13-15 December 2010 ServiceWave 2010
Performance
Tolerance: maximum allowed difference
between required QoS and node's utility:
~ 1.0 any node with a higher utility matches
~ 0.0 only node with the exact demanded
utility matches
Allocates requests with high
probability, and low number or
hops, even under very
demanding search criteria (low
tolerance)
19. 13-15 December 2010 ServiceWave 2010
Performance looking for
scarce resources
Allocates requests
even when target
nodes are scarce.
20. 13-15 December 2010 ServiceWave 2010
Churn
Performance
“gracefully” degrades
under high churn
21. 13-15 December 2010 ServiceWave 2010
Variation in Utility
Allocates requests even under
highly fluctuating conditions.
22. 13-15 December 2010 ServiceWave 2010
Sensitivity to Operational
Parameters
Optimal setup demands low
communication overhead
24. 13-15 December 2010 ServiceWave 2010
Conclusions
• Simple, principled solution for routing requests
over large-scale cluster-based web services on
shared infrastructures
• UDON meets requirements on scenarios of
interest and shows desirable properties
– Effective
– Low overhead
– Scalable
– Very adaptable
– Robust
25. 13-15 December 2010 ServiceWave 2010
(Near) Future work
• Apply UDON to A concrete scenario
– Simulated cluster based web services
– Use concrete utility functions
• Evaluate alternative routing heuristics
• Propagate information based on usefulness:
see which QoS are more demanded and
propagate information of nodes that offer it
with higher probability
• Consider locality when selecting neighbors to
adapt to wide area distributed clusters (multi-
site)