Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
NG_PRED1(4)	       FreeBSD Kernel Interfaces Manual		   NG_PRED1(4)

NAME
     ng_pred1 -- Predictor-1 PPP compression (RFC 1978)	netgraph node type

SYNOPSIS
     #include <sys/types.h>
     #include <netgraph/ng_pred1.h>

DESCRIPTION
     The pred1 node type implements the	Predictor-1 sub-protocols of the Com-
     pression Control Protocol (CCP).

     The node has two hooks, comp for compression and decomp for decompres-
     sion.  Only one of	them can be connected at the same time,	specifying
     node's operation mode.  Typically that hooks would	be connected to	the
     ng_ppp(4) node type hook of the same name.

HOOKS
     This node type supports the following hooks:

     comp    Connection	to ng_ppp(4) compress hook.  Incoming frames are com-
	     pressed and sent back out the same	hook.
     decomp  Connection	to ng_ppp(4) decompress	hook.  Incoming	frames are de-
	     compressed	and sent back out the same hook.

     Only one hook can be connected at the same	time, specifying node's	opera-
     tion mode.

CONTROL	MESSAGES
     This node type supports the generic control messages, plus	the following:

     NGM_PRED1_CONFIG (config)
	  This command resets and configures the node for a session (i.e., for
	  compression or decompression).  This command takes a struct
	  ng_pred1_config as an	argument:

	  struct ng_pred1_config {
		  u_char	  enable;		  /* node enabled */
	  };
	  The enable field enables traffic flow	through	the node.

     NGM_PRED1_RESETREQ	(resetreq)
	  This message contains	no arguments, and is bi-directional.  If an
	  error	is detected during decompression, this message is sent by the
	  node to the originator of the	NGM_PRED1_CONFIG message that initi-
	  ated the session.  The receiver should respond by sending a PPP CCP
	  Reset-Request	to the peer.

	  This message may also	be received by this node type when a CCP Re-
	  set-Request or Reset-Ack is received by the local PPP	entity.	 The
	  node will respond by flushing	its compression	state so the sides can
	  resynchronize.

     NGM_PRED1_GET_STATS (getstats)
	  This control message obtains statistics for a	given hook.  The sta-
	  tistics are returned in struct ng_pred1_stats:

	  struct ng_pred1_stats	{
		  uint64_t	  FramesPlain;
		  uint64_t	  FramesComp;
		  uint64_t	  FramesUncomp;
		  uint64_t	  InOctets;
		  uint64_t	  OutOctets;
		  uint64_t	  Errors;
	  };

     NGM_PRED1_CLR_STATS (clrstats)
	  This control message clears statistics for a given hook.

     NGM_PRED1_GETCLR_STATS (getclrstats)
	  This control message obtains and clears statistics for a given hook.

SHUTDOWN
     This node shuts down upon receipt of a NGM_SHUTDOWN control message, or
     when hook have been disconnected.

SEE ALSO
     netgraph(4), ng_ppp(4), ngctl(8)

     D.	Rand, PPP Predictor Compression	Protocol, RFC 1978.

     W.	Simpson, The Point-to-Point Protocol (PPP), RFC	1661.

AUTHORS
     Alexander Motin <mav@alkar.net>

BUGS
     Due to nature of netgraph PPP implementation there	are possible race con-
     ditions between data packet and ResetAck CCP packet in case of packet
     loss.  As result, packet loss can produce bigger performance degradation
     than supposed by protocol.

FreeBSD	13.0		       December	24, 2006		  FreeBSD 13.0

NAME | SYNOPSIS | DESCRIPTION | HOOKS | CONTROL MESSAGES | SHUTDOWN | SEE ALSO | AUTHORS | BUGS

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=ng_pred1&sektion=4&manpath=FreeBSD+13.2-RELEASE+and+Ports>

home | help