VERIFYING CONTROLLER ACTIONS IN SOFTWARE-DEFINED NETWORKS WITH CONTROLLER CLUSTERS
First Claim
1. A method of verifying controller actions in a clustered software defined network comprising a primary controller and a plurality of secondary controllers, said method comprising:
- utilizing at least one processor to execute computer code that performs the steps of;
intercepting at least one message at the primary controller;
wherein the at least one intercepted message comprises a message that induces one or more changes in the network;
intercepting at least one cache update in the network;
replicating the at least one intercepted message and the at least one intercepted cache update;
directing the at least one replicated message and the replicated at least one cache update to a verification subsystem; and
verifying the at least one replicated message and the at least one replicated cache update in the verification subsystem.
1 Assignment
0 Petitions
Accused Products
Abstract
Methods and arrangements for verifying controller actions in a clustered software defined network. A contemplated method includes: intercepting at least one message at the primary controller; wherein the at least one intercepted message comprises a message that induces one or more changes in the network; intercepting at least one cache update in the network; replicating the at least one intercepted message and the at least one cache update; directing the at least one replicated message and the at least one replicated cache update to a verification subsystem; and verifying the at least one replicated message and the at least one replicated cache update in the verification subsystem. Other variants and embodiments are broadly contemplated herein.
10 Citations
20 Claims
-
1. A method of verifying controller actions in a clustered software defined network comprising a primary controller and a plurality of secondary controllers, said method comprising:
-
utilizing at least one processor to execute computer code that performs the steps of; intercepting at least one message at the primary controller; wherein the at least one intercepted message comprises a message that induces one or more changes in the network; intercepting at least one cache update in the network; replicating the at least one intercepted message and the at least one intercepted cache update; directing the at least one replicated message and the replicated at least one cache update to a verification subsystem; and verifying the at least one replicated message and the at least one replicated cache update in the verification subsystem. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. An apparatus for verifying controller actions in a clustered software defined network comprising a primary controller and a plurality of secondary controllers, said apparatus comprising:
-
at least one processor; and a computer readable storage medium having computer readable program code embodied therewith and executable by the at least one processor, the computer readable program code comprising; computer readable program code that intercepts at least one message at the primary controller; wherein the at least one intercepted message comprises a message that induces one or more changes in the network; computer readable program code that intercepts at least one cache update in the network; computer readable program code that replicates the at least one intercepted message and the at least one intercepted cache update; computer readable program code that directs the at least one replicated message and the at least one replicated cache update to a verification subsystem; and computer readable program code that verifies the at least one replicated message and the at least one replicated cache update in the verification subsystem.
-
-
12. A computer program product for verifying controller actions in a clustered software defined network comprising a primary controller and a plurality of secondary controllers, said computer program product comprising:
-
a computer readable storage medium having computer readable program code embodied therewith, the computer readable program code comprising; computer readable program code that intercepts at least one message at the primary controller; wherein the at least one intercepted message comprises a message that induces one or more changes in the network; computer readable program code that intercepts at least one cache update in the network; computer readable program code that replicates the at least one intercepted message and the at least one intercepted cache update; computer readable program code that directs the at least one replicated message and the at least one replicated cache update to a verification subsystem; and computer readable program code that verifies the at least one replicated message and the at least one replicated cache update in the verification subsystem. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19)
-
-
20. A method comprising:
-
intercepting messages, at a hypervisor, to and from a controller in a clustered software defined network; the intercepted messages including one or more of;
at least one network update; and
at least one cache update for a distributed data store in communication with the network;replicating all the intercepted messages to a verification subsystem; the verification subsystem comprising a distributed subsystem which includes at least one randomly selected controller node in the network and an out-of-band verifier; and utilizing the verification subsystem to verify responses to the messages from the suspect controller.
-
Specification