the platform as a service model for networking eric keller, jennifer rexford princeton university...
TRANSCRIPT
![Page 1: The Platform as a Service Model for Networking Eric Keller, Jennifer Rexford Princeton University INM/WREN 2010](https://reader036.vdocuments.net/reader036/viewer/2022062511/5518cb5a550346991f8b5a47/html5/thumbnails/1.jpg)
The “Platform as a Service”Model for Networking
Eric Keller, Jennifer Rexford
Princeton University
INM/WREN 2010
![Page 2: The Platform as a Service Model for Networking Eric Keller, Jennifer Rexford Princeton University INM/WREN 2010](https://reader036.vdocuments.net/reader036/viewer/2022062511/5518cb5a550346991f8b5a47/html5/thumbnails/2.jpg)
Hosted Infrastructures
• Shift towards hosted and shared infrastructures– Cloud computing
• Benefits:– Dynamically scale up/down – Cost benefits
2
![Page 3: The Platform as a Service Model for Networking Eric Keller, Jennifer Rexford Princeton University INM/WREN 2010](https://reader036.vdocuments.net/reader036/viewer/2022062511/5518cb5a550346991f8b5a47/html5/thumbnails/3.jpg)
Hosted Network Infrastructure
• Poised to happen for networking
• Similar benefits
• Additional driver: in-network inaccessibility
?3
![Page 4: The Platform as a Service Model for Networking Eric Keller, Jennifer Rexford Princeton University INM/WREN 2010](https://reader036.vdocuments.net/reader036/viewer/2022062511/5518cb5a550346991f8b5a47/html5/thumbnails/4.jpg)
Old News
• I’m not the first to believe this
• Large body of research in Network Virtualization– Run multiple virtual networks concurrently on a shared
infrastructure
4
![Page 5: The Platform as a Service Model for Networking Eric Keller, Jennifer Rexford Princeton University INM/WREN 2010](https://reader036.vdocuments.net/reader036/viewer/2022062511/5518cb5a550346991f8b5a47/html5/thumbnails/5.jpg)
That’s the Wrong Approach
• Instead… abstraction should be a platform– Customers can focus on their application/service
• “Single Router Platform”
5
![Page 6: The Platform as a Service Model for Networking Eric Keller, Jennifer Rexford Princeton University INM/WREN 2010](https://reader036.vdocuments.net/reader036/viewer/2022062511/5518cb5a550346991f8b5a47/html5/thumbnails/6.jpg)
What’s the problem with network virtualization?
6
![Page 7: The Platform as a Service Model for Networking Eric Keller, Jennifer Rexford Princeton University INM/WREN 2010](https://reader036.vdocuments.net/reader036/viewer/2022062511/5518cb5a550346991f8b5a47/html5/thumbnails/7.jpg)
Undesirable Business Model(for infrastructure provider)
InfrastructureProviders
Applications
End Users
ServiceProviders
Owns and maintains physical routers/links
Builds application which uses in-network functionality(e.g., Virtual Worlds provider using a multi-cast service)
Leases slices of virtualized routers to create networkRuns custom software/protocols/configurations(e.g., a multi-cast or reliable connectivity)
7
![Page 8: The Platform as a Service Model for Networking Eric Keller, Jennifer Rexford Princeton University INM/WREN 2010](https://reader036.vdocuments.net/reader036/viewer/2022062511/5518cb5a550346991f8b5a47/html5/thumbnails/8.jpg)
InfrastructureProviders
Applications
End Users
ServiceProviders
Owns and maintains physical routers/links
Builds application which uses in-network functionality(e.g., Virtual Worlds provider using a multi-cast service)
Leases slices of virtualized routers to create networkRuns custom software/protocols/configurations(e.g., a multi-cast or reliable connectivity)
Commodity Service(unappealing to traditional ISPs)
Undesirable Business Model(for infrastructure provider)
8
![Page 9: The Platform as a Service Model for Networking Eric Keller, Jennifer Rexford Princeton University INM/WREN 2010](https://reader036.vdocuments.net/reader036/viewer/2022062511/5518cb5a550346991f8b5a47/html5/thumbnails/9.jpg)
Difficult to Manage(for application providers)
• Same as managing physical network– Traffic engineering– Configuring a distributed collection of routers– Deal with failure– Managing resources to meet demand
• Yes, but won’t service providers deal with that?
9
![Page 10: The Platform as a Service Model for Networking Eric Keller, Jennifer Rexford Princeton University INM/WREN 2010](https://reader036.vdocuments.net/reader036/viewer/2022062511/5518cb5a550346991f8b5a47/html5/thumbnails/10.jpg)
Limited Market Opportunity(for service providers)
• Applications just want some control– Either service provider provides it or develop themselves
• Services must be general to have a large market– Are there really that many generic services?
• Don’t count on infrastructure providers– That’s today’s model
10
![Page 11: The Platform as a Service Model for Networking Eric Keller, Jennifer Rexford Princeton University INM/WREN 2010](https://reader036.vdocuments.net/reader036/viewer/2022062511/5518cb5a550346991f8b5a47/html5/thumbnails/11.jpg)
If not network virtualization, then what?
11
![Page 12: The Platform as a Service Model for Networking Eric Keller, Jennifer Rexford Princeton University INM/WREN 2010](https://reader036.vdocuments.net/reader036/viewer/2022062511/5518cb5a550346991f8b5a47/html5/thumbnails/12.jpg)
Cloud Computing Landscape
• Infrastructure as a Service (IaaS)– e.g., Amazon EC2, Rackspace Cloud– Abstraction is managing set of virtual machines– Freedom: run any software you want – Effort: manage redundancy, all software
• Platform as a Service (PaaS)– e.g., Google App Engine, Heroku– Write application using libraries and
without worrying about actual servers– Freedom: tied to specific platform capabilities– Effort: apps scale automatically, build on the platform
• (And everything in between) 12
![Page 13: The Platform as a Service Model for Networking Eric Keller, Jennifer Rexford Princeton University INM/WREN 2010](https://reader036.vdocuments.net/reader036/viewer/2022062511/5518cb5a550346991f8b5a47/html5/thumbnails/13.jpg)
Key Differences(why IaaS makes sense for computing)
• Compute:– Legacy applications– Workflow used to writing applications on servers
• Network:– Limited developer community– Not the end application
Platform enabling in-network functionality, without having to manage a network
Goal
13
![Page 14: The Platform as a Service Model for Networking Eric Keller, Jennifer Rexford Princeton University INM/WREN 2010](https://reader036.vdocuments.net/reader036/viewer/2022062511/5518cb5a550346991f8b5a47/html5/thumbnails/14.jpg)
The Router Platform (PaaS)
• Present customers (application developers) with platform– Decoupled from physical infrastructure– Customers can focus on their application/service– Infrastructure owner has freedom in managing the
infrastructure
14
![Page 15: The Platform as a Service Model for Networking Eric Keller, Jennifer Rexford Princeton University INM/WREN 2010](https://reader036.vdocuments.net/reader036/viewer/2022062511/5518cb5a550346991f8b5a47/html5/thumbnails/15.jpg)
The Single Router Abstraction
• Router abstraction covers functionality, doesn’t bother with physical infrastructure– Router more than just routing
• Note: this is preliminary thinking
Data Plane
RoutingSoftware
General purposefunctions
Customer Program
API
15
![Page 16: The Platform as a Service Model for Networking Eric Keller, Jennifer Rexford Princeton University INM/WREN 2010](https://reader036.vdocuments.net/reader036/viewer/2022062511/5518cb5a550346991f8b5a47/html5/thumbnails/16.jpg)
Interactive Program
• Customer provides executable script(rather than static configuration file)– Initialization routine– Dynamic modification to configuration– Driven by events (control message, event notification)
Data Plane
RoutingSoftware
General purposefunctions
Customer Program
API
16
![Page 17: The Platform as a Service Model for Networking Eric Keller, Jennifer Rexford Princeton University INM/WREN 2010](https://reader036.vdocuments.net/reader036/viewer/2022062511/5518cb5a550346991f8b5a47/html5/thumbnails/17.jpg)
Routing
• Specify sessions with neighboring routers– Customer’s routers or infrastructure provider’s neighbors
• Know what links are available– Interface to query, metrics, callback when change
Data Plane
RoutingSoftware
General purposefunctions
Customer Program
API
17
![Page 18: The Platform as a Service Model for Networking Eric Keller, Jennifer Rexford Princeton University INM/WREN 2010](https://reader036.vdocuments.net/reader036/viewer/2022062511/5518cb5a550346991f8b5a47/html5/thumbnails/18.jpg)
Data Plane
• Direct configuration of data plane functions– Setting up multi-cast groups, access control lists, etc.
Data Plane
RoutingSoftware
General purposefunctions
Customer Program
API
18
![Page 19: The Platform as a Service Model for Networking Eric Keller, Jennifer Rexford Princeton University INM/WREN 2010](https://reader036.vdocuments.net/reader036/viewer/2022062511/5518cb5a550346991f8b5a47/html5/thumbnails/19.jpg)
General-Purpose Processing
• As name suggest, can be anything
• Can be written by customer as well
Data Plane
RoutingSoftware
General purposefunctions
Customer Program
API
19
![Page 20: The Platform as a Service Model for Networking Eric Keller, Jennifer Rexford Princeton University INM/WREN 2010](https://reader036.vdocuments.net/reader036/viewer/2022062511/5518cb5a550346991f8b5a47/html5/thumbnails/20.jpg)
Customer Controlled RoutingISP chooses one route, no choice to customers
Customer: Configure Router in ISP
Dest.
C1
C2
ISPX
Y
Low cost route
Low latency route
20
![Page 21: The Platform as a Service Model for Networking Eric Keller, Jennifer Rexford Princeton University INM/WREN 2010](https://reader036.vdocuments.net/reader036/viewer/2022062511/5518cb5a550346991f8b5a47/html5/thumbnails/21.jpg)
Cloud Computing
IaaS offerings give you servers and connectivity
Customer: configure middlebox (firewall, load balancer), VPN, route selection
…21
![Page 22: The Platform as a Service Model for Networking Eric Keller, Jennifer Rexford Princeton University INM/WREN 2010](https://reader036.vdocuments.net/reader036/viewer/2022062511/5518cb5a550346991f8b5a47/html5/thumbnails/22.jpg)
Gaming/Live Video Streaming
Limited ability to setup multi-cast, perform update aggregation
Customer: configure router to manage multi-cast group, add custom software
update
22
![Page 23: The Platform as a Service Model for Networking Eric Keller, Jennifer Rexford Princeton University INM/WREN 2010](https://reader036.vdocuments.net/reader036/viewer/2022062511/5518cb5a550346991f8b5a47/html5/thumbnails/23.jpg)
Gaming/Live Video Streaming
Limited ability to setup multi-cast, perform update aggregation
Customer: configure router to manage multi-cast group, add custom software
update
23
![Page 24: The Platform as a Service Model for Networking Eric Keller, Jennifer Rexford Princeton University INM/WREN 2010](https://reader036.vdocuments.net/reader036/viewer/2022062511/5518cb5a550346991f8b5a47/html5/thumbnails/24.jpg)
Challenge: The Physical Reality
24
![Page 25: The Platform as a Service Model for Networking Eric Keller, Jennifer Rexford Princeton University INM/WREN 2010](https://reader036.vdocuments.net/reader036/viewer/2022062511/5518cb5a550346991f8b5a47/html5/thumbnails/25.jpg)
Challenge: The Physical Reality
• Physical Infrastructure is Distributed
25
![Page 26: The Platform as a Service Model for Networking Eric Keller, Jennifer Rexford Princeton University INM/WREN 2010](https://reader036.vdocuments.net/reader036/viewer/2022062511/5518cb5a550346991f8b5a47/html5/thumbnails/26.jpg)
Challenge: The Physical Reality
• Physical Infrastructure is Distributed
• Physical Infrastructure is Shared
Customer 1 Customer 2 Customer 3
26
![Page 27: The Platform as a Service Model for Networking Eric Keller, Jennifer Rexford Princeton University INM/WREN 2010](https://reader036.vdocuments.net/reader036/viewer/2022062511/5518cb5a550346991f8b5a47/html5/thumbnails/27.jpg)
Distributed Router Workload
• Network virtualization – specify exact topology
• Single router platform – specify work to be done
• Leeway to distribute this workload– Some tied to physical router (e.g., BGP session)– Some can be replicated (for latency or to handle work)– Configure “inter-processor communication”
27
![Page 28: The Platform as a Service Model for Networking Eric Keller, Jennifer Rexford Princeton University INM/WREN 2010](https://reader036.vdocuments.net/reader036/viewer/2022062511/5518cb5a550346991f8b5a47/html5/thumbnails/28.jpg)
Dynamically Adjust Distribution
• Estimates are used to choose how to distribute
• Monitor the routers– CPU, update freq., traffic
• Re-distribute workload as necessary– e.g., migrate BGP session– e.g., add replicated instances– Comes at cost
28
![Page 29: The Platform as a Service Model for Networking Eric Keller, Jennifer Rexford Princeton University INM/WREN 2010](https://reader036.vdocuments.net/reader036/viewer/2022062511/5518cb5a550346991f8b5a47/html5/thumbnails/29.jpg)
Shared Infrastructure
• Virtualization is part of solution
• Routing sessions can be shared– Tag message, process it, send out based on tag
C1
C2
InfProv
29
![Page 30: The Platform as a Service Model for Networking Eric Keller, Jennifer Rexford Princeton University INM/WREN 2010](https://reader036.vdocuments.net/reader036/viewer/2022062511/5518cb5a550346991f8b5a47/html5/thumbnails/30.jpg)
Conclusion
• Shift towards hosted and shared infrastructure– Can help management of private infrastructures
• Worth exploring an alternate to the IaaS model
• Some challenges in the single router platform
30