IP Library Granted Patent US 10,491,509
Granted Patent B2
US 10,491,509 · App. 16/039,832 · Granted Nov 26, 2019

Application controlled path selection over different transit providers

Inventors: Alexander A. Kazerani (Santa Monica, CA); Amir Reza Khakpour (Santa Monica, CA); Kyle Duren (Los Angeles, CA)
Assignee: Verizon Digital Media Services Inc.
H04L45/22H04L45/306H04L45/70H04L45/74
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,491,509
App. No.
16/039,832
Granted
Nov 26, 2019
Kind
B2
Abstract

Some embodiments move the task of selecting between different transit provider paths from the network level to the application level. Some embodiments perform network level configurations involving a destination network router advertising over a first transit provider path, a unique first address identifying a destination network server as reachable via the first path and advertising over a second transit provider path, a unique second address identifying the destination network server as reachable via the second path. Some embodiments further perform application level configurations involving a source network server passing a first packet to the destination network server over the first path by addressing the first packet to the first address and passing a second packet to the destination network server over the second path by addressing the second packet to the second address. The path selection may be based on policies accounting for congestion, performance, and other metrics.

Claims (32)

1. A method comprising:

tracking at a first server in a first network, a mapping of a destination in a different second network to (i) a first Internet Protocol (IP) address associated with a first network path connecting the first network to the second network, and (ii) a second IP address associated with a different second network path connecting the first network to the second network, wherein the first IP address is different than the second IP address;

generating, by the first server, a packet to send to the destination over a network path selected by the first server, wherein the generating comprises (i) setting the first IP address as a destination address of the packet based on the mapping and the first server selecting the first network path over the second network path, and (ii) setting the second IP address as the destination address of the packet based on the mapping and the first server selecting the second network path over the first network path; and

sending the packet from the first server.

2. The method of claim 1 , wherein the destination is a second server in the second network, wherein the second server is accessible via a third IP address that is different than the first IP address for the first network path and the second IP address for the second network path.

3. The method of claim 1 further comprising receiving at the first server, a first route advertisement comprising the first IP address from the second network over the first network path, and a second route advertisement comprising the second IP address from the second network over the second network path.

4. The method of claim 1 , wherein the generating further comprises:

determining a third IP address as an IP address of the destination;

using the first IP address, instead of the third IP address, as the destination address of the packet based on the first server selecting the first network path; and

using the second IP address, instead of the third IP address, as the destination address of the packet based on the first server selecting the second network path.

5. The method of claim 1 further comprising monitoring latency through the first network path based on a first packet sent to the first IP address, and monitoring latency through the second network path based on a second packet sent to the second IP address.

6. The method of claim 5 further comprising selecting one of the first network path and the second network path based on said monitoring of latency through the first network path and said monitoring of latency through the second network path.

7. The method of claim 1 further comprising assigning a third IP address for a response from the destination to the first server over the first network path, and assigning a fourth IP address for a response from the destination to the first server over the second network path.

8. The method of claim 1 further comprising changing routing rules on a gateway router of the first network to include (i) a first rule for forwarding the packet from the first server the destination address set as the first IP address to a next network hop along the first network path, and (ii) a second rule for forwarding the packet from the first server with the destination address set as the second IP address to a next network hop along the second network path.

9. A method comprising:

mapping a first network address with which to access a first server in a first network to (i) a second network address that is advertised over a first network path connecting the first network to a remote second network, and (ii) a third network address that is advertised over a different second network path connecting the first network to the remote second network, wherein the second network address and the third network address are different than the first network address; and

routing a packet from the remote second network to the first server in the first network over a network path selected by a second server in the remote second network generating the packet, wherein the routing comprises

(i) sending the packet from the remote second network through the first network path to the first network based on the destination address of the packet set as the second network address, and

(ii) sending the packet from the remote second network through the second network path to the first network based on the destination address of the packet set as the third network address.

10. The method of claim 9 further comprising receiving at the remote second network over the first network path, a first route advertisement comprising the second network address.

11. The method of claim 10 further comprising receiving at the remote second network over the second network path, a second route advertisement comprising the third network address, and wherein the mapping is based on said receiving of the first route advertisement and said receiving of the second route advertisement.

12. The method of claim 9 , wherein the first network path comprises a first plurality of network hops with at least one network hop that is different than a second plurality of network hops of the second network path.

13. The method of claim 9 further comprising generating at the second server, the packet with the destination address (i) set to the second network address, instead of the first network address of the first server, in response to the mapping and selection of the first network path over the second network path by the second server, and (ii) set to the third network address, instead of the first network address of the first server, in response to the mapping and selection of the second network path over the first network path by the second server.

14. A method comprising:

storing at a particular server in a source network, a first address of a first server in a remote first network, and a second address of a second server in a different remote second network;

selecting by the particular server, a first network path from a first plurality of network paths, that connects the remote first network to the source network for a first packet targeting the first server;

sending the first packet to the first server in the remote first network over the selected first network path by changing the destination address of the first packet from the first address of the first server to a third address advertised over the first network path from the remote first network, wherein the third address is different than the first address;

selecting by the particular server, a second network path from a second plurality of network paths, that connects the remote second network to the source network, for a second packet targeting the second server; and

sending the second packet to the second server in the remote second network over the selected second network path by changing the destination address of the second packet from the second address of the second server to a fourth address advertised over the second network path from the remote second network, wherein the fourth address is different than the second address.

15. The method of claim 14 , wherein each network path of the first plurality of network paths is associated with a different Internet Protocol (IP) address than the first address of the first server, and wherein each network path of the second plurality of network paths is associated with a different IP address than the second address of the second server.

16. The method of claim 14 further comprising receiving a different route advertisement over each network path of the first plurality of network paths, and a different route advertisement over each network path of the second plurality of network paths.

17. The method of claim 16 , wherein each route advertisement comprises a different IP address.

Assignments (11)
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 →
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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 21, 2022
From: EDGECAST INC.
To: EDGIO, INC.
Reel/Frame 061738/0972 →
CHANGE OF NAME Recorded Mar 15, 2022
From: VERIZON DIGITAL MEDIA SERVICES INC.
To: EDGECAST INC.
Reel/Frame 059367/0990 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 19, 2018
From: KAZERANI, ALEXANDER A.; KHAKPOUR, AMIR REZA; DUREN, KYLE
To: EDGECAST NETWORKS, INC.
Reel/Frame 046401/0633 →
CHANGE OF NAME Recorded Jul 19, 2018
From: EDGECAST NETWORKS, INC.
To: VERIZON DIGITAL MEDIA SERVICES INC.
Reel/Frame 046592/0323 →