The current network serialization and implementation is really quite specialized, which is at cross-purposes to the goal of having several different clients that can all interact with the network. I think that having our serialization and network data in a common format which already has several implementations in different languages would be very helpful to the long-term distribution of the bitcoin network.
In this view, I've created a quick and dirty Protocol Buffers version of the network protocol. I doubt that it's particularly interoperable with the current code, but it does allow for all the information that goes over the network, according to the draft spec on the wiki. I've uploaded the file at http://pastebin.com/SAgvHwa0