What is the reasoning behind BitTorrent KRPC using BEncode instead of BSON?
===

The [Mainline DHT][1], used in [BitTorrent][2] to distribute lists of peers, implements a custom RPC protocol called KRPC. KRPC consists of BEncoded dictionaries, which are essentially a more compact form of JSON. 

Is there any benefit of using BEncode over something like BSON (or even just compressing the data)?


  [1]: http://en.wikipedia.org/wiki/Mainline_DHT
  [2]: http://en.wikipedia.org/wiki/BitTorrent_protocol