[Click] Terminating connections to click running in kernel mode

George Porter gporter at cs.berkeley.edu
Thu Dec 4 20:56:04 EST 2003


Hello everyone,

I've been using click for some time now to do performance testing for some 
stream processing code that I've been writing, and it had been working well.  
I've run into a problem, though, that I can't seem to solve.  I've noticed 
that if I run a click configuration in user mode everything works fine--click 
correctly forwards packets, I can ping, telnet, and otherwise interact with 
the machine that click is running on, and I can stop click easily.  When I 
run the same configuation in kernel mode (after changing "Discard" to 
"ToHost"), click still forwards packets fine, but I can no longer telnet, 
ssh, or otherwise connect to the machine.  If I try to telnet to the machine 
itself, I get the SYN, SYNACK, and ACK, but nothing else.  Connections that 
are already open (open and idle telnets, for example), continue to work fine.

Has anyone else experienced this problem?  It's becoming a problem because the 
machines that I'm running click on are actually diskless machines, and so the 
inability to make new connections means they crash when an NFS request of any 
kind is made :-)

I've instrumented the click code and the packets are in fact getting to the 
"ToHost" element (but they don't seem to be getting form that element to 
Linux itself).  I generated the click configuration file with the 
"make-ip-conf.pl" script (changing Discard to ToHost when running in kernel 
mode).  The machine is running Redhat 9 (2.4.20) and there are three 3com 
3c905-c-tx-m cards (using the 3c90x driver).  Everything works fine in 
usermode.

Thanks in advance,
George Porter <gporter at cs.berkeley.edu>


More information about the click mailing list