Re: Cisco 2970 and VIA Rhine PXE bootstrap problems

Peter Cordes <[email protected]>
Newsgroups gmane.linux.cluster.openmosix.general
Message-ID <[email protected]>
On Wed, Mar 15, 2006 at 11:31:35PM +1000, Ian Latter wrote:
> Hello Tony,
> 
> 
>   I haven't seen this before, but ...
> 
>   If, all things being equal, your cluster works when
> it has hosts with static IP assignments, then you 
> might find that it's the port negotiation between the 
> NIC and the Switch that is causing your problem.  In 
> *just* the right circumstances, you can have some 
> switches spend minutes negotiating link-up 
> information (like Duplex and Rate).  If this negotiation
> is running longer than your PXE/BootP time-out then
> this would be bad.
> 
>   Try setting your link speed and rate in the switch for
> the ports used by static hosts (those nodes that 
> aren't often physically relocated) - removing auto-
> negotiation.

 I haven't had autoneg problem within my clusters (My D-link gigabit switch
has served well :), but the University network uses Cisco switches,
sometimes with autonegotiation disabled.  The only problems I've ever had
with autoneg, ironically, are with Cisco switches where some genius turned off
autonegotiation, presumably in the interests of avoiding problems!  I
have to have   mii-tool -F 100baseTx-FD  in my network config stuff on my
desktop and on the cluster master node (for its external connection).

 (On my desktop, since I want to run a DHCP client (dhcp3-client), I had to
add a script /etc/dhcp3/dhclient-exit-hooks.d/local-force-100tx-fd:

---
# 2k6/1/16: Peter Cordes
# handle setting media, which is needed because 
# dhclient brings up the interface, which restarts autonegotiation.

# this is needed in the Chase building because autoneg is unreliable, or at
# least very slow, with sis900

# The NIC still gets reset after PREINIT, so this isn't the way to do it.
#if [ x$reason = xPREINIT ]; then
#   mii-tool -A 100baseTx-FD $interface
#   echo "$0: forcing 100baseTx, full duplex on $interface"
#   mii-tool -F 100baseTx-FD $interface
#fi

# have to set   media "100baseTx-FD";  in dhclient.conf
if [ x$reason = xMEDIUM ]; then
   echo "$0: forcing medium $medium on $interface"
   mii-tool -F $medium $interface
fi
---

 As you can see, it doesn't actually just force 100baseTx-FD, it responds to
a  media   setting in dhclient.conf.

 BTW, this is on Debian.

 This has actually been working for me for the last couple months, and I
never have to manually do anything after booting up my desktop at work to
get networking working.  This is in contrast to the few years when I've
mostly just left my computer on, partly for bittorrent (KNOPPIX and things
like that, nothing too inappropriate for work!), partly because broken
networking was a pain.

 If Cisco had a setting that would make the switch port use the autoneg
protocol, but only offer a single speed/duplex that you wanted to force,
that would totally take care of the problem; people with well-behaved
network cards wouldn't be forced to manually configure anything on their
end.  (I read plenty of harsh words directed at Cisco while googling about
autonegotiation...  I haven't personally used Cisco gear, just been on the
receiving end of its apparent braindeath.)  I think turning off autoneg
precluded the use of flow control, since it's autonegotiated and mii-tool
doesn't have a way to force it on that I know of.

mycluster:~# mii-tool 
eth0: negotiated 100baseTx-FD flow-control, link ok
eth1: 100 Mbit, full duplex, link ok

 The moral of this story is:  autonegotiation is good.  All modern NICs do
it correctly and compatibly (right?).  Leave it on and you won't have to
manually do anything to every machine whose default isn't 100baseTx-FD.

-- 
#define X(x,y) x##y
Peter Cordes ;  e-mail: X(peter@cor , des.ca)

"The gods confound the man who first found out how to distinguish the hours!
 Confound him, too, who in this place set up a sundial, to cut and hack
 my day so wretchedly into small pieces!" -- Plautus, 200 BC


-------------------------------------------------------
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.