Network Switching Methods: Store-and-Forward Versus Cut-Through
Overview
Network engineers need to understand many things beyond the typical knowledge of a basic technician; for example, how switch or router electronics communicate between different types of hardware. Certain topics are best left to those with the skill set of an electrical engineer; even the most senior network engineer may not need to understand them. However, the line is fuzzy between hardware operations and the deployment, use, and configuration of network devices.
One thing that sits on this fuzzy line is the differences between the switching methods used by various models and makers of switches. The two primary methods are store-and-forward and cut-through. These methods are used on many different platforms, and each has its own way of handling the bits that enter and are processed by the switch. This article takes a look at these two switching methods, exploring how they work and their various advantages and disadvantages.
Store-and-Forward Switches: The Beginning
Switches (and bridges) historically operated using the store-and-forward switching method. This method’s operation is simple: When a frame comes into a switchport, the whole frame is brought into a buffer. When the complete frame has been received, the switch uses the Frame Check Sequence (FCS) value contained within the frame to perform an integrity check, ensuring that the frame has been received exactly as it was transmitted. If this integrity check fails, the frame is dropped; if the check passes, the information in the frame is parsed. This method of switching was used for a long time. For the most part, this is how switching is explained up to this point in most textbooks.
Cut-Through Switches: The Beginning
The early 1990s introduced cut-through switching. The first switches that supported this method were developed for the sheer purpose of forwarding frames as fast as possible. These switches accelerated frame forwarding by processing only the first six bytes of the frame (after the delimiter), where the destination MAC address is located. After processing these first six bytes, the switch had enough information to make a forwarding decision and move the frame to the appropriate switchport.
The advantage of this technique is speed; the disadvantage is that even frames with integrity problems are forwarded. Because of this disadvantage, cut-through switches were limited to specific positions within the network that required pure performance, and typically they were not tasked with performing extended functionality (core).
Store-and-Forward Switches: Evolution
The next evolution in switching came with the implementation of extended functionality—access control lists (ACL), Layer 3 routing, and so on—within the switch platform. These switches, not limited to being “dumb,” are tasked with doing more than simply forwarding frames out the appropriate switchports. Most modern switches are managed/smart, with some level of extended functionality that blends pure switch activities with other features that are closely linked with routers. IP routing and ACLs are typically associated with being implemented on routers, but many modern switches support both to some degree. The simplest of these switches may offer only basic static routing functionality and some limited ACL handling, but advanced models are built as full Layer 3 switches, supporting almost all the standard (Ethernet-based) functions of a router, including dynamic routing, ACLs, policy-based routing (PBR), quality of service (QoS) features, and more.
With the store-and-forward switching method, these capabilities are no problem because the complete frame can be buffered before it is forwarded out another switchport. This design allows the device to parse the contents and determine whether any of the previously mentioned extended features alter the way in which a frame should be processed. If so, the frame is decapsulated to the appropriate level and run through that feature’s process. If the frame is not affected, it is forwarded out the appropriate outbound switchport according to the typical switch mechanisms—MAC tables, STP interface states, and so forth—which is simply impossible using the legacy cut-through switching method.
When configured to use these extended functions, switches have typically been used in parts of the network where this functionality is needed. Over time, switch hardware has also been updated to establish performance close to that of previous cut-through switches, which made them very popular. This performance improvement led to phasing out the legacy cut-through switches in all parts of the network.
Cut-Through Switches: Evolution
Some switch vendors, including Cisco, recently began bringing back cut-through switching on some platforms, with enhancements that include dynamic frame processing. Instead of simply waiting for the first six bytes, these switches wait until at least enough of the frame is received to determine its EtherType. For example, if the frame’s EtherType indicates that an IP packet is encapsulated, and the switch is configured with IP extended functions, the switch will process enough of the frame to determine whether the packet contained within the frame matches one indicated in the configuration.
This design improvement allows a cut-through switch to operate in a way that extends performance, while retaining support for the extended features that many companies want to use.
Summary
At this point, beginning network engineers will wonder why this information is needed by anyone who is just getting into the field. The simplest answer is that this topic is covered on entry-level Cisco exams, which means that entry-level engineers need to understand it before taking their exams. Other new network engineers won’t necessarily need to be familiar with these two types of switches until they are experienced enough to be tasked with evaluating switches to be deployed into the network. I hope this article will give readers a better understanding of how these switching methods work and relate to each other, so that network engineers at any level will know which method to select if the question arises.