@node nncp-ack
-@cindex packet acknowledgement
@pindex nncp-ack
@section nncp-ack
$ nncp-ack [@dots{}] 4>&1 >&2 | nncp-rm [@dots{}] -pkt
@end example
-Send acknowledgement of successful @option{PKT} (Base32-encoded hash)
-packet receipt from @option{NODE} node. If no @option{-pkt} is
-specified, then acknowledge all packet in node's @code{rx} spool.
-If @option{-all} is specified, then do that for all nodes.
+Send @ref{ACK, acknowledgement} of successful @option{PKT}
+(Base32-encoded hash) packet receipt from @option{NODE} node. If no
+@option{-pkt} is specified, then acknowledge all packet in node's
+@code{rx} spool. If @option{-all} is specified, then do that for all
+nodes.
That commands outputs list of created encrypted ACK packets
(@code{NODE/PKT}) to @strong{4}th file descriptor. That output can be
passed for example to @command{@ref{nncp-rm}} to remove them after
transmission to not wait for acknowledgement and retransmission.
-
-General workflow with acknowledgement is following, assuming that
-Alice has some outbound packets for Bob:
-
-@itemize
-
-@item Transfer encrypted packets, without deleting them locally:
-
-@example
-alice$ nncp-xfer -keep -tx -node bob /mnt/shared
-@end example
-
-@item On Bob's side retrieve those packets:
-
-@example
-bob$ nncp-xfer -rx /mnt/shared
-@end example
-
-That will also check if copied packets checksum is not mismatched.
-
-@item Create ACK packets of received ones, saving the list of encrypted
- ACK packets:
-
-@example
-bob$ nncp-ack -node alice 4>acks
-@end example
-
-@item Send those newly created packets back to Alice:
-
-@example
-bob$ nncp-xfer [-keep] -tx /mnt/shared
-@end example
-
-@item Remove them from outbound spool, because we expect no
- acknowledgement for them:
-
-@example
-bob$ nncp-rm -node alice -pkt <acks
-@end example
-
-@item Get those acknowledgement packets and @ref{nncp-toss, toss} them:
-
-@example
-alice$ nncp-xfer -rx /mnt/shared
-alice$ nncp-toss
-@end example
-
-Each ACK packet will remove kept corresponding outbound packets, because
-Bob explicitly confirmed their receipt.
-
-@end itemize
-
-Similarly you can use it with @command{@ref{nncp-bundle}}, but do not
-forget that by default it does not do checksumming of the packets, so
-you should either use its @option{-check} option, or run
-@command{@ref{nncp-check}} after.