USING BANDWIDTH MEASUREMENTS TO ADJUST CIR AND EIR ON A SUB-RATE LINK
A method and system are provided for measuring the bandwidth of a network segment between a first location and a second location by generating a plurality of synthetic packets at the first location and marking each generated synthetic packet with a transmission timestamp indicative of a first clock time at which the synthetic packet is generated; transmitting each of the generated synthetic packets to the second location; receiving each synthetic packet at the second location and marking each received synthetic packet with a reception timestamp indicative of a second clock time at which the synthetic packet is received at the second location; calculating an inter-packet delay variation of the network segment based on the transmission timestamp and the reception timestamp of two or more synthetic packets; and deriving an available bandwidth of the network segment based on the calculated inter-packet delay variation.
Latest ACCEDIAN NETWORKS INC. Patents:
This invention is directed towards the ability to react to a detected change in the available bandwidth of a sub-rate link, for instance wireless, by adjusting operating parameters for the link with regard to service assurance, traffic engineering, service reliability and related functions.
BACKGROUND OF THE INVENTIONParameters and settings for service assurance, traffic engineering and service reliability (amongst a plurality of other network services), are often determined and defined based on the bandwidth of a link. This is the case for committed information rate (CIR) and excess information rate (EIR) settings of an Ethernet virtual circuit (EVC). Time synchronization protocols such as IEEE 1588v2 also require a link with a stable bandwidth in order to derive and maintain clock synchronization between a pair of networking devices. Flow control mechanisms have been used to adapt to the bandwidth of a link or network segment (ref: U.S. Pat. No. 8,139,485). Such flow control protocols require the knowledge of the protocol at each node in the segment.
By being able to detect and measure the available bandwidth of a link or network segment, it is possible to react to a change in the available bandwidth and adjust impacted parameters (for instance CIR and EIR) or adjust the clock synchronization between a pair of networking devices in order to attempt preserving the quality of the services offered over a link when its bandwidth is negatively impacted by spurious or permanent degradation, spurious degradation being sometimes common for wireless links suffering from temporary weather impairments and external sources of interference.
SUMMARY OF THE INVENTIONIn accordance with one embodiment, a method and system are provided for measuring the bandwidth of a network segment between a first location and a second location by generating a plurality of synthetic packets at the first location and marking each generated synthetic packet with a transmission timestamp indicative of a first clock time at which the synthetic packet is generated; transmitting each of the generated synthetic packets to the second location; receiving each synthetic packet at the second location and marking each received synthetic packet with a reception timestamp indicative of a second clock time at which the synthetic packet is received at the second location; calculating an inter-packet delay variation of the network segment based on the transmission timestamp and the reception timestamp of two or more synthetic packets; and deriving an available bandwidth of the network segment based on the calculated inter-packet delay variation.
In one implementation, the derived available bandwidth is used to trigger one or more actions, such as the action of changing the configuration of traffic shapers for the network segment. The deriving of the available bandwidth preferably takes into account one or more previously calculated inter packet delay variations. The plurality of synthetic packets may have the same predetermined number of bytes, and may be transmitted substantially consecutively.
One implementation for calculating the inter packet delay variation comprises calculating a first delay as a difference between the reception timestamp and the transmission timestamp for a first of the plurality of synthetic packets; calculating a second delay for a second synthetic packet as a difference between the reception timestamp and the transmission timestamp for the second of the plurality of synthetic packets, and setting the inter packet delay variation as the difference between the second delay and the first delay. The available bandwidth of the network segment may be determined by multiplying a number of bytes in a first synthetic packet by the rate of a first link in the network segment and adding the calculated inter packet delay variation for the first synthetic packet, and dividing the resulting sum by a number of bytes in the synthetic packet.
The invention may best be understood by reference to the following description taken in conjunction with the accompanying drawings.
Although the invention will be described in connection with certain preferred embodiments, it will be understood that the invention is not limited to those particular embodiments. On the contrary, the invention is intended to cover all alternatives, modifications, and equivalent arrangements as may be included within the spirit and scope of the invention as defined by the appended claims.
Turning now to the drawings and referring first to
A bandwidth measurement function (BMF) 109 is implemented at a second location 102, on the opposite side relative to the position of the network 100 and upstream from the data sink device 120. At regular intervals, two or more synthetic packets (not user traffic) are generated by a STG 105 and transmitted at the highest possible rate and packet priority and without any substantial gap to the BMF 109 across the network 100 with the goal of obtaining measurement for the purpose of measuring the available bandwidth on the network 100 between the first location 101 and the second 102 location. After analysis by the BMF 109, the synthetic packets are discarded. In another embodiment, the BMF 109 is installed in parallel to the sink device 120 and is not in the direct data path between the network 100 and the sink device 120. The BMF can also be implemented a part of the sink device 120 or within a NID or other network elements.
An Inter Packet Delay Variation (IPDV) is calculated by the BMF 109 from the synthetic packets and is made available to a Bandwidth Decision Function (BDF) 115 that uses the IPDV to determine the available bandwidth of the network segment 104 between the first and second location. The packet is transmitted into the segment using a first link 106. The packet exits the segment using a second link 107. The BDF can be collocated with the BMF 109 at the second location, or the BDF 115 can be implemented at a separate location and used in a centralized manner, so multiple bandwidth measurements from different points in the network can be analyzed together.
The BDF 115 can trigger one or more actions based on the available bandwidth measured. For example, if a degradation or improvement of available bandwidth is estimated, an adjustment to the CIR and EIR settings for each class of service may be required. If an adjustment is needed to the settings (CIR and/or EIR) for one or more class of service for the network 100, the BDF 115 communicates the new settings to the TSS 103. In another embodiment, traffic belonging to one or more Class of Service (CoS) may be moved to a different network path with better performance.
In another embodiment, the roles of STG 105 and of BMF 109 may be combined into the same device, and a pair of these combined devices would replace devices 105 and 109 in order to allow for the measuring of the bandwidth over link 202 in both directions (from link 201 to link 203 and from link 203 to link 201).
When the pair of radio transceivers (220, 230) supports data compression, the synthetic packets generated by the STG 105 may be constructed to prevent data compression in order to achieve more accurate IPDV measurements over the radio Link 202. If the synthetic packets are compressed over the radio Link 202, the content of each of the synthetic packets should ideally result in the same level of compression to limit any significant discrepancy in the IPDV measurements.
The IPDV is calculated by the BMF 109 and used by the BDF 115 to derive the available bandwidth of a link in a specific direction since links (especially radios, but also xDSL and others) may deliver asymmetric bandwidth for each direction of the link.
Looking at
It is known that:
RXA=T0+DA
DA=S1A+C1A+SWA+S2A+OFF
-
- Where
- S1A=Serialisation delay 130 on link 1 (201)
- C1A=Congestion delay 131 in radio 220
- R1=Rate on link 1 (201)
- RW=Rate on wireless link 202
- SWA=Serialization delay 132 on wireless link 202
- S2A=Serialization delay 133 on link 2 (203)
- OFF=Clock offset at bandwidth measuring node 109 when compared to the clock of the STG 105
Immediately after transmitting synthetic packet A, the STG 105 generates synthetic packet B at time T1, and synthetic packet B is received at the BMF 109 at time RXB.
It is known that:
RXB=T1+DB
DB=S1B+C1B+SWB+S2B+OFF
-
- Where
- S1B=Serialisation delay 134 on link 1 201
- C1B=Congestion delay 135 in radio 220=C1A+(LA*RW)−S1B
- RW=Rate on wireless link 202
- SWB=Serialization delay 136 on wireless link 202
- S2B=Serialization delay 137 on link 2 (203)
- OFF=Clock offset at bandwidth measuring node 109 when compared to the clock of the STG 105
- IPDV is computed as:
IPDV=(RXB−T1)−(RXA−T0)=DB−DA
-
- Assuming LB=LA
IPDV=LB*RW−LB*R1
When using the IPDV measurements, the BDF 115 may use hysteresis or weighted average techniques to smooth the results to avoid reacting on transient variations. This is particularly useful for links that may experience periods of instability (such as radio links). IPDV measurements may also be considered as statistical outliers, and ignored or deleted, if they are significantly outside of the range of previous measurements.
The IPDV calculation (or average) can be used to estimate the bandwidth available between the first and second locations at any given moment using:
RW=(IPDV+LBR1)/LB
If the first and second locations are located near two radio transceivers, the bandwidth available RW represents the current bandwidth on the radio link.
The above calculation applies similarly to measure the available bandwidth of a network segment. In this case RW is the rate of the first link 106.
Looking now at
Over time, the link 100 may experience degradation in the total available bandwidth 300 it can deliver in the measured direction. In this case the BDF 115 takes action to reduce the CIR 3 303 to zero (effectively dropping all user traffic for that class of service). It can also take action to eliminate some or all of the best effort traffic 304. After another period of time, when the measurements indicate that the bandwidth available between the first and second locations is increased to a given level, the BDF 115 takes action to communicate with the TSS 103 and restore the value for CIR 3 303 to its originally defined value and the amount of remaining bandwidth 304 for best effort traffic is also restored to its originally defined value. In another embodiment, the BDF 115 reduces the CIR values (301, 302, 303, 304) for each class of service prorated to its original percentage of the total allocated bandwidth 300 and will reinstate the original CIR values (301, 302, 303, 304) for each class of service using the same prorated technique when more bandwidth becomes available on link 100.
The BDF 115 needs to keep track of the number of classes supported, applicable in the direction of the IPDV obtained for a link with the goal to avoid impacting the CIR of the higher priority classes of traffic when the overall performance of the link RW (in the measured direction) is degraded compared to the previous IPDV measurement.
The estimate of the RW measurement can be smoothed using different known techniques such as weighted averaging, moving averages etc. The smoothed estimate SRW can then be compared to different thresholds for the BDF to decide which action to take.
For example, if there are two classes of traffic defined over the link 100 and enforced by the TSS 103, the available bandwidth determined from the IPDV can be allocated in such a way that the CIR for the link corresponds to the CIR required to support the class with the highest priority of service, and with the second class configured to use the remaining bandwidth in a best-effort mode. This way, the CIR for the highest class of traffic is protected as long as the achievable bandwidth on the link 100 is sufficient to meet that CIR. When there are more than two classes of service, the CIR values for each class of service are adjusted (if needed), generally beginning with the CIR associated with the least priority class in order to minimize any impact to the higher classes of service.
Whenever the CIR for a class of service is modified, adequate notifications can be sent to a network management entity or a similar device to alert the network manager or the operator of the condition.
Furthermore, the BDF 115 can also take action to report any changes to the IPDV and resulting bandwidth and CIR settings to the network management entity, to allow full reporting of the changes. In order to avoid the generation of a large number of notifications, the BDF 115 may use well-known hysteresis techniques to limit the number of notifications while retaining the ability to report on drastic and rapid changes when a link is highly unstable.
Networks are now generally designed with redundant links to recover from link failures. Looking at
Looking now at
In an alternate embodiment, the Bandwidth Decision Node 115 may be distributed among a plurality of ring nodes (510, 511, 512 and 513) rather than being integrated in a single centralized ring node (510 as per
When the IPDV measurements indicate the degradation of a single link (601, 602, 603, 604), the BDF 115 may take action to disable the degraded link and, optionally, locate both RPLs (610 and 620) on the same link (601, 602, 603, and 604) in order to achieve the best possible overall bandwidth.
While particular embodiments and applications of the present invention have been illustrated and described, it is to be understood that the invention is not limited to the precise construction and compositions disclosed herein and that various modifications, changes, and variations may be apparent from the foregoing descriptions without departing from the spirit and scope of the invention as defined in the appended claims.
Claims
1. A method for measuring the bandwidth of a network segment between a first location and a second location, comprising
- generating a plurality of synthetic packets at the first location and marking each generated synthetic packet with a transmission timestamp indicative of a first clock time at which the synthetic packet is generated,
- transmitting each of the generated synthetic packets said second location,
- receiving each synthetic packet at the second location and marking each received synthetic packet with a reception timestamp indicative of a second clock time at which the synthetic packet is received at the second location,
- calculating an inter-packet delay variation of the network segment based on the transmission timestamp and the reception timestamp of two or more synthetic packets, and
- deriving an available bandwidth of the network segment based on the calculated inter-packet delay variation.
2. The method of claim 1 wherein said derived available bandwidth is used to trigger one or more actions.
3. The method of claim 2 wherein said one or more actions comprises changing the configuration of traffic shapers for said network segment.
4. The method of claim 1 wherein the deriving of said available bandwidth takes into account one or more previously calculated inter packet delay variations.
5. The method of claim 1 wherein each of said plurality of synthetic packets has the same predetermined number of bytes.
6. The method of claim 1 wherein said plurality of synthetic packets are transmitted substantially consecutively.
7. The method of claim 1, in which said calculating the inter packet delay variation comprises
- calculating a first delay as a difference between the reception timestamp and the transmission timestamp for a first of said plurality of synthetic packets,
- calculating a second delay for a second synthetic packet as a difference between the reception timestamp and the transmission timestamp for the second of said plurality of synthetic packets, and
- setting the inter packet delay variation as the difference between said second delay and said first delay.
8. A method according to claim 1, in which said deriving an available bandwidth of the network segment comprises
- multiplying a number of bytes in a first synthetic packet by the rate of a first link in said network segment and adding the calculated inter packet delay variation for said first synthetic packet, and
- dividing the resulting sum by a number of bytes in said synthetic packet.
9. A system for measuring the bandwidth of a network segment between a first location and a second location, said system comprising
- a first processor adapted to generate a plurality of synthetic packets at the first location and mark each generated synthetic packet with a transmission timestamp indicative of a first clock time at which the synthetic packet is generated, and transmit each of the generated synthetic to said second location, and
- a second processor adapted to receive each synthetic packet at the second location and mark each received synthetic packet with a reception timestamp indicative of a second clock time at which the synthetic packet is received at the second location, calculate an inter-packet delay variation of the network segment based on the transmission timestamp and the reception timestamp of two or more synthetic packets, and derive an available bandwidth of the network segment based on the calculated inter-packet delay variation.
10. The system of claim 9 in which said second processor is adapted to use said derived available bandwidthto trigger one or more actions.
11. The system of claim 10 wherein said one or more actions comprises changing the configuration of traffic shapers for said network segment.
12. The system of claim 9 in which said second processor is adapted to derive said available bandwidth based at least in part on one or more previously calculated inter packet delay variations.
13. The system of claim 9 in which said first processor is adapted to generate each of said plurality of synthetic packets with the same predetermined number of bytes.
14. The system of claim 9 in which said first processor is adapted to transmit said plurality of synthetic packets substantially consecutively.
15. The system of claim 9, in which said second processor is adapted to calculate the inter packet delay variation by
- calculating a first delay as a difference between the reception timestamp and the transmission timestamp for a first of said plurality of synthetic packets,
- calculating a second delay for a second synthetic packet as a difference between the reception timestamp and the transmission timestamp for the second of said plurality of synthetic packets, and
- setting the inter packet delay variation as the difference between said second delay and said first delay.
16. A system according to claim 9, in which said second processor is adapted to derive an available bandwidth of the network segment by
- multiplying a number of bytes in a first synthetic packet by the rate of a first link in said network segment and adding the calculated inter packet delay variation for said first synthetic packet, and
- dividing the resulting sum by a number of bytes in said synthetic packet.
Type: Application
Filed: Dec 6, 2012
Publication Date: Jun 12, 2014
Applicant: ACCEDIAN NETWORKS INC. (Saint-Laurent)
Inventor: Claude Robitaille (St-Placide)
Application Number: 13/706,420
International Classification: H04L 12/56 (20060101);