IP Library Granted Patent US 10,165,090
Granted Patent B2
US 10,165,090 · App. 14/473,680 · Granted Dec 25, 2018

Transferring routing protocol information between a software defined network and one or more external networks

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 10,165,090
App. No.
14/473,680
Granted
Dec 25, 2018
Kind
B2
Abstract

Measures for transferring routing protocol information between a software defined network and one or more external networks are provided. A control node in a software defined network (SDN) is configured to maintain a protocol information database comprising routing protocol information for one or more switching nodes in the SDN. In response to detecting occurrence of a predetermined trigger event, the control node modifies the routing protocol information in the protocol information database, and determines whether the one or more switching nodes include an edge switching node. In response to the determination, a routing protocol message is transmitted from the control node to the edge switching node for forwarding via an external network interface. The routing protocol message includes data generated on the basis of the modified routing protocol information.

Claims (56)

1. A method for transferring routing protocol information between a software defined network and one or more external networks, the method comprising:

maintaining, at a control node responsible for controlling packet forwarding configurations of a plurality of switching nodes in the software defined network, a protocol information database comprising routing protocol information for one or more switching nodes in the plurality;

in response to detecting occurrence of a predetermined trigger event, modifying, at the control node, the routing protocol information comprised within the protocol information database to create modified routing protocol information;

determining, at the control node, that the one or more switching nodes include an edge switching node,

wherein the determined edge switching node comprises an external network interface which connects the determined edge switching node to an external network, different to the software defined network, and

wherein the determined edge switching node comprises an internal network interface which connects the determined edge switching node to a neighbor switching node in the plurality in the software defined network;

in response to the determination, transmitting a routing protocol message from the control node to the determined edge switching node for forwarding via the external network interface of the determined edge switching node, the routing protocol message comprising data generated at least on the basis of the modified routing protocol information; and

in response to the determination, inhibiting, at the control node, transmission of one or more further routing protocol messages to the determined edge switching node for forwarding via the internal network interface of the determined edge switching node to the neighbour switching node.

2. The method of claim 1 , wherein the control node comprises a further protocol information database, the further protocol information database comprising routing protocol information for one or more further switching nodes in the plurality, different to the one or more switching nodes.

3. The method of claim 2 , comprising, in response to occurrence of the predetermined trigger event, modifying, at the control node, the routing protocol information comprised within the further protocol information database.

4. The method of claim 2 , wherein the control node comprises a first protocol processing function responsible for maintaining the protocol information database and a second protocol processing function responsible for maintaining the further protocol information database.

5. The method of claim 4 , comprising transmitting a further routing protocol message, within the control node, from the first protocol processing function to the second protocol processing function, wherein the further routing protocol message is generated on the basis of the modified routing protocol information.

6. The method of claim 5 , wherein the further routing protocol message is transmitted from the first protocol processing function to the second protocol processing function via an emulated network emulated within the control node, the emulated network providing connectivity between the first protocol processing function and the second protocol processing function.

7. The method of claim 4 , wherein the routing protocol message is generated by the first protocol processing function.

8. The method of claim 1 , comprising generating, at the control node, routing protocol information for one or more further switching nodes in the plurality, different to the one or more switching nodes for which routing protocol information is comprised within the protocol information database, wherein the routing protocol information comprised within the protocol information database is modified, at least in part, on the basis of the generated routing protocol information.

9. The method of claim 1 , wherein the predetermined trigger event comprises receipt of an initial routing protocol message at the control node.

10. The method of claim 9 , comprising inhibiting transmission of the routing protocol message in response to determining that the initial routing protocol message was forwarded to the control node by the edge switching node.

11. The method of claim 9 , comprising inhibiting transmission of the routing protocol message in response to determining that the initial routing protocol message was received at the external network interface of the edge switching node.

12. The method of claim 9 , wherein the initial routing protocol message is received from a switching node in the plurality other than the edge switching node.

13. The method of claim 1 , wherein the predetermined trigger event comprises detecting a change in a routing configuration of the software defined network.

14. The method of claim 1 , wherein the predetermined trigger event comprises implementing a change in the routing configuration of the software defined network.

15. The method of claim 1 , comprising transmitting a configuration message from the control node to the edge switching node on the basis of the modified routing protocol information in order to modify a packet forwarding configuration of the edge switching node.

16. The method of claim 15 , wherein the one or more switching nodes comprise a second switching node, the method comprising transmitting a further configuration message from the control node to the second switching node on the basis of the modified routing protocol information in order to modify the packet forwarding configuration of the second switching node.

17. The method of claim 1 , comprising:

determining, at the control node, that the one or more switching nodes include at least a further edge switching node, different to the edge switching node, the further edge switching node comprising an external network interface which connects the further edge switching node to an external network, different to the software defined network; and

transmitting a further routing protocol message from the control node to the further edge switching node for forwarding via the external network interface of the further edge switching node, the further routing protocol message comprising data generated at least on the basis of the modified routing protocol information.

18. The method of claim 1 , wherein the one or more switching nodes for which routing protocol information is comprised within the protocol information database are represented by a virtual switching node in the software defined network.

19. The method of claim 18 , wherein the routing protocol message comprises routing information for the virtual switching node.

20. The method of claim 18 , wherein the virtual switching node represents two or more switching nodes in the software defined network, including the edge switching node.

21. The method of claim 18 , wherein the virtual switching node represents the plurality of switching nodes in the software defined network.

22. The method of claim 1 , wherein the one or more switching nodes represents only the edge switching node in the software defined network.

23. The method of claim 1 , wherein the protocol message comprises one or more of:

an Interior Gateway Protocol (IGP) message,

an Open Shortest Path First (OSPF) protocol message, and

an Intermediate System to Intermediate System (IS-IS) protocol message.

24. The method of claim 1 , wherein the plurality of switching nodes in the software defined network comprises a cluster of switching nodes.

25. The method of claim 1 , wherein the software defined network is an Openflow™ controlled network.

26. The method of claim 1 , wherein the control node is an Openflow™ controller.

27. A system for use in transferring routing protocol information between a software defined network and one or more external networks, the system comprising:

at least one memory including computer program code; and

at least one processor in data communication with the at least one memory, wherein the at least one processor is configured to:

maintain, at a control node responsible for controlling packet forwarding configurations of a plurality of switching nodes in the software defined network, a protocol information database comprising routing protocol information for one or more switching nodes in the plurality;

in response to detecting occurrence of a predetermined trigger event, modify, at the control node, the routing protocol information comprised within the protocol information database to create modified routing protocol information;

determine, at the control node, that the one or more switching nodes include an edge switching node,

wherein the determined edge switching node comprises an external network interface which connects the determined edge switching node to an external network, different to the software defined network, and

wherein the determined edge switching node comprises an internal network interface which connects the determined edge switching node to a neighbour switching node in the plurality in the software defined network;

in response to the determination, transmit a routing protocol message from the control node to the determined edge switching node for forwarding via the external network interface of the determined edge switching node, the routing protocol message comprising data generated at least on the basis of the modified routing protocol information; and

in response to the determination, inhibit, at the control node, transmission of one or more further routing protocol messages to the determined edge switching node for forwarding via the internal network interface of the determined edge switching node to the neighbour switching node.

28. A non-transitory computer-readable storage medium comprising computer-executable instructions which, when executed by a processor, cause a computing device to perform a method of transferring routing protocol information between a software defined network and one or more external networks, the method comprising:

maintaining, at a control node responsible for controlling packet forwarding configurations of a plurality of switching nodes in the software defined network, a protocol information database comprising routing protocol information for one or more switching nodes in the plurality;

in response to detecting occurrence of a predetermined trigger event, modifying, at the control node, the routing protocol information comprised within the protocol information database to create modified routing protocol information;

determining, at the control node, that the one or more switching nodes include an edge switching node,

wherein the determined edge switching node comprises an external network interface which connects the determined edge switching node to an external network, different to the software defined network, and

wherein the determined edge switching node comprises an internal network interface which connects the determined edge switching node to a neighbour switching node in the plurality in the software defined network;

in response to the determination, transmitting a routing protocol message from the control node to the determined edge switching node for forwarding via the external network interface of the determined edge switching node, the routing protocol message comprising data generated at least on the basis of the modified routing protocol information; and

in response to the determination, inhibiting, at the control node, transmission of one or more further routing protocol messages to the determined edge switching node for forwarding via the internal network interface of the determined edge switching node to the neighbour switching node.

Assignments (6)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 13, 2026
From: MICROSOFT TECHNOLOGY LICENSING, LLC
To: ALIANZA, INC.
Reel/Frame 075645/0892 →
CHANGE OF NAME Recorded May 13, 2026
From: ALIANZA, INC.
To: ALIANZA, LLC
Reel/Frame 075646/0037 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 13, 2026
From: METASWITCH NETWORKS LTD.
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 075578/0155 →
SECURITY INTEREST Recorded May 6, 2025
From: ALIANZA, INC.; METASWITCH NETWORKS LTD
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 071191/0228 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 26, 2018
From: CRAMPTON, SHAUN; HARRISON, JONATHAN; BALLS, STEVE; CORDEN, FIONA; ROLLINS, JEFF
To: METASWITCH NETWORKS LTD
Reel/Frame 047582/0642 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 26, 2018
From: POLLITT, ALEX
To: METASWITCH NETWORKS LTD
Reel/Frame 047582/0758 →