c++ network serialization -


i'm looking solution serializing of c++ packets network stream.

i have seen many posts here refering people to:

  1. ace

  2. google protocol buffers

  3. boost::serialization

  4. qt ::qdatastream

my requirements/ constraints:

  1. the solution must unaware of litteendian/bigendian. machine architecture x86/x64 , platform independant.

  2. the foot print (ram & rom) of first 3 solution big platform,and fourth conflicting next requirement.

  3. the solution won't require lot of boilerplate code (there 200+ packet serialized).

thanks, koby meir

if find out google protocol buffers heavy (i can agree because compiled library take more 1 mb), maybe try lite version of protobuf. lite version few times smaller. support lite version enabled in *.proto inserting following line

option optimize_for = lite_runtime;  

more found here http://code.google.com/intl/pl-pl/apis/protocolbuffers/docs/reference/cpp/google.protobuf.message_lite.html

but if need protobuf solution minimal overhead go c implementation of protobuf http://code.google.com/p/protobuf-c/ little harder use in compare c++, binary code size overhead should minimal (30-50kb). know c implementation used example umurmur - voice server runs on embeded linux arm , mips routers.


Comments

Popular posts from this blog

php - What is the difference between $_SERVER['PATH_INFO'] and $_SERVER['ORIG_PATH_INFO']? -

fortran - Function return type mismatch -

queue - mq_receive: message too long -