Slashdot Mirror


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.'"

8 of 108 comments (clear)

  1. This sounds vaguely like by idontgno · · Score: 4, Interesting

    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.
  2. realistic receiver connectivity and bandwidth by dltaylor · · Score: 2, Interesting

    In the article, I need to transmit all three messages to all receivers and the transmitter/intermediate node link has been fabricated as an obvious bottleneck. How often, in a real network, are the receivers going to have that much connectivity and bandwidth? Also, where is the knowledge that all receiver links are up? The loss of any receiver link means that it will get NO messages, since no complete message is routed of any of its links. If I add enough parity data to allow reconstruction of partial messages, I've just consumed a significant fraction of the supposedly free bandwidth and imposed a higher processing cost at the receiver, which is likely to be the a lower-performance device.

    Great way to create battlefield targets, though. Take out any one intermediate link and lots of the troops at the receiver end are cut off.

  3. Man in the Middle Attacks by jihadist · · Score: 3, Interesting
    The problem with metadata, as Microsoft found out (note: not an MS-bashing post, just an example), is that by making information about information a higher source of "truth" than the information itself, you create an opportunity for any who control the metadata source (mass media, religion, network controllers) to re-define what is true.

    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?

  4. Re:That still wouldn't work. by SurturZ · · Score: 3, Interesting

    What about bad packets? Wouldn't error correction stuff the whole thing up? i.e. one re-sent packet and you lose out?

  5. Re:Umm most traffic is unicast by Spy+Hunter · · Score: 3, Interesting

    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?" `":" #");}
  6. Where is "D"? by khasim · · Score: 2, Interesting

    Their discussion isn't about
    A to B to C
    and
    C to B to A

    It's about A sending to D while at the same time B is sending to C.

    You've left off "D".

    And you failed to account for how B would know ahead of time that C would be sending a message. Which fails completely when you try to account for "D" in the equation. You need to account for the packets telling B which points wish to transmit.

    In your wireless example, it would be easier to just skip B and have A broadcast its message to all and sundry and then C can broadcast. B and D would pickup whatever was meant for them.

    1. A broadcasts to everyone, D receives the message.
    2. B broadcasts to everyone, C receives the message.

    Only two steps required. A further 33% savings and it includes an additional recipient.

  7. Re:Isn't comprehensible to me by BridgeBum · · Score: 5, Interesting

    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.
  8. Nothing to see here folks by Anonymous Coward · · Score: 3, Interesting

    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.