IP Library Granted Patent US 10,516,601
Granted Patent B2
US 10,516,601 · App. 15/875,437 · Granted Dec 24, 2019

Method for prioritization of internet traffic by finding appropriate internet exit points

Inventors: Marco Murgia (Los Gatos, CA); Praveen Raja Dhanabalan (Bengaluru, IN)
Assignee: CITRIX SYSTEMS, INC.
H04L45/302H04L45/121H04L45/125H04L45/126H04L45/22H04L45/70H04L47/24H04L47/283H04L49/205H04L47/125
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,516,601
App. No.
15/875,437
Granted
Dec 24, 2019
Kind
B2
Abstract

The systems and methods discussed herein provide for faster communications, particularly for high priority traffic, across a distributed network with multiple exit points to a Wide Area Network. Rather than simply routing traffic based on internal or external destination, an intelligent router may measure latency to an endpoint destination via multiple paths, both external and internal, and direct traffic accordingly. Steering high priority traffic via the internal connection to an exit point near the destination server, and then to the server via the external network, may be faster than simply forwarding the connection via the external network from the exit point closest to the source device. Additionally, to reduce bandwidth requirements of the nearby exit point and provide capability for higher priority traffic, low priority traffic may be redirected back via the internal connection and transmitted via a distant exit point.

Claims (34)

1. A system for routing traffic via a plurality of network interfaces, comprising:

a routing device comprising a plurality of network interfaces, a connection monitor, and a traffic router;

wherein a first network interface of the plurality of network interfaces is connected via a first network to a client device;

wherein a second network interface of the plurality of network interfaces is connected via a second network to a remote server;

wherein a third network interface of the plurality of network interfaces is connected via a third network to a remote routing device, the remote routing device in communication with the remote server via a fourth network;

wherein the connection monitor is configured to:

measure a first connection latency to the remote server via the second network, and a second connection latency to the remote server via the third network, the remote routing device, and the fourth network, and

monitor total utilization of the second network and fourth network and utilization of the second network and fourth network by high priority traffic; and

wherein the traffic router is configured to, responsive to the measured first connection latency and the second connection latency:

redirect high priority traffic to the remote server from the first network via the third network, responsive to the first connection latency exceeding the second connection latency, and

redirect low priority traffic received from the remote routing device via the third network to the second network, responsive to the utilization of the fourth network by high priority traffic exceeding a predetermined percentage of the total utilization of the fourth network.

2. The system of claim 1 , wherein the third network comprises a virtual private network.

3. The system of claim 1 , wherein the remote routing device is geographically closer to the remote server than the routing device.

4. The system of claim 1 , wherein the second network and the fourth network are the same network.

5. The system of claim 1 , wherein the first connection latency exceeds the second connection latency, and wherein the traffic router is configured to redirect the packet via the third network, the remote routing device configured to forward the packet to the remote server via the fourth network.

6. A method for routing traffic via a plurality of network interfaces, comprising:

measuring, by a connection monitor of a routing device in communication with a client device via a first network, a first connection latency to a remote server via a second network, and a second connection latency to the remote server via a third network and a remote routing device in communication with the remote server via a fourth network;

monitoring, by the connection monitor, total utilization of the second network and fourth network and utilization of the second network and fourth network by high priority traffic; and

redirecting, by the traffic router, high priority traffic to the remote server from the first network via the third network, responsive to the first connection latency exceeding the second connection latency, and

redirecting, by the traffic router, low priority traffic received from the remote routing device via the third network to the second network, responsive to the utilization of the fourth network by high priority traffic exceeding a predetermined percentage of the total utilization of the fourth network.

7. The method of claim 6 , wherein the third network comprises a virtual private network.

8. The method of claim 6 , wherein the remote routing device is geographically closer to the remote server than the routing device.

9. The method of claim 6 , wherein the second network and the fourth network are the same network.

10. The method of claim 6 , wherein the first connection latency exceeds the second connection latency, and further comprising redirecting, by the traffic router, the packet via the third network, the remote routing device configured to forward the packet to the remote server via the fourth network.

11. A system for routing traffic via a plurality of network interfaces, comprising:

a routing device comprising a plurality of network interfaces and a traffic router;

wherein a first network interface is connected via a first network to a server; and

wherein a second network interface is connected via a second network to a remote routing device, the remote routing device in communication with a remote client device;

wherein a third network interface is connected via a third network to a local client device;

wherein the traffic router is configured to redirect a packet from the remote client device, received via the second network from the remote routing device, to the server via the first network, responsive to the packet being received via the second network from the remote client device; and

wherein the traffic router is configured to redirect a packet from the local client device to the server via the second network and the remote routing device rather than via the first network responsive to the packet from the local client device being identified as a low priority packet and responsive to a utilization of the first network exceeding a threshold, the remote routing device forwarding the packet from the local client device to the server via a fourth network.

12. The system of claim 11 , wherein the second network comprises a virtual private network.

13. The system of claim 11 , wherein the routing device is geographically closer to the server than the remote routing device.

14. The system of claim 11 , wherein the first network and the fourth network are the same network.

Assignments (9)
PATENT SECURITY AGREEMENT Recorded Aug 15, 2025
From: CLOUD SOFTWARE GROUP, INC.; CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 072488/0172 →
SECURITY INTEREST Recorded May 24, 2024
From: CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.); CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 067662/0568 →
RELEASE AND REASSIGNMENT OF SECURITY INTEREST IN PATENT (REEL/FRAME 062113/0001) Recorded Apr 14, 2023
From: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
To: CITRIX SYSTEMS, INC.; CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.)
Reel/Frame 063339/0525 →
PATENT SECURITY AGREEMENT Recorded Apr 14, 2023
From: CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.); CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 063340/0164 →
PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 062113/0470 →
PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 062112/0262 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 062113/0001 →
SECURITY INTEREST Recorded Sep 30, 2022
From: CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION
Reel/Frame 062079/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 23, 2018
From: MURGIA, MARCO; DHANABALAN, PRAVEEN RAJA
To: CITRIX SYSTEMS, INC.
Reel/Frame 044696/0798 →
Continuity (1)
Related Publication 20190230027A1 · Jul 25, 2019