A communication system (100, 100a, 100b) comprising: a source ground station (300, 310); a constellation of communication devices (200, 200a, 200b) comprising groups (202, 202a, 202b, 202aa, 202ab, 202ba, 202bb) of communication devices (200, 200a, 200b) orbiting the earth, each group (202, 202a, 202b, 202aa, 202ab, 202ba, 202bb) having an orbital path or trajectory different from another group (202, 202a, 202b, 202aa, 202ab, 202ba, 202bb), a first communication device (200, 200a, 200b) of a first group (202, 202a, 202b, 202aa, 202ab, 202ba, 202bb) of communication devices (200, 200a, 200b) in communication with the source ground station (300, 310) and adapted to receive a communication from the source ground station (300, 310); a linking-gateway (300, 330, 330a, 330b, 330c) in communication with at least the first group (202, 202a, 202b, 202aa, 202ab, 202ba, 202bb) of communication devices (200, 200a, 200b) and a second group (202, 202a, 202b, 202aa, 202ab, 202ba, 202bb) of communication devices (200, 200a, 200b), the linking-gateway (300, 330, 330a, 330b, 330c) adapted to receive the communication from the first group (202, 202a, 202b, 202aa, 202ab, 202ba, 202bb) of communication devices (200, 200a, 200b) and to send the communication to a second communication device (200, 200a, 200b) of the second group (202, 202a, 202b, 202aa, 202ab, 202ba, 202bb) of communication devices (200, 200a, 200b); a destination ground station (300, 320) in communication with the second group (202, 202a, 202b, 202aa, 202ab, 202ba, 202bb) of communication devices (200, 200a, 200b), the destination ground station (300, 320) adapted to receive the communication from a communication device (200, 200a, 200b) of the second group (202, 202a, 202b, 202aa, 202ab, 202ba, 202bb) of communication devices (200, 200a, 200b); and a data processing device (110, 210) configured to determine a path of the communication from a source in communication with the source ground station (300, 310) to a destination in communication with the destination ground station (300, 320), the path based on a scoring function for assigning a score or weight value of a distance between the source and the destination, a capacity of the inter-device link between two devices (200, 200a, 200b), an operational status of a communication device (200, 200a, 200b), and a signal strength of a communication device (200, 200a, 200b). a source ground station (300, 310); a constellation of communication devices (200, 200a, 200b) comprising groups (202, 202a, 202b, 202aa, 202ab, 202ba, 202bb) of communication devices (200, 200a, 200b) orbiting the earth, each group (202, 202a, 202b, 202aa, 202ab, 202ba, 202bb) having an orbital path or trajectory different from another group (202, 202a, 202b, 202aa, 202ab, 202ba, 202bb), a first communication device (200, 200a, 200b) of a first group (202, 202a, 202b, 202aa, 202ab, 202ba, 202bb) of communication devices (200, 200a, 200b) in communication with the source ground station (300, 310) and adapted to receive a communication from the source ground station (300, 310); a linking-gateway (300, 330, 330a, 330b, 330c) in communication with at least the first group (202, 202a, 202b, 202aa, 202ab, 202ba, 202bb) of communication devices (200, 200a, 200b) and a second group (202, 202a, 202b, 202aa, 202ab, 202ba, 202bb) of communication devices (200, 200a, 200b), the linking-gateway (300, 330, 330a, 330b, 330c) adapted to receive the communication from the first group (202, 202a, 202b, 202aa, 202ab, 202ba, 202bb) of communication devices (200, 200a, 200b) and to send the communication to a second communication device (200, 200a, 200b) of the second group (202, 202a, 202b, 202aa, 202ab, 202ba, 202bb) of communication devices (200, 200a, 200b); a destination ground station (300, 320) in communication with the second group (202, 202a, 202b, 202aa, 202ab, 202ba, 202bb) of communication devices (200, 200a, 200b), the destination ground station (300, 320) adapted to receive the communication from a communication device (200, 200a, 200b) of the second group (202, 202a, 202b, 202aa, 202ab, 202ba, 202bb) of communication devices (200, 200a, 200b); and a data processing device (110, 210) configured to determine a path of the communication from a source in communication with the source ground station (300, 310) to a destination in communication with the destination ground station (300, 320), the path based on a scoring function for assigning a score or weight value of a distance between the source and the destination, a capacity of the inter-device link between two devices (200, 200a, 200b), an operational status of a communication device (200, 200a, 200b), and a signal strength of a communication device (200, 200a, 200b).