I also recommend just reading the BitTorrent spec. It's quite short and manageable as far as specs go.
After that, just read the BEPs directly: http://bittorrent.org/beps/bep_0000.html. They're small, easy to understand and straight to the point.
Then read the code for Webtorrent or other implementation in a language you're familiar with. You'll immediately recognize the BEPs there.