# WFO: Cloud-Edge Cooperative Data Offloading Strategy Akin to Water Flow
## 3 System Model and Problem Statement
### Delay Model  
We assume that the network state is relatively static during data forwarding. The bandwidth, transmission delay, and forwarding delay do not change dramatically.  
**Data delay**: The delay for a node to receive all data. Therefore, for an edge node, the delay to receive all the data from cloud can be expressed as:  
\[T_{i}=\frac{S}{B_{i,C}} \tag{1}\]  
If part of the data of node \(i\) comes from the cloud and the other part comes from node \(j\), then the delay to receive all the data can be expressed as:  
\[T_{i}=\frac{S}{B_{i,C}+B_{i,j}} \tag{2}\]  
If all the data received by node \(i\) is forwarded by node \(j\), then the data delay is calculated as:  
\[T_{i}=\frac{S}{min(B_{j,C},B_{i,j})} \tag{3}\]  
\begin{table}
\begin{tabular}{l l} \hline \hline
**Notations** & **Definition** \\ \hline \hline
**System Model** \\ \hline \(C\) & \(\triangleq(S,\mathcal{B})\), a cloud \\ \(\gamma\) & The number of ECs that obtain data directly from the cloud. \\ \(\mathcal{B}\) & The bandwidth of the cloud. \\ \(\mathcal{L}_{k}\) & The \(k\)th data forwarding link. \\ \(\mathcal{N}\) & The number of ECs. \\ \(\mathcal{L}^{\prime}_{k}\) & The \(k\)th data forwarding link that has been prioritized. \\ \(S\) & The amount of data needed to be offloaded in the cloud. \\ \(n_{k}\) & The number of nodes in \(\mathcal{L}_{k}\). \\ \(i,j\) & \(\in[0,n]\), the \(i\)th and \(j\)th ECs. \\ \(a_{i,j}\) & \(\in\{0,1\}\) represents the priority between nodes \(i\) and \(j\). If the priority of \(i\) is greater than that of \(j\), \(\alpha=1\); otherwise, \(\alpha=0\). \\ \(\widetilde{a}_{i,j}\) & The transmission delay from the \(i\)th node to the \(j\)th node. \\ \(P_{i}\) & \(\in[0,\infty)\), the priority of node \(i\) in \(\mathcal{L}_{k}\). \\ \(\widehat{\tau}_{i}\) & The forwarding delay of the \(i\)th node. \\ \(T_{\mathcal{L}_{i}}\) & The maximum data delay of \(\mathcal{L}_{k}\). \\ \(\tau^{\prime}\) & The tolerate delay. \\ \(\zeta^{\prime}\) & The \(\zeta\)th node in \(\mathcal{L}^{\prime}_{k}\). \\ \(B_{i,C}\) & The bandwidth from node \(i\) to \(C\). \\ \(t_{\zeta}\) & The data delay of the \(\zeta\)th node receiving all data. \\ \(B_{i,j}\) & The bandwidth from node \(i\) to \(j\). \\ \(t^{\prime}_{\zeta^{\prime}}\) & The duration for the high-priority node to forward data to the \(\zeta\)th node. \\ \(t^{\prime}_{\zeta^{\prime}}\) & The duration for the \(\zeta\)th node to obtain data through cooperative forwarding. \\ \(V^{\zeta}_{\zeta}\) & The amount of data forwarded to the \(\zeta\)th node through cooperative forwarding. \\ \(V^{\zeta^{\prime}}_{\zeta}\) & The amount of data forwarded to the \(\zeta\)th node through the high-priority node. \\ \(\theta,\lambda,\theta,\epsilon\) & The auxiliary parameters used in the proof. \\ \(V^{\prime}_{\rho,\zeta}\) & The amount of data that node \(\rho\) forwards to node \(\zeta\). \\ \hline \hline \end{tabular}
\end{table}
Table 2: Summary of Notations and Definitions.  
**Link delay**: The delay of data stream forwarding from the cloud to an edge node through other nodes. Thereby, the link delay can thus be calculated as:  
\[\tau=\sum_{i,j\in\mathbb{C}\cup\mathcal{L}}\widetilde{\tau}_{i,j}+\sum_{i\in \mathcal{L}_{k}}\widetilde{\tau}_{i} \tag{4}\]  
where \(\mathcal{L}\) represents a data forwarding link.