lecture 13

70
Chapter 13 Chapter 13 Traffic and Congestion Control in ATM Networks

Upload: sohitagarwal

Post on 18-Jul-2015

45 views

Category:

Engineering


6 download

TRANSCRIPT

Chapter 13Chapter 13Traffic and Congestion Control in ATM Networks

IntroductionIntroduction

Control needed to prevent switch buffer overflow

High speed and small cell size gives different problems from other networks

Limited number of overhead bitsITU-T specified restricted initial set

– I.371ATM forum Traffic Management

Specification 41

OverviewOverview

Congestion problem Framework adopted by ITU-T and ATM forum

– Control schemes for delay sensitive traffic Voice & video

– Not suited to bursty traffic– Traffic control– Congestion control

Bursty traffic– Available Bit Rate (ABR)– Guaranteed Frame Rate (GFR)

Requirements for ATM Traffic Requirements for ATM Traffic and Congestion Controland Congestion ControlMost packet switched and frame relay

networks carry non-real-time bursty data– No need to replicate timing at exit node– Simple statistical multiplexing– User Network Interface capacity slightly

greater than average of channelsCongestion control tools from these

technologies do not work in ATM

Problems with ATM Congestion Problems with ATM Congestion ControlControl Most traffic not amenable to flow control

– Voice & video can not stop generating Feedback slow

– Small cell transmission time v propagation delay Wide range of applications

– From few kbps to hundreds of Mbps– Different traffic patterns– Different network services

High speed switching and transmission– Volatile congestion and traffic control

Key Performance Issues-Key Performance Issues-Latency/Speed EffectsLatency/Speed Effects

E.g. data rate 150Mbps Takes (53 x 8 bits)/(150 x 106) =2.8 x 10-6 seconds to

insert a cell Transfer time depends on number of intermediate

switches, switching time and propagation delay. Assuming no switching delay and speed of light propagation, round trip delay of 48 x 10-3 sec across USA

A dropped cell notified by return message will arrive after source has transmitted N further cells

N=(48 x 10-3 seconds)/(2.8 x 10-6 seconds per cell) =1.7 x 104 cells = 7.2 x 106 bits i.e. over 7 Mbits

Key Performance Issues-Key Performance Issues-Cell Delay VariationCell Delay Variation

For digitized voice delay across network must be small Rate of delivery must be constant Variations will occur Dealt with by Time Reassembly of CBR cells (see next

slide) Results in cells delivered at CBR with occasional gaps

due to dropped cells Subscriber requests minimum cell delay variation from

network provider– Increase data rate at UNI relative to load– Increase resources within network

Time Reassembly of CBR CellsTime Reassembly of CBR Cells

Network Contribution to Cell Network Contribution to Cell Delay VariationDelay Variation In packet switched network

– Queuing effects at each intermediate switch– Processing time for header and routing

Less for ATM networks– Minimal processing overhead at switches

Fixed cell size, header format No flow control or error control processing

– ATM switches have extremely high throughput– Congestion can cause cell delay variation

Build up of queuing effects at switches Total load accepted by network must be controlled

Cell Delay Variation at UNICell Delay Variation at UNI

Caused by processing in three layers of ATM model– See next slide for details

None of these delays can be predictedNone follow repetitive patternSo, random element exists in time interval

between reception by ATM stack and transmission

Origins of Cell Delay VariationOrigins of Cell Delay Variation

ATM Traffic-Related AttributesATM Traffic-Related Attributes

Six service categories (see chapter 5)– Constant bit rate (CBR)– Real time variable bit rate (rt-VBR)– Non-real-time variable bit rate (nrt-VBR)– Unspecified bit rate (UBR)– Available bit rate (ABR)– Guaranteed frame rate (GFR)

Characterized by ATM attributes in four categories– Traffic descriptors– QoS parameters– Congestion– Other

ATM Service Category ATM Service Category AttributesAttributes

Traffic ParametersTraffic Parameters

Traffic pattern of flow of cells– Intrinsic nature of traffic

Source traffic descriptor

– Modified inside networkConnection traffic descriptor

Source Traffic Descriptor (1)Source Traffic Descriptor (1) Peak cell rate

– Upper bound on traffic that can be submitted

– Defined in terms of minimum spacing between cells T

– PCR = 1/T

– Mandatory for CBR and VBR services Sustainable cell rate

– Upper bound on average rate

– Calculated over large time scale relative to T

– Required for VBR

– Enables efficient allocation of network resources between VBR sources

– Only useful if SCR < PCR

Source Traffic Descriptor (2)Source Traffic Descriptor (2)

Maximum burst size– Max number of cells that can be sent at PCR– If bursts are at MBS, idle gaps must be enough to keep overall

rate below SCR– Required for VBR

Minimum cell rate– Min commitment requested of network– Can be zero– Used with ABR and GFR– ABR & GFR provide rapid access to spare network capacity up

to PCR– PCR – MCR represents elastic component of data flow– Shared among ABR and GFR flows

Source Traffic Descriptor (3)Source Traffic Descriptor (3)

Maximum frame size– Max number of cells in frame that can be

carried over GFR connection– Only relevant in GFR

Connection Traffic DescriptorConnection Traffic Descriptor

Includes source traffic descriptor plus:- Cell delay variation tolerance

– Amount of variation in cell delay introduced by network interface and UNI

– Bound on delay variability due to slotted nature of ATM, physical layer overhead and layer functions (e.g. cell multiplexing)

– Represented by time variable τ Conformance definition

– Specify conforming cells of connection at UNI– Enforced by dropping or marking cells over definition

Quality of Service Parameters-Quality of Service Parameters-maxCTDmaxCTD Cell transfer delay (CTD)

– Time between transmission of first bit of cell at source and reception of last bit at destination

– Typically has probability density function (see next slide)

– Fixed delay due to propagation etc.– Cell delay variation due to buffering and scheduling– Maximum cell transfer delay (maxCTD)is max

requested delay for connection– Fraction α of cells exceed threshold

Discarded or delivered late

Quality of Service Parameters-Quality of Service Parameters-Peak-to-peak CDV & CLRPeak-to-peak CDV & CLRPeak-to-peak Cell Delay Variation

– Remaining (1-α) cells within QoS– Delay experienced by these cells is between

fixed delay and maxCTD– This is peak-to-peak CDV

– CDVT is an upper bound on CDVCell loss ratio

– Ratio of cells lost to cells transmitted

Cell Transfer Delay PDFCell Transfer Delay PDF

Congestion Control AttributesCongestion Control Attributes

Only feedback is defined– ABR and GFR– Actions taken by network and end systems to

regulate traffic submittedABR flow control

– Adaptively share available bandwidth

Other AttributesOther Attributes

Behaviour class selector (BCS)– Support for IP differentiated services (chapter

16)– Provides different service levels among UBR

connections– Associate each connection with a behaviour

class– May include queuing and scheduling

Minimum desired cell rate

Traffic Management FrameworkTraffic Management Framework

Objectives of ATM layer traffic and congestion control– Support QoS for all foreseeable services– Not rely on network specific AAL protocols

nor higher layer application specific protocols– Minimize network and end system complexity– Maximize network utilization

Timing LevelsTiming Levels

Cell insertion timeRound trip propagation timeConnection durationLong term

Traffic Control and Congestion Traffic Control and Congestion FunctionsFunctions

Traffic Control StrategyTraffic Control Strategy

Determine whether new ATM connection can be accommodated

Agree performance parameters with subscriber

Traffic contract between subscriber and network

This is congestion avoidance If it fails congestion may occur

– Invoke congestion control

Traffic ControlTraffic Control

Resource management using virtual pathsConnection admission controlUsage parameter controlSelective cell discardTraffic shapingExplicit forward congestion indication

Resource Management Using Resource Management Using Virtual PathsVirtual PathsAllocate resources so that traffic is

separated according to service characteristics

Virtual path connection (VPC) are groupings of virtual channel connections (VCC)

ApplicationsApplications

User-to-user applications– VPC between UNI pair– No knowledge of QoS for individual VCC– User checks that VPC can take VCCs’ demands

User-to-network applications– VPC between UNI and network node– Network aware of and accommodates QoS of VCCs

Network-to-network applications– VPC between two network nodes– Network aware of and accommodates QoS of VCCs

Resource Management Resource Management ConcernsConcerns Cell loss ratio Max cell transfer delay Peak to peak cell delay variation All affected by resources devoted to VPC If VCC goes through multiple VPCs,

performance depends on consecutive VPCs and on node performance– VPC performance depends on capacity of VPC and

traffic characteristics of VCCs– VCC related function depends on

switching/processing speed and priority

VCCs and VPCs ConfigurationVCCs and VPCs Configuration

Allocation of Capacity to VPCAllocation of Capacity to VPC

Aggregate peak demand– May set VPC capacity (data rate) to total of VCC peak rates

Each VCC can give QoS to accommodate peak demand VPC capacity may not be fully used

Statistical multiplexing– VPC capacity >= average data rate of VCCs but < aggregate

peak demand– Greater CDV and CTD– May have greater CLR– More efficient use of capacity– For VCCs requiring lower QoS– Group VCCs of similar traffic together

Connection Admission ControlConnection Admission Control

User must specify service required in both directions– Category– Connection traffic descriptor

Source traffic descriptor CDVT Requested conformance definition

– QoS parameter requested and acceptable value Network accepts connection only if it can

commit resources to support requests

Procedures to Set Traffic Procedures to Set Traffic Control ParametersControl Parameters

Cell Loss PriorityCell Loss Priority

Two levels requested by user– Priority for individual cell indicated by CLP

bit in header– If two levels are used, traffic parameters for

both flows specifiedHigh priority CLP = 0All traffic CLP = 0 + 1

– May improve network resource allocation

Usage Parameter ControlUsage Parameter Control

UPCMonitors connection for conformity to

traffic contractProtect network resources from overload

on one connectionDone at VPC or VCC levelVPC level more important

– Network resources allocated at this level

Location of UPC FunctionLocation of UPC Function

Peak Cell Rate AlgorithmPeak Cell Rate Algorithm

How UPC determines whether user is complying with contract

Control of peak cell rate and CDVT– Complies if peak does not exceed agreed peak– Subject to CDV within agreed bounds

– Generic cell rate algorithm– Leaky bucket algorithm

Generic Generic Cell Cell Rate Rate AlgorithmAlgorithm

Virtual Scheduling AlgorithmVirtual Scheduling Algorithm

Cell Arrival atCell Arrival at UNI ( UNI (TT=4.5=4.5δ)δ)

Leaky Bucket AlgorithmLeaky Bucket Algorithm

Continuous Leaky Bucket Continuous Leaky Bucket AlgorithmAlgorithm

Sustainable Cell Rate AlgorithmSustainable Cell Rate Algorithm

Operational definition of relationship between sustainable cell rate and burst tolerance

Used by UPC to monitor complianceSame algorithm as peak cell rate

UPC ActionsUPC Actions

Compliant cell pass, non-compliant cells discarded If no additional resources allocated to CLP=1 traffic,

CLP=0 cells C If two level cell loss priority cell with:

– CLP=0 and conforms passes

– CLP=0 non-compliant for CLP=0 traffic but compliant for CLP=0+1 is tagged and passes

– CLP=0 non-compliant for CLP=0 and CLP=0+1 traffic discarded

– CLP=1 compliant for CLP=0+1 passes

– CLP=1 non-compliant for CLP=0+1 discarded

Possible Actions of UPCPossible Actions of UPC

Selective Cell DiscardSelective Cell Discard

Starts when network, at point beyond UPC, discards CLP=1 cells

Discard low priority cells to protect high priority cells

No distinction between cells labelled low priority by source and those tagged by UPC

Traffic ShapingTraffic Shaping

GCRA is a form of traffic policing– Flow of cells regulated– Cells exceeding performance level tagged or

discardedTraffic shaping used to smooth traffic flow

– Reduce cell clumping– Fairer allocation of resources– Reduced average delay

Token Bucket for Traffic Token Bucket for Traffic ShapingShaping

Explicit Forward Congestion Explicit Forward Congestion IndicationIndication

Essentially same as frame relayIf node experiencing congestion, set

forward congestion indication is cell headers– Tells users that congestion avoidance should

be initiated in this direction– User may take action at higher level

Congestion Control Algorithms-Congestion Control Algorithms-Binary FeedbackBinary Feedback Use only EFCI, CI and NI bits Switch monitors buffer utilization When congestion approaches, binary notification

– Set EFCI on forward data cells or CI or NI on FRM or BRM

Three approaches to which to notify– Single FIFO queue– Multiple queues– Fair share notification

Single FIFO QueueSingle FIFO Queue

When buffer use exceeds threshold (e.g. 80%)– Switch starts issuing binary notifications– Continues until buffer use falls below threshold– Can have two thresholds

One for start and one for stop Stops continuous on/off switching

– Biased against connections passing through more switches

Multiple QueuesMultiple Queues

Separate queue for each VC or group of VCs Separate threshold on each queue Only connections with long queues get binary

notifications– Fair– Badly behaved source does not affect other VCs– Delay and loss behaviour of individual VCs separated

Can have different QoS on different VCs

Fair ShareFair Share

Selective feedback or intelligent markingTry to allocate capacity dynamically E.g. fairshare =(target rate)/(number of connections)Mark any cells where CCR>fairshare

Explicit Rate Feedback Explicit Rate Feedback SchemesSchemes Compute fair share of capacity for each VC Determine current load or congestion Compute explicit rate (ER) for each connection

and send to source Three algorithms

– Enhanced proportional rate control algorithm EPRCA

– Explicit rate indication for congestion avoidance ERICA

– Congestion avoidance using proportional control CAPC

Enhanced Proportional Rate Enhanced Proportional Rate Control Algorithm(EPRCA)Control Algorithm(EPRCA) Switch tracks average value of current load on

each connection– Mean allowed cell rate (MARC)– MACR(I)=(1-α)*(MACR(I-1) + α*CCR(I)

– CCR(I) is CCR field in Ith FRM– Typically α=1/16– Bias to past values of CCR over current– Gives estimated average load passing through switch– If congestion, switch reduces each VC to no more

than DPF*MACR DPF=down pressure factor, typically 7/8 ER<-min[ER, DPF*MACR]

Load FactorLoad Factor

Adjustments based on load factor LF=Input rate/target rate

– Input rate measured over fixed averaging interval

– Target rate slightly below link bandwidth (85 to 90%)

– LF>1 congestion threatened VCs will have to reduce rate

Explicit Rate Indication for Explicit Rate Indication for Congestion Avoidance (ERICA)Congestion Avoidance (ERICA) Attempt to keep LF close to 1 Define:fairshare = (target rate)/(number of connections)VCshare = CCR/LF = (CCR/(Input Rate)) *(Target Rate) ERICA selectively adjusts VC rates

– Total ER allocated to connections matches target rate– Allocation is fair– ER = max[fairshare, VCshare]– VCs whose VCshare is less than their fairshare get

greater increase

Congestion Avoidance Using Congestion Avoidance Using Proportional Control (CAPC)Proportional Control (CAPC) If LF<1 fairshare<-fairshare*min[ERU,1+(1-LF)*Rup] If LF>1 fairshare<-fairshare*min[ERU,1-(1-LF)*Rdn] ERU>1, determines max increase Rup between 0.025 and 0.1, slope parameter Rdn, between 0.2 and 0.8, slope parameter ERF typically 0.5, max decrease in allottment of fair share If fairshare < ER value in RM cells, ER<-fairshare Simpler than ERICA Can show large rate oscillations if RIF (Rate increase factor) too

high Can lead to unfairness

GRF OverviewGRF Overview

Simple as UBR from end system view– End system does no policing or traffic shaping– May transmit at line rate of ATM adaptor

Modest requirements on ATM network No guarantee of frame delivery Higher layer (e.g. TCP) react to congestion causing

dropped frames User can reserve cell rate capacity for each VC

– Application can send at min rate without loss Network must recognise frames as well as cells If congested, network discards entire frame All cells of a frame have same CLP setting

– CLP=0 guaranteed delivery, CLP=1 best efforts

GFR Traffic ContractGFR Traffic Contract

Peak cell rate PCRMinimum cell rate MCRMaximum burst size MBSMaximum frame size MFSCell delay variation tolerance CDVT

Mechanisms for supporting Mechanisms for supporting Rate GuaranteesRate GuaranteesTagging and policingBuffer managementScheduling

Tagging and PolicingTagging and Policing

Tagging identifies frames that conform to contract and those that don’t– CLP=1 for those that don’t

Set by network element doing conformance check May be network element or source showing less important

frames

– Get lower QoS in buffer management and scheduling

– Tagged cells can be discarded at ingress to ATM network or subsequent switch

– Discarding is a policing function

Buffer ManagementBuffer Management

Treatment of cells in buffers or when arriving and requiring buffering

If congested (high buffer occupancy) tagged cells discarded in preference to untagged

Discard tagged cell to make room for untagged cell

May buffer per-VC Discards may be based on per queue thresholds

SchedulingScheduling

Give preferential treatment to untagged cells Separate queues for each VC

– Per VC scheduling decisions– E.g. FIFO modified to give CLP=0 cells higher

priority Scheduling between queues controls outgoing

rate of VCs– Individual cells get fair allocation while meeting

traffic contract

Components of GFR Components of GFR MechanismMechanism

GFR Conformance DefinitionGFR Conformance Definition

UPC function– UPC monitors VC for traffic conformance – Tag or discard non-conforming cells

Frame conforms if all cells in frame conform– Rate of cells within contract

Generic cell rate algorithm PCR and CDVT specified for connection

– All cells have same CLP– Within maximum frame size (MFS)

QoS Eligibility TestQoS Eligibility Test

Test for contract conformance– Discard or tag non-conforming cells

Looking at upper bound on traffic

– Determine frames eligible for QoS guarantee Under GFR contract for VC Looking at lower bound for traffic

Frames are one of:– Nonconforming: cells tagged or discarded– Conforming ineligible: best efforts– Conforming eligible: guaranteed delivery

Simplified Frame Based GCRASimplified Frame Based GCRA