IP Library Granted Patent US 12,358,650
Granted Patent B2
US 12,358,650 · App. 18/058,626 · Granted Jul 15, 2025

Orbit aware network routing

Inventors: Arun Ray Ramadorai (Sammamish, WA); Peter S. Fidelman (Bainbridge, WA)
Assignee: Blue Origin Manufacturing, LLC
B64G1/242B64G1/1007
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,358,650
App. No.
18/058,626
Granted
Jul 15, 2025
Kind
B2
Abstract

A method of routing communication among nodes and systems of an interplanetary network on an ad-hoc basis is described herein. For example, the communication routing described herein may not be pre-determined or static, but rather determined dynamically on a periodic basis, as transmission conditions change, as nodes are added or removed from the interplanetary network, periodically, and/or the like. The interplanetary network may include one or more nodes that have static and/or dynamic states. A node can include any extraterrestrial object or communication relay. The interplanetary network may also include one or more ground stations, which can include communication equipment (e.g., antennas, radar, transmission towers, etc.) located on Earth. To enable the ad-hoc communication routing, a ground station system and/or another processing device can continuously or periodically obtain orbital parameters from one or more nodes in the interplanetary network and generate updated contact plans.

Claims (45)

1. A method of routing communications from a first processing node to a final destination processing node within an evolving communication network that includes one or more nodes orbiting a planet, the method comprising:

receiving, at the first processing node of the communication network, an indication that a second processing node has been added to the communication network and, in combination with the first processing node and a set of one or more distributed processing nodes, forms a group of distributed processing nodes; and

based on receiving the indication or a time period passing, updating a contact plan, wherein the contact plan indicates a time-indexed list of communication opportunities between the distributed processing nodes of the group, wherein updating the contact plan comprises:

computing an availability of connections associated with the distributed processing nodes of the group based at least in part on an orbital trajectory and link budget associated with each distributed processing node of the group of distributed processing nodes,

constructing a plurality of paths between the distributed processing nodes of the group based at least in part on the computed availability of the connections, and

selecting, from the plurality of paths, a path from the first processing node through the group of distributed processing nodes to the final destination processing node, wherein the selected path is one of a path that has a highest reduction of a backlog of data to transmit from the first processing node to the final destination processing node or a path that has a highest average bandwidth between the first processing node and the final destination processing node, to thereby define an updated contact plan.

2. The method of claim 1 , further comprising receiving orbital parameters from each distributed processing node of the group of distributed processing nodes at a time after at least one of the distributed processing nodes in the group of distributed processing nodes has been launched into space, wherein the orbital parameters comprise the orbital trajectory and the link budget of the respective distributed processing node.

3. The method of claim 1 , wherein the first processing node stores the contact plan prior to receiving the indication that the second processing node has been added to the communication network.

4. The method of claim 3 , further comprising replacing the contact plan with the updated contact plan.

5. The method of claim 3 , further comprising modifying the contact plan based on the updated contact plan.

6. The method of claim 5 , wherein the updated contact plan comprises data indicating a change to the contact plan.

7. The method of claim 1 , wherein computing an availability of connections further comprises:

computing, for a first time period, a first availability of connections associated with the distributed processing nodes of the group; and

computing, for a second time period, a second availability of connections associated with the distributed processing nodes of the group, wherein the availability of connections comprises the first availability of connections and the second availability of connections.

8. The method of claim 1 , wherein constructing a plurality of paths further comprises constructing a first path from the first processing node through the group of distributed processing nodes to the first destination processing node by combining one or more computed available connections.

9. The method of claim 1 , wherein the contact plan comprises, for the first processing node, a start time and an end time during which the first processing node is available to communicate with a first distributed processing node in the set of the one or more distributed processing nodes.

10. The method of claim 1 , wherein the first processing node comprises one of a ground station located on a surface of Earth or a communication relay orbiting in space.

11. The method of claim 1 , wherein the final destination processing node comprises one of a ground station located on a surface of Earth or an extraterrestrial object located on a surface of a celestial body other than the Earth.

12. The method of claim 1 , wherein each of the plurality of paths is weighted based on a priority of data to be transmitted, and wherein selecting, from the plurality of paths, a path from the first processing node through the group of distributed processing nodes to the final destination processing node further comprises selecting the path based on the weighting.

13. A system of routing communications within an evolving communication network that includes one or more nodes orbiting a celestial body, the system comprising:

a first processing node of the communication network comprising a first network interface; and

a second processing node of the communication network comprising a processor and a second network interface, wherein the first processing node, the second processing node, and a set of one or more distributed processing nodes form a group of distributed processing nodes, the second processing node configured with computer-executable instructions that, when executed by the processor, cause the second processing node to:

obtain an indication that a change to the communication network has occurred;

based on obtaining the indication or a time period passing,

compute an availability of connections associated with the distributed processing nodes of the group based at least in part on orbital parameters associated with each distributed processing node of the group of distributed processing nodes,

construct a plurality of paths between the distributed processing nodes of the group based at least in part on the computed availability of the connections, and

select, from the plurality of paths, a path from the second processing node through at least one of the set of one or more distributed processing nodes to a final destination processing node, wherein the selected path is one of a path that reduces a backlog of data to transmit from the second processing node to the final destination processing node from a first number of messages to a second number of messages lower than the first number of messages or a path that has a highest average bandwidth between the second processing node and the final destination processing node; and

define an updated contact plan based on at least the selected path.

14. The system of claim 13 , wherein the computer-executable instructions, when executed, further cause the second processing node to obtain the orbital parameters from each distributed processing node of the group of distributed processing nodes at a time after at least one of the distributed processing nodes in the group of distributed processing nodes has been launched into space, wherein the orbital parameters comprise at least one of an orbital trajectory or a link budget of the respective distributed processing node.

15. The system of claim 13 , wherein the second processing node stores an existing contact plan prior to obtaining the indication that the change to the communication network has occurred.

16. The system of claim 15 , wherein the computer-executable instructions, when executed, further cause the second processing node to replace the existing contact plan with the updated contact plan.

17. The system of claim 15 , wherein the computer-executable instructions, when executed, further cause the second processing node to modify the existing contact plan based on the updated contact plan.

18. The system of claim 13 , wherein the change to the communication network comprises one of the first processing node being added to the communication network subsequent to the second processing node being launched into space and being part of the communication network, a third processing node being removed from the communication network, or the orbital parameters of the first processing node changing.

19. The system of claim 13 , wherein the computer-executable instructions, when executed, further cause the second processing node to:

compute, for a first time period, a first availability of connections associated with the distributed processing nodes of the group; and

compute, for a second time period, a second availability of connections associated with the distributed processing nodes of the group, wherein the availability of connections comprises the first availability of connections and the second availability of connections.

20. The system of claim 13 , wherein the updated contact plan comprises, for the second processing node, a start time and an end time during which the second processing node is available to communicate with a first distributed processing node in the set of the one or more distributed processing nodes.

21. The system of claim 13 , wherein each of the plurality of paths is weighted based on a priority of data to be transmitted, and wherein the computer-executable instructions, when executed, further cause the second processing node to select the path based on the weighting.

22. A non-transitory, computer-readable medium comprising computer-executable instructions for routing communications from a first processing node to a final destination processing node within an evolving communication network that includes one or more nodes orbiting a celestial body, wherein the computer-executable instructions, when executed by a computer system, cause the computer system to:

obtain, at the first processing node of the communication network, an indication that a change to the communication network has occurred, wherein the first processing node and a set of one or more distributed processing nodes form a group of distributed processing nodes; and

based on receiving the indication or a time period passing,

compute an availability of connections associated with the distributed processing nodes of the group based at least in part on orbital parameters associated with each distributed processing node of the group of distributed processing nodes,

construct a plurality of paths between the distributed processing nodes of the group based at least in part on the computed availability of the connections, and

select, from the plurality of paths, a path from the first processing node through the group of distributed processing nodes to the final destination processing node, wherein the selected path is one of a path that has a highest reduction of a backlog of data to transmit from the first processing node to the final destination processing node or a path that has a highest average bandwidth between the first processing node and the final destination processing node, to thereby define an updated contact plan.

23. The non-transitory, computer-readable medium of claim 22 , wherein each of the plurality of paths is weighted based on a priority of data to be transmitted, and wherein the computer-executable instructions, when executed, further cause the computer system to select the path based on the weighting.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 20, 2025
From: BLUE ORIGIN, LLC
To: BLUE ORIGIN MANUFACTURING, LLC
Reel/Frame 070585/0314 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 23, 2022
From: RAMADORAI, ARUN RAY; FIDELMAN, PETER S.
To: BLUE ORIGIN, LLC
Reel/Frame 062193/0333 →
Continuity (1)
Related Publication 20240166376A1 · May 23, 2024
References Cited (44)
US 7764622B2 · El Damhougy et al. · 2010 [cited by applicant]
US 7881217B2 · El Damhougy et al. · 2011 [cited by applicant]
US 10142013B2 · El Damhougy et al. · 2018 [cited by applicant]
US 10476584B1 · Minelli et al. · 2019 [cited by applicant]
US 11032751B2 · Arur et al. · 2021 [cited by applicant]
US 20080151913A1 · El-Damhougy · 2008 [cited by examiner]
US 20170005719A1 · Krebs · 2017 [cited by examiner]
US 20190007127A1 · Ward · 2019 [cited by applicant]
US 20210084565A1 · Ananth · 2021 [cited by examiner]
US 20220302999A1 · Velazco · 2022 [cited by examiner]
US 20240195496A1 · Rezaee · 2024 [cited by examiner]
CN 104821844A · 2015 [cited by applicant]
CN 108011661A · 2018 [cited by applicant]
CN 113037363A · 2021 [cited by applicant]
CN 113056877A · 2021 [cited by applicant]
Alaoui, Sara El, Sara El Alaoui, and Byrav Ramamurthy. “Routing Optimization for DTN-Based Space Networks Using a Temporal Graph Model.” [cited by applicant]
Alemzadeh, S., and M. Mesbahi. “Distributed Q-Learning for Dynamically Decoupled Systems.” In [cited by applicant]
Analog Devices. AD9600. https://www.analog.com/en/products/ad9600.html# Accessed on Mar. 15, 2023. [cited by applicant]
Araniti, Giuseppe, Nikolaos Bezirgiannidis, Edward Birrane, Igor Bisio, Scott Burleigh, Carlo Caini, Marius Feldmann, Mario Marchese, John Segui, and Kiyohisa Suzuki. “Contact Graph Routing in DTN Space Networks: Overvi… [cited by applicant]
Awad, Armand, Airlie Chapman, Eric Schoof, Anshu Narang-Siddarth, and Mehran Mesbahi. “Time-Scale Separation in Networks: State-Dependent Graphs and Consensus Tracking.” [cited by applicant]
Bertsekas, Dimitri. “Multiagent Value Iteration Algorithms in Dynamic Programming and Reinforcement Learning.” [cited by applicant]
Bertsekas, Dimitri. “Multiagent Reinforcement Learning: Rollout and Policy Iteration.” [cited by applicant]
Birrane, Ed, and Jason Soloff. [cited by applicant]
Busoniu, Lucian, Robert Babuska, Bart De Schutter, and Damien Ernst. [cited by applicant]
Caini, Carlo, and Rosario Firrincieli. “Application of Contact Graph Routing to LEO Satellite DTN Communications.” [cited by applicant]
Chapman, Airlie, and Mehran Mesbahi. 2016. “Multiple Time-Scales in Network-of-Networks.” In [cited by applicant]
Chelmins, David, Janette Briones, Joseph Downey, Gilbert Clark, and Adam Gannon. n.d. “Cognitive Communications for NASA Space Systems,” https://ntrs.nasa.gov/api/citations/20190032643/downloads/20190032643.pdf., 2019. [cited by applicant]
Dai, Cuiqin, Qingyang Song, Lei Guo, and Qianbin Chen. “Contact Graph Routing with Network Coding for LEO Satellite DTN Communications.” [cited by applicant]
Dai, Ran, Joshua Maximoff, and Mehran Mesbahi. “Establishing Connectivity in Proximity Networks.” In [cited by applicant]
Dai, Ran, Joshua Maximoff, and Mehran Mesbahi. “Optimal Trajectory Generation for Establishing Connectivity in Proximity Networks.” [cited by applicant]
Delay/Disruption Tolerant Networking. Reliable Solar System Internet Connection. Sep. 29, 2020. NASA. Captured Jul. 2, 2021. https://www.nasa.gov/directorates/heo/scan/engineering/technology/disruption_tolerant_networki… [cited by applicant]
Gramling, Jeffrey, Yi-Pheng Ngan, David Quinn, David Folta, Bruce LeRoy, and Anne Long. “A Lunar Communications and Navigation Satellite Concept for Robotic Lunar Exploration Program.” [cited by applicant]
Hudoba de Badyn, Mathias, and Mehran Mesbahi. “Large-Scale Distributed Kalman Filtering via an Optimization Approach.” [cited by applicant]
Israel, David J., Kendall D. Mauldin, Christopher J. Roberts, Jason W. Mitchell, Antti A. Pulkkinen, La Vida D. Cooper, Michael A. Johnson, Steven D. Christe, and Cheryl J. Gramling. “LunaNet: A Flexible and Extensible … [cited by applicant]
Kim, Y., and M. Mesbahi. “On Maximizing the Second Smallest Eigenvalue of a State-Dependent Graph Laplacian.” [cited by applicant]
Maral, Gerard, Michel Bousquet, and Zhili Sun. [cited by applicant]
Mwanje, Stephen S., and Christian Mannweiler. [cited by applicant]
Mesbahi, Mehran, and Magnus Egerstedt. [cited by applicant]
Mesbahi, Mehran, “On a Dynamic Extension of the Theory of Graphs.” In [cited by applicant]
Mesbahi, Mehran, “On State-Dependent Dynamic Graphs and Their Controllability Properties.” [cited by applicant]
Szepesvári, Csaba. [cited by applicant]
Talebi, Shahriar, Siavash. Alemzadeh, Lillian. J. Ratliff, and Mehran Mesbahi. “Distributed Learning in Network Games: A Dual Averaging Approach.” [cited by applicant]
Tsitsiklis, John N., and Dimitri P. Bertsekas. 1984. “Distributed Asynchronous Optimal Routing in Data Networks.” https://doi.org/10.21236/ada458791, 1984. [cited by applicant]
Yan et al. “Contact Plan Design for Navigation Satellite Network Based on Simulated Annealing.” Institute of Spacecraft System Engineering China Academy of Space Technology, Beijing, China. IEEE 2015. pp. 12-16. [cited by applicant]