SlideShare a Scribd company logo
TCP"
               Reno, NewReno, SACK


4 September 2009
   CS5229, Semester 1, 2009/10
   1
TCP Reno


4 September 2009
    CS5229, Semester 1, 2009/10
   2
14
                                                   cwnd
   ssthresh
     12

     10

      8

      6

      4

      2

      0

4 September 2009
   CS5229, Semester 1, 2009/10
                       3
new ack:"
 if (cwnd < sstresh)"
    cwnd += 1"
 else"
    cwnd += 1/cwnd
4 September 2009
   CS5229, Semester 1, 2009/10
   5
timeout:"
 retransmit 1st unacked"
 ssthresh = cwnd/2"
 cwnd = 1"

4 September 2009
   CS5229, Semester 1, 2009/10
   6
3rd  duplicate ACK:"
 fast retransmission"
  (ie, retransmit 1st unack) "
 fast recovery"
  (details today)"
 ssthresh = cwnd = cwnd/2
4 September 2009
   CS5229, Semester 1, 2009/10
   7
TCP’s rule"

             send more packets if "
                L + cwnd > H"

              [ L .. H-1 ] are outstanding packets     
4 September 2009
       CS5229, Semester 1, 2009/10
       10
4 September 2009
   CS5229, Semester 1, 2009/10
   11
Data Packets


     ACK Packets 
     (received up to this seq number)


     Congestion Window


Sequence
Number




                                                                        Time
4 September 2009
                        CS5229, Semester 1, 2009/10
           12
3rd dup ack:"
 retransmit 1st unacked"
 ssthresh = cwnd/2"
 cwnd = cwnd/2

4 September 2009
   CS5229, Semester 1, 2009/10
   13
Incorrectly clamping the congestion window
                    too soon (without fast recovery)




X


4 September 2009
             CS5229, Semester 1, 2009/10
        14
fast recovery:"

 keep the pipe occupied"


4 September 2009
   CS5229, Semester 1, 2009/10
   15
X


4 September 2009
   CS5229, Semester 1, 2009/10
   16
4 September 2009
   CS5229, Semester 1, 2009/10
   17
X

X


     4 September 2009
   CS5229, Semester 1, 2009/10
   18
TCP Reno timeout with
 multiple losses in a window


4 September 2009
   CS5229, Semester 1, 2009/10
   19
TCP NewReno


4 September 2009
   CS5229, Semester 1, 2009/10
   20
X
X




     4 September 2009
   CS5229, Semester 1, 2009/10
   21
4 September 2009
   CS5229, Semester 1, 2009/10
   22
3rd dup ack:"
 retransmit 1st unacked"
 ssthresh = cwnd/2"
 cwnd = cwnd/2 + 3"
 remember highest 
4 September 2009
   CS5229, Semester 1, 2009/10
   25
“complete” ack:"
 (all  are acked) "
 cwnd = ssthresh

4 September 2009
   CS5229, Semester 1, 2009/10
   26
“partial” ack:"
 (acknowledge n packets)"
 retransmit"
 cwnd = cwnd - n + 1

4 September 2009
   CS5229, Semester 1, 2009/10
   27
Note: RFC2581/RFC2582 give the
 accurate/gory details. Simplified version
 is presented here (eg. cwnd vs FlightSize,
 update of cwnd upon partial ACK).



4 September 2009
   CS5229, Semester 1, 2009/10
   29
What does a dup
             ACK tell us?

4 September 2009
   CS5229, Semester 1, 2009/10
   30
“Coarse Feedback”


4 September 2009
   CS5229, Semester 1, 2009/10
   31
TCP SACK


4 September 2009
    CS5229, Semester 1, 2009/10
   32
Use TCP header
         options to report
       received segments.
4 September 2009
   CS5229, Semester 1, 2009/10
   33
SACK Blocks:"

   1st block - report most recently
   received segments"

   subsequent blocks - repeat most
   recent previous blocks
4 September 2009
   CS5229, Semester 1, 2009/10
   34
pipe: num of outstanding
 packets in the pipe."

 send only if pipe < cwnd

4 September 2009
   CS5229, Semester 1, 2009/10
   35
scoreboard: which
 packets have been
 received?

4 September 2009
   CS5229, Semester 1, 2009/10
   36
X

X


     4 September 2009
   CS5229, Semester 1, 2009/10
   37
3rd dup ack:"
 pipe = cwnd - 3"
 retransmit 1st unacked"
 ssthresh = cwnd/2"
 cwnd = cwnd/2 + 3
4 September 2009
   CS5229, Semester 1, 2009/10
   38
subsequent dup ack:"
 cwnd++"
 pipe--"

 if pipe < cwnd"
  send packet, pipe++
4 September 2009
   CS5229, Semester 1, 2009/10
   39
“partial” ack:"
 retransmit"
 cwnd = cwnd - n + 1"
 pipe -= 2"
 if pipe < cwnd"
  send packet, pipe++
4 September 2009
   CS5229, Semester 1, 2009/10
   40
Idea of SACK:"

 Which packet has left the network?"
 Where is the gap?"

 Decouple when to send and what to
 send.
4 September 2009
   CS5229, Semester 1, 2009/10
   43
TCP SACK recovers faster
 than NewReno with
 multiple losses in a window.

4 September 2009
   CS5229, Semester 1, 2009/10
   44
Deployment


4 September 2009
     CS5229, Semester 1, 2009/10
   57
Feb 2004


                                                            NewReno
                                                            Reno
                           8%
                              Tahoe
                    15%




                                              77%




4 September 2009
            CS5229, Semester 1, 2009/10
              58
70% "
                    SACK capable


4 September 2009
    CS5229, Semester 1, 2009/10
   59
TCP BIC/CUBIC"
                    Linux 2.6.x


4 September 2009
    CS5229, Semester 1, 2009/10
   63
Compound TCP "
                    MS Windows Vista


4 September 2009
       CS5229, Semester 1, 2009/10
   64
TFRC"
                     equation-based"
                    congestion control               

4 September 2009
     CS5229, Semester 1, 2009/10
       65
Not everyone uses TCP


4 September 2009
   CS5229, Semester 1, 2009/10
   66
UDP:"

                    Media streaming"
                       Gaming"
                         VoIP
4 September 2009
      CS5229, Semester 1, 2009/10
   67
Why not congestion controlled?"

 1. UDP has low delay, no need
          full reliability. UDP "
     is not congestion controlled. 
4 September 2009
   CS5229, Semester 1, 2009/10
   68
Why not congestion controlled?"

2. No incentive. OTOH, there
 are incentives NOT to use
    congestion control. 
4 September 2009
   CS5229, Semester 1, 2009/10
   69
Sally Floyd, h+p://www.icir.org/floyd/tcp_unfriendly.html 
4 September 2009
         CS5229, Semester 1, 2009/10
          70
“Unresponsive Flows”


4 September 2009
   CS5229, Semester 1, 2009/10
   71
Bad: lead to unfairness
         and congestion collapse.


4 September 2009
   CS5229, Semester 1, 2009/10
   72
Unfairness: unresponsive
       flows consume more bandwidth
         than congestion controlled
                  flows.

4 September 2009
   CS5229, Semester 1, 2009/10
   73
Congestion Collapse:
        wasting bandwidth by sending
         packets that will be dropped


4 September 2009
   CS5229, Semester 1, 2009/10
   77
Today: "
                      a TCP-friendly"
                    unreliable protocol

4 September 2009
        CS5229, Semester 1, 2009/10
   78
Idea: "
      send at a rate that a TCP
         flow would send

4 September 2009
   CS5229, Semester 1, 2009/10
   79
we can do the AIMD-thing"
        at the source, or


4 September 2009
   CS5229, Semester 1, 2009/10
   80
4 September 2009
   CS5229, Semester 1, 2009/10
   81
equation-based "
                    congestion control


4 September 2009
       CS5229, Semester 1, 2009/10
   82
steady"
                        fair"
                    responsive

4 September 2009
    CS5229, Semester 1, 2009/10
   83
how to determine"
                          RTT"
                           tRTO"
                            p

4 September 2009
       CS5229, Semester 1, 2009/10
   84
p is not packet loss rate"
                   but "
             loss event rate

4 September 2009
   CS5229, Semester 1, 2009/10
   85
4 September 2009
   CS5229, Semester 1, 2009/10
   86
4 September 2009
   CS5229, Semester 1, 2009/10
   87
4 September 2009
   CS5229, Semester 1, 2009/10
   88
RTT can fluctuates


4 September 2009
       CS5229, Semester 1, 2009/10
   89
4 September 2009
   CS5229, Semester 1, 2009/10
   90
4 September 2009
   CS5229, Semester 1, 2009/10
   91
4 September 2009
   CS5229, Semester 1, 2009/10
   92
4 September 2009
   CS5229, Semester 1, 2009/10
   93
how to initialize?


4 September 2009
       CS5229, Semester 1, 2009/10
   94
slow start"
                    (until loss occur)"


      Tnow = min(2Tprev, 2Trecv)

4 September 2009
     CS5229, Semester 1, 2009/10
   95
no loss history, how?"

              solve p given T, RTT

4 September 2009
   CS5229, Semester 1, 2009/10
   96
4 September 2009
   CS5229, Semester 1, 2009/10
   97
TFRC is now part of
                    DCCP


4 September 2009
   CS5229, Semester 1, 2009/10
   98

More Related Content

Viewers also liked

Balls and-bins model app
Balls and-bins model appBalls and-bins model app
Balls and-bins model app
deawoo Kim
 
CS5229 Lecture 5: TCP and TRFC
CS5229 Lecture 5: TCP and TRFCCS5229 Lecture 5: TCP and TRFC
CS5229 Lecture 5: TCP and TRFCWei Tsang Ooi
 
Social and economical networks from (big-)data - Esteban Moro II
Social and economical networks from (big-)data - Esteban Moro IISocial and economical networks from (big-)data - Esteban Moro II
Social and economical networks from (big-)data - Esteban Moro II
Lake Como School of Advanced Studies
 
A tutorial in Connectome Analysis (3) - Marcus Kaiser
A tutorial in Connectome Analysis (3) - Marcus KaiserA tutorial in Connectome Analysis (3) - Marcus Kaiser
A tutorial in Connectome Analysis (3) - Marcus Kaiser
Lake Como School of Advanced Studies
 
TCP protocol flow control
TCP protocol flow control TCP protocol flow control
TCP protocol flow control
anuragjagetiya
 
Congetion Control.pptx
Congetion Control.pptxCongetion Control.pptx
Congetion Control.pptx
Naveen Dubey
 
Transmission Control Protocol (TCP)
Transmission Control Protocol (TCP)Transmission Control Protocol (TCP)
Transmission Control Protocol (TCP)
k33a
 
TCP- Transmission Control Protocol
TCP-  Transmission Control Protocol TCP-  Transmission Control Protocol
TCP- Transmission Control Protocol
Akhil .B
 
Tcp Congestion Avoidance
Tcp Congestion AvoidanceTcp Congestion Avoidance
Tcp Congestion Avoidance
Ram Dutt Shukla
 
TCP/IP Network ppt
TCP/IP Network pptTCP/IP Network ppt
TCP/IP Network pptextraganesh
 
Cubic
CubicCubic
Cubic
deawoo Kim
 
TCP Model
TCP ModelTCP Model
TCP Model
manojkum22
 
wimax Ppt for seminar
wimax Ppt for seminarwimax Ppt for seminar
wimax Ppt for seminar
Pratik Anand
 

Viewers also liked (16)

Balls and-bins model app
Balls and-bins model appBalls and-bins model app
Balls and-bins model app
 
Research paper
Research paperResearch paper
Research paper
 
CS5229 Lecture 5: TCP and TRFC
CS5229 Lecture 5: TCP and TRFCCS5229 Lecture 5: TCP and TRFC
CS5229 Lecture 5: TCP and TRFC
 
Social and economical networks from (big-)data - Esteban Moro II
Social and economical networks from (big-)data - Esteban Moro IISocial and economical networks from (big-)data - Esteban Moro II
Social and economical networks from (big-)data - Esteban Moro II
 
A tutorial in Connectome Analysis (3) - Marcus Kaiser
A tutorial in Connectome Analysis (3) - Marcus KaiserA tutorial in Connectome Analysis (3) - Marcus Kaiser
A tutorial in Connectome Analysis (3) - Marcus Kaiser
 
TCP protocol flow control
TCP protocol flow control TCP protocol flow control
TCP protocol flow control
 
Congetion Control.pptx
Congetion Control.pptxCongetion Control.pptx
Congetion Control.pptx
 
Transmission Control Protocol (TCP)
Transmission Control Protocol (TCP)Transmission Control Protocol (TCP)
Transmission Control Protocol (TCP)
 
TCP- Transmission Control Protocol
TCP-  Transmission Control Protocol TCP-  Transmission Control Protocol
TCP- Transmission Control Protocol
 
TCP/IP(networking)
TCP/IP(networking)TCP/IP(networking)
TCP/IP(networking)
 
Tcp Congestion Avoidance
Tcp Congestion AvoidanceTcp Congestion Avoidance
Tcp Congestion Avoidance
 
TCP/IP Network ppt
TCP/IP Network pptTCP/IP Network ppt
TCP/IP Network ppt
 
Cubic
CubicCubic
Cubic
 
TCP Model
TCP ModelTCP Model
TCP Model
 
Congestion control
Congestion controlCongestion control
Congestion control
 
wimax Ppt for seminar
wimax Ppt for seminarwimax Ppt for seminar
wimax Ppt for seminar
 

More from Wei Tsang Ooi

SIGMM Education Effort Presentation at Business Meeting
SIGMM Education Effort Presentation at Business MeetingSIGMM Education Effort Presentation at Business Meeting
SIGMM Education Effort Presentation at Business MeetingWei Tsang Ooi
 
The Computer Science behind YouTube
The Computer Science behind YouTubeThe Computer Science behind YouTube
The Computer Science behind YouTube
Wei Tsang Ooi
 
CS4344 09/10 Lecture 10: Transport Protocol for Networked Games
CS4344 09/10 Lecture 10: Transport Protocol for Networked GamesCS4344 09/10 Lecture 10: Transport Protocol for Networked Games
CS4344 09/10 Lecture 10: Transport Protocol for Networked GamesWei Tsang Ooi
 
CS4344 09/10 Lecture 9: Characteristics of Networked Game Traffic
CS4344 09/10 Lecture 9: Characteristics of Networked Game TrafficCS4344 09/10 Lecture 9: Characteristics of Networked Game Traffic
CS4344 09/10 Lecture 9: Characteristics of Networked Game TrafficWei Tsang Ooi
 
CS4344 09/10 Lecture 8: Hybrid Architecture
CS4344 09/10 Lecture 8: Hybrid ArchitectureCS4344 09/10 Lecture 8: Hybrid Architecture
CS4344 09/10 Lecture 8: Hybrid ArchitectureWei Tsang Ooi
 
CS4344 09/10 Lecture 7: P2P Interest Management
CS4344 09/10 Lecture 7: P2P Interest ManagementCS4344 09/10 Lecture 7: P2P Interest Management
CS4344 09/10 Lecture 7: P2P Interest ManagementWei Tsang Ooi
 
CS4344 09/10 Lecture 6: P2P Synchronization
CS4344 09/10 Lecture 6: P2P SynchronizationCS4344 09/10 Lecture 6: P2P Synchronization
CS4344 09/10 Lecture 6: P2P SynchronizationWei Tsang Ooi
 
Cs4344 09/10 Lecture 5: Interest Management
Cs4344 09/10 Lecture 5: Interest ManagementCs4344 09/10 Lecture 5: Interest Management
Cs4344 09/10 Lecture 5: Interest ManagementWei Tsang Ooi
 
CS4344 09/10 Lecture 3: Dead Reckoning and Local Perception Filter
CS4344 09/10 Lecture 3: Dead Reckoning and Local Perception FilterCS4344 09/10 Lecture 3: Dead Reckoning and Local Perception Filter
CS4344 09/10 Lecture 3: Dead Reckoning and Local Perception FilterWei Tsang Ooi
 
CS4344 09/10 Lecture 2: Consistency
CS4344 09/10 Lecture 2: ConsistencyCS4344 09/10 Lecture 2: Consistency
CS4344 09/10 Lecture 2: ConsistencyWei Tsang Ooi
 
CS4344 09/10 Lecture 1: Introduction
CS4344 09/10 Lecture 1: IntroductionCS4344 09/10 Lecture 1: Introduction
CS4344 09/10 Lecture 1: IntroductionWei Tsang Ooi
 
CS5229 09/10 Lecture 11: DNS
CS5229 09/10 Lecture 11: DNSCS5229 09/10 Lecture 11: DNS
CS5229 09/10 Lecture 11: DNSWei Tsang Ooi
 
CS5229 09/10 Lecture 10: Internet Routing
CS5229 09/10 Lecture 10: Internet RoutingCS5229 09/10 Lecture 10: Internet Routing
CS5229 09/10 Lecture 10: Internet RoutingWei Tsang Ooi
 
CS5229 09/10 Lecture 9: Internet Packet Dynamics
CS5229 09/10 Lecture 9: Internet Packet DynamicsCS5229 09/10 Lecture 9: Internet Packet Dynamics
CS5229 09/10 Lecture 9: Internet Packet DynamicsWei Tsang Ooi
 
CS5229 09/10 Lecture 6: Simulation
CS5229 09/10 Lecture 6: SimulationCS5229 09/10 Lecture 6: Simulation
CS5229 09/10 Lecture 6: SimulationWei Tsang Ooi
 
Lecture 0: Introduction to CS5229
Lecture 0: Introduction to CS5229Lecture 0: Introduction to CS5229
Lecture 0: Introduction to CS5229Wei Tsang Ooi
 
Lecture 1: Design Principles of the Internet
Lecture 1: Design Principles of the InternetLecture 1: Design Principles of the Internet
Lecture 1: Design Principles of the InternetWei Tsang Ooi
 
CS4344 Lecture 8: Hybrid Architecture
CS4344 Lecture 8: Hybrid ArchitectureCS4344 Lecture 8: Hybrid Architecture
CS4344 Lecture 8: Hybrid ArchitectureWei Tsang Ooi
 
CS4344 Lecture 10: Player Dynamics
CS4344 Lecture 10: Player DynamicsCS4344 Lecture 10: Player Dynamics
CS4344 Lecture 10: Player DynamicsWei Tsang Ooi
 

More from Wei Tsang Ooi (20)

SIGMM Education Effort Presentation at Business Meeting
SIGMM Education Effort Presentation at Business MeetingSIGMM Education Effort Presentation at Business Meeting
SIGMM Education Effort Presentation at Business Meeting
 
CS2106 Tutorial 2
CS2106 Tutorial 2CS2106 Tutorial 2
CS2106 Tutorial 2
 
The Computer Science behind YouTube
The Computer Science behind YouTubeThe Computer Science behind YouTube
The Computer Science behind YouTube
 
CS4344 09/10 Lecture 10: Transport Protocol for Networked Games
CS4344 09/10 Lecture 10: Transport Protocol for Networked GamesCS4344 09/10 Lecture 10: Transport Protocol for Networked Games
CS4344 09/10 Lecture 10: Transport Protocol for Networked Games
 
CS4344 09/10 Lecture 9: Characteristics of Networked Game Traffic
CS4344 09/10 Lecture 9: Characteristics of Networked Game TrafficCS4344 09/10 Lecture 9: Characteristics of Networked Game Traffic
CS4344 09/10 Lecture 9: Characteristics of Networked Game Traffic
 
CS4344 09/10 Lecture 8: Hybrid Architecture
CS4344 09/10 Lecture 8: Hybrid ArchitectureCS4344 09/10 Lecture 8: Hybrid Architecture
CS4344 09/10 Lecture 8: Hybrid Architecture
 
CS4344 09/10 Lecture 7: P2P Interest Management
CS4344 09/10 Lecture 7: P2P Interest ManagementCS4344 09/10 Lecture 7: P2P Interest Management
CS4344 09/10 Lecture 7: P2P Interest Management
 
CS4344 09/10 Lecture 6: P2P Synchronization
CS4344 09/10 Lecture 6: P2P SynchronizationCS4344 09/10 Lecture 6: P2P Synchronization
CS4344 09/10 Lecture 6: P2P Synchronization
 
Cs4344 09/10 Lecture 5: Interest Management
Cs4344 09/10 Lecture 5: Interest ManagementCs4344 09/10 Lecture 5: Interest Management
Cs4344 09/10 Lecture 5: Interest Management
 
CS4344 09/10 Lecture 3: Dead Reckoning and Local Perception Filter
CS4344 09/10 Lecture 3: Dead Reckoning and Local Perception FilterCS4344 09/10 Lecture 3: Dead Reckoning and Local Perception Filter
CS4344 09/10 Lecture 3: Dead Reckoning and Local Perception Filter
 
CS4344 09/10 Lecture 2: Consistency
CS4344 09/10 Lecture 2: ConsistencyCS4344 09/10 Lecture 2: Consistency
CS4344 09/10 Lecture 2: Consistency
 
CS4344 09/10 Lecture 1: Introduction
CS4344 09/10 Lecture 1: IntroductionCS4344 09/10 Lecture 1: Introduction
CS4344 09/10 Lecture 1: Introduction
 
CS5229 09/10 Lecture 11: DNS
CS5229 09/10 Lecture 11: DNSCS5229 09/10 Lecture 11: DNS
CS5229 09/10 Lecture 11: DNS
 
CS5229 09/10 Lecture 10: Internet Routing
CS5229 09/10 Lecture 10: Internet RoutingCS5229 09/10 Lecture 10: Internet Routing
CS5229 09/10 Lecture 10: Internet Routing
 
CS5229 09/10 Lecture 9: Internet Packet Dynamics
CS5229 09/10 Lecture 9: Internet Packet DynamicsCS5229 09/10 Lecture 9: Internet Packet Dynamics
CS5229 09/10 Lecture 9: Internet Packet Dynamics
 
CS5229 09/10 Lecture 6: Simulation
CS5229 09/10 Lecture 6: SimulationCS5229 09/10 Lecture 6: Simulation
CS5229 09/10 Lecture 6: Simulation
 
Lecture 0: Introduction to CS5229
Lecture 0: Introduction to CS5229Lecture 0: Introduction to CS5229
Lecture 0: Introduction to CS5229
 
Lecture 1: Design Principles of the Internet
Lecture 1: Design Principles of the InternetLecture 1: Design Principles of the Internet
Lecture 1: Design Principles of the Internet
 
CS4344 Lecture 8: Hybrid Architecture
CS4344 Lecture 8: Hybrid ArchitectureCS4344 Lecture 8: Hybrid Architecture
CS4344 Lecture 8: Hybrid Architecture
 
CS4344 Lecture 10: Player Dynamics
CS4344 Lecture 10: Player DynamicsCS4344 Lecture 10: Player Dynamics
CS4344 Lecture 10: Player Dynamics
 

Recently uploaded

Delivering Micro-Credentials in Technical and Vocational Education and Training
Delivering Micro-Credentials in Technical and Vocational Education and TrainingDelivering Micro-Credentials in Technical and Vocational Education and Training
Delivering Micro-Credentials in Technical and Vocational Education and Training
AG2 Design
 
Group Presentation 2 Economics.Ariana Buscigliopptx
Group Presentation 2 Economics.Ariana BuscigliopptxGroup Presentation 2 Economics.Ariana Buscigliopptx
Group Presentation 2 Economics.Ariana Buscigliopptx
ArianaBusciglio
 
DRUGS AND ITS classification slide share
DRUGS AND ITS classification slide shareDRUGS AND ITS classification slide share
DRUGS AND ITS classification slide share
taiba qazi
 
PCOS corelations and management through Ayurveda.
PCOS corelations and management through Ayurveda.PCOS corelations and management through Ayurveda.
PCOS corelations and management through Ayurveda.
Dr. Shivangi Singh Parihar
 
kitab khulasah nurul yaqin jilid 1 - 2.pptx
kitab khulasah nurul yaqin jilid 1 - 2.pptxkitab khulasah nurul yaqin jilid 1 - 2.pptx
kitab khulasah nurul yaqin jilid 1 - 2.pptx
datarid22
 
MATATAG CURRICULUM: ASSESSING THE READINESS OF ELEM. PUBLIC SCHOOL TEACHERS I...
MATATAG CURRICULUM: ASSESSING THE READINESS OF ELEM. PUBLIC SCHOOL TEACHERS I...MATATAG CURRICULUM: ASSESSING THE READINESS OF ELEM. PUBLIC SCHOOL TEACHERS I...
MATATAG CURRICULUM: ASSESSING THE READINESS OF ELEM. PUBLIC SCHOOL TEACHERS I...
NelTorrente
 
Assignment_4_ArianaBusciglio Marvel(1).docx
Assignment_4_ArianaBusciglio Marvel(1).docxAssignment_4_ArianaBusciglio Marvel(1).docx
Assignment_4_ArianaBusciglio Marvel(1).docx
ArianaBusciglio
 
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdfবাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
eBook.com.bd (প্রয়োজনীয় বাংলা বই)
 
Natural birth techniques - Mrs.Akanksha Trivedi Rama University
Natural birth techniques - Mrs.Akanksha Trivedi Rama UniversityNatural birth techniques - Mrs.Akanksha Trivedi Rama University
Natural birth techniques - Mrs.Akanksha Trivedi Rama University
Akanksha trivedi rama nursing college kanpur.
 
Chapter 4 - Islamic Financial Institutions in Malaysia.pptx
Chapter 4 - Islamic Financial Institutions in Malaysia.pptxChapter 4 - Islamic Financial Institutions in Malaysia.pptx
Chapter 4 - Islamic Financial Institutions in Malaysia.pptx
Mohd Adib Abd Muin, Senior Lecturer at Universiti Utara Malaysia
 
Advantages and Disadvantages of CMS from an SEO Perspective
Advantages and Disadvantages of CMS from an SEO PerspectiveAdvantages and Disadvantages of CMS from an SEO Perspective
Advantages and Disadvantages of CMS from an SEO Perspective
Krisztián Száraz
 
S1-Introduction-Biopesticides in ICM.pptx
S1-Introduction-Biopesticides in ICM.pptxS1-Introduction-Biopesticides in ICM.pptx
S1-Introduction-Biopesticides in ICM.pptx
tarandeep35
 
"Protectable subject matters, Protection in biotechnology, Protection of othe...
"Protectable subject matters, Protection in biotechnology, Protection of othe..."Protectable subject matters, Protection in biotechnology, Protection of othe...
"Protectable subject matters, Protection in biotechnology, Protection of othe...
SACHIN R KONDAGURI
 
Digital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental DesignDigital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental Design
amberjdewit93
 
Normal Labour/ Stages of Labour/ Mechanism of Labour
Normal Labour/ Stages of Labour/ Mechanism of LabourNormal Labour/ Stages of Labour/ Mechanism of Labour
Normal Labour/ Stages of Labour/ Mechanism of Labour
Wasim Ak
 
Best Digital Marketing Institute In NOIDA
Best Digital Marketing Institute In NOIDABest Digital Marketing Institute In NOIDA
Best Digital Marketing Institute In NOIDA
deeptiverma2406
 
Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...
Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...
Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...
National Information Standards Organization (NISO)
 
Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...
Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...
Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...
Dr. Vinod Kumar Kanvaria
 
How to Build a Module in Odoo 17 Using the Scaffold Method
How to Build a Module in Odoo 17 Using the Scaffold MethodHow to Build a Module in Odoo 17 Using the Scaffold Method
How to Build a Module in Odoo 17 Using the Scaffold Method
Celine George
 
MERN Stack Developer Roadmap By ScholarHat PDF
MERN Stack Developer Roadmap By ScholarHat PDFMERN Stack Developer Roadmap By ScholarHat PDF
MERN Stack Developer Roadmap By ScholarHat PDF
scholarhattraining
 

Recently uploaded (20)

Delivering Micro-Credentials in Technical and Vocational Education and Training
Delivering Micro-Credentials in Technical and Vocational Education and TrainingDelivering Micro-Credentials in Technical and Vocational Education and Training
Delivering Micro-Credentials in Technical and Vocational Education and Training
 
Group Presentation 2 Economics.Ariana Buscigliopptx
Group Presentation 2 Economics.Ariana BuscigliopptxGroup Presentation 2 Economics.Ariana Buscigliopptx
Group Presentation 2 Economics.Ariana Buscigliopptx
 
DRUGS AND ITS classification slide share
DRUGS AND ITS classification slide shareDRUGS AND ITS classification slide share
DRUGS AND ITS classification slide share
 
PCOS corelations and management through Ayurveda.
PCOS corelations and management through Ayurveda.PCOS corelations and management through Ayurveda.
PCOS corelations and management through Ayurveda.
 
kitab khulasah nurul yaqin jilid 1 - 2.pptx
kitab khulasah nurul yaqin jilid 1 - 2.pptxkitab khulasah nurul yaqin jilid 1 - 2.pptx
kitab khulasah nurul yaqin jilid 1 - 2.pptx
 
MATATAG CURRICULUM: ASSESSING THE READINESS OF ELEM. PUBLIC SCHOOL TEACHERS I...
MATATAG CURRICULUM: ASSESSING THE READINESS OF ELEM. PUBLIC SCHOOL TEACHERS I...MATATAG CURRICULUM: ASSESSING THE READINESS OF ELEM. PUBLIC SCHOOL TEACHERS I...
MATATAG CURRICULUM: ASSESSING THE READINESS OF ELEM. PUBLIC SCHOOL TEACHERS I...
 
Assignment_4_ArianaBusciglio Marvel(1).docx
Assignment_4_ArianaBusciglio Marvel(1).docxAssignment_4_ArianaBusciglio Marvel(1).docx
Assignment_4_ArianaBusciglio Marvel(1).docx
 
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdfবাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
 
Natural birth techniques - Mrs.Akanksha Trivedi Rama University
Natural birth techniques - Mrs.Akanksha Trivedi Rama UniversityNatural birth techniques - Mrs.Akanksha Trivedi Rama University
Natural birth techniques - Mrs.Akanksha Trivedi Rama University
 
Chapter 4 - Islamic Financial Institutions in Malaysia.pptx
Chapter 4 - Islamic Financial Institutions in Malaysia.pptxChapter 4 - Islamic Financial Institutions in Malaysia.pptx
Chapter 4 - Islamic Financial Institutions in Malaysia.pptx
 
Advantages and Disadvantages of CMS from an SEO Perspective
Advantages and Disadvantages of CMS from an SEO PerspectiveAdvantages and Disadvantages of CMS from an SEO Perspective
Advantages and Disadvantages of CMS from an SEO Perspective
 
S1-Introduction-Biopesticides in ICM.pptx
S1-Introduction-Biopesticides in ICM.pptxS1-Introduction-Biopesticides in ICM.pptx
S1-Introduction-Biopesticides in ICM.pptx
 
"Protectable subject matters, Protection in biotechnology, Protection of othe...
"Protectable subject matters, Protection in biotechnology, Protection of othe..."Protectable subject matters, Protection in biotechnology, Protection of othe...
"Protectable subject matters, Protection in biotechnology, Protection of othe...
 
Digital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental DesignDigital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental Design
 
Normal Labour/ Stages of Labour/ Mechanism of Labour
Normal Labour/ Stages of Labour/ Mechanism of LabourNormal Labour/ Stages of Labour/ Mechanism of Labour
Normal Labour/ Stages of Labour/ Mechanism of Labour
 
Best Digital Marketing Institute In NOIDA
Best Digital Marketing Institute In NOIDABest Digital Marketing Institute In NOIDA
Best Digital Marketing Institute In NOIDA
 
Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...
Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...
Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...
 
Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...
Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...
Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...
 
How to Build a Module in Odoo 17 Using the Scaffold Method
How to Build a Module in Odoo 17 Using the Scaffold MethodHow to Build a Module in Odoo 17 Using the Scaffold Method
How to Build a Module in Odoo 17 Using the Scaffold Method
 
MERN Stack Developer Roadmap By ScholarHat PDF
MERN Stack Developer Roadmap By ScholarHat PDFMERN Stack Developer Roadmap By ScholarHat PDF
MERN Stack Developer Roadmap By ScholarHat PDF
 

Lecture 4: TCP and TFRC

  • 1. TCP" Reno, NewReno, SACK 4 September 2009 CS5229, Semester 1, 2009/10 1
  • 2. TCP Reno 4 September 2009 CS5229, Semester 1, 2009/10 2
  • 3. 14 cwnd ssthresh 12 10 8 6 4 2 0 4 September 2009 CS5229, Semester 1, 2009/10 3
  • 4. new ack:" if (cwnd < sstresh)" cwnd += 1" else" cwnd += 1/cwnd 4 September 2009 CS5229, Semester 1, 2009/10 5
  • 5. timeout:" retransmit 1st unacked" ssthresh = cwnd/2" cwnd = 1" 4 September 2009 CS5229, Semester 1, 2009/10 6
  • 6. 3rd duplicate ACK:" fast retransmission" (ie, retransmit 1st unack) " fast recovery" (details today)" ssthresh = cwnd = cwnd/2 4 September 2009 CS5229, Semester 1, 2009/10 7
  • 7. TCP’s rule" send more packets if " L + cwnd > H" [ L .. H-1 ] are outstanding packets 4 September 2009 CS5229, Semester 1, 2009/10 10
  • 8. 4 September 2009 CS5229, Semester 1, 2009/10 11
  • 9. Data Packets ACK Packets (received up to this seq number) Congestion Window Sequence Number Time 4 September 2009 CS5229, Semester 1, 2009/10 12
  • 10. 3rd dup ack:" retransmit 1st unacked" ssthresh = cwnd/2" cwnd = cwnd/2 4 September 2009 CS5229, Semester 1, 2009/10 13
  • 11. Incorrectly clamping the congestion window too soon (without fast recovery) X 4 September 2009 CS5229, Semester 1, 2009/10 14
  • 12. fast recovery:" keep the pipe occupied" 4 September 2009 CS5229, Semester 1, 2009/10 15
  • 13. X 4 September 2009 CS5229, Semester 1, 2009/10 16
  • 14. 4 September 2009 CS5229, Semester 1, 2009/10 17
  • 15. X X 4 September 2009 CS5229, Semester 1, 2009/10 18
  • 16. TCP Reno timeout with multiple losses in a window 4 September 2009 CS5229, Semester 1, 2009/10 19
  • 17. TCP NewReno 4 September 2009 CS5229, Semester 1, 2009/10 20
  • 18. X X 4 September 2009 CS5229, Semester 1, 2009/10 21
  • 19. 4 September 2009 CS5229, Semester 1, 2009/10 22
  • 20. 3rd dup ack:" retransmit 1st unacked" ssthresh = cwnd/2" cwnd = cwnd/2 + 3" remember highest 4 September 2009 CS5229, Semester 1, 2009/10 25
  • 21. “complete” ack:" (all are acked) " cwnd = ssthresh 4 September 2009 CS5229, Semester 1, 2009/10 26
  • 22. “partial” ack:" (acknowledge n packets)" retransmit" cwnd = cwnd - n + 1 4 September 2009 CS5229, Semester 1, 2009/10 27
  • 23. Note: RFC2581/RFC2582 give the accurate/gory details. Simplified version is presented here (eg. cwnd vs FlightSize, update of cwnd upon partial ACK). 4 September 2009 CS5229, Semester 1, 2009/10 29
  • 24. What does a dup ACK tell us? 4 September 2009 CS5229, Semester 1, 2009/10 30
  • 25. “Coarse Feedback” 4 September 2009 CS5229, Semester 1, 2009/10 31
  • 26. TCP SACK 4 September 2009 CS5229, Semester 1, 2009/10 32
  • 27. Use TCP header options to report received segments. 4 September 2009 CS5229, Semester 1, 2009/10 33
  • 28. SACK Blocks:" 1st block - report most recently received segments" subsequent blocks - repeat most recent previous blocks 4 September 2009 CS5229, Semester 1, 2009/10 34
  • 29. pipe: num of outstanding packets in the pipe." send only if pipe < cwnd 4 September 2009 CS5229, Semester 1, 2009/10 35
  • 30. scoreboard: which packets have been received? 4 September 2009 CS5229, Semester 1, 2009/10 36
  • 31. X X 4 September 2009 CS5229, Semester 1, 2009/10 37
  • 32. 3rd dup ack:" pipe = cwnd - 3" retransmit 1st unacked" ssthresh = cwnd/2" cwnd = cwnd/2 + 3 4 September 2009 CS5229, Semester 1, 2009/10 38
  • 33. subsequent dup ack:" cwnd++" pipe--" if pipe < cwnd" send packet, pipe++ 4 September 2009 CS5229, Semester 1, 2009/10 39
  • 34. “partial” ack:" retransmit" cwnd = cwnd - n + 1" pipe -= 2" if pipe < cwnd" send packet, pipe++ 4 September 2009 CS5229, Semester 1, 2009/10 40
  • 35. Idea of SACK:" Which packet has left the network?" Where is the gap?" Decouple when to send and what to send. 4 September 2009 CS5229, Semester 1, 2009/10 43
  • 36. TCP SACK recovers faster than NewReno with multiple losses in a window. 4 September 2009 CS5229, Semester 1, 2009/10 44
  • 37. Deployment 4 September 2009 CS5229, Semester 1, 2009/10 57
  • 38. Feb 2004 NewReno Reno 8% Tahoe 15% 77% 4 September 2009 CS5229, Semester 1, 2009/10 58
  • 39. 70% " SACK capable 4 September 2009 CS5229, Semester 1, 2009/10 59
  • 40. TCP BIC/CUBIC" Linux 2.6.x 4 September 2009 CS5229, Semester 1, 2009/10 63
  • 41. Compound TCP " MS Windows Vista 4 September 2009 CS5229, Semester 1, 2009/10 64
  • 42. TFRC" equation-based" congestion control 4 September 2009 CS5229, Semester 1, 2009/10 65
  • 43. Not everyone uses TCP 4 September 2009 CS5229, Semester 1, 2009/10 66
  • 44. UDP:" Media streaming" Gaming" VoIP 4 September 2009 CS5229, Semester 1, 2009/10 67
  • 45. Why not congestion controlled?" 1. UDP has low delay, no need full reliability. UDP " is not congestion controlled. 4 September 2009 CS5229, Semester 1, 2009/10 68
  • 46. Why not congestion controlled?" 2. No incentive. OTOH, there are incentives NOT to use congestion control. 4 September 2009 CS5229, Semester 1, 2009/10 69
  • 48. “Unresponsive Flows” 4 September 2009 CS5229, Semester 1, 2009/10 71
  • 49. Bad: lead to unfairness and congestion collapse. 4 September 2009 CS5229, Semester 1, 2009/10 72
  • 50. Unfairness: unresponsive flows consume more bandwidth than congestion controlled flows. 4 September 2009 CS5229, Semester 1, 2009/10 73
  • 51. Congestion Collapse: wasting bandwidth by sending packets that will be dropped 4 September 2009 CS5229, Semester 1, 2009/10 77
  • 52. Today: " a TCP-friendly" unreliable protocol 4 September 2009 CS5229, Semester 1, 2009/10 78
  • 53. Idea: " send at a rate that a TCP flow would send 4 September 2009 CS5229, Semester 1, 2009/10 79
  • 54. we can do the AIMD-thing" at the source, or 4 September 2009 CS5229, Semester 1, 2009/10 80
  • 55. 4 September 2009 CS5229, Semester 1, 2009/10 81
  • 56. equation-based " congestion control 4 September 2009 CS5229, Semester 1, 2009/10 82
  • 57. steady" fair" responsive 4 September 2009 CS5229, Semester 1, 2009/10 83
  • 58. how to determine" RTT" tRTO" p 4 September 2009 CS5229, Semester 1, 2009/10 84
  • 59. p is not packet loss rate" but " loss event rate 4 September 2009 CS5229, Semester 1, 2009/10 85
  • 60. 4 September 2009 CS5229, Semester 1, 2009/10 86
  • 61. 4 September 2009 CS5229, Semester 1, 2009/10 87
  • 62. 4 September 2009 CS5229, Semester 1, 2009/10 88
  • 63. RTT can fluctuates 4 September 2009 CS5229, Semester 1, 2009/10 89
  • 64. 4 September 2009 CS5229, Semester 1, 2009/10 90
  • 65. 4 September 2009 CS5229, Semester 1, 2009/10 91
  • 66. 4 September 2009 CS5229, Semester 1, 2009/10 92
  • 67. 4 September 2009 CS5229, Semester 1, 2009/10 93
  • 68. how to initialize? 4 September 2009 CS5229, Semester 1, 2009/10 94
  • 69. slow start" (until loss occur)" Tnow = min(2Tprev, 2Trecv) 4 September 2009 CS5229, Semester 1, 2009/10 95
  • 70. no loss history, how?" solve p given T, RTT 4 September 2009 CS5229, Semester 1, 2009/10 96
  • 71. 4 September 2009 CS5229, Semester 1, 2009/10 97
  • 72. TFRC is now part of DCCP 4 September 2009 CS5229, Semester 1, 2009/10 98