FOSDEM '10 is a free and non-commercial event organized by the community, for the community. Its goal is to provide Free and Open Source developers a place to meet. No registration necessary.

Alan McGovern
Day Sunday
Room H.2213
Start time 12:45
End time 13:15
Duration 00:30
Event type Podium
Track Mono
Language English
The evolution of MonoTorrent

MonoTorrent is an implementation of the BitTorrent protocol written in C# for the .NET platform.

This talk will have two parts. The first part will revolve around the Piece Picking algorithm and how it evolved from a simplistic and inextensible initital implementation to its current highly extensible form as more complex behaviours were required.

The second part will be about the different strategies used to manage the multi-threaded workload. A typical bittorrent download will open about 100 connections so it is critical that the syncronisation strategy used to access any shared state does not prevent the sockets from sending/receiving data, otherwise performance will suffer.