Man Linux: Main Page and Category List

flow-tools(1)                                                    flow-tools(1)

NAME

       flow-tools — Tool set for working with NetFlow data.

DESCRIPTION

       Flow-tools  is  library  and  a collection of programs used to collect,
       send, process, and generate reports from NetFlow data.  The  tools  can
       be  used together on a single server or distributed to multiple servers
       for large deployments.  The flow-toools library  provides  an  API  for
       development  of  custom  applications for NetFlow export versions 1,5,6
       and the 14 currently defined version 8 subversions.  A Perl and  Python
       interface have been contributed and are included in the distribution.

       Flow  data  is  collected and stored by default in host byte order, yet
       the files are portable across big and little endian architectures.

       Commands  that  utilize  the  network   use   a   localip/remoteip/port
       designation  for  communication.   "localip" is the IP address the host
       will use as a source for sending or  bind  to  when  receiving  NetFlow
       PDU’s  (ie  the  destination  address of the exporter.  Configuring the
       "localip" to 0 will force the kernel to decide what IP address  to  use
       for  sending  and listen on all IP addresses for receiving.  "remoteip"
       is the destination IP address used for sending or the expected  address
       of  the  source  when  receiving.   If  the  "remoteip"  is  0 then the
       application will accept flows from any source address.  The  "port"  is
       the  UDP  port  number  used  for  sending  or  receiving.   When using
       multicast addresses the localip/remoteip/port is used to represent  the
       source, group, and port respectively.

       Flows  are exported from a router in a number of different configurable
       versions.  A flow is a collection of key fields  and  additional  data.
       The  flow  key  is  {srcaddr, dstaddr, input, output, srcport, dstport,
       prot, ToS}.  Flow-tools supports one export version per file.

       Export versions 1, 5, 6, and 7 all maintain {nexthop,  dPkts,  dOctets,
       First,  Last,  flags},  ie  the next-hop IP address, number of packets,
       number of octets (bytes), start time, end time, and flags such  as  the
       TCP header bits.  Version 5 adds the additional fields {src_as, dst_as,
       src_mask, dst_mask}, ie source AS, destination AS, source network mask,
       and  destination  network  mask.   Version  7  which is specific to the
       Catalyst switches adds in addition to the version 5 fields {router_sc},
       which  is the Router IP address which populates the flow cache shortcut
       in the Supervisor.  Version 6 which  is  not  officially  supported  by
       Cisco  adds in addition to the version 5 fields {in_encaps, out_encaps,
       peer_nexthop}, ie the input and output  interface  encapsulation  size,
       and  the IP address of the next hop within the peer.  Version 1 exports
       do not contain a sequence  number  and  therefore  should  be  avoided,
       although  it  is  safe to store the data as version 1 if the additional
       fields are not used.

       Version 8 IOS NetFlow is a second level flow  cache  that  reduces  the
       data  exported from the router.  There are currently 11 formats, all of
       which provide {dFlows, dOctets, dPkts, First, Last} for the key fields.

         8.1 -  Source and Destination AS, Input and Output interface
         8.2 -  Protocol and Port
         8.3 -  Source Prefix and Input interface
         8.4 -  Destination Prefix and Output interface
         8.5 -  Source/Destination Prefix and Input/Output interface
         8.9 -  8.1 + ToS
         8.10 - 8.2 + ToS
         8.11 - 8.3 + ToS
         8.12 - 8.5 + ToS
         8.13 - 8.2 + ToS
         8.14 - 8.3 + ports + ToS

       Version  8 CatIOS NetFlow appears to be a less fine grained first level
       flow cache.

         8.6 - Destination IP, ToS, Marked ToS,
         8.7 - Source/Destination IP, Input/Output interface, ToS, Marked ToS,
         8.8 - Source/Destination IP, Source/Destination Port,
               Input/Output interface, ToS, Marked ToS,

       The following programs are included in the flow-tools distribution.

       flow-capture - Collect, compress, store,  and  manage  disk  space  for
       exported flows from a router.

       flow-cat - Concatenate flow files.  Typically flow files will contain a
       small window of 5 or 15 minutes of exports.  Flow-cat can  be  used  to
       append files for generating reports that span longer time periods.

       flow-fanout  -  Replicate  NetFlow  datagrams  to  unicast or multicast
       destinations.  Flow-fanout is used to  facilitate  multiple  collectors
       attached to a single router.

       flow-report  - Generate reports for NetFlow data sets.  Reports include
       source/destination IP pairs, source/destination AS,  and  top  talkers.
       Over 50 reports are currently supported.

       flow-tag  - Tag flows based on IP address or AS #.  Flow-tag is used to
       group flows by customer network.  The tags can later be used with flow-
       fanout or flow-report to generate customer based traffic reports.

       flow-filter  -  Filter  flows based on any of the export fields.  Flow-
       filter is used in-line with other programs to generate reports based on
       flows matching filter expressions.

       flow-import - Import data from ASCII or cflowd format.

       flow-export - Export data to ASCII or cflowd format.

       flow-send - Send data over the network using the NetFlow protocol.

       flow-receive  -  Receive  exports  using  the  NetFlow protocol without
       storing to disk like flow-capture.

       flow-gen - Generate test data.

       flow-dscan - Simple tool for detecting some types of  network  scanning
       and Denial of Service attacks.

       flow-merge - Merge flow files in chronoligical order.

       flow-xlate - Perform translations on some flow fields.

       flow-expire -  Expire flows using the same policy of flow-capture.

       flow-header - Display meta information in flow file.

       flow-split  -  Split flow files into smaller files based on size, time,
       or tags.

AUTHOR

       Mark Fullmer maf@splintered.net

       flow-merge by Larry Lidz ellidz@eridu.uchicago.edu

       Patches and other contribitions by a list too long to mention here.

       flow-tools is avalable at
        (link to URL http://www.splintered.net/sw/flow-tools) .

       A mailing list is maintained at flow-tools@splintered.net

SEE ALSO

       flow-capture(1) flow-cat(1) flow-dscan(1) flow-expire(1) flow-export(1)
       flow-fanout(1)   flow-filter(1)   flow-nfilter(1)   flow-gen(1)   flow-
       header(1) flow-import(1)  flow-merge(1)  flow-print(1)  flow-receive(1)
       flow-report(1)   flow-send(1)  flow-split(1)  flow-stat(1)  flow-tag(1)
       flow-xlate(1)

                                                                 flow-tools(1)