# Lossless and High-Throughput Congestion Control in Satellite-Based Cloud Platforms +
## 3 Integrated System and Algorithm Design
### Data Flow Scheduling Model
According to the Karush-Kuhn-Tucker (KKT) [38] conditions, the necessary conditions for an optimal solution are given by  
\[ \begin{split}\frac{\partial L(x_{1},\ldots,x_{n},\lambda)}{ \partial x_{i}}=U_{i}^{\prime}(x_{i})+K\frac{d_{i}(t)}{d(t)M_{i}}-\lambda=0 \\ \text{s.t.}\sum_{i}x_{i}\leq C,\;\lambda\geq 0\end{split}  \tag{39}\]  
\[\lambda\Bigg{(}C-\sum_{i}x_{i}\Bigg{)}=0 \tag{40}\]  
Based on Equation (39), it follows that  
\[U_{1}^{\prime}(x_{1})+K\frac{d_{1}(t)}{d(t)M_{1}}=U_{2}^{\prime}(x_{2})+K \frac{d_{2}(t)}{d(t)M_{2}}=\cdots=U_{n}^{\prime}(x_{n})+K\frac{d_{n}(t)}{d(t) M_{n}} \tag{41}\]  
To select an appropriate value for the \(K\), we set that \(U_{i}^{\prime}(x_{i})=\frac{n}{C}=K\frac{d_{i}(t)}{d(t)M_{i}}=\frac{K}{\sqrt{n }\times 0.1\mu_{i}}\), and then the following can be deduced: \(K=\sqrt{n}\times 0.1\mu_{i}\log(C/n)\). Considering the congested link environment, the optimal transmission rates for multiple data flows are  
\[ \begin{cases}U_{1}^{\prime}(x_{1})+K\frac{d_{1}(t)}{d(t)M_{1}}=U_{2}^{\prime} (x_{2})+K\frac{d_{2}(t)}{d(t)M_{2}}=\cdots=U_{n}^{\prime}(x_{n})+K\frac{d_{n}( t)}{d(t)M_{n}}\\ \sum_{i}x_{i}=C\\ x_{i}\geq 0\end{cases}  \tag{42}\]  
in which \(U_{i}(x_{i})=\log x_{i}\). We let \(S_{i}=K\frac{d_{i}(t)}{d(t)M_{i}}\), and then we can derive the relationship between the transmission rates of data flows that achieves the optimal solution:  
\[\frac{1}{x_{1}}+S_{1}=\frac{1}{x_{2}}+S_{2}=\cdots=\frac{1}{x_{n}}+S_{n} \tag{43}\]Next, we prove that under constraint \(\sum_{i}x_{i}=C\), there exists a unique set of the optimal solution \((x_{1},x_{2},\ldots,x_{n})\). We define that \(1/x_{1}+S_{1}=1/x_{2}+S_{2}=\cdots=1/x_{n}+S_{n}=P\). By substituting this setting into Equation (42), we can obtain  
\[\sum_{i=1}^{n}\frac{1}{P-S_{i}}=C \tag{44}\]  
where \(P>S_{i},\forall i\in[1,n]\). Let \(P_{0}=\max\{S_{1},S_{2},\ldots,S_{n}\}\). It follows that \(P>P_{0}\). The function \(\sum_{i=1}^{n}\frac{1}{P-S_{i}}\) is strictly decreasing with respect to \(P\), as each term \(\frac{1}{P-S_{i}}\) is positive and monotonically decreasing. As \(P\to\infty\), the sum approaches zero. Furthermore, when \(P=P_{0}+\frac{n}{C}\), we have  
\[\sum_{i=1}^{n}\frac{1}{P-S_{i}}=\sum_{i=1}^{n}\frac{1}{P_{0}+\frac{n}{C}-S_{i} }\leq\sum_{i=1}^{n}\frac{1}{\frac{n}{C}}=C \tag{45}\]  
This ensures that the function \(\sum_{i=1}^{n}\frac{1}{P-S_{i}}\) is continuous on the interval \((P_{0},\infty)\), strictly decreasing, and ranges from so to 0. Therefore, by the intermediate value theorem, there exists a unique \(P\) such that \(\sum_{i=1}^{n}\frac{1}{P-S_{i}}=C\). Therefore, it can be concluded that there exists a unique optimal solution \((x_{1},x_{2},\ldots,x_{n})\). This completes the proof of the uniqueness of the optimal transmission rate allocation \((x_{1},x_{2},\ldots,x_{n})\) for multiple data flows. In simulation experiments and practical deployments, by inputting actual parameter values, we can efficiently compute the numerical solutions for \((x_{1},x_{2},\ldots,x_{n})\). This approach offers a straightforward method for solving Equation (43). Consequently, the proposed method demonstrates low computational complexity during practical data flow scheduling operations. Our demonstration shows that the CCLF method enables optimal scheduling for multiple data flows. In the following section, we first describe the structure of the forwarding dispatch table. Subsequently, we provide an example to elaborate on the detailed scheduling of Data packet forwarding, ensuring swift delivery of critical data and appropriate bandwidth allocation for flows with identical priority.