IP Library › Granted Patent US 10,397,178
Granted Patent B2
US 10,397,178 · App. 15/199,592 · Granted Aug 27, 2019

Internet infrastructure survey

Inventor: Martin Kagan (Portland, OR)
Assignee: Citrix Systems, Inc.
H04L61/1511G06F16/951H04L47/24H04L61/302H04L61/305H04L61/6009H04L67/30
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,397,178
App. No.
15/199,592
Granted
Aug 27, 2019
Kind
B2
Abstract

A system for surveying Internet access quality includes a nameserver, registered to be authoritative for a domain name and configured to receive a DNS query to resolve a pseudo-hostname and to extract from the pseudo-hostname an access quality indicator, and a web portal configured to transmit a data survey code to a web browser, the data survey code being configured to access a resource, to determine the access quality indicator responsively to the resource access, to generate the pseudo-hostname including the access quality indicator and the domain name, and to initiate the DNS query.

Claims (46)

1. A method for surveying Internet access quality, comprising:

receiving at a DNS nameserver a DNS query for the resolution of a pseudo-hostname, wherein the pseudo-hostname is a fully qualified domain name (FQDN) that comprises an indicator of an access quality measurement and a parameter identifying an infrastructure associated with the access quality measurement;

extracting, from the pseudo-hostname, data including the indicator of the access quality measurement and the parameter identifying the infrastructure associated with the access quality measurement; and

generating an access quality profile using the extracted data.

2. The method of claim 1 , further comprising:

conveying the access quality profile to a requester.

3. The method of claim 2 , further comprising determining a preferred Internet access route responsively to the profile.

4. The method of claim 3 , wherein determining a preferred Internet access route comprises determining an infrastructure at which a web client accesses a resource.

5. The method of claim 1 , wherein the access quality profile is specific to an infrastructure.

6. The method of claim 1 , wherein the access quality profile is specific to a client region.

7. The method of claim 1 , wherein the indicator is a first indicator, and wherein generating an access quality profile comprises:

receiving at the nameserver one or more additional DNS queries providing one or more additional respective indicators of access quality measurements; and

calculating an average of the first indicator and the one or more additional indicators.

8. The method of claim 1 , wherein the indicator is a first indicator, and wherein generating an access quality profile comprises:

receiving at the nameserver one or more additional DNS queries providing one or more additional respective indicators of access quality measurements; and

calculating a difference of the first indicator and the one or more additional indicators.

9. The method of claim 1 , wherein the indicator is a first indicator, and wherein generating an access quality profile comprises:

receiving at the nameserver one or more additional DNS queries providing one or more additional respective indicators of access quality measurements;

measuring times preceding receipt of the first DNS query and each of the one or more additional DNS; and

calculating a time-weighted average of the first indicator and the one or more additional indicators.

10. The method of claim 1 , wherein the type of the access quality indicated is one of a set of access quality types including: a round trip time of Internet communications, a connection delay time, a transmission speed, a variability of transmission speed, a communications error rate, and an availability of a resource.

11. The method of claim 1 , wherein receipt of the DNS query is an indication that access quality has changed.

12. A method for surveying Internet access quality, comprising:

transmitting a code to a web client, wherein the code is configured:

to execute at the web client to determine an indicator of measured access quality, the determining comprising:

issuing a request for a resource; and

obtaining the measured access quality from a time delay associated with the request;

to create a pseudo-hostname that is a fully qualified domain name (FQDN) which combines the indicator of measured access quality and a domain name; and

to initiate a DNS query to resolve the pseudo-hostname.

13. The method of claim 12 , wherein the obtaining comprises measuring a type of access quality with respect to a response.

14. The method of claim 13 , wherein the type of access quality measured is one of a set of types of access quality including: a round trip time of Internet communication, a connection delay time, a transmission speed, or a variability of transmission.

15. The method of claim 12 , wherein the resource is accessed from a cache at an infrastructure and wherein the code is configured to issue the request for the resource by issuing two requests for the resource and adding a randomly generated resource parameter to each request.

16. The method of claim 12 , wherein the resource is a first resource and the code is configured to initiate the DNS query by requesting a second resource at an address specified by the pseudo-hostname.

17. The method of claim 12 , wherein the web client is a web browser and wherein the code is configured to run within the web browser in a manner that is transparent to a user of the web browser.

18. The method of claim 12 , wherein the code is configured to round the access quality measurement to a lower precision such that the DNS request to resolve the pseudo-hostname may be resolved by a resolver.

19. A method for surveying Internet access quality, comprising:

issuing a request for a resource;

obtaining a response or a time-out for the request;

generating an access quality measurement based on the response or on the time-out;

creating a pseudo-hostname, which is a fully qualified domain name (FQDN) that encodes the access quality measurement; and

initiating a DNS query to resolve the pseudo-hostname.

20. A system for surveying Internet access quality, comprising:

a nameserver implemented on one or more first computer processors with first memory coupled thereto, the nameserver registered to be authoritative for a domain name and configured to receive a DNS query to resolve a pseudo-hostname and to extract from the pseudo-hostname an indicator of an access quality measurement; and

a web portal implemented on one or more second computer processors with second memory coupled thereto, the web portal configured to transmit a data survey code to a web browser, wherein the data survey code is configured to access a resource, to determine the access quality measurement responsively to the resource access, to generate the pseudo-hostname, which is a fully qualified domain name that includes the indicator of the access quality measurement and the domain name, and to initiate the DNS query;

wherein the data survey code is configured to run within the web browser in a manner that is transparent to a user of the web browser.

21. The system of claim 20 , wherein the DNS query is a first DNS query, and wherein load on the nameserver is reduced by resolution of a second DNS query for the pseudo-hostname, including the same indicator of the access quality measurement as in the first DNS query, in a resolver cache.

Assignments (8)
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 →
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 →
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 →
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 →
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 Feb 12, 2018
From: CEDEXIS, INC.
To: CITRIX SYSTEMS, INC.
Reel/Frame 044894/0879 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 26, 2017
From: KAGAN, MARTIN
To: CEDEXIS INC.
Reel/Frame 043963/0087 →
Continuity (3)
Continuation 13502106
Provisional Application 61258042 · Nov 4, 2009
Related Publication 20170034119A1 · Feb 2, 2017