Ragg Topp fabric top cleaner and protectant is what I use.
Autogeek.net has a good package right now for $31.99 for the kit.
http://www.autogeek.net/racotopcakit.html
Just make sure to mask off windows and painted areas before applying the protectant. Makes the water bead up very well. The cleaner really gets the dirt and grime out really well too. I do this about once a year towards the end of summer / into fall to get ready for the wet winter months.