120 likes | 252 Views
Bringing External Connectivity and Experimenters to GENI. Nick Feamster Georgia Tech. Session. Networks Use BGP to Interconnect. Autonomous Systems. Route Advertisement. Traffic. Virtual Networks Need BGP, Too. Strawman Default routes Public IP address Problems
E N D
Bringing External Connectivity and Experimenters to GENI Nick FeamsterGeorgia Tech
Session Networks Use BGP to Interconnect Autonomous Systems Route Advertisement Traffic
Virtual Networks Need BGP, Too • Strawman • Default routes • Public IP address • Problems • Experiments may needto see all upstream routes • Experiments may needmore control overtraffic • Need “BGP” • Setting up individualsessions is cumbersome • …particularly for transient experiments ISP 2 ISP 1 BGP Sessions GENI
Solution: BGP Mux • Separate BGP view for each upstream ISP • Private AS numbersare removed beforepropagation • “local-as” function for client connections • Small advertisement interval • Unchanged BGP attributes BGP Mux
Quagga Configuration: Client Side bgp multiple-instance ! router bgp 64512 view Verio bgp router-id 147.28.7.21 network 168.62.16.0/21 neighbor 147.28.0.4 remote-as 3130 neighbor 147.28.0.4 description PSG0 - Verio neighbor 147.28.0.4 route-map BLOCK out ! router bgp 64512 view Sprint bgp router-id 147.28.0.212 network 168.62.16.0/21 neighbor 147.28.0.1 remote-as 3130 neighbor 147.28.0.1 description Sprint neighbor 147.28.0.1 route-map BLOCK out !
Design Requirements • Session transparency: BGP updates should appear as they would with direct connection • Session stability: Upstreams should not see transient behavior • Isolation: Individual networks should be able to set their own policies, forward independently, etc. • Scalability: Mux should support many networks
Control-Plane Implementation: Quagga • Quagga Routing Suite • Open-source BGP daemon • Cisco like CLI support • Used by real ISPs • Salient features • Multiple BGP views • Local-AS change • Transparent updates
AS1 AS2 External IP BGP-Mux Server BGP Server BGP Server BGP Instance BGP-View – AS1 BGP-View – AS2 Scaling • Problems • Forwarding table size • Forwarding speeds • Possible Solutions • Split views across nodes • Hardware-accelerated forwarding (NetFPGA, OpenFlow)
Current Status • Prefix 168.62.16.0/21 via two locations • Georgia Tech (AS 2637) • PSGNet (AS 3130) • BGP routing sessions into OpenVZ containers • ProtoGENI-compatible • Current steps • Transition to public AS number and “swip” • VINI integration, Aggregate manager • Deployments: Wisconsin, Utah, Princeton, KDDI • Applications: with Jennifer Rexford and Aki Nakao
Whence Measurement? • Measuring the Internet with BGP Mux • “Real-time RouteViews” (also, local views) • Subsumes “Beacon” work • Opportunity to measure how system would interact with today’s Internet • Today’s network and routing infrastructure • Opportunity to attract real user traffic
Summary • Virtual networks need upstream connectivity • Transparent to experiments • Stable, from the appearance of the upstream ISP • Solution: BGP-Mux • Easy to implement (Quagga config + Tunnelling) • Easy to deploy (please help!) • /30 prefix • VLAN between Mux and border router • Ability to advertise BGP route