IP Library Granted Patent US 9,100,266
Granted Patent B2
US 9,100,266 · App. 11/147,665 · Granted Aug 4, 2015

SoftRouter protocol failovers

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,100,266
App. No.
11/147,665
Granted
Aug 4, 2015
Kind
B2
Abstract

The SoftRouter architecture separates the implementation of control plane functions from packet forwarding functions. In this architecture, all control plane functions are implemented on general purpose servers called the control elements (CEs) that may be multiple hops away from the forwarding elements (FEs). A network element (NE) or a router is formed using dynamic binding between the CEs and the FEs. There is a protocol failover mechanism for handling failovers initiated by FEs to transfer control from one CE to another CE.

Claims (39)

1. A tangible and non-transient computer readable storage medium for storing instructions which, when executed by a processor at a forwarding element (FE), perform a method, comprising:

routing packets according to a routing protocol process via a routing path associated with an active control element (CE) dynamically bound to the FE, said FE and any CE, including at least said active CE and at least one backup CE comprising different network elements running a common instance of said routing protocol process, wherein said active CE and said FE are separated by multiple hops and said FE discovering said active CE using a softrouter architecture discovery protocol to become dynamically bound and maintain said dynamic binding and said routing path using a load balancing of the active CE serving a plurality of FEs including said FE;

processing protocol messages associated with the routing protocol process according to a protocol overlay process, said protocol overlay process comprising:

forwarding, toward the at least one backup CE, each routing protocol message received from the active CE and each routing protocol message transmitted toward the active CE;

periodically transmitting a heartbeat message toward the active CE according to a communication protocol heartbeat message; and

in response to a failure to receive acknowledgment of the heartbeat message, performing a failover from the active CE to the at least one backup CE, said at least one backup CE becoming a new active CE with respect to the FE.

2. The computer readable storage medium of claim 1 , wherein the communication protocol comprises one of a stream control transmission protocol (SCTP) and a transmission control protocol (TCP).

3. The computer readable storage medium of claim 1 , wherein the routing protocol process comprises any of an open shortest path first (OSPF) protocol, an intermediate system to intermediate system (IS-IS) protocol, a routing information protocol (RIP), an enhanced interior gateway routing protocol (EIGRP) and a border gateway protocol (BGP).

4. The computer readable storage medium of claim 1 , wherein the protocol overlay process further comprises:

in response to a received checkpoint message, propagating a checkpoint message toward said at least one backup CE, said checkpoint message configured to cause a protocol state update.

5. The computer readable storage medium of claim 1 , wherein the protocol overlay process further comprises:

encapsulating each routing protocol message forwarded toward a CE according to a protocol overlay format including a source FE identifier, a destination CE identifier, a routing protocol identifier and a sequence number.

6. The computer readable storage medium of claim 5 , wherein the protocol overlay format further includes a checkpoint message identifier.

7. The computer readable storage medium of claim 5 , wherein the protocol overlay format further includes said heartbeat message.

8. The computer readable storage medium of claim 1 , wherein the protocol overlay process further comprises:

in response to receiving said each routing protocol message from the active CE and the at least one backup CE, forwarding toward the respective CE a corresponding acknowledgment message.

9. The computer readable storage medium of claim 8 , wherein the protocol overlay process further comprises:

storing corresponding routing protocol messages received from the active CE; and

dropping corresponding routing protocol messages received from the at least one backup CE.

10. The computer readable storage medium of claim 1 , wherein said failover of said protocol overlay process comprises:

forwarding, toward said at least one backup CE, a message adapted to trigger a synchronization between said at least one backup CE and said FE.

11. The computer readable storage medium of claim 1 , wherein said failover of said protocol overlay process comprises:

forwarding, toward said at least one backup CE, a message adapted to trigger a synchronization between said at least one backup CE and said FE at a state associated with a previously propagated checkpoint message.

12. The computer readable storage medium of claim 1 , wherein said failover of said protocol overlay process further comprises:

forwarding, toward said at least one backup CE, corresponding routing protocol messages received from an active CE after a previously received checkpoint message.

13. The computer readable storage medium of claim 1 , wherein said failover of said protocol overlay process further comprises:

forwarding, toward said backup CE, stored routing protocol messages received from the failed active CE.

14. A method, comprising:

at a forwarding element, routing packets according to a routing protocol process via a routing path associated with an active control element (CE) dynamically bound to a FE, said FE and any CE, including at least said active CE and at least one backup CE comprising different network elements running a common instance of said routing protocol process, wherein said active CE and said FE are separated by multiple hops and said FE said FE discovering said active CE using a softrouter architecture discovery protocol to become dynamically bound and maintain said dynamic binding and said routing path using a load balancing of the active CE serving a plurality of FEs including said FE; and

at the forwarding element, processing protocol messages associated with the routing protocol process according to a protocol overlay process, said protocol overlay process comprising:

forwarding, toward the at least one backup CE, each routing protocol message received from the active CE and each routing protocol message transmitted toward the active CE;

periodically transmitting a heartbeat message toward the active CE according to a communication protocol heartbeat message; and

in response to a failure to receive acknowledgment of the heartbeat message, performing a failover from the active CE to the at least one backup CE, said at least one backup CE becoming a new active CE with respect to the FE.

15. A forwarding element, comprising a processor configured for:

routing packets according to a routing protocol process via a routing path associated with an active control element (CE) dynamically bound to a FE, said FE and any CE, including at least said active CE and at least one backup CE comprising different network elements running a common instance of said routing protocol process, wherein said active CE and said FE are separated by multiple hops and said FE discovering said active CE using a softrouter architecture discovery protocol to become dynamically bound and maintain said dynamic binding and said routing path using a load balancing of the active CE serving a plurality of FEs including said FE; and

processing protocol messages associated with the routing protocol process according to a protocol overlay process, said protocol overlay process comprising:

forwarding, toward the at least one backup CE, each routing protocol message received from the active CE and each routing protocol message transmitted toward the active CE;

periodically transmitting a heartbeat message toward the active CE according to a communication protocol heartbeat message; and

in response to a failure to receive acknowledgment of the heartbeat message, performing a failover from the active CE to the at least one backup CE, said at least one backup CE becoming a new active CE with respect to the FE.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 19, 2018
From: ALCATEL LUCENT
To: NOKIA TECHNOLOGIES OY
Reel/Frame 047271/0246 →
MERGER AND CHANGE OF NAME Recorded Jan 21, 2015
From: LUCENT TECHNOLOGIES INC.; ALCATEL USA MARKETING, INC.; ALCATEL USA SOURCING, INC.; LUCENT TECHNOLOGIES INC.
To: ALCATEL-LUCENT USA INC.
Reel/Frame 034769/0135 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 21, 2015
From: ALCATEL-LUCENT USA INC.
To: ALCATEL LUCENT
Reel/Frame 034769/0361 →
RELEASE OF SECURITY INTEREST Recorded Sep 30, 2014
From: CREDIT SUISSE AG
To: ALCATEL LUCENT
Reel/Frame 033868/0555 →
SECURITY AGREEMENT Recorded Jan 30, 2013
From: ALCATEL LUCENT
To: CREDIT SUISSE AG
Reel/Frame 029821/0001 →