What is NAT and why does it exist?