IP Library Granted Patent US 8,327,002
Granted Patent B1
US 8,327,002 · App. 13/563,099 · Granted Dec 4, 2012

BGP peer prioritization in networks

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 8,327,002
App. No.
13/563,099
Granted
Dec 4, 2012
Kind
B1
Abstract

A method for establishing routes to neighboring networks during an initialization sequence according to a prioritized order may include detecting a power-cycling event and accessing a plurality of identifiers stored in a memory device that persisted through the power-cycling event. Each of the plurality of identifiers may be associated with a network. The networks may include first networks that are coupled to network endpoints, and second networks that are capable of coupling to the one or more first networks. For each network, the method may further include accessing a priority field in the memory device that may be associated with the network. The respective priority field can be based on an order in which communications should be established with the network and application layer information. The method may also include attempting to establish communications with each of the plurality of networks in an order based on the priority fields.

Claims (57)

1. A method for establishing routes to neighboring networks during an initialization sequence according to a prioritized order, the method comprising:

detecting a power-cycling event;

accessing a plurality of identifiers stored in a memory device that persisted through the power-cycling event, wherein:

each of the plurality of identifiers is associated with one of a plurality of networks;

the plurality of networks comprises:

one or more first networks that are coupled to network endpoints; and

one or more second networks that are capable of coupling to the one or more first networks;

for each network in the plurality of networks, accessing a respective priority field in the memory device, wherein:

the respective priority field is associated with the network, and

the respective priority field is based on:

an order in which communications should be established with the network, and

application layer information network traffic occurring prior to the most recent power-cycling event;

causing a processing function to attempt to establish communications with each of the plurality of networks, wherein the attempts to establish communications each comprises an initial attempt, and wherein the initial attempts are ordered based on the respective priority field associated with each of the plurality of networks.

2. The method of claim 1 for establishing routes to neighboring networks during an initialization sequence according to a prioritized order, wherein the priority field associated with each of the plurality of networks is based on a number of second networks with which the network is capable of coupling.

3. The method of claim 1 for establishing routes to neighboring networks during an initialization sequence according to a prioritized order, wherein the priority field associated with each of the plurality of networks is based on maximizing revenues.

4. The method of claim 1 for establishing routes to neighboring networks during an initialization sequence according to a prioritized order, wherein the priority field associated with each of the plurality of networks is based on information from one or more BGP policy files.

5. The method of claim 1 for establishing routes to neighboring networks during an initialization sequence according to a prioritized order, wherein the priority field associated with each of the plurality of networks is based on optimizing egress and ingress routes in the plurality of networks.

6. The method of claim 1 for establishing routes to neighboring networks during an initialization sequence according to a prioritized order, further comprising:

accessing a first priority value assigned to the priority field of each of the one or more first networks; and

accessing a second priority value assigned to the priority field of each of the one or more second networks.

7. The method of claim 1 for establishing routes to neighboring networks during an initialization sequence according to a prioritized order, wherein the one or more second networks comprise Tier 1 networks.

8. The method of claim 1 for establishing routes to neighboring networks during an initialization sequence according to a prioritized order, further comprising, prior to causing the one or more processing functions to attempt to establish communications with each of the plurality of networks, receiving a signal at the processing function to begin an initialization routine.

9. The method of claim 8 for establishing routes to neighboring networks during an initialization sequence according to a prioritized order, wherein receiving the signal at the processing function to begin the initialization routine occurs in response to a power interruption.

10. The method of claim 1 for establishing routes to neighboring networks during an initialization sequence according to a prioritized order, wherein each of the plurality of identifiers comprises a network address.

11. The method of claim 1 for establishing routes to neighboring networks during an initialization sequence according to a prioritized order, wherein the memory device comprises a nonvolatile random access memory.

12. A device for determining routing pathways for transmitting information over a network, the device comprising:

a network interface, wherein:

the network interface is coupled to a plurality of networks;

the plurality of networks comprises:

one or more first networks that are coupled to network endpoints; and

one or more second networks that are capable of coupling to the one or more first networks;

a power module that participates in a power-cycling event;

a persistent memory device storing:

a plurality of identifier fields, wherein each of the plurality of identifier fields is associated with one of a plurality of networks; and

a plurality of priority fields, wherein:

each of the plurality of priority fields is associated with at least one of the plurality of networks; and

each of the plurality of priority fields is based on:

an order in which communications should be established with the respective network, and

application layer information network traffic occurring prior to the most recent power-cycling event;

a processing function that receives an indication from the power module of the power-cycling event has occurred and attempts to establish communications each comprises an initial attempt, and wherein the initial attempts with each of the plurality of networks, wherein the attempts to establish communications are ordered based on the respective priority field associated with each of the plurality of networks.

13. The device of claim 12 for determining routing pathways for transmitting information over a network, further comprising a timer function, wherein:

the timer function starts timing when the processing function begins attempting to establish communications with each of the one or more second networks; and

the timer function determines when a predetermined time period has expired;

the timer function sends a signal to the processing function to begin attempting to establish communications with each of the one or more first networks.

14. The device of claim 12 for determining routing pathways for transmitting information over a network, wherein the plurality of networks is divided into one or more priority groups, wherein the priority fields associated each network in a priority group store a common value.

15. The device of claim 12 for determining routing pathways for transmitting information over a network, wherein the plurality of networks is divided into one or more peer groups based on application layer data, and a single value stored in a priority field is associated with each peer group.

16. The device of claim 12 for determining routing pathways for transmitting information over a network, wherein the one or more first networks comprises customers of an entity associated with the device.

17. The device of claim 12 for determining routing pathways for transmitting information over a network, wherein the network interface is further coupled to a POP server farm.

18. A method for prioritizing establishing routes to neighboring networks using persistent and non-persistent memory devices, the method comprising:

storing information identifying routes through a plurality of networks in a first memory device;

storing a plurality of identifier fields in a second memory device, wherein the each of identifier fields are associated with one of the plurality of networks;

storing a plurality of priority fields in the second memory device, wherein each of the priority fields are associated with one of the plurality of networks;

reducing a power level provided to the first memory device such that the information identifying routes is no longer accessible in the first memory device;

reducing a power level provided to the second memory device, wherein the plurality of identifier fields and the plurality of priority fields remains accessible in the second memory device;

restoring power to both the first memory device and the second memory device;

causing a processing function to attempt to establish communications with each of the plurality of networks, wherein the attempts to establish communications each comprises an initial attempt, and wherein the initial attempts are ordered based on the respective priority field associated with each of the plurality of networks, wherein the prioritizing establishing routes to neighboring networks uses persistent and non-persistent memory devices, and wherein the priority fields in the second memory device are determined automatically based on application level data and network traffic occurring prior to the power levels being reduced.

19. The method of claim 18 for prioritizing establishing routes to neighboring networks during using persistent and non-persistent memory devices, wherein reducing the power level provided to the first memory and reducing the power level provided to the second memory comprises reducing the power levels to less than 1 W.

Assignments (10)
RELEASE OF PATENT SECURITY AGREEMENT [RECORDED AT REEL/FRAME 065597/0406] Recorded Jul 9, 2025
From: U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION
To: UPLYNK, INC. (F/K/A EDGIO, INC.)
Reel/Frame 071875/0105 →
RELEASE OF PATENT SECURITY AGREEMENT [RECORDED AT REEL/FRAME 065597/0212] Recorded Jul 3, 2025
From: LYNROCK LAKE MASTER FUND LP
To: UPLYNK, INC. (F/K/A EDGIO, INC.); MOJO MERGER SUB, LLC
Reel/Frame 071817/0877 →
RELEASE OF PATENT SECURITY AGREEMENT [RECORDED AT REEL/FRAME 068763/0276] Recorded Jul 3, 2025
From: LYNROCK LAKE MASTER FUND LP
To: UPLYNK, INC. (F/K/A EDGIO, INC.); MOJO MERGER SUB, LLC
Reel/Frame 071818/0022 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 30, 2025
From: EDGIO, INC.
To: DRNC HOLDINGS, INC.
Reel/Frame 070071/0327 →
CHANGE OF NAME Recorded Sep 9, 2024
From: LIMELIGHT NETWORKS, INC.
To: EDGIO, INC.
Reel/Frame 068898/0281 →
PATENT SECURITY AGREEMENT Recorded Aug 23, 2024
From: EDGIO, INC.; MOJO MERGER SUB, LLC
To: LYNROCK LAKE MASTER FUND LP [LYNROCK LAKE PARTNERS LLC, ITS GENERAL PARTNER]
Reel/Frame 068763/0276 →
PATENT SECURITY AGREEMENT Recorded Nov 15, 2023
From: EDGIO, INC.; MOJO MERGER SUB, LLC
To: LYNROCK LAKE MASTER FUND LP [LYNROCK LAKE PARTNERS LLC, ITS GENERAL PARTNER]
Reel/Frame 065597/0212 →
PATENT SECURITY AGREEMENT Recorded Nov 15, 2023
From: EDGIO, INC.; MOJO MERGER SUB, LLC
To: U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION
Reel/Frame 065597/0406 →
CORRECTIVE ASSIGNMENT TO CORRECT THE 13373144 PREVIOUSLY RECORDED ON REEL 028689 FRAME 0944. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT OF ASSIGNORS INTEREST. Recorded Nov 1, 2012
From: VAN DUSSEN, BRENT; MADDUX, DENVER; COFFEEN, TOM
To: LIMELIGHT NETWORKS, INC.
Reel/Frame 029237/0396 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 31, 2012
From: VAN DUSSEN, BRENT; MADDUX, DENVER; COFFEEN, TOM
To: LIMELIGHT NETWORKS, INC.
Reel/Frame 028689/0944 →