1 / 39

In VINI Veritas Realistic and Controlled Network Experimentation

In VINI Veritas Realistic and Controlled Network Experimentation. Andy Bavier Nick Feamster* Mark Huang Larry Peterson Jennifer Rexford. Princeton University *Georgia Tech. Introduction. VINI. Emulation. Runs real routing software Exposes realistic network conditions

Download Presentation

In VINI Veritas Realistic and Controlled Network Experimentation

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. In VINI VeritasRealistic and Controlled Network Experimentation Andy Bavier Nick Feamster* Mark Huang Larry Peterson Jennifer Rexford Princeton University *Georgia Tech

  2. Introduction VINI Emulation • Runs real routing software • Exposes realistic network conditions • Gives control over network events • Carries traffic on behalf of real users • Shared among many experiments Simulation Small-scale experiment Live deployment

  3. Realism has Scientific Value The most exciting phrase to hear in science, the one that heralds new discoveries, is not ‘Eureka!’ (I found it!) but ‘That’s funny …’ -- Isaac Asimov • Discover unanticipated interactions • Can only simulate / emulate known properties • Build richer models • Test robustness and scalability of ideas

  4. Traffic Synthetic or traces Real clients, servers Arbitrary, emulated Synthetic or traces Actual network Real clients, servers Topology Traffic Inject faults, anomalies Observed in operational network Network Events “Controlled Realism” • Control: • Reproduce results • Methodically change or relax constraints • Realism: • Long-running services attract real “customers” • Forward high traffic volumes (Gb/s) • Robustly handle unexpected events

  5. Overview • VINI requirements • Fixed, shared infrastructure • Flexible network topology • Expose/inject network events • External connectivity and routing adjacencies • PL-VINI: prototype on PlanetLab • Experimental results • Ongoing work

  6. Fixed Infrastructure VINI nodes embedded in Abilene

  7. Shared Infrastructure Experiments given illusion of dedicated hardware

  8. Shared Infrastructure Experiments given illusion of dedicated hardware

  9. Flexible Topology VINI supports arbitrary virtual topologies

  10. Flexible Topology VINI supports arbitrary virtual topologies

  11. Network Events VINI can inject network failures

  12. Network Events virtual link fails real link fails VINI can expose network failures (coming soon)

  13. External Connectivity c s Experiments can carry traffic for real end-users

  14. BGP BGP c BGP BGP External Routing Adjacencies s Experiments can participate in Internet routing

  15. Node Mgr Local Admin VM1 VM2 VMn … Virtual Machine Monitor (VMM) (Linux++) PL-VINI: Prototype on PlanetLab • PlanetLab: testbed for planetary-scale services • Simultaneous experiments in separate VMs • Each has “root” in its own VM, can customize • Can reserve CPU, network capacity per VM PlanetLab node

  16. PL-VINI: Prototype on PlanetLab • Enable experiment: Internet In A Slice • XORP open-source routing protocol suite (NSDI ’05) • Click modular router (TOCS ’00, SOSP ’99) • Clarify issues that a VINI must address • Unmodified routing software on a virtual topology • Forwarding packets at line speed • Illusion of dedicated hardware • Injection of faults and other events

  17. XORP: Control Plane XORP (routing protocols) • BGP, OSPF, RIP, PIM-SM, IGMP/MLD • Goal: run real routing protocols on virtual network topologies

  18. User-Mode Linux: Environment UML XORP (routing protocols) • Interface ≈ network • PlanetLab limitation: • Slice cannot create new interfaces • Run routing software in UML environment • Create virtual network interfaces in UML eth0 eth1 eth2 eth3

  19. Click: Data Plane UML XORP (routing protocols) • Performance • Avoid UML overhead • Move to kernel, FPGA eth0 eth1 eth2 eth3 Control Data Packet Forward Engine Click

  20. Click: Data Plane UML XORP (routing protocols) • Performance • Avoid UML overhead • Move to kernel, FPGA eth0 eth1 eth2 eth3 Control Data Packet Forward Engine UmlSwitch element Click

  21. Click: Data Plane UML XORP (routing protocols) • Performance • Avoid UML overhead • Move to kernel, FPGA • Interfaces  tunnels • Click UDP tunnels correspond to UML network interfaces eth0 eth1 eth2 eth3 Control Data Packet Forward Engine UmlSwitch element Tunnel table Click

  22. Injecting Link Failures UML XORP (routing protocols) • Performance • Avoid UML overhead • Move to kernel, FPGA • Interfaces  tunnels • Click UDP tunnels correspond to UML network interfaces • Filters • “Fail a link” by blocking packets at tunnel eth0 eth1 eth2 eth3 Control Data Packet Forward Engine UmlSwitch element Tunnel table Click Filters

  23. Resource Isolation • Issue: Forwarding packets in user space • PlanetLab sees heavy use • CPU load affects virtual network performance

  24. Intra-domain Route Changes s 2095 856 700 260 233 1295 c 639 548 366 846 587 902 1893 1176 Watch OSPF route convergence on Abilene

  25. Intra-domain Route Changes s 2095 856 700 260 233 1295 c 639 548 366 846 587 902 1893 1176 Watch OSPF route convergence on Abilene

  26. Intra-domain Route Changes s 2095 856 700 260 233 1295 c 639 548 366 846 587 902 1893 1176 Watch OSPF route convergence on Abilene

  27. Intra-domain Route Changes s 2095 856 700 260 233 1295 c 548 366 846 587 902 1893 1176 Watch OSPF route convergence on Abilene

  28. Intra-domain Route Changes s 2095 856 700 260 233 1295 c 639 548 366 846 587 902 1893 1176 Watch OSPF route convergence on Abilene

  29. Link down Ping During Link Failure

  30. Link down Link up Ping During Link Failure

  31. Routes converging Link down Link up Ping During Link Failure

  32. Link down TCP Throughput

  33. Link down Link up TCP Throughput

  34. Link down Link up Zoom in TCP Throughput

  35. Slow start Arriving TCP Packets

  36. 2.45 Packet received 2.4 2.35 Slow start 2.3 Megabytes in stream 2.25 2.2 Retransmit lost packet 2.15 2.1 17.5 18 18.5 19 19.5 20 Seconds Arriving TCP Packets

  37. Slow start Retransmit lost packet Arriving TCP Packets PL-VINI enables a user-space virtual network to behave like a real network on PlanetLab

  38. Attracting Real Users • Could have run experiments on Emulab • Goal: Operate our own virtual network • Carrying traffic for actual users • We can tinker with routing protocols • Q: Why would users participate? • A: They won’t. Long-running services (e.g., CDNs) will subscribe to network architectures to access Gb/s bandwidth.

  39. Conclusion • VINI: Virtual Network Infrastructure • Controlled and realistic experimentation • New routing, forwarding, and addressing • Initial experiment • Intradomain routing convergence in XORP • Later, perhaps run commercial router code?  • Long term goal • Shared platform for networking experiments • Real user traffic and upstream ISP connections

More Related