IP Library Granted Patent US 11,349,936
Granted Patent B2
US 11,349,936 · App. 16/885,430 · Granted May 31, 2022

System and related methods providing channel switching between appliances

Inventors: Georgy Momchilov (Parkland, FL); Jeroen Mattijs Van Rotterdam (Fort Lauderdale, FL)
Assignee: CITRIX SYSTEMS, INC.
H04L67/148
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,349,936
App. No.
16/885,430
Granted
May 31, 2022
Kind
B2
Abstract

A computing system may include a first appliance and a plurality of second appliances connected to different Points of Presence (PoPs). The second appliance may be connected to the first appliance by a plurality of different channels. The first appliance may be configured to establish a virtual connection across the plurality of different channels for data communication through the PoPs, and to switch the different channels between the second appliances without interrupting the virtual connection.

Claims (32)

1. A method comprising:

establishing a virtual connection across a plurality of different channels connecting a first computing device to a plurality of second computing devices, individual channels including a plurality of different data streams, the second computing devices providing access to a communications network, the virtual connection for communicating data through the second computing devices over the network; and

switching the different channels between the second computing devices, and switching the data streams between the different channels, responsive to levels of service available and without interrupting the virtual connection;

wherein the first and second computing devices are configured to provide software-defined networking in a wide area network.

2. The method of claim 1 wherein the first computing device is connected to a client device, and the second computing devices are connected to a server over the network.

3. The method of claim 2 wherein the server comprises a virtual delivery server.

4. The method of claim 2 wherein the server comprises a Software as a Service (SaaS) server.

5. The method of claim 1 wherein the different channels comprise at least some of very small aperture terminal (VSAT) channels, cellular channels, local area network (LAN) channels, wireless LAN channels, and satellite communication channels.

6. The method of claim 1 wherein the plurality of different data streams comprise at least some of a graphics stream, user input stream, printing stream, multimedia stream, and drive mapping stream.

7. The method of claim 1 further comprising, at the first computing device, pinging the second appliances to determine the level of service associated therewith, and switching the channels between the second computing devices based upon the determined levels of service.

8. The method of claim 7 further comprising, at the first computing device, comparing the determined level of service to a threshold responsive to the ping, and switching the channels responsive to the determined level of service falling below the threshold.

9. The method of claim 1 wherein the second computing devices access the network via Points of Presence (PoPs); and further comprising, at the first computing device, transitioning between single-stream and multi-stream communication across at least one of the channels based upon changes in availability of the PoPs.

10. A computing system comprising:

a first computing device; and

a plurality of second computing devices connected to different Points of Presence (PoPs), and connected to the first computing device by a plurality of different channels, individual channels including a plurality of different data streams;

wherein the first computing device is configured to establish a virtual connection across the plurality of different channels for data communication through the PoPs, and to switch the different channels between the second computing devices, and switch the data streams between the different channels, responsive to different levels of service available from the second computing devices for the channels and without interrupting the virtual connection;

wherein the first and second computing devices are configured to provide software-defined networking in a wide area network.

11. The computing system of claim 9 wherein the first computing device is connected to a client device, and the PoPs are connected to a server over the Internet.

12. The computing system of claim 9 wherein the different channels comprise at least some of very small aperture terminal (VSAT) channels, cellular channels, local area network (LAN) channels, wireless LAN channels, and satellite communication channels.

13. A computing device comprising:

a memory and a processor configured to cooperate with the memory to

establish a virtual connection across a plurality of different channels connecting the processor to a plurality of other computing devices, individual channels including a plurality of different data streams, the other computing devices connected to different Points of Presence (PoPs), the virtual connection for communicating data through the PoPs, and

switch the different channels between the other computing devices, and switch the data streams between the different channels, responsive to different levels of service available from the other computing devices for the channels without interrupting the virtual connection;

wherein the processor and the other computing devices are configured to provide software-defined networking in a wide area network.

14. The computing device of claim 13 wherein the processor is connected to a client device, and the PoPs are connected to a server over the Internet.

15. The computing device of claim 13 wherein the different channels comprise at least some of very small aperture terminal (VSAT) channels, cellular channels, local area network (LAN) channels, wireless LAN channels, and satellite communication channels.

16. A non-transitory computer-readable medium having computer-executable instructions for causing a first computing device to perform steps comprising:

establishing a virtual connection across a plurality of different channels connecting the first computing device to a plurality of second computing devices, individual channels including a plurality of different data streams, the second computing devices connected to different Points of Presence (PoPs), the virtual connection for communicating data through the PoPs; and

switching the different channels between the second computing devices, and switching the data streams between the different channels, responsive to different levels of service available from the second computing devices for the channels without interrupting the virtual connection;

wherein the first computing device and the second computing devices are configured to provide software-defined networking in a wide area network.

17. The non-transitory computer-readable medium of claim 16 wherein the first computing device is connected to a client device, and the PoPs are connected to a server over the Internet.

18. The non-transitory computer-readable medium of claim 16 wherein the different channels comprise at least some of very small aperture terminal (VSAT) channels, cellular channels, local area network (LAN) channels, wireless LAN channels, and satellite communication channels.

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 May 28, 2020
From: MOMCHILOV, GEORGY; VAN ROTTERDAM, JEROEN MATTIJS
To: CITRIX SYSTEMS, INC.
Reel/Frame 052775/0015 →
Continuity (1)
Related Publication 20210377349A1 · Dec 2, 2021