Differences between revisions 5 and 6
Revision 5 as of 2005-01-03 03:17:27
Size: 1776
Editor: GuyHarris
Comment: Edit, note that not all UN*Xes use it, note that it runs atop ONC RPC.
Revision 6 as of 2005-03-31 18:38:58
Size: 1732
Editor: UlfLamping
Comment: fix RPC link
Deletions are marked like this. Additions are marked like this.
Line 11: Line 11:
 * ["UDP"]: KLM uses ["UDP"] as its transport protocol; it runs on top of ["ONC-RPC"] as program 100020. There is no well known UDP port for KLM.  * ["RPC"]: KLM uses ["RPC"] as its transport mechanism; it runs on top of ["RPC"] as program 100020.

Kernel Lock Manager Protocol (KLM)

The KLM protocol is used, in some operating systems, to manage lock requests between the NFS client kernel of a ["NFS"] host and the user space lock manager daemon. This protocol is only used across the loopback interface and will never be seen on a network.


This protocol was developed at the same time as ["NLM"] and is semi-similar to ["NLM"].

Protocol dependencies

  • ["RPC"]: KLM uses ["RPC"] as its transport mechanism; it runs on top of ["RPC"] as program 100020.

Example traffic

XXX - Add example traffic here as plain text or Ethereal screenshot).


The KLM dissector is fully functional.

Preference Settings

There are no preferences for the KLM protocol itself, but since it shares the filehandle structure with ["NFS"] there are some ["NFS"] preferences related to filehandles that do affect the dissection of KLM. BR See ["NFS Preferences"]

Example capture file


Display Filter

A complete list of KLM display filter fields can be found in the [http://www.ethereal.com/docs/dfref/k/klm.html display filter reference]

  • Show only the KLM based traffic:


Capture Filter

You cannot directly filter KLM while capturing. However, if you know the ["UDP"] port used (see above), you can filter on that one. KLM only exists ontop of the loopback interface so one can only capture KLM on a host that allows capturing of loopback.

A KLM specification does not exist, however most unixen do have an interface specification for the protocol in /usr/include/rpcsvc


Kernel_Lock_Manager (last edited 2008-04-12 17:50:21 by localhost)