Abstract

A large-scale low Earth orbit (LEO) satellite network has the characteristics of a complex link environment, a large number of satellites, and the limited resources of a single satellite. Applying traditional routing algorithms has disadvantages such as high overhead, high end-to-end latency, and low message delivery rate. This paper proposes an improved delay tolerant (DTN) scheme for large-scale LEO satellite networks (LIDTN) to improve transmission efficiency and reduce the resource overhead and end-to-end latency of large-scale satellite networks. This scheme improves the network performance in three aspects: next hop selection, congestion control mechanism, and acknowledgment mechanism. For the next hop selection, we propose an equivalent distance and priori knowledge-based forwarding strategy (EPFS), which has the advantages of low overhead, loop avoidance, and fast convergence. For congestion control, we put forward an emergency function-based bundle drop algorithm (EBDA). For acknowledging, we propose the virtual acknowledgment algorithm (VAA) by combining the characteristics of many path hops and high link disruption rates in large-scale constellations. Finally, we simulate and verify the LIDTN scheme on the OneWeb constellation. The results show that the LIDTN scheme is suitable for large-scale constellations, the EPFS algorithm can reduce the network overhead during data transmission, EBDA can reduce the bundle drop rate, and VAA can reduce the end-to-end latency. LIDTN provides a new solution for large-scale constellation communication.

1. Introduction

Large-scale low Earth orbit (LEO) satellite constellations have uneven service distribution, frequent link switching, and a high probability of laser link interruption [1, 2], which brings more significant challenges to the design of routing algorithms. In recent years, routing algorithms for large-scale LEO constellations have gradually become an important issue in China and abroad [37]. Based on link characteristics, existing constellation routing algorithms are divided into delay tolerant (DTN) and nondelay tolerant (non-DTN) routing [8]. In particular, non-DTN routing protocols for single-layer satellite networks can be subdivided into virtual topology-based and node-based routing algorithms [912]. Virtual topology-based routing algorithms suffer from multiple time slice divisions in large-scale constellation scenarios, leading to high routing overhead and increased packet loss rates [13]. The virtual node-based routing algorithm will also result in high switching and computational resource overhead due to many periodic routing table updates. Non-DTN protocols oriented to multilayer satellite networks use high-orbiting satellites to manage low-orbiting, increasing construction costs and complexity [1417]. Compared with non-DTN traditional constellations routing algorithms, DTN algorithms have significant advantages in resource consumption and have long been used in deep space-oriented uncertain networks [1821], which have more significant potential for large-scale constellations network routing. In this paper, we will fully use the regularity and orbit predictability of large-scale constellation networks, combined with the resource consumption advantage of DTN, to conduct algorithm research for large-scale single-layer LEO satellite networks.

In recent years, the application of DTN in the LEO satellite network has attracted significant attention. The predictable trajectory of nodes in the network is a characteristic of satellite networks, and nodes in traditional DTN application scenarios do not have this characteristic. Existing DTN routing techniques are classified as flooding-based, quota-based, and predictive forwarding-based [2226]. Based on the above three DTN routing algorithms, the researchers took the reduction of packet copy number and end-to-end latency as the research objective. Literature [27, 28] are early studies on the application of DTN in satellite networks. They discussed the advantages and disadvantages of DTN applications in satellite networks and concluded that DTN has higher robustness than Performance Enhancing Proxies (PEPs). Literature [29] proposes the based on throughput constrained minimum delay backup path of contact graph routing (CGR) algorithm (TCMDB_CGR) for LEO constellations characteristics by optimizing the traditional CGR algorithm, which reduces the packet loss rate and average end-to-end latency when the link bandwidth is specific. Literature [30] investigates the congestion problem in DTN for satellite networks and proposes a fragmented congestion control algorithm (FCC) that reduces the packet loss rate. However, the number of iterations is related to the number of satellite cache bundles, and the increase in the number of bundles increases the computational overhead of the satellite. In literature [31], to reduce the replication overhead and forward packets efficiently, a quasideterministic network (DQN) is proposed. However, the application scenario of this algorithm is the network without intersatellite links (ISLs), and the Earth station is required to relay the transmission of data packets. In literature [32], in order to solve the problem of high latency and low network efficiency of DTN for satellite networks, a finite replication algorithm modified prophet with limited copies (MPWLC) based on service probability is proposed to reduce network overhead and average hop count.

In the above literature, the researchers consider the characteristics of satellite resource-constrained and unstable ISLs. The traditional DTN routing algorithm is optimized to make DTN more suitable for satellite networks by reducing packet replication, packet loss, and end-to-end latency. However, the application scenarios of DTN technology are mostly small-scale single-layer or multilayer constellations. There is no research on the application of large-scale single-layer LEO satellite networks. In addition, to maximize the amount of data received by the data processing center (DPC), the literature [33] designed the space-air-ground integrated network (SAGIN) model that combines LEO satellites, spacecraft, ground stations, and DPC devices, significantly increasing the amount of data received by the DPC. The storage, carrying, and forwarding mechanism in this reference is similar to DTN. In this paper, DTN technology is applied to large-scale LEO constellations for the first time, and a LIDTN scheme is proposed. The scheme reduces resource consumption and improves adaptability in large-scale LEO networks by optimizing the design of next hop selection, congestion control mechanisms, and acknowledgment mechanisms. The simulation results show that LIDTN performs better in reducing storage space and computation overhead, end-to-end latency, and bundle loss rate than traditional DTN technology. The main contributions of this article are as follows: (1)We are combining the characteristics of storage, carrying, and forwarding of DTN and the predictable characteristics of satellite trajectory. An end-to-end intersatellite forwarding algorithm based on equivalent distance and priori knowledge is proposed for the first time. The algorithm can effectively reduce the routing overhead of large-scale constellations, and the storage and computing overhead of the next hop calculated by a single satellite is less affected by the constellation size. The satellite using this algorithm can select the next hop according to the equivalent distance and priori knowledge without storing the topology of the entire network. When the ISL of reaching the next hop fails, this algorithm can quickly select the new next hop according to the equivalent distance and priori knowledge without flooding(2)In order to solve the congestion problem in the DTN carrying stage, a bundle dropping algorithm based on the emergency function was proposed according to the priority and time to live (TTL) value of the bundle. This algorithm can not only minimize the dropping rate of the bundle but also provide a priori knowledge for the subsequent bundle forwarding through the acknowledgment(3)The virtual acknowledgment algorithm for large-scale constellations is proposed for the problem of the low efficiency of existing acknowledgment algorithms. This algorithm reduces the retransmission delay of the bundle and reduces the resource overhead of retransmission due to bundles and acknowledgment packets transmission incorrect or dropped. The simulation proves that the algorithm is better in the satellite network with more hops. Therefore, this algorithm is more suitable for a large-scale constellation. This algorithm is unnecessary for small-scale satellite networks, such as constellations with average hops of less than five

The rest of this paper is organized as below. Section II describes the system model and completes the construction of the constellation model, the ISL model, and the Earth station model. Section III completes the problem definition of bundle forwarding, congestion control mechanism, and acknowledgment mechanism. Section IV describes the specific implementation of the LIDTN scheme. The performance of the LIDTN scheme is simulated and analyzed in section V. Finally, the paper is summarized in section VI.

2. System Model

This section is aimed at establishing a large-scale satellite topology and ISL model. Furthermore, three pairs of Earth stations are selected for modeling based on the geographical distribution of actual Earth stations.

2.1. Constellation Model

OneWeb constellation has been one of the hotspots of large-scale constellation research in recent years. The OneWeb constellation is planned to carry ISLs in the future. Therefore, the first-generation OneWeb constellation is used as the modeling object in this paper, and the parameters related to the OneWeb constellation are shown in Table 1 [34, 35]. The topology of the constructed OneWeb constellation is shown in Figure 1. This paper defines the OneWeb constellation as an undirected graph . represents the satellite nodes and defines . represents the orbit number, represents the satellite number in orbit, and there are a total of orbits in the constellation, each with satellites. The set of satellites located in the crossing seam is defined as , , and . represents the ISLs in the constellation. The Earth station is defined as , and is the Earth station label. As shown in Figure 1, the Earth station is connected to the constellation through an Earth-satellite link (ESL). Earth stations connected to different satellites are connected by ISL relay [36].

2.2. ISL Establishment Rules

As shown in Figure 2, the satellites in the constellation can establish ISLs with the four surrounding satellites, which are the top and bottom satellites in the same orbit and the left and right satellites in adjacent orbits. In Figure 2, there are three types of intersatellite links: intraplane ISLs, fixed interplane ISLs, and variable interplane ISLs. During constellation operation, the satellites connected by the intraplane ISLs and the fixed interplane ISLs are fixed. The variable interplane ISLs connect the satellites on both sides of the crossing seam. The satellites connected by each variable interplane ISLs change dynamically with time. For the OneWeb constellation shown in Figure 1, the crossing seam does not affect the satellites in orbit 2 to 17. Any satellite in orbit 2 to orbit 17 can establish ISLs with the four satellites surrounding it. The orbit 1 and 18 satellites can only establish fixed ISLs with the three surrounding satellites due to the effect of the crossing seam. The satellites in orbit 1 and the satellites in orbit 18 have an unfixed ISL with each other. The ISLs of are represented as , and represents the direction of ISLs. represents the ISLs in the up, down, left, and right directions and feeder links, respectively. The feeder link connects to the feeder satellite and the Earth station. The feeder satellite represents the satellite that directly downloads data to the Earth station.

The satellites on both sides of the crossing seam establish ISLs, which can effectively reduce the transmission delay of the bundle [37]. This paper analyzes the time to establish ISLs between the satellites on both sides of the crossing seam in one period. Due to the symmetry of satellite orbit distribution, the time of establishing ISLs between satellites on both sides of the crossing seam is analyzed by taking the example of establishing ISLs between and each satellite in orbit 18. The orbital period of the OneWeb is , where is the Earth’s radius, is the altitude of OneWeb from the ground, and is the gravitational coefficient of the Earth. The shortest distance is used as the basis for establishing the ISLs between the satellites on both sides of the crossing seam. Since the satellites are in orbit 1 and 18 in opposite directions, has at least two opportunities to establish a link with each satellite in orbit 18 in one period. As shown in Figure 3, the start to established ISL time between and each of the satellites in orbit 18 is shown in one run cycle. On the connection line () in Figure 3, they represent the time to establish the ISLs for the th time. For example, the red fonts (1, 3269, and 6555) in the figure represent establishing an ISL with at 1 s, 3269 s, and 6555 s, respectively. disconnects the ISL with at 73 s and establishes a new ISL with .

2.3. Earth Stations’ Selection

In order to verify the effectiveness of the LIDTN scheme, three pairs are selected as modeling objects among the existing ground stations in this paper. Six Earth stations are distributed on six continents, for example, choose an Earth station in Asia, Africa, Europe, Oceania, South America, and North America, respectively. The Earth stations’ names, labels, and locations are shown in Figure 4. We use in Europe and in Asia, which are in the northern hemisphere, as a pair of mutual transceiver Earth stations. in South America and in Oceania in the southern hemisphere serve as a pair of mutual transceiver Earth stations. in North America, located in the northern hemisphere, and in Africa, located in the southern hemisphere, act as a pair of mutual transceiver Earth stations. The selection of access satellites for Earth stations is based on the closest distance principle. According to the satellite run cycle, the number of satellites connected to the Earth stations at a given moment is fixed. The Earth stations automatically calculate the access satellites when sending data.

3. Problem Definition

The LIDTN scheme proposed in this paper has three problems to be solved. (1)vn,m selects which of the surrounding satellites as the next hop. That is the next hop selection problem(2)How to deal with congestion during forwarding(3)How to improve the efficiency of the acknowledgment

The selection of the next hop directly affects link congestion and the transmission path of acknowledgments. Acknowledgments and congestion control provide a priori knowledge for subsequent next hop selection.

3.1. Next Hop Selection Problem

During its operation, the satellites obtain their positions in real-time through the global positioning system (GPS) and send position information to the surrounding four satellites through ISLs. The surrounding satellites () are defined as those capable of establishing a direct ISL with the satellite. represents the surrounding satellite set of . , , , , and , respectively, represent the up, down, left, and right four adjacent satellites of . The position information of at moment is defined as , in which and are the longitude and latitude corresponding to the subsatellite point of at time , and is the altitude of . The location of the is defined as . The distance between and is shown in Equation (1) [38]. The distance between and is shown in Equation (2), where .

The next hop selection is determined by the state of . Defining the state of at moment as . is determined by the following inputs. obtains real-time location information of , congestion status (a priori knowledge) of by acknowledgment factor, and queuing status of each port sent by to . The objective of at moment is to find the optimal strategy to forward the bundle to one of the satellites in . is defined as shown in Equation (3). When the state is , the set of actions that can execute is . We aim to find the optimal action to achieve strategy optimality.

Feeder satellites have up to five selections for the next hop, and other satellites have up to four selections for the next hop. The next hop selected by at moment is defined as . is the satellite corresponding to action . For example, if , then . The calculation of is shown in where is the equivalent distance between and at moment , after the unification of the dimension of quantity. is the distance between and . is the data transmission rate, and is the data propagation rate. is the length of the port queue sent from to . represents the bundle currently being processed by the satellite. represents the size of the memory space occupied by . represents the acknowledgment factor.

3.2. Congestion Problem Definition

Satellite nodes cache bundles that have not received an acknowledgment. When the satellite cache space is insufficient, the bundles need to be dropped, defining and as the total cache capacity and the remaining cache capacity of , respectively. When satisfies in Equation (5), it is necessary to drop some of the bundles in the cache. is the number of bundles in the cache.

Which bundles are dropped when congestion occurs? How to mark the dropped bundles is the problem to be solved in this paper. (1)Which bundles are dropped from ? Define the emergency function of as [30]:where and represent the time to live and the priority of , respectively. and represent the time to live and the priority of , respectively. If two bundles have the same priority, that is, , then . If the priorities of the two bundles are not equal, that is, , then . If , the bundle is discarded first. The initial values of priority are equal. Definitions are as follows: where represents the bundle currently being processed by the satellite. represents a bundle with an emergency function value less than . represents the bundle set whose emergency function value of the cached bundles in the satellite is less than . The relationship between , , and is shown in Equation (8), where is the cache capacity occupied by the tag after dropping the set . When is satisfied, retain and drop all bundles in set . When is satisfied, drop . When is satisfied, is retained, and all or part of the bundles in set is dropped.

How to mark the dropped bundles? This paper uses labels instead of each dropped bundle; the label composition is shown in Equation (9), where represents the source node ID for sending . represents the sequence number of . represents the size of the cache capacity occupied by . denotes the th term of .

To reduce the drop rate of the same bundle in the path, is sent to the next hop after dropping . The next hop receives the label and updates as shown in

3.3. Acknowledgment Problem Definition

In large-scale LEO networks, acknowledgment is necessary to ensure correct data transmission [39]. The destination node acknowledges the received bundle and replies with an acknowledgment packet () after decoding that the received bundle is correct. The bundle received is an incorrect reply to a negative acknowledgment packet (NACK). The theoretical time of the satellite from sending the bundle to receiving the is . is defined as where is the transmission path of the bundle. is the packet size, and is the processing time. represents the label of the satellite, and is the satellite label of the next hop of . The value of starts from and then takes the satellite label in the path until is the last hop satellite label of the destination node. For example, the first time is the label of . The second time the label of the next hop of is set to and iterates until is the label of the last node in the path .

There are two main reasons why the source node does not receive an /NACK at the expected time. (1) The bundle is lost during transmission from the source node to the destination node. This situation is defined as . The set of satellites in the path that correctly receive the bundle is denoted as . (2) The /NACK is lost during transmission from the destination node to the source node. This situation is defined as . The set of satellites in the path that correctly receive the /NACK is denoted as .As shown in Equation (12), represents the satellite in the path that receives the bundle closest to the destination node in case . denotes the distance between and the destination node . is any satellite in set . is the satellite corresponding to the minimum value of . represents the satellite in the path that is closest to source node to receive the /NACK in case . denotes the distance between and the source node . is any satellite in set . is the satellite corresponding to the minimum value of .

4. LIDTN Scheme Implementation

The LIDTN scheme proposed in this paper for large-scale LEO constellations mainly includes three algorithms. The first algorithm is equivalent distance and priori knowledge-based forwarding strategy (EPFS). This algorithm is primarily to reduce the routing overhead. The second algorithm is an emergency function-based bundle drop algorithm (EBDA). This algorithm is mainly to solve the congestion problem during bundle transmission. The third algorithm is the virtual acknowledgment algorithm (VAA). This algorithm mainly reduces the delay and overhead of the retransmission bundles.

4.1. Equivalent Distance and Priori Knowledge-Based Intersatellite Forwarding Strategies

As shown in Equation (4), calculates the optimal action at time and then transmits the bundle to . The forwarding of to the bundle is influenced by the information flow shown in Figure 5. In the figure, , , , and are the queue lengths of the up, down, left, and right four sending ports, respectively.

When the bundle reaches , the following steps are performed to forward the bundle to the next hop. (1)Based on the received position information, the distance between and is calculated by Equation (1), . If , is not in the crossing seam, of is fixed. If , is in the crossing seam, three satellites in set are fixed, and the other satellite changes in a pattern similar to Figure 3(2)The length of the port queue sent to the satellites surrounding of is calculated and unifies the dimension of quantity of the queue length through in Equation (4)(3)The acknowledgment factor is not calculated if has not received an acknowledgment packet from before. Otherwise, is calculated. The value of is calculated through a distance between and , and in the acknowledgment packet sent back to by . is the next hop of .The expression of iswhere denotes the smoothing factor. (4)The action of is calculated by Equation (4), and is performed to forward the bundle to the next hop satellite(5) forwards the bundle to . performs the above four steps. The above steps are repeated until the bundle is at the destination node

The bundle queuing method follows the traditional first-in-first-out (FIFO) strategy, but the priority of the retransmitted bundle is higher than that of the first transmitted bundle.

The bundle is forwarded according to the above process, and there is a probability of loops occurring. The two cases where loops occur are shown in Figure 6. Since we use the equivalent distance forwarding bundle, Figure 6(b) has a lower probability of loop occurrence than Figure 6(a). To solve the loop problem shown in Figure 6, we propose the concept of a lock flag in the EPFS algorithm. The lock flags are set on the bundle sending ports of the satellite. When the satellite receives the bundle, the satellite will lock the port corresponding to the received bundle, and the satellite will not send the received bundle at this port. For example, in Figure 6(a), after receives sent by on the left, it locks the port on the left of to this bundle. That is, cannot send the bundle through this port. This method can only avoid (Figure 6(a)) loops. For loop in Figure 6(b), the EPFS algorithm upgrades the lock flags. If the satellite receives the same bundle from a different port, the bundle is transmitted back, and the satellite that receives the returned bundle locks the port that receives the returned bundle. As shown in Figure 6(b), the up port of receives transmitted by . Since there is already in , is transmitted back to through the up port. detects that the sent , by computation, returns from the same port, and then, locks the down port for . The flow of the EPFS is shown in Algorithm 1.

Received bundle
Input: Bundle , Port to receive :
Output: Lock flag:
1: if received for the first time then
2: LF=TURE; is locked, and cannot be forwarded through
3: else
4: if is received again from the port that forwarded the then
5:  Locks the port that receives again;
6: else
7:  Forward from the port where the was received;
8: end if
9: end if
Forward bundle
Input: Time , port queue , The position of , The position of the
Output: Action
1: ifthen
2: The ISLs between and the satellites moving in the opposite direction are not fixed.
  Calculate the satellite that is closest to in the opposite direction by equation (2)
3: else
4: The ISLs of can only be established with four satellites: up, down, left, and right;
5: end if
6: fordo
7: if The port forwarded by to is not locked then
8:  Calculate the distance between and by equation (1);
9:  The normalized distance resulting from queuing is calculated by equation (4);
10:  if has received the ACK from then
11:   Calculate by equation (13);
12:  else
13:   ;
14:  end if
15:  Calculate by equation (4);
16: end if
17: end for
18: Calculate by equation (4);

forwards the bundle to for the first time. cannot obtain the congestion status of by the acknowledgment factor. The bundle has the probability of being dropped by . For this case, we will solve it in EBDA.

4.2. Emergency Function-Based Bundle Drop Algorithm

EBDA primarily solves the problem of congestion in after executes action . The EBDA proposed in this paper has the following advantages. The first is the use of the emergency function , which reduces the successive drops of in the path and reduces the drops of with small values. The second is the use of label , which replaces the larger memory space of with a smaller memory capacity. in provides a priori knowledge for of .

According to the emergency function of Equation (6), all the bundles cached in the satellite have the probability of being dropped. There are two types of dropped bundles in this paper. The first type is to drop the current bundle (not yet forwarded). The second type is to drop part or all of the . is stored in the cache before . ( is the bundles that have been forwarded and have not yet received the acknowledgment).

Those satisfying are the first type of bundle dropping. After dropping , is used instead of and updates . is updated according to Equation (14). Since has not been forwarded yet, dropping directly will cause transmission to be interrupted. Therefore, execute action and then drop .

The second bundle drop type needs to drop part or all of . In the traditional method [40, 41], the bundles are dropped in first-in-first-out (FIFO) order until satisfied: where represents the set of dropped bundles. In the literature [30], an iterative approach is used to reduce the bundle drop. The EBDA proposed in this paper can further reduce bundle dropout. In addition, using tags increases the bundle’s traceability and can provide priori knowledge for the subsequent bundle forwarding.

The bundles cached in the at a certain moment are shown in Figure 7. is the bundle newly received by . remaining cache space . Assume that in Figure 7. If the bundles are dropped according to the emergency function in Equation (6), , , and are dropped. Because , dropping alone can satisfy the cache requirements of . To further reduce the bundle drop, the bundles are grouped according to the value of . The bundles cached in the are grouped as follows: (1)Arrange the values of the emergency function in the order from smallest to largest. Select the first bundles that satisfy Equation (16).(2)The first bundles are grouped. Every bundles are defined as a group according to the size of the value of the emergency function. The th bundle is in the last group. If the last group has less than bundles, the last group will be supplemented to bundles according to the value of the emergency function

The set of dropped bundles is calculated according to the flowchart of the algorithm shown in Figure 8. In the figure, represents the set of bundles , where the emergency function value of is less than , and the emergency function value of is greater than . represents the temporary set variable. denotes the storage of the bundle into the set . is the set of bundles of the th group. Each group included bundles. Set contains groups. represents the integer part of . represents the total cache capacity occupied by all bundles in collection . represents the bundle with the largest cache capacity in set . denotes storing the bundle into the set . Figure 8 contains both internal and external iteration calculations. The internal iteration calculates the temporary set variable , and the external iteration calculates the set variable . The condition for each end of the internal iteration is that there is sufficient capacity to store after the satellite drops the bundles in set . However, some bundles in set may not need to be dropped and still can meet the storage requirements of the bundle . Therefore, the set is calculated by external iteration to reduce the number of dropped bundles on the premise of meeting the storage requirements of .

The pseudocode of the EBDA algorithm is shown in Algorithm 2. The labels in this algorithm will be used again in the VAA.

Input: Bundle:
Output: Dropped bundles set:
1: while+ () < () + () do
2:  ; The emergency function of the bundles in is deposited into ;
3:  ; Store the bundle corresponding to the smallest value in into set ;
4:  Deletes the smallest item in ;
5:  end while
6: Follow Figure 8 to find set that needs to be finally dropped.
7: Replace the dropped bundles with tags;
4.3. Virtual Acknowledgement Algorithm

The VAA proposed in this paper is applied to the following scenarios: (i)The bundle is lost or occurs erroneously during transmission(ii)The ACK/NACK is lost or occurs erroneously during transmission

VAA has the following advantages. (i)Reduce the cache capacity occupied by the bundle in the satellite(ii)Reduce end-to-end retransmission latency and acknowledgment delay(iii)Directly provide priori knowledge for calculating the next hop

VAA has different processing methods at destination nodes, relay satellites, and source nodes. The data flow of VAA in the constellation is shown schematically in Figure 9. In the figure, represents the source node, represents the relay satellite, and represents the destination node. represents the state of sending , and represents the state of waiting for an acknowledgment after sending .

The mechanism of operation of VAA in is as follows. After forwards in state , it opens the timer, waits for the of , and stores in the cache. Then, from switches to state . The timer waiting for in the node is defined as . represents the sequence number of the bundle, and represents the node’s ID. For example, the timer waiting for the bundle in is represented as . The timer waiting for the bundle in is represented as .Therefore, the timer waiting for in is represented as . When receives the of , deletes in the cache. When receives a NACK or , switchs to state , retransmits , and resets .

The mechanism of operation of VAA in is as follows. switches to state after state finishes forwarding, caching, and turning on timer for . When receives the of , deletes or from the cache. The sum of the third term of all tags of is calculated by Equation (17), and is included in the for forwarding. decodes in the cache when NACK is received at or . If is correct, switches to state , retransmits , resets , and forwards the ACK to the source node. If is incorrect, remove from the cache and forward the NACK to the source node.

The above process deletes from the cache when receives the of . However, when is lost during transmission, it triggers timeout retransmission of for satellites on the path that did not receive . It will cause the satellites that have received the to cache and forward again, resulting in resource waste. In order to solve this problem, after the relay satellite deletes the bundle corresponding to the , the deleted bundle is temporarily replaced by the first two items in the bundle tag. The first two terms of the bundle tag are defined as . Through the mapping relationship between and the bundle, when receives a bundle that has already replied to the , it will send the again but will no longer forward the bundle. can be deleted in two ways. The first is that again receives a bundle sent by the source node of the bundle corresponding to . The second is that waits for time after forwarding the and then deletes . The calculation formula of is where represents the timer waiting for the of in the source node.

In the VAA algorithm, the processing time of is ignored. When the satellite receives the , it is forwarded directly without considering the cache of and queuing modeling of .

The mechanism of operation of VAA in is as follows. receives and decodes . If is decoded correctly, reply with an . If is decoded incorrectly, reply with a NACK. The pseudocode of VAA in and is shown in Algorithm 3.

VAA in source nodes
Input: State ; ACK; NACK; time
1: Send bundle ; Set the retransmission timer according to equation (22);
2: if Receive ACK of then
3:  Delete from the cache;
4:  Delete the retransmission timer ;
5: end if
6: if Receive NACK of OR then
7:  Retransmission ;
8:  Reset the retransmission timer ;
9: end if
VAA in relay nodes
Input: State ; ACK; NACK; time
1: Forward the bundle ; Set the retransmission timer according to equation (22);
2: if Received ACK of then
3:  Replace with ; Start timer ;
4:  Delete the retransmission timer ;
5:  Calculate by (17); ACK;
6:  Forward ACK;
7: end if
8: if or Received  //note: and were sent from the same source node. then
9:  Delete ;
10: end if
11: if Received NACK of OR =0 then
12:  Calculate by equation (17);
13:  Check whether decoded in the cache is correct;
14:  if decoded correctly then
15:   ACK; //note: Put into the ACK package.
16:   Retransmission ; Forward ACK; Reset the retransmission timer ;
17:  else
18:   NACK; //note: Put into the NACK package.
19:   Delete ; Forward NACK to source node ;
20:  end if
21: end if
4.4. Scheme Analysis

In the EPFS algorithm, the satellite selects the next hop by calculating the equivalent distance and a priori knowledge. The proposed concept of a port lock flag can avoid loops in the path. EPFS algorithm does not need a routing table when forwarding bundles. After the satellite receives the bundle, is calculated, and the bundle is forwarded to the next hop. The satellite that receives the bundle later uses the same calculation method until the bundle is transmitted to the destination node. Because the equivalent distance between the satellite and the destination node is greater than that of the next hop of the satellite, theoretically, the bundles can be transmitted to the destination node 100%.

Using the emergency function in the EBDA algorithm can reduce the successive drops of the same bundle in the path. Thus, the VAA based on EBDA can reduce the retransmission time due to bundle decoding errors or timeouts. As shown in Figure 10, if is only wrong when is transmitted to , only received by is incorrect. The first case in Figure 10 does not use EBDA; the satellites after have a high probability of dropping because of the lack of cache capacity. When is continuously dropped, and the retransmission delay is where is the NACK transmission delay between and . is the NACK transmission delay between and . The second case in Figure 10 uses EBDA. Because using the emergency function in the EBDA algorithm can increase the priority of the dropped bundle, reducing the probability of the same bundle being continuously dropped. For example, after is dropped in , the priority of increases, and is no longer dropped in subsequent satellites. Therefore, can retransmit after receiving NACK. The retransmission time delay is . Denote , , , and as . If makes mistakes in the transmission process from to , received by are all incorrect. And is dropped in all satellites after because of insufficient cache capacity. The time of retransmission without EBDA is :

Because the EBDA algorithm is used, the priority corresponding to the bundle will increase after the bundle is dropped, and the emergency function value will be increased. So the probability of the same bundle being continuously dropped by the satellite in the path is reduced. As shown in Figure 10, suppose the bundles dropped by , , , and are , , , and , respectively. The time to retransmit : using EBDA is :

Because and , using the EBDA + VAA algorithm can theoretically reduce the retransmission delay of destination node decoding errors.

EBDA + VAA also can reduce timeout retransmission time. A timeout timer is set to wait for the after forwards . The calculation of is shown in Equation (22) [42]. denotes round trip time, denotes the after smoothing, and denotes the absolute value of after smoothing. The relay satellite transmits to destination node . The distance from the relay satellite to is decreasing, and the value is decreasing. Therefore, in Equation (12), retransmits the bundle in case , and retransmits the acknowledgment packet in case of , theoretically realizing optimality in reducing the retransmission delay.

The source node starts the retransmission timer after sending . After receiving , the relay satellite caches, forwards, and starts the retransmission timer . From Equation (22), can be derived. As shown in Figure 10, the retransmission with No EBDA needs to wait for time . The retransmission with EBDA needs to wait for time . Since , EBDA can reduce the retransmission time of . If there are timeouts for retransmission of both , the time required to complete the retransmission of in the No EBDA case is :

The time required to retransmit using EBDA is :

From Equation (22), we can derive . Thus, EBDA + VAA can reduce the timeout retransmission time.

5. LIDTN Scheme Simulation Results

In this section, we perform simulation experiments on the LIDTN scheme. The OneWeb constellation topology used in the simulation is shown in Figure 1. The location and numbering of the Earth stations are shown in Figure 4. The paths , , and in Figure 4 are defined as , , and , respectively.

5.1. Performance of the EPFS Algorithm

This paper analyzes the EPFS algorithm by taking the 3000th second of the constellation run period. As shown in Figures 1113, the path between the source and destination is calculated using the EPFS algorithm, Dijkstra shortest path algorithm, and Epidemic algorithm. In Figure 11, the route calculated by the EPFS algorithm and the path computed by the Dijkstra shortest path algorithm overlap entirely. That is, the path calculated by the EPFS algorithm is the shortest. The paths using the EPFS algorithm in Figures 12 and 13 partially overlap with the paths calculated by the Dijkstra algorithm, indicating that the paths calculated by the EPFS algorithm are not optimal every time. Simulations are performed for the whole constellation cycle, and the results show that the bundle can be sent from the source node to the destination node using EPFS.

Figure 14 shows the number of satellites that need to be involved for one routing based on the Dijkstra algorithm, Epidemic algorithm, and EPFS algorithm. This figure shows that the Dijkstra routing algorithm requires each satellite to be informed of the status of 648 satellites in the constellation. The EPFS algorithm, on the other hand, enables the transmission of the bundle with the least amount of knowledge of the constellation satellite state. As the distance between the source and destination nodes increases, the number of participating satellites required by the EPFS algorithm varies less. The Epidemic algorithm has a large variation in the number of satellites needed to participate as the distance increases.

To verify the delay of the EPFS algorithm, the transmission rate is set to 0.8 Mpbs-1.2 Mpbs, the size of each bundle is set to 1 KByte-2 Kbyte, and the link failure rate is set to 1%-5%. The Contact Graph Routing (CGR) [19] algorithm is forwarded only as a single copy. Figure 15 shows the experimental results of CGR, Enhanced Contact Graph Routing (ECGR) [43], Adaptive Message Replication Technique (AMRT) [44], and EPFS algorithms. The experimental results show that the EPFS algorithm is more advanced than other algorithms. The experimental results of the ECGR algorithm and CGR algorithm are not much different. The AMRT algorithm is superior to ECGR and CGR, because the AMRT algorithm considers historical congestion when selecting the next hop. The EPFS algorithm proposed by this paper is superior to the other three algorithms in terms of delay. This is because the EPFS algorithm equivalents the queue length to distance and obtains the link state to the next hop in real-time according to priori knowledge. When the link fails, the EPFS algorithm can avoid it in time.

5.2. Performance of the EBDA

In this experiment, we set the size of each bundle to be 1-20 M. Five bundles with similar emergency functions are used as a group. The probability of link congestion ranges from 2% to 30%. As shown in Figure 16, the relationship between the average congestion probability and the bundle drop rate for the three algorithms, FIFO, FCC, and EBDA, in the , , and paths is shown. The red curve shows the variation of the bundle drop rate with congestion probability for the EBDA algorithm in the three paths. The blue curve represents the traditional FIFO bundle dropping algorithm. The black curve represents the FCC algorithm. From Figure 16, the EBDA algorithm has the lowest drop rate of the bundle for the same congestion probability. As the congestion probability increases, the pronounced advantage of the EBDA algorithm (Table 2) shows the 15% probability of congestion, , , and paths, with the occurrence of congested satellites.

5.3. Performance of the VAA

In this simulation, the VAA algorithm is compared with the traditional acknowledgment algorithm and the No-Stop-Wait ACK proposed in literature [39]. The traditional acknowledgment algorithm uses the acknowledgment method in TCP/IP. As shown in Figure 17, the VAA algorithm is compared with the end-to-end latency of the traditional acknowledgment method with the maximum bundle loss rate of 6% (Figure 17(a)), 10% (Figure 17(b)), 20% (Figure 17(c)), and 30% (Figure 17(d)) of the ISLs, respectively. The retransmission timing is calculated iteratively according to Equation (22), with and set to 0.5. The red curve in the figure represents the VAA algorithm. The blue curve represents the traditional acknowledgment algorithm. The black curve represents the end-to-end latency multiplier reduction of the VAA algorithm over the traditional acknowledgment algorithm. From Figure 17, the VAA algorithm has more significant advantages with increased link bundle loss rate and path hop count. When the maximum bundle loss rate of the ISLs is 10%, the VAA algorithm reduces the end-to-end latency by about 1.4 times compared to the traditional acknowledgment algorithm. When the maximum ISL bundle loss rate is 30%, the VAA algorithm reduces the end-to-end latency by about 2.4 times compared to the traditional acknowledgment algorithm.

In the No-Stop-Wait ACK strategy in literature [39], packets are sent without waiting for an acknowledgment to continue sending packets. After a certain number of packages are sent, the destination satellite acknowledges them uniformly. This strategy reduces the time consumption caused by each acknowledgment and reduces the end-to-end latency. Figure 18 compares the No-Stop-Wait ACK strategy and VAA + No-Stop-Wait ACK optimized with the VAA algorithm. Figure 18(a) shows a group of three bundles, and the destination node replies after sending three consecutive bundles. Figure 18(b) shows a group of five bundles. The destination node responds with an acknowledgment after receiving five consecutive bundles. From Figure 18, as the number of hops on the paths increases, the use of VAA optimization can reduce the end-to-end latency when transmission errors occur in each group of bundles. The more the number of hops, the better the effect of the VAA algorithm.

6. Conclusion

This paper proposes a new LIDTN scheme suitable for large-scale constellation data transmission. First, the next hop to which the bundles will be forwarded is determined based on the equivalent distance and priori knowledge. Second, a bundle drop algorithm based on the emergency function is proposed to solve the congestion problem in the bundle forwarding process. Finally, a virtual acknowledgment algorithm is proposed to reduce the retransmission time and retransmission overhead. The EPFS algorithm provides data input for the EBDA and VAA algorithms, and the EBDA and VAA algorithms provide a priori knowledge for the EPFS algorithm. The three algorithms of the LIDTN scheme complement each other and adaptively solve the problems of bundles forwarding, congestion, and acknowledgment. Simulation results show that the LIDTN scheme is effective. In space-based networks with high link failure rates, the EPFS, EBDA, and VAA algorithms offer better performance than existing methods.

In future research, we will further optimize the LIDTN scheme so that the LIDTN scheme can be applied to large-scale multilayer polar/inclined orbit constellations.

Data Availability

The data used to support the findings of this study are included within the article.

Conflicts of Interest

The authors declare that they have no conflicts of interest.

Acknowledgments

This work was supported in part by the National Natural Science Foundation of China (grant number U21A20443), the Youth Innovation Promotion Association CAS (grant number 2020294), and the Shanghai Industrial Collaborative Innovation Project (grant number 2021-CYTX2-KJ03).