# Random Routing Algorithm for Enhancing the Cybersecurity of LEO Satellite Networks
## 3 Random Routing Algorithm  
In the context of densely connected LEO communication networks, an attacker can easily plan a DDoS attack to congest an inter-satellite communication link. This is expected due to the fact that when the routing algorithm is deterministic, and with the assumption that the attacker knows the algorithm as well as the network grid (each satellite's location), it is feasible to predict how the network will route a packet in the inter-satellite communication network. This is also supported by the ICARUS study. One way to address the challenge could be to add randomness in the routing algorithm that will cause it to be more difficult for the attacker to successfully perform a DDoS attack. First, we define the following two terms in the context of attacks: cost and MaxUp. The cost of an attacker is defined in the following way: how many resources in terms of traffic volume (Gbps) an adversary has to use in order to be successful in achieving the attack's goal. For example, if one bot generates 10 Mbps of traffic volume, then the ISL capacity of 10 Gbps would mean 1000 bots transmitting 10 Mbps each to the ISL network. Detectability/MaxUp is defined as follows: If the attacker just targets one satellite to launch its attacks then a sudden change in traffic volume to a single node in the network would be easily noticeable. To avoid such detectable situation, attackers distribute their traffic volume over several satellites in the LSN by placing several bots on the ground. Therefore, the detectability/MaxUp is defined as the maximum absolute change in the bandwidth caused by the attacker across the LSN for the up-link transmission. When the algorithm is less deterministic, this means that the attacker has to send more packets in order to congest the target ISL. This is expected to happen as the attacker has to cover a greater number of cases probabilistically. The transmission of more packets over the network means increasing the cost (sending more packets from multiple ground stations/bots) or the MaxUp (sending more packets from a single ground station). For example, let us assume that the routing algorithm is a BFS (breadth-first search). Given a grid of satellites and a source and destination of ground stations, this algorithm will return a similar path no matter how many times it is being run. For the attacker, that means it knows the exact route of each packet sent, which in turn allows the attacker to only send as many packets as needed to congest a target ISL. On the other hand, assume the algorithm returns the three shortest paths leading from the source to the destination. Now, the attacker must take into account every possible short path, which may be more than just three. That means the attacker has to send more packets. If the attacker sends more packets from the source station that would increase the MaxUp since more traffic from a single station is easier to recognize. The attacker can alternatively send more packets from multiple other ground stations, but that would increase the cost since the attacker would need to have a larger botnet to have access to more ground stations. In conclusion, sending more packets means increasing the cost (sending more packets from multiple ground stations) or MaxUp (sending more packets from a single ground station). In order to add randomness to the routing algorithm, we select one of four algorithms to be used with weighted distribution. These four algorithm are chosen from the algorithms evaluated in ICARUS and already implemented in the framework: k-DG, k-DS, k-SP, and k-LO. These algorithms include [8]:  
* Shortest paths (k-SP): The k-sp algorithm finds k paths between the source and destination in the network with the minimum length [52]. This algorithm distributes traffic among the k-shortest paths in the satellite communication network [53]. * Ground-to-ground disjoint paths (k-DG): The algorithm considers k-shortest paths with node disjoint paths, i.e., without any shared uplinks, downlinks, or inter-satellite links.