[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <7e63f56c0809050328j63b901dbgffb0fa5836229d70@mail.gmail.com>
Date: Fri, 5 Sep 2008 13:28:03 +0300
From: "Robert Iakobashvili" <coroberti@...il.com>
To: "Johann Baudy" <johaahn@...il.com>
Cc: netdev@...r.kernel.org,
"Ulisses Alonso CamarĂ³" <uaca@...mni.uv.es>
Subject: Re: Packet mmap: TX RING and zero copy
Hi Johann,
On Tue, Sep 2, 2008 at 9:27 PM, Johann Baudy <johaahn@...il.com> wrote:
> I've made lot of tests, playing with jumbo frames, raw sockets, ...
> I've never exceeded ~25Mbytes/s. So I've decided to analyze deeply the
> packet socket transmission process.
>
> The main blocking point was the memcpy_fromiovec() function that is
> located in the packet_sendmsg() of af_packet.c.
> It was consuming all my CPU resources to copy data from user space to
> socket buffer.
> Then I've started to work on a hack that makes this transfer possible
> without any memcpys.
>
> Mainly, the hack is the implementation of two "features":
>
> * Sending packet through a circular buffer between user and
> kernel space that minimizes the number of system calls. (Feature
> actually implemented for capture process, libpcap ..).
Something like this has been done in PF_RING socket,
which is a part of ntop project infra.
Take care.
Truly,
Robert Iakobashvili
......................................................................
www.ghotit.com
Assistive technology that understands you
......................................................................
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists