IP Library Granted Patent US 8,395,996
Granted Patent B2
US 8,395,996 · App. 11/953,742 · Granted Mar 12, 2013

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 8,395,996
App. No.
11/953,742
Granted
Mar 12, 2013
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 (46)

1. A method performed by a network device, the method comprising:

determining, by a failure detection protocol packet handler, if a failure detection protocol packet received by the network device is to be forwarded to a processor configured to execute software for processing failure detection protocol packets, the determining performed based upon information from the failure detection protocol packet; and

dropping, by the network device, the failure detection protocol packet prior to the failure detection protocol packet being processed by the processor upon determining that the failure detection protocol packet is not to be forwarded to the processor;

wherein the determining comprises:

identifying a first entry from a first set of entries using a hash result obtained based upon information from the failure detection protocol packet;

upon determining, based upon the comparing, that first information from the failure detection protocol packet matches information stored by the first entry, identifying a second entry from a second set of entries, each entry in the second set of entries corresponding to a session, the second entry corresponding to a session related to the failure detection protocol packet; and

determining whether the failure detection protocol packet is to be forwarded to the processor based upon second information contained in one or more fields of the failure detection protocol packet and reference information stored in the second entry; and

changing a portion of information in the second entry.

2. The method of claim 1 wherein determining whether the failure detection protocol packet is to be forwarded to the processor based upon the second information comprises:

determining that the failure detection protocol packet is not to be forwarded to the processor if the second information matches the reference information.

3. The method of claim 1 wherein:

identifying the second entry comprises identifying the second entry from the second set of entries based upon information in the first entry; and

determining whether the failure detection protocol packet is to be forwarded to the processor based upon the second information comprises comparing the second information with the reference information in the second entry.

4. The method of claim 1 wherein the failure detection protocol packet is a 802.1ag packet.

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

6. The method of claim 1 wherein packets in a set of failure detection protocol packets including the failure detection protocol packet are received by the network device at a rate faster than one failure detection protocol packet per second.

7. A system comprising:

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

a failure detection protocol packet handler module;

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

identify a first entry from a first set of entries using a hash result obtained based upon information from the failure detection protocol packet;

upon determining that first information from the failure detection protocol packet matches information stored by the first entry, identify a second entry from a second set of entries, each entry in the second set of entries corresponding to a session, the second entry corresponding to a session related to the failure detection protocol packet;

determine whether the failure detection protocol packet is to be forwarded to the processor based upon second information contained in one or more fields of the failure detection protocol packet and reference information stored in the second entry;

change a portion of information in the second entry; and

drop the failure detection protocol packet prior to the failure detection protocol packet being processed by the processor upon determining that the failure detection protocol packet is not to be forwarded to the processor.

8. The system of claim 7 wherein the failure detection protocol packet handler module is configured to:

determine that the failure detection protocol packet is not to be forwarded to the processor if the second information from the failure detection protocol packet matches the reference information.

9. The system of claim 8 wherein the failure detection protocol packet handler module is configured to:

identify the second entry from the second set of entries based upon information in the first entry; and

compare the second information with the reference information in the second entry.

10. The system of claim 7 wherein the failure detection protocol packet is a 802.1ag packet.

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

12. The system of claim 7 wherein packets in a set of failure detection protocol packets including the failure detection protocol packet are received by the system at a rate faster than one failure detection protocol packet per second.

13. A network device comprising:

a processor configured to execute software for processing failure detection protocol packets received by the network device; and

a module separate from the processor, wherein the module is configured to:

identify a first entry from a first set of entries using a hash result obtained based upon information from the failure detection protocol packet;

upon determining that first information from the failure detection protocol packet matches information stored by the first entry, identify a second entry from a second set of entries, each entry in the second set of entries corresponding to a session, the second entry corresponding to a session related to the failure detection protocol packet;

determine whether the failure detection protocol packet is to be forwarded to the processor based upon second information contained in one or more fields of the failure detection protocol packet and reference information stored in the second entry;

change a portion of information in the second entry; and

drop the failure detection protocol packet prior to the failure detection protocol packet being processed by the processor upon determining that the failure detection protocol packet is not to be forwarded to the processor;

wherein the module is a field programmable logic device (FPLD) or an application specific integrated circuit (ASIC).

14. The network device of claim 13 wherein the module is configured to:

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

compare the second information from the failure detection protocol packet with the reference information; and

determine that the failure detection protocol packet is not to be forwarded to the processor if the second information matches the reference information.

Assignments (11)
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 →
RELEASE OF SECURITY INTEREST Recorded Jan 22, 2015
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: BROCADE COMMUNICATIONS SYSTEMS, INC.; FOUNDRY NETWORKS, LLC
Reel/Frame 034804/0793 →
RELEASE OF SECURITY INTEREST Recorded Jan 21, 2015
From: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
To: BROCADE COMMUNICATIONS SYSTEMS, INC.; INRANGE TECHNOLOGIES CORPORATION; FOUNDRY NETWORKS, LLC
Reel/Frame 034792/0540 →
CHANGE OF NAME Recorded Jul 21, 2010
From: FOUNDRY NETWORKS, INC.
To: FOUNDRY NETWORKS, LLC
Reel/Frame 024733/0739 →
SECURITY AGREEMENT Recorded Jan 20, 2010
From: BROCADE COMMUNICATIONS SYSTEMS, INC.; FOUNDRY NETWORKS, LLC; INRANGE TECHNOLOGIES CORPORATION; MCDATA CORPORATION; MCDATA SERVICES CORPORATION
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 023814/0587 →
SECURITY AGREEMENT Recorded Dec 22, 2008
From: BROCADE COMMUNICATIONS SYSTEMS, INC.; FOUNDRY NETWORKS, INC.; INRANGE TECHNOLOGIES CORPORATION; MCDATA CORPORATION
To: BANK OF AMERICA, N.A. AS ADMINISTRATIVE AGENT
Reel/Frame 022012/0204 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 12, 2007
From: WONG, YUEN; MOOBED, PEDMAN
To: FOUNDRY NETWORKS, INC.
Reel/Frame 020233/0552 →