I understand that UDP won't combine 2 packets into 1. However, do we have to follow this same guideline for our protocol? For example, the receiver is expecting packet #1 to come. However, packets #2, #3 come first, so I store it up in some queue. Once packet #1, can I give 1, 2, 3 to the application all at once? or should I only give #1 now?