ImplementingTCP functionalities on UDP