[Click] background processing?
Roman Chertov
rchertov at purdue.edu
Thu Jan 25 15:48:04 EST 2007
Nicholas Murphy wrote:
> Thanks for the reply. In a nutshell, here's what I want to do: I'm
> including cryptographic signatures in every packet. I want those
> signatures to be verified _eventually_, but I don't want verification
> to happen synchronously with packet reception. I just want it to be
> a background process that grabs spare cpu cycles. Unfortunately, I
> don't think co-operative multitasking is quite what I want here as I
> don't want the verification code, which is potentially long-running,
> to interfere with packet processing.
Store the packets on disk, in a circular/linear type buffer and then
analyze them at your own leisure time. I've made a post a while ago
with the code for device drivers which allow you to do just that.
Roman
>
> Thanks,
> Nick
>
> On Jan 25, 2007, at 5:11 AM, Beyers Cronje wrote:
>
>> Hi Nick,
>>
>> I dont think Click is ideal for asynchronous processing. As you
>> know standard Click runs in one thread, so basically you're left
>> with Task/Timer. You can try playing around with SMP Click and have
>> your element scheduled on it's own CPU, but I havent had much luck
>> getting a stable SMP Click installation. Maybe someone else can
>> comment on their experiences with SMP Click?
>>
>> Stuff that might assist you:
>>
>> ScheduleInfo http://www.read.cs.ucla.edu/click/elements/
>> scheduleinfo - You can ensure your task is scheduled less often
>> than other tasks.
>>
>> Possibly subscribe to a NotifierQueue and only schedule your task
>> if the upstream queue is empty, depending on your configuration
>> this might indicate when there are low traffic going through Click.
>>
>> What type of processing do you want to do?
>>
>> Regards
>>
>> Beyers
>>
>>
>>
>> On 1/25/07, Nicholas Murphy <nmurphy at cs.washington.edu> wrote:
>> If I want to have a background process in click that does
>> asynchronous processing, what's the best way to do it? Task/Timer?
>>
>> What I'd ideally like is something that basically runs when there are
>> spare CPU cycles. In other words, it would ideally strictly defer to
>> the main click processing thread.
>>
>> Suggestions? I actually tried just spawning a new thread with
>> pthreads, but unfortunately I'm running into compilation issues with
>> pthread.h and c++. :-/
>>
>> (I'm only concerned with userlevel for the moment)
>>
>> Thanks,
>> Nick
>> _______________________________________________
>> click mailing list
>> click at amsterdam.lcs.mit.edu
>> https://amsterdam.lcs.mit.edu/mailman/listinfo/click
>>
>
> _______________________________________________
> click mailing list
> click at amsterdam.lcs.mit.edu
> https://amsterdam.lcs.mit.edu/mailman/listinfo/click
>
More information about the click
mailing list