Ethernet Port Speed/Duplex Howto
Host-A Host-B
.-------. .-------.
| | | |
| | | |
| 1 | | 1 |
'---+---' '---+---'
| |
+-----------------------------------------------+
Typical scenarios
Default settings aim for plug and play
The default settings for speed-duplex aims for plug and play. The examples below describe the behaviour when connecting two WeOS units, but likely they also apply when connecting a WeOS unit with some other unit.
Fixed copper ports
Auto-negotiation will result in 1000-full when connecting two Gbit copper ports.
Host-A:/#> show port PORT LINK TYPE SPEED STATE OWNER/VLAN eth1 Up 1000-T 1000M-Full Forwarding vlan U:1 eth2 Down 1000-T ---------- No-Link vlan U:1 ... Host-A:/#>
Auto-negotiation will result in 100-full when connecting two FE ports or a Gbit with an FE port.
Host-A:/#> show port PORT LINK TYPE SPEED STATE OWNER/VLAN eth1 Up 1000-T 100M-Full Forwarding vlan U:1 eth2 Down 1000-T ---------- No-Link vlan U:1 ... Host-A:/#>
Fiber SFPs
Auto-negotiation will result in 1000-full when connecting two Gbit Fiber SFPs.
Host-A:/#> show port PORT LINK TYPE SPEED STATE OWNER/VLAN eth1 Up 1000-LX 1000M-Full Forwarding vlan U:1 eth2 Down No-SFP ---------- No-Link vlan U:1 ... Host-A:/#>
When connecting two FE Fiber SFPs, the link will operate in 100-full (without auto-negotiation).
Host-A:/#> show port PORT LINK TYPE SPEED STATE OWNER/VLAN eth1 Up 100-FX 100M-Full Forwarding vlan U:1 eth2 Down No-SFP ---------- No-Link vlan U:1 ... Host-A:/#>
If a Gbit and a FE Fiber SFP are connected, the link will not come up.
Note
There are many different types of Gbit and Fiber SFP technologies (multi-mode, single mode, BiDi, etc.), thus it is not only the speed which need to match.
Configuring auto-negotiation advertisement
Auto-configuration enables the peers to agree on the best common speed/duplex mode. Assume the peer is using auto-negotiation, and you wish to limit the speed to 10 Mbit/s. Then you could set speed-duplex 10-full or speed-duplex 10-half, 10-full. The link will come up in 10-full if the peer supports that mode.
Host-A:/#> config Host-A:/config/#> port eth1 Host-A:/config/port-eth1/#> auto-negotiate Host-A:/config/port-eth1/#> speed-duplex 10-full,10-half Host-A:/config/port-eth1/#> leave Host-A:/#> show port PORT LINK TYPE SPEED STATE OWNER/VLAN eth1 Up 1000-T 10M-Full Forwarding vlan U:1 eth2 Down 1000-T ---------- No-Link vlan U:1 ... Host-A:/#>
When both peers use auto-negotiation, but have no common mode, the link will not come up.
Trouble-shooting
Only one peer using auto-negotiation
If one side has auto-negotiation enabled while the peer has not, the link is likely to come up with the right speed, but wrong duplex mode.
Consider the case when A-side uses auto-negotiation, and B is set to 100-full and auto-negotiation disabled: The result will be that A sets its port to 100-half (it can determine the speed, but not the duplex mode, see §28.2.3.1 of 1).). B sets link to 100-full. When reading the RMON counters, A is likely to report lots of late collision errors, while B is likely so report rx checksum errors.
Mismatching fixed configurations
If A and B both disable auto-configuration, they must set the same speed-duplex mode. If the speeds do not match, the link will not come up. If the speed matches, but not the duplex mode (e.g., 100-full and 100-half), the link will come up but the same kind of error as described in the previous section.