File: ack.texi

package info (click to toggle)
nncp 8.12.1-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 1,588 kB
  • sloc: sh: 610; makefile: 58
file content (72 lines) | stat: -rw-r--r-- 1,960 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
@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 <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.

If you generate ACK packet during the tossing, then the list of ACK
packets is saved as empty files directly in the @ref{Spool, spool}.
You can remove transferred ACK packets with @command{nncp-rm -ack}.