Scenario 1-3: Configuring Ethernet Device Connectivity


The scenarios in this chapter have so far focused on preparing a switch for operation on the network. Of course the primary role of a switch is to provide LAN connectivity for end devices. In this scenario you learn how to configure Ethernet device connectivity on Cisco Catalyst switches. Cisco Catalyst switches provide 10 Mbps, 100 Mbps, and 1000 Mbps connectivity for Ethernet-compliant devices. This scenario continues on from the previous scenarios; however, the scenario topology has changed somewhat with a few new devices and connections added as shown in Figure 1-17.

Figure 1-17. Scenario 1-3 Topology


In Figure 1-17, notice that a Cisco router called Router-A has been added to the network, which has an Ethernet interface that supports only 10 Mbps Ethernet operation. Two hosts called Host-A and Server-A have also been attached to Switch-A and Switch-B, respectively, which support 10/100 Mbps Ethernet operation. You also learn how to configure parameters relating to the operation of the gigabit Ethernet connection between Switch-A and Switch-B, which although present in the previous scenario, was not configured whatsoever.

Scenario Prerequisites

Before beginning the configuration tasks specific to the requirements of this scenario, it is important to ensure that any prerequisite hardware and software configurations are in place. In this scenario, Router-A is added to the network and must be configured with a hostname, appropriate passwords and an IP address of 192.168.1.1. Example 1-30 shows the configuration required on Router-A before beginning this scenario.

Example 1-30. Router-A Configuration for Scenario 1-3
 Router# configure terminal Router(config)# hostname Router-A Router-A(config)# enable secret cisco Router-A(config)# line vty 0 4 Router-A(config-line)# password cisco Router-A(config-line)# exit Router-A(config)# interface Ethernet0/0 Router-A(config-if)# no shutdown Router-A(config-if)# ip address 192.168.1.1 255.255.255.0 

Table 1-12 describes the configuration that is assumed to be in place on all other devices in the scenario topology, such as servers and hosts, prior to beginning the configuration tasks. All other configuration parameters are assumed to have default values.

Table 1-12. Scenario 1-3 Host Configuration Prerequisites

Configuration Parameter

Host-A

Server-A

Operating System

Any[1]

Any[1]

IP Address/Mask

192.168.1.100/24

192.168.1.50/24

Ethernet NIC

10/100BASE-T

10/100BASE-T

Ethernet Speed/Duplex

Auto-negotiate

100 Mbps full-duplex (must be hardcoded)


[1] Any operating system is supported, as long as each can generate network traffic and supports other parameters defined in this chapter.

Configuration Tasks

To configure Ethernet device connectivity for this scenario, the following configuration tasks are required:

  • Configuring Fast Ethernet ports

  • Configuring gigabit Ethernet ports

Configuring Fast Ethernet Ports

To control the operation of Fast Ethernet ports on Cisco Catalyst switches, the following information must be determined prior to configuration:

  • Speed and duplex Cisco Catalyst switches can be configured to autosense speed and duplex settings (default) or can be configured for specific speed and duplex settings.

  • Flow control Some Fast Ethernet devices support flow control, where devices can send pause frames, which instruct the remote end to stop sending data for a specific period of time.

In this section, you only learn how to configure access port speed and duplex settings. Although flow control is supported on Fast Ethernet switches, the performance of modern switches means that it is never invoked on interfaces operating at 100 Mbps. Flow control is, however, a useful feature for gigabit Ethernet interfaces, and you learn how to configure flow control later in this scenario.

Configuring Speed and Duplex Settings

A fundamental requirement for successful and reliable Ethernet performance is to ensure that both ends of an Ethernet connection are operating using the same speed and duplex settings. Fast Ethernet ports on Cisco Catalyst switches support operating in one of the following modes of operation:

  • 10 Mbps Half Duplex

  • 10 Mbps Full Duplex

  • 100 Mbps Half Duplex

  • 100 Mbps Full Duplex

It is likely that the most common issues in any LAN environment are performance and connectivity issues related to speed and duplex misconfiguration, leading to situations where each end of an Ethernet connection is using a different mode of operation. Such a situation leads to two possible outcomes:

  • No connectivity whatsoever This happens when one side of the connection is configured for 10 Mbps operation, while the other side is configured for 100 Mbps operation. When the two devices connect, the clocking rates on the circuit do not match, and both devices cannot establish physical layer connectivity. In other words, a speed mismatch means connectivity is not possible between two Fast Ethernet devices.

  • Connectivity with impaired performance This happens when a duplex mismatch occurs, where both devices are configured for the same speed; however, one device is configured for half-duplex operation, and the other is configured for full-duplex operation. In this situation, connectivity is established between the devices. However, the performance of the connection is severely impaired, as one side (full-duplex side) of the connection does not exercise the CSMA/CD algorithm, causing excessive collisions, partial fragments (which cause CRC errors), and excessive retransmissions.

As you can see from the preceding information, ensuring the correct speed and duplex settings are configured on both sides of an Ethernet connection is important.

When configuring speed and duplex settings, you have two options available:

  • Auto-negotiation A Fast Ethernet interface attempts to auto-negotiate speed and duplex settings upon link initialization. Successful auto-negotiation relies on both devices that form the connection to be configured for auto-negotiation. Auto-negotiation is typically used for user devices, such as PCs and laptops, because these devices might move around and attach to different ports in your LAN infrastructure, making the task of attempting to maintain specific speed and duplex settings for each user device in the network very difficult and time consuming.

  • Manual configuration A Fast Ethernet interface is manually configured with specific speed and duplex settings. Manual configuration is typically used for servers, routers, firewalls, and other fixed devices, because these types of devices typically are fixed in the same location and are attached to the same Ethernet port. Hence, the administration associated with manually configuring speed and duplex settings is typically a one-time only effort, outweighing the potential performance issues that might result from auto-negotiation compatibility issues).

Fast Ethernet auto-negotiation is defined in the IEEE 802.3u specification, and uses Fast Link Pulse (FLP) to negotiate speed and duplex settings between two Ethernet devices when they are first attached. With FLP, each device sends a series of pulses that announces its capabilities to the remote devicecapabilities include speed, duplex and the type of Ethernet operation supported (e.g., 100BASE-TX, 100BASE-T2, 100BASE-T4).

NOTE

Today the de facto Fast Ethernet standard is 100BASE-TX, which specifies Fast Ethernet operation using two pairs of Category 5 UTP and STP cabling. 100BASE-T2 and 100BASE-T4 are standards that allow Fast Ethernet operation over Category 3 cabling, using either two pairs or four pairs of wire respectively. It is very rare to find instances of 100BASE-T2 and 100BASE-T4 today.


On Cisco Catalyst switches, assuming a connecting device supports 10/100 Mbps and half-duplex modes of operation, both devices should auto-negotiate the most optimal mode of operation, which is 100 Mbps full duplex.

NOTE

Although the auto-negotiation feature is standards-based, it is common to find auto-negotiation compatibility issues between different Ethernet interface manufacturers. Auto-negotiation compatibility issues almost always result in duplex mismatches, which are hard to detect as connectivity is present. However, Ethernet performance is impaired due to the duplex mismatch. It is good practice to monitor port errors on Cisco Catalyst switches, so that you can detect possible duplex mismatches on ports where you believe devices should be communicating using full-duplex operation.


Myths of Auto-Negotiation

A common issue in many LAN environments is when one side of an Ethernet connection (typically the switch) has hardcoded speed and duplex settings, while the other side (normally a connecting device, such as a PC, laptop, or server) is configured to auto-negotiate speed and duplex settings. This is often due to the false belief that some administrators have that it is good practice to hardcode all of your switch ports to the most optimal speed and duplex settings (100 Mbps full duplex) with the mistaken impression that this will cause auto-negotiating devices that connect to the switch ports to negotiate to the most optimal mode of 100 Mbps full-duplex operation as well. In fact, this causes the oppositewhen a Fast Ethernet interface is configured with hardcoded speed and duplex settings, it will not send any FLP messages upon link initialization, meaning the remote device (which is configured for auto-negotiation) does not receive any messages informing it of the capabilities of the local device. The auto-negotiating device can detect the correct speed, due to the clock rate that the hardcoded device applies to the connection; however, it cannot detect the appropriate duplex setting because it receives no FLP messages. When this happens, the auto-negotiating device assumes a mode of half-duplex operation, which, of course, causes a duplex mismatch, because the manually configured device is configured for full-duplex operation and the auto-negotiating device has assumed half-duplex operation, causing severe performance degradation on the Ethernet connection.

In conclusion, when configuring Fast Ethernet ports on Cisco Catalyst switches, if you manually hardcode settings on a switch port, always ensure that the connecting device also has hardcoded settings. When configuring auto-negotiation, always ensure the connecting device also is configured for auto-negotiation.


To configure speed and duplex settings for interfaces on Cisco IOS, you must first enter interface configuration mode, which is performed using the interface global configuration mode command:

 Switch(config)# interface interface-type module/number Switch(config-if)# 

The interface-type parameter defines the type of interface you are configuring, while the module/number parameters identify the particular interface you are configuring. On Cisco IOS-based Catalyst switches, interfaces types include the following:

  • Fast Ethernet Specified using the fastEthernet keyword.

  • Gigabit Ethernet Specified using the gigabitEthernet keyword.

  • SVI Specified using the VLAN keyword, this configures a switch virtual interface (SVI) that is connected to the VLAN number specified by the interface-id parameter.

For identifying interfaces using the module/number parameter on fixed configuration switches that don't have modules (such as the Catalyst 2950/3550 switches), a module number of 0 is always used. Putting this all together, the first Fast Ethernet interface on a Catalyst 3550 is configured using the command interface fastEthernet 0/1. After you configure the interface command, you are placed into interface configuration mode, which is indicated by the config-if portion of the prompt.

You can also configure a range of interfaces at the same time, using the interface range command:

 Switch(config)# interface range interface-type module/number   [- number | , interface-type module/number] [...] Switch(config-if-range)# 

You can specify a contiguous range of interfaces (e.g., fastEthernet 0/1 to fastEthernet 0/4), as well as specify a list of non-contiguous interfaces (e.g., fastEthernet0/1, fastEthernet 0/3, and fastEthernet0/7 to fastEthernet 0/9). It is very important that you follow the syntax of the interface range command carefully; otherwise, Cisco IOS interprets your command as invalid. If you are specifying a range of interfaces, you need only to specify an interface number for the upper bound of the range, ensuring a space is included between the lower module/number parameter of the range, the dash character that defines a range of interfaces is being configured, and the upper number parameter of the range. If you are specifying a list of interfaces, you must specify the full module/number designation for each interface in the list, separating each interface by a comma character, and must also ensure a space is in between any module/number designation and comma. For example, the following interface range command is valid:

 Switch(config)# interface range fastEthernet 0/1  3 , fastEthernet0/6 ,   fastEthernet0/8 

However, the following interface range command is invalid because no space exists between the dash character and the full interface-type module/number designation is not used for specifying interface fastEthernet0/8:

 Switch(config)# interface range fastEthernet 0/13 , fastEthernet0/6 , 0/8                                                 ^ % Invalid input detected at '^' marker. 

TIP

If you work with a particular group of interfaces on a frequent basis, instead of explicitly specifying the group of interfaces using the interface range command each time you need to work with them, you can create an interface range macro using the define interface-range global configuration command, which allows you to define a group of interfaces and assign a group identifier to them. You can then easily configure the group of interfaces using the interface range macro group-identifier.


Now that you understand how to begin configuring an interface or range of interfaces, to configure speed and duplex settings for an interface you use the speed and duplex interface configuration commands, respectively:

 Switch(config-if)# speed {10 | 100 | auto} Switch(config-if)# duplex {half | full | auto} 

By default, all ports on Cisco IOS switches are configured to auto-negotiate. If you need to hardcode speed and duplex settings, you must first hardcode the speed setting and then the hardcode duplex setting.

In this scenario (see Figure 1-17), Router-A is a network device connected to Switch-A, for which you would normally hardcode speed and duplex settings. Router-A is a Cisco 2610 router, which includes only 10 Mbps Ethernet ports and by default operates at 10 Mbps half-duplex operation. Host-A is a user device connected to Switch-A, for which you would normally configure auto-negotiation of speed and duplex settings. Example 1-31 demonstrates configuring speed and duplex settings on Switch-A.

Example 1-31. Configuring Speed and Duplex Settings on Cisco IOS
 Switch-A# configure terminal Switch-A(config)# interface fastEthernet0/1 Switch-A(config-if)# description ROUTER-A Switch-A(config-if)# duplex half Duplex can not be set until speed is set to non-auto value Switch-A(config-if)# speed 10 Switch-A(config-if)# duplex half Switch-A(config-if)# exit Switch-A(config)# interface range fastEthernet0/2  23 , fastEthernet 0/24 Switch-A(config-if-range)# speed auto Switch-A(config-if-range)# duplex auto Switch-A(config-if-range)# exit Switch-A(config)# define interface-range WORKSTATION-PORTS fastEthernet0/2 - 24 Switch-A(config)# interface range macro WORKSTATION-PORTS Switch-A(config-if-range)# description WORKSTATION PORT Switch-A(config-if-range)# end Switch-A# show interface status Port      Name               Status       Vlan       Duplex  Speed Type Fa0/1                        connected    1            half     10 10/100BaseTX Fa0/2                        connected    1          a-full  a-100 10/100BaseTX Fa0/3                        notconnect   1            auto   auto 10/100BaseTX Fa0/4                        notconnect   1            auto   auto 10/100BaseTX ... (Output truncated) ... Switch-A# ping 192.168.1.1 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 192.168.1.1, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/4 ms Switch-A# ping 192.168.1.100 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 192.168.1.100, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 8/8/12 ms 

In Example 1-31, notice that the description interface configuration command can be used to assign some descriptive name to an interface. The first shaded line indicates that interface fastEthernet0/1 has a description of ROUTER-A, which is representative of the device (Router-A) attached to that interface. Next, an attempt is made to configure the duplex setting of the interface. Notice that when you attempt to hardcode duplex settings before speed settings, an error message is presented, indicating speed settings must be configured first.

After interface fastEthernet0/1 has been configured, notice that the interface range command is used to configure interfaces fastEthernet0/2 to fastEthernet0/23 and fastEthernet0/24, with a speed/duplex setting of auto configured (the command in Example 1-31 is used to demonstrate configuring a range and list in the same command and can be shortened to just interface range fastEthernet0/2 24). Using the interface range command reduces the number of configuration commands required to configure speed and duplex settings from 46 commands configuring each interface separately to just 2 commands.

NOTE

The speed/duplex configuration on the workstation interfaces is not actually required, because by default, all Fast Ethernet interfaces on Cisco Catalyst switches are configured for auto-negotiation.


Notice that an interface range macro is then defined, which defines interfaces fastEthernet0/2 to fastEthernet0/24 as belonging to the macro called WORKSTATION-PORTS. This macro is then referenced using the interface range macro command, which demonstrates how you can group interfaces and reference them using a descriptive name.

After each interface is configured, the show interface status command is executed, which provides a brief summary as to the current status and speed/duplex settings on each interface. The shaded output indicates that interface fastEthernet0/1 is operating 10 Mbps half duplex and that interface fastEthernet0/2 is operating at 100 Mbps full duplex, which has been auto-negotiated as indicate by the a- appended to the speed and duplex values. Finally, the ping command is used on Switch-A to successfully verify IP connectivity between the VLAN 1 management interface on Switch-A (configured in Scenario 1-2) to Router-A and Host-A.

NOTE

In Example 1-31, you need to wait for at least 30 seconds after connecting each device to allow the port to be placed into a forwarding state by spanning tree. Spanning tree is discussed in Chapter 4, "Spanning Tree."


To configure speed and duplex settings on CatOS, you use the set port speed and set port duplex commands, respectively:

 Switch> (enable) set port speed mod/port(s) {10 | 100 | auto} Switch> (enable) set port duplex mod/port(s) {half | full} 

Notice that the set port duplex command does not have an auto option. If the set port speed command is configured with a setting of auto, then the duplex setting is automatically set to auto-negotiate. You can specify a single port, or a range and/or list of ports, in a similar fashion to the interface range command on Cisco IOS. Just as for Cisco IOS, if you need to hardcode speed and duplex settings, you must first hardcode the speed setting and then the hardcode duplex setting (by default, all ports on CatOS switches are configured to auto-negotiate). In this scenario, Server-A is a server device connected to Switch-B, for which you would normally hardcode speed and duplex settings. Assuming Server-A is hardcoded to operate at 100 Mbps full duplex, Example 1-32 demonstrates configuring a matching speed and duplex configuration on Switch-B and then configuring all remaining ports on module 2 to operate in auto-sensing mode.

Example 1-32. Configuring Speed and Duplex Settings on CatOS
 Switch-B> (enable) set port name 2/1 SERVER-A Port 2/1 name set. Switch-B> (enable) set port duplex 2/1 full Port 2/1 is in auto-sensing mode. Switch-B> (enable) set port speed 2/1 100 Port(s)  2/1 speed set to 100Mbps. Switch-B> (enable) set port duplex 2/1 full Port(s)  2/1 set to full-duplex. Switch-B> (enable) set port speed 2/2-24,2/25,2/26-48 auto Ports 2/2-48 transmission speed set to auto detect. Switch-B> (enable) show port status Port  Name               Status     Vlan       Level  Duplex Speed Type ----- ------------------ ---------- ---------- ------ ------ ----- ------------  2/1  SERVER-A           connected  1          normal   full   100 10/100BaseTX  2/2                     notconnect 1          normal   auto  auto 10/100BaseTX  2/3                     notconnect 1          normal   auto  auto 10/100BaseTX  2/4                     notconnect 1          normal   auto  auto 10/100BaseTX ... (Output truncated) ... Switch-B> (enable) ping 192.168.1.50 !!!!! ----192.168.1.50 PING Statistics---- 5 packets transmitted, 5 packets received, 0% packet loss round-trip (ms)  min/avg/max = 6/7/9 

In Example 1-32, the set port name command is used to give a description of SERVER-A to port 2/1 on Switch-B. Notice that when you attempt to hardcode duplex settings before speed settings, an error message is presented, indicating the port is in auto-sensing mode (i.e., speed settings must be configured first). After configuring port 2/1, notice that the set port speed command is used with a range and list of ports to configure a speed of auto for all remaining ports on module 2. When specifying a range or list of ports, similar rules apply as for Cisco IOS, except you don't need to ensure spaces are present between the - and , characters.

After 100 Mbps full-duplex operation is configured, the show port status command is used to display current status and speed/duplex settings on each port. The shaded output indicates that port 2/1 is connected and operating at 100 Mbps full duplex. Finally, the ping command is used on Switch-B to successfully verify IP connectivity between the sc0 interface on Switch-B (configured in Scenario 1-2) and Server-A (you need to wait for at least 30 seconds after connecting Server-A to allow the port to placed into a forwarding state by spanning tree).

Configuring Gigabit Ethernet Ports

To configure the physical characteristics of gigabit Ethernet port operation on Cisco Catalyst switches, the following information must be determined prior to configuration:

  • Port negotiation Gigabit Ethernet interfaces use port negotiation to negotiate some of the physical characteristics that determine how the interface operates. Port negotiation extends the concept of auto-negotiation on 10/100 Ethernet interfaces past just speed and duplex settings and enables other settings such as flow control and remote fault information.

  • Flow control Flow control is important for gigabit Ethernet connections, where it is reasonable for the receive buffers on a gigabit interface to become full due to the high speeds of data transfer, causing congestion on the interface.

  • Jumbo frames Many high data-transfer applications, such as network attached storage (NASnot to be confused with network access server) support jumbo frames, which extend the maximum transmission unit (MTU) for Ethernet frames from 1518 bytes up to 9216 bytes. Using jumbo frames improves data throughput for data-intensive applications such as network attached storage.

Configuring Port Negotiation

Gigabit Ethernet interfaces use port negotiation to negotiate various parameters that relate to the physical operation of the interface. Port negotiation is used to exchange the following information:

  • Duplex settings All Cisco gigabit interfaces operate only in full-duplex mode.

  • Flow control capabilities Allows an interface to advertised whether or not it can support flow control features.

  • Remote fault information

Notice in the preceding list that speed is not included in the list of auto-negotiated features, because gigabit Ethernet interfaces operate only at gigabit speeds. There is no requirement to negotiate speed.

NOTE

Cisco Catalyst switches also support 10/100/1000BASE-T auto-sensing interface, which obviously can operate at different speeds. On these ports, the switch first detects the clock rate on the interface. If a speed of 10/100 Mbps is detected, the auto-negotiation procedures for Fast Ethernet are invoked. If a speed of 1000 Mbps is detected, the port negotiation procedures for gigabit Ethernet are invoked.


On Cisco Catalyst switches, when configuring gigabit Ethernet interfaces, the following rules apply:

  • You cannot modify speed or duplex settings on GBIC-based interfaces.

  • You can modify speed and duplex settings for 10/100/1000BASE-T interfaces.

  • You can disable port negotiation for 1000BASE-SX, 1000BASE-LX and 1000BASE-ZX GBIC-based interfaces.

  • You cannot disable port negotiation for 1000BASE-T GBIC-based interfaces.

  • If you enable port negotiation on a gigabit Ethernet interface, you must ensure port negotiation is configured on the other side of the connection. If port negotiation is enabled on one side but disabled on the other side, the interface configured for port negotiation does not come up.

  • If port negotiation is disabled on both sides of a gigabit Ethernet connection, the link comes up; however, some features such as flow control might not be supported depending on your configuration.

By default, gigabit Ethernet interfaces have port negotiation enabled, and for most situations, this configuration should not require modification. The only time you need to disable port negotiation is if you are connecting to a device that does not support port negotiation.

To configure port negotiation on Cisco IOS, the speed interface configuration command is used, even though port negotiation on gigabit Ethernet has nothing to do with speed. On GBIC-based interfaces, the speed command has the following syntax:

 Switch(config-if)# [no] speed nonegotiate 

Example 1-33 demonstrates ensuring port negotiation is enabled on Switch-A.

Example 1-33. Configuring Gigabit Ethernet Port Negotiation on Cisco IOS
 Switch-A# configure terminal Switch-A(config)# interface gigabitEthernet0/1 Switch-A(config-if)# speed nonegotiate 

To configure port negotiation on CatOS, the more intuitive set port negotiation configuration command is used:

 Console> (enable) set port negotiation mod/port(s) {enable | disable} 

Example 1-34 demonstrates ensuring port negotiation is enabled on Switch-B.

Example 1-34. Configuring Gigabit Ethernet Port Negotiation on Cisco IOS
 Switch-B> (enable) set port negotiation 1/1 enable Port 1/1 negotiation enabled Switch-B> (enable) show port negotiation 1/1 Port Link Negotiation ----- ---------------- 1/1 enabled 

In Example 1-34, the show port negotiation command is executed after enabling port negotiation, which verifies port negotiation is indeed enabled.

Configuring Flow Control

Flow control is a feature defined in the IEEE 802.3x specification, enabling a receiving device to signal congestion to a sending device, which allows for the sending device to temporarily halt transmission, alleviating congestion at the receiving device. Figure 1-18 demonstrates how flow control works.

Figure 1-18. 802.3x Flow Control


In Figure 1-18, the following events occur:

  1. The transmitter is sending data (frames) to the receiver. Note that Figure 1-18 represents only one direction of the connection. The roles (transmitter and receiver) are swapped for frames sent in the reverse direction.

  2. On the receiver, the receive buffers on the interface connected to the transmitter interface become full, causing a congestion condition. This is common when traffic is sent to a switch on a high-speed interface (e.g., gigabit Ethernet) and is then forwarded to a lower speed interface (e.g., Fast Ethernet). If the receiver now receives any more frames from the transmitter, they are discarded until the congestion is alleviated and the receive buffers emptied. To avoid this situation, the receiver sends a pause frame to the transmitter, which includes a wait time value. This instructs the transmitter to stop sending frames for the indicated wait time.

  3. Assuming the transmitter supports 802.3x flow control, it now stops sending frames for the wait time period. After the wait time period is over, the transmitter starts transmitting frames again.

  4. If the receiver clears the congestion before the wait period is over, it sends a pause frame with a wait time value of 0, which indicates to the transmitter it is okay to start transmitting again. This ensures that the connection is not idle if congestion is cleared before the transmitter is due to restart transmission.

  5. The transmitter restarts transmission, either due to the wait time expiring or due to a pause frame being received with a wait time of 0.

If congestion occurs at the receiver interface once again, the process just described starts again, with the receiver generated a pause frame.

All Cisco Catalyst switches that include gigabit Ethernet capabilities include support for flow control; however, depending on the type of gigabit Ethernet port you are using, support for flow control might be limited. On all Cisco Catalyst switches, all gigabit Ethernet interfaces support the ability to receive and respond to pause frames (i.e., act like the transmitter in Figure 1-18). However, some gigabit Ethernet ports do not support the ability to send pause frames (i.e., act like the receiver in Figure 1-18). The ability to receive and respond to pause frames is referred to as input flow control, and the ability to send pause frames is referred to as output flow control. Table 1-13 describes the capabilities of the various gigabit Ethernet ports on each Cisco Catalyst switch and also describes the flow control capabilities.

Table 1-13. Ethernet Flow Control Capabilities

Model

Port Type

Receive

Send

Catalyst 2900 (CatOS)

All Fast Ethernet

No

No

All gigabit Ethernet

Yes

No

Catalyst 2900XL/3500XL

All Fast Ethernet

No

No

All gigabit Ethernet

Yes

Yes

Catalyst 2950

All Fast Ethernet

No

No

All gigabit Ethernet

Yes

Yes

Catalyst 3550/3750

All Fast Ethernet

Yes

No

All gigabit Ethernet

Yes

Yes

Catalyst 4000/4500

All Fast Ethernet

No

No

Uplink gigabit Ethernet

Yes

No

Oversubscribed gigabit Ethernet

Yes

Yes

Catalyst 5000/5500

Fast Ethernet

Varies[1]

Varies[1]

All gigabit Ethernet except WS-X5410

Yes

Yes

WS-X5410 Uplink gigabit Ethernet

Yes

No

WS-X5410 Oversubscribed gigabit Ethernet

Yes

Yes

Catalyst 6000/6500

All Fast Ethernet

Yes

No

All gigabit Ethernet

Yes

Yes

All Ten gigabit Ethernet

Yes

Yes


[1] Check hardware module documentation or use show port capabilities command.

In Table 1-13, the Receive column indicates the ability to receive pause frames and pause transmission (input flow control), while the Send column indicates the ability to send pause frames in response to congestion on the receive buffers of a port (output flow control). Notice that the Catalyst 4000/4500 and Catalyst 5000/5500 include oversubscribed ports, which refers to oversubscription to the switch backplane, as well as uplink ports, which are non-oversubscribed ports (i.e., they have at least a 1 Gbps full-duplex connection to the switch backplane).

TIP

You can use the show interface interface-type interface-id capabilities command on Cisco IOS and the show port capabilities mod/port command on CatOS to determine whether or not a port supports send and/or receive flow control features.


To demonstrate the concept of oversubscribed and uplink ports, an example is now provided based upon the Catalyst 4000/4500 switch. On the Catalyst 4000/4500 switch, each module is provided with 3 * 2 Gbps full-duplex connections to the switching fabric. An example of a module for the Catalyst 4000/4500 that includes oversubscribed ports is the 18-port 1000BASE-X module (WS-X4418-GB) for the Catalyst 4000/4500 switch, which includes 2 * Uplink 1000BASE-X ports and 16 * oversubscribed 1000BASE-X ports. Figure 1-19 shows how bandwidth is allocated internally to the 18-port 1000BASE-X module on the Catalyst 4000/4500.

Figure 1-19. Internal Bandwidth Allocation for the 18-port 1000BASE-X Module on the Catalyst 4000/4500 Switch


In Figure 1-19, Port 1 and Port 2 are uplink ports, which means they are each allocated 1 Gbps full-duplex bandwidth (i.e., non-blocking) to the switch backplane. This means that the receive buffers on these ports never experience congestion, because the ingress bandwidth is the same as the egress bandwidth. Even if frames received on an uplink port are eventually switched out a lower speed Fast Ethernet port, congestion occurs at the egress port, because the frames received have been emptied from the receive buffers of the uplink port and switched to the transmit buffers of the egress port. Hence, uplink ports have no requirement for the ability to send flow control pause frames. Looking back at Figure 1-19, ports 310 and ports 1118 are oversubscribed ports, in that the total bandwidth of each group of ports (8 Gbps) is shared between a 2 Gbps connection to the backplane (i.e., possible blocking). This means an oversubscription of 4:1 exists, where if all ports in a group are connected and receiving traffic at the maximum possible rate of 1 Gbps, the bandwidth allocate to each port is only 250 Mbps, causing congestion on the receive buffers of each port. For this reason, the oversubscribed ports need to be able to signal congestion to transmitting devices, hence the ability to send flow control pause frames.

Now that you understand how flow control works, it is time to learn how to configure flow control on Cisco Catalyst switches. Before configuring flow control on the Catalyst 2950/3550 switches, it is important to understand that you should not configure flow control in conjunction with QoS features. This means you must disable all QoS features globally before configuring flow control. This restriction does not apply to Catalyst 4000/4500 switches or Catalyst 6000/6500 switches.

NOTE

QoS refers to the ability of a switch to classify certain types of traffic (e.g., voice, video, data), mark traffic, and then service each type of traffic appropriately. In other words, the ability to prioritize the forwarding of different types of traffic over other types of traffic. QoS is discussed in Chapter 9, "Quality of Service."


By default, QoS features are disabled globally on Cisco Catalyst 2950/3550 switches. However, it is good practice to verify that QoS is disabled and then disable QoS globally if required. To disable QoS globally on Cisco IOS, the no mls qos global configuration command is used. Example 1-35 demonstrates disabling QoS on Cisco IOS and then verifying that QoS is indeed disabled.

Example 1-35. Disabling QoS Globally on Cisco IOS
 Switch-A# configure terminal Switch-A(config)# no mls qos Switch-A(config)# exit Switch-A# show mls qos QoS is disabled 

In Example 1-35, after QoS is disabled, the show mls qos command is used to verify QoS is indeed disabled.

Getting back to configuring flow control, on Cisco Catalyst switches you have the ability to control whether or not a port responds to pause frames received and generate pause frames when congestion occurs (if supported). As indicated in the previous section on port negotiation, flow control capabilities are exchanged during the port negotiation process, and you can configure Cisco Catalyst switches to process pause frames received and/or send pause frames based on the flow control capabilities indicated by the remote device connected to a port.

To configure flow control on Cisco IOS switches, the flowcontrol interface configuration command is used to enable/disable flow control:

 Switch(config-if)# flowcontrol {receive | send} {on | off | desired} 

The receive keyword is used to enable/disable a port responding to pause frames, while the send keyword is used to enable/disable the sending of pause frames due to congestion. The on and off keywords enable or disable, respectively, the send or receive feature, while the desired keyword configures the interface to enable the send or receive feature only if the remote device indicates that capability to support flow control during port negotiation.

NOTE

By default on the Catalyst 2950/3550, the receive feature is set to off and the send feature is set to desired for gigabit Ethernet ports. The receive feature is set to off as the Catalyst 3550 is a non-blocking switch. Hence, if congestion does occur it normally happens at the transmit queue of a lower-speed port, not at the receive queue (buffer) of a Gigabit Ethernet port. For Fast Ethernet ports, the receive and send feature is set to off by default.


Example 1-36 demonstrates configuring interface gigabitEthernet 0/1 on Switch-A to enable the send and receive features only if the remote switch indicates the ability to support flow control during port negotiation.

Example 1-36. Configuring Flow Control on Cisco IOS
 Switch-A# configure terminal Switch-A(config)# interface gigabitEthernet0/1 Switch-A(config-if)# flowcontrol send desired Switch-A(config-if)# flowcontrol receive desired Switch-A(config-if)# end Switch-A# show interfaces gigabitEthernet0/1 GigabitEthernet0/1 is up, line protocol is up (connected)   Hardware is Gigabit Ethernet, address is 0009.b7aa.9c99 (bia 0009.b7aa.9c99)   MTU 1500 bytes, BW 10000 Kbit, DLY 1000 usec,      reliability 255/255, txload 1/255, rxload 1/255   Encapsulation ARPA, loopback not set   Keepalive set (10 sec)   Auto-duplex, Auto-speed   input flow-control is off, output flow-control is on   ARP type: ARPA, ARP Timeout 04:00:00 ... (Output Truncated) ... 

In Example 1-36, after flow control is configured, the show interfaces command is used to verify the current flow control configuration of the interface. The shaded line indicates that input (receive) flow control is off, which is due to the fact that Switch-B has indicated it does not support output (send) flow control on its port (as port 1/1 on Switch-B is an uplink port, which does not support the send feature as indicated in Table 1-13). However, output (send) flow control is enabled, which is due to the fact that Switch-B has indicated the ability to support input flow control on its port during port negotiation.

To configure flow control on CatOS switches, the set port flowcontrol command is used to enable/disable flow control:

 Console> (enable) set port flowcontrol mod/port(s) {receive | send}   {on | off | desired} 

Each of the receive, send, on, off, and desired keywords has the same meaning as it does for Cisco IOS.

NOTE

By default on CatOS, for uplink (non-oversubscribed) gigabit Ethernet ports, the receive feature is set to off and the send feature is set to desired (if send is supported). For oversubscribed gigabit Ethernet ports, the receive feature is set to desired, and the send feature is set to on. For CatOS platforms that support flow control for Fast Ethernet ports, the receive feature is set to off by default (the send feature is not supported on Fast Ethernet ports).


Example 1-37 demonstrates configuring port 1/1 on Switch-B to enable the receive feature only if the remote switch indicates the ability to support flow control during port negotiation.

Example 1-37. Configuring Flow Control on CatOS
 Switch-B> (enable) set port flowcontrol send 1/1 desired Port 1/1 flow control send administration status set to desired (port will send flowcontrol to far end if far end supports it) Switch-B> (enable) set port flowcontrol receive 1/1 desired Port 1/1 flow control receive administration status set to desired (port will allow far end to send flowcontrol if far end supports it) Switch-B> (enable) show port flowcontrol 1/1 Port   Send-Flowcontrol   Receive-Flowcntl   RxPause   TxPause        Admin   Oper       Admin   Oper -----  ----------------   ----------------   -------   ------  1/1   off     off        desired on         0         0 

In Example 1-37, after flow control is configured, the show port flowcontrol command is used to verify the current flow control configuration of the port. The shaded line for receive (input) flow control indicates an administrative (configured) status of desired and an operational status of on, which is due to the fact that Switch-A has indicated the ability to support output flow control during port negotiation.

Configuring Jumbo Frames

In recent years, storage technologies such as storage area networking (SAN) and network attached storage (NAS) have become popular, because they allow organizations to consolidate storage, providing greater scalability and performance for data center environments.

NAS is a technology that allows storage devices, such as disk farms and tape libraries, to be accessible via the data network, reducing the costs associated with implementing other storage technologies such as SANs that implement out-of-band networks dedicated to storage. Protocols such as iSCSI (SCSI over IP) and Fiberchannel over IP have been developed, which enable servers to mount volumes located on a NAS as virtual file systems, transparent of the data network that separates the server and NAS. The amount of traffic generated by a NAS is significant, because file operations are typically data intensive, reading and/or writing sometimes gigabytes of information in a single file request. The relatively small default MTU of Ethernet frames (i.e., a maximum payload of 1500 bytes) means that six frames are required to execute even the most basic of I/O operations (i.e., read or write an 8 KB sector from disk).

For a NAS to effectively provide disk access for other network devices, it must be able to burst large amounts of data with very low latencies; having to generate large amounts of 1500-byte Ethernet frames increases system load and also increases latency. Jumbo frames extend the default MTU from 1500 bytes up to 9216 bytes (the actual value might vary depending on the Cisco Catalyst switch platform), which allows for greater data throughput for applications such as NAS.

Two types of oversized Ethernet frames exist, with jumbo frames being one of them. The other oversized frame is referred to as a baby giant. Each of these oversized frames is described as follows:

  • Baby giants These frames are up to 1600 bytes in size (MTU of 1548 or 1552 bytes) and accommodate applications such as MPLS, where one or more MPLS labels are attached to between the Ethernet header and IP header.

  • Jumbo frames These frames are up to 9216 bytes in size and are designed for applications such as storage that require a large MTU to burst larges amounts of information efficiently and with low latency.

Table 1-14 lists support for oversized frames on Cisco Catalyst switches, with the default MTU and largest MTU listed.

Table 1-14. Oversized Frame Support on Cisco Catalyst Switches

Platform

Minimum Software Version

Default MTU (Bytes)

Largest MTU (Bytes)

Catalyst 2900XL/3500XL

12.0(5.2)XU

1500

2018

Catalyst 2950 (SI)

Oversized frames not supported

1500

1500

Catalyst 2950 (EI)

12.1(6)EA2

1500

1530

Catalyst 3550 (Fast Ethernet switches)

12.1(6)EA1

1500

1546

Catalyst 3550-12G

Catalyst 3550-12T

12.1(6)EA1

1500

2000[1]

Catalyst 3750

Supported in all versions

1500

1546 (10/100 ports) 900 (Gigabit ports)

Catalyst 4000/4500 Supervisor 1/2

Oversized frames not supported

1500

1500

Catalyst 4000/4500 Supervisor 3/IV

Cisco IOS 12.1(12c)EW

1500

1552

 

Cisco IOS 12.1(13)EW

1500

9198

Catalyst 5000/5500 (CatOS)

CatOS 6.1(1)

1548

9000[2]

24000[2]

Catalyst 6000/6500 (CatOS)

CatOS 6.2(1)

1548

9216[3]

Catalyst 6000/6500 (Native IOS)

Cisco IOS 12.1(1)E

1500

9216


[1] Prior to 12.1(9)EA1, a MTU of 2025 is configurable. The time of writing, the Catalyst 3750 was not shipping, and no system documentation is available.

[2] The WS-X5213, WS-X5224, WS-X5225R, WS-X5234, and WS-X5410 modules support jumbo frames up to 9000 bytes. All other Ethernet ports support jumbo frames up to 24000 bytes.

[3] The WS-X6148-XX, WS-X6248-XX, and WS-X6348-XX modules support a maximum ingress MTU of only 8092 bytes. This also applies for the WS-6516-GE-TX module ports when operating at 100 Mbps.

As you can see from the preceding table, support for oversized frames varies, with some switches supporting baby giants and few supporting jumbo frames. If you are looking at implementing switches in a data center environment where you might run high data transfer applications (e.g., NAS) that will benefit from jumbo frames, then you must be careful about the switch models that you deploy.

NOTE

In this scenario, neither Switch-A (Catalyst 3550) nor Switch-B (Catalyst 4000 Supervisor 2) support jumbo frames; hence, you can't actually configure jumbo frames on the switches for this scenario. However, on Switch-A you can support baby giants, which is demonstrated in this chapter. The configuration of jumbo frames is also demonstrated, with examples provided from a Catalyst 4000 with Supervisor 4 (Cisco IOS) and a Catalyst 6500 (CatOS).


The way in which you configure oversized frames on Cisco Catalyst switches depends on the switch platform and operating system.

On the Catalyst 2950/3550 (Cisco IOS), the default MTU for all ports is 1500 bytes; however, you can modify this on a system-wide basis by configuring the system mtu global configuration command. Example 1-38 demonstrates configuring the maximum possible MTU on Switch-A to support baby giants.

Example 1-38. Configuring Support for Baby Giants on the Catalyst 3550
 Switch-A# configure terminal Switch-A(config)# system mtu 1546 Changes to the System MTU will not take effect until the next reload is done. Switch-A(config)# exit Switch-A# show system mtu System MTU size is 1500 bytes On next reload, system MTU will be 1546 bytes 

In Example 1-38, notice that after configuring the largest possible MTU on Switch-A (1546 bytes, which is the largest for Fast Ethernetbased Catalyst 3550 switches), Cisco IOS notifies you that the changes to the MTU are not applied until after the switch is rebooted. The show system mtu command is then used to view the current MTU, which indicates the MTU is currently 1500 bytes but will be 1546 bytes after the next reload.

On the Catalyst 4000/4500 Supervisor 3/IV with Cisco IOS, the default MTU for all ports is 1500 bytes; however, you can modify this by configuring the following:

  • Enable baby giants (up to 1552 bytes) for all ports on a system-wide basis using the system mtu global configuration command.

  • Enable jumbo frames (up to 9198 bytes) on a per-interface basis for gigabit Ethernet, switch virtual interfaces (SVI), and port channel interfaces (virtual interfaces that represent EtherChannel bundles), using the mtu interface configuration command.

Example 1-39 demonstrates configuring baby giants and configuring jumbo frames for a gigabit Ethernet interface on a Catalyst 4000 switch with Supervisor 4 engine.

Example 1-39. Configuring Baby Giants and Jumbo Frames on a Catalyst 4000 with Supervisor 4
 cat4000-s4# configure terminal cat4000-s4(config)# system mtu 1552 cat4000-s4(config)# interface gigabitEthernet 1/1 cat4000-s4(config-if)# mtu 9198 

In Example 1-39, the MTU for all ports is configured to support baby giants up to 1552 bytes in size. The gigabitEthernet 1/1 interface is then configured to support jumbo frames up to 9198 bytes in size.

On the native IOS Catalyst 6000/6500 (Cisco IOS-based), the default MTU is 1500 bytes; however, you can increase the MTU by configuring the following:

  • Enable jumbo frames (up to 9216 bytes) for all ports on a system-wide basis using the system jumbomtu global configuration command.

  • Enable jumbo frames (up to 9216 bytes) on a per-interface basis for gigabit Ethernet, switch virtual interfaces (SVI), and port channel interfaces (virtual interfaces that represent EtherChannel bundles), using the mtu interface configuration command.

Example 1-40 demonstrates configuring a global system MTU of 9000 bytes and configuring jumbo frames with the largest MTU possible for a gigabit Ethernet interface on a native IOS Catalyst 6000 switch.

Example 1-40. Configuring Jumbo Frames on a Native IOS Catalyst 6000 Switch
 Cat6000# configure terminal Cat6000(config)# system jumbomtu 9000 Cat6000(config)# interface gigabitEthernet 1/1 Cat6000(config-if)# mtu 9216 

On Catalyst 6000/6500 switches running CatOS, the default MTU is 1548 bytes; however, you can increase the MTU to 9216 bytes on a per-port basis by using the set port jumbo configuration command. Example 1-41 demonstrates configuring jumbo frames for a gigabit Ethernet interface on a Catalyst 6000 switch running CatOS.

Example 1-41. Configuring Jumbo Frames on Catalyst 6000 Switch Running CatOS
 Cat6000> (enable) set port jumbo 1/1 enable Jumbo frames enabled on port 2/1 Cat6000> (enable) show port jumbo Jumbo frames MTU size is 9216 bytes Jumbo frames enabled on port(s) 1/1 

In Example 1-41, notice that you cannot specify the MTU on a Catalyst 6000/6500 switch running CatOS. If you enable jumbo frames, the MTU is automatically set to 9216 bytes, as confirmed by the show port jumbo command.




CCNP Self-Study CCNP Practical Studies. Switching
CCNP(R) Practical Studies: Switching (CCNP Self-Study)
ISBN: 1587200600
EAN: 2147483647
Year: 2002
Pages: 135
Authors: Justin Menga

Similar book on Amazon

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net