NetBench: A Benchmarking Suite for Network Processors Wendong Hu Gokhan Memik Department of...

Preview:

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

Recommended