IP Library Granted Patent US 10,419,533
Granted Patent B2
US 10,419,533 · App. 16/030,852 · Granted Sep 17, 2019

Edge server selection for device-specific network topologies

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 10,419,533
App. No.
16/030,852
Granted
Sep 17, 2019
Kind
B2
Abstract

A server selects edge-server sets to deliver data to client devices. To rapidly find an optimal or near-optimal edge-server set, the server constructs a trellis having a number of states at least equal to the number of edge servers to be included in an edge-server set. Each state comprises a plurality of nodes, wherein each node corresponds to one of the plurality of candidate edge servers. A trellis-exploration algorithm selects the edge-server set by providing interconnects between each node of a first state to each of a plurality of nodes in a next state, and for each node in a state, selecting a path corresponding to a best performance metric that connects to a node in a previous state. Each performance metric comprises network topology information, which can include channel measurements from candidate edge servers. When the edge-server set is selected, the server distributes content to the edge servers, which is then transmitted to the client devices.

Claims (37)

1. An apparatus, comprising:

a processor; and

a non-transitory computer-readable memory communicatively coupled to the processor, the memory including a set of instructions stored thereon and executable by the processor for:

constructing a trellis having a number of states at least equal to a number of edge servers to be included in an edge-server set, wherein each state comprises a plurality of nodes, each node corresponding to one of the plurality of candidate edge servers;

employing a trellis-exploration algorithm to select the edge-server set, comprising providing interconnects between each node of a first state to each of a plurality of nodes in a next state, and for each node in a state, selecting a path corresponding to a best performance metric that connects to a node in a previous state, wherein each performance metric comprises network topology information, the network topology information comprising channel measurements from candidate edge servers; and

distributing data signals to the edge-server set, the data signals to be transmitted to client devices being served by the edge-server set.

2. The apparatus of claim 1 , wherein each performance metric comprises channel state information from at least one of edge servers and client devices in a wireless network.

3. The apparatus of claim 1 , wherein the set of instructions provide for at least one of adapting a network topology and allocating channels to serve the client devices.

4. The apparatus of claim 1 , wherein the network topology information comprises at least one of estimated bit rates, link-delay information, requests for retransmission, a wireless communication channel model, congestion, queue backlogs, and latency.

5. The apparatus of claim 1 , wherein the network topology information comprises a time-average of at least one of server loads, client-side demand, queue backlogs, bit rates, channel quality, and geographical distributions of client devices.

6. The apparatus of claim 1 , wherein the network topology information comprises at least one of a device network topology for each of a plurality of device types and a demand topology for each of a plurality of content types.

7. The apparatus of claim 1 , wherein the performance metric comprises monetary costs for employing at least one of the plurality of candidate edge servers.

8. The apparatus of claim 1 , wherein the trellis exploration algorithm accounts for allocating channels to at least one of edge servers and client devices in a wireless network.

9. An apparatus, comprising:

a processor; and

a non-transitory computer-readable memory communicatively coupled to the processor, the memory including a set of instructions stored thereon and executable by the processor for:

constructing a trellis having a number of states at least equal to a number of edge servers to be included in an edge-server set, wherein each state comprises a plurality of nodes, each node corresponding to one of the plurality of candidate edge servers;

employing a trellis-exploration algorithm to select the edge-server set, comprising providing interconnects between each node of a first state to each of a plurality of nodes in a next state, and for each node in a state, selecting a path corresponding to a best performance metric that connects to a node in a previous state, wherein each performance metric comprises a function of benefits and costs associated with at least one candidate edge server; and

distributing data signals to the edge-server set, the data signals to be transmitted to client devices being served by the edge-server set.

10. The apparatus of claim 9 , wherein the performance metric comprises channel state information.

11. The apparatus of claim 9 , wherein the trellis-exploration algorithm provides for calculating performance metrics upon adapting at least one of a network topology and a network topology state of the edge-server set.

12. The apparatus of claim 9 , wherein the trellis-exploration algorithm provides for scheduling channels to serve the client devices.

13. The apparatus of claim 9 , wherein the edge-server set is selected when a predetermined number of iterations occurs or when a predetermined performance criterion is met.

14. The apparatus of claim 9 , wherein the edge-server set is selected based on at least one of appending and deleting at least one edge server from a previous edge-server set.

15. The apparatus of claim 9 , wherein each performance metric is calculated using a backpressure routing algorithm.

16. An apparatus, comprising:

a processor; and

a non-transitory computer-readable memory communicatively coupled to the processor, the memory including a set of instructions stored thereon and executable by the processor for:

constructing a trellis having a number of states at least equal to a number of edge servers to be included in an edge-server set, wherein each state comprises a plurality of nodes, each node corresponding to one of the plurality of candidate edge servers;

calculating a fitness function based on network performance and cost corresponding to each candidate edge server and the network topology information;

employing a trellis-exploration algorithm to select the edge-server set, by identifying a path through the trellis having optimal path metrics derived from the fitness function, comprising providing interconnects between each node of a first state to each of a plurality of nodes in a next state, and for each node in a state, selecting a path corresponding to a best path metric that connects to a node in a previous state, wherein the best path metric comprises the fitness function; and

distributing data signals to the edge-server set, the data signals to be transmitted to client devices being served by the edge-server set.

17. The apparatus of claim 16 , wherein employing the trellis-exploration algorithm comprises performing multiple iterations through the trellis to refine selection of the edge-server set.

18. The apparatus of claim 16 , wherein the network performance comprises at least one of a predicted performance and a measured performance.

19. The apparatus of claim 16 , wherein path metrics comprise channel state information.

20. The apparatus of claim 16 , wherein employing the trellis-exploration algorithm comprises adapting at least one of a network topology and a network topology state of the edge-server set.

21. The apparatus of claim 16 , wherein employing the trellis-exploration algorithm comprises selecting channels to serve the plurality of client devices.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 20, 2023
From: TYBALT, LLC
To: GENGHISCOMM HOLDINGS, LLC
Reel/Frame 064970/0411 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 6, 2022
From: GENGHISCOMM HOLDINGS, LLC
To: TYBALT, LLC
Reel/Frame 059179/0468 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 3, 2022
From: SHATTIL, STEVE J
To: GENGHISCOMM HOLDINGS, LLC
Reel/Frame 059310/0087 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 3, 2022
From: DEPARTMENT 13, INC.
To: GENGHISCOMM HOLDINGS, LLC
Reel/Frame 059709/0683 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 19, 2018
From: SHATTIL, STEVE
To: GENGHISCOMM HOLDINGS, LLC
Reel/Frame 047814/0537 →