thekashyap 193 Practically a Posting Shark

Hello Everyone,
Does anyone know any design patterns for modules meant for encoding/decoding of protocol messages. E.g. BSSMAP/LAP...
We need to write encoders and decoders for BSSMAP and BSSLAP messages for our product.
All the IE (information elements) are defined by standards, so we know everything abt every field in the message. Currently we plan to do the whole thing in 'C', but I'm convinced that a C++ OO design would be much better (for testability and extensibility). Now before I start coming up with my own design, I was wondering if someone has already done it given that it's a common problem.

Thanks
Kashyap