Well, routers built the Internet, but it was network switches that scaled it. So, before we start, let’s get our terms correct. The transmission of data over Ethernet is defined at Layer 2 (Data Link Layer), and where we have a data frame. This data frame encapsulates a data packet, and which operates at Layer 3 (Network Layer). At Layer 5, we have the transport layer, and which defines a data segment.
With routers, we have a bottleneck for network packets, and where packets move from interface to interface. For switches, we can have multiple data frame transmissions at a time, and where we multiply up the bandwidth. Thus if we have a 10Gbps switch, and keep our communications at Layer 2, we can have multiple 10Gbps connections at a time, and which achieves an overall bandwidth which is much higher than 10Gbps.
One of the greatest switches of all time is the Cisco Catalyst 2900 series switch:
As they say, “No one was ever sacked for buying IBM”, then the same could be said about the mighty 2900 series switch. It fitted into 19-inch racks and was often the core element of a data infrastructure. In fact, it was so important, that it was often doubled up to provide redundancy against failures. For more serious data infrastructures, we had the power and resiliance of the 4500 series switch:
Overall switches work at Layer 2, and which devices discover other devices using the ARP protocol. The scope of the ARP transmission defines the scope of the network, and the hosts which can communicate over a subnet. This is defined as a broadcast domain. In order to separate networks, even though, they connect to the same switch, we use VLANs (virtual LANs), and which restrict the broadcast domain to the local VLAN. Two hosts cannot communicate with each other at Layer 2 if they are in separate VLANs.
In order to connect the same VLANs over different switches, we use a trunking protocol. This requires a special network connection, and where data frames are tagged with a given VLAN identifier, and then allows data frames to travel across switches.
So, here’s some switching config: