Week9 lec1

download Week9 lec1

of 40

  • date post

  • Category


  • view

  • download


Embed Size (px)


Computer Networks

Transcript of Week9 lec1

  • 1. Chapter 3 Transport Layer Computer Networking: A Top Down Approach 4th edition. Jim Kurose, Keith Ross Addison-Wesley, July 2007.
  • 2. Last Lecture TCP Congestion Control
  • 3. Todays Lecture Retransmission Timer in TCP Chapter 4 Network Layer
  • 4. TCP Congestion Control: Details Congestion Window Imposes a constraint on the rate at which a TCP sender can send traffic into the network The amount of unacknowledged data at a sender may not exceed the minimum of CongWin and RcvWindow LastByteSent-LastByteAcked min{CongWin, RcvWindow} CongWin is dynamic, function of perceived network congestion TCP takes arrival of ACKs as successful delivery Increases Congestion Window Self Clocking TCP uses ACKs to trigger its increase in congestion window size
  • 5. TCP Congestion Control Algorithm: Additive Increase Multiplicative Decrease (AIMD) Additive Increase Increase CongWin by 1 MSS until loss detected Multiplicative Decrease Cut CongWin in half after loss CongWin is 20 Kbytes, cut it to half after loss Continue to drop but not allowed to drop below 1 MSS congestion window 24 Kbytes 16 Kbytes 8 Kbytes time
  • 6. TCP Slow Start AIMD can take a long time Host A Host B RTT to ramp up to full capacity from scratch When connection begins, CongWin = 1 MSS Increase rate exponentially until first loss event: Double CongWin every RTT Done by incrementing CongWin for every ACK received Summary: Initial rate is slow but ramps up exponentially fast time
  • 7. Refinement: Inferring Loss 3 Duplicate ACKs Indicates network capable of delivering some segments. Timeout Indicates a more alarming congestion scenario.
  • 8. Refinement: Inferring Loss After timeout event CongWin instead set to 1 MSS Window then grows exponentially (enters slow start) Till it reaches one half of the value it had before the timeout Window then grows linearly (congestion avoidance) Threshold Value Determines the window size at which slow start will end After three duplicate ACKs: CongWin is cut in half Window then grows linearly Fast Retransmit and Fast Recovery
  • 9. Refinement: Inferring Loss TCP Tahoe For either events Cuts congestion window size to 1 MSS and enters slow start TCP Reno Uses Fast Retransmit and Fast Recovery for three Dupicate ACKs. Same as Tahoe for Timeout events.
  • 10. TCP Congestion Control
  • 11. TCP Round Trip Time and Timeout Retransmission Timer larger than the RTT How much larger? How would RTT be calculated? Sample RTT Sample RTT fluctuates from segment to segment Congestion in routers and varying load on end systems TCP never computes a Sample RTT for retransmitted segments. (Why?) EstimatedRTT TCP maintains an average of Sample RTT (RFC 2988) EstimatedRTT = (1- )*EstimatedRTT + *SampleRTT The new value of Estimated RTT is a weighted combination of the previous value of Estimated RTT plus new value of Sample RTT.
  • 12. TCP Round Trip Time and Timeout The recommended value of becomes is 0.125 in which case the formula EstimatedRTT = 0.875*EstimatedRTT + 0.125*SampleRTT RTT: gaia.cs.umass.edu to fantasia.eurecom.fr 350 RTT (milliseconds) 300 250 200 150 100 1 8 15 22 29 36 43 50 57 64 71 time (seconnds) SampleRTT Estimated RTT 78 85 92 99 106
  • 13. Setting the Timeout Interval The timeout interval should be greater than or equal to EstimatedRTT Not too large, delay to retransmit packet Desirable to set the timeout interval plus some safety margin. Estimate of how much SampleRTT deviates from EstimatedRTT DevRTT = (1- )*DevRTT + *|SampleRTT-EstimatedRTT| ( = 0.25) Then set timeout interval: TimeoutInterval = EstimatedRTT + 4*DevRTT For more details see RFC 2988 V. Jacobson, Congestion Avoidance and Control, in Proc. ACM SIGCOMM, pp. 314329, 1988.
  • 14. TCP Connection Management How TCP connection is established? Three Way handshake? How TCP connection is closed? Four Way handshake? Reading Assignment
  • 15. TCP Connection Management TCP server lifecycle TCP client lifecycle Reading Assignment
  • 16. Chapter 4 Network Layer Computer Networking: A Top Down Approach 4th edition. Jim Kurose, Keith Ross Addison-Wesley, July 2007.
  • 17. Network layer Transport segment from sending to receiving host On sending side encapsulates segments into datagrams On receiving side, delivers segments to transport layer Network layer protocols in routers Router examines header fields in all IP datagrams passing through it application transport network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical network network data link data link physical physical network data link physical network data link physical network data link physical network data link physical application transport network data link physical
  • 18. Two Key Network-Layer Functions Forwarding: Move packets from routers input to appropriate routers output Local action of transferring a packet Routing: Determine route taken by packets from source to destination. Network wide process that determines the end to end paths The algorithms that calculate these paths are referred to as routing algorithms
  • 19. Routing and Forwarding routing algorithm Forwarding Table o Router Forwards a packet by examining the destination address of the packet local forwarding table header value output link o Routing Algorithm value in arriving determines the values packets header that are inserted in the routers forwarding tables 0100 0101 0111 1001 0111 3 2 2 1 1 3 2
  • 20. Network Layer Host, router network layer functions: Transport layer: TCP, UDP Network layer IP protocol addressing conventions datagram format packet handling conventions Routing protocols path selection RIP, OSPF, BGP forwarding table ICMP protocol error reporting router signaling Link layer physical layer
  • 21. IP Address An IP address is a 32-bit address. The IP addresses are unique. The address space of IPv4 is 232 or 4,294,967,296.(more than 4 billion) Represented in binary or decimal
  • 22. CLASSFUL ADDRESSING IP addressing when started used the concept of classes. This architecture is called classful addressing. Organizations can be of different sizes Require varying numbers of IP addresses on the Internet. A system was devised whereby the IP address space would be divided into classes. Each class occupies some part of the whole address space Some classes are for Large networks on the Internet Smaller organizations Some classes are reserved for special purposes.
  • 23. IP Address Classes There are five class