Port-vax archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
RE: qt multi- and broadcast (was Re: dhcpcd not working in simh-vax with xq0:nat networking)
On Sunday, December 12, 2021 at 6:12 AM, Rhialto wrote:
> On Sun 12 Dec 2021 at 14:33:07 +0100, Anders Magnusson wrote:
> > Hm, it was much different threads in this discussion, and I'm not sure what
> > the problem is. Please correct me if I got something wrong.
>
> This issue I observed was that broadcast packets were not received by
> NetBSD, unless something like tcpdump put the interface in promiscuous
> mode. While you were writing your mail I was writing another with an
> experiment that shows that.
>
> > The qt driver comes from 2BSD, and I imported it with very little changes to
> > the original (new config etc...).
> > I currently do not have any VAX Qbus hardware with qt, but I do run
> 2.11BSD
> > with the qtdriver and it has worked flawlessly for many years :-)
> >
> > About broadcast; if someone ARPs for the qt machine it will be broadcast,
> so
> > if broadcast do not work it would be impossible to connect to the machine.
> > That would have been noticed immediately :-)
> >
> > So, what am I missing? :-)
>
> Perhaps nothing :) I'm not an expert on hardware. It can still be that
> the qt driver is fine but the simh emulation isn't. Perhaps it should
> receive broadcasts unconditionally. What it seems to do currently is to
> apply the multicast filter to them. I think this is the relevant code in
> simh, sim_ether.c:
Hmmm... Maybe.
> [...]
> Actually, I'm starting to be fairly certain that the emulation is
> imperfect. I looked the the Digital DELQA-Plus Addendum to DELQA Users
> Guide, Part# EK-DELQP-UG-001_Sep89.pdf which is mentioned at the top of
> pdp11_xq.c:
> http://www.bitsavers.org/pdf/dec/qbus/EK-DELQP-UG-001_Sep89.pdf
> Searching for broadcast, I find on page 6-21 about the MODE field:
>
> MR[15] PRO Promiscuous Mode
> o = disable promiscuous mode; that is,
> enable reception from the LAN of only
> those packets that match the physical
> address (PADR) or logical address filter
> (LADRF) fields in the init block, or that
> are broadcast packets.
Hmmm... I somehow missed those last 3 words when I implemented
the DELQA-T (aka DELQA-Plus). I remember specifically thinking about
the broadcast case, but all testing was done with VMS and the VMS
driver very explicitly provided a multi-cast hash which always included
the appropriate bit to match the broadcast case. I remember testing
that explicitly. I therefore concluded what I had said previously.
We never got any complaints from any other DEC operating system,
but many/most/all of these may never have attempted to put the
device into DELQA-T mode and just ran the device as a vanilla DEQNA.
I have fixed this. I need to test that I haven't broken something else
and my current network setup was good enough to test the NAT
dhcp since that didn't involve other hosts, but a few more steps
are needed here. I will commit to the master branch when tested.
> Still, I think that in any case the NetBSD qt driver lies when it says
> it supports IFF_MULTICAST. It doesn't even support IFF_ALLMULTI (in the
> above code represented by all_multicast).
I would think that would be a problem in NetBSD...
- Mark
Home |
Main Index |
Thread Index |
Old Index