Bram Cohen rips Avalanche a new one

digitalwanderer

wandering
Legend
Censored over at Elite Bastards just posted this bit up about Bram Cohen's take on Avalanche, and he was less than impressed to say the least:

Bram Cohen said:
A bunch of people have been pestering me about Avalanche recently, so I'll comment on it.

First of all, I'd like to clarify that Avalanche is vaporware. It isn't a product which you can use or test with, it's a bunch of proposed algorithms. There isn't even a fleshed out network protocol. The 'experiments' they've done are simulations.

It's a bad idea to give much weight to simulations, especially of something so hairy as real-world internet behavior. I spent most of my talk at stanford explaining why it's difficult to benchmark, much less simulate, BitTorrent in a way which is useful. But we can look at their simulation to see if it might at least be ballpark.

Let's see, here's their simulation of 'tit-for-tat':

To simulate a tit-for-tat scenario, the simulator keeps track of the difference between uploaded blocks minus downloaded blocks from a user S (source) to a user D (destination). If the difference is larger than the pre-configured value (typically 2 when we study tit-for-tat), then the source S will not send any block to D even if there is spare upload capacity at S and spare download capacity at D.

I can't fathom how they came up with this. Researching either the source code or the documentation on the BitTorrent web site would have shown that the real choking algorithms work nothing like this. Either they just heard 'tit-for-tat' and just made this up, or they for some odd reason dredged up BitTorrent 1.0 and read the source of that. You see, BitTorrent work this way when it was nowhere near functional yet, and the first test among multiple peers (6 if my memory serves) showed that it sucks. It was promptly rewritten, way back in late 2001. This gaffe alone makes their simulation completely worthless, but it isn't the only one
Quite an entertaining and educational read, and I trust this guys take on torrenting software for some weird reason. ;)
 
He's right, it's just a, "heh, we could do this and this and this..." type of "technology". Not to mention, the merits of which are questionable, its usefulness in the way torrents share files is a situation one really has to think about, honestly, I've never had an issue with a BT not having at least one complete copy. Then again, most of my expierence with is for linux iso and setting up a quick private torrent to aggregate bandwidth for a friend.
 
There were many P2P protocols that looked good on paper, but just didn't work when scaled up to large numbers, especially when (not) taking into account the asymetrical nature of most people's bandwidth.
 
Bouncing Zabaglione Bros. said:
There were many P2P protocols that looked good on paper, but just didn't work when scaled up to large numbers, especially when (not) taking into account the asymetrical nature of most people's bandwidth.

i think you made the right point here.... i am on 1.5 Mbit / 192 kbit connection. there is no way i can give as much as i take. and not to mention that without being able to cap my uploading speed i get my comp choked and i cant even surf around net cause all bandwidth is simply eaten by P2P.

main reason why i use BitComet is that i can cap total outgoing speed....
 
silence said:
Bouncing Zabaglione Bros. said:
There were many P2P protocols that looked good on paper, but just didn't work when scaled up to large numbers, especially when (not) taking into account the asymetrical nature of most people's bandwidth.

i think you made the right point here.... i am on 1.5 Mbit / 192 kbit connection. there is no way i can give as much as i take. and not to mention that without being able to cap my uploading speed i get my comp choked and i cant even surf around net cause all bandwidth is simply eaten by P2P.

main reason why i use BitComet is that i can cap total outgoing speed....

I have a 3Mbit connection and I use Azureous (forgot how its spelt). I set my downloads and uploads to maximum and my connection doesn't choke (must be the 3Mbit connection). I usually take much much more than I recieve..but I leave the torrent there until I get a share ratio of 1.0.
 
"Azureus". ;)

I use it too on a 6MBs/400KBs line and it never really interfers with my web cruising while running it full bore. (Oh, and I keep my ratio over 1.0 too. ;) )

It used to screw up my whole families web cruising when I used the DSL, but then I got meself a private cable hook up for just me and we've all been happy since. :)
 
A linksys router, with OSS firmware and you can get the world shaping addon, which drops your bandwidth a bit but can mess around with packet priorities. So you can do things like, may bit torrent packets high latency, while game packets lowest. By messing with priorities, what this does is improve pings in games and keeps those torrents going pretty darn fast.
 
My biggest question about Avalanche is security. Since every peers now generates their own blocks, it's very hard to protect against malicious peers. Of course, secure hash can still protect you from a bad result, but you don't know which block is the bad one. Therefore, a malicious peer can "pollute" the network with their bad blocks. In Microsoft's paper, it's said that they used a "modified secure hash which survives linear combination." (something like this, probably not exactly the wording) I don't understand how this works, perhaps they have something new under their sleeves.
 
Back
Top