On 6/8/2015 2:15 PM, Steve Litt wrote:
I'm not familiar with inetd. Using sockets to activate what? In what manner? Whose socket?

~ ~ ~
Let's go back in time a little bit. The year is 1996, I'm downstairs literally in my basement with my creaky old 486 with 16Mb of RAM and I'm trying to squeeze as much as I can into my Slackware 3.6 install that I made with 12 floppy disks. There are some of these service-thingys that I'm learning about and they all take up gobs of expen$ive RAM, and while I can swap to disk and deal with that, swapping is a slooooooooooow afair because a drive that pushes 10 megaBYTES per second is "speedy". Heck, my drive isn't even IDE, it's ESDI, and being a full-height 5 1/2" drive is actually larger than a brick. But I digress. It would be cool if there was a way to reduce the RAM consumption...
~ ~ ~

Me: "There's got to be something that can free up some RAM...time to dig around documentation and aritcles online with my uber-kool 14.4 dialup modem! Let's see here....what's this? Inetd? Whoa, it frees up RAM while providing services! Now I just need RAM to run inetd and all the RAM I save from not running other things can be used for mischief!"

~ ~ ~
What inetd does is:

1. Have a giant list of port numbers defined, with a program that pairs
   with each port number (/etc/inetd.conf)
2. Opens port numbers out of that list when the inetd daemon is run and
   listens to all of them.
3. When someone talks to the port, the corresponding program is
   launched and the port connected to the program.  If the program
   fails to launch, the connection is closed.
4. You only need RAM for inetd + any services that launch.
5. ...
6. Profit!

Meanwhile, in the same year, halfway across the country in Illinois, in a dark lab...
~ ~ ~

DJB: (swiveling around in a dramatic swivel chair, but no cat, because cats would shed hair on his cool looking sweater) "I shall take the old inetd concept, and make it generic and decoupled and streamlined and secure. I shall gift this to you, the Internet, so that you may all be secure, unlike Sendmail's Security Exploit of the Month Club which keeps arriving in my inbox when I didn't ask for it. Go forth, and provide much joy to sysadmins everywhere!" (queue dramatic music)

~ ~ ~
...and thus, UCSPI was born. Fast forward to 2014....while surfing various Linux news articles, I stumble into something that sounds like an infomercial...
~ ~ ~

...Systemd will now do socket activation with not only file sockets but also network sockets too! NETWORK SOCKETS! It's like an Armed Bear riding a Shark with Frickin' Laser Beams while singing the National Anthem with an Exploding Background!! Get your copy today for THREE easy payments!!! Order Now While Supplies Last!!!! OPERATORS ARE STANDING BY!!!!!!!

~ ~ ~
Yes, that juicy sound is the sound of my eyes rolling up into their sockets as I read that article, attempting to retreat to the relative safety of my skull as I Cannot Un-see What I Have Seen...as you can tell, this isn't exactly a new concept, and it's been done before, many many times, in various ways (inetd, xinetd, various flavors of UCSPI, and now systemd's flavor).

Reply via email to