use only local vars for Socket, avoid ThreadLocals