1 Introduction

Space-air-ground integrated networks (SAGINs) are one of the important trends in the next generation mobile communication system, which are hoped to achieve the global ubiquitous connection [1]. The SAGIN consists of air-based communication networks, space-based communication networks, and ground-based communication networks. It combines multiple communication facilities and provides extensive and diversified wireless communication services. Therefore, many researchers are committed to the application of wireless communication in SAGINS. Reference [2,3,4] proposed an air-ground integrated vehicle network, which uses an air network composed of quasi static high altitude platform to assist the ground network to provide broadband connection. Urban traffic will enter the third dimension and ease congestion. In [5], the author proposes an online service provisioning (OSP) framework for virtualization and micro services (VMS) that can be effectively supported by SAGINS. The framework can realize efficient, flexible and scalable service provisioning. Reference [6] proposed a mode of UAV cache assisted ground network. By actively caching the large content files with popular and repeated requests, the traffic burden of the ground network can be significantly reduced. [7] present a SAGIN edge/cloud computing architecture for offloading the computation-intensive applications considering remote energy and computation constraints, where flying unmanned aerial vehicles (UAVs) provide near-user edge computing and satellites provide access to the cloud computing. In [8], the author studied the deployment of edge caching in large-scale WiFi system.In reference [9], a fully distributed adaptive beacon control scheme is proposed under the background of ground urban traffic network. The vehicle can adjust the beacon rate according to the driving safety requirements, which can ensure the beacon reliability even in the case of highly dense vehicles and avoid rear end collision in dense scenes.Aiming at the relay selection of SAGINs, [10] proposed an intelligent relay node selection scheme using LEO satellites and UAVs as relay nodes to provide reliable communication services for ground equipment.

However, the air-ground integrated network belongs to the near-earth space part of space information network, which is mainly composed of low-altitude aircraft nodes such as airplanes, helicopters, fighters and unmanned aerial vehicles. The flying speed of aircraft nodes in air-ground network is very fast, which leads to frequent network topology changes. Therefore, the topologies of SAGINs are dynamic heterogeneous wireless networks, most often than not, without central controlling node. The characteristics of SAGINs with dynamically changing topology and without central nodes lead to greater challenges for network routing protocol design. The routing protocols in the SAGINs is required to be able to adapt to the dynamically changing network, such as topology and link quality, with reasonable control cost in a distributed manner.

Considering the characteristics of the SAGINs mentioned above, routing protocol design in SAGINs should meet the requirements of distributed computing and topology changing adaptation. Swarm Intelligence (SI) optimization algorithms, proposed in recent years to simulate the intelligent behavior of natural biological groups, rely on the mutual interaction between agents to achieve the purpose of finding an optimal solution. Each agent in the network works in parallel to cooperatively find a SI optimal solution in a distributed manner. Both the distributed and parallel characteristics of the SI optimization algorithm inherently match the characteristics of the routing algorithm requirements to SAGINs, in which each node works cooperatively and in parallel to archive multi-hop communication without a central node. Therefore, the SI algorithm has been used in wireless ad hoc networks in some literature, and it is hoped to solve the routing problem in SAGINs.

The Ant Colony Optimization (ACO) algorithm, a parallel computing SI algorithm, has significant advantages to solve the distributed dynamic combinatorial optimization problem, which could be applied to routing algorithms in SAGINs. Nowadays, many scholars have applied ACO-based algorithms to wireless destributed network routing algorithms [11,12,13,14]. G. Di Caro [15] applied the ACO algorithm to wireless ad hoc networks, and proposed an adaptive nature-inspired routing algorithm (so-called AntHocNet) using a measured pheromone value to indicate the path quality. With this algorithm, which belongs to multi-path routing algorithms, packets choose the path according to the probability relating to the pheromone value. Load balancing is automatically realized by this algorithm in a distributed manner. Based on the AntHocNet algorithm, Ajit R. Bandgar [16] proposed a location-aware ant colony routing algorithm, in which nodes select the nearest neighbor node as the next-hop node to forward data according to the information provided by the location server of the master node with the whole network topology information. Literature [17] combines ant colony algorithm and genetic algorithm to find possible paths from any source node to destination node under a given network topology. The set of possible paths is regarded as the initial population of a genetic algorithm, after that, based on fuzzy function and genetic operation, a set of optimal paths is determined by the initial population for any source to destination. Considering the trust value between nodes, transmission waiting queue length and signal strength, literature [18] combined ant colony algorithm with Particle Swarm Optimization (PAO) algorithm to solve the routing problem. The ACO algorithm is first used to find feasible paths, and then the PAO algorithm is used to select the optimal path from the discovered routes.

Ant colony algorithms have also been applied to solve the routing problem of vehicular ad hoc networks to improve the reliability of communication between vehicle nodes [19,20,21,22,23]. The algorithm in [22] adopts local pheromone and global pheromone for path selection. Literature [23] combines fuzzy theory and the ant colony algorithm to solve the routing problem. The fuzzy logic module is used to identify abnormal nodes and exclude them from the feasible node set, and then the ACO algorithm is used to find the optimal route. This method improves the convergence speed of the ACO algorithm.

Some researchers focus on solving the problem of energy consumption in wireless ad hoc networks and propose some ant colony routing algorithms based on energy consumption. Osama h. Hussein [24] proposed the Ant Routing Algorithm for Wireless Ad Hoc Networks (ARAMA), which considers the bandwidth of the link and the residual energy of the node. At the path selection stage, the node with more residual energy is selected as the next hop node. This algorithm not only reduces the energy consumption of the whole network but also reduces the network control overhead. The Energy-Aware Ant-based Routing (EAAR) algorithm proposed in [25] defines pheromone as the reciprocal of the product of the hop numbers an ant has passed and the remaining energy of the nodes which the ant is to pass through, so as to reduce the energy consumption of the node. Literature [26] presents the Energy and Path Aware ACO-Based Routing Algorithm for Wireless Sensor Networks (EPWSN). In the EPWSN algorithm, energy consumption is also included in the probability selection function. In addition, the algorithm also provides a new pheromone update method. The Ant-based Routing Algorithm with Multi-phase Pheromone and Power-saving (ARMPP) proposed in [27] also improves the performance of the algorithm by improving the pheromone update strategy. However, unlike the EPWSN algorithm, in the ARMPP algorithm, pheromones are calculated according to two different situations. One is that the pheromone changes instantly with the change of network topology, and the other is that the pheromone changes slowly with the change of network topology. The performance of the algorithm depends on the parameters, but it is difficult to determine the parameters. Literature [28] uses the Dijkstra algorithm to solve the poor initial performance problem of the ACO algorithm. Moreover, the selection probability of the algorithm is also a function of the pheromone, the remaining energy and the energy consumption of the nodes. An Energy-efficient ACO-based Multipath Routing (EAMR) algorithm is proposed in [29]. In the algorithm, a newly arrived ant would be received only if the number of hops the ant had traveled is less than the hops recorded in the access table maintained by the current node. Besides that, if the ants arrival time is longer than a preset time, it will be discarded. A clustered routing algorithm based on the ACO algorithm is presented in [30], which is divided into three stages: generating clusters, establishing routes, and transferring data. Firstly, cluster head nodes are selected randomly according to the residual energy of nodes. Then multi-hop paths are established using the ant routing algorithm. Finally, cluster head nodes select paths to transmit data based on the selection probability, which is determined by energy consumption and distance. In the Ant Colony-based Energy Control Routing (ACECR) algorithm proposed in [31], the route selection depends not only on the hops between nodes and the residual energy of nodes, but also on the average energy and minimum energy of the route. Literature [32] proposed a hybrid Ant Colony Optimization combined with Fitness Distance Ratio Particle Swarm Optimization (ACO-FDRPSO), which minimizes the energy consumption of the network to improve the lifetime of nodes, therefore the algorithm can improve the energy efficiency.

Other routing algorithms apply the ACO algorithm to existing algorithms. Isaac Woungang [33] proposed an ACO-based Energy-Efficient Ad Hoc On-Demand Routing (ACO-EEAODR) algorithm which combined the ACO algorithm and EEAODR algorithm. In the algorithm, the path with fewer hops and less energy consumption of nodes was selected as the optimal path, and the increment of pheromone was set as the reciprocal of energy consumption of nodes. As a result, the algorithm reduces energy consumption. Considering the congestion and routing reliability, Shubhajeet Chatterjee [34] proposed an ACO-based Enhanced Dynamic Source Routing (E-Ant-DSR) algorithm, in which the pheromone value depends on the number of hops, the congestion condition and reliability of the path. In [35], the ACO algorithm is applied to the routing discovery phase of the Ad hoc On-Demand Distance Vector Routing (AODV) algorithm.

Most existing ant routing algorithms above only consider the influence of path length and node energy consumption on the algorithm, but ignore the influence of link channel quality on the algorithm. In fact, the change of network topology will largely affect the quality of the wireless channel, which in turn affects the quality of communication between nodes. However, the impact of the physical environment on routing algorithms, which is a very important factor and should be considered, is ignored in most routing algorithms. Although the algorithm in [36] takes hops, residual energy and signal-to-noise ratio (SNR) into consideration, it does not consider the influence of SNR variation on the performance of the algorithm. Based on the importance of the physical environment on ad hoc routing algorithms, an improved cross-layer ant colony routing algorithm based on link quality is proposed in this paper to solve the link adaptation problem on routing algorithms in wireless ad hoc networks. In our proposed routing algorithm, the signal-to-noise ratio (SNR) of communication and the variation of SNR is taken into account to improve the reliability of communication between nodes in wireless ad hoc networks, thus improving the packet delivery rate and decreasing the packet delay in wireless ad hoc networks.

2 Summary of contributions

In this paper, the topology of heterogeneous SAGINs is analyzed and is modeled as a decentralized weighed graph. Instead of scalars, the weighed parameters of the graph are vectors including SNR of physical channel, variation of SNR, packet queuing delay and queue length of node in SAGINs. A cross-layer routing method based on the ACO algorithm is proposed for space-air-ground integrated networks. Given that the physical channel quality, affected by the dynamic changing topology, is seldom considered in the ACO based routing algorithms in existing literature, physical link parameters such as SNR and end-to-end delay are introduced into the calculation of routing selection. Wiener predictor is adopted to predict future signal-to-noise ratio parameters, and the end-to-end delay of links is also deduced by using queuing theory. By considering the influence of these important factors, the proposed ACO-based cross-layer routing algorithm is more adaptive to the dynamic changing wireless link of SAGINs.

In addition, the feasibility and performance of the proposed ACO-based cross-layer routing algorithm are analyzed in detail. Simulation results show that the proposed algorithm, with a slightly higher delay, has a higher packet transmission rate than the traditional ant colony routing algorithm AntHocNet in different scenarios.

3 Paper organization

The rest of this paper is organized as follows. In Section 4, the topology of space-air-ground integrated networks containing physical link information is proposed, and the method for obtaining the estimated SNR as well as that for acquiring the expectation of end-to-end packet delay is introduced. In Section 5, the routing issue of SAGINs is established as the ant foraging model and the proposed ACO-based cross-layer routing algorithm is described in detail according to three parts: route search, route selection and route maintenance. Section 6 compares the proposed algorithm with the original ant colony routing algorithm by simulation and analyzes the performance of the proposed algorithm. Finally, conclusions are presented in Section 7.

4 Topology of space-air-ground integrated networks

Space air-ground integrated network composed of adjacent space network aerial networks and terrestrial communication network has been becoming as an emerging architecture in the next generation networks. Satellites are regarded as an important supplement to the air-ground network. When the ground network and air network fail or are damaged, the satellite network is used to continue communication. The network architecture of air-space integration studied in this paper is shown in Fig. 1. Each segment of SAGINs works independently, therefore SAGINS has the characteristics of heterogeneity, self-organization, and time-variability.

Fig. 1
figure 1

Architecture diagram of Space-air-ground integrated networks

It can be seen from Fig. 1 that the near space network plays an important role in the Space-air-ground integrated network, but compared with the satellite network system and the ground network system, there is little research on the routing algorithm of the near space air ground integrated network at present. In order to realize the data transmission of air-ground network, an efficient routing technology is a necessary part of the communication system. However, for the characteristic of heterogeneity, self-organization, and time-variability of SAGINs, the traditional routing protocol adopting hierarchical routing mechanism is unsuitable for the air-ground network. Therefore, based on the framework of air-ground network, this paper mainly study the routing mechanism of near space air ground integrated networks.

Under the framework of air-ground integrated network, we take SNR of physical channel, variation of SNR, packet queuing delay and queue length of node into consideration in designing the cross-layer routing mechanism.

As the routing path selection calculation in this paper depends on multiple parameters mentioned above, we model the topology of SAGINs as a weighted graph. The weight of the graph is a vector composed of the 4 parameters, as shown in Formula (1).

$$ {W_{i - j}} = (SN{R_{i - j}},{\Delta} SN{R_{i - j}},{T_{i - j}},{D_{j}}) $$
(1)

where Wij represents the weight of the SAGINs topology, SNRij represents the signal-to-noise ratio between node i and j, ΔSNRij represents the variation of SNRij, Tij represents the end-to-end delay between node i and j, and Dj represents the queuing length of node j. Then the backbone nodes in the SAGINs can be abstracted into a network topology with physical link state according to the network state information, as shown in Fig. 2.

Fig. 2
figure 2

Vector weighted topological graph

In Fig. 2, the connecting line between node i and node j has clear direction, saying that it can be from i to j, not from j to i. The weight of the network topology indicating physical link state information can be expressed by an adjacency matrix:

$$ N = \left( {\begin{array}{*{20}{c}} {{W_{_{1 - 1}}}}&{...}&{{W_{_{1 - n}}}}\\ {\vdots} & {\ddots} & {\vdots} \\ {{W_{_{n - 1}}}}& {\cdots} &{{W_{_{n - n}}}} \end{array}} \right) $$
(2)

The physical link state information, including signal-to-noise ratio, variation of SNR, end-to-end delay, queuing length of nodes can be found in the matrix, the elements in which are vectors.

In free space wireless communication, the signal-to-noise ratio of the communication link between two nodes can be expressed as

$$ SN{R_{rt}} = 10\log (\frac{{{G_{r}}{G_{t}}{P_{t}}}}{{{{(4\pi d/\lambda )}^{2}}{\sigma^{2}}}}) $$
(3)

where Gt is the transmitting antenna gain, Gr is the receiving antenna gain, Pt is the sending power, d is the distance between nodes, λ is the wavelength of the electromagnetic wave, and σ2 is the noise power

Because the time-variability characteristics of SAGINs, which will bring dynamic changes of channel information. The routing algorithm based on the physical channel information at the current time may result in the degradation of network performance. Therefore, it is preferable to use the prediction of SNR as a parameter in the ACO based routing. A Wiener predictor is used to predict the future SNR according to the historical SNR data. As shown in the Fig. 3, the estimation of the future SNR is expressed as SNR.

Fig. 3
figure 3

Prediction of channel parameters

All nodes in the network make Wiener prediction for the next cycle’s SNR through the obtained historical SNR data, and the ACO based algorithm will select the route to forward packets according to the estimation of SNR obtained by a Wiener predictor. Wiener predictor is shown in Fig. 4. Supposed that the system sample response is h(n), the input signal is SNR(n), the interference signal is v(n), the expected output signal is yd(n) = SNR(n + N), and the predicted output signal is y(n) = SNR(n + N),N ≥ 0. In the Wiener predictor used to predict the estimated signal-to-noise ratio of the next period, and the minimum mean square error is taken as the optimal criterion.

Fig. 4
figure 4

Wiener predictor

According to the Wiener predictor in Fig. 4, the predicted output signal is as follows:

$$ y(n) = SNR(n + N) = \sum\limits_{m = 0}^{M} {h(m)SNR(n - m)} $$
(4)

where n refers to the current time state, N is the time span between current time and the time which SINR to be estimated, M is the numbers of historic data used to the predictor, m ∈ [0,M] refers to the time span between current time and the prior time of historic data. We using e(n + N) to represent the prediction error, which is expressed as following:

$$ e(n + N) = SNR(n + N) - \hat {SNR}\ (n + N) $$
(5)

where E[e2(n + N)] is the mean square error of prediction, so it is obtained as follows:

$$ \begin{array}{ll} E[{e^{2}}(n + N)] &= E[{\{ SNR(n + N) - \hat{SNR}(n + N)\}^{2}}]\\ &= E[{\{ SNR(n + N) - \sum\limits_{{\text{m = 0}}}^{M} h (m)x(n - m)\}^{2}}] \end{array} $$
(6)

The predicted output y(n) could be obtained by minimized the mean square error E[e2(n + N)]. Using the Wiener prediction method above to obtain the SNR of the next cycle can provide more accurate parameters for routing selection. As time-variability of physical channels, estimated channel information SNR provided by Wiener predictor are more effective than current channel parameters SNR for ACO based routing algorithm.

In order to reflect the packet delay by using the path selecting method in ACO based routing algorithm, the end-to-end delay between node pairs should be comprehensively considered. The end to end delay composes of transmission delay and the queuing delay. The transmission delay between nodes is the time required for packets to be transmitted to the channel. The queuing delay is the waiting time for the packet in the queue buffer before it is to be transmit to the physical link. Comparing with the queuing delay, the transmission delay is much litter. Neglecting the transmission delay, we only consider the packet queuing delay in the SAGINs. The calculation method of queuing delay will be modeled and deduced below.

Packets received from neighbor nodes are fall into two types, the one with destination to receiving-node could be seen absorbed in the local node, the other with destination to non-receiving-node should be forward to the next node by routing selecting method. Packets to be forward along with packets generated in local node are sent to a data transmitting buffer. Therefore, the packets coming into the data transmitting buffer, and packets leaving the buffer to be send to physical wireless channel, could be describe as a queuing system. The diagram of packets queuing system in a Node of SAGINs is shown in Fig. 5.

Fig. 5
figure 5

Diagram of Packets Queuing System in a Node of SAGINs

Supposed that packets received by the local node in SAGINs are absorbed with probability p(n), and are to be forward to next node with probability 1 − p(n). The packets arriving at the data transmitting buffer composed of both the packets to be forward and the packets generated in local node. The arriving packets at the queuing buffer could be regarded as a customer source. When the packets arrive at the data transmitting buffer, they need to wait in a First Come First Served (FCFS) queue until they are output to the physical link. The system can be simulated as queuing system with only one queue and only one single service window, if all packets without distinguishing priorities.

The packets arriving process of packets at the FCFS queue could be described as a Poisson process with parameter λ, here λ is the effective arrival rate of the packets which includes packets to be forward and packets generated in local node. The packets leaving the FCFS queue obeys the negative exponential distribution with parameter μ, here μ represents the packet transmitting rate of a node in SAGINs. It is not difficult to acquire both parameter λ and μ in a node through statistical method. If the transmitting buffer lengthin the nodes is K , the queuing system of nodes in SAGINs could be described as an M/M/1 queuing process. Its state flow diagram is shown in Fig. 6.

Fig. 6
figure 6

State Flow Diagram of M/M/1 Queuing Model

Assumed that the probability of arriving k packets to the FCFS is pk(0 ≤ kK + 1). The state balance equation of the queuing system could be obtained according to the state transition diagram of the system:

$$ \left\{ \begin{array}{ll} \lambda {p_{0}} &= \mu {p_{1}}\\ (\lambda + \mu ){p_{k}} &= \lambda {p_{k - 1}} + \mu {p_{k + 1}},1 \le k \le K - 1\\ \lambda {p_{k - 1}} &= \mu {p_{k}} \end{array} \right. $$
(7)

Let the service intensity η be η = λ/μ, when η < 1, the queuing process of M/M/1 model would finally reach to a stationary state. The unique stationary distribution is denoted as p0,p1,p2pipk. Here the initialization conditions:\(\sum \limits _{k = 0}^{K} {{p_{k}} = 1}\) should be satisfied

It can be solved that p0 = 1 − η; pk = ηk(1 − η).Where p0 is the idle probability of the FCFS system, from which it can be calculated that the average queue length when the system reaches a stationary state, which is:

$$ \begin{array}{@{}rcl@{}} L_{s}\!&=&\sum\limits_{k=0}^{\infty}kp_{k} = \eta(1\!-\eta)\sum\limits_{k=0}^{\infty}kp^{k-1} = \eta(1\!-\eta)\left( \frac{\eta}{1 - \eta}\right)'\\\!&=&\!\frac{\eta}{1 - \eta} = \frac{\lambda}{\lambda - \mu} \end{array} $$
(8)

The expected queuing delay could be described as the queue length of the FCFS when it reaches at stationary state. Neglecting the transmission delay, we use the queuing delay to indicate the packet end-to-end delay in the SAGINs, which is described as Tij = Ls(j).

In this paper we use four critical parameters, that is SNRij, ΔSNRij, Tij, Dj, to describe SAGINs with the characteristics of heterogeneity, self-organization, and time-variability as a decentralized wireless networks. As the behavior of ants seeding for food shares the same distributed characteristics with the routing decentralized wireless networks, the ACO-based routing algorithm has inherent advantages to be applied to SAGINs.

5 The ACO-based cross-layer routing algorithm

In 1992, Marco Dorigo first proposed the ant colony optimization (ACO) algorithm to find an optimal path [15]. The algorithm is based on the idea of ant foraging. In nature, ants always find the shortest path from the nest to the source of food when foraging. As shown in Fig. 7, it is assumed that there are multiple paths from the nest to the food source. At first, ants randomly select paths and leave pheromones in them. The next ants will choose a path with higher pheromone concentration by sensing the pheromones leaved ahead on the path. Then the shorter the path length, the greater the pheromone concentration in the path, hence more and more ants will finally choose this shortest path.

Fig. 7
figure 7

An example of ant foraging

Based on this idea, Dorigo proposed an ant colony optimization algorithm to simulate the ants foraging behavior, which was initially applied to solve the traveling salesman problem (TSP). The purpose of the traveling salesman problem is to find the shortest path connecting N given cities, and the path must pass through each city. At the beginning of the algorithm, M cities are randomly selected from the N cities. Then M ants are put into M cities respectively, and the city, where each ant is located, is added to the ant’s taboo table tabu(t). In each iteration of the algorithm, the kth ant selects the next city which is not in its taboo table tabuk(t) according to the selection probability and adds the passing city to its taboo table tabuk(t). At time t, the selection probability of the kth ant transferring from city i to city j can be calculated by

$$ p_{ij}^{k}\left( t \right) = \left\{ {\begin{array}{*{20}{c}} {\frac{{\left[ {\tau_{ij}^{}\left( t \right)} \right]_{}^{\alpha} \cdot \left[ {\eta_{ij}^{}\left( t \right)} \right]_{}^{\beta} }}{{\sum\limits_{s \in \mathcal{N}_{i}^{k}} {\left[ {\left[ {\tau_{is}^{}\left( t \right)} \right]_{}^{\alpha} \cdot \left[ {\eta_{is}^{}\left( t \right)} \right]_{}^{\beta} } \right]} }},}&{j \in \mathcal{N}_{i}^{k}}\\ {0,}&{{\text{other}}} \end{array}} \right. $$
(9)

where τij(t) is the residual pheromone on the path between city i and city j at time t, and \(\mathcal {N}_{i}^{k}\) is the set of next alternative cities of the kth ant at city i. ηij(t) is the heuristic information, and in the TSP problem, it is generally set as the reciprocal of dij which is the Euclidean distance between city i and city j. α is the pheromone influencing factor and β is the heuristic information influencing factor.

After each iteration, the pheromone concentration in the path between city i and city j is updated according to

$$ {\tau_{ij}}\left( {t + n} \right) = \left( {1 - \rho } \right){\tau_{ij}}\left( t \right) + \rho {\Delta} {\tau_{ij}}\left( t \right) $$
(10)
$$ {\Delta} {\tau_{ij}}\left( t \right) = \sum\limits_{k = 1}^{K} {\Delta \tau_{ij}^{k}\left( t \right)} $$
(11)

where ρ ∈ (0,1) is the volatility factor, which prevents the infinite accumulation of pheromone concentration on paths. \(\triangle \tau _{ij}^{k}(t)\) is the increment of pheromone released by the kth ant on the path between city i and city j at time t, K is the number of ants passing through the path at time t, and \(\triangle \tau _{ij}^{k}(t)\) is the total pheromone increment on the path at time t.

According to the pheromone update strategy of the ant colony algorithm model proposed in [15], the pheromone increment calculation method in this paper adopts Ant-Cycle model, the pheromone increment is expressed as

$$ {\Delta} \tau_{ij}^{k}\left( t \right) = \left\{ {\begin{array}{*{20}{c}} {\frac{Q}{{L_{ij}^{k}}},}&{{\text{ if the }}{k_{th}}{\text{ ant passes }}{\text{in}} {\text{ the iteration}}}\\ {0,}&{{\text{other}}} \end{array}} \right. $$
(12)

where Lk denotes the total length of the path which the kth ant passes through in an iteration. We will deduce and explain Lk in the later part.

The ant colony routing algorithm uses the ACO algorithm to find the optimal route of the wireless ad hoc network to improve the delivery rate of data packets and reduce the end-to-end delay. Its basic idea is to use small control packets (so-called ants, which are generated by nodes simultaneously and independently) to obtain routing information, and then find the optimal path to the assigned destination. Firstly, multiple ants search paths at the same time and collect quality information about paths. The nodes then use quality information to update the routing table when ants are back to the source node along paths. The routing table stores the selection probability of each node selecting the next node for transmission, which is updated according to the pheromone value left by ants. In the ant colony routing algorithm, all ants randomly choose paths according to the selection probability, and those paths with higher pheromone are more likely to be selected. Different ants can choose different paths to reach the destination node, so as to achieve network load balancing. Using this probability selection mechanism can avoid ants from choosing low-quality paths. In addition, ants are very exploratory, and they will continue to sample and generate new paths as backup paths in case of link failure or network congestion. By sending enough ants to different destinations, nodes can get the latest information about the optimal path and determine the best route to the destination node.

At present, most existing ant colony routing algorithms only consider the parameters of the routing layer and the MAC layer, such as hops, transmission delay and network energy consumption, but ignore the influence of channel quality on routing. In wireless ad hoc networks, due to the dynamic changes of the network, the channel quality will change with the dynamic topology. When the channel quality of the communication link is poor, the failure probability of link data transmission is very high. Although the path is shown to be the optimal path in the routing table, we cannot choose the path to be the best route due to the significant reduction in packet delivery rate. Therefore, channel quality is very important for routing. For wireless communication, the signal-to-noise ratio can reflect the quality of communication channels. The received signal is composed of source signal and noise. If the signal-to-noise ratio is too small, it is difficult to decode or even get the correct information. Therefore, in the improved cross-layer routing algorithm proposed in this paper, we will consider the influence of channel quality on routing selection. The signal-to-noise ratio is considered to improve the path selection probability. Besides, considering that the channel quality changes with the dynamic topology, the variation of signal-to-noise ratio will be taken into account to further improve the delivery rate of data packets.

The ACO-based cross-layer routing algorithm proposed in this paper includes two phases: the routing establishment phase and the routing maintenance phase. In the algorithm, nodes do not need to maintain the routing table all the time, and only start to establish routes and maintain the corresponding routing table when data transmission is needed. The pheromone of each path is stored in the routing table. The algorithm can be subdivided into three phases: route search, route selection and route maintenance.

5.1 Route search

When the source node wants to communicate with the destination node, the source node first checks whether there is a route to the destination node in the routing table. If so, the next hop can be selected according to the routing table. Otherwise, if there is no routing to the destination node, the forward ants are broadcast by the source node to search for new paths. When the forward ants arrive at the destination node, the destination node sends backward ants. The backward ants return to the source node along the path that the forward ants have traveled through, and the nodes on the path update the routing information. During the path search process, ants can search for multiple paths for route selection in the second phase, and Fig. 8 is an example of a multiple path search. Fig. 8a is the topology of the network, and Fig. 8b shows that there are four paths from the source node to the destination node. The first is S-1-2-3-D, the second is S-4-5-3-D, the third is S-4-5-7-D, and the fourth is S-6-7-D.

Fig. 8
figure 8

The example of the multi-path search: a The topology of the network; b Several paths from the source to the destination

5.2 Path selection

When the routes are established, nodes will randomly select a path to transmit the data packet according to the selection probability, and monitor and maintain all path information in real-time. Each node will maintain a routing table Prob, pij(t) ∈ R is the element of the routing table that presents the probability that node i selects node j as the next hop at time t. The selection probability is mainly determined by pheromone values.

Since the SNR can reflect the channel quality, the larger the SNR, the better the current channel. However, due to the dynamic changes in network topology, the SNR values detected by nodes are also changing. For example, assuming that node m and node n are both neighbors of node i, the current SNR between node i and node m is equal to the current SNR between node i and node n. And node m is moving toward node i while node n is moving away from node i. Next time, the link quality between node i and node m will certainly be better, while the link quality between node i and node n will certainly be worse because node n may move out of the communication range of the node i. In this case, node i should prefer to select node m as the next hop. Therefore, this algorithm considers not only the influence of SNR but also the influence of the SNR variation on the performance of the algorithm. In the ACO-based cross-layer routing algorithm, let \(\eta _{ij}(t)=SNR_{ij}(t)\cdot e^{\Delta SNR_{ij}(t)}\), so the path selection probability can be expressed as

$$ p_{ij}^{}\left( t \right) = \frac{{\left[ {\tau_{ij}^{}\left( t \right)} \right]_{}^{\alpha} \cdot \left[ {\mathop {SNR_{ij}^{}}\limits^{} (t) \cdot {e^{\Delta SNR_{ij}^{}(t)}}} \right]_{}^{\beta} }}{{\sum\limits_{s \in {\mathcal{N}_{i}}} {\left[ {\left[ {\tau_{ij}^{}\left( t \right)} \right]_{}^{\alpha} \cdot \left[ {\mathop {SNR_{is}^{}}\limits^{} (t) \cdot {e^{\Delta SNR_{is}^{}(t)}}} \right]_{}^{\beta} } \right]} }} $$
(13)

where τij(t) is the pheromone concentration left by ants through the link between node i and node j at time t. The pheromone representing the routing information, which is stored in the pheromone table of node i and e is the Euler number. \(\mathcal {N}_{i}\) is the neighboring node set of node i. SNRij(t) is the predicted signal-to-noise ratio of the communication link between node i and node j at time t, which could be obtained by formula (4). ΔSNRij(t) is the SNR variation of the communication link between node i and node j at time t.

In addition, when the signal-to-noise ratio is small, it is difficult to decode the signal. In order to prevent the node from choosing the poor quality link, we set the signal-to-noise ratio threshold to improve the performance of the algorithm. If the SNR of the link is less than the signal-to-noise ratio threshold, the link will not be selected. Conversely, if the SNR of the link is greater than the signal-to-noise ratio threshold, the link will be possible to be selected, i.e.,

$$ SNR_{ij}^{}(t) = \left\{ {\begin{array}{*{20}{c}} {SNR_{ij}^{}(t)}&{ SNR_{ij}^{}(t) \ge MIN\_SNR}\\ 0&{{\text{otherwise}}} \end{array}} \right. $$
(14)

And the signal-to-noise ratio threshold is

$$ MIN\_SNR = 10\log (\frac{{{G_{r}}{G_{t}}{P_{t}}}}{{{{(4\pi \gamma R/\lambda )}^{2}}{\sigma^{2}}}}) $$
(15)

where γ ∈ [0.5,1] is the signal-to-noise ratio threshold change parameter, which specific value will be further discussed in the simulation. R is the communication range of the sending node.

The SNR variation of the communication link between node i and node j is obtained by

$$ {\Delta} SN{R_{ij}}(t) = SN{R_{ij}}(t) - SN{R_{ij}}(t - 1) $$
(16)

where SNRij(t) represents the signal-to-noise ratio of the communication link between node i and node j at the current time t, and SNRij(t − 1) represents the signal-to-noise ratio of the communication link between node i and node j at the previous time t − 1.

The updated equation of pheromone in the algorithm is expressed as

$$ {\tau_{ij}}\left( {t + 1} \right) = \left( {1 - \rho } \right){\tau_{ij}}\left( t \right) + \rho {\Delta} {\tau_{ij}}\left( t \right) $$
(17)

where △τij(t) is the increment of pheromone at time t calculated by Formula (11) and Formula (12) , and ρ ∈ (0,1) is the pheromone volatility coefficient. The \(L_{ij}^{k}\) in Formula (12) is a parameter representing the cost of the path to be select for forwarding packets. this paper introduces the weighted sum of the expected packet end-to-end delay Tij and the queue length Dj at time t as the cost value, as shown in Formula (18).

$$ L_{ij}^{k} = w{D_{j}} + (1 - w){T_{i - j}} $$
(18)

where w ∈ (0,1) is the weight coefficient of queuing delay, and its value can refer to the value of ρ in formula (17).

5.3 Routing maintenance

In wireless ad hoc networks, the links between nodes may be broken due to the movement of nodes. Therefore, the routing information needs to be updated and maintained constantly. As shown in Fig. 9, in the routing maintenance phase, the source node periodically sends forward ants to the destination node. The forward ants are primarily responsible for monitoring the quality of the paths, which have a small probability of being broadcast to explore new paths. Once the link is broken (as shown in Fig. 9, the path between node 3 and destination is broken), the forward ants will immediately return and inform the source node. And then the source node updates the routing table to avoid choosing the failure path in the next transmission.

Fig. 9
figure 9

Routing maintenance

Figure 10 shows the flow of the proposed cross-layer ant colony routing algorithm. The algorithm uses forward ants and backward ants to search multi-path and updates the routing information combined with the novel strategy. Finally, the algorithm will converge and find the optimal path after several iterations.

Fig. 10
figure 10

Flowchart for the ACO-based cross-layer routing algorithm

6 Simulation and analysis

In this section, MATLAB is used to evaluate the performance of the improved cross-layer ant colony routing algorithm. We also compare the proposed ACO-based cross-layer routing algorithm (CL-AntHocNet) with the original ant colony routing algorithm (AntHocNet).

In the simulation, there are some nodes randomly placed in a rectangular 1500m*300m flat space [37]. Each node can randomly choose a target node and moving speed, and then move towards the target node at this speed. The node will stop moving when it reaches its target. After a period of stay, the node will reselect a destination node and moving speed, and continue to move. The maximum moving speed is MaxSpeed and the maximum stop time is MaxPause. The moving speed of a node varies from 0 to MaxSpeed, and the stop time varies from 0 to MaxPause. Besides, each node can only communicate with other nodes in its communication range. Ants (i.e. the data packets) that fail to reach the communication destination node within the preset time will be discarded. If two nodes are adjacent, the ants can be transferred from one node to another by a hop. Assuming that a hop is equal to a certain time, we can use the hops to indicate the data transmission time. The Ant-Cycle model is used in our simulations. Relevant simulation parameters are shown in Table 1.

Table 1 Simulation parameters

Firstly, we discuss the influence of different maximum moving speed on algorithm performance with different MaxPause. It can be seen from Fig. 11a and b that with the increment of MaxSpeed, the data packet delivery rate of both the CL-AntHocNet algorithm and the AntHocNet algorithm is decreasing, while the end-to-end delay is increasing. Apart from that, it can be seen from figures that a larger MaxPause leads to a higher packet delivery rate and a smaller latency. This is mainly because both MaxSpeed and MaxPause indicate the mobility feature of nodes. The larger the MaxSpeed or the smaller the MaxPause indicates the faster the network topology changes. Therefore, the delivery rate is lower and the end-to-end delay is higher, and vice versa. In addition, under the same MaxPause, it can be seen from the simulation that the CL-AntHocNet algorithm is superior to the AntHocNet algorithm in terms of delivery rate, but the end-to-end delay is slightly higher than the AntHocNet algorithm. This is mainly because the CL-AntHocNet algorithm considers the influence of both hops and link SNR. The current node is not likely to choose the node beyond the communication range or the node with poor channel quality as the next hop, although it may be the shortest route, thus reducing the packet loss rate and increasing the delivery rate. But it is worth noting that the increased delay is subtle.

Fig. 11
figure 11

The influence of different maximum moving speeds on algorithm performance with different MaxPause when communication range = 300m, α=β= 2 , ρ= 0.7 , γ= 0.95 , Number of nodes = 50: a The relation between packet delivery rate and MaxSpeed with different MaxPause; b The relation between average hops and MaxSpeed with different MaxPause

Then we will discuss the influence of communication ranges on the performance of both algorithms. It can be seen from Fig. 12a that the packet delivery rate of both the CL-AntHocNet algorithm and the AntHocNet algorithm is higher when the communication range is larger. When the network topology changes dynamically, a larger communication range leads to a higher success probability of communication between nodes, thus increasing the packet delivery rate. Under the same communication range, the CL-AntHocNet algorithm is superior to the AntHocNet algorithm in terms of packet delivery rate. From Fig. 12b we can see that the end-to-end delay of the CL-AntHocNet algorithm is lower than that of the AntHocNet algorithm when the communication range is small. This is because the CL-AntHocNet algorithm takes into account the variation of SNR. When the communication range is small, the next hop node may move out of the communication range of the current node due to the network dynamic change. The CL-AntHocNet algorithm considers the SNR variation to avoid the node from choosing the link with poor channel quality and thus reduce the end-to-end delay.

Fig. 12
figure 12

The influence of different maximum moving speeds on algorithm performance with different communication range when MaxPause= 100s, α=β= 2 , ρ= 0.7 , γ= 0.95 , Number of nodes = 50: a The relation between packet delivery rate and MaxSpeed with different communication range; b The relation between average hops and MaxSpeed with different communication ranges

Besides, in the CL-AntHocNet algorithm, when the MaxSpeed of nodes is small, the larger communication range leads to higher delay. This is because when the node moves slowly, the network topology changes slowly, and the link communication quality is stable. Nodes with a small communication range can also find routes that meet communication quality requirements. If the communication range is expanded, the node will choose the route with the better link quality and the number of hops may increase.

Next, we will discuss the influence of the number of nodes with different MaxSpeed. It can be seen from Fig. 13a that when the number of nodes is small, increasing the number of nodes can increase the packet delivery rate of both the CL-AntHocNet algorithm and the AntHocNet algorithm. However, after the number of nodes exceeds a certain extent, the packet delivery rate will decline instead. This is mainly because we have made a limit on the hops in simulation in order to ensure that the end-to-end delay will not be too large. The destination node only receives data packets that reach the destination node within the preset time, and data packets arriving at the destination node beyond the time will be discarded. These discarded packets are also taken into account when calculating the packet delivery rate. Thus, as the number of nodes increases, there will be more ring paths in the network, and the number of data packets arriving at the destination nodes within the preset time decreases, so does the packet delivery rate. In addition, it can be seen from the curve in Fig. 13a that the CL-AntHocNet algorithm can better adapt to the network dynamic change than the AntHocNet algorithm. Besides, Fig. 13b shows that a larger number of nodes causes a higher end-to-end delay. This is mainly because the hops from the source to the destination increase with the number of nodes increasing.

Fig. 13
figure 13

The influence of the different number of nodes on algorithm performance with different MaxSpeed when communication range = 300m, MaxPause= 100s, α=β= 2 , ρ= 0.7 , γ= 0.95 : a The relation between packet delivery rate and the number of nodes with different MaxSpeed; b The relation between average hops and the number of nodes with different MaxSpeed

Afterward, we will discuss the influence of the SNR threshold on the performance of the CL-AntHocNet algorithm. From Fig. 14a and b, we can see that no matter what the MaxSpeed is, the packet delivery rate increases first and then flattens with the increase of γ. On the other hand, with the increase of γ, the delay keeps increasing. When γ = 0.95, the delivery rate reaches the maximum and the average end-to-end delay is less than that of γ = 1. Therefore, setting the SNR threshold can improve the performance of the algorithm, and the performance of the algorithm with the SNR threshold is better than that without the SNR threshold.

Fig. 14
figure 14

The influence of SNR threshold variation on the performance of the CL-AntHocNet algorithm with different MaxSpeed when communication range = 150m, MaxPause= 100s, α=β= 2, ρ= 0.7, Number of nodes = 50: a The relation between packet delivery rate and γ with different MaxSpeed; b The relation between average hops and γ with different MaxSpeed

Finally, we will discuss the influence of the volatility factor ρ on the performance of both algorithms. From Figs. 15 and 16, we can see that no matter how large the communication range is and what the MaxSpeed is, the volatility factor ρ will not have a great impact on the performance of both the CL-AntHocNet algorithm and the AntHocNet algorithm.

Fig. 15
figure 15

The influence of the volatility factor on algorithm performance with different MaxSpeed when communication range = 150m, MaxPause= 100s, α=β= 2, γ= 0.95, Number of nodes = 50: a The relation between packet delivery rate and the volatility factor ρ with different MaxSpeed; b The relation between average hops and the volatility factor ρ with different MaxSpeed

Fig. 16
figure 16

The influence of the volatility factor on algorithm performance with different MaxSpeed when communication range = 300m, MaxPause= 100s, α=β= 2, γ= 0.95, Number of nodes = 50: a The relation between packet delivery rate and the volatility factor ρ with different MaxSpeed; b The relation between average hops and the volatility factor ρ with different MaxSpeed

Based on the above simulation analysis, compared with the AntHocNet algorithm, the CL-AntHocNet algorithm proposed in this paper can significantly improve the delivery rate, and only slightly increase the delay. Therefore, the CL-AntHocNet algorithm considering the influence of channel quality has better performance than the original AntHocNet algorithm.

7 Conclusions

Considering the heterogeneous,self-organization and time-varying characteristics of the SAGINs on the routing mechanism design, this paper proposed a novel ACO-based cross-layer routing algorithm for SAGINs. A topology with parameters containing physical channel information is introduced to describe the heterogeneous networks. Based on the topology, the novel routing algorithm considers not only the packet end-to-end delay but also the influence of channel quality of the physical layer on the performance of the routing algorithm. The variation of SNR and the prediction of SNR are introduced in the algorithm to reflect the time-varying physical channel. In addition, by introducing queuing theory, the end-to-end delay of nodes is deduced and calculated, which greatly improves the performance of routing algorithms. Simulation results show that in different scenarios, the proposed cross-layer routing algorithm has a high packet delivery rate and low packet propagation delay. Moreover, the proposed algorithm further improves the packet delivery rate and delay by the minimum SNR threshold constraint. Besides, compared with the classic AntHocNet algorithm, when the network topology changes dynamically, the proposed algorithm has a higher packet transmission rate and a slight increase in packet propagation delay. So, the proposed algorithm has better scalability and can adapt to the change of network topology. In future research, we will focus on how to further improve the packet delivery rate and reduce the delay.