WO2010100151A1 - Method for estimating a round trip time of a packet flow - Google Patents

Method for estimating a round trip time of a packet flow Download PDF

Info

Publication number
WO2010100151A1
WO2010100151A1 PCT/EP2010/052625 EP2010052625W WO2010100151A1 WO 2010100151 A1 WO2010100151 A1 WO 2010100151A1 EP 2010052625 W EP2010052625 W EP 2010052625W WO 2010100151 A1 WO2010100151 A1 WO 2010100151A1
Authority
WO
WIPO (PCT)
Prior art keywords
pulsation
periodogram
samples
fundamental
rtt
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/EP2010/052625
Other languages
French (fr)
Inventor
Damiano Carra
Konstantin Avrachenkov
Sara Alouf Huet
Philippe Nain
Georg Post
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alcatel Lucent SAS
Institut National de Recherche en Informatique et en Automatique INRIA
Original Assignee
Alcatel Lucent SAS
Institut National de Recherche en Informatique et en Automatique INRIA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alcatel Lucent SAS, Institut National de Recherche en Informatique et en Automatique INRIA filed Critical Alcatel Lucent SAS
Publication of WO2010100151A1 publication Critical patent/WO2010100151A1/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • H04L43/0864Round trip delays

Definitions

  • the technical domain of the invention is the domain of communication networks, and particularly the transmission packet stream between a given pair of addresses and ports.
  • the estimation of the RTT represents an important building block for routers.
  • the present document addresses the following issue: evaluation of an RTT of a flow by passively monitoring in real-time only one direction of the flow.
  • the estimation has to be passive, since the router cannot inject packets into an existing flow.
  • the estimation has to be real-time since the growth rate of a flow must be available at the router instantaneously.
  • the estimation has to use the packets of one direction only, either the packets sent or their acknowledgements, since the router has not access to both directions.
  • the present invention addresses and solves these problems and defines methods and computing devices that monitor packet flows in real time, in order to continuously estimate, among other useful metrics, a round-trip time, RTT, of an observed flow.
  • the invention applies to flow-aware routers that use these RTT measurements in congestion control, for optimal fair packet mark and drop policies, and for active queue management purposes.
  • the step of computing the periodogram P N comprises the steps of: - computing a mean h and a variance ⁇ 2 for the N samples h 1# h 2 ..h N using the formulas: computing for 2 ⁇ values of pulsation ⁇ taken in a range [ &», , (O 2 ] : o a value ⁇ for the N samples h lf h 2 ..h N using the formula : o the periodogram P N using the formula:
  • the step of updating the periodogram P N comprises the steps of: updating the mean h and variance ⁇ 2 for the N samples h x , h 2 ..h N using the formulas: updating for 2N values of pulsation ⁇ taken in a range [ ⁇ ] , G) 2 ] : o the value r for the N samples Yi 1 , h 2 . -h N using the formula: o and then the periodogram P N using the formula:
  • N is greater than 200.
  • the values of co ⁇ and (O 2 are determined using the formulas:
  • the extracting step comprises: populating a list comprising the first W pulsation peaks corresponding to the W highest spectral powers P N of said periodogram and - searching interactively for a pulsation, among the W pulsations, that is the least common divisor for the others pulsations, said pulsation being the fundamental pulsation ⁇ 0 .
  • a peak is determined at a pulsation ⁇ k , if P N ( ⁇ k )> P N ( ⁇ k -i) and P N ( ⁇ k )> P N ( ⁇ k+ i) -
  • the searching step comprises: ordering said list of W pulsations peaks, iterating, starting from the lowest pulsation: o checking if said pulsation has at least two multiples in the list, then stop iterating and return said pulsation as the fundamental pulsation ⁇ 0 , o if not, steps to the next pulsation in the list.
  • the method further comprises, before the extracting step, a step of smoothing the periodogram by applying a low pass filter.
  • the method further comprises, after the extracting step, a step of filtering the extracted fundamental pulsation ⁇ 0 with respect to the history of previously extracted fundamental pulsations.
  • the filtering step compares an average ⁇ 0 of the previous fundamental pulsations to the last extracted fundamental pulsation coo, returning the fundamental pulsation ⁇ 0 if it does not differ from the average ⁇ 0 from a given percentage, returning the average ⁇ 0 either.
  • figure 1 is a schema block of a method according to the invention.
  • FIG 1 is presented the global architecture of a method, in a packet flow communication system, for estimating a round trip time, RTT, of an observed packet flow.
  • Said RTT is defined as the time between the issue of a packet and the arrival of its acknowledgement .
  • Said estimating method, or a corresponding device implementing it comprises two main steps/blocks.
  • a first block 1 computes a periodogram P N out of a sampled signal X.
  • a second block 2 then extracts out of said periodogram a fundamental pulsation ⁇ 0 from which the searched RTT can be calculated.
  • a periodogram P N can be computed out of said signal X.
  • a periodogram is a spectral analysis adapted to a sampled signal, giving for a given pulsation ⁇ the corresponding value of spectral power P N ( ⁇ ) .
  • a common method to compute such a periodogram is the known Lomb-Scargle method.
  • a fundamental pulsation ⁇ 0 can then be extracted.
  • the period T 0 corresponding to said fundamental pulsation ⁇ 0 is a time duration and is equal to the searched RTT, according to the formula
  • said fundamental pulsation is extracted using a pattern matching technique.
  • the periodogram P N is computed out of N samples hi, h 2 ..h N of signal X and comprises a first step of: computing the mean h and variance ⁇ 2 for the N samples hi, h 2 .. h N using the formulas:
  • the periodogram is computed over a given range of pulsation [CO 1 , ⁇ 2 ] . Since the periodogram is discrete, said range [(Q x , ⁇ 2 ] is parted into a number P of sampling values. It has been observed that a good balance between accuracy and processing effort may be obtained, to compute a periodogram P N from N samples, with a number P of pulsation sampling values equal to 2N.
  • the P N computation comprises: o a computation of a value ⁇ for the N samples using the formula:
  • N samples h k are necessary to apply the method.
  • the method must then wait, during an initialisation phase, until the N first packets arrive, in order to provide an RTT result .
  • the RTT may be re-estimated in real time, and a re-computation may occur each time a new packet arrives. Alternately a new computation may occur at every 2, 3 or n arrivals.
  • a new sample h n of signal X is collected.
  • the set of samples hi, h 2 .. h N is then shifted.
  • the first sample hi which is the oldest sample is discarded. All former samples h 2 ..h N are shifted, that is their index is decreased by one.
  • the periodogram P N may be updated and then also the RTT.
  • the update of the periodogram may be done by applying the previous formulas (1) - (4) to the new set of samples h x , h 2 .. h N .
  • the update of the periodogram P N may advantageously comprise the step of updating the mean h and variance ⁇ 2 for the N samples hi, h 2 ..h N using the formulas:
  • the first formula (5) is the same as (1) , but the sum of hi can be computed, instead of summing all the hi, by taking into account the previous remark. Then, the new sum is equal to the former sum plus h n minus h ⁇ . N-I additions
  • the new formula (6) for the variance saves computing load.
  • the sum of hi 2 can be computed instead of summing all the h x 2 , from the old sum of hi 2 , by adding h n 2 and subtracting hi 2 .
  • the update of ⁇ is done the same way as previously, using
  • the periodogram is computed taking into account the previous remark and some trigonometric properties.
  • the values are first computed for each pulsation ⁇ using the formulas :
  • the algorithm involves a certain number of sum terms that are updated in the manner of a "sliding average".
  • the equations imply the use of a "box" envelope for summing exactly N samples, necessitating the storage of all N summands to enable incremental updates.
  • the formulas and sliding techniques used for updating provide an algorithm that only requires 0 (N) operations at each sample arrival .
  • a range [ ⁇ ⁇ , ⁇ 2 ] must be determined. This is done by examining the extreme values of the time t ⁇ . A total duration T is then computed using the formula: . The range limits are then determined using the formulas:
  • ⁇ ⁇ and ⁇ 2 may be determined arbitrarily or after the characteristics of the observed flow, its usual highest and lowest values among t k being respectively taken to determine ⁇ ⁇ and ⁇ 2 .
  • Another interesting mean to save computing load is by tabulating the trigonometric functions sine and cosine, since they are extensively used.
  • a table may typically store pre computed pairs of values [angle ⁇ , value of sin ⁇ , respectively cos ⁇ ] .
  • a value since' respectively cos ⁇ ' of a given angle ⁇ ' being determined by taking the value sin ⁇ , respectively cos ⁇ , of the pair corresponding to the value ⁇ closest to ⁇ ' .
  • Classical interpolation techniques may also be used, but taking the closest value is the least consuming method .
  • Said extracting step may comprise: populating a list comprising the first W pulsation peaks corresponding to the W highest spectral powers P N of said periodogram and - searching interactively for a pulsation, among the W pulsations, that is a least common divisor for the others pulsations, said pulsation being the fundamental pulsation ⁇ 0 .
  • a pulsation ⁇ among the 2N values in the range [ ⁇ ⁇ , ⁇ 2 ] is determined to be a peak pulsation when its spectral power tops the spectral powers of its neighbours. That is, pulsation ⁇ k is a pulsation peak if P N ( ⁇ k )> Pw( « k -i) and P N ( ⁇ k )> P N ( ⁇ k+ i), the index k describing 1..2N.
  • Said peak list can also be pruned by discarding pulsation peaks out of a range determined by a high boundary ⁇ max and a low boundary ⁇ m i n - Said boundaries are determined by the formula to correspond to extreme RTT values considered unreachable or not interesting.
  • the high boundary ⁇ ma ⁇ may be chosen to correspond to a minimum value of RTT of 2ms
  • the low boundary ⁇ m i n may be chosen to correspond to a maximum value of RTT of 500ms.
  • Said peak list may advantageously be ordered by pulsation value, for example smallest first, to ease the search.
  • the searching step comprises, for each pulsation taken from the smallest to the highest, checking if said pulsation has at least two multiples in the list, that is, two multiples that are also among the highest peak pulsations. If yes, stop the search and return said pulsation as the fundamental pulsation ⁇ 0 . That is, the fundamental pulsation ⁇ 0 is the lowest of the W highest peak pulsations that has at least two multiples in said peak list.
  • said algorithm is a pattern-matching algorithm that extracts a best-fitting combination of harmonics from a frequency spectrum.
  • pattern-matching procedures either derived from the above, or available as prior art, can also be used.
  • a smoothing step is advantageously applied to the periodogram, after its computation, and before the extracting.
  • Said smoothing step may be done by applying a low pass filter.
  • an additional filtering step as figured by block 3 in figure 1, may be added.
  • Said filtering step may check the extracted fundamental pulsation ⁇ 0 with respect to the history of previously extracted fundamental pulsation. This may for example take the form of a comparison between an average ⁇ 0 of the previous fundamental pulsations and the last extracted fundamental pulsation ⁇ 0 , returning the fundamental pulsation ⁇ 0 if it does not differ from the average ⁇ 0 from a given percentage, returning the average ⁇ ⁇ instead.
  • Said average may be computed slidingly.
  • the algorithm functions quite well with a number W of pulsation peaks in the peak list equal to 10.
  • the estimation of the RTT with the previously described techniques is fast enough for wire-speed on router ports.
  • Such an estimating method represents an enabler for the design of novel technique of flow control.
  • routers With such a real time RTT information, routers have a better control on the flows. They then can provide fairness, and, indirectly, an improved user experience.
  • the flow control schemes that can be designed starting from the estimation of the RTT can be completely self -configurable : no management intervention is required, since the estimation of the flow adaptively adjusts the available bandwidth for the flow.
  • the new proposed schemes are fully compatible and inter-operable with all existing routers and TCP-type end-to-end protocols. No new protocols or signaling messages is needed.

Landscapes

  • Engineering & Computer Science (AREA)
  • Environmental & Geological Engineering (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

A method for estimating a round trip time, RTT, of a packet flow, comprising the steps of : - computing a periodogram PN based on N samples h1, h2..hN of an inter-arrival time signal X between adjacent packets, X(tk) = hk = tk - tk-1, using a Lomb-Scargle method; - extracting a fundamental pulsation ω0 out of said periodogram PN using a pattern matching technique; - determining the RTT out of said fundamental pulsation.

Description

Method for estimating a round trip time of a packet flow
The technical domain of the invention is the domain of communication networks, and particularly the transmission packet stream between a given pair of addresses and ports.
The increasing demand on quality of service in packet transport networks have motivated the introduction of techniques for traffic control by flows. Among these, the elastic flows for large data transfers compete for the bandwidth on bottleneck links, increasing their rates until there is a negative feedback from congestion, where packets are then marked or dropped. Conventional routers that are not flow-aware have a difficult task to insure fairness under high traffic loads. Flows that pass through a router are nowadays treated agnostically, i.e. without knowing their characteristics such as the rate and its growth. Knowing the growth rate of flows means being able to design novel queue management schemes, where a router can predict future congestion events and act in advance. The growth rate of a connection depends on the value of its round trip time, RTT, i.e. the time between the issue of a packet and the arrival of its acknowledgement . Therefore the estimation of the RTT represents an important building block for routers. The present document addresses the following issue: evaluation of an RTT of a flow by passively monitoring in real-time only one direction of the flow. The estimation has to be passive, since the router cannot inject packets into an existing flow. The estimation has to be real-time since the growth rate of a flow must be available at the router instantaneously. Finally the estimation has to use the packets of one direction only, either the packets sent or their acknowledgements, since the router has not access to both directions.
The capability to track in real-time the round-trip time of high-volume packet flows is a valuable building block for an optimal fair congestion control in a router. Among the prior art existing solutions some are active solutions .
Most of the prior art solutions are based on the observation of the two-way traffic, which is infeasible in a core router. To the best of our knowledge, there are only two papers which propose a general framework for the passive estimation of the RTT, but they are not focused on real-time estimation.
Y.Zhang, L.Breslau, V.Paxson, and S . Shenker in "On the
Characteristics and Origins of Internet Flow Rates," in Proc . of ACM SIGCOMM, Pittsburgh, PA, USA, Aug. 2002, propose a method based on time correlation of samples. But the retained approach lacks of robustness: the results are strongly affected by the noise, which impacts the accuracy of the RTT estimation. R. Lance, I.Frommer, B. Hunt, E.Ott, J.A.Yorke, and E. Harder in "Round-trip time inference via passive monitoring, " in ACM Sigmetrics Performance Evaluation Review, Vol. 33, Issue 3, Dec. 2005, pp 32-38, make use of a spectral analysis as one of the possible steps for off-line estimation of the RTT. In particular, the authors apply a spectral analysis to a set of samples, but they do not consider the continuous real-time update of the spectrum as a new sample arrives. Moreover, the details of the extraction of the RTT from the spectrum are not specified. The present invention addresses and solves these problems and defines methods and computing devices that monitor packet flows in real time, in order to continuously estimate, among other useful metrics, a round-trip time, RTT, of an observed flow. In particular, the invention applies to flow-aware routers that use these RTT measurements in congestion control, for optimal fair packet mark and drop policies, and for active queue management purposes. The object of the invention is a method, in a packet flow communication system, for estimating a round trip time, RTT, of an observed packet flow, that is the time between the issue of a packet and the arrival of its acknowledgement, comprising the steps of: - collecting an inter-arrival time signal X between adjacent packets, where the amplitude hk of said signal X at instant tk of arrival of a packet is equal to the elapsed duration since the arrival time tk-i of a previous packet, that is X(tk) = hk = tk - tk-i, computing a periodogram PN based on N samples hi, h2..hN of said signal X, using a Lomb-Scargle method, extracting a fundamental pulsation ω0 out of said periodogram PN using a pattern matching technique, determining the RTT out of said fundamental pulsation.
According to another feature of the invention, the step of computing the periodogram PN comprises the steps of: - computing a mean h and a variance σ2 for the N samples h1# h2..hN using the formulas:
Figure imgf000005_0001
computing for 2Ν values of pulsation ω taken in a range [ &», , (O2] : o a value τ for the N samples hlf h2..hN using the formula :
Figure imgf000006_0003
o the periodogram PN using the formula:
Figure imgf000006_0001
According to another feature of the invention, said method, further comprises, in real time, at each arrival of a new packet, the steps of: collecting a new sample hn of signal X, shifting the set of samples hi, h2-.hN by: o discarding the oldest sample hi, and o for k=l..N-l, hk = hk+1, o replacing hN by the new sample hn, in order said set of samples still comprises the N most recent samples, updating the periodogram PN based on the N most recent samples hi, h2..hN of signal X, updating the RTT.
According to another feature of the invention, the step of updating the periodogram PN comprises the steps of: updating the mean h and variance σ2 for the N samples hx, h2..hN using the formulas:
Figure imgf000006_0002
updating for 2N values of pulsation ω taken in a range [ ω] , G)2] : o the value r for the N samples Yi1, h2. -hN using the formula:
Figure imgf000007_0001
o and then the periodogram PN using the formula:
Figure imgf000007_0002
According to another feature of the invention, N is greater than 200.
According to another feature of the invention the values of co} and (O2 are determined using the formulas:
Figure imgf000007_0003
According to another feature of the invention the extracting step comprises: populating a list comprising the first W pulsation peaks corresponding to the W highest spectral powers PN of said periodogram and - searching interactively for a pulsation, among the W pulsations, that is the least common divisor for the others pulsations, said pulsation being the fundamental pulsation ω0. According to another feature of the invention a peak is determined at a pulsation ωk, if PNk)> PNk-i) and PNk)> PNk+i) -
According to another feature of the invention the searching step comprises: ordering said list of W pulsations peaks, iterating, starting from the lowest pulsation: o checking if said pulsation has at least two multiples in the list, then stop iterating and return said pulsation as the fundamental pulsation ω0, o if not, steps to the next pulsation in the list. According to another feature of the invention the method further comprises, before the extracting step, a step of smoothing the periodogram by applying a low pass filter.
According to another feature of the invention the method further comprises, after the extracting step, a step of filtering the extracted fundamental pulsation ω0 with respect to the history of previously extracted fundamental pulsations.
According to another feature of the invention the filtering step compares an average ω0 of the previous fundamental pulsations to the last extracted fundamental pulsation coo, returning the fundamental pulsation ω0 if it does not differ from the average ω0 from a given percentage, returning the average ω0 either.
Others features, details and advantages of the invention will become more apparent from the detailed illustrating description given hereafter with respect to the drawing on which: figure 1 is a schema block of a method according to the invention. According to figure 1, is presented the global architecture of a method, in a packet flow communication system, for estimating a round trip time, RTT, of an observed packet flow. Said RTT is defined as the time between the issue of a packet and the arrival of its acknowledgement . Said estimating method, or a corresponding device implementing it, comprises two main steps/blocks. A first block 1 computes a periodogram PN out of a sampled signal X. A second block 2 then extracts out of said periodogram a fundamental pulsation ω0 from which the searched RTT can be calculated.
The signal X represents an inter-arrival time between adjacent packets. Said signal can be collected as packets arrive. Said signal is sampled at instant tk when the kth packet arrives. The amplitude hk of said signal X at instant tic of arrival of a packet is equal to the elapsed duration since the arrival time tk-1 of a previous packet. X is then defined by the following formula X(tk) = hk = tk - tk_i.
A periodogram PN can be computed out of said signal X. A periodogram is a spectral analysis adapted to a sampled signal, giving for a given pulsation ω the corresponding value of spectral power PN (ω) . A common method to compute such a periodogram is the known Lomb-Scargle method.
Out of said periodogram, a fundamental pulsation ω0 can then be extracted. The period T0 corresponding to said fundamental pulsation ω0 is a time duration and is equal to the searched RTT, according to the formula
Figure imgf000009_0001
According to the invention, said fundamental pulsation is extracted using a pattern matching technique.
Typically the periodogram PN is computed out of N samples hi, h2..hN of signal X and comprises a first step of: computing the mean h and variance σ2 for the N samples hi, h2 .. hN using the formulas:
Figure imgf000010_0001
According to a feature of the invention, the periodogram is computed over a given range of pulsation [CO1 , ω2 ] . Since the periodogram is discrete, said range [(Qx , ω2] is parted into a number P of sampling values. It has been observed that a good balance between accuracy and processing effort may be obtained, to compute a periodogram PN from N samples, with a number P of pulsation sampling values equal to 2N.
Then for each value of ω , the PN computation comprises: o a computation of a value τ for the N samples using the formula:
Figure imgf000010_0002
o a computation of the periodogram PN using the formula :
Figure imgf000010_0003
It has to be noted that N samples hk are necessary to apply the method. The method must then wait, during an initialisation phase, until the N first packets arrive, in order to provide an RTT result . After that, the RTT may be re-estimated in real time, and a re-computation may occur each time a new packet arrives. Alternately a new computation may occur at every 2, 3 or n arrivals. At each arrival of a new packet, a new sample hn of signal X is collected. The set of samples hi, h2 .. hN is then shifted. The first sample hi which is the oldest sample is discarded. All former samples h2..hN are shifted, that is their index is decreased by one. Former h2 becomes the new hi, and more generally former hk+1 becomes the new hk, for k=l..N-l. hN is replaced by the new sample hn, so doing the set of samples hi, h2..hN at any time always comprises the N most recent samples.
Based on a set comprising the N most recent samples hlt h2.-hN of signal X, the periodogram PN may be updated and then also the RTT.
The update of the periodogram may be done by applying the previous formulas (1) - (4) to the new set of samples hx, h2.. hN .
However a great saving in computing load may be expected in taking into account the fact, that from one computation to the next, only one sample hn differs, the N-I other samples remaining the same. This can be profitably used in order not to compute again all of the sums from the scratch. Such computing are named "sliding" updates.
Thus the update of the periodogram PN may advantageously comprise the step of updating the mean h and variance σ2 for the N samples hi, h2..hN using the formulas:
Figure imgf000011_0001
The first formula (5) is the same as (1) , but the sum of hi can be computed, instead of summing all the hi, by taking into account the previous remark. Then, the new sum is equal to the former sum plus hn minus hλ. N-I additions
(hi+h2+ .. +hN) are replaced by two additions, or more exactly
one addition and one subtraction .
Figure imgf000011_0002
In the same way the new formula (6) for the variance saves computing load. The sum of hi2 can be computed instead of summing all the hx 2, from the old sum of hi2, by adding hn 2 and subtracting hi2. For 2N values of pulsation ω taken in a range [G)1, G)2] : the update of τ is done the same way as previously, using
Figure imgf000012_0003
Then the periodogram is computed taking into account the previous remark and some trigonometric properties. The values are first computed for each pulsation ω using the
Figure imgf000012_0004
formulas :
Figure imgf000012_0001
and then the periodogram PN using the formula (12) :
Figure imgf000012_0002
As is apparent from the description above, the algorithm involves a certain number of sum terms that are updated in the manner of a "sliding average". The equations imply the use of a "box" envelope for summing exactly N samples, necessitating the storage of all N summands to enable incremental updates.
Using less storage, other "sliding" update techniques can also be used, with varying degrees of approximation or of averaging in time. For example, m formulae derived from "exponential" averaging, only the preceding sum is required in memory.
More general kinds of digital filters (e.g, infinite- impulse -response or auto-regressive-moving-average) only require the memory of very few previous result and input values. The one skilled in the art would take benefice of analogically applying here all the enveloping techniques called "apodization" in the practice of Fourier transforms.
The formulas and sliding techniques used for updating provide an algorithm that only requires 0 (N) operations at each sample arrival .
The preceding methods appear to function correctly with a number of samples N greater than 200. Lower values of N would lead to a noise too high. A value of N equal to 256 appears to work fine.
In order to compute τ and PN, a range [ωλ, ω2] must be determined. This is done by examining the extreme values of the time t^. A total duration T is then computed using the formula: . The range limits are then
Figure imgf000013_0001
determined using the formulas:
Figure imgf000013_0002
Alternately, ωλ and ω2 may be determined arbitrarily or after the characteristics of the observed flow, its usual highest and lowest values among tk being respectively taken to determine ωλ and ω2. Another interesting mean to save computing load is by tabulating the trigonometric functions sine and cosine, since they are extensively used. A table may typically store pre computed pairs of values [angle α, value of sinα, respectively cosα] . A value since' , respectively cosα' of a given angle α' being determined by taking the value sinα, respectively cosα, of the pair corresponding to the value α closest to α' . Classical interpolation techniques may also be used, but taking the closest value is the least consuming method .
Starting from said periodogram, whatever the method used to obtain it, the method according to the invention then proceeds to the extraction of a fundamental pulsation ω0. Said extracting step may comprise: populating a list comprising the first W pulsation peaks corresponding to the W highest spectral powers PN of said periodogram and - searching interactively for a pulsation, among the W pulsations, that is a least common divisor for the others pulsations, said pulsation being the fundamental pulsation ω0.
While populating said peak list, a pulsation ω among the 2N values in the range [ ωλ , ω2] is determined to be a peak pulsation when its spectral power tops the spectral powers of its neighbours. That is, pulsation ωk is a pulsation peak if PNk)> Pw(«k-i) and PNk)> PNk+i), the index k describing 1..2N. Said peak list can also be pruned by discarding pulsation peaks out of a range determined by a high boundary ωmax and a low boundary ωmin- Said boundaries are determined by the formula to correspond to extreme RTT values
Figure imgf000014_0001
considered unreachable or not interesting. For example the high boundary ωmaχ may be chosen to correspond to a minimum value of RTT of 2ms, and the low boundary ωmin may be chosen to correspond to a maximum value of RTT of 500ms.
Said peak list may advantageously be ordered by pulsation value, for example smallest first, to ease the search. The searching step comprises, for each pulsation taken from the smallest to the highest, checking if said pulsation has at least two multiples in the list, that is, two multiples that are also among the highest peak pulsations. If yes, stop the search and return said pulsation as the fundamental pulsation ω0. That is, the fundamental pulsation ω0 is the lowest of the W highest peak pulsations that has at least two multiples in said peak list.
If said pulsation has not at least two multiples, then the next pulsation of the list is checked for at least two multiples, and then until the end of the list or a fundamental pulsation is found. It thus may happen cases where the process does not find any fundamental pulsation.
As is apparent, said algorithm is a pattern-matching algorithm that extracts a best-fitting combination of harmonics from a frequency spectrum. Many other pattern- matching procedures, either derived from the above, or available as prior art, can also be used.
Since the periodogram PN may generally be noisy, a smoothing step is advantageously applied to the periodogram, after its computation, and before the extracting. Said smoothing step may be done by applying a low pass filter. As a conservative measure, an additional filtering step, as figured by block 3 in figure 1, may be added. Said filtering step may check the extracted fundamental pulsation ω0 with respect to the history of previously extracted fundamental pulsation. This may for example take the form of a comparison between an average ω0 of the previous fundamental pulsations and the last extracted fundamental pulsation ω0, returning the fundamental pulsation ω0 if it does not differ from the average ω0 from a given percentage, returning the average ωϋ instead. Said average may be computed slidingly. A satisfying
percentage is 50-s. then ω0 is returned.
Figure imgf000015_0001
If not, ω0 is returned instead.
The algorithm functions quite well with a number W of pulsation peaks in the peak list equal to 10.
The estimation of the RTT with the previously described techniques is fast enough for wire-speed on router ports. Such an estimating method represents an enabler for the design of novel technique of flow control. With such a real time RTT information, routers have a better control on the flows. They then can provide fairness, and, indirectly, an improved user experience. Moreover, the flow control schemes that can be designed starting from the estimation of the RTT can be completely self -configurable : no management intervention is required, since the estimation of the flow adaptively adjusts the available bandwidth for the flow. The new proposed schemes are fully compatible and inter-operable with all existing routers and TCP-type end-to-end protocols. No new protocols or signaling messages is needed.

Claims

1. A method, in a packet flow communication system, for estimating a round trip time, RTT, of an observed packet flow, that is the time between the issue of a packet and the arrival of its acknowledgement, comprising the steps of: collecting an inter-arrival time signal X between adjacent packets, where the amplitude hk of said signal X at instant tk of arrival of a packet is equal to the elapsed duration since the arrival time tk-i of a previous packet, that is X(tk) = hk = tk ~ t]ς-l, computing a periodogram PN based on N samples hi, h2..hN of said signal X, using a Lomb-Scargle method, characterized in that it further comprises the steps of: extracting a fundamental pulsation ω0 out of said periodogram PN using a pattern matching technique, - determining the RTT out of said fundamental pulsation ω0.
2. The method of claim 1, where the step of computing the periodogram PN comprises the steps of: - computing a mean h and a variance σ2 for the N samples hx, h2..hN using the formulas:
Figure imgf000017_0001
computing for 2N values of pulsation ω taken in a range [ω,, O)2] : o a value τ for the N samples hi, h2.. hN using the formula : j
Figure imgf000018_0001
o the periodogram PN using the formula:
Figure imgf000018_0002
3. The method of claim 2, further comprising, in real time, at each arrival of a new packet, the steps of: collecting a new sample hn of signal X, shifting the set of samples Yi1, h2.. hN by: o discarding the oldest sample hi, and o for k=l..N-l, hk = hk+i, o replacing hN by the new sample hn, in order said set of samples still comprises the N most recent samples, updating the periodogram PN based on the N most recent samples hi, h2..hN of signal X, updating the RTT.
4. The method of claim 3, where the step of updating the periodogram PN comprises the steps of: updating the mean h and variance σ2 for the N samples hi, h2..hN using the formulas:
Figure imgf000018_0003
updating for 2N values of pulsation ω taken in a range [ ωλ , ω2 ] : o the value τ for the N samples hi, h2.. hN using the formula:
Figure imgf000019_0001
o and then the periodogram PN using the formula
Figure imgf000019_0002
5. The method of claim A1 where N is greater than 200.
6. The method of any one of claims 2 to 5 where the values of ωλ and ω2 are determined using the formulas:
Figure imgf000019_0003
7. The method of any one of claims 1 to 6 where the trigonometric functions sine and cosine are tabulated storing pre computed pairs [angle α, value of since] ; a value sinα' of a given angle α' being determined by taking the value sinα corresponding to the value α closest to α' .
8. The method of any one of claims 1 to 7, where the extracting step comprises: populating a list comprising the first W pulsation peaks corresponding to the W highest spectral powers PN of said periodogram and searching interactively for a pulsation, among the W pulsations, that is a least common divisor for the others pulsations, said pulsation being the fundamental pulsation ω0.
9. The method of claim 8, where a peak is determined at a pulsation ωk, if PNk)> PNk-1) and PNk)> PNk+i) .
10. The method of claim 8 or 9, where the populating step discards pulsation peaks not comprised in a range [ωmin, ωmax] .
11. The method of claim 10, where the high boundary ωmax corresponds to a minimum value of RTT of 2ms and the low boundary ωmin corresponds to a maximum value of RTT of 500ms.
12. The method of any one of claims 8 to 11, where the searching step comprises: ordering said list of W pulsations peaks, iterating, starting from the lowest pulsation: o checking if said pulsation has at least two multiples in the list, then stop iterating and return said pulsation as the fundamental pulsation ω0, o if not, steps to the next pulsation in the list.
13. The method of any one of claims 8 to 12, further comprising, before the extracting step, a step of smoothing the periodogram by applying a low pass filter.
14. The method of any one of claims 8 to 13, further comprising, after the extracting step, a step of filtering the extracted fundamental pulsation ω0 with respect to the history of previously extracted fundamental pulsations.
15. The method of claim 14, where the filtering step compares an average ω0 of the previous fundamental pulsations to the last extracted fundamental pulsation ω0, returning the fundamental pulsation ω0 if it does not differ from the average ω0 from a given percentage, returning the average ω0 either.
16. The method of any one of claims 8 to 15, where W = 10.
PCT/EP2010/052625 2009-03-05 2010-03-02 Method for estimating a round trip time of a packet flow Ceased WO2010100151A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP09305207A EP2226971B1 (en) 2009-03-05 2009-03-05 Method for estimating a round trip time of a packet flow
EP09305207.4 2009-03-05

Publications (1)

Publication Number Publication Date
WO2010100151A1 true WO2010100151A1 (en) 2010-09-10

Family

ID=40626581

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2010/052625 Ceased WO2010100151A1 (en) 2009-03-05 2010-03-02 Method for estimating a round trip time of a packet flow

Country Status (3)

Country Link
EP (1) EP2226971B1 (en)
AT (1) ATE543294T1 (en)
WO (1) WO2010100151A1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108872989B (en) * 2018-07-16 2022-04-12 北京航空航天大学 An accurate search method for PS-InSAR based on maximum periodogram
CN116527585B (en) * 2023-07-05 2023-08-29 天地信息网络研究院(安徽)有限公司 Congestion control method for stream length perception

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
CRAIG PARTRIGE; DAVID COUSINS; ALDEN W. JACKSON; RAJESH KRISHNAN; TUSHAR SAXENA; W. TIMOTHY STRAYER: "Using signal processing to analyze wireless data traffic", BBN TECHNICAL MEMORANDUM NO. 1321, 22 May 2002 (2002-05-22), Cambridge, MA 02138, pages 1 - 12, XP002529591, Retrieved from the Internet <URL:http://www.ir.bbn.com/documents/techmemos/TM1321.pdf> [retrieved on 20090527] *
I. ANTONIOU; V. V. IVANOV; VALERY V. IVANOV; P.V. ZRELOV: "Statistical Model of Network Traffic", COMMUNICATION OF THE JOINT INSTITUTE FOR NUCLEAR RESEARCH, 15 November 2002 (2002-11-15), 141980 Dubna, Russia, pages 1 - 40, XP002529592, Retrieved from the Internet <URL:http://wwwinfo.jinr.ru/publish/Preprints/2002/222(E11-2002-222).pdf> [retrieved on 20090527] *
R.LANCE; I.FROMMER; B.HUNT; E.OTT; J.A.YORKE; E.HARDER: "Round-trip time inference via passive monitoring", ACM SIGMETRICS PERFORMANCE EVALUATION REVIEW, vol. 33, no. 3, December 2005 (2005-12-01), pages 32 - 38, XP058117340, DOI: doi:10.1145/1111572.1111581
RYAN LANCE; IAN FROMMER: "Round-trip time inference via passive monitoring", ACM SIGMETRICS PERFORMANCE EVALUATION REVIEW, vol. 33, no. 3, December 2005 (2005-12-01), New York, NY, USA, pages 32 - 38, XP002529590, ISSN: 0163-5999, Retrieved from the Internet <URL:http://portal.acm.org/ft_gateway.cfm?id=1111581&type=pdf&coll=GUIDE&dl=GUIDE&CFID=36581484&CFTOKEN=48616060> [retrieved on 20090527] *
Y.ZHANG; L.BRESLAU; V.PAXSON; S.SHENKER: "On the Characteristics and Origins of Internet Flow Rates", PROC. OF ACM SIGCOMM, August 2002 (2002-08-01)

Also Published As

Publication number Publication date
ATE543294T1 (en) 2012-02-15
EP2226971B1 (en) 2012-01-25
EP2226971A1 (en) 2010-09-08

Similar Documents

Publication Publication Date Title
JP3602972B2 (en) Communication performance measuring device and its measuring method
Altman et al. A stochastic model of TCP/IP with stationary random losses
CN101048984B (en) Communication quality measurement device and measurement method thereof
CN109861881A (en) An Elephant Flow Detection Method Based on Three-layer Sketch Architecture
US20070217448A1 (en) Estimating Available Bandwidth With Multiple Overloading Streams
Choi et al. Adaptive packet sampling for accurate and scalable flow measurement
RU2439823C2 (en) Using filtration and active probing to assess data transfer channel
WO2007010763A1 (en) Communication quality determining apparatus, communication quality determining method and its program
CN109257252A (en) A method of judging network congestion condition
EP1364493A1 (en) Method and system for bandwidth estimation
US9992081B2 (en) Scalable generation of inter-autonomous system traffic relations
JP4189000B2 (en) Measuring packet loss rates in networks using endpoint data
JP5206968B2 (en) Estimation method, apparatus and program, and network measurement system
EP2226971B1 (en) Method for estimating a round trip time of a packet flow
JP4933475B2 (en) BAND MANAGEMENT PROGRAM, BAND MANAGEMENT DEVICE, AND BAND MANAGEMENT METHOD
JP2011124750A (en) Flow communication quality estimating method, device, and program
CN111372073B (en) Video quality evaluation method, device, equipment and medium
JP5687650B2 (en) Flow communication quality estimation method, flow communication quality estimation device, and flow communication quality estimation program
Chen et al. Enhanced Bandwidth Measurement and Robust Rate Adaptation for Low-latency Live Streaming
Ouyang et al. Predictive bandwidth control for MPEG video: a wavelet approach for self-similar parameters estimation
Molina A scalable and efficient methodology for flow monitoring in the Internet
Carra et al. Passive online RTT estimation for flow-aware routers using one-way traffic
Yang et al. Predicting Internet end-to-end delay: A statistical study
Wang et al. A scheme for fast network traffic anomaly detection
Silva et al. Multiadaptive sampling for lightweight network measurements

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 10706238

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 10706238

Country of ref document: EP

Kind code of ref document: A1