Researchers Test BitTorrent Live Streaming 129
An anonymous reader writes "TorrentFreak reports that the Swarmplayer, developed by the P2P-Next research group, is now capable of streaming live video in true 4th generation P2P style using a zero-server approach. With a $22 million project budget from the EU and partners, the P2P-Next research group intends to redefine how video is viewed on the Internet. The researchers have launched a streaming experiment where you can tune in to a webcam in Amsterdam, or a 5 minute weather report (not live) from the BBC. More details about how to set up your own BitTorrent live stream are also available."
Re:Open source? (Score:5, Informative)
http://svn.tribler.org/abc/tags/swarmplayer-1.0.0/ [tribler.org]
Re:$22 billion for what? (Score:3, Informative)
You realize that even traditional "broadcast" (e.g. streaming from youtube) has to send countless duplicates of the same data, right?
Re:I see some issues here... (Score:4, Informative)
Not so simple.. (Score:3, Informative)
First off 'broadcast' packets have poor meaning outside of a single layer2 network. In networking, broadcast means to send to everyone, whether they like it or not.
I presume you meant multicast, which is a bit more sane, but at the same time, I haven't been convinced that an at-scale situation would work with networks generally as configured today. I wager a good number of arbitrary routers out there would fubar multicast. This, of course, doesn't get rid of the duplicates, it moves some of the problem to the networking backbone a bit and still you end up with retries for the clients that missed pieces. For streaming, it's particularly interesting if a client misses a packet. Generally, when not dealing with real-time considerations, multicast clients save what they can, then at the end ask for pieces they missed. With streaming, that is going on all the time as a client can't wait til the ill-defined 'end' to be orderly.
Now, with all the networking infrastructure being pretty unicast tolerant, and not guaranteed much else, the p2p stuff makes some sense. Are there some inefficiencies on the host side, probably, but unicast is dead simple for networks to get correct.
Re:I see some issues here... (Score:4, Informative)
Standard BitTorrent works because of the Tit-For-Tat incentive mechanism. The whole idea is that a peer exchanges pieces with another peer, so it can achieve a higher download rate than just getting pieces from the seed.
Now, I won't go into details, but the reason you get your files in some arbitrary order is because a BitTorrent swarm is just like a marketplace. Certain pieces are rare and might have long queues, i.e. many peers are interested in it and are competing for it. Other pieces are so common, most peers are not interested in it and can thus be exchanged with fewer peers. So the trick to achieving high download speeds is to obtain the right pieces that are still valuable for further trade, while not spending too much time on obtaining such a valuable piece.
Now, with video-on-demand (and live streams), the whole Tit-For-Tat system no longer works. In this situation, peers must obtain pieces in order for playback. The problem now is that a peer that wants the next minute of the video can only get it from a peer whose playback position is further ahead. The latter peer however is not interested in pieces from the former (since it already has these) and thus no exchange will take place.
So, the solution the Tribler team came up with is the Give-to-Get incentive mechanism. A peer will only receive pieces from others if it sends its pieces to those that are interested, i.e. peers that have seen even less of the video. This requires some feedback, so a peer that receives some pieces will have to inform others that it recently has received data from a certain sender. Thus, you could say that the Give-to-Get incentive mechanism is based on reputation.
Re:Already existing (Score:5, Informative)
They call it Zattoo
it's using encryptet contents over bittorrent.
I watched the World Cup Futbol championship on Zattoo [zattoo.com] and it was sometimes more "real time" than broadcast TV. How do they do that? This bittorrent prototype buffers for a full minute. And I notice the live stream isn't even doing any sharing (according to the status page).
Re:I see some issues here... (Score:4, Informative)
In the example, the streaming is actually taking place from 15 minute pieces. When enough of the current piece has been collected, the video starts playing on your machine. While you're watching the stream, the rest of the 15 minute piece is collected and shared. The next 15 minute piece is collected/shared when it appears. A while (I don't remember if it was 15 or 30 minutes) after you saw it, the older pieces are deleted from your machine.
This is similar to how some Internet radio streams work. You're actually listening to a bunch of short streams encoded in some audio format. The major difference here is that a slightly modified BitTorrent protocol is being used.
Re:I see some issues here... (Score:2, Informative)
If I understand multicast (in particular IGMP) correctly, it is one of the few IP-related protocols where NAT is irrelevant.
The real problem is that multicast requires routers to support it, and the vast majority don't. This includes both your ISP and most consumer modem/router devices. The main reason for this these days is due to what economists call network-effects. No pun intended.