After checking this issue, it is related to the receive buffer of the UDP socket, after increase the buffer size, indeed the number of drops decreased.
but I think that there is an elegant way to solve it, read the message from the socket buffer immediatliy and write it to a queue and in different thread read from the queue and parse the message, this way the socket buffer will not be filled out of space.