IP Library Granted Patent US 11,716,393
Granted Patent B1
US 11,716,393 · App. 17/744,006 · Granted Aug 1, 2023

Switching connectors for establishing sessions to access services according to network conditions

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,716,393
App. No.
17/744,006
Filed
May 13, 2022
Granted
Aug 1, 2023
Kind
B1
Art Unit
2443
USPC
709/227
Abstract

Described embodiments provide systems and methods for establishing a session. A client may identify, to access at least one of a plurality of services via a connector, a plurality of metrics on network conditions between the connector and a corresponding service of the plurality of services. The client may use at least one value of the plurality of metrics to scale each metric of the plurality of metrics. The client may determine a score for each service of the plurality of services as a function of each of the plurality of scaled metrics for the corresponding service. The client may select, from the plurality of services, a service based at least on the score. The client may establish a session with the connector to access the selected service.

Claims (66)

1. A method of establishing a session, comprising:

identifying, by a client to access at least one of a plurality of services via a connector, a plurality of metrics on network conditions between the connector and a corresponding service of the plurality of services;

using, by the client, at least one value of the plurality of metrics to scale each metric of the plurality of metrics;

determining, by the client, a score for each service of the plurality of services as a function of each of the plurality of scaled metrics for the corresponding service;

selecting, by the client, from the plurality of services, a service based at least on the score; and

establishing, by the client, a session with the connector to access the selected service.

2. The method of claim 1 , further comprising:

identifying, by the client to access the service via at least one of a plurality of connectors, a second plurality of metrics on network conditions between the client and a corresponding connector of the plurality of connectors;

using, by the client, at least one value of the second plurality of metrics to scale each of the second plurality of metrics;

determining, by the client, a score for each connector of the plurality of connectors as the function of each of second plurality of scaled metrics for the corresponding connector; and

selecting, by the client, from the plurality of connectors, the connector based at least on the score and the second score.

3. The method of claim 1 , further comprising determining, by the client accessing at least one of the plurality of services via a second session with a second connector, a second score for the second connector of the plurality of connectors as a function of each of a second plurality of scaled metrics for the second connector, and

wherein identifying the first plurality of metrics further comprises identifying the first plurality of metrics between the connector different from the second connector and the corresponding service, responsive to determining that the second score for the second connector does not satisfy a threshold.

4. The method of claim 1 , further comprising:

determining, by the client accessing at least one of the plurality of services via a second session with a second connector, a second score for the second connector of the plurality of connectors as a function of each of a second plurality of scaled metrics for the second connector, and

continuing, by the client, the second session to access at least one of the plurality of services, responsive to determining that the second score for the second connector satisfies a threshold.

5. The method of claim 1 , further comprising identifying, by the client, that the plurality of services are of different types, and

wherein selecting the service further comprises selecting, from the plurality of services, the service having a highest score with which the client is to access via the session.

6. The method of claim 1 , further comprising identifying, by the client, that the plurality of services, and

wherein selecting the service further comprises selecting, from the plurality of services, the service having a lowest score with which to determine a second score for network conditions between the client and the connector.

7. The method of claim 1 , further comprising providing, by the client, a prompt identifying the connector with which to establish the session to access the service; and

wherein establishing the session further comprises establishing the session with the connector to access the service, responsive to a selection of the connector via the prompt.

8. The method of claim 1 , further comprising:

providing, by the client, a prompt identifying the connector with which to establish the session to access the service; and

maintaining, by the client, a second session with a second connector to access at least one of the plurality of services, responsive to a rejection of the connector via the prompt.

9. The method of claim 1 , wherein using at least one value of the plurality of metrics to scale further comprises using a minimum value and a maximum value of the plurality of metrics to scale the plurality of metrics in accordance with a normalization function.

10. The method of claim 1 , wherein establishing the session further comprises establishing the session with the connector to initiate a virtual desktop via which the service is accessible.

11. A system for selecting a connector, comprising:

a device comprising one or more processors coupled with memory configured to:

identify a plurality of metrics on network conditions between a connector and a corresponding service of a plurality of services;

use at least one value of the plurality of metrics to scale each metric of the plurality of metrics;

determine a score for each service of the plurality of services as a function of each of the plurality of scaled metrics for the corresponding service;

select, from the plurality of services, a service based at least on the score; and

establish a session with the connector to access the selected service.

12. The system of claim 11 , wherein the device is configured to:

identify a second plurality of metrics on network conditions between the device and a corresponding connector of a plurality of connectors;

use at least one value of the second plurality of metrics to scale each of the second plurality of metrics;

determine a score for each connector of the plurality of connectors as the function of each of second plurality of scaled metrics for the corresponding connector; and

select, from the plurality of connectors, the connector based at least on the score and the second score.

13. The system of claim 11 , wherein the device is configured to:

determine a second score for a second connector of the plurality of connectors as a function of each of a second plurality of scaled metrics for the second connector, the second connector used to access at least one of the plurality of services via the second session and

identify the first plurality of metrics between the connector different from the second connector and the corresponding service, responsive to determining that the second score for the second connector does not satisfy a threshold.

14. The system of claim 11 , wherein the device is configured to:

identify that the plurality of services are of different types; and

select, from the plurality of services, the service having a highest score with which the device is to access via the session.

15. The system of claim 11 , wherein the device is configured to:

identify that the plurality of services, that the plurality of services are of a same type; and

select, from the plurality of services, the service having a lowest score with which to determine a second score for network conditions between the device and the connector.

16. The system of claim 11 , wherein the device is configured to:

provide a prompt identifying the connector with which to establish the session to access the service; and

establish the session with the connector to access the service, responsive to a selection of the connector via the prompt.

17. The system of claim 11 , wherein the device is configured to use a minimum value and a maximum value of the plurality of metrics to scale the plurality of metrics in accordance with a normalization function.

18. A non-transitory computer readable medium storing program instructions for causing one or more processors to:

identify a plurality of metrics on network conditions between a connector and a corresponding service of a plurality of services;

use at least one value of the plurality of metrics to scale each metric of the plurality of metrics;

determine a score for each service of the plurality of services as a function of each of the plurality of scaled metrics for the corresponding service;

select, from the plurality of services, a service based at least on the score; and

establish a session with the connector to access the selected service.

19. The non-transitory computer readable medium of claim 18 , wherein the instructions further cause the one or more processors to:

identify a second plurality of metrics on network conditions between the device and a corresponding connector of a plurality of connectors;

use at least one value of the second plurality of metrics to scale each of the second plurality of metrics;

determine a score for each connector of the plurality of connectors as the function of each of second plurality of scaled metrics for the corresponding connector; and

select, from the plurality of connectors, the connector based at least on the score and the second score.

20. The non-transitory computer readable medium of claim 18 , wherein the instructions further cause the one or more processors to:

determine a second score for a second connector of the plurality of connectors as a function of each of a second plurality of scaled metrics for the second connector, the second connector used to access at least one of the plurality of services via the second session and

identify the first plurality of metrics between the connector different from the second connector and the corresponding service, responsive to determining that the second score for the second connector does not satisfy a threshold.