- SurvivalBlog.com - https://survivalblog.com -

“Internet” Without Infrastructure – Part 3, by R.H.

Basic Techniques and Definition of Terms (continued)

Postmaster Protocols

As mentioned before, a Postmaster is anyone with a computer and a willingness to help. Ideally, they should understand the protocols and frailties of the network, so they can help maintain its integrity and protect it from sabotage or misuse. They should also understand security and encryption and have the tools they need.

At the time of this writing, an 8GB USB key [2] (or Flash drive [3]) or SD card [4] can be had for a few dollars on Amazon or eBay. Larger sizes (up to a terabyte) are also available for more money. Let’s just use 8GB as a base, which is roughly 8 billion characters of information. A short message can be written in 1KB, roughly 1,024 characters of information, allowing millions of messages to be stored in a single “pouch”! On the other hand, there is no need to completely prohibit the sending of slightly larger, or much larger messages, or even a small picture or a short, low-resolution video, as long as there is room for it. One of the important protocols the Postmaster must know is how to deal with overflows of data when swapping files with another Postmaster. The basic rule is that large files get eliminated first. People using the network will quickly understand that the best way to increase the chances that their message will get through is to send the smallest possible file. If a message is limited to a few thousand characters, it is most likely not going to be dropped because of its size. If someone wants to send a photo, the best way to increase their chances is to shrink them down as much as they can. An 8GB flash drive can hold 4,000 200K images, so early on after some TEOTWAWKI event, it is likely that many of these large images would get through. By reducing an image message to 50K or 20K, a sender can increase his chances of getting through considerably. In fact, he can always send a 1K message stating that he is sending an image, followed by separately sending a 20K version of the image, a 50K version, and a 200K version. If there is enough room or capacity, all messages will go through. If there is not enough room the larger ones will be dropped first.

Long before this happens, however, there is another difficulty that is likely to come up. It turns out that computers and these storage devices are usually optimized for a smaller number of relatively large files, rather than very large numbers of very small files. This can cause it to take a very long time, maybe even hours in some cases, to copy even tens of thousands of files from one storage device to another, let alone millions. In a situation where you are trying to conserve battery power, this could be a serious issue. This problem can be greatly alleviated by formatting the USB key or SD card in a particular way. On Windows, you find the device in Windows Explorer; right click on it, and select Format. On a Mac, you go to the Disk Utility application, click on the device, and select Erase. Either way, you will then find some options for how to format it. We want a format that can efficiently deal with lots of small files and one that is compatible with both Windows and Mac, so we choose the “exFat” format and the smallest available “allocation size”, which is 512 bytes. The “allocation size” is the minimum amount of space that a file will take up on that device while formatted in that way, so even a 10 or 20 character message will take up 512 bytes. Also, as soon as a file goes over 512 bytes, even by one character, the file size will jump to 1,024 bytes.

Reformatting in this way will help, but depending on the speed of your computer and other factors, when the number of files reaches a certain point, it may start taking too long to copy the files. This is another place where a tool like 7zip can be extremely helpful. If you have a folder containing hundreds of thousands of messages using up a gigabyte of storage, you may be able to shrink it down to half that size in a matter of minutes. Then you can copy the whole file to a pouch in another couple of minutes. On my computer, I find that the 7zip file manager is much less “laggy” than using Windows directly, especially when dealing with large numbers of files. Your mileage may vary, so this is something that each Postmaster will need to practice with and find the methods that work for him.

Fortunately, these problems are not likely to develop overnight. Initially there will be a much smaller number of files to deal with. By the time the numbers of files get into the thousands or tens of thousands and eventually to hundreds of thousands or millions, Postmasters will have more experience and will have developed techniques to deal with it. At some point, it makes sense to store all of those thousands of little messages in one large zip file and include a copy of 7zip on the pouch as well, in case the next Postmaster doesn’t already have it. When a pouch is being used to store a small number of large files, instead of huge numbers of small ones, then it will perform better if it is reformatted to a larger allocation size.

Eventually, the Postmasters’ disks could become filled to capacity, causing the system to get clogged. By this time, however, there will be more information available to Postmasters about how long it generally takes for files to make it to their destination. Old files can then be deleted or archived to other storage. Similar to the procedure for deleting large files, the Postmaster would simply sort by the date on the file, with oldest first, and delete as many as is necessary to unclog his system. This is the mechanism that prevents files from staying around forever, long after they are useful to anyone. Files will stay in the system as long as possible but only until the capacity of the system cannot handle it. People will come to understand that their files will persist on the network for a finite period of time, which will depend on the amount of traffic and the capacity of the system.

Related to the deletion of old files, the Postmaster would always delete any files he finds that have dates in the future. This is necessary because it’s possible for someone to set a file date to a future date, and this could be used by people in an attempt to make their files persist longer. By the Postmaster deleting any files with dates later than today, this misuse of the system is averted, and he will have more truthful information to work with regarding the age of files.

By definition, each Postmaster has a computer. Ideally, he would have more available storage than any of the portable storage devices being used, preferably several times the size. If he has a smaller capacity, he can find a way to work with that.

In addition to any pouches being used to transfer data, the Postmaster would have a “Master pouch” that he works from.

In summary, the basic process for the Postmaster is as follows:

  1. When a new pouch is received for merging, he copies it onto his own master pouch, opting to skip any files with duplicate names.
  2. He immediately deletes any messages that have dates later than today’s date. (As mentioned before, this prevents people from falsifying the dates on their files for their own benefit.)
  3. The Postmaster now has a complete set of valid messages in his pouch.
  4. If the Postmaster’s Master pouch is too full to accommodate more data, he may need to delete large files from his own disk and/or from the new disk coming in. In most cases, deleting a few very large files will probably free up plenty of space. Large files are expendable and must give way for the large volume of smaller files.
  5. He then determines whether there is enough room on the pouch he just received for the complete set of valid messages. If so, he can simply copy his master pouch back to the other pouch, again opting to skip any duplicates.
  6. If there is not enough room, then he must first delete all files on the new pouch and then copy the files from his Master pouch to the new pouch by file size, smallest files first. In the absence of better tools, he can do this by copying a large chunk of small files, then a chunk of slightly larger files, and so on, until the portable device is full.

Note that none of this requires any special software. It is done “manually”, using the basic commands of whatever computer is being used. This is not to say that better tools could not be used or developed specifically to help in these tasks, but in the absence of special tools the work can be done manually. This is important, as it helps keep the system from being owned by anyone or controlled in some undesirable way. If the network ever becomes compromised in some way, or is suspected of being compromised, it is always possible to start another network in parallel.

Also keep in mind that this network is a redundant system. There can and should be duplication of files and Postmasters at all times. If one Postmaster only has a small data capacity, he might need to skip a large number of files to update his pouch, but those files that were skipped in his pouch continue to exist on several other devices and may find their way to another Postmaster through some other route. On the other hand, the Postmaster with the small data capacity might happen to pass his files to a traveler who carries his somewhat limited set of files off to the next community or to a larger city, where they end up being forwarded much farther than they would have otherwise. So while large data capacity is preferable, it does not mean that a Postmaster with a smaller data capacity is without value. The ability to seek out or recruit other Postmasters and pass on data is probably much more important. If hundreds of thousands of small messages get through, what’s a few thousand large ones? In addition, if one Postmaster’s computer dies or if a portable device is lost or destroyed or even if the Postmaster himself dies, the network lives on and very little information is actually lost.