All:

        I append another document that comments not so positively
        on Linux's packet capture abilities. 

        I append how a company tested NFR on OpenBSD, BSD/OS, Solaris
        and Linux, and what it reported. I append a heavily
        edited document (so that it is easier for you to read the
        relevant portions (BSD, BPF, Linux, and LSF). 

        The actual document is at:
        http://www.anzen.com/products/nfr/testing/
        
        Going by this document, we seem to get more for our investment
        with OpenBSD on Intel, rather than Linux on Intel. 

        What do you have to say about this company's testing?
        Do their February 1999 comments still hold?
        Have they missed something, that could have improved
        the performance of Linux?

        Please let me know. Your inputs would help my organisation      
        choose an appropriate O/S for our packet capture application.

        Thanks.

Hui             
--      
http://www.anzen.com/products/nfr/testing/
Caveat: Might have missed marking all the deleted portions with "<snip>"
--
                          NFR Performance Testing
                                      
                           Dug Song and Matt Undy
                           Anzen Computing, Inc.
                            Ann Arbor, MI 48106
                         {dugsong,mundy}@anzen.com
                               February, 1999
                                      
Abstract

   In this paper, we attempt to loosely characterize NFR performance on
   various operating systems, comparing freely available and proprietary
   sniffing technology. Our results should be helpful in determining
   appropriate hardware/software configurations for successful NFR
   deployment.
  
<snip>
 
2. Methodology

  2.1. Hardware, software, and OS configuration
  
   The testbed setup consisted of a fast Ethernet (100baseT) closed
   network with the following five participants:
     * packet sender: 400 Mhz Pentium with 128 MB RAM running OpenBSD 2.4
     * three hardware-identical NFRs: 180 Mhz Pentium Pro with 80 MB RAM
       running OpenBSD 2.4, BSD/OS 3.1, and Redhat Linux 5.1 (with 2.2.x
       kernel)
     * a comparable (?) Sun hardware NFR: 143 Mhz Ultrasparc with 128 MB
       RAM running Solaris 2.7
       
<snip> 

  2.3. Fast vs. Slow sniffing
  
   The commercial version of NFR includes proprietary fast sniffing
   modifications for BSD 4.4-derived operating systems (e.g. BSD/OS,
   OpenBSD) which read packets without performing additional memory
   copies. Slow sniffing on these systems uses the standard Berkeley
   Packet Filter, with increased buffer sizes. [MJ93]
   
   To implement fast sniffing on Solaris, we used an experimental membuf
   kernel module provided by Casper Dik [DIK99], which at the time
   provided the fastest sniffing available on that platform. The stock
   Solaris bufmod module provided the slow sniffing technology.
   
   On Linux, we used the Linux Socket Filter support in the Linux 2.2
   kernel [TA99] to implement fast sniffing, as opposed to slow sniffing
   (without the LSF).
   
<snip> 
   
3. Results

   With the slower traffic, we found differences between slow and fast
   sniffing on each of the platforms to be roughly even - somewhere on
   the order of 20% improvement with fast sniffing enabled. But even with
   this modest traffic load, all platforms in slow mode experienced
   drops. Only the BSDs were able to pick up 100% of the traffic in fast
   mode.
   
   With increased traffic (47 Mbps or fast Ethernet running at roughly
   50% load), the gap widens. Fast mode on the BSDs comes out far ahead
   of the pack, with Linux sniffing less than 10% of the traffic on the
   wire, and Solaris, at its best, doing roughly 70%. Still, Solaris'
   membuf fast mode shows tremendous improvement over the stock Solaris
   bufmod, about 3 times better.
   
<snip> 

  3.2. NFR
  
   For the NFR tests, we used the slower traffic to allow for a more
   representative picture of performance differences between the OSs
   (since Linux lags so far behind with the faster traffic).
   
   Without any filters running, NFR in fast mode on the BSDs still
   manages to capture all the traffic on the wire, with fast mode Solaris
   a close second. IP fragment and TCP session reassembly don't seem to
   cost too much - at least with the data sets we used.
   
   When the default NFR filter set is enabled, things get even flatter -
   with the surprising exception of fast mode OpenBSD. At this point, we
   expected performance on the BSDs and Linux to roughly match, due to
   I/O considerations. But OpenBSD in fast mode appears to be the clear
   winner, for reasons we haven't been able to determine yet (yes, our
   results were repeatable!).
   
<snip> 
   
4. Conclusions and Future Work

  4.1. OS choice
  
   Much to the chagrin of Linux users on the NFR mailing lists, we found
   that Linux performs poorly - worst, in fact, among the operating
   systems tested - due to its inefficient packet handling (with or
   without LSF). [AL99] Only Windows NT fared worse in early beta
   testing; NFR has subsequently chosen not to support it as a platform
   for commercial release.
   
   The experimental membuf module for Solaris shows some promise,
   however, and might even make Solaris a contender against the BSDs, if
   run on appropriate hardware. But for almost all environments, it's
   OpenBSD we recommend, based on performance considerations alone.
   
<snip> 
   
5. Acknowledgements

<snip> 
   Casper Dik (Sun security engineer) provided us with an early alpha of
   his membuf module for fast sniffing on Solaris. Tyler Allison provided
   us with the libpcap modifications necessary for NFR to work on Linux
   2.2 with LSF.
   
6. References

   [TA99]
          T. Allison, pcap-linux.c,
          http://www.electricrain.com/~tyler/misc/pcap-linux.c, Feb.
          1999.
<snip> 
          
   [AL99]
          A. Lambeth, "Linux packet capture", [EMAIL PROTECTED] mailing
          list,
          http://www.nfr.net/nfr/mail-archive/nfr-users/1999/Feb/0110.htm
          l, Feb. 1999.
         
<snip> 
--
-
To unsubscribe from this list: send the line "unsubscribe linux-net" in
the body of a message to [EMAIL PROTECTED]

Reply via email to