El receptor debería esperar a que se vacie el buffer (con leer) para finalizar la conexion? O Cuando el emisor indica que quiere cerrar la conexion, y el receptor ya termino de enviar todos los acks correspondientes, simplemente envia fin ack y cierra la conexion, haciendo que el leer devuelva -1 incluso si quedan datos?