I don't paint historicals, but I do paint quite a lot of white cloth on my miniatures, like the Citadel scientist below:

The method is (over a black undercoat):
1) Basecoat with a high-pigment off-white (I use Citadel's Pallid Wych Flesh). Usually I do 2-3 thin coats
2) Wash with a thinned brown wash (I use Citadel's Agrax Earthshade at 1/3 wash to 2/3 water)
3) Highlight with the basecoat
4) Optional second highlight with 50/50 off-white and pure white
It's pretty simple and quick method that I like the look of.