19
ClassBench: A Packet C lassification Benchmar k David E. Taylor, Jonathan S. Turner Washington University in Sain t Louis Presented by Jian-Meng Yang

ClassBench: A Packet Classification Benchmark David E. Taylor, Jonathan S. Turner Washington University in Saint Louis Presented by Jian-Meng Yang

Embed Size (px)

Citation preview

Page 1: ClassBench: A Packet Classification Benchmark David E. Taylor, Jonathan S. Turner Washington University in Saint Louis Presented by Jian-Meng Yang

ClassBench: A Packet Classification Benchmark

David E. Taylor, Jonathan S. TurnerWashington University in Saint Louis

Presented by Jian-Meng Yang

Page 2: ClassBench: A Packet Classification Benchmark David E. Taylor, Jonathan S. Turner Washington University in Saint Louis Presented by Jian-Meng Yang

Background

Packet classification is an enabling technology A classifier example (5 tuples)

[Figure from Professor Jonathan Chao’s book]

Page 3: ClassBench: A Packet Classification Benchmark David E. Taylor, Jonathan S. Turner Washington University in Saint Louis Presented by Jian-Meng Yang

Background A packet classifier must compare hea

der fields of every incoming packet To accelerate search time or reduce st

orage requirements No standard performance evaluation

tools ClassBench is presented !

Page 4: ClassBench: A Packet Classification Benchmark David E. Taylor, Jonathan S. Turner Washington University in Saint Louis Presented by Jian-Meng Yang

ClassBench A suite of tools for benchmarking

packet classification algorithms and devices.

Consists of three tools: Filter Set Analyzer Filter Set Generator Trace Generator

Page 5: ClassBench: A Packet Classification Benchmark David E. Taylor, Jonathan S. Turner Washington University in Saint Louis Presented by Jian-Meng Yang

ClassBench Architecture

General approach Construct a set of

benchmark parameter files

Generate a synthetic filter set

Generate a sequence of packet headers

Page 6: ClassBench: A Packet Classification Benchmark David E. Taylor, Jonathan S. Turner Washington University in Saint Louis Presented by Jian-Meng Yang

Analysis of Seed Filter Sets

Understanding Filter Composition We can view a filter as having two

major components: An address prefix pair An application specification

Address prefix pair Identifies the communicating subnets by

specifying a source address prefix and a destination address prefix.

Page 7: ClassBench: A Packet Classification Benchmark David E. Taylor, Jonathan S. Turner Washington University in Saint Louis Presented by Jian-Meng Yang

Analysis of Seed Filter Sets Application Specification

Identifies a specific application session by specifying the transport protocol, source port number, and destination port number.

Address prefix pair The speed and efficiency of several

longest prefix matching and packet classification algorithms depend upon

The number of unique prefix lengths The distribution of filters across those

unique values.

Page 8: ClassBench: A Packet Classification Benchmark David E. Taylor, Jonathan S. Turner Washington University in Saint Louis Presented by Jian-Meng Yang

Analysis of Seed Filter Sets The number of unique prefix lengths

acl: access control list

fw: firewall

ipc: IP chain

Page 9: ClassBench: A Packet Classification Benchmark David E. Taylor, Jonathan S. Turner Washington University in Saint Louis Presented by Jian-Meng Yang

Analysis of Seed Filter Sets The distribution of filters across those unique v

alues Real filter sets have unique prefix pair distributions t

hat reflect the types of filters contained in the filter set.

acl5:

Page 10: ClassBench: A Packet Classification Benchmark David E. Taylor, Jonathan S. Turner Washington University in Saint Louis Presented by Jian-Meng Yang

Analysis of Seed Filter Sets 2 Distributions to facilitate construction

of synthetic filter sets that accurately model seed filter sets:

Branching Probability Distribution For each level in the tree, we compute the probabi

lity that a node has one child or two children. Skew Distribution

For nodes with TWO children, we compute skew, which is a relative measure of the “weights” of the left and right subtrees of the node.

Weight: The number of filters specifying prefixes in the subtree

Page 11: ClassBench: A Packet Classification Benchmark David E. Taylor, Jonathan S. Turner Washington University in Saint Louis Presented by Jian-Meng Yang

Analysis of Seed Filter Sets Skew Distribution

L

heavy be the subtree with the largest weight light be the subtree with equal or less weight

The Black nodes denote a prefix specified by a single filter.

The subtrees denotedby triangles with associated weight.

( )1 Light

Heavy

WeightSkew

Weight

Page 12: ClassBench: A Packet Classification Benchmark David E. Taylor, Jonathan S. Turner Washington University in Saint Louis Presented by Jian-Meng Yang

Analysis of Seed Filter Sets

Branching Probability

Distribution

Skew Distribution

Page 13: ClassBench: A Packet Classification Benchmark David E. Taylor, Jonathan S. Turner Washington University in Saint Louis Presented by Jian-Meng Yang

Analysis of Seed Filter Sets Application Specification

3 useful characteristics Protocol:

Page 14: ClassBench: A Packet Classification Benchmark David E. Taylor, Jonathan S. Turner Washington University in Saint Louis Presented by Jian-Meng Yang

Analysis of Seed Filter Sets Port Ranges

WC, wildcard HI, ephemeral user port range [1024 : 65535] LO, well-known system port range [0 : 1023] AR, arbitrary range EM, exact match

Port Pair Class The structure of source and destination port

range pairs is a key point of interest for both modeling real filter sets and designing efficient search algorithms.

Page 15: ClassBench: A Packet Classification Benchmark David E. Taylor, Jonathan S. Turner Washington University in Saint Louis Presented by Jian-Meng Yang

Parameter Files

Given a seed filter set, the Filter Set Analyzer generates a parameter file.

Parameter files contain Statistics and probability distributions th

at allow the Filter Set Generator to produce a synthetic filter set.

Page 16: ClassBench: A Packet Classification Benchmark David E. Taylor, Jonathan S. Turner Washington University in Saint Louis Presented by Jian-Meng Yang

Parameter Files

Parameter files includes Protocol specifications and the

distribution of filters over those values.

Port Pair Class Matrix Prefix pair length

Page 17: ClassBench: A Packet Classification Benchmark David E. Taylor, Jonathan S. Turner Washington University in Saint Louis Presented by Jian-Meng Yang

Synthetic Filter Set Generator

High-level input parameters size: Target size for the synthetic filter

set. smoothing: Controls the number of new address aggregates. Scope: The measure of the number of possible packet headers covered by

the filter.

Page 18: ClassBench: A Packet Classification Benchmark David E. Taylor, Jonathan S. Turner Washington University in Saint Louis Presented by Jian-Meng Yang

Trace Generator

Benchmarking a particular packet classification algorithm or device

We must exercise the algorithm or device using a sequence of synthetic packet headers.

Page 19: ClassBench: A Packet Classification Benchmark David E. Taylor, Jonathan S. Turner Washington University in Saint Louis Presented by Jian-Meng Yang

Comment

It provides the network research scientists a good tool for evaluating their packet classifier performance.

No information about how to get or generate the Seed filter set.

How about the exceptions?