1. Field of the Invention
The present invention relates generally to controlling the admission of new connections to a packet-based switch. More specifically, the present invention relates to an adjustable connection admission control system for a packet-based switch.
2. Description of the Related Art
One way to address the resource allocation problem is for the switch to assign a nominal bit rate to each requested connection. The number of permissible connections is determined from the nominal bit rate using a connection admission control (also referred to as “CAC”) system. CAC must be done for each point of possible congestion. In
Connection admission control is based on traffic descriptors such as peak cell rate, sustained cell rate, maximum burst size, cell delay variation tolerance, etc. The CAC mechanism allocates the minimum switch resources necessary to meet the requirements of the requested connection. If sufficient resources are not available, CAC will not complete the connection. Connection admission control is done in different ways for different traffic classes (also referred to herein as different connection types). That is, constant bit rate, variable bit rate and unspecified bit rate connections are treated differently. For non-constant bit rate service, CAC provides statistical multiplexing. Bandwidth for variable bit rate connections is allocated by determining an equivalent bandwidth (“EBW”) based on the peak cell rate sustained cell rate and maximum burst size. EBW is also determined based on the link between the switch components being considered. For the link, parameters such as link speed, buffer size, buffer read out rate, and buffer structure (shared or individual) are considered.
To allocate bandwidth for the significantly different types of traffic, connection admission control requires complex mathematical manipulation of data. To provide superior service, it is desirable to allocate resources conservatively. On the other hand, to accommodate more users, it is desirable to allocate resources aggressively. Different switch operators desire a more or less aggressive approach to resource allocation. However, connection admission control is determined in advance by the switch manufacturer. Because of the complexities associated with connection admission control, it cannot be altered by the individual switch operator.
Accordingly, it is an object of the present invention to allow individual switch operators to customize their switch to allocate resources more or less aggressively.
This and other objects are accomplished by providing an adjustable connection admission control method and device for packet-based switches that assigns equivalent bandwidths to variable speed connections. Equivalent bandwidths are assigned to variable speed connections. The equivalent bandwidths of the variable speed connections are increased or reduced by a scaling factor to achieve an assigned bandwidth. The scaling factor can be adjusted to change the assigned bandwidths. The method and device determine whether to accept or refuse new variable speed connections based on whether the sum of assigned bandwidths for existing variable speed connections and new variable speed connections exceeds the bandwidth available to variable speed connections. The bandwidth available to variable speed connections is increased or reduced by a variable speed traffic factor. The variable speed traffic factor can be adjusted.
The connection admission control method and device also determines whether to accept or refuse new constant speed connections. To do this the sum of bandwidths for existing and new constant speed connections is obtained. If the sum of bandwidths for existing and new constant speed connections exceeds a maximum factor, the bandwidth available to constant speed connections is reduced by a constant speed traffic factor. The maximum factor and the constant speed traffic factor can be adjusted.
The connection admission control method and device also determines whether to accept or refuse new unspecified connections. At least a portion of the unspecified connections do not have a sustained cell rate. The sustained cell rate is determined by multiplying a peak cell rate by an SCR factor, which factor can be adjusted. Equivalent bandwidths are also assigned to unspecified connections. The equivalent bandwidths of the unspecified connections are increased or reduced by the scaling factor to achieve an assigned bandwidth. New unspecified connections are accepted or refused based on whether the sum of assigned bandwidths for existing and new unspecified connections exceeds a bandwidth available to unspecified connections.
An original scaling factor is maintained for all existing variable speed connections. A new scaling factor is used to allocate bandwidth for all new variable speed connections. When an existing variable speed connection is terminated, the amount of assigned bandwidth freed by the termination is determined based on the original scaling factor. The freed up resources, however, are reallocated based on the new scaling factor.
The invention will be readily understood by reference to the following description of preferred embodiments described by way of example only, with reference to the accompanying drawings in which like reference characters represent like elements, wherein:
In the device shown in
ΣCBR≦TBWCBR·ρCBR (1)
where Σ CBR is the sum of the nominal bit rates for all existing and new CBR connections. TBWCBR is the bandwidth allocated to CBR connections by bandwidth allocator 10. ρCBR is a CBR traffic parameter, which is equal to “1” for 100% efficiency.
If the number of CBR connections exceeds the maximum number m, first controller 12 communicates with CBR traffic controller 14A to reduce the effective bandwidth available to CBR connections. ρCBR may be set to 1 for maximum efficiency, but would be reduced to a number between 0 and 1 when the number of CBR connections exceeds the maximum number m. By reducing the value of ρCBR the switch takes into account the reduced efficiency. The value of ρCBR can be adjusted by the switch operator when the switch is online (without dropping connections) or offline.
It is important to note that when the value of ρCBR is reduced while the switch is online, the effective bandwidth available for all CBR connections immediately decreases. Numerically this translates to an over-subscription problem. However, because the actual number of connections has not changed, it is not necessary to release any connections. The general equation to determine whether new CBR connections will be accepted is as follows:
CBR1/ρCBR,1+CBR2/ρCBR,2+CBR3/ρCBR,3 . . . + . . . CBRn/ρCBR,n≦TBWCBR (2)
where CBR1 to CBRn are the nominal bit rates for n CBR connections and ρCBR,1 to ρCBR,n are the CBR traffic parameters for n CBR connections. The above equation (2) takes into account that different connections may have been established using different values for ρCBR. As mentioned above the value of ρCBR at peak efficiency (usually 1) will be different from the value of ρCBR when the number of CBR connections exceeds the maximum number m. Further, the switch operator can manipulate the value of ρCBR while the switch is online. Usually the switch operator would not change the peak efficiency value of ρCBR from the default value, 1. However, it is highly possible that the switch operator would change the reduced efficiency value of ρCBR (greater than m CBR connections) while the switch is online.
For unspecified bit rate UBR connections, the user may or may not specify a sustained cell rate. If the user does not specify a sustained cell rate, the UBR connection is sent to a second controller 16. UBR1 is sent to second controller 16. At the second controller 16, a sustained cell rate is computed based on the peak cell rate. The sustained cell rate is computed by multiplying the peak cell rate by an SCR parameter α. The SCR parameter α can be adjusted by the switch operator, and according to one implementation, the range for α is 0≦α≦2 with granularity of 0.001.
If the UBR connection has a sustained cell rate associated therewith, it is not necessary to supply the connection to the second controller 16. Referring to
EBW1·β1+EBW2·β2+EBW3·β3 . . . + . . . EBWn·βn≦TBWUBR (3)
where EBW1 to EBWn are the equivalent bandwidths for n UBR connections. β is the scaling factor. By using β1 to βn, the above equation (3) takes into account that different values for β may have been used to establish different UBR connections. TBWUBR is the bandwidth allocated to UBR connections by bandwidth allocator 10.
For VBR connections, an equivalent bandwidth is determined by EBW device 18, as described above for UBR connections. Then, the equivalent bandwidth is increased or reduced by the scaling factor β and third controller 20. Next, the VBR connections are sent to VBR traffic controller 14B. Here the amount of bandwidth available for VBR connections may be decreased from the amount allocated by bandwidth allocator 10. The amount of available bandwidth is reduced by the VBR traffic parameter ρVBR in a manner similar to CBR connections. New VBR connections are accepted if the following equation is satisfied:
EBW1·β1/ρVBR,1+EBW2·β2/ρVBR,2+EBW3·β3/ρVBR,3+ . . . + . . . EBWn·βn/ρVBR,n≦TBWVBR (4)
where EBW1 to EBWn are the equivalent bandwidths for n VBR connections. TBWVBR is the bandwidth allocated for VBR connections by bandwidth allocator 10. The above equation takes into account that different values of β and ρ may have been used for different VBR connections. ρVBR may be set independently of ρCBR. Alternatively, the same value may be used for both ρVBR and ρCBR. For all requested connections, admission controller 22 establishes or refuses the new connection. For this purpose, admission controller 22 is connected to CBR traffic controller 14A for CBR connections, to third controller 20 for UBR connections and to VBR traffic controller 14B for VBR connections.
To impart flexibility to the switch, each of the parameters m, ρCBR, α, β and ρVBR can be varied independently by the switch operator. If the switch operator wishes to be more or less aggressive than the switch manufacturer, the switch operator can increase or decrease the parameters m, ρCBR, α, β and ρVBR. However, the effect of changing one or more of the parameters m, ρCBR, α, β and ρVBR on the switch may not be readily apparent to the switch operator. The switch operator may need a trial and error process to fully understand how to achieve his or her goals. However, the bandwidth of existing connections cannot be reallocated unless the existing connections are terminated. Because of quality of service and reliability issues, it is impermissible to terminate connections. Accordingly, a mechanism is necessary to allow a switch operator to vary the connection admission control system when the switch is in use. To this end, the present invention allows the switch operator to vary the parameters m, ρCBR, α, β and ρVBR for new connections only, without disturbing existing connections. When an existing connection is terminated, bandwidth is reallocated based on the new parameters m, ρCBR, α, β and ρVBR.
When an existing connection is terminated, it is essential that the bandwidth freed up for new connections is equivalent to the bandwidth originally allocated for the connection terminated. Otherwise, bandwidth could be permanently lost or the switch could be overloaded. To keep track of the bandwidth allocated, the admission controller 22 is connected to a memory 24. When a new connection is established, the memory 24 stores the nominal bandwidth allocated for that connection. When the connection is terminated, the memory 24 is used to determine how much bandwidth has been freed up by the termination.
There are two basic cases that need to be considered when changing the CAC parameters while the switch is in operation. First, the allocated bandwidth of existing connections may decrease because of the change. CAC recalculates the bandwidth requirements for effected classes of service at each link (congestion point) within the switch. This process is done stepwise, link-by-link until the recalculation is complete. There is no need to reroute existing connections and there is no strong time dependency between the reallocation of the first and last congestion point. It is therefore possible to continue processing connections even as the bandwidth is being reallocated.
Second, changing one or more of the CAC parameters while the switch is in operation may cause the allocated bandwidth to increase. This results in a temporary over subscription of capacity. For example, assume that the scaling parameter β is increased from 1 to 2. If the bandwidth available for allocation (TBW·ρ) is 622 Mbps and 500 Mbps is already allocated for existing VBR connections, the allocated bandwidth for existing VBR connections effectively becomes 10000 Mbps. Although the bandwidth allocated is now greater than the capacity, the actual traffic has not changed. There is therefore no need to drop connections in order to make them fit within the 622 Mbps link. However, no new connections will be accepted through this link since there is no excess capacity available. Eventually, the existing connections will terminate, freeing up bandwidth. When the allocated bandwidth decreases below 622 Mbps, new connections will once again be accepted. This mechanism provides a graceful way for switch operators to tune their system while not disrupting service. This same method works whenever changing any of the CAC parameters m, ρCBR, α, β and ρVBR.
The invention has been described in connection with the device shown in
While the invention has been described in connection with the preferred embodiments, it will be understood that modifications within the principles outlined above will be evident to those skilled in the art. For example, the allocation for CBR connections is described as not being reduced by the scaling parameter β, and this is due to the current standards for CBR connections. However, because the bit rates of CBR connections do vary, it is certainly possible that connections analogous to CBR connections would be allocated a reduced bandwidth. The invention is not limited to the preferred embodiments, but is intended to encompass such modifications.
This application is based on and claims priority to U.S. Provisional Application No. 60/105,836, filed Oct. 26, 1998.
Number | Name | Date | Kind |
---|---|---|---|
5341366 | Soumiya et al. | Aug 1994 | A |
5555265 | Kakuma et al. | Sep 1996 | A |
5583857 | Soumiya et al. | Dec 1996 | A |
5696764 | Soumiya et al. | Dec 1997 | A |
5751691 | Soumiya et al. | May 1998 | A |
5781531 | Charny | Jul 1998 | A |
5881049 | Beshai et al. | Mar 1999 | A |
5909443 | Fichou et al. | Jun 1999 | A |
5936940 | Marin et al. | Aug 1999 | A |
5936958 | Soumiya et al. | Aug 1999 | A |
5949757 | Katoh et al. | Sep 1999 | A |
5991268 | Awdeh et al. | Nov 1999 | A |
5991812 | Srinivasan | Nov 1999 | A |
6014367 | Joffe | Jan 2000 | A |
6023468 | Mouen-Makoua et al. | Feb 2000 | A |
6034945 | Hughes et al. | Mar 2000 | A |
6046981 | Ramamurthy et al. | Apr 2000 | A |
6097699 | Chen et al. | Aug 2000 | A |
6104699 | Holender et al. | Aug 2000 | A |
6108305 | Charny et al. | Aug 2000 | A |
6151305 | Chen | Nov 2000 | A |
6167445 | Gai et al. | Dec 2000 | A |
6215768 | Kim | Apr 2001 | B1 |
6252847 | Lee | Jun 2001 | B1 |
6282197 | Takahashi et al. | Aug 2001 | B1 |
6304549 | Srinivasan et al. | Oct 2001 | B1 |
6404738 | Reininger et al. | Jun 2002 | B1 |
6442138 | Yin et al. | Aug 2002 | B1 |
6678245 | Cooper et al. | Jan 2004 | B1 |
Number | Date | Country | |
---|---|---|---|
60105836 | Oct 1998 | US |