click-1.0.1 released

Eddie Kohler eddietwo at cag.lcs.mit.edu
Tue Feb 29 15:18:13 EST 2000


Hi Joe,

> 1) Must I use only DEC tulip cards for click to run?

No, any cards will work, but right now, only DEC Tulip cards will get you
great performance.

> 2) Do you have the conf file for using click as a basic router with no frills
> between 2 interfaces?

Sure, run `make-ip-conf.pl' in the `conf' directory of the distribution.
You will need to change the code to correspond to your particular setup.

> 3) How do I then insert my user level process to decide what packets get passed
> or dropped and/or modified?

Right now, it is a little bit difficult to insert a user-level process into
a kernel Click configuration. But we are working to make it easier. I will
keep you informed. Basically it involves rewriting TCP streams.

I encourage you to consider writing your drop/modification decision box as
one or more Click elements that can live in the kernel. We can talk about
the best ways to do this.

> Initially I want to use click to playback recordings from tcpdump
> recording files. i.e. I record a 1 minute session from a network with
> tcpdump (to a file) and then play it back in my lab thro my eth0 interface.
> I can then use this method to reproduce network problems.
> 
> Is this possible with click? If not, is there another method I can use to 
> create traffic on my net from a recorded tcpdump file? I need busy traffic
> recorded from an ISP to be repeatedly played back in my remote lab.

Sure. After `make install', do `man FromDump'. You will run a configuration
something like this, at user level (as root):

	% echo 'FromDump(FILENAME) -> ToDevice(eth0)' | click

Note that this uses the user-level Click driver.

> Then I want to use click in a bridge configuration. ie a linux host with
> 2 ethernet cards. This is placed on a flat LAN between a server farm and
> the enduser hosts. I want to filter the traffic across the bridge in
> both directions. If possible I would like the packets to be passed to a 
> user level process for analysis and if I decide, written to output stream.
> 
> This way I can control the flow of data across the bridge in both directions.
> The bridge making the device transparent to the network.
> The user level process is a complex program that required complete control
> of packets across the bridge.

The hard part here is going to be writing the dropping box.

We have no elements that send entire packets up to user level. The latency
involved seemed prohibitive; and we weren't sure which kernel interface to
use (SOCK_DGRAM sockets? how to start one of these?).

Are you sure you couldn't use an element to do this?

> I would be very grateful if you can assist me in configuring click to
> do these tasks. I know you are very busy. Please let me know what I 
> can do to help. Info in the form of cheat sheets (ie the actual commands
> you typed to get it working) are the best for me.

I'm not clear what you mean by `working' :) Check out the configurations in
the `conf' directory. And let us know if there's anything else we can do.

lvoe,
ed



More information about the click mailing list