Fast Packet Classification Using Bloom filters Author: Sarang Dharmapurikar, Haoyu Song, Jonathan...

18
Fast Packet Classification Using Bloom filters Author: Sarang Dharmapurikar, Haoyu Song, Jonathan Turner, John Lockwood Publisher: Architecture for networking and co mmunications systems, Proceedings of the 2006 ACM/IEEE symposium Presenter: Yu-Ping Chiang Date: 2008/11/5
  • date post

    20-Dec-2015
  • Category

    Documents

  • view

    221
  • download

    4

Transcript of Fast Packet Classification Using Bloom filters Author: Sarang Dharmapurikar, Haoyu Song, Jonathan...

Page 1: Fast Packet Classification Using Bloom filters Author: Sarang Dharmapurikar, Haoyu Song, Jonathan Turner, John Lockwood Publisher: Architecture for networking.

Fast Packet Classification Using Bloom filters

Author: Sarang Dharmapurikar, Haoyu Song, Jonathan Turner, John Lockwood

Publisher: Architecture for networking and communications systems, Proceedings of the 2006 ACM/IEEE symposiumPresenter: Yu-Ping ChiangDate: 2008/11/5

Page 2: Fast Packet Classification Using Bloom filters Author: Sarang Dharmapurikar, Haoyu Song, Jonathan Turner, John Lockwood Publisher: Architecture for networking.

Outline Related Work

Naive Crossproduct AlgorithmMulti-subset Crossproduct Algorithm

Nested Level Tuple Space Search (NLTSS) NLT Merging and Crossproduct (NLTMC) Performance

Memory RequirementThroughput

Page 3: Fast Packet Classification Using Bloom filters Author: Sarang Dharmapurikar, Haoyu Song, Jonathan Turner, John Lockwood Publisher: Architecture for networking.

Naive Crossproduct Algorithm Pseudo rule

A match for a prefix also match it’s shorter prefix. Too much overhead.

Page 4: Fast Packet Classification Using Bloom filters Author: Sarang Dharmapurikar, Haoyu Song, Jonathan Turner, John Lockwood Publisher: Architecture for networking.

Naive Crossproduct Algorithm

Page 5: Fast Packet Classification Using Bloom filters Author: Sarang Dharmapurikar, Haoyu Song, Jonathan Turner, John Lockwood Publisher: Architecture for networking.

Multi-subset Crossproduct Algo.

Page 6: Fast Packet Classification Using Bloom filters Author: Sarang Dharmapurikar, Haoyu Song, Jonathan Turner, John Lockwood Publisher: Architecture for networking.

Outline Related Work

Naive Crossproduct AlgorithmMulti-subset Crossproduct Algorithm

Nested Level Tuple Space Search (NLTSS) NLT Merging and Crossproduct (NLTMC) Performance

Memory RequirementThroughput

Page 7: Fast Packet Classification Using Bloom filters Author: Sarang Dharmapurikar, Haoyu Song, Jonathan Turner, John Lockwood Publisher: Architecture for networking.

Nested Level Tuple Space Search Definition:

Nested Level: # of marked ancestors of a marked node. Always assume root is marked.

1

21 1

0

111

Page 8: Fast Packet Classification Using Bloom filters Author: Sarang Dharmapurikar, Haoyu Song, Jonathan Turner, John Lockwood Publisher: Architecture for networking.

Nested Level Tuple Space Search Definition:

Nested Level Trie: remove unmarked nodes connecting marked node to nearest ancestor

Page 9: Fast Packet Classification Using Bloom filters Author: Sarang Dharmapurikar, Haoyu Song, Jonathan Turner, John Lockwood Publisher: Architecture for networking.

Nested Level Tuple Space Search Definition:

Nested Level Tuple (NLT):

Page 10: Fast Packet Classification Using Bloom filters Author: Sarang Dharmapurikar, Haoyu Song, Jonathan Turner, John Lockwood Publisher: Architecture for networking.

Do not need crossproduct rules. Number of NLTs is number of subsets.

Nested Level Tuple Space Search

Page 11: Fast Packet Classification Using Bloom filters Author: Sarang Dharmapurikar, Haoyu Song, Jonathan Turner, John Lockwood Publisher: Architecture for networking.

Nested Level Tuple Space Search Definition:

NLT bitmap Set if prefix or it’s sub-prefix belongs to a rule

contained in this NLT.

PL/NL bit-map 32 bits Set at a position indicates that the prefix of

corresponding length is in the rule set.

Page 12: Fast Packet Classification Using Bloom filters Author: Sarang Dharmapurikar, Haoyu Song, Jonathan Turner, John Lockwood Publisher: Architecture for networking.

Nested Level Tuple Space Search

Page 13: Fast Packet Classification Using Bloom filters Author: Sarang Dharmapurikar, Haoyu Song, Jonathan Turner, John Lockwood Publisher: Architecture for networking.

Outline Related Work

Naive Crossproduct AlgorithmMulti-subset Crossproduct Algorithm

Nested Level Tuple Space Search (NLTSS) NLT Merging and Crossproduct (NLTMC) Performance

Memory RequirementThroughput

Page 14: Fast Packet Classification Using Bloom filters Author: Sarang Dharmapurikar, Haoyu Song, Jonathan Turner, John Lockwood Publisher: Architecture for networking.

NLT Merging and Crossproduct

Bounded set numbers Algorithm

Sort NLTs by the number of rules in them. Pick most dense g NLTs. (g is limit # of subsets.) Merge remaining NTL (rules) with one of fixed g NTLs.

Choose “closest” NLT Ex: distance of [4,3,1,2,1] and [4,1,0,2,1]

= |3-1| + |1-0| = 3

If there’s a pseudo-rule threshold, try to insert rule.

If exceeds threshold, don’t insert it.

Page 15: Fast Packet Classification Using Bloom filters Author: Sarang Dharmapurikar, Haoyu Song, Jonathan Turner, John Lockwood Publisher: Architecture for networking.

Outline Related Work

Naive Crossproduct AlgorithmMulti-subset Crossproduct Algorithm

Nested Level Tuple Space Search (NLTSS) NLT Merging and Crossproduct (NLTMC) Performance

Memory RequirementThroughput

Page 16: Fast Packet Classification Using Bloom filters Author: Sarang Dharmapurikar, Haoyu Song, Jonathan Turner, John Lockwood Publisher: Architecture for networking.

On-chip bits per rule: .For NLTSS,

Off-chip bits per item: .For NLTSS,

Average memory consumptionNLTSS: 32 bytesNLTMCL: 45 bytes

Memory Requirement

8#

##640

rules

prefixesrulesm g

8#

#144#

rule

bprefixesrulem gf

1g

1g

Page 17: Fast Packet Classification Using Bloom filters Author: Sarang Dharmapurikar, Haoyu Song, Jonathan Turner, John Lockwood Publisher: Architecture for networking.

Throughput Pipeline

1st stage: LPM 2nd stage: rule lookup

.

. .

.

ondpacketsp

Rlpm

sec/4,2max

10300 6

7272gNLTMCNLTSSlpm borb

Clock rate

LPM stage,144 bits/rule,Burst length: 72 bits

Rule lookup stage

bitsgWbNLTSS 363622

bitsgbgNLTMC 3636634

Page 18: Fast Packet Classification Using Bloom filters Author: Sarang Dharmapurikar, Haoyu Song, Jonathan Turner, John Lockwood Publisher: Architecture for networking.