Strictly speaking, when referring to one or more of a definite set of values, the word 'which' should be employed. When referring to one or more of an unknown or infinate set of values, the word 'what' would be used instead.
E.g. Which do you prefer; tea or coffee?
What sort of music do you like?
In practice, however, the above protocol would sound wrong if applied consistently. Let's take the example of asking for the time...
Which time is it?
This sounds odd - nobody asks which time it is, rather what time it is. Going on the what/which protocol as mentioned above however, which would be the correct pronoun given that times of the day can be considered definite values.
Any thoughts? Where do you draw the line between which and what? Are times of the day really definite values?