I've been playing with framing protocols.
I need a protocol with:
- low overhead: it will be used for mobile communications and some of us pay for each byte;
- multiplex streams: you should be able to open channels inside the same TCP connection;
- restartable: each session has an ID and I need to restart all of the channels inside it very quickly if my TCP connection dies.
I've looked at AMQP wire protocol, BLIP, BEEP and some others. I plan to look over SSH too.
I'm looking for further suggestions of protocols to reuse. Anyone?