application layer traffic optimization (alto) network positioning system

Download Application Layer Traffic Optimization (ALTO) Network Positioning System

If you can't read please download the document

Upload: emelda

Post on 23-Feb-2016

31 views

Category:

Documents


0 download

DESCRIPTION

Application Layer Traffic Optimization (ALTO) Network Positioning System. Stefano Previdi - [email protected] Distinguished Engineer Cisco Systems. RIPE61 Rome, November 2010. Cisco NPS Introduction. NPS Introduction/Overview Service Applicability Implementation - PowerPoint PPT Presentation

TRANSCRIPT

Intercarrier Content Distribution

Application Layer Traffic Optimization (ALTO)Network Positioning SystemRIPE61 Rome, November 2010

Stefano Previdi - [email protected] Distinguished EngineerCisco Systems

2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System# 2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System#

1Cisco NPS IntroductionNPS Introduction/OverviewService ApplicabilityImplementationGroups and PoliciesNext StepsSummary 2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System#

2NPSIntroduction & Overview 2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System# 2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System#

3ALTO/NPS IntroductionWhat: Application Layer Traffic Optimization (IETF ALTO): defines an API through which topology and infrastructure hint is requested by the application layer and delivered by the network layer/infraNetwork Positioning System: an ALTO implementation that computes the location of and distance between endpoints.Why: Caching and replication are vital to optimization of network traffic.Distribution paradigms efficiency is augmented by dynamic mechanisms that locate (and determine distance to) services and data in order to optimize infrastructure resources utilization.Example: need to locate the nearest copy of a movie or the closest instance of a service among several available resourcesHow: ALTO: it is NOT in the scope of ALTO standardization effort to defines mechanisms used for deriving topology/infra informationNPS: implementation of specific mechanisms and algorithms leveraging routing and infra layer databases leverages infra/routing layer and Policy information.Extensible to other information sources such as: state & performance and Geo-location

2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System#

4Cisco Network Positioning SystemArchitecture Layer SeparationIETF API

P2P SwarmsOTTOverlay

CDN. . .NPS Server:Information CollectorAlgorithmsDatabases

Request / Reply Model

Network LayerRouting Protocols Databases: ISIS, OSPF and BGPPolicy Database

Cloud / *aaSState and performance informationGeo-locationinformationApplication LayerNPS 2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System#

5ALTO / NPSApplication (e.g.: CDN) layer, has little visibility of the underlying infrastructure Current application mechanisms: delay measurements, DNS, anycast, As a consequence, current application overlays do not take into account infrastructure resources during their selection processes

2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System#

6GoalsService Provider goal: optimize his resources utilization while improving service delivered to CDNs, applications and OTT overlaysCDN/Apps goals: improve user experienceIn general, a network-based NPS service has the advantage of better access to network topology, resources and policy informationBest for the job:A server sitting in between network and application layer and delivering topology based hints to applicationsAccess to topology and policy databases Delivers address ranking/preferences allowing definition of policies matching application (CDN) and network criteria 2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System#

7ALTO/NPS: Use CasesCurrent implementation addresses following use cases:CDNCloud Centric NetworkingPeer-to-Peer NetworkingFoundation for the Service Routing Layer concept

2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System#

8

NPS Service Applicability 2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System# 2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System#

9Service DeliveryKeep It Simple approach: When CDN has to select content location for user, it asks NPS firstThen, CDN includes NPS hint in selection processRequest Reply Model: Address Ranking Which targets in a given list of IP addresses are the closest to a particular query source (e.g.: user IP address) ?Simple location & distance request by application to networkExtensible to other ranking criteria

CDN

NPS Server:Information CollectorAlgorithmsDatabases

REQUEST User IP Add: 10.1.1.1Target-1: 10.20.1.1Target-2: 10.30.1.1Target-3: 10.40.1.1REPLYUser IP Add: 10.1.1.1Target-2: 10.30.1.1 10Target-3: 10.40.1.1 20Target-1: 10.20.1.1 30? 2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System#

10AppServerALTO Client embedded in Application Server (CDN case)

Service DeliveryALTOClientContent Location-2Content Location-1Content Location-3ALTO/NPSEngineNetwork Topology Information SourcesRouting Databases, Policy DB, NMS DB, GeoLoc, NPS DBNPSAlgorithmsREQUEST User IP Add: 10.1.1.1Target-1: 10.20.1.1Target-2: 10.30.1.1Target-3: 10.40.1.1REPLYUser IP Add: 10.1.1.1Target-2: 10.30.1.1 10Target-3: 10.40.1.1 20Target-1: 10.20.1.1 30AppClientContent/Service Request 2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System#

11AppClientService DeliveryALTO/NPS Client embedded in Application Client (e.g.: peer-to-peer)Content Location-2Content Location-1Content Location-3Network Topology Information SourcesRouting Databases, Policy DB, NMS DB, GeoLoc, ALTOClientREQUEST User IP Add: 10.1.1.1Target-1: 10.20.1.1Target-2: 10.30.1.1Target-3: 10.40.1.1REPLYUser IP Add: 10.1.1.1Target-2: 10.30.1.1 10Target-3: 10.40.1.1 20Target-1: 10.20.1.1 30ALTO/NPSEngineNPS DBNPSAlgorithms 2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System#

12 Use Case: Content Delivery NetworkIP Layer

NPSServerLayer Separation

SR with NPSCient NPS Reply with ranked list of addresses: User: IP1 Targets: IP20, IP103Redirect user to closest SE taking into account NPS and load4Routing TopologyHTTP Request: Get content from closest SE5 Content is located in streamers IP10 and IP20. SR sends request to NPS: User: IP1 Targets: IP10, IP20NPS/ALTOAPI2IP10IP20HTTP Request from end-user to CDN1

IP1Policy DB 2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System#

13Use Case: Peer-to-peer overlays P2p client sends NPS Request with list of addresses to rank 2NPS/ALTO APINPS Engine collects routing databases (ISIS/OSPF/BGP/Policy)0NPS Engine receives request and rank IP addresses based on location3NPS Engine replies ranked list of IP addresses 4

NPSEngineRouting/Infra DBPolicy DB

peer-to-peer network

P2P client finds content and list of peers (IP addr) 1

Source: Vinay Aggarwal, Anja Feldmann, Christian Scheideler. Can ISPs and P2P systems co-operate for improved performance? ACM SIGCOMM ComputerCommunications Review, Volume 37, Number 3, July 2007.

2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System#

14Service Provider perspectiveExample: transit links

B

C

A$$$Transit LinksTransitProvider

Where is the closest location for this

Preserve high cost bandwidth: transit linksApply policies to topology visibility delivered to upper layers

NPS 2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System#

CloudData Center

CloudData Center

Workload increaseCoreCloud VPN

CloudData CenterRequest resourcesWorkload DeployedAdditional Capacity Needs Request Cloud Resources1Check Availability, Performance, Determine Optimal Location2Self-provision Network Tenant, Virtual Compute, Storage, VPN3vDC Active41234Cloud Centric Networking Use Case

InternalData Center

2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System#

Heres another exampleSay, a big company does payroll processing at the end of the month. In these cases, theres going to be a temporary need for more compute capacity.Normally, this kind of provisioning requires manual intervention.However, using business rules, a cloud-aware CRS-3 can automatically request additional capacity from the data centers. . .The NPS identifies the datacenter with available capacityAnd the Cloud VPN capability automatically provisions VPNs, identify SLAs and manages security as the additional data center is brought on board.

16

NPS Implementation 2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System# 2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System#

17

Network Positioning System (NPS)An ALTO implementationHow to determine location and distance ? Topology: Routing Databases (IGP/BGP)Additional information sources: NMS, Geolocation, BGP LG, Policy: Prefix Groups / BGP Communities Cost/weight between group of prefixes (communities)How to best rank addresses ?Aggregate/combine results from multiple algorithms (routing, policy, groups)How to ensure security/confidentiality between application and network layers?No information is leaked in either wayClear layer isolation

NPS Server:Information CollectorAlgorithmsDatabases

Routing Protocols Databases: ISIS, OSPF and BGPPolicyDBLayer Separation No topology information leakingP2P Swarms

Cloud / *aaS

CDNs 2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System#

18Network Positioning System (NPS)An ALTO implementationHow to reconstruct network topology ?IGP Boundaries, BGP location dependent visibilityCollect IGP (Link-State) and BGP databasesTake into account area/level and AS boundariesNetwork visibility is related to locationArea vs. backbone, intra-AS Vs. inter-ASA NPS server sitting in AS-x will not have topology info about AS-yInter-AS NPS, two strategies:Share information between Autonomous SystemsRe-direct requests to best NPS server 2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System#

19

IGP based NPS Proximity algorithm leverages IGP link-state information and determines optimal choice for least impact on backbone infrastructureIGP choice: prefer target with closest exit point Extensions to routing algorithms as used in the routing layerNPS extensions for NPS purpose: traffic direction, selection processNetwork Positioning System (NPS)An ALTO implementation

NPS 2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System#

20BGP based NPS Proximity algorithm leverages IGP and BGP information and determines optimal choice based on both backbone infrastructure and inter-AS policiesBGP Policy mechanisms used by NPS to determine best location

Network Positioning System (NPS)An ALTO implementation

NPS

NPS

NPS 2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System#

21

Correlation between information sources: IGP/BGP/PolicyRe-build the full picture of the network topology for the purpose of the application

NPS

NPSNetwork Positioning System (NPS)An ALTO implementation 2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System#

22ALTO / Network Positioning SystemInter-NPS CommunicationsNPS acquires routing information from within the ASRequests received within the AS are locally serverRequests received for addresses outside the AS will be re-directed to NPS server located in addresses ASNPS servers exchange infoNPS Server

NPS Server

IGP/BGP AdjIGP/BGP AdjInter-NPS Ring

AS 1NPS Server

IGP/BGP Adj

AS 2

AS 3

2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System#

23

ALTO / Network Positioning System - Redirection

NPS-1NPS-2Strategy: redirect user request to NPS server having better network visibilityAlgorithm leverages BGP and NPS databasesWhen configured, NPS server establish a private overlayNPS addresses and AS# are known in the NPS ringNPS redirects SR to NPS in users ASInter-NPS RingIP2IP10IP207. Content Download

CDNsNPS-1

1. Content Request6. HTTP Redirect2. Request-1:User: IP2Targets: IP10, IP20NPS-2

3. Redirect:NPS-24. Request-2:PSA: IP2PTL: IP10, IP205. Reply:PSA: IP2PTL: IP20, IP10 2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System#

24

NPS Grouping and Policy Methods 2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System# 2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System#

25NPS/ALTO: Groups and MapsLocation definition may override routing visibilityNot everything can be grouped through prefix aggregationNeed for a policy mechanism allowing to group prefixesGood news: its available and called BGP CommunitiesExample: Users in POP1 should first prefer streamers in POP3, then POP2Requires:Ability to group prefixes other than through routing paradigm: BGP Community TaggingAbility to define distance/cost/preferences between groups: Policy definition in NPS server

Preference 2Preference 1POP 1

POP 2

POP 3

2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System#

26From topology to groups Abstract level of topologyAddresses application requirements in terms of NPS servicesGives powerful policy control on NPS algorithmsDynamic and static mechanismsRouting DBs andNPS AlgorithmsCost Matrix

Grp-1

Grp-2

Grp-6

Grp-3

Grp-5

Grp-4NPS/ALTO: Groups and Maps 2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System#

27

NPS: Grouping and Policies

11.3.1.111.3.2.1

BGP routes with community: 111:789AS 111Current implementation: NPS co-locates endpoints having prefixes with same BGP Community valueNPS allow to define arbitrary weight between communitiesExample:source-community 111:789 target-community 111:789 weight 5source-community 111:789 target-community 111:123 weight 3source-community 111:789 target-community 111:456 weight 1

BGP routes with community: 111:123

11.4.1.111.4.2.1

BGP routes with community: 111:45611.2.1.1

11.2.2.1RRNPS 2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System#

28NPS: Grouping and PoliciesGoals: Deliver a tool for SPs to implement and deploy NPS policiesreflecting existing network layer policies and applied to applicationsTopology visibility at network layer makes little sense for applicationNo need to know topology atomic detailsNeed to preserve confidentiality between layersScale NPS services in different application contextsDeliver NPS services based on different views of the network according to different applicationsTwo components:Grouping methodCost Matrix/Map 2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System#

29NPS: Grouping and PoliciesComponentsGrouping method: How to efficiently group prefixes/addressesSP need to define groups not corresponding to pure IP grouping methods (prefix/summary/AS)Groups should be able to reflect any policy criteria:Location, connectivity type, service, Grouping method should be capable of leveraging existing grouping methods deployed in SP infrastructureBGP Community is used by most SPs as a grouping methodCost MatrixPolicy and cost definition between groups 2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System#

30NPS: Aggregated Topology AlgorithmsCurrent deployments allow to leverage BGP CommunitiesBGP Communities represent location: PoP/City/Region/Additional numbering schemes can be deployed to represent new groupsNPS Server handle the change: NO IMPACT ON NETWORK

NPS algorithms leverage community attributes in order to derive the aggregate topology map

Current implementation use Community matching criteriastrict-matchweighted matchexclusionExample:source-community 123:1234 target-community 123:4567 weight 5

2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System#

31From Topology and Policies to MapsNPS: Grouping and PoliciesCost Matrix

Grp-1

Grp-2

Grp-6

Grp-3

Grp-5

Grp-4

Grp-1

Grp-6

Grp-3

Grp-5

Grp-2

Grp-5View-1View-2View-3Cost MatrixCost Matrix

Grp-4 2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System#

32

NPS Next Steps 2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System# 2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System#

33NPS/ALTO Implementation EnhancementsAdd NPS information sources Resources Utilization PerformanceGeo-locationLayer-2 Topology InformationService Awareness (Service Routing)Support of different Address-FamiliesV4/V6, VPN-V4/VPN-V6Integration with Routing SW 2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System#

34Summary 2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System# 2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System#

35ALTO / Network Positioning System (NPS)SummaryNPS is a service delivered by the SP network to application layerCDN, VoIP, P2P, Clouds, NPS Service consists of delivering: Cost rating preferences of IP addresses/subnets Reflecting topology, state, performance and policies implemented in the networkAvailable shipped Implementations 2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System#

36Different mechanisms are available in order to leverage topology informationDynamic: routing protocols databasesPolicy-based: through Maps configurationNPS will integrate multiple network information sources in order to deliver accurate and efficient ranking services to applicationsALTO / Network Positioning System (NPS)Summary 2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System#

37NPS ClientEmbedded into application client orEmbedded in application server/portalSelection is improved by ranked list delivered by NPS serverNPS ServerInterfaces with network and infrastructure layer. Receives NPS RequestsReturns requests with ranked listsALTO / Network Positioning System (NPS)Summary 2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System#

38

Thank You ! 2010 Cisco Systems, Inc. All rights reserved.Cisco Network Positioning System#

3939