[net.unix-wizards] Software Posted to net.sources

ry@cadre.UUCP (02/03/85)

	I have posted a program to net.sources call netd.
	With it you can add network services easily without
	the cost of an idle background process per service.

	It can also be used to eliminate most of the 4.2 server
	processes that run in the background started by /etc/rc
	and /etc/rc.local. I have a shell script that will convert
	most of the standard 4.2 servers to work with netd, but
	would like to find another site to test it first.

	Anyone interrested trying this?

		Russ

	ry@cadre.arpa
	{idis,mi-cec,pitt,ihnp4,vax135}!cadre!ry

guy@rlgvax.UUCP (Guy Harris) (02/07/85)

> 	I have posted a program to net.sources call netd.
> 	With it you can add network services easily without
> 	the cost of an idle background process per service.
> 
> 	It can also be used to eliminate most of the 4.2 server
> 	processes that run in the background started by /etc/rc
> 	and /etc/rc.local.

This is the same thing that Berkeley put in in "4.3BSD" (or whatever it'll
be called when it comes out), and which UNET also had.  Berkeley called
it "inetd", and they talk about it in their performance paper that was
given at Salt Lake City.

	Guy Harris
	{seismo,ihnp4,allegra}!rlgvax!guy

ry@cadre.UUCP (02/08/85)

>> 	I have posted a program to net.sources call netd.
>> 	........
>
>This is the same thing that Berkeley put in in "4.3BSD" (or whatever it'll
>be called when it comes out), and which UNET also had.  Berkeley called
>it "inetd", and they talk about it in their performance paper that was
>given at Salt Lake City.
>

Not exactly, I have inet on a sun also. (in binary, I assume it is ucb's)
The differences follow: (Correct me somebody if I am wrong)

	Inetd services internet udp/tcp only, netd services
internet udp/tcp/raw and unix domain sockets also. (lpd can be
serviced by netd by not inetd.) I believe the code is generic enough
to permit modification to handle others domains. The source includes
one running example used to talk with perq workstations.
Netd can be used by non-root users to develope services, inetd can not.

	Netd has a much more complicated configuration file than inet.
It includes socket type, logfile, uid, gid, and nice of server
program	and invoking arguments. This is likely overkill, but
nice for debugging. It however lacks the ability to turn on socket
debugging information (someone forgot). Netd also reconfigures upon 
receiving a SIGHUP. Inetd must be killed and restarted. (Not too nice
on a busy system.)

	The passing of parameter to servers is done in environment and
invoking arguments with netd. Inetd passes parameters as invoking arguments. 
Use of file descriptors is different. Netd opens a logfile, inetd assumes
servers process handles any logfile opening.

The two are incompatible currently.
As was pointed out in net.sources <4624@ucbvax> 
> Uh, I think you guys should realize that we at berkeley have an inet
> daemon as well, quite similar to this stuff, but ours will be distributed
> in the upcoming new 4.2 release.  So, if you intend to upgrade
> to the new BSD, I'd suggest waiting for ours...
>	
It should be easy to recompile internet server programs compatible with netd
to be compatible with inetd since all one must do is alter a few lines of
code in library used to compile server programs, to understand inetd's
method of parameter/descriptor passing and open a logfile.

As for speed, I have not measured, but suspect they are close, but inetd
is faster. Inetd is a smaller program than netd. (At least the binary is.)

	Russ

	ry@cadre.arpa
        decvax!idis!cadre!ry

sm@cadre.UUCP (02/08/85)

In article <427@rlgvax.UUCP> guy@rlgvax.UUCP writes:
>> 	I have posted a program to net.sources call netd.
>> 	With it you can add network services easily without
>> 	the cost of an idle background process per service.
>> 
>> 	It can also be used to eliminate most of the 4.2 server
>> 	processes that run in the background started by /etc/rc
>> 	and /etc/rc.local.
>
>This is the same thing that Berkeley put in in "4.3BSD" (or whatever it'll
>be called when it comes out), and which UNET also had.  Berkeley called
>it "inetd", and they talk about it in their performance paper that was
>given at Salt Lake City.
>
>	Guy Harris
>	{seismo,ihnp4,allegra}!rlgvax!guy

If the Berkeley version of "inetd" is anything like the Sun Microsystems
"inetd", I wouldn't wait for it to come out. "netd", as released by Russell,
has a number of improvements over the Sun "inetd" which are documented
in the associated manual pages. Since I don't know what "inetd" from
Berkeley is going to look like I can only wait for the announcement
of 4.2++ (whenever that may be). I doubt they would call it 4.3 since
it seems that all that they are really doing is delivering what they
actually promised for 4.2.

Sean Mclinden

jim@mcvax.UUCP (Jim McKie) (02/12/85)

In article <253@cadre.ARPA> sm@cadre.ARPA (Sean McLinden) writes:
    
    If the Berkeley version of "inetd" is anything like the Sun Microsystems
    "inetd", I wouldn't wait for it to come out. "netd", as released by Russell,
    has a number of improvements over the Sun "inetd" which are documented
    in the associated manual pages. Since I don't know what "inetd" from
    Berkeley is going to look like I can only wait for the announcement
    of 4.2++ (whenever that may be). I doubt they would call it 4.3 since
    it seems that all that they are really doing is delivering what they
    actually promised for 4.2.

The Berkeley 'inetd' is nothing like the SUN one (sighs of relief).

--jim