WO2002087276A2 - Method and device for robust real-time estimation of bottleneck bandwidth - Google Patents

Method and device for robust real-time estimation of bottleneck bandwidth Download PDF

Info

Publication number
WO2002087276A2
WO2002087276A2 PCT/IB2002/001435 IB0201435W WO02087276A2 WO 2002087276 A2 WO2002087276 A2 WO 2002087276A2 IB 0201435 W IB0201435 W IB 0201435W WO 02087276 A2 WO02087276 A2 WO 02087276A2
Authority
WO
WIPO (PCT)
Prior art keywords
bandwidth
samples
packet
client
bottleneck
Prior art date
Application number
PCT/IB2002/001435
Other languages
French (fr)
Other versions
WO2002087276A3 (en
Inventor
Hayder Radha
Dmitri Loguinov
Original Assignee
Koninklijke Philips Electronics N.V.
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 Koninklijke Philips Electronics N.V. filed Critical Koninklijke Philips Electronics N.V.
Priority to EP02724549A priority Critical patent/EP1382219B1/en
Priority to DE60210060T priority patent/DE60210060D1/en
Priority to JP2002584651A priority patent/JP2004524782A/en
Publication of WO2002087276A2 publication Critical patent/WO2002087276A2/en
Publication of WO2002087276A3 publication Critical patent/WO2002087276A3/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/28Flow control; Congestion control in relation to timing considerations
    • H04L47/283Flow control; Congestion control in relation to timing considerations in response to processing delays, e.g. caused by jitter or round trip time [RTT]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0896Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/02Capturing of monitoring data
    • H04L43/028Capturing of monitoring data by filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/50Testing arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/508Network service management, e.g. ensuring proper service fulfilment according to agreements based on type of value added network service under agreement
    • H04L41/509Network service management, e.g. ensuring proper service fulfilment according to agreements based on type of value added network service under agreement wherein the managed service relates to media content delivery, e.g. audio, video or TV

Definitions

  • the present invention relates to the field of the Internet. More particularly, the present invention relates to a method and system for estimating in real time the bottleneck bandwidth of the Internet system.
  • FIG. 1 depicts the conventional estimation mechanism known as Receiver-
  • the vertical dimension of the packets represents the link speed
  • the horizontal dimension represents the transmission time.
  • the sender transmits to the receiver two back-to-back packets (which are called the packet pair), of sizes s ⁇ and s 2 , respectively.
  • the packet pair the back-to-back packets
  • the spacing between the arrived packets is typically increased because the bottleneck link is slower than the previous links. As a consequence, it takes longer to transmit each packet over the slow bottleneck link. In the remaining path, the new spacing AT between the packets is preserved unless much a slower bottleneck link is encountered. As shown in FIG.
  • the receiver upon receiving the spaced packets, the receiver computes the value of the bottleneck bandwidth B B , which is calculated by s 2 / ⁇ according to the conventional method. Thereafter, the receiver generates a special packet or acknowledgment packet (ACK) with the computed estimate value, B B , and transmits it back to the sender. The sender can then adjust the sending rate based on the estimation of the bottleneck bandwidth
  • PBM Packet Bunch Modes
  • both of the above prior art methods of estimating the bandwidth have many drawbacks.
  • both techniques are highly sensitive to packet compression events - a phenomenon which occur when packets arrive closer to each other than they were originally sent out.
  • both methods produce an inaccurate estimation of bottleneck bandwidth if employed in the existing Internet in real-time.
  • the second method is proposed for off-line operation and requires an entire set of bandwidth samples to be ready at the time of estimation, real-time application of the method is not feasible.
  • both methods do not address the delay variation incurred by the OS kernel of the client machine during the scheduling and switching operations.
  • the detected inter-packet spacing ⁇ jT may be significantly skewed by the OS operation before the packets are passed to the destination node, thus resulting in an inaccurate estimation of the bottleneck bandwidth B B -
  • both methods require the transmission time stamps to be placed in each packet, thereby increasing the overhead.
  • RBPP sends special probe packets to measure the bandwidth and incurs extra bandwidth overhead.
  • the present invention relates to estimating the real-time bottleneck bandwidth of an end-to-end Internet path between a server and client.
  • a method capable of estimating the bottleneck bandwidth includes the steps of: transmitting by the sever through a bottleneck link a plurality of bursts comprised of packets to the client; calculating a set of bandwidth samples for each burst received by the client end; and, determining a new bottleneck bandwidth from the calculated bandwidth samples for the following transmission of data packets between the server and the client.
  • the present invention relates to a device for estimating the bottleneck bandwidth and includes: a means for transmitting a plurality of packet bursts; a means for receiving each burst packet via a bottleneck link; a means for generating a set of bandwidth samples based on the difference between an inter-packet spacing between the first and the last packet of each burst; and, a means for determining a new bottleneck bandwidth based on the generated bandwidth samples.
  • FIG. 1 illustrates a conventional bandwidth estimation mechanism
  • FIG. 2 is a schematic view of an exemplary architecture of the bandwidth estimating system according to the present invention
  • FIG. 3 illustrates the format of a user datagram protocol (UDP) packet at the server end in accordance with the present invention
  • FIG. 4(a) is a flow chart illustrating the operation of the bottleneck bandwidth estimator according to the present invention.
  • FIG. 4(b) is a flow chart illustrating a greater detail of estimating the bottleneck bandwidth estimator according to the present invention
  • FIG. 5 illustrates a particular mechanism of estimating the bandwidth of the packets of the burst according to the present invention
  • FIG. 6 illustrates a particular mechanism of handling the packet compression event according to the present invention.
  • the server-client architecture 10 for streaming multimedia data over the Internet includes a first system 12, such as a server device, a second system 14, such as a client device. Both server and client are in communication with each other via the access link 18, 20 of the Internet network 16.
  • the embodiment of the present invention is aimed at estimating a bottleneck bandwidth, which represents the speed of the slowest link of an end- to-end path, in a rapid and reliable way for the following transmission of data packets.
  • the server system 12 comprises a central processing unit 22, a general purpose memory 24 and an operating system 26.
  • the client system 14 also comprises amongst others a central processing unit 28, a general purpose memory 30 and an operating system 32.
  • the system 10 provides the server system 12 to use video traffic (i.e., burst packets) to estimate the bottleneck bandwidth rather than sending special packet pairs to measure the bottleneck bandwidth as in the prior art.
  • video traffic i.e., burst packets
  • FIG. 3 The format of a UDP packet of each burst packet according to the present invention is shown in FIG. 3.
  • Each packet in real-time application carries a burst identifier, which allows the receiver to distinguish packets from different bursts.
  • the inventive bandwidth measurement will be referred to hereinafter as Extended Receiver-Based Packet Pair (ERBPP).
  • the inventive bandwidth estimation process consists of three steps - measurement step 100, filtering step 120, and estimation step 140.
  • the filtering step 120 is an optional operation that is performed to further increase the accuracy of the bandwidth samples generated in the measurement step 100.
  • the server system 12 transmits a plurality of bursts comprised of packets to the client system 14 via a bottleneck link path.
  • the bandwidth for each burst received at the client system 14 within a predetermined period is measured and collected in a set of samples B ⁇ t, ⁇ ).
  • certain collected samples are removed from the sample set due to the suspected compression or expansion caused by OS-related scheduling delays in delivering packets to the application layer.
  • step 140 a single estimate b E sril ⁇ ) that is the most recent and accurate estimation of the bottleneck bandwidth is determined according to the predetermined criteria. The principle of these three major operations will be described in greater detail below.
  • the server system 12 transmits data packets containing actual real-time data in bursts in step 200.
  • the packets that the server system 12 has to deliver to the client system 14 are transmitted at a maximum transmission speed of the adjacent link to guarantee the condition that the packets traveling along the end-to-end Internet path are queued and delayed at the bottleneck link. That is, the packets of each burst have to leave the server system 12 at a rate that is definitely higher than the bottleneck link's speed, so that the packets in each burst can be expanded before they arrive to the client system 14, as shown in FIG. 5.
  • the server system 12 uses packets of a different size in FIG. 5, the server system 12 may send packets of equal size in the embodiment of the present invention.
  • step 210 these packets pass through the Internet network and arrive at the client system 14.
  • the client system 14 Upon receiving a plurality of packet bursts, the client system 14 computes the corresponding bottleneck bandwidth B t for each packet burst i received therein, in step 220.
  • the bandwidth sample based on the burst with a missing packet is not included in the set of bandwidth samples, Bj j, ⁇ ) in step 230.
  • the client system 14 analyzes the header information of the respective burst, as shown in FIG. 3, to identify any missing packets within a given burst.
  • a bandwidth sample R is measures in step 230 as follows.
  • the client system 14 Upon receiving the burst packets originated from the server system 12, the client system 14 measures the corresponding bandwidth based on the packet-pair concept and maintains a data base of collected samples in set B ⁇ t, ⁇ ), wherein t represents the current time and ⁇ represents the "lifetime" of samples. That is, the client system 14 computes samples of the bottleneck bandwidth using the inter-packet spacing between the first and the last packets within each burst. Referring to FIG.
  • the client system 14 computes partial bandwidth samples b, (k) for each burst according to the following equation:
  • each sample b,(k) represents an estimate of the bandwidth using the first k (k ⁇ 2) packets of burst .
  • the number of packets n t is set at least 3 packets in each burst; however, this number is not required.
  • ERBPP OT the ERBPP method that considers only bursts with at least m packets
  • ERBPP + method that analyzes at least m packets
  • a samples B is computed using ERBPP OT or ERBPP m+ at time t, it is added to the set of collected samples B ⁇ (t, ⁇ ) and stays there for no longer than ⁇ time units. Accordingly, the client system 14 only needs to distinguish between packets in different bursts rather than the exact transmission time of each packet as required in the prior art. Hence, the only fields required in each packet header are one-bit (0 or 1) burst identifier and a packet sequence number. In addition, the inventive method has no bandwidth overhead associated with sending separate packet pairs as in the prior art since the actual video data in the form of a packet burst is used to compute the bandwidth.
  • the number of packets in a packet burst may be more than two packets depending on the streaming rate and desired burstiness.
  • the number of packets per impulse i.e., packet burst
  • step 240 is performed at the discretion of the operator.
  • This filtering step can be selectively performed by the client system 14 to improve the accuracy of the generated samples B ⁇ t, ⁇ ) prior to selecting the new estimate of the bottleneck bandwidth.
  • the new resulting bandwidth samples after undergoing the filtering process will be referred to as Bj(t, A) hereinafter.
  • the former approach filters the generated samples
  • the recommended values ⁇ range between 30 and 300 seconds.
  • the latter approach relates to reducing the amount of error introduced by random and deterministic delays inside the OS kernel of the client system 14 in delivering packets to the application layer (i.e., process scheduling delays, delays caused by low-resolution clock in the data-link layer).
  • FIG. 6 illustrates this type of undesirable delays, namely packet compression and packet expansion, which alter the spacing between packets.
  • the packet compression refers to packets in a burst that arrive to the client system 14 with the spacing smaller than the inter-packet delay introduced by the bottleneck link.
  • This type of compression can occur, for example, if the first packet in a pair encounters a large queuing delay at some high-speed interface after going through the bottleneck router, and the second packet catches up with the first packet by encountering no or little queuing delay at the same interface.
  • the first packet of burst / (the burst in the middle) is delayed by the OS of the client system 14 until the second packet of the same burst is received by the kernel. Then, both packets are scheduled and delivered to the application layer.
  • the application can erroneously identify the beginning of burst i and use smaller burst length ⁇ t, (instead of AT,) in its computation of ERBPP + bandwidth.
  • the packet expansion refers to packets arriving to the client system 14 with the spacing larger than the one ideally introduced by the bottleneck link. The expansion can occur before or after passing the bottleneck router. As a consequence, the client system 14 can erroneously measure the bandwidth based on the expanded packet pair rather than the rate of the bottleneck link.
  • the exemplary embodiment of the present invention provides a filtering process to eliminate inaccurate bandwidth estimations out of the collected samples B ⁇ (t, A) that is caused by the compression and/or expansion in step 244.
  • the principle of the filtering operation is based on comparing the values of observed burst durations, Z and I -1 , with the ideal value D b for each received burst i. That is, the inaccurate bandwidth samples encountering the OS -related delay are determined based on the quantity difference between an ideal burst duration prior to encountering the OS delay and an actual burst duration after encountering the OS delay. Referring to FIG.
  • each burst has a fixed duration of , time units (i.e., one burst is generated every D b time units). If no significant compression occurs during the transmission, the respective burst lengths between the top and bottom graphs of FIG. 6 will agree. Thus, in cases when they do not agree or if the burst duration D b (the actual burst duration) deviates from D b (the ideal burst duration) for more than ⁇ percent, the compression/expansion event is inferred.
  • the client system 14 determines a new real-time bandwidth from the set of filtered samples B ⁇ (t, A) (note that if the filtering step 240 is not performed, set B ⁇ (t, A) is equal to set B M (1, A)) by determining a single estimate b ⁇ siit) representing the current value of the bottleneck link at time t.
  • the estimation of b E siiO is divided into two approaches, the median approach or the statistical approach of set B ⁇ (t, A). The median mode is applied to low-speed links (below 128 Kbps) in step 264, while the statistical mode is applied to high-speed links (above 128 Kbps) in step 262.
  • the statistical mode of a set is such value x where the probability distribution function (PDF)T(JC) of the set reaches its maximum.
  • PDF probability distribution function
  • the histogram of a set is computed by partitioning the set of values contained in the set into equal-size bins and computing the percentage of samples from the set that fall into each bin. The middle of the bin with the highest percentage is then selected as the mode of the set.
  • the suggested values for the bin size are between 1 Kbps and 5 Kbps. Accordingly, estimates b £ s ⁇ (t) can be used for congestion control or other purposes at any required time t through the use of the median or mode of set Bj(t,A).
  • the client will use the ERBPP W+ method rather than the ERBPP m method (note that if the filtering step 240 is not performed, set Bj(t, A) is equal to set B ⁇ t, A)).
  • the present invention provides a new bandwidth estimation mechanism, which achieves significant performance improvements over the existing bandwidth estimation algorithms.

Landscapes

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

Abstract

A method and device for estimating the bottleneck bandwidth over a communication network is provided. The method includes the steps of: transmission by the sever through a bottleneck link a plurality of bursts comprised of packets to the client; calculating a set of bandwidth samples for each burst received by the client end; determining a new bottleneck bandwidth from the calculated bandwidth samples for the following transmission of data packets between the server and the client. The device capable of estimating a bottleneck bandwidth includes: a means for transmitting a plurality of bursts comprised of packets; a means for receiving each burst packets via a bottleneck link; a means for generating a set of bandwidth samples based on a difference between an inter-packet spacing between the first and the last packet within each burst; and, a means for determining the current bottleneck bandwidth from the generated bandwidth samples.

Description

Method and device for robust real-time estimation of the bottleneck bandwidth in the internet
BACKGROUND OF THE INVENTION Field of invention
The present invention relates to the field of the Internet. More particularly, the present invention relates to a method and system for estimating in real time the bottleneck bandwidth of the Internet system.
Description of the Invention
The Internet has grown into a vastly diverse connection of many different networks and consists of links of greatly varying bandwidths. As a result, the end-to-end network parameters of the Internet have become more complicated to determine. In addition, most data applications cannot predict their own traffic parameters. Accordingly, the Internet system usually requires a service that dynamically estimates and adapts to the bottleneck bandwidth of an end-to-end Internet path. The bottleneck bandwidth represents the speed of the slowest link of an end-to-end path. FIG. 1 depicts the conventional estimation mechanism known as Receiver-
Based Packet Pair (RBPP). For the purpose of simplicity and clarity, the vertical dimension of the packets represents the link speed, and the horizontal dimension represents the transmission time. In the conventional RBPP method, the sender transmits to the receiver two back-to-back packets (which are called the packet pair), of sizes s\ and s2, respectively. As these packets traverse an end-to-end path, they are spread out by the bottleneck link. The spacing between the arrived packets is typically increased because the bottleneck link is slower than the previous links. As a consequence, it takes longer to transmit each packet over the slow bottleneck link. In the remaining path, the new spacing AT between the packets is preserved unless much a slower bottleneck link is encountered. As shown in FIG. 1 , upon receiving the spaced packets, the receiver computes the value of the bottleneck bandwidth BB, which is calculated by s2/Δ according to the conventional method. Thereafter, the receiver generates a special packet or acknowledgment packet (ACK) with the computed estimate value, BB, and transmits it back to the sender. The sender can then adjust the sending rate based on the estimation of the bottleneck bandwidth
BB.
Another prior art method currently deployed follows a Packet Bunch Modes (PBM) technique, which is basically steamed from the above RBPP method. The PBM is aimed at measuring the bottleneck bandwidth during an off-line mode. In addition, the PBM applies a series of filtering and estimation techniques to all samples collected during a given session, thereby requiring an entire set of bandwidth samples to be ready at the time of estimation.
Both of the above prior art methods of estimating the bandwidth have many drawbacks. First, both techniques are highly sensitive to packet compression events - a phenomenon which occur when packets arrive closer to each other than they were originally sent out. Thus, both methods produce an inaccurate estimation of bottleneck bandwidth if employed in the existing Internet in real-time. In addition, as the second method is proposed for off-line operation and requires an entire set of bandwidth samples to be ready at the time of estimation, real-time application of the method is not feasible. Moreover, both methods do not address the delay variation incurred by the OS kernel of the client machine during the scheduling and switching operations. Hence, the detected inter-packet spacing ΔjTmay be significantly skewed by the OS operation before the packets are passed to the destination node, thus resulting in an inaccurate estimation of the bottleneck bandwidth BB- Furthermore, both methods require the transmission time stamps to be placed in each packet, thereby increasing the overhead. In addition, RBPP sends special probe packets to measure the bandwidth and incurs extra bandwidth overhead.
Therefore, there is a need for an improved method and system to accurately measure the bottleneck bandwidth in a real-time application.
SUMMARY OF THE INVENTION
In the preferred embodiment, the present invention relates to estimating the real-time bottleneck bandwidth of an end-to-end Internet path between a server and client. Accordingly, a method capable of estimating the bottleneck bandwidth is provided and includes the steps of: transmitting by the sever through a bottleneck link a plurality of bursts comprised of packets to the client; calculating a set of bandwidth samples for each burst received by the client end; and, determining a new bottleneck bandwidth from the calculated bandwidth samples for the following transmission of data packets between the server and the client. The present invention relates to a device for estimating the bottleneck bandwidth and includes: a means for transmitting a plurality of packet bursts; a means for receiving each burst packet via a bottleneck link; a means for generating a set of bandwidth samples based on the difference between an inter-packet spacing between the first and the last packet of each burst; and, a means for determining a new bottleneck bandwidth based on the generated bandwidth samples.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 illustrates a conventional bandwidth estimation mechanism; FIG. 2 is a schematic view of an exemplary architecture of the bandwidth estimating system according to the present invention;
FIG. 3 illustrates the format of a user datagram protocol (UDP) packet at the server end in accordance with the present invention;
FIG. 4(a) is a flow chart illustrating the operation of the bottleneck bandwidth estimator according to the present invention;
FIG. 4(b) is a flow chart illustrating a greater detail of estimating the bottleneck bandwidth estimator according to the present invention;
FIG. 5 illustrates a particular mechanism of estimating the bandwidth of the packets of the burst according to the present invention; and, FIG. 6 illustrates a particular mechanism of handling the packet compression event according to the present invention.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT
In the following description, for purposes of explanation rather than limitation, specific details are set forth such as the particular architecture, interfaces, techniques, etc., in order to provide a thorough understanding of the present invention. However, it will be apparent to those skilled in the art that the present invention may be practiced in other embodiments which depart from these specific details. Moreover, for the purpose of clarity, detailed descriptions of well-known devices, circuits, and methods are omitted so as not to obscure the description of the present invention with unnecessary detail.
Referring to FIG. 2, the server-client architecture 10 for streaming multimedia data over the Internet according to an exemplary embodiment of the present invention includes a first system 12, such as a server device, a second system 14, such as a client device. Both server and client are in communication with each other via the access link 18, 20 of the Internet network 16. The embodiment of the present invention is aimed at estimating a bottleneck bandwidth, which represents the speed of the slowest link of an end- to-end path, in a rapid and reliable way for the following transmission of data packets. The server system 12 comprises a central processing unit 22, a general purpose memory 24 and an operating system 26. The client system 14 also comprises amongst others a central processing unit 28, a general purpose memory 30 and an operating system 32.
According to the exemplary embodiment of the present invention, the system 10 provides the server system 12 to use video traffic (i.e., burst packets) to estimate the bottleneck bandwidth rather than sending special packet pairs to measure the bottleneck bandwidth as in the prior art. The format of a UDP packet of each burst packet according to the present invention is shown in FIG. 3. Each packet in real-time application carries a burst identifier, which allows the receiver to distinguish packets from different bursts. For simplicity, the inventive bandwidth measurement will be referred to hereinafter as Extended Receiver-Based Packet Pair (ERBPP). Now, a detailed description of performing real-time bandwidth estimation according to an exemplary embodiment of the present invention will be explained below in conjunction with FIG. 4(a) and FIG. 4(b).
Referring to FIG. 4(a), the inventive bandwidth estimation process consists of three steps - measurement step 100, filtering step 120, and estimation step 140. The filtering step 120 is an optional operation that is performed to further increase the accuracy of the bandwidth samples generated in the measurement step 100. Initially, the server system 12 transmits a plurality of bursts comprised of packets to the client system 14 via a bottleneck link path. In step 100, the bandwidth for each burst received at the client system 14 within a predetermined period is measured and collected in a set of samples B {t, Δ). Then, in step 120, certain collected samples are removed from the sample set due to the suspected compression or expansion caused by OS-related scheduling delays in delivering packets to the application layer. Again, the filtering step 120 is not required and only executed if a more accurate estimation can be obtained under the prevailing condition of the network. In step 140, a single estimate bEsril Δ) that is the most recent and accurate estimation of the bottleneck bandwidth is determined according to the predetermined criteria. The principle of these three major operations will be described in greater detail below.
Referring to FIG. 4(b), according to an exemplary embodiment of the present invention, the server system 12 transmits data packets containing actual real-time data in bursts in step 200. Here, the packets that the server system 12 has to deliver to the client system 14 are transmitted at a maximum transmission speed of the adjacent link to guarantee the condition that the packets traveling along the end-to-end Internet path are queued and delayed at the bottleneck link. That is, the packets of each burst have to leave the server system 12 at a rate that is definitely higher than the bottleneck link's speed, so that the packets in each burst can be expanded before they arrive to the client system 14, as shown in FIG. 5. It is be noted that although the server system 12 uses packets of a different size in FIG. 5, the server system 12 may send packets of equal size in the embodiment of the present invention.
Then, in step 210, these packets pass through the Internet network and arrive at the client system 14. Upon receiving a plurality of packet bursts, the client system 14 computes the corresponding bottleneck bandwidth Bt for each packet burst i received therein, in step 220. At this time, if there is a packet loss in any one of the bursts received at the client system 14, the bandwidth sample based on the burst with a missing packet is not included in the set of bandwidth samples, Bj j, Δ) in step 230. To achieve this, the client system 14 analyzes the header information of the respective burst, as shown in FIG. 3, to identify any missing packets within a given burst. In addition, bursts of packets during which the client received a retransmitted packet, are discarded as well. If there were no missing packets in the burst of packets and no retransmission in the middle of the burst, a bandwidth sample R, is measures in step 230 as follows. Upon receiving the burst packets originated from the server system 12, the client system 14 measures the corresponding bandwidth based on the packet-pair concept and maintains a data base of collected samples in set B^ t, Δ), wherein t represents the current time and Δ represents the "lifetime" of samples. That is, the client system 14 computes samples of the bottleneck bandwidth using the inter-packet spacing between the first and the last packets within each burst. Referring to FIG. 5, if the z'-th burst consists of n, packets and the k-Xh packet of the burst is received at time t,(k), which contains sι(k) bytes, the client system 14 computes partial bandwidth samples b, (k) for each burst according to the following equation:
W = T όT(ATT) ∑* ^= Xz - 'λ where 2 ≤ k ≤ rtt and ό\k) = /,(*) - t,(l),
where each sample b,(k) represents an estimate of the bandwidth using the first k (k≥ 2) packets of burst . Here, the sum starts with the second packet (j = 2) in computing the bandwidth as the burst duration [t,(k)- t,(l)] does not include the transmission time of the very first packet of the burst over the bottleneck link. Preferably, the number of packets nt is set at least 3 packets in each burst; however, this number is not required. In the ERBPP method, each sample of bandwidth B, based on burst i is equal to the last partial sample: B, = b,(n,). In the multi-channel link environment (hereinafter referred to as ERBPP+ method), sample B, is selected as the smallest value of partial samples b,(k), for all k: B, = Mk: min (b,(k)). Furthermore, the ERBPP method that considers only bursts with at least m packets is called ERBPPOT. Suggested value of m is at least 3. Similarly, the ERBPP+ method that analyzes at least m packets is called ERBPPm+. The same value m = 3 is suggested for ERBPPm+. Once a samples B, is computed using ERBPPOT or ERBPPm+ at time t, it is added to the set of collected samples B^(t, Δ) and stays there for no longer than Δ time units. Accordingly, the client system 14 only needs to distinguish between packets in different bursts rather than the exact transmission time of each packet as required in the prior art. Hence, the only fields required in each packet header are one-bit (0 or 1) burst identifier and a packet sequence number. In addition, the inventive method has no bandwidth overhead associated with sending separate packet pairs as in the prior art since the actual video data in the form of a packet burst is used to compute the bandwidth. It is noted that the number of packets in a packet burst may be more than two packets depending on the streaming rate and desired burstiness. In addition, as many streaming media packet sizes are not constant, the number of packets per impulse (i.e., packet burst) varies.
Next, step 240 is performed at the discretion of the operator. This filtering step can be selectively performed by the client system 14 to improve the accuracy of the generated samples B^t, Δ) prior to selecting the new estimate of the bottleneck bandwidth. For simplicity, the new resulting bandwidth samples after undergoing the filtering process will be referred to as Bj(t, A) hereinafter. According to the exemplary embodiment of the present invention, there are two types of filtering approaches used to improve the accuracy of the bottleneck bandwidth estimation. The former approach filters the generated samples
B j, A) by maintaining the lifetime of samples Δ to a predetermined time period. Thus, any bandwidth samples generated that exceed a threshold sample lifetime would be eliminated from the B/ j, A) in step 242. In the preferred embodiment, the recommended values Δ range between 30 and 300 seconds. On the other hand, the latter approach relates to reducing the amount of error introduced by random and deterministic delays inside the OS kernel of the client system 14 in delivering packets to the application layer (i.e., process scheduling delays, delays caused by low-resolution clock in the data-link layer). FIG. 6 illustrates this type of undesirable delays, namely packet compression and packet expansion, which alter the spacing between packets. Here, the packet compression refers to packets in a burst that arrive to the client system 14 with the spacing smaller than the inter-packet delay introduced by the bottleneck link. This type of compression can occur, for example, if the first packet in a pair encounters a large queuing delay at some high-speed interface after going through the bottleneck router, and the second packet catches up with the first packet by encountering no or little queuing delay at the same interface. As shown in FIG. 6, the first packet of burst / (the burst in the middle) is delayed by the OS of the client system 14 until the second packet of the same burst is received by the kernel. Then, both packets are scheduled and delivered to the application layer. In such a case, the application can erroneously identify the beginning of burst i and use smaller burst length Δt, (instead of AT,) in its computation of ERBPP+ bandwidth. The packet expansion refers to packets arriving to the client system 14 with the spacing larger than the one ideally introduced by the bottleneck link. The expansion can occur before or after passing the bottleneck router. As a consequence, the client system 14 can erroneously measure the bandwidth based on the expanded packet pair rather than the rate of the bottleneck link.
In order to eliminate an inaccurate estimation that may be caused by either the compression or expansion events, the exemplary embodiment of the present invention provides a filtering process to eliminate inaccurate bandwidth estimations out of the collected samples B^(t, A) that is caused by the compression and/or expansion in step 244. The principle of the filtering operation is based on comparing the values of observed burst durations, Z and I -1 , with the ideal value Db for each received burst i. That is, the inaccurate bandwidth samples encountering the OS -related delay are determined based on the quantity difference between an ideal burst duration prior to encountering the OS delay and an actual burst duration after encountering the OS delay. Referring to FIG. 6, the length of each burst has a fixed duration of , time units (i.e., one burst is generated every Db time units). If no significant compression occurs during the transmission, the respective burst lengths between the top and bottom graphs of FIG. 6 will agree. Thus, in cases when they do not agree or if the burst duration Db (the actual burst duration) deviates from Db (the ideal burst duration) for more than α percent, the compression/expansion event is inferred. To state otherwise, if both 1 1- Db /Db I ≤ α and | \-Db ~xIDb I ≤ α, then the corresponding bandwidth sample will be kept in set Bμ(t, A) and will be eliminated otherwise in step 244. A suggested value of α, for example, ranges between 5% and 40%. For simplicity, the ERBPPm method with α-percent filtering is referred to as ERBPPOT-α hereinafter.
Finally, in step 260, the client system 14 according to the present invention determines a new real-time bandwidth from the set of filtered samples Bι(t, A) (note that if the filtering step 240 is not performed, set Bι(t, A) is equal to set BM(1, A)) by determining a single estimate bεsiit) representing the current value of the bottleneck link at time t. Here, the estimation of bEsiiO is divided into two approaches, the median approach or the statistical approach of set Bι(t, A). The median mode is applied to low-speed links (below 128 Kbps) in step 264, while the statistical mode is applied to high-speed links (above 128 Kbps) in step 262. The statistical mode of a set is such value x where the probability distribution function (PDF)T(JC) of the set reaches its maximum. In practice, the PDF is not known for finite sets and is usually replaced by the histogram of the set. The histogram of a set is computed by partitioning the set of values contained in the set into equal-size bins and computing the percentage of samples from the set that fall into each bin. The middle of the bin with the highest percentage is then selected as the mode of the set. For this invention, the suggested values for the bin size are between 1 Kbps and 5 Kbps. Accordingly, estimates b£sτ(t) can be used for congestion control or other purposes at any required time t through the use of the median or mode of set Bj(t,A). Furthermore, if a multi-channel link is deployed (or believed to be deployed by the client) between the server system 12 and the client system 14, the client will use the ERBPPW+ method rather than the ERBPPm method (note that if the filtering step 240 is not performed, set Bj(t, A) is equal to set B {t, A)).
In summary, the present invention provides a new bandwidth estimation mechanism, which achieves significant performance improvements over the existing bandwidth estimation algorithms. Having thus described a preferred embodiment for estimating the bottleneck bandwidth over a digital communications link, it should be apparent to those skilled in the art that certain advantages of the system have been achieved. The foregoing is to be constructed as only being an illustrative embodiment of this invention. Thus, persons skilled in the art can easily conceive of alternative arrangements providing a function similar to this embodiment without any deviation from the fundamental principles or the scope of this invention.

Claims

CLAIMS:
1. A method for estimating a bottleneck bandwidth used to support estimation of the bottleneck bandwidth between a server and a client in a communication system, the method comprising the steps of:
(a) transmitting a plurality of bursts comprised of packets from said server to said client via a bottleneck link of said system;
(b) computing a set of bandwidth samples from each of said bursts received by said client; and,
(c) determining a best bottleneck bandwidth from said computed bandwidth samples, for the following transmission of data packets from said server to said client.
2. The method of claim 1 , further comprising the step of filtering for inaccurate bandwidth samples from said computed bandwidth samples by rejecting bandwidth samples having a sample life time greater than a threshold bandwidth lifetime.
3. The method of claim 1 , further comprising the step of filtering for inaccurate bandwidth samples from said computed bandwidth samples by rejecting bandwidth samples encountering an operating system (OS) delay of said client system.
4. The method of claim 3, wherein the bandwidth samples encountering said OS delay is determined based on a quantity difference between an ideal burst duration prior to encountering said OS delay and an actual burst duration after encountering said OS delay.
5. The method of claim 1, further comprising the step of filtering for inaccurate bandwidth samples from said computed bandwidth samples by rejecting bandwidth samples having a retransmitted packet.
6. The method of claim 1 , wherein the plurality of said packet bursts is transmitted at a maximum speed by said server system so that the inter-packet delay is introduced in each of said bursts.
7. The method of claim 1 , wherein said new bandwidth corresponds to a median value of said computed bandwidth samples for a low speed link.
8. The method of claim 1 , wherein said new bandwidth corresponds to the statistical mode of said computed bandwidth samples for a high speed link.
9. The method of claim 1 , where in said new bandwidth corresponds to a minimum bandwidth of said computed bandwidth samples if a multi-channel link is deployed between said server and said client.
10. The method of claim 1 , further comprising the step of eliminating bandwidth samples having a missing packet within each of said bursts.
11. The method of claim 1 , wherein said bandwidth samples for each of said burst is computed based on a difference between an inter-packet spacing between the first and the last packet within each of said burst.
12. A method for estimating a bottleneck bandwidth used to support congestion control between a server and a client, the method comprising the steps of:
(a) transmitting by said server through a bottleneck link a plurality of burst comprised of packets to said client at a maximum rate;
(b) computing by said client a set of bandwidth samples for each of said burst packet, said bottleneck bandwidth being a difference between an inter-packet spacing between the first and the last packet within each of said bursts;
(c) filtering said computed bandwidth samples according to predetermined criteria; and,
(d) determining a new bottleneck bandwidth for the following transmission of data packets between said server and said client, wherein determination of said new bottleneck bandwidth is based on said computed bandwidth samples and said and said filtering step.
13. The method of claim 12, wherein the step of computing said bandwidth samples comprises the steps of: determining the start time and the end time of the reception of the first and the last packet within each of said bursts; determining the packet size of the second packet and the last packet for each of said bursts; and, computing said bandwidth samples based on a difference between the packet size of the second packet and the last packet, divided by a difference between an inter-packet spacing duration between the first and the last packet within each of said bursts.
14. The method of claim 12, wherein the plurality of said packet bursts is transmitted at a maximum rate by said server system so that the inter-packet delay is introduced in each of said bursts.
15. The method of claim 12, wherein the step of filtering said computed bandwidth samples comprises the step of rejecting bandwidth samples having a sample life time greater than a threshold bandwidth lifetime.
16. The method of claim 12, wherein the step of filtering said computed bandwidth samples comprises the step of rejecting bandwidth samples encountering an operating system (OS) delay of said client system.
17. The method of claim 16, wherein the bandwidth samples encountering said OS delay is determined based on a quantity difference between an ideal burst duration prior to encountering said OS delay and an actual burst duration after encountering said OS delay.
18. The method of claim 12, wherein the step of filtering said computed bandwidth samples comprises the step of rejecting bandwidth samples having a retransmitted packet.
19. The method of claim 12, wherein said new bandwidth corresponds to a median value of said computed bandwidth samples for a low speed link.
20. The method of claim 12, wherein said new bandwidth corresponds to the statistical mode of said computed bandwidth samples for a high speed link.
21. The method of claim 12, where in said new bandwidth corresponds to a minimum bandwidth of said computed bandwidth samples if a multi-channel link is deployed between said server and said client.
22. The method of claim 12, further comprising the step of eliminating bandwidth samples having a missing packet within each of said bursts.
23. A device for estimating a bottleneck bandwidth used to support congestion control between a server and a client, the method comprising the steps of: means for transmitting plurality of bursts comprised of packets; means for receiving said burst packets via a bottleneck link; means for generating a set of bandwidth samples based on a difference between an inter-packet spacing between the first and the last packet within each of said bursts; and, means for determining a new bottleneck bandwidth from said generated bandwidth samples for the following transmission of data packets between said server and said client.
24. The device of claim 23, further comprising a means for filtering said generated bandwidth samples by eliminating one of said generated bandwidth samples exceeding a threshold bandwidth lifetime.
25. The device of claim 23, further comprising a means for filtering said generated bandwidth samples by eliminating one of said generated bandwidth samples encountering an operating system (OS) delay of said client.
26. The device of claim 23, further comprising a means for filtering said generated bandwidth samples by eliminating one of said generated bandwidth samples having a retransmitted packet.
PCT/IB2002/001435 2001-04-19 2002-04-18 Method and device for robust real-time estimation of bottleneck bandwidth WO2002087276A2 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP02724549A EP1382219B1 (en) 2001-04-19 2002-04-18 Method and device for robust real-time estimation of bottleneck bandwidth
DE60210060T DE60210060D1 (en) 2001-04-19 2002-04-18 Method and apparatus for robust real-time estimation of bottleneck bandwidth
JP2002584651A JP2004524782A (en) 2001-04-19 2002-04-18 Method and apparatus for robust real-time estimation of bottleneck bandwidth in the Internet

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/837,936 US20020169880A1 (en) 2001-04-19 2001-04-19 Method and device for robust real-time estimation of the bottleneck bandwidth in the internet
US09/837,936 2001-04-19

Publications (2)

Publication Number Publication Date
WO2002087276A2 true WO2002087276A2 (en) 2002-10-31
WO2002087276A3 WO2002087276A3 (en) 2003-09-18

Family

ID=25275837

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/IB2002/001435 WO2002087276A2 (en) 2001-04-19 2002-04-18 Method and device for robust real-time estimation of bottleneck bandwidth

Country Status (8)

Country Link
US (1) US20020169880A1 (en)
EP (1) EP1382219B1 (en)
JP (1) JP2004524782A (en)
KR (1) KR20030058946A (en)
CN (1) CN1488214A (en)
AT (1) ATE321428T1 (en)
DE (1) DE60210060D1 (en)
WO (1) WO2002087276A2 (en)

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005269236A (en) * 2004-03-18 2005-09-29 Sony Corp Communication system, transmitter and method, receiver and method, and program
JP2007504694A (en) * 2003-08-29 2007-03-01 ダーマ・ホールディングス・エス・アー Congestion control based on transmission rate for packet networks
CN1312881C (en) * 2004-09-09 2007-04-25 复旦大学 Method for real timed monitoring stream data sudden change
US7274740B2 (en) 2003-06-25 2007-09-25 Sharp Laboratories Of America, Inc. Wireless video transmission system
US7652993B2 (en) 2006-11-03 2010-01-26 Sharp Laboratories Of America, Inc. Multi-stream pro-active rate adaptation for robust video transmission
US7652994B2 (en) 2006-03-31 2010-01-26 Sharp Laboratories Of America, Inc. Accelerated media coding for robust low-delay video streaming over time-varying and bandwidth limited channels
US7784076B2 (en) 2004-10-30 2010-08-24 Sharp Laboratories Of America, Inc. Sender-side bandwidth estimation for video transmission with receiver packet buffer
US7797723B2 (en) 2004-10-30 2010-09-14 Sharp Laboratories Of America, Inc. Packet scheduling for video transmission with sender queue control
CN1514586B (en) * 2002-12-31 2011-05-11 中兴通讯股份有限公司 Testing method of data communication equipment of imitating multiuser, multi connection
US8018850B2 (en) 2004-02-23 2011-09-13 Sharp Laboratories Of America, Inc. Wireless video transmission system
US8356327B2 (en) 2004-10-30 2013-01-15 Sharp Laboratories Of America, Inc. Wireless video transmission system
US8861597B2 (en) 2006-09-18 2014-10-14 Sharp Laboratories Of America, Inc. Distributed channel time allocation for video streaming over wireless networks
US8908540B2 (en) 2009-02-13 2014-12-09 Toshiba America Research, Inc. Efficient and loss tolerant method and mechanism for measuring available bandwidth
US9325998B2 (en) 2003-09-30 2016-04-26 Sharp Laboratories Of America, Inc. Wireless video transmission system
US9544602B2 (en) 2005-12-30 2017-01-10 Sharp Laboratories Of America, Inc. Wireless video transmission system
US11388459B2 (en) * 2020-03-31 2022-07-12 Beijing Dajia Internet Information Technology Co., Ltd. Method and apparatus for determining bandwidth, and electronic device and storage medium

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6674717B1 (en) * 2000-03-30 2004-01-06 Network Physics, Inc. Method for reducing packet loss and increasing internet flow by feedback control
US7551560B1 (en) 2001-04-30 2009-06-23 Opnet Technologies, Inc. Method of reducing packet loss by resonance identification in communication networks
WO2003069787A2 (en) * 2002-02-12 2003-08-21 Digital Interactive Streams, Inc. System and method for fault tolerant multimedia communication
US7305464B2 (en) * 2002-09-03 2007-12-04 End Ii End Communications, Inc. Systems and methods for broadband network optimization
US20080089347A1 (en) * 2003-08-29 2008-04-17 End Ii End Communications Inc. Systems and methods for broadband network optimization
US8068436B2 (en) 2003-10-15 2011-11-29 Microsoft Corporation Methods and systems for estimating network available bandwidth using packet pairs and spatial filtering
US7475129B2 (en) * 2003-12-12 2009-01-06 International Business Machines Corporation Estimating bandwidth of client-ISP link
US7965648B2 (en) * 2004-01-14 2011-06-21 Nec Corporation Speed calculation system
EP1716634B1 (en) 2004-02-20 2020-03-04 GCT Semiconductor, Inc. Improvement of the coarse tuning time in pll with lc oscillator
US7545749B2 (en) * 2005-02-15 2009-06-09 Microsoft Corporation High-accuracy packet pair for network bottleneck bandwidth measurement
CN100446479C (en) * 2005-03-10 2008-12-24 同济大学 Method for measuring end-to-end available bandwidth based on network compact link position
US7957276B2 (en) * 2005-04-28 2011-06-07 Telcordia Licensing Company, Llc Call admission control and preemption control over a secure tactical network
US20070067480A1 (en) * 2005-09-19 2007-03-22 Sharp Laboratories Of America, Inc. Adaptive media playout by server media processing for robust streaming
US20070147371A1 (en) * 2005-09-26 2007-06-28 The Board Of Trustees Of Michigan State University Multicast packet video system and hardware
CN100421396C (en) * 2005-11-18 2008-09-24 史文勇 Method and system for measuring bottleneck bandwidth and remanent bandwidth
US7778179B2 (en) * 2005-11-23 2010-08-17 Telefonaktiebolaget L M Ericsson (Publ) Using filtering and active probing to evaluate a data transfer path
US8139487B2 (en) * 2007-02-28 2012-03-20 Microsoft Corporation Strategies for selecting a format for data transmission based on measured bandwidth
JP5194562B2 (en) 2007-05-28 2013-05-08 日本電気株式会社 Link bandwidth estimation apparatus and link bandwidth estimation method
WO2010033059A1 (en) * 2008-09-22 2010-03-25 Telefonaktiebolaget L M Ericsson (Publ) Method, arrangement and system for monitoring a data path in a communication network
US8116225B2 (en) * 2008-10-31 2012-02-14 Venturi Wireless Method and apparatus for estimating channel bandwidth
KR101643552B1 (en) * 2010-06-17 2016-07-29 삼성전자 주식회사 Method and apparatus for estimating available bandwidth and capacity of network paths in communication systems
US9094290B2 (en) * 2011-09-09 2015-07-28 Ixia Measuring and displaying bandwidth contention
US9215157B2 (en) 2011-11-04 2015-12-15 Microsoft Technology Licensing, Llc Adaptive bandwidth estimation
US9509802B1 (en) * 2013-03-15 2016-11-29 PME IP Pty Ltd Method and system FPOR transferring data to improve responsiveness when sending large data sets
JP2016184824A (en) * 2015-03-25 2016-10-20 富士通株式会社 Packet analysis program, packet analysis device, and packet analysis method
US10298475B2 (en) * 2015-07-24 2019-05-21 Nvidia Corporation System and method for jitter-aware bandwidth estimation
JP7173587B2 (en) * 2016-12-21 2022-11-16 デジェロ ラブス インコーポレイテッド Packet transmission system and method
EP3673622B1 (en) 2017-08-22 2024-05-01 Dejero Labs Inc. System and method for assessing communication resources
US10873520B2 (en) * 2018-07-02 2020-12-22 Hewlett Packard Enterprise Development Lp Packet batching identification
US11895532B2 (en) 2021-01-05 2024-02-06 Apple Inc. Detecting cellular network bottlenecks using data allocation patterns

Family Cites Families (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0719530B2 (en) * 1984-06-29 1995-03-06 株式会社日立製作所 Cathode ray tube
KR900009071B1 (en) * 1986-05-28 1990-12-20 가부시기가이샤 히다찌세이사구쇼 Impregnated cathode
US5274625A (en) * 1992-09-10 1993-12-28 International Business Machines Corporation Traffic measurements in packet communications networks
US5359593A (en) * 1993-08-26 1994-10-25 International Business Machines Corporation Dynamic bandwidth estimation and adaptation for packet communications networks
US5815492A (en) * 1996-06-20 1998-09-29 International Business Machines Corporation Dynamic bandwidth estimation and adaptation in high speed packet switching networks
US5884037A (en) * 1996-10-21 1999-03-16 International Business Machines Corporation System for allocation of network resources using an autoregressive integrated moving average method
US6038216A (en) * 1996-11-01 2000-03-14 Packeteer, Inc. Method for explicit data rate control in a packet communication environment without data rate supervision
US6292834B1 (en) * 1997-03-14 2001-09-18 Microsoft Corporation Dynamic bandwidth selection for efficient transmission of multimedia streams in a computer network
US6047326A (en) * 1997-03-20 2000-04-04 Nokia Telecommunications, Oy Accounting system and method for a nominal bit rate network service
US6233233B1 (en) * 1997-04-09 2001-05-15 Mercury Corporation Distributed packet handling apparatus for use in a packet switch
US6144638A (en) * 1997-05-09 2000-11-07 Bbn Corporation Multi-tenant unit
US6014694A (en) * 1997-06-26 2000-01-11 Citrix Systems, Inc. System for adaptive video/audio transport over a network
US6016553A (en) * 1997-09-05 2000-01-18 Wild File, Inc. Method, software and apparatus for saving, using and recovering data
US6104392A (en) * 1997-11-13 2000-08-15 The Santa Cruz Operation, Inc. Method of displaying an application on a variety of client devices in a client/server network
US6362836B1 (en) * 1998-04-06 2002-03-26 The Santa Cruz Operation, Inc. Universal application server for providing applications on a variety of client devices in a client/server network
US6647424B1 (en) * 1998-05-20 2003-11-11 Nortel Networks Limited Method and apparatus for discarding data packets
US6405257B1 (en) * 1998-06-26 2002-06-11 Verizon Laboratories Inc. Method and system for burst congestion control in an internet protocol network
US6526022B1 (en) * 1998-06-30 2003-02-25 Sun Microsystems Detecting congestion by comparing successive loss of packets in windows to provide congestion control in reliable multicast protocol
JP3587352B2 (en) * 1999-02-04 2004-11-10 富士通株式会社 Network communication performance measurement method and apparatus, and computer-readable recording medium storing network communication performance measurement program
US6570912B1 (en) * 1999-03-05 2003-05-27 Pctel, Inc. Hybrid software/hardware discrete multi-tone transceiver
US6711137B1 (en) * 1999-03-12 2004-03-23 International Business Machines Corporation System and method for analyzing and tuning a communications network
JP2000269999A (en) * 1999-03-19 2000-09-29 Fujitsu Ltd Inter-network communication system
US6963912B1 (en) * 1999-06-28 2005-11-08 Xacct Technologies, Ltd. Method and apparatus for session reconstruction
US6633540B1 (en) * 1999-07-02 2003-10-14 Nokia Internet Communications, Inc. Real-time traffic shaper with keep-alive property for best-effort traffic
US6606316B1 (en) * 1999-07-02 2003-08-12 Cisco Technology, Inc. Gathering network statistics in a distributed network service environment
US6901051B1 (en) * 1999-11-15 2005-05-31 Fujitsu Limited Server-based network performance metrics generation system and method
US6901357B1 (en) * 1999-12-14 2005-05-31 Microsoft Corporation System and method for simulating network connection characteristics
EP1256210A2 (en) * 2000-02-04 2002-11-13 HRL Laboratories, LLC System and method for pricing-based quality of service
US6873600B1 (en) * 2000-02-04 2005-03-29 At&T Corp. Consistent sampling for network traffic measurement
US6859836B2 (en) * 2000-03-29 2005-02-22 Massoud Alibakhsh System and method for providing look ahead socket generation
US6894974B1 (en) * 2000-05-08 2005-05-17 Nortel Networks Limited Method, apparatus, media, and signals for controlling packet transmission rate from a packet source
US7266613B1 (en) * 2000-08-09 2007-09-04 Microsoft Corporation Fast dynamic measurement of bandwidth in a TCP network environment
US6807156B1 (en) * 2000-11-07 2004-10-19 Telefonaktiebolaget Lm Ericsson (Publ) Scalable real-time quality of service monitoring and analysis of service dependent subscriber satisfaction in IP networks
US6515618B1 (en) * 2000-11-29 2003-02-04 Trimble Navigation Ltd. Fault detection and exclusion in a positioning system receiver
US6785893B2 (en) * 2000-11-30 2004-08-31 Microsoft Corporation Operating system event tracker having separate storage for interrupt and non-interrupt events and flushing the third memory when timeout and memory full occur
US6907460B2 (en) * 2001-01-18 2005-06-14 Koninklijke Philips Electronics N.V. Method for efficient retransmission timeout estimation in NACK-based protocols
US6865510B2 (en) * 2002-12-12 2005-03-08 Ugs Corp. Adaptive asymmetric network connectivity probing system and method

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
SISALEM D; SCHULZRINNE H: "The Loss-Delay Adjustment Algorithm: A TCP-friendly Adaptation Scheme" NETWORK AND OPERATING SYSTEM SUPPORT FOR DIGITAL AUDIO AND VIDEO (NOSSDAV), [Online] 8 - 10 July 1998, XP002226884 Cambridge (UK) Retrieved from the Internet: <URL:http://www.cs.columbia.edu/~hgs/paper s/Sisa9807_Loss.pdf> [retrieved on 2003-01-10] *

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1514586B (en) * 2002-12-31 2011-05-11 中兴通讯股份有限公司 Testing method of data communication equipment of imitating multiuser, multi connection
US7274740B2 (en) 2003-06-25 2007-09-25 Sharp Laboratories Of America, Inc. Wireless video transmission system
JP2007504694A (en) * 2003-08-29 2007-03-01 ダーマ・ホールディングス・エス・アー Congestion control based on transmission rate for packet networks
US9325998B2 (en) 2003-09-30 2016-04-26 Sharp Laboratories Of America, Inc. Wireless video transmission system
US8018850B2 (en) 2004-02-23 2011-09-13 Sharp Laboratories Of America, Inc. Wireless video transmission system
JP2005269236A (en) * 2004-03-18 2005-09-29 Sony Corp Communication system, transmitter and method, receiver and method, and program
CN1312881C (en) * 2004-09-09 2007-04-25 复旦大学 Method for real timed monitoring stream data sudden change
US7784076B2 (en) 2004-10-30 2010-08-24 Sharp Laboratories Of America, Inc. Sender-side bandwidth estimation for video transmission with receiver packet buffer
US7797723B2 (en) 2004-10-30 2010-09-14 Sharp Laboratories Of America, Inc. Packet scheduling for video transmission with sender queue control
US8356327B2 (en) 2004-10-30 2013-01-15 Sharp Laboratories Of America, Inc. Wireless video transmission system
US9544602B2 (en) 2005-12-30 2017-01-10 Sharp Laboratories Of America, Inc. Wireless video transmission system
US7652994B2 (en) 2006-03-31 2010-01-26 Sharp Laboratories Of America, Inc. Accelerated media coding for robust low-delay video streaming over time-varying and bandwidth limited channels
US8861597B2 (en) 2006-09-18 2014-10-14 Sharp Laboratories Of America, Inc. Distributed channel time allocation for video streaming over wireless networks
US7652993B2 (en) 2006-11-03 2010-01-26 Sharp Laboratories Of America, Inc. Multi-stream pro-active rate adaptation for robust video transmission
US8908540B2 (en) 2009-02-13 2014-12-09 Toshiba America Research, Inc. Efficient and loss tolerant method and mechanism for measuring available bandwidth
US11388459B2 (en) * 2020-03-31 2022-07-12 Beijing Dajia Internet Information Technology Co., Ltd. Method and apparatus for determining bandwidth, and electronic device and storage medium

Also Published As

Publication number Publication date
KR20030058946A (en) 2003-07-07
EP1382219A2 (en) 2004-01-21
ATE321428T1 (en) 2006-04-15
JP2004524782A (en) 2004-08-12
US20020169880A1 (en) 2002-11-14
CN1488214A (en) 2004-04-07
EP1382219B1 (en) 2006-03-22
DE60210060D1 (en) 2006-05-11
WO2002087276A3 (en) 2003-09-18

Similar Documents

Publication Publication Date Title
EP1382219B1 (en) Method and device for robust real-time estimation of bottleneck bandwidth
US7020083B2 (en) Method for improving TCP performance over wireless links
US6934256B1 (en) Method of detecting non-responsive network flows
US6996064B2 (en) System and method for determining network throughput speed and streaming utilization
US7945661B2 (en) Real time monitoring of TCP flows
US20050232227A1 (en) Method and apparatus for characterizing an end-to-end path of a packet-based network
KR20200109326A (en) System and method for monitoring broadband communication link performance
US7248564B1 (en) Method for determining network congestion and link capacities
KR20080079335A (en) Communication method, communication system, nodes and program
EP2332289B1 (en) Method, arrangement and system for monitoring a data path in a communication network
RU2695093C2 (en) Method for performing communication bandwidth testing from first network station to second network station in communication network, corresponding devices for executing steps of method and corresponding computer programs
US10181994B2 (en) Probing a network
Liu et al. End-to-end available bandwidth estimation and time measurement adjustment for multimedia QoS
Alfredo Grieco et al. End-to-end bandwidth estimation for congestion control in packet networks
Fisk et al. Dynamic adjustment of TCP window sizes
Kato et al. Comparing TCP Congestion Control Algorithms Based on Passively Collected Packet Traces
Ozturk et al. DIChirp: Direct injection bandwidth estimation
Benaboud et al. CANIT: a new algorithm to improve the fairness of TCP congestion avoidance
Timmer et al. How to identify the speed limiting factor of a tcp flow
JP2005269364A (en) Method and device for detecting communication passage state
Premalatha et al. Mitigating congestion in wireless networks by using TCP variants
Tekala et al. Throughput analysis of Scalable TCP congestion control
Mamatas et al. BOTTLENECK-QUEUE BEHAVIOR: How much can TCP know about it?
JP2006186889A (en) End-to-end quality estimation device and method
JP2005057620A (en) Transmission quality control method and its device

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): CN JP KR

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR

WWE Wipo information: entry into national phase

Ref document number: 028012798

Country of ref document: CN

Ref document number: 1020027017262

Country of ref document: KR

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2002724549

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 1020027017262

Country of ref document: KR

WWE Wipo information: entry into national phase

Ref document number: 2002584651

Country of ref document: JP

WWP Wipo information: published in national office

Ref document number: 2002724549

Country of ref document: EP

WWG Wipo information: grant in national office

Ref document number: 2002724549

Country of ref document: EP