[Click] package reordering - ATM:IP reassembly

Eddie Kohler kohler at cs.ucla.edu
Tue Sep 19 10:04:08 EDT 2006


Hi Koen,

Koen Beel wrote:
> A summary of the functions of the PRS:
> -receive packages from its interfaces (2, 4 or 8, depending on the
> configuration) containing: a small header, a time reference and some
> ATM-cells
> 
> -reorder these packages in increasing time. Also, for every package:
> wait at least 30ms to see if a package with an earlier timestamp
> arrives.
> ->> tis is my first problem: i don't know how to start solving this ...

You might want to take a look at the TimeSortedSched element, which is in the 
'analysis' package (e.g. --enable-analysis when you build click).

http://www.read.cs.ucla.edu/click/elements/timesortedsched

It does something very similar to what you want, based on timestamp annotations.

> -when packages a reordered, i need to reassemble the IP packets
> contained in the ATM cells (1 ip packet is spread out over more than
> one atm cell). Here i have to group the ATM cells folowing the
> VPI/VCI-numbers and wait until i have a full IP packet (or timeout
> after some seconds).
> This problem is somewhat like reassembling fragmented IP packets: wait
> until all packets from some 'connection' have arrived and then
> reassemble them.
> ->> this is my second problem: how should i keep track of all the
> current connections, temporarily storing incomplete packets?

Take a look at IPReassembler.  Your code will be similar.  However, it will be 
less complex, at least at first; IPReassembler is designed to minimize the 
state it can hold, and thus its own vulnerability to attack.

> And: is there anywhere, besides http://www.read.cs.ucla.edu/click ,
> where i can find usefull packages for click? (e.g. for ATM / AAL5)

We don't know :)

Eddie


More information about the click mailing list