ATM : CONGESTION CONTROL
-
Upload
ladonna-amaya -
Category
Documents
-
view
63 -
download
0
description
Transcript of ATM : CONGESTION CONTROL
ATM : CONGESTION ATM : CONGESTION CONTROLCONTROL
Group 7
29 DECEMBER 2004
ZAILINA AI’SHAH ZAINAL BAHRENZAILINA AI’SHAH ZAINAL BAHREN
WET 020199WET 020199
----------------------------------------------------------------------------------------------------
- INTRODUCTION -- INTRODUCTION -
How ATM worksHow ATM works
1.1. ATM network uses fixed-length cells ATM network uses fixed-length cells to transmit information. to transmit information.
– The cell consists of 48 bytes The cell consists of 48 bytes of payload and 5 bytes of header (to of payload and 5 bytes of header (to reduce delay variance). reduce delay variance).
– The flexibility needed to The flexibility needed to support variable transmission rates is support variable transmission rates is provided by transmitting the necessary provided by transmitting the necessary number of cells per unit time number of cells per unit time
2. ATM network is connection-oriented.2. ATM network is connection-oriented.• It sets up virtual channel connection It sets up virtual channel connection
(VCC) going through one or more virtual (VCC) going through one or more virtual paths (VP) and virtual channels (VC) before paths (VP) and virtual channels (VC) before transmitting information. transmitting information.
• The cells is switched according to the VP or The cells is switched according to the VP or VC identifier (VPI/VCI) value in the cell head, VC identifier (VPI/VCI) value in the cell head, which is originally set at the connection which is originally set at the connection setup and is translated into new VPI/VCI setup and is translated into new VPI/VCI value while the cell passes each switch. value while the cell passes each switch.
3. ATM resources such as bandwidth 3. ATM resources such as bandwidth and buffers are shared among users, and buffers are shared among users, they are allocated to the user only they are allocated to the user only when they have something to when they have something to transmit. So the network uses transmit. So the network uses statistical multiplexing to improve statistical multiplexing to improve the effective throughput. the effective throughput.
Why ATM is important?Why ATM is important?
1. Provides guaranteed Quality of Service 1. Provides guaranteed Quality of Service servicesservices
2. Uses telephone technology2. Uses telephone technology
3. Provides for more robust transmission of3. Provides for more robust transmission of
information information
4. Permits us to combine different types of traffic4. Permits us to combine different types of traffic
over high capacity linksover high capacity links
5. Provides more reliable & cost effective 5. Provides more reliable & cost effective
transmission of informationtransmission of information
What Is Congestion Control?What Is Congestion Control?
- Plays an important role in the effective traffic - Plays an important role in the effective traffic management of ATM networksmanagement of ATM networks
- A state of network elements in which the - A state of network elements in which the network can not assure the negotiated network can not assure the negotiated Quality of Service (QoS) to already existing Quality of Service (QoS) to already existing connections and to new connection requests. connections and to new connection requests.
- May happen because of unpredictable - May happen because of unpredictable statistical fluctuations of traffic flows or a statistical fluctuations of traffic flows or a network failure. network failure.
Why Need Congestion Why Need Congestion Control?Control? The assumption that statistical multiplexing can The assumption that statistical multiplexing can
be used to improve the link utilization is that the be used to improve the link utilization is that the users do not take their peak rate values users do not take their peak rate values simultaneously. simultaneously.
But since the traffic demands cannot be predicted, But since the traffic demands cannot be predicted, congestion is unavoidable. congestion is unavoidable.
Whenever the total input rate is greater than the Whenever the total input rate is greater than the output link capacity, congestion happens. output link capacity, congestion happens.
Under a congestion situation, the queue length may Under a congestion situation, the queue length may become very large in a short time, resulting in become very large in a short time, resulting in buffer overflow and cell loss. buffer overflow and cell loss.
So congestion control is necessary to ensure that So congestion control is necessary to ensure that users get the negotiated QoS. users get the negotiated QoS.
SITI NUR ASLINDA MOHAMAD AYOBSITI NUR ASLINDA MOHAMAD AYOB
WET 020162WET 020162
------------------------------------------------------------------------------------------
- TYPES OF CONGESTION CONTROL - TYPES OF CONGESTION CONTROL --
Types of Congestion ControlTypes of Congestion Control
• There are two fundamental approaches to There are two fundamental approaches to congestion control: congestion control: reactivereactive approaches and approaches and preventivepreventive approachesapproaches
• Reactive: Reactive: feedback-basedfeedback-based– Attempt to detect congestion, or the onset Attempt to detect congestion, or the onset
of congestion, and take action to resolve of congestion, and take action to resolve the problem before things get worsethe problem before things get worse
– The hosts and routers respond to The hosts and routers respond to congestion congestion AFTERAFTER it occurs and then it occurs and then attempt to stop itattempt to stop it
• Preventive: Preventive: reservation-basedreservation-based– Prevent congestion from ever happening Prevent congestion from ever happening
in the first place, by reserving resourcesin the first place, by reserving resources– The hosts and routers attempt to prevent The hosts and routers attempt to prevent
congestion congestion BEFOREBEFORE it can occur it can occur
Most ATM congestion control Most ATM congestion control strategies are strategies are preventive (reservation-preventive (reservation-based)based)
Preventive and Reactive Preventive and Reactive ControlControl• Preventive Techniques:Preventive Techniques:
- - Leaky bucket & Token bucketLeaky bucket & Token bucket- Resource reservation- Resource reservation- Isarithmic control- Isarithmic control
• Reactive Techniques:Reactive Techniques:- Load shedding- Load shedding- Choke packets- Choke packets
The most popular one is The most popular one is leaky bucketleaky bucket schemescheme
Leaky Bucket AlgorithmsLeaky Bucket Algorithms
• Each network interface contains a Each network interface contains a leaky leaky bucketbucket..
• When the host has to send a packet, the When the host has to send a packet, the packet is thrown into the bucket.packet is thrown into the bucket.
• The bucket leaks at a constant rate, meaning The bucket leaks at a constant rate, meaning the network interface transmits packets at a the network interface transmits packets at a constant rate.constant rate.
• Bursty traffic is converted to a uniform traffic Bursty traffic is converted to a uniform traffic by the leaky bucket.by the leaky bucket.
• In practice the bucket is a finite queue that In practice the bucket is a finite queue that outputs at a finite rate.outputs at a finite rate.
• The bucket has a finite buffer, danger of The bucket has a finite buffer, danger of overflow!overflow!
Leaky Bucket (Cont)Leaky Bucket (Cont)
networks
Host computer
Packet
Unregulated flow
The bucket
holds packets
Regulated flow
Interface containing leaky bucket
Faucet
Leaky bucket
Water
Water drips out of the hole at a constant rate
Leaky Bucket (Cont)Leaky Bucket (Cont)
• Data output at constant rateData output at constant rate
• If bucket overflows, input data If bucket overflows, input data discardeddiscarded
• Suitable for multimedia such as TV, Suitable for multimedia such as TV, audioaudio
• Problem: Bursty traffic (computer Problem: Bursty traffic (computer data)data)
Token Bucket AlgorithmsToken Bucket Algorithms
• In regular intervals tokens are In regular intervals tokens are thrown into the bucket.thrown into the bucket.
• The bucket has a maximum capacity.The bucket has a maximum capacity.• If there is a ready packet, a token is If there is a ready packet, a token is
removed from the bucket, and the removed from the bucket, and the packet is sent.packet is sent.
• If there is no token in the bucket, the If there is no token in the bucket, the packet cannot be send.packet cannot be send.
networks
networks
Host computer
The bucket holds token
One token is added to the bucket every T
Token Bucket (Cont)Token Bucket (Cont)
Incoming Packets
Incoming Tokens
+ ToNetwork
12345
Token Bucket (Cont)Token Bucket (Cont)
Incoming Packets
Incoming Tokens
+ ToNetwork12345
Token Bucket (Cont)Token Bucket (Cont)
Incoming Packets
Incoming Tokens
+ ToNetwork12345
Token Bucket (Cont)Token Bucket (Cont)
Incoming Packets
Incoming Tokens
+ ToNetwork12345
Token Bucket (Cont)Token Bucket (Cont)
Incoming Packets
Incoming Tokens
+ ToNetworkX
12345
Token Bucket (Cont)Token Bucket (Cont)
Incoming Packets
Incoming Tokens
+ ToNetworkXX
12345
Token Bucket (Cont)Token Bucket (Cont)
• Tokens go into bucket at constant Tokens go into bucket at constant raterate
• Each packet must consume one Each packet must consume one tokentoken
• Packets not discarded if bucket fullPackets not discarded if bucket full
Leaky Bucket vs Token BucketLeaky Bucket vs Token BucketLeaky Bucket (LB)Leaky Bucket (LB) discards packets.discards packets.
Token Bucket (TB)Token Bucket (TB) discards tokens.discards tokens.
With With LBLB, a packet can , a packet can be transmitted if the be transmitted if the bucket is not full.bucket is not full.
With With TBTB, a packet can , a packet can only be transmitted if only be transmitted if there are enough there are enough tokens to cover its tokens to cover its length in bytes.length in bytes.
LBLB sends the packets sends the packets at an average rate.at an average rate.
TBTB allows for large allows for large bursts to be sent faster bursts to be sent faster by speeding up the by speeding up the output.output.
LBLB does not allow does not allow saving, a constant rate saving, a constant rate is maintainedis maintained
TBTB allows saving up allows saving up tokens (permissions) to tokens (permissions) to send large bursts.send large bursts.
NORBAITY HARIANI MUHAMMADNORBAITY HARIANI MUHAMMAD
WET 020115WET 020115
------------------------------------------------------------------------------------
- CAUSES & EFFECTS -- CAUSES & EFFECTS -
Causes of CongestionCauses of Congestion
1.1. Exhaustion of buffer spaceExhaustion of buffer space
2.2. DeadlockDeadlock
1.1. Exhaustion of Buffer Exhaustion of Buffer SpaceSpace
Routers maintain packet queuesRouters maintain packet queues
Buffers fill up if:Buffers fill up if: Routers are too slow, ORRouters are too slow, OR Combined input traffic rate exceeds the Combined input traffic rate exceeds the
outgoing outgoing
traffic ratetraffic rate
Insufficient buffer space leads to Insufficient buffer space leads to congestioncongestion
Exhaustion of Buffer Space Exhaustion of Buffer Space (Cont’d)(Cont’d)
50 Mbps
50 Mbps
50 Mbps
50 Mbps
Router
Buffer
2.2. DeadlockDeadlock
The first router cannot proceed until the The first router cannot proceed until the
second router does something, and the second router does something, and the
second router cannot proceed until the first second router cannot proceed until the first
router does somethingrouter does something
Both routers come to a completely halt and Both routers come to a completely halt and
stay that way foreverstay that way forever
Types of DeadlockTypes of Deadlock
1.1. Store and Forward LockupStore and Forward Lockup Direct Store and Forward LockupDirect Store and Forward Lockup Indirect Store and Forward LockupIndirect Store and Forward Lockup
2.2. Reassembly LockupReassembly Lockup
Effects of CongestionEffects of Congestion
Performance of DegradationPerformance of Degradation Multiple packet lossMultiple packet loss
Low link utilization (low Low link utilization (low throughput)throughput)
High queuing delayHigh queuing delay
Congestion collapseCongestion collapse
SITI NORHAMNIDA KAMARUZAMANSITI NORHAMNIDA KAMARUZAMAN
WET 020160WET 020160
----------------------------------------------------------------------------------------
- FUNCTIONS & PROCEDURES -- FUNCTIONS & PROCEDURES -
• To meet the objectives of traffic control and To meet the objectives of traffic control and congestion control in ATM networks, several congestion control in ATM networks, several functions and procedures are suggested by functions and procedures are suggested by the ATM Forum Technical Committee.the ATM Forum Technical Committee.
• There are:-There are:-
1.1. Connection Admission Control (CAC)Connection Admission Control (CAC)
2.2. Usage Parameter Control (UPC)Usage Parameter Control (UPC)
3.3. Priority ControlPriority Control
4.4. Traffic ShapingTraffic Shaping
5.5. Network Resource Management (NRM)Network Resource Management (NRM)
6.6. Frame DiscardFrame Discard
7.7. Feedback ControlFeedback Control
1.1. Connection Admission Connection Admission Control (CAC)Control (CAC)
• CAC is defined as the set of actions CAC is defined as the set of actions taken by the network during the call taken by the network during the call set-up phase in order to determine set-up phase in order to determine whether a connection request can be whether a connection request can be accepted or should be rejected.accepted or should be rejected.
2.2. Usage Parameter Usage Parameter Control (UPC)Control (UPC)
• UPC is defined as the set of actions UPC is defined as the set of actions taken by the network to monitor and taken by the network to monitor and control traffic at the end-system control traffic at the end-system access. access.
3.3. Priority ControlPriority Control
• The end-system may generate traffic The end-system may generate traffic flows of different priority using the Cell flows of different priority using the Cell Loss Priority (CLP) bit. Loss Priority (CLP) bit.
• The network may selectively discard The network may selectively discard cells with low priority if necessary cells with low priority if necessary such as in congestion to protect, as far such as in congestion to protect, as far as possible, the network performance as possible, the network performance for cells with high priority.for cells with high priority.
4.4. Traffic ShapingTraffic Shaping
• Traffic shaping is a mechanism that Traffic shaping is a mechanism that alters the traffic characteristics of a alters the traffic characteristics of a stream of cells on a connection to stream of cells on a connection to achieve better network efficiency achieve better network efficiency while meeting the QoS objectives, or while meeting the QoS objectives, or to ensure conformance at a to ensure conformance at a subsequent interface.subsequent interface.
5.5. Network Resource Network Resource Management (NRM)Management (NRM)
• NRM is responsible for the allocation NRM is responsible for the allocation of network resources in order to of network resources in order to separate traffic flows according to separate traffic flows according to different service characteristics, to different service characteristics, to maintain network performance and to maintain network performance and to optimize resource utilization. optimize resource utilization.
• This function is mainly concerned This function is mainly concerned with the management of virtual paths with the management of virtual paths in order to meet QoS requirements.in order to meet QoS requirements.
6.6. Frame DiscardFrame Discard
• If a congested network needs to discard If a congested network needs to discard cells, it may be better to drop all cells of cells, it may be better to drop all cells of one frame than to randomly drop cells one frame than to randomly drop cells belonging to different frames, because one belonging to different frames, because one cell loss may cause the retransmission of cell loss may cause the retransmission of the whole frame, which may cause more the whole frame, which may cause more traffic when congestion already happened. traffic when congestion already happened.
7.7. Feedback ControlFeedback Control
• Are defined as the set of actions Are defined as the set of actions taken by the network and by the taken by the network and by the end-systems to regulate the traffic end-systems to regulate the traffic submitted on ATM connections submitted on ATM connections according to the state of network according to the state of network elements.elements.
WAN NORFAZLINA WAN MUSTAFFA WAN NORFAZLINA WAN MUSTAFFA KAMALKAMAL
WET 020189WET 020189
----------------------------------------------------------------------------------------------------------
- CRITERIA & SUMMARY -- CRITERIA & SUMMARY -
What is expected from What is expected from Congestion Control??Congestion Control??
• The objectives of traffic control and The objectives of traffic control and congestion control for ATM are: congestion control for ATM are:
Support a set of QoS (Quality of Support a set of QoS (Quality of Service) parameters and classes for Service) parameters and classes for all ATM services and minimize all ATM services and minimize network and end-system complexity network and end-system complexity while maximizing network utilizationwhile maximizing network utilization
Selection CriteriaSelection Criteria
• To design a congestion control To design a congestion control scheme is appropriate for ATM scheme is appropriate for ATM network and non-ATM networks as network and non-ATM networks as well, the following guidances are of well, the following guidances are of general interest general interest
1. Scalability1. Scalability
• The scheme should not be limited The scheme should not be limited to a particular range of speed, to a particular range of speed, distance, number of switches or distance, number of switches or number of virtual channel (VCs). number of virtual channel (VCs). The scheme should be applicable The scheme should be applicable for both Local Area Network (LAN) for both Local Area Network (LAN) and Wide Area Networks (WAN)and Wide Area Networks (WAN)
2. Fairness2. Fairness
• In shared environment, the In shared environment, the throughput for a source depends throughput for a source depends upon the demands by the other upon the demands by the other sources.sources.
3. Robustness3. Robustness
• The scheme should be insensitive The scheme should be insensitive to minor deviations such as slight to minor deviations such as slight mistuning of parameters or loss of mistuning of parameters or loss of control messages. It should also control messages. It should also isolate misbehaving users and isolate misbehaving users and protect other users from themprotect other users from them
4. Implement ability4. Implement ability
• The scheme should not dictate a The scheme should not dictate a particular switch architecture. It particular switch architecture. It also should not be too complex both also should not be too complex both in term of time or space it usesin term of time or space it uses
SummarySummary • Congestion control is important in high Congestion control is important in high
speed networks. Due to larger speed networks. Due to larger bandwidth-distance product, the amount bandwidth-distance product, the amount of data lost due to simultaneous arrivals of data lost due to simultaneous arrivals of bursts from multiple sources can be of bursts from multiple sources can be larger. larger.
• For the success of ATM, it is important For the success of ATM, it is important that it provides a good traffic that it provides a good traffic management by using congestion management by using congestion control.control.
• To solve congestion control is by using To solve congestion control is by using the the preventivepreventive and and reactivereactive techniques techniques
• PreventivePreventive- The hosts & routers attempt to - The hosts & routers attempt to prevent prevent congestion BEFORE it can congestion BEFORE it can occuroccur
• ReactiveReactive- The host & routers responds to - The host & routers responds to congestion AFTER it occurs & then congestion AFTER it occurs & then attempt to stop itattempt to stop it