IP Library Granted Patent US 7,752,155
Granted Patent B2
US 7,752,155 · App. 12/182,118 · Granted Jul 6, 2010

System and computer program for compressing multi-field classification rules

Assignee: International Business Machines Corporation
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 7,752,155
App. No.
12/182,118
Granted
Jul 6, 2010
Kind
B2
Abstract

The present invention relates to a system and computer-readable medium for storing a plurality of multi-field classification rules in a computer system. Each multi-field classification rule includes a rule specification that itself includes a plurality of fields and a plurality of field definitions corresponding to the fields. The method of the present invention includes providing a virtual rule table, where the table stores a plurality of field definitions, and for each of the plurality of multi-field classification rules, compressing the rule specification by replacing at least one field definition with an associated index into the virtual rule table. The method also includes storing each of the compressed rule specifications and the virtual rule table in a shared segment of memory.

Claims (43)

1. A computer-readable medium encoded with a program for storing a plurality of multi-field classification rules in a computer system, the program comprising instructions for:

providing a virtual rule table;

compressing a rule specification corresponding to each of the plurality of multi-field classification rules by storing in the provided virtual rule table at least one field definition included in the rule specification and replacing the at least one field definition included in the rule specification with an index referencing the at least one field definition stored in the virtual rule table;

storing the compressed rule specifications corresponding to the plurality of multi-field classification rules and the virtual rule table in a single entry of a memory of the computer system; and

performing a single read operation on the single entry of the memory of the computer system to retrieve the compressed rule specifications corresponding to the plurality of multi-field classification rules.

2. The computer-readable medium of claim 1 , wherein compressing the rule specification further comprises:

for each of a plurality of fields included in the rule specification, determining whether the field is relevant by analyzing a field definition for the field, wherein the field definition is also included in the rule specification.

3. The computer-readable medium of claim 2 , wherein compressing the rule specification further comprises:

responsive to the field being relevant, determining whether the field definition for the field is stored in the virtual rule table;

responsive to the field definition not being stored in the virtual rule table, storing the field definition in the virtual rule table; and

replacing the field definition included in the rule specification with an index referencing the field definition stored in the virtual rule table.

4. The computer-readable medium of claim 3 , wherein compressing the rule specification further comprises:

responsive to the field definition being stored in the virtual rule table, replacing the field definition included in the rule specification with an index into referencing the field definition stored in the virtual rule table.

5. The computer-readable medium of claim 4 , wherein compressing the rule specification further comprises:

responsive to the field not being relevant, skipping to a next field included in the rule specification.

6. The computer-readable medium of claim 2 , wherein the program further comprises instructions for:

appending a field mask to the rule specification corresponding to each of the plurality of multi-field classification rules, the field mask comprising a plurality of bits corresponding to the plurality of fields included in the rule specification; and

responsive to the field being relevant, setting a value of the bit in the field mask corresponding to the field to one (1).

7. The computer-readable medium of claim 6 , wherein the program further comprises instructions for:

utilizing the field mask appended to the rule specification corresponding to each of the plurality of multi-field classification rules to decompress the rule specification after the rule specification has been compressed.

8. The computer-readable medium of claim 1 , wherein the program further comprises instructions for:

compressing action data corresponding to each of the plurality of multi-field classification rules by

determining which of a plurality of action types is associated with the action data,

providing a bit in the action data for each of the plurality of action types, and

setting a value of the bit in the action data corresponding to each action type determined to be associated with the action data to one (1); and

storing the compressed action data corresponding to each of the plurality of multi field classification rules in the single entry of the memory of the computer system with the compressed rule specification corresponding to each of the plurality of multi field classification rules and the virtual table.

9. The computer-readable medium of claim 1 , wherein the plurality of multi-field classification rules are a plurality of filter rules.

10. A system for storing a plurality of multi-field classification rules, the system comprising:

at least one communications network;

a switch in each of the at least one communications networks;

a memory in the switch; and

a network processor in the switch, the network processor being programmed to provide a virtual rule table in the memory,

compress a rule specification corresponding to each of the plurality of multi-field classification rules by

storing in the virtual table at least one field definition included in the rule specification and

replacing the at least one field definition included in the rule specification with an index referencing the at least one field definition stored in the virtual rule table,

store the compressed rule specifications corresponding to the plurality of multi-field classification rules and the virtual rule table in a single entry of the memory, and

perform a single read operation on the single entry of the memory to retrieve the compressed rule specifications corresponding to the plurality of multi-field classification rules.

11. The system of claim 10 , wherein the network processor is further programmed to

compress action data corresponding to each of the plurality of multi-field classification rules by

determining which of a plurality of action types is associated with the action data,

providing a bit in the action data for each of the plurality of action types, and

setting a value of the bit in the action data corresponding to each action type determined to be associated with the action data to one (1), and

store the compressed action data corresponding to each of the plurality of multi field classification rules in the single entry of the memory of the computer system with the compressed rule specification corresponding to each of the plurality of multi field classification rules and the virtual table.

Assignments (7)
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS (REEL 062079, FRAME 0677) Recorded Mar 3, 2026
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: X CORP. (F/K/A TWITTER, INC.)
Reel/Frame 075015/0574 →
RELEASE OF SECURITY INTEREST Recorded Apr 30, 2025
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: X CORP. (F/K/A TWITTER, INC.)
Reel/Frame 071127/0240 →
RELEASE OF SECURITY INTEREST Recorded Mar 27, 2025
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: X CORP. (F/K/A TWITTER, INC.)
Reel/Frame 070670/0857 →
SECURITY INTEREST Recorded Oct 28, 2022
From: TWITTER, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 062079/0677 →
SECURITY INTEREST Recorded Oct 28, 2022
From: TWITTER, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 061804/0001 →
SECURITY INTEREST Recorded Oct 28, 2022
From: TWITTER, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 061804/0086 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 16, 2014
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: TWITTER, INC.
Reel/Frame 032075/0404 →
Continuity (2)
Continuation 1083295700 · Apr 27, 2004
Related Publication 20080285454A1 · Nov 20, 2008