Transcript ppt

“Design Review”
Randy H. Katz, Anthony Joseph, Ion Stoica
Computer Science Division
Electrical Engineering and Computer Science Department
University of California, Berkeley
Berkeley, CA 94720-1776
The “Sahara” Project
•
•
•
•
•
•
Service
Architecture for
Heterogeneous
Access,
Resources, and
Applications
Sahara Research Themes
• New mechanisms, techniques for end-to-end services
w/ desirable, predictable, enforceable properties
spanning potentially distrusting service providers
– Tech architecture for service composition & inter-operation
across separate admin domains, supporting peering &
brokering, and diverse business, value-exchange, accesscontrol models
– Functional elements
•
•
•
•
•
•
Service discovery
Service-level agreements
Service composition under constraints
Redirection to a service instance
Performance measurement infrastructure
Constraints based on performance, access control,
accounting/billing/settlements
• Service modeling and verification
Horizontal Service Model
Applications
(Portals, E-Commerce,
E-Tainment, Media)
Appl Infrastructure Services
Applications-enabling
(Distribution, Caching,
Services
AIP
ISV
Searching, Hosting)
Application-specific
Servers
Processing/Storage
(Streaming
Media,
Transformation)
Location
& Placement
ASP
Internet
Data Centers
ISP
CLEC
Application-specific
Reachability
&
Overlay Networks
(Multicast Topology
Tunnels, Mgmt Svrcs)
Global Packet Network
Internetworking
(Connectivity)
Connectivity and Processing
Cable
Modem
Premisesbased
Access
Networks
Core Networks
WLAN
Transit Net
WLAN
Operatorbased
Cell
Cell
Cell
Regional
LAN
Transit Net
Premisesbased
WLAN
LAN
Internet
Datacenter
NAP
Public
Peering
Data
Voice
Analog
Transit Net
H.323
RAS
H.323
PSTN
LAN
Private
Peering
DSLAM
Data
Voice
Wireline
Regional
Goals of the Design Review
• Originally
– Present technical architecture for comment/review
• But,
– Not ready to do so!
– Too early in our thinking for comprehensive
architecture
• So,
– Snapshot of our current thoughts
– Scenarios of service provision
– Dialog with industry colleagues on essential
components of architecture and their interactions
Research Questions:
Service Design
• For a given community of users and a given
set of performance, availability, and
administrative constraints,
– Service Provisioning Problem: How many
instances of a service are needed?
– Service Placement Problem: Where should
these services be placed?
– Adaptive Services: How do these deployments
change with evolution of the user community
and variations in usage demand?
Research Questions:
Composition Over Providers
• Cooperative service placement
– Consider placement from perspective of entire
community of service providers
– How to achieve best possible placement across
whole community?
– How do service providers make known their
services for possible peering/composition with
other providers (mechanisms of service
advertisement/service level agreement)?
– How are these offered services verified
(service agreement verification)? Which service
provider is responsible?
Research Questions:
Spanning Service Providers
• Brokered service placement
– Form own service composition by picking &
choosing among service instances discovered
from underlying service providers
– How is service quality determined by 3rd-party
broker (performance verification)?
– How is service composition correctness
determined by the 3rd-party broker (protocol
verification)?
Research Questions
• Service Identification/Choice Problem
– Given an application (e.g., content distribution), which is
the best service (e.g., cache/storage resources,
transport/interconnection connectivity and bandwidth
for performance-constrained delivery) for supporting it?
• Service Selection Problem
– Given provisioning & placement of services within admin
domain, which is “best” service instance?
– Considering load, distance/latency between clients of the
service and where the service is placed,
subscription/billing relationships, loyalty/affinity
relationships, preferences, etc.
Service Examples
• Connectivity/Reachability
– Basic Internet routing between ASs
– More sophisticated multicast distribution formation
– Performance constrained connectivity/latency and bandwidth
guarantees (e.g., Clearinghouse/Soft QoS)
• Performance monitoring services (distance/latency
mapping, load collection/balancing across service
instances)
• Content distribution services: cache/storage
resources, distribution/transport resources
What is a Service?
• Content transformation services (format translators)
• Gateway selection under load and performance
constraints
• Resource allocation services (e.g., auctions for
bandwidth, processing, storage)
• Mobility services (e.g., device ensembles)
• Who is allowed to invoke a service:
Authentication, Accounting, Access Control
• Payment for services: billing, financial clearinghouses
• Interworking services across administrative
domains/different technologies
Some Starting SAHARA
Assumptions
• Dynamic confederations to better share resources &
deploy access/achieve regional coverage more rapidly
• Scarce resources efficiently allocated using dynamic
“market-driven” mechanisms
• Trusted third partners manage resource marketplace
in a fair, unbiased, audited and verifiable basis
• Vertical stovepipe replaced by horizontally organized
“multi-providers,” open to increased competition and
more efficient allocation of resources
• Sanity Check?
Implications for Architectural
Elements
• “Open” service/resource allocation model
– Independent service creation, establishment,
placement, in overlapping domains
– Resources, capabilities, status described/exchanged
amongst confederates, via enhanced capability
negotiation
– Allocation based on economic methods, such as
congestion pricing, dynamic marketplaces/auctions
– Trust management among participants, based on
trusted third party monitors
Implications for Architectural
Elements
• Forming dynamic confederations
– Discovering potential confederates
– Establishing trust relationships
– Managing transitive trust relationships & levels
of transparency
– Not all confederates need be competitors-heterogeneous, collocated access networks to
better support applications
Architectural Elements
• Alternative View: Service Brokering
– Dynamically construct overlays on component
services provided by underlying service
providers
• E.g., overlay network segments with desirable
performance attributes
• E.g., construct end-to-end multicast trees from
subtrees in different service provider clouds
– Redirect to alternative service instances
• E.g., choose instance based on distance, network load,
server load, trust relationships, resilience to network
failure, …
TINA Reference Model
Service
Generic Mgmt
& Control
Applications
Objects
Sessions
Transport
• Separate
– apps from exec environ
– service-specific from
control
• Generic (Common) Objects
+ Service-Specific Objects
• Session: duration-based
context for processes
provisioning a service
Distributed Processing
Environment
– Access session (authentication, service selection)
– Service session
Network Environment
– Comm session: abstract
view of net connections
• User service session (user
state, resources)
• Provider service session
(service logic)
TINA Reference Model
B
u
s
i
n
e
s
s
M
o
d
e
l
I
n
f
o
r
m
a
t
i
o
n
M
o
d
e
l
C
o
m
p
u
t
a
t
i
o
n
a
l
M
o
d
e
l
Service
Generic Mgmt
& Control
Applications
Objects
Sessions
Transport
Distributed Processing
Environment
• Business Model
– Roles/entities & their
relationships while
participating in service
provisioning
– E.g., consumer, retailer,
broker, 3rd party provider,
content provider,
connectivity provider
• Information Model
– Information-bearing
entities
– E.g., user and service
profiles
• Computational Model
Network Environment
– Computational objects &
their relationships
Composed Services Under
Investigation
• Overlay routing “service”: connectivity and reachability
(BGP++: Sharad, Lakshmi, Morley)
• Multicast service: distribution tree formation across
administrative domains (Mukund)
• Soft QoS Service: performance constrained
connectivity/latency and bandwidth guarantees
(Clearinghouse: Chen-nee, Lakshmi)
• Performance monitoring service: distance/latency
mapping, load collection/balancing across service
instances (Yan)
• Content distribution services: cache/storage resources,
distribution/transport resources (Yan, Morley)
Composed Services Under
Investigation
Infrastructure Services
– Highly available/fast fall-over
services in wide-area (Bhaskar);
Fall-back path bandwidth
provisioning (Weidong);
– Service instance selection, loadbalanced resource sharing;
– Resource allocation/auctions and
class-of-service pricing for
bandwidth, processing, storage
(Weidong & Matt);
– Mobility and cooperation across
access networks/device
ensembles (Machi)
– Interdomain Authentication &
Access Control (Suzuki)
Applications
– Content
transformation/format
translators;
Universal In-Box (Bhaskar)
– H.323 Gateway selection
under load & performance
constraints (Matt)
– VoIP and bandwidth
congestion pricing (Jimmy)
– Smart Spaces/PAN?
SAHARA Architecture
Network Environment
Service
Generic Mgmt
& Control
Sessions
Transport
Distributed Processing
Environment
Performance
Verification
• Points of Presence between different
kinds of networks
– “Path” Provider (PP)
Applications
Objects
– Explicitly distinguish between multiple
Access Networks and Core Networks
– “Gateway Provider” (GP)
SLAs
Network Environment
• Autonomous systems (AS) determine
service domains for purposes of
reachability
• Peering between administrative
domains managed via BGP
• Point-to-point (and multipoint) latency,
availability SLAs within a single
administrative domain
– “Datacenter” Provider (DCP)
• Distributed computing resources
(processing, storage) embedded within
network topology
• Load/latency/availability SLAs within
single datacenter location
SAHARA Architecture
Service
Generic Mgmt
& Control
Distributed Processing:
Service Placement
– Place objects (operators + data) at
DCs, connected by paths
• Multiple object and path instances for
load balancing, availability, scale
Applications
– Brokers
Objects
Sessions
Transport
Distributed Processing
Environment
Network Environment
• Given performance & other constraints:
– Path brokering: create “overlay
network” among processing sites,
link by link
– DC brokering: given distribution of
clients, select processing sites for
operators
– Confederations
• Visibility of (alternative) paths, DCs
among associated providers
• Peer-to-peer reassignment of objects
to DCs and paths
SAHARA Architecture
Service
Generic Mgmt
& Control
Sessions
– Authorization, Authentication,
Accounting
• Interworking services spanning
administrative domains
Applications
Objects
Distributed Processing:
Service Building Services
– Service Selection and Naming Service
Transport
Distributed Processing
Environment
• Choosing a “best” service
• Finding “nearest” service instance
– Service Redirection Service
• Load balancing among service instances
• Selecting the best among services with
common affinity
• Mobility support
– Resource Allocation Service
• Auction-based allocation
– Performance Measurement Service
Network Environment
• Network distance measurements
• Latency measurements for operator
invocation over network
SAHARA Architecture
Applications
Service
Generic Mgmt
& Control
Sessions
• Content xform proxies
• Latency, availability, scalability
– Content-distribution services
Applications
Objects
– Unified messaging services
(Universal In-box)
Transport
Distributed Processing
Environment
• Cache placement & replenishment
algorithms
• Adaptive to client community
evolution
– IP Telephony
• H.323 gateway selection/load
balancing
• Balance between packet (IP) and
circuit-switched (PSTN) path
– Device Ensembles/Virtual Devices
Network Environment
• Inter-network stream
synchronization
• Virtual device proxy placement
– Virtual Home Environment
SAHARA and TINA
• Key Differences
– Extreme heterogeneity of spanned networks and resources
– Greater awareness and management of underlying network
topology/administrative scopes and affect on services
• Focus on
– Cooperative vs. competitive service composition
– Resource management via placement, allocation, redirection
to services and resources
• Borrow good parts of TINA
– Applications/Distributed Processing/Network Environment
– Business models/Information Model/Computation Model
• Understand why TINA failed
– Avoid full-blown complexity of TINA
Example: Content Distribution
• Application: Content Delivery
Service
Generic Mgmt
& Control
Applications
Objects
Sessions
Transport
Distributed Processing
Environment
Network Environment
– Clients: Subscribers, Publishers
• Services
– Distribution network
– Content caches (service instances)
• Place caches at selected DCs
(service placement)
• Redirect client to “best” cache
instance (service redirection)
– Based on proximity, load, content
• Service Composition
– Broker multi-point distribution paths
between publishers and caches
– Add/delete cache instances as client
community grows/shrinks
• Brokering at content level among
competing CDNs
SAHARA Architectural Model
Application
plane
Composed Services
Logical
platform
Peering Relations
Overlay Network
Hardware
platform
Service Clusters
Gateways
SAHARA Architectural Model
Service Path Creation
Application
plane
Composed Services
Logical
platform
Peering Relations
Overlay Network
Hardware
platform
Service Clusters
Gateways
Service Selection
Service Placement
Service Location
Perf Measurement
SAHARA Architectural Model
Load Balancing
Application
plane
Composed Services
Logical
platform
Peering Relations
Overlay Network
Hardware
platform
Service Clusters
Gateways
Service Selection
Service Placement
Service Redirection
Perf Measurement
SAHARA Architectural Model
Service Brokering
Application
plane
Composed Services
Logical
platform
Peering Relations
Overlay Network
Hardware
platform
Service Clusters
Gateways
Path Determination
Perf Measurement
Verification
SAHARA Architectural Model
Service Confederation
Application
plane
Composed Services
Logical
platform
Peering Relations
Overlay Network
Hardware
platform
Service Clusters
Gateways
Service Discovery
SLA Negotiation
Perf Measurement
SLA Verification
Authentication &
Authorization Interworking
Mobility Interworking
SAHARA Architectural Model
High Availability Services
Application
plane
Composed Services
Logical
platform
Peering Relations
Overlay Network
Hardware
platform
Service Clusters
Gateways
Service Failure
Detection
Service Recovery
Path re-composition
SAHARA Architectural Model
High Availability Services
Application
plane
Composed Services
Logical
platform
Peering Relations
Overlay Network
Hardware
platform
Service Clusters
Gateways
Service Location
Path Orthogonality
Determination
SAHARA Architectural Model
Universal In-Box
Application
plane
Composed Services
Translator
Provisioning and
Placement
Logical
platform
Peering Relations
Overlay Network
Path Determination
Hardware
platform
Service Clusters
Gateways
SAHARA Architectural Model
Content Distribution
Application
plane
Composed Services
Cache
Provisioning and
Placement
Logical
platform
Peering Relations
Overlay Network
Distribution Tree
Formation
Hardware
platform
Service Clusters
Gateways
SAHARA Architectural Model
Voice over IP
Application
plane
Composed Services
Gateway
Provisioning and
Placement
Logical
platform
Peering Relations
Overlay Network
Packet-to-Circuit
Termination
Selection
Hardware
platform
Service Clusters
Gateways
Summary and Status
• Evolve (mobile) Internet architecture to
better support multiple service provider model
– Dynamic environment, location-based implies larger
numbers of service providers & service instances
• Refine and build SAHARA Architecture
– Specification driven by selected applications and
underlying wide-area services
– Composition across confederated vs. independent
service providers: peer-to-peer vs. brokering
Discussion