Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 24 Jan 2008 10:58:33 -0500
From:      Yousif Hassan <yousif@alumni.jmu.edu>
To:        Brooks Davis <brooks@freebsd.org>, "Bruce M. Simpson" <bms@FreeBSD.org>
Cc:        freebsd-net@freebsd.org
Subject:   Re: network interface monitoring?
Message-ID:  <1201190313.2591.7.camel@localhost>
In-Reply-To: <20080123222047.GA14264@lor.one-eyed-alien.net>
References:  <1201125022.2106.67.camel@localhost> <20080123222047.GA14264@lor.one-eyed-alien.net>

next in thread | previous in thread | raw e-mail | index | archive | help
Thank you to all who responded.

The suggestion was made to use devd or ifstated.  Both sound like
excellent tools, but I'm currently being tripped up by a core problem -
both tools rely on the kernel to notify userland of link state changes
(which makes complete sense!).  This is all well and good - but the
current issue I'm seeing is that the link state doesn't get updated
without running "ifconfig" again - is this by design?  A known "issue?"

An example:
1. Unplug network cable from bfe0
2. I run ifconfig
3. I see that interface bfe0's status is "no carrier".  Good.
4. I plug the cable into bfe0
5. Wait... wait... look in /var/log/messages... wait more.. NO STATE
CHANGE - the longest I've waited was 2 minutes, which is already too
long
6. run "ifconfig" again
7. Link state immediately changes, logs to /var/log/messages, devd
scripts run

Is this a known behavior?  It seems like the link state changes should
happen automatically, without something to "trigger" them.  Isn't there
some kind of poll or interrupt sequence?  I'm on 6.3 RC2 (will upgrade
to 6.3-RELEASE imminently) but can't imagine this code changed?  Does
this work differently/better in 7.0?

Thanks again guys for your time.

--Yousif




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1201190313.2591.7.camel>