Troubleshooting Speed/Duplex Issues on Juniper EX/QFX Switches and Connected Servers
This knowledge base article provides a comprehensive guide to diagnose and resolve speed and duplex issues on Juniper EX and QFX series switches and their connected servers, including 10G interfaces using xe- interfaces (common on QFX switches) and 1G interfaces using ge- interfaces (common on EX switches). Speed and duplex mismatches can cause connectivity issues, packet loss, or performance degradation. This guide includes examples for Juniper switches running Junos OS and troubleshooting steps for Linux and Windows servers, using tools like ethtool (for higher speeds, including 10Gbps) and mii-tool (for lower speeds) on Linux, and Windows network adapter settings. If the network is managed by your server vendor and you cannot access the switch, instructions are provided to escalate via a support ticket.
Overview
Speed and duplex mismatches occur when the settings on a switch interface do not align with the connected server or device. This can lead to errors, dropped packets, or slow network performance. Juniper EX/QFX switches and servers typically support auto-negotiation, but manual configuration may be required, especially for high-speed interfaces (e.g., 10Gbps on xe- interfaces) or legacy systems (e.g., 1Gbps or lower on ge- interfaces).
Prerequisites
-
Access to the Juniper switch CLI with administrative privileges (if not managed by the server vendor).
-
Administrative access to the connected server (Linux or Windows).
-
Knowledge of the network interface card (NIC) capabilities on the server.
-
Physical or remote access to the server for monitoring and configuration.
-
If the network is managed by the server vendor, access to their support ticket system.
Troubleshooting Steps for Juniper Switches
If you have access to the switch CLI, follow these steps. If the network is managed by your server vendor, skip to Step 4 and escalate as needed.
Step 1: Verify Interface Status on the Switch
Check the current speed and duplex settings for the switch interface, whether it’s a ge- (1Gbps, common on EX switches) or xe- (10Gbps, common on QFX switches) interface.
Example Command (1Gbps Interface):
show interfaces ge-0/0/0
Sample Output:
Physical interface: ge-0/0/0, Enabled, Physical link is Up
Link-level type: Ethernet, MTU: 1514, Speed: 1000mbps, Duplex: Full
Source filtering: Disabled, Flow control: Enabled
Autonegotiation: Enabled
Example Command (10Gbps Interface):
show interfaces xe-0/0/0
Sample Output:
Physical interface: xe-0/0/0, Enabled, Physical link is Up
Link-level type: Ethernet, MTU: 1514, Speed: 10Gbps, Duplex: Full
Source filtering: Disabled, Flow control: Enabled
Autonegotiation: Enabled
What to Look For:
-
Confirm the Speed (e.g., 1000mbps for ge-, 10Gbps for xe-) and Duplex settings match the connected server.
-
If Autonegotiation is enabled, ensure the server supports it.
-
If the interface is Down, check physical connections, cabling (e.g., Cat6a/Cat7 for 10Gbps copper, fiber for 10Gbps), or SFP+/QSFP+ transceivers for xe- interfaces.
Step 2: Check for Errors or Drops on the Switch
Inspect the interface for errors that may indicate a speed/duplex mismatch.
Example Command (1Gbps or 10Gbps Interface):
show interfaces ge-0/0/0 extensive | match errors
or
show interfaces xe-0/0/0 extensive | match errors
Sample Output:
Input errors: 0, Input drops: 0, Framing errors: 0, Runts: 0, Giants: 0
Output errors: 0, Output drops: 0
What to Look For:
-
Framing errors or CRC errors often indicate a duplex mismatch.
-
Runts or Giants may suggest speed or MTU issues.
-
For xe- interfaces, ensure the SFP+/QSFP+ module is compatible and properly seated.
Step 3: Configure Speed and Duplex on the Switch (if needed)
If a mismatch is detected, manually set the speed and duplex on the switch interface.
Example Configuration (1Gbps Interface, Manual Settings):
configure
set interfaces ge-0/0/0 speed 1000m
set interfaces ge-0/0/0 link-mode full-duplex
commit
Example Configuration (10Gbps Interface, Manual Settings):
configure
set interfaces xe-0/0/0 speed 10g
set interfaces xe-0/0/0 link-mode full-duplex
commit
Example Configuration (Enable Auto-Negotiation for 1Gbps or 10Gbps):
configure
set interfaces ge-0/0/0 speed auto
set interfaces ge-0/0/0 link-mode automatic
commit
or
configure
set interfaces xe-0/0/0 speed auto
set interfaces xe-0/0/0 link-mode automatic
commit
Note: Replace ge-0/0/0 or xe-0/0/0 with the actual interface name. For xe- interfaces, ensure the NIC and cabling (e.g., DAC cables or fiber) support 10Gbps.
Troubleshooting Steps for Servers
Step 4: Verify Server Network Settings
Compare the switch settings with the server's NIC configuration to ensure they match. If you cannot access the switch (e.g., managed by the server vendor), focus on server-side checks and escalate as needed.
Linux Servers
Use ethtool for modern NICs and high-speed interfaces (e.g., 1Gbps, 10Gbps, or higher) or mii-tool for older, lower-speed interfaces (e.g., 10Mbps or 100Mbps).
Using ethtool to Check Interface Status (1Gbps or 10Gbps):
ethtool eth0
Sample Output (10Gbps Interface):
Settings for eth0:
Supported ports: [ FIBRE ]
Supported link modes: 1000baseT/Full
10000baseT/Full
Speed: 10000Mb/s
Duplex: Full
Auto-negotiation: on
Sample Output (1Gbps Interface):
Settings for eth0:
Supported ports: [ TP ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Speed: 1000Mb/s
Duplex: Full
Auto-negotiation: on
What to Look For:
-
Verify Speed (e.g., 1000Mb/s or 10000Mb/s) and Duplex match the expected switch settings (ge- or xe-).
-
Ensure Auto-negotiation is consistent with the expected switch configuration.
-
For 10Gbps, confirm the NIC supports 10000baseT/Full or equivalent (e.g., 10000baseSR/Full for fiber).
Using mii-tool for Older NICs (Lower Speeds, e.g., 10/100Mbps):
mii-tool eth0
Sample Output:
eth0: negotiated 100baseTx-FD, link ok
What to Look For:
-
Confirm the speed (e.g., 100baseTx) and duplex (e.g., FD for full-duplex) align with the switch’s ge- interface.
Configuring Speed/Duplex on Linux with ethtool:To manually set speed and duplex (e.g., for 10Gbps):
sudo ethtool -s eth0 speed 10000 duplex full autoneg off
To manually set speed and duplex (e.g., for 1Gbps):
sudo ethtool -s eth0 speed 1000 duplex full autoneg off
To enable auto-negotiation:
sudo ethtool -s eth0 autoneg on
Note: Changes made with ethtool are not persistent across reboots. Update network configuration files (e.g., /etc/network/interfaces on Debian-based systems) for persistence.
Windows Servers
Check and configure speed/duplex settings via the Network Adapter properties.
Steps to Check/Configure in Windows:
-
Open Control Panel > Network and Sharing Center > Change adapter settings.
-
Right-click the network adapter and select Properties > Configure.
-
Go to the Advanced tab.
-
Look for properties like Speed & Duplex or Link Speed.
-
Select the desired setting (e.g., 1.0 Gbps Full Duplex, 10.0 Gbps Full Duplex, or Auto Negotiation).
-
Click OK to save changes.
What to Look For:
-
Ensure the selected speed and duplex match the expected switch configuration (ge- for 1Gbps, xe- for 10Gbps).
-
For 10Gbps, confirm the NIC supports 10Gbps and the correct cabling (e.g., Cat6a/Cat7 or fiber) is used.
-
If set to Auto Negotiation, confirm the switch is also set to auto-negotiate.
If Network is Managed by Server Vendor
If you cannot access the switch (e.g., managed by your server vendor), create a support ticket with the vendor’s support team. Provide the following details:
-
Server NIC settings (from ethtool, mii-tool, or Windows adapter properties).
-
Observed symptoms (e.g., packet loss, slow performance, CRC errors).
-
Interface details (e.g., expected speed: 1Gbps or 10Gbps, duplex, auto-negotiation status).
-
Logs from the server (see Step 7 for logging instructions).
Example Support Ticket Description:
Issue: Suspected speed/duplex mismatch on server NIC connected to network switch.
Details: Server NIC (eth0) shows 1000Mb/s, Full Duplex, Auto-negotiation: on (via ethtool). Experiencing packet loss and high latency. Please verify switch interface (likely ge- or xe-) settings for speed, duplex, and auto-negotiation. Logs available in /var/log/syslog.
Contact your server vendor’s support portal or ticketing system to submit the ticket.
Step 5: Compare Switch and Server Settings
If you have switch access, ensure the speed, duplex, and auto-negotiation settings are consistent between the switch and the server. For example:
-
For ge- interfaces, if the switch is set to 1000m and full-duplex, the server must match.
-
For xe- interfaces, if the switch is set to 10g and full-duplex, the server’s NIC must support 10Gbps and be configured accordingly.
-
For 10Gbps connections, verify that the server’s NIC and cabling (e.g., Cat6a, DAC, or fiber with SFP+/QSFP+ transceivers) support the speed.
Common Mismatch Scenarios:
-
Switch ge- interface set to auto-negotiation, but server is manually set to 100Mbps half-duplex.
-
Switch xe- interface set to 10Gbps, but server is configured for 1Gbps or auto-negotiation fails.
If the switch is managed by the server vendor, include the server’s NIC settings in the support ticket and request verification of the switch configuration.
Step 6: Test Connectivity
Ping from the server to another device through the switch to verify connectivity.
Linux Example:
ping -c 5 <switch-ip-or-peer-ip>
Windows Example:
ping <switch-ip-or-peer-ip> -n 5
Sample Output (Successful):
5 packets transmitted, 5 received, 0% packet loss
If packet loss occurs, recheck speed/duplex settings, cabling, or SFP+/QSFP+ transceivers for xe- interfaces. If the switch is vendor-managed, include ping results in the support ticket.
Step 7: Enable Logging for Monitoring
Configure logging on both the switch (if accessible) and server to capture interface-related events.
Juniper Switch Logging (for ge- or xe- interfaces, if accessible):
configure
set system syslog file interface-log any any
set system syslog file interface-log match "ge-0/0/0|xe-0/0/0"
commit
View Logs:
show log interface-log
Linux Logging (Using syslog):Ensure rsyslog or syslog is configured to capture network events. Check logs in /var/log/syslog or /var/log/messages.
Windows Logging:Use Event Viewer to check for network-related errors:
-
Open Event Viewer > Windows Logs > System.
-
Filter for events related to the network adapter (e.g., source: e1dexpress for Intel NICs).
If the switch is managed by the server vendor, include server logs in the support ticket.
Common Issues and Resolutions
-
Issue: CRC errors on the server or switch interface (ge- or xe-).
-
Resolution: Verify duplex settings match on both switch and server. Disable auto-negotiation if the server does not support it. If switch access is unavailable, report to the vendor.
-
-
Issue: Server stuck at 10Mbps or 100Mbps on a ge- interface.
-
Resolution: Check for faulty cables or confirm NIC supports 1Gbps (use ethtool or Windows adapter settings).
-
-
Issue: 10Gbps connection on xe- interface not establishing.
-
Resolution: Ensure the server’s NIC supports 10Gbps, and verify cables (e.g., Cat6a/Cat7 for copper, DAC, or fiber) and SFP+/QSFP+ transceivers are compatible. Use ethtool to confirm NIC capabilities. If switch access is unavailable, escalate to the vendor.
-
-
Issue: Auto-negotiation fails.
-
Resolution: Manually configure speed and duplex on both the switch (ge- or xe-) and server to match. If switch access is unavailable, request vendor verification.
-
Tools for Troubleshooting
-
Linux:
-
ethtool: For modern NICs and high-speed interfaces (1Gbps, 10Gbps+).
-
mii-tool: For older NICs and lower speeds (10Mbps, 100Mbps).
-
tcpdump or wireshark: To capture and analyze packets for errors.
-
ifconfig or ip link: To check interface status.
-
-
Windows:
-
Network Adapter Properties: For configuring speed/duplex.
-
PowerShell: Use Get-NetAdapter to check NIC settings.
Get-NetAdapter | Select-Object Name, LinkSpeed, FullDuplex
-
Wireshark: For packet analysis.
-
-
Juniper Switches (if accessible):
-
show interfaces and show interfaces extensive: For interface status and errors (ge- or xe-).
-
monitor interface <ge-0/0/0|xe-0/0/0>: For real-time traffic monitoring.
-
Best Practices
-
Prefer auto-negotiation for modern devices (1Gbps and 10Gbps) to avoid manual configuration errors.
-
Use high-quality cables (e.g., Cat6 for 1Gbps, Cat6a/Cat7 or DAC/fiber for 10Gbps).
-
For xe- interfaces, ensure SFP+/QSFP+ transceivers are compatible and properly seated.
-
Regularly monitor interfaces for errors using show interfaces extensive (Juniper, if accessible) and ethtool -S (Linux).
-
Document manual configurations on both switch and server to prevent mismatches.
-
For 10Gbps connections, verify NIC, cable, and transceiver compatibility with the desired speed.
-
If the network is managed by the server vendor, maintain detailed records of server-side settings and test results for support tickets.
Additional Resources
-
Juniper Documentation: Configuring Interface Speed and Duplex
-
Linux: ethtool Manual
-
Windows: Configure Network Adapter Settings
If issues persist and you cannot access the switch, collect logs from the server (/var/log/syslog for Linux or Event Viewer for Windows) and create a support ticket with your server vendor, including NIC settings, symptoms, and test results.