SPF authorizes IPs/servers to send for the domain. DKIM signs each message with a cryptographic key, proving it wasn't altered and came from the domain. DMARC defines what to do when SPF or DKIM fail (none, quarantine or reject) and generates reports. The three complement each other: SPF and DKIM authenticate, DMARC enforces the policy and provides visibility.