Help me design a protocol for a chat application

Job ID: 32008233

Budget: $30 – $250 USD

You will design a protocol to do chat and send a file (when requested) or as an offer.
Your protocol is above UDP/TCP.
In the first part you will write a document to describe your protocol. The document will have the following sections:
1. At What layer is your protocol. Explain the reason for choosing the layer. What are the protocol layers below your layer. . Give a brief description of why you need that particular protocol.
For example why TCP ??
2. What services does your protocol provide. List them and give a brief description of each service.
3. design a header to implement those services.
A header has fields (for example IP header). what fields would you like to have, why have those fields, size of those fields and what possible values can those fields have.
4. The protocol will have some message exchanges between the two sides.
What messages would you design. (think about messages exchanged by DHCP protocol)
Each message has a purpose.
for chat functionality, you would want to see if the other party is online or not. sending files ... think about scenarios .. file not found, file corrupted etc etc.
Think about how you would check that ... we can discuss it in the class. I expect questions from you as you write this. We can discuss in class about the problems you might face or questions/clarifications about this part of the project.