Unicast vs. Broadcast vs. Multicast vs. Anycast
Traffic delivery models for unicast, broadcast, multicast, and anycast.
These four terms describe how a packet is addressed and therefore how the network is expected to deliver it. They are often taught as vocabulary, but the useful question is operational: how many receivers should get the traffic, and who decides which receiver that is?
Unicast
Unicast is one sender to one destination address. This is the normal model for most internet traffic. When a browser fetches an HTTPS page or an app calls an API, it opens a conversation with one server endpoint at a time.
Unicast is straightforward to reason about because each request has one intended receiver. The tradeoff is efficiency when many clients need the same data. If one live video stream is sent to 10,000 viewers as unicast, the source or its distribution layer must create many independent flows. That is why unicast is simple but not always bandwidth-efficient for one-to-many delivery.
Broadcast
Broadcast is one sender to every host on the local broadcast domain. The sender is not choosing a subscriber group. It is asking the entire local network to listen. This is useful for discovery-style tasks such as ARP in IPv4 or some DHCP exchanges, where the sender does not yet know which specific host can answer.
The downside is noise. Every device on that segment has to inspect the frame even if only one of them cares. That is why broadcast is intentionally scoped. Routers generally do not forward ordinary layer-2 broadcast traffic across the wider internet. It would be wasteful and unsafe. IPv6 removed broadcast entirely and uses multicast for discovery instead.
Multicast
Multicast is one sender to a defined group of interested receivers. A client joins a multicast group, and the network tries to deliver the traffic only to members of that group. This is useful for IPTV, market data, some industrial systems, and other cases where the same content should reach many recipients without sending one copy per recipient.
Multicast is efficient when the network supports it properly, but the control plane is more complex than unicast. Switches and routers need group membership information, often through protocols such as IGMP or PIM. Many cloud and enterprise environments avoid heavy multicast use because the operational complexity is not worth it for ordinary application traffic.
Anycast
Anycast means several machines advertise the same IP prefix, and the routing system delivers a client to one of them, usually the topologically nearest according to routing policy. The sender addresses one destination, but the network chooses which instance answers.
This is why anycast is common for DNS resolvers, edge security services, and content delivery networks. It improves latency and resilience because the same service can be present in many locations under one address. The tradeoff is that "nearest" means nearest according to BGP and operator policy, not necessarily geographically nearest or least loaded. Troubleshooting can also be harder because two users hitting the same IP may land in different sites.
Choosing the right model
Use unicast when each conversation is specific to one server or one client. Use broadcast only for local discovery cases that truly need it. Use multicast when the same stream should reach many subscribed receivers efficiently and the network can support group routing. Use anycast when you want one service identity backed by many edge locations.
The core difference is control. Unicast lets the sender choose one target. Broadcast sends to everyone nearby. Multicast sends to a joined group. Anycast lets the routing system pick one instance from many. Once that distinction is clear, the protocol examples start to make sense.