Frame Forwarding
Switching as a General
Concept in Networking and Telecommunications
The concept of switching and
forwarding frames is universal in networking and telecommunications. Various
types of switches are used in LANs, WANs, and the public switched telephone
network (PSTN). The fundamental concept of switching refers to a device making
a decision based on two criteria:
- Ingress port
- Destination address
The decision on how a switch
forwards traffic is made in relation to the flow of that traffic. The term
ingress is used to describe where a frame enters the device on a port. The term
egress is used to describe frames leaving the device from a particular port.
When a switch makes a decision,
it is based on the ingress port and the destination address of the message.
A LAN switch maintains a table
that it uses to determine how to forward traffic through the switch. Click the
Play button in the figure to see an animation of the switching process. In this
example:
- If a message enters switch port 1 and has a destination address of EA, then the switch forwards the traffic out port 4.
- If a message enters switch port 5 and has a destination address of EE, then the switch forwards the traffic out port 1.
- If a message enters switch port 3 and has a destination address of AB, then the switch forwards the traffic out port 6.
The only intelligence of the LAN
switch is its ability to use its table to forward traffic based on the ingress
port and the destination address of a message. With a LAN switch, there is only
one master switching table that describes a strict association between
addresses and ports; therefore, a message with a given destination address
always exits the same egress port, regardless of the ingress port it enters.
Cisco LAN switches forward
Ethernet frames based on the destination MAC address of the frames.
Dynamically Populating
a Switch MAC Address Table
Switches use MAC addresses to
direct network communications through the switch to the appropriate port toward
the destination. A switch is made up of integrated circuits and the
accompanying software that controls the data paths through the switch. For a
switch to know which port to use to transmit a frame, it must first learn which
devices exist on each port. As the switch learns the relationship of ports to
devices, it builds a table called a MAC address, or content addressable memory
(CAM) table. CAM is a special type of memory used in high-speed searching
applications.
LAN switches determine how to
handle incoming data frames by maintaining the MAC address table. A switch
builds its MAC address table by recording the MAC address of each device
connected to each of its ports. The switch uses the information in the MAC
address table to send frames destined for a specific device out the port which
has been assigned to that device.
A switch populates the MAC
address table based on source MAC addresses. When a switch receives an incoming
frame with a destination MAC address that is not found in the MAC address
table, the switch forwards the frame out of all ports (flooding) except for the
ingress port of the frame. When the destination device responds, the switch
adds the source MAC address of the frame and the port where the frame was
received to the MAC address table. In networks with multiple interconnected
switches, the MAC address table contains multiple MAC addresses for a single
port connected to the other switches.
The following steps describe the
process of building the MAC address table:
1.The switch receives a frame from PC 1 on Port 1 (Figure 1).
1.The switch receives a frame from PC 1 on Port 1 (Figure 1).
Figgure 1.
2. The
switch examines the source MAC address and compares it to MAC address table.
·
If the address is not in the MAC address table,
it associates the source MAC address of PC 1 with the ingress port (Port 1) in
the MAC address table (Figure 2).
·
If the MAC address table already has an entry
for that source address, it resets the aging timer. An entry for a MAC address
is typically kept for five minutes.
Figure 2.
3. After the switch has recorded
the source address information, the switch examines the destination MAC
address.
·
If the destination address is not in the MAC
table or if it’s a broadcast MAC address, as indicated by all Fs, the switch
floods the frame to all ports, except the ingress port (Figure 3).
Figure 3.
4. The destination device (PC 3)
replies to the frame with a unicast frame addressed to PC 1 (Figure 4).
Figure 4.
5. The switch enters the source
MAC address of PC 3 and the port number of the ingress port into the address
table. The destination address of the frame and its associated egress port is
found in the MAC address table (Figure 5).
Figure 5.
6. The switch can now forward
frames between these source and destination devices without flooding, because
it has entries in the address table that identify the associated ports (Figure
6).
Figure 6.
Switch Forwarding Methods
As networks grew and enterprises
began to experience slower network performance, Ethernet bridges (an early
version of a switch) were added to networks to limit the size of the collision
domains. In the 1990s, advancements in integrated circuit technologies allowed
for LAN switches to replace Ethernet bridges. These LAN switches were able to
move the Layer 2 forwarding decisions from software to application-specific-integrated
circuits (ASICs). ASICs reduce the packet-handling time within the device, and
allow the device to handle an increased number of ports without degrading
performance. This method of forwarding data frames at Layer 2 was referred to
as store-and-forward switching. This term distinguished it from cut-through
switching.
Store-and-Forward Switching
Store-and-forward switching has
two primary characteristics that distinguish it from cut-through: error
checking and automatic buffering.
Error Checking
A switch using store-and-forward
switching performs an error check on an incoming frame. After receiving the
entire frame on the ingress port, as shown in the figure, the switch compares
the frame-check-sequence (FCS) value in the last field of the datagram against
its own FCS calculations. The FCS is an error checking process that helps to
ensure that the frame is free of physical and data-link errors. If the frame is
error-free, the switch forwards the frame. Otherwise the frame is dropped.
Automatic Buffering
The ingress port buffering
process used by store-and-forward switches provides the flexibility to support
any mix of Ethernet speeds. For example, handling an incoming frame traveling
into a 100 Mb/s Ethernet port that must be sent out a 1 Gb/s interface would
require using the store-and-forward method. With any mismatch in speeds between
the ingress and egress ports, the switch stores the entire frame in a buffer,
computes the FCS check, forwards it to the egress port buffer and then sends it.
Store-and-forward switching is
Cisco’s primary LAN switching method.
A store-and-forward switch drops
frames that do not pass the FCS check, therefore does not forward invalid
frames. By contrast, a cut-through switch may forward invalid frames because no
FCS check is performed.
Cut-Through Switching
An advantage to cut-through
switching is the ability of the switch to start forwarding a frame earlier than
store-and-forward switching. There are two primary characteristics of
cut-through switching: rapid frame forwarding and fragment free.
Rapid Frame Forwarding
As indicated in the figure, a
switch using the cut-through method can make a forwarding decision as soon as
it has looked up the destination MAC address of the frame in its MAC address
table. The switch does not have to wait for the rest of the frame to enter the
ingress port before making its forwarding decision.
With today’s MAC controllers and
ASICs, a switch using the cut-through method can quickly decide whether it
needs to examine a larger portion of a frame’s headers for additional filtering
purposes. For example, the switch can analyze past the first 14 bytes (the
source MAC address, destination MAC, and the EtherType fields), and examine an
additional 40 bytes in order to perform more sophisticated functions relative
to IPv4 Layers 3 and 4.
The cut-through switching method
does not drop most invalid frames. Frames with errors are forwarded to other
segments of the network. If there is a high error rate (invalid frames) in the
network, cut-through switching can have a negative impact on bandwidth; thus,
clogging up bandwidth with damaged and invalid frames.
Fragment Free
Fragment free switching is a
modified form of cut-through switching in which the switch waits for the
collision window (64 bytes) to pass before forwarding the frame. This means
each frame will be checked into the data field to make sure no fragmentation
has occurred. Fragment free mode provides better error checking than
cut-through, with practically no increase in latency.
The lower latency speed of
cut-through switching makes it more appropriate for extremely demanding,
high-performance computing (HPC) applications that require process-to-process
latencies of 10 microseconds or less.
No comments:
Post a Comment