Quality of Service-Constrained Online Routing in High-Throughput Satellites

Olivier Bélanger12, Olfa Ben Yahia12, Stéphane Martel3, Antoine Lesage-Landry12, Gunes Karabulut Kurt1 {olivier.belanger, olfa.ben-yahia, antoine.lesage-landry, gunes.kurt}@polymtl.ca, [email protected] 1Department of Electrical Engineering, Polytechnique Montréal, Montréal, Qc H3T 1J4 2GERAD, Montréal, Qc H3T 1N8 3MDA, Sainte-Anne-de-Bellevue, Qc H9X 3R2
Abstract

High-throughput satellites (HTSs) outpace traditional satellites due to their multi-beam transmission. The rise of low Earth orbit mega constellations amplifies HTS data rate demands to terabits/second with acceptable latency. This surge in data rate necessitates multiple modems, often exceeding single device capabilities. Consequently, satellites employ several processors, forming a complex packet-switch network. This can lead to potential internal congestion and challenges in adhering to strict quality of service (QoS) constraints. While significant research exists on constellation-level routing, a literature gap remains on the internal routing within a single HTS. The intricacy of this internal network architecture presents a significant challenge to achieve high data rates.

This paper introduces an online optimal flow allocation and scheduling method for HTSs. The problem is presented as a multi-commodity flow instance with different priority data streams. An initial full time horizon model is proposed as a benchmark. We apply a model predictive control (MPC) approach to enable adaptive routing based on current information and the forecast within the prediction time horizon while allowing for deviation of the latter. Importantly, MPC is inherently suited to handle uncertainty in incoming flows. Our approach minimizes packet loss by optimally and adaptively managing the priority queue schedulers and flow exchanges between satellite processing modules. Central to our method is a routing model focusing on optimal priority scheduling to enhance data rates and maintain QoS. The model’s stages are critically evaluated, and results are compared to traditional methods via numerical simulations. Through simulations, our method demonstrates performance nearly on par with the hindsight optimum, showcasing its efficiency and adaptability in addressing satellite communication challenges.

Index Terms:
High-throughput satellite, model predictive control, routing, scheduling, quality of service.

I Introduction

Satellites play an increasingly vital role in global communications [1], connecting vast and remote territories and bridging communication gaps in regions where deploying terrestrial infrastructure for both cellular and fiber optic networks remains challenging [2]. While remote areas have traditionally relied on satellites for communications and television broadcasting [3], in recent years, these services have expanded to include Internet connectivity [4]. This expansion underlines the immense potential and importance of satellite networks, especially when considering the growth of direct cell-to-satellite connectivity [5]. As numerous users with varied needs directly engage with satellite resources, the implementation of resilient and reliable quality of service (QoS) mechanisms becomes essential [6]. Prioritizing traffic, ensuring data delivery, and managing congestion become crucial in such scenarios.

With the growing reach and appeal of these services, there is a notable shift from traditional single-beam satellites to the more agile multi-beam high-throughput satellites (HTSs) [7]. The movement of Low Earth Orbit (LEO) satellites adds a layer of uncertainty, necessitating rapid adaptation in satellite network management. Unlike their predecessors, HTSs are engineered to handle high data rates, addressing the digital requirements of modern society [8]. As global demand for swift internet grows, the need for rapid and QoS-reliable HTSs intensifies. The intricacies of HTSs, coupled with their enhanced capabilities, necessitate specialized components for data management. A pivotal part of this internal architecture is the modem banks, as shown in [9, 10]. They act as the central processing units, ensuring efficient handling, routing, and distribution of the massive influx of data within the satellite system. The interconnections between modem banks bring forward new routing and load balancing challenges. Properly addressing these challenges is of high importance because it can significantly enhance data throughput and reduce latency. In the high-stakes realm of satellite communication, ensuring these efficiencies directly translates to improved user experience and service reliability.

With the global demand for high-quality communication, enhancing the QoS and expanding satellite accessibility to a broader user base is crucial. On the one hand, a large spectrum of research has explored satellite communication, with substantial literature dedicated to enhancing the performance of both traditional satellites and the more advanced HTSs, as well as the networks they create [11, 12, 13, 14]. On the other hand, load balancing strategies, indispensable for evenly distributing incoming data and maintaining peak performance, have gained attention in works like [15]. These strategies are crucial for ensuring that no single modem bank or processing unit is overwhelmed, leading to potential data losses or delays. Efficient load balancing allows for optimal resource utilization, minimizes response time, and prevents system overload. Its relevance to HTS networks, where uneven traffic could lead to significant bottlenecks and degrade QoS, is highlighted in studies such as  [16].

However, an important gap emerges when addressing internal routing and load balancing specifically tailored to HTSs. HTSs, given their capability to handle high data rates, inherently require specialized internal routing mechanisms to efficiently manage and distribute the incoming data. The variable and uncertain nature of these incoming flows introduces an additional layer of complexity to the routing challenges. The complexities arise particularly when interconnecting modem banks, amplifying the need for strong routing strategies. While many advancements have been made on the constellation-level (inter-satellite) front [17, 18], the challenges inherent to internal HTS routing remain comparatively overlooked. This paper seeks to address this gap, introducing innovative techniques to enhance the internal routing capabilities of HTSs and their overall performance.

Improving internal routing in HTSs not only promises more efficient satellite operations but can also catalyze broader socioeconomic advancements by connecting previously under-served and inaccessible communities in remote regions. This, in turn, can pave the way for greater economic opportunities, for example via improved access to information and education.

I-A Contribution

This research focuses on addressing the challenges associated with flow allocation and scheduling in HTSs within mega constellations. Our primary contribution lies in integrating model predictive control (MPC) associated with incoming data flows. By incorporating MPC, we can develop a predictive model that allows for online adjustments based on incoming data patterns, leading to optimized routing decisions. This integration aims to improve the overall efficiency and reliability of data transmission within the HTS system. We show numerically that the MPC method performs very close to the optimality set by the batch optimization with hindsight method, i.e., when all random information is revealed.

I-B Paper Organization

This paper is organized as follows: Section 2 presents the internal model we developed. In Section 3, we outline our proposed approaches based on MPC. Numerical results are presented in Section 4, and Section 5 offers a conclusion and suggests directions for future work.

II Problem Formulation

In an HTS, there are multiple processing units called modem banks. We consider a satellite equipped with M𝑀M\in\mathbb{N}italic_M ∈ blackboard_N modem banks, with each bank managing P𝑃P\in\mathbb{N}italic_P ∈ blackboard_N distinct priorities.

Queues play a crucial role in managing the flow of data packets. Each queue, associated with a specific priority within a modem bank, temporarily holds incoming data packets until they can be processed and routed. Complementing the role of the queues are the scheduler weights, wpmsuperscriptsubscript𝑤𝑝𝑚w_{p}^{m}italic_w start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT. They determine the fraction of packets of priority p{1,2,,P}𝑝12𝑃p\in\{1,2,...,P\}italic_p ∈ { 1 , 2 , … , italic_P } that are selected from each queue from module m{1,2,,M}𝑚12𝑀m\in\{1,2,...,M\}italic_m ∈ { 1 , 2 , … , italic_M } to be processed and subsequently transmitted. Traditionally, routing techniques relied on fixed weights, which often didn’t accommodate varying traffic demands and patterns effectively. By dynamically adjusting these weights, the satellite can adapt to the incoming flows and the current state of the queues.

We formulate the problem as a multi-commodity flow instance [19], where the data flows represent the commodities. In this context, the uplink beam serves as the source, and the sinks encompass both the downlink beam and lost packets. Figure 1 presents the simplified case where M=P=2𝑀𝑃2M=P=2italic_M = italic_P = 2. In Figure 1, the uplink beam is depicted as two distinct beams for clarity of representation. However, it’s essential to understand that these are virtual nodes. There is in reality a single uplink beam that contains all the different priorities. Additionally, Figure 2 represents an expanded view of the queuing processes within a given module m𝑚mitalic_m for a specific priority p𝑝pitalic_p. We consider the HTS internal problem over a time horizon T𝑇T\in\mathbb{N}italic_T ∈ blackboard_N. We discretize the horizon in time steps of duration Δt>0Δ𝑡0\Delta t>0roman_Δ italic_t > 0 and index them by t{1,2,,T}𝑡12𝑇t\in\{1,2,...,T\}italic_t ∈ { 1 , 2 , … , italic_T }.

Priority 1Priority 2Module 1Priority 1Priority 2Module 2Sink 1Sink 2f1in,1(t)subscriptsuperscript𝑓in11𝑡f^{\text{in},1}_{1}(t)italic_f start_POSTSUPERSCRIPT in , 1 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( italic_t ) f1in,2(t)subscriptsuperscript𝑓in21𝑡f^{\text{in},2}_{1}(t)italic_f start_POSTSUPERSCRIPT in , 2 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( italic_t ) f2in,1(t)subscriptsuperscript𝑓in12𝑡f^{\text{in},1}_{2}(t)italic_f start_POSTSUPERSCRIPT in , 1 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ( italic_t ) f2in,2(t)subscriptsuperscript𝑓in22𝑡f^{\text{in},2}_{2}(t)italic_f start_POSTSUPERSCRIPT in , 2 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ( italic_t ) f1out,1(t)subscriptsuperscript𝑓out11𝑡f^{\text{out},1}_{1}(t)italic_f start_POSTSUPERSCRIPT out , 1 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( italic_t ) f1out,2(t)subscriptsuperscript𝑓out21𝑡f^{\text{out},2}_{1}(t)italic_f start_POSTSUPERSCRIPT out , 2 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( italic_t ) f2out,1(t)subscriptsuperscript𝑓out12𝑡f^{\text{out},1}_{2}(t)italic_f start_POSTSUPERSCRIPT out , 1 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ( italic_t ) f2out,2(t)subscriptsuperscript𝑓out22𝑡f^{\text{out},2}_{2}(t)italic_f start_POSTSUPERSCRIPT out , 2 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ( italic_t ) F1subscript𝐹1F_{1}italic_F start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPTF2subscript𝐹2F_{2}italic_F start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT
Figure 1: HTS internal routing model for M=2𝑀2M=2italic_M = 2 and P=2𝑃2P=2italic_P = 2
fpin,m(t)superscriptsubscript𝑓𝑝in𝑚𝑡f_{p}^{\text{in},m}(t)italic_f start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT in , italic_m end_POSTSUPERSCRIPT ( italic_t )Qpm(t)superscriptsubscript𝑄𝑝𝑚𝑡Q_{p}^{m}(t)italic_Q start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT ( italic_t )fpout,m(t)superscriptsubscript𝑓𝑝out𝑚𝑡f_{p}^{\text{out},m}(t)italic_f start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT out , italic_m end_POSTSUPERSCRIPT ( italic_t )Qpin,m(t)superscriptsubscript𝑄𝑝in𝑚𝑡Q_{p}^{\text{in},m}(t)italic_Q start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT in , italic_m end_POSTSUPERSCRIPT ( italic_t )Qpout,m(t)superscriptsubscript𝑄𝑝out𝑚𝑡Q_{p}^{\text{out},m}(t)italic_Q start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT out , italic_m end_POSTSUPERSCRIPT ( italic_t )
Figure 2: HTS internal queuing model

II-A HTS Packet Management Model

The routing scheme of an HTS is characterized by several constraints, as detailed below.

At each time step t𝑡titalic_t, the net inflow fpin,m(t)+superscriptsubscript𝑓𝑝in𝑚𝑡superscriptf_{p}^{\text{in},m}(t)\in\mathbb{R}^{+}italic_f start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT in , italic_m end_POSTSUPERSCRIPT ( italic_t ) ∈ blackboard_R start_POSTSUPERSCRIPT + end_POSTSUPERSCRIPT and outflow fpout,m(t)+superscriptsubscript𝑓𝑝out𝑚𝑡superscriptf_{p}^{\text{out},m}(t)\in\mathbb{R}^{+}italic_f start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT out , italic_m end_POSTSUPERSCRIPT ( italic_t ) ∈ blackboard_R start_POSTSUPERSCRIPT + end_POSTSUPERSCRIPT of commodity p{1,2,,P}𝑝12𝑃p\in\{1,2,...,P\}italic_p ∈ { 1 , 2 , … , italic_P } at module m{1,2,,M}𝑚12𝑀m\in\{1,2,...,M\}italic_m ∈ { 1 , 2 , … , italic_M } are equilibrated by considering the queue’s inflow Qpin,m(t)+superscriptsubscript𝑄𝑝in𝑚𝑡superscriptQ_{p}^{\text{in},m}(t)\in\mathbb{R}^{+}italic_Q start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT in , italic_m end_POSTSUPERSCRIPT ( italic_t ) ∈ blackboard_R start_POSTSUPERSCRIPT + end_POSTSUPERSCRIPT and outflow Qpout,m(t)+superscriptsubscript𝑄𝑝out𝑚𝑡superscriptQ_{p}^{\text{out},m}(t)\in\mathbb{R}^{+}italic_Q start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT out , italic_m end_POSTSUPERSCRIPT ( italic_t ) ∈ blackboard_R start_POSTSUPERSCRIPT + end_POSTSUPERSCRIPT balance, ΔQpm(t)Δsuperscriptsubscript𝑄𝑝𝑚𝑡\Delta Q_{p}^{m}(t)\in\mathbb{R}roman_Δ italic_Q start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT ( italic_t ) ∈ blackboard_R, and the packet loss p(t)+subscript𝑝𝑡superscript{\mathcal{L}}_{p}(t)\in\mathbb{R}^{+}caligraphic_L start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT ( italic_t ) ∈ blackboard_R start_POSTSUPERSCRIPT + end_POSTSUPERSCRIPT:

fpin,m(t)fpout,m(t)ΔQpm(t)p(t)=0.superscriptsubscript𝑓𝑝in𝑚𝑡superscriptsubscript𝑓𝑝out𝑚𝑡Δsuperscriptsubscript𝑄𝑝𝑚𝑡subscript𝑝𝑡0f_{p}^{\text{in},m}(t)-f_{p}^{\text{out},m}(t)-\Delta Q_{p}^{m}(t)-{\mathcal{L% }}_{p}(t)=0.italic_f start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT in , italic_m end_POSTSUPERSCRIPT ( italic_t ) - italic_f start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT out , italic_m end_POSTSUPERSCRIPT ( italic_t ) - roman_Δ italic_Q start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT ( italic_t ) - caligraphic_L start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT ( italic_t ) = 0 . (1)

For every module, the scheduler weight at a time step t𝑡titalic_t represents the percentage of processed packets from queue of priority p𝑝pitalic_p:

0wpm(t)1.0superscriptsubscript𝑤𝑝𝑚𝑡10\leq w_{p}^{m}(t)\leq 1.0 ≤ italic_w start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT ( italic_t ) ≤ 1 . (2)

For every module, the scheduler weights wpm(t)superscriptsubscript𝑤𝑝𝑚𝑡w_{p}^{m}(t)italic_w start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT ( italic_t ) across all priorities p{1,2,,P}𝑝12𝑃p\in\{1,2,...,P\}italic_p ∈ { 1 , 2 , … , italic_P } must sum to 1:

p=1Pwpm(t)=1.superscriptsubscript𝑝1𝑃superscriptsubscript𝑤𝑝𝑚𝑡1\sum_{p=1}^{P}w_{p}^{m}(t)=1.∑ start_POSTSUBSCRIPT italic_p = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_P end_POSTSUPERSCRIPT italic_w start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT ( italic_t ) = 1 . (3)

To avoid high disruptions in the system, we introduce a ram** constraint. For a given module and priority, the weight of a scheduler at a time step t𝑡titalic_t is constrained by the maximum deviation from the previous time step:

wpm(t)wpm(t1)Δw¯.superscriptsubscript𝑤𝑝𝑚𝑡superscriptsubscript𝑤𝑝𝑚𝑡1¯Δ𝑤w_{p}^{m}(t)-w_{p}^{m}(t-1)\leq\overline{\Delta w}.italic_w start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT ( italic_t ) - italic_w start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT ( italic_t - 1 ) ≤ over¯ start_ARG roman_Δ italic_w end_ARG . (4)

At each time step t𝑡titalic_t, the outflow fpout,m(t)superscriptsubscript𝑓𝑝out𝑚𝑡f_{p}^{\text{out},m}(t)italic_f start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT out , italic_m end_POSTSUPERSCRIPT ( italic_t ) from module m𝑚mitalic_m represents a fraction of packets processed by that module. It is constrained by the scheduler weights normalized over their respective operation periods, Δs>0Δ𝑠0\Delta s>0roman_Δ italic_s > 0:

fpout,m(t)wpm(t)Δs,superscriptsubscript𝑓𝑝out𝑚𝑡superscriptsubscript𝑤𝑝𝑚𝑡Δ𝑠f_{p}^{\text{out},m}(t)\leq\frac{w_{p}^{m}(t)}{\Delta s},italic_f start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT out , italic_m end_POSTSUPERSCRIPT ( italic_t ) ≤ divide start_ARG italic_w start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT ( italic_t ) end_ARG start_ARG roman_Δ italic_s end_ARG , (5)

where ΔsΔ𝑠\Delta sroman_Δ italic_s is a parameter that depends on the HTS. The cumulative incoming flow for a specific priority p𝑝pitalic_p, fpin(t)superscriptsubscript𝑓𝑝in𝑡f_{p}^{\text{in}}(t)italic_f start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT in end_POSTSUPERSCRIPT ( italic_t ), for each module m{1,2,,M}𝑚12𝑀m\in\{1,2,...,M\}italic_m ∈ { 1 , 2 , … , italic_M } matches the observed demand Fp(t)+subscript𝐹𝑝𝑡superscriptF_{p}(t)\in\mathbb{R}^{+}italic_F start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT ( italic_t ) ∈ blackboard_R start_POSTSUPERSCRIPT + end_POSTSUPERSCRIPT:

m=1Mfpin(t)=Fp(t).superscriptsubscript𝑚1𝑀superscriptsubscript𝑓𝑝in𝑡subscript𝐹𝑝𝑡\sum_{m=1}^{M}f_{p}^{\text{in}}(t)=F_{p}(t).∑ start_POSTSUBSCRIPT italic_m = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_M end_POSTSUPERSCRIPT italic_f start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT in end_POSTSUPERSCRIPT ( italic_t ) = italic_F start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT ( italic_t ) . (6)

Let Qpm(t)superscriptsubscript𝑄𝑝𝑚𝑡Q_{p}^{m}(t)italic_Q start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT ( italic_t ) be the occupancy of a specific queue at time t𝑡titalic_t. The occupancy at the next time step, Qpm(t+1)superscriptsubscript𝑄𝑝𝑚𝑡1Q_{p}^{m}(t+1)italic_Q start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT ( italic_t + 1 ), is determined by its current occupancy Qpm(t)superscriptsubscript𝑄𝑝𝑚𝑡Q_{p}^{m}(t)italic_Q start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT ( italic_t ), to which the net incoming (outgoing) packet balance ΔQpm(t)Δsuperscriptsubscript𝑄𝑝𝑚𝑡\Delta Q_{p}^{m}(t)roman_Δ italic_Q start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT ( italic_t ) is added:

Qpm(t+1)=Qpm(t)+ΔQpm(t).superscriptsubscript𝑄𝑝𝑚𝑡1superscriptsubscript𝑄𝑝𝑚𝑡Δsuperscriptsubscript𝑄𝑝𝑚𝑡Q_{p}^{m}(t+1)=Q_{p}^{m}(t)+\Delta Q_{p}^{m}(t).italic_Q start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT ( italic_t + 1 ) = italic_Q start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT ( italic_t ) + roman_Δ italic_Q start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT ( italic_t ) . (7)

Each queue starts and concludes with a specific, predefined occupancy Q0+subscript𝑄0superscriptQ_{0}\in\mathbb{R}^{+}italic_Q start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT ∈ blackboard_R start_POSTSUPERSCRIPT + end_POSTSUPERSCRIPT:

Qpm(0)=Qpm(T1)=Q0.superscriptsubscript𝑄𝑝𝑚0superscriptsubscript𝑄𝑝𝑚𝑇1subscript𝑄0Q_{p}^{m}(0)=Q_{p}^{m}(T-1)=Q_{0}.italic_Q start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT ( 0 ) = italic_Q start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT ( italic_T - 1 ) = italic_Q start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT . (8)

Every queue has a total capacity bounded by Q¯+¯𝑄superscript\overline{Q}\in\mathbb{R}^{+}over¯ start_ARG italic_Q end_ARG ∈ blackboard_R start_POSTSUPERSCRIPT + end_POSTSUPERSCRIPT, induced by the hardware limitations of the modem banks in satellite communication subsystems:

p=1PQpm(t)Q¯.superscriptsubscript𝑝1𝑃superscriptsubscript𝑄𝑝𝑚𝑡¯𝑄\sum_{p=1}^{P}Q_{p}^{m}(t)\leq\overline{Q}.∑ start_POSTSUBSCRIPT italic_p = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_P end_POSTSUPERSCRIPT italic_Q start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT ( italic_t ) ≤ over¯ start_ARG italic_Q end_ARG . (9)

All output links have a maximum capacity C¯+¯𝐶superscript\overline{C}\in\mathbb{R}^{+}over¯ start_ARG italic_C end_ARG ∈ blackboard_R start_POSTSUPERSCRIPT + end_POSTSUPERSCRIPT, representing the transmission bandwidth constraints of the satellite communication channels:

fpout,m(t)C¯.superscriptsubscript𝑓𝑝out𝑚𝑡¯𝐶f_{p}^{\text{out},m}(t)\leq\overline{C}.italic_f start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT out , italic_m end_POSTSUPERSCRIPT ( italic_t ) ≤ over¯ start_ARG italic_C end_ARG . (10)

Let Fp(t)subscript𝐹𝑝𝑡F_{p}(t)italic_F start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT ( italic_t ) be the stochastic process modelling the incoming flow of a given priority p𝑝pitalic_p. We assume that Fp(t)subscript𝐹𝑝𝑡F_{p}(t)italic_F start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT ( italic_t ) is distributed according to a Poisson process with an average arrival rate of λpsubscript𝜆𝑝\lambda_{p}italic_λ start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT packets per time step  [20].

Let kpsubscript𝑘𝑝k_{p}italic_k start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT be the cost incurred when losing a packet of priority p{1,2,,P}𝑝12𝑃p\in\{1,2,...,P\}italic_p ∈ { 1 , 2 , … , italic_P }. In the batch optimization problem, informed by Fp(t)subscript𝐹𝑝𝑡F_{p}(t)italic_F start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT ( italic_t ) in hindsight, we seek to minimize the total packet loss cost over all priorities and time steps:

minwpm(t),fpin,m(t)t=1Tp=1Pp(t)kpsubscriptsuperscriptsubscript𝑤𝑝𝑚𝑡superscriptsubscript𝑓𝑝in𝑚𝑡superscriptsubscript𝑡1𝑇superscriptsubscript𝑝1𝑃subscript𝑝𝑡subscript𝑘𝑝\displaystyle\min_{w_{p}^{m}(t),f_{p}^{\text{in},m}(t)}\sum_{t=1}^{T}\sum_{p=1% }^{P}{\mathcal{L}}_{p}(t)k_{p}roman_min start_POSTSUBSCRIPT italic_w start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT ( italic_t ) , italic_f start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT in , italic_m end_POSTSUPERSCRIPT ( italic_t ) end_POSTSUBSCRIPT ∑ start_POSTSUBSCRIPT italic_t = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT ∑ start_POSTSUBSCRIPT italic_p = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_P end_POSTSUPERSCRIPT caligraphic_L start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT ( italic_t ) italic_k start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT (11)
subject to (1)(10).subject to 110\displaystyle\text{subject to }(\ref{eq:constraint1})-(\ref{eq:constraint10}).subject to ( ) - ( ) .

In (11), p(t)subscript𝑝𝑡{\mathcal{L}}_{p}(t)caligraphic_L start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT ( italic_t ) denotes the total number of lost packets for priority p𝑝pitalic_p across all modules at time t𝑡titalic_t. The incurred cost when a packet of priority p𝑝pitalic_p is lost is kpsubscript𝑘𝑝k_{p}italic_k start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT, with higher priorities corresponding to greater costs. The total cost, which we seek to minimize, is the aggregated sum of these costs over all time steps and priorities.

III Proposed Approaches

In this section, we present the proposed approaches, starting with batch optimization, proceeding to MPC, and concluding with alternative methods.

III-A Batch Optimization

In addressing the task of optimizing flow allocation in HTSs, our initial approach is batch optimization with hindsight information on the incoming flow. This method processes data from the entire time horizon to derive an optimal solution [21]. This means that the incoming flows are predetermined for the whole horizon and processed as a single batch, i.e., there is no underlying uncertainty.

This approach offers several advantages. Access to the complete data set for the full time horizon allows for the generation of the optimal solution by accounting for future information. This broader perspective enables the system to anticipate and adjust for potential bottlenecks or surges in demand. It ensures that the derived solution optimizes flow allocation throughout the entire time horizon.

However, the comprehensive nature of this method, while it is a strength, can also be viewed as a limitation. Requiring complete information means that the system might fail in dynamic environments with sudden demand shifts. In these circumstances, batch optimization lacks the flexibility to respond to these changes. The method can be computationally demanding, especially when faced with longer horizons or larger data sets. This may result in longer processing times, which is unsuitable for real-time applications, especially given the restricted on-board computing capacity of satellites. As a result, we will consider batch optimization with hindsight as the gold standard against which we measure our results.

Within the realm of HTSs, the batch optimization framework can certainly be of use for stable, predictable scenarios. However, considering the dynamic environment of satellite communication, mostly characterized by variable demands in our study, an adaptive strategy might be essential. This leads to the exploration of MPC.

III-B Model Predictive Control

MPC is an advanced control technique that uses a model of the system to predict its future behaviour over a given time horizon [22]. These predictions guide the system in computing controls that optimize specific performance criteria, such as reducing packet loss cost in our case, while taking into account constraints on the system’s inputs, states, and outputs.

In the field of HTSs, the dynamic nature of satellite communication and packet arrival poses challenges that traditional optimization approaches may struggle to address. The ever-changing environment, caused by the varying, uncertain demands and movement of the satellites, requires a method that can adapt swiftly. This is where MPC proves valuable.

The core idea behind applying MPC to HTS is its inherent adaptability. Unlike batch optimization, which needs the full incoming flow information for the entire time horizon prior to computations, MPC adjusts to new information as it becomes available. By doing so, it continually refines its routing and scheduling decisions, ensuring close to optimal response to evolving scenarios. Instead of working with the realized stochastic process, we work with the expected flow only. In practice, this value can be empirically estimated from historical data. The expression of the flow then becomes:

Fp^(t)=𝔼[Fp(t)],^subscript𝐹𝑝𝑡𝔼delimited-[]subscript𝐹𝑝𝑡\hat{F_{p}}(t)={\mathbb{E}}[F_{p}(t)],over^ start_ARG italic_F start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT end_ARG ( italic_t ) = blackboard_E [ italic_F start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT ( italic_t ) ] , (12)

and (6) is substituted by:

m=1Mfpin(t)=Fp^(t).superscriptsubscript𝑚1𝑀superscriptsubscript𝑓𝑝in𝑡^subscript𝐹𝑝𝑡\sum_{m=1}^{M}f_{p}^{\text{in}}(t)=\hat{F_{p}}(t).∑ start_POSTSUBSCRIPT italic_m = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_M end_POSTSUPERSCRIPT italic_f start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT in end_POSTSUPERSCRIPT ( italic_t ) = over^ start_ARG italic_F start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT end_ARG ( italic_t ) . (13)

The formulation of our MPC approach mirrors the constraints and objectives mentioned in the Batch Optimization subsection. However, its execution differs. For every time step, the MPC method evaluates the optimization problem over a moving time window W<T𝑊𝑇W<Titalic_W < italic_T. Once the solution is determined, the initial control action corresponding to the current round is implemented in the HTS. Following this decision, the states of the HTS, such as the outflows and queue occupancies, are updated and observed. With this refreshed state information and new flow data, the time window advances while maintaining its fixed duration. The optimization problem is then revisited and solved for the subsequent time step. As each time step progresses, the system continues this iterative process, leveraging both the current state of the system and, when available, revised flow forecasts. The main difference lies in the optimization function and the online implementation. Problem (11) becomes, at time t{1,2,,T}𝑡12𝑇t\in\{1,2,...,T\}italic_t ∈ { 1 , 2 , … , italic_T }:

minwpm(τ),fpin,m(τ),τ{t,t+1,,t+W}subscriptsuperscriptsubscript𝑤𝑝𝑚𝜏superscriptsubscript𝑓𝑝in𝑚𝜏𝜏𝑡𝑡1𝑡𝑊\displaystyle\min_{\begin{subarray}{c}w_{p}^{m}(\tau),f_{p}^{\text{in},m}(\tau% ),\\ \tau\in\{t,t+1,...,t+W\}\end{subarray}}roman_min start_POSTSUBSCRIPT start_ARG start_ROW start_CELL italic_w start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT ( italic_τ ) , italic_f start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT in , italic_m end_POSTSUPERSCRIPT ( italic_τ ) , end_CELL end_ROW start_ROW start_CELL italic_τ ∈ { italic_t , italic_t + 1 , … , italic_t + italic_W } end_CELL end_ROW end_ARG end_POSTSUBSCRIPT τ=tt+Wp=1Pp(τ)kp.superscriptsubscript𝜏𝑡𝑡𝑊superscriptsubscript𝑝1𝑃subscript𝑝𝜏subscript𝑘𝑝\displaystyle\sum_{\tau=t}^{t+W}\sum_{p=1}^{P}{\mathcal{L}}_{p}(\tau)k_{p}.∑ start_POSTSUBSCRIPT italic_τ = italic_t end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_t + italic_W end_POSTSUPERSCRIPT ∑ start_POSTSUBSCRIPT italic_p = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_P end_POSTSUPERSCRIPT caligraphic_L start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT ( italic_τ ) italic_k start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT . (14)
    subject to (1)(5),(7)(10),(13)1571013\displaystyle(\ref{eq:constraint1})-(\ref{eq:constraint5}),(\ref{eq:constraint% 7})-(\ref{eq:constraint10}),(\ref{eq:constraint5_mpc})( ) - ( ) , ( ) - ( ) , ( )

where wpm(t)superscriptsubscript𝑤𝑝𝑚𝑡w_{p}^{m}(t)italic_w start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT ( italic_t ) and fpin,m(t)superscriptsubscript𝑓𝑝in𝑚𝑡f_{p}^{\text{in},m}(t)italic_f start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT in , italic_m end_POSTSUPERSCRIPT ( italic_t ) are then implemented.

Our experiments, detailed in the subsequent sections, illustrate MPC’s ability to tackle uncertain incoming flow in this setting. The comparison with the batch optimization benchmark reveals that while batch optimization might produce theoretically optimal solutions for static scenarios, MPC excels in dynamic, uncertain conditions typical of satellite communications. Not only does MPC achieve near-optimal results, but it also maintains consistent performance under these ever-changing conditions. Additionally, MPC is computationally efficient because it solves a linear problem using, e.g., off-the-shelf solvers, such as Mosek in our case [23]. The MPC process for online routing and scheduling in an HTS is summarized in Algorithm 1.

Algorithm 1 MPC online routing and scheduling process
1:  Parameters: W𝑊Witalic_W
2:  Initialization: Given Fp^(t)^subscript𝐹𝑝𝑡\hat{F_{p}}(t)over^ start_ARG italic_F start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT end_ARG ( italic_t )
3:  for t𝑡titalic_t in {1,2,,T}12𝑇\{1,2,\dots,T\}{ 1 , 2 , … , italic_T } do
4:      Observe the states Qpm(t),ΔQpm(t),p(t)superscriptsubscript𝑄𝑝𝑚𝑡Δsuperscriptsubscript𝑄𝑝𝑚𝑡subscript𝑝𝑡Q_{p}^{m}(t),\Delta Q_{p}^{m}(t),{\mathcal{L}}_{p}(t)italic_Q start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT ( italic_t ) , roman_Δ italic_Q start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT ( italic_t ) , caligraphic_L start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT ( italic_t ) and fpout,m(t)superscriptsubscript𝑓𝑝out𝑚𝑡f_{p}^{\text{out},m}(t)italic_f start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT out , italic_m end_POSTSUPERSCRIPT ( italic_t )
5:      Solve (14) considering Fp^(t)^subscript𝐹𝑝𝑡\hat{F_{p}}(t)over^ start_ARG italic_F start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT end_ARG ( italic_t )
6:      Implement wpm(t)superscriptsubscript𝑤𝑝𝑚𝑡w_{p}^{m}(t)italic_w start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT ( italic_t ) and fpin,m(t)superscriptsubscript𝑓𝑝in𝑚𝑡f_{p}^{\text{in},m}(t)italic_f start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT in , italic_m end_POSTSUPERSCRIPT ( italic_t )
7:  end for

III-C Alternative Benchmarking Methods

Apart from batch optimization, the first alternative method is termed static batch optimization with hindsight. This method utilizes one less degree of freedom by calculating the optimal weights at the initial time step and maintaining them consistently over time. It still uses hindsight information, making it impractical. It is used as a second benchmark for our approach. It can be represented by adding the following constraint to (11):

wpm(t)=wpm(1)t{2,3,,T}.formulae-sequencesuperscriptsubscript𝑤𝑝𝑚𝑡superscriptsubscript𝑤𝑝𝑚1for-all𝑡23𝑇w_{p}^{m}(t)=w_{p}^{m}(1)\quad\forall\quad t\in\{2,3,...,T\}.italic_w start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT ( italic_t ) = italic_w start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT ( 1 ) ∀ italic_t ∈ { 2 , 3 , … , italic_T } . (15)

Another method used for comparison is the windowless MPC approach. In this method, we employ an MPC with a window of size 1. The objective behind this is to ascertain if the added design variable of window length in our original MPC approach is beneficial.

The last comparison method is the cost-proportional method, where the following constraint is added to (11):

wpm(t)=kpp=1Pkpt,p.superscriptsubscript𝑤𝑝𝑚𝑡subscript𝑘𝑝superscriptsubscript𝑝1𝑃subscript𝑘𝑝for-all𝑡𝑝w_{p}^{m}(t)=\frac{k_{p}}{\sum_{p=1}^{P}k_{p}}\quad\forall\quad t,p.italic_w start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT ( italic_t ) = divide start_ARG italic_k start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT end_ARG start_ARG ∑ start_POSTSUBSCRIPT italic_p = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_P end_POSTSUPERSCRIPT italic_k start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT end_ARG ∀ italic_t , italic_p . (16)

IV Numerical Results

This section presents our experimental setup, describes the numerical comparison methods, and provides the results along with their analysis.

IV-A Experimental Setup

The simulations were constructed to emulate a realistic environment for HTSs. The experimental framework is defined over a time horizon of T=100𝑇100T=100italic_T = 100 time steps, and the MPC approach uses a window W=10𝑊10W=10italic_W = 10. The empirical justification for this choice of window size is provided in the Results and Analysis subsection. The satellites are modelled with M=16𝑀16M=16italic_M = 16 modem banks, which can each accommodate P=3𝑃3P=3italic_P = 3 distinct priorities of data packets, e.g., phone calls (high priority, p=1𝑝1p=1italic_p = 1), text messages (medium priority, p=2𝑝2p=2italic_p = 2), and emails (low priority, p=3𝑝3p=3italic_p = 3). The packet loss costs, corresponding to the significance of these priorities, are 10, 4, and 1, respectively. Importantly, smaller numbers were used for readability. The entire experimental setup is designed to be scalable, allowing for the representation of flow values across various orders of magnitude, such as 109superscript10910^{9}10 start_POSTSUPERSCRIPT 9 end_POSTSUPERSCRIPT packets in the context of an HTS.

The system is constrained such that each queue can hold a maximum of Q¯=10¯𝑄10\overline{Q}=10over¯ start_ARG italic_Q end_ARG = 10 packets, with both the initial and final states of the queues being empty (Q0=0subscript𝑄00Q_{0}=0italic_Q start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT = 0) to promote the continuity of the routing strategy. Lastly, the scheduler weights cannot deviate by more than Δw¯¯Δ𝑤\overline{\Delta w}over¯ start_ARG roman_Δ italic_w end_ARG = 10% between consecutive time steps.

In this study, the timeline is divided into segments representing progressively higher traffic, characterized by average arrival rates starting at 10 packets per time step and increasing linearly up to 100. To establish an inversely proportional relationship relative to packet priorities, we normalized λpsubscript𝜆𝑝\lambda_{p}italic_λ start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT by the packet loss cost kpsubscript𝑘𝑝k_{p}italic_k start_POSTSUBSCRIPT italic_p end_POSTSUBSCRIPT.

IV-B Comparison Methods

The proposed MPC approach is rigorously tested against other methods to demonstrate its potential benefits and capabilities. The first benchmark is the batch optimization with hindsight method. This is the “gold standard”, as it utilizes ex post information for the total time horizon, optimizing weights and routing incoming flow based on the actual, realized flow for every time step. However, while it offers a theoretical optimum, its applicability is limited as it uses information not readily available when routing decisions are made.

The second benchmark is a variant of the gold standard, known as the static batch optimization with hindsight method. It closely resembles its predecessor, with one added constraint: the weights remain constant over time. This emphasizes consistency in allocation decisions and leads to streamlined computations, but at the expense of adaptability, as it removes one degree of freedom.

The third benchmark, windowless MPC, simplifies the standard MPC approach by using a window of only one time step. This eliminates the potential benefit of considering future states, a key advantage of traditional MPC. However, this simplification translates to increased computational efficiency.

Lastly, the cost proportional allocation method, in contrast, presents a simpler and more direct approach. Instead of unpacking the complexities of the incoming flows, it focuses on proportional weight allocations based on costs, ensuring rapid decision-making. While it prioritizes computational efficiency over precision, this method remains an important consideration.

The next subsection details the numerical assessment of the MPC method against these four benchmarks, shedding light on the advantages the MPC approach brings to packet routing in HTSs.

IV-C Results and Analysis

Having outlined the experimental framework and benchmarking methods, this subsection presents the quantitative results of our simulations. To ensure consistency in our findings, all simulations were conducted 100 times using a Monte-Carlo approach. These results offer insights into the efficacy of the MPC technique.

Initially, understanding the flow dynamics is essential as they form the basis of the system’s operation. The incoming flow distribution is depicted in Figure 3. Figure 3(a) displays the incoming flows for a single run, highlighting the system’s inherent uncertainty. In contrast, Figure 3(b) showcases the incoming flows over time, averaged across 100 Monte-Carlo runs.

Refer to caption
(a)
Refer to caption
(b)
Figure 3: Incoming flows across time (a) for a single run (b) averaged over 100 Monte-Carlo runs

Next, we analyze the aggregated outflows across all M𝑀Mitalic_M modules for each priority level. The results, specific to our MPC approach, are illustrated in Figure 4.

Refer to caption
Figure 4: Outgoing flows across time averaged over 100 Monte-Carlo runs

As illustrated in Figure 4, when the system tends towards saturation, the MPC approach prioritizes transmitting packets of the highest priorities, discarding the lowest one.

Figure 5 presents the lost packets across time, delineated by priorities, for different scenarios. It shows that the batch optimization with hindsight generally discards fewer packets of priority 1 than MPC but more of priorities 2 and 3, which led to a lower cost.

Refer to caption
Figure 5: Lost packets across time averaged over 100 Monte-Carlo runs
Refer to caption
Figure 6: Packet loss cost across time averaged over 100 Monte-Carlo runs

Building on Figure 5, we now focus on the central aspect of this study: packet loss costs. Minimizing packet loss cost is the primary objective of these optimization efforts. Figure 6 illustrates the comparative performance of various methods in minimizing packet loss costs over time. The results align with initial expectations. The batch with hindsight method unsurprisingly emerged as the best technique. As previously highlighted, this method leverages hindsight information about the actual realization of the stochastic process modeling the flows, providing a rationale for its superior performance. Following closely, our MPC approach demonstrated its capabilities, with cumulative costs only 1.05% greater than the batch with hindsight method. Considering that the MPC method operates with the expected information rather than comprehensive data, this marginal increase underscores its effectiveness. Moreover, losses from the MPC method were 3.54% inferior to those of the windowless MPC method, which registered 4.59% more costs than the hindsight optimum. The static batch with hindsight method engendered costs 10.78% higher than its dynamic batch with hindsight counterpart and 9.73% higher than the MPC approach. In contrast, the proportional approach registered the highest costs with a total of 32.35% more than the hindsight optimum. The significant cost disparity between our approach and the proportional method highlights the benefits of the MPC and of a comprehensive scheduling mechanism.

Refer to caption
Figure 7: Packet loss cost across time averaged over 100 Monte-Carlo runs for different time windows

Lastly, in our MPC method, we utilized a window size of 10. This choice proved to be advantageous, as it resulted in lower losses compared to smaller window sizes, as shown in Figure 7. Specifically, the losses were 1.71% and 1.19% higher with window sizes of 2 and 5, respectively, when compared to the window size of 10. Additionally, it was found that a window size of 10 entails only 0.61% more packet loss costs than a window size of 20, while requiring approximately half the computation time. This highlights the importance of balancing performance with computational efficiency, as the smaller window size of 10 achieves similar results to the window size of 20, but with significantly reduced computation time. These findings highlight the effectiveness of our chosen window size in optimizing the performance of our MPC approach.

V Conclusion

This paper addresses an important challenge in satellite communications, focusing on the internal routing dynamics of HTS. As companies deploy an increasing number of satellites every year and as the world becomes more reliant on satellite communications for connectivity, ensuring efficient and adaptable packet allocation in HTSs is paramount.

The core contribution of this paper is the integration of an MPC technique to optimize the internal packet routing within HTSs. This method bridges the existing gap in the literature by offering a dynamic solution tailored to the uncertain environment of satellite communication. Although the batch optimization with hindsight method is the optimal solution, its real-world applicability is limited because satellites never possess full time horizon information on the realization of the incoming flows. MPC strikes a balance between optimality and adaptability, making it more suitable for real-world deployment. The numerical results emphasize the potential of the MPC technique. Its performance, even though it only operates with mean information, is very close to the benchmark set by batch optimization.

Future research will examine the scalability of MPC for larger systems and assess its computational efficiency on actual satellite hardware. Designing an online optimization-based strategy might offer improved adaptability to dynamic environments, prove beneficial for real-time applications, and represent a satellite-ready option.

Acknowledgments

The authors thank MDA, the Consortium for Research and Innovation in Aerospace in Québec (CRIAQ), the Institute for Data Valorization (IVADO), Mitacs, and the Natural Sciences and Engineering Research Council of Canada (NSERC) for funding this project.

References

  • [1] M. Richharia and L. D. Westbrook, Satellite Systems for Personal Applications: Concepts and Technology.   Wiley, Aug 2010.
  • [2] J. Irekvist and P. Linder. “Technology’s Important Role in Bridging Canada’s Digital Divide”, 2022. [Online]. Available: https://www.ericsson.com/en/blog/6/2022/ericsson-bridging-canadas-digital-divide
  • [3] T. Pratt and J. E. Allnutt, Satellite Communications.   John Wiley & Sons, 2019.
  • [4] M. Graydon and L. Parks, “’Connecting the Unconnected’: A Critical Assessment of US Satellite Internet Services,” Media, Culture & Society, vol. 42, no. 2, p. 260–276, 2020.
  • [5] D. Tuzi, T. Delamotte, and A. Knopp, “Satellite Swarm-Based Antenna Arrays for 6G Direct-to-Cell Connectivity,” IEEE Access, vol. 11, pp. 36 907–36 928, 2023.
  • [6] K.-H. Lee and K. Y. Park, “Overall Design of Satellite Networks for Internet Services with QoS Support,” Electronics, vol. 8, no. 6, 2019.
  • [7] M. Luglio, S. Romano, C. Roseti, and F. Zampognaro, “Satellite Multi-Beam Multicast Support for an Efficient Community-Based CDN,” Computer Networks, vol. 217, p. 109352, 2022.
  • [8] C. Zhang, Y. Zhou, P. Qin, and Z. Zhao, “High-throughput satellite flexibility design and modeling,” Journal of Physics: Conference Series, vol. 2469, no. 1, p. 012006, Mar. 2023.
  • [9] K. S. LLC, “Application for Authority to Launch and Operate a Non-Geostationary Satellite Orbit System in Ka-band Frequencies: Technical Appendix,” Tech. Rep., 2019, Technical Report.
  • [10] O. B. Yahia, Z. Garroussi, O. Bélanger, B. Sansò, J.-F. Frigon, S. Martel, A. Lesage-Landry, and G. Karabulut Kurt, “Evolution of High Throughput Satellite Systems: Vision, Requirements, and Key Technologies,” 2023, arXiv:2310.04389.
  • [11] I. T. Union, “Key Elements for Integration of Satellite Systems into Next Generation Access Technologies,” International Telecommunication Union, Tech. Rep. ITU-R M.2460-0, Jul. 2019.
  • [12] M. M. Azari, S. Solanki, S. Chatzinotas, O. Kodheli, H. Sallouha, A. Colpaert, J. F. Mendoza Montoya, S. Pollin, A. Haqiqatnejad, A. Mostaani, E. Lagunas, and B. Ottersten, “Evolution of Non-Terrestrial Networks From 5G to 6G: A Survey,” IEEE Communications Surveys & Tutorials, vol. 24, no. 4, pp. 2633–2672, 2022.
  • [13] M. Cello, M. Marchese, and F. Patrone, “HotSel: A Hot Spot Selection Algorithm for Internet Access in Rural Areas through Nanosatellite Networks,” in IEEE Global Communications Conference (GLOBECOM), 2015, pp. 1–6.
  • [14] S. Agnelli, P. Feltz, P.-F. Griffiths, and D. Roth, “Satellite’s Role in the Penetration of Broadband Connectivity within the European Union,” in 7th Advanced Satellite Multimedia Systems Conference and the 13th Signal Processing for Space Communications Workshop (ASMS/SPSC), 2014, pp. 306–311.
  • [15] K. Suresh, A. Alqahtani, T. Rajasekaran, M. S. Kumar, V. Ranjith, R. Kannadasan, N. Alqahtani, and A. A. Khan, “Enhanced Metaheuristic Algorithm-Based Load Balancing in a 5G Cloud Radio Access Network,” Electronics, vol. 11, no. 21, 2022.
  • [16] N. Pachler, E. F. Crawley, and B. G. Cameron, “Beam-to-Satellite Scheduling for High Throughput Satellite Constellations Using Particle Swarm Optimization,” in IEEE Aerospace Conference (AERO), 2022, pp. 1–9.
  • [17] Z. Qu, G. Zhang, H. Cao, and J. Xie, “LEO Satellite Constellation for Internet of Things,” IEEE Access, vol. 5, pp. 18 391–18 401, 2017.
  • [18] O. Markovitz and M. Segal, “Advanced Routing Algorithms for Low Orbit Satellite Constellations,” in IEEE International Conference on Communications, 2021, pp. 1–6.
  • [19] R. K. Ahuja, T. L. Magnanti, and J. B. Orlin, Network Flows: Theory, Algorithms, and Applications.   Upper Saddle River, NJ, USA: Prentice Hall, 1993.
  • [20] D. Medhi and K. Ramasamy, Network Routing: Algorithms, Protocols, and Architectures, 2nd ed.   Morgan Kaufmann, 2018.
  • [21] D. G. Luenberger and Y. Ye, Linear and Nonlinear Programming.   Springer Science & Business Media, 2008.
  • [22] J. B. Rawlings, D. Q. Mayne, and M. M. Diehl, Model Predictive Control: Theory, Computation, and Design, 2nd ed.   Nob Hill Publishing, LLC, 2017.
  • [23] MOSEK ApS, The MOSEK Optimization Software, 2023, version 10.1 [Software]. Available from https://www.mosek.com/.