Network Bytes · Episode 17 · CCNA 1.4

Duplex and speed mismatch

Your link is up, but everything crawls. Here's how full and half duplex work, why setting one end by hand causes a duplex mismatch, and the simple fix.

Posted · About a 1 minute watch, 3 minute read · Take the quiz

Full and half duplex

Duplex is about who can talk when. On a full duplex link, both ends can send at the same time, like a phone call. On a half duplex link, only one end can send at a time, like a walkie-talkie: if both talk at once, the signals collide and have to be sent again.

Modern switched Ethernet runs full duplex almost everywhere. Half duplex is a leftover from the days of shared cables and hubs.

Auto-negotiation

Both ends of a link need to agree on speed (for example 100 or 1000 Mb/s) and duplex. Normally they work it out on their own with auto-negotiation: when the cable is plugged in, each end advertises what it can do and they pick the best setting both support.

How a mismatch happens

Trouble starts when someone hard-codes one end, say a switch port set to speed 100 and duplex full, and leaves the other end on auto. A hard-coded port stops taking part in negotiation, so the auto end hears no answer. It can still sense the speed from the signal, but it can't learn the duplex, so it plays safe and falls back to half duplex.

Now the full duplex end sends whenever it likes, while the half duplex end waits its turn and treats incoming traffic during its own sends as collisions. Frames get cut off and corrupted, and the receiving side counts them as errors. The data gets resent, so everything still works, just slowly.

Why nobody notices

The link light stays green and the interface still says it's up. Pings often succeed. The only clues are poor speed and climbing error counters: FCS/CRC errors and runts on the full duplex side, and late collisions on the half duplex side.

Try it yourself

On Windows, open Settings > Network & internet > Ethernet (or run Get-NetAdapter in PowerShell) to see your link speed. On a Mac, hold Option and click the network icon, or open System Settings > Network > Ethernet > Details > Hardware, where speed and duplex are usually set to "Automatically". On a Cisco switch, show interfaces status lists each port's speed and duplex, with a- in front of values that were auto-negotiated.

Good to know

  • Cisco's guidance is to configure both ends the same: both on auto, or both hard-coded to the same speed and duplex.
  • When one end is hard-coded, the auto end can still detect the speed but defaults to half duplex at 10 and 100 Mb/s.
  • Symptoms include FCS/CRC errors, runts and late collisions, plus slow transfers, while the link stays up.
  • Gigabit Ethernet over copper (1000BASE-T) requires auto-negotiation, so leaving both ends on auto is the usual choice today.

For CCNA learners

This lines up with CCNA 200-301 exam topic 1.4, identify interface and cable issues (collisions, errors, mismatch duplex and/or speed): know that a hard-coded end plus an auto end leads to half duplex on the auto side, and recognize the error counters it causes.

Test your knowledge

Quick quiz: Duplex and speed mismatch

4 multiple-choice questions. Pick one answer for each, then check how you did.

1What does full duplex mean?
2One end of a link is hard-coded to 100 / full, and the other is left on auto. What does the auto end usually pick?
3Why is a duplex mismatch easy to miss?
4What is the fix for a duplex mismatch?

Sources

Video transcript

Your link is up, but everything crawls. Check this first.

Every Ethernet link has a speed and a duplex. Full duplex means both ends can talk at the same time, like a phone call. Half duplex means one at a time, like a walkie-talkie.

Normally both ends agree automatically. That's called auto-negotiation. But if someone sets one end by hand, the other end can't negotiate, and it falls back to half duplex.

Now one side talks whenever it wants, while the other waits its turn and thinks it's seeing collisions. Packets get mangled and resent. The link stays up, so nobody suspects it.

The fix: set both ends the same, or leave both on auto.

That's your bite. Next: why switches killed the hub.

More from Network Bytes

All Network Bytes lessons