add socket module
finished socket module
improved socket module