38
“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

“Design Review” Randy H. Katz, Anthony Joseph, Ion Stoica Computer Science Division Electrical Engineering and Computer Science Department University of

  • View
    216

  • Download
    0

Embed Size (px)

Citation preview

Page 1: “Design Review” Randy H. Katz, Anthony Joseph, Ion Stoica Computer Science Division Electrical Engineering and Computer Science Department University of

“Design Review”

Randy H. Katz, Anthony Joseph, Ion StoicaComputer Science Division

Electrical Engineering and Computer Science DepartmentUniversity of California, Berkeley

Berkeley, CA 94720-1776

Page 2: “Design Review” Randy H. Katz, Anthony Joseph, Ion Stoica Computer Science Division Electrical Engineering and Computer Science Department University of

The “Sahara” Project

• Service• Architecture for• Heterogeneous• Access,• Resources, and• Applications

Page 3: “Design Review” Randy H. Katz, Anthony Joseph, Ion Stoica Computer Science Division Electrical Engineering and Computer Science Department University of

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, access-control 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

Page 4: “Design Review” Randy H. Katz, Anthony Joseph, Ion Stoica Computer Science Division Electrical Engineering and Computer Science Department University of

Global Packet Network Internetworking

(Connectivity)

ISPCLEC

Horizontal Service Model

Application-specificOverlay Networks

(Multicast Tunnels, Mgmt Svrcs)

Applications(Portals, E-Commerce,

E-Tainment, Media)

Application-specific Servers(Streaming Media, Transformation)ASP

InternetData Centers

Appl Infrastructure Services(Distribution, Caching,

Searching, Hosting)

AIPISV

Applications-enablingServices

Processing/StorageLocation & Placement

Reachability &Topology

Page 5: “Design Review” Randy H. Katz, Anthony Joseph, Ion Stoica Computer Science Division Electrical Engineering and Computer Science Department University of

AccessNetwork

s

Core Networks

Connectivity and Processing

Transit Net

Transit Net

Transit Net

PrivatePeering

NAP

PublicPeering

InternetDatacenter

PSTNRegional

WirelineRegionalVoiceVoice

CellCell

Cell

CableModem

LAN

LAN

LAN

Premises-based

WLAN

WLAN

WLAN

Premises-based

Operator-based

H.323Data

Data

RAS

Analog

DSLAM

H.323

Page 6: “Design Review” Randy H. Katz, Anthony Joseph, Ion Stoica Computer Science Division Electrical Engineering and Computer Science Department University of

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

Page 7: “Design Review” Randy H. Katz, Anthony Joseph, Ion Stoica Computer Science Division Electrical Engineering and Computer Science Department University of

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?

Page 8: “Design Review” Randy H. Katz, Anthony Joseph, Ion Stoica Computer Science Division Electrical Engineering and Computer Science Department University of

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?

Page 9: “Design Review” Randy H. Katz, Anthony Joseph, Ion Stoica Computer Science Division Electrical Engineering and Computer Science Department University of

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)?

Page 10: “Design Review” Randy H. Katz, Anthony Joseph, Ion Stoica Computer Science Division Electrical Engineering and Computer Science Department University of

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.

Page 11: “Design Review” Randy H. Katz, Anthony Joseph, Ion Stoica Computer Science Division Electrical Engineering and Computer Science Department University of

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

Page 12: “Design Review” Randy H. Katz, Anthony Joseph, Ion Stoica Computer Science Division Electrical Engineering and Computer Science Department University of

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

Page 13: “Design Review” Randy H. Katz, Anthony Joseph, Ion Stoica Computer Science Division Electrical Engineering and Computer Science Department University of

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?

Page 14: “Design Review” Randy H. Katz, Anthony Joseph, Ion Stoica Computer Science Division Electrical Engineering and Computer Science Department University of

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

Page 15: “Design Review” Randy H. Katz, Anthony Joseph, Ion Stoica Computer Science Division Electrical Engineering and Computer Science Department University of

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

Page 16: “Design Review” Randy H. Katz, Anthony Joseph, Ion Stoica Computer Science Division Electrical Engineering and Computer Science Department University of

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, …

Page 17: “Design Review” Randy H. Katz, Anthony Joseph, Ion Stoica Computer Science Division Electrical Engineering and Computer Science Department University of

TINA Reference Model

• Separate– apps from exec environ– service-specific from control

• Generic (Common) Objects + Service-Specific Objects

• Session: duration-based context for processes provisioning a service– Access session (authen-

tication, service selection)– Service session

• User service session (user state, resources)

• Provider service session (service logic)

– Comm session: abstract view of net connections

Distributed ProcessingEnvironment

Objects Sessions Trans-port

Applications

ServiceGeneric Mgmt

& Control

Network Environment

Page 18: “Design Review” Randy H. Katz, Anthony Joseph, Ion Stoica Computer Science Division Electrical Engineering and Computer Science Department University of

TINA Reference Model

• 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

– Computational objects & their relationships

Business

Model

Information

Model

Computational

Model

Distributed ProcessingEnvironment

Objects Sessions Trans-port

Applications

ServiceGeneric Mgmt

& Control

Network Environment

Page 19: “Design Review” Randy H. Katz, Anthony Joseph, Ion Stoica Computer Science Division Electrical Engineering and Computer Science Department University of

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)

Page 20: “Design Review” Randy H. Katz, Anthony Joseph, Ion Stoica Computer Science Division Electrical Engineering and Computer Science Department University of

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, load-balanced 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?

Page 21: “Design Review” Randy H. Katz, Anthony Joseph, Ion Stoica Computer Science Division Electrical Engineering and Computer Science Department University of

SAHARA ArchitectureNetwork Environment– Explicitly distinguish between multiple

Access Networks and Core Networks– “Gateway Provider” (GP)

• Points of Presence between different kinds of networks

– “Path” Provider (PP)• 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

Distributed ProcessingEnvironment

Objects Sessions Trans-port

Applications

ServiceGeneric Mgmt

& Control

Network Environment

SLAsPerformanceVerification

Page 22: “Design Review” Randy H. Katz, Anthony Joseph, Ion Stoica Computer Science Division Electrical Engineering and Computer Science Department University of

SAHARA Architecture

Distributed Processing:Service Placement– Place objects (operators + data) at

DCs, connected by paths• Multiple object and path instances for

load balancing, availability, scale– Brokers

• 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

Distributed ProcessingEnvironment

Objects Sessions Trans-port

Applications

ServiceGeneric Mgmt

& Control

Network Environment

Page 23: “Design Review” Randy H. Katz, Anthony Joseph, Ion Stoica Computer Science Division Electrical Engineering and Computer Science Department University of

SAHARA ArchitectureDistributed Processing:Service Building Services– Authorization, Authentication,

Accounting• Interworking services spanning

administrative domains– Service Selection and Naming Service

• 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 distance measurements• Latency measurements for operator

invocation over network

Distributed ProcessingEnvironment

Objects Sessions Trans-port

Applications

ServiceGeneric Mgmt

& Control

Network Environment

Page 24: “Design Review” Randy H. Katz, Anthony Joseph, Ion Stoica Computer Science Division Electrical Engineering and Computer Science Department University of

SAHARA ArchitectureApplications– Unified messaging services

(Universal In-box)• Content xform proxies• Latency, availability, scalability

– Content-distribution services• 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• Inter-network stream

synchronization• Virtual device proxy placement

– Virtual Home Environment

Distributed ProcessingEnvironment

Objects Sessions Trans-port

Applications

ServiceGeneric Mgmt

& Control

Network Environment

Page 25: “Design Review” Randy H. Katz, Anthony Joseph, Ion Stoica Computer Science Division Electrical Engineering and Computer Science Department University of

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

Page 26: “Design Review” Randy H. Katz, Anthony Joseph, Ion Stoica Computer Science Division Electrical Engineering and Computer Science Department University of

Example: Content Distribution

• Application: Content Delivery– 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

Distributed ProcessingEnvironment

Objects Sessions Trans-port

Applications

ServiceGeneric Mgmt

& Control

Network Environment

Page 27: “Design Review” Randy H. Katz, Anthony Joseph, Ion Stoica Computer Science Division Electrical Engineering and Computer Science Department University of

SAHARA Architectural Model

Hardware platform

Service ClustersGateways

Peering RelationsOverlay Network

Logical platform

Application plane

Composed Services

Page 28: “Design Review” Randy H. Katz, Anthony Joseph, Ion Stoica Computer Science Division Electrical Engineering and Computer Science Department University of

SAHARA Architectural Model

Hardware platform

Service ClustersGateways

Peering RelationsOverlay Network

Logical platform

Application plane

Composed Services

Service SelectionService Placement

Service LocationPerf Measurement

Service Path Creation

Page 29: “Design Review” Randy H. Katz, Anthony Joseph, Ion Stoica Computer Science Division Electrical Engineering and Computer Science Department University of

SAHARA Architectural Model

Hardware platform

Service ClustersGateways

Peering RelationsOverlay Network

Logical platform

Application plane

Composed Services

Service SelectionService Placement

Service RedirectionPerf Measurement

Load Balancing

Page 30: “Design Review” Randy H. Katz, Anthony Joseph, Ion Stoica Computer Science Division Electrical Engineering and Computer Science Department University of

SAHARA Architectural Model

Hardware platform

Service ClustersGateways

Peering RelationsOverlay Network

Logical platform

Application plane

Composed Services

Path Determination

Perf MeasurementVerification

Service Brokering

Page 31: “Design Review” Randy H. Katz, Anthony Joseph, Ion Stoica Computer Science Division Electrical Engineering and Computer Science Department University of

SAHARA Architectural Model

Hardware platform

Service ClustersGateways

Peering RelationsOverlay Network

Logical platform

Application plane

Composed Services

Service DiscoverySLA Negotiation

Perf MeasurementSLA Verification

Service Confederation

Authentication & Authorization Interworking

Mobility Interworking

Page 32: “Design Review” Randy H. Katz, Anthony Joseph, Ion Stoica Computer Science Division Electrical Engineering and Computer Science Department University of

SAHARA Architectural Model

Hardware platform

Service ClustersGateways

Peering RelationsOverlay Network

Logical platform

Application plane

Composed Services

Service FailureDetection

Service RecoveryPath re-composition

High Availability Services

Page 33: “Design Review” Randy H. Katz, Anthony Joseph, Ion Stoica Computer Science Division Electrical Engineering and Computer Science Department University of

SAHARA Architectural Model

Hardware platform

Service ClustersGateways

Peering RelationsOverlay Network

Logical platform

Application plane

Composed Services

Service Location

Path OrthogonalityDetermination

High Availability Services

Page 34: “Design Review” Randy H. Katz, Anthony Joseph, Ion Stoica Computer Science Division Electrical Engineering and Computer Science Department University of

SAHARA Architectural Model

Hardware platform

Service ClustersGateways

Peering RelationsOverlay Network

Logical platform

Application plane

Composed ServicesTranslator

Provisioning andPlacement

Path Determination

Universal In-Box

Page 35: “Design Review” Randy H. Katz, Anthony Joseph, Ion Stoica Computer Science Division Electrical Engineering and Computer Science Department University of

SAHARA Architectural Model

Hardware platform

Service ClustersGateways

Peering RelationsOverlay Network

Logical platform

Application plane

Composed ServicesCache

Provisioning andPlacement

Distribution TreeFormation

Content Distribution

Page 36: “Design Review” Randy H. Katz, Anthony Joseph, Ion Stoica Computer Science Division Electrical Engineering and Computer Science Department University of

SAHARA Architectural Model

Hardware platform

Service ClustersGateways

Peering RelationsOverlay Network

Logical platform

Application plane

Composed ServicesGateway

Provisioning andPlacement

Packet-to-CircuitTermination

Selection

Voice over IP

Page 37: “Design Review” Randy H. Katz, Anthony Joseph, Ion Stoica Computer Science Division Electrical Engineering and Computer Science Department University of

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

Page 38: “Design Review” Randy H. Katz, Anthony Joseph, Ion Stoica Computer Science Division Electrical Engineering and Computer Science Department University of

Discussion