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$(echo .)com \
--cc=linux@krellan$(echo .)com \
--cc=netdev@vger$(echo .)kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
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