Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 30 Jan 1999 11:44:54 -0800 (PST)
From:      Archie Cobbs <archie@whistle.com>
To:        phk@critter.freebsd.dk (Poul-Henning Kamp)
Cc:        julian@whistle.com, net@FreeBSD.ORG
Subject:   Re: netgraph...
Message-ID:  <199901301944.LAA10242@bubba.whistle.com>
In-Reply-To: <10678.917724156@critter.freebsd.dk> from Poul-Henning Kamp at "Jan 30, 99 08:22:36 pm"

next in thread | previous in thread | raw e-mail | index | archive | help
Poul-Henning Kamp writes:
> >It's important that control message delivery between nodes be as
> >fast as possible 
> 
> I'm not talking about control messages between nodes, I'm talking
> ONLY about control messages between ME as root via the ngctl program
> to some specific node, to get it to do something or other.

OK, that makes sense. I think I wasn't clear before and we're
actually saying more or less the same thing.. the main points being:

  o ngctl can take an ASCII command and deliver it as a control
    message to a node, without knowing any specifics of that node

  o 'normal' node to node messages are still sent in binary form

  o no fancy ELF sections or anything

I was just saying that one way to do this without changing any
of the *existing* mechanisms would simply be to add two *new*
control messages that would be used exclusively by ngctl (and
any other user program that wanted to), ie:

  NGM_ENCODE_CTRLMSG - takes ASCII and returns a binary ctrl message
  NGM_DECODE_CTRLMSG - takes a binary ctrl message and returns ASCII

Then ngctl would use these as a way to translate ASCII <-> binary.
Remeber, ngctl can't make netgraph function calls, it can only
send control messages (and data) via its netgraph socket.

Now, if you think it would be simpler to also have this control message:

  NGM_DELIVER_ASCII_CTRL_MSG - deliver a control message in ASCII form

then I don't have a problem with that at all. My only point about it
is that..

  - It's redundant, because you can do the same thing with a
    NGM_ENCODE_CTRLMSG followed by sending the (binary) message
  - Saving time is not important for ngctl (which mainly interacts
    with humans).
  - You *still* would need NGM_ENCODE_CTRLMSG and NGM_DECODE_CTRLMSG
    in order to (for example) print out debugging traces dumps, etc.

So this is just an implementation issue.

> Now I can write a ng module for something, distribute it in binary
> form only, and the users can still set option "water_pressure=4psi"
> or whatever they may need to set, without any hocus pocus with ELF
> sections and all that.

Yes, being able to do this is *very* important I totally agree.

-Archie

___________________________________________________________________________
Archie Cobbs   *   Whistle Communications, Inc.  *   http://www.whistle.com

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-net" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199901301944.LAA10242>