private InterfaceReplicacao nextServer() throws RemoteException, NenhumServidorDisponivelException
	{
		//It will be return the next server
		InterfaceReplicacao ir = null;
	    boolean alive = false;
		if(vServers.size() == 0)
		{
			throw new NenhumServidorDisponivelException();
		}

		/* Try all servers in the vServers */
		for(int i = 0; i < vServers.size(); i++)
		{
		    try
		    {
		        /* Get the index of the next server */
		        nextserver = (nextserver + 1)%vServers.size();
		        ir = sev.get(vServers.get(nextserver));
		        /* Check if it is alive */
		        alive = ir.areYouAlive();
		        /*If you found an alive server, get it's index and break the search*/
		        if(alive)
		        	break;
		    }
		    catch (RemoteException e)
		    {
		        /* If the server is not alive, remove it */
		        removeDeadServer(vServers.get(nextserver));
		    }
		}
		
		/*If no one is alive, we got some serious problem*/
		if(vServers.size() == 0)
		{
		    objects.clear();
		    throw new NenhumServidorDisponivelException();
		}
		
		nextserver = nextserver%vServers.size();
		
		//DEBUG
		System.out.printf("Round-Robin selected the server with ID = %d\n", vServers.get(nextserver));
		/*Finally, it returns the server that was found*/
		return ir;
	}