Modeling and Performance Analysis of a Sliding Window Protocol

Size: px
Start display at page:

Download "Modeling and Performance Analysis of a Sliding Window Protocol"

Transcription

1 Modeling and Performance Analysis of a Sliding Window Protocol Yong Deng 1 and Zhangqin Huang 2 1 Xi an Jiaotong University, Institute of Software, Xi an 7149, P.R. China yongde711@sina.com 2 Eindhoven University of Technology, Faculty of Electrical Engineering Section of Information and Communication Systems P.O. Box 513, 56 MB Eindhoven, The Netherlands Z.Huang@tue.nl Abstract The sliding window algorithm is widely used in many standard network protocols. It can ensure a correct data transfer over unreliable channels where packets may be duplicated, lost, or re-ordered. By now only few papers have presented the performance of the sliding window protocol. A number of parameters affecting the overall performance of the system still need to be investigated systematically. This paper introduces the sliding window protocol and related parameters. An abstract executable performance model of the protocol is created in POOSL. Several simulation results can be derived from this model in various network environments and different parameter settings. When we design adaptive algorithms or novel protocols with the sliding window algorithm, these results are very helpful to identify optimal parameter settings and to determine a number of key-parameters such as the window size, the timeout period and the packet size before the implementation of the protocols. Keywords sliding window protocol, system level model, performance analysis, POOSL I. INTRODUCTION The Sliding Window (SW) protocol has been widely used in many popular communication protocols such as TCP, HDLC and SPX. The protocol can ensure a correct data transfer over very poor quality communication channels where the packets may be duplicated, lost, or re-ordered [1,2,3,4]. A number of parameters affect the performance characteristics of the SW protocol. Usually, these performance characteristics cannot be determined analytically. However, we need to study these key performance characteristics and to identify optimal This research is supported by PROGRESS project EES522, Modeling and Performance analysis of telecommunication systems. parameter settings in the early design phases when designing an adaptive algorithm or novel protocols for specific computing environments. Such information is helpful for the designer to work out a product. In this paper we introduce the sliding window protocol generally, describe the communication procedure of the protocol, and conclude some related parameters affecting the overall performance of the system. In order to estimate the performance of the SW protocol systematically, as an exercise, an abstract executable performance model of the protocol using go back n is created in POOSL. The model allows us to present and analyze some performance characteristics. These performance characteristics include the throughput (the bandwidth utilization) of the protocol and the delay of the acknowledgement. Some key-parameters such as the window size, the timeout period, the round trip time, the packet size, and the probability of packets loss are investigated in several network environments and different parameter settings as well. The remainder of this paper is organized as follows. The next section gives an overview of the SW protocol generally. In section III, we will present an abstract performance model of the protocol in the modeling language POOSL. The simulation results derived from the model are illustrated in section IV. A simple performance analysis is also presented in the same section. Finally, conclusions are summarized in the last section. II. SLIDING WINDOW PROTOCOL DESCRIPTION Sender and receiver. In a SW protocol, there are two main components in the data link layer: the sender and the receiver. The sender obtains an input sequence of data frames from the network layer in our model. Each PROGRESS/STW 23, ISBN OCTOBRE 22, 23, NBC NIEUWEGEIN, NL

2 data frame is composed of an embedded packet and some control information. Control information includes a number of fields such as the frame kind, the input sequence number and the acknowledgement. Each outbound frame is assigned a sequence number, ranging from up to some maximum number (usually 2 n -1, n>). The input sequence must be transmitted by the sender to the receiver via an unreliable channel. After receiving the frames from the network, the receiver should deliver them to the network layer in the same order in which they appear in the input sequence. Sending and receiving windows. At any instant of time, the sender maintains a sending window of consecutive sequence numbers corresponding to frames it is permitted to send. These sequence numbers within the sending window represent frames sent but not yet acknowledged. Similarly, the receiver maintains a receiving window, corresponding to the number of out of order frames it is permitted to accept. Any frames falling outside the receiving window are discarded without comment. In our model we give an assumption of the same window size in the sender and the receiver. Channels. The communication channels connect the sender and the receiver. Usually, the channels are unreliable and bi-directional. The packets may be duplicated, lost, or re-ordered in the channels, and will be delayed a time through the channels. In the SW protocol, the data frames are sent by the sender to the frame channel, and the acknowledgement frames are sent by the receiver to the another channel: the acknowledgement channel. Communication procedure. In the beginning of communication between the sender and receiver, the sending window and the receiving window are empty. The sender is starting to send data frames to the receiver via the frame channel. On the other side, the receiver is waiting for receiving data frames from the network. Whenever a new packet arrives at the sender from the network layer, the next highest sequence number according to the sending window is given, and the upper edge of the sending window is advanced by one. The sender puts the packet and the sequence number with some other control information into a frame, and then sends the frame to the frame channel. After transmitting a frame, the sender starts a new timer running for the corresponding to this frame in the sending window in our model. The timeout period of the timers must be chosen to allow enough time for the frame to get to the receiver, for the receiver to process it in the worst case, and for the acknowledgement frame to propagate back to the sender. After transmitting a frame and starting a timer, the sender will transmit the next data frame to the frame channel until the sending window is filled up. In the same time, the sender is waiting for the acknowledgement arriving from the network. There are three possibilities: an acknowledgement frame arrives undamaged, a damaged acknowledgement frame staggers in, and the timer goes off. If a valid acknowledgement comes in, the sender fetches the next packet from the network layer and put it in the buffer, overwriting the previous packet. It also advanced the input sequence number. If a damaged frame arrives or a timer goes off, a duplicate should be sent. In [5] many different policies for sending and resending of data frames exist. In this paper, as an exercise, we only focus on the SW protocol using go back n. The sender will send all unacknowledged frames in order, starting with the damaged or lost one. At the receiver, when a valid frame arrives, its sequence number is checked to see if it is the next one. If it is the next one, it is accepted, passed to the network layer, and an acknowledgement frame generated. Otherwise, it will be discard and is not passed to the network layer. Performance parameters. A number of parameters affect the performance of the SW protocol. Here we conclude some key-parameters in our model. Packet size (S): the size of the embedded packet in a frame. A packet is the unit of information exchanged between the network layer and the data link layer in the same machine, or between network layer peers. In our model, we give an assumption that the packet size is fixed. Maximum window size (w): window size is the number of the unacknowledged frames in the sending window or in the receiving window. The sender and the receiver are of the same maximum window size w in our model. Each of the sender and the receiver needs w buffers to hold the unacknowledged frames. Timeout period (T t ): a timer will go off within the timeout period. Bandwidth (B): it is the maximum amount of data passing the channel at a given time. Usually, it depends on the medium capacity of the communication channels itself. Process time of a packet (T s ): it is the time it takes for a packet to send/receive to/from the channel, so T s =S/B. Channel delay and round trip time (T r ): channel delay is the time it takes for data to travel across the channel. Round trip time is the time it takes for data to travel across the channel from the sender to the receiver and then back. In our model, we suppose that the channel PROGRESS/STW 23, ISBN OCTOBRE 22, 23, NBC NIEUWEGEIN, NL

3 delay of the data frames and acknowledgement frames have the same normal distribution with µ=t r /2 for various variance σ. Let σ has different values such as.1*t s,.2*t s or.5*t s. Probability of packets loss (P l ): it is the probability of packets loss in the data frame channel or in the acknowledgement frame channel. In our model, we will study various situations such as packets lossless and different probabilities of packets loss (e.g. 1%, 2% or 5%). III. MODELING OF THE SW PROTOCOL In this section, we create an abstract performance model of the sliding window protocol using go back n in POOSL. The POOSL language has a small set of very powerful language primitives that it allows us to represent a complex system in a concise and compact way with a mathematically defined semantics [6,7]. The remainder of this section is organized as follows. A framework of the model is presented in the next sub-section. A number of processors such as the network layer processor, the SW protocol processor, the timer processor and the physical layer processor in our model are introduced after sub-section B. A. Abstract Performance Model Figure 1 shows a model of the SW protocol in POOSL. The bigger window (above) in this figure presents a general frame of the protocol. The left is the side of the sender and the right is the receiver. Each side consists of three processors (or cluster), i.e. a network layer processor, a data link layer cluster and a physical layer processor. The data link layer cluster shown in the smaller window (below) in figure 1 contains a SW protocol processor and a timer processor. The model can present all the behavior of the protocol. The sender in the left data link layer cluster fetches a packet from the network layer processor via the channel NLtoDLL, put it to a frame with some control information such as framekind, seqnum and entertime, and then sends it to the physical layer processor via the channel DLLtoPL. In the mean time, the receiver in the right data link layer cluster is waiting for receiving frames from the physical layer processor. After receiving a frame, the receiver checks the seqnum of the frame, delivers the packet to the network layer processor via the channel DLLtoNL, and generates an piggybacking acknowledgement frame with a new packet from the receiver to reply to the sender if the frame is in the correct order. The whole communication procedure of the protocol is already described in section II. Figure 1. A performance model of the sliding window protocol in POOSL B. Network Layer Processor In our model, the network layer processor has two main functions. It sends and counts the packets to the data link layer cluster via a channel NLtoDLL. In the same time, it is waiting for receiving packets from the data link layer cluster through a port condll. We give a specification of the functions in a method, for example, startsendandreceive()() in POOSL. startsendandreceive()() p:packet /*Check enablenetworklayer Status before sending a packet */ condll?enablenetworklayer(enablesendstatus); sel /* Sending packets to the data link layer */ [enablesendstatus] condll!networklayerreadyenvet; condll!packet(new(packet)) setvalueto (packetinfo+counter printstring); counter:=counter+1; or /* Waiting for receiving packets from the data link layer */ condll?packet(p) abort delay acceptpackettime; les; startsendandreceiver()(). C. Sliding Window Protocol Processor The SW protocol processor is the core in our model. In this processor, we model the sender, receiver, the sending window and the receiving window described in section II. We conclude four main functions as follows. 1) Fetches/delivers packets from/to the network layer processor via the channel NLtoDLL ; 2) Forms data frames with some control information, and generates the acknowledgement frame; 3) Manages the sending/receiving windows in the SW PROGRESS/STW 23, ISBN OCTOBRE 22, 23, NBC NIEUWEGEIN, NL

4 protocol processor; 4) Sends and resends the data/acknowledgement frames using go back n to the physical layer processor via the channel DLLtoPL. D. Timer Processor After the sender transmits a frame, the timer processor receives an event of starting a new timer from the SW protocol processor, and then it starts the new timer running. When a timer goes off, the timer processor in our model produces a timeout message to inform the SW via an internal channel. E. Physical Layer Processor We model the physical layer processor as two directional channels. One channel is used to send the data frames from the sender to the receiver. Another one is for the piggybacked acknowledgement frames from the receiver to the sender. The packets in these channels will be delay a time. We model the delay time as a normal distribution with µ=t r /2 for various variance σ. We set σ as a different values such as.1*t s,.2*t s or.5*t s. The packets may be also lost in these channels. We model the different loss probabilities as a normal distribution with parameter µ and σ. Here µ is set to be a value of 1%, 2% or 5%. IV. PERFORMANCE ANALYSIS We illustrate simulation results derived from the performance model in this section. Our experiments concentrate on the impacts of a number of parameters of the protocol on the bandwidth utilization and on the delay of the acknowledgements. These parameters include the medium bandwidth, the window size, the timeout period, the packet size and the probability of packets loss. A. Medium Bandwidth In order to present the performance of the SW protocol, we ignore the possibility of data error in the beginning. Figure 2, 3 and 4 illustrate three simulation results in different medium bandwidth environments. If we do the same with the SW protocols, the behavior of the protocol is determined entirely by the window size w in the sender and the receiver. In figure 2, we draw the curves of the bandwidth vs. the window size on a 1 Mbps Ethernet LAN. We suppose that the packet size S=124 bytes, the round trip time T r =1 ms, the timeout period T t =12 ms and no packet loss. We can learn some experiences from this simulation as follows. Bandwidth (M) Figure 2. Simulation results of the bandwidth utilization on a 1Mbps Ethernet LAN: impact on the bandwidth utilization as a function of the window size with S=124 bytes, T r =1 ms, T t =12 ms and no packet loss Bandwidth(M) Figure 3. Simulation results of the bandwidth utilization on a 1Mbps Ethernet LAN with S=124 bytes, T r =1 ms, T t =12 ms and no packet loss Bandwidth (M) transmitted acknowledged LAN 1M LAN 1M transmitted acknowledged transmitted acknowledged Wireless channel Figure 4. Simulation results of the bandwidth utilization on a wireless channel with B=5 kbps, S=1 bytes, T r =5 ms, T t =6 ms and no packet loss 1) In order to keep the pipeline busy, we can set the maximum window size as w =T r /T s = T r /(S/B)=122. When the window size is round 122, the throughput of the SW protocol is growing to maximum. 2) When the window size increases to PROGRESS/STW 23, ISBN OCTOBRE 22, 23, NBC NIEUWEGEIN, NL

5 w =T t /T s = T t /(S/B)=146, the throughput will be dropped rapidly. 3) Due to the receiver uses the policy of the piggybacked acknowledgement in our model, when a data frame arrives to the receiver, the acknowledgement cannot generated immediately and should wait to the next data frame which is sent by the receiver. The half-bandwidth capacity is wasted in this case when we set the window size not bigger enough. Figure 3 presents the simulation results on a 1 Mbps Ethernet LAN. In this case we can also get w =122 and w =146. Figure 4 presents some results on the wireless channel. The medium bandwidth capacity is 5 kbps, the packet size S=1 bytes, the round trip time T r =5 ms, the timeout period T t =6 ms and no packet loss. In the same way, we can get w=31 and w =38. This exercise is shown that we can derive similar performance results in different medium bandwidth environments with no packet loss. It is significant for the high performance network. In many network, errors are very rare so these simulation results is close to reality. B. Window size Figure 5 describes the curves of the bandwidth utilization vs. the window size in the sender and receiver. In the same figure, we show the impacts of the different probabilities of packets loss on the bandwidth utilization. delay of acknowledgements. The probabilities of packets loss will affect the delay of acknowledgements dramatically. Acknowledgement Delay(µs) Lossless Loss 1% Loss 2% Loss 5% Figure 6. The delay of the acknowledgements vs. the window size curves on a 1M Ethernet LAN with S=124 bytes, T r =1 ms, T t =12 ms C. Timeout period Timeouts play a crucial role in the network performance. Figure 7 illustrates the impacts of timeout periods on the bandwidth utilization in a 1M Ethernet LAN. For reliable communication channels, a high timeout value doesn t appear to reduce throughput. But for unreliable channels, a high timeout period will affect the performance unfavorably. Bandwidth(M) transmitted Lossless Loss 1% Loss 2% Loss 5% WindowSize Figure 5. The bandwidth utilization vs. window size curves, and impact of different probabilities of packets loss in the channels on the bandwidth utilization in a 1M Ethernet LAN with S=124 bytes, T r =1 ms, T t =12 ms We can get some conclusions from this exercise. In no packet loss channels, the window size have a dramatic effect on the throughput of the protocol as we described in sub-section A. However, with the increase of the probabilities of packets loss in the channel, the throughput becomes insensitive about the window size. If we set the window size exceeding a number which is smaller than the maximum window size, the throughput is not growing. Figure 6 can give us an overview of the Bandwidth(M) Transmitted Lossless Loss 1% Loss 2% Loss 5% Timeout Period (ms) Figure 7. Impact of the timeout periods on the bandwidth utilization in a 1M Ethernet LAN with S=124 bytes, T r =1 ms, T t =12 ms and the different probabilities of packets loss in the channels D. Packet size The simulation results of curves of the bandwidth utilization vs. the packet sizes shown in figure 8 are derived on a 1Mbps Ethernet LAN. A bigger enough packet generally gives better performance. However, too bigger packet size fills up the pipeline, the performance will be drop off. PROGRESS/STW 23, ISBN OCTOBRE 22, 23, NBC NIEUWEGEIN, NL

6 Bandwidth (M) Transmittedl Lossless Loss 1% Loss 2% Loss 5% Packet Size (bytes) [7] L.J. van Bokhoven. Constructive Tool Design for Formal Languages: From Semantics to Executing Models. PhD thesis, Eindhoven University of Technology, Department of Electrical Engineering, 22. Figure 8. Impact of the packet sizes on the bandwidth utilization in a 1M Ethernet LAN with S=124 bytes, T r =1 ms, T t =12 ms and the different probabilities of packets loss in the channels V. CONCLUSIONS In this paper we have presented an abstract executable performance model of the sliding window protocol in the modeling language POOSL. Some simulation results can be derived from the model. These results illustrated a number of key-parameters affecting the overall performance of the protocol. We have discussed that the impacts of the key-parameters on the bandwidth utilization and the delay of the acknowledgement in several network environments and different parameter settings. It is shown that the window size, the timeout period and the probability of packets loss are effect on the performance characteristics of the protocol dramatically. For our future work, we would like to extend the model to the sliding window protocol using selective repeat. More parameters and complex network environments should be investigated in our model. We are also interested in the comparison between the simulation results and the measurements in a real network. REFERENCES [1] N.V. Stenning. A data transfer protocol. Computer Networks, 1(2):99-11,1976. [2] Eric Madelaine and Didier Vergamini. Specification and Verification of a Sliding Window Protocol in LOTOS. FORTE '91, Sydney, Australia, November 1991, pages [3] Mark A. Smith and Nils Klarlund. Verification of a Sliding Window Protocol Using IOA and MONA. FORTE/PSTV 2, Pisa, Italy, October 2, pages [4] Dmitri Chkliaev, Jozef Hooman and Erik de Vink. Formal Verification of an Improved Sliding Window Protocol. In proceeding of the PROGRESS 22, Utrecht, The Nethelands, October 22, pages [5] A.S. Tanenbaum. Computer Networks. Prentice-Hall International, Inc., [6] P.H.A.van der Putten and J.P.M. Voeten. Specification of Reactive Hardware/Software Systems. PhD thesis, Eindhoven University of Technology, Department of Electrical Engineering, PROGRESS/STW 23, ISBN OCTOBRE 22, 23, NBC NIEUWEGEIN, NL

L5: Building Direct Link Networks III. Hui Chen, Ph.D. Dept. of Engineering & Computer Science Virginia State University Petersburg, VA 23806

L5: Building Direct Link Networks III. Hui Chen, Ph.D. Dept. of Engineering & Computer Science Virginia State University Petersburg, VA 23806 L5: Building Direct Link Networks III Hui Chen, Ph.D. Dept. of Engineering & Computer Science Virginia State University Petersburg, VA 23806 1 Acknowledgements Some pictures used in this presentation were

More information

Direct Link Communication I: Basic Techniques. Data Transmission. ignore carrier frequency, coding etc.

Direct Link Communication I: Basic Techniques. Data Transmission. ignore carrier frequency, coding etc. Direct Link Communication I: Basic Techniques Link speed unit: bps abstraction Data Transmission ignore carrier frequency, coding etc. Point-to-point link: wired or wireless includes broadcast case Interested

More information

Direct Link Communication I: Basic Techniques. Data Transmission. ignore carrier frequency, coding etc.

Direct Link Communication I: Basic Techniques. Data Transmission. ignore carrier frequency, coding etc. Direct Link Communication I: Basic Techniques Link speed unit: bps abstraction Data Transmission ignore carrier frequency, coding etc. Point-to-point link: wired or wireless includes broadcast case Interested

More information

Lecture 7: Sliding Windows. CSE 123: Computer Networks Geoff Voelker (guest lecture)

Lecture 7: Sliding Windows. CSE 123: Computer Networks Geoff Voelker (guest lecture) Lecture 7: Sliding Windows CSE 123: Computer Networks Geoff Voelker (guest lecture) Please turn in HW #1 Thank you From last class: Sequence Numbers Sender Receiver Sender Receiver Timeout Timeout Timeout

More information

Lecture 7: Flow Control"

Lecture 7: Flow Control Lecture 7: Flow Control" CSE 123: Computer Networks Alex C. Snoeren No class Monday! Lecture 7 Overview" Flow control Go-back-N Sliding window 2 Stop-and-Wait Performance" Lousy performance if xmit 1 pkt

More information

Lecture 5: Flow Control. CSE 123: Computer Networks Alex C. Snoeren

Lecture 5: Flow Control. CSE 123: Computer Networks Alex C. Snoeren Lecture 5: Flow Control CSE 123: Computer Networks Alex C. Snoeren Pipelined Transmission Sender Receiver Sender Receiver Ignored! Keep multiple packets in flight Allows sender to make efficient use of

More information

NWEN 243. Networked Applications. Layer 4 TCP and UDP

NWEN 243. Networked Applications. Layer 4 TCP and UDP NWEN 243 Networked Applications Layer 4 TCP and UDP 1 About the second lecturer Aaron Chen Office: AM405 Phone: 463 5114 Email: aaron.chen@ecs.vuw.ac.nz Transport layer and application layer protocols

More information

Data Link Control Protocols

Data Link Control Protocols Protocols : Introduction to Data Communications Sirindhorn International Institute of Technology Thammasat University Prepared by Steven Gordon on 23 May 2012 Y12S1L07, Steve/Courses/2012/s1/its323/lectures/datalink.tex,

More information

Principles of Reliable Data Transfer

Principles of Reliable Data Transfer Principles of Reliable Data Transfer 1 Reliable Delivery Making sure that the packets sent by the sender are correctly and reliably received by the receiver amid network errors, i.e., corrupted/lost packets

More information

The Transport Layer Reliability

The Transport Layer Reliability The Transport Layer Reliability CS 3, Lecture 7 http://www.cs.rutgers.edu/~sn4/3-s9 Srinivas Narayana (slides heavily adapted from text authors material) Quick recap: Transport Provide logical communication

More information

C08a: Data Link Protocols

C08a: Data Link Protocols CISC 7332X T6 C08a: Data Link Protocols Hui Chen Department of Computer & Information Science CUNY Brooklyn College 10/16/2018 CUNY Brooklyn College 1 Data Link Layer Responsible for delivering frames

More information

EECS 122, Lecture 19. Reliable Delivery. An Example. Improving over Stop & Wait. Picture of Go-back-n/Sliding Window. Send Window Maintenance

EECS 122, Lecture 19. Reliable Delivery. An Example. Improving over Stop & Wait. Picture of Go-back-n/Sliding Window. Send Window Maintenance EECS 122, Lecture 19 Today s Topics: More on Reliable Delivery Round-Trip Timing Flow Control Intro to Congestion Control Kevin Fall, kfall@cs cs.berkeley.eduedu Reliable Delivery Stop and Wait simple

More information

Lecture 11 Overview. Last Lecture. This Lecture. Next Lecture. Medium Access Control. Flow and error control Source: Sections , 23.

Lecture 11 Overview. Last Lecture. This Lecture. Next Lecture. Medium Access Control. Flow and error control Source: Sections , 23. Last Lecture Lecture 11 Overview Medium Access Control This Lecture Flow and error control Source: Sections 11.1-11.2, 23.2 Next Lecture Local Area Networks 1 Source: Sections 13 Data link layer Logical

More information

ERROR AND FLOW CONTROL. Lecture: 10 Instructor Mazhar Hussain

ERROR AND FLOW CONTROL. Lecture: 10 Instructor Mazhar Hussain ERROR AND FLOW CONTROL Lecture: 10 Instructor Mazhar Hussain 1 FLOW CONTROL Flow control coordinates the amount of data that can be sent before receiving acknowledgement It is one of the most important

More information

CS 640 Introduction to Computer Networks. Role of data link layer. Today s lecture. Lecture16

CS 640 Introduction to Computer Networks. Role of data link layer. Today s lecture. Lecture16 Introduction to Computer Networks Lecture16 Role of data link layer Service offered by layer 1: a stream of bits Service to layer 3: sending & receiving frames To achieve this layer 2 does Framing Error

More information

DLL: Flow Control DLL. Simplex. Fast sender / slow receiver scenario. Various protocols used. Simplified examples implemented in C.

DLL: Flow Control DLL. Simplex. Fast sender / slow receiver scenario. Various protocols used. Simplified examples implemented in C. DLL: Flow Control Fast sender / slow receiver scenario Feedback mechanism reqd. Various protocols used Stop and Wait Sliding window protocols Hugh Melvin, Dept. of IT, NUI,G 1 DLL Simplified examples implemented

More information

CSE 123: Computer Networks Alex C. Snoeren. HW 1 due NOW!

CSE 123: Computer Networks Alex C. Snoeren. HW 1 due NOW! CSE 123: Computer Networks Alex C. Snoeren HW 1 due NOW! Automatic Repeat Request (ARQ) Acknowledgements (ACKs) and timeouts Stop-and-Wait Sliding Window Forward Error Correction 2 Link layer is lossy

More information

Telematics. 5rd Tutorial - LLC vs. MAC, HDLC, Flow Control, E2E-Arguments

Telematics. 5rd Tutorial - LLC vs. MAC, HDLC, Flow Control, E2E-Arguments 19540 - Telematics 5rd Tutorial - LLC vs. MAC, HDLC, Flow Control, E2E-Arguments Matthias Wa hlisch Department of Mathematics and Computer Science Institute of Computer Science 19. November, 2009 Institute

More information

Chapter 11 Data Link Control 11.1

Chapter 11 Data Link Control 11.1 Chapter 11 Data Link Control 11.1 Copyright The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 11-1 FRAMING The data link layer needs to pack bits into frames, so that each

More information

Direct Link Networks (II)

Direct Link Networks (II) Direct Link Networks (II) Computer Networking Lecture 03 HKU SPACE Community College January 30, 2012 HKU SPACE CC CN Lecture 03 1/25 Outline Reliable Link Service Stop-and-Wait Sliding Window Media Access

More information

ICS 451: Today's plan. Sliding Window Reliable Transmission Acknowledgements Windows and Bandwidth-Delay Product Retransmission Timers Connections

ICS 451: Today's plan. Sliding Window Reliable Transmission Acknowledgements Windows and Bandwidth-Delay Product Retransmission Timers Connections ICS 451: Today's plan Sliding Window Reliable Transmission Acknowledgements Windows and Bandwidth-Delay Product Retransmission Timers Connections Alternating Bit Protocol: throughput tied to latency with

More information

CPE 448/548 Exam #1 (100 pts) February 14, Name Class: 448

CPE 448/548 Exam #1 (100 pts) February 14, Name Class: 448 Name Class: 448 1) (14 pts) A message M = 11001 is transmitted from node A to node B using the CRC code. The CRC generator polynomial is G(x) = x 3 + x 2 + 1 ( bit sequence 1101) a) What is the transmitted

More information

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

Topics. TCP sliding window protocol TCP PUSH flag TCP slow start Bulk data throughput Topics TCP sliding window protocol TCP PUSH flag TCP slow start Bulk data throughput 2 Introduction In this chapter we will discuss TCP s form of flow control called a sliding window protocol It allows

More information

Name Student ID Department/Year. Midterm Examination. Introduction to Computer Networks Class#: 901 E31110 Fall 2008

Name Student ID Department/Year. Midterm Examination. Introduction to Computer Networks Class#: 901 E31110 Fall 2008 Name Student ID Department/Year Midterm Examination Introduction to Computer Networks Class#: 901 E31110 Fall 2008 9:30-11:10 Tuesday November 11, 2008 Prohibited 1. You are not allowed to write down the

More information

Telematics. 5th Tutorial - LLC vs. MAC, HDLC, Flow Control, E2E-Arguments

Telematics. 5th Tutorial - LLC vs. MAC, HDLC, Flow Control, E2E-Arguments 19531 - Telematics 5th Tutorial - LLC vs. MAC, HDLC, Flow Control, E2E-Arguments Bastian Blywis Department of Mathematics and Computer Science Institute of Computer Science 18. November, 2010 Institute

More information

CS457 Transport Protocols. CS 457 Fall 2014

CS457 Transport Protocols. CS 457 Fall 2014 CS457 Transport Protocols CS 457 Fall 2014 Topics Principles underlying transport-layer services Demultiplexing Detecting corruption Reliable delivery Flow control Transport-layer protocols User Datagram

More information

Computer Network (2012 Spring) Homework Answer. Chapter2

Computer Network (2012 Spring) Homework Answer. Chapter2 Computer Network (2012 Spring) Homework Answer Chapter2 Question 6 Suppose the following sequence of bits arrives over a link: 1101011111010111110010111110110 Show the resulting frame after any stuffed

More information

Announcements. No book chapter for this topic! Slides are posted online as usual Homework: Will be posted online Due 12/6

Announcements. No book chapter for this topic! Slides are posted online as usual Homework: Will be posted online Due 12/6 Announcements No book chapter for this topic! Slides are posted online as usual Homework: Will be posted online Due 12/6 Copyright c 2002 2017 UMaine Computer Science Department 1 / 33 1 COS 140: Foundations

More information

Lixia Zhang M. I. T. Laboratory for Computer Science December 1985

Lixia Zhang M. I. T. Laboratory for Computer Science December 1985 Network Working Group Request for Comments: 969 David D. Clark Mark L. Lambert Lixia Zhang M. I. T. Laboratory for Computer Science December 1985 1. STATUS OF THIS MEMO This RFC suggests a proposed protocol

More information

Data Link Control. Outline. DLC functions

Data Link Control. Outline. DLC functions Data Link Control #8 1 Outline functions Framing Error and flow control Performance of Example of a standard protocol- >H Open loop flow control 2 Data Link Layer Functions Data Link layer provides a error

More information

Transport Protocols and TCP: Review

Transport Protocols and TCP: Review Transport Protocols and TCP: Review CSE 6590 Fall 2010 Department of Computer Science & Engineering York University 1 19 September 2010 1 Connection Establishment and Termination 2 2 1 Connection Establishment

More information

User Datagram Protocol (UDP):

User Datagram Protocol (UDP): SFWR 4C03: Computer Networks and Computer Security Feb 2-5 2004 Lecturer: Kartik Krishnan Lectures 13-15 User Datagram Protocol (UDP): UDP is a connectionless transport layer protocol: each output operation

More information

Chapter 3. The Data Link Layer. Wesam A. Hatamleh

Chapter 3. The Data Link Layer. Wesam A. Hatamleh Chapter 3 The Data Link Layer The Data Link Layer Data Link Layer Design Issues Error Detection and Correction Elementary Data Link Protocols Sliding Window Protocols Example Data Link Protocols The Data

More information

Transport Protocols & TCP TCP

Transport Protocols & TCP TCP Transport Protocols & TCP CSE 3213 Fall 2007 13 November 2007 1 TCP Services Flow control Connection establishment and termination Congestion control 2 1 TCP Services Transmission Control Protocol (RFC

More information

Chapter 11 Data Link Control 11.1

Chapter 11 Data Link Control 11.1 Chapter 11 Data Link Control 11.1 Copyright The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 11-1 FRAMING The data link layer needs to pack bits into frames, so that each

More information

Lecture 4: CRC & Reliable Transmission. Lecture 4 Overview. Checksum review. CRC toward a better EDC. Reliable Transmission

Lecture 4: CRC & Reliable Transmission. Lecture 4 Overview. Checksum review. CRC toward a better EDC. Reliable Transmission 1 Lecture 4: CRC & Reliable Transmission CSE 123: Computer Networks Chris Kanich Quiz 1: Tuesday July 5th Lecture 4: CRC & Reliable Transmission Lecture 4 Overview CRC toward a better EDC Reliable Transmission

More information

ECE 610: Homework 4 Problems are taken from Kurose and Ross.

ECE 610: Homework 4 Problems are taken from Kurose and Ross. ECE 610: Homework 4 Problems are taken from Kurose and Ross. Problem 1: Host A and B are communicating over a TCP connection, and Host B has already received from A all bytes up through byte 248. Suppose

More information

CMSC 417. Computer Networks Prof. Ashok K Agrawala Ashok Agrawala. October 11, 2018

CMSC 417. Computer Networks Prof. Ashok K Agrawala Ashok Agrawala. October 11, 2018 CMSC 417 Computer Networks Prof. Ashok K Agrawala 2018 Ashok Agrawala Message, Segment, Packet, and Frame host host HTTP HTTP message HTTP TCP TCP segment TCP router router IP IP packet IP IP packet IP

More information

Introduction to Protocols

Introduction to Protocols Chapter 6 Introduction to Protocols 1 Chapter 6 Introduction to Protocols What is a Network Protocol? A protocol is a set of rules that governs the communications between computers on a network. These

More information

EE 122 Fall st Midterm. Professor: Lai Stoica

EE 122 Fall st Midterm. Professor: Lai Stoica EE 122 Fall 2001 1 st Midterm Professor: Lai Stoica Question 1 (15 pt) Layering is a key design principle in computer networks. Name two advantages, and one disadvantage to layering. Explain. Use no more

More information

Reliable Transport I: Concepts and TCP Protocol

Reliable Transport I: Concepts and TCP Protocol Reliable Transport I: Concepts and TCP Protocol Brad Karp UCL Computer Science CS 3035/GZ01 29 th October 2013 Part I: Transport Concepts Layering context Transport goals Transport mechanisms 2 Context:

More information

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

CS 5520/ECE 5590NA: Network Architecture I Spring Lecture 13: UDP and TCP CS 5520/ECE 5590NA: Network Architecture I Spring 2008 Lecture 13: UDP and TCP Most recent lectures discussed mechanisms to make better use of the IP address space, Internet control messages, and layering

More information

Communications Software. CSE 123b. CSE 123b. Spring Lecture 3: Reliable Communications. Stefan Savage. Some slides couresty David Wetherall

Communications Software. CSE 123b. CSE 123b. Spring Lecture 3: Reliable Communications. Stefan Savage. Some slides couresty David Wetherall CSE 123b CSE 123b Communications Software Spring 2002 Lecture 3: Reliable Communications Stefan Savage Some slides couresty David Wetherall Administrativa Home page is up and working http://www-cse.ucsd.edu/classes/sp02/cse123b/

More information

Congestion Control in Communication Networks

Congestion Control in Communication Networks Congestion Control in Communication Networks Introduction Congestion occurs when number of packets transmitted approaches network capacity Objective of congestion control: keep number of packets below

More information

TCP Flavors Simulation Evaluations over Noisy Environment

TCP Flavors Simulation Evaluations over Noisy Environment International Journal of Information Engineering and Applications 2018; 1(1): 11-17 http://www.aascit.org/journal/information TCP Flavors Simulation Evaluations over Noisy Environment Elsadig Gamaleldeen

More information

The Transport Layer Multiplexing, Error Detection, & UDP

The Transport Layer Multiplexing, Error Detection, & UDP CPSC 852 Internetworking The Transport Layer Multiplexing, Error Detection, & UDP Michele Weigle Department of Computer Science Clemson University mweigle@cs.clemson.edu http://www.cs.clemson.edu/~mweigle/courses/cpsc852

More information

Outline. EEC-484/584 Computer Networks. Data Link Layer Design Issues. Framing. Lecture 6. Wenbing Zhao Review.

Outline. EEC-484/584 Computer Networks. Data Link Layer Design Issues. Framing. Lecture 6. Wenbing Zhao Review. EEC-484/584 Computer Networks Lecture 6 wenbing@ieee.org (Lecture nodes are based on materials supplied by Dr. Louise Moser at UCSB and Prentice-Hall) Outline Review Data Link Layer Design Issues Error

More information

Computer Networking. Reliable Transport. Reliable Transport. Principles of reliable data transfer. Reliable data transfer. Elements of Procedure

Computer Networking. Reliable Transport. Reliable Transport. Principles of reliable data transfer. Reliable data transfer. Elements of Procedure Computer Networking Reliable Transport Prof. Andrzej Duda duda@imag.fr Reliable Transport Reliable data transfer Data are received ordered and error-free Elements of procedure usually means the set of

More information

CS419: Computer Networks. Lecture 10, Part 3: Apr 13, 2005 Transport: TCP performance

CS419: Computer Networks. Lecture 10, Part 3: Apr 13, 2005 Transport: TCP performance : Computer Networks Lecture 10, Part 3: Apr 13, 2005 Transport: TCP performance TCP performance We ve seen how TCP the protocol works But there are a lot of tricks required to make it work well Indeed,

More information

Transport Layer (TCP/UDP)

Transport Layer (TCP/UDP) Transport Layer (TCP/UDP) Where we are in the Course Moving on up to the Transport Layer! Application Transport Network Link Physical CSE 461 University of Washington 2 Three-Way Handshake (3) Suppose

More information

Problem Set Name the 7 OSI layers and give the corresponding functionalities for each layer.

Problem Set Name the 7 OSI layers and give the corresponding functionalities for each layer. Problem Set 1 1. Why do we use layering in computer networks? 2. Name the 7 OSI layers and give the corresponding functionalities for each layer. 3. Compare the network performance of the 3 Multiple Access

More information

EE 122: Error detection and reliable transmission. Ion Stoica September 16, 2002

EE 122: Error detection and reliable transmission. Ion Stoica September 16, 2002 EE 22: Error detection and reliable transmission Ion Stoica September 6, 2002 High Level View Goal: transmit correct information Problem: bits can get corrupted - Electrical interference, thermal noise

More information

The Data Link Layer Chapter 3

The Data Link Layer Chapter 3 The Data Link Layer Chapter 3 Data Link Layer Design Issues Error Detection and Correction Elementary Data Link Protocols Sliding Window Protocols Example Data Link Protocols Revised: August 2011 & February

More information

No book chapter for this topic! Slides are posted online as usual Homework: Will be posted online Due 12/6

No book chapter for this topic! Slides are posted online as usual Homework: Will be posted online Due 12/6 Announcements No book chapter for this topic! Slides are posted online as usual Homework: Will be posted online Due 12/6 Copyright c 2002 2017 UMaine School of Computing and Information S 1 / 33 COS 140:

More information

Name Student ID Department/Year. Midterm Examination. Introduction to Computer Networks Class#: 901 E31110 Fall 2007

Name Student ID Department/Year. Midterm Examination. Introduction to Computer Networks Class#: 901 E31110 Fall 2007 Name Student ID Department/Year Midterm Examination Introduction to Computer Networks Class#: 901 E31110 Fall 2007 9:30-11:10 Tuesday November 27, 2007 Prohibited 1. You are not allowed to write down the

More information

2.1 CHANNEL ALLOCATION 2.2 MULTIPLE ACCESS PROTOCOLS Collision Free Protocols 2.3 FDDI 2.4 DATA LINK LAYER DESIGN ISSUES 2.5 FRAMING & STUFFING

2.1 CHANNEL ALLOCATION 2.2 MULTIPLE ACCESS PROTOCOLS Collision Free Protocols 2.3 FDDI 2.4 DATA LINK LAYER DESIGN ISSUES 2.5 FRAMING & STUFFING UNIT-2 2.1 CHANNEL ALLOCATION 2.2 MULTIPLE ACCESS PROTOCOLS 2.2.1 Pure ALOHA 2.2.2 Slotted ALOHA 2.2.3 Carrier Sense Multiple Access 2.2.4 CSMA with Collision Detection 2.2.5 Collision Free Protocols 2.2.5.1

More information

Computer Network. Direct Link Networks Reliable Transmission. rev /2/2004 1

Computer Network. Direct Link Networks Reliable Transmission. rev /2/2004 1 Computer Network Direct Link Networks Reliable Transmission rev 1.01 24/2/2004 1 Outline Direct link networks (Ch. 2) Encoding Framing Error detection Reliable delivery Media access control Network Adapter

More information

Flow control: Ensuring the source sending frames does not overflow the receiver

Flow control: Ensuring the source sending frames does not overflow the receiver Layer 2 Technologies Layer 2: final level of encapsulation of data before transmission over a physical link responsible for reliable transfer of frames between hosts, hop by hop, i.e. on a per link basis

More information

L2: Bandwidth and Latency. Hui Chen, Ph.D. Dept. of Engineering & Computer Science Virginia State University Petersburg, VA 23806

L2: Bandwidth and Latency. Hui Chen, Ph.D. Dept. of Engineering & Computer Science Virginia State University Petersburg, VA 23806 L2: Bandwidth and Latency Hui Chen, Ph.D. Dept. of Engineering & Computer Science Virginia State University Petersburg, VA 23806 1 Acknowledgements Some pictures used in this presentation were obtained

More information

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

Outline Computer Networking. TCP slow start. TCP modeling. TCP details AIMD. Congestion Avoidance. Lecture 18 TCP Performance Peter Steenkiste Outline 15-441 Computer Networking Lecture 18 TCP Performance Peter Steenkiste Fall 2010 www.cs.cmu.edu/~prs/15-441-f10 TCP congestion avoidance TCP slow start TCP modeling TCP details 2 AIMD Distributed,

More information

Recap. More TCP. Congestion avoidance. TCP timers. TCP lifeline. Application Presentation Session Transport Network Data Link Physical

Recap. More TCP. Congestion avoidance. TCP timers. TCP lifeline. Application Presentation Session Transport Network Data Link Physical Recap ½ congestion window ½ congestion window More TCP Congestion avoidance TCP timers TCP lifeline Application Presentation Session Transport Network Data Link Physical 1 Congestion Control vs Avoidance

More information

Reliable Data Transfer

Reliable Data Transfer Reliable Data Transfer Kai Shen Reliable Data Transfer What is reliable data transfer? guaranteed arrival no error in order delivery Why is it difficult? unreliable underlying communication channel, which

More information

CSCD 330 Network Programming

CSCD 330 Network Programming CSCD 330 Network Programming Lecture 10 Transport Layer Continued Spring 2018 Reading: Chapter 3 Some Material in these slides from J.F Kurose and K.W. Ross All material copyright 1996-2007 1 Last Time.

More information

UNIT IV -- TRANSPORT LAYER

UNIT IV -- TRANSPORT LAYER UNIT IV -- TRANSPORT LAYER TABLE OF CONTENTS 4.1. Transport layer. 02 4.2. Reliable delivery service. 03 4.3. Congestion control. 05 4.4. Connection establishment.. 07 4.5. Flow control 09 4.6. Transmission

More information

UNIVERSITY OF OSLO. Faculty of mathematics and natural sciences. INF3190/INF4190 Data Communications. All printed and written material, calculator

UNIVERSITY OF OSLO. Faculty of mathematics and natural sciences. INF3190/INF4190 Data Communications. All printed and written material, calculator UNIVERSITY OF OSLO Faculty of mathematics and natural sciences Examination in Day of examination: 2nd June, 2004 Examination hours: 9.00 12.00 This problem set consists of 6 pages. Appendices: Permitted

More information

ETSF10 Internet Protocols Transport Layer Protocols

ETSF10 Internet Protocols Transport Layer Protocols ETSF10 Internet Protocols Transport Layer Protocols 2012, Part 2, Lecture 2.1 Kaan Bür, Jens Andersson Transport Layer Protocols Process-to-process delivery [ed.4 ch.23.1] [ed.5 ch.24.1] Transmission Control

More information

Inst: Chris Davison

Inst: Chris Davison ICS 153 Introduction to Computer Networks Inst: Chris Davison cbdaviso@uci.edu ICS 153 Data Link Layer Contents Simplex and Duplex Communication Frame Creation Flow Control Error Control Performance of

More information

Transport Layer Protocols TCP

Transport Layer Protocols TCP Transport Layer Protocols TCP Gail Hopkins Introduction Features of TCP Packet loss and retransmission Adaptive retransmission Flow control Three way handshake Congestion control 1 Common Networking Issues

More information

Lecture 7: Flow & Media Access Control"

Lecture 7: Flow & Media Access Control Lecture 7: Flow & Media Access Control" CSE 123: Computer Networks Alex C. Snoeren HW 2 due next Wednesday! Lecture 7 Overview" Flow control Go-back-N Sliding window Methods to share physical media: multiple

More information

CSE 473 Introduction to Computer Networks. Exam 2. Your name here: 11/7/2012

CSE 473 Introduction to Computer Networks. Exam 2. Your name here: 11/7/2012 CSE 473 Introduction to Computer Networks Jon Turner Exam 2 Your name here: 11/7/2012 1. (10 points). The diagram at right shows a DHT with 16 nodes. Each node is labeled with the first value in its range

More information

Name Student ID Department/Year. Midterm Examination. Introduction to Computer Networks Class#: 901 E31110 Fall 2006

Name Student ID Department/Year. Midterm Examination. Introduction to Computer Networks Class#: 901 E31110 Fall 2006 Name Student ID Department/Year Midterm Examination Introduction to Computer Networks Class#: 901 E31110 Fall 2006 9:20-11:00 Tuesday November 14, 2006 Prohibited 1. You are not allowed to write down the

More information

Networking Link Layer

Networking Link Layer Networking Link Layer ECE 650 Systems Programming & Engineering Duke University, Spring 2018 (Link Layer Protocol material based on CS 356 slides) TCP/IP Model 2 Layer 1 & 2 Layer 1: Physical Layer Encoding

More information

High Level View. EE 122: Error detection and reliable transmission. Overview. Error Detection

High Level View. EE 122: Error detection and reliable transmission. Overview. Error Detection High Level View EE 22: Error detection and reliable transmission Ion Stoica September 6, 22 Goal: transmit correct information Problem: bits can get corrupted - Electrical interference, thermal noise Solution

More information

Page 1. Goals for Today" Discussion" Example: Reliable File Transfer" CS162 Operating Systems and Systems Programming Lecture 11

Page 1. Goals for Today Discussion Example: Reliable File Transfer CS162 Operating Systems and Systems Programming Lecture 11 Goals for Today" CS162 Operating Systems and Systems Programming Lecture 11 Reliability, Transport Protocols" Finish e2e argument & fate sharing Transport: TCP/UDP Reliability Flow control October 5, 2011

More information

Assignment 7: TCP and Congestion Control Due the week of October 29/30, 2015

Assignment 7: TCP and Congestion Control Due the week of October 29/30, 2015 Assignment 7: TCP and Congestion Control Due the week of October 29/30, 2015 I d like to complete our exploration of TCP by taking a close look at the topic of congestion control in TCP. To prepare for

More information

Chapter 11 Data Link Control 11.1

Chapter 11 Data Link Control 11.1 Chapter 11 Data Link Control 11.1 Copyright The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 11-1 1 FRAMING The data link layer needs to pack bits into frames,, so that

More information

PROBLEMSAND EXERCISES

PROBLEMSAND EXERCISES Departamento de Tecnología Electrónica Computer Networking Unit 3: Transport layer PROBLEMSAND EXERCISES Transport Layer 95 Pr1: port numbers Suppose that the client A initiates a TCP connection to a Web

More information

Comparison of ISO-OSI and TCP/IP Suit. Functions of Data Link Layer:

Comparison of ISO-OSI and TCP/IP Suit. Functions of Data Link Layer: Comparison of ISO-OSI and TCP/IP Suit Functions of Data Link Layer: 1. Frame generation ( Character Count, Character Stuffing, Bit Stuffing) 2. Error Processing (Parity(EVEN or ODD), Block Parity, Hamming

More information

Internet Protocols Fall Outline

Internet Protocols Fall Outline Internet Protocols Fall 2004 Lecture 12 TCP Andreas Terzis Outline TCP Connection Management Sliding Window ACK Strategy Nagle s algorithm Timeout estimation Flow Control CS 449/Fall 04 2 1 TCP Connection

More information

MODELS OF DISTRIBUTED SYSTEMS

MODELS OF DISTRIBUTED SYSTEMS Distributed Systems Fö 2/3-1 Distributed Systems Fö 2/3-2 MODELS OF DISTRIBUTED SYSTEMS Basic Elements 1. Architectural Models 2. Interaction Models Resources in a distributed system are shared between

More information

Sequence Number. Acknowledgment Number. Data

Sequence Number. Acknowledgment Number. Data CS 455 TCP, Page 1 Transport Layer, Part II Transmission Control Protocol These slides are created by Dr. Yih Huang of George Mason University. Students registered in Dr. Huang's courses at GMU can make

More information

Performance Enhancement Of TCP For Wireless Network

Performance Enhancement Of TCP For Wireless Network P a g e 32 Vol. 10 Issue 12 (Ver. 1.0) October 2010 Global Journal of Computer Science and Technology Performance Enhancement Of TCP For Wireless Network 1 Pranab Kumar Dhar, 2 Mohammad Ibrahim Khan, 3

More information

TCP Adaptive Retransmission Algorithm - Original TCP. TCP Adaptive Retransmission Algorithm Jacobson

TCP Adaptive Retransmission Algorithm - Original TCP. TCP Adaptive Retransmission Algorithm Jacobson TCP Adaptive Retransmission Algorithm - Original TCP Theory Estimate RTT Multiply by 2 to allow for variations Practice Use exponential moving average (A = 0.1 to 0.2) Estimate = (A) * measurement + (1-

More information

Reliable Transport II: TCP and Congestion Control

Reliable Transport II: TCP and Congestion Control Reliable Transport II: TCP and Congestion Control Brad Karp UCL Computer Science CS 3035/GZ01 31 st October 2013 Outline Slow Start AIMD Congestion control Throughput, loss, and RTT equation Connection

More information

CPE 548 Exam #1 (50 pts) February 17, 2016

CPE 548 Exam #1 (50 pts) February 17, 2016 Name Class: 548 All answers must have supporting work. Any answer without support will receive no credit 1) (4 pts) Answer the following short answer questions. a) Explain the stop and wait ARQ (automatic

More information

Intro to LAN/WAN. Transport Layer

Intro to LAN/WAN. Transport Layer Intro to LAN/WAN Transport Layer Transport Layer Topics Introduction (6.1) Elements of Transport Protocols (6.2) Internet Transport Protocols: TDP (6.5) Internet Transport Protocols: UDP (6.4) socket interface

More information

TCP Service Model. Today s Lecture. TCP Support for Reliable Delivery. EE 122:TCP, Connection Setup, Reliability

TCP Service Model. Today s Lecture. TCP Support for Reliable Delivery. EE 122:TCP, Connection Setup, Reliability Today s Lecture How does TCP achieve correct operation? EE 122:TCP, Connection Setup, Reliability Ion Stoica TAs: Junda Liu, DK Moon, David Zats Reliability in the face of IP s best effort service 3-way

More information

Name Student ID Department/Year. Midterm Examination. Introduction to Computer Networks Class#: 901 E31110 Fall 2012

Name Student ID Department/Year. Midterm Examination. Introduction to Computer Networks Class#: 901 E31110 Fall 2012 Name Student ID Department/Year Midterm Examination Introduction to Computer Networks Class#: 901 E31110 Fall 2012 9:30-11:10 Thursday November 8, 2012 Prohibited 1. You are not allowed to write down the

More information

CS 356: Introduction to Computer Networks. Lecture 16: Transmission Control Protocol (TCP) Chap. 5.2, 6.3. Xiaowei Yang

CS 356: Introduction to Computer Networks. Lecture 16: Transmission Control Protocol (TCP) Chap. 5.2, 6.3. Xiaowei Yang CS 356: Introduction to Computer Networks Lecture 16: Transmission Control Protocol (TCP) Chap. 5.2, 6.3 Xiaowei Yang xwy@cs.duke.edu Overview TCP Connection management Flow control When to transmit a

More information

Reliable Byte-Stream (TCP)

Reliable Byte-Stream (TCP) Reliable Byte-Stream () Outline Connection Establishment/Termination Sliding Window Revisited Flow Control Adaptive Timeout Simple Demultiplexer (UDP) Header format Note 16 bit port number (so only 64K

More information

Data Link Layer, Part 5 Sliding Window Protocols. Preface

Data Link Layer, Part 5 Sliding Window Protocols. Preface Data Link Layer, Part 5 Sliding Window Protocols These slides are created by Dr. Yih Huang of George Mason University. Students registered in Dr. Huang's courses at GMU can make a single machine-readable

More information

CSE/EE 461 Lecture 16 TCP Congestion Control. TCP Congestion Control

CSE/EE 461 Lecture 16 TCP Congestion Control. TCP Congestion Control CSE/EE Lecture TCP Congestion Control Tom Anderson tom@cs.washington.edu Peterson, Chapter TCP Congestion Control Goal: efficiently and fairly allocate network bandwidth Robust RTT estimation Additive

More information

ECE 544 Computer Networks II Mid-Term Exam March 29, 2002 Profs. D. Raychaudhuri & M. Ott

ECE 544 Computer Networks II Mid-Term Exam March 29, 2002 Profs. D. Raychaudhuri & M. Ott ECE544 Mid-Term Page ECE 544 Computer Networks II Mid-Term Exam March 29, 2002 Profs. & M. Ott Instructions: This is a 2 hr, OPEN BOOK exam. (Only the textbook, Peterson & Davie, Computer Networks, A Systems

More information

Congestion control in TCP

Congestion control in TCP Congestion control in TCP If the transport entities on many machines send too many packets into the network too quickly, the network will become congested, with performance degraded as packets are delayed

More information

Chapter 5 Peer-to-Peer Protocols and Data Link Layer

Chapter 5 Peer-to-Peer Protocols and Data Link Layer Chapter 5 Peer-to-Peer Protocols and Data Link Layer PRT I: Peer-to-Peer Protocols Peer-to-Peer Protocols and Service Models RQ Protocols and Reliable Data Transfer Flow Control Timing Recovery TCP Reliable

More information

Duke University CompSci 356 Midterm Spring 2016

Duke University CompSci 356 Midterm Spring 2016 Duke University CompSci 356 Midterm Spring 2016 Name (Print):, (Family name) (Given name) Student ID Number: Date of Exam: Feb 25, 2016 Time Period: 11:45am-1pm Number of Exam Pages: 15 (including this

More information

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

TCP Strategies. Keepalive Timer. implementations do not have it as it is occasionally regarded as controversial. between source and destination Keepalive Timer! Yet another timer in TCP is the keepalive! This one is not required, and some implementations do not have it as it is occasionally regarded as controversial! When a TCP connection is idle

More information

Transport Layer PREPARED BY AHMED ABDEL-RAOUF

Transport Layer PREPARED BY AHMED ABDEL-RAOUF Transport Layer PREPARED BY AHMED ABDEL-RAOUF TCP Flow Control TCP Flow Control 32 bits source port # dest port # head len sequence number acknowledgement number not used U A P R S F checksum Receive window

More information

TCP VARIANTS TO CONTROL CONGESTION

TCP VARIANTS TO CONTROL CONGESTION TCP VARIANTS TO CONTROL CONGESTION Harjinder Kaur 1, Manvinder Singh 2 1,2 University College of Computer Applications, Guru Kashi University, Talwandi Sabo (India) ABSTRACT TCP is used to control the

More information

Improving TCP End to End Performance in Wireless LANs with Snoop Protocol

Improving TCP End to End Performance in Wireless LANs with Snoop Protocol Improving TCP End to End Performance in Wireless LANs with Snoop Protocol Dejan Jaksic, Zeljko Ilic and Alen Bazant Department of Telecommunications, Faculty of Electrical Engineering and Computing Unska

More information