Subject: Re: trouble with 10baseT autoselect on wm0
To: Steven M. Bellovin <smb@cs.columbia.edu>
From: John Nemeth <jnemeth@victoria.tc.ca>
List: current-users
Date: 04/28/2005 11:17:59
On Sep 17,  4:58pm, "Steven M. Bellovin" wrote:
} In message <861x8wt6e9.fsf@athene.hamartun.priv.no>, Tom Ivar Helbekkmo writes:
} >"Steven M. Bellovin" <smb@cs.columbia.edu> writes:
} >
} >> I have a Thinkpad T42 with a wm GigE card.  I've never tried it at
} >> GigE speeds; it runs fine at 100 Mbps.  But it doesn't work at 10
} >> Mbps if I have it set to 'media autoselect'.  However, if I set it
} >> to 'media 10baseT', it works.
} >
} >I have one of those laptops as well.  I haven't tried it at 10 Mbps,
} >but I had to quit letting it autoselect against our Cisco GigE capable
} >switch, because it would negotiate 1 Gbps and full duplex -- after
} >trying for about two minutes.  Every time something happened to the
} >interface, such as me putting it into promiscuous mode with tcpdump,
} >there would be another two minute wait for the autoselect.
} 
} Hmm -- I haven't tried waiting two minutes...  But I've seen a number 
} of postings that suggest that disabling autonegotiation is a bad idea, 
} because some devices can't work any other way.

     Yes, in general, it is a bad idea.  The problem is that the
standard only defines autonegotiation, so if you turn it off then you
get implementation defined behaviour which can cause compatibility
issues.  With some devices when you disable autonegotiation, they stop
sending autonegotiation information altogether while others do send it
but only offer the configured setting.  Some devices when they don't
receive autonegotiation information will configure themselves as
instructed whereas others will refuse to full-duplex.  If you have a
device that when manually configured doesn't send any autonegotiation
information and is configured for full-duplex connected to a device
that will only do full-duplex when it receives autonegotiation
information, then you end up with a duplex mismatch which can cause
severe performance issues.

     10baseT hubs present their own challenges since they predate
autoconfiguration.  They pretty much follow the early ethernet
standards (i.e. CSMA/CD, logical bus topology, etc.).  They are simple
repeaters that just amplify an incoming signal and spit it out every
port.  When connected to one of these, your laptop will not get an FLP
(Fast Link Pulse indicating the ability to do 100 Mbps or better) or
any autonegotiation information.  In this event, the laptop should
configure itself for 10 Mbps half-duplex.  If it doesn't, then
something is broken (either the driver or the hardware if
autonegotiation is handled by hardware).  In this case, it would be
okay to manually configure the interface since it doesn't work
otherwise.  Note that when manually configuring an interface you should
ALWAYS configure it for half-duplex due to the issues noted above.

}-- End of excerpt from "Steven M. Bellovin"