title: Multiple request/response in socket programming
body: <p>In multithreaded server which assigns new client to a new thread, I want to device a pattern which will handle multiple request/acknowledgment for a client. </p>
  
  <p>Please see the operation sequence below (Once client is connected)</p>
  
  <ol>
  <li>Client sends request to get status of particular file on server </li>
  <li>Server sends data in response to client.</li>
  <li>Client decides some action based on server response</li>
  <li>Client may send another request, say to fetch a file</li>
  <li>Server sends file to client</li>
  </ol>
  
  <p>I'm thinking about a model where request/response is based on "ACTION_STRINGS". i.e. one party sends particular "ACTION_STRING" and then the data so that other party can understand different actions (like getting status of file or fetching file) and work based on that action.</p>
  
  <p>The question here is, is this good model to work upon? Suggest if improvements are possible. Suggest if other model is better than this.</p>