[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
zero_copy in RTEMS
- Date: Wed, 10 Feb 2010 16:39:32 +0800
- From: rudolph at jmicron.com (Lu Chih Wen)
- Subject: zero_copy in RTEMS
Hello all
I have an idea about the implementation of zero-copy on RTEMS's TCP/IP
stack.
The major concept about zero-copy is decrease the copy time of mbuf->m_data
to application's buffer,
So I try to allocate mbuf chain in application and swap the appended cluster
buffer between protocol
and application in socket layer. I have implemented in my test platform and
got a lot of increase of performance/
Was anyone did this before? I hope someone can point out more detail that I
should aware of .
RX sequence!
MAC HW fill driver's allocated mbuf->m_data(Cluster buffer ) -> TCP/IP ->
swap cluster buffer in socket layer --> return to Application.
TX sequence!
Application fill the data in mbuf->m_data(Cluster buffer ) -> Swap cluster
buffer in socket layer -> TCP/IP ---> MAC driver.
Yours sincerely
Rudolph.Lu
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.rtems.org/pipermail/rtems-users/attachments/20100210/cfd7b5ae/attachment.html>