The Ethernet protocol began with technologies known as Thinnet (10Base-2) and Thicknet (10Base-5), connecting all devices together using the same coaxial cable and jointed together using T-Connectors.
When multiple devices sharing the same cable tried to communicate over the network at the same time, it would cause any seperate communications to collide with each other and become unusuable. Only one device can communicate over this shared media at any time or risk a collision. This means that the network card is operating on a half-duplex configuration. All the devices sharing this same physical media can be said to be within a single collision domain.
A protocol called Carrier Sense Multiple Access/Collison Detect (CSMA/CD) was used to ensure that only one device can speak at any time inside of a collision domain. If a device can hear another device transmissing across the shared physical media, it will wait an amount of time and check again if the cable is quiet. If the cable is quiet (no other devices are transmitting) it will begin transmitting the flow of data to it’s destination.
As more devices are added to the shared physical media, the efficiency of the network will decrease as more devices need to wait longer for other devices to send their data.
A network device known as a hub allows for more devices to the connect to the same network media but has no intelligence except for repeating network transmissions out and in of every port. It is the same as effectively multiple devices sharing the same cable even if they each plug in seperately to the this network device.
The successor to the network hub and vastly in use in most networks today is the network switch. Whilst it looks identical to the network hub it operates very differently.
The switch keeps in it’s local memory a list of all the MAC addresses of packets that transmit through the switches hardware and the network port on the switch that they originated from.
Keeping this list in the switches memory works to the networks advantage, the switch can selectively choose which port the network traffic it recieves needs to be sent out of, keeping the other ports free for transmissions.
There a couple of scenarios where a network switch is at no more of an advantage over a network hub. If a network packet arrives on the switch that it is not present on the switches list of MAC addresses, it needs to find out where to send the packet. It sends the packet out of every other onlnie port except the port it received the packet on. This is known as unknown unicast flooding. Another scenario where network packets will be sent out of every other port except the orginating port is if a broadcast (MAC address FF:FF:FF:FF:FF:FF) packet is recieved.
Whilst a broadcast packet will travel across an multiple collision domains and within the broadcast domain, it will not traverse mutilple broadcast domains. Keeping broadcast domains to a suitable size will help maintain network stability. This can be designed with the user of a router and VLANs, or Virtual LANs.