In VINI Veritas

Shared by: O998zF0H
Categories
Tags
-
Stats
views:
2
posted:
6/23/2012
language:
English
pages:
35
Document Sample
scope of work template
							            In VINI Veritas
            Realistic and Controlled
            Network Experimentation
Andy Bavier Nick Feamster* Mark Huang
    Larry Peterson Jennifer Rexford

   Princeton University   *Georgia Tech
How to Validate an Idea?
                 Emulation                 VINI

    Simulation               Small-scale             Live
                             experiment           deployment

 Fixed, shared among many experiments
 Runs real routing software
 Exposes realistic network conditions
 Gives control over network events
 Carries traffic on behalf of real users
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

   Move off the emulator, into the wild
     Opportunity   for more ‘that’s funny’ moments
   Avoid “Fallacy of Misplaced Concreteness”
     Simulation and emulation are important tools
     Modeling abstracts general properties from reality
   Philosophy: the devil may be in the details…
     But   insights and soundness are found there too
 “Controlled Realism”
 Arbitrary,                Actual           Start with a controlled
 emulated                  network
                                             experiment
              Topology                      Relax constraints,
                                             study effects
 Synthetic                 Real
 or traces                 clients,         Result: an operational
                           servers           virtual network that’s
                 Traffic                      Feasible
                                              Valuable
Inject faults,             Observed in
anomalies                  operational        Robust
                           network
                                              Scalable,   etc.
         Network Events
Overview
   VINI requirements
     Fixed, shared infrastructure
     Flexible network topology
     Expose/inject network events
     External connectivity and routing adjacencies

   Strategy for building VINI
   PL-VINI: prototype on PlanetLab
   Experimental results
   Timeline
Fixed Infrastructure




Deploying VINI nodes in National LambdaRail,
          Abilene with Gigabit links
Shared Infrastructure




  Experiments given illusion of dedicated h/w
Flexible Topology




   VINI supports arbitrary virtual topologies
Network Events




  VINI exposes, can inject network failures
External Connectivity


c




                                                s




    Experiments can carry traffic for real end-users
External Routing Adjacencies
           BGP

                                   BGP



c




                                               s
          BGP
                                         BGP



    Experiments can participate in Internet routing
PlanetLab  VINI
   Build VINI from PlanetLab, a global
    testbed for distributed services
     Begun  in 2002
     700 nodes at 336 sites in 35 countries
     600 projects and 2500 researchers
     Serves 3-4 TB/day to ~1M clients

   MyPLC: PlanetLab software distribution
     Anyone   can run their own private PlanetLab
PlanetLab Experiments
   Simultaneous experiments in separate VMs
     Each   has “root” in its own VM, can customize
   Reserve CPU, network capacity per experiment


    Node   Local
    Mgr    Admin
                   VM1    VM2   …   VMn
                                           PlanetLab node
     Virtual Machine Monitor (VMM)
                (Linux++)
PL-VINI: Prototype on PlanetLab
   Feasible?  prototype on public 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
 XORP: Control Plane
         XORP                Goal: real routing
    (routing protocols)
                              protocols on virtual
                              network topologies
                             BGP, OSPF, RIP,
                              PIM-SM, IGMP/MLD
                             XORP can run in a
                              PlanetLab VM


PlanetLab VM
 User-Mode Linux: Environment
                          UML
           XORP                     Interface ≈ network
    (routing protocols)
                                    PlanetLab limitation:
    eth0   eth1   eth2    eth3
                                      Experiments  cannot
                                       create new interfaces
                                    Run routing software
                                     in UML environment
                                    Create virtual network
                                     interfaces in UML

PlanetLab VM
 Click: Data Plane
                           UML
           XORP                               Performance
    (routing protocols)
                                                AvoidUML overhead
    eth0    eth1   eth2   eth3
                                                Move to kernel, FPGA
                                 Control      Interfaces  tunnels
                                   Data
                    UmlSwitch
                                                ClickUDP tunnels
     Packet          element                     correspond to UML
     Forward
     Engine        Tunnel table                  network interfaces
                      Filters                 Filters
    Click
                                                     a link” by blocking
                                                “Fail
                                                 packets at tunnel
PlanetLab VM
Resource Isolation
   Issue: Forwarding packets in user space
     PlanetLabsees heavy use
     CPU load affects virtual network performance



    Property      Depends On              Solution
Throughput     CPU% received     PlanetLab provides CPU
                                       reservations
    Latency    CPU scheduling     PL-VINI: boost priority of
                   delay          packet forward process
Intra-domain Route Changes
       s

 856          2095
                                                  700

                                           260                233
           1295                                         c
                         639
  366                                548
                                            587         846
                               902

                  1893
                                           1176



  Watch OSPF route convergence on Abilene
Ping During Link Failure
                            Link down               Link up
                  120

                  110                              Routes converging
  Ping RTT (ms)




                  100

                   90

                   80
                                     Abilene RTT: 73ms
                   70
                        0       10         20     30          40       50
                                            Seconds
TCP Throughput
                                   Link down            Link up
                          12
                                     Packet receiv ed
  Megabytes transferred


                          10

                           8

                           6

                           4

                           2                            Zoom in

                           0
                               0       10      20       30        40   50
                                                Seconds
Arriving TCP Packets
                        2.45
                                   Packet receiv ed
                         2.4
  Megabytes in stream




                        2.35
 PL-VINI enables a user-space virtual network
       2.3     Slow start
  to behave like a real network on PlanetLab
      2.25
                         2.2
                                                      Retransmit
                        2.15                          lost packet

                         2.1
                            17.5    18     18.5   19          19.5   20
                                            Seconds
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

   We expect that:
     PlanetLab services will subscribe to VINI
      network architectures to access Gb/s
     Experiments will advertise routes via BGP
Timeline
You are
 here              Fall 2006              2007                2008


PL-VINI           NLR-VINI             NLR-VINI             NLR-VINI
• PlanetLab       Abilene-VINI         Abilene-VINI         Abilene-VINI
• Resource resv   • PCs                Japan-VINI           Japan-VINI
• CPU priority    • PlanetLab OS       • PCs                ???-VINI
                  • MyPLC              • VINI OS            • Other GREN
                  • Gigabit layer 2    • MyVINI             • PC + FPGAs, NPs
                  • eBGP uplinks       • Xen                • Create layer 2
                    to friendly ISPs   • Exchange traffic     “on the fly”
                                         with ISPs


                     Other features?
The End
   Questions?
The End
 URL: http://www.vini-veritas.net
 Questions?
Backup slides
Conclusion
 VINI = evolution of PlanetLab
 Installing VINI nodes in NLR, Abilene
 Download and run Internet In A Slice
 MyPLC  MyVINI as code diverges
     Build,
           run, modify your own VINI
     We expect there to be many VINIs

          http://www.vini-veritas.net
Timeline
 Conclude with a timeline instead? Like the
  one for Gibson.
 Experiments on the top, infrastructure on
  the bottom, “You are here.”
 Today: IIAS, PL-VINI
 Next: RCP, VINI-NLR
 What other experiments?
Ongoing Work
   Improving realism
     Exposing   network failures and changes in the
      underlying topology
     Participating in routing with neighboring
      networks
   Improving control
     Betterisolation
     Experiment specification
Performance is bad
 User-space Click: ~200Mb/s forwarding
 Can do a lot with 200Mb/s
     20 experiments can have dedicated 10Mb/s
      nationwide networks
   Improving performance is ongoing work
     Allowexperiments to load custom Click
      modules into the VINI kernel
PL-VINI Summary
                              Flexible Network Topology
Virtual point-to-point connectivity         Tunnels in Click
Unique interfaces per experiment            Virtual network devices in UML
Exposure of topology changes                Upcalls of layer-3 alarms
                          Flexible Routing and Forwarding
Per-node forwarding table                   Separate Click per virtual node
Per-node routing process                    Separate XORP per virtual node
                            Connectivity to External Hosts
End-hosts can direct traffic through VINI   Connect to OpenVPN server
Return traffic flows through VINI           NAT in Click on egress node
                       Support for Simultaneous Experiments
Isolation between experiments               PlanetLab VMs and network isolation
                                            CPU reservations and priorities
Distinct external routing adjacencies       BGP multiplexer for external sessions
PL-VINI / IIAS Router
                       UML
        XORP                               XORP: control plane
 (routing protocols)
                                           UML: environment
 eth0    eth1   eth2   eth3
                                             Virtual   interfaces
                              Control
                                           Click: data plane
                                Data
                 UmlSwitch                   Performance
  Packet          element
  Forward                                         Avoid UML overhead
  Engine                                          Move to kernel, FPGA
                Tunnel table
                                             Interfaces   tunnels
 Click
                                             “Fail a link”
What’s New with VINI?
 Integration of routing w/Internet
 Better isolation
 Real topologies
 Inject events
 “Controlled Realism”
 Arbitrary,                Actual           Control:
 emulated                  network
                                              Reproduce   results
              Topology                        Methodically change or
                                               relax constraints
 Synthetic                 Real             Realism:
 or traces                 clients,
                           servers            Long-running    services
                 Traffic                       attract real “customers”
                                              Forward high traffic
Inject faults,             Observed in         volumes (Gb/s)
anomalies                  operational
                                              Robustly handle
                           network
         Network Events                        unexpected events

						
Related docs
Other docs by O998zF0H
means any natural person
Views: 0  |  Downloads: 0
Laboratory Topics 1 & 2
Views: 0  |  Downloads: 0
Marist College Eastwood letterhead 1st pg only
Views: 17  |  Downloads: 0
Run sheet template
Views: 231  |  Downloads: 1
general congress correspondance final
Views: 3  |  Downloads: 0
FKO referat fra generalforsamlingen 2011
Views: 3  |  Downloads: 0
PACE -- MINUTES PER MILE
Views: 5  |  Downloads: 0
2012 peac fist full of silver
Views: 10  |  Downloads: 0