Subject: tech stuff - Ethernet interface
From: Charles Platt <[log in to unmask]>
Reply-To: WebCTadmin <[log in to unmask]>
Date: Fri, 28 Feb 2003 11:28:58 -0500
INFODOC ID: 43523
SYNOPSIS: Should auto-negotiation be changed to force the speed and mode on
Ethernet interface adapters?
Q. Should auto-negotiation be changed to force the speed and mode on Ethernet interface adapters?
A. Auto-negotiation is advertised by default on Solaris[TM] 2.x Operating Environment 100Mb and 1Gb Ethernet interfaces,
which comply with IEEE 802.3u and 802.3z standards, respectively. Auto-negotiation should be left
enabled when using devices that comply with the standards; it is usually not disabled unless
there are special cases as mentioned below.
Not all network devices can be forced; some switches and drivers use autoneg only.
The number of devices that are not able to correctly auto-negotiate is shrinking all the time.
Since forcing devices is problematic and adds administrative overhead for a vanishingly small return,
Sun does not recommend that our customers adopt a policy of forcing interfaces.
Auto-negotiation (AN; auto-neg; autoneg) is defined in:
IEEE Std 802.3u clause 28 (Fast Ethernet)
IEEE Std 802.3z clause 37 (Gigabit Ethernet)
Note: In 802.3z specifications, auto-negotiation is mandatory. All devices which are
802.3z compliant, MUST have auto-negotiation enabled by default.
The latest Solaris Ethernet devices and drivers (hme, qfe, eri, dmfe, ge, ce) are fully 802.3 compliant.
Even though these drivers have the ability to change auto-neg, speed and duplex settings,
Sun's preferred (and recommended) way is to auto-negotiate and not disable auto-neg capabilities!
In general, any commodity Level 2 Switch will work in a Solaris environment if it provides industry
standard features in the following areas of performance: Auto-Negotiation, Internal, Bandwidth, Buffering & Latency.
Note: Sun does not endorse nor recommend any particular makes or models of switches or hubs.
Always read the manufacturer's specifications to verify that a switch meets the requirements.
In some cases, auto-negotiation capabilities could be disabled on both sides of the link, e.g., for
troubleshooting, compatibility problems, or permanent link connections in order
to "lock" the speed and duplex of the Ethernet link.
Note: Both sides, the Solaris driver and switch (the "link partners"), must be set for the same capabilities.
Setting one side to auto-neg and forcing the other side will not work correctly.
Examples for when to turn off Auto-Negotiation and force the speed and duplex:
1. when connected to a device that is not capable of auto-negotiation and there is a mismatch;
2. when connecting to a device that does not comply with IEEE standard for auto-negotiation=enabled;
3. when troubleshooting a cable or duplex mismatch link issue;
4. when recommended by switch vendor to workaround a bug;
5. when using an older version of network driver, switch software or firmware (unpatched);
6. when recommended by Sun to workaround a driver bug or non-Sun switch issue;
7. when customized network design is using permanent and unchanging, or high availability, server links.
(See InfodocID 18262: How to troubleshoot 100Mb FastEthernet 802.3 auto-negotiation problems.)
Symptoms of auto-neg problems (duplex and speed mismatches):
1. complete failure of link (no link light);
2. operation is less than the maximum possible;
3. excessive input errors: crc, framing and/or excessive/late collisions.
Use the following methods to force settings, if needed.
(Refer to the Device Driver Reference, man pages and Install manuals for instructions on
configuring the settings.)
1. /etc/system (See driver manual, release notes or bugs)
Used for some drivers to set system wide driver parameters
and for some tuning, workarounds and debugging
Example system entry (see additional documentation below for details re: this procedure):
(reboot for changes to take effect)
2. ndd (for temporary changes)
Used in some network drivers to set parameter values in multiuser mode;
Used for troubleshooting and testing parameter settings;
Example ndd commands (see additional documentation below for details re: this procedure):
ndd -set /dev/hme instance 0
ndd -set /dev/hme adv_100T4_cap 0
ndd -set /dev/hme adv_100fdx_cap 1
ndd -set /dev/hme adv_100hdx_cap 0
ndd -set /dev/hme adv_10fdx_cap 0
ndd -set /dev/hme adv_10hdx_cap 0
ndd -set /dev/hme adv_autoneg_cap 0
(changes take effect immediately)
Note: ndd changes do not survive a reboot unless you add them to a rc startup script.
3. "driver".conf (For permanent changes)(see additional documentation below for details re: this procedure)
Preferred method used to permanently set parameter values for
each driver instance. Remains in effect after a reboot.
name="iprb" parent="pseudo" instance=0
Driver document References:
806-3994-10 Platform Notes: The hme FastEthernet Device Driver http://docs.sun.com/doc/806-3994-10
816-2127-05 Platform Notes: The eri FastEthernet Device Driver http://docs.sun.com/db/doc/816-2127-05
806-3989-10 Platform Notes: the Sun Quad FastEthernet Device Driver http://docs.sun.com/doc/806-3989-10
816-3157-10 Platform Notes: The Sun GigabitEthernet Device Driver http://docs.sun.com/doc/816-3157-10
816-0860-10 Platform Notes: Sun GigaSwift Ethernet http://docs.sun.com/db/doc/816-0860-10
816-2128-11 Platform Notes: The dmfe Fast Ethernet Device Driver http://docs.sun.com/db/doc/816-2128-11
There is also additional information available in the following SunSolve[SM] articles:
INFODOC 16144 How to force the HME card to work at 100mb (full-duplex).
INFODOC 16070 How to set hme parameter for more than one hme interface
INFODOC 16728 How does 100baseT ethernet auto-negotiation work? and what are the hme and qfe driver defaults
INFODOC 18262 How do I troublehsoot 100Mb fastethernet 802.3 autonegotiation problems.
INFODOC 13122 Forcing Network Speed Between 10Mbps and 100Mbps
INFODOC 26242 How to force Ge to 1000HDX.
INFODOC 18394 Problem with ge card not maintaining link
INFODOC 41529 How to Force Sun GigaSwift (Cassini) Ethernet Adapter to 1000 mbps Full/Half Duplex on an UTP
INFODOC 18395 How to create a ge.conf file
SRDB 18262 How do I troubleshoot 100Mb fast Ethernet 802.3 auto negotiation problems
SRDB 12605 Full duplex support on Sun ethernet drivers.
SRDB 16143 How to force the HME card to work at 10mb (full-duplex).
FAQ 2605 Speed setting on 10/100mb hme
An Introduction to Auto-Negotiation, by Donald Becker,
Auto-Negotiation, by Charles Spurgeon
Auto-Negotiation is our Friend, by Ben Verschueren
Keywords: Ethernet, speed, auto, auto-negotiation, autonegotiation, negotiation, adapters
APPLIES TO: Network - OS, Network - OS/Network Config, AFO Vertical Team
Have a great day!!
Charles W Platt
Distance Learning Systems Administrator
Center for Teaching & Learning
Wright State University
-Website Page with longer message
Message from a member of the WebCTadmin Online Community
For signoff, subscription and archive instructions, see: