I strongly recommend you, as first approach, use the "common" setup provided in the tutorials of your MD package. I use AMBER14 and to reach temperature (100 to 300 K, Berendsen thermostat) and density, 10.000 and 500.000 steps respectively (2fs timestep), are quite enough to equilibration. Hope this help!
It is not such straight forward issue. It depends on many factors like how you generated your simulation box (random or defined placement of water etc.,) and total number of atoms in your system.
So run the equilibration, check if the density and set temperature are achieved, if not extend the simulation based on the equilibration achieved by the previous run.
Generally it will not harm if you run equilibration for longer (except wasting time). I suggest you to run your equilibration for 1 to 2 nanoseconds (time step based on your MD engine) for a large system (> 2 Lakh atoms). But you can stop the equilibration once the temperature and density are achieved irrespective of the number of steps performed.
If your question is how to set the step size for nvt?
Than suppose you want to run your nvt for 500ps so the value of nstep should be x*dt=500 and if dt is 2fs which is 0.002ps , it means x*0.002=500 so the nstep size will be 25000. Once you finish your equilibration step convert .gro file into pdb file by using editconf command and check the structure.
In general you equilibrate your system while giving restraint to the protein at a particular temperature and pressure after-that you realize the restraint in final production run.
I have done nvt and npt for 2ns eventually. But in response to your advice about checking the structure I'm looking for a serious method to evaluate the result.
The density and temperature vs time plots are okay but the average movement graph seems a little indeterminable. It doesn't show a relatively stable state at the end .