3. SYSTEM EVALUATION
In this section we detail the system deployment and performance
evaluation.
3.1 Deployment and Performance
We deploy the entire system to monitor two backbone OC-48
links, described in 2. These links represent a well utilized peering
point of Sprint’s backbone network with another tier 1 ISP, in the
west coast of United States.
We use a CMON [13] passive monitoring node on a PC equipped
with DAG 4.3 optical packet capture card [1] for each link. CMON’s
flow classifier sets an active timeout period of 1 minute, and exports
flows through sockets to the Detector PC. On the Detector
PC Flow-daemon and TAPS run as separate processes. These PCs
have a typical 2U rack server configuration, with dual processors of
2.5Ghz, 4GB of memory and 350GByte of hard disk space. They
run Linux with a 2.6 kernel with a Fedora Core 5 distribution.
A common mode of failure is packet or flow dropping, indicating
the system cannot process as fast as traffic arrives. Since the
flow daemon buffer size was set according to the bounds found in
section 2.1, for our set of experiments we were able to stabilize
the system. By observing the logs of CMON, flow daemon and
TAPS, we validated this design choice by ensuring that no flows
were dropped during the » 3 day run of our experiments.
As any scanner classifier, TAPS can produce false positives or
negatives. The question is how severe is this inaccuracy and if it
is acceptable by operators. In [16] we quantify the low false positive
and high detection rate of TAPS, given a data set with ground
truth. Here we point out TAPS’s known weakness in distinguishing
a NAT firewall or proxy from a true scanner, as these false positives
are notoriously difficult to avoid and as yet we do not have
a good solution. However, complimentary deep packet inspection
(DPI) techniques can be applied to our scanner subset to further
verify if an IP is truly malicious. Since DPI is known to be much
more resource intensive, TAPS can feed a DPI process only highly
suspected flows rather than all flows. In the rest of the paper, we
simply focus on the scanners as defined by TAPS and do not revisit
this issue.
3.2 Number of hash functions and accuracy
In order to evaluate the affect on accuracy we ran the system
with three different versions of TAPS, with different number of
hash functions (m = 8;m = 32;m = 256). We denote these as
TAPS 256, TAPS 32 and TAPS 8. All three versions were started
simultaneously, receiving the same flows from Flow Daemon for