IP Library Granted Patent US 7,490,151
Granted Patent B2
US 7,490,151 · App. 10/259,494 · Granted Feb 10, 2009

Establishment of a secure communication link based on a domain name service (DNS) request

Assignee: Virnetx Inc.
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 7,490,151
App. No.
10/259,494
Granted
Feb 10, 2009
Kind
B2
Abstract

A plurality of computer nodes communicate using seemingly random Internet Protocol source and destination addresses. Data packets matching criteria defined by a moving window of valid addresses are accepted for further processing, while those that do not meet the criteria are quickly rejected. Improvements to the basic design include (1) a load balancer that distributes packets across different transmission paths according to transmission path quality; (2) a DNS proxy server that transparently creates a virtual private network in response to a domain name inquiry; (3) a large-to-small link bandwidth management feature that prevents denial-of-service attacks at system chokepoints; (4) a traffic limiter that regulates incoming packets by limiting the rate at which a transmitter can be synchronized with a receiver; and (5) a signaling synchronizer that allows a large number of nodes to communicate with a central node by partitioning the communication function between two separate entities.

Claims (35)

1. A data processing device, comprising memory storing a domain name server (DNS) proxy module that intercepts DNS requests sent by a client and, for each intercepted DNS request, performs the steps of:

(i) determining whether the intercepted DNS request corresponds to a secure server;

(ii) when the intercepted DNS request does not correspond to a secure server, forwarding the DNS request to a DNS function that returns an IP address of a nonsecure computer, and

(iii) when the intercepted DNS request corresponds to a secure server, automatically initiating an encrypted channel between the client and the secure server.

2. The data processing device of claim 1 , wherein step (iii) comprises the steps of:

(a) determining whether the client is authorized to access the secure server; and

(b) when the client is authorized to access the secure server, sending a request to the secure server to establish an encrypted channel between the secure server and the client.

3. The data processing device of claim 2 , wherein step (iii) further comprises the step of:

(c) when the client is not authorized to access the secure server, returning a host unknown error message to the client.

4. The data processing device of claim 3 , wherein the client comprises a web browser into which a user enters a URL resulting in the DNS request.

5. The data processing device of claim 1 , wherein automatically initiating the encrypted channel between the client and the secure sewer comprises establishing an IF address hopping scheme between the client and the secure server.

6. The data processing device of claim 1 , wherein automatically initiating the encrypted channel between the client and the secure server avoids sending a true IP address of the secure server to the client.

7. A computer readable medium storing a domain name server (DNS) proxy module comprised of computer readable instructions that, when executed, cause a data processing device to perform the steps of:

(i) intercepting a DNS request sent by a client;

(ii) determining whether the intercepted DNS request corresponds to a secure server;

(iii) when the intercepted DNS request does not correspond to a secure server, forwarding the DNS request to a DNS function that returns an IP address of a nonsecure computer; and

(iv) when the intercepted DNS request corresponds to a secure server, automatically initiating an encrypted channel between the client and the secure server.

8. The computer readable medium of claim 7 , wherein step (iv) comprises the steps of

(a) determining whether the client is authorized to access the secure server, and

(b) when the client is authorized to access the secure server, sending a request to the secure sewer to establish an encrypted channel between the secure sewer and the client.

9. The computer readable medium of claim 8 , wherein step (iv) further comprises the step of:

(c) when the client is not authorized to access the secure server, returning a host unknown error message to the client.

10. The computer readable medium of claim 9 , wherein the client comprises a web browser into which a user enters a URL resulting in the DNS request.

11. The computer readable medium of claim 7 , wherein automatically initiating the encrypted channel between the client and the secure sewer comprises establishing an IP address hopping scheme between the client and the secure server.

12. The computer readable medium of claim 7 , wherein automatically initiating the encrypted channel between the client and the secure server avoids sending a true IP address of the secure server to the client.

13. A computer readable medium storing a domain name server (DNS) module comprised of computer readable instructions that, when executed, cause a data processing device to perform the steps of:

(i) determining whether a DNS request sent by a client corresponds to a secure server;

(ii) when the DNS request does not correspond to a secure server, forwarding the DNS request to a DNS function that returns an IP address of a nonsecure computer; and

(iii) when the intercepted DNS request corresponds to a secure server, automatically creating a secure channel between the client and the secure server.

14. The computer readable medium of claim 13 , wherein step (iii) comprises the steps of

(a) determining whether the client is authorized to access the secure server; and

(b) when the client is authorized to access the secure server, sending a request to the secure server to establish a secure channel between the secure server and the client.

15. The computer readable medium of claim 14 , wherein step (iii) further comprises the step of:

(c) when the client is not authorized to access the secure server, returning a host unknown error message to the client.

16. The computer readable medium of claim 15 , wherein the client comprises a web browser into which a user enters a URL resulting in the DNS request.

Assignments (4)
CHANGE OF ADDRESS OF ASSIGNEE Recorded Jan 19, 2012
From: VIRNETX INC.
To: VIRNETX INC.
Reel/Frame 027558/0281 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 10, 2007
From: SCIENCE APPLICATIONS INTERNATIONAL CORPORATION
To: VIRNETX INC.
Reel/Frame 018757/0326 →
CORRECTIVE COVERSHEET TO CORRECT THE ASSIGNEES' ADDRESS PREVIOUSLY RECORDED ON REEL 014878, FRAME 0169. Recorded Oct 4, 2004
From: MUNGER, EDMUND COLBY; SCHMIDT, DOUGLAS CHARLES; SHORT III, ROBERT DUNHAM; LARSON, VICTOR; WILLIAMSON, MICHAEL
To: SCIENCE APPLICATIONS INTERNATIONAL CORPORATION
Reel/Frame 015855/0419 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 12, 2004
From: MUNGER, EDMUND COLBY; SCHMIDT, DOUGLAS CHARLES; SHORT III, ROBERT DUNHAM; LARSON, VICTOR; WILLIAMSON, MICHAEL
To: SCIENCE APPLICATIONS INTERNATIONAL CORPORATION
Reel/Frame 014878/0169 →
Continuity (5)
Division 0950478300 · Feb 15, 2000
Continuation In Part 0942964300 · Oct 29, 1999
Provisional Application 6013770400 · Jun 7, 1999
Provisional Application 6010626100 · Oct 30, 1998
Related Publication 20030037142A1 · Feb 20, 2003