Adaptive Access Selection Algorithm for Large-Scale Satellite Networks Based on Dynamic Domain

The traditional satellite access selection algorithm, which is used in large-scale satellite networks, has some disadvantages, such as frequent link switching, high interrupt probability, and unable to adapt to a dynamic environment. According to the periodicity of the large-scale satellite network and the prior knowledge provided by acknowledgment packages, a dynamic domain-based adaptive access algorithm (DAA) is proposed in this paper. Firstly, this algorithm divides the large-scale satellite network into different domains according to the minimum elevation angle of the Earth station (ES) and the predictable characteristics of the trajectory of the satellite. Then, the ES selects the access satellites according to the relationship between the traffic volume and the satellites’ coverage time. Finally, the ES selects the backup access satellite based on the satellites’ coverage time, the traffic volume of the ES, satellite status provided by prior knowledge, and other information. When the access satellite cannot satisfy the communication demand, the ES adaptively switches the earth-satellite link to the backup access satellite. The ES first choice of access satellite does not require interaction with the satellites, reducing the consumption of communication resources. The selection strategy of backup access satellite and the concept of virtual destination address proposed in this paper can reduce the routing overhead after switching. Through theoretical analysis and simulation results in the StarLink constellation, it is proved that this paper improves the coverage time utilization of accessing satellites and reduces the switching probability compared with the traditional access algorithm, which is more suitable for ES to access large-scale satellite networks.


Introduction
A large-scale satellite network has the characteristics of low propagation delay, highdynamic, and multiple satellites that can be selectively accessed by the Earth station (ES). It has received more attention in constructing 5/6G and the Internet of Things (IoT) [1,2]. In recent years, satellite Internet has ushered in a new wave of development. To satisfy the demand for high-capacity communication from ES, satellite Internet mainly uses large-scale satellite constellations. Typical large-scale constellations include the StarLink, the OneWeb, and the Amazon Kuiper. The SpaceX designed StarLink constellation is expected to include approximately 12,000 satellites in the low earth orbit and very low earth orbit constellations [3]. The first phase of the StarLink constellation consists of 4409 satellites, distributed in five different altitude Shells. The satellites on the same shell are at the same altitude from the ground. The Kuiper constellation plan consists of 3236 satellites [4]. The OneWeb constellation plan consists of 650 satellites [5]. Large-scale satellite networks can provide broadband access and high-speed Internet services in theory. However, the rapid topology changes of large-scale satellite networks, the limited resources of a single satellite, and the high switching frequency of earth-satellite links (ESLs) have brought new challenges to the access selection of satellite networks.
Access selection is the primary link for ES to transmit data using a satellite network. The state of access satellite affects the quality of services (QoS), such as transmission delay, outage probability, and call blocking rate. Traditional access selection strategies include single parameter-based access selection algorithms and multi-attribute-based access selection algorithms. Access selection algorithms based on a single parameter include the longest coverage time access algorithm, the shortest transmission distance access algorithm, and load balancing algorithm [6][7][8][9][10][11][12]. These methods mainly select access satellites based on a single target attribute. For example, in Literature [6], to reduce the switching times, the access strategy is proposed with the goal of the longest coverage time. In Literature [10], to reduce the path loss and improve the signal-to-noise ratio, the access strategy was proposed with the shortest transmission distance as the goal. In Literature [11] is to achieve network load balancing. The ES will choose the satellite which is beneficial to the network load balancing as the access satellite. The most widely used access algorithm based on multiple attributes is the comprehensive weighting algorithm [13][14][15][16][17][18]. For example, the weighted algorithm based on QoS proposed in Literature [17]. The algorithm chooses the access satellite after weighting the shadow effect, signal-to-noise ratio, and elevation angle. This method effectively reduces the call blocking rate and switching failure rate. Based on the comprehensive linear weighted multi-satellite coverage access selection strategy is proposed in [18]. The elevation angle, the distance between the ES and the satellite, the coverage time, and the number of idle channels are comprehensively weighted, which reduces the blocking rate and the outage probability of ESL.
The combined free demand assignment multiple access Protocol (CFDAMA) has received much attention from researchers [19][20][21]. Free access is assigned by polling, and on-demand access is assigned by reservation [22]. To improve the access performance of CFDAMA, researchers have improved CFDAMA from different perspectives. For example, in literature [19], to realize the data transmission of the ESs in time, the coverage time of the satellite is fully utilized. A combined free/demand assignment multiple access schemes based on convolutional long short term memory network and transfer learning (CFDAMA-CLSTMTL) is proposed by periodically predicting the data generated by ESs. The simulation results show that CFDAMA-CLSTMTL reduces the end-to-end delay. In Literature [21], a combined free/demand assignment multiple access schemes employing a combined round robin/piggybacking request strategy (CFDAMA-RPR) is proposed to improve the throughput and reduce the end-to-end delay of satellite networks. The improved algorithm based on CFDAMA improves the network throughput to a certain extent and reduces the end-to-end delay. However, implementing these algorithms requires the interaction between satellites and ESs, increasing the cost of network resources. In fact, simple processing of acknowledgment packages (ACKs) can somewhat reduce the number of interactions between satellites and ES.
The above access selection algorithm reduces the switching failure rate, blocking rate, and outage probability to some extent. However, the multi-satellite coverage of the above algorithm is mostly small constellations, the inter-satellite collaboration is not considered when selecting the access satellite, and the characteristics of satellite networks such as predictable trajectory are not fully utilized. Because of the shortcomings of existing access selection algorithms in large-scale satellite networks, we propose a dynamic domain-based adaptive access algorithm (DAA). The main contributions of the DAA algorithm proposed in this paper are as follows: • The organization of the remainder of this article is as follows: Section 2 describes the system model and defines the problems such as communication domain and coverage time. Section 3 describes the specific implementation of the DAA algorithm. Section 4 simulates and analyzes the performance of the DAA algorithm. Finally, Section 5 summarizes this article.

Large-Scale Satellite Network Model
This paper uses the large-scale constellation StarLink as the modeling object. The first phase of the Starlink constellation consists of five Shells [23] defined as S 1 , S 2 , S 3 , S 4 , and S 5 from near to far from the ground. The number of orbits of each Shell, the number of satellites in each orbit, and the orbital inclination parameters are shown in Table 1. Figure 1 shows the schematic diagram of the StarLink constellation. Each color represents a shell. he constellation is defined as an undirected graph G = (S, E), where S represents the satellite nodes, defined as S = S 1 1,1 , S 1 1,2 , ..., S L n,m , ..., S 5 N 5 ,M 5 , where L denotes the Shell serial number, n denotes the orbit serial number, m denotes the satellite serial number within the orbit, N L denotes the total number of orbits on shell S L , M L denotes the number of satellites per orbit of shell S L . Table 1 shows that there are   Figure 2 shows the packet forwarding path, the set of satellites on the path is defined as V . The satellite set in the communication domain and belonging to the forwarding path is defined as V , namely Figure 2, v, S L 2,2 , S L 1,2 , S L 1,3 ⊆ V .

Problem Definition
ES needs to determine the communication domain before sending packets. According to the minimum elevation angle of ES, the maximum communication distance of ES is calculated as: where R is the radius of the Earth, H is the distance from the satellite to the ground, σ is the minimum elevation of ES, and α is a temporary variable. The meaning of parameters in Equation (1) is shown in Figure 3. ES can predict the position of the satellites in real-time according to the orbital elements [25]. The latitude and longitude of S L n,m at time t are defined as LOC t L,n,m : where i, Ω, e, ω, a, M 0 is orbital elements, t is the time when ES calculates the longitude and latitude of the satellite. The value of t can be the current time or the future time. P calc is a function of calculating the longitude and latitude of the satellite at time t by orbital elements. According to the maximum communication distance of ES and the longitude and latitude of the satellite at t time, the coverage time t con L,n,m of S L n,m is calculated: where D L,n,m ES,t is the linear distance from S L n,m to ES. LON ES , LAT ES , and H ES are the longitude, latitude, and altitude of the ES, respectively. H L is the distance from S L n,m to the ground, and f is the function to calculate the distance between ES and S L n,m . arg is the deformation of the inverse function. For example, Z = argX t ( f (t)) denotes that when f (t) = X, the corresponding t value is assigned to Z. A similar function to arg is used in Literature [26]. LOC out L,n,m denotes the latitude and longitude of S L n,m when D L,n,m ES,t equals D max . t out L,n,m denotes the corresponding time when P calc equals LOC out L,n,m . t 0 is the current moment. Satellites can obtain their latitude, longitude, and altitude in real-time through the positioning system. From Equations (1) and (3), when D L,n,m The traditional maximum coverage time algorithm and maximum elevation angle algorithm select the accessing satellites according to the coverage time and elevation angle, respectively, without considering the different demands of different ES for communication time at different times, which will cause problems such as wasting resources and increasing the number of switching. ES needs to send k data packets at time t, the size of the i packet is denoted as pkg i , and the size of the last ACK is pkg A . The uplink and downlink of StarLink use different channels [27]. The uplink transmission rate is defined as R U , and the downlink transmission rate is defined as R D . The minimum time that ES needs to occupy ESL is t u : The coverage time utilization rate of access satellite is an important parameter to measure the access algorithm. A higher utilization rate indicates that the access satellites selected are better matched with t u . The utilization rate of access satellite coverage time is defined as P u : where Q denotes the set of access satellites. Q ∑ L,n,m t con L,n,m represents the sum of coverage time of all satellites in Q from time t 0 . To achieve the maximum P u value, the ES prefers to access satellitev :v = arg min S (t con V ) t con L,n,m ≥t u , S L n,m ∈ V , where t con V is the set of satellite coverage times that satisfy t con L,n,m ≥ t u in the ES communication domain.v is the satellite corresponding to the minimum in set t con V . The satellite coverage time in the communication domain of the ES is schematically shown in Figure 4. t s and t e are the start and end moments of the coverage time, respectively. Select the access satellite according to Equation (6). If ES is at time t 0 , the traffic volume to be transmitted is t u . When t u < (t 2 − t 0 ), ES preferentially chooses v 2 as the access satellite. When (t 2 − t 0 ) < t u < (t 3 − t 0 ), ES preferentially chooses v 5 as the access satellite. When (t 4 − t 0 ) < t u < (t 5 − t 0 ), ES preferentially chooses v 1 as the access satellite. The access satellites selected above can theoretically complete data transmission without switching ESLs. However, when t u is larger than the coverage time of any satellite, it is necessary to switch the access satellite. In this case, how to choose the access satellite set Q and the access sequence to maximize the P u value. We will give a strategy to solve this problem in the next section.

Access Selection Mechanism
The DAA algorithm calculates the first time access satellite of ES through the following steps.

1.
The communication domain of ES is calculated by Equation (1) ES compares the relationship between the satellites' coverage time and t u . If there is a satellite covering time greater than t u , then t con V = ∅ in Equation (6). The first time access satellite is calculated directly through Equation (6). If the coverage time of all satellites is less than t u , then t con V = ∅ in Equation (6). The access satellite of ES cannot be calculated by Equation (6). Next, we will introduce the access satellite selection strategy of the DAA algorithm when t con V = ∅. As shown in Figure 4, if the traffic volume transmitted by the ES at time t 1 is t u . When (t 6 − t 1 ) > t u > (t 5 − t 1 ), then t con V = ∅. Choosing any satellite cannot complete the data transmission without switching ESL. To solve the access problem for t con V = ∅ and to achieve the minimum number of switching and maximum P u value. This paper defines the set of ES's access satellites at time t as Q. The satellites are stored in Q according to the access sequence of ES. The flow chart of calculation Q is shown in Figure 5.
In In Figure 4, the access satellite set Q of the ES at time t 1 is calculated according to the above process. When t u satisfies (t 5 − t 1 ) < t u ≤ (t 6 − t 1 ), the set of access satellites is Q = {v 2 , v 6 }.

Access Switching Mechanism
When the coverage time of a single satellite is not enough to transmit data from an ES, it is necessary to switch access to a new satellite. An ES also needs to switch ESL to a new access satellite in the following cases: 1.
The remaining resources ofv are below the threshold, such as memory capacity and energy. The ES can receive the ACKs correctly for this case; 2.
ESL interruption or access satellite failure. In this case, ES cannot receive the ACKs.

Insufficient Satellite Resources
To solve the problem of insufficient access satellite resources, the ES selects the backup access satellitev according to the prior knowledge obtained from the ACKs and the coverage time of the satellites. To obtain the state information of some satellites in the communication domain without the additional interactive information between the satellite and the Earth Station, the DAA algorithm does the following processing:

1.
When ES sends data packets to the access satellite, [LON ES , LAT ES , D max ] is added to the data packets; 2.
After receiving the data packets sent by the ES, the access satellite forwards the data packets according to the routing table. After the satellite S L n,m in the set V receives the data packet, it decodes [LON ES , LAT ES , D max ] first, and then determines whether it is in the communication domain of the ES by Equation (3). If t con L,n,m > 0 in Equation (3) Figure 6, the set V includes S L 2,2 , S L 2,3 and S L 2,4 in addition to access satellitev. However, in some scenarios, set V only includes access satellitesv. As shown in Figure 7, set V only includesv.  For the scenario in Figure 6, the ES receives the memory capacity and energy remaining state of the satellites in V through ACKs. Calculate memory capacity and energy surplus rate according to the following Equations: where C L,n,m and E L,n,m represent the maximum memory capacity and the maximum energy value of S L n,m , respectively. U T C and U T E represent the residual memory and energy capacity thresholds, respectively. The ES first calculates the coverage time of the satellites in set V by Equation (3), then selects the satellite with U C , U E and coverage time satisfying the traffic volume requirements as backup access satellitev . If there are multiple satellites in set V satisfying the condition ofv , one of them is selected as thev through Equation (6). When the current access satellite resources are insufficient, the ES choosesv as the access satellite. Becausev is selected in the original path, no further routing is required after the ES switches to backup access satellitev . The choice ofv reduces the switching times and the consumption of resources by rerouting.
For the scenario in Figure 7, only access satellitev is in set V . ES cannot obtain the status of satellite resources other thanv through the ACKs and cannot select backup access satellitev in set V . To solve this problem, we perform the following optimization of the DAA algorithm. If S L n,m is the next hop ofv but S L n,m / ∈ V , S L n,m adds IP to the ACKs before forwarding the ACKs. After receiving the ACKs, the ES decodes the IP address of the next hop ofv and uses this IP address as the virtual destination address. Whenv resources are insufficient, the ES selectsv according to Figure 5, then adds the virtual destination address to the data packet to send tov .v computes the route to the virtual destination address. The satellite corresponding to the virtual destination address receives the packet forwarded byv and forwards the packet according to the previous path. As the distance fromv to the virtual destination address is smaller than that to the actual destination address, the selection and use of virtual destination addresses can reduce the resource cost of routing after switching to a backup access satellite.

ESL Interruption orv Failure
ESL interruptions orv failures can cause the ES to fail to send packets to the satellite and fail to receive the ACKs forwarded byv. This paper determines whether the fault mentioned above by acknowledging the timeout and setting the timeout timer T [28]: where RTT denotes Round Trip Time, and κ denotes the smoothing factor. T is started after the ES sends the data packet. The ES adopts the same strategy as Section 3.2.1 to select v . When T = 0, the ES switches ESL tov . The DAA algorithm pseudo code is shown in Algorithm 1. Equation (6) is used to calculate the first time access satellite of ES; 5: else 6: Calculate access satellites set Q through the flow chart shown in Figure 5; 7: end if 8: ES decodes the ACKs returned byv; 9: if U C < U T C OR U E < U T E then 10: Switch the ESL to thev according to Section 3.2.1 11: end if 12: if T < 0 then 13: Switch the ESL to thev according to Section 3.2. S L n,m add C t L,n,m , E t L,n,m to the ACKs; 4: else 5: The satellites on the data packet forwarding path are judged whether in the communication domain of the ES by Equation (3); 6: if S L n,m ∈ V then 7: S L n,m add C t L,n,m , E t L,n,m to the ACKs; 8: else if S L n,m ∈ V and S L n,m / ∈ V then 9: S L n,m deletes [LON ES , LAT ES , D max ] from the data packet; 10: else if S L n,m ∈ V and S L n,m / ∈ V and S L n,m is the next hop ofv then 11: Add the IP address of S L n,m to the ACKs; 12: end if 13: end if In the algorithm, DAA in ES is the pseudo-code of the DAA algorithm running in ES, and DAA in S L n,m is the pseudo-code of the DAA algorithm running in the satellites. Lines 1-7 of the DAA in ES are used to determine the set of satellites for the first access by ES. This process does not require ES to interact with the satellites. Lines 8-14 are used to complete the ESL switching when the current access satellite has insufficient resources or failure. The prior knowledge to complete the process is obtained through the ACKs without additional packet transmission. DAA in S L n,m mainly provides prior knowledge for selecting backup access satellites by ES.

Experimental Verifications
To verify the effectiveness of the DAA algorithm, the first phase of the StarLink constellation is designed in this paper using Satellite Tool Kit (STK) [29]. The DAA algorithm is verified and analyzed by MATLAB based on the satellites' track data derived from STK. The DAA algorithm is compared with the access selection algorithm based on a single parameter [6,10] and the access selection algorithm based on multi-attribute [18].

Simulation Parameters
The constellation topology used in the simulation is shown in Figure 1. The ESs selected in the simulation are all located in Beijing, China. The ESs parameters are shown in Table 2. The number of satellites that can be accessed by ES 1 during one orbital cycle of S 1 varies with time, as shown in Figure 8. The orbital period of S 1 is T: where R is the earth's radius, H 1 is the height of S 1 from the ground, and GM is the gravitational coefficient of the earth. Based on Equation (9), the orbital period T ≈ 5739 s of S 1 is obtained by STK. The satellite coverage time in each shell during T is shown in Figure 9. ES 1 , ES 2 , ES 3 , and ES 4 are denoted by ES [1][2][3][4] . As the Poisson model can well simulate network traffic [30], the t u values of ES 1-4 are set to obey the Poisson distribution of λ = 500 s, λ = 800 s, λ = 1000 s, and λ = 1500 s, respectively. From the satellite coverage time of each shell in Figure 9, when t u obeys the Poisson distribution of λ = 500 s, ES 1 can complete data upload without switching access satellite in most cases. When t u obeys the Poisson distribution of λ = 800 s and λ = 1000 s, ES 1 must switch once access satellite to complete data upload in most cases. When t u obeys the Poisson distribution of λ = 1500 s, ES 1 must switch twice to access satellite to complete data upload in most cases.

Simulation Analysis
In the scenario without insufficient resources, satellite failures, and ESLs interruption, the relationship between the P u value and the access time of the DAA algorithm and the traditional access algorithm is shown in Figure 10. The vertical coordinates in the graph indicate the average value of P u obtained from multiple experiments. The horizontal coordinate indicates the moment when ES 1-4 start transmitting packets. The simulation results show that the average P u values of the DAA algorithm, comprehensive weighting algorithm, longest covering time algorithm, and maximum elevation angle algorithm are 97%, 85%, 79%, and 51%. Therefore, the coverage time of the access satellite selected by the DAA algorithm is the most matched with t u . The P u value of the DAA algorithm is the most stable because each access uses the process shown in Figure 5 to select the satellites with the most matching t u as the access satellites. The relationship between the probability of insufficient satellite resources and switching times is shown in Figure 11. The number of switches in the figure is the average of the experimental results obtained from multiple experiments. The vertical coordinate is the sum of the number of switches required by ES 1-4 to complete the data transmission. The horizontal coordinates are the probability of insufficient satellite resources. As the maximum elevation angle access algorithm has the minimum P u value, the switching times are much more than the other three algorithms. Therefore, the experimental results of the switching times of the maximum elevation angle access algorithm are no longer displayed in Figure 11. It can be seen from Figure 11 that the average switching times of the DAA algorithm under different probabilities are less than those of the other two algorithms; this is because the P u value of the DAA algorithm is larger than the traditional access algorithm. In addition, the DAA algorithm can further reduce the switching times by obtaining the resource status of some satellites in the communication domain by ACKs. In the simulation process, compared with the traditional access algorithm, the DAA algorithm does not need the interaction information between ES and the satellites before selecting the access satellite, and the maximum t u value can be achieved only through the calculation of ES. The DAA algorithm saves channel resources and reduces the cost of ES and satellites.

Conclusions
The DAA algorithm proposed in this paper provides a new way of thinking to solve the access problem of large-scale satellite networks. First, we dynamically update satellites in the communication domain of the ES in real-time. Then, the set of access satellites is determined based on the relationship between the t u values and the satellite coverage time in the communication domain. Finally, to solve the problem of insufficient satellite resources, access satellite failure, or ESLs interruption, we propose solutions for different scenarios. Through theoretical analysis, the use of the virtual destination address in the DAA algorithm and the strategy of selecting access satellites in the original path can reduce the rerouting overhead. Experimental results show that the DAA algorithm achieves maximum P u compared to traditional access algorithms. As the probability of insufficient satellite resources increases, the DAA algorithm has the least switching times compared to traditional access algorithms. Therefore, the DAA algorithm is more suitable for large-scale satellite networks than traditional access algorithms.
With the development of satellite Internet, the design of routing algorithms for largescale satellite networks will be promising research. Based on this work, we will study routing algorithms for large-scale satellite networks suitable for the DAA algorithm in the future. where not only the P u value and switching times but also other aspects will be considered. For example, the impact of the DAA algorithm on end-to-end delay, throughput, and robustness of satellite networks.