Chapter 12. Traffic and Congestion Control In ATM Networks Related Standards ITU-T’s I.371 ATM Forum’s Traffic Management Spec. Version 4.0 By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul Requirements for ATM Traffic and Congestion Control no flow control-based congestion control no feedback based congestion control • implicit congestion control = no explicit congestion notification = source deduces the presence of congestion by the loss of data = too late reaction in high-speed ATM (Latency/Speed Effect) inadequate for ATM By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul Requirements (cont’d) CBR support • related to cell delay variation (CDV) • V(0) = an estimate of the amount of CDV that an application can tolerate V(I) = V(I-1) - [t(I) - (t(I-1) + )] • If V(I) is negative, then that cell is discarded • CDV can be reduced by increasing the data rate at the UNI relative to the load and by increasing resources within the network • Sources of CDV – queuing delay due to congestion – segmentation, interleaving, OAM cells, SDH overhead ... By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul ATM Traffic-Related Attributes Traffic Descriptors • describe the traffic characteristics of a source and of a connection • network establishes a connection only if sufficient resources are available QoS Parameters • characterize the performance of an ATM connection in terms of QoS that it provides Other • feedback attribute for ABR By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul Traffic Descriptors Source Traffic Descriptor • • • • • source characteristics of an ATM flow peak cell rate (PCR) sustainable cell rate (SCR) maximum burst size (MBS) minimum cell rate (MCR) Connection Traffic Descriptor • characteristics of an ATM flow over an ATM connection • source traffic descriptor • cell delay variation tolerance (CDVT) • conformance definition By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul Source Traffic Descriptor PCR • an upper bound on the traffic that can be submitted by a source on an ATM connection • PCR = 1/T, where T: min spacing between cells • for CBR and VBR SCR • an upper bound on the average rate of an ATM connection • calculated over a time scale that is large relative to T • for VBR only • SCR < PCR By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul Source Traffic Descriptor (cont’d) MBS • max number of cells that can be sent continuously at PCR • for VBR only MCR • min commitment requested of the network • for ABR only By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul Connection Traffic Descriptor CDVT • a measure of the amount of variation in cell delay that is introduced by network interface (e.g., SDH) and at UNI Conformance Definition • used to specify unambiguously the conforming cells of a connection at UNI • net may enforce conformance by dropping or marking cells that exceed the conformance definition • GCRA (Generic Cell Rate Algorithm) By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul QoS Parameters Peak-to-peak Cell Delay Variation • maxCTD - fixed delay • CDV is negotiated during connection establishment whereas CDVT is normally explicitly set at UNI and is not negotiated • CDVT is the variation introduced by the source traffic itself (= an upper bound on CDV at UNI) • CDV is the difference between the best- and worstcase expected end-to-end CTD By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul QoS Parameters (cont’d) Maximum Cell Transfer Delay (maxCTD) • CTD – time between transmission of the last bit of a cell at source UNI and the receipt of the first bit of a cell at the destination UNI – variable due to buffering and cell scheduling • maxCTD – max requested delay Cell Loss Ratio (CLR) • ratio of lost cells to total transmitted cells By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul Traffic Management Framework Cell Insertion Time • react immediately to cells as they are transmitted Round-Trip Propagation Time • respond within the lifetime of a cell in net and may provide a feedback info to source Connection Duration • determine whether a new connection at a given QoS can be accommodated and what performance level will be agreed to Long Term • affect more than one ATM connection and established for long-term use By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul Traffic Control ATM Traffic Control Functions set of actions taken by the network to avoid congestion conditions or to minimize congestion effects Resource management using VPs Connection Admission Control (CAC) Usage Parameter Control (UPC) Traffic shaping By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul Resource Management using VPs Net provides aggregate capacity and performance characteristics on VP and these are shared by VCs in the VP QoS of a VPC = max QoS of VCCs in the VPC statistical multiplexing • • • • • capacity of VPC average data rates of all VCCs capacity of VPC < aggregate peak demand efficient utilization of capacity difficult to provide fair access preferable to group VCCs into VPCs on the basis of similar traffic characteristics and similar QoS requirements By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul Connection Admission Control Net accepts a connection only if it can commit the resources necessary to support that traffic level while at the same time maintaining the agreed QoS of existing connections if accepted, traffic contract between net & user net continues provide the agreed QoS as long as the user complies with the traffic contract traffic contract parameters (table 12.3) By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul Usage Parameter Control (UPC) Monitors a connection to determine whether the traffic conforms to the traffic contract once it has been accepted by CAC Protect net resources from an overload on one connection by detecting violations of assigned parameters and taking appropriate actions By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul UPC: Two Separate Functions Control of PCR & CDVT • a traffic flow is compliant if the peak rate of cell transmission does not exceed the agreed peak cell rate, subject to the possibility of cell delay variation within the agreed bound Control of SCR & burst tolerance By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul UPC: Generic Cell Rate Algorithm Used both for PCR & SCR controls GCRA(I, L), where I: Increment, L: Limit peak cell rate algorithm sustainable cell rate algorithm By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul UPC: Peak Cell Rate Algorithm GCRA(T, ) T: average interarrival time between cells at PCR if there is no CDVT : CDVT limit Virtual Scheduling Algorithm • fig. 12.6 (a), 12.7 (a) • max # of conforming back-to-back cells = 1 + / (T - ) Leaky Bucket Algorithm • fig. 12.6 (b), 12.7 (b) By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul UPC: Sustainable Algorithm Cell Rate GCRA(Ts, s) Ts: interarrival time between cells at SCR if there is no burstiness s: burst tolerance MBS = 1 + s / (Ts - T) s = (MBS - 1)(Ts - T) By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul UPC: Actions compliant cells are passed along and noncompliant cells are discarded or tagged (CLP = 1) fig. 12.10 By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul Selective Cell Discard at some point beyond the UPC function, net discards (CLP = 1) cells in case of congestion discard lower-priority cells to protect the performance for higher-priority cells By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul Traffic Shaping smooth out a traffic flow and reduce cell clumping result in a fairer allocation of resources and a reduced average delay time Token Bucket • token generator produces tokens at a rate of tokens per sec and places these in token bucket • to transmit a cell through the server, one token must be removed from the bucket • if bucket is empty, cell is queued waiting for the next token • if there is a backlog of cells and an empty bucket, cells are emitted at a smooth flow of cells per second with no cell delay variation until the backlog is cleared By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul ATM Traffic Control Approaches Open-Loop Control • for CBR, rt-VBR, nrt-VBR • based on traffic contract and UPC • no feedback to source concerning congestion Best-Effort • for UBR • share the unused capacity in a relatively uncontrolled fashion • inefficient: dropped cells cause retransmissions By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul ATM Traffic Control Approaches (cont’d) Closed-Loop Control • for ABR • provide feedback to sources to adjust the load dynamically and avoid cell loss and share the capacity fairly By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul ABR: Characteristics of ABR Service ABR connections share available capacity The share of available capacity used by a single ABR connection is dynamic and varies between MCR and PCR The net provides feedback to ABR sources so that ABR flow is limited to available capacity For ABR sources that adapt their transmission rate to the provided feedback, a low cell loss ratio is guaranteed By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul ABR: ABR Connection Characterization Parameters ACR (Allowed Cell Rate) • current rate at which source is permitted to transmit cells MCR (Minimum Cell Rate) • min value that ACR may take (I.e., net will not restrict a source’s flow less than MCR) PCR (Peak Cell Rate) • max value that ACR may take ICR (Initial Cell Rate) • initial value assigned to ACR By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul ABR: Feedback Mechanism Feedback is provided periodically in the form of a sequence of RM (Resource Management) cells RM cell • contains CI (Congestion Indication) bit, NI (No Increase) bit, ER (Explicit cell Rate) field • source transmits one FRM (Forward RM) cell for every (Nrm - 1) data cells • for each received FRM, destination transmits it back to source as a BRM (Backward RM) cell By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul ABR: Feedback Mechanism ACR Control • Initially, ACR = ICR • linear increase, exponential decrease • NI=0, CI=0: ACRmax[MCR,min[ER,PCR,ACR+RIFPCR]] • NI=0, CI=1: ACRmax[MCR,min[ER,ACR(1-RDF)]] • NI=1, CI=0: ACRmax[MCR,min[ER,ACR]] • NI=1, CI=1: ACRmax[MCR,min[ER,ACR(1-RDF)]] By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul ABR: Feedback Mechanism (cont’d) Source • set CI = 0, NI = 0 or 1 • set ER equal to some desired transmission rate Intermediate ATM switch • EFCI marking: cause dest to set CI = 1 in BRM • relative rate marking: set CI or NI • explicit rate marking: reduce ER value Destination • under normal: if EFCI is marked in the previous data cell, set CI • under congestion: set CI or NI, or reduce ER By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul ABR: RM Cell Format Header • PT = 110 • for VC rate control: VCI = 6 Protocol ID = 1 Message Type • FRM (DIR = 0), BRM (DIR = 1) • BECN cell – initially generated by source (BN = 0) – generated by a switch or dest (BN =1) By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul ABR: Capacity Allocation Binary Feedback Scheme • use EFCI, CI, NI bits Explicit Rate Feedback Scheme • use ER field By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul ABR: Capacity Allocation (cont’d) Binary Feedback Scheme when congestion occurs, switch performs a binary notification either • by setting the EFCI on a forward data cell or • by setting CI or NI on a FRM or BRM By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul ABR: Capacity Allocation (cont’d) Binary Feedback Scheme (cont’d) FIFO Queue • dedicate the buffer at each output port to a single FIFO queue • if buffer occupancy exceeds a threshold, switch issues binary notifications until buffer occupancy falls below the threshold • may use two threshold • may unfairly penalize connections passing through a number of switches By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul ABR: Capacity Allocation (cont’d) Binary Feedback Scheme (cont’d) Multiple Queues • allocate a separate queue to each VC or to each group of VCs • a separate threshold for each queue • Adv: – a misbehaving source will not affect other VCs – delay and loss behavior of individual VCs are decoupled By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul ABR: Capacity Allocation (cont’d) Binary Feedback Scheme (cont’d) Fair Share Notification • • • • selective feedback or intelligent marking allocate a fair share of capacity dynamically Fairshare = Target rate / Number of connections when congested, switch marks cells on any VC which satisfies CCR > Fairshare By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul ABR: Capacity Allocation (cont’d) Explicit Rate Feedback Scheme General Functions • compute the fair share of the capacity for each VC that can be supported • determine the current load, or degree of congestion • compute an ER for each connection and send that ER to source By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul ABR: Capacity Allocation (cont’d) Explicit Rate Feedback Scheme (cont’d) Example Schemes • EPRCA (Enhanced Proportional Rate Control Algorithm) • ERICA (Explicit Rate Indication for Congestion Avoidance) • CAPC (Congestion Avoidance using Proportional Control) By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul ABR: Capacity Allocation (cont’d) Explicit Rate Feedback Scheme (cont’d) EPRCA • • • • switch keeps track of MACR (Mean ACR) MACR(I) = (1-)MACR(I-1) + CCR(I) if congested, ER min[ER, DPFMACR] react to congestion by lowering ERs of VCs that are consuming more than their fair share of capacity By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul ABR: Capacity Allocation (cont’d) Explicit Rate Feedback Scheme (cont’d) ERICA • selectively adjust VC rates so that the total ER allocated to connections equals the target rate and is allocated fairly • Load Factor – LF = Input rate / Target rate • • • • Fairshare = Target rate / Number of connections VCshare = CCR / LF ER = min[oldER, max[Fairshare, VCshare] improve fairness under overload conditions By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul ABR: Capacity Allocation (cont’d) Explicit Rate Feedback Scheme (cont’d) CAPC • if LF > 1, Fairshare = Fairshare min[ERU, 1+(1-LF)Rup] • if LF < 1, Fairshare = Fairshare min[ERF, 1-(LF-1)Rdp] – ERU determines the max increased allowed in the allotment of fair share; ERU > 1 – Rup = a slop parameter between 0.025 and 0.1 – ERF determines the max decrease allowed in the allotment of fair share; ERF = 0.5 – Rdn = a slope parameter between 0.2 and 0.8 By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul ABR: Capacity Allocation (cont’d) Explicit Rate Feedback Scheme (cont’d) CAPC (cont’d) • if the calculated Fiarshare is lower than ER in RM cell, then set ER to Fairshare • simpler to implement than ERICA, very large rate oscillations if RIF is set too high, sometimes lead to unfairness By Sanghyun Ahn, Dept. of Computer Science and Statistics, University of Seoul
© Copyright 2026 Paperzz