This invention relates to methods and apparatus for controlling traffic flow in a communications network so as to reduce congestion.
Increasing volumes of communications traffic are now being carried on packet networks, and in particular on Internet Protocol (IP) networks. Such networks comprise nodes or routers interconnected by links so as to define a mesh. A recent introduction has been the concept of a network having an optical core in which traffic is carried on switched optical fiber paths between routers. The core is accessed by an edge networks Typically in the design of high capacity IP networks. routers are classified as either core routers or edge routers. Edge routers carry out all the network ingress and egress functions, in particular controlling the incoming traffic streams across the network. Core routers act as transit routers forwarding network traffic from one network node to another.
In such a network, the user data is assembled into packets and each packet is provided with a header identifying the destination of the packet and optionally, including routing information. The header may further contain information misting to the router chosen to route the packet contents and identifying a priority class for the packet. For example, packets containing high quality of service real time traffic, such as voice, will be accorded the highest priority, while packets containing ‘best efforts’ data may be accorded a low priority.
A particular problem that has been experienced with certain types of traffic, particularly data traffic and real-time video traffic, is its inherently bursty nature. Further, this burstiness occurs on a timescale that is shorter than feasible network control loop timescales, and thus can lead to congestion when traffic is heavy. When congestion occurs, ordinary data traffic which is not critically time sensitive can be briefly buffered in the routers which are experiencing congestion. Urgent data traffic and real time interactive services such as voice and video cannot be delayed.
In order to maximize the overall network utilization, it is desirable to perform statistical multiplexing of traffic traversing the network while providing a prior allocation of resources and protection particularly for the delay sensitive traffic Existing control and feedback mechanisms are however inadequate to respond to this bursty traffic at a sufficiently rapid rate to provide this resource allocation and protection. In The conventional approach to this problem, the high speed statistical variations in traffic flow are simply allowed for by setting large margins in the setting of control levels for determining feedback price. Proposals for ‘pricing’ ingress flows at the edge of the network for admission control purposes have involved for instance measuring the ‘effective bandwidth’ of the flow. Effective bandwidth is a measure of the bandwidth that needs to be reserved to give a desired packet loss for delay rate on a statistically varying flow. Unfortunately, effective bandwidths do not add linearly on aggregation and so are difficult to use in a congestion price feedback control scheme.
An object of the invention is to minimize or to overcome these disadvantages.
According to a first aspect of the invention there is provided a method of controlling traffic flow in a communications packet network, the method comprising determining for flows within the network a mean utilization requirement and a measure of a variance from that mean, and determining from said mean and variance and bandwidth pricing so as to control the admission of said flows to the network.
Advantageously, control limits are set by the network operator for mean and variance, and the pricing is increased as one or both of these limits is approached so as to provide feedback control of admission to the network.
The control method may be embodied as software in machine readable form on a storage medium.
According to another aspect of the invention, there is provided a method of controlling admission of traffic flows to a communications network, the method comprising sampling the traffic flows each at an ingress, and sampling an aggregate flow of said flows at some or all of the resources used by the aggregate flow, determining from said sampling a mean bandwidth requirement for each traffic flow and a measure of the variance from That mean, determining from said mean and variance measurements first and second prices for the mean and variance components of the controlled traffic flows that are admitted to the network, and determining from said first and second prices an admission cost for each said flow so as to regulate the admission of that flow.
According to a further aspect of the invention, there is provided an admission control arrangement for a communications network, the arrangement comprising sampling means for sampling a traffic flow, means for determining from said sampling means a measure of mean bandwidth requirement and of a variance from that mean, and price computation means for determining from said mean and variance a cost or price for bandwidth case so as to provide ingress price control for admission of the traffic flow to the network.
The admission control arrangement may be incorporated in a network manager, e.g. in software form.
In our arrangement and method, overall resource utilization is optimised by the use of congestion price based feedback that separates out the components of price that affect the mean traffic flow from the standard deviation of the flow. It is well known that on aggregation, standard deviations add according) to a square route law and means add linearly. In a mixed traffic flow type network, a network flow optimisation process that separates these components can provide improved overall resource utilization. A further advantage of this arrangement and method is that it enables a fairer allocation of ‘network-price’ to any given ingress flow. Rather than simply allocating the network charges on the basis of mean ingress flow, the charges are based on a measure of mean and standard deviation. This discourages users from abusing the network by sending excessively bursty traffic, unless it is genuinely important to the user. It should be noted that the terms prices and charges as employed herein refer to an internal network currency used for admission control purposes and is generally separate from any real billing.
Embodiments of the invention will now be described with reference to the accompanying drawings in which:
a shows the construction of an ingress controller;
a and 3b illustrate idealised and practical bandwidth demands for a traffic flow.
a illustrates the measured mean and standard deviation of a traffic aggregate; and
b illustrates the primary flow control level and its division into separate allocations for variance and mean.
Referring first to
Referring now to
The ingress controller 23 controls traffic on every end to end path through the network. The paths may be MPLS paths.
Referring now to
The short term variations, which represent the deviations of the traffic fibw from the mean, are illustrated in
In the arrangement of
σA √{square root over (σ)}Σσi2
The aggregated mean traffic of course adds linearly so the aggregated mean flow and is given by the expression
xA =Σxi
Referring now to
In a preferred embodiment, separate price calculations are performed from the mean xA and standard deviation σA demands on the network as follows.
The network operator subdivides the control level bandwidth into two sub allocations, xCM the allocation for the mean flow, and xCD the nominal allocation for the components of flow that deviate from the mean. These two allocations are related to the control level by the equation xC=xCM+xCD, as illustrated in
i.e. Px=F(xCM, XA)
In a discrete system, in which price is updated at regular interva s, Δt, an example function might be.
Px(t+1)=|Px(t)+βΔt(xCM−xA)|+
This equation indicates that the new price at the end of the current time interval equals the current price plus a gain factor times the time interval and the difference between the control level for mean traffic and the current mean flow. The outer brackets with subscript + sign signifies that the solution is constrained to be positive. The parameter β is the feedback gain. This is an example of an integrating control feedback system, as the error signal is integrated over time to produce change in price. Other variants include differential and proportional feedback.
Similarly, we define the variance pricing PV in terms of the measured standard deviation σA and the control level xCD. This price will typically have, units of price per unit time per unit bandwidth variance. i.e.
PV=F(xCD, σA)
In a discrete system an example function might be
PV(t+1)=|PV(t)+αΔt(x2CD−k2σ2A)|+
This equation indicates that the new variance price at the end of the current time interval equals the current price plus a gain factor times the time interval and the difference between the square of control level for deviation aid the square of k times the measured aggregate variance. The outer brackets with subscript + sign signifies that the solution is constrained to be positive. The parameter α is the feedback gain. This is an example of an integrating control feedback system, as the error signal is integrated over time to produce change in price. Other variants include differential and proportional feedback.
In both these examples the price increases rapidly as the argument of the inner bracket (the error signal) goes positive.
A more sophisticated pricing may be obtained by introducing a second order term which takes into account the first and/or second differentials of the traffic flow means and deviations. In that case the pricing functions become
The price that is fed back to the user is in the form of the two separate prices Pm and PV. These prices can be quoted in terms of a price per unit bandwidth and a price per unit variance. The total ‘price’ charged to the user is then determined by measurements on the traffic leaving the user of the mean and variance of his traffic. These are multiplied by the prices per unit and added together to give the total price to the user T. This enables the network (and optionally) the user to see a much fairer estimate of the network ‘cost’ to transport that particular flow. This information can then be used for admission control purposes, for instance for smoothing the flow to reduce the variance component of the low or reducing or even shutting off the mean flow if the total price T is becoming excessive. It can also be used for admission control of inelastic traffic flows where a user would ask for admission of a guaranteed flow with certain quoted mean and variance characteristics. Once admitted, the ingress controller of such inelastic traffic flows is committed to allow the ingress of traffic within the pre agreed limits, irrespective of how high the internal congestion price subsequently goes.
The technique enables finely differentiated services to be provided by control of ingress flows at the network edge. Some users may, for instance want a class of service which highly values the transmission of bursty traffic without delay These users would have a service level agreement that assigned a high WtP (willingness to pay) to the variance component of the traffic. Thus even in high congestion the bursts from such users would be allowed into the network whilst other users with a low WtP for variance would have their traffic bursts smoothed and hence momentarily delayed.
A modification of the schemes described above is a system in which the sub-allocations of bandwidth for mean and standard deviation control levels xm and xCM are not defined by management fiat but are estimated dynamically from the measurements of mean and deviation parameters of the incoming aggregate flows. The management system still defines the bandwidth peak maximum control level xC. The simplest way to determine the standard deviation allocation is simply to define
xCD=xC−xA
That is to say the allocation for standard deviation is simple taken to be the difference between the current mean traffic level and the peak maximum control level. This has the advantage that as the mean level rises towards the peak bandwidth control level, the variance price rises in an inverse square manner, drastically curtailing new traffic bursts. When the network has only low mean traffic, the variance price is extremely low and bursty traffic is hardly discouraged at all.
In this case it would be natural to define the control level for the mean flow as
xCM=xC−kσA
That is to say the mean control level is defined as the peak bandwidth control level minus K times the currently measured standard deviation. In practice caution may suggest that other constraints such as a minimum bandwidth margin between the peak control level and the mean control level are added.
For optimum resource usage in a future system in which the ingress controllers actively adjust the shaping of the mean and deviation components of their traffic in response to mean and deviation prices and the class of traffic being transmitted, then maximum user utility would be obtained when proportional fairness is applied to the allocation split between mean and deviation traffic. The resource would thus adjust the ratio of xCM to xCD to be the same as the current revenue from mean traffic and the current revenue from the variance component of the traffic. These adjustments would have to be carried out slowly in comparison to the DRC feedback control time constant or instability could result.
The price for traffic traversing a series of resources along a path is optimally found by adding the prices at each resource linearly. Thus, the prices per unit bandwidth for the mean flows for traffic flowing along a particular path are found by adding the prices per unit bandwidth of the means in each resource that the path utilizes. We have found that, for optimum results, the price per unit variance should be determined by adding the price per unit variance of each resource that the path utilizes, rather than adding the price per unit standard deviation.
In a further modification, particularly bursty traffic can incur a further price penalty by the user of an exponential weighting on the standard deviation measurement This exponential weighting function can be used to weight large positive deviations of traffic flow from the mean more strongly than small deviations. This would be used as a second order correction to discourage users from transmitting large bursts of traffic unexpectedly at very high rates. Note that the use of variance rather than simple deviation from a mean already penalizes large sudden deviations with a square law dependency.
It will be understood that the above description of a preferred embodiment is given by way of example only and that various modifications may be made by those skilled in the art without departing from the spirit and scope of the invention.
Number | Name | Date | Kind |
---|---|---|---|
3761818 | Tazaki et al. | Sep 1973 | A |
4912702 | Verbiest | Mar 1990 | A |
5101353 | Lupien et al. | Mar 1992 | A |
5274644 | Berger et al. | Dec 1993 | A |
5276677 | Ramamurthy et al. | Jan 1994 | A |
5289462 | Ahmadi et al. | Feb 1994 | A |
5848139 | Grover | Dec 1998 | A |
5914945 | Abu-Amara et al. | Jun 1999 | A |
5995487 | Weaver et al. | Nov 1999 | A |
6032113 | Graupe | Feb 2000 | A |
6055571 | Fulp et al. | Apr 2000 | A |
6085241 | Otis | Jul 2000 | A |
6208640 | Spell et al. | Mar 2001 | B1 |
6424993 | Weber | Jul 2002 | B1 |
6460036 | Herz | Oct 2002 | B1 |
6487218 | Ludwig et al. | Nov 2002 | B1 |
6516192 | Spaur et al. | Feb 2003 | B1 |
6556548 | Kirkby et al. | Apr 2003 | B1 |
6580691 | Bjoerkman et al. | Jun 2003 | B1 |
6625155 | Dziong | Sep 2003 | B1 |
6628609 | Chapman et al. | Sep 2003 | B2 |
6628612 | Sabry et al. | Sep 2003 | B1 |
6671285 | Kirkby et al. | Dec 2003 | B1 |
6678245 | Cooper et al. | Jan 2004 | B1 |
6724722 | Wang et al. | Apr 2004 | B1 |
6728266 | Sabry et al. | Apr 2004 | B1 |
6771648 | Kim et al. | Aug 2004 | B1 |
6788646 | Fodor et al. | Sep 2004 | B1 |
6801501 | Knightly et al. | Oct 2004 | B1 |
6819662 | Grover et al. | Nov 2004 | B1 |
6873600 | Duffield et al. | Mar 2005 | B1 |
6894972 | Phaal | May 2005 | B1 |
6912214 | Madour et al. | Jun 2005 | B2 |
6912232 | Duffield et al. | Jun 2005 | B1 |
6914883 | Dharanikota | Jul 2005 | B2 |
6928053 | Kadengal | Aug 2005 | B1 |
6954739 | Bouillet et al. | Oct 2005 | B1 |
6958978 | Ireland et al. | Oct 2005 | B1 |
7058704 | Mangipudi et al. | Jun 2006 | B1 |
20010025310 | Krishnamurthy et al. | Sep 2001 | A1 |
20020038360 | Andrews et al. | Mar 2002 | A1 |
20020097747 | Kirkby et al. | Jul 2002 | A1 |
20020138643 | Shin et al. | Sep 2002 | A1 |
20020163887 | Suni et al. | Nov 2002 | A1 |
20030101263 | Bouillet et al. | May 2003 | A1 |
20040022191 | Bernet et al. | Feb 2004 | A1 |
20040136379 | Liao et al. | Jul 2004 | A1 |
Number | Date | Country | |
---|---|---|---|
20020120768 A1 | Aug 2002 | US |