Collision vs Broadcast Domains: How to Use Them
Quick Definition: Collision domains arise when nodes on a network segment collide while attempting to transmit data simultaneously. Switches and full-duplex communication mitigate this. On the other hand, broadcast domains involve packets sent to all nodes on a network segment, and strategies like VLANs and routers are employed to manage and reduce unnecessary broadcasts, ensuring efficient network communication.
In the early days of wired ethernet, collision and broadcast domains were almost synonymous because all traffic from one machine was broadcast to every machine on the segment. Today, they are very different. In this article, we'll explore the differences between collision and broadcast domains, learn how to avoid collisions, and how to use broadcasts.
What is a Collision and Collision Domain?
Collisions occur when two or more nodes on a half-duplex network attempt to send data simultaneously. When this happens, the network detects the collision, and both nodes stop transmitting. Each node then attempts to retransmit at random intervals to avoid another collision.
A collision domain is a network segment containing nodes that are capable of causing collisions with each other. If two nodes can cause collisions, but not with each other, they are on different collision domains.
It's important to note that in modern networks, collisions are far less common due to switches and dedicated (full-duplex) communication paths.
How to Avoid Collisions — and Fix Them if They Happen
Collisions have been around since the advent of ethernet. CSMA/CD is a core protocol built to detect collisions in wired ethernet. CSMA/CA was built to avoid collisions and used in wireless networks. Most modern equipment has the technology to avoid collisions altogether, which is the best policy. However, here's how to reduce collisions if they occur.
Add Routers
In older environments, where half duplex was the norm or full duplex was not possible, implementing routers was the original solution to collision domains. It would not completely alleviate them, but it did help minimize occurrences. Switches were expensive at the time, and routers were slightly more cost-effective. However, it's challenging to introduce routers into a topology solely to split up collision domains. Luckily, there are better options.
Use Switches and Full Duplex
Switches with full-duplex ports completely alleviate a collision domain. Nodes that can negotiate full duplex do not have collision domains. In the case of half-duplex ports, switches also limit collision domains, further helping this along.
Half duplex is not a valid negotiation for network speeds of 1 Gbps and higher. Half duplex was only a valid option at 100 Mbps and lower. If there were issues with the network or the negotiation process, it might default to half duplex. These half-duplex negotiations were typically caused by faulty wiring but could sometimes indicate a bad network card or switch port.
Avoid Channel Saturation
For wireless, excessive collisions happen due to channel saturation. With many nodes communicating over the same channel, they are bound to collide. The key is to have enough access points on enough non-overlapping channels to minimize the collision domain.
For 2.4 GHz, there are only three non-overlapping channels. The 5 GHz spectrum has many more, but that number depends on your channel width. The best mitigation strategy for wireless is ensuring you are using 5 GHz when possible, ensuring access points are properly spaced to avoid interference, and using sufficient access points on a diverse set of channels.
What is a Broadcast and Broadcast Domain?
A broadcast is a packet or frame destined for all nodes on the network segment. These are typically used when the specific endpoint is not known. Commonly, they are used for discovery services to seek those unknown nodes.
A broadcast domain is a segment of the network where broadcasts from any node will reach all other nodes in that broadcast domain. Another way of putting it is that broadcasts will only reach nodes in the same broadcast domain.
Unlike collisions, broadcasts can be very useful. Workstations may use them to auto-discover a printer on the same network or other devices it needs to communicate with. DHCP is a common protocol that uses broadcasts to help auto-assign IP addresses to workstations. The workstation starts out without an IP address and does not know the DHCP server's IP address.
It uses a broadcast to discover and request an IP from the DHCP server. The DHCP server responds back with a broadcast because the workstation does not have an IP address at this point, and they negotiate until the workstation has an IP address. Equipment vendors such as SANs have even been known to use them for first-time setup discovery until an IP address is configured.
Broadcasts can be inefficient, though, because they are sent to every device on the same LAN segment. A network of DHCP clients and printers can be quite chatty. If you have hundreds of endpoints, or even thousands, broadcasts could quickly consume the LAN segments.
5 Methods for Handling Broadcasts
Luckily, modern equipment can minimize these broadcasts with VLANs, DHCP Helpers, Multicast, or implementing routers between segments. In severe cases, broadcast suppression can be enabled. Let's explore how these methods work.
Routing
Routers were one of the original solutions for segmenting broadcast domains. By default, broadcasts are only sent to machines within the same IP subnet. Routers could be configured to forward broadcasts to other subnets/networks when necessary, but use was limited because the goal of implementing a router was to split up broadcast domains.
VLANs
With the advent of VLAN functionality in switches, we could use this to split up the broadcast domains. Workstations still needed to use broadcasts to help discover services, but VLANs could be broken out by clients, printers, and endpoints that needed to communicate with each other. Routers could then route between VLANs when necessary. Layer 3 switches started to negate the need for internal routers between VLANs.
DHCP Helpers
As switches got even smarter, IP or DHCP helpers started showing up. This is a process on the switch that would listen to DHCP requests. It would prevent them from being forwarded to all ports and redirect them directly to the DHCP server. Doing so saves everyone from hearing that chatter.
Multicast
Multicast is another protocol that greatly reduces noisy broadcasts when implemented properly. Discovery of services usually produces a small burst of broadcasts, which usually does not generate much traffic. Streaming video services where you want a server to send data to multiple endpoints but don't want to send it multiple times is a great use case for multicast. Sending this as a broadcast, though, would mean even those who do not want the traffic will still receive it.
Some "real-time" applications also use multicast to send data to multiple nodes at the same time. Multicast allows clients to subscribe to services or endpoints and receive the data they are interested in. It can be somewhat complex to set up properly and is often misunderstood. In its default configuration, it typically reverts back to using broadcasts.
Broadcast Suppression
Broadcast suppression is an option baked into switching hardware. It allows you to configure a user-defined threshold for broadcast traffic and simply blocks the broadcast traffic to a port or set of ports to meet that threshold. This can provide undesirable results because expected/needed broadcasts are dropped along with the unwanted and bursty broadcasts.
Collision Domain Vs. Broadcast Domain
Less collisions lead to less overhead and fewer delays in packets arriving at their destination. In most cases, the strategy is to mitigate these to as close to zero as possible. On the other hand, broadcasts can be acceptable and are often used. Reducing broadcasts can create a more efficient network, but don't worry about going overboard trying to get these to zero.
Less broadcasts lead to more efficient network transmissions and less overhead that needs to be processed by nodes on the LAN segments. At the end of the day, many networking protocols use broadcasts like Spanning Tree (STP), OSPF, and DHCP as a few examples.
Not a CBT Nuggets subscriber? Sign up for a 7-day free trial.
delivered to your inbox.
By submitting this form you agree to receive marketing emails from CBT Nuggets and that you have read, understood and are able to consent to our privacy policy.