Half-Duplex and Full-Duplex in Cisco Devices

Half-Duplex and Full-Duplex are the two primary data transmission modes in Ethernet networks. Half-Duplex allows transmission or reception in only one direction at a time and uses CSMA/CD, while Full-Duplex enables simultaneous sending and receiving, completely eliminating collisions. This article explains the differences between these two modes, how to configure them on Cisco switches and routers, their advantages and disadvantages, and practical examples.

Half DuplexFull DuplexCisco Duplex

~3 min read · Updated Apr 12, 2026

Introduction

In Ethernet networks, there are two main modes for data transmission: Half-Duplex and Full-Duplex. Understanding the difference between these modes is essential for troubleshooting network performance issues, correctly configuring ports, and preventing collisions. Cisco equipment allows manual or automatic configuration of these modes.

What is Half-Duplex?

In Half-Duplex mode, a device can either send or receive data at any given time, but not both simultaneously. It is similar to a single-lane road with turns.

Main features:

  • Uses CSMA/CD (Carrier Sense Multiple Access with Collision Detection) to detect and manage data collisions
  • Collisions are possible
  • Lower performance compared to Full-Duplex
  • Commonly used in old hubs and legacy networks

What is Full-Duplex?

In Full-Duplex mode, a device can send and receive data at the same time. It is like a two-way road with separate lanes for each direction.

Main features:

  • Completely eliminates collisions
  • Doubles the effective bandwidth (for example, a 100 Mbps port in Full-Duplex actually provides 200 Mbps capacity)
  • No need for CSMA/CD
  • Standard in modern networks

Half-Duplex vs Full-Duplex Comparison

FeatureHalf-DuplexFull-Duplex
Transmission DirectionOne direction at a timeSend and receive simultaneously
CollisionsYesNo
Control MechanismCSMA/CDNot required
Effective Bandwidth50% of capacity100% of capacity
Current UsageAlmost obsoleteStandard

Configuring Duplex on Cisco Devices

On Cisco switches and routers, you can set the Duplex mode manually or automatically.

Entering Interface Configuration Mode

Switch# configure terminal
Switch(config)# interface GigabitEthernet0/1
Switch(config-if)#

Manual Duplex Configuration

Switch(config-if)# duplex half     → Half-Duplex mode
Switch(config-if)# duplex full     → Full-Duplex mode
Switch(config-if)# duplex auto     → Auto negotiation (recommended)

Setting Speed and Duplex Together

Switch(config-if)# speed 100
Switch(config-if)# duplex full

Checking Duplex Status

To view the current Duplex and Speed status, use the following command:

Switch# show interfaces GigabitEthernet0/1

Look for lines similar to these in the output:

Full-duplex, 1000Mb/s
Half-duplex, 100Mb/s

Practical Example: Configuring a Port on Cisco Switch

Switch# configure terminal
Switch(config)# interface FastEthernet0/5
Switch(config-if)# speed 100
Switch(config-if)# duplex full
Switch(config-if)# no shutdown
Switch(config-if)# end
Switch# copy running-config startup-config

Common Problem: Duplex Mismatch

When one side of a link is set to Full-Duplex and the other side to Half-Duplex, a condition called Duplex Mismatch occurs. This leads to:

  • Severe performance degradation
  • Increased Late Collisions and CRC errors
  • Packet loss

Best solution: Set both sides to auto or make sure both sides use the same setting (preferably Full-Duplex).

Important Notes for Modern Cisco Equipment

  • Almost all Gigabit and faster ports default to auto mode.
  • Using Half-Duplex is not recommended in modern networks.
  • Always check Duplex status with show interfaces status or show interfaces command.

Conclusion

Full-Duplex is the current standard in Ethernet networks because it eliminates collisions and doubles real capacity. Correctly configuring Duplex and Speed on Cisco devices has a direct impact on network performance and stability. Always try to use auto mode unless you have a specific reason to set it manually.

Written & researched by Dr. Shahin Siami

Related Articles

Systematic Network Troubleshooting: A Methodology Tying Everything Together

Every protocol and technology covered throughout this series is only useful if a problem involving it can actually be diagnosed and fixed efficiently under real-world pressure. This article presents a systematic troubleshooting methodology built around the OSI layers, walks through applying it to a realistic connectivity problem, and shows how the specific verification commands covered throughout this entire series fit into a structured diagnostic process.

Continue

NETCONF, YANG, and Python: Programmatic Network Configuration at Scale

The REST APIs and JSON/YAML formats covered earlier in this series represent one approach to network automation, but NETCONF and YANG provide a more structured, standards-based alternative purpose-built for network device configuration. This article explains what distinguishes NETCONF from a simple REST API, covers how YANG models define exactly what configuration data looks like, and walks through using Python to programmatically interact with network devices.

Continue

IPsec VPN Fundamentals: Securing Traffic Across Untrusted Networks

Connecting two sites across the public internet exposes traffic to interception unless it is properly encrypted, and IPsec provides the standard framework for building secure, authenticated tunnels between sites. This article explains the two-phase IKE negotiation process, covers the distinction between AH and ESP protocols, walks through configuring a basic site-to-site IPsec VPN, and covers essential verification commands.

Continue

MPLS Fundamentals: Label Switching Explained

Traditional IP routing requires every router along a path to perform a full routing table lookup on every packet, but MPLS takes a fundamentally different approach by making that forwarding decision once and attaching a simple label that every subsequent router can use instead. This article explains the core label-switching concept, walks through how the Label Distribution Protocol builds the label forwarding tables that make this possible, and covers the practical benefits MPLS provides in real provider networks.

Continue

BGP Route Reflectors and Confederations: Scaling iBGP Beyond Full Mesh

The iBGP full-mesh requirement, briefly mentioned earlier in this series, becomes a serious scaling problem as an autonomous system grows, requiring a number of sessions that increases quadratically with router count. This article explains exactly why full mesh does not scale, walks through how route reflectors solve this by relaxing BGP's normal route-propagation rules, and covers confederations as an alternative approach that divides a single AS into smaller sub-autonomous systems.

Continue

OSPF Area Types Deep Dive: Stub, Totally Stubby, and NSSA

Multi-area OSPF, covered earlier in this series, already reduces database size by separating a network into areas, but OSPF offers further specialized area types that reduce routing table size even more aggressively by filtering out unnecessary external routes entirely. This article explains the LSA types that must be suppressed to create each specialized area type, walks through configuring stub, totally stubby, and not-so-stubby areas, and covers the specific trade-offs each design choice involves.

Continue