I am a sophomore, now have a homework is to design and produce a instant messaging software (like QQ),
In the design process, I found that don't know where to begin to design a communication software of communication packets,
The preliminary plan is to use TCP + json to transmit information, want to transmit information including and more than just chatting with friends chat messages (including words and images and even voice/video), the user to change password Settings, such as information, etc.,
Don't know how to design a packet to reach the purpose of strong scalability, in order to later other information requirements of transmission time is convenient to add,
Will you please give us a design framework to help design those things, such as
Hope everybody dalao can answer my question _ _ (: з) <)