.\" Automatically generated by Pod::Man 4.07 (Pod::Simple 3.32) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .if !\nF .nr F 0 .if \nF>0 \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "LTPMETER 1" .TH LTPMETER 1 "2016-07-07" "perl v5.24.1" "LTP executables" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" ltpmeter \- LTP daemon task for aggregating and segmenting transmission blocks .SH "SYNOPSIS" .IX Header "SYNOPSIS" \&\fBltpmeter\fR \fIremote_engine_nbr\fR .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fBltpmeter\fR is a background \*(L"daemon\*(R" task that manages the presentation of \&\s-1LTP\s0 segments to link service output tasks. Each \*(L"span\*(R" of \s-1LTP\s0 data interchange between the local \s-1LTP\s0 engine and a neighboring \s-1LTP\s0 engine requires its own \&\fBltpmeter\fR task. All \fBltpmeter\fR tasks are spawned automatically by \&\fBltpadmin\fR in response to the 's' command that starts operation of the \&\s-1LTP\s0 protocol, and they are all terminated by \fBltpadmin\fR in response to an \&'x' (\s-1STOP\s0) command. .PP \&\fBltpmeter\fR 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 \*(L"buffer empty\*(R" semaphore to unblock the client service task \*(-- nominally \fBltpclo\fR, the \&\s-1LTP\s0 convergence layer output task for Bundle Protocol \*(-- as necessary). .PP \&\fBltpmeter\fR 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 \*(L"buffer full\*(R" semaphore is given when \s-1ION \&\s0(either the \fIltp_send()\fR function or the \fBltpclock\fR daemon) determines that one of these conditions is true; \fBltpmeter\fR simply waits for this semaphore to be given. .PP The initiation of a new session may also be blocked: the total number of transmission sessions that the local \s-1LTP\s0 engine may have open at a single time is limited (this is \s-1LTP\s0 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 \*(L"session\*(R" semaphore, which is given whenever a session is completed or canceled. .SH "EXIT STATUS" .IX Header "EXIT STATUS" .ie n .IP """0""" 4 .el .IP "``0''" 4 .IX Item "0" \&\fBltpmeter\fR terminated normally, for reasons noted in the \fBion.log\fR file. If this termination was not commanded, investigate and solve the problem identified in the log file and use \fBltpadmin\fR to restart \fBltpmeter\fR. .ie n .IP """1""" 4 .el .IP "``1''" 4 .IX Item "1" \&\fBltpmeter\fR terminated abnormally, for reasons noted in the \fBion.log\fR file. Investigate and solve the problem identified in the log file, then use \&\fBltpadmin\fR to restart \fBltpmeter\fR. .SH "FILES" .IX Header "FILES" No configuration files are needed. .SH "ENVIRONMENT" .IX Header "ENVIRONMENT" No environment variables apply. .SH "DIAGNOSTICS" .IX Header "DIAGNOSTICS" The following diagnostics may be issued to the \fBion.log\fR log file: .IP "ltpmeter can't initialize \s-1LTP.\s0" 4 .IX Item "ltpmeter can't initialize LTP." \&\fBltpadmin\fR has not yet initialized \s-1LTP\s0 protocol operations. .IP "No such engine in database." 4 .IX Item "No such engine in database." \&\fIremote_engine_nbr\fR is invalid, or the applicable span has not yet been added to the \s-1LTP\s0 database by \fBltpadmin\fR. .IP "ltpmeter task is already started for this engine." 4 .IX Item "ltpmeter task is already started for this engine." Redundant initiation of \fBltpmeter\fR. .IP "ltpmeter can't start new session." 4 .IX Item "ltpmeter can't start new session." An unrecoverable database error was encountered. \fBltpmeter\fR terminates. .IP "Can't take bufClosedSemaphore." 4 .IX Item "Can't take bufClosedSemaphore." An unrecoverable database error was encountered. \fBltpmeter\fR terminates. .IP "Can't create extents list." 4 .IX Item "Can't create extents list." An unrecoverable database error was encountered. \fBltpmeter\fR terminates. .IP "Can't post ExportSessionStart notice." 4 .IX Item "Can't post ExportSessionStart notice." An unrecoverable database error was encountered. \fBltpmeter\fR terminates. .IP "Can't finish session." 4 .IX Item "Can't finish session." An unrecoverable database error was encountered. \fBltpmeter\fR terminates. .SH "BUGS" .IX Header "BUGS" Report bugs to .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIltpadmin\fR\|(1), \fIltpclock\fR\|(1)