CS475 – Networks Assignments Lecture 21 Chapter 6: Congestion Control and Resource Allocation

advertisement
CS475 – Networks
Lecture 21
Chapter 6: Congestion Control and Resource Allocation
Assignments
• Reading for Lecture 22: Sections 6.3-6.4
Chapter 6: Congestion Control and Resource Allocation
Congestion control refers to the efforts make by network nodes
Resource allocation refers to the process by which network
to prevent or respond to overload conditions. (Congestion
elements try to meet the competing demands that applications
control is different from flow control, but they share some of the have for network resources – primarily link ________________
same control mechanisms.)
and buffer space in routers.
6.1 Issues in Resource Allocation
Resource allocation is partially implemented in the routers or
End systems use _________________________ protocols to
switches inside the network and partially in the transport
convey resource requirements to network nodes. The nodes
protocol.
respond with information about resource availability.
6.1.1 Network Model
6.1.1 Network Model - Packet-Switched Network
We will discuss resource allocation with respect to a network
Links in a packet-switched network will typically have different
that is:
bandwidths.
•
packet switched
Although a given source may have enough capacity on an
•
__________________________
outgoing link to send a packet. A slow link somewhere in the
•
and best-effort.
middle can cause a ___________________________.
6.1.1 Network Model - Connectionless Flows
Connectionless networks do not use setup messages to reserve
when discussing resource allocation. A flow is a sequence of
network resources prior to transmitting data.
packets traveling between a source and destination along the
Although our network is connectionless and packet-switched we same path.
will see that the concept of a ______________ is important
11/08/2011
Page 1 of 4
Routers may maintain ____________________ about a flow so
that it can perform more efficiently. (Routers in connected
networks maintain hard state.)
A flow can be detected implicitly by inspecting packet source
and destination addresses or explicitly via flow setup messages.
Multiple flows passing through a network.
6.1.1 Network Model - Service Model
We will initially assume that our network is a best effort
(throughput, delay, etc). Such a network is said to provide
network. No guarantees are made on either throughput or delay. quality of service (_______________). This type of network is
Some networks can guarantee certain levels of performance
covered in Section 6.5, which we will be skipping.
6.1.2 Taxonomy - Router-Centric vs Host-Centric
Resource allocation mechanisms can be categorized as being
hosts of how much data they can send.
either router-centric or host-centric.
In a host-centric design, hosts observe the network and adjust
In a router-centric design, the router decides when packets are
their behavior accordingly.
forwarded and ___________________. Routers inform sending
6.1.2 Taxonomy - Reservation vs Feedback
In a reservation-based resource allocation scheme a host asks the In a feedback-based approach hosts begin sending data and
network for capacity at the time a flow is established. If a route adjust sending rates based on feedback. Feedback may be
can not satisfy the request the flow may be ________________. explicit (in the form of messages sent back from routers) or
(A router-centric design is implied.)
implicit.
6.1.2 Taxonomy - Window-Based vs Rate-Based
In a window-based resource allocation method windows are used Alternatively, a sender could be asked to transmit at a particular
to indicate to the sender how much data should be transmitted.
rate (bits per second). Rate-based requests are common in
Both TCP flow and congestion control methods are windows
networks that support Quality of Service.
based.
11/08/2011
Page 2 of 4
6.1.3 Evaluation Criteria - Effective Resource Allocation
6.1.3 Evaluation Criteria - Fair Resource Allocation
We want to allocate resources so that we maximize throughput
Unless there is a statement to the contrary, we will assume that
while minimizing delay.
fair resource allocation implies that all flows using a link should
Many allocation methods seek to optimize the _____________
have __________________ throughput.
of the network:
Given a set of flow throughputs (x1, x2, ..., xn) one proposed
Power = Throughput/Delay
fairness index is:
∑ x 
n
f  x 1, x 2,  , x n =
i=1
2
i
n
n ∑i =1 xi2
For a given allocation scheme, power is optimized at a particular
load value.
6.2 Queuing Disciplines
A router's queuing discipline governs how packets are buffered
deciding which packets get dropped).
while waiting to be transmitted.
We will examine the first-in-first-out (FIFO) and fair queuing
The queuing algorithm affects ______________________ (by
(FQ) algorithms.
determining which packets get transmitted) and buffer space (by
6.2.1 FIFO
FIFO is the simplest of
FIFO is a scheduling discipline. Routers also use a drop policy
all queuing algorithms.
to determine which packets are dropped when the queue is full.
It is currently also the
FIFO routers typically use a tail drop drop policy.
most widely used
A simple variation on FIFO queuing is to have multiple
algorithm on
______________________ queues. Packets could contain a
____________________
field that indicates the packet priority (the IP Type of Service or
routers.
TOS field could be used for this purpose).
(a) FIFO Queue, (b) tail drop
11/08/2011
Page 3 of 4
6.2.2 Fair Queuing
FIFO queues do not separate packets by flow. It is possible for
FQ would prevent a UDP flow from using more than its fair
an ill-behaved source to use up most of the available bandwidth. share of network bandwidth.
We will see that TCP uses host-centric congestion control. It is
possible for an application to use UDP instead and
_________________ TCP's congestion control mechanism.
With fair queuing (FQ) a queue is maintained for each flow and
the flows are serviced in _______________________ fashion.
Fair queuing is not quite that simple due to different packet
The Fi values are treated as time stamps and we transmit packets
lengths. We want to ensure equal _____________________ for in order of increasing time stamp. An arriving packet is not
all flows rather than equal packet rates.
permitted to ____________________ the transmission of packet
To ensure equal bit rates we compute the time when the router
even if it has a smaller Fi value.
would finish transmitting the packet as:
Fi = max(Fi – 1, Ai) + Pi
where Fi is the finish time, Ai is the arrival time and Pi is the
transmit time.
FQ is ______________________________, the link is never idle A variation is __________________ fair queuing (WFQ) in
as long as there is one packet in a queue. If one active flow is
which each flow is given a weight. With three flows with
sharing a link with several idle flows, the active flow will use the weights of 1, 2, and 3, the flows would get 1/6, 1/3, and 1/2 of
full link capacity.
the link capacity respectively.
If there are n active flows then each flow will get no more than
WFQ could be used on classes of traffic instead of on flows.
1/nth of the link capacity. If a source tries to send data at a faster The IP TOS field could be used to identify classes. The
rate, the queue will fill and packets will be dropped.
Differentiated Services architecture (Section 6.5) uses this
approach.
In Class Exercises: To be turned as part of Homework 7
• Problem 6.7 on pages 564-565
• Problem 6.10(a) on page 565
11/08/2011
Page 4 of 4
Download