Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

netstat(1)

packetfilter(4)

pfconfig(8c)

pstat(8)

pfstat(8)

Name

pfstat − print packet filter status information

Syntax

pfstat [ −cdfkpqsv01234567 ] [ system [ corefile ] ]

Description

The pfstat command interprets the data structures of the packet filter driver packetfilter(.). If system is given, the required namelist is taken from there; otherwise, it is taken from /vmunix. If corefile is given, the data structures are sought there, otherwise in /dev/kmem. (If corefile is a core dump, the −k option must be given.)

Options

If no options are given, then all are assumed (except for the verbose option, −v ).

cCounts.  Displays various counts (per ethernet unit) including number of packets sent and received, the number of packets dropped due to full input queues, the number of packets not wanted by any filter, and the number of packets missed by the interface. 

dDescriptors.  Displays OpenDescriptors for each minor device. 

fFilters.  Displays packet filters for each minor device. 

kSpecifies the corefile is a crash dump, not a running system’s /dev/kmem.

pParameters.  Displays device parameters including device type, header and address lengths, maximum transmission units (MTU), and interface and broadcast.  addresses. 

qQueueElements.  Displays the QueueElements. 

sScavenger.  Displays the FreeQueue and Scavenger statistics. 

vVerbose.  Displays information for minor devices not actually in use and complete queue information, only if this flag is given. 

<digit>Limits output to information about specified units. If no digits are given, all units are displayed. 

Output Format

This section describes the information displayed in the output of the pfstat command under the headings AllDescriptors, Filters, and QueueElts.

AllDescriptors

#Minor device number for open descriptor. 

LOCDescriptor location. 

LINK-QUEUEForward link to other descriptors. 

STATEBlank, or one of:

waitwaiting for input, indefinite wait

timedwaiting for input, timed wait

touthas timed out

WAIT-QUEUEAddresses of “Queue Elements” for waiting packets. 

NQ’DNumber of packets queued for input/maximum for this queue. 

TOUTTimeout duration in clock ticks (if the −v [Verbose] option is not given, then times may be expressed as minutes [with a trailing “m”], hours [with a trailing “h”], or simply “long”, to keep the columns lined up.)

MODEShows which mode bits are set for the minor device; each bit is encoded as a single character:

HENHOLDSIG

BENBATCH

TENTSTAMP

PENPROMISC

NENNONEXCL

?An unknown mode bit is set. 

SIGSignal number to be delivered when a packet arrives. 

PROCProcess to be signaled when a packet arrives. 

PIDProcess id which enabled the signal. 

Filters

LOCLocation of descriptor. 

DROPSCount of “recent” drops for this filter. 

PRIPriority of filter. 

LENLength of filter (in shortwords). 

FILTERSee packetfilter() for interpretation of packet filters.

QueueElts

LOCLocation of queue element. 

LINK-QUEUEForward and backward links. 

COUNTPacket size. 

REFReference count for queue element. 

FLAGSPer-packet flag bits set; each bit is encoded as a single character:

PENSF_PROMISC

BENSF_BROADCAST

MENSF_MULTICAST

TENSF_TRAILER

?An unknown flag bit is set. 

DROPCount of packets dropped between the time previous packet was queued and the time this packet was queued. 

TIMEApproximate time this packet was received. 

Restrictions

Some of the output is a bit cramped to fit on an 80-character line.  It should be possible to get a less verbose but more readable listing. 

Since things happen quickly, it is not likely that pfstat will provide a consistent view of a running system. It is mostly useful for analyzing static or slowly-varying problems, not transient ones.

Files

/vmunix Namelist

/dev/kmem Default source of tables

See Also

netstat(1), packetfilter(4), pfconfig(8c), pstat(8)

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026