Rerouting the Networks
prostoalex writes "Scientific American looks at a new approach to clearing networking jams, in research funded by the US military. Instead of using routers to route the packets from point A and point B, thus making some hop in the sequence critical for delivering the message, researchers are exploring a new approach called 'network coding.' (Here is the illustration cited in the article.)" Quoting: "[Four researchers] then at the University of Hong Kong published groundbreaking work that introduced a new approach to distributing information across shared networks. In... network coding, routers are replaced by coders, which transmit evidence about messages instead of sending the messages themselves. When receivers collect the evidence, they deduce the original information from the assembled clues. Although this method may sound counterintuitive, network coding, which is still under study, has the potential to dramatically speed up and improve the reliability of all manner of communications systems and may well spark the next revolution in the field. Investigators are, of course, also exploring additional avenues for improving efficiency; as far as we know, though, those other approaches generally extend existing methods.'"
the information transmission equivalent of holography. On one level, it seems sensible and obvious. On another level, it's rather novel (at least, the application of holographic distribution of data to a network architecture). At least, I've never heard of it, either in real-world technology research or even (to my recollection) SF technology.
Welcome to the Panopticon. Used to be a prison, now it's your home.
From that, they can stage any number of man-in-the-middle attacks -- the least potent but most widespread of which is convincing a clueless electorate^W userbase that they are certain sources of acclaimed truth, and manipulating them for their own narrow or evil ends.
Philosophers write about this in inspiring 5-page screeds like "On Truth and Lies in a Non-Moral Sense" by Friedrich Nietzsche. That theory in itself is the foundation of postmodernism and some more dangerous philosophies as well. Could it be that philosophy applies to computer science?
Anti-Globalism
What about bad packets? Wouldn't error correction stuff the whole thing up? i.e. one re-sent packet and you lose out?
Actually, most Internet traffic (BitTorrent) is multicast mapped onto unicast in a terribly inefficient manner. We are forced to use BitTorrent because ISPs refuse to implement multicast (which makes it hardly surprising that there is no multicast traffic on the Internet).
main(c,r){for(r=32;r;) printf(++c>31?c=!r--,"\n":c<r?" ":~c&r?" `":" #");}
Think of solving simultaneous equations. Something like:
2x + y - z = 1
x - y + z = 2
x + 2y - 3z = -4
Okay, now instead of x,y & z being numbers, imagine they are blocks of data. Bits. And instead of using addition and subtraction, make your operand xor.
Next step, pretend that your original message is the variables strung together in order, xyz.
Easy as 1,2,3.
My UID is the product of 2 primes.
First of all, this particular algorithm is really only suited for multicasting the same data to many nodes at the same time. It does not help at all with point-to-point unicasting, which is what the majority of Internet traffic looks like. Secondly, the only real trick here is that you can XOR the data together to transmit more information. So if you have equal length messages A, B, and C, instead of transmitting all three to any particular node, you only transmit XORs of some subset of them (A^B and B^C, or A^C and B^C, etc.) and from those XOR'd versions you can then extract the original 3 messages. Magic! Transmit the equivalent of 2 messages but get 3 messages worth of data! Not groundbreaking; not revolutionary; it's actually a pretty old trick. I've thought for a long time about what real world situation this might be practical for, and have come up with pretty much nothing. It's cute, though.