![Page 1: Bringing External Connectivity and Experimenters to GENI](https://reader033.vdocuments.net/reader033/viewer/2022051218/56815a6c550346895dc7c86a/html5/thumbnails/1.jpg)
Bringing External Connectivity and Experimenters to GENI
Nick Feamster
![Page 2: Bringing External Connectivity and Experimenters to GENI](https://reader033.vdocuments.net/reader033/viewer/2022051218/56815a6c550346895dc7c86a/html5/thumbnails/2.jpg)
Cluster
• Goal: Bring external connectivity to experiments through seamless integration with experiments on virtual networks
![Page 3: Bringing External Connectivity and Experimenters to GENI](https://reader033.vdocuments.net/reader033/viewer/2022051218/56815a6c550346895dc7c86a/html5/thumbnails/3.jpg)
Background: BGP
Route Advertisement
Autonomous Systems
Session
Traffic
![Page 4: Bringing External Connectivity and Experimenters to GENI](https://reader033.vdocuments.net/reader033/viewer/2022051218/56815a6c550346895dc7c86a/html5/thumbnails/4.jpg)
Problem
• Virtual networks need upstream connectivity– Ability to receive routes for rest of internet– Ability to advertise routes
• But, experiments using virtual networks may also be transient– High overhead for setting up new sessions– Transient nature of BGP sessions may create global
instability
![Page 5: Bringing External Connectivity and Experimenters to GENI](https://reader033.vdocuments.net/reader033/viewer/2022051218/56815a6c550346895dc7c86a/html5/thumbnails/5.jpg)
Individual Sessions Not Scalable
AS1 AS2
GENI, ProtoGENI, VINIGENI, ProtoGENI, VINI
Virtual AS1
Virtual AS2
BGP Sessions
![Page 6: Bringing External Connectivity and Experimenters to GENI](https://reader033.vdocuments.net/reader033/viewer/2022051218/56815a6c550346895dc7c86a/html5/thumbnails/6.jpg)
Solution: BGP Mux
AS1 AS2
BGP-Mux
GENI, ProtoGENI, VINIGENI, ProtoGENI, VINI
Virtual AS2
Virtual AS1
![Page 7: Bringing External Connectivity and Experimenters to GENI](https://reader033.vdocuments.net/reader033/viewer/2022051218/56815a6c550346895dc7c86a/html5/thumbnails/7.jpg)
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
![Page 8: Bringing External Connectivity and Experimenters to GENI](https://reader033.vdocuments.net/reader033/viewer/2022051218/56815a6c550346895dc7c86a/html5/thumbnails/8.jpg)
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
![Page 9: Bringing External Connectivity and Experimenters to GENI](https://reader033.vdocuments.net/reader033/viewer/2022051218/56815a6c550346895dc7c86a/html5/thumbnails/9.jpg)
Configuration
AS1AS1 AS2AS2
External IPExternal IP
IP1IP1 IP2IP2
Virtual AS1
Virtual AS2
![Page 10: Bringing External Connectivity and Experimenters to GENI](https://reader033.vdocuments.net/reader033/viewer/2022051218/56815a6c550346895dc7c86a/html5/thumbnails/10.jpg)
Configuration: Quagga
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 ATT 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 ATT neighbor 147.28.0.1 route-map BLOCK out!
![Page 11: Bringing External Connectivity and Experimenters to GENI](https://reader033.vdocuments.net/reader033/viewer/2022051218/56815a6c550346895dc7c86a/html5/thumbnails/11.jpg)
Scaling with Multiple Views
AS1AS1 AS2AS2
External IPExternal IP
![Page 12: Bringing External Connectivity and Experimenters to GENI](https://reader033.vdocuments.net/reader033/viewer/2022051218/56815a6c550346895dc7c86a/html5/thumbnails/12.jpg)
Work in Progress
• VINI Deployment: Two locations– Washington– Virginia– Waiting for upstream connectivity
• Test clients in Emulab network– The number of clients– Memory consumption– CPU consumption– Update propagation speed
![Page 13: Bringing External Connectivity and Experimenters to GENI](https://reader033.vdocuments.net/reader033/viewer/2022051218/56815a6c550346895dc7c86a/html5/thumbnails/13.jpg)
Next Steps
• Internet2/ProtoGENI deployment
• Upstream Connectivity– Ability to advertise prefixes
(need to get prefixes from I2 for ProtoGENI)– Data Plane Integration
• Integration with Emulab/ProtoGENI
![Page 14: Bringing External Connectivity and Experimenters to GENI](https://reader033.vdocuments.net/reader033/viewer/2022051218/56815a6c550346895dc7c86a/html5/thumbnails/14.jpg)
Summary
• Virtual networks need upstream connectivity– Transparent to experiments– Stable, from the appearance of the upstream ISP
• BGP-Mux– Easy to implement– Easy to deploy – Scales
![Page 15: Bringing External Connectivity and Experimenters to GENI](https://reader033.vdocuments.net/reader033/viewer/2022051218/56815a6c550346895dc7c86a/html5/thumbnails/15.jpg)
Other Aspect of Project
• Ethernet GRE Tunnels within ProtoGENI• Ability to instantiate Ethernet GRE tunnels with
– OpenVZ Kernel– Trellis Kernel