File Transfer Protocol (FTP) Throughput Testing by Rachel Weiss



Similar documents
JDSU NetCompleteTM Metro Ethernet Service Assurance Solution Brochure

Transport Layer Protocols

Understanding TCP/IP. Introduction. What is an Architectural Model? APPENDIX

Data Communication Networks and Converged Networks

TCP/IP Protocol Suite. Marshal Miller Chris Chase

Computer Networks CS321

Final for ECE374 05/06/13 Solution!!

The OSI and TCP/IP Models. Lesson 2

Basic Networking Concepts. 1. Introduction 2. Protocols 3. Protocol Layers 4. Network Interconnection/Internet

What is Network Latency and Why Does It Matter?

Overview. Securing TCP/IP. Introduction to TCP/IP (cont d) Introduction to TCP/IP

Sage ERP Accpac Online

Sage 300 ERP Online. Mac Resource Guide. (Formerly Sage ERP Accpac Online) Updated June 1, Page 1

UPPER LAYER SWITCHING

Verifying Metro Ethernet Quality of Service

A host-based firewall can be used in addition to a network-based firewall to provide multiple layers of protection.

How To Use A Network Over The Internet (Networking) With A Network (Netware) And A Network On A Computer (Network)

OFM-500 Optical Fiber Mapping Software. A complete software application for managing documentation in fiber optic plants

Frequently Asked Questions

Module 1: Reviewing the Suite of TCP/IP Protocols

Zarządzanie sieciami telekomunikacyjnymi

Computer Network. Interconnected collection of autonomous computers that are able to exchange information

The TCP/IP Reference Model

CTS2134 Introduction to Networking. Module 07: Wide Area Networks

Chapter 9. IP Secure

Computer Networks Homework 1

Guide to Network Defense and Countermeasures Third Edition. Chapter 2 TCP/IP

Solving complex performance problems in TCP/IP and SNA environments.

Slide 1 Introduction cnds@napier 1 Lecture 6 (Network Layer)

Improving Effective WAN Throughput for Large Data Flows By Peter Sevcik and Rebecca Wetzel November 2008

Indian Institute of Technology Kharagpur. TCP/IP Part I. Prof Indranil Sengupta Computer Science and Engineering Indian Institute of Technology

LESSON Networking Fundamentals. Understand TCP/IP

First Midterm for ECE374 02/25/15 Solution!!

Protocols and Architecture. Protocol Architecture.

Chapter 2 - The TCP/IP and OSI Networking Models

Network Models OSI vs. TCP/IP

Internet Protocol: IP packet headers. vendredi 18 octobre 13

How To Test For 10 Gigabit Ethernet At 10 Gb/S

Burst Testing. New mobility standards and cloud-computing network. This application note will describe how TCP creates bursty

CPS221 Lecture: Layered Network Architecture

ICOM : Computer Networks Chapter 6: The Transport Layer. By Dr Yi Qian Department of Electronic and Computer Engineering Fall 2006 UPRM

Referring to the above question, the end-to-end delay (transmission delay plus propagation delay) is

Architecture and Performance of the Internet

ICS 153 Introduction to Computer Networks. Inst: Chris Davison

TFTP TRIVIAL FILE TRANSFER PROTOCOL OVERVIEW OF TFTP, A VERY SIMPLE FILE TRANSFER PROTOCOL FOR SIMPLE AND CONSTRAINED DEVICES

RFC 6349 Testing with TrueSpeed from JDSU Experience Your Network as Your Customers Do

IP Networking. Overview. Networks Impact Daily Life. IP Networking - Part 1. How Networks Impact Daily Life. How Networks Impact Daily Life

Computer Networks - CS132/EECS148 - Spring

Applications. Network Application Performance Analysis. Laboratory. Objective. Overview

Solving the Big Dilemma of Big Data

Chapter 4 Rate Limiting

How do I get to

Overview of TCP/IP. TCP/IP and Internet

Mobile IP Network Layer Lesson 02 TCP/IP Suite and IP Protocol

Overview of Computer Networks

IP Addressing A Simplified Tutorial

IP - The Internet Protocol

JDSU s MTS/T-BERD platforms: Fully automated bi-directional OTDR data acquisition and data analysis test instruments

ESSENTIALS. Understanding Ethernet Switches and Routers. April 2011 VOLUME 3 ISSUE 1 A TECHNICAL SUPPLEMENT TO CONTROL NETWORK

Networking Test 4 Study Guide

Network Security. Vorlesung Kommunikation und Netze SS 10 E. Nett

WAN Data Link Protocols

FST-2802 TestPad Gigabit Ethernet Services Module Test Ethernet, Fibre Channel, and IP services using one test instrument!

Encapsulating Voice in IP Packets

CHAPTER 1 PRINCIPLES OF NETWORK MONITORING

Top-Down Network Design

Candidates should attempt FOUR questions. All questions carry 25 marks.

Names & Addresses. Names & Addresses. Hop-by-Hop Packet Forwarding. Longest-Prefix-Match Forwarding. Longest-Prefix-Match Forwarding

First Midterm for ECE374 03/09/12 Solution!!

Procedure: You can find the problem sheet on Drive D: of the lab PCs. 1. IP address for this host computer 2. Subnet mask 3. Default gateway address

Outline. CSc 466/566. Computer Security. 18 : Network Security Introduction. Network Topology. Network Topology. Christian Collberg

Industrial Communication Whitepaper. Principles of EtherNet/IP Communication

Centralized Remote Testing for DS3/1/0 Based Services. CT650 CENTEST Wideband Test Unit

QoS issues in Voice over IP

Transport and Network Layer

Chapter 5. Data Communication And Internet Technology

Technical Support Information Belkin internal use only

Objectives of Lecture. Network Architecture. Protocols. Contents

DA-3600A Data Network Analyzer Advanced Network analysis and troubleshooting

How To Design A Layered Network In A Computer Network

The TCP/IP Protocol Suite

Network Simulation Traffic, Paths and Impairment

Data Link Protocols. TCP/IP Suite and OSI Reference Model

The Data Replication Bottleneck: Overcoming Out of Order and Lost Packets across the WAN

Ethernet. Ethernet. Network Devices

Lecture 1: Course Introduction" CSE 222A: Computer Communication Networks Alex C. Snoeren

PART OF THE PICTURE: The TCP/IP Communications Architecture

Network Programming TDC 561

NETWORK LAYER/INTERNET PROTOCOLS

Key Components of WAN Optimization Controller Functionality

Computer Networks - Xarxes de Computadors

Protocol Data Units and Encapsulation

Computer Networks/DV2 Lab

EXPLORER. TFT Filter CONFIGURATION

Local Area Networks transmission system private speedy and secure kilometres shared transmission medium hardware & software

Installation, Commissioning, and Maintenance of Metro Ethernet Networks Using T-BERD/MTS 8000 and NetComplete (QT-600) Metro Ethernet Service Solution

DL TC72 Communication Protocols: HDLC, SDLC, X.25, Frame Relay, ATM

z/os V1R11 Communications Server system management and monitoring

WAN Technology. Heng Sovannarith

Transcription:

White Paper File Transfer Protocol (FTP) Throughput Testing by Rachel Weiss Introduction In today s complex networks it is often difficult to correlate different measurements that are reported by network equipment, test equipment, or an end customer. This is because telecommunication networks are comprised of several different layers of services, each with its own protocols and measurements. The measurements are designed to verify that network performance meets the requirements specified for particular protocols and in each customer s service level agreement (SA). The purpose of this paper is to explain how actual and estimated File Transfer Protocol (FTP) throughput measurements are derived, how they relate to other common network measurements, and how specific factors affect FTP throughput. Network view Figure 1 below depicts a typical service provider s / network. In this example, the customer hand off is a switched layer 2 link or a routed layer 3 link. The service provider s network connects multiple customer sites (Premise A and Premise B). A common customer practice for verifying FTP throughput is to transfer a file (using FTP) from one location to another, and then measure the time it takes to complete the transfer. The customer then compares the measured FTP throughput with their SA throughput measurement. The inherent problem with this approach is that FTP throughput is measured in the upper layers of the network stack, while the throughput requirements stated in most SAs are typically a layer 1, 2, or 3 measurement. Throughput measured at layer 7 will always be less than that measured at layer 1, 2, or 3 for reasons which will be explored throughout this paper. Metro Network Central Office Central Office 1GE 100Mbps Edge Router NIU Device 1GE 100Mbps Customer Premise A FTP TCP FTP TCP Customer Premise B Figure 1: Metro Network NORTH WEBSITE: AMERICA: www.jdsu.com/test 800 498-JDSU (5378) WORDWIDE: +800 5378-JDSU WEBSITE: www.jdsu.com

2 FTP, TCP, and the OSI model FTP is a widely used application that enables a user to transfer files between two computers over a TCP/ network. The user runs an FTP client application on one computer and the other computer runs an FTP server program. The server is identified by a text name or an address. The remote user logs into the FTP server using a login name and password, which the server then authenticates. FTP runs on the upper layers of the OSI model (see Figure 2) and uses the Transport Control Protocol (TCP) to transport the transferred data. TCP is a connection-oriented protocol residing at layer 4 of the OSI Model. It provides extensive error control and flow control to ensure that data is delivered successfully. ayer 7 ayer 6 ayer 5 ayer 4 ayer 3 ayer 2 ayer 1 Application Presentation Session Transport Network Data ink FTP, Telnet, HTTP, SMTP, DNS TCP, UDP, X (Novell), ARP, RARP, ATM, Frame Relay, T1, SONET, WDM Figure 2: OSI Model When an FTP client sends a request to transfer a file, a TCP connection or session is initiated through a three-way handshake between the client and server, and synchronization is established. TCP then sends segments of data, each carrying a unique sequence number. Every time the receiving device receives a segment, it must send an acknowledgement back to the sending device. TCP communication is thus a system of transmissions and acknowledgements. The sending device monitors the status of the connection to ensure that each segment is received without errors, and retransmits data if necessary. TCP also provides flow control by negotiating a window size which dictates how much data a sending device can transmit before receiving an acknowledgement from the receiving device. Before data is transmitted, both devices advertise, and then agree upon the window size that will be used during the session. This prevents situations where the sending device transmits data more quickly than the receiving device can process it, which would result in a loss of data.

3 Measuring actual FTP throughput To measure actual FTP throughput, a file of a known size is transferred from a test set (either manually, or using a script) and the time it takes to complete the transfer is measured. FTP throughput is measured in bits per second; therefore, if it took 10 seconds to transfer a 20 Mbyte file, the throughput would be 2 Mbytes per second. This is then multiplied by 8, because each byte contains 8 bits. The resulting actual measurement is 16 Mbps of FTP throughput. 20MByte 8bits FTP _ Throughput= 10sec 1Byte FTP _ Throughput= 16Mbps It is very important to note that throughput can be measured at each layer of the network stack. Because FTP is an application running at layer 7 of the OSI model, FTP throughput is a layer 7 measurement. This is not the same throughput measurement commonly referred to in network SAs, which usually refer to layer 1, 2, or 3 throughput. ayer 1 throughput is the imum rate of traffic that can traverse the link independent of the actual traffic type, and it is the simplest measurement of throughput. For example, if there is a 100 Mbps pipe between two locations, the imum potential layer 1 throughput is 100 Mbps. It is not valid to equate FTP throughput with throughput at the lower layers because each layer of the network stack introduces overhead and more complex protocols that will affect the throughput measurement, some of which are out of the service provider s control. Making this assumption would be analogous to comparing apples to oranges. Therefore, directly comparing SA throughput to FTP throughput is not a correct way to verify the service provider s SA. Key factors for calculating or estimating FTP throughput When measuring the actual FTP throughput on a link or estimating the potential (theoretical) FTP throughput that may be supported on a link, four key factors must be considered: SA or link speed, frame size, round trip time (RTT), and window size. Based on the values of these factors at any given point in time on a live network, FTP throughput can vary widely. These four factors are used to derive the theoretical calculated FTP throughput measurement in the JDSU FTP script. The following section of this paper will discuss each of these factors in more detail and how this theoretical calculation is derived. Factor 1 - ink Speed The first factor is the link speed as contracted in the SA (for example, a 30 Mbps link). The contracted speed represents the imum FTP throughput possible on that link. A faster link speed provides higher potential FTP throughput; a lower link speed reduces potential FTP throughput. Since most networks are comprised of multiple links, it is also important to bear in mind that FTP throughput is limited by the slowest link in the network path. For example, the customer hand-off might be 30 Mbps, but the link to a server from which the file will be transferred could possibly be 10 Mbps. In this case, the imum potential FTP throughput would be 10 Mbps (not 30 Mbps). ink speed is just one of the factors used to derive FTP throughput. The following sections discuss additional factors.

4 Factor 2 - Frame Size Frame size impacts FTP throughput because each layer of the network stack adds overhead information to the actual user data. Various forms of encapsulation, such as VAN, also add overhead to the data. The addition of the overhead at each layer lowers the actual data throughput. For example, in untagged frame lengths can vary between 64 and 1518 bytes, and the overhead represents a total of 20 bytes. For a 64 byte frame, 20 bytes of overhead results in an actual data rate on the link of about 75%. The percentage of bytes used for overhead decreases in larger frames so they provide a more efficient data rate. A frame of 1518 bytes still uses 20 bytes for overhead so the actual data rate is close to 99%. Figure 3 depicts the overhead added at each layer of the stack. It also illustrates how FTP messages are assembled and then processed at each layer. This entire process can be described using the analogy of nesting Russian dolls. These wooden dolls come in a set, each decreasing in size and placed one insider another. ikewise, assembling an FTP message involves placing the smallest doll (the FTP user data) into a larger doll (a layer 4 TCP message with a TCP header), and then placing this doll into a larger doll (an datagram with an header), and so on. This process continues down to ayer 1, where the frame is converted to ones and zeroes. When the FTP message is processed on the far end, the far end device opens the largest doll, takes out the next smallest doll, and so on. ayers TCP/ UDP ayer Message ayer ayer (Application) Data s TCP/UDP Message TCP/UDP ayer ayer (Application) Data s ayers TCP/ UDP Datagram TCP/UDP ayer s ayer (Application) Data ayer 2 ayer 2 Frame ayer 2 TCP/UDP ayer s ayer (Application) Data ayer 2 Footer ayer 2 ayer 1 1 0 0 1 0 1 1 0 1 1 0 0 1 0 1 1 ayer 1 Figure 3: Overhead and Data at Each ayer

5 It should now be clear that each layer s overhead bits must be considered when calculating FTP throughput. When transporting v4 traffic using TCP over, the overhead accounts for a total of 78 bytes (see Table 1). ayer Overhead Bytes 1 Preamble, SFD, Interframe Gap 20 2 MAC header & CRC 18 3 20 4 TCP 20 Table 1: Overhead Bytes To calculate FTP throughput, the number of user data bits carried in a frame (represented by data) is divided by the total number of bits including the overhead (represented by ). This results in a scaling factor, which is then multiplied by the link speed to determine the highest practical amount of FTP data throughput that could possibly be achieved on the link. data inkspeed Calculating the highest practical FTP data throughput for a link speed of 1 Gbps carrying 1518 byte frames yields: data inkspeed 1460 1Gbps 1518 962Mbps Note that this is significantly lower than the link speed of 1 Gbps specified in the SA. If the same calculation is used for a l Gbps link carrying 64 byte frames, the highest practical FTP data throughput is only 94 Mbps! Therefore, by simply varying the frame size, FTP data throughput can range from 94 Mbps to 962 Mbps on a 1 Gbps link. But, in addition to link speed and frame size, two more factors must be considered: Round Trip Time and the TCP Window Size.

6 Factor 3 - Round Trip Time Round trip time is the third factor that must be considered when calculating FTP throughput. Round trip time has a negative affect on FTP throughput. Typically, the longer the round trip time the lower the FTP throughput. The imum acceptable round trip time for an link is usually specified in the customer s SA. It is defined as the time that it takes for the data to travel to the far end of the link, and then back again to the transmitter. In live networks, round trip time is affected by the distance between the transmitting node and the far end node, the routing and switching times of equipment on the link, and any traffic congestion that exists on the link. This factor must be considered because the TCP protocol requires that each received segment of data be acknowledged. For every segment that is transmitted, the receiver must send back an acknowledgement to ensure error free transmission. Therefore, the time it takes to send the data to the far end and the time that it takes to send the acknowledgement back to the transmitter must be considered. In contrast, layer 1, layer 2, and layer 3 throughput (typically specified in the customer s SA) is calculated based on the time it takes to transmit in one direction. This is because the TCP protocol does not apply at layer 1, 2, or 3. Essentially, both directions must be taken into account when measuring FTP throughput because FTP resides on the upper layers and uses the TCP protocol. The following section discusses how round trip time fits into the FTP throughput calculation, along with a related factor, the window size. Factor 4 - Window Size The window size parameter used in the TCP protocol defines how much data a transmitter can send at one time. In a practical sense, this addresses the limitations of the receiving device at the endpoint of the file transfer, such as the processor and memory speeds. In another sense, the window size represents the receiver s link capacity, since it dictates how much data can be transmitted over the link and successfully received. ink Capacity: Ideal Window Size In order to understand how window size impacts FTP throughput, the idea of the physical capacity of a link must be explored. capacity can be defined as the imum number of bits that can traverse the link at a particular point in time. This can be thought of as the size of the pipe. Figure 4: ink Capacity

7 The physical capacity (C) of an link is determined by multiplying the link speed (inkspeed) by the measured round trip time in seconds (RTT): C = inkspeed RTT The ideal window size would be equal to the physical capacity of an link. In other words, the best scenario is that in which TCP uses the full physical capacity of the link as its window size. The capacity of a link is a derived concept that will be used in the following section to build the FTP throughput equation. Practical Window Size Window size can be a significant limiting factor when calculating FTP throughput, because regardless of how large the physical capacity of the link may be, if the TCP window size is smaller than the physical capacity, the window size must be used to calculate the FTP throughput since it represents the true capacity of the link. For example, using a link speed of 1 Gbps and a round trip time of 20 milliseconds (ms), the physical capacity of the link would be equal to: C = inkspeed RTT C = 1000000000.020 C = 20,000, 000bits This calculation results in a capacity of 20,000,000 bits. However, in the TCP protocol the largest window size that can exist in the Microsoft Windows 2000 operating system is 65,535 bytes, or 524,280 bits. In this example the value used for capacity in the FTP throughput equation must be the window size. Using the concept of capacity and window size, the FTP throughput equation provided in Section 5.2 can now be modified to account for the round trip time. To do this, the window size is divided by the physical capacity to determine another scaling factor for the equation: data W inkspeed C data inkspeed W inkspeed RTT data W RTT

8 Assuming the same 1 Gbps link, with RTT of 20 ms, a frame size of 1518 bytes, and a window size of 524,280 bits, the result is as follows: data W RTT 1460 524280 1518.020 25.2Mbps When the window size and round trip time are taken into consideration, this yields a practical imum FTP throughput result of 25.2 Mbps. This is significantly less than the layer 1, 2, or 3 throughput that will be measured on this 1 Gbps link! If the window size happens to be greater than the physical capacity of the link, it can be ignored and the physical capacity can be used in the calculation. Actual window sizes vary in different operating systems. Conclusion The actual FTP throughput measurement and the theoretical calculation are complex concepts because the protocols residing at each layer of the network stack must be taken into consideration. As illustrated in the preceding sections, FTP throughput is typically measured significantly lower than the contracted SA s layer 1, 2, or 3 throughput. This is due to a number of factors previously discussed, and a lower FTP throughput measurement does not necessarily indicate a problem with the link or that the link is not performing per the customer s SA. The four factors described in this paper can vary significantly in live networks, yielding different results under various circumstances. By varying frame sizes and window sizes, a full range of potential FTP throughput values can be calculated. One solution, the JDSU FTP script, provides this information in a table that can be a very useful tool for fully characterizing FTP throughput over a link. The table can be used to determine how some of these parameters might be changed to improve FTP performance on an or link. Finally, FTP throughput should not be used alone to evaluate the performance of a contracted link with a service provider. There are many other essential measurements required to fully characterize the link, such as layer 1, 2, or 3 throughput, round trip time, and frame loss. All statements, technical information and recommendations related to the products herein are based upon information believed to be reliable or accurate. However, the accuracy or completeness thereof is not guaranteed, and no responsibility is assumed for any inaccuracies. The user assumes all risks and liability whatsoever in connection with the use of a product or its application. JDSU reserves the right to change at any time without notice the design, specifications, function, fit or form of its products described herein, including withdrawal at any time of a product offered for sale herein. JDSU makes no representations that the products herein are free from any intellectual property claims of others. Please contact JDSU for more information. JDSU and the JDSU logo are trademarks of JDS Uniphase Corporation. Other trademarks are the property of their respective holders. 2008 JDS Uniphase Corporation. All rights reserved. 30149278 000 0108 FTP.WP.ACC.TM.AE Test & Measurement Regional Sales NORTH AMERICA TE: 1 866 228 3762 FAX: +1 301 353 9216 ATIN AMERICA TE: +55 11 5503 3800 FAX: +55 11 5505 1598 ASIA PACIFIC TE: +852 2892 0990 FAX: +852 2892 0770 EMEA TE: +49 7121 86 2222 FAX: +49 7121 86 1222 WEBSITE: www.jdsu.com/test