Duplex negotiation over 100Base fibre


My understanding is that for 1G and 10G optical networks, there is no concept of half-duplex mode, but I’m unclear about half duplex in the 100M optical world. Specifically, if I connect two 100Base-LX (or BX) transceivers together, is there a requirement for the controller(s on either side) to select between full or half duplex, either by static configuration, or auto-negotiation?


From all my observations, if both ends are 100Base-LX (or BX or T) and are set to auto-negotiate then they will negotiate to full-duplex. If one end is manually configured for full duplex and the other end is configured as auto then that end _may_ end up as half-duplex.

This is particularly true when connecting a 1G port to a port configured as 100M full-duplex port. If the 1G is configured for auto-speed then it _will_ negotiate to 100M half-duplex resulting in traffic impact.



I can say even at 1G speeds, the fiber is just the medium, the underlying data stream can still be half-duplex or require autonegotation or the lack of it. I recall many years ago having to adjust settings for GSR <-> Foundry negotiation and how it would vary depending on the device, so if you changed from GSR -> 6500/7600, you may have to make changes to maintain link.

Having a standard device/switch/config will help you here.

Most media converters I’ve seen have a switch on the side that lets you set if it should advertise autonegotation, take the super-cheap MC220L as an example, it has a switch for this purpose.

After many years of hard coding things to gig/full, i’ve started to see the autonegotation work much better and require less custom coding of the config. This doesn’t stop someone from plugging in really-old stuff, and we still see people connecting at 10/half or 10/full when I really wonder what they are connecting.

- Jared