9137174

Synchronization of OpenFlow controller devices via OpenFlow switching devices

PublishedSeptember 15, 2015
Assigneenot available in USPTO data we have
Technical Abstract

Patent Claims
18 claims

Legal claims defining the scope of protection, as filed with the USPTO.

1

1. A method comprising: sending, by a first OpenFlow controller device currently active within an OpenFlow network, a flow rule to an OpenFlow switching device of the OpenFlow network, the OpenFlow switching device to update a flow table at the OpenFlow switching device with the flow rule, the flow table at the OpenFlow switching device directing the OpenFlow switching device how to dispatch data and frame packets received by the OpenFlow switching device within the OpenFlow network; responsive to receiving the flow rule, transmitting, by the OpenFlow switching device, a message including the flow rule to a second OpenFlow controller device currently active within the OpenFlow network; and responsive to receiving the message, updating, by the second OpenFlow controller device, a flow table at the second OpenFlow controller device with the flow rule so that the flow table at the second OpenFlow controller device is synchronized with a flow table at the first OpenFlow controller device, wherein the flow table at the first OpenFlow controller device is for the OpenFlow switching device and is maintained by the first OpenFlow controller device, and the flow table at the second OpenFlow controller device is for the OpenFlow switching device and is maintained by the second OpenFlow controller device.

2

2. The method of claim 1 , further comprising: where the first OpenFlow controller device is no longer active within the OpenFlow network, taking over by the second OpenFlow controller device in real-time such that the flow table at the OpenFlow switching device and data packet dispatch performed by the OpenFlow switching device are not disturbed because the flow table at the second OpenFlow controller device is synchronized with the flow table at the first OpenFlow controller device.

3

3. The method of claim 1 , wherein the message is a first message, and the method further comprises: sending, by the OpenFlow switching device, a second message including a plurality of flow rules of the flow table at the OpenFlow switching device to a third OpenFlow controller device newly active within the OpenFlow network; and responsive to receiving the second message, updating, by the third OpenFlow controller device, a flow table at the third OpenFlow controller device with the plurality of flow rules so that the flow table at the third OpenFlow controller device is immediately up-to-date with the plurality of flow rules of the flow table at the OpenFlow switching device, wherein the flow table at the third OpenFlow controller device is for the OpenFlow switching device and is maintained by the third OpenFlow controller device.

4

4. The method of claim 1 , wherein the flow rule is a first flow rule, the message is a first message, and the method further comprises: receiving, by the OpenFlow switching device, a second flow rule from the second OpenFlow controller device; responsive to receiving the second flow rule, transmitting a second message, by the OpenFlow switching device, including the second flow rule to the first OpenFlow controller device; and responsive to receiving the second message, updating, by the first OpenFlow controller device, the flow table at the first OpenFlow controller device so that the flow table at the first OpenFlow controller device is synchronized with the second OpenFlow controller device.

5

5. The method of claim 4 , further comprising: where the second OpenFlow controller device is no longer active within the OpenFlow network, taking over by the first OpenFlow controller device in real-time such that the flow table at the OpenFlow switching device and data packet routing performed by the OpenFlow switching device are not disturbed because the flow table at the first OpenFlow controller device is synchronized with the flow table at the second OpenFlow controller device.

6

6. The method of claim 1 , further comprising: updating, by the OpenFlow switching device, the flow table at the OpenFlow switching device.

7

7. A storage device storing code executable by an OpenFlow switching device of an OpenFlow network to perform a method comprising: receiving a flow rule from a first OpenFlow controller device currently active within the OpenFlow network; updating a flow table at the OpenFlow switching device with the flow rule, the flow table at the OpenFlow switching device directing the OpenFlow switching device how to dispatch data and frame packets received by the OpenFlow switching device within the OpenFlow network; and composing and sending a message including the flow rule to a second OpenFlow controller device currently active within the OpenFlow network, wherein the OpenFlow switching device sends the message so that the second OpenFlow controller device and the first OpenFlow controller device are synchronized with one another with respect to the flow table at the OpenFlow switching device.

8

8. The storage device of claim 7 , wherein the message is a first message, and the method further comprises: detecting that a third OpenFlow controller device is newly active within the OpenFlow network and that a connection has been established with the third OpenFlow controller device; and responsive to detecting that the connection has been established with the third OpenFlow Controller device, composing and sending a second message including a plurality of flow rules of the flow table at the OpenFlow switching device to the third OpenFlow controller device, wherein the OpenFlow switching device sends the second message so that the third OpenFlow controller device is immediately up-to-date with respect to the flow table at the OpenFlow switching device.

9

9. The storage device of claim 7 , wherein the flow rule is a first flow rule, the message is a first message, and the method further comprises: receiving a second flow rule from the second OpenFlow controller device; updating the flow table at the OpenFlow switching device with the flow rule; and composing and sending a second message including the second flow rule to the first OpenFlow controller device, wherein the OpenFlow switching device sends the second message so that the first OpenFlow controller device and the second OpenFlow controller device are synchronized with one another with respect to the flow table at the OpenFlow switching device.

10

10. An OpenFlow switching device comprising: network hardware to communicatively connect the OpenFlow switching device to an OpenFlow network to become part of the OpenFlow network; storage hardware to store a flow table including a plurality of flow rules; update logic to update the flow table with a new flow rule received from a first OpenFlow controller device currently active within the OpenFlow network; and synchronization logic to compose and send a message including the new flow rule to a second OpenFlow controller device currently active within the OpenFlow network, wherein the synchronization sends the message so that the second OpenFlow controller device and the first OpenFlow controller device are synchronized with one another with respect to the flow table.

11

11. The OpenFlow switching device of claim 10 , wherein the message is a first message, and the synchronization logic is further to compose and send a second message including the plurality of flow rules of the flow table to a OpenFlow controller device newly active within the OpenFlow network, and wherein the synchronization logic sends the second message so that the third OpenFlow controller device is immediately up-to-date with respect to the flow table at the OpenFlow switching device.

12

12. The OpenFlow switching device of claim 10 , wherein the new flow rule is a first new flow rule, the message is a first message, and the synchronization logic is further to compose and send a second message including a second new flow rule received from the second OpenFlow controller device to the first OpenFlow controller device, wherein the synchronization logic sends the second message so that the first OpenFlow controller device and the second OpenFlow controller device are synchronized with one another respect to the flow table.

13

13. The OpenFlow switching device of claim 10 , further comprising: dispatch logic to dispatch data and frame packets received at the network hardware within the OpenFlow network, in accordance with the flow table.

14

14. A system comprising: a first OpenFlow controller device for an OpenFlow network, and to maintain a first flow table; a second OpenFlow controller device for the OpenFlow network, and to maintain a second flow table; and an OpenFlow switching device for the OpenFlow network, to dispatch received data and frame packets in accordance with a local flow table updateable by flow rules received from the first OpenFlow controller device and from the second OpenFlow controller device, to synchronize the first flow table with the flow rules received from the second OpenFlow controller device, and to synchronize the second flow table with the flow rules received from the first OpenFlow controller device.

15

15. The system of claim 14 , wherein the OpenFlow switching device is to synchronize the first flow table with the flow rules received from the second OpenFlow controller device by sending messages including the flow rules received from the second OpenFlow controller device to the first OpenFlow controller device, and wherein the OpenFlow switching device is to synchronize the second flow table with the flow rules received from the first OpenFlow controller device by sending messages including the flow rules received from the first OpenFlow controller device to the second OpenFlow controller device.

16

16. The system of claim 14 , wherein where the first OpenFlow controller device was but is no longer active within the OpenFlow network and the second OpenFlow controller device is still active within the OpenFlow network, the second OpenFlow controller devices takes over in real-time for the first OpenFlow controller device such that the local flow table at the OpenFlow switching device and data packet dispatch performed by the OpenFlow switching device are not disturbed because the second flow table is synchronized with the first flow table.

17

17. The system of claim 14 , further comprising: a third OpenFlow controller device for the OpenFlow network, and to maintain a third flow table, wherein the OpenFlow switching device is to update the third flow table with a plurality of flow rules of the local flow table upon the third OpenFlow controller device becoming newly active within the OpenFlow network.

18

18. The system of claim 17 , wherein the OpenFlow switching device is to update the third flow table with the flow rules of the local flow table by sending a message including the flow rules of the local flow table to the third OpenFlow controller device.

Patent Metadata

Filing Date

Unknown

Publication Date

September 15, 2015

Inventors

Chidambaram Bhagavathiperumal
Sivakumar Arumugam
Dillibabu Kodamalu

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “Synchronization of OpenFlow controller devices via OpenFlow switching devices” (9137174). https://patentable.app/patents/9137174

© 2026 Patentable. All rights reserved.

Patentable is a research and drafting-assistant tool, not a law firm, and does not provide legal advice. Documents we generate are drafts for review by a licensed patent attorney.