Iperf Tutorial Jon Dugan Summer JointTechs 2010, Columbus, OH.

Slides:



Advertisements
Similar presentations
Storage System Integration with High Performance Networks Jon Bakken and Don Petravick FNAL.
Advertisements

Computer Networks Performance Metrics Computer Networks Term B10.
Traffic Shaping Why traffic shaping? Isochronous shaping
Doc.: IEEE /0604r1 Submission May 2014 Slide 1 Modeling and Evaluating Variable Bit rate Video Steaming for ax Date: Authors:
Esma Yildirim Department of Computer Engineering Fatih University Istanbul, Turkey DATACLOUD 2013.
Transport Layer – TCP (Part1) Dr. Sanjay P. Ahuja, Ph.D. Fidelity National Financial Distinguished Professor of CIS School of Computing, UNF.
Copyright 1999, S.D. Personick. All Rights Reserved. Telecommunications Networking II Lecture 32 Transmission Control Protocol (TCP) Ref: Tanenbaum pp:
Ahmed El-Hassany CISC856: CISC 856 TCP/IP and Upper Layer Protocols Slides adopted from: Injong Rhee, Lisong Xu.
Mapping a Network by Latency (and other things) Client connecting to , UDP port.
CSEE W4140 Networking Laboratory Lecture 6: TCP and UDP Jong Yul Kim
Available bandwidth measurement as simple as running wget D. Antoniades, M. Athanatos, A. Papadogiannakis, P. Markatos Institute of Computer Science (ICS),
Internet and Intranet Protocols and Applications Section V: Network Application Performance Lecture 11: Why the World Wide Wait? 4/11/2000 Arthur P. Goldberg.
Internet Bandwidth Measurement Techniques Muhammad Ali Dec 17 th 2005.
Department of Electronic Engineering City University of Hong Kong EE3900 Computer Networks Transport Protocols Slide 1 Transport Protocols.
CS335 Networking & Network Administration Tuesday, April 20, 2010.
5/12/05CS118/Spring051 A Day in the Life of an HTTP Query 1.HTTP Brower application Socket interface 3.TCP 4.IP 5.Ethernet 2.DNS query 6.IP router 7.Running.
Ch. 28 Q and A IS 333 Spring Q1 Q: What is network latency? 1.Changes in delay and duration of the changes 2.time required to transfer data across.
IP-UDP-RTP Computer Networking (In Chap 3, 4, 7) 건국대학교 인터넷미디어공학부 임 창 훈.
Gursharan Singh Tatla Transport Layer 16-May
Lawrence G. Roberts CEO Anagran September 2005 Advances Toward Economic and Efficient Terabit LANs and WANs.
Petrozavodsk State University, Alex Moschevikin, 2003NET TECHNOLOGIES Internet Control Message Protocol ICMP author -- J. Postel, September The purpose.
KEK Network Qi Fazhi KEK SW L2/L3 Switch for outside connections Central L2/L3 Switch A Netscreen Firewall Super Sinet Router 10GbE 2 x GbE IDS.
© Janice Regan, CMPT 128, CMPT 371 Data Communications and Networking Network Layer ICMP and fragmentation.
1 Transport Layer Computer Networks. 2 Where are we?
BWCTL March 10 th 2011, OSG All Hands Meeting, Network Performance Jason Zurawski – Internet2.
Advanced Network Architecture Research Group 2001/11/149 th International Conference on Network Protocols Scalable Socket Buffer Tuning for High-Performance.
Chapter 4. After completion of this chapter, you should be able to: Explain “what is the Internet? And how we connect to the Internet using an ISP. Explain.
TCP/IP Essentials A Lab-Based Approach Shivendra Panwar, Shiwen Mao Jeong-dong Ryoo, and Yihan Li Chapter 5 UDP and Its Applications.
POSTECH DP&NM Lab. Internet Traffic Monitoring and Analysis: Methods and Applications (1) 4. Active Monitoring Techniques.
Fall 2005Computer Networks20-1 Chapter 20. Network Layer Protocols: ARP, IPv4, ICMPv4, IPv6, and ICMPv ARP 20.2 IP 20.3 ICMP 20.4 IPv6.
Computer Networks Performance Metrics. Performance Metrics Outline Generic Performance Metrics Network performance Measures Components of Hop and End-to-End.
UDT: UDP based Data Transfer Yunhong Gu & Robert Grossman Laboratory for Advanced Computing University of Illinois at Chicago.
SMUCSE 4344 transport layer. SMUCSE 4344 transport layer end-to-end protocols –transport code runs only on endpoint hosts encapsulates network communications.
Fundamentals of Computer Networks ECE 478/578 Lecture #19: Transport Layer Instructor: Loukas Lazos Dept of Electrical and Computer Engineering University.
Copyright 2002, S.D. Personick. All Rights Reserved.1 Telecommunications Networking II Topic 20 Transmission Control Protocol (TCP) Ref: Tanenbaum pp:
TCP1 Transmission Control Protocol (TCP). TCP2 Outline Transmission Control Protocol.
BWCTL August 9 th 2011, OSG Site Admin Workshop Jason Zurawski – Internet2 Research Liaison.
The Transmission Control Protocol (TCP) Application Services (Telnet, FTP, , WWW) Reliable Stream Transport (TCP) Connectionless Packet Delivery.
Transport Layer Moving Segments. Transport Layer Protocols Provide a logical communication link between processes running on different hosts as if directly.
All Rights Reserved © Alcatel-Lucent | TIA 30.3 Contribution | August 2010 Telecommunications Industry AssociationTR-30.3/ Arlington, VA.
Comparison of Public End-to-End Bandwidth Estimation tools on High-Speed Links Alok Shriram, Margaret Murray, Young Hyun, Nevil Brownlee, Andre Broido,
1 Internet Control Message Protocol (ICMP) Used to send error and control messages. It is a necessary part of the TCP/IP suite. It is above the IP module.
Chapter 2 Applications and Layered Architectures Sockets.
TCP Trunking: Design, Implementation and Performance H.T. Kung and S. Y. Wang.
Scavenger performance Cern External Network Division - Caltech Datagrid WP January, 2002.
CCNA 2 Week 9 Router Troubleshooting. Copyright © 2005 University of Bolton Topics Routing Table Overview Network Testing Troubleshooting Router Issues.
Vertical Optimization Of Data Transmission For Mobile Wireless Terminals MICHAEL METHFESSEL, KAI F. DOMBROWSKI, PETER LANGENDORFER, HORST FRANKENFELDT,
NLANR The National Laboratory for Applied Network Research funded by the National Science Foundation, provides engineering,
1. Introduction REU 2006-Packet Loss Distributions of TCP using Web100 Zoriel M. Salado, Mentors: Dr. Miguel A. Labrador and Cesar D. Guerrero 2. Methodology.
BNL PDN Enhancements. Perimeter Load Balancers Scaleable Performance Fault Tolerance Server Maintainability User Convenience Perimeter Security.
TCP transfers over high latency/bandwidth networks & Grid DT Measurements session PFLDnet February 3- 4, 2003 CERN, Geneva, Switzerland Sylvain Ravot
LECTURE 12 NET301 11/19/2015Lect NETWORK PERFORMANCE measures of service quality of a telecommunications product as seen by the customer Can.
1 Transport Layer: Basics Outline Intro to transport UDP Congestion control basics.
4343 X2 – The Transport Layer Tanenbaum Ch.6.
IP1 The Underlying Technologies. What is inside the Internet? Or What are the key underlying technologies that make it work so successfully? –Packet Switching.
TCP/IP1 Address Resolution Protocol Internet uses IP address to recognize a computer. But IP address needs to be translated to physical address (NIC).
11 CS716 Advanced Computer Networks By Dr. Amir Qayyum.
Computer Networks 1000-Transport layer, TCP Gergely Windisch v spring.
Connect communicate collaborate Performance Metrics & Basic Tools Robert Stoy, DFN EGI TF, Madrid September 2013.
A special acknowledge goes to J.F Kurose and K.W. Ross Some of the slides used in this lecture are adapted from their original slides that accompany the.
Bandwidth estimation: metrics, measurement techniques, and tools Presenter: Yuhang Wang.
BWCTL August 10 th 2010, OSG Site Admin Workshop - Network Performance Jason Zurawski, Internet2.
WTG – Wireless Traffic Generator Presented by: Lilach Givaty Supervised by: Dr. Yehuda Ben-Shimol, Shlomi Atias.
iperf a gnu tool for IP networks
Youngstown State University Cisco Regional Academy
The Transport Layer Implementation Services Functions Protocols
Network Performance - Theory
Net 323 D: Networks Protocols
Review of Internet Protocols Transport Layer
Summer 2002 at SLAC Ajay Tirumala.
Presentation transcript:

Iperf Tutorial Jon Dugan Summer JointTechs 2010, Columbus, OH

Lawrence Berkeley National LaboratoryU.S. Department of Energy | Office of Science Outline What are we measuring? TCP Measurements UDP Measurements Useful tricks Iperf Development

Lawrence Berkeley National LaboratoryU.S. Department of Energy | Office of Science What are we measuring?

Lawrence Berkeley National LaboratoryU.S. Department of Energy | Office of Science Throughput? Bandwidth? What? The term “throughput” is vague Capacity: link speed - Narrow Link: link with the lowest capacity along a path - Capacity of the end-to-end path = capacity of the narrow link Utilized bandwidth: current traffic load Available bandwidth: capacity – utilized bandwidth - Tight Link: link with the least available bandwidth in a path Achievable bandwidth: includes protocol and host issues 45 Mbps 10 Mbps 100 Mbps45 Mbps Narrow Link Tight Link sourcesink (Shaded portion shows background traffic)

Lawrence Berkeley National LaboratoryU.S. Department of Energy | Office of Science Iperf data flow Client is the sender (data source) Server is the receiver (data sink) Iperf discards the data Client Server

Lawrence Berkeley National LaboratoryU.S. Department of Energy | Office of Science TCP Measurements

Lawrence Berkeley National LaboratoryU.S. Department of Energy | Office of Science TCP Measurements Measures TCP Achievable Bandwidth Measurement includes the end system Sometimes called “memory-to-memory” tests Set expectations for well coded application Limits of what we can measure TCP hides details In hiding the details it can obscure what is causing errors Many things can limit TCP throughput Loss Congestion Buffer Starvation Out of order delivery

Lawrence Berkeley National LaboratoryU.S. Department of Energy | Office of Science Example Iperf TCP Invocation Server (receiver): $ iperf -s Server listening on TCP port 5001 TCP window size: 85.3 KByte (default) [ 4] local port 5001 connected with port [ 4] sec 1.09 GBytes 933 Mbits/sec [ 4] local port 5001 connected with port [ 4] sec 1.08 GBytes 931 Mbits/sec Client (sender): $ iperf -c Client connecting to , TCP port 5001 TCP window size: 129 KByte (default) [ 3] local port connected with port 5001 [ ID] Interval Transfer Bandwidth [ 3] sec 1.09 GBytes 913 Mbits/sec

Lawrence Berkeley National LaboratoryU.S. Department of Energy | Office of Science TCP performance: window size Use TCP auto tuning if possible Linux 2.6, Mac OS X 10.5, FreeBSD 7.x, and Windows Vista The –w option for Iperf can be used to request a particular buffer size. Use this if your OS doesn’t have TCP auto tuning This sets both send and receive buffer size. The OS may need to be tweaked to allow buffers of sufficient size. See for more detailshttp://fasterdata.es.net/tuning.html Parallel transfers may help as well, the –P option can be used for this To get full TCP performance the TCP window needs to be large enough to accommodate the Bandwidth Delay Product

Lawrence Berkeley National LaboratoryU.S. Department of Energy | Office of Science TCP performance: Bandwidth Delay Product The amount of “in flight” data allowed for a TCP connection BDP = bandwidth * round trip time Example: 1Gb/s cross country, ~100ms 1,000,000,000 b/s *.1 s = 100,000,000 bits 100,000,000 / 8 = 12,500,000 bytes 12,500,000 bytes / (1024*1024) ~ 12MB

Lawrence Berkeley National LaboratoryU.S. Department of Energy | Office of Science TCP performance: read/write buffer size TCP breaks the stream into pieces transparently Longer writes often improve performance Let TCP “do it’s thing” Fewer system calls How? -l (lower case ell) Example –l 128K UDP doesn’t break up writes, don’t exceed Path MTU

Lawrence Berkeley National LaboratoryU.S. Department of Energy | Office of Science TCP performance: parallel streams Parallel streams can help in some situations TCP attempts to be “fair” and conservative Sensitive to loss, but more streams hedge bet Circumventing fairness mechanism - 1 Iperf stream vs. n background: Iperf gets 1/(n+1) - x Iperf streams vs. n background: Iperf gets x/(n+x) - Example: 2 background, 1 Iperf stream: 1/3 = 33% - Example: 2 background, 8 Iperf streams: 8/10 = 80% How? The –P option sets the number of streams to use There is a point of diminishing returns

Lawrence Berkeley National LaboratoryU.S. Department of Energy | Office of Science TCP performance: congestion control algorithm selection Classic TCP (aka TCP Reno) is very conservative Linux supports several different algorithms CUBIC seems to work well for RE&E traffic flows How? -Z allows the selection of a congestion control algorithm

Lawrence Berkeley National LaboratoryU.S. Department of Energy | Office of Science UDP Measurements

Lawrence Berkeley National LaboratoryU.S. Department of Energy | Office of Science UDP Measurements UDP provides greater transparency We can directly measure some things TCP hides Loss Jitter Out of order delivery Use -b to specify target bandwidth Default is 1M Two sets of multipliers - K. m, g multipliers are 1000, , K, M, G multipliers are 1024, , Eg, -b 1m is 1,000,000 bits per second

Lawrence Berkeley National LaboratoryU.S. Department of Energy | Office of Science Example Iperf UDP Invocation Server (receiver): $ iperf -u -s Server listening on UDP port 5001 Receiving 1470 byte datagrams UDP buffer size: 107 KByte (default) [ 3] local port 5001 connected with port [ 3] sec 1.25 MBytes 1.05 Mbits/sec ms 0/ 893 (0%) Client (sender): $ iperf -u -c b 1M Client connecting to , UDP port 5001 Sending 1470 byte datagrams UDP buffer size: 9.00 KByte (default) [ 3] local port connected with port 5001 [ ID] Interval Transfer Bandwidth [ 3] sec 1.25 MBytes 1.05 Mbits/sec [ 3] Server Report: [ 3] sec 1.25 MBytes 1.05 Mbits/sec ms 0/ 893 (0%) [ 3] Sent 893 datagrams

Lawrence Berkeley National LaboratoryU.S. Department of Energy | Office of Science Useful tricks

Lawrence Berkeley National LaboratoryU.S. Department of Energy | Office of Science Using Iperf to generate high rate streams UDP doesn’t require a receiver If you have good counters on your switches & routers those can be used to measure Turns out UDP reception can be very resource intensive resulting in drops at the NIC at high rates (8-9 Gb/s)

Lawrence Berkeley National LaboratoryU.S. Department of Energy | Office of Science Routing loops for fun and profit Iperf UDP 1 Gb/s stream destined for Use the –T option to Iperf to control the number of times the traffic loops Can also use firewall filters to discard a certain TTL range. Other filters may be prudent as well. Use firewall filters to count traffic on your router. (Do not try this at home, the author is a highly insane network engineer.) Static route: / Static route: / Gb/s Host Generate 10 Gb/s of traffic using a 1 Gb/s source host

Lawrence Berkeley National LaboratoryU.S. Department of Energy | Office of Science Iperf Development

Lawrence Berkeley National LaboratoryU.S. Department of Energy | Office of Science Iperf Development (Iperf is dead, long live Iperf) Iperf 2 Iperf 2 is widely used Current version is (released July 8, 2010) No further development, maintenance only - critical patches - sporadic releases, only when necessary Iperf 3 Currently in development Current version is 3.0b1 (released July 8, 2010) Weekly beta releases (starting this past Thursday) Eventually replace Iperf 2

Lawrence Berkeley National LaboratoryU.S. Department of Energy | Office of Science Iperf 3: current status Working TCP Control channel - Stream setup - Test parameter negotiation - Results Exchange Clean code! Coming Soon UDP tests API with sane error reporting, library Timeline at:

Lawrence Berkeley National LaboratoryU.S. Department of Energy | Office of Science More Information Iperf 2: Iperf 3: User Discussion: Developer Discussion: Network performance: Jon Dugan