LNSTAT(8)                                               LNSTAT(8)

     NAME
          lnstat - unified linux network statistics

     SYNOPSIS
          lnstat [options]

     DESCRIPTION
          This manual page documents briefly the lnstat command.

          lnstat is a generalized and more feature-complete replace-
          ment for the old rtstat program. It is commonly used to
          periodically print a selection of statistical values
          exported by the kernel.  In addition to routing cache
          statistics, it supports any kind of statistics the linux
          kernel exports via a file in /proc/net/stat/.

          Each file in /proc/net/stat/ contains a header line listing
          the column names.  These names are used by lnstat as keys
          for selecting which statistics to print. For every CPU pre-
          sent in the system, a line follows which lists the actual
          values for each column of the file. lnstat sums these values
          up (which in fact are counters) before printing them. After
          each interval, only the difference to the last value is
          printed.

          Files and columns may be selected by using the -f and -k
          parameters. By default, all columns of all files are
          printed.

     OPTIONS
          lnstat supports the following options.

          -h, --help
               Show summary of options.

          -V, --version
               Show version of program.

          -c, --count <count>
               Print <count> number of intervals.

          -d, --dump
               Dump list of available files/keys.

          -f, --file <file>
               Statistics file to use, may be specified multiple
               times. By default all files in /proc/net/stat are
               scanned.

          -i, --interval <intv>

     Page 1                       Plan 9             (printed 5/25/22)

     LNSTAT(8)                                               LNSTAT(8)

               Set interval to 'intv' seconds.

          -j, --json
               Display results in JSON format

          -k, --keys k,k,k,...
               Display only keys specified. Each key k is of the form
               [file:]key. If <file> is given, the search for the
               given key is limited to that file. Otherwise the first
               file containing the searched key is being used.

          -s, --subject [0-2]
               Specify display of subject/header. '0' means no header
               at all, '1' prints a header only at start of the pro-
               gram and '2' prints a header every 20 lines.

          -w, --width n,n,n,...
               Width for each field.

     USAGE EXAMPLES
          # lnstat -d
               Get a list of supported statistics files.

          # lnstat -
               k arp_cache:entries,rt_cache:in_hit,arp_cache:destroys
               Select the specified files and keys.

          # lnstat -i 10
               Use an interval of 10 seconds.

          # lnstat -f ip_conntrack
               Use only the specified file for statistics.

          # lnstat -s 0
               Do not print a header at all.

          # lnstat -s 20
               Print a header at start and every 20 lines.

          # lnstat -c -1 -i 1
               Display statistics for keys entries, in_hit and
               in_slow_tot of field rt_cache every second.

     FILES
          /proc/net/stat/arp_cache, /proc/net/stat/ndisc_cache
               Statistics around neighbor cache and ARP. arp_cache is
               for IPv4, ndisc_cache is the same for IPv6.

               entries Number of entries in the neighbor table.

               allocs How many neighbor entries have been allocated.

     Page 2                       Plan 9             (printed 5/25/22)

     LNSTAT(8)                                               LNSTAT(8)

               destroys How many neighbor entries have been removed.

               hash_grows How often the neighbor (hash) table was
               increased.

               lookups How many lookups were performed.

               hits How many lookups were successful.

               res_failed How many neighbor lookups failed.

               rcv_probes_mcast How many multicast neighbor solicita-
               tions were received. (IPv6 only.)

               rcv_probes_ucast How many unicast neighbor solicita-
               tions were received. (IPv6 only.)

               periodic_gc_runs How many garbage collection runs were
               executed.

               forced_gc_runs How many forced garbage collection runs
               were executed. Happens when adding an entry and the
               table is too full.

               unresolved_discards How many neighbor table entries
               were discarded due to lookup failure.

               table_fulls Number of table overflows. Happens if table
               is full and forced GC run (see forced_gc_runs) has
               failed.

          /proc/net/stat/ip_conntrack, /proc/net/stat/nf_conntrack
               Conntrack related counters. ip_conntrack is for back-
               wards compatibility with older userspace only and shows
               the same data as nf_conntrack.

               entries Number of entries in conntrack table.

               searched Number of conntrack table lookups performed.

               found Number of searched entries which were successful.

               new Number of conntrack entries added which were not
               expected before.

               invalid Number of packets seen which can not be
               tracked.

               ignore Number of packets seen which are already con-
               nected to a conntrack entry.

     Page 3                       Plan 9             (printed 5/25/22)

     LNSTAT(8)                                               LNSTAT(8)

               delete Number of conntrack entries which were removed.

               delete_list Number of conntrack entries which were put
               to dying list.

               insert Number of entries inserted into the list.

               insert_failed Number of entries for which list inser-
               tion was attempted but failed (happens if the same
               entry is already present).

               drop Number of packets dropped due to conntrack fail-
               ure. Either new conntrack entry allocation failed, or
               protocol helper dropped the packet.

               early_drop Number of dropped conntrack entries to make
               room for new ones, if maximum table size was reached.

               icmp_error Number of packets which could not be tracked
               due to error situation. This is a subset of invalid.

               expect_new Number of conntrack entries added after an
               expectation for them was already present.

               expect_create Number of expectations added.

               expect_delete Number of expectations deleted.

               search_restart Number of conntrack table lookups which
               had to be restarted due to hashtable resizes.

          /proc/net/stat/rt_cache
               Routing cache statistics.

               entries Number of entries in routing cache.

               in_hit Number of route cache hits for incoming packets.
               Deprecated since IP route cache removal, therefore
               always zero.

               in_slow_tot Number of routing cache entries added for
               input traffic.

               in_slow_mc Number of multicast routing cache entries
               added for input traffic.

               in_no_route Number of input packets for which no rout-
               ing table entry was found.

               in_brd Number of matched input broadcast packets.

     Page 4                       Plan 9             (printed 5/25/22)

     LNSTAT(8)                                               LNSTAT(8)

               in_martian_dst Number of incoming martian destination
               packets.

               in_martian_src Number of incoming martian source pack-
               ets.

               out_hit Number of route cache hits for outgoing pack-
               ets. Deprecated since IP route cache removal, therefore
               always zero.

               out_slow_tot Number of routing cache entries added for
               output traffic.

               out_slow_mc Number of multicast routing cache entries
               added for output traffic.

               gc_total Total number of garbage collection runs. Dep-
               recated since IP route cache removal, therefore always
               zero.

               gc_ignored Number of ignored garbage collection runs
               due to minimum GC interval not reached and routing
               cache not full. Deprecated since IP route cache
               removal, therefore always zero.

               gc_goal_miss Number of garbage collector goal misses.
               Deprecated since IP route cache removal, therefore
               always zero.

               gc_dst_overflow Number of destination cache overflows.
               Deprecated since IP route cache removal, therefore
               always zero.

               in_hlist_search Number of hash table list traversals
               for input traffic. Deprecated since IP route cache
               removal, therefore always zero.

               out_hlist_search Number of hash table list traversals
               for output traffic. Deprecated since IP route cache
               removal, therefore always zero.

     SEE ALSO
          ip(8)

     AUTHOR
          lnstat was written by Harald Welte <laforge@gnumonks.org>.

          This manual page was written by Michael Prokop
          <mika@grml.org> for the Debian project (but may be used by
          others).

     Page 5                       Plan 9             (printed 5/25/22)