netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jean-Michel Hautbois <jhautbois@gmail.com>
To: netdev@vger.kernel.org
Subject: TCP communication for raw image transmission
Date: Mon, 2 Jan 2012 16:21:10 +0100	[thread overview]
Message-ID: <CAL8zT=iSiKZfENdtng9gDtuRSuFNn4WZ69uuGapLVVEduFRVyQ@mail.gmail.com> (raw)

Hi all,

I am currently working on a way to send raw images (~400*300 YUV
4:2:0) at a relative high speed (raw image and not compressed image
due to specific codec issues).
This would represent about 57MBps/sec on a 100Mbps ethernet link.
This link is direct, nothing else will pass through it.

My question is a performance and efficiency question. Here is what I
am thinking about :
- I have the image on one computer at a known memory adress
- I want top transmit this picture using TCP packets with the rule
"1row = 1packet", maybe "2rows=1packet"
- All these packets have to go on an ethernet link and will be
received on another computer starting at a known memory adress
Something like this :
http://imageshack.us/photo/my-images/15/tcpmemory.png/

I was thinking about using TCP socket (of course) and the sendfile
syscall on sender side, splice syscall on the receiver side, but I
don't know if this is the best (and fastest) way to do it ?
I would like to avoid memory copy as much as possible as the systems
on which it will be done are embedded arm computers.
TCP is chosen in order to get ordered packets, but maybe am I wrong ?

Thanks for any clues you can give !
Regards,
JM

             reply	other threads:[~2012-01-02 15:21 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-01-02 15:21 Jean-Michel Hautbois [this message]
2012-01-02 15:59 ` TCP communication for raw image transmission Eric Dumazet
2012-01-02 16:08   ` Jean-Michel Hautbois
2012-01-02 16:29     ` Eric Dumazet
2012-01-02 16:40       ` Jean-Michel Hautbois
2012-01-02 16:52         ` Eric Dumazet
2012-01-02 16:52           ` Eric Dumazet
2012-01-02 17:04             ` Jean-Michel Hautbois
2012-01-02 17:20             ` Jean-Michel Hautbois
2012-01-02 17:41               ` Eric Dumazet
2012-01-02 18:00                 ` Jean-Michel Hautbois
2012-01-02 18:02                   ` Jean-Michel Hautbois
2012-01-03  7:36                     ` Jean-Michel Hautbois
2012-01-03  8:06                       ` Eric Dumazet
2012-01-05  8:50                         ` Jean-Michel Hautbois
2012-01-03 22:35           ` Rick Jones
2012-01-05  9:13             ` Jean-Michel Hautbois
2012-01-05  9:40               ` Eric Dumazet
2012-01-05  9:48                 ` Jean-Michel Hautbois
2012-01-05  9:55                   ` Eric Dumazet
2012-01-05  9:57                     ` Jean-Michel Hautbois
2012-01-05 10:04                       ` Eric Dumazet
2012-01-05 18:41                         ` Rick Jones
2012-01-05 18:53                           ` Eric Dumazet
2012-01-05 19:26                             ` Rick Jones
2012-01-05 18:32                     ` Rick Jones
2012-01-05  9:49                 ` Eric Dumazet
2012-01-04  9:57 ` David Laight
2012-01-04 11:16   ` Jean-Michel Hautbois

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAL8zT=iSiKZfENdtng9gDtuRSuFNn4WZ69uuGapLVVEduFRVyQ@mail.gmail.com' \
    --to=jhautbois@gmail.com \
    --cc=netdev@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).