Professional Documents
Culture Documents
• Increase resources
• install new links, faster routers
• capacity planning, provisioning, traffic engineering
• happen at longer timescale
• Reduce or delay demand
• Reactive approach: encourage everyone to reduce or delay
demand
• Reservation approach: some requests will be rejected by
the network
• Improve TCP
• Stay with end-point only architecture
• Enhance routers to help TCP
• Random Early Discard
• Enhance routers to control traffic
• Rate limiting
• Fair Queueing
• Provide QoS by limiting congestion
flow 1
2 flow n
Buffer
management
• FIFO + drop-tail
• Simplest choice
• Used widely in the Internet
• FIFO (first-in-first-out)
• Implies single class of traffic
• Drop-tail
• Arriving packets get dropped when queue is full regardless of flow
or importance
• Important distinction:
• FIFO: scheduling discipline
• Drop-tail: drop policy
• Full queues
• Routers are forced to have have large queues to
maintain high utilizations
• TCP detects congestion from loss
• Forces network to have long standing queues in steady-state
• Lock-out problem
• Drop-tail routers treat bursty traffic poorly
• Traffic gets synchronized easily allows a few flows to
monopolize the queue space
• Random drop
• Packet arriving when queue is full causes some random
packet to be dropped
• Drop front
• On full queue, drop packet at head of queue
• Random drop and drop front solve the lock-out
problem but not the full-queues problem
1.0
maxP
BW BW
U Delay- or Rate-adaptive
Stay to the right and you
are fine for all curves
BW
15-441 Fall 2011 CMU, 2005-11 24
Utility curve – Elastic traffic
U Elastic
Bandwidth
• If U(bandwidth) is concave
U Elastic
elastic applications
BW BW
• If U is convex inelastic
applications U Delay-adaptive
• U(number of flows) is no longer
monotonically increasing
• Need admission control to maximize
total utility
BW
• Admission control deciding
when adding more people would
reduce overall utility
• Basically avoids overload
e.g. WFQ
10
9
8
5 FIFO
4
3
Throughput (Mbps)
2
1
0
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31
Flow Number
0.45
0.4
0.35
0.3
0.25
FQ
0.2
0.15
Throughput (Mbps)
0.1
0.05
0
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31
Flow Number
• Three criteria:
• (Long term) Average Rate (100 packets per sec or
6000 packets per min??), crucial aspect is the interval
length
• Peak Rate: e.g., 6000 p p minute Avg and 1500 p p sec
Peak
• (Max.) Burst Size: Max. number of packets sent
consecutively, ie over a short period of time
• Type of commitment
• What does the network promise?
• Packet scheduling
• How does the network meet promises?
• Service interface
• How does the application describe what it wants?
• Establishing the guarantee
• How is the promise communicated to/from the network
• How is admission of new applications controlled?
• Guaranteed service
• For hard real-time applications
• Fixed guarantee, network meets commitment if clients send at
agreed-upon rate
• Predicted service
• For delay-adaptive applications
• Two components
• If conditions do not change, commit to current service
• If conditions change, take steps to deliver consistent performance (help
apps minimize playback delay)
• Implicit assumption – network does not change much over time
• Given:
• Flow i shaped with token bucket and leaky bucket rate control
(depth b and rate r)
• Network nodes do WFQ
• Cumulative queuing delay Di suffered by flow i has upper
bound
• Di < b/r, (where r may be much larger than average rate)
• Assumes that r < link speed at any router
• All sources limiting themselves to r will result in no network
queuing
• Guaranteed Traffic
• Host specifies rate to network
• Why not bucket size b?
• If delay not good, ask for higher rate
• Predicted Traffic
• Specifies (r, b) token bucket parameters
• Specifies delay D and loss rate L
• Network assigns priority class
• Policing at edges to drop or tag packets
• Needed to provide isolation – why is this not done for
guaranteed traffic?
• WFQ provides this for guaranteed traffic
• QoS
• What type of applications are there? Elastic,
adaptive real-time , and hard real-time.
• Why do we need admission control to maximize
utility
• How do token buckets + WFQ provide QoS
guarantees?