]> Cypherpunks.ru repositories - nncp.git/blob - doc/niceness.texi
Merge branch 'develop'
[nncp.git] / doc / niceness.texi
1 @node Niceness
2 @cindex niceness
3 @cindex priority
4 @unnumbered Niceness
5
6 Each transmitted packet has niceness level, as Unix has @command{nice}
7 command for controlling processes priority. Higher nicer level means
8 that packet is "nicer" and allows other to bypass him -- that means
9 lower transmission precedence.
10
11 Send big files with higher nice level! That will guarantee you that
12 higher priority packets, like mail messages, will pass first, even when
13 lower priority packet was already been partially downloaded.
14
15 There are default niceness levels built-in for
16 @command{@ref{nncp-exec}}, @command{@ref{nncp-file}} and
17 @command{@ref{nncp-freq}} commands. But pay attention that it can give
18 information about underlying payload to the adversary!
19
20 There are 1-255 niceness levels. They could be specified either as
21 integer, or using aliases with delta modifiers:
22
23 @table @emph
24 @vindex FLASH
25 @item FLASH (F)
26 Urgent priority.
27 @vindex PRIORITY
28 @item PRIORITY (P)
29 High priority. Command execution/mail use that priority by default.
30 @vindex NORMAL
31 @item NORMAL (N)
32 Normal priority. File requests use that priority by default.
33 @vindex BULK
34 @item BULK (B)
35 Bundles shipped on a "least effort" basis. File transmission use that
36 priority by default.
37 @end table
38
39 @verbatim
40  1: F-31   65: P-31  129: N-31  193: B-31
41  2: F-30   66: P-30  130: N-30  194: B-30
42     ...        ...        ...        ...
43 32: F      96: P     160: N     224: B
44 33: F+1    97: P+1   161: N+1   225: B+1
45 34: F+2    98: P+2   162: N+2   226: B+2
46     ...        ...        ...        ...
47 64: F+32  128: P+32  192: N+32  255: B+31 | MAX
48 @end verbatim
49
50 Precedence could be specified both with single-letter aliases and with
51 whole strings. They are case insensitive. @emph{MAX} is an alias for 255
52 niceness level.