TCP AND UDP
THERE ARE TWO COMMON TYPES OF INTERNET TRAFFIC: TCP (TRANSMISSION CONTROL PROTOCOL) AND UDP (USER DATAGRAM PROTOCOL).
There’s also a third type, ICMP (internet control message protocol) that’s used for pinging, but an app will use either TCP or UDP for sending data — or both.
When it comes to QoS, you have to configure the setting for the right type of traffic. Prioritising UDP port 100 when the app uses TCP port 100 will do nothing.
If you’re interested, the difference between the two comes down to error correction and acknowledgment. With TCP, the receiver sends an acknowledgement receipt (an ACK) when it receives data; this lets the sender know that the data has arrived in good order. If no ACK is received, the sender will resend the data until one is. TCP is used where data integrity is vital (which it is in most apps).
With UDP, it works on a more ‘send and hope’ system. The data is sent but no ACK is expected. It tends to be used in real-time applications where there would be no point in resending the data because the stream has moved on. For example, in live video streaming, if some data gets lost in transit, it’s best to just move on rather than try to fix the problem.