How can I be sure that UDP messages are received in order?

  You can't.  What you can do is make sure that messages are processed
  in order by using a numbering system as mentioned in ``5.5 How can I
  be sure that a UDP message is received?''.  If you need your messages
  to be received and be received in order you should really consider
  switching to TCP.  It is unlikely that you will be able to do a better
  job implementing this sort of protocol than the TCP people already
  have, without a significant investment of time.
Suggest a Site