The edge intelligent computing of the satellite IoT is mainly to apply edge computing and deep learning technology to the satellite IoT. Next, we will introduce the principles of the satellite IoT edge intelligent computing architecture. This chapter includes satellite IoT edge computing, distributed intelligent computing architecture in satellite IoT edge computing.
3.1. Satellite IoT Edge Computing
The satellite Internet of Things can take advantage of emerging network technologies on the ground. In recent years, there have been studies on satellite IoT edge computing, considering the satellite’s ever-increasing computing and storage capabilities, treating each satellite as an edge node, enabling on-orbit processing and minimizing the delay caused by satellite transmission [33
This paper describes a cloud-edge layered satellite IoT edge computing paradigm. The hierarchical network of satellite IoT also needs to be supported by terrestrial data centers. Specifically, the cloud-edge stratified satellite IoT edge computing system consists of three parts: the satellite IoT cloud node, the satellite IoT edge node, and the ground data center. Figure 1
shows a cloud-edge layered satellite IoT edge computing system.
The satellite IoT edge nodes have computing and storage capabilities and use a common virtualization platform that can deploy different services as needed. Satellite IoT edge nodes can communicate with each other, and satellite IoT edge nodes and satellite IoT cloud nodes can cooperate with each other. This can bring two benefits. First, satellite IoT edge nodes can request assistance from satellite IoT cloud nodes or ground data centers to offload their computing tasks to them. Second, satellite IoT edge nodes can also accept tasks from satellite IoT cloud nodes or terrestrial data centers, or establish fast service clusters with other satellite IoT edge nodes.
The satellite IoT cloud node assumes the function of the satellite IoT data center, which is equivalent to the aggregation node of the satellite IoT edge node. Similarly, they can communicate with each other and connect the satellite IoT edge nodes to the ground data center. Satellite IoT cloud nodes have more powerful computing and storage capabilities than satellite IoT edge nodes. Satellite IoT cloud nodes are equipped with heterogeneous resources, such as CPU, GPU, and FPGA. It can not only handle various applications unloaded from satellite IoT edge nodes, but also complete task scheduling, task analysis, data fusion, intelligent distribution, and fast service cluster construction of the entire satellite network.
The satellite IoT edge node and the satellite IoT cloud nodes are logically layered. But in reality, they won’t be highly layered in space. Satellite IoT cloud nodes can operate on the same orbit as the satellite IoT edge nodes, or on geosynchronous orbits. It is similar to a mobile base station and acts as a group leader for a particular area, managing satellite IoT edge nodes. The satellite IoT edge node works in conjunction with the satellite IoT cloud node to maintain the normal operation of the satellite IoT.
The ground data center has the capability of a large cloud computing center that can communicate with satellite IoT nodes or the ground Internet. Compared to satellite IoT nodes, the ground data centers have the highest computing power and the most storage resources.
The satellite IoT edge node, the satellite IoT cloud node, and the ground data center constitute a three-layer computing architecture of the cloud-edge layered satellite IoT edge computing system. From the edge to the cloud, the computing power of each layer is gradually increasing. The task strength of each layer is as follows. Low-complexity computing can be performed on satellite IoT edge nodes. High-complexity and high real-time computing are suitable for implementation in satellite IoT cloud nodes. When the mission strength exceeds the satellite IoT’s affordability, the mission will be passed to the ground data center.
In particular, satellite IoT edge nodes and satellite IoT cloud nodes can implement network slicing through SDN/NFV technology. The data layer and the control layer of the satellite IoT are separated. The data layer can reflect the state of the current network, and the control layer can allocate network resources to implement network slicing. Network slicing can provide independent network instances by satisfying the differentiated requirements of different service qualities, such as bandwidth and delay. At the same time, it can enhance the flexibility and adaptability of the network.
3.2. Distributed Intelligent Computing Architecture in Satellite IoT Edge Computing
Satellite IoT edge computing is the basis for edge intelligence computing for the satellite IoT. Currently, the training and reasoning required for deep-learning models has been deployed in terrestrial cloud computing data centers. In the future, satellite IoT sensors have a large amount of image data to inference every day. And we know that the cost of image inference requires up to gigabit floating point arithmetic. If all the image data are moved to the ground data center for reasoning, the calculation and storage pressure of the ground cloud computing center will increase greatly.
Due to the improvement of the hardware level, the computing and storage capabilities of the satellite nodes are greatly improved. While the satellite local control is satisfied, some remaining computing and storage capabilities are not fully exploited. When there are remaining computing and storage resources, the satellite IoT edge nodes can cooperate with the satellite IoT cloud nodes, take advantage of satellite edge computing to undertake a certain amount of deep-learning tasks. Therefore, the extension of cloud intelligence to edge intelligence has become an inevitable trend. In general, satellite edge intelligent computing is the analysis of data at the source of satellite sensors rather than sending data to the ground cloud for analysis. It will become a key driver for the realization of intelligent satellite IoT.
3.2.1. Cross-Layer Satellite IoT Edge Intelligent Computing Architecture
At present, the scale of problems in machine learning and deep learning is getting larger and larger, and the amount of data and the number of parameters involved are also rising sharply. Traditional single-machine computing has difficulty providing enough computing power and storage resources. Therefore, distributed model training and inference are gradually becoming mainstream. Unlike single-machine training, distributed machine learning involves more details that need to be carefully considered, including global sharing of parameters and the impact of single-node performance "short boards" on cluster performance. In addition, in practical industrial applications, the scale of parameters generated by the data of the order of 1 TB to 1 PB during the training process is between 109
]. Parameter sharing has become a difficult point.
Using the idea of distributed deep-learning training, in the satellite IoT edge intelligent computing architecture, the satellite IoT edge node near the data side can be used as the worker node to perform specific computing tasks. The advantage of this is that, in satellite-like remote-sensing observations and the like, the satellite IoT edge node is both a worker node and a data source. This way we can easily get a natural distributed data set. Therefore, each satellite IoT edge node in the distributed cluster can directly use the data collected by them for training, which saves the network bandwidth consumed by data acquisition. At the same time, satellite IoT cloud nodes that are not directly connected to the data source but have larger storage resources and higher computing power are the nodes responsible for storing and managing parameters. At the same time, satellite IoT cloud nodes with larger storage resources and more computing power are used as nodes responsible for storage and management parameters. Two types of nodes use inter-satellite links for communication and data transmission.
In addition, considering the constraints of computing power and the constraints of power consumption of embedded devices on satellites, the neural network model must be subdivided or simplified. A deep neural network can be thought of as a directed graph with multiple network layers under each image. If the entire neural network model is run directly on the edge computing device, performance may be poor. We can design an appropriate lightweight neural network by weighing the relationship between inferential accuracy and latency. At the same time, in the satellite IoT scenario, we can store the corresponding pretraining model on the satellite IoT cloud node to accelerate the process of model training. In this process, there are two ways to obtain the pretraining model: firstly, it can be uploaded by the ground station and stored persistently in the satellite IoT cloud node; secondly, the satellite IoT cloud node can be fully utilized to obtain the pretraining model. The neural network training process of the cross-layer satellite IoT edge intelligent computing architecture is depicted in Figure 2
After the computing task is offloaded to the satellite cluster, the satellite IoT edge node first obtains the pretraining parameters of the model from the satellite IoT cloud nodes, and then uses the data collected by itself to optimize the model, calculate the parameter gradient, and send it to the satellite IoT cloud nodes. After that, the satellite IoT cloud nodes aggregate the gradients, and the parameters are updated and broadcast to each worker nodes. In addition to performing training tasks, inference tasks can also be performed in a space-based decentralized computing architecture. In addition to performing training tasks, inference tasks can also be performed in the satellite IoT edge intelligent computing architecture. Each satellite IoT edge node contains the latest model, which can directly infer the collected data and feed the result back to the ground data center or client.
3.2.2. Training-Inference-Isolated Satellite IoT Edge Intelligent Computing Architecture
A tricky problem in the edge intelligent computing architecture like the “master–slave” structure above is the network communication consumption during the training process. The satellite IoT cloud nodes, as the core of parameter gradient collection and processing, need to establish communication links with each satellite IoT edge node. Therefore, with the expansion of the scale of participating computing nodes, the communication cost will also rise sharply, which is a big challenge for satellite networks. Therefore, for a task with a large amount of computation and a large number of participating nodes, we need a distributed intelligent computing architecture with less communication cost.
In the satellite IoT edge intelligent computing architecture, the algorithm can be used to alleviate the network communication pressure caused by the parameter-sharing process, as shown in Figure 3
. Specifically, we chose to deploy a deep-learning framework on a cluster of satellite IoT cloud nodes with more computing power. In this framework, each satellite IoT cloud node is abstracted into a node in a logical ring, participating in both parameter calculation and parameter storage. Each node in the logical ring receives data from its left neighbor and sends data to its right neighbor.
In the training process of the neural network, each round of training can be divided into two stages. First, in the gradient calculation stage, each satellite IoT cloud node receives the data collected or generated by the edge node as its own training set and performs the calculation task to get the gradient of the parameter. The second stage is the parameter update phase, in which each node shares its own calculation results with other nodes, and finally each node has the final updated parameters. Referring to the Ring Allreduce algorithm, this process is divided into two steps: in the first step, gradient accumulation is performed, and then the gradient calculated by each node is divided into N
is the number of nodes in the logical ring). And each node follows the rules to pass only one gradient segment to the adjacent node. After N
-1 rounds, every segment of gradient has been accumulated. Finally, these segments of gradient are distributed on different nodes. In the second step, each node exchanges its own final gradient segment and accumulates the gradient synchronization of all nodes to update the parameters. The training process of the training-inference-isolated satellite IoT edge intelligent computing architecture is shown in Figure 4
In this architecture consisting of N
satellites, in step one, each satellite will send N
− 1 data segments, and in step two, each satellite will receive N
− 1 data segments. Further, the amount of data involved in each data transfer is K/N
is the total number of values that each data segment adds on a different satellite). Therefore, we can calculate the total amount of data involved in the communication with the following formula:
In the satellite IoT edge intelligent computing architecture, we envision offloading the inference task to the satellite IoT edge node. After the satellite IoT edge node obtains the trained neural network from the satellite IoT cloud node, each satellite can infer the received data, and the result is fed back to the ground data center or the user end. At this time, the model parameters on each satellite are the same. When there is an inference task, the satellite can select local processing or offload the task to nearby satellites for distributed collaborative reasoning according to the amount of computation required by the task and its own computing power. In general, reasoning on the satellite IoT side can greatly reduce the amount of data that satellites transmit to the ground. At the same time, it saves a lot of valuable network bandwidth resources.
This method is feasible and meaningful. With the development of hardware technology, embedded devices on satellites usually have higher computing power and can meet the computational requirements of common neural network inference. We give an intuitive explanation in Section 4
. While meeting the computing needs, satellites also need to consider the issue of energy consumption. In general, the energy consumption of satellites is mainly reflected in the energy consumption of communication and the energy consumption of task processing. Task processing generates a lot of energy consumption. When the inference task is offloaded to the satellite IoT edge node, the satellite IoT edge node faces pressure in terms of computation and energy consumption. Of course, in order to alleviate the pressure on the satellite IoT edge nodes caused by large computing tasks (such as large inference networks such as VGG-16 and WRN), we can choose to put large computing tasks on the satellite IoT cloud nodes. In particular, large computing tasks that do not have timeliness requirements can also be offloaded to the ground data center. In short, the intelligence of satellite IoT edge nodes provides the possibility of real-time processing of edge-side data.
3.3. Summary of Satellite IoT Edge Intelligent Computing Architecture
In summary, using the combination of the cross-layer satellite IoT edge intelligent computing architecture and the parameter server algorithm is simpler in the process of gradient sharing. Further, the satellite IoT cloud node cluster can provide highly available support for parameter management. Meanwhile, the architecture has higher requirements on the network, and the communication cost is higher in the process of parameter sharing. Therefore, this architecture is more suitable for intelligent computing tasks with less computation and smaller scale. In contrast, the architecture using the Ring Allreduce algorithm is friendlier in terms of network bandwidth requirements. This is at the expense of a more complex gradient sharing algorithm. Therefore, the architecture is more suitable for the intelligent computing tasks with complex computation.
In general, deploying the IoT edge intelligent computing architecture on a satellite cluster is feasible and meaningful. The intelligent processing on the edge side can greatly reduce the time cost caused by network transmission during the process of converting from original data to valid information, which can realize rapid response and fully utilize the storage and computing capabilities of the satellite nodes. This technology has a very broad development prospect in the application of satellite constellation communication, navigation, and remote-sensing observation.