TRex Realistic Traffic Generator

Similar documents
NXOS in the Real World Using NX-API REST

CloudCenter for Developers

DEVNET Introduction to Git. Ashley Roach Principal Engineer Evangelist

Cisco Spark Messaging APIs - Integration Platforms as a Service Real World Use-Cases

Hands-On with IoT Standards & Protocols

Your API Toolbelt Tools and techniques for testing, monitoring, and troubleshooting REST API requests

BGP in the Enterprise for Fun and (fake) Profit: A Hands-On Lab

An Introduction to Monitoring Encrypted Network Traffic with "Joy"

Get Hands On With DNA Center APIs for Managing Intent

DevNet Workshop-Hands-on with CloudCenter and Jenkins

Insights into your WLC with Wireless Streaming Telemetry

Automation with Meraki Provisioning API

PSOACI Why ACI: An overview and a customer (BBVA) perspective. Technology Officer DC EMEAR Cisco

Empower your testing with Cisco Test Automation Solution Featuring pyats & Genie

The Transformation of Media & Broadcast Video Production to a Professional Media Network

Git, Atom, virtualenv, oh my! Learn about dev tools to live by!

Hybrid Cloud Automation using Cisco CloudCenter API

Kuber-what?! Learn about Kubernetes

DevOps CICD for VNF a NetOps Approach

An Introduction to Developing for Cisco Kinetic

Managing Cisco UCS with the Python SDK

Serviceability of SD-WAN

Cloud-Ready WAN For IAAS & SaaS With Cisco s Next- Gen SD-WAN

Who wants to be a millionaire? A class in creating your own cryptocurrency

Cisco UCS Agentless Configuration Management Ansible or Microsoft DSC

Cisco Container Platform

Cisco Firepower NGIPS Tuning and Best Practices

Consuming Model-Driven Telemetry

Tetration Hands-on Lab from Deployment to Operations Support

PSOACI Tetration Overview. Mike Herbert

Magical Chatbots with Cisco Spark and IBM Watson

Cisco SD-WAN (Viptela) Migration, QoS and Advanced Policies Hands-on Lab

2018 Cisco and/or its affiliates. All rights reserved. Cisco Public

NetDevOps Style Configuration Management for the Network

Finesse APIs: Getting started with the REST APIs and XMPP events

Introduction to OpenConfig

Cisco UCS Director and ACI Advanced Deployment Lab

Cisco Virtualized Infrastructure Manager

Automation and Programmability using Cisco Open NXOS and DevOps Tools

Cisco SD-Access Hands-on Lab

ICE / TURN / STUN Tutorial

WORKSHOP: from Zero to a Network Application with #golang

Cisco WAN Automation Engine (WAE) Network Programmability with Segment Routing

Introduction to Python Network Programming for Network Architects and Engineers

Customer s journey into the private cloud with Cisco Enterprise Cloud Suite

Cloud Mobility: Meraki Wireless & EMM

Introducing Cisco Network Assurance Engine

PnP Deep Dive Hands-on with APIC-EM and Prime Infrastructure

Deploying Cloud-Agnostic Applications with Cisco CloudCenter

Privacy Requirements Scoping

Hands On Exploration of NETCONF and YANG

Building a Video Optimized Private Cloud Platform on Cisco Infrastructure Rohit Agarwalla, Technical

Cisco Spark Widgets Technical drill down

Getting Started With Containers

Cisco Spark. Questions? Use Cisco Spark to communicate with the speaker after the session. How

Catalyst 9K High Availability Lab

Machine Learning with Python

Managing The Digital Network Workforce Transformation

VXLAN EVPN Fabric and automation using Ansible

Routing Underlay and NFV Automation with DNA Center

NSO in Brownfield: Fully Automated One-Click Reconciliation

Stateless Multicast with Bit Indexed Explicit Replication

TRex Advance stateful support. TRex Advance stateful support

Is your IT Infrastructure Ready for Machine Learning & Artificial Intelligence?

Migrating Applications with CloudCenter

Introduction to Cisco SD- WAN (Viptela)

BRKCOC-2399 Inside Cisco IT: Integrating Spark with existing large deployments

Coding Getting Started with Python

Using Workload Automation to Optimize Hybrid Cloud Estates

Understanding HTTPS to Decrypt it

Experiences in Building a 100 Gbps (D)DoS Traffic Generator

CT506 LANforge-FIRE VoIP Call Generator

Getting Started with OpenStack

Cisco Tetration Analytics

Spark SDK Video - Overview and Coding Demo

STATEFUL TCP/UDP traffic generation and analysis

Radware: Anatomy of an IoT Botnet and Economics of Defense

APIC-EM / EasyQoS - End to End Orchestration of QoS in Enterprise Networks

Spirent Avalanche. Applications and Security Testing Solutions. Application. Features & Benefits. Data Sheet. Network Performance Testing

CT LANforge WiFIRE Chromebook a/b/g/n WiFi Traffic Generator with 128 Virtual STA Interfaces

Real time Location Services Overview and Use cases

European DevNet Pros Panel

Simplifying Collaboration Deployments with Prime Collaboration

Cisco Enterprise Agreement

Demystifying Machine Learning

Coding Intro to APIs and REST

Creating a custom gadget using the Finesse JavaScript Library API

Building Applications with IOx

Best Practice Deployment of F5 App Services in Private Clouds. Henry Tam, Senior Product Marketing Manager John Gruber, Sr. PM Solutions Architect

Improve Web Application Performance with Zend Platform

Check Point DDoS Protector Introduction

Enabling Quality of Service with Cisco SDN. Jon Snyder

Distributed Denial of Service

NetBrain Technologies: Achieving Agile Network Operations: How Automation Can Improve Visibility Across Hybrid Infrastructures

[PST, GMT -8] Network Testing and Emulation Solutions

Enterprise Recording and Live Streaming Architecture with VBrick

Contiv installation and integration with ACI

Internet of Things Field Network Director

CT ac2-1n-10g LANforge WiFIRE a/b/g/n/ac 4x4 MU-MIMO 3 radio WiFi Traffic

Agilio CX 2x40GbE with OVS-TC

Transcription:

DEVNET-1120 TRex Realistic Traffic Generator Hanoch Haim, Principal Engineer

Cisco Spark How Questions? Use Cisco Spark to communicate with the speaker after the session 1. Find this session in the Cisco Live Mobile App 2. Click Join the Discussion 3. Install Spark or go directly to the space 4. Enter messages/questions in the space cs.co/ciscolivebot#devnet-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public

Agenda Overview Stateless Stateful Advance Stateful 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public

TRex Results Open Source Cisco Customers DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 5

TRex Usage Analytics monthly report (*) (*) ~1200 distinct returning users, (**) Users are distinct DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 6

TRex models of operation L7, DUT terminate TCP/SSL, flow based DUT inspect L7. does not change TCP. Flow based DUT L2/L3 Switch, packet based DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 7

What Problem is Being Solved? Networks include complex L4-7 features, such as Load Balancer, DPI/AVC, Firewall, NAT LB DPI/AVC Firewall, NAT Requires testing with stateful and realistic traffic mix DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 8

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 DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 9

What is TRex? Linux user-space application uses DPDK library Stateless: Stream based uses Scapy Stateful: flow based Generates, manipulates and amplifies based on templates of real, captured flows (W/O TCP stack) High performance: up to 200 Gb/sec Low cost: Standard server hardware Flexible and Open Software Virtualization Easy installation and deployment DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 10

DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 11

Stateless

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) DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 13

Traffic Profile Example DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 14

Control plane High level DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 15

One stream with two directions DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 16

Python Automation example DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 17

Performance XL710 MPPS/Core link DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 18

Demo

Stateful

L7 inspection features Networks include complex L4-7 features, such as Load Balancer, DPI/AVC, Firewall, NAT LB DPI/AVC Firewall, NAT Requires testing with stateful and realistic traffic mix DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 21

Stateful Traffic Generation Model DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 22

High level software architecture DPDK/Multi-Threaded Scales linearly ~5MPPS/~20 Gb/sec per core Supports 1/10/40 Gb Intel NICs Share memo ry Intel NIC IF0 Client IF1 Server IF2 Client IF3 Server Flow-based Fast event scheduler Generates flow templates Can support 1K templates Scales up to 100K clients,1m servers CPU/Share memory CP thread 0 DP -thread 1 DP -thread 3 DP -thread 2 DP -thread 4 Rx thread 5 Flexible Client/server generation models Measures jitter/latency/flow order NAT translation/ipv6/tunnels User Interface Python API Benchmark automation GUI DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 23

Flow Generation Example of one flow with four packets FIF FIF FIF n Total PPS = CPS k flow_pkts k k=0 n Total CPS = CPS k k=0 Concurrent flows n = CPS k flow_duration k k=0 DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 24

DNS simple profile example DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 25

DNS output DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 26

HTTP & DNS DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 27

HTTP & DNS DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 28

Enterprise traffic profile Includes protocols with Control/Data dependency SIP RTSP DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 29

EMIX - YAML DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 30

EMIX DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 31

NAT/FW learning translation/randomization 1-Tx-SYN 1-Rx-SYN (learn translation per flow) 2-Tx-SYN-ACK 2-Rx-SYN-ACK (learn) 3-Tx-ACK 3-Rx-ACK (learn seq number randomization) DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 32

Client Clustering To simulate a big network Scale of the number of clients For Controller testing DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 33

Performance MPPS/Core @ 8M flows DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 34

Gbps extrapolation, average packet size 600B DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 35

Advanced Stateful

User space TCP stack Why? DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 37

User space TCP stack Why? DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 38

TRex ASTF features 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 DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 39

TRex ASTF features status 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 DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 40

L7 Emulation layer Client side Server side DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 41

HTTP simple profile DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 42

Client side pseudo code DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 43

Server side pseudo code DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 44

Profile with two template DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 45

Different IP pool for each template DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 46

Statistic DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 47

Client/Server only DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 48

Under the hood DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 49

TCP stack Flow Scale -TX 10M flows 320GByte 320M mbuf =10GB 0.01GB DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 50

TCP stack Flow Scale issue - RX 10M flows 320GByte 3-50GB for 1% drop rate 0.01GB DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 51

TCP stack Delay/Jitter/Drop simulation 100MPPS *100msec =10MPPS in Queue 100MPPS *100msec =10*16MPPS=0.16GB DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 52

TRex vs NGINX DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 53

Performance setup #2 DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 54

Performance numbers x80 faster x2000 less memory https://trex-tgn.cisco.com/trex/doc/trex_astf_vs_nginx.html DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 55

wrapup

TRex models of operation L7, DUT terminate TCP/SSL, flow based DUT inspect L7. does not change TCP. Flow based DUT L2/L3 Switch, packet based DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 57

DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 58

Cisco Spark How Questions? Use Cisco Spark to communicate with the speaker after the session 1. Find this session in the Cisco Live Mobile App 2. Click Join the Discussion 3. Install Spark or go directly to the space 4. Enter messages/questions in the space cs.co/ciscolivebot#devnet-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public

Please complete your Online Session Evaluations after each session Complete 4 Session Evaluations & the Overall Conference Evaluation (available from Thursday) to receive your Cisco Live T-shirt All surveys can be completed via the Cisco Live Mobile App or the Communication Stations Complete Your Online Session Evaluation Don t forget: Cisco Live sessions will be available for viewing on-demand after the event at www.ciscolive.com/global/on-demand-library/. 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public

Continue Your Education Stateless manual TRex documents Index GitHub DevNet zone DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 61

Continue Your Education Demos in the Cisco campus Walk-in Self-Paced Labs Tech Circle Meet the Engineer 1:1 meetings Related sessions DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 62

Thank you

Backup

Stateless Traffic profile

Simple Interleaving streams DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 67

Simple Interleaving streams -profile DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 68

Multi burst DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 69

Multi burst profile DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 70

Field Engine Flexible engine for changing packet fields Examples Change TOS 1-20 Range of client IPv4/IPv6 e.g. 10.0.0.1-10.0.0.254 Random packet size 64-9k Random destination IPv4/IPv6 Support any tunnel even not valid packet like QinQ/GRE/MPLS/Ipv6/UDP/Ipv4/HTTP DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 71

Field Engine, Syn attack DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 72

Pcap File Conversion to Streams DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 73

Per Stream Statistics DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 74

Per Stream Statistics - TUI DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 75

Per Stream Latency/Jitter Base on per stream stats hardware assist Software measures latency and jitter resolution is ~usec (not nsec) DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 76

Per Stream Statistics - TUI DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 77

Stateless Service mode

Service Mode DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 79

Service Mode Ping / ARP/DHCP Client IPv6 ND /Multicast setup Scan6 support Traffic Capturing Functional test New protocols multiplex framework DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 80

Service Mode Capture Monitoring Wireshark Pipe DEVNET-1120 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 81