Thanks to Colm MacCarthaigh, Network Architect at Joost, for this infomative presentation given at the UK Network Operators' Forum Meeting in Manchester on April 3rd. I found the link in a comment Colm made to Jeremy Penston's post, Joost: analysis of a bandwidth hog.
An exciting thing about P2P is it's potential for minimizing video distribution costs by sharing data close to where it's needed, ideally with peers that can be reached at minimum cost. Of course monetary costs aren't exposed in the Internet routing tables, so p2p applications must approximate. The question is how and that is at least partly addressed in Colm's presentation and his comment. Here's Colm's comment:
We have some efforts in the code to save transit costs, there is very very basic prefix awareness, and we're adding AS-level awareness using live BGP data. I have looked at adding AS adjacency information, ie prefer AS-adjacent peers, but it's a lot of work and the US internet is relatively poorly mapped, so I don't think this will come soon.
Prefix awareness refers to IP address prefixes used routing packets. Joost gives preference to peers in the same /24 address range if possible and, if not, to those in the same /16. AS refers to autonomous systems which are the separately managed networks that, together, compose the Internet. In most cases, it should cost less to access a peer on the same network, be that an ISP or a corporate network, than it would cost to reach a peer elsewhere on the Internet via IP Transit services.
Other interesting facts:
- Joost uses around 700 kbps (320 MB per hour) from the internet, i.e. download bandwidth.
- Joost sends about 220 kbps (105 MB per hour) upstream.
The presentation also includes substantial detail on the server farms that seed the P2P sharing and host less popular content. All-in-all, it's a good overview of what's actually needed to make a large P2P network.
To my specific interest, it appears the routing inefficiencies, e.g. the "packets flying around all over the world in order to reach me" that Jeremy mentions, are a result of the small number of peers on-line during the closed beta. Hopefully Colm will publish additional information as usage grows.