ee689 lecture 4
Download
Skip this Video
Download Presentation
EE689 Lecture 4

Loading in 2 Seconds...

play fullscreen
1 / 27

EE689 Lecture 4 - PowerPoint PPT Presentation


  • 79 Views
  • Uploaded on

EE689 Lecture 4. Review of Last Lecture UDP-based delivery TCP-modifications. End-to-End Congestion. UDP-based applications should do end-to-end congestion control Otherwise -- BW divided unfairly -- Loss of Goodput TCP-friendly -- enforce TCP-like control

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'EE689 Lecture 4' - rainer


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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
ee689 lecture 4
EE689 Lecture 4
  • Review of Last Lecture
  • UDP-based delivery
  • TCP-modifications
end to end congestion
End-to-End Congestion
  • UDP-based applications should do end-to-end congestion control
  • Otherwise -- BW divided unfairly
  • -- Loss of Goodput
  • TCP-friendly -- enforce TCP-like control
  • Hard to enforce TCP-friendly mechanism
  • Multiple connections/IP-spoofing get around those mechanisms.
udp based delivery
UDP-based delivery
  • “Nice” Applications will follow end-to-end congestion
  • All of the flow control/congestion control reliability to be built into application.
  • ALF - Application Level Framing - design principle - advocates application level of transport mechanisms.
udp based delivery1
UDP-based delivery
  • Packet-pair: One mechanism for BW estimation
  • Send two packets back-to-back, measure the delay between acks
  • ACK Compression - Receiving timestamps
  • Round robin scheduling /FIFO
  • Minimum ack spacing indicates link BW
cyclic udp
Cyclic UDP
  • Developed at UC Berkeley
  • Notion of rounds -- data sent in a fixed size time units
  • Retransmit data within the round
  • Move on to next round if data not received within round
  • Apply flow control within the round.
cyclic udp1
Cyclic UDP
  • Prioritize packets within round
  • Order higher priority packets in front
  • CUDP improves chances of delivery of higher priority packets -- retransmissions have higher priority
  • NACK - indicate not received packets so far on each packet reception
cyclic udp2
Cyclic UDP
  • Rounds allow timely delivery
  • Rounds allow prioritization of current packets
  • Application prioritizes within the round
  • Uses delay and packet losses for determining available BW
estimating bw
Estimating BW
  • Loss rate = 1 - bytes recvd/ bytes sent
  • Expected loss rate = X
  • Expected delay = D1
  • If (L > X) EstBW = (1-L)*LtBW/(1+X) else if (meanDelay > D1) EstBW = (1+X)*LtBW*D1/meanDelay else EstBW = (1+X)*LtBW
cyclic udp3
Cyclic UDP
  • Adapts to Congestion
  • Assumes all available BW can be used
  • Not clear what happens to competing TCP applications
  • Results indicate multiple CUDP flows share available BW
  • Loss rate -- scalability ??
stored media live media
Stored Media/Live Media
  • Stored Media allows buffering of data, can tolerate startup delays
  • More buffering -- more chances of overcoming congestion/smoother playout
  • Buffering => Longer latencies, not acceptable for interactive applications
  • Vxtreme etc. exploit buffering
cudp summary
CUDP Summary
  • Possible to design adaptive flow control into UDP application
  • Allows Timely Delivery and discard of expired packets, prioritization
  • Shown to scale against CUDP apps.
  • Not clear if more aggressive than TCP
  • Not a multiplicative decrease response
tcp modifications
TCP Modifications
  • If TCP congestion/flow control is so good, why not retain it?
  • Easy to show that “TCP-friendly”
  • Get rid of reliable/in-order delivery mechanisms that get in the way.
  • HPF = Heterogeneous Packet Flows
slide15
HPF
  • Allows marking packets high/low priority
  • Provides In-order reliable delivery of high priority packets
  • Allows low priority packets to be delivered when enough BW available
  • If routers support priority, can drop low priority packets ahead of high priority packets
hpf layers
HPF Layers
  • Application Framing (AF) -- convert frames into packets, packets into frames
  • Windowing, Reliability, Timing and Flow-control (WRTF) -- window management, flow control, reliability, deadlines
  • Congestion Control (CC) -- congestion response, estimation of RTTs
slide22
HPF
  • Separate the reliable delivery from windowing mechanisms.
  • Advance rcv_next pointer based on Reliable packets
  • Compute fraction of packets lost as opposed to based on sequence numbers -- a burst of losses doesn’t lead to cwnd being set to 1.
  • Multiplicative Decrease/Additive Increase
hpf congestion control
HPF Congestion Control
  • If ack_fraction > , cwnd = fi(cwnd), fi = TCP slow start
  • If ack_fraction < , cwnd = fd(cwnd), fd = 1/(1/cwnd + 1 - ack_fraction)
  •  = 1 - random loss probability
summary
Summary
  • UDP-based delivery puts application in charge to do flow control, congestion response etc. -- ALF plus more
  • Tedious for every application to implement all the basic mechanisms
  • Separate ALF policies and implementation -HPF does this and follows TCP based congestion response
ad