16 comments

[ 3.2 ms ] story [ 24.7 ms ] thread
Heh - the logical abstraction/refactoring of "Only wimps use tape backup: real men just upload their important stuff on ftp, and let the rest of the world mirror it"
So I take it this is the modern-day equivalent of the mercury delay line?
Would it be considered bad form to attach this application to a RFC 1149 network? It might actually increase the recoverability of the data in question.
What exactly does this do?
My understanding is this:

It's a filesystem that stores it's data in a temporary packet. So when you ping a server to see if it's up, it sends back the data you sent so you can verify it's okay. It's implemented as a filesystem using FUSE (which allows for all kinds of user space filesystems) so the OS just uses it like a disk or network storage and so on. I believe it works by spamming out pings with the data in them, and when they come back just send them out again.

seems like it essentially keeps data stored by catching data from ICMP (ping) packets, rewrapping them in another ping packet and shoving them back on the network.

Think of it kind of like network RAM, the data isn't stored anywhere persay and if either host fails to bounce back the payload the data is lost since it wasn't stored on any single machine and only kept alive in limbo.

The data is stored somewhere. It's stored in the cache memory of all the routers in between.
How much data could you store if you pinged the voyager 2 probe?
When Voyager was at Jupiter, communications allowed for a bitrate of roughly 115kbit/s. The distance from Earth to Jupiter is about 5AU. The current distance to Voyager is 100AU, so let's say we still have a bitrate of 1kbit/s. According to WolframAlpha, Voyager 2 is about 50000 light seconds away from us. Now you can do the math.
> PingFS is a set of python scripts ... > Each file ... sent over the wire in an ICMP echo request, and promptly erased from memory.

can you actually reliably erase anything from memory in python?