Realistic Traffic Generator Hanoch Haim Principal Engineer Agenda - - PowerPoint PPT Presentation

realistic traffic
SMART_READER_LITE
LIVE PREVIEW

Realistic Traffic Generator Hanoch Haim Principal Engineer Agenda - - PowerPoint PPT Presentation

Realistic Traffic Generator Hanoch Haim Principal Engineer Agenda Overview Stateless Advance Stateful 2 TRex Results Open Source Cisco Customers 3 TRex Usa sage ge Ana nalyti ytics cs mont nthl hly y repo


slide-1
SLIDE 1

Hanoch Haim – Principal Engineer

Realistic Traffic Generator

slide-2
SLIDE 2
  • Overview
  • Stateless
  • Advance Stateful

Agenda

2

slide-3
SLIDE 3

TRex – Results

  • Open Source
  • Cisco Customers

3

slide-4
SLIDE 4

TRex Usa sage ge Ana nalyti ytics cs mont nthl hly y repo port t (*)

(**) Users are distinct (*) ~1200 0 distinct return rnin ing users,

4

slide-5
SLIDE 5

TRex models of operation

5

  • L7, DUT terminate

TCP/SSL, flow based

  • DUT inspect L7.

does not change

  • TCP. Flow based
  • DUT L2/L3 Switch ,

packet based

slide-6
SLIDE 6

What Problem is Being Solved?

  • Networks include complex L4-7 features, such as
  • Load Balancer, DPI/AVC, Firewall, NAT
  • Requires testing with stateful and realistic traffic mix

6

Firewall, NAT DPI/AVC LB

slide-7
SLIDE 7

What Problem is Being Solved?

  • Traffic generators for realistic traffic are
  • Expensive ~$100-500K
  • Not scalable for high rates
  • Not flexible
  • Implication
  • Limited and late testing
  • Different benchmarks and test methodologies
  • Real life bottlenecks and design issues

7

slide-8
SLIDE 8

What is TRex?

  • Linux user-space application uses DPDK library
  • Stateless

ss: Stream based uses Scapy

  • Stateful: flow based

Generates, manipulates and amplifies based on templates of real, captured flows (W/O TCP stack)

  • High perform
  • rmance

ance: up to 200 Gb/sec

  • Low cost: Standard server hardware
  • Flexible and Open Software
  • Virtualization
  • Easy installation and deployment

8

slide-9
SLIDE 9

9

slide-10
SLIDE 10

Stateless

slide-11
SLIDE 11

Stateless High level functionality

  • High scale – ~10M-35MPPS/core
  • Profile can support multiple streams, scalable to 20K parallel streams
  • Interactive support – GUI/TUI
  • Statistic per port/ stream (e.g. latency/ Jitter)
  • Python automation support
  • Multi-user support
  • Capture to Wireshark
  • Scalable services using plugins (e.g. DHCP,IPv6)

11

slide-12
SLIDE 12

Traffic Profile Example

12

slide-13
SLIDE 13

Control plane High level

13

slide-14
SLIDE 14

One stream with two directions

14

slide-15
SLIDE 15

15

Python Automation example

slide-16
SLIDE 16

link

Performance XL710 MPPS/Core

16

slide-17
SLIDE 17

Advanced Stateful

slide-18
SLIDE 18

Use ser sp space ce TCP P st stack ck

18

slide-19
SLIDE 19

TRex ASTF fe feature ures

  • High scale
  • TCP is the core component
  • Can be tuned MSS/initwnd/delay-ack
  • TCP is based on BSD with acceleration
  • Interactive
  • Accurate latency measurement – usec
  • Simulation of latency/jitter/drop in high rate
  • OpenSSL integration
  • L7 emulation layer
  • Emulate application using “micro-instructions”
  • Field engine

19

slide-20
SLIDE 20

L7 7 Emul ulati tion n layer er

Client side Server side

20

slide-21
SLIDE 21

HTTP P si simpl ple pr profi file le

21

slide-22
SLIDE 22

Client ent si side de ps pseud udo co code de

22

slide-23
SLIDE 23

Server r si side de ps pseud udo co code de

23

slide-24
SLIDE 24

Pr Profi file e with h two templ plat ate

24

slide-25
SLIDE 25

Statis isti tic c

25

slide-26
SLIDE 26

Und nder the he ho hood

26

slide-27
SLIDE 27

TCP P st stack ck – Flow Sca cale -TX TX

10M flows 320GByte 320M mbuf =10GB

0.01GB

27

slide-28
SLIDE 28

TCP P st stack ck – Flow Sca cale iss ssue ue - RX RX

10M flows 320GByte 3-50GB for 1%

drop rate

0.01GB

28

slide-29
SLIDE 29

TCP sta tack k – Delay/Ji /Jitte tter/ r/Dro Drop sim imulat ation ion

100MPPS *100msec =10MPPS in Queue 100MPPS *100msec =10*16MPPS=0.16G B

29

slide-30
SLIDE 30

TRex vs NGINX

3

slide-31
SLIDE 31

Performance setup #2

3

slide-32
SLIDE 32

Performance numbers

3

https://trex-tgn.cisco.com/trex/doc/trex_astf_vs_nginx.html

x80 faster x2000 less memory