IP Library Granted Patent US 9,264,301
Granted Patent B1
US 9,264,301 · App. 13/841,968 · Granted Feb 16, 2016

High availability for software defined networks

Inventors: Roy Liang Chua (Saratoga, CA); Matthew Palmer (Menlo Park, CA); Andrew Keith Pearce (San Francisco, CA); David Warren Hawley (Belmont, CA)
Assignee: Wiretap Ventures, LLC
H04L41/0668H04L45/00
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 9,264,301
App. No.
13/841,968
Granted
Feb 16, 2016
Kind
B1
Abstract

In one example, a controller device for a software defined network (SDN) includes one or more network interfaces configured to communicate with network devices of the SDN, and one or more processors configured to determine a primary path for network traffic between network devices of the SDN, determine a backup path to the primary path for the network traffic between the network devices of the SDN, and, in response to a failover event, configure the network devices to switch from the primary path to the backup path.

Claims (32)

1. A method comprising:

determining, by a controller device for a software defined network (SDN), a primary path for network traffic between network devices of the SDN;

storing, by the controller device, data indicating that one or more network devices along the primary path comprise master network devices;

determining, by the controller device, a backup path to the primary path for the network traffic between the network devices of the SDN;

storing, by the controller device, data indicating that one or more network devices along the backup path comprise slave network devices, wherein each of the master network devices of the primary path corresponds to one or more of the slave network devices of the backup path; and

in response to a failover event, configuring the network devices to switch from the primary path to the backup path, wherein configuring comprises, based on the stored data, configuring each of the network devices to forward packets to the slave network device corresponding to the primary network devices and not to forward the packets to the master network devices.

2. The method of claim 1 , wherein the failover event comprises a failure of one of the network devices along the primary path.

3. The method of claim 1 , wherein configuring the network devices comprises programming the network devices to avoid all of the network devices along the primary path.

4. The method of claim 1 , wherein a first set of the network devices of the SDN form the primary path, wherein a second set of the network devices of the SDN form the backup path, and wherein the first set and the second set are mutually exclusive.

5. The method of claim 1 , wherein a first set of network devices of the SDN form the primary path, wherein a second set of the network devices of the SDN form the backup path, and wherein the second set of network devices includes all but one of the network devices of the first set of network devices.

6. The method of claim 5 , wherein determining the backup path comprises determining a plurality of backup paths to the primary path, wherein each of the plurality of backup paths includes a different subset of the first set of network devices and at least one respective network device of the SDN that is not in the first set of network devices.

7. The method of claim 1 , wherein configuring the network devices comprises programming, by the controller device, a service device to determine when the failover event has occurred and to cause the service device to configure the network devices to switch from the primary path to the backup path in response to the failover event.

8. The method of claim 7 , wherein the service device comprises one of a physical service device, a multi-tenant service device, or a virtual service device.

9. A controller device for a software defined network (SDN), the controller device comprising:

one or more network interfaces configured to communicate with network devices of the SDN; and

one or more processors configured to determine a primary path for network traffic between network devices of the SDN, store data indicating that one or more network devices along the primary path comprise master network devices, determine a backup path to the primary path for the network traffic between the network devices of the SDN, store data indicating that one or more network devices along the backup path comprise slave network devices, wherein each of the master network devices of the primary path correspond to one or more of the slave network devices of the backup path, and, in response to a failover event, configure the network devices through the one or more network interfaces to switch from the primary path to the backup path, wherein to configure the network devices, the one or more processors are configured to, based on the stored data, configure each of the network devices to forward packets to the slave network device corresponding to the primary network devices and not to forward the packets to the master network devices.

10. The controller device of claim 9 , wherein to configure the network devices, the one or more processors are configured to program the network devices to avoid all of the network devices along the primary path.

11. The controller device of claim 9 , wherein a first set of network devices of the SDN form the primary path, wherein a second set of the network devices of the SDN form the backup path, and wherein the second set of network devices includes all but one of the network devices of the first set of network devices.

12. The controller device of claim 11 , wherein to determine the backup path, the one or more processors are configured to determine a plurality of backup paths to the primary path, wherein each of the plurality of backup paths includes a different subset of the first set of network devices and at least one respective network device of the SDN that is not in the first set of network devices.

13. The controller device of claim 9 , wherein to configure the network devices, the one or more processors are configured to program a service device to determine when the failover event has occurred and to cause the service device to configure the network devices to switch from the primary path to the backup path in response to the failover event.

14. The controller device of claim 13 , wherein the service device comprises one of a physical service device, a multi-tenant service device, or a virtual service device.

15. A non-transitory computer-readable storage medium having stored thereon instructions that, when executed, cause a processor of a controller device for a software defined network (SDN) to:

determine a primary path for network traffic between network devices of the SDN;

store data indicating that one or more network devices along the primary path comprise master network devices;

determine a backup path to the primary path for the network traffic between the network devices of the SDN;

store data indicating that one or more network devices along the backup path comprise slave network devices, wherein each of the master network devices of the primary path correspond to one or more of the slave network devices of the backup path; and

in response to a failover event, configure the network devices to switch from the primary path to the backup path, wherein the instructions that cause the processor to configure the network devices comprise instructions that cause the processor to, based on the stored data, configure each of the network devices to forward packets to the slave network device corresponding to the primary network devices and not to forward the packets to the master network devices.

16. The non-transitory computer-readable storage medium of claim 15 , wherein the instructions that cause the processor to configure the network devices comprise instructions that cause the processor to program the network devices to avoid all of the network devices along the primary path.

17. The non-transitory computer-readable storage medium of claim 15 , wherein a first set of network devices of the SDN form the primary path, wherein a second set of the network devices of the SDN form the backup path, and wherein the second set of network devices includes all but one of the network devices of the first set of network devices.

18. The non-transitory computer-readable storage medium of claim 17 , wherein determining the backup path comprises determining a plurality of backup paths to the primary path, wherein each of the plurality of backup paths includes a different subset of the first set of network devices and at least one respective network device of the SDN that is not in the first set of network devices.

19. The non-transitory computer-readable storage medium of claim 15 , wherein the instructions that cause the processor to configure the network devices comprise instructions that cause the processor to program a service device to determine when the failover event has occurred and to cause the service device to configure the network devices to switch from the primary path to the backup path in response to the failover event.

20. The non-transitory computer-readable storage medium of claim 19 , wherein the service device comprises one of a physical service device, a multi-tenant service device, or a virtual service device.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 29, 2019
From: WIRETAP VENTURES LLC.
To: RED HAT, INC.
Reel/Frame 049308/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 18, 2013
From: PALMER, MATTHEW; CHUA, ROY LIANG; PEARCE, ANDREW KEITH; HAWLEY, DAVID WARREN
To: WIRETAP VENTURES, LLC
Reel/Frame 030028/0433 →
Continuity (1)
Provisional Application 61703692 · Sep 20, 2012