A Delay Analysis of Sender-Initiated and Receiver-Initiated Reliable Multicast Protocols

Size: px
Start display at page:

Download "A Delay Analysis of Sender-Initiated and Receiver-Initiated Reliable Multicast Protocols"

Transcription

1 A Delay Analysis of Sender-Initiated and Receiver-Initiated Reliable Multicast Protocols Miki Yamamoto y 1 James F. Kurose z 2 Donald F. Towsley z 2 Hiromasa Ikeda y y Department of Communications Engineering z Department of Computer Science Faculty of Engineering, Osaka University University of Massachusetts 2-1 Yamadaoka, Suita, Osaka 565 JAPAN Amherst, Massachusetts 13 U.S.A. Abstract A growing number of network applications require the use of a reliable multicast protocol to disseminate data from a source to a potentially large number of receivers. This paper presents an analytic performance analysis of the packet delay incurred under three generic sender- and receiver-initiated approaches towards reliable multicast. We focus on the host processing requirements of these protocols and derive expressions for average time between the initial arrival of a packet at a sender and its correct reception at a randomly chosen receiver. Our numerical results indicate that a NAK-based protocol that limits NAK generation by intentionally and randomly delaying NAK packets can achieve substantially higher throughput than the other two protocols examined, and can do so without suffering an appreciable higher delay over a range of system parameters. 1 Introduction A growing number of network applications require the use of a reliable multicast protocol to disseminate data from a source to a potentially large number of receivers. These applications include whiteboard teleconferencing [1], distribution of financial and billing data [4], and distributed interactive simulation. An earlier paper by Pingali et al.[6] identified two basic approaches towards reliable multicast sender-initiated ACK-based protocols and receiver-initiated NAK-based protocols and examined the maximum achievable sender and receiver throughputs for these approaches. It was shown that as the number of receivers grows large, receiver-initiated protocols provide substantially higher throughput than their sender-initiated counterparts when end system processing is the resource 1 This author was visiting the University of Massachusetts during the academic year, supported by a grant from the Ministry of Education, Science and Culture of Japanese Government. 2 This research was supported in part by the Defense Advanced Research Projects Agency under contract F C-146 and the National Science Foundation under grant NCR under consideration. This present paper builds on the work in [6] by presenting a delay analysis of the three generic sender- and receiver-initiated protocols similar to identified in [6]: A (a sender-initiated ACK-based protocol), (a receiverinitiated NAK-based protocol in which NAKs are returned to the sender via a point-to-point channel), and (a receiver-initiated NAK-based protocol in which receivers multicast NAKs to the sender). Our results indicate that the protocol, which limits NAK generation by intentionally and randomly delaying NAK packets, can achieve substantially higher throughput than the other two protocols examined, and can do so without suffering an appreciable higher delay over a range of system parameters. Our work differs from previous work in reliable multicast protocols in two important ways. First, our goal here is not to propose a specific reliable multicast protocol but rather to focus on the fundamental differences between sender- and receiver-initiated protocols and the sensitivity of their delay behavior to system parameters such as the number of receivers, network propagation delay, and timer values. Second, we focus on end-system protocol processing as the crucial resource. We expect the processing costs of end-system protocols to become increasingly important as network bandwidths continue to increase, particularly when there are many participants in a multicast group. The remainder of this paper is structured as follows. Section 2 presents a description of the A,, and protocols. Section 3 describes our network model and presents an analysis of the reliable multicast packet delay the time between the initial generation of a packet at the sender and its successful reception at a a randomly chosen receiver under the three generic protocols. Section 4 provides a numerical comparison of the protocols performance under various scenarios. Section 5 concludes this paper.

2 2 Three Generic Approaches Towards Reliable Multicast In this section we present three generic approaches [6] towards reliable multicast. We emphasize that our intent here is not to present specific new reliable multicast protocols, but rather to identify generic protocols that capture important general characteristics of ACK- and NAK-based protocols. We describe these protocols assuming a single sender and R receivers. However, the protocols below are equally applicable in the case where an end system can both send and receive data. 2.1 A Sender-Initiated Protocol: A In the sender-initiated protocol, denoted A, each time a receiver correctly receives a packet, it sends a positive acknowledgment (ACK) to the sender. The sender maintains a list of the receivers from which it has received an ACK for each packet. A sender timeout mechanism is used to recover from lost packets. Specifically, the sender starts a timer when a packet is transmitted and, if the timer expires prior to it having received ACKs for this packet from every receiver, the sender retransmits the packet and restarts the timer. Most traditional point-to-point reliable data transfer protocols (e.g., TCP, HDLC, TP4) and many early multicast/broadcast protocols [8, 7] follow this ACK-based approach. Rather than focus on a specific protocol, we will instead focus on a generic protocol which exhibits the following behavior: Whenever the sender transmits or retransmits a packet, it multicasts it to all receivers and starts a timer. Whenever a receiver receives a packet correctly, it transmits an ACK to the sender over a point-to-point connection. A timer is associated with each packet that has not been acknowledged by all receivers. Whenever a timer expires, the sender re-multicasts the corresponding packet (only) to the receivers. This protocol can be optimized in numerous ways, such as grouping ACKs for different packets into a single ACK and hierarchically grouping receivers [8, 5]. We will not consider such optimizations here. 2.2 A Receiver-Initiated Protocol: Receiver-initiated protocols place the responsibility for ensuring reliable packet delivery on the receivers. The sender transmits an initial copy of a packet and will only retransmit that packet if it receives a negative acknowledgment (NAK) from a receiver. When this occurs, the sender then re-multicasts the NAKed packet. Under protocol, NAKs are generated by a receiver and sent point-to-point to the sender when it (the receiver) discovers that the sender has transmitted a packet that it (the receiver) has not yet received. This occurs when the receiver first receives a packet with sequence number i +1 without having received packet i: As we will see, the time between the transmission of packet i and packet i +1at the sender thus plays an important role in determining the delay until a receiver realizes that it has lost packet i: A number of researchers have proposed having the sender multicast another copy of packet i (or its sequence number), even though no NAKs are receiver, whenever the delay between the arrival of packet i and i +1exceeds some threshold. In the following, we will ignore these forced retransmissions in our analysis although they can be accommodated rather easily. In order to recover from the of a NAK or the subsequently retransmitted packet, a receiver uses a timer, as discussed below. The first generic receiver-initiated protocol,, operates as follows: The sender multicasts all packets. Whenever a receiver detects a lost packet, it transmits a NAK for that packet to the sender over a point-topoint channel and starts a timer. The expiration of a timer without prior reception of the corresponding packet causes the receiver to generate another NAK, which is sent point-to-point to the sender. The timer is also restarted. Whenever the sender receives a NAK, it re-multicasts the packet to all receivers. 2.3 A Second Receiver-Initiated Protocol: The protocol presented below is a variation of the protocol discussed above. As suggested by Ramakrishnan and Jain [7] for a LAN and Jacobson and Floyd [1] for a WAN, it limits the number of NAKs generated using a NAK suppression mechanism. With NAK suppression, each receiver multicasts its NAK only after waiting a random amount of time after detecting packet. If a receiver receives a NAK from another receiver while waiting to transmit its own NAK for that packet, it cancels its pendingnak. thus has the following behavior: The sender multicasts all packets. Whenever a receiver detects a lost packet, it schedules a pending NAK transmission at a randomly chosen point of time in the future. In the meantime, if the receiver receives a NAK (generated by another receiver) for this packet, it cancels the transmission of its own pending NAK. This is called NAK suppression.

3 If, at the scheduled time for a pending NAK transmission, a NAK for this packet has not been received since the pending NAK transmission was first scheduled, the receiver multicasts a NAK to the sender and all other receivers, and starts a timer. Upon receipt of a NAK for a packet that the receiver has not yet received, but for which it has initiated the random delay prior to sending a NAK, the receiver sets a timer and behaves as if it had sent that NAK. The expiration of a timer without prior reception of the corresponding packet causes the receiver infer that a packet has been lost, and operate as in item 2 above. Whenever the sender receives a NAK, it re-multicasts the packet to all receivers. As with the sender-initiated protocols, there are numerous optimizations possible. For example, it is possible for a receiver that has correctly received a packet to itself retransmit a copy of the packet [1]. See [7, 1] for additional discussion of possible optimizations. 3 Delay Analysis of Reliable Multicast Protocols The goal of the analysis outlined in this section is to determine the delay between the initial arrival of a packet at the sender and its correct reception at a randomly chosen receiverunderthe A,, and protocols. As we will see, this delay will be influenced by many factors, including the processing delays experienced by a packet at the sender and receiver, the end-to-end network propagation delay, the packet probability, and per-protocol parameters (e.g., the interval over which NAKs are delayed in ). The delay analysis of each of the three protocols has two major steps: 1. In the first step, we first determine the packet arrival rates for the different types of requests (data packets plus ACK or NAK packets) at the sender and the receivers for a given protocol. Given this arrival rate, an M/G/1 queueing model of the sender and receiver gives the average delay of a request at that host: the time from the arrival/generation of a packet at a host to the completion of its processing at that host. Here, processing refers to the actions taken when a packet is sent and/or received. For example, the arrival of a NAK at the sender may result in the retransmission of a packet; NAK processing would thus include the host protocol processing needed to receive the incoming NAK and transmit the requested data packet. Packet arrival rates and sojourn times are derived in section 3.2 for the three protocols under study. 2. In the second step, we focus on a specific data packet when it first arrives at the sender for transmission to the senders, and analyze the sequence of message exchanges between the end systems that ultimately results in the data packet being successfully received at a randomly chosen receiver. The delays associated with these message exchanges together with the packet processing delays determined in step 1 together yield the overall delay between the initial arrival of the packet at the sender and its successful reception at the randomly chosen receiver. The delay analysis of the A, and protocols is detailed in sections 3.3, 3.4 and 3.5 respectively. 3.1 Network Model Our network model is quite simple. As noted above, we assume a single sender and R receivers. New packets to be sent to the receivers arrive at the sender according to a Poisson process with rate : We assume that a packet sent by the sender is lost by a receiver with probability p; which is the same for all receivers. In our ensuing analysis, this assumption can be relaxed without significant conceptual difficulties. We also assume that packet es are independent in both space and time. That is, of a particular packet is independent among receivers and independent of the of any previously transmitted packet. [9] discusses the spatial and temporal correlation observed in the MBone, an operational multicast network overlayed on the Internet, and observes that a simple model of spatial correlation is often appropriate. We also assume that ACKs and NAKs are never lost. This assumption can be relaxed by following the analysis given in [8]. Finally, we assume that all participants in the multicast are separated from each other by a delay of : 3.2 Processing Model We assume that the time required to service a data packet (either receive or send) is a random variable and that the time to process an ACK or NAK packet (either receive or send) is a random variable Y and that they have means and second moments E[], E[ 2 ], E[Y ] and E[Y 2 ]. In section 4, we discuss our measured values for these random variables. 3.3 Mean Delays at Sender and Receivers The flow of packets among the sender and receivers is shown in Figure 1 for the A and protocols and will be discussed shortly. The flows in are also similar to, except that receivers receive no NAKs via the network. Important quantities that arise throughout the analyses are - the number of times a packet must be transmitted before receiver i receives it correctly. When there is no confusion, we will drop the subscript i. M (r) has M (r) i

4 λ R S λ timeout λ λ S original data pkts a ACKs Receiver 1 ACKs data pkts (original and retrans) y multicast network A Sender λ R Receiver R ACKs λ 1 n,g λ 1 n,r λ S n data and NAKs Receiver 1 NAKs λ S r λ1 t NAKs λ data pkts (original and retrans) y multicast network original data pkts Sender Figure 1: Packet flows under protocols A and Receiver R distribution P [M (r) = m] =(1 p)p m 1, m1, mean E[M (r) ]=1=(1 p). M = max 1rR M r (r), the number of transmissions required until all receivers receive the packet, it has distribution P P (M m) =P(M (r) m) R =(1 p m ) R and mean 1 E[M ]= m=1 (1 (1 pm 1 ) R ) Mean Waiting Times Under Protocol A Consider first the sender under protocol A. Work performed by the sender comes from one of three sources. There are those packets that arrive for first time transmission at the sender. This flow, denoted S t ; has rate : There are also those packets that are retransmitted due to a timeout. Since each packet is transmitted on average E[M ] 1 times, the rate for this work flow, S timeout ; is (E[M ] 1): Packets in both of these flows have a service requirement of ; as noted above. Finally, the arrival rate of ACK packets to the sender, S a ; is RE[M ](1 p); with each request having a service requirement Y. Recall that a receiver always acknowledges a received packet, even it has already successfully received that packet. Given these flows arriving at the sender, the total load on the sender then is S A = E[M ]E[] +RE[M ](1 p)e[y ] If we assume that the arrival processes are Poisson and that service times are independent random variables, independent of the arrival process, then the system can be modeled as an M/G/1 queue. The mean waiting time for a request (data (re)transmission or ACK) waiting to be processed at the sender under protocol A, E[W S A ],isgiven (using the Pollaczek-Khinchine formula, [3, p. 191]) by: NAKs E[W S A ]= (S t +S timeout )E[ 2 ]+ S a E[Y2 ] 2(1 S A ) : Let us now focus on the receivers under A. At each receiver, there is only a single arriving flow, corresponding to the arrival of data packets, with rate R = E[M ](1 Servicing such a request corresponds to receiving the packet followed by the transmission of an ACK; hence the service time is + Y. The load on the receiver is then R A = E[M ](1 p)(e[]+e[y ]) and, under the assumption of Poisson arrivals, the mean waiting time, E[WA R ] is p): E[W R A ]=R (E[ 2 ]+E[Y 2 ]+2E[]E[Y]) 2(1 R A ) : Note that E[( + Y ) 2 ]=E[ 2 ]+E[Y 2 ]+2E[]E[Y] when and Y are independent random variables. Note that in deriving the equations for the flows at the sender, we have implicitly assumed that the timeout interval at the sender is always greater than the round trip propagation delay plus processing delay at the receivers, i.e., that there are no premature timeouts. We are currently investigating how to relax this assumption Waiting Times under Protocol In [6], the assumption was made that the sender would never retransmit a packet more than once in response to NAKs due to the of the previous retransmission, i.e., it was assumed that the sender could determine whether or not a received NAK was a duplicate NAK. We assume this to be true in this paper as well but note that this is an optimistic assumption, since in practice it is difficult for the sender to determine whether or not a just-received NAK will be satisfied by its most recent retransmission or whether another retransmission should be made. Techniques such as having a receiver increment a count field in a NAK packet each time it generates a NAK for a given data packet, or having estimates of the delays between the source and the receivers [1] can help a source avoid retransmitting in response to duplicate NAK s. In [1] we also treat a pessimistic scenario where every NAK triggers a retransmission. Under this scenario, the sender processes three flows. The first corresponds to the original transmissions. The second corresponds to the arrival of NAKs that trigger retransmissions and the third corresponds to the arrival of NAKs that are processed but do not generate a retransmission. The corresponding flow rates are S t = ;

5 S r = (E[M ] 1); a i timeout timeout S n = (RE[M (r) ] E[M] R +1): Here the subscripts t and r refer to the original transmissions and retransmissions respectively. The service times are, + Y and Y respectively. The load at the sender is then S = (E[]E[M ]+R(E[M(r) ] 1)E[Y ]) (1) WA S T S WA S sender receiver R S A W A S time τ WA R Y r i and the mean waiting time at the sender, E[W S ],is E[W S ] = f S t E[ 2 ]+ S r (E[2 ]+E[Y 2 ]+2E[]E[Y]) + S n E[Y 2 ]g=2(1 S ) (2) There are two work flows through the receiver under. One corresponds to the arrival of data packets from the sender and the other corresponds to the self-generation of NAK packets by the receiver. The respective arrival rates are R t = E[M ](1 p); R n = (E[M (r) ] 1): The respective service times are and Y. The receiver load is thus R = (E[]E[M ](1 p) +(E[M(r) ] 1)E[Y ]) and the mean wait time at a receiver, E[W R ] is E[W R ]= R t E[2 ]+ R n E[Y2 ] 2(1 R ) Waiting Times Under We next consider packet flows under protocol. Recall that has a more complicated NAK generation policy in which receivers needing to generate a NAK wait a random amount of time before doing so. The receipt of a NAK generated by another receiver causes the pending NAK transmission to be cancelled. As with our analysis of, we will again make an optimistic analysis of, assuming that a sender never retransmits a packet more than once in response to NAKs generated in response to the of the previous retransmission. Define the random variable N to be the total number of NAKs received for packet i by the sender under. Since NAKs are multicast, this is also the total number of NAKs of packet i either transmitted or received by a receiver under. In [1], we derive the value of E[N ]: Figure 2: Delay components of the A protocol Given this value and following similar reasoning as in the case of the optimistic protocol, we have the following expressions for the three flow rates into the sender, S t = ; S r = (E[M ] 1); S n = E[N ] S r : The service times are, + Y and Y respectively. The load and mean waiting time at the sender under, S and E[W S ]; are calculated using (1) and (2) (as in ) using the values of S t ;S r and S n immediately above. There are three flows at the receiver with rates R t = E[M ](1 p); R n;g = 1 R E[N ] R n;r = R 1 R E[N ]: R n;g and R n;r correspond to the rates at which the receiver generates NAKs and receives NAKs respectively. They each have service time Y: R t is the flow of data packets, with service time. Given these flows, the receiver load is R = (E[]E[M ](1 p) +E[N ]E[Y]) and the mean waiting time at the receiver under, under the assumption of Poisson flows, is E[W R ]=R t E[2 ]+( R n;g + R n;r )E[Y 2 ]) 2(1 R ) : 3.4 Overall Delay Analysis of Protocol A Having derived the rate of packet flows among the senders and receivers under the three protocols, we now consider the overall delay analysis of protocol A. Figure 2 shows the operation of protocol A. Packet i first arrives at the sender at time a i. If there are other packets (data or ACK) waiting for processing at the sender, packet

6 a i a i+1 S WS S W WS W data data data detection phase, D NAK S NAK R W Y R W Y R W T R r i recovery phase, R Figure 3: Delay components of the protocol i waits for processing under FCFS scheduling and is eventually sent. After being lost twice in this example (and having to wait for retransmission processing after each timeout) the packet is received correctly at the receiver at time r i. Recall that the sender timeout delay and propagation delay have fixed values T s and respectively. The probability that a randomly chosen receiver requires exactly j transmissions of the packets is p j 1 (1 p). Given these considerations, the mean waiting times (E[W S A ] and E[W R A ]) computed in section 3.3.1, and the service requirements and Y, the mean time between a packet s initial arrival to the sender and its successful receipt at a receiver under protocol A is given by E[S A ] 1 j=1 p j 1 (1 p)(j(e[w S A ]+E[]) + (j 1)T S) + + E[W R A ]+E[] = (E[WS A ]+E[]+pT S) (1 p) + + E[W R A ]+E[] 3.5 Delay Analysis of Protocol Figure 3 illustrates the operation of protocol. In this example, packet i first arrives at the sender at time a i ; awaits processing at the sender, and is eventually sent. Let us focus on a randomly chosen receiver, which (along with K other receivers) does not receive this initial copy of packet i: Upon the reception of the first packet, j,where j>iat any of these K +1receivers, a NAK is generated. We define the time from the initial arrival of packet i at the sender to the generation of this initial NAK by any of the K +1receivers as the detection phase. We present an approximate expression for the average length of this phase in section Once the is detected, those receivers that detect the will continue to generate NAKs periodically until they eventually receive packet i: We define the time between the end of the detection phase and the successful reception 1 A of the packet at the randomly chosen receiver as the recovery phase. We present an approximation for the length of the recovery phase in section In section we combine the results of sections and to derive the overall packet delay under protocol Loss Detection Phase Conditioning on the fact that our randomly chosen receiver has lost packet i, we further condition on the number of other receivers K that have also lost packet i. As noted above, the detection phase ends when any of the K +1 receivers successfully receives a packet with a higher sequence number. Given that K = k, the conditional probability distribution for L, the number of subsequent packets (i.e., packets with higher sequence number) that are lost by the randomly chosen receiver and the other K receivers is P (L = l j K = k) =p l(k+1) (1 p k+1 );l =;:::;k = ;:::;R 1;and E(Lj K = k) =p k+1 =(1 p k+1 ): Once the L +1st packet (i.e., the first packet after i that is successfully received by one of the K +1receivers) arrives, it will experience a processing delay at the sender of E[W S ]+E[]; a propagation delay to the receiver of and a processing delay at the receiver of E[W R ]+E[]: We define the detection phase to end after the NAK is sent. Conditioning on the value of K, we have E[D ] = R 1 k= R 1 k p k (1 p) R k 1 pk+1 = 1 p k+1 +E[W S ]+E[WR ]+ +2E[]+E[Y]: We note that one simplifying assumption we have made in computing E[D ] is that instead of using E[W R ],a more accurate expression would replace this quantity with the mean minimum processing time among the j receivers out of the k +1receivers that detect the of the L +1st packet Loss Recovery Phase The recovery phase of seen by our random receiver, denoted R and shown in Figure 3, is essentially a mirror image of protocol A. The receivers send one or more NAKs to the sender and the sender replies with a retransmitted packet, that is lost at the random receiver with probability p. From the random receiver s viewpoint, the recovery phase thus begins with a number of receiver timeout rounds, each of length T R + W R + E[Y ] where T R is the length of the timeout period and W R is the waiting time (see section 3.3.2). The recovery phase ends with

7 a final propagation delay of the NAK to the sender, sender processing/retransmission of the data packet, and receiver processing of the received packet. Following our derivation of the delay of the A protocol, the mean recovery delay E[R ]: E[R ] 1 1 p j 1 (1 p)(j 1)(T R + E[W R A ]+E[Y]) j=1 +2 +E[W S ]+E[]+E[WR ]+E[] = p(t R+E[W R ]+E[Y]) (1 p) +2(E[]+) Overall Delay Analysis + E[W S ]+E[WR ] Given the results from and for the lengths of the detection and recovery phases, respectively, for the protocol, we may now easily derive the mean overall delay. With probability (1 p) the randomly selected receiver receives the initial transmission of packet i and experiences a delay equal to the sum of the sender processing delay, propagation delay, and receiver processing delay. With probability p the receiver loses the initial transmission of packet i and then experiences a delay equal to the sum of the detection and recovery phases, as discussed in sections and Given these considerations, the overall mean delay between the initial arrival of packet i at the sender and its successful receptions at the randomly chosen receiver, E[S ] is: E[S ] = (1 p)(e[w S ]+E[WR ]+2E[]+) +p(e[d ]+E[R ]) = E[W S ]+E[WR ]+2E[]+ + p2 (T R +E[W R ]+E[Y]) (1 p) + p(e[d ]+) Note that a simplifying assumption is that the K +1 receivers proceed in rounds after detecting the of packet i. Such synchronization is clearly idealized. It also overlooks the possibility that some of the K +1receivers that lost the packets but were not among the subset of the K +1receivers that initially detected the, might themselves detect the while the rounds are ongoing. 3.6 Delay Analysis of Protocol Figure 4 illustrates the operation of protocol, using an example similar to that in Figure 3. The delay between the initial arrival of packet i at the sender and its reception at a randomly chosen receiver under protocol, S ; divides into three segments: a i a i+1 WS data WS data detection phase, D R W r i NAK Y random delay Phase B S WS WS T R NAK recovery phase, R data R W Y R W Figure 4: Delay components of the protocol As in the protocol, the overall delay S begins with a detection phase of length D.The derivation of the mean detection period length under, E[D ] is identical to the derivation of E[D ] in section 3.5. for the protocol, except that E[W S ] and E[W R ] are used instead of E[W S ] and E[W R ]. Also, here we do not include the NAK transmission time in E[D ]. As in the protocol, S ends with a recovery phase of length R. The derivation of the mean recovery period length is identical to the corresponding derivation in section for the protocol, except that E[W S ] and E[W R ] are used instead of E[W S ] and E[W R ]. Unlike the protocol, the receivers in wait a random amount of time until generating a NAK. This gives rise to the random delay phase showninfigure 4. We denote the length of the random delay phase B and derive its mean, E[B ] in [1]. Given the above considerations, the mean overall delay between the initial arrival of packet i at the sender and its successful receptions at the randomly chosen receiver under protocol is: E[S ] = E[W S ]+E[WR ]+2E[]+ +pe[b ]+ p2 (T R +E[W R ]+E[Y]) + 1 p R 1 R 1 p p k (1 p) R k 1 pk+1 = k 1 p k+1 + k= E[W S ]+E[WR ]+2(E[]+) 4 Numerical Results The analysis from sections 3.4, 3.5, and 3.6 give the expected delay between the initial arrival of a packet at the sender and its successful reception at the randomly chosen

8 receiver under protocols A,, and respectively. We will refer to this measure simply as the expected delay. In order to choose realistic values for the various processing times associated with sending and receiving a data or ACK/NAK packet, we use the measured values reported in [2]. Those measurements show that packet send and receive processing times for a Linux Ethernet/IP/UDP stack to be approximately 5 secs on a 133Mhz Pentium. ACK/NAK send/receive times are approximately 1 secs. In the following, we normalize the unit of time to be the data packet send and receive times, i.e., E[] =1;and E[Y ]=:2:We assume these per-packet processing costs are constant (i.e., have no variability) and choose a normalized propagation delay of =2:;corresponding to a 1 msec propagation delay. Recall that an important parameter of the protocol is the backoff timer for NAK suppression. Figure 5 shows the expected number of NAKs generated by the receivers as a function of the backoff interval length (measured in units of propagation delay). As expected, the expected number of NAKs generated decreases with an increasing NAK suppression interval length since the receivers are randomizing their NAK transmissions over an increasingly longer period of time. Note that after an initial decrease, the expected number of generated NAKs does not decrease significantly as the backoff interval length is increased. In the case of a small probability (p = :1), the expected number of receivers that lose a packet is small and hence the number of generated NAKs is small, regardless of the receivers timeout interval length. We note that a backoff interval of length 1 is a reasonable value for all of the probabilities shown, and so we use this value in subsequent computations for R = 1: Figures 6, 7 and 8 plot the expected delay under each of the three protocols as a function of the arrival rate for R = 1 and various p. Figure 6, with an x-axis plotted logarithmically, shows the expected delay under the NAK-based protocols is high at very low arrival rates. This results from the fact that a receiver can only detect a packet when a packet with a larger sequence number arrives. At low arrival rates, this wait can be significant. For such low arrival rates, we see that A outperforms both and. As the arrival rate increases, and perform essentially identically (although achieves a slightly higher throughput). Figure 7 shows that for a larger probability of p = :1; and have comparable delays, up to the point where becomes saturated. Similar behavior is evidenced in Figure 8 for the case p =:25: Figure 9 plots expected delay versus the arrival rate for the case of R = 5 receivers and p =:1:As in the case of Figure 7, and perform similarly up to the point where saturates. Also, the ACK overhead associated p=.25 p=.1 p= Backoff interval length Figure 5: NAKs generated under versus receiver timeout interval p=.1 R=1 ACK lambda Figure 6: Average delay versus arrival rate, p =:1 with A and the larger number of receivers again severely limits A s throughput. Comparing Figures 7 and 9, we note that with the increased number of receivers, the relative size of the gap between the maximum throughput of and has increased noticeably. In summary, we conclude that can achieve substantially higher throughput than both and A, and can do so without suffering an appreciable higher delay due to delays associated with its NAK suppression mechanism. 5 Conclusion In this paper we have derived analytic performance models of packet delay of three generic sender- and receiver-initiated protocols. For the range of parameter values studied, our results showed that can achieve substantially higher throughput than both and A, and do so

9 ACK p=.1 R= lambda Figure 7: Average delay versus arrival rate, p =: ACK p=.25 R= lambda Figure 8: Average delay versus arrival rate, p =: p=.1 R=5 ACK without suffering an appreciable higher delay due to delays associated with its NAK suppression mechanism. Our future work in this area is aimed at modeling packet correlation in the network (a problem we have examined experimentally in [9]), examining adaptive NAK generation policies under, and studying the distribution of the delay under the various protocols an important consideration for real-time reliable multicast protocols. References [1] S. Floyd, V. Jacobsen, S. McCanne, C.G. Liu, L. Zhang, A Reliable Multicast Framework for Light-weight Sessions and Application-Level Framing, Proc. ACM Sigcomm95, (Aug. 1995, Boston MA), pp [2] S. Kasera, J. Kurose, D. Towsley, Scalable Reliable Multicast Using Multiple Multicast Groups, to appear in Proc. ACM SIgmetrics 97. [3]. L. Kleinrock, Queueing Systems: Part 1: Theory, Wiley- Interscience, [4] J.C. Lin and S. Paul, RMTP: A Reliable Multicast Transport Protocol, Proc. IEEE Infocom96, (San Francisco, March 1996), pp [5] S. Paul, K. Sabnani, D. Kristol, Multicast Transport Protocols for High-Speed Networks, Proc. IEEE Int. Conference on Network Protocols, (Boston MA, 1994). [6] S. Pingali, J.F. Kurose, D. Towsley, A Comparison of Sender-initiated and Receiver-initiated Reliable Multicast Protocols, Proc ACM Sigmetrics Conf., May 1994, ftp://gaia.cs.umass.edu/pub/ping94:multicast.ps.z. [7] S. Ramakrishnan and B. N. Jain, A Negative Acknowledgment with Periodic Polling Protocol for Multicast over LANs, Proc. IEEE Infocom 87, pp , Mar-Apr [8] D. Towsley, An Analysis of a Point-to-Multipoint Channel Using a Go-Back-N Error Control Protocol, IEEE Trans. on Communications, 33: , March [9] M. Yajnik, J. Kurose, D. Towsley, Packet Loss Correlation in the MBone Multicast Network, submitted to IEEE Global Internet Conference. ftp://gaia.cs.umass.edu/pub/yajn96:loss.ps. [1] M. Yamamoto, J. Kurose, D. Towsley, H. Ikeda, A Delay Analysis of Sender- and Receiver-Initiated Reliable Multicast Protocols, Technical Report, Dept. of Computer Science, Univ. Massachusetts, June ftp://gaia.cs.umass.edu/pub/yamamoto96:delay.ps lambda Figure 9: Delay versus arrival rate, R = 5;p=:1

class 1 - data data arrival acknowledgement arrival class 2 - acknowledgements

class 1 - data data arrival acknowledgement arrival class 2 - acknowledgements A PRIORITY CHEME APPLIED TO CALABLE RELIABLE MULTICAT COMMUNICATION Daniel Antunes Maciel Villela daniel@gta.ufrj.br Otto Carlos Muniz B. Duarte otto@gta.ufrj.br Grupo de Teleinformatica e Automac~ao {

More information

An analysis of retransmission strategies for reliable multicast protocols

An analysis of retransmission strategies for reliable multicast protocols An analysis of retransmission strategies for reliable multicast protocols M. Schuba, P. Reichl Informatik 4, Aachen University of Technology 52056 Aachen, Germany email: marko peter@i4.informatik.rwth-aachen.de

More information

Multicast Transport Protocol Analysis: Self-Similar Sources *

Multicast Transport Protocol Analysis: Self-Similar Sources * Multicast Transport Protocol Analysis: Self-Similar Sources * Mine Çağlar 1 Öznur Özkasap 2 1 Koç University, Department of Mathematics, Istanbul, Turkey 2 Koç University, Department of Computer Engineering,

More information

TCP Throughput Analysis with Variable Packet Loss Probability for Improving Fairness among Long/Short-lived TCP Connections

TCP Throughput Analysis with Variable Packet Loss Probability for Improving Fairness among Long/Short-lived TCP Connections TCP Throughput Analysis with Variable Packet Loss Probability for Improving Fairness among Long/Short-lived TCP Connections Koichi Tokuda Go Hasegawa Masayuki Murata Graduate School of Information Science

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

A Tree-Based Reliable Multicast Scheme Exploiting the Temporal Locality of Transmission Errors

A Tree-Based Reliable Multicast Scheme Exploiting the Temporal Locality of Transmission Errors A Tree-Based Reliable Multicast Scheme Exploiting the Temporal Locality of Transmission Errors Jinsuk Baek 1 Jehan-François Pâris 1 Department of Computer Science University of Houston Houston, TX 77204-3010

More information

16.682: Communication Systems Engineering. Lecture 17. ARQ Protocols

16.682: Communication Systems Engineering. Lecture 17. ARQ Protocols 16.682: Communication Systems Engineering Lecture 17 ARQ Protocols Eytan Modiano Automatic repeat request (ARQ) Break large files into packets FILE PKT H PKT H PKT H Check received packets for errors Use

More information

Randomization. Randomization used in many protocols We ll study examples:

Randomization. Randomization used in many protocols We ll study examples: Randomization Randomization used in many protocols We ll study examples: Ethernet multiple access protocol Router (de)synchronization Switch scheduling 1 Ethernet Single shared broadcast channel 2+ simultaneous

More information

Randomization used in many protocols We ll study examples: Ethernet multiple access protocol Router (de)synchronization Switch scheduling

Randomization used in many protocols We ll study examples: Ethernet multiple access protocol Router (de)synchronization Switch scheduling Randomization Randomization used in many protocols We ll study examples: Ethernet multiple access protocol Router (de)synchronization Switch scheduling 1 Ethernet Single shared broadcast channel 2+ simultaneous

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

Improving Reliable Multicast Using Active Parity Encoding Services (APES)

Improving Reliable Multicast Using Active Parity Encoding Services (APES) APPEARS IN IEEE INFOCOM 999 Improving Reliable Multicast Using Active Parity Encoding Services (APES) Dan Rubenstein, Sneha Kasera, Don Towsley, and Jim Kurose Computer Science Department University of

More information

RED behavior with different packet sizes

RED behavior with different packet sizes RED behavior with different packet sizes Stefaan De Cnodder, Omar Elloumi *, Kenny Pauwels Traffic and Routing Technologies project Alcatel Corporate Research Center, Francis Wellesplein, 1-18 Antwerp,

More information

Scalable Reliable Multicast Using Multiple. Multicast Groups. Sneha K. Kasera, Jim Kurose and Don Towsley. Department of Computer Science

Scalable Reliable Multicast Using Multiple. Multicast Groups. Sneha K. Kasera, Jim Kurose and Don Towsley. Department of Computer Science Scalable Reliable Multicast Using Multiple Multicast Groups Sneha K. Kasera, Jim Kurose and Don Towsley Department of Computer Science University of Massachusetts Amherst, MA 01003 fkasera,kurose,towsleyg@cs.umass.edu

More information

Generic Multicast Transport Services: Router Support for Multicast Applications

Generic Multicast Transport Services: Router Support for Multicast Applications Generic Multicast Transport Services: Router Support for Multicast Applications Brad Cain 1 and Don Towsley 2 1 Network Research, Nortel Networks Billerica, MA 01821, USA bcain@nortelnetworks.com 2 Department

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

A Comparison of Server-Based and Receiver-Based Local Recovery Approaches for Scalable Reliable Multicast *

A Comparison of Server-Based and Receiver-Based Local Recovery Approaches for Scalable Reliable Multicast * A Comparison of Server-Based and Receiver-Based Local Recovery Approaches for Scalable Reliable Multicast * Sneha K. Kasera, Jim Kurose and Don Towsley Department of Computer Science University of Massachusetts

More information

CSCI Topics: Internet Programming Fall 2008

CSCI Topics: Internet Programming Fall 2008 CSCI 491-01 Topics: Internet Programming Fall 2008 Transport Layer Derek Leonard Hendrix College October 20, 2008 Original slides copyright 1996-2007 J.F Kurose and K.W. Ross 1 Chapter 3: Roadmap 3.1 Transport-layer

More information

Problem 7. Problem 8. Problem 9

Problem 7. Problem 8. Problem 9 Problem 7 To best answer this question, consider why we needed sequence numbers in the first place. We saw that the sender needs sequence numbers so that the receiver can tell if a data packet is a duplicate

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

Analyzing the Receiver Window Modification Scheme of TCP Queues

Analyzing the Receiver Window Modification Scheme of TCP Queues Analyzing the Receiver Window Modification Scheme of TCP Queues Visvasuresh Victor Govindaswamy University of Texas at Arlington Texas, USA victor@uta.edu Gergely Záruba University of Texas at Arlington

More information

An Empirical Study of Reliable Multicast Protocols over Ethernet Connected Networks

An Empirical Study of Reliable Multicast Protocols over Ethernet Connected Networks An Empirical Study of Reliable Multicast Protocols over Ethernet Connected Networks Ryan G. Lane Daniels Scott Xin Yuan Department of Computer Science Florida State University Tallahassee, FL 32306 {ryanlane,sdaniels,xyuan}@cs.fsu.edu

More information

Congestion Propagation among Routers in the Internet

Congestion Propagation among Routers in the Internet Congestion Propagation among Routers in the Internet Kouhei Sugiyama, Hiroyuki Ohsaki and Makoto Imase Graduate School of Information Science and Technology, Osaka University -, Yamadaoka, Suita, Osaka,

More information

AN IMPROVED STEP IN MULTICAST CONGESTION CONTROL OF COMPUTER NETWORKS

AN IMPROVED STEP IN MULTICAST CONGESTION CONTROL OF COMPUTER NETWORKS AN IMPROVED STEP IN MULTICAST CONGESTION CONTROL OF COMPUTER NETWORKS Shaikh Shariful Habib Assistant Professor, Computer Science & Engineering department International Islamic University Chittagong Bangladesh

More information

ANALYSIS OF THE CORRELATION BETWEEN PACKET LOSS AND NETWORK DELAY AND THEIR IMPACT IN THE PERFORMANCE OF SURGICAL TRAINING APPLICATIONS

ANALYSIS OF THE CORRELATION BETWEEN PACKET LOSS AND NETWORK DELAY AND THEIR IMPACT IN THE PERFORMANCE OF SURGICAL TRAINING APPLICATIONS ANALYSIS OF THE CORRELATION BETWEEN PACKET LOSS AND NETWORK DELAY AND THEIR IMPACT IN THE PERFORMANCE OF SURGICAL TRAINING APPLICATIONS JUAN CARLOS ARAGON SUMMIT STANFORD UNIVERSITY TABLE OF CONTENTS 1.

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

Chapter 3 Transport Layer

Chapter 3 Transport Layer Chapter 3 Transport Layer Lec 9: Reliable Data Transfer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 All material copyright 1996-2012 J.F Kurose

More information

Performance of UMTS Radio Link Control

Performance of UMTS Radio Link Control Performance of UMTS Radio Link Control Qinqing Zhang, Hsuan-Jung Su Bell Laboratories, Lucent Technologies Holmdel, NJ 77 Abstract- The Radio Link Control (RLC) protocol in Universal Mobile Telecommunication

More information

Contents. CIS 632 / EEC 687 Mobile Computing. TCP in Fixed Networks. Prof. Chansu Yu

Contents. CIS 632 / EEC 687 Mobile Computing. TCP in Fixed Networks. Prof. Chansu Yu CIS 632 / EEC 687 Mobile Computing TCP in Fixed Networks Prof. Chansu Yu Contents Physical layer issues Communication frequency Signal propagation Modulation and Demodulation Channel access issues Multiple

More information

image 3.8 KB Figure 1.6: Example Web Page

image 3.8 KB Figure 1.6: Example Web Page image. KB image 1 KB Figure 1.: Example Web Page and is buffered at a router, it must wait for all previously queued packets to be transmitted first. The longer the queue (i.e., the more packets in the

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

University of Delaware. Ucl London. Rutgers. ICSI, Berkeley. Purdue. Mannheim Germany. Wash U. T_ack T_ack T_ack T_ack T_ack. Time. Stage 1.

University of Delaware. Ucl London. Rutgers. ICSI, Berkeley. Purdue. Mannheim Germany. Wash U. T_ack T_ack T_ack T_ack T_ack. Time. Stage 1. Reliable Dissemination for Large-Scale Wide-Area Information Systems Rajendra Yavatkar James Grioen Department of Computer Science University of Kentucky Abstract This paper describes a reliable multicast

More information

Reliable Transport : Fundamentals of Computer Networks Bill Nace

Reliable Transport : Fundamentals of Computer Networks Bill Nace Reliable Transport 14-740: Fundamentals of Computer Networks Bill Nace Material from Computer Networking: A Top Down Approach, 6 th edition. J.F. Kurose and K.W. Ross Administration Stuff is due HW #1

More information

Enhancing TCP Throughput over Lossy Links Using ECN-Capable Capable RED Gateways

Enhancing TCP Throughput over Lossy Links Using ECN-Capable Capable RED Gateways Enhancing TCP Throughput over Lossy Links Using ECN-Capable Capable RED Gateways Haowei Bai Honeywell Aerospace Mohammed Atiquzzaman School of Computer Science University of Oklahoma 1 Outline Introduction

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

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

Chapter III. congestion situation in Highspeed Networks

Chapter III. congestion situation in Highspeed Networks Chapter III Proposed model for improving the congestion situation in Highspeed Networks TCP has been the most used transport protocol for the Internet for over two decades. The scale of the Internet and

More information

Enhancing TCP Throughput over Lossy Links Using ECN-capable RED Gateways

Enhancing TCP Throughput over Lossy Links Using ECN-capable RED Gateways Enhancing TCP Throughput over Lossy Links Using ECN-capable RED Gateways Haowei Bai AES Technology Centers of Excellence Honeywell Aerospace 3660 Technology Drive, Minneapolis, MN 5548 E-mail: haowei.bai@honeywell.com

More information

Reliable Multicast in Mobile Networks

Reliable Multicast in Mobile Networks Reliable Multicast in Mobile Networks Pasi Tiihonen and Petri Hiirsalmi Lappeenranta University of Technology P.O. Box 20 FIN-53851 Lappeenranta, Finland, {Pasi Tiihonen, Petri Hiirsalmi}@lut.fi Key words:

More information

Real-Time Reliable Multicast Using Proactive Forward Error Correction

Real-Time Reliable Multicast Using Proactive Forward Error Correction Real-Time Reliable Multicast Using Proactive Forward Error Correction Dan Rubenstein, Jim Kurose, and Don Towsley Computer Science Department University of Massachusetts Amherst, MA 0003 drubenst, kurose,

More information

Communication Networks

Communication Networks Communication Networks Prof. Laurent Vanbever Exercises week 4 Reliable Transport Reliable versus Unreliable Transport In the lecture, you have learned how a reliable transport protocol can be built on

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

Answers to Sample Questions on Transport Layer

Answers to Sample Questions on Transport Layer Answers to Sample Questions on Transport Layer 1) Which protocol Go-Back-N or Selective-Repeat - makes more efficient use of network bandwidth? Why? Answer: Selective repeat makes more efficient use of

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

CMPE 257: Wireless and Mobile Networking

CMPE 257: Wireless and Mobile Networking CMPE 257: Wireless and Mobile Networking Katia Obraczka Computer Engineering UCSC Baskin Engineering Lecture 10 CMPE 257 Spring'15 1 Student Presentations Schedule May 21: Sam and Anuj May 26: Larissa

More information

Staged Refresh Timers for RSVP

Staged Refresh Timers for RSVP Staged Refresh Timers for RSVP Ping Pan and Henning Schulzrinne Abstract The current resource Reservation Protocol (RSVP) design has no reliability mechanism for the delivery of control messages. Instead,

More information

IJSRD - International Journal for Scientific Research & Development Vol. 2, Issue 03, 2014 ISSN (online):

IJSRD - International Journal for Scientific Research & Development Vol. 2, Issue 03, 2014 ISSN (online): IJSRD - International Journal for Scientific Research & Development Vol. 2, Issue 03, 2014 ISSN (online): 2321-0613 Performance Evaluation of TCP in the Presence of in Heterogeneous Networks by using Network

More information

Implementation of a Reliable Multicast Transport Protocol (RMTP)

Implementation of a Reliable Multicast Transport Protocol (RMTP) Implementation of a Reliable Multicast Transport Protocol (RMTP) Greg Nilsen University of Pittsburgh Pittsburgh, PA nilsen@cs.pitt.edu April 22, 2003 Abstract While many network applications can be created

More information

ETSN01 Exam Solutions

ETSN01 Exam Solutions ETSN01 Exam Solutions March 014 Question 1 (a) See p17 of the cellular systems slides for a diagram and the full procedure. The main points here were that the HLR needs to be queried to determine the location

More information

IMPLOSION CONTROL FOR MULTIPOINT APPLICATIONS 1

IMPLOSION CONTROL FOR MULTIPOINT APPLICATIONS 1 Appeared in the proceedings of the Tenth Annual IEEE Workshop on Computer Communications, Sept. 1995 Page 1 IMPLOSION CONTROL FOR MULTIPOINT APPLICATIONS 1 ABSTRACT: Christos Papadopoulos christos@dworkin.wustl.edu

More information

Congestion Control in TCP

Congestion Control in TCP Congestion Control in TCP Antonio Carzaniga Faculty of Informatics University of Lugano May 6, 2005 Outline Intro to congestion control Input rate vs. output throughput Congestion window Congestion avoidance

More information

Lecture 8. TCP/IP Transport Layer (2)

Lecture 8. TCP/IP Transport Layer (2) Lecture 8 TCP/IP Transport Layer (2) Outline (Transport Layer) Principles behind transport layer services: multiplexing/demultiplexing principles of reliable data transfer learn about transport layer protocols

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

Impact of transmission errors on TCP performance. Outline. Random Errors

Impact of transmission errors on TCP performance. Outline. Random Errors Impact of transmission errors on TCP performance 1 Outline Impact of transmission errors on TCP performance Approaches to improve TCP performance Classification Discussion of selected approaches 2 Random

More information

Transmission Control Protocol (TCP)

Transmission Control Protocol (TCP) TETCOS Transmission Control Protocol (TCP) Comparison of TCP Congestion Control Algorithms using NetSim @2017 Tetcos. This document is protected by copyright, all rights reserved Table of Contents 1. Abstract....

More information

Chapter 3 outline. 3.5 Connection-oriented transport: TCP. 3.6 Principles of congestion control 3.7 TCP congestion control

Chapter 3 outline. 3.5 Connection-oriented transport: TCP. 3.6 Principles of congestion control 3.7 TCP congestion control Chapter 3 outline 3.1 Transport-layer services 3.2 Multiplexing and demultiplexing 3.3 Connectionless transport: UDP 3.4 Principles of reliable data transfer 3.5 Connection-oriented transport: TCP segment

More information

Buffer Requirements for Zero Loss Flow Control with Explicit Congestion Notification. Chunlei Liu Raj Jain

Buffer Requirements for Zero Loss Flow Control with Explicit Congestion Notification. Chunlei Liu Raj Jain Buffer Requirements for Zero Loss Flow Control with Explicit Congestion Notification Chunlei Liu Raj Jain Department of Computer and Information Science The Ohio State University, Columbus, OH 432-277

More information

Differentiating Congestion vs. Random Loss: A Method for Improving TCP Performance over Wireless Links

Differentiating Congestion vs. Random Loss: A Method for Improving TCP Performance over Wireless Links Differentiating Congestion vs. Random Loss: A Method for Improving TCP Performance over Wireless Links Christina Parsa J.J. Garcia-Luna-Aceves Computer Engineering Department Baskin School of Engineering

More information

Chao Li Thomas Su Cheng Lu

Chao Li Thomas Su Cheng Lu CMPT885 High-Performance Network Final Project Presentation Transport Protocols on IP Multicasting Chao Li Thomas Su Cheng Lu {clij, tmsu, clu}@cs.sfu.ca School of Computing Science, Simon Fraser University

More information

ENRICHMENT OF SACK TCP PERFORMANCE BY DELAYING FAST RECOVERY Mr. R. D. Mehta 1, Dr. C. H. Vithalani 2, Dr. N. N. Jani 3

ENRICHMENT OF SACK TCP PERFORMANCE BY DELAYING FAST RECOVERY Mr. R. D. Mehta 1, Dr. C. H. Vithalani 2, Dr. N. N. Jani 3 Research Article ENRICHMENT OF SACK TCP PERFORMANCE BY DELAYING FAST RECOVERY Mr. R. D. Mehta 1, Dr. C. H. Vithalani 2, Dr. N. N. Jani 3 Address for Correspondence 1 Asst. Professor, Department of Electronics

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

TCP: Overview RFCs: 793, 1122, 1323, 2018, 2581

TCP: Overview RFCs: 793, 1122, 1323, 2018, 2581 TCP: Overview RFCs: 793, 1122, 1323, 2018, 2581 ocket door point-to-point: one sender, one receiver reliable, in-order byte steam: no message boundaries pipelined: TCP congestion and flow control set window

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

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

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

A Two-level Threshold Recovery Mechanism for SCTP

A Two-level Threshold Recovery Mechanism for SCTP A Two-level Threshold Recovery Mechanism for SCTP Armando L. Caro Jr., Janardhan R. Iyengar, Paul D. Amer, Gerard J. Heinz Computer and Information Sciences University of Delaware acaro, iyengar, amer,

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

TCP : Fundamentals of Computer Networks Bill Nace

TCP : Fundamentals of Computer Networks Bill Nace TCP 14-740: Fundamentals of Computer Networks Bill Nace Material from Computer Networking: A Top Down Approach, 6 th edition. J.F. Kurose and K.W. Ross Administrivia Lab #1 due now! Reminder: Paper Review

More information

Computer Networking Introduction

Computer Networking Introduction Computer Networking Introduction Halgurd S. Maghdid Software Engineering Department Koya University-Koya, Kurdistan-Iraq Lecture No.11 Chapter 3 outline 3.1 transport-layer services 3.2 multiplexing and

More information

Chapter 3 Transport Layer

Chapter 3 Transport Layer Chapter 3 Transport Layer A note on the use of these ppt slides: We re making these slides freely available to all (faculty, students, readers). They re in PowerPoint form so you can add, modify, and delete

More information

Cross-layer TCP Performance Analysis in IEEE Vehicular Environments

Cross-layer TCP Performance Analysis in IEEE Vehicular Environments 24 Telfor Journal, Vol. 6, No. 1, 214. Cross-layer TCP Performance Analysis in IEEE 82.11 Vehicular Environments Toni Janevski, Senior Member, IEEE, and Ivan Petrov 1 Abstract In this paper we provide

More information

Lecture 15: Transport Layer Congestion Control

Lecture 15: Transport Layer Congestion Control Lecture 15: Transport Layer Congestion Control COMP 332, Spring 2018 Victoria Manfredi Acknowledgements: materials adapted from Computer Networking: A Top Down Approach 7 th edition: 1996-2016, J.F Kurose

More information

TCP-Peach and FACK/SACK Options: Putting The Pieces Together

TCP-Peach and FACK/SACK Options: Putting The Pieces Together TCP-Peach and FACK/SACK Options: Putting The Pieces Together Giacomo Morabito, Renato Narcisi, Sergio Palazzo, Antonio Pantò Dipartimento di Ingegneria Informatica e delle Telecomunicazioni University

More information

ECE 333: Introduction to Communication Networks Fall 2001

ECE 333: Introduction to Communication Networks Fall 2001 ECE 333: Introduction to Communication Networks Fall 2001 Lecture 28: Transport Layer III Congestion control (TCP) 1 In the last lecture we introduced the topics of flow control and congestion control.

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

THE TCP specification that specifies the first original

THE TCP specification that specifies the first original 1 Median Filtering Simulation of Bursty Traffic Auc Fai Chan, John Leis Faculty of Engineering and Surveying University of Southern Queensland Toowoomba Queensland 4350 Abstract The estimation of Retransmission

More information

F-RTO: An Enhanced Recovery Algorithm for TCP Retransmission Timeouts

F-RTO: An Enhanced Recovery Algorithm for TCP Retransmission Timeouts F-RTO: An Enhanced Recovery Algorithm for TCP Retransmission Timeouts Pasi Sarolahti Nokia Research Center pasi.sarolahti@nokia.com Markku Kojo, Kimmo Raatikainen University of Helsinki Department of Computer

More information

TCP Performance. EE 122: Intro to Communication Networks. Fall 2006 (MW 4-5:30 in Donner 155) Vern Paxson TAs: Dilip Antony Joseph and Sukun Kim

TCP Performance. EE 122: Intro to Communication Networks. Fall 2006 (MW 4-5:30 in Donner 155) Vern Paxson TAs: Dilip Antony Joseph and Sukun Kim TCP Performance EE 122: Intro to Communication Networks Fall 2006 (MW 4-5:30 in Donner 155) Vern Paxson TAs: Dilip Antony Joseph and Sukun Kim http://inst.eecs.berkeley.edu/~ee122/ Materials with thanks

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

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

under grant CNS This work was supported in part by the National Science Foundation (NSF)

under grant CNS This work was supported in part by the National Science Foundation (NSF) Coordinated Multi-Layer Loss Recovery in TCP over Optical Burst-Switched (OBS) Networks Rajesh RC Bikram, Neal Charbonneau, and Vinod M. Vokkarane Department of Computer and Information Science, University

More information

******************************************************************* *******************************************************************

******************************************************************* ******************************************************************* ATM Forum Document Number: ATM_Forum/96-0518 Title: Performance of TCP over UBR and buffer requirements Abstract: We study TCP throughput and fairness over UBR for several buffer and maximum window sizes.

More information

RD-TCP: Reorder Detecting TCP

RD-TCP: Reorder Detecting TCP RD-TCP: Reorder Detecting TCP Arjuna Sathiaseelan and Tomasz Radzik Department of Computer Science, King s College London, Strand, London WC2R 2LS {arjuna,radzik}@dcs.kcl.ac.uk Abstract. Numerous studies

More information

Fall 2012: FCM 708 Bridge Foundation I

Fall 2012: FCM 708 Bridge Foundation I Fall 2012: FCM 708 Bridge Foundation I Prof. Shamik Sengupta Instructor s Website: http://jjcweb.jjay.cuny.edu/ssengupta/ Blackboard Website: https://bbhosted.cuny.edu/ Intro to Computer Networking Transport

More information

TCP. CSU CS557, Spring 2018 Instructor: Lorenzo De Carli (Slides by Christos Papadopoulos, remixed by Lorenzo De Carli)

TCP. CSU CS557, Spring 2018 Instructor: Lorenzo De Carli (Slides by Christos Papadopoulos, remixed by Lorenzo De Carli) TCP CSU CS557, Spring 2018 Instructor: Lorenzo De Carli (Slides by Christos Papadopoulos, remixed by Lorenzo De Carli) 1 Sources Fall and Stevens, TCP/IP Illustrated Vol. 1, 2nd edition Congestion Avoidance

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

Chapter 3 Transport Layer

Chapter 3 Transport Layer Chapter 3 Transport Layer Part c Congestion Control Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Transport Layer 3-1 Chapter 3 outline 3.1 transport-layer

More information

Report on Transport Protocols over Mismatched-rate Layer-1 Circuits with 802.3x Flow Control

Report on Transport Protocols over Mismatched-rate Layer-1 Circuits with 802.3x Flow Control Report on Transport Protocols over Mismatched-rate Layer-1 Circuits with 82.3x Flow Control Helali Bhuiyan, Mark McGinley, Tao Li, Malathi Veeraraghavan University of Virginia Email: {helali, mem5qf, taoli,

More information

TCP over Wireless Networks Using Multiple. Saad Biaz Miten Mehta Steve West Nitin H. Vaidya. Texas A&M University. College Station, TX , USA

TCP over Wireless Networks Using Multiple. Saad Biaz Miten Mehta Steve West Nitin H. Vaidya. Texas A&M University. College Station, TX , USA TCP over Wireless Networks Using Multiple Acknowledgements (Preliminary Version) Saad Biaz Miten Mehta Steve West Nitin H. Vaidya Department of Computer Science Texas A&M University College Station, TX

More information

Unequal Error Recovery Scheme for Multimedia Streaming in Application-Level Multicast

Unequal Error Recovery Scheme for Multimedia Streaming in Application-Level Multicast Unequal Error Recovery Scheme for Multimedia Streaming in Application-Level Multicast Joonhyoung Lee, Youngha Jung, and Yoonsik Choe Department of Electrical and Electronic Engineering, Yonsei University,

More information

Long-Haul TCP vs. Cascaded TCP

Long-Haul TCP vs. Cascaded TCP Long-Haul TP vs. ascaded TP W. Feng 1 Introduction In this work, we investigate the bandwidth and transfer time of long-haul TP versus cascaded TP [5]. First, we discuss the models for TP throughput. For

More information

Timestamp Retransmission Algorithm for TCP-Cherry over InterPlaNetary Internet

Timestamp Retransmission Algorithm for TCP-Cherry over InterPlaNetary Internet Network and Communication Technologies; Vol. 1, No. 2; 2012 ISSN 1927-064X E-ISSN 1927-0658 Published by Canadian Center of Science and Education Timestamp Retransmission Algorithm for TCP-Cherry over

More information

Congestion control mechanism of TCP for achieving predictable throughput

Congestion control mechanism of TCP for achieving predictable throughput Congestion control mechanism of TCP for achieving predictable throughput Kana Yamanegi Go Hasegawa Masayuki Murata Graduate School of Information Science and Technology, Osaka University 1-5 Yamadaoka,

More information

3. Evaluation of Selected Tree and Mesh based Routing Protocols

3. Evaluation of Selected Tree and Mesh based Routing Protocols 33 3. Evaluation of Selected Tree and Mesh based Routing Protocols 3.1 Introduction Construction of best possible multicast trees and maintaining the group connections in sequence is challenging even in

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

Performance study of a probabilistic multicast transport protocol

Performance study of a probabilistic multicast transport protocol Performance Evaluation 57 (2004) 177 198 Performance study of a probabilistic multicast transport protocol Öznur Özkasap Department of Computer Engineering, Koc University, 34450 Istanbul, Turkey Received

More information

CSCI Topics: Internet Programming Fall 2008

CSCI Topics: Internet Programming Fall 2008 CSCI 491-01 Topics: Internet Programming Fall 2008 Transport Layer Derek Leonard Hendrix College October 15, 2008 Original slides copyright 1996-2007 J.F Kurose and K.W. Ross 1 Chapter 3: Roadmap 3.1 Transport-layer

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

TCP Congestion Control in Wired and Wireless networks

TCP Congestion Control in Wired and Wireless networks TCP Congestion Control in Wired and Wireless networks Mohamadreza Najiminaini (mna28@cs.sfu.ca) Term Project ENSC 835 Spring 2008 Supervised by Dr. Ljiljana Trajkovic School of Engineering and Science

More information

Fairness Improvement of Multiple-Bottleneck Flow in Data Center Networks

Fairness Improvement of Multiple-Bottleneck Flow in Data Center Networks Fairness Improvement of Multiple-Bottleneck Flow in Data Center Networks Kenta Matsushima, Yuki Tanisawa and Miki Yamamoto Faculty of Engineering Science Kansai University 3-3-35 Yamate-cho, Suita-shi,

More information

THE INCREASING popularity of wireless networks

THE INCREASING popularity of wireless networks IEEE TRANSACTIONS ON WIRELESS COMMUNICATIONS, VOL. 3, NO. 2, MARCH 2004 627 Accurate Analysis of TCP on Channels With Memory and Finite Round-Trip Delay Michele Rossi, Member, IEEE, Raffaella Vicenzi,

More information