In this section, we consider two possible thoughts to integrate channel bandwidth contributed by multiple independent interfaces for downloading files. One is a practical solution that is compatible with the existing FTP and represents achievable performance improvement.
The other is an ideal solution that represents the theoretical upper bound for performance improvement. First of all, we introduce the notations and models used in the following discussion.
3.1 Latency Preliminaries
Let X denote a random variable (abbreviated as RV) of the number of successes in a sequence of n independent and identical Bernoulli trials of success probability p. The probability mass function (abbreviated as pmf) of X = s for s = 0, 1, · · · , n follows the binomial distribution
with parameters n and p, denoted as fB(s; n, p), and is given by
The cumulative distribution function (abbreviated as cdf) of X can be given in terms of the regularized incomplete beta function
ta−1(1 − t)b−1dt (the incomplete beta function).
Readers can refer to [20] and [21] for details.
Let Y be an RV denote the number of failures in a series of Bernoulli trials of success probability p before s successes. The pmf of Y = r for r = 0, 1, 2, · · · follows the negative binomial distribution with parameters s and p, denoted as fN B(r; s, p), and is given by
Pr [Y = r] = fN B(r; s, p) =
µr + s − 1 r
¶
ps(1 − p)r.
The cdf of Y can be given in terms of the regularized incomplete beta function
Pr [Y ≤ x] = FN B(r; s, p) = Xbxc
i=0
fN B(i; s, p)
= Ip(s, r + 1) .
Readers can refer to [22] and [23] for details.
There is a simple relation between the negative binomial distribution and binomial dis-tribution. Let Ys be a RV following the negative binomial distribution with parameters s and p, and Xn be a RV following the binomial distribution with parameters n and p. We have
FN B(r; s, p) = 1 − FB(s − 1; r + s, p)
and
Pr [Ys ≤ r] = Pr [Xr+s ≥ s] .
In other words,
Pr [there are at most r failures before s successes]
= Pr [there are at least s successes after r + s trials] .
3.2 Real Latency Analysis
We assume there are K independent lossy channels between the sender and receiver. Consider there are totally N packets to be transmitted and all packets are of the same size. For k = 1, · · · , K, let Sk denote the number of packets that can be transmitted via the k-th
channel per second, and every packet transmitted via the k-th channel is independently with a success probability pk. So, Skpk is the expected transport capacity of the k-th channel.
Let Nk denote the number of packets to be transmitted via the k-th channel. The expected transmission duration of the k-th channel is SNk
kpk. Let Ti denote the transmission duration of the k-th channel. T = maxKk=1Ti is the transmission latency. Note that once a packet is added into to the buffer of a channel, it can’t be dequeued from the buffer.
Intuitively, if the bandwidth of each channel is fully utilized and all channels have the same transmission duration, the latency is minimized. So, we distribute packets to channels proportionally to their transport capacity such that all channels have the same expected transmission duration. Thus,
Nk = Skpk PK
i=1SipiN, (3.1)
and the CDF of the latency can be derived as follows
Pr [N packets can be transmitted in time T ]
= YK k=1
Pr [Nk packets can be transmitted via the k-th channel in time T ]
=
where FN B(·; s, p) is the CDF of the negative binomial distribution with parameters s and p, and FB(·; s, p) is the CDF of the binomial distribution with parameters s and p.
3.3 Ideal Latency Analysis
Although the expected transmission durations of all channels are the same, the real trans-mission durations are dynamic and different from channels to channels. Applying dynamic dispatching, we can further reduce the latency. In addition, applying the random linear network coding technique, we don’t need to distinguish packets are transmitted via which channels, and theoretically, the receiver only needs totally N coded packets to decode the original N native packets. In such a case, the bandwidth of the K channels can be really treated as one. For k = 1, 2, · · · , K, let Xk denote the number of packets received via the k-th channel. X =PK
i=1Xi is the total number of packets received via the K channels. Xk is an RV following the binomial distribution with parameter bT Skc and pk, and the PMF of X can be given by the convolution of the PMFs of X1, X2, · · · , XK. The CDF of the improved file transfer latency can be derived as follows
Pr [N packets can be received in time T ]
= Pr
Note that this ideal scenario optimizes file transfer latency.
3.4 Latency Simulation Result
A simple simulation is executed to verify the correctness of our analysis. Consider a file of 1.33MB is transferred and each data blocks is of 1400 bytes. Therefore, 1000 packets will be transmitted. There are three independent lossy channels between the file server and the portable device. The bandwidths of these channels are 1Mb/s, 1.2Mb/s, and 1Mb/s, respectively. Each packet can be successfully transmitted with the probability 0.9, 0.7, and 0.9, respectively. For simplicity, we assume the feedback is perfect. In other words, there is no cost for acknowledgement and the result is known immediately.
First, Eq. (3.1) is applied to distribute packets among channels. This heuristic is denoted as H1 and will be implemented in Section 4. Next, with the help of such as network coding, 1000 packets in total received by the receiver is enough to recover the file. This heuristic is denoted as H2. A protocol will be designed based on this heuristic in Section 4.3. In Fig 3.1, the green curve with cross marks is the CDF of the latency of H1, and the blue curve with triangle marks is the theoretical CDF given by Eq. (3.2); the black curve with circle marks is the CDF of the latency of H2, and the red curve with square marks is the theoretical CDF given by Eq. (3.3). The simulation outcomes agree with the analytical results. We can see latency can be reduced by adaptively packet dispatching.
0 0.2 0.4 0.6 0.8 1 0
0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
%
H1−Thm H1−Sim H2− Thm H2− Sim
Figure 3.1: CDF of latency for 1000 packets without consider ACK.