Rainbow table



How does Rainbow table Function.
Please explain how reduction function computes hash value and then in the next stage generates a plain text.

What Hash algorithms does Rainbow table use.