revisiting socket module