View
214
Download
0
Tags:
Embed Size (px)
Citation preview
NetBench: A Benchmarking Suite for Network Processors
Wendong HuGokhan Memik
Department of Electrical EngineeringUniversity of California, Los Angeles
Overview
What is inside a router?A buyer wants the bestDesigner would like to build the bestBut what is the best?
BenchmarksSPEC, TPC, SPLASH, …
Outline
IntroductionNetwork Processor SurveyProgramsResultsConclusion
IntroductionWhat is a Network Processor?
Programmable ICs based on system-on-a-chip technology that perform communications-specific functions more efficiently than general-purpose processors
flexibility
performance
ASIC
G-CPU NP
Introduction (cont.)
Why Network Processor(NP)1 Gbps is limit for off-the shelf processorsEmerging technologies and applications
What did we doSurvey NPDecide on a set of applications• Who and why are people going to use NP’s
Gather statistics and compare
CompaniesAcorn Networks (genFlow); Alchemy (Au1000); AMCC/MMC (nP); Bay Micro; BOPS (Manta); Broadcom/SiByte (SB-1 core; SB-1250); Chameleon (CS2112); Chrysalis-ITS; Cisco (Toaster 2); Cognigine; Conexant/Maker (CX27510, MXT4400); empowerTel (MxP); Extreme Packet Devices; EZChip; Fast-Chip; Hi/fn; Hyperchip; IBM (PowerNP); IDT; Improv (Jazz); Infineon; Intel/Level One (IXP1200); Internet Machines; Lexra (NetVortex IP core); Lucent/Agere (Payload Plus); MIPS; Motorola/C-Port (C-5); Philips; PixelFusion; Pluris; PMC-Sierra/QED; Redback Networks/Siara; Silicon Access Networks (iFlow); Solidum; Stargate; StarGen; TranSwitch; T.sqware; Vertex Networks (XpressFlow); Vitesse/Sitera (Prism IQ2000); Vitesse/XaQti (Active-Flow Processor); XStream; ZettaCom (ZEN).
Example Design
Example Design
Applications
Web applicationsLoad-balancing, URL-based switching, web caching
Securityfirewall, VPN, access control, encryption
Routing and SwitchingVoIP gateways, IP routing, Smart routing mechanisms (DRR?)
QoS issuesMPLS, QoS scheduling and/or classification
Programs in NetBench
Programs from 3 different levels:Micro-codes• Low-level tasks (CRC, memcopy, …)
IP level programs• Routing and related applications
High level programs• Encryption-decryption, load balancing,
Level 7 switching
Complete list
High-level:UBS (URL-based switching)RTS (Real-Teal Streaming)TCS4 (load balancing)DF (Diffie-Hellman) MD5 (Message Digest)
Micro-levelCRC-32Table-lookup
Complete list (cont.)
IP levelMCAST (multicasting)DRR (Deficit Round Robin)CEDF (Coordinated earliest deadline first)NAT (Network address translation)IPv6TB (IP version 6 tunneling)IPCHAINS (firewall)IPATM (IP over ATM support)Route (IPv4 routing)
MethodologyImplementations
Use the available softwareNot too optimized for a specific architectureSome applications from FreeBSD
SimpleScalar SimulatorMost popular simulator in Architecture community (cycle-based) Extensive information about program execution
Intel IXP1200 SimulatorMicro-code assembler and debuggerAccurate, detailed cycle-based simulator
Input TraceFrom Columbia University
Packet Size Distribution
0
50
100
150
200
250
300
350
400
450
0
100
200
300
400
500
600
700
800
900
1000
1100
1200
1300
1400
1500
Packet Size
Nu
mb
er i
n 1
000
Applications in SimpleScalar
MD5DRRNATRouteTable LookupCRC_32
Execution Times
0
20
40
60
80
100
120
140
160
180
#cycle [M]
CRC MD5 DRR NAT Route TLook
Number of cycles
Cache behaviour
Miss rates are small compared to SPEC
0
0.5
1
1.5
2
2.5
3
3.5
Mis
s ra
tio
[%]
CRC MD5 DRR NAT Route TLook
Cache miss rates
I-cache
D-cache
Parallelism
IPC: Instruction executed per cycle
0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
IPC
CRC MD5 DRR NAT Route TLook
Instruction Level Parallelism
Routing Table Size
0
100
200
300
400
500
600
Ma
x.
Off
ere
d L
oa
d [
Mb
ps
]
2 4 8 16 32 64 128 256 512
Routing Table Size
Routing Table Size vs. Performance
Intel IXP1200
0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
2
Po
wer
rat
io
CRC Route
IPX 1200 vs Pentium
Conclusion and Future WorkNeed innovative architectures for fast link and emerging applicationsNetwork processors deliver the necessary flexibility and processing powerNeed a framework to compare the performances => NetBenchSome applications are not as tough as predictedContinue porting applications and running simulations