IP Library Granted Patent US 9,596,169
Granted Patent B2
US 9,596,169 · App. 14/788,282 · Granted Mar 14, 2017

Dynamic control channel establishment for software-defined networks having centralized control

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,596,169
App. No.
14/788,282
Granted
Mar 14, 2017
Kind
B2
Abstract

Dynamic control channel establishment for an access network is described in which a centralized controller provides seamless end-to-end service from a core-facing edge of a network to access nodes. For example, a method includes receiving, by the centralized controller, a discover message originating from a network node, which includes an intermediate node list that specifies a plurality of network nodes the discover message traversed from the network node to an edge node, determining, based on the plurality of nodes specified by the discover message, a path from the edge node to the network node, allocating each of a plurality of Multi-protocol Label Switching (MPLS) labels to a respective outgoing interface of each of the plurality of network nodes, and outputting one or more control messages for configuring the network node, wherein the control messages are encapsulated within a label stack comprising the allocated plurality of labels.

Claims (33)

1. A method comprising:

receiving, by a centralized controller, a discover message originating from a network node, wherein the discover message includes an intermediate node list that specifies a plurality of network nodes the discover message traversed from the network node to an edge node;

determining, by the centralized controller and based on the plurality of nodes specified by the discover message, a path from the edge node to the network node;

allocating, by the centralized controller, each of a plurality of Multi-protocol Label Switching (MPLS) labels to a respective outgoing interface of each of the plurality of network nodes; and

outputting, by the centralized controller, one or more control messages for configuring the network node, wherein the control messages are encapsulated within a label stack comprising the allocated plurality of labels.

2. The method of claim 1 , wherein the intermediate node list identifies a Media Access Control (MAC) address of each of the plurality of network nodes, and corresponding ingress and egress port pairs through which the discover message traversed from the network node to an edge node, inclusive of the network node and the edge node.

3. The method of claim 2 , wherein determining the path from the edge node to the network node comprises reversing an order of nodes and respective ingress and egress port pairs as set forth in the neighbor node list of the discover message.

4. The method of claim 1 , wherein receiving the discover message comprises receiving the discover message via a uniform datagram protocol (UDP) connection from the edge node, and wherein outputting comprises outputting the control message via the UDP connection to the edge node.

5. The method of claim 1 , wherein the discover message further specifies a neighbor node list learned by the network node, the method further comprising:

by the centralized controller, updating stored network topology information based on the neighbor node list.

6. The method of claim 5 , wherein the discover message specifies a generation number, the method further comprising:

comparing, by the centralized controller, the generation number specified by the discover message to a current generation number received from the access node,

wherein updating the stored network topology information comprises updating the stored network topology information if the generation number specified by the discover message is greater than or equal to the current generation number; and

in response to determining that the generation number specified by the discover message is less than the current generation number, discarding the discover message.

7. A centralized controller comprising:

one or more physical interfaces configured to receive a discover message originating from a network node, wherein the discover message includes an intermediate node list that specifies a plurality of network nodes the discover message traversed from the network node to an edge node;

a path computation module configured to determine, based on the plurality of nodes specified by the discover message, a path from the edge node to the network node; and

a path provisioning module configured to allocate each of a plurality of Multi-protocol Label Switching (MPLS) labels to a respective outgoing interface of each of the plurality of network nodes,

wherein the one or more physical interfaces are configured to output one or more control messages for configuring the network node, wherein the control messages are encapsulated within a label stack comprising the allocated plurality of labels, and

wherein the one or more physical interfaces are configured to receive one or more control messages from the network node.

8. The centralized controller of claim 7 , wherein the intermediate node list identifies a Media Access Control (MAC) address of each of the plurality of network nodes, and corresponding ingress and egress port pairs through which the discover message traversed from the network node to an edge node, inclusive of the network node and the edge node.

9. The centralized controller of claim 8 , wherein the path computation module is configured to reverse an order of nodes and respective ingress and egress port pairs as set forth in the neighbor node list of the discover message.

10. The centralized controller of claim 7 , wherein the one or more physical interfaces are configured to receive the discover message via a uniform datagram protocol (UDP) connection from the edge node, and output the control message via the UDP connection to the edge node.

11. The centralized controller of claim 7 , wherein the discover message further specifies a neighbor node list learned by the network node, the centralized controller further comprising:

a topology module configured to update stored network topology information based on the neighbor node list.

12. The centralized controller of claim 11 , wherein the discover message specifies a generation number,

wherein the topology module is configured to compare the generation number specified by the discover message to a current generation number received from the access node, and update stored network topology information if the generation number specified by the discover message is greater than or equal to the current generation number; and

wherein the topology module is configured to, in response to determining that the generation number specified by the discover message is less than the current generation number, discard the discover message.

13. A non-transitory computer-readable medium storing instructions that when executed cause one or more processors of a centralized controller to:

receive a discover message originating from a network node, wherein the discover message includes an intermediate node list that specifies a plurality of network nodes the discover message traversed from the network node to an edge node;

determine, based on the plurality of nodes specified by the discover message, a path from the edge node to the network node;

allocate each of a plurality of Multi-protocol Label Switching (MPLS) labels to a respective outgoing interface of each of the plurality of network nodes; and

output one or more control messages for configuring the network node, wherein the control messages are encapsulated within a label stack comprising the allocated plurality of labels.

Assignments (1)
NUNC PRO TUNC ASSIGNMENT Recorded May 6, 2026
From: JUNIPER NETWORKS, INC.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 075513/0034 →