Phil
I use Solugard protector from Solutions.
It is a nanotechnology protector ( the carpet fibres actually go through a polymer change) The results are very good and it has a pretty long life ( dependent on fibre type,age,use etc).
If you then in the future reclean the carpet with any of the solution micro splitters, they will not rempve any of the protector so a need to reapply just because of cleaning should not be necessary.
Regards
Paul