Some people do recommend using diluted Isopropyl alcohol (think that is how you spell it) which should be available from a good chemist, but I wouldn't personally as I think it could very likely do more damage.
You can also buy something called Pec-12 emulsion cleaner and Pec-Pads to which are specifically designed for cleaning soiled photos. They are aimed at more modern geletine hardened prints though, so if your photograph is very vintage, I would have reservations. Here is a link to the solution on amazon.ca
An excellent info page on the Pec-12 emulsion cleaner and pads can be found here.
My personal recommendation would be to scan the image and clean it up digitally, keep the original for prosperity, but get your nicely photoshoped version printed for general viewing.
If you are unable to take on the restoration work yourself there are quite a few people who can do it for a small fee on-line, most of which you don't need to send the original away if you can scan it yourself.