4 ms·
BitTorrent streams just dandy if you request/prioritize packets in order rather than random order. Most clients already have this capability.
by daveguy 10y ago
BitTorrent streams just dandy if you request/prioritize packets in order rather than random order. Most clients already have this capability.
- wyager 10y agoBut it's sometimes very bad for the network. There are a few papers out there about how if too many people stream vs random download it can lead to bad performance.
- nkohari 10y agoIs this necessarily true if all of the connected peers are also streaming? In my understanding, Bittorrent optimizes for the most in-demand chunks, and in a streaming context those would be the ones at the beginning of the video.
- swinglock 10y agoIt's actually the other way around. BitTorrent clients should prioritize that most rare pieces, there isn't really a notion of what the most in-demand pieces are. If you were to combine streaming with a BitTorrent protocol that prioritized the most in-demand pieces you would probably not be able to watch most videos to the end without pauses to buffer or maybe even at all. By prioritizing the most rare, even if all seeds left the swarm there's a much better chance swarm combined may still have all pieces and the torrent can still be finished.
- swinglock 10y agoIt works fine and is even supported in the official BitTorrent clients nowadays but it's correct that BitTorrent wasn't designed to stream and streaming was controversial in early BitTorrent. Clients are meant to prioritize the rarest pieces in the swarm first with some randomization thrown in. Downloading sequentially is bad for the swarms health but as it turns out doesn't seem to be bad enough that the protocol can't handle it, at least as long as there's a mix of streaming and classic clients or streaming clients use a combination of classic and streaming behavior.