TCP Plots - PowerPoint PPT Presentation

About This Presentation
Title:

TCP Plots

Description:

TCP Plots Slides originally from Williamson at Calgary Minor modifications are made – PowerPoint PPT presentation

Number of Views:108
Avg rating:3.0/5.0
Slides: 38
Provided by: DonT322
Category:
Tags: tcp | losses | packet | plots

less

Transcript and Presenter's Notes

Title: TCP Plots


1
TCP Plots
  • Slides originally from Williamson at Calgary
  • Minor modifications are made

2
Tutorial TCP 101
  • The Transmission Control Protocol (TCP) is the
    protocol that sends your data reliably
  • Used for email, Web, ftp, telnet, p2p,
  • Makes sure that data is received correctly right
    data, right order, exactly once
  • Detects and recovers from any problems that occur
    at the IP network layer
  • Mechanisms for reliable data transfer sequence
    numbers, acknowledgements, timers,
    retransmissions, flow control...

3
TCP 101 (Contd)
  • TCP is a connection-oriented protocol

YOUR DATA HERE
Web Client
Web Server
4
TCP 101 (Contd)
  • TCP slow-start and congestion avoidance

5
TCP 101 (Contd)
  • TCP slow-start and congestion avoidance

6
TCP 101 (Contd)
  • TCP slow-start and congestion avoidance

7
TCP 101 (Contd)
  • This (exponential growth) slow start process
    continues until either
  • packet loss after a brief recovery phase, you
    enter a (linear growth) congestion avoidance
    phase based on slow-start threshold found
  • limit reached slow-start threshold, or maximum
    advertised receive window size
  • all done terminate connection and go home

8
Tutorial TCP 201
  • There is a beautiful way to plot and visualize
    the dynamics of TCP behaviour
  • Called a TCP Sequence Number Plot
  • Plot packet events (data and acks) as points in
    2-D space, with time on the horizontal axis, and
    sequence number on the vertical axis
  • Example Consider a 14-packet transfer

9

Key X Data Packet Ack Packet
X

X

X

X

X
SeqNum

X

X
X


X

X

X

X

X

X
Time
10
So What?
  • What can it tell you?
  • Everything!!!

11

Key X Data Packet Ack Packet
X

X

X

X

X
SeqNum

X

X
X


X

X

X

X

X

X
Time
RTT
12

Key X Data Packet Ack Packet
X

X

X

X

X
SeqNum

X

X
X


X

X

X
TCP Seg. Size

X

X

X
Time
13

Key X Data Packet Ack Packet
X

X

X

X

X
SeqNum

X

X
X


X

X

X

X

X

X
Time
TCP Connection Duration
14

Key X Data Packet Ack Packet
X

X

X

X

X
SeqNum

X

X
X


Num Bytes Sent
X

X

X

X

X

X
Time
15

Key X Data Packet Ack Packet
X

X

X

X

X
SeqNum

X

X
Bytes
Avg Throughput (Bytes/Sec)
X


X

X

X

X

X

X
Sec
Time
16

Key X Data Packet Ack Packet
X

X

X

X

X
SeqNum
Access Network Bandwidth (Bytes/Sec)

X

X
X


X

X

X

X

X

X
Time
17

Key X Data Packet Ack Packet
X

X

X

X

X
SeqNum

X

X
X


X
Senders Flow Control Window Size

X

X

X

X

X
Time
18

Key X Data Packet Ack Packet
X

X

X

X

X
SeqNum

X

X
TCP Slow Start
X


X

X

X

X

X

X
Time
19

Key X Data Packet Ack Packet
X

X
X

X
X
SeqNum

X
X
X

X
Delayed ACK

X
X

X
X

X
Time
20
Key X Data Packet Ack Packet
X


X

X
Packet Loss
SeqNum

X

X
X


Duplicate ACK
X

X

X

X

X

X
Time
21
Cumulative ACK
Key X Data Packet Ack Packet

X
X


X

X
SeqNum

X

Retransmit
X
X


X

X

X

X

X

X
Time
22
Key X Data Packet Ack Packet

X
X


X

X
SeqNum

X

X
X


X

X

X

X

X

X
Time
RTO (Retranmission Timeout)
23
TCP 201 (Contd)
  • What happens when a packet loss occurs?
  • Quiz Time...
  • Consider a 14-packet Web document
  • For simplicity, consider only a single packet
    loss

24

Key X Data Packet Ack Packet
X

X

X

X

X
SeqNum

X

X
X


X

X

X

X

X

X
Time
25
?
Key X Data Packet Ack Packet

X

X

X

X
SeqNum

X

X
X


X

X

X

X

X

X
Time
26
Key X Data Packet Ack Packet

X

X

X

X
SeqNum

X

X
X


X

X

X

X

X

X
Time
27

Key X Data Packet Ack Packet
X

X

X

X

X
SeqNum

X

X
X


X

X

X

X

X

X
Time
28
Key X Data Packet Ack Packet
X
?

X

X

X
SeqNum

X

X
X


X

X

X

X

X

X
Time
29

Key X Data Packet Ack Packet
X
X


X

X

X
SeqNum

X

X
X


X

X

X

X

X

X
Time
30

Key X Data Packet Ack Packet
X

X

X

X

X
SeqNum

X

X
X


X

X

X

X

X

X
Time
31
Key X Data Packet Ack Packet
X
X
X
?

X
SeqNum

X

X
X


X

X

X

X

X

X
Time
32

Key X Data Packet Ack Packet
X
X
X
X




X
SeqNum

X

X
X


X

X

X

X

X

X
Time
33

Key X Data Packet Ack Packet
X

X

X

X

X
SeqNum

X

X
X


X

X

X

X

X

X
Time
34
Key X Data Packet Ack Packet
SeqNum
?

X

X
Time
35
Key X Data Packet Ack Packet
SeqNum

X

X
X
X



X

X
Time
36
TCP 201 (Contd)
  • Main observation
  • Not all packet losses are created equal
  • Losses early in the transfer have a huge adverse
    impact on the transfer latency
  • Losses near the end of the transfer always cost
    at least a retransmit timeout
  • Losses in the middle may or may not hurt,
    depending on congestion window size at the time
    of the loss

37
Congratulations!
  • You are now a TCP expert!
  • Or you are so confused now that you will finally
    take my advice and buy the TCP book and read
    through some chapters
Write a Comment
User Comments (0)
About PowerShow.com