Netbench Testing network devices with real-life traffic patterns

Slides:



Advertisements
Similar presentations
A Novel 3D Layer-Multiplexed On-Chip Network
Advertisements

Balajee Vamanan et al. Deadline-Aware Datacenter TCP (D 2 TCP) Balajee Vamanan, Jahangir Hasan, and T. N. Vijaykumar.
SKELETON BASED PERFORMANCE PREDICTION ON SHARED NETWORKS Sukhdeep Sodhi Microsoft Corp Jaspal Subhlok University of Houston.
Towards Virtual Routers as a Service 6th GI/ITG KuVS Workshop on “Future Internet” November 22, 2010 Hannover Zdravko Bozakov.
Chapter 8 Hardware Conventional Computer Hardware Architecture.
Bertha & M Sadeeq.  Easy to manage the problems  Scalability  Real time and real environment  Free data collection  Cost efficient  DCTCP only covers.
1 Chapter 9 Computer Networks. 2 Chapter Topics OSI network layers Network Topology Media access control Addressing and routing Network hardware Network.
Networking Theory (Part 1). Introduction Overview of the basic concepts of networking Also discusses essential topics of networking theory.
1 Emulating AQM from End Hosts Presenters: Syed Zaidi Ivor Rodrigues.
Accounting Management IACT 918 April 2005 Glenn Bewsell/Gene Awyzio SITACS University of Wollongong.
Semester 4 - Chapter 3 – WAN Design Routers within WANs are connection points of a network. Routers determine the most appropriate route or path through.
Connecting LANs, Backbone Networks, and Virtual LANs
Slide 1 What is a Computer Network? A computer network is a linked set of computer systems capable of sharing computer power and resources such as printers,
LAN Switching and Wireless – Chapter 1
Securing and Monitoring 10GbE WAN Links Steven Carter Center for Computational Sciences Oak Ridge National Laboratory.
LAN Switching and Wireless – Chapter 1 Vilina Hutter, Instructor
ﺑﺴﻢﺍﷲﺍﻠﺭﺣﻣﻥﺍﻠﺭﺣﻳﻡ. Group Members Nadia Malik01 Malik Fawad03.
Computer Security Workshops Networking 101. Reasons To Know Networking In Regard to Computer Security To understand the flow of information on the Internet.
CINBAD CERN/HP ProCurve Joint Project on Networking 26 May 2009 Ryszard Erazm Jurga - CERN Milosz Marian Hulboj - CERN.
Thanks to Edoardo Martelli, Stefan Stancu and Adam Krajewski
Networks. Network Hardware For any network to function successfully, you need specialized computer Hardware. However, without the right knowledge, you.
McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Connecting Devices CORPORATE INSTITUTE OF SCIENCE & TECHNOLOGY, BHOPAL Department of Electronics and.
1 Evaluating NGI performance Matt Mathis
TCP continued. Discussion – TCP Throughput TCP will most likely generate the saw tooth type of traffic. – A rough estimate is that the congestion window.
Computer Network Architecture Lecture 3: Network Connectivity Devices.
Class Notes CS403- Internet Technology Prepared by: Gulrez Alam Khan.
Network and Server Basics. Learning Objectives After viewing this presentation, you will be able to: Understand the benefits of a client/server network.
Considerations for Benchmarking Virtual Networks Samuel Kommu, Jacob Rapp, Ben Basler,
Troubleshooting Ben Fineman,
Network Layer COMPUTER NETWORKS Networking Standards (Network LAYER)
Network Topology and LAN Technologies
Yiting Xia, T. S. Eugene Ng Rice University
Mohamed Abdelfattah Vaughn Betz
Instructor Materials Chapter 1: LAN Design
Chapter 19: Network Management
Mesh-Network VoIP Call Capacity
Impact of New CC on Cross Traffic
Architecture and Algorithms for an IEEE 802
Data Center Network Architectures
Semester 4 - Chapter 3 – WAN Design
Improving Datacenter Performance and Robustness with Multipath TCP
What is Fibre Channel? What is Fibre Channel? Introduction
RT2003, Montreal Niko Neufeld, CERN-EP & Univ. de Lausanne
Addressing: Router Design
Chapter 18 MobileApp Design
Understanding the OSI Reference Model
Deployment & Advanced Regular Testing Strategies
CT1303 LAN Rehab AlFallaj.
IS3120 Network Communications Infrastructure
Comparison of the Three CPU Schedulers in Xen
Transport Layer Unit 5.
Challenges in Network Troubleshooting In big scale networks, when an issue like latency or packet drops occur its very hard sometimes to pinpoint.
ECE 4450:427/527 - Computer Networks Spring 2017
ExaO: Software Defined Data Distribution for Exascale Sciences
Dynamic Packet-filtering in High-speed Networks Using NetFPGAs
Ram Dantu University of North Texas,
IT351: Mobile & Wireless Computing
Smita Vijayakumar Qian Zhu Gagan Agrawal
VL2: A Scalable and Flexible Data Center Network
Network Topologies Charles Warren.
Performance Evaluation of Computer Networks
Network Processors for a 1 MHz Trigger-DAQ System
Cloud-Enabling Technology
Performance Evaluation of Computer Networks
Optical communications & networking - an Overview
CSE 550 Computer Network Design
Chapter-5 Traffic Engineering.
Practical Network Computer Science IT&CS Third Class part Mohanad Ali
Modeling and Evaluating Variable Bit rate Video Steaming for ax
Summer 2002 at SLAC Ajay Tirumala.
Presentation transcript:

Netbench Testing network devices with real-life traffic patterns HEPiX Fall/Autumn 2017 Workshop https://indico.cern.ch/event/637013/contributions/2739328/   stefan.stancu@cern.ch

Outline The problem: Test approaches Netbench evaluate network devices Design Statistics visualization Sample results

The problem Network performance is key Datacentre Campus Etc. Selecting new devices  evaluation is crucial: Required features Required performance Traffic patterns N S W E Network performance is key to the correct operation of any modern datacentre or campus infrastructure. Hence, it is crucial to ensure the devices employed in the network are carefully selected to meet the required needs. Netbench - HEPiX Fall 2017 Stefan Stancu

Luxurious approach DUT Tst Tst Tst Tst Tst Tst Tst Tst Tst = Tester Use one tester port for each device port  Cost explosion (tester port $$$) N tester ports (tens or few hundreds)  Exercises all ports Line-rate Packet size scan  Forwarding of traffic with complex distributions [3] Partial mesh Full mesh  Buffering only lightly exercised RFC tests [1][2] create synthetic reproducible traffic patterns Synchronized traffic generation, with minimal congestion  Such tests are rarely performed and are likely biased Manufacturers rent equipment Third party tests on manufacturers demand Tst Tst Tst Tst DUT Tst Tst full mesh partial mesh Tst Tst The established benchmarking methodology [1,2] consists of various tests that create perfectly reproducible traffic patterns. This has the advantage of being able to consistently asses the performance differences between various devices, but comes at the disadvantage of always using known, pre-defined traffic patterns (frame sizes and traffic distribution) that do not stress the buffering capabilities of the devices to the same extent as real-life traffic would. Tst = Tester DUT = Device Under Test Netbench - HEPiX Fall 2017 Stefan Stancu

Typical approach (affordable) – snake test Sequential path Snake test Use 2 tester ports Loop back traffic  Contained cost (tester port $$$): only 2 tester ports  Exercises all ports Line-rate Packet size scan  Forwarding on a simple linear paths Sequential paths  Easy to predict & optimize Random path  “Impossible” to predict  Buffering is not exercised No congestion due to linear path Tst DUT Tst DUT Random path Due to the prohibitive cost of specialized hardware equipment that implements RFC tests [1,2], few companies/organisations can afford a large scale test setup. The compromise that is often employed is to use two hardware tester ports and feed the same traffic to the device multiple times through loop-back cables (the so called “snake-test”). This test fully exercises the per-port throughput capabilities, but barely stresses the switching engine of the device in comparison to a full-mesh test [3]. Tst = Tester DUT = Device Under Test Netbench - HEPiX Fall 2017 Stefan Stancu

Netbench DUT Tst = Tester DUT = Device Under Test  Manageable cost Use commodity servers and NICs Orchestrate TCP flows (e.g. iperf3)  Manageable cost N server NIC ports – (tens or few hundreds) Time-share the servers  Exercises all ports Mostly maximum size packets, similar with real-life  Forwarding of traffic with complex distributions [3] Partial mesh Full mesh  Buffering exercised Multiple TCP flows, similar with real-life traffic Congestion due to competing TCP flows A reasonable size testbed becomes affordable DUT Netbench is a network-testing framework, based on commodity servers and NICs, that aims at overcoming the previously mentioned shortcoming. While not providing identical conditions for every test, netbench enables assessing the devices’ behaviour when handling multiple TCP flows, which closely resembles real-life usage.   The per-port price of a netbench test setup is significantly smaller than that of a testbed made using specialized hardware, especially if we take into account the fact that generic datacentre servers can be time-shared between netbench and day-to-day usage. Thus, a large-scale multi-port netbench setup is easily affordable and enables organisations/companies to complement the snake testwith benchmarks that stress test the switching fabric of network devices. Tst = Tester DUT = Device Under Test Netbench - HEPiX Fall 2017 Stefan Stancu

Netbench design DUT Traffic statistics Agent iperf3 Web server {REST} XML-RPC Central Netbench has a layered architecture and uses standard technologies. At its core, it relies on iperf3 [4] as an engine to drive TCP flows between servers. The orchestration platform that sets up multiple iperf3 sessions is written in Python and relies on XML-RPC for fast provisioning of flows. Per-flow statistics are gathered into a PostgreSQL database, and the results visualisation is based on a Python REST API and a web page using JavaScript and the D3.js library for displaying graphs. Netbench - HEPiX Fall 2017 Stefan Stancu

Graphs/plots – expected flows Plot the diff between expected and seen flows: Goal: flat 0 (i.e. all flows have correctly started) Statistics are presented at different levels of detail allowing the human tester to quickly asses the overall state of a test from both per-node and per-pair (source-destination) statistics. 2017-10-03 netbench TCP fairness testing

Graphs/plots – per node BW Plot the per node overall TX/RX bandwidth Goal: flat on all nodes (fair treatment of all the nodes) Netbench - HEPiX Fall 2017 Stefan Stancu

Graphs/plots – per-node flow BW Plot the per node average bandwidth (and stdev) Goal: flat on all nodes, and small stdev Netbench - HEPiX Fall 2017 Stefan Stancu

Graphs/plots – per-pair flow BW Plot the per pair average bandwidth Goal: flat (same colour) image (no hot/cold spots) Netbench - HEPiX Fall 2017 Stefan Stancu

Sample results CERN has tendered (RFP) for datacentre routers TCP flow fairness evaluation Netbench with 64x 40G NICs   During its last call for tender for high-end routers, CERN has employed netbench for evaluating the behaviour of network devices when exposed to meshed TCP traffic. We will present results from several devices. Furthermore, during the evaluation it became apparent that, due to the temporary congestion caused by competing TCP flows, netbench provides a good estimation of the devices’ buffering capabilities. Netbench - HEPiX Fall 2017 Stefan Stancu

Free running TCP (1) Per node BW (Tx/Rx) nice and flat on all nodes  Netbench - HEPiX Fall 2017 Stefan Stancu

Free running TCP (2) Groups A and C Group B has only all ports used Line-Card GroupA GroupB GroupC Groups A and C all ports used Small stdev Group B has only 8/12 ports used Bigger stdev LC1 gA LC1 gB LC1 gC LC2 gA LC2 gB LC2 gC Netbench - HEPiX Fall 2017 Stefan Stancu

Free running TCP (3) Clear pattern of the unfairness RTT Latency (ping): ~42ms regions ~35ms regions 0.2 – 25ms regions TCP streams compete freely  device buffers fully exercised Ports fully congested (most of them) TCP needs to see drops to back-off Good measure for the DUT buffers! Netbench - HEPiX Fall 2017 Stefan Stancu

Capped TCP window* (1) Per node BW (Tx/Rx) nice and flat on all nodes for all tests  * Capped TCP window: iperf3 -w 64k Netbench - HEPiX Fall 2017 Stefan Stancu

Capped TCP window (2) Uniform distribution Small stdev GroupA GroupB GroupC Uniform distribution Small stdev F1 gA F1 gB F1 gC F2 gA F2 gB F2 gC Netbench - HEPiX Fall 2017 Stefan Stancu

Capped TCP window (3) All nodes achieve ~line-rate Stable flat flow distribution small stdev latency < 1.1ms Good measure for TCP flow fairness When network congestion is controlled Netbench - HEPiX Fall 2017 Stefan Stancu

Summary Netbench – affordable, large-scale testing of network devices traffic patterns closely resemble real-life conditions. Some manufacturers expressed strong interest in the tool Anybody else? Specialized HW Specialized HW “snake” Netbench Test @line-rate  Packet size scan  Full mesh traffic Test buffering – Cost (large scale) prohibitive compromise affordable To summarize, we present netbench, a tool that allows provisioning TCP flows with various traffic distributions (pairs, partial and full-mesh). We consider netbench an essential complement to synthetic RFC tests [1][2], as it enables affordable, large-scale testing of network devices with traffic patterns that closely resemble real-life conditions. Netbench - HEPiX Fall 2017 Stefan Stancu

References [1] RFC 2544, Bradner, S. and McQuaid J., "Benchmarking Methodology for Network Interconnect Devices" [2] RFC 2889, Mandeville, R. and Perser J., "Benchmarking Methodology for LAN Switching Devices“ [3] RFC 2285, Mandeville, R., "Benchmarking Terminology for LAN Switching Devices" [4] iperf3 http://software.es.net/iperf/ Netbench - HEPiX Fall 2017 Stefan Stancu

Netbench - HEPiX Fall 2017 Stefan Stancu

Backup material Servers tuning for fair flows

Iperf and irq affinity [1] CPU affinity No Yes Yes  IRQ affinity Netbench - HEPiX Fall 2017 Stefan Stancu

Iperf and irq affinity [2] CPU affinity No Yes Yes  IRQ affinity Netbench - HEPiX Fall 2017 Stefan Stancu