Provided by: ion_3.2.1+dfsg-1.1_amd64 bug

NAME

       ltpmeter - LTP daemon task for aggregating and segmenting transmission blocks

SYNOPSIS

       ltpmeter remote_engine_nbr

DESCRIPTION

       ltpmeter is a background "daemon" task that manages the presentation of LTP segments to link service
       output tasks.  Each "span" of LTP data interchange between the local LTP engine and a neighboring LTP
       engine requires its own ltpmeter task.  All ltpmeter tasks are spawned automatically by ltpadmin in
       response to the 's' command that starts operation of the LTP protocol, and they are all terminated by
       ltpadmin in response to an 'x' (STOP) command.

       ltpmeter waits until its span's current transmission block (the data to be transmitted during the
       transmission session that is currently being constructed) is ready for transmission, then divides the
       data in the span's block buffer into segments and enqueues the segments for transmission by the span's
       link service output task (giving the segments semaphore to unblock the link service output task as
       necessary), then reinitializes the span's block buffer and starts another session (giving the "buffer
       empty" semaphore to unblock the client service task -- nominally ltpclo, the LTP convergence layer output
       task for Bundle Protocol -- as necessary).

       ltpmeter determines that the current transmission block is ready for transmission by waiting until either
       (a) the aggregate size of all service data units in the block's buffer exceeds the aggregation size limit
       for this span or (b) the length of time that the first service data unit in the block's buffer has been
       awaiting transmission exceeds the aggregation time limit for this span.  The "buffer full" semaphore is
       given when ION (either the ltp_send() function or the ltpclock daemon) determines that one of these
       conditions is true; ltpmeter simply waits for this semaphore to be given.

       The initiation of a new session may also be blocked: the total number of transmission sessions that the
       local LTP engine may have open at a single time is limited (this is LTP flow control), and while the
       engine is at this limit no new sessions can be started.  Availability of a session from the session pool
       is signaled by the "session" semaphore, which is given whenever a session is completed or canceled.

EXIT STATUS

       "0" ltpmeter terminated normally, for reasons noted in the ion.log file.  If this termination was not
           commanded, investigate and solve the problem identified in the log file and use ltpadmin to restart
           ltpmeter.

       "1" ltpmeter terminated abnormally, for reasons noted in the ion.log file.  Investigate and solve the
           problem identified in the log file, then use ltpadmin to restart ltpmeter.

FILES

       No configuration files are needed.

ENVIRONMENT

       No environment variables apply.

DIAGNOSTICS

       The following diagnostics may be issued to the ion.log log file:

       ltpmeter can't initialize LTP.
           ltpadmin has not yet initialized LTP protocol operations.

       No such engine in database.
           remote_engine_nbr is invalid, or the applicable span has not yet been added to the LTP database by
           ltpadmin.

       ltpmeter task is already started for this engine.
           Redundant initiation of ltpmeter.

       ltpmeter can't start new session.
           An unrecoverable database error was encountered.  ltpmeter terminates.

       Can't take bufClosedSemaphore.
           An unrecoverable database error was encountered.  ltpmeter terminates.

       Can't create extents list.
           An unrecoverable database error was encountered.  ltpmeter terminates.

       Can't post ExportSessionStart notice.
           An unrecoverable database error was encountered.  ltpmeter terminates.

       Can't finish session.
           An unrecoverable database error was encountered.  ltpmeter terminates.

BUGS

       Report bugs to <ion-bugs@korgano.eecs.ohiou.edu>

SEE ALSO

       ltpadmin(1), ltpclock(1)