The discovery

Brecht Vermeulen brecht.vermeulen at rug.ac.be
Thu Oct 25 01:27:00 EDT 2001


> 
> --> Interraction with the linux TCP/IP stack: from what i can
> understand, most of the CPU time at the kernel level is used by the
> main thread processing the click tasks. It release it from time to
> time to allow to linux to still survive. (this is in standard, i did
> not read the SMP extentions). My main point is to know if it is still
> valid to think to use applications (network daemons) on top of the
> standard stack (i know i have to configure the elements to send some
> traffic to the stack). How will the performances be affected, in a
> general way ?
> 

well, the daemons are still very reactive, eg an ssh connection is still
the same, you notice nothing as user
the element ToLinux does the magic for delivering packets to such
daemons. haven't seen any problems with this
(of course the daemons can't use another 100 % of the CPU, so 'heavy'
daemons will perform worse, I think)

> --> I understand that the dedicated channel of communication between
> the process level and the kernel modules is /proc . Is there any other
> possible hooks (to READ/WRITE informations to elements in the kernel
> ?) ?
> 

yes, for some elements, there is the llrpc method, see
click/etc/samplellrpc (I don't know if this is only in cvs or if it is
also included in the latest release). This method is faster because it
is basically an ioctl.

> --> Is there a plan or a good idea to have a possibility to integrate
> standard daemons with data's inside the click structures (using zebra
> directly for exemple)... i believe not, but maybe i missed another
> great idea ?
> 

I think you will have to use one of the above methods, I don't think
there is another method (or you have to rewrite the daemon as a click
element). Maybe the click people know something other ?

> --> Is there a list of already developped elements or people starting
> to do so ?
> 

have a look in /proc/click/classes (some elements are not standard
included, you'll have to 
enable them at configure time, e.g. --enable-ip6) or in the elements
directory or at the website.

other elements are now and then announced on the mailing list (see the
archives), but they are added to teh click source if they are released
(I'm not a click maintainer, but I've seen this in the past :-) ).

regards,
Brecht



More information about the click mailing list