Title: Internet In A Box
1Internet In A Box
Presented by Zhangxi Tan with Prof. David
Patterson RAD Lab, UC Berkeley
2Outline
- Goal of this talk
- Introduction
- Comparison to existing testbeds
- Programmable Data Path
- Comments Discussion
3Goal (1/2)
- Bring out the discussion
- What should Internet In A Box look like?
- Architecture
- Application
- Survey related projects
- Gather comments on existing projects (Pros/Cons)
- Collect suggestions for our Internet In A Box
project
4Goal (2/2)
- Questions
- What would be good experiments for IIAB ?
- Where IIAB is better and where worse than
alternatives ? - What data needed for such experiments?
- What measurements needed for such experiments ?
5Outline
- Goal of this talk
- Introduction
- Comparison to existing testbeds
- Programmable Data Path
- Comments Discussion
6Introduction
- Internet In A BOX
- Build distributed system testbed with over 1,000
nodes using multi modular FPGA system - Research Accelerator for MultiProcessing (RAMP)
- Motivation FPGA as New Research Platform
- FPGA generations every 1.5 yrs 2X CPUs, 2X clock
rate - 25 64-bit simple soft core RISC CPU (100Mhz in
2004) can fit in FPGA (Virtex-II), 1000-CPU
system from 40 FPGAs
7RAMP
- 5 Xilinx Virtex II Pro, 4GB DDR2/ FPGA
- Multi Gigabit Transceivers (MGTs) connections
- 2.5 Gbps/Ch, up to 40 Gbps in total
- 1/10 Gb Ethernet, InfiniBand, 3GIO compatible
- Connecting heterogeneous routers
8Pros of IIAB
- Advantages
- Large emulation scale O(1000) and great
scalability - Low cost, power consumption and space
requirement - Generate repeatable and credible results
- Hardware and software programmability
(customized router data plane, OS and etc.) - Interoperability with unmodified nodes
(commercial routers, switches and PCs)
9Outline
- Goal of this talk
- Introduction
- Comparison to existing testbeds
- Programmable Data Path
- Comments Discussion
10Comparison to existing testbeds
- 3 basic network experimental techniques
- Emulation
- SMP/Cluster based network emulator (Duke, Utah)
- Live testing
- Overlay based testbed (NSF, USC, MIT)
- Simulation
- Traditional network simulators (ns2, OPNET)
11Cluster Based Network Emulator (1/2)
- ModelNet _at_ Duke University
- http//issg.cs.duke.edu/modelnet.html
- Cluster based emulation
- Run unmodified live codes on end host
- ModelNet core is software Router Core
- Scale to O(100) nodes
- Use real IP traffic
"Scalability and Accuracy in a Large-Scale
Network Emulator," OSDI 2002.
12Cluster Based Network Emulator (2/2)
- Emulab _at_ University of Utah www.emulab.net
- 328 Nodes connected by high speed Cisco switches
- Based on ns2 emulation engine (nse)
- Combined emulation/simulation
- Real-time execution delay
- (clock sync. problem)
- Extension
- Using network processor to accelerate emulation
- Interface to PlanetLab/RON
K. Fall. Network Emulation in the Vint/NS
Simulator. IEEE ISCC 99
13Comparison to existing testbeds
- 3 basic network experimental techniques
- Emulation
- SMP/Cluster based network emulator (Duke, Utah)
- Live testing
- Overlay based testbed (NSF, USC, MIT)
- Simulation
- Traditional network simulators (ns2, OPNET)
14Overlay based testbed (1/2)
- PlanetLab/GENI
http//www.planet-lab.org
- Aims to deploy up to 1000 sites 637 nodes over
302 sites (Jan 2006) - Multi-user shared testbed (Slice)
- Based on Internet
- GENI is an upgraded version (www.geni.net)
- Limitations
- Poor performance
- Experiments not repeatable
- Difficult to debug
- Poor observability
- Typical nodes usage lt100
L. Peterson, T. Anderson, D. Culler, T. Roscoe A
Blueprint for Introducing Disruptive Technology
into the Internet. HotNets-I, October 2002.
15Overlay based testbed (2/2)
- Other overlay based testbeds
- Resilient Overlay Networks (RON) MIT
- Active Network Backbone (ABone) USC/ISI
- X-Bone USC/ISI
- Similar problems with PlanetLab
16Comparison to existing testbeds
- 3 basic network experimental techniques
- Emulation
- SMP/Cluster based network emulator (Duke, Utah)
- Live testing
- Overlay based testbed (NSF, USC, MIT)
- Simulation
- Traditional network simulators (ns2, OPNET)
17Simulators
- The Network Simulator - ns2 http//www.isi.edu/ns
nam/ns/ - Famous event-driven simulator
- Supports various OS
- Problems
- Abstract network and modeled traffic (less
credible results) - Does not model actual packet processing
- Poor performance
18Summary Why IIAB is good
19Outline
- Goal of this talk
- Introduction
- Comparison to existing testbeds
- Programmable Data Path
- Comments Discussion
20Existing Attempts
- Survey of existing projects
- FPGA based routers and packet processors
(Stanford/Washington) - Network processor based routers
(Princeton/Columbia) - Software routers (MIT, Berkeley)
21FPGA based routers/packet processors (1/2)
- Field Programmable Port Extender (FPX) -
Washington University http//www.arl.wustl.edu/pro
jects/fpx/
- OC48 (2.5 Gbps) link speed
- All logic on Xilinx FPGA Virtex II/Virtex
- Dynamically loadable modules into FPX
- Projects based on FPX
- Intrusion/worm detection
- Fast routing
- Advanced protocol processing
22FPGA based routers/packet processors (2/2)
- NetFPGA _at_ Stanford (Prof. Nick McKeown)
(http//klamath.stanford.edu/nf2/) - Goal Undergrad/graduate education
- Building edge/border router/Ethernet switch on
FPGA board - 2 Xilinx Virtex II Pro FPGAs
- Current Scale ? (Hot Interconnects 13, 05) 8,
10-Mbps Ethernet ports per board - Small scale network emulation (multiboard)
23Existing Attempts
- Survey of existing projects
- FPGA based routers and packet processors
(Stanford/Washington) - Network processor based routers
(Princeton/Columbia) - Software routers (MIT, Berkeley)
24Network Processor
- Network Processor An application specific
processor for network applications - Performance and Flexibility
- Tradeoff between ASIC and GPP
- Multicore, multithread architecture
- Many commercial products
- Intel IXP 2800/1200 (active)
- IBM PowerNP (discontinued?)
- Motorola C-5
Intel IXP2800
25Network Processor Based Router (1/2)
Extensible Router VERA _at_ Princeton (Prof. Larry
Peterson)http//www.cs.princeton.edu/nsg/router
- Goals
- Easily extended to support new network services
(overlay, media gateway, etc.) - Exploits commercially available hardware
components (commodity processors, network
processors)
26Network Processor Based Router (2/3)
PC
Data Plane (Network Processor) -Common case
traffic -Traditionally only IP Control Plane
(PC) - Exceptional traffic (Fancy traffic
QoS, Monitor, etc) -Traditionally routing
protocols
Control Plane (packet flows)
Data Plane (packet flows)
Building a Robust Software-Based Router Using
Network Processors, SOSP01 A Comparative Study
of Extensible Routers, OPENARCH 02
IXP1200
VERA Architecture
27Network Processor Based Router (3/3)
- Limitation
- Hard to program network processor
- Related project
- Columbia Gensis Kernel on IXP1200
(http//comet.columbia.edu/genesis/) - Intel IXA university program (http//www.ixaedu.co
m) - Research projects
- Papers
28Existing Attempts
- Survey of existing projects
- FPGA based routers and packet processors
(Stanford/Washington) - Network processor based routers
(Princeton/Columbia) - Software routers (MIT, Berkeley)
29Software Based Router (1/2)
- MIT Click Modular Router
- Also a programming language for router data plane
programming - Modular programming concepts benefit other
projects - Berkeleys NP-Click for Intel IXP1200
- Building FPGA-Click for IIAB?
http//pdos.csail.mit.edu/click/
30Software Based Router (2/2)
- eXtensible Open Router Platform (XORP) (ICSI,
UC Berkeley) http//www.xorp.org
- Recent attempt on open source software router
(NSDI05) - Flexible, extensible and standardized interface
for network research - Two layered architecture (High/Low), but mainly
focus on higher layer (control plane) - Lower plane using Click, but will support
customized hardware (e.g. Intel IXP1200) - Will IIAB support XORP API?
31 32Discussions
- What about hosts and links?
- Any related projects?
- How to build the world?
- What to build and what not to? (level of details)
- Topology, host/router ratio
- Resource consumption
- Any other Application?
- Starting from LAN in a box?
- Host/Router/Link virtualizations?
- Tens of hosts and several switches/routers
- B2EE platform
33Hardware/FPGA based router (3/4)
NetFPGA in VNS
- Separate virtual topologies using VLAN (encoding
MAC address) - Scale?
- Emulate/simulate complex topologies, like
Internet?
- Reconfigurable Networking Hardware A Classroom
Tool Martin Casado, Gregory Watson, Nick
McKeown, Hot Interconnects 13, Stanford, August
2005
34Introduction
- FPGA as New Research Platform
- FPGA generations every 1.5 yrs 2X CPUs, 2X clock
rate - 25 64-bit simple RISC CPU (100Mhz in 2004) can
fit in FPGA (Virtex-II), 1000-CPU system from 40
FPGAs - Internet In A BOX
- Build a distributed system testbed with over
1,000 nodes in a controlled environment