top of page

1.4 Identify interface and cable issues (collisions, errors, mismatch duplex, and/or speed)

Collisions

Collisions were only a real problem in previous generation Ethernet networks, where shared media forced the use of primarily half-duplex. This meant that only one device within the collision domain could transmit at a time.  Collisions afflicted bus and hub networks, and the use of CSMA/CD was required to improve network stability and performance.

 

In modern networks, as each port on a switch is it's own collision domain with full-duplex, collisions are close to impossible.  Collision detection is disabled on a full-duplex interface.

CCollisions.png
Identifying Collisions on a Cisco Appliance

To identify a collision the most used command is "sh interfaces [Interface Number]". Specifically we are looking for the CRC (Cyclic Redundancy Check), frame and collision counters within the output. Lets look at an example below:

COLLISIONSCLI.png

Errors

Network errors beyond collisions are still very much an issue that can cause service degradation or outages. Using the "sh interfaces" command we can quickly check if any issues are due to an incrementing error counter. When investigating a network issue or outage, the error counters are a very useful tool in determining the possible cause. For example, a high CRC count could indicate a duplex mismatch, or high overruns may indicate that the appliance hardware specifications do not fit the use criteria. Lets review a "sh interfaces" output to see what each counter in bold means using the below example:

CLI outputs in bold font like this will have an explanation just below. The below output is same as the screenshot above in the Collisions section of this page.

 

NbRTR1#sh interfaces GigabitEthernet0/1

GigabitEthernet0/1 is administratively down, line protocol is down (disabled)

Shows the status of the line, in this case it is manually in a shutdown state.

 

  Hardware is CN Gigabit Ethernet, address is 00d0.bc33.c602 (bia 00d0.bc33.c602)

  MTU 1500 bytes, BW 1000000 Kbit, DLY 10 usec,

MTU denotes the maximum packet size, BW is bandwidth and DLY is the transmission delay.

 

    reliability 255/255, txload 1/255, rxload 1/255

Reliability shows how the interface is performing, higher is better. txload and rxload shows how congested the interface is. Updated every 5 minutes.

 

  Encapsulation ARPA, loopback not set

  Keepalive set (10 sec)

  Full-duplex, 100Mb/s, media type is RJ45

This outlines the current duplex and speed setting, including the transmission media inserted into the interface. This should match the other device.

 

  output flow-control is unsupported, input flow-control is unsupported

  ARP type: ARPA, ARP Timeout 04:00:00,

  Last input 00:00:08, output 00:00:05, output hang never

  Last clearing of "show interface" counters never

  Input queue: 0/75/0 (size/max/drops); Total output drops: 0

  Queueing strategy: fifo

  Output queue :0/40 (size/max)

Here the output shows the current Quality of Service type and packet queuing methodology. fifo stands for First in - First out. In this instance there is no evidence that the buffer is full causing packets to be dropped.

  5 minute input rate 0 bits/sec, 0 packets/sec

  5 minute output rate 0 bits/sec, 0 packets/sec

These two counters show the total bit rate of incoming and outgoing packets, including the number of packets per second. This output gives a good overall picture of network use.

 

    0 packets input, 0 bytes, 0 no buffer

Packets Input - the total number of error free packets.

Bytes - the total (including encapsulation data) amount of traffic received.

No buffer - the number of packets discarded due to no buffer space available.

 

    Received 0 broadcasts, 0 runts, 0 giants, 0 throttles

Runts - packets that are smaller than 64 bytes, which are typically dropped.

Giants - packets that are larger than 1518 bytes in size.

Throttles - the count of times that the receiver is disabled due to low hardware resource.

    0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored, 0 abort

Input Errors - the total sum of all erroneous incoming packets.

CRC - checksum generated by the remote end, which if the checksum does not match it indicates a collision and is counted.

Frame - the number of packets with failed CRC, indicating collisions.

Overrun - the number of times that packets were dropped due to hardware constraints (input rate to high)

Ignored - the count of packets dropped due to further interface buffers being low on resource

    0 watchdog, 1017 multicast, 0 pause input

Watchdog - Count of packets where the watchdog receive timer expired.

Pause Input - A pause frame tells the sender of traffic to wait until the remote side's buffers are empty. Can be seen during high usage beyond the hardware capabilities.

 

    0 input packets with dribble condition detected

Dribble Condition - This is where the packet is slightly too big, but is still accepted.

 

    0 packets output, 0 bytes, 0 underruns

Packets Output - Total number of packets sent by the appliance.

Bytes - Total amount of data sent including encapsulation bytes.

Underruns - Number of times the transmission has been faster that the router can handle.

 

    0 output errors, 0 collisions, 1 interface resets

Output Errors - Sum of all erroneous packets sent by the appliance.

Collisions - Total number of messages transmitted due to a collision.

Interface Resets - This is the total number of times where an interface has been reset due to an issue, admin shut down or loop detection.

 

    0 unknown protocol drops

This is where drops are recorded of which are of unknown cause.

 

    0 babbles, 0 late collision, 0 deferred

Babbles - Counted when packets larger than 1518 bytes are sent.

Late Collisions - This counter can increment when collisions occur after transmitting the preamble.

Deferred - This increases when the hardware had to defer a frame when ready to transmit due to carrier assertion.

 

    0 lost carrier, 0 no carrier

Lost Carrier - Number of times that the carrier was lost during transmission.

No Carrier - Number of times the carrier was not available.

 

0 output buffer failures, 0 output buffers swapped out

Output buffer failures - Number of times the buffer failed.

Output buffers swapped out - When the outbound buffer is full, packets are stored in DRAM until buffer is available.

Duplex Mismatch/Interface Speed Mismatch

What is Duplex?

In it's simplest form, describing a link's duplex setting covers whether data can be sent and received at the same time, or if one way transmission only is available. There are three different types:

duplextypes.png

In order for the link to work optimally, both sides of the transmission media need to be configured with the same settings. This is generally configured to be "Auto" or "Hard-set". When configuring an interface to Auto, the two appliances will negotiate the duplex settings. Hard-setting the duplex values needs to be done on both sides. If the duplex setting differs then collisions and errors will occur, and end user impact will be seen.

 

Configuring Duplex

If the devices cannot negotiate which duplex option to use, then hard-setting will be required on both sides. In modern Ethernet networks you will typically use Full-Duplex. The following commands will hard-set to the interface ("duplex ?" is included to show the options available):

 

NbRTR1#conf t

Enter configuration commands, one per line. End with CNTL/Z.

NbRTR1(config)#interface gi0/1

NbRTR1(config-if)#duplex ?

auto Enable AUTO duplex configuration

full Force full duplex operation

half Force half-duplex operation

NbRTR1(config-if)#duplex full

NbRTR1(config-if)#exit

NbRTR1(config)#exit

NbRTR1#

Verify that the command was accepted by using the "sh running-config" command and finding the interface. You could also run "sh run int gi0/1".

 

NbRTR1#sh run

interface GigabitEthernet0/1

no ip address

duplex full <<<<<<<<<<<<<<<<

speed auto

Interface Speed

Like with duplex, interface speeds also need to be negotiated or hard set, as interface capabilities differ between devices. Speed is the maximum throughput available on that link. An incorrectly configured speed setting which has mismatched on the appliances will cause dropped packets and errors. Interface speed capabilities are typically understood by their naming convention:

 

  • Ethernet - 10Mbps

  • FastEthernet - 100Mbps

  • GigabitEthernet - 1000Mbps

 

So for example, if the interface on router1 has FastEthernet ports, and the interfaces on router2 are GigabitEthernet, then the maximum speed available will be 100Mbps.

Configuring Speed

To manually configure the bandwidth available on the link, we can use the command "speed [10/100/1000/auto]", like below:

 

NbRTR1#conf t

Enter configuration commands, one per line. End with CNTL/Z.

NbRTR1(config)#interface Gi0/1

NbRTR1(config-if)#speed ?

10 Force 10 Mbps operation

100 Force 100 Mbps operation

1000 Force 1000 Mbps operation

auto Enable AUTO speed configuration

NbRTR1(config-if)#speed 100

NbRTR1(config-if)#exit

NbRTR1(config)#exit

NbRTR1#

To verify we will be using the "sh run" command and locate the interface configuration.

NbRTR1#sh run

interface GigabitEthernet0/1

no ip address

duplex full

speed 100 <<<<<<<<<<<<<<<<

bottom of page