I don't understand this. Why does it need to be mutually beneficial? The peers should "pay it forward" by uploading to younger peers, even if the ones they downloaded from are not benefitting.
> On a small swarm this behavior can lead to pieces drop to the 0 availability because some peers concentrate on the first few files while the last peer/seed that has the rare piece in one of the later file quits after doing his fair share, but he only uploaded data for the first few files because the prioritizing peers were interested in those only.
This could be mitigated by using excess bandwidth beyond that needed for streaming to download rare chunks, and ensuring that the streaming application keeps seeding for a while after the video has been watched.
That wouldn't be streaming then, would it?