1 / 14

TCP Interactive Data Flow

TCP Interactive Data Flow. miyu. What’s talk about?. Transfer of data using TCP Interactive data |bulk data Delayed acknowledgments Nagle algorithm Window size advertisement. Bulk data || Interactive data. bulk data ftp, electronic mail, Usenet news…

peony
Download Presentation

TCP Interactive Data Flow

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. TCP Interactive Data Flow miyu

  2. What’s talk about? • Transfer of data using TCP • Interactive data |bulk data • Delayed acknowledgments • Nagle algorithm • Window size advertisement

  3. Bulk data || Interactive data • bulk data • ftp, electronic mail, Usenet news… • Tend to be full sized(normally 512 bytes) • Interactive data • telnet,rlogin… • Much smaller (90 % of packets less than 10bytes)

  4. Interactive Input client server data byte keystroke server ack for data byte echo of data byte echo display ack of echoed byte

  5. Flow of data typed “date\n” 1 0.0 bsdi.1023 > svr4.login: P 0:1(1) ack 1 win 4096 2 0.016497 (0.0165) svr4.login > bsdi.1023: P 1:2(1) ack 1 win 4096 3 0.139955 (0.1235) bsdi.1023 > svr4.login: . ack 2 win 4096 4 0.458037 (0.3181) bsdi.1023 > svr4.login: P 1:2(1) ack 2 win 4096 5 0.474386 (0.0163) svr4.login > bsdi.1023: P 2:3(1) ack 2 win 4096 6 0.539943 (0.0656) bsdi.1023 > svr4.login: . ack 3 win 4096 7 0.814582 (0.2746) bsdi.1023 > svr4.login: P 2:3(1) ack 3 win 4096 8 0.831108 (0.0165) svr4.login > bsdi.1023: P 3:4(1) ack 3 win 4096 9 0.940112 (0.1090) bsdi.1023 > svr4.login: . ack 4 win 4096 10 1.191287 (0.2512) bsdi.1023 > svr4.login: P 3:4(1) ack 4 win 4096 11 1.207701 (0.0164) svr4.login > bsdi.1023: P 4:5(1) ack 4 win 4096 12 1.339994 (0.1323) bsdi.1023 > svr4.login: . ack 5 win 4096 13 1.680646 (0.3407) bsdi.1023 > svr4.login: P 4:5(1) ack 5 win 4096 14 1.697977 (0.0173) svr4.login > bsdi.1023: P 5:7(2) ack 5 win 4096 15 1.739974 (0.0420) bsdi.1023 > svr4.login: . ack 7 win 4096 16 1.799841 (0.0599) svr4.login > bsdi.1023: P 7:37(30) ack 5 win 4096 17 1.940176 (0.1403) bsdi.1023 > svr4.login: . ack 37 win 4096 18 1.944338 (0.0042) svr4.login > bsdi.1023: P 37:44(7) ack 5 win 4096 19 2.140110 (0.1958) bsdi.1023 > svr4.login: . ack 44 win 4096

  6. Delayed Acknowledgments 1 PSH 0:1 ack 1 (d) 0.0 2 PSH 1:2 (1) ack 1 (echo d) 0..16497(0.0165) Delayed ack{ ack 2 0.139955(0.1235)* 3 0.4580378(0.3181) 4 PSH 1:2 (1) ack 2 (a) PSH 1:2 (1)ack 2 (echo a) 0.47386(0.0163) 5 Delayed ack{ 0.539943(0.0656)* 6 ack 3 PSH 2:3 (1) ack 3 (t) 0.814582(0.2746) 7 8 PSH 1:2 (1)ack 2 (echo a) 0.831108(0.0165) Delayed ack{ ack 4 0.940112(0.1090)* 9

  7. Nagle algorithm • RFC 896 • solution of tinygrams congestion on wide area networks(Simple and Elegant)

  8. Nagle algorithm • Have only one outstanding small segment that has not yet been ackonwleged • Small amounts of data are collected by TCP • sent in a single segment when the acknowledgement arrives • Self-clocking • The faster the ACKs come back,the faster the data is sent… • On a slow WAN(desired to reduce the number of tinygrans),fewer segments are sent

  9. When the RTT incleases…

  10. Disabling the Nagle algorithm • When small message(and mouse movements) must be deliverd • ex)X Windows System server • Typing one of the terminal’s special function keys during an interactive login • Normally generate multiple bytes of data • Often beginning with “ESC” (ASCII)

  11. PSH 1:2 (1)ack 2 type F1 PSH 2:3(1)ack2 PSH 3:4(1)ack 2 PSH 2:5(3)ack 3 lost PSH 5:6(1)ack 4 ack 2 Timeout and retransmisson PSH 2:6(4)ack 4 ack 6 PSH 4:5(1)ack 6 type F2 PSH 5:6(1)ack 6 PSH 6:7(1)ack 6 F2 F1 PSH 6:8(3)ack 5 F2echo F1echo PSH 6:8(1)ack 7 ack 10 N I ESC M [ ESC N [ ESC M [ ESC ^ [ [ M ^ [ [ N

  12. Window Size Advertisements • Why Segment 5 advertises a window of 4095 bytes? • Still 1 byte in the TCP buffer for the application to read. • When the client TCP sends the buffered data… • Clienthad a chance to read the data from the server • Client’s advertised window is less the 4096

  13. Summary • Interactive data • Nagle algorithm • Disabling the Nagle algorithm

  14. END Va bena?

More Related