24-01-2013, 02:15 PM
Congestion Control and Resource Allocation
Congestion Control.ppt (Size: 2.48 MB / Downloads: 102)
Congestion Control and Resource Allocation
Resources
Bandwidth of the links
Buffers at the routers and switches
Packets contend at a router for the use of a link, with each contending packet placed in a queue waiting for its turn to be transmitted over the link
Congestion control and Resource Allocation
Two sides of the same coin
If the network takes active role in allocating resources
The congestion may be avoided
No need for congestion control
Issues in Resource Allocation
Network Model
Packet Switched Network
We consider resource allocation in a packet-switched network (or internet) consisting of multiple links and switches (or routers).
In such an environment, a given source may have more than enough capacity on the immediate outgoing link to send a packet, but somewhere in the middle of a network, its packets encounter a link that is being used by many different traffic sources
Taxonomy
Reservation-based versus Feedback-based
In a reservation-based system, some entity (e.g., the end host) asks the network for a certain amount of capacity to be allocated for a flow.
Each router then allocates enough resources (buffers and/or percentage of the link’s bandwidth) to satisfy this request. If the request cannot be satisfied at some router, because doing so would overcommit its resources, then the router rejects the reservation.
In a feedback-based approach, the end hosts begin sending data without first reserving any capacity and then adjust their sending rate according to the feedback they receive.
This feedback can either be explicit (i.e., a congested router sends a “please slow down” message to the host) or it can be implicit (i.e., the end host adjusts its sending rate according to the externally observable behavior of the network, such as packet losses).
Fair Queuing
What we really want is bit-by-bit round-robin; that is, the router transmits a bit from flow 1, then a bit from flow 2, and so on.
Clearly, it is not feasible to interleave the bits from different packets.
The FQ mechanism therefore simulates this behavior by first determining when a given packet would finish being transmitted if it were being sent using bit-by-bit round-robin, and then using this finishing time to sequence the packets for transmission.
TCP Congestion Control
The idea of TCP congestion control is for each source to determine how much capacity is available in the network, so that it knows how many packets it can safely have in transit.
Once a given source has this many packets in transit, it uses the arrival of an ACK as a signal that one of its packets has left the network, and that it is therefore safe to insert a new packet into the network without adding to the level of congestion.
By using ACKs to pace the transmission of packets, TCP is said to be self-clocking.