Eng 3553 Lab #5 TCP Throughput

Similar documents
Objective To examine the throughput of a TCP connection as the flow control window size is varied.

TCP versus UDP Response Time

STUDY OF TCP THROUGHPUT ON NETWORK SIMULATOR OPNET++ BY USING DIFFERENT PARAMETERS

Frame Relay Network Performance

Security Lab 1 Firewall Performance

Order of Packet Transmission and Dropping

OVERVIEW WARNING! DATE: INFORMÁTICAS LAB ASSIGNMENT 3

Queuing Disciplines. Order of Packet Transmission and Dropping. Laboratory. Objective. Overview

Objective To examine the change in throughput in a local area network when upgrading from a hub to a switch.

Order of Packet Transmission and Dropping

Switched LANs A Set of Local Area Networks Interconnected by Switches

Shared Ethernet Networks

Lab 4: Changing Frame Relay PVC Speeds in a WAN Environment

Lab 1: Evaluating Internet Connection Choices for a Small Home PC Network

SIMULATION FRAMEWORK MODELING

Switched LANs. A Set of Local Area Networks Interconnected by Switches

Impact of TCP Window Size on a File Transfer

Lab 1: Improving performance by LAN Hardware Upgrade

Network Design. Planning a Network with Different Users, Hosts, and Services. Laboratory. Objective. Overview

RSVP: Resource Reservation Protocol

LAB 1: Evaluating Internet Connection Choices for a Small Home PC Network

Security Labs in OPNET IT Guru

Advanced Communication Lab OPNET Tutorial

Abstract. main advantage with cloud computing is that, the risk of infrastructure maintenance reduces a

Topics. TCP sliding window protocol TCP PUSH flag TCP slow start Bulk data throughput

Advanced Communication Lab OPNET Tutorial

CHAPTER 4. The main aim of this chapter is to discuss the simulation procedure followed in

Chapter 6. What happens at the Transport Layer? Services provided Transport protocols UDP TCP Flow control Congestion control

Security Labs in OPNET IT Guru

ECEN Final Exam Fall Instructor: Srinivas Shakkottai

In this Lab not many hints are given. We want to see who can complete the task. You can decide your own way to implement the given network model.

TCP Congestion Control in Wired and Wireless networks

Delhi Noida Bhopal Hyderabad Jaipur Lucknow Indore Pune Bhubaneswar Kolkata Patna Web: Ph:

Network Simulation with OPNET

Load Balance Mechanism

LAN Modeling. Overview

RD-TCP: Reorder Detecting TCP

CNPE Communications and Networks Lab Book: Data Transmission Over Digital Networks

Lab 6: Evaluating Firewall Policies to Manage Network Traffic

23-3 TCP. Topics discussed in this section: TCP Services TCP Features Segment A TCP Connection Flow Control Error Control 23.22

DiffServ Architecture: Impact of scheduling on QoS

Student ID: CS457: Computer Networking Date: 3/20/2007 Name:

Transport Layer Protocols TCP

This document presents the basics of OPNET Modeler. The content of this document is mainly transcript from the OPNET documentation [

Southern Polytechnic State University Spring Semester 2009

ETSF10 Internet Protocols Transport Layer Protocols

TCP/IP-2. Transmission control protocol:

PERFORMANCE ANALYSIS FOR GPRS WITH PRIORITIZED AND NON-PRIORITIZED MOBILITY MANAGEMENT PROCEDURES

Introduction to Modeler

Performance Analysis of TCP LBA and TCP TAHOE Approaches in g Standard Savreet KaurBrar 1, Sandeep Singh Kang 2

Introduction to Protocols

UDP, TCP, IP multicast

TCP Strategies. Keepalive Timer. implementations do not have it as it is occasionally regarded as controversial. between source and destination

Page 1. Review: Internet Protocol Stack. Transport Layer Services. Design Issue EEC173B/ECS152C. Review: TCP

Transport Layer. Application / Transport Interface. Transport Layer Services. Transport Layer Connections

CSE 461 Module 10. Introduction to the Transport Layer

McGill University - Faculty of Engineering Department of Electrical and Computer Engineering

Wireless Challenges : Computer Networking. Overview. Routing to Mobile Nodes. Lecture 25: Wireless Networking

Computer Networks. ENGG st Semester, 2010 Hayden Kwok-Hay So

Lab 3: Performance Analysis of ALOHA

CS 162 Operating Systems and Systems Programming Professor: Anthony D. Joseph Spring Lecture 21: Network Protocols (and 2 Phase Commit)

LTE system performance optimization by RED based PDCP buffer management

Distributed Multimedia Applications in Quality of Service for Wireless Wide Area Network

CS 5520/ECE 5590NA: Network Architecture I Spring Lecture 13: UDP and TCP

TCP and UDP Fairness in Vehicular Ad hoc Networks

Transport Layer. <protocol, local-addr,local-port,foreign-addr,foreign-port> ϒ Client uses ephemeral ports /10 Joseph Cordina 2005

CS 344/444 Computer Network Fundamentals Final Exam Solutions Spring 2007

TCP/IP. Chapter 5: Transport Layer TCP/IP Protocols

Outline Computer Networking. TCP slow start. TCP modeling. TCP details AIMD. Congestion Avoidance. Lecture 18 TCP Performance Peter Steenkiste

Key words: IP router, Differentiated services, QoS, Custom Queuing, Priority Queuing. 1. INTRODUCTION

QoS on Low Bandwidth High Delay Links. Prakash Shende Planning & Engg. Team Data Network Reliance Infocomm

TCP Selective Acknowledgement

Monitoring and Analysis

TCP Congestion Control in Wired and Wireless Networks

Page 1. Review: Internet Protocol Stack. Transport Layer Services EEC173B/ECS152C. Review: TCP. Transport Layer: Connectionless Service

End-to-end UMTS Network Performance Modeling. 1. Introduction

COM-208: Computer Networks - Homework 1

Problem 7. Problem 8. Problem 9

TCP Congestion Control

TCP Congestion Control

The Simon Brown SDRconsole tutorial and setup tips: By W3GAS

Appendix B. Standards-Track TCP Evaluation

Investigating the Use of Synchronized Clocks in TCP Congestion Control

CS519: Computer Networks. Lecture 5, Part 1: Mar 3, 2004 Transport: UDP/TCP demux and flow control / sequencing

Network Design Considerations for Grid Computing

CMSC 322 Computer Networks Applications and End-To- End

UNIT IV -- TRANSPORT LAYER

To see the details of TCP (Transmission Control Protocol). TCP is the main transport layer protocol used in the Internet.

Good Ideas So Far Computer Networking. Outline. Sequence Numbers (reminder) TCP flow control. Congestion sources and collapse

Quality of Service Mechanism for MANET using Linux Semra Gulder, Mathieu Déziel

Proxy-based TCP-friendly streaming over mobile networks

II. Principles of Computer Communications Network and Transport Layer

Real-Time Protocol (RTP)

TS Open Day Data Center Fibre Channel over IP

UNIT 2 TRANSPORT LAYER

Addressing the Challenges of Web Data Transport

Impact of IEEE n Operation on IEEE Operation

Why Your Application only Uses 10Mbps Even the Link is 1Gbps?

Transmission Control Protocol. ITS 413 Internet Technologies and Applications

ENSC 427: COMMUNICATION NETWORKS

Transcription:

Eng 3553 Lab #5 TCP Throughput Overview TCP (Transmission Control Protocol) is a means for building a reliable communications stream, enabling two hosts to establish a connection and exchange streams of data made up a large number of discrete packets of data. TCP guarantees delivery of data and also guarantees that packets will be delivered in the same order in which they were sent. One of the functions TCP performs is flow control, using the sliding windows method, which permits multiple data packets to be in transit concurrently, making more efficient use of network bandwidth. The destination advertises how much buffer space it has available, and the source restricts its transmissions such that the receiver is not overloaded. A small flow control window, however, can adversely affect the throughput of the TCP connection. An overly small flow control window can cause TCP to act like a stop-andwait protocol, whereas a very large flow control window would allow the sender to transmit continuously. In this lab we will investigate the effect that the size of the flow control window has on the throughput of a TCP connection. Procedure Go to Start -> All Programs -> OPNET IT Guru Academic Edition 9.1 -> OPNET IT Guru Academic Edition This runs OPNET File -> New Project Name: Lab5 Scenario Name: TCPwindow1 Create Empty Scenario World world Select Technologies Next OK We will be using FTP (File Transfer Protocol) to test the throughput of TCP, so we will need to configure an FTP object. In Object Palettes->internet_toolbox, Select Application Config object from the 1

name->ftp Application Expand Application Definitions Name->FTP_Large_File Expand Description and edit the FTP attribute Inter-Request Time (seconds)->constant(10000) File Size (bytes)->constant(1000000) This FTP application will transfer a 1 MB file so we can evaluate TCP s behaviour. Next, we must associate the FTP application to a profile that will drive the simulated network devices. In Shared Object Palettes->internet_toolbox, Select Profile Config object from the name->ftp Profile Expand Profile Configuration Profile Name->FTP_Large_File_Profile Expand Applications Name->FTP_Large_File Repeatability->Once at Start Time 2

Next, we need to configure a WAN that connects the FTP client and server. In Shared Object Palettes->internet_toolbox, select ip32_cloud object from the Object Palette and place it in the project workspace. Right click on the icon. Set Name->ip32_cloud Packet Latency (secs)->constant(0.25) Next, we need to configure the FTP client and server. In Shared Object Palettes->internet_toolbox, select ppp_wkstn object from the Object Palette and place it in the project workspace. Right click on the icon. name->ftp Client Expand the Application: Supported Profiles attribute. Set the Rows field to 1 then expand row 0 and set the Profile Name to FTP_Large_File_Profile. Expand the TCP->TCP Parameters attribute and note that the Receive Buffer (bytes) field is set to 8760. This means that the TCP source may not send more than 8760 bytes of data without receiving an acknowledgement. In Shared Object Palettes->internet_toolbox, Select ppp_server object from the name->ftp Server Edit the Application: Supported Services attribute. Set the Rows field to 1 and set the Name to FTP_Large_File. Expand the TCP->TCP Parameters attribute and set the Maximum Segment Size (bytes) attribute to 512. This will ensure that each TCP packet is 512 bytes long. Finally, we need to connect the client and server to the WAN. Select a Shared Object Palettes->internet_toolbox->Link Models->PPP_DS1 link from the Object Palette and use it to connect the FTP client to the ip32_cloud and the FTP server to the cloud. Keep in mind that DS1 speed is 1.5 Mbps. Now we have set up our network and we have configured the receiver s window size. Now we need to configure our simulation to collect the statistics we want. 3

Simulation->Choose Individual Statistics Expand Global Statistics->Ftp Check Download Response Time (sec) Expand Node Statistics->TCP Connection Check Sent Segment Sequence Number Traffic Received (bytes/sec) Right click on the Sent Segment Sequence Number statistic. Choose Change Collection Mode, check Advanced, and set the Capture Mode to all values. This will give us a more detailed graph. Close the window. Now the network is set to run. We will now create a duplicate network with a client that advertises a different receive window size, to see the effect that having a larger window size has. Scenarios->Duplicate Scenario Chose the default name, TCPwindow2. Right click FTP Client in the second scenario. Expand the TCP->TCP Parameters attribute and click the Receive Buffer (bytes) field and set the value to 32768. Scenarios->Manage Scenarios Click the Results field for both scenarios and set to <collect>. Hit OK. This runs simulations for both scenarios. When simulation has stopped, hit Close to close the resulting window. Next, we will look at the statistics generated by the simulation. Results->Compare Statistics The Compare Results window will open. The three statistics of major interest will be download response time, traffic received at the client and sequence numbers used at the server. Global Statistics->FTP->Download Response Time (sec) 4

This graph shows how long the download took in seconds on the vertical scale, with TCPwindow1 shown in blue and TCPwindow2 shown in red. As can be seen from the graph, the 32 kb receive window significantly lowered the time that the download took. Record the values. Object Statistics->FTP Client->TCP Connection->Traffic Received (bytes/sec) This graph shows the throughput of each connection. Enlarging the client s receive window substantially raised the throughput in scenario two. Print. Object Statistics->FTP Server->TCP Connection->Sent Segment Sequence Number This graph shows the server incrementing a counter as packets are sent over time. To get the proper detail from the graph click the Show button and drag a box repeatedly around where both plots intersect until you can see the stair-step pattern of both plots. This graph shows both servers sending data and incrementing their counters (vertical portions of graphs) and waiting for acknowledgements from the client (horizontal portions of graphs). The difference that the larger receive window has is obvious. Although both servers wait about the same amount of time for each acknowledgement, the server from scenario two transmits much more packets between each acknowledgement, thus completing the download much more quickly. Print. Question 1. To see what would be the effect of increasing the capacity of the lines connecting the server and client to the IP cloud to DS-3 speeds (45 Mbps). 2. To see what would be the effect of decreasing the capacity of the lines connecting the server and client to the IP cloud to DS-0 speeds (64 Kbps). 5