SlideShare a Scribd company logo
1932-4537 (c) 2016 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See
http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TNSM.2016.2572212, IEEE
Transactions on Network and Service Management
IEEE TRANSACTIONS ON NETWORK AND SERVICE MANAGEMENT, VOL. , NO. , 2015 1
An Enhanced Available Bandwidth Estimation
Technique for an End-to-End Network Path
Anup Kumar Paul, Member, IEEE, Atsuo Tachibana, and Teruyuki Hasegawa
Abstract—This paper presents a unique probing scheme, a rate
adjustment algorithm, and a modified excursion detection algo-
rithm (EDA) for estimating the available bandwidth (ABW) of
an end-to-end network path more accurately and less intrusively.
The proposed algorithm is based on the well known concept of
self-induced congestion and it features a unique probing train
structure in which there is a region where packets are sampled
more frequently than in other regions. This high-density region
enables our algorithm to find the turning point more accurately.
When the dynamic ABW is outside of this region, we readjust the
lower rate and upper rate of the packet stream to fit the dynamic
ABW into that region. We appropriately adjust the range between
the lower rate and the upper rate using spread factors, which
enables us to keep the number of packets low and we are thus able
to measure the ABW less intrusively. Finally, to detect the ABW
from the one-way queuing delay, we present a modified EDA from
PathChirps’ original EDA to better deal with sudden increase
and decrease in queuing delays due to cross traffic burstiness.
For the experiments, an Android OS-based device was used to
measure the ABW over a commercial 4G/LTE mobile network of
a Japanese mobile operator, as well as real testbed measurements
were conducted over fixed and WLAN network. Simulations and
experimental results show that our algorithm can achieve ABW
estimations in real time and outperforms other stat-of-the-art
measurement algorithms in terms of accuracy, intrusiveness, and
convergence time.
Index Terms—Available Bandwidth, Probe Rate Model, Queu-
ing Delay, Rate Adjustment, Modified Excursion Detection Algo-
rithm, 4G/LTE Network.
I. INTRODUCTION
Available bandwidth (ABW) estimation is crucial for traffic
engineering, quality-of-service (QoS) management, multime-
dia streaming, server selection in application services, con-
gestion management, and network capacity provisioning in
wireless mobile networks. ABW measurement can be con-
sidered essential to ensure that wireless mobile operators can
achieve the QoS standard guaranteed by them while providing
desired data rates to users. This can also be considered
when comparing the performance index of various Telecom
operators in a specific region.
Let us first define the terms ABW, bottleneck link (BL)
or narrow link,1
and tight link precisely. Consider an end-to-
end path that includes n links L1, L2, · · · , Ln. Their capac-
ities are B1, B2, · · · , Bn and the traffic loads on these links
are C1, C2, · · · , Cn respectively. The BL can be defined as
Lb(1 ≤ b ≤ n), where
Bb = min(B1, B2, · · · , Bn).
Anup Kumar Paul, Atsuo Tachibana and Teruyuki Hasegawa are with the
KDDI R&D Laboratories Inc., Fujimino, Saitama, 356-8502 JAPAN; e-mail:
(anup@kddilabs.jp,tachi@kddilabs.jp,teru@kddilabs.jp).
1We will use both the terms interchangeably throughout this paper.
The tight link can be defined as Lt(1 ≤ t ≤ n), where
Bt − Ct = min(B1 − C1, B2 − C2, · · · , Bn − Cn).
The unused bandwidth on the tight link, Bt − Ct is called the
ABW of the path. There could be different possible definitions
of ABW, depending on whether we use an approach based
on unused capacity [1] or an approach based on achievable
rate [2]. In wired networks, these two approaches are equiva-
lent, leading to the widely accepted definition of ABW as the
unused capacity of the tight link. But in wireless networks,
interference makes the two concepts quite different. Due to
radio interference, the unused capacity may not be completely
available. On the other hand, when a new flow is established
in the given path to occupy some of that unused capacity, the
interfering cross traffic can re-accommodate itself in response
to the new flow, changing the perception of the new regarding
its ABW [3]. Since, in wireless settings, the unused capacity
approach does not take into account this possible adaptation to
network conditions, in this paper, we use the achievable rate
approach.
Ideally, a probing scheme should provide an accurate mea-
surement of ABW while requiring less time and imposing as
light a load as possible [1]. ABW estimation tools add traffic
to the network path under measurement. This may adversely
affect application traffic and measurement accuracy [4]. The
amount of probe traffic is proportional to the rate of sampling
and the number of concurrent measurement sessions. As a
result, the effect of probe packets on cross traffic exacerbates
with traffic increase. Thus less intrusive approach is desirable.
Therefore researchers have developed several end-to-end ABW
estimation techniques that infer the network characteristics
by transmitting a few packets and observing the effects of
intermediate routers or links on these probing packets. Nev-
ertheless, there are a variety of challenges that we need to
take into account: the estimation technique should be accurate,
non-intrusive, and robust at the same time. Moreover, the
estimation technique should be adaptively applied in different
types of networks and cross traffic (CT) and must be able to
produce accurate periodic estimations in a reasonable amount
of time in order to track bandwidth fluctuations. Therefore, as
mentioned in [5][6], the current ABW estimation techniques
are far from being ready to be applied to many applications
and scenarios.
Measuring end-to-end ABW in a LTE network can be a
challenging task due to varying wireless channel conditions,
scheduling and modulation techniques, and pre-configured
QoS parameters as well as the requirement for dedicated
hardware and underlying operating system (OS) at both the
www.redpel.com +917620593389
www.redpel.com +917620593389
1932-4537 (c) 2016 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See
http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TNSM.2016.2572212, IEEE
Transactions on Network and Service Management
IEEE TRANSACTIONS ON NETWORK AND SERVICE MANAGEMENT, VOL. , NO. , 2015 2
Fig. 1. One-way queuing delay signature.
end measurement points. The limitations to accurate network
performance measurements may be the air interface as well
as the transport network. In real networks, the CT patterns
become highly bursty, and this results in a significant deviation
from the preferred fluid model of CT. Our proposed method
determines the ABW by analyzing the one-way queuing delay
curve (Fig. 1), also called the rate-response curve in [7].
In [7], it is shown that fluid-like analysis can give erroneous
bandwidth estimates when taking packet-level interactions in
the router queues into account, especially if the CT is bursty
(e.g., Pareto distributed) or if there are several secondary
bottlenecks [8]. By using longer probe-packet trains instead of
probe-packet pairs, the obtained rate-response curve asymptot-
ically moves towards the fluid curve [7]. In our experiments,
we used long probe-packet trains. Furthermore, we studied
the effect of one wireless bottleneck link on the rate-response
curve. Thus, for the objectives in this paper, we believe that
the original fluid model is sufficient.
By taking into account the various challenges mentioned
above, our goal is to estimate the ABW with good accuracy
and less intrusively, i.e., without interrupting other network
traffic to the extent possible. The main contributions of this
paper are as follows:
• To detect the ABW from the one-way queuing delay
curve, we have proposed a modified excursion detection
algorithm. Due to the bursty arrival of CT, a sudden
increase in queuing delays of packets (called excursion)
occur for a short period of time in the router even though
the packet’s rate is much below the ABW of the tight link.
So, to detect these sudden increases in queuing delays and
to filter out them is the main purpose of the excursion
detection algorithm.
• We have proposed the packet loss recovery algorithm to
make our algorithm more robust.
• We have measured, analyzed, and described how the
characteristics of our proposed method act in wireless
scenarios.
• We have conducted a real test over a commercial 4G/LTE
network of a Japanese mobile operator as well as in a
real fixed and Wireless Local Area Network (WLAN) to
evaluate the effectiveness of our proposed method.
The extended idea from our previous work NEXT [9] enables
to find the turning point2
more accurately.
The rest of the paper is organized as follows. Related work
is discussed in Sect. II. Our proposed algorithm is presented
in Sect. III. Simulation and real testbed results are shown and
ABW measurement performances are discussed in Sect. IV.
Finally, our conclusions presented in Sect. V.
II. RELATED WORK
Available bandwidth measurement techniques can be classi-
fied into two broad categories [10][11], one being passive esti-
mation and the other being active probing. Passive estimation
is done on the basis of congestion situation, packet loss, and
delay performance to estimate the ABW. Active probing on
the other hand sends probe-packets over a network to estimate
the ABW. Due to the efficiency and reliability of estimations,
active probing is usually considered. Active probing further
consists of the Probe Gap Model (PGM) [12] and Probe Rate
Model (PRM) [13].
The PGM generates an estimate of the ABW by estimation
of the CT rate in the link. Tools developed following this
technique require previous knowledge of the capacity of the
network path to be measured. The working behind this probing
technique is where the sender sends a pair of packets to
the receiver. The pair packets are transmitted close enough
together in time for packets to queue together at the BL.
Measuring the change in packet spacing, the receiver can make
an estimate of the amount of CT during the measurement
time in the bottleneck link [12] and then compute the ABW
as the difference between the BL capacity and the CT rate:
ABW = Bb − Ct. Examples of algorithms in this category
are Spruce [14] and IGI [15].
On the other hand, the PRM techniques operate on the
basis of self-induced congestion where this mechanism sends
a stream of packets where the input rate of each stream is
varied either iteratively or exponentially. Cross traffic follows
a fluid model and average rates of CT change slowly. If a
source sends probes to a destination at rate R less than the
ABW, probes will experience similar delays. On the other
hand, if R is greater than the ABW, probes will queue in the
network and experience increasing delays. This technique is
based on the observation that the delays of successive probing
packets increase when the probing rate exceeds the ABW in
the path. It consists in probing the network at different rates
and detecting (at the destination) the point at which delays
start to increase. At this point, the probing rates are equal to
the ABW. The PRM model has proved to be accurate and
it is used in many estimation tools, such as PathChirp [1],
TOPP [12], Pathload [13], etc.
It is evident from the research that the structure of the
probing packet sequence is a major player in estimating the
ABW. This is why several probing packet structures have
been proposed in various approaches. For example, the single
packet concept is used by simple protocols such as ping
and traceroute. Packet pairs are used by Spruce [14]. The
2A turning point is the point from where all other successive packets queu-
ing delay shows an increasing trend until the last packet. The corresponding
packet’s rate is treated as the ABW.
www.redpel.com +917620593389
www.redpel.com +917620593389
1932-4537 (c) 2016 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See
http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TNSM.2016.2572212, IEEE
Transactions on Network and Service Management
IEEE TRANSACTIONS ON NETWORK AND SERVICE MANAGEMENT, VOL. , NO. , 2015 3
packet train structure is used by TOPP [12] and Pathload [13].
TOPP and Pathload use a constant bit rate stream, sending
pairs of trains of packets at a given rate and changing this
rate every round. TOPP linearly increases the sending rate
in successive streams, trying to find the exact turning point.
Pathload on the other hand varies the probing rate using
a binary search scheme and the final output, the result of
multiple measurements, is a variation range rather than a
single estimate. Since multiple trains are required to produce
a single estimation, the intrusiveness of these techniques is
quite high and the measurement process is time-consuming.
Packet chirp, another type of packet train structure, is used by
PathChirp [1]. The difference among these algorithms is their
probing structure methods, which are based on the number of
packets and the spacing between the packets. Packet spacing
values can be either fixed in size [13] or follow the exponential
distribution [1].
PathChirp [1] sends a variable bit-rate stream called chirp,
which consists of exponentially spaced packets with rates gen-
erated by the equation r = L×γi
, ∀r ≤ H, where L and H are
the lower rate and the upper rate respectively, γ is the spread
factor, and i = {1, 2, . . .}. Whenever the estimated ABW
feedback by the receiver is close to L or H, PathChirp adjusts
the new L and H heuristically. This heuristic rate adjustment is
inefficient and results in inaccurate ABW estimation in many
cases. A detailed description of PathChirp’s rate adjustment
algorithm can be found in their ns-2 [16] simulation code or
real network implementation code [1]. Although PathChirp has
several problems, after extensive empirical evaluation by [17],
the author has come to the conclusion that among various
ABW estimation tools, PathChirp has the lowest overhead and
comparably good accuracy in multihop network paths with
different CT and multiple tight links. Even when PathChirp
runs continuously on a given path, it has virtually no impact
on the response times of TCP connections sharing the same
path.
PathChirp can estimate the ABW by sending multiple
chirps, and for each chirp, the receiver sends back the esti-
mated ABW. Apart from several advantages, PathChirp has
two major drawbacks. First, the packets are all exponentially
spaced and second, the rate adjustment algorithm is not
optimum. The first drawback lies in the probe-packet train
structure. Starting from the L, the packets are closely spaced
but as we go towards the H, the packet density significantly
decreases. In PRM techniques, the mechanism for estimating
the ABW is self-congestion and the ABW is determined by
detecting the turning point at which the queuing delay starts
increasing for all successive packets, i.e., the rate at which the
packets start facing queuing delays, and the previous packet
rate is the expected ABW. The problem arises when the
sampling rate of the previous packet is sparsely spaced from
the packet rate at which the queuing delay starts increasing.
In other words, PathChirp samples the lower rates more
frequently than the higher rates. Therefore, the tool is less
accurate if the actual ABW is not located near L. As an
example, for a spread factor of 1.2, if a chirp uses L as 1
Mbps and the H as 100 Mbps, then the total number of packets
generated by PathChirp is 26. The first 13 packet rates are all
0 5 10 15 20 25 30
0
10
20
30
40
50
60
70
80
90
100
Number of packets
PacketRateinMbps
PathChirp
Fig. 2. PathChirp’s rate generation.
less than 10 Mbps, while the rest of the 13 packet rates lie in
the range from 10 Mbps to 100 Mbps (Fig. 2).
An alternative methodology to the active end-to-end
approach would be to query every network element
(switch/router) along a network path. A network administrator
could collect the statistical counters from all related ports, via
protocols such as sFlow [18]; or infer from Openflow control
messages such as PacketIn and FlowRemoved messages [19].
However, obtaining an accurate, consistent, and timely reading
from multiple switches in an end-to end manner can be very
difficult [20]. Further, collecting counters from switches is
done at per-second granularity basis and requires network ad-
ministrative privileges, which makes the approach less timely
and useful for building distributed systems, improving network
protocols, or improving application performance. Another art
of technique, such as MinProbe [21] used application traffic
implicitly as available bandwidth probes, and are able to
remove all the traditional costs and overheads. A similar idea
was proposed in MGRP [4], which has the same goal of
lower overhead. However, in both cases, one problem may
occur when a TCP cwnd (congestion window) is small, e.g.,
when cwnd = 1. In this case, the application does not create
enough traffic and dummy probe needs to be created. As a
result, accurate and less intrusive active ABW measurement
technique is important [22][23].
Recent researches include ABW measurement specific to
wireless networks [2][24][25][26][27][28]. Exact [24] and
IdleGap [25] assume that the RTS/CTS is always enabled
and present only the simulation results. CapProbe [26] tries to
avoid the influence of cross traffic by only estimating capacity.
ProbeGap [27] measures the ABW in WLANs indirectly from
the idle time fraction using one-way delay samples over
the wireless link, but requires third-party capacity estimation
tools. DietTOPP [28] uses a reduced TOPP algorithm with a
modified search algorithm to determine the ABW in wireless
networks. WBest [2] measures the ABW in two stages. In the
first stage, the packet pair technique estimates the effective
capacity over a flow path where the last hop is a wireless
LAN. In the second stage, a packet train technique estimates
achievable throughput to infer the ABW.
Several comparisons of ABW measurement tools have
been made using simulation and measurement studies [14],
www.redpel.com +917620593389
www.redpel.com +917620593389
1932-4537 (c) 2016 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See
http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TNSM.2016.2572212, IEEE
Transactions on Network and Service Management
IEEE TRANSACTIONS ON NETWORK AND SERVICE MANAGEMENT, VOL. , NO. , 2015 4
[17], [29]. However, none of these active measurement tools
considers measurement over a 4G/LTE mobile network. A
recent work [30] developed a passive measurement tool for
ABW estimation over a 4G/LTE network. Our paper reports
the first study where the performance of an active ABW
measurement tool is investigated over a 4G/LTE commercial
mobile network.
III. THE PROPOSED ALGORITHM
Our proposed idea is divided into four sub-ideas:
1. Packet Generation Algorithm
2. Rate Adjustment Algorithm
3. Modified Excursion Detection Algorithm
4. Packet Loss Recovery Algorithm
A preliminary version of our proposed idea, New Enhanced
Available Bandwidth Measurement Technique (NEXT), has
appeared in [9]. In NEXT, we proposed the first two sub-
ideas (1 and 2). Our extended version of NEXT includes the
modified excursion detection algorithm and the packet loss
recovery algorithm, and we refer to it as NEXT-V2 throughout
this paper.
A. Packet Generation Algorithm
Our proposed idea, NEXT, estimates the ABW along a net-
work path by launching a number of packet chirps (numbered
c = 1, 2, 3 · · · ) from sender to receiver. Each chirp consists
of a certain number of packets that depend on the lower rate,
the upper rate, and the spread factor. Assume that chirp c
consists of N packets. The ratio of successive packet inter-
spacing times within a chirp is defined as the spread factor.
In NEXT, we have two spread factors: γ1 and γ2. First, we
divided the total range of rates into three regions in terms of
the number of packets. NEXT used N number of packets to
test the values between the lower rate L and the upper rate H.
We have divided the entire range of rates from L to H into
three portions, where P1 and P2 are two region intersecting
points.
We set the initial rate as R0 = L. Successive rates will be
generated according to whether the current rate falls within
the P1 to P2 region or not. If the current rate Ri falls within
P1 to P2, then the next rate is calculated as Ri = Ri−1 × γ2.
Otherwise, the rate will be Ri = Ri−1 × γ1. We used spread
factor γ2 = 1.1 from the P1 to P2 region of the total range
of rates. In other areas, we used the spread factor γ1 = 1.2
(adapted from PathChirp’s experimental evaluation). NEXT is
based on the observation that the smaller the sample intervals
around the turning point, the more accurately we can find the
ABW at that turning point. NEXT is more accurate if the
ABW falls in the region from one-third to two-thirds of the
stream.3
The larger the number of packets in a small range of
rates i.e., the higher the sampling density around the turning
point, the more quickly the queue will build up and so the
accuracy will be precisely detected. Compared to PathChirp,
3When the ABW is not inside that region, we readjust the low rate and
high rate in such a way that the ABW fits into that region in the following
round of measurement.
our proposed scheme NEXT is different—both algorithms use
a sequence of packets of increasing delays, but the shape of
the traffic and the spacing between packets, especially from
the P1 to P2 portion of the total range, are not the same.
Readers interested more about the details of the algorithm’s
pseudo-code can refer to [9].
Here we will additionally describe how quickly our algo-
rithm measures a single estimate of the ABW. In order to do
that, it is necessary to formulate the total chirp duration of a
single chirp. Let Sp be the size of a single packet and tp be
the time duration of a single packet in a packet train (chirp).
We know that
tp =
SP
chirpRate
Here chirpRate is the number of bits sent per second. Packet
sizes are considered in computing the chirp rate. Since we have
three different regions in a single packet train, we calculate the
time duration of three separate portions and then add them
together to obtain the total chirp duration.
Thus, the total duration up to P1 is calculated as follows:
tP1
p =
Sp
L
+
Sp
L × γ1
+
Sp
L × γ2
1
+ · · · +
Sp
L × γi−1
1
tP1
p =
Sp
L
⎛
⎜
⎜
⎝
1 − 1
γ1
logP1−logL
logγ1
1 − 1
γ1
⎞
⎟
⎟
⎠ (1)
where, i = logP1−logL
logγ1
(from Eq.2 in [9]).
In a similar way, we can obtain the chirp duration from P1
to P2 as
tP2
p =
Sp
P1
⎛
⎜
⎜
⎝
1 − 1
γ2
logP2−logP1
logγ2
1 − 1
γ2
⎞
⎟
⎟
⎠ (2)
and from P2 to H as
tH
p =
Sp
P2
⎛
⎜
⎜
⎝
1 − 1
γ1
logH−logP2
logγ1
1 − 1
γ1
⎞
⎟
⎟
⎠ (3)
Therefore, total chirp duration Tchirp
NEXT can be expressed as
the sum of tP 1
p , tP 2
p , and tH
p .
Tchirp
NEXT = tP1
p + tP2
p + tH
p (4)
B. Rate Adjustment Algorithm
Rate adjustments of L and H are performed if the feedback
value from the NEXT receiver to the NEXT sender is close to
L or H, and whenever the feedback value does not fit into the
P1 to P2 region. Details of the algorithms pseudo-code can be
found in [9]. For the ease of understanding, we will describe
our rate adjustment algorithm pictorially in this paper.
Figure 3 describes our rate adjustment algorithm. The
horizontal line represents the rate of packets where L is the
lower rate and H is the higher rate. The individual red dots
represent the packets with different rates. For comprehensive
www.redpel.com +917620593389
www.redpel.com +917620593389
1932-4537 (c) 2016 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See
http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TNSM.2016.2572212, IEEE
Transactions on Network and Service Management
IEEE TRANSACTIONS ON NETWORK AND SERVICE MANAGEMENT, VOL. , NO. , 2015 5
Fig. 3. Rate adjustment of NEXT.
understanding, the spacing’s between the red dots are set equal
here but this does not mean that the rate intervals among
these red dots (packets) are equal. The consecutive actions for
any particular conditions are going from top to bottom and
are indicated by line 1, 2, · · · , 6, where line 2 and line 3 are
derived from line 1, and line 5 is derived from line 4, and line
6 is derived from line 5. The rate adjustment algorithm stops
adjusting rates when the condition of P1 < ABWinst < P2 is
satisfied, where ABWinst is the instantaneous ABW feedback
by the receiver to the sender in a single round of measurement.
This can be seen from the last horizontal line (line 6) of the
figure.
Rate adjustments of L and H of each chirp are conducted
if the feedback value (ABWinst) from the receiver is close to
L or H and even when ABWinst does not fit into the P1 to
P2 region. As described in Fig. 3, line 2, if ABWinst exists
near H (ABWinst > (P2 +H)/2), then the new low rate LN
and the new high rate HN are calculated as follows:4
LN =
H
γn
1
(5)
HN = H × γn
1 × γn
2 (6)
If ABWinst exists near L (ABWinst < (L + P1)/2), see
line 3, and then the new low rate LN and the new high rate
HN is calculated as follows:
LN =
L
γn
1 γn
2
(7)
HN = L × γn
1 (8)
Now, if either of the above two conditions is not satisfied,
then the ABWinst feedback by the receiver falls somewhere
else. In this case, we need to ensure that the ABWinst falls
within the P1 to P2 region. Let us assume that the ABWinst
falls in the position indicated in Fig. 3, line 4. In this case, the
rate adjustment of LN and HN (see line 5) can be calculated
as follows:
LN =
ABWinst
γn
1 γ
n/2
2
(9)
HN = ABWinst × γn
1 γ
n/2
2 (10)
4Here, n is the number of packets in each intersecting region. As an
example, for a total of 10 packets, the value of n will be 3 and is calculated
by Eq.7 in [9].
The physical meaning of the above two equations is that if
we divide the ABWinst by γn
1 ×γ
n/2
2 , we are actually shifting
L to the rate that is n+n/2 = 3n/2 packets5
before the current
rate. And if we multiply ABWinst by γn
1 × γ
n/2
2 , we shift H
to the rate that is 3n/2 packets after the current rate. Now
it is obvious that, with this new rate (LN and HN ), if we
recalculate P1 and P2, as can be seen from the last horizontal
line (line 6) of Fig. 3, then ABWinst feedback by the receiver
falls between P1 and P2 and thus the algorithm converges.
C. Modified Excursion Detection Algorithm
From PathChirp’s original Excursion Detection Algorithm
(EDA), we have developed a modified EDA. PathChirp [1]
estimates the ABW by launching a series of particular packet
trains, called chirps, each of which consists of k packets
sent with an inter-packet gap that is exponentially reduced.
The chirps (numbered m = 1, 2, 3 · · · ) are sent from sender
to receiver and then statistical analysis is conducted at the
receiver by taking into account the one-way-delays (OWD),
q
(m)
k , faced by each packet k on the intermediate router. A
typical OWD signature is shown in Fig. 1. PathChirp uses
the shape of the signature to make an estimate E
(m)
k of the
per-packet available bandwidth B[t
(m)
k , t
(m)
k+1], where t
(m)
k is the
sender transmission time of packet k. It then takes a weighted
average of the E
(m)
k corresponding to each chirp m to obtain
estimates D(m)
of the per-chirp ABW:
D(m)
=
N−1
k=1 E
(m)
k Δk
N−1
k=1 Δk
where Δk is the inter-spacing time between packet k and k+1
at the receiver and N is the total number of packets in a chirp.
Finally, it makes estimates ρ[t−τ, t] of the ABW by averaging
the estimates D(m)
obtained in the time interval[t−τ, t], where
τ is the total time interval of the measurement.
In order to accurately compute E
(m)
k , PathChirp segments
each signature into regions belonging to excursions and re-
gions not belonging to excursions. Typically, a queuing delay
signature consists of excursions from the zero axis (q
(m)
k > 0
for several consecutive packets) caused by a burst of cross
traffic. The ultimate goal of PathChirp’s EDA is to identify
potential starting and ending packet numbers j and i respec-
tively for an excursion. Every packet j where q
(m)
j < q
(m)
j+1
is the potential starting point of an excursion. The end of
excursion i is defined as the first packet, where
[q(i) − q(j)] <
maxj≤k≤i[q (k) − q (j)]
F
(11)
Here, F is a parameter called the decrease factor. The above
equation means that, at i, the queuing delay relative to q(j) has
decreased by a factor of F from the maximum queuing delay
increase after j and upto i. If i−j > Z, that is, if the signature
is long enough (Z is the busy period threshold, with a default
value of 5 [1]), then all packets between j and i form an
excursion. The last excursion of a signature does not usually
5Assuming n = 3 will give 4.5 packets as indicated in Fig. 3. The value
of n depends on the setting of the value of L and H
www.redpel.com +917620593389
www.redpel.com +917620593389
1932-4537 (c) 2016 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See
http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TNSM.2016.2572212, IEEE
Transactions on Network and Service Management
IEEE TRANSACTIONS ON NETWORK AND SERVICE MANAGEMENT, VOL. , NO. , 2015 6
terminate: that is, there is some packet l with q
(m)
l < q
(m)
l+1
such that there is no i > l for which Eq. 11 holds (replacing
j with l in Eq. 11). This point of interest is treated as the
turning point of the queuing delay and the corresponding rate
of packet l is the desired ABW. Readers interested in greater
detail can refer to the original paper [1].
Our modified EDA is also based on the principle of self-
induced congestion like PathChirp and we also assume that
increasing queuing delay implies less ABW than the instanta-
neous packets rate and that decreasing queuing delay signifies
the opposite. Mathematically,
E
(m)
k ≥ Rk, ifq
(m)
k ≥ q
(m)
k+1 (12)
E
(m)
k ≤ Rk, otherwise (13)
where Rk is the corresponding rate of the packet k.
To justify the above equations, our basic idea is that, if a
certain packet’s queuing delay is less than the average queuing
delay faced by all other packets before it, and not including it,
then this packet’s rate is not considered as one of the packets
inside the excursion region or the turning point of the queuing
delay signature. Each chirp packet k that falls into one of the
following three conditions according to our algorithm decides
the value of E
(m)
k .
Case1:If a certain packet k belongs to an excursion that
terminates and q
(m)
k < q
(m)
k+1, provided that q
(m)
k >
avg(q
(m)
1 : q
(m)
k−1), then we set E
(m)
k = Rk.
Case2:If k belongs to an excursion that does not terminate,
provided that q
(m)
k > avg(q
(m)
1 : q
(m)
k−1), then set
E
(m)
k = Rl, ∀k > l, where l is the start of the
excursion.
Case3:For all those k not belonging to any excursions and
the successive k’s’ queuing delay shows a decreasing
trend until the last packet of the chirp, then we set
E
(m)
k = RN−1, where N is the last packet number.
This case usually happens when we send a chirp
whose maximum rate is less than the ABW.
In Case 1 and Case 2, if q
(m)
k < avg(q
(m)
1 : q
(m)
k−1), then we
simply move on to the next k and start over again. For the
pseudo-code of the algorithm see Algorithm 1, where line 4,5
and line 31,32 describe Case 3. Lines 9 to 16 calculate the
average queuing delay of all other packets before the current
packet. Line 17 imposes the condition (q
(m)
k > avg(q
(m)
1 :
q
(m)
k−1)) for Case 1 and Case 2. Lines 18 to 30 deal with
detecting the excursion due to cross traffic burstiness.
To better understand the modified EDA and how it differs
from PathChirp’s EDA, we present one simple example.
Figure. 4 represents one typical queuing delay of a single
chirp obtained from the simulation. We have simulated a single
bottleneck scenario where we set the actual ABW as 50 Mbps.
From the simulation outcome, we have picked a single chirp’s
queuing delay to better understand how PathChirp detects
ABW from this typical queuing delay and how our modified
approach differs from PathChirp.
In Fig. 4, we have marked the packet’s number as 1, 2, · · · 21
for ease of explanation. The horizontal axis represents the
packet rates and the vertical axis represents the queuing delays
Algorithm 1 Modified Excursion Detection Algorithm
Require: qd: Queuing Delay; F: Decrease Factor;
1: Set i = 0 (current location in chirp);
2: Set j = 0 (current location where queuing delay in-
creases);
3: Set N=Total number of packets in a chirp.
Ensure: TP: Turning point of the queuing delay signature.
4: while qd[j] ≥ qd[j + 1] and j < N do
5: increment j by 1;
6: end while
7: Set i = j + 1
8: while i ≤ N do
9: Set qdsum = 0 and count = 1;
10: for k = 0 to j do
11: qdsum = qdsum + qd[k];
12: increment count by 1;
13: end for
14: if count > 1 then
15: avgQdelay = qdsum/(count − 1);
16: end if
17: if qd[j] > avgQdelay then
18: maxQdelay = max(maxQdelay, qd[i] − qd[j])
19: if (qd[i] − qd[j]) < (maxQdelay/F) then
20: j = i;
21: while qd[j] ≥ qd[j + 1] and j < N do
22: increment j by 1;
23: end while
24: Set i = j;
25: end if
26: else
27: increment j by 1;
28: end if
29: increment i by 1;
30: end while
31: if j = N then
32: decrement j by 1
33: end if
34: Set TP = j;
of packets. We define a particular packet’s queuing delay as
qd[i], the queuing delay difference between two points as
Diff(i, j) and the maximum queuing delay between two
points as max, where i, j = 1, 2, · · · 21 and i = j. Let’s
apply PathChirp’s EDA on these points from the beginning.
Since qd[1] ≥ qd[2], move to point 2. Now qd[2] < qd[3],
so set max = Diff(2, 3), move to point 4, and calcu-
late Diff(2, 4). Since the default value of the busy period
threshold is 5, these three points (2, 3, 4) will not make any
excursion. So continue with calculating Diff(2, 5) and since
Diff(2, 5) > max, now set max = Diff(2, 5) and move to
point 6. If we continue, we will then find that Diff(2, 10) <
max/F (F=decrease factor, the default value is 1.5) and the
algorithm will move its pointer from point 2 to point 10. If we
run the algorithm for the next excursion consisting of point 11
to point 16, we can find that PathChirp will detect the ABW
as packet number 14’s rate (approximately 40 Mbps) instead
www.redpel.com +917620593389
www.redpel.com +917620593389
1932-4537 (c) 2016 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See
http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TNSM.2016.2572212, IEEE
Transactions on Network and Service Management
IEEE TRANSACTIONS ON NETWORK AND SERVICE MANAGEMENT, VOL. , NO. , 2015 7
Fig. 4. A typical queuing delay signature obtained from the simulation.
of 50 Mbps, because in this case, max = Diff(14, 15) and
Diff(14, 16) > max/F. All other successive points (after
point 16) show an increasing trend in queuing delay.
Now, let’s apply our modified EDA to these points of
Fig. 4. Here, we additionally define avg(i) as the average
queuing delay faced by all other packets before packet i and
not including i, where i = 2, 3, · · · 21. Starting from the
beginning, since qd(1) ≥ qd(2), move to point 2 [line 4,5
in Algorithm. 1]. Now qd(2) < avg(2), so ignore this point
and move on to the next point [line 17 and 27]. In a similar
way, we can find that our algorithm moves the pointer to point
6. Since qd(6) > avg(6), we calculate Diff(6, 7) and set
max = Diff(6, 7). Then, calculate Diff(6, 8) and since
Diff(6, 8) > max, we set max = Diff(6, 8). Continuing,
Diff(6, 9) < max/F, so the pointer moves to point 9 [lines
18 − 25]. Here, at this point, qd(9) ≥ qd(10) ≥ qd(11), and
the pointer moves to point 11. Now, qd(11) < avg(11), so we
move to point 12 without considering any other condition. If
we continue, we can then find that our pointer will move to
point 14 and then to points 15 and 16 because of the same
condition that we imposed. So, finally, our pointer is fixed at
point 16, because if we proceed forward after point 16, we
can see that the maximum value of the queuing delay will
be max = Diff(16, 18) and since Diff(16, 19) > max/F
and all other points after 19 show an increasing trend until
the last packet, our algorithm will detect the ABW as packet
number 16’s rate (approximately 48.24 Mbps, close enough to
the actual value of 50 Mbps).
This is a simple example from a single chirp’s queuing delay
to better understand how our modified algorithm achieves bet-
ter accuracy than PathChirp. However, we do understand that,
during our whole simulation time, we have sent many chirps
and every chirp’s queuing delay signature is not the same. So,
we are not justifying our idea based on this single queuing
delay signature. We have conducted large-scale simulation
and we have measured the ABW by averaging out all the
detected turning point values from all the chirp’s queuing delay
signatures and based on the large-scale simulation results, we
can claim that our idea works better than PathChirp and other
related state-of-the-art ABW measurement tools.
Fig. 5. Packet loss recovery.
D. Packet Loss Recovery (PLR) Algorithm
Packet loss in a wireless network is an inevitable issue
that impacts the accuracy of ABW estimation. Some tools,
e.g., PathChirp and Pathload, discard estimates when packet
loss occurs to avoid errors in ABW estimation computation.
However, this results in longer and more variable measurement
times. So, instead of discarding estimates when packet loss
occurs, we reconstruct the one-way queuing delay curve
(Fig. 1) by considering whether a single packet loss occurs or
multiple packet losses occur. We recover the possible queuing
delay information of the lost packet (Ld) based on the previous
packet’s queuing delay (Pd) and the next packet’s queuing
delay (Nd) information in case of single packet loss, and
in case of multiple packet losses, we used packet loss rate
information. We consider three cases:
Case1:In case of a single packet loss and if Pd ≥ Nd,
then there will be three possible delay values for
the lost packet. It may be equal to Pd or Nd or
greater than either or less than either. If we set
it to be equal to both or greater than either, then
there is no logical meaning, because in both cases,
Algorithm 1 will move the pointer to Nd (see lines
4,19 and 27 of Algorithm 1). So we set Ld to
be less than Nd as Ld = Nd/2. We set it to be
less because if this lost packet plays some role in
bandwidth estimation, then we will underestimate
the ABW rather than overestimate the rate of the
next packet. This underestimation will help other
applications to prevent further packet loss by sending
packets with an underestimated rate. On the other
hand, if Pd < Nd, then we set the lost packet’s delay
as the average of Pd and Nd to construct the trend
of queuing delays of successive packets. Figure 5
describes the idea.
Case2:If a single packet loss occurs in separate positions,
i.e., multiple packet losses occur independently and
not successively in a train of packets, then we apply
the recovery idea considering case 1 to separate
positions to reconstruct the one-way queuing delay.
Case3:If multiple packet losses occur successively in a
packet train, we calculate the packet loss rate rl
as the number of lost packets divided by the total
number of packets and adjust the available bandwidth
as ABWm = ABWm−1 × (1 − rl). Where m is the
www.redpel.com +917620593389
www.redpel.com +917620593389
1932-4537 (c) 2016 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See
http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TNSM.2016.2572212, IEEE
Transactions on Network and Service Management
IEEE TRANSACTIONS ON NETWORK AND SERVICE MANAGEMENT, VOL. , NO. , 2015 8
current chirp number. If chirp m−1 also faced packet
losses then we simply discard chirp m − 1 from the
calculation of ABW, otherwise the accuracy will be
affected severely. The final ABW is the average over
all chirps measurement result.
IV. SIMULATION AND TESTBED RESULTS
In order to study the performance of NEXT-V2, simulations
and practical measurements were conducted over wired and
commercial 4G/LTE networks respectively.
A. Simulation Test and Performance Evaluation
In this section, we used a simulation environment to imple-
ment and evaluate the performance of NEXT-V2 and other
prominent ABW estimation techniques. By doing so, we
ensured that the only variables that impact the performance of
an ABW estimation technique are the algorithmic design of its
probe-stream and inference logic. Specifically, issues related
to time-stamping accuracy, timer granularity, CPU load, and
interrupt processing are taken out of the equation—a simulator
allows for perfect time-stamping and spacing of probe-packets.
We selected several prominent ABW estimation techniques—
namely, PathChirp [1], Pathload [13], and Spruce [14] that
represent existing diversity in their algorithmic design used
for inferring end-to-end ABW. We implemented each of these
algorithms in the ns-2 [16] network simulation environment.
We relied on published literature as well as publicly available
implementations [31] to extract the details of each algorithm.
Performance Metrics: We characterized the performance
of the NEXT-V2 algorithm using two types of metrics:
• Intrusiveness
• Accuracy
Intrusiveness is defined as the average bit rate of a tool.
The intrusiveness of PathChirp and NEXT as well as NEXT-
V2 can be easily compared.6
We compared the total packet
size of a single packet train between both methods. From [1],
we know that a chirp that has lower rate L, upper rate H, and
spread factor γ, consisting of N packets can be calculated as
NP athChirp = 1 +
1
log (γ)
log
H
L
On average, PathChirp sends 22 packets. With a packet size
of 1200 bytes, the total packet size of a single packet train is
22×1200 = 26.4KB. On the other hand, the average number
of packets sent by the NEXT algorithm is 10. So NEXT’s total
packet size of a single packet train is 10 × 1200 = 12KB.
Thus, the intrusiveness of NEXT is 26.4/12.0 = 2.2 times
lower as that of PathChirp. Because of our rate adjustment
Algorithm, NEXT sends a lower number of packets compared
to PathChirp.
Each run of an ABW estimation algorithm should yield a
good estimate of the end-to-end ABW. In order to quantify
the accuracy of an ABW estimation algorithm, we projected
the actual ABW and the estimated ABW in the simulation
6Since the packet structure of NEXT and NEXT-V2 is the same, the
intrusiveness is also the same. So hereafter, mentioning intrusiveness to refer
to one implies another.
Fig. 6. Network topology with a single bottleneck link.
0
10
20
30
40
50
60
70
80
90
100
10 20 30 40 50 60 70 80 90
EstimatedAvailableBandwidth
Cross Traffic Rate
PathChirp
PathLoad
Spruce
NEXT
NEXT-V2
Actual AB
Fig. 7. ABW accuracy comparison in a single bottleneck link.
results. We conducted several types of experiments to evaluate
the accuracy—we describe these next.
Single Bottleneck—One Tight Link: The accuracy of most
ABW estimation algorithms is established by their proponents
by running them on links shared by CT with a constant bit
rate (CBR). We validated our ns-2 implementation by using
the network topology depicted in Fig. 6. We ran an ABW
estimation algorithm between node Snd. and Recv. and CT
went from CBRsender to CBRreceiver. We varied the CT
load from 10 Mbps to 90 Mbps and for each load, we recorded
the estimated ABW averaged over the total simulation run.
Figure 7 plots the average of the estimated ABW against the
actual ABW. From the figure, we can see that Spruce is quite
accurate in estimating the ABW because it assumes knowledge
of the BL capacity and it is the same as the tight-link capacity
in this scenario (which is quite an impractical assumption in
many Internet paths; we will explain this in the next subsec-
tion). Our extended idea NEXT-V2 outperforms PathChirp in
most cases and is an improved version of our previously pro-
posed idea NEXT. NEXT-V2 achieves almost the same level
of accuracy as Pathload; however, the intrusiveness of NEXT
as well as our extended version NEXT-V2 is significantly less
than PathChirp as well as Pathload. Due to the fairness of
comparison, we have set L = 1 Mbps and H = 4 Mbps
for NEXT, NEXT-V2, and PathChirp. However, due to the
heuristic rate adjustment, PathChirp performs poorly. Similar
conclusions can be drawn from Fig. 9.
Single Bottleneck—Two Potential Tight Links: The in-
ference logic of the PGM techniques (e.g., Spruce) is based
on the assumption that, on the path for which the ABW is
to be estimated, the tight as well as the narrow link are the
same. In practice, this may not be the case with many Internet
www.redpel.com +917620593389
www.redpel.com +917620593389
1932-4537 (c) 2016 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See
http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TNSM.2016.2572212, IEEE
Transactions on Network and Service Management
IEEE TRANSACTIONS ON NETWORK AND SERVICE MANAGEMENT, VOL. , NO. , 2015 9
Fig. 8. Multihop network topology with multiple tight link.
0
10
20
30
40
50
60
70
80
90
100
0 20 40 60 80 100 120 140 160
AvailableBandwidth
Simulation Time
PathChirp
Pathload
Spruce
NEXT
NEXT-V2
Actual ABW
Fig. 9. ABW accuracy comparison in multiple tight links.
paths—indeed, an ISP access link that is shared among a
large user population may have a lower ABW than the last-
mile narrow link for many users. In order to evaluate the
performance on such paths, we simulated the topology as
shown in Fig. 8. We ran NEXT, NEXT-V2, and other ABW
estimation algorithms for a total of 160 simulation seconds.
We started the CBR traffic (between CBRsender − 1 and
CBRreceiver − 1) of 60 Mbps at 20 simulation seconds and
stopped at 100 simulation seconds. We also started another
CBR traffic (between CBRsender−2 and CBRreceiver−2)
of 30 Mbps at 70 simulation seconds and stopped at 130
simulation seconds. Note that, in this topology, the BL capacity
is 80 Mbps, whereas the tight link capacity is 100 Mbps (since
it carries most traffic). During other times, the tight link and
the BL are the same and hence the actual ABW is 80 Mbps.
The results are plotted in Fig. 9. From the figure, we see
that, under these dynamic network conditions, NEXT, NEXT-
V2, and PathChirp perform well, whereas Spruce perform
badly due to their impractical assumption (that the tight link
and narrow link are the same7
). NEXT outperforms PathChirp
in most cases and tracks changes of the ABW quickly and
NEXT-V2 is improved in comparison with NEXT in terms of
accuracy. This is because our chirp structure has fine granular-
ity from the one-third to two-thirds portions and we adjusted
the L and H appropriately to fit the possible ABW into that
region. NEXT-V2 outperforms because of the modified EDA.
Cross Traffic Burstiness: The ABW is determined by the
7The tight link of a path is the one with the least amount of ABW, while
the narrow link is the one with the least transmission capacity [13]. The tight
link of a path may not be the same as the narrow link if it carries a significant
traffic load.
0
20
40
60
80
100
120
0 50 100 150 200 250 300 350
AvailableBandwidth
Simulation Time
PathChirp
NEXT
NEXT-V2
Fig. 10. ABW accuracy comparison with exponential distribution of ON-OFF
cross traffic. Mean ON-OFF period 10 sec.
CT arrival process. The CT influences the probe-packet train
via dynamics in the shared packet queue at the tight link. In
particular, the queue-size grows when the collective bit rate of
the probe-packet trains and the arriving CT exceeds the link
capacity. Bursty CT creates transient queue dynamics. Since
NEXT-V2 is capable of estimating and adapting to the ABW
at fine time scales, it also reacts to the transient queue build-up
caused by the CT bursts. In order to study the impact of such
bursts on the NEXT-V2s probe stream and the steady-state
throughput it achieves, we consider Pareto and Exponential CT
models. These models generate ON/OFF traffic. During ON
periods, packets are generated at a constant bit rate. During
OFF periods, no traffic is generated. Burst times and idle
times are taken from the Pareto distribution and Exponential
distribution for Pareto and Exponential CT respectively.
The different traffic models each have their own pros and
cons. The type of network under study and the traffic char-
acteristics strictly influence the choice of traffic model used
for analysis. Traffic models that cannot capture or describe the
statistical characteristics of the actual traffic on the network are
to be avoided, since the choice of such models will result in
under-estimation or over-estimation of network performance.
There is no single model that can be used effectively for
modeling traffic in all kinds of networks. In case of high-
speed networks with unexpected demand on packet transfers,
Pareto and Exponential-based traffic models are excellent
candidates since these models take into consideration the long-
term correlation in packet arrival times [32]. Similarly, with
Marcov models, though they are mathematically tractable, they
fail to fit the actual traffic of high-speed networks [33].
To carry out this experiment, we generated a simple dumbell
topology as shown in Fig. 6. The CT and the probe packets
of PathChirp, NEXT and NEXT-V2 share the 100 Mbps tight
link (Bt). All other links have a transmission capacity of 1
Gbps. We used Pareto and Exponential CT to evaluate the
performance. We used 1000 bytes packet, 1 sec and 10 sec
duration for the ON/OFF period for Pareto and Exponential
CT respectively, and a 60 Mbps CT rate.
We ran this experiment over 350 simulation seconds. We
started the CT from the beginning to the end of the simulation.
So, during this interval, the actual ABW is 40 Mbps when
www.redpel.com +917620593389
www.redpel.com +917620593389
1932-4537 (c) 2016 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See
http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TNSM.2016.2572212, IEEE
Transactions on Network and Service Management
IEEE TRANSACTIONS ON NETWORK AND SERVICE MANAGEMENT, VOL. , NO. , 2015 10
TABLE I
REAL TESTBED RESULTS OVER FIXED NETWORK AND WLAN
Fixed Network Testbed WLAN Testbed
Cross Traffic
Rate (Mbps)
Actual ABW
(Mbps)
Estimated ABW
(Mbps)
Cross Traffic
Rate (Mbps)
Actual ABW
(Mbps)
Estimated ABW
(Mbps)
Pathchirp NEXT NEXT-V2 Pathchirp NEXT NEXT-V2
10 90 102.83 98.23 93.48 2 18 20.47 20.25 18.26
20 80 92.22 76.06 79.08 4 16 18.81 18.90 17.75
30 70 87.99 74.74 68.84 6 14 17.32 16.90 16.57
40 60 78.31 64.19 60.88 8 12 8.07 9.23 12.27
50 50 58.69 56.96 51.37 10 10 13.60 11.98 8.47
60 40 38.85 36.40 37.96 12 8 10.81 10.20 7.30
70 30 31.87 27.25 28.62 14 6 8.74 8.70 6.04
80 20 23.75 16.36 17.73 16 4 6.78 5.90 4.07
90 10 7.50 8.16 9.04 18 2 4.10 3.20 2.87
0
20
40
60
80
100
120
0 50 100 150 200 250 300 350
AvailableBandwidth
Simulation Time
PathChirp
NEXT
NEXT-V2
Fig. 11. ABW accuracy comparison with pareto distribution of ON-OFF
cross traffic. Mean ON-OFF period 1 sec and shape 1.5.
there is a CT burst, otherwise, the actual ABW is 100 Mbps8
.
We presented the ABW fluctuation in Fig. 10 and Fig. 11
for Exponential and Pareto CT respectively. From the figure,
we can see that when the CT arrives at the tight link, it
interacts with the NEXT-V2 probe-packets and NEXT-V2
sender learns that the ABW has decreased to Bt − Ct after
a delay of 1 RTT. The NEXT-V2 sender immediately adjusts
its sending rate and fits the ABW into the high-density region
of the sending probe pattern to achieve higher accuracy. The
important point to notice here is the quick rate adaptation of
our algorithm (with two spread factors) to the sudden arrival
of CT to detect the ABW in a short time interval as well as
the responsiveness to the bursty CT nature. As compared to
PathChirp, we can see that NEXT and NEXT-V2 performed
better in tracking the ABW with the ON and OFF period of CT
since NEXT and NEXT-V2 both have only 10 probe-packets in
a single chirp. We also noticed that, while bursty CT resulted
in noisier measurement data than CBR CT, we were able to
compensate for the noise by perfoming additional processing
in ABW estimation as described in Alg. 1. Specifically, we
found that the modified excursion detection algorithm that
smoothed the measurement data by moving average resulted
in higher accuracy than PathChirp as well as our previous
approach NEXT that also used PathChirp’s EDA. We noticed a
8We could not provide the actual ABW as a ground truth in the simulation
result in Fig. 10 and Fig. 11, because the ON/OFF period is dependent on
Pareto and Exponential distribution and is not predetermined.
slight delay in ABW tracking in the case of PathChirp because
it generates on average 22 packets in a single chirp and the
rate adjustment of PathChirp is heuristic. So we realized the
fact that, to cope with the burstiness of CT in a real network
situation, an ABW estimation algorithm should have a lower
number of packets with optimal rate adjustment algorithm
while achieving comparably good accuracy to properly track
the changes in the ABW during the ON and OFF period of
CT. As a result, we observed that CT burstiness had limited
impact on NEXT-V2.
B. Real Testbed Results and Performance Evaluation
In order to evaluate our estimation method, the performance
of NEXT and NEXT-V2 have been studied in a controlled
testbed environment and compared with PathChirp over fixed
network topology (Fig. 6) and WLAN topology (Fig. 12). We
used the default configurations for all the probing tools. In
addition, results in [1] show that pathChirp generally performs
better with larger packets; therefore we set the packets size
of all the tools to 1000 byte. In a fixed network topology,
two CISCO Catalyst 3750 series switches using CISCO IOS
are connected together through a CAT-5e cross-cable and by
creating VLAN they served as routers; two other machines of
the testbed served as a source of controlled traffic flows using
the IXIA tool [34]. Finally, the sender and the receiver for
each measurement tool used additional PCs running Ubuntu
GNU/Linux. The bottleneck link between two switches are set
as 100 Mbps. In a WLAN topology, we deployed two wireless
nodes, one base station as an access point, one router, and two
server PCs. IXIA is used for generating CT. We measured
the wireless link capacity between the wireless node and the
access point when two wireless nodes are active and found that
the maximum throughput that each node can get is roughly
20 Mbps. So we used this rough value as the true ABW for
accuracy comparison with the ABW estimation tools.
We tested PathChirp, NEXT and NEXT-V2 in the presence
of real CT generated by IXIA. Table. I shows a measurement
performed in our testbed while the network path is loaded
with real CT varying from 10 Mbps to 90 Mbps in fixed
network and from 2 Mbps to 18 Mbps in WLAN testbed.
Each measurement result is the average over 10 repeating
measurement process for each tool. Our experiments show that
PathChirp constantly overestimates ABW and measurements
www.redpel.com +917620593389
www.redpel.com +917620593389
1932-4537 (c) 2016 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See
http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TNSM.2016.2572212, IEEE
Transactions on Network and Service Management
IEEE TRANSACTIONS ON NETWORK AND SERVICE MANAGEMENT, VOL. , NO. , 2015 11
TABLE II
PACKET LOSS RECOVERY ALGORITHM EVALUATION WITH 5% PACKET
LOSS RATE.
Cross Traffic
Rate (Mbps)
Actual ABW
(Mbps)
Estimated ABW
(Mbps)
NEXT-V2
(Without PLR)
Error (%)
NEXT-V2
(With PLR)
Error (%)
10 90 49.59 44.9 59.71 33.65
20 80 42.86 46.42 53.67 32.91
30 70 40.96 41.48 50.35 28.07
40 60 36.7 38.83 44.1 26.5
50 50 30.98 38.04 35.88 28.24
60 40 21.19 47.02 28.97 27.57
70 30 17.73 40.9 20.11 32.96
80 20 11.86 40.7 13.04 34.8
90 10 4.57 54.3 5.69 43.1
Fig. 12. WLAN network topology.
are quite unstable. This is a well-know problem of PathChirp:
similar results have been obtained in [35][36]. On the other
hand, the accuracy and stability of NEXT-V2 is notable: we
found that 80% of estimations exhibit a relative error lower
than 5% in fixed network testbed and 70% of estimations
exhibit a relative error lower than 15% in WLAN testbed.
We evaluated the packet loss recovery (PLR) algorithm with
the topology as shown in Fig. 6. We used Dummynet [37] in
the network to control the packet loss rate. We set 5% packet
loss rate, sent CT with different rates and estimated the ABW.
First we evaluated NEXT-V2 without PLR algorithm9
and then
with PLR algorithm. The result is shown in Table II. In the
experiment, we saw that with 5% packet loss rate, multiple
packet loss occurred in a single chirp and only in few cases
single packet loss occurred. So the result shown in Table II
mostly reflects the adjustment of Case3 in PLR algorithm.
Furthermore, Dummynet internally round times to multiples
of the quantum of the system timer, which runs HZ times per
second (in our case HZ = 1000). This introduces a timing
error of 1/HZ = 1 ms that is randomly added to some packets
queuing delay and cause further misdetections of turning point
(Fig. 1). Although multiple and successive packet loss is a rare
phenomenon in today’s real network, we firmly believe that,
our algorithm can detect the ABW with greater accuracy for
Case1 and Case2 as described in PLR algorithm.
We have also evaluated our algorithm using LTE connection
of a commercial Japanese mobile operator. NEXT-V2 is imple-
mented in an Android OS-based mobile terminal and Linux
OS-based server PC and evaluated over a 4G/LTE network
9Without PLR algorithm, the NEXT-V2 receiver simply returns zero ABW
when a packet loss occurs. Thus the probe packet sender do not update the
low rate and high rate, which further wrongly estimates the ABW in the next
round. As a result, the final estimated ABW which is an average over all
estimates is affected by the packet loss rate.
Fig. 13. 4G/LTE network topology.
in real cross traffic scenarios. We created an Android OS-
based ABW measurement tool using Android SDK tools that
initiate a NEXT-V2 session by generating UDP probe traffic
towards the Linux-based server PC located in KDDI R&D
Labs during up-link measurement and vice versa during down-
link measurement. The measurement tool takes the address
to the server and an associated port number as an input to
exchange packets. The configurable parameters of NEXT-V2
such as the low rate and high rate of the packet trains, spread
factors, etc., can be specified. The results are displayed on
a graph as well as stored in a log file. The graph displays
the total probe traffic send for a single estimate in Kilobytes
(KB). Further, the log file generated shows the details of
the measurement. The measurement tool utilizes Androids
telephony API to display the network type and connection
state. It displays values such as RSSI, MCC, MNC, and
LAC of the network to which we are currently connected. A
basic essential requirement for creating network maps is usage
of geolocation services. Android location API is utilized to
associate the ABW estimation with the measurement location.
The latitude and longitude values are displayed on screen as
well as added to the log file with associated ABW estimation.
Android application installation and test performance was
conducted on an HTC smartphone consisting of a Quadcore
processor. It consists of 2 GB RAM with support for LTE,
HSDPA, HSUPA, and HSPA+.
The 4G/LTE network topology for experimentation is shown
in Fig 13. All wired links have a capacity of at least 100
Mbps. According to the mobile operator, 4G/LTE networks can
achieve more than 100 Mbps in the physical layer theoretically.
But carrier aggregation-supported mobile terminals (MTs) are
very rare now. The MTs used in the experiments support a
data rate up to 75 Mbps in a 4G/LTE network. To validate
the measurement results, we compared the true ABW and the
estimated ABW produced by NEXT-V2. In a fixed-wireline
testbed, the true ABW can be measured using tools such as
tcpdump. Then, the ABW can be computed as the difference
between the fixed-line capacity and the cross traffic rate.
However, in a 4G/LTE network, the capacity of the link
at the IP layer is very difficult to determine, because it
varies with the radio quality. Furthermore, even if the radio
quality is known, there is no simple formula to calculate the
cross traffic impact on the capacity since it depends on the
packet size, varying wireless channel conditions, scheduling
and modulation techniques, pre-configured QoS parameters,
etc. Instead, in this paper, we used the maximum achievable
FTP throughput as a ground truth of the true ABW. To inves-
tigate the accuracy of our results obtained, we also compared
www.redpel.com +917620593389
www.redpel.com +917620593389
1932-4537 (c) 2016 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See
http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TNSM.2016.2572212, IEEE
Transactions on Network and Service Management
IEEE TRANSACTIONS ON NETWORK AND SERVICE MANAGEMENT, VOL. , NO. , 2015 12
TABLE III
RELATIONSHIP BETWEEN ABW AND FTP THROUGHPUT IN LTE
NETWORK
Resource
Block
Theoretical
Capacity (Mbps)
Actual
Capacity(Mbps)
CBR Cross
Traffic
FTP
Throughput (Mbps)
6 6.04 4.53 2 2.41
15 15.12 11.24 5 5.35
25 25.2 18.9 10 7.67
50 50.4 37.8 15 20.36
75 75.6 56.7 25 29.19
100 100.8 75.6 40 33.29
them with the FTP throughput measurement results on both
links using the XCAL Speedtest available for the Android
smartphone in Google Play Store [38]. The XCAL Speedtest,
developed by Accuver Communications is an Android OS-
based tool that provides a solution for wireless network testing.
It supports major wireless technologies displaying current
wireless network characteristics and investigates cell coverage
and capacity.
Furthermore, to understand the relationship between FTP
throughput and the ABW, we conducted simulation in ns-
3 [39] with the topology shown in Fig. 13, where there is
an FTP session running between a TCP cubic server and
a mobile client and the mobile client is downloading files
using the TCP connection. We used TCP Cubic as it is the
default TCP congestion control algorithm in Linux OS in real
networks. We also used the SISO transmission mode for the
MTs and eNB. We would like to see how closely the FTP
throughput resembles the ABW with the presence of cross
traffic. The result is shown in Table III. For different resource
blocks (RBs), we ran different amounts of CBR cross traffic
from the cross traffic source to the cross traffic destination
and calculated the FTP throughput. From Table III, the first
column represents different RBs in eNB. The second and
the third column represents the theoretical capacity and the
actual capacity of the corresponding RBs respectively. Due
to the overhead used for controlling and signaling, which is
approximately 25% introduced by PDCCH, the down-link RS
signal, and other control signals [40], the actual capacity is
75% of the theoretical capacity. For different resource blocks
(RBs), we ran different amounts of CBR cross traffic from
the cross traffic source to the cross traffic destination and
calculated the FTP throughput. We can see that FTP through-
put closely resembles the ABW.10
Table IV summarizes the
results obtained by NEXT-V2 over a 4G/LTE network. We
conducted measurement on different dates and times over
different places to ensure the fairness of the measurement.
We conducted measurement while walking through the streets
and sometimes by car at an average speed of 30 to 40
km/h. During the measurement, the mobile terminals received
signal strength indicator (RSSI) was between −67 dbm to
−92 dbm in different locations. We used 1.1 and 1.05 as
the two spread factors for ABW measurement. For each run,
we measured the ABW in the up-link (UL) and down-link
(DL) directions. We compared the estimated ABW with the
FTP throughput and XCAL Speedtest. For this purpose, we
uploaded and downloaded a 10 MB file to and from one of
the servers in KDDI Labs and measured the FTP throughput
10The remaining actual capacity after the amount of CBR cross traffic.
Fig. 14. Estimated error while varying packet size.
(UL) and FTP throughput (DL) respectively. From the table,
we can see that NEXT-V2 achieves very good accuracy as
the estimates closely follow the FTP throughput and XCAL
Speedtest results.
The results achieved using our measurement tool does not
provide information regarding existing cross traffic in a com-
mercial LTE network. While the experiments were run during
particular times of the day, an assumption is made of the
existence of constant cross traffic in the network during a short
time measurement period. We compared our measurement tool
results with FTP throughput values where the FTP results
provides achievable throughput of the network being less than
the theoretical capacity of the LTE network. It is possible
to run experiments to estimate available bandwidth in LTE
networks with existing measurement tools on a computer
tethered via a LTE-enabled phone or Dongle. However, our
objective is to consider the development and deployment of a
measurement tool for Android OS-based devices, and existing
tools for computers are not an option for measuring available
bandwidth on LTE networks. The existence of FTP sessions
on the Android device allows us to select it as a benchmarking
option against our measurement tool.
Figure 14 shows the estimated error11
of NEXT-V2 while
varying the probe-packet size. For each packet size, we re-
peated the measurement 20 times and then averaged the 20
measurement results for fairness. For each run, we measured
the ABW in the down-link, the total time required for NEXT-
V2 to produce a single estimate, and the total bytes sent
during the measurement. We can see from the figure that the
estimated error varies with the probe-packet size. The reason
for the varying measurement estimates of the ABW can be
derived from the link-level acknowledgments. If the probe-
packet size is small, then the extra overhead introduced by
the link-level acknowledgments is relatively large compared
to a larger probe-packet size. This will affect probe-packet
separation and hence the rate-response curve, which is the
basis of accurately determining the ABW by detecting the
turning point. Thus, the ABW produced by NEXT-V2 varies
with varying probe-packet size. We can see that the estimation
11The difference between the estimated value of NEXT-V2 and FTP
throughput.
www.redpel.com +917620593389
www.redpel.com +917620593389
1932-4537 (c) 2016 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See
http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TNSM.2016.2572212, IEEE
Transactions on Network and Service Management
IEEE TRANSACTIONS ON NETWORK AND SERVICE MANAGEMENT, VOL. , NO. , 2015 13
TABLE IV
REAL TEST-BED RESULTS OVER 4G/LTE NETWORK
Location Date/Time
NEXT-V2 FTP Throughput XCAL Speedtest
UL(Mbps) DL(Mbps) UL(Mbps) DL(Mbps) UL(Mbps) DL(Mbps)
KDDI Lab
(Fujimino City)
Aug 5/15:59 5.25 7.24 6.54 7.16 7.17 9.33
Aug 5/16:36 6.32 10.42 7.98 10.52 8.00 12.34
Aug 6/9:36 7.47 7.52 9.15 7.21 8.5 9.2
Aug 6/13:26 8.43 9.28 7.21 8.77 7.5 9.7
Aug 7/ 9:21 5.36 7.18 4.59 6.53 6.54 8.31
Aug 7/17:06 3.92 15.82 3.96 15.86 4.2 16.2
Aug 14/11:27 8.94 12.60 7.82 12.38 10.12 13.3
Aug 14/11:42 7.86 6.94 8.08 8.00 6.89 7.23
Kawagoe City
Aug 10/17:53 7.43 17.54 6.00 18.80 9.35 19.24
Aug 10/18:38 6.71 8.38 5.73 10.37 7.5 10.2
Aug 10/19:42 10.88 16.08 7.39 16.54 9.8 18.90
Tokyo City
Aug 19/13:45 3.89 6.46 4.77 6.72 5.5 7.8
Aug 19/14:44 8.74 15.55 8.62 13.89 10.75 16.65
Aug 19/15:31 9.8 16.47 7 15.44 9.23 17.3
Aug 19/16:57 8.19 9.38 6.78 7.43 8.45 11.23
TABLE V
TOTAL TRAFFIC SENT AND TOTAL ELAPSED TIME FOR DIFFERENT PACKET
SIZE
Packet Size (Byte) Total Traffic Sent (KB) Total Elapsed Time (sec)
600 189 2.32
700 227 2.22
800 225 3.45
900 277 2.54
1000 221 2.89
1100 389 2.23
1200 356 3.11
1300 281 2.29
1400 447 4.89
1500 399 3.99
error produced by NEXT-V2 with a probe-packet size from
1000 bytes and above is around 10% and less than 10%
respectively. We also measured the total traffic sent and the
total elapsed time for a single ABW estimate as can be seen
from Table V. The result indicates that NEXT-V2 estimates
the ABW with less intrusiveness and within 2 to 4 seconds
depending on the probe-packet size. For this experiment, we
downloaded a 10 MB size file and it took about 10 to 12
seconds.
V. CONCLUSION
In this work, we presented the details of NEXT-V2, an
extended version of NEXT, an active probing algorithm that
features an efficient measurement scheme for end-to-end ABW
estimation in a fixed, WLAN and 4G/LTE network. We have
proposed a unique packet train structure, an optimal rate
adjustment algorithm, and a modified excursion detection
algorithm to identify the ABW with higher accuracy, less
convergence time, and less overhead. NEXT-V2 is compared
with other existing ABW estimation tools in a simulation and
real testbed to prove its algorithmic strength. From the real
testbed results, we can see that 90% of the cases NEXT-V2
reports a less than 10% error. On the other hand, NEXT and
PathChirp reports a less than 10% error for 70% and 20% of
the cases respectively. Intrusiveness of NEXT-V2 is reduced
by 50% as compared to that of PathChirp.
From experiments on a 4G/LTE network, a few conclusions
can be drawn. First, current bandwidth estimation tools are
significantly impacted by wireless network conditions, such as
contention from other traffic and rate adaptation. This yields
inaccurate estimates, high and varying convergence times, and
intrusiveness. Thus, current tools are generally impractical
for applications such as streaming multimedia that require
fast, accurate, and non-intrusive bandwidth estimations even
when the last hop is over a WLAN. Second, the experiments
conducted and results achieved on a commercial 4G/LTE
network show the ability of NEXT-V2 to make quick and less
intrusive ABW estimations, with higher accuracy. A less than
15% error is reported in case of down-link ABW estimation
for 80% of the cases and a less than 20% error is reported in
case of up-link ABW measurement for 70% of the cases.
Comparison of ABW estimations with FTP throughput
measurements on Android OS is carried out using various
real-time cross traffic. This measurement tool uses minimal
power and network resources making it possible to conduct
multiple test sessions. It provides rich data sets with ABW
estimations with associated geo-location values. The ideal tool
would be one that provides accurate estimations, less overhead,
quick response time, and 100% reliability, whereas there is
no mandatory requirement for the ideal tool in all scenarios.
Tool selection is based on the application and the network
environment.
REFERENCES
[1] V. J. Ribeiro, R. H. Riedi, R. G. Baraniuk, J. Navratil, and L. Cottrell,
“Pathchirp: Efficient available bandwidth estimation for network paths,”
in Passive and Active Measurement Workshop, 2003.
[2] M. Li, C. Mark, and K. Robert, “Wbest: A bandwidth estimation tool
for IEEE 802.11 wireless networks,” in 33rd IEEE Conference on Local
Computer Networks, 2008. LCN 2008., Oct 2008, pp. 374–381.
[3] M.A. Alzate, J.C. Pagan, N.M. Pena, and M.A. Labrador, “End-to-
end bandwidth and available bandwidth estimation in multi-hop IEEE
802.11b ad hoc networks,” in 42nd Annual Conference on Information
Sciences and Systems, 2008. CISS 2008., March 2008, pp. 659–664.
[4] P. Papageorge, J. McCann, and M. Hicks, “Passive aggressive measure-
ment with mgrp,” SIGCOMM Comput. Commun. Rev., vol. 39, no. 4,
pp. 279–290, Aug. 2009.
[5] M. Jain and C. Dovrolis, “Ten fallacies and pitfalls on end-to-end
available bandwidth estimation,” in Proceedings of the 4th ACM
SIGCOMM Conference on Internet Measurement, New York, NY, USA,
2004, IMC ’04, pp. 272–277.
[6] C. D. Guerrero and M. A. Labrador, “On the applicability of available
bandwidth estimation techniques and tools.,” Computer Communica-
tions, vol. 33, no. 1, pp. 11–22, 2010.
www.redpel.com +917620593389
www.redpel.com +917620593389
1932-4537 (c) 2016 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See
http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TNSM.2016.2572212, IEEE
Transactions on Network and Service Management
IEEE TRANSACTIONS ON NETWORK AND SERVICE MANAGEMENT, VOL. , NO. , 2015 14
[7] X. Liu, K. Ravindran, and D. Loguinov, “Multi-hop probing asymptotics
in available bandwidth estimation: Stochastic analysis,” in Proceedings
of the 5th ACM SIGCOMM Conference on Internet Measurement, 2005,
IMC ’05.
[8] B. Mel, M. Bjrkman, and P. Gunningberg, “Regression-based available
bandwidth measurements,” in International Symposium on Performance
Evaluation of Computer and Telecommunications Systems, 2002.
[9] A.K. Paul, A. Tachibana, and T. Hasegawa, “NEXT: New enhanced
available bandwidth measurement technique, algorithm and evaluation,”
in IEEE PIMRC, Washington DC, USA, 2014, pp. 443–447.
[10] D. Gupta, D. Wu, P. Mohapatra, and C. N. Chuah, “Experimental
comparison of bandwidth estimation tools for wireless mesh networks,”
in INFOCOM 2009, IEEE, April 2009, pp. 2891–2895.
[11] P. Zhao, X. Yang, C. Dong, S. Yang, S. Bhattarai, and W. Yu, “On an ef-
ficient estimation of available bandwidth for ieee 802.11-based wireless
networks,” in Global Telecommunications Conference (GLOBECOM
2011), 2011 IEEE, Dec 2011, pp. 1–5.
[12] B. Melander, M. Bjorkman, and P. Gunningberg, “A new end-to-end
probing and analysis method for estimating bandwidth bottlenecks.,” in
IEEE GLOBECOM, 2000, pp. 415–420.
[13] M. Jain and C. Dovrolis, “Pathload: A measurement tool for end-
to-end available bandwidth,” in Proceedings of Passive and Active
Measurements (PAM) Workshop, 2002, pp. 14–25.
[14] J. Strauss, D. Katabi, and F. Kaashoek, “A measurement study of
available bandwidth estimation tools,” in Proceedings of the 3rd ACM
SIGCOMM Conference on Internet Measurement, New York, NY, USA,
2003, IMC ’03, pp. 39–44.
[15] N. Hu and P. Steenkiste, “Evaluation and characterization of available
bandwidth probing techniques.,” IEEE Journal on Selected Areas in
Communications, vol. 21, no. 6, pp. 879–894, 2003.
[16] “The Network Simulator NS-2,” http://www.isi.edu/nsnam/ns/.
[17] A. Shriram and J. Kaur, “Empirical evaluation of techniques for measur-
ing available bandwidth,” in INFOCOM 2007. 26th IEEE International
Conference on Computer Communications. IEEE, 2007, pp. 2162–2170.
[18] “sflow, version 5.,” http://www.sflow.org/sflow version 5.txt.
[19] C. Yu, C. Lumezanu, Y. Zhang, V. Singh, G. Jiang, and H.V. Mad-
hyastha, “Flowsense: Monitoring network utilization with zero mea-
surement cost,” in Proceedings of the 14th International Conference on
Passive and Active Measurement, Berlin, Heidelberg, 2013, PAM’13,
pp. 31–41, Springer-Verlag.
[20] “High frequency sflow v5 counter sampling,”
ftp://ftp.netperf.org/papers/high freq sflow/hf sflow counters.pdf.
[21] H. Wang, K.S. Lee, E. Li, C.L. Lim, A. Tang, and H. Weather-
spoon, “Timing is everything: Accurate, minimum overhead, available
bandwidth estimation in high-speed wired networks,” in Proceedings of
the 2014 Conference on Internet Measurement Conference, New York,
NY, USA, 2014, IMC ’14, pp. 407–420, ACM.
[22] S. Joel and B. Paul, “An active measurement system for shared
environments,” in Proceedings of the 7th ACM SIGCOMM Conference
on Internet Measurement, New York, NY, USA, 2007, IMC ’07, pp.
303–314, ACM.
[23] S. Joel, B. Paul, and C. Mark, “Router primitives for programmable
active measurement,” in Proceedings of the 2Nd ACM SIGCOMM Work-
shop on Programmable Routers for Extensible Services of Tomorrow,
New York, NY, USA, 2009, PRESTO ’09, pp. 13–18, ACM.
[24] S. Shah, K. Chen, and K. Nahrstedt, “Available bandwidth estimation in
IEEE 802.11-based wireless networks,” in First ISMA/CAIDA Workshop
on Bandwidth Estimation (BEst), San Diego, CA, USA, December 2003.
[25] H.K. Lee, V. Hall, K.H. Yum, K. Kim, and E.J. Kim, “Bandwidth
estimation in wireless LANS for multimedia streaming services,” in
IEEE International Conference on Multimedia and Expo, 2006, July
2006, pp. 1181–1184.
[26] R. Kapoor, L. Chen, L. Lao, M. Gerla, and M. Y. Sanadidi, “Capprobe: A
simple and accurate capacity estimation technique,” SIGCOMM Comput.
Commun. Rev., vol. 34, no. 4, pp. 67–78, Aug. 2004.
[27] K. Lakshminarayanan, V.N. Padmanabhan, and J. Padhye, “Bandwidth
estimation in broadband access networks,” in Proceedings of the 4th
ACM SIGCOMM Conference on Internet Measurement, New York, NY,
USA, 2004, IMC ’04, pp. 314–321, ACM.
[28] A. Johnsson, B. Melander, and M. Bjorkman, “Bandwidth measurement
in wireless networks,” in Mediterranean Ad Hoc Networking Workshop,
Porquerolles, France, June 2005.
[29] A. Shriram et al., “Comparison of public end-to-end bandwidth
estimation tools on high-speed links,” in Passive and Active Network
Measurement Workshop (PAM), Boston, MA, Mar 2005, vol. 3431, pp.
306–320, PAM 2005.
[30] J. Huang, F. Qian, Y. Guo, Y. Zhou, Q. Xu, Z. M. Mao, S. Sen, and
O. Spatscheck, “An in-depth study of LTE: effect of network protocol
and application behavior on performance,” in Proceedings of the ACM
SIGCOMM, New York, USA, 2013, pp. 363–374.
[31] “Tools for bandwidth estimation,” http://www.icir.org/models/tools.html.
[32] A. Adas, “Traffic models in broadband networks,” Comm. Mag., vol.
35, no. 7, pp. 82–89, July 1997.
[33] A.M. Mohammed and A.F. Agamy, “A survey on the common network
traffic sources models,” IJCN, vol. 3, no. 2, pp. 103–115, 2011.
[34] “The IXIA Traffic Generator,” http://www.ixiacom.com/.
[35] A. Shriram, M. Murray, Y. Hyun, N. Brownlee, A. Broido,
M. Fomenkov, and k. claffy, “Comparison of public end-to-end
bandwidth estimation tools on high-speed links,” in Proceedings of the
6th International Conference on Passive and Active Network Measure-
ment, Berlin, Heidelberg, 2005, PAM’05, pp. 306–320, Springer-Verlag.
[36] S. Ekelin, M. Nilsson, E. Hartikainen, A. Johnsson, J.-E. Mangs,
B. Melander, and M. Bjorkman, “Real-time measurement of end-to-
end available bandwidth using kalman filtering,” in Network Operations
and Management Symposium, 2006. NOMS 2006. 10th IEEE/IFIP, April
2006, pp. 73–84.
[37] M. Carbone and L. Rizzo, “Dummynet revisited,” SIGCOMM Comput.
Commun. Rev., vol. 40, no. 2, pp. 12–20, Apr. 2010.
[38] “Xcal Speedtest,” https://play.google.com/store/apps.
[39] “The network simulator ns-3,” https://www.nsnam.org.
[40] NGMN Alliance, “Guidelines for lte backhaul traffic estimation[white
paper],” 2011.
Anup Kumar Paul received a B.Sc.(hons), Masters
degree in information and communication engineer-
ing from the University of Rajshahi, Bangladesh, and
a Ph.D. degree in global information and telecom-
munication studies from Waseda University, Tokyo,
Japan, in 2004, 2006, and 2013 respectively. He
is a research engineer at KDDI R&D Laboratories
Inc., Japan. He joined the KDDI R&D Lab, Japan,
in 2013. Since then, he has been actively involved
in research and development activities in the field
of high-performance transport protocols, network
measurement and traffic management in 4G/LTE mobile networks. He is a
member of IEEE.
Atsuo Tachibana received B.E. and M.E. degrees
from Osaka University, Japan in 2000 and 2002,
respectively, and received his PhD in Information
Engineering from the Graduate School of Computer
Science and Systems Engineering, Kyushu Institute
of Technology, Japan in 2012. His research interests
include issues related to network measurement and
traffic management in wired and wireless networks.
Currently, he is a research manager at KDDI R&D
Laboratories Inc.
Teruyuki Hasegawa received B.E. and M.E. de-
grees in electrical engineering from Kyoto Univer-
sity in 1991 and 1993 respectively, and a Ph.D
degree in information science and technology from
the University of Tokyo in 2008. Since joining KDD
(now KDDI) in 1993, he has been working in the
field of high-speed communication protocols, multi-
cast systems, and future Internet. He is currently the
senior manager of the IP Communication Quality
Lab. at KDDI R&D Laboratories, Inc. He received
the Meritorious Award on Radio of ARIB in 2003.
He is a member of IEICE and IPSJ.
www.redpel.com +917620593389
www.redpel.com +917620593389

More Related Content

PDF
Modulation aware connection admission control and uplink scheduling algorithm...
PDF
08 6622 9059-1-pb
PDF
Abstract
PDF
A Bandwidth Efficient Scheduling Framework for Non Real Time Applications in ...
PDF
Improving Power Efficiency in Cooperative Diversity and MIMO Systems by Using...
PDF
Improving Power Efficiency in Cooperative Diversity and Mimo Systems by Using...
PDF
Wireless Sensor Network Using Six Sigma Multi Hop Routing
PDF
EEDTCA: Energy Efficient, Reduced Delay and Minimum Distributed Topology Cont...
Modulation aware connection admission control and uplink scheduling algorithm...
08 6622 9059-1-pb
Abstract
A Bandwidth Efficient Scheduling Framework for Non Real Time Applications in ...
Improving Power Efficiency in Cooperative Diversity and MIMO Systems by Using...
Improving Power Efficiency in Cooperative Diversity and Mimo Systems by Using...
Wireless Sensor Network Using Six Sigma Multi Hop Routing
EEDTCA: Energy Efficient, Reduced Delay and Minimum Distributed Topology Cont...

What's hot (19)

PDF
EEDTCA: Energy Efficient, Reduced Delay and Minimum Distributed Topology Cont...
PDF
Enhancing Performance for Orthogonal Frequency Division Multiplexing in Wirel...
PDF
Ijcnc050203
PDF
Rate Adaptation for Time Varying Channels Using Distributed Relay Selection
PDF
Analysing Mobile Random Early Detection for Congestion Control in Mobile Ad-h...
PDF
A scalable and power efficient solution for routing in mobile ad hoc network ...
PDF
IRJET- Efficient Data Dissemination using GWO Fuzzy in Neural Networks
PDF
AN MINIMUM RECONFIGURATION PROBABILITY ROUTING ALGORITHM FOR RWA IN ALL-OPTIC...
PDF
Energy efficiency optimization of IEEE 802.15.6 ir uwb wban
PDF
Iaetsd increasing network life span of manet by using
PDF
DYNAMIC CONGESTION CONTROL IN WDM OPTICAL NETWORK
PDF
Gk2411581160
PDF
Mobility and Propagation Models in Multi-hop Cognitive Radio Networks
PDF
Dynamic bandwidth allocation scheme in lr pon with performance modelling and ...
PDF
IRJET - A Review on Congestion Control Methods in Mobile Adhoc Networks
PDF
FREQUENCY AND TIME DOMAIN PACKET SCHEDULING BASED ON CHANNEL PREDICTION WITH ...
PPTX
Interference-Aware Multipath Routing In Wireless Sensor NetworksMinor projr...
PDF
Civilizing the Network Lifespan of Manets Through Cooperative Mac Protocol Me...
PDF
D044021420
EEDTCA: Energy Efficient, Reduced Delay and Minimum Distributed Topology Cont...
Enhancing Performance for Orthogonal Frequency Division Multiplexing in Wirel...
Ijcnc050203
Rate Adaptation for Time Varying Channels Using Distributed Relay Selection
Analysing Mobile Random Early Detection for Congestion Control in Mobile Ad-h...
A scalable and power efficient solution for routing in mobile ad hoc network ...
IRJET- Efficient Data Dissemination using GWO Fuzzy in Neural Networks
AN MINIMUM RECONFIGURATION PROBABILITY ROUTING ALGORITHM FOR RWA IN ALL-OPTIC...
Energy efficiency optimization of IEEE 802.15.6 ir uwb wban
Iaetsd increasing network life span of manet by using
DYNAMIC CONGESTION CONTROL IN WDM OPTICAL NETWORK
Gk2411581160
Mobility and Propagation Models in Multi-hop Cognitive Radio Networks
Dynamic bandwidth allocation scheme in lr pon with performance modelling and ...
IRJET - A Review on Congestion Control Methods in Mobile Adhoc Networks
FREQUENCY AND TIME DOMAIN PACKET SCHEDULING BASED ON CHANNEL PREDICTION WITH ...
Interference-Aware Multipath Routing In Wireless Sensor NetworksMinor projr...
Civilizing the Network Lifespan of Manets Through Cooperative Mac Protocol Me...
D044021420
Ad

Similar to An enhanced available bandwidth estimation technique for an end to end network path (20)

PDF
JCWAEED: JOINT CHANNEL ASSIGNMENT AND WEIGHTED AVERAGE EXPECTED END-TO-END DE...
PDF
IRJET- Sink Mobility based Energy Efficient Routing Protocol for Wireless Sen...
PDF
Design and implementation of new routing
PDF
OPTIMIZED ROUTING AND DENIAL OF SERVICE FOR ROBUST TRANSMISSION IN WIRELESS N...
PDF
AN OPTIMIZED WEIGHT BASED CLUSTERING ALGORITHM IN HETEROGENEOUS WIRELESS SENS...
PDF
A Fault Tolerant Approach to Enhances Wsn Lifetime in Star Topology
PDF
CONGESTION AWARE LINK COST ROUTING FOR MANETS
PDF
Comparative analysis of the performance of various active queue management te...
PDF
StateKeeper Report
PDF
IRJET- Aggregate Signature Scheme and Secured ID for Wireless Sensor Netw...
PDF
Performance Analysis of Energy Efficient Cross Layer Load Balancing in Tactic...
PDF
(Paper) A Method for Overlay Network Latency Estimation from Previous Observa...
PDF
A Fault Tolerant Approach To Enhances WSN Lifetime In Star Topology
PDF
Dynamic resource allocation for opportunistic software-defined IoT networks: s...
PDF
ANALYSIS OF LINK STATE RESOURCE RESERVATION PROTOCOL FOR CONGESTION MANAGEMEN...
PDF
Analysis of Link State Resource Reservation Protocol for Congestion Managemen...
PDF
ENSURING QOS GUARANTEES IN A HYBRID OCS/OBS NETWORK
PDF
Improvement of QoS Contained by AODV Routing Protocol On the Basis of Varying...
PDF
Congestion Prediction and Adaptive Rate Adjustment Technique for Wireless Sen...
PDF
Modified q aware scheduling algorithm for improved fairness in 802.16 j networks
JCWAEED: JOINT CHANNEL ASSIGNMENT AND WEIGHTED AVERAGE EXPECTED END-TO-END DE...
IRJET- Sink Mobility based Energy Efficient Routing Protocol for Wireless Sen...
Design and implementation of new routing
OPTIMIZED ROUTING AND DENIAL OF SERVICE FOR ROBUST TRANSMISSION IN WIRELESS N...
AN OPTIMIZED WEIGHT BASED CLUSTERING ALGORITHM IN HETEROGENEOUS WIRELESS SENS...
A Fault Tolerant Approach to Enhances Wsn Lifetime in Star Topology
CONGESTION AWARE LINK COST ROUTING FOR MANETS
Comparative analysis of the performance of various active queue management te...
StateKeeper Report
IRJET- Aggregate Signature Scheme and Secured ID for Wireless Sensor Netw...
Performance Analysis of Energy Efficient Cross Layer Load Balancing in Tactic...
(Paper) A Method for Overlay Network Latency Estimation from Previous Observa...
A Fault Tolerant Approach To Enhances WSN Lifetime In Star Topology
Dynamic resource allocation for opportunistic software-defined IoT networks: s...
ANALYSIS OF LINK STATE RESOURCE RESERVATION PROTOCOL FOR CONGESTION MANAGEMEN...
Analysis of Link State Resource Reservation Protocol for Congestion Managemen...
ENSURING QOS GUARANTEES IN A HYBRID OCS/OBS NETWORK
Improvement of QoS Contained by AODV Routing Protocol On the Basis of Varying...
Congestion Prediction and Adaptive Rate Adjustment Technique for Wireless Sen...
Modified q aware scheduling algorithm for improved fairness in 802.16 j networks
Ad

More from redpel dot com (20)

PDF
An efficient tree based self-organizing protocol for internet of things
PDF
Validation of pervasive cloud task migration with colored petri net
PDF
Web Service QoS Prediction Based on Adaptive Dynamic Programming Using Fuzzy ...
PDF
Towards a virtual domain based authentication on mapreduce
PDF
Toward a real time framework in cloudlet-based architecture
PDF
Protection of big data privacy
PDF
Privacy preserving and delegated access control for cloud applications
PDF
Performance evaluation and estimation model using regression method for hadoo...
PDF
Frequency and similarity aware partitioning for cloud storage based on space ...
PDF
Multiagent multiobjective interaction game system for service provisoning veh...
PDF
Efficient multicast delivery for data redundancy minimization over wireless d...
PDF
Cloud assisted io t-based scada systems security- a review of the state of th...
PDF
I-Sieve: An inline High Performance Deduplication System Used in cloud storage
PDF
Bayes based arp attack detection algorithm for cloud centers
PDF
Architecture harmonization between cloud radio access network and fog network
PDF
Analysis of classical encryption techniques in cloud computing
PDF
An anomalous behavior detection model in cloud computing
PDF
A tutorial on secure outsourcing of large scalecomputation for big data
PDF
A parallel patient treatment time prediction algorithm and its applications i...
PDF
A mobile offloading game against smart attacks
An efficient tree based self-organizing protocol for internet of things
Validation of pervasive cloud task migration with colored petri net
Web Service QoS Prediction Based on Adaptive Dynamic Programming Using Fuzzy ...
Towards a virtual domain based authentication on mapreduce
Toward a real time framework in cloudlet-based architecture
Protection of big data privacy
Privacy preserving and delegated access control for cloud applications
Performance evaluation and estimation model using regression method for hadoo...
Frequency and similarity aware partitioning for cloud storage based on space ...
Multiagent multiobjective interaction game system for service provisoning veh...
Efficient multicast delivery for data redundancy minimization over wireless d...
Cloud assisted io t-based scada systems security- a review of the state of th...
I-Sieve: An inline High Performance Deduplication System Used in cloud storage
Bayes based arp attack detection algorithm for cloud centers
Architecture harmonization between cloud radio access network and fog network
Analysis of classical encryption techniques in cloud computing
An anomalous behavior detection model in cloud computing
A tutorial on secure outsourcing of large scalecomputation for big data
A parallel patient treatment time prediction algorithm and its applications i...
A mobile offloading game against smart attacks

Recently uploaded (20)

PDF
Skskkxiixijsjsnwkwkaksixindndndjdjdjsjjssk
PDF
Urban Design Final Project-Site Analysis
PDF
SEVA- Fashion designing-Presentation.pdf
PDF
Integrated-2D-and-3D-Animation-Bridging-Dimensions-for-Impactful-Storytelling...
PPTX
An introduction to AI in research and reference management
PDF
Emailing DDDX-MBCaEiB.pdf DDD_Europe_2022_Intro_to_Context_Mapping_pdf-165590...
PPTX
building Planning Overview for step wise design.pptx
PDF
Interior Structure and Construction A1 NGYANQI
PPTX
CLASS_11_BUSINESS_STUDIES_PPT_CHAPTER_1_Business_Trade_Commerce.pptx
PDF
YOW2022-BNE-MinimalViableArchitecture.pdf
PDF
BRANDBOOK-Presidential Award Scheme-Kenya-2023
PPT
EGWHermeneuticsffgggggggggggggggggggggggggggggggg.ppt
PDF
UNIT 1 Introduction fnfbbfhfhfbdhdbdto Java.pptx.pdf
DOCX
actividad 20% informatica microsoft project
PPTX
AC-Unit1.pptx CRYPTOGRAPHIC NNNNFOR ALL
PPTX
HPE Aruba-master-icon-library_052722.pptx
PPTX
mahatma gandhi bus terminal in india Case Study.pptx
PDF
GREEN BUILDING MATERIALS FOR SUISTAINABLE ARCHITECTURE AND BUILDING STUDY
PPTX
BSCS lesson 3.pptxnbbjbb mnbkjbkbbkbbkjb
PDF
Phone away, tabs closed: No multitasking
Skskkxiixijsjsnwkwkaksixindndndjdjdjsjjssk
Urban Design Final Project-Site Analysis
SEVA- Fashion designing-Presentation.pdf
Integrated-2D-and-3D-Animation-Bridging-Dimensions-for-Impactful-Storytelling...
An introduction to AI in research and reference management
Emailing DDDX-MBCaEiB.pdf DDD_Europe_2022_Intro_to_Context_Mapping_pdf-165590...
building Planning Overview for step wise design.pptx
Interior Structure and Construction A1 NGYANQI
CLASS_11_BUSINESS_STUDIES_PPT_CHAPTER_1_Business_Trade_Commerce.pptx
YOW2022-BNE-MinimalViableArchitecture.pdf
BRANDBOOK-Presidential Award Scheme-Kenya-2023
EGWHermeneuticsffgggggggggggggggggggggggggggggggg.ppt
UNIT 1 Introduction fnfbbfhfhfbdhdbdto Java.pptx.pdf
actividad 20% informatica microsoft project
AC-Unit1.pptx CRYPTOGRAPHIC NNNNFOR ALL
HPE Aruba-master-icon-library_052722.pptx
mahatma gandhi bus terminal in india Case Study.pptx
GREEN BUILDING MATERIALS FOR SUISTAINABLE ARCHITECTURE AND BUILDING STUDY
BSCS lesson 3.pptxnbbjbb mnbkjbkbbkbbkjb
Phone away, tabs closed: No multitasking

An enhanced available bandwidth estimation technique for an end to end network path

  • 1. 1932-4537 (c) 2016 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information. This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TNSM.2016.2572212, IEEE Transactions on Network and Service Management IEEE TRANSACTIONS ON NETWORK AND SERVICE MANAGEMENT, VOL. , NO. , 2015 1 An Enhanced Available Bandwidth Estimation Technique for an End-to-End Network Path Anup Kumar Paul, Member, IEEE, Atsuo Tachibana, and Teruyuki Hasegawa Abstract—This paper presents a unique probing scheme, a rate adjustment algorithm, and a modified excursion detection algo- rithm (EDA) for estimating the available bandwidth (ABW) of an end-to-end network path more accurately and less intrusively. The proposed algorithm is based on the well known concept of self-induced congestion and it features a unique probing train structure in which there is a region where packets are sampled more frequently than in other regions. This high-density region enables our algorithm to find the turning point more accurately. When the dynamic ABW is outside of this region, we readjust the lower rate and upper rate of the packet stream to fit the dynamic ABW into that region. We appropriately adjust the range between the lower rate and the upper rate using spread factors, which enables us to keep the number of packets low and we are thus able to measure the ABW less intrusively. Finally, to detect the ABW from the one-way queuing delay, we present a modified EDA from PathChirps’ original EDA to better deal with sudden increase and decrease in queuing delays due to cross traffic burstiness. For the experiments, an Android OS-based device was used to measure the ABW over a commercial 4G/LTE mobile network of a Japanese mobile operator, as well as real testbed measurements were conducted over fixed and WLAN network. Simulations and experimental results show that our algorithm can achieve ABW estimations in real time and outperforms other stat-of-the-art measurement algorithms in terms of accuracy, intrusiveness, and convergence time. Index Terms—Available Bandwidth, Probe Rate Model, Queu- ing Delay, Rate Adjustment, Modified Excursion Detection Algo- rithm, 4G/LTE Network. I. INTRODUCTION Available bandwidth (ABW) estimation is crucial for traffic engineering, quality-of-service (QoS) management, multime- dia streaming, server selection in application services, con- gestion management, and network capacity provisioning in wireless mobile networks. ABW measurement can be con- sidered essential to ensure that wireless mobile operators can achieve the QoS standard guaranteed by them while providing desired data rates to users. This can also be considered when comparing the performance index of various Telecom operators in a specific region. Let us first define the terms ABW, bottleneck link (BL) or narrow link,1 and tight link precisely. Consider an end-to- end path that includes n links L1, L2, · · · , Ln. Their capac- ities are B1, B2, · · · , Bn and the traffic loads on these links are C1, C2, · · · , Cn respectively. The BL can be defined as Lb(1 ≤ b ≤ n), where Bb = min(B1, B2, · · · , Bn). Anup Kumar Paul, Atsuo Tachibana and Teruyuki Hasegawa are with the KDDI R&D Laboratories Inc., Fujimino, Saitama, 356-8502 JAPAN; e-mail: (anup@kddilabs.jp,tachi@kddilabs.jp,teru@kddilabs.jp). 1We will use both the terms interchangeably throughout this paper. The tight link can be defined as Lt(1 ≤ t ≤ n), where Bt − Ct = min(B1 − C1, B2 − C2, · · · , Bn − Cn). The unused bandwidth on the tight link, Bt − Ct is called the ABW of the path. There could be different possible definitions of ABW, depending on whether we use an approach based on unused capacity [1] or an approach based on achievable rate [2]. In wired networks, these two approaches are equiva- lent, leading to the widely accepted definition of ABW as the unused capacity of the tight link. But in wireless networks, interference makes the two concepts quite different. Due to radio interference, the unused capacity may not be completely available. On the other hand, when a new flow is established in the given path to occupy some of that unused capacity, the interfering cross traffic can re-accommodate itself in response to the new flow, changing the perception of the new regarding its ABW [3]. Since, in wireless settings, the unused capacity approach does not take into account this possible adaptation to network conditions, in this paper, we use the achievable rate approach. Ideally, a probing scheme should provide an accurate mea- surement of ABW while requiring less time and imposing as light a load as possible [1]. ABW estimation tools add traffic to the network path under measurement. This may adversely affect application traffic and measurement accuracy [4]. The amount of probe traffic is proportional to the rate of sampling and the number of concurrent measurement sessions. As a result, the effect of probe packets on cross traffic exacerbates with traffic increase. Thus less intrusive approach is desirable. Therefore researchers have developed several end-to-end ABW estimation techniques that infer the network characteristics by transmitting a few packets and observing the effects of intermediate routers or links on these probing packets. Nev- ertheless, there are a variety of challenges that we need to take into account: the estimation technique should be accurate, non-intrusive, and robust at the same time. Moreover, the estimation technique should be adaptively applied in different types of networks and cross traffic (CT) and must be able to produce accurate periodic estimations in a reasonable amount of time in order to track bandwidth fluctuations. Therefore, as mentioned in [5][6], the current ABW estimation techniques are far from being ready to be applied to many applications and scenarios. Measuring end-to-end ABW in a LTE network can be a challenging task due to varying wireless channel conditions, scheduling and modulation techniques, and pre-configured QoS parameters as well as the requirement for dedicated hardware and underlying operating system (OS) at both the www.redpel.com +917620593389 www.redpel.com +917620593389
  • 2. 1932-4537 (c) 2016 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information. This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TNSM.2016.2572212, IEEE Transactions on Network and Service Management IEEE TRANSACTIONS ON NETWORK AND SERVICE MANAGEMENT, VOL. , NO. , 2015 2 Fig. 1. One-way queuing delay signature. end measurement points. The limitations to accurate network performance measurements may be the air interface as well as the transport network. In real networks, the CT patterns become highly bursty, and this results in a significant deviation from the preferred fluid model of CT. Our proposed method determines the ABW by analyzing the one-way queuing delay curve (Fig. 1), also called the rate-response curve in [7]. In [7], it is shown that fluid-like analysis can give erroneous bandwidth estimates when taking packet-level interactions in the router queues into account, especially if the CT is bursty (e.g., Pareto distributed) or if there are several secondary bottlenecks [8]. By using longer probe-packet trains instead of probe-packet pairs, the obtained rate-response curve asymptot- ically moves towards the fluid curve [7]. In our experiments, we used long probe-packet trains. Furthermore, we studied the effect of one wireless bottleneck link on the rate-response curve. Thus, for the objectives in this paper, we believe that the original fluid model is sufficient. By taking into account the various challenges mentioned above, our goal is to estimate the ABW with good accuracy and less intrusively, i.e., without interrupting other network traffic to the extent possible. The main contributions of this paper are as follows: • To detect the ABW from the one-way queuing delay curve, we have proposed a modified excursion detection algorithm. Due to the bursty arrival of CT, a sudden increase in queuing delays of packets (called excursion) occur for a short period of time in the router even though the packet’s rate is much below the ABW of the tight link. So, to detect these sudden increases in queuing delays and to filter out them is the main purpose of the excursion detection algorithm. • We have proposed the packet loss recovery algorithm to make our algorithm more robust. • We have measured, analyzed, and described how the characteristics of our proposed method act in wireless scenarios. • We have conducted a real test over a commercial 4G/LTE network of a Japanese mobile operator as well as in a real fixed and Wireless Local Area Network (WLAN) to evaluate the effectiveness of our proposed method. The extended idea from our previous work NEXT [9] enables to find the turning point2 more accurately. The rest of the paper is organized as follows. Related work is discussed in Sect. II. Our proposed algorithm is presented in Sect. III. Simulation and real testbed results are shown and ABW measurement performances are discussed in Sect. IV. Finally, our conclusions presented in Sect. V. II. RELATED WORK Available bandwidth measurement techniques can be classi- fied into two broad categories [10][11], one being passive esti- mation and the other being active probing. Passive estimation is done on the basis of congestion situation, packet loss, and delay performance to estimate the ABW. Active probing on the other hand sends probe-packets over a network to estimate the ABW. Due to the efficiency and reliability of estimations, active probing is usually considered. Active probing further consists of the Probe Gap Model (PGM) [12] and Probe Rate Model (PRM) [13]. The PGM generates an estimate of the ABW by estimation of the CT rate in the link. Tools developed following this technique require previous knowledge of the capacity of the network path to be measured. The working behind this probing technique is where the sender sends a pair of packets to the receiver. The pair packets are transmitted close enough together in time for packets to queue together at the BL. Measuring the change in packet spacing, the receiver can make an estimate of the amount of CT during the measurement time in the bottleneck link [12] and then compute the ABW as the difference between the BL capacity and the CT rate: ABW = Bb − Ct. Examples of algorithms in this category are Spruce [14] and IGI [15]. On the other hand, the PRM techniques operate on the basis of self-induced congestion where this mechanism sends a stream of packets where the input rate of each stream is varied either iteratively or exponentially. Cross traffic follows a fluid model and average rates of CT change slowly. If a source sends probes to a destination at rate R less than the ABW, probes will experience similar delays. On the other hand, if R is greater than the ABW, probes will queue in the network and experience increasing delays. This technique is based on the observation that the delays of successive probing packets increase when the probing rate exceeds the ABW in the path. It consists in probing the network at different rates and detecting (at the destination) the point at which delays start to increase. At this point, the probing rates are equal to the ABW. The PRM model has proved to be accurate and it is used in many estimation tools, such as PathChirp [1], TOPP [12], Pathload [13], etc. It is evident from the research that the structure of the probing packet sequence is a major player in estimating the ABW. This is why several probing packet structures have been proposed in various approaches. For example, the single packet concept is used by simple protocols such as ping and traceroute. Packet pairs are used by Spruce [14]. The 2A turning point is the point from where all other successive packets queu- ing delay shows an increasing trend until the last packet. The corresponding packet’s rate is treated as the ABW. www.redpel.com +917620593389 www.redpel.com +917620593389
  • 3. 1932-4537 (c) 2016 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information. This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TNSM.2016.2572212, IEEE Transactions on Network and Service Management IEEE TRANSACTIONS ON NETWORK AND SERVICE MANAGEMENT, VOL. , NO. , 2015 3 packet train structure is used by TOPP [12] and Pathload [13]. TOPP and Pathload use a constant bit rate stream, sending pairs of trains of packets at a given rate and changing this rate every round. TOPP linearly increases the sending rate in successive streams, trying to find the exact turning point. Pathload on the other hand varies the probing rate using a binary search scheme and the final output, the result of multiple measurements, is a variation range rather than a single estimate. Since multiple trains are required to produce a single estimation, the intrusiveness of these techniques is quite high and the measurement process is time-consuming. Packet chirp, another type of packet train structure, is used by PathChirp [1]. The difference among these algorithms is their probing structure methods, which are based on the number of packets and the spacing between the packets. Packet spacing values can be either fixed in size [13] or follow the exponential distribution [1]. PathChirp [1] sends a variable bit-rate stream called chirp, which consists of exponentially spaced packets with rates gen- erated by the equation r = L×γi , ∀r ≤ H, where L and H are the lower rate and the upper rate respectively, γ is the spread factor, and i = {1, 2, . . .}. Whenever the estimated ABW feedback by the receiver is close to L or H, PathChirp adjusts the new L and H heuristically. This heuristic rate adjustment is inefficient and results in inaccurate ABW estimation in many cases. A detailed description of PathChirp’s rate adjustment algorithm can be found in their ns-2 [16] simulation code or real network implementation code [1]. Although PathChirp has several problems, after extensive empirical evaluation by [17], the author has come to the conclusion that among various ABW estimation tools, PathChirp has the lowest overhead and comparably good accuracy in multihop network paths with different CT and multiple tight links. Even when PathChirp runs continuously on a given path, it has virtually no impact on the response times of TCP connections sharing the same path. PathChirp can estimate the ABW by sending multiple chirps, and for each chirp, the receiver sends back the esti- mated ABW. Apart from several advantages, PathChirp has two major drawbacks. First, the packets are all exponentially spaced and second, the rate adjustment algorithm is not optimum. The first drawback lies in the probe-packet train structure. Starting from the L, the packets are closely spaced but as we go towards the H, the packet density significantly decreases. In PRM techniques, the mechanism for estimating the ABW is self-congestion and the ABW is determined by detecting the turning point at which the queuing delay starts increasing for all successive packets, i.e., the rate at which the packets start facing queuing delays, and the previous packet rate is the expected ABW. The problem arises when the sampling rate of the previous packet is sparsely spaced from the packet rate at which the queuing delay starts increasing. In other words, PathChirp samples the lower rates more frequently than the higher rates. Therefore, the tool is less accurate if the actual ABW is not located near L. As an example, for a spread factor of 1.2, if a chirp uses L as 1 Mbps and the H as 100 Mbps, then the total number of packets generated by PathChirp is 26. The first 13 packet rates are all 0 5 10 15 20 25 30 0 10 20 30 40 50 60 70 80 90 100 Number of packets PacketRateinMbps PathChirp Fig. 2. PathChirp’s rate generation. less than 10 Mbps, while the rest of the 13 packet rates lie in the range from 10 Mbps to 100 Mbps (Fig. 2). An alternative methodology to the active end-to-end approach would be to query every network element (switch/router) along a network path. A network administrator could collect the statistical counters from all related ports, via protocols such as sFlow [18]; or infer from Openflow control messages such as PacketIn and FlowRemoved messages [19]. However, obtaining an accurate, consistent, and timely reading from multiple switches in an end-to end manner can be very difficult [20]. Further, collecting counters from switches is done at per-second granularity basis and requires network ad- ministrative privileges, which makes the approach less timely and useful for building distributed systems, improving network protocols, or improving application performance. Another art of technique, such as MinProbe [21] used application traffic implicitly as available bandwidth probes, and are able to remove all the traditional costs and overheads. A similar idea was proposed in MGRP [4], which has the same goal of lower overhead. However, in both cases, one problem may occur when a TCP cwnd (congestion window) is small, e.g., when cwnd = 1. In this case, the application does not create enough traffic and dummy probe needs to be created. As a result, accurate and less intrusive active ABW measurement technique is important [22][23]. Recent researches include ABW measurement specific to wireless networks [2][24][25][26][27][28]. Exact [24] and IdleGap [25] assume that the RTS/CTS is always enabled and present only the simulation results. CapProbe [26] tries to avoid the influence of cross traffic by only estimating capacity. ProbeGap [27] measures the ABW in WLANs indirectly from the idle time fraction using one-way delay samples over the wireless link, but requires third-party capacity estimation tools. DietTOPP [28] uses a reduced TOPP algorithm with a modified search algorithm to determine the ABW in wireless networks. WBest [2] measures the ABW in two stages. In the first stage, the packet pair technique estimates the effective capacity over a flow path where the last hop is a wireless LAN. In the second stage, a packet train technique estimates achievable throughput to infer the ABW. Several comparisons of ABW measurement tools have been made using simulation and measurement studies [14], www.redpel.com +917620593389 www.redpel.com +917620593389
  • 4. 1932-4537 (c) 2016 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information. This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TNSM.2016.2572212, IEEE Transactions on Network and Service Management IEEE TRANSACTIONS ON NETWORK AND SERVICE MANAGEMENT, VOL. , NO. , 2015 4 [17], [29]. However, none of these active measurement tools considers measurement over a 4G/LTE mobile network. A recent work [30] developed a passive measurement tool for ABW estimation over a 4G/LTE network. Our paper reports the first study where the performance of an active ABW measurement tool is investigated over a 4G/LTE commercial mobile network. III. THE PROPOSED ALGORITHM Our proposed idea is divided into four sub-ideas: 1. Packet Generation Algorithm 2. Rate Adjustment Algorithm 3. Modified Excursion Detection Algorithm 4. Packet Loss Recovery Algorithm A preliminary version of our proposed idea, New Enhanced Available Bandwidth Measurement Technique (NEXT), has appeared in [9]. In NEXT, we proposed the first two sub- ideas (1 and 2). Our extended version of NEXT includes the modified excursion detection algorithm and the packet loss recovery algorithm, and we refer to it as NEXT-V2 throughout this paper. A. Packet Generation Algorithm Our proposed idea, NEXT, estimates the ABW along a net- work path by launching a number of packet chirps (numbered c = 1, 2, 3 · · · ) from sender to receiver. Each chirp consists of a certain number of packets that depend on the lower rate, the upper rate, and the spread factor. Assume that chirp c consists of N packets. The ratio of successive packet inter- spacing times within a chirp is defined as the spread factor. In NEXT, we have two spread factors: γ1 and γ2. First, we divided the total range of rates into three regions in terms of the number of packets. NEXT used N number of packets to test the values between the lower rate L and the upper rate H. We have divided the entire range of rates from L to H into three portions, where P1 and P2 are two region intersecting points. We set the initial rate as R0 = L. Successive rates will be generated according to whether the current rate falls within the P1 to P2 region or not. If the current rate Ri falls within P1 to P2, then the next rate is calculated as Ri = Ri−1 × γ2. Otherwise, the rate will be Ri = Ri−1 × γ1. We used spread factor γ2 = 1.1 from the P1 to P2 region of the total range of rates. In other areas, we used the spread factor γ1 = 1.2 (adapted from PathChirp’s experimental evaluation). NEXT is based on the observation that the smaller the sample intervals around the turning point, the more accurately we can find the ABW at that turning point. NEXT is more accurate if the ABW falls in the region from one-third to two-thirds of the stream.3 The larger the number of packets in a small range of rates i.e., the higher the sampling density around the turning point, the more quickly the queue will build up and so the accuracy will be precisely detected. Compared to PathChirp, 3When the ABW is not inside that region, we readjust the low rate and high rate in such a way that the ABW fits into that region in the following round of measurement. our proposed scheme NEXT is different—both algorithms use a sequence of packets of increasing delays, but the shape of the traffic and the spacing between packets, especially from the P1 to P2 portion of the total range, are not the same. Readers interested more about the details of the algorithm’s pseudo-code can refer to [9]. Here we will additionally describe how quickly our algo- rithm measures a single estimate of the ABW. In order to do that, it is necessary to formulate the total chirp duration of a single chirp. Let Sp be the size of a single packet and tp be the time duration of a single packet in a packet train (chirp). We know that tp = SP chirpRate Here chirpRate is the number of bits sent per second. Packet sizes are considered in computing the chirp rate. Since we have three different regions in a single packet train, we calculate the time duration of three separate portions and then add them together to obtain the total chirp duration. Thus, the total duration up to P1 is calculated as follows: tP1 p = Sp L + Sp L × γ1 + Sp L × γ2 1 + · · · + Sp L × γi−1 1 tP1 p = Sp L ⎛ ⎜ ⎜ ⎝ 1 − 1 γ1 logP1−logL logγ1 1 − 1 γ1 ⎞ ⎟ ⎟ ⎠ (1) where, i = logP1−logL logγ1 (from Eq.2 in [9]). In a similar way, we can obtain the chirp duration from P1 to P2 as tP2 p = Sp P1 ⎛ ⎜ ⎜ ⎝ 1 − 1 γ2 logP2−logP1 logγ2 1 − 1 γ2 ⎞ ⎟ ⎟ ⎠ (2) and from P2 to H as tH p = Sp P2 ⎛ ⎜ ⎜ ⎝ 1 − 1 γ1 logH−logP2 logγ1 1 − 1 γ1 ⎞ ⎟ ⎟ ⎠ (3) Therefore, total chirp duration Tchirp NEXT can be expressed as the sum of tP 1 p , tP 2 p , and tH p . Tchirp NEXT = tP1 p + tP2 p + tH p (4) B. Rate Adjustment Algorithm Rate adjustments of L and H are performed if the feedback value from the NEXT receiver to the NEXT sender is close to L or H, and whenever the feedback value does not fit into the P1 to P2 region. Details of the algorithms pseudo-code can be found in [9]. For the ease of understanding, we will describe our rate adjustment algorithm pictorially in this paper. Figure 3 describes our rate adjustment algorithm. The horizontal line represents the rate of packets where L is the lower rate and H is the higher rate. The individual red dots represent the packets with different rates. For comprehensive www.redpel.com +917620593389 www.redpel.com +917620593389
  • 5. 1932-4537 (c) 2016 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information. This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TNSM.2016.2572212, IEEE Transactions on Network and Service Management IEEE TRANSACTIONS ON NETWORK AND SERVICE MANAGEMENT, VOL. , NO. , 2015 5 Fig. 3. Rate adjustment of NEXT. understanding, the spacing’s between the red dots are set equal here but this does not mean that the rate intervals among these red dots (packets) are equal. The consecutive actions for any particular conditions are going from top to bottom and are indicated by line 1, 2, · · · , 6, where line 2 and line 3 are derived from line 1, and line 5 is derived from line 4, and line 6 is derived from line 5. The rate adjustment algorithm stops adjusting rates when the condition of P1 < ABWinst < P2 is satisfied, where ABWinst is the instantaneous ABW feedback by the receiver to the sender in a single round of measurement. This can be seen from the last horizontal line (line 6) of the figure. Rate adjustments of L and H of each chirp are conducted if the feedback value (ABWinst) from the receiver is close to L or H and even when ABWinst does not fit into the P1 to P2 region. As described in Fig. 3, line 2, if ABWinst exists near H (ABWinst > (P2 +H)/2), then the new low rate LN and the new high rate HN are calculated as follows:4 LN = H γn 1 (5) HN = H × γn 1 × γn 2 (6) If ABWinst exists near L (ABWinst < (L + P1)/2), see line 3, and then the new low rate LN and the new high rate HN is calculated as follows: LN = L γn 1 γn 2 (7) HN = L × γn 1 (8) Now, if either of the above two conditions is not satisfied, then the ABWinst feedback by the receiver falls somewhere else. In this case, we need to ensure that the ABWinst falls within the P1 to P2 region. Let us assume that the ABWinst falls in the position indicated in Fig. 3, line 4. In this case, the rate adjustment of LN and HN (see line 5) can be calculated as follows: LN = ABWinst γn 1 γ n/2 2 (9) HN = ABWinst × γn 1 γ n/2 2 (10) 4Here, n is the number of packets in each intersecting region. As an example, for a total of 10 packets, the value of n will be 3 and is calculated by Eq.7 in [9]. The physical meaning of the above two equations is that if we divide the ABWinst by γn 1 ×γ n/2 2 , we are actually shifting L to the rate that is n+n/2 = 3n/2 packets5 before the current rate. And if we multiply ABWinst by γn 1 × γ n/2 2 , we shift H to the rate that is 3n/2 packets after the current rate. Now it is obvious that, with this new rate (LN and HN ), if we recalculate P1 and P2, as can be seen from the last horizontal line (line 6) of Fig. 3, then ABWinst feedback by the receiver falls between P1 and P2 and thus the algorithm converges. C. Modified Excursion Detection Algorithm From PathChirp’s original Excursion Detection Algorithm (EDA), we have developed a modified EDA. PathChirp [1] estimates the ABW by launching a series of particular packet trains, called chirps, each of which consists of k packets sent with an inter-packet gap that is exponentially reduced. The chirps (numbered m = 1, 2, 3 · · · ) are sent from sender to receiver and then statistical analysis is conducted at the receiver by taking into account the one-way-delays (OWD), q (m) k , faced by each packet k on the intermediate router. A typical OWD signature is shown in Fig. 1. PathChirp uses the shape of the signature to make an estimate E (m) k of the per-packet available bandwidth B[t (m) k , t (m) k+1], where t (m) k is the sender transmission time of packet k. It then takes a weighted average of the E (m) k corresponding to each chirp m to obtain estimates D(m) of the per-chirp ABW: D(m) = N−1 k=1 E (m) k Δk N−1 k=1 Δk where Δk is the inter-spacing time between packet k and k+1 at the receiver and N is the total number of packets in a chirp. Finally, it makes estimates ρ[t−τ, t] of the ABW by averaging the estimates D(m) obtained in the time interval[t−τ, t], where τ is the total time interval of the measurement. In order to accurately compute E (m) k , PathChirp segments each signature into regions belonging to excursions and re- gions not belonging to excursions. Typically, a queuing delay signature consists of excursions from the zero axis (q (m) k > 0 for several consecutive packets) caused by a burst of cross traffic. The ultimate goal of PathChirp’s EDA is to identify potential starting and ending packet numbers j and i respec- tively for an excursion. Every packet j where q (m) j < q (m) j+1 is the potential starting point of an excursion. The end of excursion i is defined as the first packet, where [q(i) − q(j)] < maxj≤k≤i[q (k) − q (j)] F (11) Here, F is a parameter called the decrease factor. The above equation means that, at i, the queuing delay relative to q(j) has decreased by a factor of F from the maximum queuing delay increase after j and upto i. If i−j > Z, that is, if the signature is long enough (Z is the busy period threshold, with a default value of 5 [1]), then all packets between j and i form an excursion. The last excursion of a signature does not usually 5Assuming n = 3 will give 4.5 packets as indicated in Fig. 3. The value of n depends on the setting of the value of L and H www.redpel.com +917620593389 www.redpel.com +917620593389
  • 6. 1932-4537 (c) 2016 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information. This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TNSM.2016.2572212, IEEE Transactions on Network and Service Management IEEE TRANSACTIONS ON NETWORK AND SERVICE MANAGEMENT, VOL. , NO. , 2015 6 terminate: that is, there is some packet l with q (m) l < q (m) l+1 such that there is no i > l for which Eq. 11 holds (replacing j with l in Eq. 11). This point of interest is treated as the turning point of the queuing delay and the corresponding rate of packet l is the desired ABW. Readers interested in greater detail can refer to the original paper [1]. Our modified EDA is also based on the principle of self- induced congestion like PathChirp and we also assume that increasing queuing delay implies less ABW than the instanta- neous packets rate and that decreasing queuing delay signifies the opposite. Mathematically, E (m) k ≥ Rk, ifq (m) k ≥ q (m) k+1 (12) E (m) k ≤ Rk, otherwise (13) where Rk is the corresponding rate of the packet k. To justify the above equations, our basic idea is that, if a certain packet’s queuing delay is less than the average queuing delay faced by all other packets before it, and not including it, then this packet’s rate is not considered as one of the packets inside the excursion region or the turning point of the queuing delay signature. Each chirp packet k that falls into one of the following three conditions according to our algorithm decides the value of E (m) k . Case1:If a certain packet k belongs to an excursion that terminates and q (m) k < q (m) k+1, provided that q (m) k > avg(q (m) 1 : q (m) k−1), then we set E (m) k = Rk. Case2:If k belongs to an excursion that does not terminate, provided that q (m) k > avg(q (m) 1 : q (m) k−1), then set E (m) k = Rl, ∀k > l, where l is the start of the excursion. Case3:For all those k not belonging to any excursions and the successive k’s’ queuing delay shows a decreasing trend until the last packet of the chirp, then we set E (m) k = RN−1, where N is the last packet number. This case usually happens when we send a chirp whose maximum rate is less than the ABW. In Case 1 and Case 2, if q (m) k < avg(q (m) 1 : q (m) k−1), then we simply move on to the next k and start over again. For the pseudo-code of the algorithm see Algorithm 1, where line 4,5 and line 31,32 describe Case 3. Lines 9 to 16 calculate the average queuing delay of all other packets before the current packet. Line 17 imposes the condition (q (m) k > avg(q (m) 1 : q (m) k−1)) for Case 1 and Case 2. Lines 18 to 30 deal with detecting the excursion due to cross traffic burstiness. To better understand the modified EDA and how it differs from PathChirp’s EDA, we present one simple example. Figure. 4 represents one typical queuing delay of a single chirp obtained from the simulation. We have simulated a single bottleneck scenario where we set the actual ABW as 50 Mbps. From the simulation outcome, we have picked a single chirp’s queuing delay to better understand how PathChirp detects ABW from this typical queuing delay and how our modified approach differs from PathChirp. In Fig. 4, we have marked the packet’s number as 1, 2, · · · 21 for ease of explanation. The horizontal axis represents the packet rates and the vertical axis represents the queuing delays Algorithm 1 Modified Excursion Detection Algorithm Require: qd: Queuing Delay; F: Decrease Factor; 1: Set i = 0 (current location in chirp); 2: Set j = 0 (current location where queuing delay in- creases); 3: Set N=Total number of packets in a chirp. Ensure: TP: Turning point of the queuing delay signature. 4: while qd[j] ≥ qd[j + 1] and j < N do 5: increment j by 1; 6: end while 7: Set i = j + 1 8: while i ≤ N do 9: Set qdsum = 0 and count = 1; 10: for k = 0 to j do 11: qdsum = qdsum + qd[k]; 12: increment count by 1; 13: end for 14: if count > 1 then 15: avgQdelay = qdsum/(count − 1); 16: end if 17: if qd[j] > avgQdelay then 18: maxQdelay = max(maxQdelay, qd[i] − qd[j]) 19: if (qd[i] − qd[j]) < (maxQdelay/F) then 20: j = i; 21: while qd[j] ≥ qd[j + 1] and j < N do 22: increment j by 1; 23: end while 24: Set i = j; 25: end if 26: else 27: increment j by 1; 28: end if 29: increment i by 1; 30: end while 31: if j = N then 32: decrement j by 1 33: end if 34: Set TP = j; of packets. We define a particular packet’s queuing delay as qd[i], the queuing delay difference between two points as Diff(i, j) and the maximum queuing delay between two points as max, where i, j = 1, 2, · · · 21 and i = j. Let’s apply PathChirp’s EDA on these points from the beginning. Since qd[1] ≥ qd[2], move to point 2. Now qd[2] < qd[3], so set max = Diff(2, 3), move to point 4, and calcu- late Diff(2, 4). Since the default value of the busy period threshold is 5, these three points (2, 3, 4) will not make any excursion. So continue with calculating Diff(2, 5) and since Diff(2, 5) > max, now set max = Diff(2, 5) and move to point 6. If we continue, we will then find that Diff(2, 10) < max/F (F=decrease factor, the default value is 1.5) and the algorithm will move its pointer from point 2 to point 10. If we run the algorithm for the next excursion consisting of point 11 to point 16, we can find that PathChirp will detect the ABW as packet number 14’s rate (approximately 40 Mbps) instead www.redpel.com +917620593389 www.redpel.com +917620593389
  • 7. 1932-4537 (c) 2016 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information. This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TNSM.2016.2572212, IEEE Transactions on Network and Service Management IEEE TRANSACTIONS ON NETWORK AND SERVICE MANAGEMENT, VOL. , NO. , 2015 7 Fig. 4. A typical queuing delay signature obtained from the simulation. of 50 Mbps, because in this case, max = Diff(14, 15) and Diff(14, 16) > max/F. All other successive points (after point 16) show an increasing trend in queuing delay. Now, let’s apply our modified EDA to these points of Fig. 4. Here, we additionally define avg(i) as the average queuing delay faced by all other packets before packet i and not including i, where i = 2, 3, · · · 21. Starting from the beginning, since qd(1) ≥ qd(2), move to point 2 [line 4,5 in Algorithm. 1]. Now qd(2) < avg(2), so ignore this point and move on to the next point [line 17 and 27]. In a similar way, we can find that our algorithm moves the pointer to point 6. Since qd(6) > avg(6), we calculate Diff(6, 7) and set max = Diff(6, 7). Then, calculate Diff(6, 8) and since Diff(6, 8) > max, we set max = Diff(6, 8). Continuing, Diff(6, 9) < max/F, so the pointer moves to point 9 [lines 18 − 25]. Here, at this point, qd(9) ≥ qd(10) ≥ qd(11), and the pointer moves to point 11. Now, qd(11) < avg(11), so we move to point 12 without considering any other condition. If we continue, we can then find that our pointer will move to point 14 and then to points 15 and 16 because of the same condition that we imposed. So, finally, our pointer is fixed at point 16, because if we proceed forward after point 16, we can see that the maximum value of the queuing delay will be max = Diff(16, 18) and since Diff(16, 19) > max/F and all other points after 19 show an increasing trend until the last packet, our algorithm will detect the ABW as packet number 16’s rate (approximately 48.24 Mbps, close enough to the actual value of 50 Mbps). This is a simple example from a single chirp’s queuing delay to better understand how our modified algorithm achieves bet- ter accuracy than PathChirp. However, we do understand that, during our whole simulation time, we have sent many chirps and every chirp’s queuing delay signature is not the same. So, we are not justifying our idea based on this single queuing delay signature. We have conducted large-scale simulation and we have measured the ABW by averaging out all the detected turning point values from all the chirp’s queuing delay signatures and based on the large-scale simulation results, we can claim that our idea works better than PathChirp and other related state-of-the-art ABW measurement tools. Fig. 5. Packet loss recovery. D. Packet Loss Recovery (PLR) Algorithm Packet loss in a wireless network is an inevitable issue that impacts the accuracy of ABW estimation. Some tools, e.g., PathChirp and Pathload, discard estimates when packet loss occurs to avoid errors in ABW estimation computation. However, this results in longer and more variable measurement times. So, instead of discarding estimates when packet loss occurs, we reconstruct the one-way queuing delay curve (Fig. 1) by considering whether a single packet loss occurs or multiple packet losses occur. We recover the possible queuing delay information of the lost packet (Ld) based on the previous packet’s queuing delay (Pd) and the next packet’s queuing delay (Nd) information in case of single packet loss, and in case of multiple packet losses, we used packet loss rate information. We consider three cases: Case1:In case of a single packet loss and if Pd ≥ Nd, then there will be three possible delay values for the lost packet. It may be equal to Pd or Nd or greater than either or less than either. If we set it to be equal to both or greater than either, then there is no logical meaning, because in both cases, Algorithm 1 will move the pointer to Nd (see lines 4,19 and 27 of Algorithm 1). So we set Ld to be less than Nd as Ld = Nd/2. We set it to be less because if this lost packet plays some role in bandwidth estimation, then we will underestimate the ABW rather than overestimate the rate of the next packet. This underestimation will help other applications to prevent further packet loss by sending packets with an underestimated rate. On the other hand, if Pd < Nd, then we set the lost packet’s delay as the average of Pd and Nd to construct the trend of queuing delays of successive packets. Figure 5 describes the idea. Case2:If a single packet loss occurs in separate positions, i.e., multiple packet losses occur independently and not successively in a train of packets, then we apply the recovery idea considering case 1 to separate positions to reconstruct the one-way queuing delay. Case3:If multiple packet losses occur successively in a packet train, we calculate the packet loss rate rl as the number of lost packets divided by the total number of packets and adjust the available bandwidth as ABWm = ABWm−1 × (1 − rl). Where m is the www.redpel.com +917620593389 www.redpel.com +917620593389
  • 8. 1932-4537 (c) 2016 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information. This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TNSM.2016.2572212, IEEE Transactions on Network and Service Management IEEE TRANSACTIONS ON NETWORK AND SERVICE MANAGEMENT, VOL. , NO. , 2015 8 current chirp number. If chirp m−1 also faced packet losses then we simply discard chirp m − 1 from the calculation of ABW, otherwise the accuracy will be affected severely. The final ABW is the average over all chirps measurement result. IV. SIMULATION AND TESTBED RESULTS In order to study the performance of NEXT-V2, simulations and practical measurements were conducted over wired and commercial 4G/LTE networks respectively. A. Simulation Test and Performance Evaluation In this section, we used a simulation environment to imple- ment and evaluate the performance of NEXT-V2 and other prominent ABW estimation techniques. By doing so, we ensured that the only variables that impact the performance of an ABW estimation technique are the algorithmic design of its probe-stream and inference logic. Specifically, issues related to time-stamping accuracy, timer granularity, CPU load, and interrupt processing are taken out of the equation—a simulator allows for perfect time-stamping and spacing of probe-packets. We selected several prominent ABW estimation techniques— namely, PathChirp [1], Pathload [13], and Spruce [14] that represent existing diversity in their algorithmic design used for inferring end-to-end ABW. We implemented each of these algorithms in the ns-2 [16] network simulation environment. We relied on published literature as well as publicly available implementations [31] to extract the details of each algorithm. Performance Metrics: We characterized the performance of the NEXT-V2 algorithm using two types of metrics: • Intrusiveness • Accuracy Intrusiveness is defined as the average bit rate of a tool. The intrusiveness of PathChirp and NEXT as well as NEXT- V2 can be easily compared.6 We compared the total packet size of a single packet train between both methods. From [1], we know that a chirp that has lower rate L, upper rate H, and spread factor γ, consisting of N packets can be calculated as NP athChirp = 1 + 1 log (γ) log H L On average, PathChirp sends 22 packets. With a packet size of 1200 bytes, the total packet size of a single packet train is 22×1200 = 26.4KB. On the other hand, the average number of packets sent by the NEXT algorithm is 10. So NEXT’s total packet size of a single packet train is 10 × 1200 = 12KB. Thus, the intrusiveness of NEXT is 26.4/12.0 = 2.2 times lower as that of PathChirp. Because of our rate adjustment Algorithm, NEXT sends a lower number of packets compared to PathChirp. Each run of an ABW estimation algorithm should yield a good estimate of the end-to-end ABW. In order to quantify the accuracy of an ABW estimation algorithm, we projected the actual ABW and the estimated ABW in the simulation 6Since the packet structure of NEXT and NEXT-V2 is the same, the intrusiveness is also the same. So hereafter, mentioning intrusiveness to refer to one implies another. Fig. 6. Network topology with a single bottleneck link. 0 10 20 30 40 50 60 70 80 90 100 10 20 30 40 50 60 70 80 90 EstimatedAvailableBandwidth Cross Traffic Rate PathChirp PathLoad Spruce NEXT NEXT-V2 Actual AB Fig. 7. ABW accuracy comparison in a single bottleneck link. results. We conducted several types of experiments to evaluate the accuracy—we describe these next. Single Bottleneck—One Tight Link: The accuracy of most ABW estimation algorithms is established by their proponents by running them on links shared by CT with a constant bit rate (CBR). We validated our ns-2 implementation by using the network topology depicted in Fig. 6. We ran an ABW estimation algorithm between node Snd. and Recv. and CT went from CBRsender to CBRreceiver. We varied the CT load from 10 Mbps to 90 Mbps and for each load, we recorded the estimated ABW averaged over the total simulation run. Figure 7 plots the average of the estimated ABW against the actual ABW. From the figure, we can see that Spruce is quite accurate in estimating the ABW because it assumes knowledge of the BL capacity and it is the same as the tight-link capacity in this scenario (which is quite an impractical assumption in many Internet paths; we will explain this in the next subsec- tion). Our extended idea NEXT-V2 outperforms PathChirp in most cases and is an improved version of our previously pro- posed idea NEXT. NEXT-V2 achieves almost the same level of accuracy as Pathload; however, the intrusiveness of NEXT as well as our extended version NEXT-V2 is significantly less than PathChirp as well as Pathload. Due to the fairness of comparison, we have set L = 1 Mbps and H = 4 Mbps for NEXT, NEXT-V2, and PathChirp. However, due to the heuristic rate adjustment, PathChirp performs poorly. Similar conclusions can be drawn from Fig. 9. Single Bottleneck—Two Potential Tight Links: The in- ference logic of the PGM techniques (e.g., Spruce) is based on the assumption that, on the path for which the ABW is to be estimated, the tight as well as the narrow link are the same. In practice, this may not be the case with many Internet www.redpel.com +917620593389 www.redpel.com +917620593389
  • 9. 1932-4537 (c) 2016 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information. This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TNSM.2016.2572212, IEEE Transactions on Network and Service Management IEEE TRANSACTIONS ON NETWORK AND SERVICE MANAGEMENT, VOL. , NO. , 2015 9 Fig. 8. Multihop network topology with multiple tight link. 0 10 20 30 40 50 60 70 80 90 100 0 20 40 60 80 100 120 140 160 AvailableBandwidth Simulation Time PathChirp Pathload Spruce NEXT NEXT-V2 Actual ABW Fig. 9. ABW accuracy comparison in multiple tight links. paths—indeed, an ISP access link that is shared among a large user population may have a lower ABW than the last- mile narrow link for many users. In order to evaluate the performance on such paths, we simulated the topology as shown in Fig. 8. We ran NEXT, NEXT-V2, and other ABW estimation algorithms for a total of 160 simulation seconds. We started the CBR traffic (between CBRsender − 1 and CBRreceiver − 1) of 60 Mbps at 20 simulation seconds and stopped at 100 simulation seconds. We also started another CBR traffic (between CBRsender−2 and CBRreceiver−2) of 30 Mbps at 70 simulation seconds and stopped at 130 simulation seconds. Note that, in this topology, the BL capacity is 80 Mbps, whereas the tight link capacity is 100 Mbps (since it carries most traffic). During other times, the tight link and the BL are the same and hence the actual ABW is 80 Mbps. The results are plotted in Fig. 9. From the figure, we see that, under these dynamic network conditions, NEXT, NEXT- V2, and PathChirp perform well, whereas Spruce perform badly due to their impractical assumption (that the tight link and narrow link are the same7 ). NEXT outperforms PathChirp in most cases and tracks changes of the ABW quickly and NEXT-V2 is improved in comparison with NEXT in terms of accuracy. This is because our chirp structure has fine granular- ity from the one-third to two-thirds portions and we adjusted the L and H appropriately to fit the possible ABW into that region. NEXT-V2 outperforms because of the modified EDA. Cross Traffic Burstiness: The ABW is determined by the 7The tight link of a path is the one with the least amount of ABW, while the narrow link is the one with the least transmission capacity [13]. The tight link of a path may not be the same as the narrow link if it carries a significant traffic load. 0 20 40 60 80 100 120 0 50 100 150 200 250 300 350 AvailableBandwidth Simulation Time PathChirp NEXT NEXT-V2 Fig. 10. ABW accuracy comparison with exponential distribution of ON-OFF cross traffic. Mean ON-OFF period 10 sec. CT arrival process. The CT influences the probe-packet train via dynamics in the shared packet queue at the tight link. In particular, the queue-size grows when the collective bit rate of the probe-packet trains and the arriving CT exceeds the link capacity. Bursty CT creates transient queue dynamics. Since NEXT-V2 is capable of estimating and adapting to the ABW at fine time scales, it also reacts to the transient queue build-up caused by the CT bursts. In order to study the impact of such bursts on the NEXT-V2s probe stream and the steady-state throughput it achieves, we consider Pareto and Exponential CT models. These models generate ON/OFF traffic. During ON periods, packets are generated at a constant bit rate. During OFF periods, no traffic is generated. Burst times and idle times are taken from the Pareto distribution and Exponential distribution for Pareto and Exponential CT respectively. The different traffic models each have their own pros and cons. The type of network under study and the traffic char- acteristics strictly influence the choice of traffic model used for analysis. Traffic models that cannot capture or describe the statistical characteristics of the actual traffic on the network are to be avoided, since the choice of such models will result in under-estimation or over-estimation of network performance. There is no single model that can be used effectively for modeling traffic in all kinds of networks. In case of high- speed networks with unexpected demand on packet transfers, Pareto and Exponential-based traffic models are excellent candidates since these models take into consideration the long- term correlation in packet arrival times [32]. Similarly, with Marcov models, though they are mathematically tractable, they fail to fit the actual traffic of high-speed networks [33]. To carry out this experiment, we generated a simple dumbell topology as shown in Fig. 6. The CT and the probe packets of PathChirp, NEXT and NEXT-V2 share the 100 Mbps tight link (Bt). All other links have a transmission capacity of 1 Gbps. We used Pareto and Exponential CT to evaluate the performance. We used 1000 bytes packet, 1 sec and 10 sec duration for the ON/OFF period for Pareto and Exponential CT respectively, and a 60 Mbps CT rate. We ran this experiment over 350 simulation seconds. We started the CT from the beginning to the end of the simulation. So, during this interval, the actual ABW is 40 Mbps when www.redpel.com +917620593389 www.redpel.com +917620593389
  • 10. 1932-4537 (c) 2016 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information. This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TNSM.2016.2572212, IEEE Transactions on Network and Service Management IEEE TRANSACTIONS ON NETWORK AND SERVICE MANAGEMENT, VOL. , NO. , 2015 10 TABLE I REAL TESTBED RESULTS OVER FIXED NETWORK AND WLAN Fixed Network Testbed WLAN Testbed Cross Traffic Rate (Mbps) Actual ABW (Mbps) Estimated ABW (Mbps) Cross Traffic Rate (Mbps) Actual ABW (Mbps) Estimated ABW (Mbps) Pathchirp NEXT NEXT-V2 Pathchirp NEXT NEXT-V2 10 90 102.83 98.23 93.48 2 18 20.47 20.25 18.26 20 80 92.22 76.06 79.08 4 16 18.81 18.90 17.75 30 70 87.99 74.74 68.84 6 14 17.32 16.90 16.57 40 60 78.31 64.19 60.88 8 12 8.07 9.23 12.27 50 50 58.69 56.96 51.37 10 10 13.60 11.98 8.47 60 40 38.85 36.40 37.96 12 8 10.81 10.20 7.30 70 30 31.87 27.25 28.62 14 6 8.74 8.70 6.04 80 20 23.75 16.36 17.73 16 4 6.78 5.90 4.07 90 10 7.50 8.16 9.04 18 2 4.10 3.20 2.87 0 20 40 60 80 100 120 0 50 100 150 200 250 300 350 AvailableBandwidth Simulation Time PathChirp NEXT NEXT-V2 Fig. 11. ABW accuracy comparison with pareto distribution of ON-OFF cross traffic. Mean ON-OFF period 1 sec and shape 1.5. there is a CT burst, otherwise, the actual ABW is 100 Mbps8 . We presented the ABW fluctuation in Fig. 10 and Fig. 11 for Exponential and Pareto CT respectively. From the figure, we can see that when the CT arrives at the tight link, it interacts with the NEXT-V2 probe-packets and NEXT-V2 sender learns that the ABW has decreased to Bt − Ct after a delay of 1 RTT. The NEXT-V2 sender immediately adjusts its sending rate and fits the ABW into the high-density region of the sending probe pattern to achieve higher accuracy. The important point to notice here is the quick rate adaptation of our algorithm (with two spread factors) to the sudden arrival of CT to detect the ABW in a short time interval as well as the responsiveness to the bursty CT nature. As compared to PathChirp, we can see that NEXT and NEXT-V2 performed better in tracking the ABW with the ON and OFF period of CT since NEXT and NEXT-V2 both have only 10 probe-packets in a single chirp. We also noticed that, while bursty CT resulted in noisier measurement data than CBR CT, we were able to compensate for the noise by perfoming additional processing in ABW estimation as described in Alg. 1. Specifically, we found that the modified excursion detection algorithm that smoothed the measurement data by moving average resulted in higher accuracy than PathChirp as well as our previous approach NEXT that also used PathChirp’s EDA. We noticed a 8We could not provide the actual ABW as a ground truth in the simulation result in Fig. 10 and Fig. 11, because the ON/OFF period is dependent on Pareto and Exponential distribution and is not predetermined. slight delay in ABW tracking in the case of PathChirp because it generates on average 22 packets in a single chirp and the rate adjustment of PathChirp is heuristic. So we realized the fact that, to cope with the burstiness of CT in a real network situation, an ABW estimation algorithm should have a lower number of packets with optimal rate adjustment algorithm while achieving comparably good accuracy to properly track the changes in the ABW during the ON and OFF period of CT. As a result, we observed that CT burstiness had limited impact on NEXT-V2. B. Real Testbed Results and Performance Evaluation In order to evaluate our estimation method, the performance of NEXT and NEXT-V2 have been studied in a controlled testbed environment and compared with PathChirp over fixed network topology (Fig. 6) and WLAN topology (Fig. 12). We used the default configurations for all the probing tools. In addition, results in [1] show that pathChirp generally performs better with larger packets; therefore we set the packets size of all the tools to 1000 byte. In a fixed network topology, two CISCO Catalyst 3750 series switches using CISCO IOS are connected together through a CAT-5e cross-cable and by creating VLAN they served as routers; two other machines of the testbed served as a source of controlled traffic flows using the IXIA tool [34]. Finally, the sender and the receiver for each measurement tool used additional PCs running Ubuntu GNU/Linux. The bottleneck link between two switches are set as 100 Mbps. In a WLAN topology, we deployed two wireless nodes, one base station as an access point, one router, and two server PCs. IXIA is used for generating CT. We measured the wireless link capacity between the wireless node and the access point when two wireless nodes are active and found that the maximum throughput that each node can get is roughly 20 Mbps. So we used this rough value as the true ABW for accuracy comparison with the ABW estimation tools. We tested PathChirp, NEXT and NEXT-V2 in the presence of real CT generated by IXIA. Table. I shows a measurement performed in our testbed while the network path is loaded with real CT varying from 10 Mbps to 90 Mbps in fixed network and from 2 Mbps to 18 Mbps in WLAN testbed. Each measurement result is the average over 10 repeating measurement process for each tool. Our experiments show that PathChirp constantly overestimates ABW and measurements www.redpel.com +917620593389 www.redpel.com +917620593389
  • 11. 1932-4537 (c) 2016 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information. This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TNSM.2016.2572212, IEEE Transactions on Network and Service Management IEEE TRANSACTIONS ON NETWORK AND SERVICE MANAGEMENT, VOL. , NO. , 2015 11 TABLE II PACKET LOSS RECOVERY ALGORITHM EVALUATION WITH 5% PACKET LOSS RATE. Cross Traffic Rate (Mbps) Actual ABW (Mbps) Estimated ABW (Mbps) NEXT-V2 (Without PLR) Error (%) NEXT-V2 (With PLR) Error (%) 10 90 49.59 44.9 59.71 33.65 20 80 42.86 46.42 53.67 32.91 30 70 40.96 41.48 50.35 28.07 40 60 36.7 38.83 44.1 26.5 50 50 30.98 38.04 35.88 28.24 60 40 21.19 47.02 28.97 27.57 70 30 17.73 40.9 20.11 32.96 80 20 11.86 40.7 13.04 34.8 90 10 4.57 54.3 5.69 43.1 Fig. 12. WLAN network topology. are quite unstable. This is a well-know problem of PathChirp: similar results have been obtained in [35][36]. On the other hand, the accuracy and stability of NEXT-V2 is notable: we found that 80% of estimations exhibit a relative error lower than 5% in fixed network testbed and 70% of estimations exhibit a relative error lower than 15% in WLAN testbed. We evaluated the packet loss recovery (PLR) algorithm with the topology as shown in Fig. 6. We used Dummynet [37] in the network to control the packet loss rate. We set 5% packet loss rate, sent CT with different rates and estimated the ABW. First we evaluated NEXT-V2 without PLR algorithm9 and then with PLR algorithm. The result is shown in Table II. In the experiment, we saw that with 5% packet loss rate, multiple packet loss occurred in a single chirp and only in few cases single packet loss occurred. So the result shown in Table II mostly reflects the adjustment of Case3 in PLR algorithm. Furthermore, Dummynet internally round times to multiples of the quantum of the system timer, which runs HZ times per second (in our case HZ = 1000). This introduces a timing error of 1/HZ = 1 ms that is randomly added to some packets queuing delay and cause further misdetections of turning point (Fig. 1). Although multiple and successive packet loss is a rare phenomenon in today’s real network, we firmly believe that, our algorithm can detect the ABW with greater accuracy for Case1 and Case2 as described in PLR algorithm. We have also evaluated our algorithm using LTE connection of a commercial Japanese mobile operator. NEXT-V2 is imple- mented in an Android OS-based mobile terminal and Linux OS-based server PC and evaluated over a 4G/LTE network 9Without PLR algorithm, the NEXT-V2 receiver simply returns zero ABW when a packet loss occurs. Thus the probe packet sender do not update the low rate and high rate, which further wrongly estimates the ABW in the next round. As a result, the final estimated ABW which is an average over all estimates is affected by the packet loss rate. Fig. 13. 4G/LTE network topology. in real cross traffic scenarios. We created an Android OS- based ABW measurement tool using Android SDK tools that initiate a NEXT-V2 session by generating UDP probe traffic towards the Linux-based server PC located in KDDI R&D Labs during up-link measurement and vice versa during down- link measurement. The measurement tool takes the address to the server and an associated port number as an input to exchange packets. The configurable parameters of NEXT-V2 such as the low rate and high rate of the packet trains, spread factors, etc., can be specified. The results are displayed on a graph as well as stored in a log file. The graph displays the total probe traffic send for a single estimate in Kilobytes (KB). Further, the log file generated shows the details of the measurement. The measurement tool utilizes Androids telephony API to display the network type and connection state. It displays values such as RSSI, MCC, MNC, and LAC of the network to which we are currently connected. A basic essential requirement for creating network maps is usage of geolocation services. Android location API is utilized to associate the ABW estimation with the measurement location. The latitude and longitude values are displayed on screen as well as added to the log file with associated ABW estimation. Android application installation and test performance was conducted on an HTC smartphone consisting of a Quadcore processor. It consists of 2 GB RAM with support for LTE, HSDPA, HSUPA, and HSPA+. The 4G/LTE network topology for experimentation is shown in Fig 13. All wired links have a capacity of at least 100 Mbps. According to the mobile operator, 4G/LTE networks can achieve more than 100 Mbps in the physical layer theoretically. But carrier aggregation-supported mobile terminals (MTs) are very rare now. The MTs used in the experiments support a data rate up to 75 Mbps in a 4G/LTE network. To validate the measurement results, we compared the true ABW and the estimated ABW produced by NEXT-V2. In a fixed-wireline testbed, the true ABW can be measured using tools such as tcpdump. Then, the ABW can be computed as the difference between the fixed-line capacity and the cross traffic rate. However, in a 4G/LTE network, the capacity of the link at the IP layer is very difficult to determine, because it varies with the radio quality. Furthermore, even if the radio quality is known, there is no simple formula to calculate the cross traffic impact on the capacity since it depends on the packet size, varying wireless channel conditions, scheduling and modulation techniques, pre-configured QoS parameters, etc. Instead, in this paper, we used the maximum achievable FTP throughput as a ground truth of the true ABW. To inves- tigate the accuracy of our results obtained, we also compared www.redpel.com +917620593389 www.redpel.com +917620593389
  • 12. 1932-4537 (c) 2016 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information. This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TNSM.2016.2572212, IEEE Transactions on Network and Service Management IEEE TRANSACTIONS ON NETWORK AND SERVICE MANAGEMENT, VOL. , NO. , 2015 12 TABLE III RELATIONSHIP BETWEEN ABW AND FTP THROUGHPUT IN LTE NETWORK Resource Block Theoretical Capacity (Mbps) Actual Capacity(Mbps) CBR Cross Traffic FTP Throughput (Mbps) 6 6.04 4.53 2 2.41 15 15.12 11.24 5 5.35 25 25.2 18.9 10 7.67 50 50.4 37.8 15 20.36 75 75.6 56.7 25 29.19 100 100.8 75.6 40 33.29 them with the FTP throughput measurement results on both links using the XCAL Speedtest available for the Android smartphone in Google Play Store [38]. The XCAL Speedtest, developed by Accuver Communications is an Android OS- based tool that provides a solution for wireless network testing. It supports major wireless technologies displaying current wireless network characteristics and investigates cell coverage and capacity. Furthermore, to understand the relationship between FTP throughput and the ABW, we conducted simulation in ns- 3 [39] with the topology shown in Fig. 13, where there is an FTP session running between a TCP cubic server and a mobile client and the mobile client is downloading files using the TCP connection. We used TCP Cubic as it is the default TCP congestion control algorithm in Linux OS in real networks. We also used the SISO transmission mode for the MTs and eNB. We would like to see how closely the FTP throughput resembles the ABW with the presence of cross traffic. The result is shown in Table III. For different resource blocks (RBs), we ran different amounts of CBR cross traffic from the cross traffic source to the cross traffic destination and calculated the FTP throughput. From Table III, the first column represents different RBs in eNB. The second and the third column represents the theoretical capacity and the actual capacity of the corresponding RBs respectively. Due to the overhead used for controlling and signaling, which is approximately 25% introduced by PDCCH, the down-link RS signal, and other control signals [40], the actual capacity is 75% of the theoretical capacity. For different resource blocks (RBs), we ran different amounts of CBR cross traffic from the cross traffic source to the cross traffic destination and calculated the FTP throughput. We can see that FTP through- put closely resembles the ABW.10 Table IV summarizes the results obtained by NEXT-V2 over a 4G/LTE network. We conducted measurement on different dates and times over different places to ensure the fairness of the measurement. We conducted measurement while walking through the streets and sometimes by car at an average speed of 30 to 40 km/h. During the measurement, the mobile terminals received signal strength indicator (RSSI) was between −67 dbm to −92 dbm in different locations. We used 1.1 and 1.05 as the two spread factors for ABW measurement. For each run, we measured the ABW in the up-link (UL) and down-link (DL) directions. We compared the estimated ABW with the FTP throughput and XCAL Speedtest. For this purpose, we uploaded and downloaded a 10 MB file to and from one of the servers in KDDI Labs and measured the FTP throughput 10The remaining actual capacity after the amount of CBR cross traffic. Fig. 14. Estimated error while varying packet size. (UL) and FTP throughput (DL) respectively. From the table, we can see that NEXT-V2 achieves very good accuracy as the estimates closely follow the FTP throughput and XCAL Speedtest results. The results achieved using our measurement tool does not provide information regarding existing cross traffic in a com- mercial LTE network. While the experiments were run during particular times of the day, an assumption is made of the existence of constant cross traffic in the network during a short time measurement period. We compared our measurement tool results with FTP throughput values where the FTP results provides achievable throughput of the network being less than the theoretical capacity of the LTE network. It is possible to run experiments to estimate available bandwidth in LTE networks with existing measurement tools on a computer tethered via a LTE-enabled phone or Dongle. However, our objective is to consider the development and deployment of a measurement tool for Android OS-based devices, and existing tools for computers are not an option for measuring available bandwidth on LTE networks. The existence of FTP sessions on the Android device allows us to select it as a benchmarking option against our measurement tool. Figure 14 shows the estimated error11 of NEXT-V2 while varying the probe-packet size. For each packet size, we re- peated the measurement 20 times and then averaged the 20 measurement results for fairness. For each run, we measured the ABW in the down-link, the total time required for NEXT- V2 to produce a single estimate, and the total bytes sent during the measurement. We can see from the figure that the estimated error varies with the probe-packet size. The reason for the varying measurement estimates of the ABW can be derived from the link-level acknowledgments. If the probe- packet size is small, then the extra overhead introduced by the link-level acknowledgments is relatively large compared to a larger probe-packet size. This will affect probe-packet separation and hence the rate-response curve, which is the basis of accurately determining the ABW by detecting the turning point. Thus, the ABW produced by NEXT-V2 varies with varying probe-packet size. We can see that the estimation 11The difference between the estimated value of NEXT-V2 and FTP throughput. www.redpel.com +917620593389 www.redpel.com +917620593389
  • 13. 1932-4537 (c) 2016 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information. This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TNSM.2016.2572212, IEEE Transactions on Network and Service Management IEEE TRANSACTIONS ON NETWORK AND SERVICE MANAGEMENT, VOL. , NO. , 2015 13 TABLE IV REAL TEST-BED RESULTS OVER 4G/LTE NETWORK Location Date/Time NEXT-V2 FTP Throughput XCAL Speedtest UL(Mbps) DL(Mbps) UL(Mbps) DL(Mbps) UL(Mbps) DL(Mbps) KDDI Lab (Fujimino City) Aug 5/15:59 5.25 7.24 6.54 7.16 7.17 9.33 Aug 5/16:36 6.32 10.42 7.98 10.52 8.00 12.34 Aug 6/9:36 7.47 7.52 9.15 7.21 8.5 9.2 Aug 6/13:26 8.43 9.28 7.21 8.77 7.5 9.7 Aug 7/ 9:21 5.36 7.18 4.59 6.53 6.54 8.31 Aug 7/17:06 3.92 15.82 3.96 15.86 4.2 16.2 Aug 14/11:27 8.94 12.60 7.82 12.38 10.12 13.3 Aug 14/11:42 7.86 6.94 8.08 8.00 6.89 7.23 Kawagoe City Aug 10/17:53 7.43 17.54 6.00 18.80 9.35 19.24 Aug 10/18:38 6.71 8.38 5.73 10.37 7.5 10.2 Aug 10/19:42 10.88 16.08 7.39 16.54 9.8 18.90 Tokyo City Aug 19/13:45 3.89 6.46 4.77 6.72 5.5 7.8 Aug 19/14:44 8.74 15.55 8.62 13.89 10.75 16.65 Aug 19/15:31 9.8 16.47 7 15.44 9.23 17.3 Aug 19/16:57 8.19 9.38 6.78 7.43 8.45 11.23 TABLE V TOTAL TRAFFIC SENT AND TOTAL ELAPSED TIME FOR DIFFERENT PACKET SIZE Packet Size (Byte) Total Traffic Sent (KB) Total Elapsed Time (sec) 600 189 2.32 700 227 2.22 800 225 3.45 900 277 2.54 1000 221 2.89 1100 389 2.23 1200 356 3.11 1300 281 2.29 1400 447 4.89 1500 399 3.99 error produced by NEXT-V2 with a probe-packet size from 1000 bytes and above is around 10% and less than 10% respectively. We also measured the total traffic sent and the total elapsed time for a single ABW estimate as can be seen from Table V. The result indicates that NEXT-V2 estimates the ABW with less intrusiveness and within 2 to 4 seconds depending on the probe-packet size. For this experiment, we downloaded a 10 MB size file and it took about 10 to 12 seconds. V. CONCLUSION In this work, we presented the details of NEXT-V2, an extended version of NEXT, an active probing algorithm that features an efficient measurement scheme for end-to-end ABW estimation in a fixed, WLAN and 4G/LTE network. We have proposed a unique packet train structure, an optimal rate adjustment algorithm, and a modified excursion detection algorithm to identify the ABW with higher accuracy, less convergence time, and less overhead. NEXT-V2 is compared with other existing ABW estimation tools in a simulation and real testbed to prove its algorithmic strength. From the real testbed results, we can see that 90% of the cases NEXT-V2 reports a less than 10% error. On the other hand, NEXT and PathChirp reports a less than 10% error for 70% and 20% of the cases respectively. Intrusiveness of NEXT-V2 is reduced by 50% as compared to that of PathChirp. From experiments on a 4G/LTE network, a few conclusions can be drawn. First, current bandwidth estimation tools are significantly impacted by wireless network conditions, such as contention from other traffic and rate adaptation. This yields inaccurate estimates, high and varying convergence times, and intrusiveness. Thus, current tools are generally impractical for applications such as streaming multimedia that require fast, accurate, and non-intrusive bandwidth estimations even when the last hop is over a WLAN. Second, the experiments conducted and results achieved on a commercial 4G/LTE network show the ability of NEXT-V2 to make quick and less intrusive ABW estimations, with higher accuracy. A less than 15% error is reported in case of down-link ABW estimation for 80% of the cases and a less than 20% error is reported in case of up-link ABW measurement for 70% of the cases. Comparison of ABW estimations with FTP throughput measurements on Android OS is carried out using various real-time cross traffic. This measurement tool uses minimal power and network resources making it possible to conduct multiple test sessions. It provides rich data sets with ABW estimations with associated geo-location values. The ideal tool would be one that provides accurate estimations, less overhead, quick response time, and 100% reliability, whereas there is no mandatory requirement for the ideal tool in all scenarios. Tool selection is based on the application and the network environment. REFERENCES [1] V. J. Ribeiro, R. H. Riedi, R. G. Baraniuk, J. Navratil, and L. Cottrell, “Pathchirp: Efficient available bandwidth estimation for network paths,” in Passive and Active Measurement Workshop, 2003. [2] M. Li, C. Mark, and K. Robert, “Wbest: A bandwidth estimation tool for IEEE 802.11 wireless networks,” in 33rd IEEE Conference on Local Computer Networks, 2008. LCN 2008., Oct 2008, pp. 374–381. [3] M.A. Alzate, J.C. Pagan, N.M. Pena, and M.A. Labrador, “End-to- end bandwidth and available bandwidth estimation in multi-hop IEEE 802.11b ad hoc networks,” in 42nd Annual Conference on Information Sciences and Systems, 2008. CISS 2008., March 2008, pp. 659–664. [4] P. Papageorge, J. McCann, and M. Hicks, “Passive aggressive measure- ment with mgrp,” SIGCOMM Comput. Commun. Rev., vol. 39, no. 4, pp. 279–290, Aug. 2009. [5] M. Jain and C. Dovrolis, “Ten fallacies and pitfalls on end-to-end available bandwidth estimation,” in Proceedings of the 4th ACM SIGCOMM Conference on Internet Measurement, New York, NY, USA, 2004, IMC ’04, pp. 272–277. [6] C. D. Guerrero and M. A. Labrador, “On the applicability of available bandwidth estimation techniques and tools.,” Computer Communica- tions, vol. 33, no. 1, pp. 11–22, 2010. www.redpel.com +917620593389 www.redpel.com +917620593389
  • 14. 1932-4537 (c) 2016 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information. This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TNSM.2016.2572212, IEEE Transactions on Network and Service Management IEEE TRANSACTIONS ON NETWORK AND SERVICE MANAGEMENT, VOL. , NO. , 2015 14 [7] X. Liu, K. Ravindran, and D. Loguinov, “Multi-hop probing asymptotics in available bandwidth estimation: Stochastic analysis,” in Proceedings of the 5th ACM SIGCOMM Conference on Internet Measurement, 2005, IMC ’05. [8] B. Mel, M. Bjrkman, and P. Gunningberg, “Regression-based available bandwidth measurements,” in International Symposium on Performance Evaluation of Computer and Telecommunications Systems, 2002. [9] A.K. Paul, A. Tachibana, and T. Hasegawa, “NEXT: New enhanced available bandwidth measurement technique, algorithm and evaluation,” in IEEE PIMRC, Washington DC, USA, 2014, pp. 443–447. [10] D. Gupta, D. Wu, P. Mohapatra, and C. N. Chuah, “Experimental comparison of bandwidth estimation tools for wireless mesh networks,” in INFOCOM 2009, IEEE, April 2009, pp. 2891–2895. [11] P. Zhao, X. Yang, C. Dong, S. Yang, S. Bhattarai, and W. Yu, “On an ef- ficient estimation of available bandwidth for ieee 802.11-based wireless networks,” in Global Telecommunications Conference (GLOBECOM 2011), 2011 IEEE, Dec 2011, pp. 1–5. [12] B. Melander, M. Bjorkman, and P. Gunningberg, “A new end-to-end probing and analysis method for estimating bandwidth bottlenecks.,” in IEEE GLOBECOM, 2000, pp. 415–420. [13] M. Jain and C. Dovrolis, “Pathload: A measurement tool for end- to-end available bandwidth,” in Proceedings of Passive and Active Measurements (PAM) Workshop, 2002, pp. 14–25. [14] J. Strauss, D. Katabi, and F. Kaashoek, “A measurement study of available bandwidth estimation tools,” in Proceedings of the 3rd ACM SIGCOMM Conference on Internet Measurement, New York, NY, USA, 2003, IMC ’03, pp. 39–44. [15] N. Hu and P. Steenkiste, “Evaluation and characterization of available bandwidth probing techniques.,” IEEE Journal on Selected Areas in Communications, vol. 21, no. 6, pp. 879–894, 2003. [16] “The Network Simulator NS-2,” http://www.isi.edu/nsnam/ns/. [17] A. Shriram and J. Kaur, “Empirical evaluation of techniques for measur- ing available bandwidth,” in INFOCOM 2007. 26th IEEE International Conference on Computer Communications. IEEE, 2007, pp. 2162–2170. [18] “sflow, version 5.,” http://www.sflow.org/sflow version 5.txt. [19] C. Yu, C. Lumezanu, Y. Zhang, V. Singh, G. Jiang, and H.V. Mad- hyastha, “Flowsense: Monitoring network utilization with zero mea- surement cost,” in Proceedings of the 14th International Conference on Passive and Active Measurement, Berlin, Heidelberg, 2013, PAM’13, pp. 31–41, Springer-Verlag. [20] “High frequency sflow v5 counter sampling,” ftp://ftp.netperf.org/papers/high freq sflow/hf sflow counters.pdf. [21] H. Wang, K.S. Lee, E. Li, C.L. Lim, A. Tang, and H. Weather- spoon, “Timing is everything: Accurate, minimum overhead, available bandwidth estimation in high-speed wired networks,” in Proceedings of the 2014 Conference on Internet Measurement Conference, New York, NY, USA, 2014, IMC ’14, pp. 407–420, ACM. [22] S. Joel and B. Paul, “An active measurement system for shared environments,” in Proceedings of the 7th ACM SIGCOMM Conference on Internet Measurement, New York, NY, USA, 2007, IMC ’07, pp. 303–314, ACM. [23] S. Joel, B. Paul, and C. Mark, “Router primitives for programmable active measurement,” in Proceedings of the 2Nd ACM SIGCOMM Work- shop on Programmable Routers for Extensible Services of Tomorrow, New York, NY, USA, 2009, PRESTO ’09, pp. 13–18, ACM. [24] S. Shah, K. Chen, and K. Nahrstedt, “Available bandwidth estimation in IEEE 802.11-based wireless networks,” in First ISMA/CAIDA Workshop on Bandwidth Estimation (BEst), San Diego, CA, USA, December 2003. [25] H.K. Lee, V. Hall, K.H. Yum, K. Kim, and E.J. Kim, “Bandwidth estimation in wireless LANS for multimedia streaming services,” in IEEE International Conference on Multimedia and Expo, 2006, July 2006, pp. 1181–1184. [26] R. Kapoor, L. Chen, L. Lao, M. Gerla, and M. Y. Sanadidi, “Capprobe: A simple and accurate capacity estimation technique,” SIGCOMM Comput. Commun. Rev., vol. 34, no. 4, pp. 67–78, Aug. 2004. [27] K. Lakshminarayanan, V.N. Padmanabhan, and J. Padhye, “Bandwidth estimation in broadband access networks,” in Proceedings of the 4th ACM SIGCOMM Conference on Internet Measurement, New York, NY, USA, 2004, IMC ’04, pp. 314–321, ACM. [28] A. Johnsson, B. Melander, and M. Bjorkman, “Bandwidth measurement in wireless networks,” in Mediterranean Ad Hoc Networking Workshop, Porquerolles, France, June 2005. [29] A. Shriram et al., “Comparison of public end-to-end bandwidth estimation tools on high-speed links,” in Passive and Active Network Measurement Workshop (PAM), Boston, MA, Mar 2005, vol. 3431, pp. 306–320, PAM 2005. [30] J. Huang, F. Qian, Y. Guo, Y. Zhou, Q. Xu, Z. M. Mao, S. Sen, and O. Spatscheck, “An in-depth study of LTE: effect of network protocol and application behavior on performance,” in Proceedings of the ACM SIGCOMM, New York, USA, 2013, pp. 363–374. [31] “Tools for bandwidth estimation,” http://www.icir.org/models/tools.html. [32] A. Adas, “Traffic models in broadband networks,” Comm. Mag., vol. 35, no. 7, pp. 82–89, July 1997. [33] A.M. Mohammed and A.F. Agamy, “A survey on the common network traffic sources models,” IJCN, vol. 3, no. 2, pp. 103–115, 2011. [34] “The IXIA Traffic Generator,” http://www.ixiacom.com/. [35] A. Shriram, M. Murray, Y. Hyun, N. Brownlee, A. Broido, M. Fomenkov, and k. claffy, “Comparison of public end-to-end bandwidth estimation tools on high-speed links,” in Proceedings of the 6th International Conference on Passive and Active Network Measure- ment, Berlin, Heidelberg, 2005, PAM’05, pp. 306–320, Springer-Verlag. [36] S. Ekelin, M. Nilsson, E. Hartikainen, A. Johnsson, J.-E. Mangs, B. Melander, and M. Bjorkman, “Real-time measurement of end-to- end available bandwidth using kalman filtering,” in Network Operations and Management Symposium, 2006. NOMS 2006. 10th IEEE/IFIP, April 2006, pp. 73–84. [37] M. Carbone and L. Rizzo, “Dummynet revisited,” SIGCOMM Comput. Commun. Rev., vol. 40, no. 2, pp. 12–20, Apr. 2010. [38] “Xcal Speedtest,” https://play.google.com/store/apps. [39] “The network simulator ns-3,” https://www.nsnam.org. [40] NGMN Alliance, “Guidelines for lte backhaul traffic estimation[white paper],” 2011. Anup Kumar Paul received a B.Sc.(hons), Masters degree in information and communication engineer- ing from the University of Rajshahi, Bangladesh, and a Ph.D. degree in global information and telecom- munication studies from Waseda University, Tokyo, Japan, in 2004, 2006, and 2013 respectively. He is a research engineer at KDDI R&D Laboratories Inc., Japan. He joined the KDDI R&D Lab, Japan, in 2013. Since then, he has been actively involved in research and development activities in the field of high-performance transport protocols, network measurement and traffic management in 4G/LTE mobile networks. He is a member of IEEE. Atsuo Tachibana received B.E. and M.E. degrees from Osaka University, Japan in 2000 and 2002, respectively, and received his PhD in Information Engineering from the Graduate School of Computer Science and Systems Engineering, Kyushu Institute of Technology, Japan in 2012. His research interests include issues related to network measurement and traffic management in wired and wireless networks. Currently, he is a research manager at KDDI R&D Laboratories Inc. Teruyuki Hasegawa received B.E. and M.E. de- grees in electrical engineering from Kyoto Univer- sity in 1991 and 1993 respectively, and a Ph.D degree in information science and technology from the University of Tokyo in 2008. Since joining KDD (now KDDI) in 1993, he has been working in the field of high-speed communication protocols, multi- cast systems, and future Internet. He is currently the senior manager of the IP Communication Quality Lab. at KDDI R&D Laboratories, Inc. He received the Meritorious Award on Radio of ARIB in 2003. He is a member of IEICE and IPSJ. www.redpel.com +917620593389 www.redpel.com +917620593389