From: "Marcus D. Leech" <mleech@ripnet.com>
To: Josh Lehan <linux@krellan.com>
Cc: netdev@vger.kernel.org
Subject: Re: Skipping past TCP lost packet in userspace
Date: Mon, 30 May 2011 23:30:41 -0400 [thread overview]
Message-ID: <4DE460E1.5020103@ripnet.com> (raw)
In-Reply-To: <4DE44218.4070306@krellan.com>
>
> Hello. I looked, but could not find an answer. Is there already an
> ioctl() or something like that in Linux, that would allow a userspace
> TCP socket to skip past a lost packet?
>
> The kernel already will continue to queue up packets, and with TCP SACK,
> the kernel can acknowledge reception of further packets beyond the lost
> packet, allowing the queue to continue growing. However, all these
> queued packets won't be delivered to userspace until the original lost
> packet is received again, after it has been retransmitted.
>
> Is there a way for a userspace program to prevent this needless stall?
> It would be great if there was an ioctl() or similar call, that would
> tell the kernel that it's OK to leave a gap in the data stream, and
> resume supplying userspace with more data. An obvious application would
> be media streaming, and many high-level media protocols do their own
> block framing anyway, so resynchronization after the data gap would not
> be a problem.
>
> This sounds like something that would be a FAQ, and if so, please point
> me to the answer. Thank you!
>
>
This sounds like you want UDP, not TCP.
Unless I'm misunderstanding what you want, you want a protocol that has
a different "contract"
than TCP. Doing what you want basically requires breaking TCP. That
isn't going to happen.
--
Principal Investigator
Shirleys Bay Radio Astronomy Consortium
http://www.sbrac.org
next prev parent reply other threads:[~2011-05-31 3:38 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-05-31 1:19 Skipping past TCP lost packet in userspace Josh Lehan
2011-05-31 3:30 ` Marcus D. Leech [this message]
2011-05-31 4:12 ` Josh Lehan
2011-05-31 4:05 ` Mikael Abrahamsson
2011-05-31 11:12 ` Neil Horman
2011-05-31 17:23 ` Yuchung Cheng
2011-06-01 8:10 ` Josh Lehan
2011-06-01 16:57 ` Bill Sommerfeld
2011-06-01 17:35 ` Rick Jones
2011-06-24 14:58 ` Janardhan Iyengar
2011-06-30 8:38 ` Josh Lehan
2011-06-30 14:36 ` Neil Horman
2011-07-01 8:39 ` Josh Lehan
2011-07-01 13:37 ` Neil Horman
2011-06-01 19:36 ` juice
2011-06-03 11:51 ` Ilpo Järvinen
2011-06-06 6:30 ` Josh Lehan
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=4DE460E1.5020103@ripnet.com \
--to=mleech@ripnet.com \
--cc=linux@krellan.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.