See http://www.caida.org/~kkeys/