@node ACK @cindex ACKnowledgements @cindex packet acknowledgement @unnumbered ACKnowledgements There is possibility to explicitly acknowledge the receipt of the encrypted packet, by generating the reply of @code{ACK}-type which contains the packet identifier. ACK packets can be generated explicitly by @command{@ref{nncp-ack}} command, or during the tossing procedure if @option{-gen-ack} option is specified. 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