+ All Categories
Home > Documents > Dcn Unit 3l4-Congestion

Dcn Unit 3l4-Congestion

Date post: 05-Apr-2018
Category:
Upload: chandan-mishra
View: 218 times
Download: 0 times
Share this document with a friend

of 30

Transcript
  • 7/31/2019 Dcn Unit 3l4-Congestion

    1/30

    CONGESTION

    Congestion is a situation in which too manypackets are present in (a part of) the subnet,performance degrades.

    Factors causing congestion:- The input traffic rate exceeds the capacity of the

    output lines.

    - The routers are too slow to perform bookkeepingtasks (queueing buffers, updating tables, etc.).

    - The routers' buffer is too limited.

  • 7/31/2019 Dcn Unit 3l4-Congestion

    2/30

    When too much traffic is offered,congestion sets in and performance

    degrades sharply.

  • 7/31/2019 Dcn Unit 3l4-Congestion

    3/30

    Policies that affect congestion.

  • 7/31/2019 Dcn Unit 3l4-Congestion

    4/30

    Congestion control is different from flow control:

    1.Congestion is a global issue, involving thebehavior of all the hosts, all the routers, the

    store-and-forward processing within the routers,etc.

    2.Flow control relates to the point-to-point trafficbetween a given sender and a given receiver.

  • 7/31/2019 Dcn Unit 3l4-Congestion

    5/30

    General principles of congestioncontrol

    Open loop solutions solve the problem by gooddesign, in essence, to make sure the problemdoes not occur in the first place.

    Tools include deciding when to accept newtraffic, when to discard packets and which ones,and how to schedule packets at various points inthe network.

    A common fact: they make decisions withoutregard to the current state of the network.

  • 7/31/2019 Dcn Unit 3l4-Congestion

    6/30

    Closed Loop solution

    Closed loop solutions are based on theconcept of a feedback loop, which consistsof the following three parts:

    Monitor the system to detect when and wherecongestion occurs.

    Pass this information to places where actions

    can be taken. Adjust system operation to correct the

    problem

  • 7/31/2019 Dcn Unit 3l4-Congestion

    7/30

    Chief metrics for monitoring thesubnet for congestion are:-

    the percentage of all packets discarded forlack of buffer space,

    the average queue lengths,

    the number of packets that time out andare retransmitted,

    the average packet delay, and the standard deviation of packet delay.

  • 7/31/2019 Dcn Unit 3l4-Congestion

    8/30

    How to propagate the monitoredcongestion information ?

    The router detecting the congestion sends aseparate warning packet to the traffic source.

    A bit or field can be reserved in each packet.

    When a router detects a congested state, it fillsin the field in all outgoing packets to warn theneighbors.

    Hosts or routers send probe packets outperiodically to explicitly ask about congestionand to route traffic around problem areas

  • 7/31/2019 Dcn Unit 3l4-Congestion

    9/30

    How to correct the congestion

    problem ?

    Increase the resource: Using an additional line to temporarily increase the

    bandwidth between certain points.

    Splitting traffic over multiple routes.

    Using spare routers.

    Decrease the load: denying service to some users,

    degrading service to some or all users, and having users schedule their demands in a more

    predictable way

  • 7/31/2019 Dcn Unit 3l4-Congestion

    10/30

    Congestion Control in Virtual-Circuit Subnets

    One technique that is widely used to

    keep congestion that has already

    started from getting worse isadmission control.

    The idea is simple: once congestion

    has been signaled, no more virtualcircuits are set up until the problem

    has gone away.

  • 7/31/2019 Dcn Unit 3l4-Congestion

    11/30

    Congestion Control in Virtual-Circuit Subnets

    Thus, attempts to set up new transportlayer connections fail.

    Letting more people in just makes mattersworse. While this approach is crude, it issimple and easy to carry out.

    In the telephone system, when a switchgets overloaded, it also practicesadmission control by not giving dial tones.

  • 7/31/2019 Dcn Unit 3l4-Congestion

    12/30

    Congestion Control in Virtual-Circuit Subnets

    An alternative approach is to allow newvirtual circuits but carefully route all newvirtual circuits around problem areas.

    Suppose that a host attached to router Awants to set up a connection to a hostattached to router B. Normally, thisconnection would pass through one of the

    congested routers. Omitting the congested routers and all of

    their lines. The dashed line shows apossible route for the virtual circuit that

    avoids the congested routers.

  • 7/31/2019 Dcn Unit 3l4-Congestion

    13/30

    (a) A congested subnet. (b) A redrawnsubnet that eliminates the congestion. A

    virtual circuit from A to B is also shown.

  • 7/31/2019 Dcn Unit 3l4-Congestion

    14/30

    Congestion Control in Virtual-Circuit Subnets

    Another (open loop) strategy relating to virtualcircuits is to negotiate an agreement betweenthe host and subnet, so that the subnet canreserve resources along the path when thecircuit is set up.

    Since all necessary resources are guaranteed tobe available, congestion is unlikely to occur onthe new virtual circuits.

    Reservation can be done all the time, or onlywhen the subnet is congested.

  • 7/31/2019 Dcn Unit 3l4-Congestion

    15/30

    Traffic shaping

    One of the main causes of congestion isthat traffic is often bursty.

    Another open loop method is forcing thepackets to be transmitted at a morepredictable rate.

    This method is widely used in ATMnetworks and is called traffic shaping.

  • 7/31/2019 Dcn Unit 3l4-Congestion

    16/30

    Leaky bucket algorithm

    Figure:(a) A leaky bucket with water. (b) Aleaky bucket with packets.

  • 7/31/2019 Dcn Unit 3l4-Congestion

    17/30

    Leaky bucket algorithm

    Each host is connected to thenetwork by an interface containing aleaky bucket - a finite internal queue.

    The outflow is at a constant rate whenthere is any packet in the bucket, andzero when the bucket is empty.

    If a packet arrives at the bucket whenit is full, the packet is discarded.

  • 7/31/2019 Dcn Unit 3l4-Congestion

    18/30

    The token bucket algorithm

    The leaky bucket algorithm enforcesa rigid output pattern at the averagerate, no matter how bursty the traffic

    is. For many applications, it is better to

    allow the output to speed up

    somewhat when large bursts arrive,so a more flexible algorithm isneeded, preferably on that never

    loses data.

  • 7/31/2019 Dcn Unit 3l4-Congestion

    19/30

    The token bucket algorithm.

    The bucket holds tokens, generatedby a clock at the rate of one tokenevery sec.

    For a packet to be transmitted, it mustcapture and destroy one token.

    After.The token bucket algorithm

    allows saving up to the maximum sizeof the bucket, , which means thatbursts of up to packets can be sent atthe maximum speed (for a certain

    period of time).

  • 7/31/2019 Dcn Unit 3l4-Congestion

    20/30

    The token bucket algorithm. (a)Before. (b) After.

  • 7/31/2019 Dcn Unit 3l4-Congestion

    21/30

    Choke packet

    This method can be used in both virtualcircuit and datagram subnets.

    Each line is associated with a variable ,whose value (0.0 - 1.0) reflects the recentutilization:

    Whenever moves above the threshold, theoutput line enters a ``warning'' state.

  • 7/31/2019 Dcn Unit 3l4-Congestion

    22/30

    Choke packet

    If a newly arriving packet is outputting in aline in warning state, the router sendsa choke packet back to the source host,

    giving it the destination found in thepacket.

    When the source host gets the choke

    packet, it is required to reduce the trafficsent to destination by certain percent.

  • 7/31/2019 Dcn Unit 3l4-Congestion

    23/30

    The host should ignore choke packetsreferring to the same destination for a

    fixed time interval (why ?). If no choke packets arrive during the

    listening period, the host may increase theflow again.

    Some variations on this congestion controlalgorithm exist.

    Choke packet

  • 7/31/2019 Dcn Unit 3l4-Congestion

    24/30

    Figure 24.7 Choke packet

  • 7/31/2019 Dcn Unit 3l4-Congestion

    25/30

    (a) A choke packet that affects only the source. (b)A choke packet that affects each hop it passes

    through.

  • 7/31/2019 Dcn Unit 3l4-Congestion

    26/30

    Load shedding

    When none of the above methods

    make the congestion disappear,

    routers can bring out the heavyartillery: load shedding, i.e, justthrowing packets away.

    Which packet to discard ?

    Discard any one at random.

  • 7/31/2019 Dcn Unit 3l4-Congestion

    27/30

    Load shedding

    Discard the younger ones (the wine policysuitable for file transfer).

    Discard the older ones (the milk policysuitable for multimedia transfer.)

    Discard less important ones (thisintelligence requires the senders to mark

    their packets in priority classes to indicatehow important they are).

  • 7/31/2019 Dcn Unit 3l4-Congestion

    28/30

    Jitter control

    For audio and video transmission, it is importantto ensure constant transmission time.

    So the agreement between the host and the

    subnet might be that 99 % of the packets bedelivered with a delay in the range of 24.5 msecto 25.5 msec.

    The jitter can be controlled by computing the

    expected transit time for each hop along thepath:

  • 7/31/2019 Dcn Unit 3l4-Congestion

    29/30

    Jitter control

    When a packet arrives at a router, therouter checks to see how much the packetis behind or ahead of its schedule.

    If the packet is ahead of schedule, it isheld just long enough to get it back onschedule.

    If it is behind schedule, the router tries toget it out the door quickly.

  • 7/31/2019 Dcn Unit 3l4-Congestion

    30/30

    (a) High jitter. (b) Low jitter.


Recommended