## 2 Time Synchronization Scheme  
### Clock Transfer Trees Construction  
In the method, all the LEO satellites are set to move back to the initial latitude at the beginning of a complete operating cycle, and the time interval between two consecutive changes in the LEO satellite network topology are designated as a time slice [21]. For each time slice, the satellite is set to establish inter-satellite links with the adjacent satellites in the same orbit on the front and back sides and two adjacent satellites located in adjacent orbits on the left and right sides.  
For polar orbit satellites, at different latitude positions, the fast relative motion between the adjacent orbit satellites causes periodical establishments and disconnections of inter-satellite links. When the satellites move to the high latitude region, the satellites in the two neighboring orbits have large relative movement speeds. It is difficult to maintain the inter-satellite links, and even causes the links to be disconnected. Thus, in our approach, it is set so that when the LEO satellites move to a high latitude region that is larger than a 70\({}^{\circ}\) south and north latitude, the inter-satellite links in adjacent orbit are put into disconnected states and no connections exist between the satellites in the network topology; otherwise, the satellites links will remain connected. Several satellites are set as time sources in each time slice to achieve a flat time synchronization hierarchy structure and improve clock synchronization accuracy. The latitude position of each satellite can be obtained based on navigation messages. The inter-satellite link statuses and network topology of the time slice are determined according to the latitude positions in the proposed means.  
For the traversal algorithm and the proposed method, the clock transfer trees are constructed in the same way. We use 1-66 as the number for 66 satellites, with the first orbital plane numbered 1-11, the second orbital plane numbered 12-22, and so on. The time transfer trees are established based on their own time source satellites as root nodes with the clock layers of 0 [23].  
Firstly, the time source satellites are marked as visited to avoid loops, and the smallest numbered time source is used as the first root node. Then, the satellites, which have connections with the first root node, are designated as the time cascade level 1 and identified as visited. Meanwhile, their parent nodes of stratum 0 are recorded. Then, the second smallest numbered time source satellite is defined as the second root node with the clock layer of level 0, too. The satellites connected to the second root node, which are not identified, are set as the time hierarchy of stratum 1. The nodes are also marked as visited with their parent nodes recorded, too. In this way, all satellites with clock stratum layer 1 can be found and marked as visited, and their parent nodes are recorded.  
Secondly, the satellites connected to the smallest numbered satellite with time level 1 in the first clock transfer tree are found. After removing the already identified satellites, the chosen satellites are set to be the time stratum 2 and marked as visited, with their parent nodes recorded. Following the same measure, all the satellites connected to the other satellites with clock layer 1 can be found. After removing the already identified satellites, the found satellites are set to time level 2, and marked as visited, with their parent nodes recorded. Then, using this method, all satellites clock layers and parent nodes can be determined.  
Finally, time transfer trees, which have the same number of the time source satellites, are constructed based on the parent nodes recorded by each satellite.