Closes the connection
Determines whether there is no more data to be received
Determines whether the socket is still alive
Reads received data into the provided buffer
Fills the whole provided buffer with received data
Reads received data into the provided buffer
Sends data on the connection
Sends all data from the passed slice on the connection