1 / 14

RTT in TCP

RTT in TCP. 네트워크 세미나 전북대학교 분산처리 연구실 발표자 : 유석대 email: sdyu@cs.chonbuk.ac.kr 2000 년 11 월 13 일. Contents. Timeout and Retransmission -original algorithm Accurate measurement of RTT Karn ’ s Algorithm Timer Backoff Simple simulation of Karn ’ s. Timeout and Retransmission (I).

chelsi
Download Presentation

RTT in TCP

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. RTT in TCP 네트워크 세미나 전북대학교 분산처리 연구실 발표자: 유석대 email: sdyu@cs.chonbuk.ac.kr 2000년 11월 13일

  2. Contents • Timeout and Retransmission -original algorithm • Accurate measurement of RTT • Karn’s Algorithm • Timer Backoff • Simple simulation of Karn’s Chonbuk Univ. DCS Lab. RTT in TCP

  3. Timeout and Retransmission (I) • Handling timeout and retransmission • one of the mostimportant and complex idea in TCP • every time it sends a segment, TCP starts a timer and waits for a ack • Differences from other protocol • the main reason that TCP is intended for use in an internet environment • others are for the specific network, not for internet Chonbuk Univ. DCS Lab. RTT in TCP

  4. Timeout and Retransmission (II) • Impossible to know a priori how quickly ack will return to the source • it may travel across multiple intermediate networks through multiple router • TCP must accommodate both the vast differences in the time required to reach various destinations andthe changes in time required to reach a given destination as traffic load various Chonbuk Univ. DCS Lab. RTT in TCP

  5. Timeout and Retransmission (III) • Adaptive retransmission algorithm • original algorithm • TCP monitors the performance of each connection and deduces revises its timeout value • RTT= (*Old_RTT)+((1-)*New_RT) • where 01, RTT weighting factor • if  is closed to 1 : the weighted average immune to change • if  is closed to 0 : the weighted average respond to changes in delay very quickly Chonbuk Univ. DCS Lab. RTT in TCP

  6. Timeout and Retransmission (IV) • Adaptive retransmission algorithm… • Timeout = *RTT • where 1, timeout weighting factor • recommend :  = 2 • if  is closed to 1 • to detect packet loss quickly • but it will cause an unnecessary retransmission • if  is more than 2 • have many useless delay Chonbuk Univ. DCS Lab. RTT in TCP

  7. Accurate measurement of RTT (I) • In theory, measuring a RT sample is trivial • Rising complication • TCP uses a cumulative ack scheme • ack refer to data received, not to the instance of a specific datagram that carried the data => treat same origin and retransmit • acknowledgment ambiguity • if retransmission occur, and only one ack is received. • for original or for retransmission??? Chonbuk Univ. DCS Lab. RTT in TCP

  8. Accurate measurement of RTT (II) case 1: too long RTT, if that is for retransmission sender receiver case 2: too small RTT, if that is for original timeout retransmission ? Chonbuk Univ. DCS Lab. RTT in TCP

  9. Karn’s Algorithm (I) • If the original transmission and the most recent transmission both fail to provide accurate RTTs • what should TCP do? • The accepted answer • TCP should not update the RT estimate for retransmitted segments • Karn’s algorithm • avoids the problem of ambiguous ack • discard this ack’s RT Chonbuk Univ. DCS Lab. RTT in TCP

  10. Karn’s Algorithm (II) • Karn’s algorithm • only adjusting the estimated round trip for unambiguous ack • ack that arrive for segments that have only been transmitted once • but, one that merely ignores times from retransmitted segments, can lead to failure as well • this leads to never update the estimate and can generate the cyclic retransmission Chonbuk Univ. DCS Lab. RTT in TCP

  11. Timer Backoff • To remedy Karn’s algorithm • problem of no consideration to RTT for the retransmission • Timer backoff (only in retransmission) • if retransmission occur, TCP increase the timeoutwhile RTT value is unchanged • but have a upper bound • new_timeout = *timeout • where  is multiplicative factor • typically  = 2 Chonbuk Univ. DCS Lab. RTT in TCP

  12. 100 100 100 100 Simple simulation of Karn’s (I) adaptive timeout fixed timeout timeout timeout =0.6 =2 100 80 (80*0.6+80*0.4)*2 160 retransmission 90 (80*0.6+90*0.4)*2 168 retransmission 170 retransmission (122*0.6+170*0.4)*2 224 next segment Chonbuk Univ. DCS Lab. RTT in TCP

  13. Simple simulation of Karn’s (II) Karn’s + timer backoff Karn’s timeout timeout timeout =0.6 =2 100 =0.6 =2 100 80 80 (80*0.6+80*0.4)*2 160 (80*0.6+80*0.4)*2 160 90 90 (80*0.6+90*0.4)*2 168 (80*0.6+90*0.4)*2 168 time expire 170 time expire 170 168 retransmission 168*2 336 168 retransmission do not update!! 336 next segment next segment Chonbuk Univ. DCS Lab. RTT in TCP

  14. Additional Algorithm • Jacobson/Karels algorithm • DIFF=Sample – Old_RTT • Smoothed_RTT=Old_RTT + *DIFF • where 0  1, controls how quickly the new sample affects the weighted average • DEV=Old_DEV + (|DIFF|-Old_DEV) • DEV is the estimated mean deviation • Timeout = Smoothed_RTT +*DEV • Where • chooses ,  to each be an inverse of a power of 2n, 1/23 or 1/22, and n=3 work well •  is begun with 2, it was changed to 4 in 4.4 BSD Chonbuk Univ. DCS Lab. RTT in TCP

More Related