Date: Sat, 28 Jun 2014 10:24:35 +0200 From: Luigi Rizzo <rizzo@iet.unipi.it> To: Prashant Upadhyaya <praupadhyaya@gmail.com> Cc: "freebsd-net@freebsd.org" <freebsd-net@freebsd.org>, Carlos Ferreira <carlosmf.pt@gmail.com> Subject: Re: netmap Message-ID: <CA%2BhQ2%2Bgi9SiZuM4Nvw4CjJG9sX3cNZ4KNfXSkDcFfcPvW4A22Q@mail.gmail.com> In-Reply-To: <CAPBAu3U9_VTUCPk_61maSAyxM_VHgSui8kbT65=b-jsXNzqJcA@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> <CAPBAu3U9_VTUCPk_61maSAyxM_VHgSui8kbT65=b-jsXNzqJcA@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Saturday, June 28, 2014, Prashant Upadhyaya <praupadhyaya@gmail.com> wrote: > 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) ? > Yes it is up to the application to decide when to push packets out with a txsync or select() or poll(), and unfortunately there is a tradeoff between efficiency and latency Cheers Luigi > > 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 > <javascript:_e(%7B%7D,'cvml','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 >> <javascript:_e(%7B%7D,'cvml','rizzo@iet.unipi.it');>> wrote: >> >> > On Mon, Jun 16, 2014 at 5:30 PM, Carlos Ferreira <carlosmf.pt@gmail.co= m >> <javascript:_e(%7B%7D,'cvml','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 VA= LA >> >> 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 = need >> > 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 <javascript:_e(%7B%7D,'cvml','cmf@av.it.pt');= > >> Skype & GTalk -> carlosmf.pt@gmail.com >> <javascript:_e(%7B%7D,'cvml','carlosmf.pt@gmail.com');> >> LinkedIn -> http://www.linkedin.com/in/carlosmferreira >> _______________________________________________ >> freebsd-net@freebsd.org >> <javascript:_e(%7B%7D,'cvml','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 >> <javascript:_e(%7B%7D,'cvml','freebsd-net-unsubscribe@freebsd.org');>" >> > > --=20 -----------------------------------------+------------------------------- Prof. Luigi RIZZO, rizzo@iet.unipi.it . Dip. di Ing. dell'Informazione http://www.iet.unipi.it/~luigi/ . Universita` di Pisa TEL +39-050-2211611 . via Diotisalvi 2 Mobile +39-338-6809875 . 56122 PISA (Italy) -----------------------------------------+-------------------------------
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CA%2BhQ2%2Bgi9SiZuM4Nvw4CjJG9sX3cNZ4KNfXSkDcFfcPvW4A22Q>