2024年7月23日发(作者:辛天曼)
820 S. University Blvd. Suite 4E, Mobile, AL 36609
PH: 251-342-2164 • FAX: 251-342-6353
N-TRON
Ethernet Auto-negotiation
In today’s world of computer networks auto-negotiation is an important plug-and-play
technology. Auto-negotiation as an algorithm was defined by Section 28 of the IEEE 802.3
standard and first introduced in 1997 as part of the IEEE 802.3u standard on Fast Ethernet.
Auto-negotiation was designed to be backward compatible with original Ethernet networking
standards as well. Auto-negotiation was further enhanced in 1999 by the IEEE standard
802.3ab with the introduction of Gigabit Ethernet. Auto-negotiation is best defined as the mutual
agreement by two network devices sharing a wire on the speed, duplex, and controls to govern
the use of that wire. As a protocol auto-negotiation exists strictly at the PHY (physical) layer of
the OSI (Open System Interconnection Reference Model) and is implemented by software,
hardware, or a mixture of both. Specifically this white paper will detail how the protocol
negotiates speed, duplex, Auto-MDIX (cable termination), and flow control.
As you will see in the technical discussions that follow, auto-negotiation is an extremely
important setting on today’s wired Ethernet networks. For a link to function properly the devices
on either side of the wire must be configured in the same manner; either both set to auto-
negotiation or both set to the same hard-coded speed and duplex settings. In an environment
where one device is set to auto-negotiate and the other device is set to a hard-coded speed and
duplex the auto-negotiate algorithm can detect speed and set that appropriately. The duplex
setting of the remote device is indeterminable by the auto-negotiating device. Following the
IEEE standard, the auto-negotiating device falls back to half-duplex. This presents an issue if
the remote device is set to full-duplex. Typically in such a scenario, users complain of slow
network connectivity and application timeouts. These symptoms will be explained in detail in
the section discussing Duplex.
Lastly, it should be noted that, according to the IEEE specification the use of gigabit Ethernet
requires the use of auto-negotiation therefore 1000Mb/s is not a valid hard-coded option in a
true IEEE compliant networking device.
Speed
IEEE 802.3u introduced 100Mb/s to what was previously only a 10 Mb/s Ethernet networking
world. Now that computers had a choice of what speed to communicate a procedure needed to
be introduced to govern this decision. With the introduction of a third speed, 1000 Mb/s or
Gigabit Ethernet, this procedure became even more important. Thus the auto-negotiation
protocol was created and the NWay algorithm adapted to provide a plug and play solution to this
decision making process while still maintaining complete backwards compatibility with the 10
Mb/s protocol.
The 10 Mb/s standard detects an active link with another network device through the
transmission and reception of Link Integrity Test (LIT) pulses whenever the device is not actively
sending or receiving data. These LIT pulses or Normal Link Pulses (NLP), as the name was
later changed to, consist of a single uni-polar positive-only pulse for the duration of 100ns at an
interval of 16ms with a +/-8ms window.
The auto-negotiation protocol introduced with the 100 Mb/s standard transmits a Fast Link Pulse
(FLP) instead of an NLP. A single FLP burst consists of a series of 33 pulses. Each burst of 33
pulses is 2ms long in total and fall into the same transmission interval of 16ms +/- 8ms. The
individual pulses are 125 µs with 62.5µs +/- 7µs between pulses. Diagram 1 illustrates this
Page 1 of 6
820 S. University Blvd. Suite 4E, Mobile, AL 36609
PH: 251-342-2164 • FAX: 251-342-6353
N-TRON
timing. The individual pulses alternate between clock pulses and data pulses with the first and
all successive odd numbered pulses being clock pulses. Each of the 16 data pulses (with each
pulse or lack of pulse representing a 1 or a 0, respectively) consist of a single bit of data and
collectively add up to 16 bits of 2 bytes of data. These 2 bytes make up the link code word
(LCW) which contains the information needed for auto-negotiation.
16 ms
802.3u Standard
Fast Link Pulse (FLP) Burst
16 Data Pulses (two Bytes)
alternated with 17 Clock Pulses
33 Pulses per Burst
Data Pulse
Clock Pulse
16 ms
802.3 Standard
Normal Link Pulses (NLP) or
Link Integrity Test Pulses (LIT)
2 ms
Diagram 1. NLP and FLP Timing.
There are multiple LCW formats but the most important LCW is the base page. This base page
is the transmission stating the capabilities of that device. The first 5 bits only have two valid
values. They state either to use IEEE 802.3 (Ethernet) or IEEE 802.9 (IsoEthernet over Cat3
twisted pair). The next 5 bits state what speed and duplex combinations that a device can
communicate. Bits A5 and A6 are used for Flow Control and D14 is used to acknowledge a
negotiation. The last bit, D15 is used to denote the need to use Next Page, a more advanced
LCW used to negotiate Gigabit speeds and controls. Diagram 2 illustrates the Base Page.
D0
S0
D1
S1
D2
S2
D3
S3
D4
S4
D5
A0
D6
A1
D7
A2
D8
A3
D9
A4
D10
A5
D11
A6
D12
A7
D13
RF
D14
Ack
D15
NP
Selector Field
S0 thru S4
802.3 = 00001
802.9 = 00010
Technology Ability Field
A0 thru A7
A0
A1
A2
A3
A4
A5
A6
10BaseT
10BaseT-FD
100BaseTX
100BaseTX-FD
100BaseT4
PAUSE
Asymmetric Pause
operation for full
duplex links
A7 Reserved
Other Fields
RF Remote Fault
Ack Acknowledge
NP Next Page
Diagram 2. LCW Base Page.
Page 2 of 6
2024年7月23日发(作者:辛天曼)
820 S. University Blvd. Suite 4E, Mobile, AL 36609
PH: 251-342-2164 • FAX: 251-342-6353
N-TRON
Ethernet Auto-negotiation
In today’s world of computer networks auto-negotiation is an important plug-and-play
technology. Auto-negotiation as an algorithm was defined by Section 28 of the IEEE 802.3
standard and first introduced in 1997 as part of the IEEE 802.3u standard on Fast Ethernet.
Auto-negotiation was designed to be backward compatible with original Ethernet networking
standards as well. Auto-negotiation was further enhanced in 1999 by the IEEE standard
802.3ab with the introduction of Gigabit Ethernet. Auto-negotiation is best defined as the mutual
agreement by two network devices sharing a wire on the speed, duplex, and controls to govern
the use of that wire. As a protocol auto-negotiation exists strictly at the PHY (physical) layer of
the OSI (Open System Interconnection Reference Model) and is implemented by software,
hardware, or a mixture of both. Specifically this white paper will detail how the protocol
negotiates speed, duplex, Auto-MDIX (cable termination), and flow control.
As you will see in the technical discussions that follow, auto-negotiation is an extremely
important setting on today’s wired Ethernet networks. For a link to function properly the devices
on either side of the wire must be configured in the same manner; either both set to auto-
negotiation or both set to the same hard-coded speed and duplex settings. In an environment
where one device is set to auto-negotiate and the other device is set to a hard-coded speed and
duplex the auto-negotiate algorithm can detect speed and set that appropriately. The duplex
setting of the remote device is indeterminable by the auto-negotiating device. Following the
IEEE standard, the auto-negotiating device falls back to half-duplex. This presents an issue if
the remote device is set to full-duplex. Typically in such a scenario, users complain of slow
network connectivity and application timeouts. These symptoms will be explained in detail in
the section discussing Duplex.
Lastly, it should be noted that, according to the IEEE specification the use of gigabit Ethernet
requires the use of auto-negotiation therefore 1000Mb/s is not a valid hard-coded option in a
true IEEE compliant networking device.
Speed
IEEE 802.3u introduced 100Mb/s to what was previously only a 10 Mb/s Ethernet networking
world. Now that computers had a choice of what speed to communicate a procedure needed to
be introduced to govern this decision. With the introduction of a third speed, 1000 Mb/s or
Gigabit Ethernet, this procedure became even more important. Thus the auto-negotiation
protocol was created and the NWay algorithm adapted to provide a plug and play solution to this
decision making process while still maintaining complete backwards compatibility with the 10
Mb/s protocol.
The 10 Mb/s standard detects an active link with another network device through the
transmission and reception of Link Integrity Test (LIT) pulses whenever the device is not actively
sending or receiving data. These LIT pulses or Normal Link Pulses (NLP), as the name was
later changed to, consist of a single uni-polar positive-only pulse for the duration of 100ns at an
interval of 16ms with a +/-8ms window.
The auto-negotiation protocol introduced with the 100 Mb/s standard transmits a Fast Link Pulse
(FLP) instead of an NLP. A single FLP burst consists of a series of 33 pulses. Each burst of 33
pulses is 2ms long in total and fall into the same transmission interval of 16ms +/- 8ms. The
individual pulses are 125 µs with 62.5µs +/- 7µs between pulses. Diagram 1 illustrates this
Page 1 of 6
820 S. University Blvd. Suite 4E, Mobile, AL 36609
PH: 251-342-2164 • FAX: 251-342-6353
N-TRON
timing. The individual pulses alternate between clock pulses and data pulses with the first and
all successive odd numbered pulses being clock pulses. Each of the 16 data pulses (with each
pulse or lack of pulse representing a 1 or a 0, respectively) consist of a single bit of data and
collectively add up to 16 bits of 2 bytes of data. These 2 bytes make up the link code word
(LCW) which contains the information needed for auto-negotiation.
16 ms
802.3u Standard
Fast Link Pulse (FLP) Burst
16 Data Pulses (two Bytes)
alternated with 17 Clock Pulses
33 Pulses per Burst
Data Pulse
Clock Pulse
16 ms
802.3 Standard
Normal Link Pulses (NLP) or
Link Integrity Test Pulses (LIT)
2 ms
Diagram 1. NLP and FLP Timing.
There are multiple LCW formats but the most important LCW is the base page. This base page
is the transmission stating the capabilities of that device. The first 5 bits only have two valid
values. They state either to use IEEE 802.3 (Ethernet) or IEEE 802.9 (IsoEthernet over Cat3
twisted pair). The next 5 bits state what speed and duplex combinations that a device can
communicate. Bits A5 and A6 are used for Flow Control and D14 is used to acknowledge a
negotiation. The last bit, D15 is used to denote the need to use Next Page, a more advanced
LCW used to negotiate Gigabit speeds and controls. Diagram 2 illustrates the Base Page.
D0
S0
D1
S1
D2
S2
D3
S3
D4
S4
D5
A0
D6
A1
D7
A2
D8
A3
D9
A4
D10
A5
D11
A6
D12
A7
D13
RF
D14
Ack
D15
NP
Selector Field
S0 thru S4
802.3 = 00001
802.9 = 00010
Technology Ability Field
A0 thru A7
A0
A1
A2
A3
A4
A5
A6
10BaseT
10BaseT-FD
100BaseTX
100BaseTX-FD
100BaseT4
PAUSE
Asymmetric Pause
operation for full
duplex links
A7 Reserved
Other Fields
RF Remote Fault
Ack Acknowledge
NP Next Page
Diagram 2. LCW Base Page.
Page 2 of 6