zero_copy in RTEMS

Lu Chih Wen rudolph at jmicron.com
Wed Feb 10 08:39:32 UTC 2010


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://lists.rtems.org/pipermail/users/attachments/20100210/cfd7b5ae/attachment.html>


More information about the users mailing list