revising UDP sockets