Live data from Hacker News

2,500 continuous runtime hours on a 4.77Mhz DOS web server

brutmanlabs.org

21–30 of 92 posts

Re: 2,500 continuous runtime hours on a 4.77Mhz DOS web server

#21
post #14

Earlier quoted context omitted.

A PCjr? That somehow makes this more funny than if it was a 5150 or something (but equally impressive). I remember playing around with Xircom parallel port ethernet adapters and TCP/IP packet drivers (and corresponding applications) in the 90s on an old 286 laptop I still had. Almost exclusively used it as a client, though. Good times.

Yep, a PCjr. No parity bit on the memory even. I have a love/hate relationship with the Xircom adapter. It's portable and great for machines without ISA slots, but the max throughput is about 40KB/sec. A nice, real ISA card like a WD8003 can do over 100KB/sec on the same machine.

Hmm, I now have memories of both a parallel Xircom adapter, and just a null-modem connection with SLIP and PPP (pretty sure I used both). The Xircom adapter might have come after. Though with that, you'd get at most around 10kB/s (at 115200 baud), and that's assuming the 286 has a 16550A to begin with...

Re: 2,500 continuous runtime hours on a 4.77Mhz DOS web server

#22
post #16

Earlier quoted context omitted.

I have a small IRC client for that 286 if you still have it. Even has some Unicode support, but being limited to CP437 kind of limits it. ;-0

Did that client exist in the 90s? I, too, IRC'd on a 286 laptop with TCP/IP packet drivers in the 90s.

No, it's a 2009 creation. When I started mTCP I did netcat first because it was simple. My first iteration of an IRC client wasn't much better than netcat. It has improved since then though.

Re: 2,500 continuous runtime hours on a 4.77Mhz DOS web server

#23
post #20

Earlier quoted context omitted.

Yep, at this point it's just continually busy. For the next iteration I've got to put a better Ethernet card on it. The Xircom PE3-10BT device is nice because it's convenient, but the bandwidth would be 2x higher with a real Ethernet card on the bus. And normally this machine is idle so the speed and bandwidth are not a problem. Right now it's very popular. :)

What kind of speed does that Xircom get? I don't know what's on the site, maybe it's busy uploading data to various people, but usually the original 10mbps ethernet is enough to serve most ~light websites (anything that is not as heavy as youtube or an image blog basically) to the hacker news homepage, and I'm not getting synacks so this is not the web server (layer 7) being slow

I'm repeating myself a bit, but, dude, it's an 8088 (EDIT: ok, technically a NEC V20, pretty negligible though). It has an 8 bit wide bus. It runs at 4.77MHz and needs many cycles (at least 4? more?) per instruction. With a parallel port adapter, not even an 8 bit ISA one. I haven't done the math, not even on an envelope, but I somehow doubt the Ethernet adapter is the bottleneck here...

Re: 2,500 continuous runtime hours on a 4.77Mhz DOS web server

#24
post #18
post #13

Earlier quoted context omitted.

I'm not getting a SYNACK back from it within the default firefox-on-linux timeout of 60 seconds. Guess I'm obliged now to run Wireshark for the next hour to prove a point just in case it does respond to that (interplanetary latency style), but I'm going to call that at least fairly dead Edit: actually, I'm not sure how long my router will keep a half-open tcp connection in its state table. It may not show up in Wires…

"Dead" for me is if it actually crashed and does not recover without interference. I'm not surprised that an 8088 (not even an 8086!) will either take a really long time to reply SYNACK, or just drop packets entirely when the queue is full, when hammered with HN levels of crowds. It may be dead, but it also may just be busy.

A few things to consider here:

  * It's getting hammered.  I didn't expect it to be this bad.
  * If it can't process things fast enough packets might be dropped.  So the TCP/IP error rates are probably pretty high right now.
  * It's logging all of this crap too ...
Normally it can do the handshake in tens of milliseconds. Right now the load on it is basically "crush." But it's queuing and answering as best as it can.

Re: 2,500 continuous runtime hours on a 4.77Mhz DOS web server

#25
post #9

That’s slightly over 100 days of uptime. How is this special?

100+ days of runtime on nearly 40 year old hardware not designed as a server exposed to all of the garbage coming in on port 80. Remember, this is a home computer from the mid 1980s. This thing is way outside of it's duty cycle. And the software is holding up pretty well too, even during what is effectively a DoS attack on a DOS machine.

Oh they mean a real web server exposed to the internet (not hiding behind an NGINX). Impressive.

Hug of death means I didn’t see the article

Re: 2,500 continuous runtime hours on a 4.77Mhz DOS web server

#27
post #16

Earlier quoted context omitted.

Did that client exist in the 90s? I, too, IRC'd on a 286 laptop with TCP/IP packet drivers in the 90s.

No, it's a 2009 creation. When I started mTCP I did netcat first because it was simple. My first iteration of an IRC client wasn't much better than netcat. It has improved since then though.

Ah. I remember mTCP, from trying again much later, then. You said you started it, so is that all yours? In any case, very impressive work, and still useful every once in a while next to the cool factor! And HTTP/1.1 with pipelining is seriously cool...

Re: 2,500 continuous runtime hours on a 4.77Mhz DOS web server

#28
post #20

Earlier quoted context omitted.

Yep, at this point it's just continually busy. For the next iteration I've got to put a better Ethernet card on it. The Xircom PE3-10BT device is nice because it's convenient, but the bandwidth would be 2x higher with a real Ethernet card on the bus. And normally this machine is idle so the speed and bandwidth are not a problem. Right now it's very popular. :)

What kind of speed does that Xircom get? I don't know what's on the site, maybe it's busy uploading data to various people, but usually the original 10mbps ethernet is enough to serve most ~light websites (anything that is not as heavy as youtube or an image blog basically) to the hacker news homepage, and I'm not getting synacks so this is not the web server (layer 7) being slow

The Xircom is pretty bad, as it costs a lot to do the I/O through the parallel port. Just using TCP/IP sockets (no disk access or processing) the machine can send and received about 42KB/sec. A better adapter can do nearly 3x that on the same machine.

Performance measurements here: https://www.brutman.com/mTCP/mTCP_Performance.html

Re: 2,500 continuous runtime hours on a 4.77Mhz DOS web server

#30
post #20

Earlier quoted context omitted.

What kind of speed does that Xircom get? I don't know what's on the site, maybe it's busy uploading data to various people, but usually the original 10mbps ethernet is enough to serve most ~light websites (anything that is not as heavy as youtube or an image blog basically) to the hacker news homepage, and I'm not getting synacks so this is not the web server (layer 7) being slow

The Xircom is pretty bad, as it costs a lot to do the I/O through the parallel port. Just using TCP/IP sockets (no disk access or processing) the machine can send and received about 42KB/sec. A better adapter can do nearly 3x that on the same machine. Performance measurements here: https://www.brutman.com/mTCP/mTCP_Performance.html

So about 1Mbps max with a good adapter? Wow, more than I thought... yeah, a hard disk of the era, not even AT bus, most likely won't be able to keep up with that, heh.
Post reply on HN