IP Library Granted Patent US 11,570,053
Granted Patent B2
US 11,570,053 · App. 17/183,667 · Granted Jan 31, 2023

Systems and methods for routing and topology management of computer networks with steerable beam antennas

Inventors: David Mandle (San Francisco, CA); Yaoyao Gu (Puyallup, WA); Brian Barritt (San Jose, CA); Tatiana Kichkaylo (Mountain View, CA)
Assignee: Aalyria Technologies, Inc.
H04L41/12H04L41/22H04L43/08H04L45/02H04W16/28H04W40/24H04B7/18504H04L45/12H04L45/48H04W40/02H04W84/005H04W84/06
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 11,570,053
App. No.
17/183,667
Granted
Jan 31, 2023
Kind
B2
Abstract

This disclosure provides systems and methods for routing and topology management of computer networks with steerable beam antennas. A network controller can generate an input graph for a first time period. The input graph can have a plurality of vertices each representing a respective moving node and a plurality of edges each representing a possible link between a pair of moving nodes. The input graph also can include corresponding location information for each of the moving nodes during the first time period. A solver module can receive information corresponding to the input graph, a maximum degree for each vertex in the input graph, and a set of provisioned network flows. The solver module can determine a subgraph representing a network topology based on the input graph, the maximum degree for each vertex in the input graph, and the set of provisioned network flows, such that a number of edges associated with each vertex in the subgraph does not exceed the maximum degree for each vertex.

Claims (36)

1. A method for configuring a network having a plurality of nodes including at least one moving node, the method comprising:

determining, by a network controller of the network, available nodes and possible links in the network for a given point in time based on location information for each of the nodes;

determining, by the network controller, a topology of the network for the given point in time based on the available nodes and the possible links;

determining, by the network controller, a plurality of network flows for the determined topology, each of the plurality of network flows comprising one or more requirements for a routing path through the network;

generating, by the network controller, a feasible network topology for the given point in time based on the determined plurality of network flows, the feasible network topology including one or more routing paths and identifying a subset of the possible links to be established using the plurality of nodes, wherein the feasible network topology is based on a predicted path of at least one node, and a duration of the feasible network topology based on the predicted path of the at least one node; and

sending, by the network controller, instructions to one or more of the plurality of nodes of the network for implementing the feasible network topology for the given point in time.

2. The method of claim 1 , wherein the determining the available nodes and possible links in the network includes generating an input graph that has a plurality of vertices each representing a respective one of the plurality of nodes and a plurality of edges each representing a possible link between two of the plurality of nodes.

3. The method of claim 1 , wherein the determining the available nodes and possible links in the network includes receiving, from a given node in the network, a current location of the given node, a predicted path of the given node, current links associated with the given node, and routing information stored at the given node.

4. The method of claim 1 , wherein the one or more requirements include flow bandwidth requirements.

5. The method of claim 1 , wherein the one or more requirements include latency requirements.

6. The method of claim 1 , wherein the feasible network topology is further based on a degree of change between the feasible network topology and a prior network topology.

7. The method of claim 1 , wherein the instructions sent to one or more of the plurality of nodes of the network includes at least one beam steering instruction for at least one of the plurality of nodes to aim one or more transceivers based on the one or more routing paths.

8. The method of claim 1 , wherein the instructions sent to one or more of the plurality of nodes of the network includes routing information for updating a routing table according to the one or more routing paths.

9. The method of claim 1 , wherein the feasible network topology is a first feasible network topology; and wherein the method further comprises: generating, by the network controller, a second feasible network topology for the given point in time; and selecting, by the network controller, one of the first feasible network topology and the second feasible network topology based on a comparison of at least one network performance metric in each of the feasible network topologies.

10. A system for configuring a network, the system comprising:

a network controller communicatively coupled to a plurality of nodes in the network, the plurality of nodes including a first node that is in motion relative to a second node;

and wherein the network controller is configured to:

determine available nodes and possible links in the network for a given point in time based on location information for each of the nodes; determine a topology of the communication network for the given point in time based on the available nodes and the possible links;

determine a plurality of network flows for the determined topology, each of the plurality of network flows comprising one or more requirements for a routing path through the network;

generate a feasible network topology for the given point in time, the feasible network topology including one or more routing paths and identifying a subset of the possible links to be established using the plurality of nodes, wherein the feasible network topology is based on a predicted path of at least one node, and at least one of a duration of the feasible network topology based on the predicted path of the at least one node or a degree of change between the feasible network topology and a prior network topology; and

send instructions to the plurality of nodes of the network for implementing the feasible network topology for the given point in time.

11. The system of claim 10 , further comprising the plurality of nodes.

12. The system of claim 10 , wherein the plurality of nodes includes one or more ground stations and one or more high-altitude platforms.

13. The system of claim 10 , wherein the network controller is configured to determine the available nodes and possible links in the network as an input graph that has a plurality of vertices each representing a respective one of the plurality of nodes and a plurality of edges each representing a possible link between two of the plurality of nodes.

14. The system of claim 10 , wherein the network controller is configured to determine the available nodes and possible links in the network based on a current location of a given node of the plurality of nodes, a predicted path of the given node, current links associated with the given node, and routing information stored at the given node.

15. The system of claim 10 , wherein the one or more requirements include flow bandwidth requirements.

16. The system of claim 10 , wherein the one or more requirements include latency requirements.

17. The system of claim 10 , wherein the instructions sent to one or more of the plurality of nodes of the network includes at least one beam steering instruction for at least one of the plurality of nodes to aim one or more transceivers based on the one or more routing paths.

18. The system of claim 10 , wherein the instructions sent to one or more of the plurality of nodes of the network includes routing information for updating a routing table according to the one or more routing paths.

19. The system of claim 10 , wherein the feasible network topology is a first feasible network topology; and wherein the network controller is further configured to: generate a second feasible network topology for the given point in time; and select one of the first feasible network topology and the second feasible network topology based on a comparison of at least one network performance metric in each of the feasible network topologies.

20. A method for configuring a network having a plurality of nodes including at least one moving node, the method comprising:

determining, by a network controller of the network, available nodes and possible links in the network for a given point in time based on location information for each of the nodes;

determining, by the network controller, a topology of the network for the given point in time based on the available nodes and the possible links;

determining, by the network controller, a plurality of network flows for the determined topology, each of the plurality of network flows comprising one or more requirements for a routing path through the network;

generating, by the network controller, a feasible network topology for the given point in time based on the determined plurality of network flows, the feasible network topology including one or more routing paths and identifying a subset of the possible links to be established using the plurality of nodes, wherein the feasible network topology is based on a predicted path of at least one node, and a degree of change between the feasible network topology and a prior network topology; and

sending, by the network controller, instructions to one or more of the plurality of nodes of the network for implementing the feasible network topology for the given point in time.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 22, 2022
From: GOOGLE LLC
To: AALYRIA TECHNOLOGIES, INC.
Reel/Frame 059475/0540 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 1, 2021
From: LOON LLC
To: GOOGLE LLC
Reel/Frame 057355/0972 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 24, 2021
From: MANDLE, DAVID; GU, YAOYAO; BARRITT, BRIAN; KICHKAYLO, TATIANA
To: GOOGLE INC.
Reel/Frame 055393/0685 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 24, 2021
From: GOOGLE LLC
To: LOON LLC
Reel/Frame 055394/0046 →
CHANGE OF NAME Recorded Feb 24, 2021
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 055402/0392 →