IP Library Granted Patent US 8,151,339
Granted Patent B2
US 8,151,339 · App. 11/316,720 · Granted Apr 3, 2012

Method and apparatus for implementing filter rules in a network element

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,151,339
App. No.
11/316,720
Granted
Apr 3, 2012
Kind
B2
Abstract

Multiple non-conflicting actions associated with filter rules may be located and applied to a packet using a single ACL lookup by causing action records to be created from ACEs in the ACL, and then causing the ACL lookup to return the action record rather than any one particular ACE. Radix tables may be created to enable a search engine to quickly locate the appropriate action record based on a particular set of attributes associated with the incoming packet. The action record can contain multiple actions taken from multiple ACEs that apply to the particular packet. By grouping all the actions into an action record, and then searching for an action record that applies to the packet, it is possible to apply all non-conflicting actions to the packet regardless of the number of ACEs that are used to specify those actions. Since all the actions are located together, the actions of all ACEs may be applied to a packet using a single ACL lookup.

Claims (29)

1. A network element, comprising:

a microprocessor; and

a computer readable memory containing program instructions for execution on the microprocessor, the program instructions including:

first program logic configured to enable a set of ACEs in at least one ACL to be condensed to a set of action records, at least some of said action records containing multiple actions specified by different ACEs that commonly apply to packets having particular attribute values; and

second programmable logic configured to enable the action records to be found in connection with performing filter operations on packets received by the network element to enable all actions specified by the action records to be applied to the packets;

wherein each of the at least some of said action records containing a non-conflicting set of different actions associated with a plurality of filter rules that commonly apply to packets having the particular attribute values to enable all actions specified by the action records to be applied to the packets.

2. The network element of claim 1 , wherein the action records are configured to contain actions from both port-based and VLAN based ACLs.

3. The network element of claim 1 , wherein the actions contained in the action records are sorted according to precedence of an associated ACE.

4. The network element of claim 1 , comprising:

wherein the action records contain sets of non-conflicting actions derived from ACEs that apply to packets with the packets having the particular attribute values.

5. The network element of claim 1 , wherein the first programmable logic is configured to sort the ACEs into lookup tables to determine the sets of ACEs, and wherein the second programmable logic is configured to enable the action records to be found in connection with performing filter operations by causing the lookup tables to be programmed into a fastpath of the network element to be used in connection with performing filter operations.

6. A method for implementing filter rules in a network element, the method comprising the steps of:

processing, by the network element, a set of ACEs associated with an ACL to generate a set of action records, at least some of said action records containing a non-conflicting sets of different actions associated with pluralities of filter rules that commonly apply to packets having particular attribute values to enable all actions specified by the action records to be applied to the packets; and

processing, by the network element, a set of ACEs associated with an ACL to generate a set of lookup tables for attributes specified in the ACEs, said lookup tables pointing to said action records, and being configured to enable a filtering operation to identify an action record based on attribute values of a packet so that all actions specified by the action records may be applied to the packets;

wherein only non-conflicting actions are included in the lists.

7. The method of claim 6 , wherein the step of processing the set of ACEs to generate a set of action records is implemented using radix tables.

8. The method of claim 7 , further comprising the step of programming the radix tables and action records into a data path for use in connection with the filtering operation.

9. The method of claim 6 , wherein the lookup tables are radix tables.

10. The method of claim 6 , wherein the action records contain lists of actions to be applied to packets having particular attribute values, said lists of actions being derived from actions specified by the groups of ACEs for packets having particular attribute values.

11. The method of claim 10 , wherein the actions in the lists are applied according to a precedence.

12. A method of applying a set of filters to a packet on a network element, the method comprising the steps of:

obtaining, by the network element, a packet having packet attribute values;

using, by the network element, a first of said packet attribute values as a key to a first search that is to be performed in a first attribute lookup table; and

obtaining, by the network element, as a result of the first search, at least one of a lookup failure, a lookup success, and a next attribute indication, wherein when a lookup success is obtained, an action record associated with the lookup success is retrieved, said action record containing a non-conflicting set of different actions associated with a plurality of filter rules that commonly apply to packets having the packet attribute values to enable all actions specified by the action records to be applied to the packets.

13. The method of claim 12 , wherein when the next attribute indication is obtained, the method further comprises the step of determining a subsequent packet attribute to be searched, obtaining a second packet attribute value associated with the attribute to be searched, and using the second packet attribute value as a key to a subsequent search that is to be performed in a subsequent attribute lookup table.

14. The method of claim 12 , further comprising the step of obtaining as a subsequent result of the subsequent search, at least one of lookup failure, lookup success, and a second next attribute indication.

15. The method of claim 14 , wherein the method further comprises the step of iterating the steps of determining a subsequent packet attribute and obtaining the subsequent result each time a second next attribute indication is obtained.

16. The method of claim 12 , further comprising determining an ACL for the packet, and wherein the step of using the first packet attribute value is performed in a lookup table created from ACEs associated with the ACL.

17. The method of claim 12 , wherein the lookup tables comprise radix tables.

Assignments (23)
(SECURITY INTEREST) GRANTOR'S NAME CHANGE Recorded Sep 21, 2023
From: AVAYA INC.
To: AVAYA LLC
Reel/Frame 065019/0231 →
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 53955/0436) Recorded May 18, 2023
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: AVAYA MANAGEMENT L.P.; AVAYA INC.; INTELLISIST, INC.; AVAYA INTEGRATED CABINET SOLUTIONS LLC
Reel/Frame 063705/0023 →
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 045034/0001) Recorded May 18, 2023
From: GOLDMAN SACHS BANK USA., AS COLLATERAL AGENT
To: ZANG, INC. (FORMER NAME OF AVAYA CLOUD INC.); AVAYA INC.; INTELLISIST, INC.; AVAYA INTEGRATED CABINET SOLUTIONS LLC; OCTEL COMMUNICATIONS LLC; VPNET TECHNOLOGIES, INC.; HYPERQUALITY, INC.; HYPERQUALITY II, LLC; CAAS TECHNOLOGIES, LLC; AVAYA MANAGEMENT L.P.
Reel/Frame 063779/0622 →
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 61087/0386) Recorded May 18, 2023
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: AVAYA MANAGEMENT L.P.; AVAYA INC.; INTELLISIST, INC.; AVAYA INTEGRATED CABINET SOLUTIONS LLC
Reel/Frame 063690/0359 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded May 4, 2023
From: AVAYA INC.; AVAYA MANAGEMENT L.P.; INTELLISIST, INC.
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 063542/0662 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded May 3, 2023
From: AVAYA MANAGEMENT L.P.; AVAYA INC.; INTELLISIST, INC.; KNOAHSOFT INC.
To: WILMINGTON SAVINGS FUND SOCIETY, FSB [COLLATERAL AGENT]
Reel/Frame 063742/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS AT REEL 45124/FRAME 0026 Recorded Apr 26, 2023
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: AVAYA HOLDINGS CORP.; AVAYA INC.; AVAYA MANAGEMENT L.P.; AVAYA INTEGRATED CABINET SOLUTIONS LLC
Reel/Frame 063457/0001 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Aug 5, 2022
From: AVAYA INC.; INTELLISIST, INC.; AVAYA MANAGEMENT L.P.; AVAYA CABINET SOLUTIONS LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 061087/0386 →
SECURITY INTEREST Recorded Sep 25, 2020
From: AVAYA INC.; AVAYA MANAGEMENT L.P.; INTELLISIST, INC.; AVAYA INTEGRATED CABINET SOLUTIONS LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION
Reel/Frame 053955/0436 →
SECURITY INTEREST Recorded Jan 23, 2018
From: AVAYA INC.; AVAYA INTEGRATED CABINET SOLUTIONS LLC; OCTEL COMMUNICATIONS LLC; VPNET TECHNOLOGIES, INC.; ZANG, INC.
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 045124/0026 →
RELEASE OF SECURITY INTEREST Recorded Jan 11, 2018
From: CITICORP USA, INC.
To: AVAYA, INC.; SIERRA HOLDINGS CORP.
Reel/Frame 045045/0564 →
SECURITY INTEREST Recorded Jan 10, 2018
From: AVAYA INC.; AVAYA INTEGRATED CABINET SOLUTIONS LLC; OCTEL COMMUNICATIONS LLC; VPNET TECHNOLOGIES, INC.; ZANG, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 045034/0001 →
BANKRUPTCY COURT ORDER RELEASING ALL LIENS INCLUDING THE SECURITY INTEREST RECORDED AT REEL/FRAME 041576/0001 Recorded Dec 15, 2017
From: CITIBANK, N.A.
To: AVAYA INC.; AVAYA INTEGRATED CABINET SOLUTIONS INC.; OCTEL COMMUNICATIONS LLC (FORMERLY KNOWN AS OCTEL COMMUNICATIONS CORPORATION); VPNET TECHNOLOGIES, INC.
Reel/Frame 044893/0531 →
BANKRUPTCY COURT ORDER RELEASING ALL LIENS INCLUDING THE SECURITY INTEREST RECORDED AT REEL/FRAME 023892/0500 Recorded Dec 15, 2017
From: CITIBANK, N.A.
To: AVAYA INC.
Reel/Frame 044891/0564 →
BANKRUPTCY COURT ORDER RELEASING ALL LIENS INCLUDING THE SECURITY INTEREST RECORDED AT REEL/FRAME 025863/0535 Recorded Dec 15, 2017
From: THE BANK OF NEW YORK MELLON TRUST, NA
To: AVAYA INC.
Reel/Frame 044892/0001 →
BANKRUPTCY COURT ORDER RELEASING ALL LIENS INCLUDING THE SECURITY INTEREST RECORDED AT REEL/FRAME 030083/0639 Recorded Dec 15, 2017
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
To: AVAYA INC.
Reel/Frame 045012/0666 →
SECURITY INTEREST Recorded Jan 27, 2017
From: AVAYA INC.; AVAYA INTEGRATED CABINET SOLUTIONS INC.; OCTEL COMMUNICATIONS CORPORATION; VPNET TECHNOLOGIES, INC.
To: CITIBANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 041576/0001 →
SECURITY AGREEMENT Recorded Mar 13, 2013
From: AVAYA, INC.
To: BANK OF NEW YORK MELLON TRUST COMPANY, N.A., THE
Reel/Frame 030083/0639 →
SECURITY AGREEMENT Recorded Feb 22, 2011
From: AVAYA INC., A DELAWARE CORPORATION
To: BANK OF NEW YORK MELLON TRUST, NA, AS NOTES COLLATERAL AGENT, THE
Reel/Frame 025863/0535 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 26, 2010
From: NORTEL NETWORKS LIMITED
To: AVAYA INC.
Reel/Frame 023998/0878 →
SECURITY AGREEMENT Recorded Feb 5, 2010
From: AVAYA INC.
To: CITICORP USA, INC., AS ADMINISTRATIVE AGENT
Reel/Frame 023905/0001 →
SECURITY AGREEMENT Recorded Feb 4, 2010
From: AVAYA INC.
To: CITIBANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 023892/0500 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 23, 2005
From: RAMACHANDRAN, VIKRAM; MOISIADIS, ALEXANDROS; ANUMALA, MOHNISH; ZHANG, DEBIN; LI, HONG-ZHOU
To: NORTEL NETWORKS LIMITED
Reel/Frame 017415/0184 →