Profiling and Optimization of Software-Base  Network-Analysis Applications Loris Degioanni, Mario Baldi, Fulvio Risso, and...
Introduction <ul><li>The needs of high-speeds networking grows very fast </li></ul><ul><li>Hardware solutions </li></ul><u...
Motivation <ul><li>Improving the overall performance of network analysis tool is still open issue </li></ul><ul><li>The bi...
Related Work <ul><li>Packet Filtering </li></ul><ul><ul><li>CSPF (CMU/Stanford Packet Filter) : filtering virtual machine ...
Packet Capture Architecture
Unoptimized Packet Processing Cost <ul><li>To increase performance we need: </li></ul><ul><li>Reduce timestamp costs </li>...
Optimized Packet Processing Costs <ul><li>To increase performance we need: </li></ul><ul><li>Hardware-based timestamp </li...
Packet capture performance and high speed networks (Single CPU) Notes: - min packet size: 84 bytes (64 bytes + 8 Preambol ...
For doing “simple elaboration”... <ul><li>Software-only  packet capture is OK at  GE  with  real  traffic </li></ul><ul><u...
Conclusions <ul><li>Software optimizations are still possible, despite these technologies are considered mature </li></ul>...
Upcoming SlideShare
Loading in …5
×

Profiling And Optimization Of Software Base Network Analysis Applications

714 views

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
714
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
8
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Profiling And Optimization Of Software Base Network Analysis Applications

  1. 1. Profiling and Optimization of Software-Base Network-Analysis Applications Loris Degioanni, Mario Baldi, Fulvio Risso, and Gianluca Varenni Presented by: Hargyo T. Nugroho Computer Network & System Research Laboratory
  2. 2. Introduction <ul><li>The needs of high-speeds networking grows very fast </li></ul><ul><li>Hardware solutions </li></ul><ul><ul><li>Usually expensive </li></ul></ul><ul><ul><li>Difficult to deploy </li></ul></ul><ul><ul><li>Low degree of flexibility </li></ul></ul><ul><ul><li>Performs better </li></ul></ul><ul><li>Real-time software solutions (usually implemented as libraries libpcap, winpcap) </li></ul>
  3. 3. Motivation <ul><li>Improving the overall performance of network analysis tool is still open issue </li></ul><ul><li>The biggest problem : only focus on some specific components of traffic analysis </li></ul><ul><li>This work identifies the components involved in network analysis and measures their relative weight </li></ul>
  4. 4. Related Work <ul><li>Packet Filtering </li></ul><ul><ul><li>CSPF (CMU/Stanford Packet Filter) : filtering virtual machine (virtual cpu, register,etc) </li></ul></ul><ul><ul><li>BPF : improves CSPF by limiting the number of copies packets undergo and by defining better virtual processor </li></ul></ul><ul><ul><li>MPF, PathFinder, DPF, BPF+ </li></ul></ul><ul><li>Packet classification </li></ul><ul><li>Buffering and copying  only few  </li></ul>
  5. 5. Packet Capture Architecture
  6. 6. Unoptimized Packet Processing Cost <ul><li>To increase performance we need: </li></ul><ul><li>Reduce timestamp costs </li></ul><ul><li>Reduce tap processing costs </li></ul><ul><li>Reduce 1 st copy cost </li></ul><ul><li>Improve filtering </li></ul>Current Winpcap 3.0 overhead in clock cycles Total overhead: 5680 clock cycles
  7. 7. Optimized Packet Processing Costs <ul><li>To increase performance we need: </li></ul><ul><li>Hardware-based timestamp </li></ul><ul><li>Avoid NIC driver and OS-related costs </li></ul><ul><li>Shared buffer (memcopy overhead) </li></ul>Current Winpcap 3.0 overhead in clock cycles Total overhead: 3164 clock cycles
  8. 8. Packet capture performance and high speed networks (Single CPU) Notes: - min packet size: 84 bytes (64 bytes + 8 Preambol + 1 Start Frame Delimiter + 12 Inter Packet Gap) - “real” traffic: 2500 packets for each 10Mbps of bandwidth (the table takes into account 3750 packets (i.e. +50%) for each 10Mbps )
  9. 9. For doing “simple elaboration”... <ul><li>Software-only packet capture is OK at GE with real traffic </li></ul><ul><ul><li>> 5000 clock cycles available </li></ul></ul><ul><li>Simple acceleration may be OK at 10GE with real traffic </li></ul><ul><ul><li>> 500 clock cycles </li></ul></ul><ul><li>More accurate software-based elaboration may be obtained through SMP machines </li></ul><ul><ul><li>One CPU captures packets </li></ul></ul><ul><ul><li>The other processes them </li></ul></ul><ul><li>Warning </li></ul><ul><ul><li>At high speed we must find a way to aggregate results </li></ul></ul>
  10. 10. Conclusions <ul><li>Software optimizations are still possible, despite these technologies are considered mature </li></ul><ul><ul><li>Most important improvement due to the optimization of the whole architecture </li></ul></ul><ul><ul><li>Very limited improvement due when doing “academic” optimization </li></ul></ul><ul><ul><ul><li>Filtering, shared buffer </li></ul></ul></ul><ul><li>Results </li></ul><ul><ul><li>Gigabit speed is feasible with standard hardware </li></ul></ul><ul><ul><li>Some simple hardware-based speedtup may ba enough for 10G speed </li></ul></ul>

×