# Dynamic Routings in Satellite Networks: An Overview
## 4 Existing Works on Dynamic Satellite Routings
### Dynamic Routings in the Multi-Layer Satellite Networks
#### 4.2.1 SDN-Based Dynamic Routing  
**SDN-Based Network:** SDN is an emerging network architecture that separates network control operations from network forwarding services and provides programmability of the controls [57]. SDN dramatically increases the network architecture's flexibility, effectively enabling intelligent routing algorithms based on machine learning to control network traffic allocation, QoS requirements, etc., as shown in Figure 7.  
SDN is a new network architecture that separates the data plane from the control plane and supports network programmability. It can realize the centralized control of data and optimization of network resources. The above definition of SDN is the consensus in the industry, but the definition of SDN varies among different standardization organizations. Figure 8 shows the reference architecture of the SDN definition introduced by the ONF organization. The SDN architecture defined by ONF is divided into four parts: the data plane, the control plane, the application plane, and the management plane. Each part communicates through different interfaces. Figure 6: Multi-layer satellite networks. Figure 8: SDN Architecture. Figure 7: Network vision with SDN. **Routing mechanisms for SDN:** The data-flow-based routing and forwarding strategy is adopted in the SDN network architecture to realize the effective coupling between the controller and the switch. Before the data flow reached the Openflow switch, the SDN controller sent the policy to the underlying switch. When the passive mode waited for the data flow to reach the Openflow switch, the underlying switch asked the upper SDN controller how to handle the exit. When the controller decided, it sent a flow table to all switches. Figure 9 shows the basic steps of SDN Grid routing. **SDN-based dynamic routings in Satellite Networks:** The SDN architecture defined by ONF is divided into four parts: the data plane, the control plane, the application plane, and the management plane. Each part communicates through different interfaces. The software-defined satellite networks (SDSN) were proposed in [58]. In SDSN, GEO satellites act as the control plane, MEO and LEO satellites act as the data plane, and ground stations act as the management plane. Among them, the control plane is responsible for distributing commands from the management plane to the data plane, monitoring the real-time status of the satellite network, and then feeding it back to the management plane. However, the highly dynamic topology of multi-layer satellite networks poses new challenges to the existing SDN control architecture. Among SDSNs, snapshot routing is the most basic and representative. Table 8 summarizes the works related to the SDN-based dynamic routing algorithms. In 2017, the work in [59] developed SDSN snapshot routing and validated it with a typical Iridium architecture as an example. The approach utilizes the satellite link reports generated by STK to divide the entire Iridium architecture into 44 snapshots. On this basis, the Dijkstra algorithm is used to solve for each snapshot route and transform it into a static routing table. The system sends this static routing table to each satellite before performing the snapshot transformation. The new routing table is used to process the packets when the snapshot transformation is performed. Through the test, the routing tables of all satellites were able to be updated correctly, ensuring proper communication between the satellites. The work in [60] introduced the idea of decoupling the control plane and data plane into the satellite network and designed a controller model. The model decreased the communication cost of the network and increased the convergence speed of routing. A routing strategy based on theAmoeba algorithm and Amoeboid-Ripple Spreading routing algorithm was designed. The experimental results show that the algorithm is able to perform the network routing task with a low packet loss rate and a small number of routing hops.