Hi, We are using Click for desinging a shared forwarding engine with separate forwarding paths (chain of elements) per customer. The customers share all the NICs, so after the packets are polled out from the NIC's queue a Classifier demultiplexes them by emitting them to the proper forwarding path. Our intention is to provide a fair CPU scheduling for each of the forwarding paths. The stride scheduling algorithm, implemented in Click, would be a perfect solution for our problem, but after checking the source code and the available documents I found out that the algorithm hasn't been implemented completely as it was proposed. If I understand it correctly from the source and its comments, there is no such thing like "quantums" (i.e. a discrete time slice when the scheduled task is entitled to use the CPU) and I guess that's the main reason while the operation of the elements can not be interrupted. In the first comment of lib/task.cc it's mentioned that this may be addressed in the future, so I was wondering whether anyone is working on it and I may jump in and help or just could someone provide information on how to make elements interruptable the fastest way extending the current version of the code. Regards, Norbert
_______________________________________________ click mailing list [email protected] https://amsterdam.lcs.mit.edu/mailman/listinfo/click
