IP Library › Granted Patent US 11,272,042
Granted Patent B2
US 11,272,042 · App. 16/748,256 · Granted Mar 8, 2022

Methods and systems to track protocol and hardware resource state transitions

Inventors: Riaz Khan (Milpitas, CA); Peter Geoffrey Jones (Campbell, CA)
Assignee: Cisco Technology, Inc.
H04L69/12H04L43/028H04L45/02H04L49/254H04L49/65H04L67/1002
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 11,272,042
App. No.
16/748,256
Granted
Mar 8, 2022
Kind
B2
Abstract

Embodiments of the present disclosure are directed to protocol state transition and/or resource state transition tracker configured to monitor, e.g., via filters, for certain protocol state transitions/changes or host hardware resource transitions/changes when a host processor in the control plane that performs such monitoring functions is unavailable or overloaded. The filters, in some embodiments, are pre-computed/computed by the host processor and transmitted to the protocol state transition and/or resource state transition tracker. The protocol state transition and/or resource state transition tracker may be used to implement a fast upgrade operation as well as load sharing and or load balancing operation with control plane associated components.

Claims (45)

1. A network device comprising:

a data-plane configured to route packets received at network ports of the network device to other network ports of the network device; and

a host CPU executing instructions for control-plane operations that manage and maintain a plurality of data-plane-associated tables of a switch-fabric of the network device, the instructions when executed by the host CPU further computes a plurality of filters to identify protocol state and/or resource state transitions;

wherein the data plane comprises a processor unit or logic circuit configured to:

receive the plurality of filters computed by the host CPU; and

track, via the plurality of filters, protocol state and/or resource state transitions of the control-plane when the host CPU is in an unavailable or overloaded state;

wherein the tracked protocol state and/or resources are used, by the host CPU or the processor unit or logic circuit, to update the plurality of data-plane associated tables.

2. The network device of claim 1 , wherein the processor unit or logic circuit is configured to update the plurality of data-plane associated tables when the host CPU is in the unavailable or overloaded state.

3. The network device of claim 1 , wherein the tracked protocol state and/or resources are used by the host CPU to update the data-plane of a detected protocol state and/or resources when the host CPU transitions from the unavailable or overloaded state to an available state.

4. The network device of claim 1 , wherein the tracked protocol state and/or resources are used by the processor unit or logic circuit to update the data-plane in parallel with host CPU operations.

5. The network device of claim 1 , wherein the data-plane implements a filter to monitor for a specific protocol state transition in a received packet during the unavailable state of the host CPU and/or a specific resource state transition during the unavailable state of the host CPU.

6. The network device of claim 5 , wherein the plurality of filters are pre-computed by the host CPU prior to the host CPU entering into the unavailable or overloaded state.

7. The network device of claim 6 , wherein the processor unit or logic circuit are implemented in a packet classification engine, a packet-inspection engine, deep-packet inspection engine, an embedded micro-controller in data-plane, and/or access-control-list tertiary-content-address-memories (ACL TCAMs) located within a component of the data-plane.

8. The network device of claim 1 , wherein the processor unit or logic circuit executes a plurality of filters for state-transitions for a set of protocols.

9. The network device of claim 8 , wherein the plurality of filters includes a first filter configured to identify a link-aggregation-control-protocol protocol-data-unit (LACP PDU) indicating a protocol state or resource state change of the logical channel or one or more links within the channel.

10. The network device of claim 8 , wherein the plurality of filters includes a second filter configured to identify a bridge protocol data unit (BPDU) indicating a Spanning Tree Protocol topology-change notification (TCN) message.

11. The network device of claim 8 , wherein the plurality of filters includes a third filter configured to identify a hardware resource transition change.

12. The network device of claim 8 , wherein the plurality of filters includes a third filter configured to identify a graceful insertion and removal operation of a peer network device.

13. The network device of claim 1 , wherein the host CPU is configured to:

pre-compute a filter to monitor for a specific protocol or resource state transition in a received packet during the unavailable state of the host CPU.

14. The network device of claim 11 , wherein the host CPU is configured to:

pre-compute updated data-plane entries to redistribute traffic to update the data-plane when the filter is matched.

15. The network device claim 1 , wherein the processor unit or logic circuit is configured to:

monitor for (i) a specified protocol state transition in at least one of a received control packet and (ii) a specific resource state transition; and

update the data plane with pre-computed data-plane entries when specified protocol state transition or the specific resource state transition is detected.

16. The network device of claim 1 , wherein the processor unit or logic circuit is configured to:

identify a received LACP PDU indicating a down-channel link of a peer network device; and

update the data plane that a link aggregation channel associated with a peer network device is down.

17. A method comprising:

performing, by a host CPU of a network device, control-plane operations that manage and maintain a plurality of data-plane-associated tables of a data plane of the network device;

computing, by the host CPU, a plurality of filters to identify protocol state and/or resource state transitions associated with the control plane operations; and

transmitting, by the host CPU, to a data-plane processor unit or logic circuit of the data plane, the plurality of computed filters;

receiving, by the processor unit or logic circuit, the plurality of transmitted filters; and

tracking, via the plurality of received filters, implemented in the data-plane processor unit or logic circuit, protocol state and/or resource state transitions of the control-plane when the host CPU is in an unavailable or overloaded state,

wherein the tracked protocol state and/or resource state transitions tracked by the plurality of received filters are used to update associated data plane resources.

18. A non-transitory computer-readable medium having instructions stored thereon, wherein execution of the instructions by a first processor comprising a processor unit/logic circuit to:

receive, from a data-plane interface, a plurality of filters to identify protocol state and/or resource state transitions associated with control plane operations, wherein the plurality of filters has been pre-computed by a host CPU or external CPU configured to perform control-plane operations that manage and maintain a plurality of data-plane-associated tables of a switch-fabric of the network device; and

track, via the plurality of received filters, implemented in the data-plane processor unit or logic circuit, protocol state and/or resource state transitions of the control-plane when the host CPU is in an unavailable or overloaded state,

wherein the tracked protocol state and/or resource state transitions tracked by the plurality of received filters are used to update associated data plane resources,

a data-plane configured to route packets received at network ports of the network device to other network ports of the network device; and

a host CPU executing instructions for control-plane operations that manage and maintain a plurality of data-plane-associated tables of a switch-fabric of the network device, the instructions when executed by the host CPU further computes a plurality of filters to identify protocol state and/or resource state transitions;

wherein the data plane comprises a processor unit or logic circuit configured to:

receive the plurality of filters computed by the host CPU; and

track, via the plurality of filters, protocol state and/or resource state transitions of the control-plane when the host CPU is in an unavailable or overloaded state;

wherein the tracked protocol state and/or resources are used, by the host CPU or the processor unit or logic circuit, to update the plurality of data-plane associated tables.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 5, 2020
From: KHAN, RIAZ; JONES, PETER GEOFFREY
To: CISCO TECHNOLOGY, INC.
Reel/Frame 051726/0988 →
Continuity (1)
Related Publication 20210227053A1 · Jul 22, 2021