Subject: Re: weird network delays connecting to cable provider's servers...
To: Luke Mewburn <lukem@goanna.cs.rmit.edu.au>
From: Jonathan Stone <jonathan@DSG.Stanford.EDU>
List: tech-net
Date: 04/21/1999 16:03:01
In message <199904212249.IAA18609@wombat.cs.rmit.edu.au>
Luke Mewburn writes:

>
>so, after i discovered that my friend's 1.3.3/sparc box was ok,
>i decided to test a few things myself. here's a summary
>
>	NetBSD-1.3.3/sparc  with le0	good
>	NetBSD-1.3.3/i386   with we0	bad
>	NetBSD-current/i386 with we0	bad
>	NetBSD-current/i386 with ex0	good
>
>we0 is either a SMC 8216 or 8013; I've tried both.
>ex0 is a 3com 3c905.
>
>So, it looks like the problem is the we driver. However, it's only bad
>when connected to the cable ISP's hosts. To recap:
>
>	netbsdbox <-> cable modem <-> cable isp <-> internet <-> other_hosts
>					 |
>				    cable_isp_hosts
>
>* ftp between netbsdbox/we0 <-> other_hosts is ok; 200k/s, as I'd expect,
>  given that I think the link from the ISP to the internet is a 2Mb link
>* ftp between netbsdbox/we0 <-> cable_isp_hosts is bad; 1.5k/s
>* ftp between netbsdbox/ex0 <-> other_hosts is unknown (i didn't test :/ ),
>  but i'd expect it to be 200k/s
>* ftp between netbsdbox/ex0 <-> cable_isp_hosts is good; 600k/s

Luke,

To the level of detail you give, this is _exactly_ the symptoms Greg
Oster encountered and mentioned elsewhere.  Greg is using an ne2000.
Between us, Greg and I ascertained that the data geetting down to the
driver (and into bpf on the sending machine) was good, but we didn't
have a second machine to monitor the acutal cable between the ne2000
and the cable modem.

Luke, If you can do that in your setup (coax, or nonswitched 10baseT),
please let me know and I'll send you copies of my libpcap tools.  Or
just a tcpdump capture (with -s1500) on both the we0 machine and an
adjacent machine, that'd verify the point of failure.

Then we can take the dp8390 code apart with a fine-toothed comb.



>So, it looks like a bug in the `we' driver here. Whilst I can put a 3x905
>card in my box, I think that shipping 1.4 with a dodgy we driver isn't
>something we should do, unless we put something in the release notes like
>``this card is supported unless being used to connect to Telstra's Big
>Pond Cable'' ;-|

``What he said''.  I'm especially concerned by the mounting evidence
of a bug in a NetBSD ethernet driver for very common hardware, but
where we don't quite know what tickles it.

I'm wondering if this is something specific to cable modems and
dp8390-based boards. Late collisions or bad collision-detect, maybe?