Live data from Hacker News

Show HN: I made a discrete logic network card

qdiv.dev

11–20 of 91 posts

Re: Show HN: I made a discrete logic network card

#11

Super impresssive! I would absolutely love to work on such projects and admire the passion and countless hours that went into understanding and then building the system. Retirement is not something desirable for me, so maybe that's when I'll spend my time on hardware and software projects like this.

What's stopping you from starting today?

Re: Show HN: I made a discrete logic network card

#12
So, is it better or worse than the Etherlink 3c501 ? :-D

https://mirror.math.princeton.edu/pub/oldlinux/Linux.old/net...

IIRC it over-wrote the buffer the CPU tried to read with new packets from the network or something like that. I had it for a while in Linux and the performance really was bad. :-D

Re: Show HN: I made a discrete logic network card

#13

Super impresssive! I would absolutely love to work on such projects and admire the passion and countless hours that went into understanding and then building the system. Retirement is not something desirable for me, so maybe that's when I'll spend my time on hardware and software projects like this.

What's stopping you from starting today?

Lack of motivation to work on more technical stuff after having done the same all day at work? Mental exhaustion? Wanting to spend the remaining free time with loved ones instead?

Re: Show HN: I made a discrete logic network card

#14
> Fixing the frame length doesn’t have any effect on higher-level protocols because they encode the packet size in their headers and do not rely on the actual Ethernet frame length.

Interesting. I just wrote a packet decoder and I specifically verify at each layer that the lower layer length matches. So for IP, in my decoder the IP datagram length must match exactly the ethernet frame length + link layer header. I didn't do this to be pedantic but rather to detect short frames, and then I decided that long frames were also errors.

You (author) are using uIP but I wonder what Linux or any other modern OS does. You don't specifically mention interoperability but I wonder if you've tested that.

Re: Show HN: I made a discrete logic network card

#15

So, is it better or worse than the Etherlink 3c501 ? :-D https://mirror.math.princeton.edu/pub/oldlinux/Linux.old/net... IIRC it over-wrote the buffer the CPU tried to read with new packets from the network or something like that. I had it for a while in Linux and the performance really was bad. :-D

I remember the 3c590 (https://github.com/torvalds/linux/blob/20cb38a7af88dc40095da...) doing something awful too which required changing the PCI latency setting from 32 to 248 to avoid some catastrophic errors.

It's amazing how much stuff is hidden from view by drivers and firmware updates.

Re: Show HN: I made a discrete logic network card

#17
Beautiful work to share.

> I needed a hardware MAC address filtering.

What I really love is the stack trace of reasoning, that's very pedagogical, and that you either worked out lots of things from first principles or felt the need to explain them is if from naive perspective.

Also, while impractical for real world networking I don't think this is just idle play. What with backdoors turning up in over-complex network network chips you may find a more serious readership/project motive in the future.

Re: Show HN: I made a discrete logic network card

#19

So, is it better or worse than the Etherlink 3c501 ? :-D https://mirror.math.princeton.edu/pub/oldlinux/Linux.old/net... IIRC it over-wrote the buffer the CPU tried to read with new packets from the network or something like that. I had it for a while in Linux and the performance really was bad. :-D

I've found the description of the thing: https://www.os2museum.com/wp/emulating-etherlink/

Mine is better because it has two buffers :) But still, only one received frame is kept.

Re: Show HN: I made a discrete logic network card

#20

> Fixing the frame length doesn’t have any effect on higher-level protocols because they encode the packet size in their headers and do not rely on the actual Ethernet frame length. Interesting. I just wrote a packet decoder and I specifically verify at each layer that the lower layer length matches. So for IP, in my decoder the IP datagram length must match exactly the ethernet frame length + link layer header. I di…

I'm sending my long frames out to the network and no OS I have has any problem with that. I've read somewhere that long frames are actually used by some routers to store metadata after the packet.
Post reply on HN