## 3 Analytic Modeling
### Understanding Delay Balancing  
In light of the above discussion, we now formulate an optimization problem and explain the challenges in solving it. Our aim is to design a low-delay MPTCP scheduler that is aware of (i) congestion windows across all links and exploit (ii) the impact of MAC/PHY fluctuations on the windows transmission time. Let \(\iota=1,2,\ldots,n\) be the number of available links and let \(P_{m}^{t}\) and \(D^{i}\) denote the (ergodic) inter-packet delay and propagation delay, respectively, experienced by a packet \(m\) transmitted over link \(\iota\), where \(P_{m}^{t}\) after each scheduling round can be estimated from Algorithm 1 as \(\frac{\text{line size}}{\text{line}P_{m}}\). Given a total of \(W\) packets to be transmitted across the associated links, let \(w_{i}\) denote the number of packets (congestion window) sent over link \(\iota\), with \(\sum_{t}w_{t}=W\), and \(\boldsymbol{w}=[w_{1},w_{2},\ldots,w_{n}]\). The total transmission time of \(W\) packets (\(W\) is the aggregate congestion window) is then given by  
\[T(\boldsymbol{w})=\max_{\iota\in\{1,2,\ldots,n\}}\Big{(}D_{\iota}+\sum_{m=1}^{ w_{i}}P_{m}^{t}\Big{)}. \tag{5}\]Observe in (5) that the challenge in designing an MPTCP scheduling algorithm for bulk file transfer is, in fact, that the per-packet delays \(P_{m}^{t}\) are uncertain and variable, and so is the total delay \(P^{t}(w_{t})=\sum_{m=1}^{w_{t}}P_{m}^{t}\). One could attempt to compute the distribution of \(T(\mathbf{w})\) for all links, but this begins to be computationally expensive (and incurs long delay) with increasing \(W\) (so it does not work effectively for real-time packet transmissions). We also lack details of the distribution of per-packet delays on \(802.11 ay\) links at the TRA layer. Next, we observe the following approximate approach. For \(t\in\{1,2,\ldots,n\}\), in our framework, the \(D_{t}+\sum_{m}P_{m}^{t}\) are assumed as independent, but not identically distributed. In fact, it is precisely the feature that we want to exploit as the transmission times along different links stem from different distributions. Then, by using (5), we have  
\[\mathbf{Pr}\Big{(}\max_{t}\big{(}D_{t}+P^{t}(w_{t})\big{)}>\tau \Big{)} =1-\mathbf{Pr}\Big{(}\max_{t}\big{(}D_{t}+P^{t}(w_{t})\big{)}<\tau \Big{)} \tag{6}\] \[=1-\prod_{t}\mathbf{Pr}\Big{(}P^{t}(w_{t})<(\tau-D_{t})\Big{)}. \tag{7}\]  
Unlike other models, we relax the independence assumption between packets on a link (there will typically be dependence), instead assuming independence between packet delays on distinct links. To approximate \(P^{t}(w_{t})\) in (7), we select the variability parameters \(u_{t},\ u_{t}\geq 0\) so that  
\[P^{t}(w_{t}) \approx \gamma_{t}w_{t}+u_{t}\sqrt{w_{t}}N, \tag{8}\]  
where \(\gamma_{t}=\mathbb{E}[P_{m}^{t}]\geq 0\) and \(N\) is a standard normal random variable. By considering the delays, \(P_{m}^{t}\), as Normal random variables, and we can compute the variability parameter, \(u_{t}\), as  
\[u_{t}=\sum_{m=1}^{w_{t}}Var[P_{m}^{t}]+2\sum_{m<n}cov[P_{m}^{t},P_{m}^{t}] \tag{9}\]  
where the second term in is a sum over \(cov[P_{m}^{t},P_{\hat{m}}^{t}]\) such that \(m\) and \(\hat{m}\) is a pair selected without repetitions out of \(1,2,3,\ldots w_{t}\), where \(m<\hat{m}\). As a result, we solve (7), using \(\Phi\) as the standard normal cumulative distribution function,  
\[\mathbf{Pr}\Big{(}\max_{t}\big{(}D_{t}+P^{t}(w_{t})\big{)}>\tau \Big{)}\approx 1-\prod_{t}\Phi\Big{(}\frac{\tau-D_{t}-\gamma_{t}w_{t}}{u_{t} \sqrt{w_{t}}}\Big{)} \tag{10}\]  
The mean \(\gamma_{t}\) and the variability parameter \(\mu_{t}\) on link \(t\) can be approximated by computing the average, variance, and covariance of all previous 200 packets (a reasonable upper bound on the current size of web objects) by observing the time between arrivals of acknowledgments from the multipath scheduling source.