Throughput testing in TCP/IP based networks
15 December 2016
Communication networks have evolved greatly in recent years to the extent that all-IP wired and wireless hybrid networks are now a reality.
(Click here to view article in digital issue)
TCP/IP still remains the most popular communication protocol suite that defines the rules of communication between end hosts, and is the most commonly used for data transfer in the Internet. In fact, TCP/IP can be said to be the de facto standard communications protocol for all connected residential users, enterprises and organisations.
TCP/IP accepts files consisting of data of any size from applications and breaks them up into smaller, more manageable pieces. These are known as segments, and the process of splitting files is known as segmentation.
Segments of data are then wrapped in a data structure known as a packet. A packet contains all the information a network needs to deliver it to its destination and then to acknowledge delivery.
TCP/IP prepares data received from applications for transmission and provides all the logical mechanisms needed to send and receive data between two devices connected via a physical network. Some basic TCP/IP properties that form the basis of a communication system are:
• Globally unique addresses
• The packet system
• Packet segmentation and re-assembly
• Packet re-sequencing
• Data integrity
The network is, of course, a crucial factor for any communication system, and this article will therefore focus on the technical TCP/IP challenges encountered in communication between the two end hosts in the network.
Effective analysis of the TCP/IP environment requires an understanding of the fundamental physics of network behaviour, the control mechanisms determining TCP/IP performance, and the identification of performance problems by network behaviour analysis. This analysis includes examinations of TCP flows, packet sizes, window behaviour, flow and congestion controls, and data link operations.
The traditional way for network engineers to troubleshoot performance problems involves tracing the appropriate portion of the network segment and analysing the TCP/IP header data from the captured trace, which helps in understanding the condition of the network at the time of the problem.
Service Level Agreements
The reason why these tests are important – and the most important challenge that network operators have to face - is how to meet the Service Level Agreements (SLAs) that they have with their end customers.
There can be many reasons for service to users or between applications not working. Some of the reasons include hardware failure, incorrect service configuration or usage, and network issues. Of these concerns, network issues are the most significant, because all the others are relatively easy to troubleshoot and correcting these faults does not usually take very long.
Generally, the network issues that are mentioned in Service Level Agreements are based on Layer 2/3 criteria such as bandwidth, latency, packet loss, and delay variations (jitter). To verify network performance based on these criteria, network operators normally carry out testing based on the IETF RFC 2544 test suite: “Benchmarking methodology for network interconnect devices”.
Even if the network meets the criteria laid down in this standard, customers may still find that the throughput they achieve is below the service level specified in the agreement they have with the operator. This may be caused by a non-optimal configuration of the Transmission Control Protocol (TCP) providing higher layer connections through the network. These issues mean that network providers are beginning to realise that Layer 2/3 testing is no longer sufficient to adequately ensure the satisfaction of end-users.
TCP throughput testing
This challenge can be addressed with TCP throughput testing to the criteria specified in the RFC 6349 specification, which provides a framework for measuring end-to-end TCP throughput the network.
TCP throughput is an important metric in measuring the quality of network connection. It is defined by the equation above.
Another important challenge is how to ensure that the TCP communication provides a reliable data transfer service and works in an efficient manner. TCP is a connection-oriented protocol and reliability is achieved by detecting lost segments and retransmitting them. To further ensure reliability, TCP uses buffers in the devices involved at the send and receive ends of a connection, with acknowledgment of the transmitted information. To support this process, network devices are equipped with buffering capacity. If the buffers are of insufficient capacity, the result will be degradation of the available bandwidth capability, leading to customer dissatisfaction. The RFC 6349 TCP throughput test assists in highlighting this issue and identifying a suitable buffer size.
There can be other technical challenges like identifying the path MTU (Maximum Transmission Unit). If the MTU is not configured properly, packet fragmentation can occur, which can be an issue for some of the applications running in the customer network. Where there are throughput limitations in the network, it is difficult to test end-to-end customer links under some conditions like “bursty” traffic and different data service profiles. In some troubleshooting scenarios, it may also be useful for the network engineer to emulate the customer network setup and realise the results that the customer would experience without depending on the existing hardware.
The new, extended scope of Ethernet service testing requires testers which can perform RFC6349 throughput test along with traditional testing methods like RFC2544 and Y.1564. The Anritsu Network Master Pro MT1000A and Network Master Flex MT1100 (Figure 2) can carry out TCP throughput test and RFC standard 6349 testing up to 10Gbit/s as well as supporting testing of existing standards such as RFC2544 and Y.1564. Along with Ethernet testing capability, users can also perform OTN testing, PDH/SDH/SONET testing, CPRI testing and cable test.
The MT1000A and MT1100A support TCP throughput tests based on the RFC 6349 standard which are carried out by emulating end users’ network elements. More advanced testing capabilities include hardware-based TCP throughput tests via a connected iperf server for high reliability and high accuracy.
The MT1000A supports TCP throughput tests on up to two ports simultaneously while the MT1100A can test up to four ports simultaneously. This ability to carry out multi-port testing reduces test times for multiple connection tests. The calculated ideal and tested TCP throughput, as well as details like retransmitted bytes and round-trip delay, are also displayed. Graphs of TCP throughput versus time and other parameters are also displayed, helping users to identify possible issues quickly.
With multi-protocol support, these products can also be configured to support dual-port or quad port testing at all supported interface and data rates. Unlike other instruments, the MT1000A with dual port support and MT1100A with quad port support enable the user to carry out independent test on each port, effectively providing the user the capability to perform testing in a more productive manner.
In addition, the instrument’s simple user interface also helps guide users through the measurement process and helps to minimise the requirement for training. It shows that an MT1000A/MT1100A can provide a comprehensive tool for testing and verifying RFC 6349 TCP throughput testing before commissioning the service to the end user.
Contact Details and Archive...