I'm going to move this to the main cruise forum for you where I'm sure you'll get more answers. As to the differences:
Asst. dining room server takes you drink orders and clears the plates, etc.
Dining room server takes all of your food orders and recommends dishes for the evening.
These two work in tandom on the same set of tables and travel with you on your dining rotation.
The head server is over a large group of tables/servers/asst. servers. Their job is to make sure things run smoothly. You actually won't see a lot of what they do and they do a lot behind the scenes. Really good ones will stop by the table each evening and will also be part of any celebrations you have (birthdays, anniveraries, etc.). They are also to go to person if you have any problems.