The present invention relates to a method of estimating the optimum service rate at a specified quality of service for the transmission of packets of data of different characteristics through a switch node comprising a buffer having a defined size. The invention is also directed towards a system for carrying out such a method.
Traffic in a data network is essentially composed of individual transactions or flows from a source. The source generates a stream of bits grouped into packets. A complete description of the statistics of the source would be very complex. If the goal is the provisioning of sufficient resources at a router or switch in order to limit packet loss and delay at that router, then a more compact encapsulation of the statistics of traffic arriving at the router can be sufficient. We refer to any such encapsulation as a traffic descriptor. One such traffic descriptor has been described in the US Patent Specification No. 6580691 (Bjoerkman et al), namely a polygonal approximation to a scaled cumulant generating function (sCGF). This US Patent Specification discloses a method and system for estimating the sCGF on-line in real time and storing it as a compact traffic descriptor.
The terminology of this specification is that which is used in High-Performance Communication Networks [Jean Wairand and Pravin Varaiya (Second Edition) Academic Press 2000], unless clearly otherwise.
A communication network is a collection of network elements interconnected so as to support the transfer of information from a user at one network node to a user at another. The principal network elements are links and switches. A link transfers a stream of bits from one end to another at a specified rate with a given bit error rate and a fixed propagation time. In this specification, we refer to the rate in bits per second at which a buffer is served as the service capacity. Other terms often used interchangeable with service capacity are link-rate and bandwidth. Links are unidirectional. The most important links are:
optical fibre;
copper twisted pair;
ethernet.
Several incoming and outgoing links meet at a switch, a device that transfers bits from its incoming links to its outgoing links. The name “switch” is used in telephony, while in computer communications, the device that performs routing is called a router, the terms are used interchangeably in this specification. When the rate of incoming bits exceeds that of outgoing bits, the excess bits are queued in a buffer at the switch. The receiver of each incoming link writes a packet of bits into its input buffer, the transmitter of each outgoing link reads from its output buffer. The switch transports packets from an input buffer to the appropriate output buffer.
The quality of a communications network service, as perceived by a user, varies greatly with the state of the network. To make packet-switched networks economically viable, it is necessary to be able to guarantee quality while reducing capital investment and operating expenses.
Degradation in the perceived quality of a service can often be traced back to loss or delay of data packets at a node or switch in the network. User satisfaction can be guaranteed by managing loss and delay of packets at those nodes where congestion can occur.
Typically, users transmit bits in bursts: active periods are interspersed with periods of inactivity. The peak rate of transmission cannot exceed the link rate. The mean rate of transmission, by definition, cannot exceed the peak rate. The ratio:
is a measure of the burstiness of the source.
Loss and delay of data packets at a node in the network arise from the queuing of packets in the buffers of switches or routers. Buffers are required to cope with fluctuations in the bit-rate on incoming links. However, if the buffers are too small, packets will be lost as a result of buffer overflow; if the buffers are too large, some packets will experience unacceptable delays. For a given buffer-size, loss and delay can be reduced by increasing the capacity of the outgoing link.
To eliminate packet loss entirely, it would be necessary to increase the capacity of the outgoing link to equal the sum of the capacities of the incoming links. This is prohibitively expensive. Nevertheless, it is a strategy employed sometimes by network operators who take a conservative view on assuring network quality of service.
There is a better way. It is unnecessary to eliminate packet loss and unacceptable packet delay in order to give satisfactory perceived quality. It is enough to keep their frequency within predetermined bounds. These bounds are referred to as Quality of Service (QoS) targets.
The optimal way to ensure satisfactory perceived quality is to provide the minimum capacity that will guarantee the QoS targets. This minimum capacity is referred to as the Bandwidth Requirement (BWR) of the bit-stream. It lies somewhere between mean rate and the peak-rate requirement
The existence of a BWR and its value can be demonstrated experimentally with a router by observing the change in the frequency with which a target queuing delay in an output buffer is exceeded when the capacity of the outgoing link is varied.
The mean-rate and the peak-rate doe not depend on the QoS targets. For bursty traffic, the peak-rate can be many multiples of the mean-rate. As the QoS target changes, the BWR varies between them.
For a given QoS target, the BWR depends strongly on the nature of the traffic. There is no universal multiplier than can be applied to the mean-rate or peak-rate to give the BWR for a given QoS target. The present applicants have provided various ways of measuring BWR on line in real time such as described in US Patent Specification No. 6580691 (Bjoerkman et al).
This opens the way for many applications: monitoring network quality levels, QoS-sensitive service provisioning, IP call admission control, traffic-based billing and capacity planning.
Essentially, therefore, given the buffer size b and the QoS target Q, the BWR of the communications system can be calculated from the traffic descriptor D. It will be appreciated that the traffic descriptor, which is essentially the statistical properties of the data, is all important. That descriptor must contain sufficient statistical information to allow computation of the bandwidth requirement. Thus, it is vital to choose the correct Descriptor format, definition or methodology to describe the statistical properties of the traffic. Essentially, the traffic descriptor D describes the characteristics of the particular traffic.
There are circumstances in which the nature of the source is such that the statistics of the packet stream are independent of the service capacity available at the router in question. This is the case, for example, where the output of the source is voice traffic—digitised speech. Here, the statistics depend on the behaviour of the speaker and on the codec used to digitise the audio signals, but not on the available service capacity. In general, we refer to packet streams from sources whose statistics are independent of the available service capacity as inelastic traffic.
However, there are circumstances in which the nature of the source is such that it cannot be assumed that the statistics of the traffic stream is independent of the service capacity at the router. A feedback mechanism causes the statistics of the source to depend on the service capacity S available to its packet-stream at the buffer. One example of this is web-browsing; here the rate at which the user requests web-pages can depend on the rate at which they are received. In general, we refer to packet streams from sources whose statistics depend on the available service-capacity as elastic traffic.
US Patent Specification No. 6,266,322 B1 (AT&T Corp) which is specifically referenced in totality herein describes in some detail how elastic data traffic is handled.
Indeed this US patent specification discloses a method of dimensioning link bandwidth for elastic data traffic for a link in a communications network. However, this US patent does not disclose a method of accurately determining the minimum service rate to maintain quality of service requirements within the network. Further it does not address the problem of selecting an optimum service rate. It could be suggested that it is not as important for elastic traffic as inelastic traffic, since the former operates by feedback control to adapt to time-varying available bandwidth.
PCT Publication No. WO 01/13557 (Fujitsu Network Communications, Inc.) discloses 10 a system for supporting multiple application traffic types over a connection network, for example, elastic and inelastic traffic. Further examples of patents in the area of handling elastic traffic in data networks are disclosed by U.S. Pat. No. 6,115,359 (Nortel Networks Corporabon) and PCT Publication No. WO 01/28167 (Telefonakfiebolaget LM Ericsson). However, this patent does not teach how to address, in a fundamental way, the problems of inelastic traffic. It relates more to committing some bandwidth to the inelastic traffic by mapping the inelastic traffic to components or switches which provide bandwidth commitments. These commitments enable the data to be transferred through the switch without exceeding a predetermined delay. However, it could be suggested that it is still not accurately estimating the bandwidth requirement. It is more a question of allocating sufficient bandwidth having regard to what it has believed the traffic to be.
The fundamental problem in providing quality of service in a data network is to determine accurately the optimum service rate which is in effect the minimum service rate at which packets of data are removed from a buffer in a switch, whilst maintaining quality of service in the data network and optimising the available bandwidth in the network. Methods devised for determining this optimum service rate for inelastic traffic do not work without modification for elastic traffic because the statistical character of the traffic changes in respect to changes in the available service. In practice, data network operators use trial and error methods in setting the service rate to achieve the desired response time for delivering elastic traffic. This is costly and time consuming as it requires network operators to continually monitor the response time and reconfigure the service rate.
The present invention is directed towards providing a method of estimating the optimum service rate at a specified quality of service for the transmission of data of different characteristics through a switch having a defined size. The invention is directed towards doing this without the need for human intervention.
According to the invention, there is provided a method of estimating the optimum service capacity at a specified quality of service (QoS) for the transmission of packets of data traffic of different characteristics, the traffic being described by a predetermined type of descriptor (D) to allow the calculation of the estimated bandwidth requirement (BWR) for that traffic, through a switch node comprising a buffer having a defined size (b), comprising at time intervals, carrying out the steps of:
A considerable advantage of the present invention is that it operates successfully without a knowledge of the precise form of the bandwidth requirement (BWR) for various service rate at a buffer of a switch. Indeed, relatively little knowledge is known. All that is required is to configure a service capacity, calculate the BWR to configure a new service capacity and keep on repeating this until the calculated rate of BWR and configured service capacity coincide. It is relatively simple and easily carried out.
In one way of carrying out the invention, the initial service capacity specified in step (a) is the previous optimum service capacity. This will lead to a quicker calculation as generally, working off a new optimum service capacity is most likely to lead to a service capacity relatively close to the previous optimum service capacity.
Ideally, the traffic is continuously monitored so that if the nature of the traffic changes, a new optimum service capacity is calculated. Further, it is envisaged that when the required target QoS changes from the target QoS initially set, the target QoS is reset and a new optimum service capacity is calculated.
It is envisaged that some or all of the various steps (a) to (g), as listed above, can be carried out in various jurisdictions, other than the step of configuring the service capacity for the transmission. Further, it will be appreciated that the method further comprises using the optimum service capacity to control the transmission of the traffic through the switch node.
In another method according to the invention, it is possible that a sample of the traffic is received with step (a), as listed above, being carried outside the jurisdiction and in which at least steps (c) to (g) are carried out within the jurisdiction. Again, it will be appreciated that the switch node may be remotely located with respect to where the method is carried out, except for the downloading of data to and from the switch node.
Further, the invention provides a closed loop control system comprising a communications network in which are interconnected:
With this latter closed loop control system, the controller may be directly connected to a specific end user output source for the transmission of data to the switch node.
Further, the invention provides a computer program comprising program instructions for causing a computer to perform the method as laid out above.
In a further embodiment, the computer program comprises program instructions for causing a computer to provide the means as laid out above. Such a computer program may be embodied on a record medium, a computer memory, a read only memory or carried on an electrical signal carrier.
The invention will be more clearly understood by the following description of an embodiment thereof given by way of example only with reference to the accompanying drawings in which:
As stated above, for resource provisioning, it is important to know the minimum service-capacity that must be provided at a buffer in the router to ensure that a given Quality of Service (QoS) target is met. We shall denote this rate in bit/sec. by BWR and generally refer to it as the required service capacity. The BWR depends on three factors. The first factor is the quality of service (QoS) that you require which may for example in the transmission of elastic data be described as the number of packets dropped i.e. those that have to be resent. In other words they are not accepted at a particular buffer and must be resent by the source. Typically as explained above, 1 in 105 packets dropped or alternatively that 1 in 103 packets are not delayed by more than 30 milliseconds are often considered acceptable.
The second factor is the size of the buffer which is preconfigured.
The third factor that effects the BWR is effectively the nature of the actual data being transmitted. This as already explained, can be described statistically and there are various methods of providing such a descriptor which relate to certain statistical properties of the data being transmitted. Accordingly therefore one can describe the bandwidth requirement as a function:
BWR=f(D, b, QoS)
where:
For elastic traffic, the traffic descriptor is a function of the available service-capacity.
D=g(S)
The invention describes how an estimator designed to determine BWR for inelastic traffic can be used to determine the minimum service required to ensure that a given QoS target is met for elastic traffic. For a given service-capacity S, the estimator yields a value B(S) given by
B(S)=f(g(S), b, QoS)
It is observed experimentally that:
It follows that the BWR for elastic traffic is that value S′ of the service capacity for which
S*=B(S*).
Referring now to
It follows that, for an elastic source, the Optimum Service Rate is the unique value S* for which S=B(S). Hence any method of solving iteratively the equation S=B(S) yields a method for determining S*. In this specification, methods for solving the equation iteratively and hence determining S* are described. As mentioned above, these methods do not rely on first determining the function B(S).
It will be appreciated that to carry out the invention, it is necessary to choose a suitable type of descriptor or descriptor format for allowing the bandwidth requirement to be determined. As stated already, there are many such descriptors (D) and the more accurate and appropriate the descriptor (D) chosen or predetermined, the better will be the calculation of the BWR.
Assume the buffer size b to be known.
Fix the QoS target Q.
Configure the service rate at some initial value S1
Estimate the traffic descriptor for the source and use it together with the values b and
Q to determine the BWR value B1:=B(S1) see
Next configure the service rate to be S2 given by S2=B1 see
Re-estimating the traffic descriptor and repeating the procedure, we use the scheme:
For N=1, 2, . . .
Put SN+1=BN
to get a sequence S1, S2 . . .
As N increases, SN converges to S*, which is the unique value of the service capacity such that
S*=B(S*).
It will be appreciated, by considering
In practice, the service rates S1, S2 . . . may be reconfigured at suitable time intervals such as for example 5 minutes. It also has to be appreciated that in many instances It will be necessary to carry out the operation indefinitely. A reason for this would be for example where the software packages or operations being run are changed. In which case, the bandwidth requirement function changes to, for example, B′(S). Now the operation has to be repeated and the new optimum service rate has to be obtained, in the sense that one now has to solve the new equation which is:
S=B′(S)
Referring now to the flow process of
It will be appreciated that the invention can be carried out in many jurisdictions and that therefore it would not be unreasonable to find that certain operations are carried out in one country and more carried out another.
It is envisaged that there are many ways that the invention may be carried out by computers and similar equipment suitably programmed. Further the information and data generally supplied will allow many and varied control operations to be carried out using the invention.
Essentially what the present invention does is provide packet level quality of service on a data network where the rate at which a source emits data packets adapts to utilise all the available bandwidth. The present invention determines accurately the minimum service rate which is obviously the optimum service rate required to achieve a target level of service. For example in the remote querying of a database, the application level response time increases with an increase in packet delay caused by the queuing of packets in the buffer at a network element As has been explained above, in order to achieve acceptable response times ways must be found to achieve a quality of service target expressed as delay constraints, Present systems do not allow this.
The present invention provides a way of directly controlling packet level quality of service. Essentially the present invention is “lightweight” and capable of being incorporated in closed loop control systems as described with reference to
As will be appreciated by any mathematician, there are many iterative schemes to calculate the optimum service rate. Most of these have a trade off between speed of conversion and computational overhead.
One of the great advantages of the present invention is that there is no need to know the actual function, but simply to carry out the calculations. Depending on the number of calculations that have to be carried out before convergence is reached, it will be appreciated that if the results were to be plotted, much more accurate knowledge would be known regarding B(S) than was known. However, this is not necessary and does not provide any -great advantage to those operating the communications system.
Referring now to
In operation, the closed loop control samples the data traffic flowing through the switch 31 at any particular time. The controller 36 comprises a database 37 and a computer 38. It will be appreciated that the database 37, for example a server, and computer 38 can remotely operate with each other. They do not have to be in the same jurisdiction as the switch or indeed each other. The controller 36 selects an arbitrary service rate. This can be done by a user inputting a particular service rate via the computer 38 or can be selected by the database 37. The controller 36 extracts a traffic descriptor D which is a description of the statistical properties of the traffic flow flowing through the buffer 33 at the time of the sampled traffic. The controller 36 calculates the BWR from the traffic descriptor D, the buffer size b and the required Quality of Service (QoS) for the buffer 33. The controller 36 estimates a new service rate from the calculated BWR. This is illustrated in
This final service rate is the optimum service rate at which the buffer 33 should be served. It will be appreciated that the computer and the database can be at separate locations or indeed in separate jurisdictions, or alternatively housed on the one server, depending on the application, as long as closed loop control is achieved.
It will be appreciated that various aspects of the invention may be embodied on a computer that is running a program or program segments originating from a computer readable or usable medium, such medium including but not limited to magnetic storage media (e.g. ROMs, floppy disks, hard disks, etc.), optically readable media (e.g. CDROMs, DVDs, etc.) and carrier waves (e.g., transmissions over the internet). A functional program, code and code segments, used to implement the present invention can be derived by a skilled computer programmer from the description of the invention contained herein.
It will be appreciated therefore that a computerised program may be provided providing program instructions which, when loading into a computer, will constitute the means for organising and rearranging the traffic flow in accordance with the invention and that this computer program may be embodied on a record medium, a computer memory, a read only memory or carried on an electrical carrier signal. In this specification the terms “comprise, comprises, comprised and comprising” and any variation thereof and the terms “include, includes, included and including” and any variation thereof are deemed to be totally interchangeable and should be afforded the widest interpretation possible.
This invention is in no way limited to the embodiment shown and may be varied in both construction and detail within the scope of the claims.
Number | Date | Country | Kind |
---|---|---|---|
S2003/0235 | Mar 2003 | IE | national |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/IE04/00051 | 3/31/2004 | WO | 10/23/2006 |