Where a gateway handles north-south (client↔system) traffic, a service mesh manages east-west (service↔service) traffic. A sidecar proxy runs beside each service, transparently adding mTLS encryption, retries, timeouts, load balancing, and observability — no changes to application code. Tools like Istio/Linkerd provide it. Powerful, but added complexity worth it mainly at scale.