NETMAP application architecture question
Slawa Olhovchenkov
slw at zxy.spb.ru
Fri Sep 16 15:14:49 UTC 2016
On Fri, Sep 16, 2016 at 05:05:33PM +0200, Luigi Rizzo wrote:
> Hi,
> I don't think there is any hard limitation on the total number
> of pipes, very likely the number (64) is just some arbitrary
> limit that we set, and can be increased through a sysctl or
> worst case a compile time constant.
I am don't see sysctl for this.
Re-compile is not comfortable.
In any way, for this setup I am need to many resources, as I am calc:
buf_num=1114112
ring_num=964
if_num=248
This can introduce to high overhead.
> Please have a look at the source code if you can find where
> you are hitting the limit, and which parameters are involved.
> In case you don't find it, get back to us in a week (we are
> busy on a deadline at the moment).
OK
> Note that you should look at the netmap code on github, the one in
> the freebsd tree is not up to date.
Do you plan to update code in freebsd tree?
> Cheers
> Luigi
>
> On Fri, Sep 16, 2016 at 4:57 PM, Slawa Olhovchenkov <slw at zxy.spb.ru> wrote:
> > I am wrote NETMAP application and meet some limitation.
> > I am use server 16-core server.
> > Workers thread run mostly independend, with minimal interworking.
> > I am use balancer threads for distributing packet flow between worker
> > threads.
> > I am using two NETMAP pipes between balancer and workers.
> > As result, for case of 4 balancer and 12 workers I am need 4x12x2 = 96
> > pipes. NETMAP have limitation of 64 pipes.
> >
> > May be exist more optimal way?
> >
> > May be I can emulate tilera way, with bufers credits?
> > (In this case balancer give RX buffers, confirm to kernel and pass it
> > to worker. kernel reduce credit, used for reciving other buffer from
> > pool. After complete worker pass buffer to balancer and balancer
> > return buffer to kernel, kernel rise credits and put free buffer to
> > pool).
> > In this case I am not need to many pipes and not limited performance
> > by too long processing of one packet.
> > _______________________________________________
> > freebsd-net at freebsd.org mailing list
> > https://lists.freebsd.org/mailman/listinfo/freebsd-net
> > To unsubscribe, send any mail to "freebsd-net-unsubscribe at freebsd.org"
>
>
>
> --
> -----------------------------------------+-------------------------------
> Prof. Luigi RIZZO, rizzo at iet.unipi.it . Dip. di Ing. dell'Informazione
> http://www.iet.unipi.it/~luigi/ . Universita` di Pisa
> TEL +39-050-2217533 . via Diotisalvi 2
> Mobile +39-338-6809875 . 56122 PISA (Italy)
> -----------------------------------------+-------------------------------
More information about the freebsd-net
mailing list