I am getting more acquainted with BOOST and I have a question for people that are experts with BOOST. I am looking at the Serialize class. This thing can't be serious? This header bloat may work (can be ignored) for persisting stuff to disk, but what if I want to inherit from Serialize to send an object over a network? This bloated headers is a beefy penalty to pay! Do people just ignore the Serialize class for this purpose? If so, do they then write something that serializes message objects by hand when using BOOST? http://www.boost.org/doc/libs/1_39_0/libs/serialization/doc/index.html
An oldie but still a goodie is XDR, which underlies SUN RPC and NFS. There is an RFC: http://www.faqs.org/rfcs/rfc1832.html Very easy to use with C/C++, fast and efficient. The rpcgen compiler is on just about any *nix machine.
You might also want to look at Hessian: http://hessian.caucho.com/ I've had moderate success with Hessian using a Java server and a C++ client if you are looking to provide a remote service.