[Top] [All Lists]

Re: Asynchronous crypto layer.

To: johnpol@xxxxxxxxxxx
Subject: Re: Asynchronous crypto layer.
From: jamal <hadi@xxxxxxxxxx>
Date: 30 Oct 2004 19:41:27 -0400
Cc: Eugene Surovegin <ebs@xxxxxxxxxxx>, netdev@xxxxxxxxxxx, cryptoapi@xxxxxxxxxxxxxx
In-reply-to: <20041031012423.74b98698@xxxxxxxxxxxxxxxxxxxx>
Organization: jamalopolous
References: <1099030958.4944.148.camel@uganda> <1099053738.1024.104.camel@xxxxxxxxxxxxxxxx> <20041029180652.113f0f6e@xxxxxxxxxxxxxxxxxxxx> <20041030203550.GB6256@xxxxxxxxxxxxxxxx> <20041031010415.4c798a04@xxxxxxxxxxxxxxxxxxxx> <20041030205630.GD6256@xxxxxxxxxxxxxxxx> <20041031012423.74b98698@xxxxxxxxxxxxxxxxxxxx>
Reply-to: hadi@xxxxxxxxxx
Sender: netdev-bounce@xxxxxxxxxxx
On Sat, 2004-10-30 at 17:24, Evgeniy Polyakov wrote:
> On Sat, 30 Oct 2004 13:56:31 -0700
> Eugene Surovegin <ebs@xxxxxxxxxxx> wrote:

> > OK, what about 64 byte packets? I'm not saying hw crypto is useless, 
> > what I'm saying is it's not that obvious that having hw crypto will 
> > help in _all_ situations.
> Sure.
> For such cases I offered "rate" or "speed" parameter in my first e-mail, 
> but it can be implicitly implemented by queue length.
> With 1 big datflow of packets with high priority and little dataflow of
> packets with little priority if we will catch high priority packets by SW
> and thus can have situation when we will _never_ catch low-priority packets, 
> with even very slow HW we can route all those low-priority packets into it, 
> at least they will be processed sometimes...

Can you explain the "rate" or "speed" parameter ?
I havent studied your code, however, what Eugene is pointing out is
valuable detail/feedback.
You should have in your queuing towards the crypto chip ability to
batch. i.e sort of nagle-like "wait until we have 10 packets/20KB or 20
jiffies" before you send everything in the queue to the chip.
As he points out (and i am sure he can back it with data ;->), that
given the setup cost, packet size, algo and CPU and bus speed, it may
not make sense to use the chip at all ;->


<Prev in Thread] Current Thread [Next in Thread>