IP Library Granted Patent US 11,283,648
Granted Patent B2
US 11,283,648 · App. 16/541,283 · Granted Mar 22, 2022

Resilient tunnels

Inventor: Lawrence B. Huston, III (Ann Arbor, MI)
Assignee: FORCEPOINT LLC
H04L12/4633H04L47/125H04L67/1008H04W80/06
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,283,648
App. No.
16/541,283
Granted
Mar 22, 2022
Kind
B2
Abstract

A system for controlling data services, comprising a plurality of host computers configured to communicate over the network and to request a data tunnel. A plurality of server computers configured to provide data tunnel services to the plurality of host computers. An address allocator operating on one or more processors and configured to implement one or more algorithms that cause a range of addresses to be assigned to each of the server computers, wherein each of the host computers receives one of the addresses for use as part of a data tunnel service request from the host computer to the server computer.

Claims (32)

1. A system for controlling data services, comprising:

a plurality of host computers configured to communicate over the network and to request a data tunnel;

a plurality of server computers configured to provide data tunnel services to the plurality of host computers; and

an address allocator operating on one or more processors and configured to implement one or more algorithms that cause a range of addresses to be assigned to each of the server computers, wherein each of the host computers receives one of the addresses for use as part of a data tunnel service request from the host computer to the server computer;

wherein the range of addresses comprises a static address portion and a dynamic address portion and the address allocator is further configured to migrate one of the data tunnel services from a first server computer to a second server computer in response to load balancing by modifying the static address portion from a first static address portion associated with the first server computer to a second static address portion associated with the second server computer.

2. The system of claim 1 wherein the range of addresses comprises a static address portion that is identical for each address of the range of addresses and a dynamic address portion that is different for each address of the range of addresses.

3. The system of claim 1 wherein the range of addresses comprises a static address portion that is a predetermined number of identical bits of an IPv6 address for each address of the range of addresses and a dynamic address portion that is different for each address of the range of addresses.

4. The system of claim 1 wherein the range of addresses comprises a static address portion for each address of the range of addresses and a dynamic address portion that is a predetermined number of bits of an IPv6 address that is different for each address of the range of addresses.

5. The system of claim 1 wherein the range of addresses comprises a static address portion that is a predetermined number of identical bits of an IPv6 address for each address of the range of addresses and a dynamic address portion that is a predetermined number of bits of an IPv6 address that is different for each address of the range of addresses.

6. The system of claim 1 wherein the range of addresses comprises a static address portion that is a predetermined number of identical bits of a most significant bit field of an IPv6 address for each address of the range of addresses and a dynamic address portion that is a predetermined number of bits of an IPv6 address that is different for each address of the range of addresses.

7. The system of claim 1 wherein the range of addresses comprises a static address portion that is a predetermined number of identical bits of a most significant bit field of an IPv6 address for each address of the range of addresses and a dynamic address portion that is a predetermined number of bits of a least significant bit field of an IPv6 address that is different for each address of the range of addresses.

8. The system of claim 1 wherein the one or more algorithms select an address for use as part of the data tunnel service request from the host computer to the server computer based on a load at each server computer to perform load balancing for generic routing encapsulation tunnels.

9. A method for controlling data services, comprising:

identifying a plurality of host computers configured to communicate over the network to request a data tunnel;

identifying a plurality of server computers configured to provide data tunnel services to the plurality of host computers; and

assigning a range of addresses to each of the server computers, wherein each of the host computers receives one of the addresses for use as part of a data tunnel service request from the host computer to the server computer;

wherein the range of addresses comprises a static address portion and a dynamic address portion and further comprising migrating one of the data tunnel services from a first server computer to a second server computer in response to load balancing by modifying the static address portion from a first static address portion associated with the first server computer to a second static address portion associated with the second server computer.

10. The method of claim 9 wherein the range of addresses comprises a static address portion that is identical for each address of the range of addresses and a dynamic address portion that is different for each address of the range of addresses, and each address is associated with a generic routing encapsulation tunnel.

11. The method of claim 9 wherein the range of addresses comprises a static address portion that is a predetermined number of identical bits of an IPv6 address for each address of the range of addresses and a dynamic address portion that is different for each address of the range of addresses and further comprising migrating one of the data tunnel services from a first server computer to a second server computer in response to load balancing by modifying the static address portion without changing a tunnel configuration associated with the migrated data tunnel service.

12. The method of claim 9 wherein the range of addresses comprises a static address portion for each address of the range of addresses and a dynamic address portion that is a predetermined number of bits of an IPv6 address that is different for each address of the range of addresses and further comprising migrating a generic routing encapsulation data tunnel from a first server computer to a second server computer.

13. The method of claim 9 wherein the range of addresses comprises a static address portion that is a predetermined number of identical bits of an IPv6 address for each address of the range of addresses and a dynamic address portion that is a predetermined number of bits of an IPv6 address that is different for each address of the range of addresses and further comprising migrating a generic routing encapsulation data tunnel from a first server computer to a second server computer in response to load balancing by modifying the static address portion.

14. The method of claim 9 wherein the range of addresses comprises a static address portion that is a predetermined number of identical bits of a most significant bit field of an IPv6 address for each address of the range of addresses and a dynamic address portion that is a predetermined number of bits of an IPv6 address that is different for each address of the range of addresses.

15. The method of claim 9 wherein the range of addresses comprises a static address portion that is a predetermined number of identical bits of a most significant bit field of an IPv6 address for each address of the range of addresses and a dynamic address portion that is a predetermined number of bits of a least significant bit field of an IPv6 address that is different for each address of the range of addresses.

16. The method of claim 9 wherein each of the host computers receives one of the addresses for use as part of the data tunnel service request from the host computer to the server computer based on a load at each server computer to perform load balancing.

17. A method for controlling data services, comprising:

identifying a plurality of host computers configured to communicate over the network to request a data tunnel;

identifying a plurality of server computers configured to provide data tunnel services to the plurality of host computers; and

assigning a range of addresses to each of the server computers, wherein each of the host computers receives one of the addresses for use as part of a data tunnel service request from the host computer to the server computer;

wherein the range of addresses comprises a static address portion that is a predetermined number of identical bits of an IPv6 address for each address of the range of addresses and a dynamic address portion that is different for each address of the range of addresses and further comprising migrating one of the data tunnel services from a first server computer to a second server computer in response to load balancing by modifying the static address portion from a first static address portion associated with the first server computer to a second static address portion associated with the second server computer without changing a tunnel configuration associated with the migrated data tunnel service.

18. The method of claim 17 wherein the range of addresses comprises a static address portion that is identical for each address of the range of addresses and a dynamic address portion that is different for each address of the range of addresses, and each address is associated with a generic routing encapsulation tunnel.

19. The method of claim 17 wherein the range of addresses comprises a static address portion for each address of the range of addresses and a dynamic address portion that is a predetermined number of bits of an IPv6 address that is different for each address of the range of addresses and further comprising migrating a generic routing encapsulation data tunnel from a first server computer to a second server computer.

20. The method of claim 17 wherein each of the host computers receives one of the addresses for use as part of the data tunnel service request from the host computer to the server computer based on a load at each server computer to perform load balancing.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 19, 2021
From: FORCEPOINT FEDERAL HOLDINGS LLC
To: FORCEPOINT LLC
Reel/Frame 057001/0057 →
CHANGE OF NAME Recorded May 12, 2021
From: FORCEPOINT LLC
To: FORCEPOINT FEDERAL HOLDINGS LLC
Reel/Frame 056214/0798 →
RELEASE OF SECURITY INTEREST IN PATENTS Recorded Jan 8, 2021
From: RAYTHEON COMPANY
To: FORCEPOINT LLC
Reel/Frame 055452/0207 →
PATENT SECURITY AGREEMENT SUPPLEMENT Recorded Feb 27, 2020
From: FORCEPOINT LLC
To: RAYTHEON COMPANY
Reel/Frame 052045/0482 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 15, 2019
From: HUSTON, LAWRENCE B., III
To: FORCEPOINT LLC
Reel/Frame 050060/0298 →