From Wikipedia, the free encyclopedia
Jump to: navigation, search

TRICKLE was a file-forwarding service on the BITNET (EARN/NetNorth/GulfNet) network which allowed a user to request a file from an FTP server on the Internet via a gateway server which was connected to both networks. It was intended to enable the more widespread distribution of (what was then referred to as) Public Domain software from the SIMTEL20 and about a dozen other repositories (hence the command /PDGET, see below).

The software was originally written by Turgut Kalfaoglu at the Turkish national node TREARN (Ege University,Izmir) and was rapidly mirrored at many other BITNET nodes including AWIWUW11 (Austria), BANUFS11 (Belgium), DKTC11 (Denmark), DB0FUB11 or DTUZDV1 (Germany), IMIPOLI (Italy), EB0UB011 (Spain), TAUNIVM (Israel) and others.

To use the service, BITNET users would type a command to their local machine which would forward the remainder of the line as a command to the TRICKLE server. The syntax of the forwarded command was similar to those used on LISTSERV but prefixed with a slash:

TELL TRICKLE AT node /PDGET <directory>file (mode

where node was the BITNET node hosting a TRICKLE gateway; <directory>file was the directory and file required; and (mode specified the file transfer mode (e.g. UUE). On BITNET VAX systems the local syntax was SEND TRICKLE@node.

The target file was conventionally divided into 64Kb chunks after zipping and UUencoding to alleviate congestion on the BITNET network, which used a store-and-forward transmission model where files in transit were sorted into ascending order of size at each intervening node. This enabled very small files to travel reasonably quickly, leaving larger ones to queue for later (e.g. overnight). It was the receiving user's responsibility to piece together the chunks in order for reassembly into the full UUencoded file for decoding and unzipping.

TRICKLE used a distributed cache database - that is, it only kept one copy of each requested file in Europe and each TRICKLE server was aware of each other's files. If anyone asked for any of those files, it would be sent from whichever TRICKLE server happened to have it. This alleviated the load on the saturated international links (esp. Europe-USA), and permitted rapid delivery of popular files. Users could also subscribe to file patterns, using a command like /SUB <MSDOS.VIRUS>SCAN* for example, and each new matching file that appeared in the repository would automatically be sent to the user.

TRICKLE also had the ability to create "newsletters" and mail them out to subscribers - it contained information about each new file that was added to the repository.

TRICKLE was written in REXX programming language (over 40k lines of code) and in Assembler. It ran on IBM VM/CMS systems.

Contact: Turgut Kalfaoglu turgut (at)