From f3820a94dc9e14ea27b54f57699d9577a1ceed7c Mon Sep 17 00:00:00 2001 From: JohnClay Date: Mon, 29 Aug 2016 22:41:06 -0400 Subject: [PATCH] Created Transmission Architecture (markdown) --- Transmission-Architecture.md | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 Transmission-Architecture.md diff --git a/Transmission-Architecture.md b/Transmission-Architecture.md new file mode 100644 index 0000000..06645f8 --- /dev/null +++ b/Transmission-Architecture.md @@ -0,0 +1,28 @@ + +Transmission is fundamentally a Bit Torrent client and communicates with other Bit Torrent peers. +In addition to this Transmission supports network-based remote control, whereby an authorised user may control the Transmission core from another machine via the [wiki:rpc Transmission JSON RPC protocol]. +To make remote control easier from an arbitrary machine, Transmission Core can also serve a javascript web application to any browser and which in turn makes JSON RPC calls back to the Transmission core. + +The Core components and methods of control are shown below: + +[[Image(Transmission_Architecture.gif)]] + +From the above diagram it can be seen that a Transmission Core may be controlled by the following: + * ''Local'' directly linked GUI (OS X, GTK+) + * ''Local'' or ''Remote'' Qt GUI + * ''Local'' or ''Remote'' Command Line Utility + * ''Local'' or ''Remote'' Transmission Web Application running in a web browser + +The multiple methods of controlling Transmission and the various native GUIs available result in several different Transmission products as shown in the figure below: + +[[Image(Transmission_Products.gif)]] + +The products are: + * Transmission Desktop - OS X + * Transmission Desktop - Linux/GTK+ + * Transmission Desktop - Un*x/Qt + * Transmission Daemon (headless) + * Transmission Command Line + +The Transmission packages available on various distributions may include one or more of these components. +Note. Although the diagram shows "Transmission Desktop Qt" as being Qt GUI + Transmission Core, the Qt component may be packaged on its own as a purely remote tool. \ No newline at end of file