Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 28 Jun 2014 13:15:32 +0530
From:      Prashant Upadhyaya <praupadhyaya@gmail.com>
To:        Carlos Ferreira <carlosmf.pt@gmail.com>
Cc:        "freebsd-net@freebsd.org" <freebsd-net@freebsd.org>, Luigi Rizzo <rizzo@iet.unipi.it>
Subject:   Re: netmap
Message-ID:  <CAPBAu3U9_VTUCPk_61maSAyxM_VHgSui8kbT65=b-jsXNzqJcA@mail.gmail.com>
In-Reply-To: <CAJpYY6XBg8=g7sjVbu%2B6%2BEG1-vW1dymsvD8pL-EB08B=_z=usA@mail.gmail.com>
References:  <CAJpYY6Wj6NkYVdPzitswLQ2oVoX9JAv5tCnzbP6icsgJTdfm8Q@mail.gmail.com> <CA%2BhQ2%2BhHz2FKUkCRnHiGAVxZqxY5WHPPo87mVgSnSmPzovNLWw@mail.gmail.com> <CAJpYY6V6Ewc%2BXQYBi3BQbFtWgLiFKN_qmBLjAx1HyWhB9Q0vcg@mail.gmail.com> <CAJpYY6VJ9ih1ON1s1mnzrc-P7Xa_vsVS3UC49gnii0cLX%2B=TNA@mail.gmail.com> <20140614101523.GD22187@onelab2.iet.unipi.it> <CAJpYY6Usfv98OEsgXedP5MCqdJsd_rz7N4EhgRmP2NcxZ9eQ9g@mail.gmail.com> <CA%2BhQ2%2Bj4RrCxjSu79Zt9BVnKUTcRxO615msGH5_uoLrEinbcPQ@mail.gmail.com> <CAJpYY6XBg8=g7sjVbu%2B6%2BEG1-vW1dymsvD8pL-EB08B=_z=usA@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Hi,

Any further news ?

Professor Luigi, one question regarding the tx with netmap.
Whenever, I write a packet from user space into netmap rings, and if I want
netmap to send this out immediately, do I necessarily have to do
a ioctl(fd, NIOCTXSYNC, NULL) ?

I have an application which receives packets, does some processing and then
sends them out. If I keep doing ioctl's on every packet send, then there
will be too may system calls hitting performance, the application can't
afford to block it has to return back to polling for the receipt of next
packet.

On the receive side, I see that I don't have a problem because I can poll
the ring without initiating an RXSYNC and whenever in user space I find
that there is nothing on the ring (probably half way down the ring size), I
do an RXSYNC to get more packets thus saving system calls.

But on tx side, I have noticed that unless I do a TXSYNC, the packet does
not go out, please let me know if I am missing something.

Regards
-Prashant



On Tue, Jun 17, 2014 at 7:33 PM, Carlos Ferreira <carlosmf.pt@gmail.com>
wrote:

> Great! :)
> I will give you the results as soon as I can get them :)
>
>
>
> On 17 June 2014 12:55, Luigi Rizzo <rizzo@iet.unipi.it> wrote:
>
> > On Mon, Jun 16, 2014 at 5:30 PM, Carlos Ferreira <carlosmf.pt@gmail.com=
>
> > wrote:
> >
> >> Ok, thanks for the enlightenment regarding the loss of performance.
> >>
> >> One question, just to be sure. Does the kernel module contains the VAL=
A
> >> switch code? Or do I need to compile extra code to have the switch
> working?
> >> Also, where can I find the documentation to use the Vala Switch?
> >>
> >
> > =E2=80=8BVALE is part of the netmap kernel module, the only thing you n=
eed
> > to know to use it is port names:
> > you can have multiple switch instances with multiple ports each,
> >
> > valeX:Y means port Y on switch X, X and Y are arbitrary strings
> > with the constraint that the whole name must fit 15 characters.
> >
> > Details in the netmap manpage
> >
> > cheers
> > luigi
> >
> >
>
>
> --
>
> Carlos Miguel Ferreira
> Researcher at Telecommunications Institute
> Aveiro - Portugal
> Work E-mail - cmf@av.it.pt
> Skype & GTalk -> carlosmf.pt@gmail.com
> LinkedIn -> http://www.linkedin.com/in/carlosmferreira
> _______________________________________________
> freebsd-net@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-net
> To unsubscribe, send any mail to "freebsd-net-unsubscribe@freebsd.org"
>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAPBAu3U9_VTUCPk_61maSAyxM_VHgSui8kbT65=b-jsXNzqJcA>