fast packet classification using bit compression with fast boolean expansion
DESCRIPTION
Fast Packet Classification Using Bit Compression with Fast Boolean Expansion. Author: Chien Chen, Chia-Jen Hsu and Chi-Chia Huang Publisher: Journal of Information Science and Engineering, 2007 Presenter: Chun-Yi Li Date: 2009/03/11. Outline. Related Work Bitmap intersection - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Fast Packet Classification Using Bit Compression with Fast Boolean Expansion](https://reader033.vdocuments.net/reader033/viewer/2022051218/568159e7550346895dc73229/html5/thumbnails/1.jpg)
Fast Packet Classification Using Bit Compression with Fast Boolean Expansion
Author: Chien Chen, Chia-Jen Hsu and Chi-Chia Huang
Publisher: Journal of Information Science and Engineering, 2007
Presenter: Chun-Yi Li
Date: 2009/03/11
![Page 2: Fast Packet Classification Using Bit Compression with Fast Boolean Expansion](https://reader033.vdocuments.net/reader033/viewer/2022051218/568159e7550346895dc73229/html5/thumbnails/2.jpg)
2
Outline
Related Work Bitmap intersection Aggregated Bit Vector (ABV)
Bit Compression Algorithm
Fast Boolean Expasion
Performance
![Page 3: Fast Packet Classification Using Bit Compression with Fast Boolean Expansion](https://reader033.vdocuments.net/reader033/viewer/2022051218/568159e7550346895dc73229/html5/thumbnails/3.jpg)
3
Bitmap intersectionEach interval associated with an N-bits bit
vector.
0
0
0
0
0
0
1
0
0
0
1
0
1
1
0
0
1
0
1
1
1
0
0
0
1
1
1
0
0
1
1
0
1
0
0
1
1
0
0
0
0
1
1
0
0
1
0
1
0
0
0
0
0
0
1
2
3
4
5
6
R1
R2
R3
R6
R4
R5
Related Work
![Page 4: Fast Packet Classification Using Bit Compression with Fast Boolean Expansion](https://reader033.vdocuments.net/reader033/viewer/2022051218/568159e7550346895dc73229/html5/thumbnails/4.jpg)
Aggregated Bit Vector (ABV)
0000 1110 000
1100 1110 000 0010 0001 101 0001 0001 110
0000 0001 100010
110 111 111
011
0000 0010 110
1000 0010 110 0001 1000 001 0010 0100 000
011
111 111 1100100 0011 110
111
1
1
1
1
0
0 0
0
0 0 1
Field1
Field2
Rule Field1 Field2
R0 00* 00*
R1 00* 01*
R2 10* 11*
R3 11* 10*
R4 0* 10*
R5 0* 11*
R6 0* 0*
R7 1* 01*
R8 1* 0*
R9 11* 0*
R10 10* 10*
Related Work
Aggregate size = 4
![Page 5: Fast Packet Classification Using Bit Compression with Fast Boolean Expansion](https://reader033.vdocuments.net/reader033/viewer/2022051218/568159e7550346895dc73229/html5/thumbnails/5.jpg)
5
Aggregated Bit Vector (ABV) Aggregation tries to decrease the memory
access time by adding ABV. Generates false matching.
- Rule rearrangement. Faster than bitmap intersection, but use more
space.
Related Work
![Page 6: Fast Packet Classification Using Bit Compression with Fast Boolean Expansion](https://reader033.vdocuments.net/reader033/viewer/2022051218/568159e7550346895dc73229/html5/thumbnails/6.jpg)
7
Outline
Related Work Bitmap intersection Aggregated Bit Vector (ABV)
Bit Compression Algorithm
Fast Boolean Expasion
Performance
![Page 7: Fast Packet Classification Using Bit Compression with Fast Boolean Expansion](https://reader033.vdocuments.net/reader033/viewer/2022051218/568159e7550346895dc73229/html5/thumbnails/7.jpg)
8
Bit Compression Algorithm
Memory storage - θ(dN ㏒ N)
Require additional time for decompression
![Page 8: Fast Packet Classification Using Bit Compression with Fast Boolean Expansion](https://reader033.vdocuments.net/reader033/viewer/2022051218/568159e7550346895dc73229/html5/thumbnails/8.jpg)
9
0 0 0 0 0 0 0 0 0 0 1 1
Don’t Care Vectors (DCV)
Bit Compression Algorithm
Removing the redundant “1” bits
Construct Don’t Care Vectors (DCV)
![Page 9: Fast Packet Classification Using Bit Compression with Fast Boolean Expansion](https://reader033.vdocuments.net/reader033/viewer/2022051218/568159e7550346895dc73229/html5/thumbnails/9.jpg)
10
Removing redundant ‘0’ bits
Bit Compression Algorithm
![Page 10: Fast Packet Classification Using Bit Compression with Fast Boolean Expansion](https://reader033.vdocuments.net/reader033/viewer/2022051218/568159e7550346895dc73229/html5/thumbnails/10.jpg)
11For convience of memory access, fill up ‘0’ to the end of the CBVs and index table.
Bit Compression Algorithm
Append “index table lookup address” (ITLA)
Construct Compressed Bit Vector(CBV)
![Page 11: Fast Packet Classification Using Bit Compression with Fast Boolean Expansion](https://reader033.vdocuments.net/reader033/viewer/2022051218/568159e7550346895dc73229/html5/thumbnails/11.jpg)
12
Index table
00 1 3 4 0 0
01 1 2 5 6 8
10 1 2 7 0 0
11 9 10 0 0 0
Filled up with ‘0’
Bit Compression AlgorithmConstruct index table
![Page 12: Fast Packet Classification Using Bit Compression with Fast Boolean Expansion](https://reader033.vdocuments.net/reader033/viewer/2022051218/568159e7550346895dc73229/html5/thumbnails/12.jpg)
13
Bit Compression AlgorithmSearch
(DCV)
![Page 13: Fast Packet Classification Using Bit Compression with Fast Boolean Expansion](https://reader033.vdocuments.net/reader033/viewer/2022051218/568159e7550346895dc73229/html5/thumbnails/13.jpg)
14
Maxmum Overlap Analysis
β – denote the probability that PA is a prefix of PB. (PA and PB are randomly selected from the rule table)
Bit Compression Algorithm
![Page 14: Fast Packet Classification Using Bit Compression with Fast Boolean Expansion](https://reader033.vdocuments.net/reader033/viewer/2022051218/568159e7550346895dc73229/html5/thumbnails/14.jpg)
15
Region SegmentationThe region segmentation algorithm constructs an undirected graph first.
Each vertex vi corresponds to a rule Ri, and an edge is constructed between vi and vj if rules i and j are dependent.
![Page 15: Fast Packet Classification Using Bit Compression with Fast Boolean Expansion](https://reader033.vdocuments.net/reader033/viewer/2022051218/568159e7550346895dc73229/html5/thumbnails/15.jpg)
16
Region Segmentation
STEP1:C1 {1, 2, 3, 4, 5, 6, 7, 8}C2 {9, 10}
STEP2:C11 {1, 3, 4}C12 {1, 2, 5, 6, 7, 8}C2 {9, 10}
STEP3:C11 {1, 3, 4}C121 {1, 2, 5, 6, 8}C122 {1, 2, 6, 7}C2 {9, 10}
1. Find connected component.2. Remove maximum degree vectex if set smaller than
maximum overlap.
Maximum overlap = 5
![Page 16: Fast Packet Classification Using Bit Compression with Fast Boolean Expansion](https://reader033.vdocuments.net/reader033/viewer/2022051218/568159e7550346895dc73229/html5/thumbnails/16.jpg)
17
Merge Rule Set
CR1 {1, 3, 4}CR2 {1, 2, 5, 6, 8}CR3 {1, 2, 6, 7}CR4 {9, 10}
MergeCR1 {1, 3, 4. 9, 10}CR2 {1, 2, 5, 6, 8}CR3 {1, 2, 6, 7}
Index table
00 1 3 4 0 0
01 1 2 5 6 8
10 1 2 6 7 0
11 9 10 0 0 0
New index table
00 1 3 4 9 10
01 1 2 5 6 8
10 1 2 6 7 0
Two rule sets can be merged together if the rule numbers of the merged rule sets are smaller than or equal to the maximum overlap.
![Page 17: Fast Packet Classification Using Bit Compression with Fast Boolean Expansion](https://reader033.vdocuments.net/reader033/viewer/2022051218/568159e7550346895dc73229/html5/thumbnails/17.jpg)
18
Merge Rule Set
New index table
00 1 3 4 9 10
01 1 2 5 6 8
10 1 2 6 7 0
![Page 18: Fast Packet Classification Using Bit Compression with Fast Boolean Expansion](https://reader033.vdocuments.net/reader033/viewer/2022051218/568159e7550346895dc73229/html5/thumbnails/18.jpg)
19
Merge Rule Set
![Page 19: Fast Packet Classification Using Bit Compression with Fast Boolean Expansion](https://reader033.vdocuments.net/reader033/viewer/2022051218/568159e7550346895dc73229/html5/thumbnails/19.jpg)
20
Outline Related Work
Bitmap intersection Aggregated Bit Vector (ABV)
Bit Compression Algorithm
Fast Boolean Expasion
Performance
![Page 20: Fast Packet Classification Using Bit Compression with Fast Boolean Expansion](https://reader033.vdocuments.net/reader033/viewer/2022051218/568159e7550346895dc73229/html5/thumbnails/20.jpg)
21
Fast Boolean Expasion(FBE) Original boolean expression:
(CBVS+DCVS)*(CBVD+DCVD)
Modify boolean expression:
(CBVS*CBVD)+(CBVS*DCVD)+
(DCVS*CBVD)+(DCVS*DCVD)Takes few memory accesses since CBVS and CBVD are compressed bit vector. Only extract the essential bits
from DCV that are corresponding to the set bits of CBV
Default rule
![Page 21: Fast Packet Classification Using Bit Compression with Fast Boolean Expansion](https://reader033.vdocuments.net/reader033/viewer/2022051218/568159e7550346895dc73229/html5/thumbnails/21.jpg)
22
Outline
Related Work Bitmap intersection Aggregated Bit Vector (ABV)
Bit Compression Algorithm
Fast Boolean Expasion
Performance
![Page 22: Fast Packet Classification Using Bit Compression with Fast Boolean Expansion](https://reader033.vdocuments.net/reader033/viewer/2022051218/568159e7550346895dc73229/html5/thumbnails/22.jpg)
23
Performance
![Page 23: Fast Packet Classification Using Bit Compression with Fast Boolean Expansion](https://reader033.vdocuments.net/reader033/viewer/2022051218/568159e7550346895dc73229/html5/thumbnails/23.jpg)
24
Performance
![Page 24: Fast Packet Classification Using Bit Compression with Fast Boolean Expansion](https://reader033.vdocuments.net/reader033/viewer/2022051218/568159e7550346895dc73229/html5/thumbnails/24.jpg)
25
Performance
Transmission rateWithout wildcard rule
(K)
![Page 25: Fast Packet Classification Using Bit Compression with Fast Boolean Expansion](https://reader033.vdocuments.net/reader033/viewer/2022051218/568159e7550346895dc73229/html5/thumbnails/25.jpg)
26
Performance
Transmission rateContain 20% wildcard rule
(K)
![Page 26: Fast Packet Classification Using Bit Compression with Fast Boolean Expansion](https://reader033.vdocuments.net/reader033/viewer/2022051218/568159e7550346895dc73229/html5/thumbnails/26.jpg)
27
Transmission rateContain 50% wildcard rule
Performance
(K)