]> Cypherpunks.ru repositories - nncp.git/blobdiff - doc/usecases.texi
Remote command execution
[nncp.git] / doc / usecases.texi
index 5f8fdcbb410e2b5d63b9942175fc3941a8075cda..c2764350451617e2f310231653adfc99d38b83cb 100644 (file)
@@ -1,12 +1,15 @@
 @node Use cases
 @unnumbered Use cases
 
+See also this page @ref{Сценарии, on russian}.
+
 @menu
 * Occasional connection to mail server: UsecaseMail.
 * Lightweight fast POP3/IMAP4 replacement: UsecasePOP.
 * Unreliable/expensive communication link: UsecaseUnreliable.
 * Slow/expensive link for high-volume data, bad QoS: UsecaseQoS.
 * Extreme terrestrial environments, no link: UsecaseNoLink.
+* One-way broadcasting communications: UsecaseBroadcast.
 * Private, isolated MitM/Sybil-resistant networks: UsecaseF2F.
 * Highly secure isolated air-gap computers: UsecaseAirgap.
 * Network censorship bypassing, health: UsecaseCensor.
@@ -31,7 +34,7 @@ overcomplicated and bloated for the simple task. Not an option.
 @url{https://en.wikipedia.org/wiki/KISS_principle, KISS}!
 
 Just tell both of your Postfixes (on the server and notebook) to drop
-email as a mail via NNCP (@ref{nncp-mail}) to specified node. This is
+email as a mail via NNCP (@ref{nncp-exec}) to specified node. This is
 done similarly as with UUCP and as written in
 @url{http://www.postfix.org/UUCP_README.html, Postfix documentation}.
 
@@ -45,7 +48,7 @@ that happened on the same machine.
 
 @ref{nncp-daemon} can be connected with @ref{nncp-caller} for a long
 time -- it can create TCP connection that lasts for many hours. When
-SMTP server receives mail, it will call @ref{nncp-mail} creating an
+SMTP server receives mail, it will call @ref{nncp-exec} creating an
 outbound encrypted packet. Daemon checks outbound directory each second
 and immediately sends notification about undelivered packets to remote
 side, that also downloads it at once.
@@ -65,7 +68,7 @@ download continuation. SMTP does not support resuming at all and heavy
 messages is problematic to retrieve. Moreover, each disconnect leads to
 the same data retransmission again, that can not be afforded sometimes.
 
-Just send your @ref{nncp-mail, mail} and @ref{nncp-file, files} through
+Just send your @ref{nncp-exec, mail} and @ref{nncp-file, files} through
 NNCP. You can use either offline delivery methods -- read about them in
 the next section, or you can use included NNCP @ref{nncp-daemon, TCP
 daemon}.
@@ -106,6 +109,13 @@ Huge files could be split on smaller @ref{Chunked, chunks}, giving
 possibility to transfer virtually any volumes using small capacity
 storages.
 
+You can also use CD-ROM and tape drives:
+
+@verbatim
+% nncp-bundle -tx bob | cdrecord -tao -
+% nncp-bundle -tx bob | dd of=/dev/sa0 bs=10240
+@end verbatim
+
 @node UsecaseNoLink
 @section Extreme terrestrial environments, no link
 
@@ -114,14 +124,14 @@ choice. Just send files as shown in previous section, but use removable
 media for transferring packets to other nodes.
 
 Assume that you send two files to @emph{bob} node. Insert USB storage
-device, mount it and run @ref{nncp-xfer}:
+device (SD is preferable!), mount it and run @ref{nncp-xfer}:
 
 @verbatim
 % nncp-xfer -node bob /media/usbstick
 @end verbatim
 
 to copy all outbound packets related to @emph{bob}. Use @option{-mkdir}
-option to create related directory on USB storage if they are missing
+option to create related directory on USB/SD storage if they are missing
 (for example when running for the first time).
 
 If you use single storage device to transfer data both to @emph{bob} and
@@ -143,6 +153,25 @@ to find all packets related to their node and copy them locally for
 further processing. @command{nncp-xfer} is the only command used with
 removable devices.
 
+@node UsecaseBroadcast
+@section One-way broadcasting communications
+
+Sometimes you have got high-bandwidth but unidirectional link, for
+example, satellite's broadcasting signal. You are not able to use online
+@ref{Sync, synchronization protocol} because it requires mutual interaction.
+
+You can use @ref{Bundles, bundles} and stream them above. They are just
+a sequence of @ref{Encrypted, encrypted packets} you can catch on.
+
+@verbatim
+% nncp-bundle -tx alice bob eve ... | command to send broadcast
+% command to receive broadcast | nncp-bundle -rx
+@end verbatim
+
+With built-in packet duplicates detection ability, you can retransmit
+your broadcasts from time to time, to increase chances the recipient
+will catch them by regular stream listening.
+
 @node UsecaseF2F
 @section Private, isolated MitM/Sybil-resistant networks
 
@@ -193,8 +222,8 @@ If you worry much about security, then air-gapped computer could be the
 only choice you can afford. Computer without any modems, wired and
 wireless networks. Obviously the only possibility to exchange mail and
 files is to use physically removable storage devices like CD-ROM, hard
-drive, tape and USB flash drives (worst choice, due to those devices
-complexity).
+drive, SD, tape and USB flash drives (@strong{worst} choice, due to
+those devices complexity).
 
 Presumably you have got another own hop before that computer: another
 intermediate node which performs basic verification of retrieved storage