IP Library Granted Patent US 9,112,780
Granted Patent B2
US 9,112,780 · App. 13/766,330 · Granted Aug 18, 2015

Techniques for processing incoming failure detection protocol packets

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,112,780
App. No.
13/766,330
Granted
Aug 18, 2015
Kind
B2
Abstract

Techniques that assist in processing of failure detection protocol (FDP) packets. Techniques are provided that assist a CPU of a network device in processing incoming FDP packets. In one embodiment, only a subset of FDP packets received by the network device is forwarded to the CPU for processing, the other FDP packets are dropped and not forwarded to the CPU. In this manner, the amount of processing that a CPU of the network device has to perform for incoming FDP packets is reduced. This enables the network device to support newer FDPs with shorter periodic interval requirements.

Claims (69)

1. A method comprising:

storing, by a network device comprising a module and a processor configured to execute software for processing failure detection protocol packets, a first memory data structure comprising a plurality of entries for storing information related to failure detection protocol packets received by the network device, the first memory data structure enabling the failure detection protocol packets received by the network device to be processed by the module independent from the processor;

storing, by the network device, a second memory data structure comprising a plurality of entries for storing information related to one or more failure detection protocol packets received by the network device that have been processed by the module and that are to be processed by the processor;

storing, by the network device, a first failure detection protocol packet received by the network device in a buffer memory;

storing, by the network device, information for the first failure detection protocol packet in a first entry in the first memory data structure, the information in the first entry in the first memory data structure comprising information that enables the module to access the first failure detection protocol packet from the buffer memory;

determining, by the module of the network device, using the first entry in the first memory data structure, whether the first failure detection protocol packet is to be forwarded to the processor; and

upon determining that the first failure detection packet is to be forwarded to the processor, storing information for the first failure detection protocol packet in a first entry in the second memory data structure that enables the processor to access the first failure detection protocol packet from the buffer memory.

2. The method of claim 1 wherein the first failure detection protocol packet is a Bidirectional Forwarding (BFD) protocol packet.

3. The method of claim 1 wherein the first failure detection protocol packet is an 802.1ag protocol packet.

4. The method of claim 1 wherein the first memory data structure is a linked list and the second memory data structure is a linked list.

5. The method of claim 1 further comprising:

upon determining that the first failure detection packet is not to be forwarded to the processor, dropping, by the network device, the first failure detection protocol packet such that the first failure detection protocol packet is not forwarded to the processor.

6. The method of claim 1 wherein the determining comprises:

comparing a portion of the first failure detection protocol packet with reference information; and

determining whether the first failure detection protocol packet is to be forwarded to the processor based upon the comparing.

7. The method of claim 1 further comprising:

applying a hash function to a portion of the first failure detection protocol packet to obtain a hash result; and

accessing the reference information for the comparing using the hash result.

8. The method of claim 1 further comprising:

identifying a failure detection protocol for the first failure detection protocol packet; and

identifying a session for the first failure detection protocol packet; and

wherein the determining comprises:

comparing a portion of the first failure detection protocol packet with reference information stored for the identified failure detection protocol for the identified session; and

determining whether the first failure detection protocol packet is to be forwarded to the processor based upon the comparing.

9. The method of claim 1 further comprising:

receiving, by the network device, a second failure detection protocol packet;

processing, by the module, the second failure detection protocol packet while the processor processes the first failure detection protocol packet.

10. A system comprising:

one or more memories;

a processor configured to execute software for processing failure detection protocol packets; and

a failure detection protocol packet handler module;

wherein the one or more memories are configurable to store:

a first memory data structure comprising a plurality of entries for storing information related to failure detection protocol packets received by the system, the first memory data structure enabling the failure detection protocol packets received by the system to be processed by the failure detection protocol packet handler module independent from the processor;

a second memory data structure comprising a plurality of entries for storing information related to one or more failure detection protocol packets received by the system that have been processed by the failure detection protocol packet handler module and that are to be processed by the processor;

a first failure detection protocol packet received by the system; and

information for the first failure detection protocol packet in a first entry in the first memory data structure, the information in the first entry in the first memory data structure comprising information that enables the failure detection protocol packet handler module to access the first failure detection protocol packet from the one or more memories;

wherein the failure detection protocol packet handler module is configurable to:

determine, using the first entry in the first memory data structure, whether the first failure detection protocol packet is to be forwarded to the processor; and

upon determining that the first failure detection packet is to be forwarded to the processor, cause information to be stored for the first failure detection protocol packet in a first entry in the second memory data structure that enables the processor to access the first failure detection protocol packet from the one or more memories.

11. The system of claim 10 wherein the first failure detection protocol packet is a Bidirectional Forwarding (BFD) protocol packet.

12. The system of claim 10 wherein the first failure detection protocol packet is an 802.1ag protocol packet.

13. The system of claim 10 wherein the first memory data structure is a linked list and the second memory data structure is a linked list.

14. The system of claim 10 wherein the failure detection protocol packet handler module is further configurable to, upon determining that the first failure detection packet is not to be forwarded to the processor, cause the first failure detection protocol packet to be dropped such that the first failure detection protocol packet is not forwarded to the processor.

15. The system of claim 10 wherein the failure detection protocol packet handler module is configurable to:

compare a portion of the first failure detection protocol packet with reference information; and

determine whether the first failure detection protocol packet is to be forwarded to the processor based upon the comparing.

16. The system of claim 10 wherein the failure detection protocol packet handler module is configurable to:

apply a hash function to a portion of the first failure detection protocol packet to obtain a hash result; and

access the reference information for the comparing using the hash result.

17. The system of claim 10 wherein the failure detection protocol packet handler module is configurable to:

identify a failure detection protocol for the first failure detection protocol packet;

identify a session for the first failure detection protocol packet;

compare a portion of the first failure detection protocol packet with reference information stored for the identified failure detection protocol for the identified session; and

determine whether the first failure detection protocol packet is to be forwarded to the processor based upon the comparison.

18. The system of claim 10 wherein the failure detection protocol packet handler module is configurable to process a second failure detection protocol packet received by the system while the processor processes the first failure detection protocol packet.

19. A network device comprising:

a port configurable to receive one or more failure detection protocol packets;

one or more memories;

a processor configured to execute software for processing failure detection protocol packets; and

a failure detection protocol packet handler module;

wherein the one or more memories are configurable to store:

a first memory data structure that is processed by the failure detection protocol packet handler module;

a second memory data structure that is processed by the processor;

a first failure detection protocol packet received by the network device; and

information for the first failure detection protocol packet in a first entry in the first memory data structure, the information in the first entry in the first memory data structure comprising information that enables the failure detection protocol packet handler module to access the first failure detection protocol packet from the one or more memories;

wherein the failure detection protocol packet handler module is configurable to:

determine, using the first entry in the first memory data structure, whether the first failure detection protocol packet is to be forwarded to the processor; and

upon determining that the first failure detection packet is to be forwarded to the processor, cause information to be stored for the first failure detection protocol packet in a first entry in the second memory data structure that enables the processor to access the first failure detection protocol packet from the one or more memories.

20. The network device of claim 19 wherein the failure detection protocol packet handler module is configurable to process a second failure detection protocol packet received by the network device while the processor processes the first failure detection protocol packet.

Assignments (5)
AMENDED SECURITY AGREEMENT Recorded Aug 18, 2023
From: EXTREME NETWORKS, INC.; AEROHIVE NETWORKS, INC.
To: BANK OF MONTREAL
Reel/Frame 064782/0971 →
SECURITY INTEREST Recorded May 1, 2018
From: EXTREME NETWORKS, INC.
To: BANK OF MONTREAL
Reel/Frame 046050/0546 →
RELEASE OF SECURITY INTEREST Recorded May 1, 2018
From: SILICON VALLEY BANK
To: EXTREME NETWORKS, INC.
Reel/Frame 046051/0775 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 7, 2017
From: BROCADE COMMUNICATIONS SYSTEMS, INC.; FOUNDRY NETWORKS, LLC
To: EXTREME NETWORKS, INC.
Reel/Frame 044054/0678 →
THIRD AMENDED AND RESTATED PATENT AND TRADEMARK SECURITY AGREEMENT Recorded Oct 31, 2017
From: EXTREME NETWORKS, INC.
To: SILICON VALLEY BANK
Reel/Frame 044639/0300 →