TCP: Overview - PowerPoint PPT Presentation

1 / 14
About This Presentation
Title:

TCP: Overview

Description:

handshaking (exchange of control msgs) init's sender, receiver ... RST, SYN, FIN: connection estab (setup, teardown. commands) # bytes. rcvr willing. to accept ... – PowerPoint PPT presentation

Number of Views:43
Avg rating:3.0/5.0
Slides: 15
Provided by: jimk207
Category:
Tags: tcp | fin | overview

less

Transcript and Presenter's Notes

Title: TCP: Overview


1
TCP Overview
  • point-to-point
  • one sender, one receiver
  • reliable, in-order byte steam
  • no message boundaries
  • pipelined
  • TCP congestion and flow control set window size
  • send receive buffers
  • full duplex data
  • bi-directional data flow in same connection
  • MSS maximum segment size
  • connection-oriented
  • handshaking (exchange of control msgs) inits
    sender, receiver state before data exchange
  • flow controlled
  • sender will not overwhelm receiver

2
TCP segment structure
URG urgent data (generally not used)
counting by bytes of data (not segments!)
ACK ACK valid
PSH push data now (generally not used)
bytes rcvr willing to accept
RST, SYN, FIN connection estab (setup,
teardown commands)
Internet checksum (as in UDP)
3
TCP seq. s and ACKs
  • Seq. s
  • byte stream number of first byte in segments
    data
  • ACKs
  • seq of next byte expected from other side
  • cumulative ACK
  • Q how receiver handles out-of-order segments
  • A TCP spec doesnt say, - up to implementor

Host B
Host A
User types C
Seq42, ACK79, data C
host ACKs receipt of C, echoes back C
Seq79, ACK43, data C
host ACKs receipt of echoed C
Seq43, ACK80
simple telnet scenario
4
TCP Round Trip Time and Timeout
  • Q how to estimate RTT?
  • SampleRTT measured time from segment
    transmission until ACK receipt
  • ignore retransmissions
  • SampleRTT will vary, want estimated RTT
    smoother
  • average several recent measurements, not just
    current SampleRTT
  • Q how to set TCP timeout value?
  • longer than RTT
  • but RTT varies
  • too short premature timeout
  • unnecessary retransmissions
  • too long slow reaction to segment loss

5
TCP Round Trip Time and Timeout
EstimatedRTT (1- ?)EstimatedRTT ?SampleRTT
  • Exponential weighted moving average
  • influence of past sample decreases exponentially
    fast
  • typical value ? 0.125

6
Example RTT estimation
7
TCP Round Trip Time and Timeout
  • Setting the timeout
  • EstimtedRTT plus safety margin
  • large variation in EstimatedRTT -gt larger safety
    margin
  • first estimate of how much SampleRTT deviates
    from EstimatedRTT

DevRTT (1-?)DevRTT
?SampleRTT-EstimatedRTT (typically, ? 0.25)
Then set timeout interval
TimeoutInterval EstimatedRTT 4DevRTT
8
Principles of Congestion Control
  • Congestion
  • informally too many sources sending too much
    data too fast for network to handle
  • different from flow control!
  • manifestations
  • lost packets (buffer overflow at routers)
  • long delays (queueing in router buffers)
  • a top-10 problem!

9
Causes/costs of congestion scenario 1
  • two senders, two receivers
  • one router, infinite buffers
  • no retransmission
  • large delays when congested
  • maximum achievable throughput

10
Causes/costs of congestion scenario 2
  • one router, finite buffers
  • sender retransmission of lost packet

Host A
lout
lin original data
l'in original data, plus retransmitted data
Host B
finite shared output link buffers
11
Causes/costs of congestion scenario 2
  • always Host A knows when a
    buffer is free magically
  • perfect retransmission only when loss
  • retransmission of (timeout but not lost) packet
    makes larger (than perfect case) for same
  • costs of congestion
  • more work (retrans)
  • unneeded retransmissions link carries multiple
    copies of pkt

12
Causes/costs of congestion scenario 3
  • four senders
  • multihop paths
  • timeout/retransmit

Q what happens as and increase ?
lout
lin original data
Host B
l'in original data, plus retransmitted data
finite shared output link buffers
R4
R1
Host D
R2
Host C
R3
13
Causes/costs of congestion scenario 3
lout
  • Another cost of congestion
  • when packet dropped, any upstream transmission
    capacity used for that packet was wasted!

14
Approaches towards congestion control
Two broad approaches towards congestion control
  • Network-assisted congestion control
  • routers provide feedback to end systems
  • single bit indicating congestion
  • router informs the sender explicitly of the
    transmission rate it can support
  • End-end congestion control
  • no explicit feedback from network
  • congestion inferred from end-system observed
    loss, delay
  • approach taken by TCP
Write a Comment
User Comments (0)
About PowerShow.com