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

FreeBSD Manual Pages

  
 
  

home | help
NG_PRED1(4)		     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  decompression.
     Only one of them can be connected at the same time, specifying node's oper-
     ation  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 er-
	  ror is detected during decompression, this message is sent by the node
	  to the originator of the NGM_PRED1_CONFIG message that  initiated  the
	  session.   The  receiver should respond by sending a PPP CCP Reset-Re-
	  quest to the peer.

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

     NGM_PRED1_GET_STATS (getstats)
	  This control message obtains statistics for a given hook.  The statis-
	  tics 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 condi-
     tions  between  data packet and ResetAck CCP packet in case of packet loss.
     As result, packet loss can produce bigger performance degradation than sup-
     posed by protocol.

FreeBSD ports 15.quarterly	December 24, 2006		     NG_PRED1(4)

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

home | help