Linkerd is a service mesh that provides service discovery, routing, failure handling and visibility for microservices applications. It integrates with various container orchestration systems like Kubernetes and Nomad. Linkerd uses Envoy proxies deployed as sidecars next to applications to handle communication between services. It supports features like load balancing, failure handling, canary releases and observability via integrations with tools like Zipkin and Prometheus. Namerd is a companion service to Linkerd that handles service name resolution using delegation tables (dtabs) that map logical names to physical addresses obtained from service registries.