<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/sys/netinet/tcp_output.c, branch release/6.0.0_cvs</title>
<subtitle>FreeBSD source tree</subtitle>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/'/>
<entry>
<title>This commit was manufactured by cvs2svn to create tag</title>
<updated>2005-11-03T00:35:26+00:00</updated>
<author>
<name>cvs2svn</name>
<email>cvs2svn@FreeBSD.org</email>
</author>
<published>2005-11-03T00:35:26+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=3640cb54210edbb7edbf1b12ef0127ecfcea967d'/>
<id>3640cb54210edbb7edbf1b12ef0127ecfcea967d</id>
<content type='text'>
'RELENG_6_0_0_RELEASE'.

This commit was manufactured to restore the state of the 6.0-RELEASE image.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
'RELENG_6_0_0_RELEASE'.

This commit was manufactured to restore the state of the 6.0-RELEASE image.
</pre>
</div>
</content>
</entry>
<entry>
<title>Replace t_force with a t_flag (TF_FORCEDATA).</title>
<updated>2005-05-21T00:38:29+00:00</updated>
<author>
<name>Paul Saab</name>
<email>ps@FreeBSD.org</email>
</author>
<published>2005-05-21T00:38:29+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=2cdbfa66ee9fb0e288ad9fa249b07cddcb6092c0'/>
<id>2cdbfa66ee9fb0e288ad9fa249b07cddcb6092c0</id>
<content type='text'>
Submitted by:   Raja Mukerji.
Reviewed by:    Mohan, Silby, Andre Opperman.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Submitted by:   Raja Mukerji.
Reviewed by:    Mohan, Silby, Andre Opperman.
</pre>
</div>
</content>
</entry>
<entry>
<title>When looking for the next hole to retransmit from the scoreboard,</title>
<updated>2005-05-11T21:37:42+00:00</updated>
<author>
<name>Paul Saab</name>
<email>ps@FreeBSD.org</email>
</author>
<published>2005-05-11T21:37:42+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=0077b0163f21fa85f245daee1711c63deb9e8770'/>
<id>0077b0163f21fa85f245daee1711c63deb9e8770</id>
<content type='text'>
or to compute the total retransmitted bytes in this sack recovery
episode, the scoreboard is traversed. While in sack recovery, this
traversal occurs on every call to tcp_output(), every dupack and
every partial ack. The scoreboard could potentially get quite large,
making this traversal expensive.

This change optimizes this by storing hints (for the next hole to
retransmit and the total retransmitted bytes in this sack recovery
episode) reducing the complexity to find these values from O(n) to
constant time.

The debug code that sanity checks the hints against the computed
value will be removed eventually.

Submitted by:   Mohan Srinivasan, Noritoshi Demizu, Raja Mukerji.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
or to compute the total retransmitted bytes in this sack recovery
episode, the scoreboard is traversed. While in sack recovery, this
traversal occurs on every call to tcp_output(), every dupack and
every partial ack. The scoreboard could potentially get quite large,
making this traversal expensive.

This change optimizes this by storing hints (for the next hole to
retransmit and the total retransmitted bytes in this sack recovery
episode) reducing the complexity to find these values from O(n) to
constant time.

The debug code that sanity checks the hints against the computed
value will be removed eventually.

Submitted by:   Mohan Srinivasan, Noritoshi Demizu, Raja Mukerji.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix for interaction problems between TCP SACK and TCP Signature.</title>
<updated>2005-04-21T20:26:07+00:00</updated>
<author>
<name>Paul Saab</name>
<email>ps@FreeBSD.org</email>
</author>
<published>2005-04-21T20:26:07+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=be3f3b5ead9ce23e0ca916868f389f401c7dac60'/>
<id>be3f3b5ead9ce23e0ca916868f389f401c7dac60</id>
<content type='text'>
If TCP Signatures are enabled, the maximum allowed sack blocks aren't
going to fit. The fix is to compute how many sack blocks fit and tack
these on last. Also on SYNs, defer padding until after the SACK
PERMITTED option has been added.

Found by:	Mohan Srinivasan.
Submitted by:	Mohan Srinivasan, Noritoshi Demizu.
Reviewed by:	Raja Mukerji.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
If TCP Signatures are enabled, the maximum allowed sack blocks aren't
going to fit. The fix is to compute how many sack blocks fit and tack
these on last. Also on SYNs, defer padding until after the SACK
PERMITTED option has been added.

Found by:	Mohan Srinivasan.
Submitted by:	Mohan Srinivasan, Noritoshi Demizu.
Reviewed by:	Raja Mukerji.
</pre>
</div>
</content>
</entry>
<entry>
<title>Ignore ICMP Source Quench messages for TCP sessions.  Source Quench is</title>
<updated>2005-04-21T12:37:12+00:00</updated>
<author>
<name>Andre Oppermann</name>
<email>andre@FreeBSD.org</email>
</author>
<published>2005-04-21T12:37:12+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=1600372b6b8f7d4f5d6c90a480c7e18434111f9f'/>
<id>1600372b6b8f7d4f5d6c90a480c7e18434111f9f</id>
<content type='text'>
ineffective, depreciated and can be abused to degrade the performance
of active TCP sessions if spoofed.

Replace a bogus call to tcp_quench() in tcp_output() with the direct
equivalent tcpcb variable assignment.

Security:	draft-gont-tcpm-icmp-attacks-03.txt Section 7.1
MFC after:	3 days
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
ineffective, depreciated and can be abused to degrade the performance
of active TCP sessions if spoofed.

Replace a bogus call to tcp_quench() in tcp_output() with the direct
equivalent tcpcb variable assignment.

Security:	draft-gont-tcpm-icmp-attacks-03.txt Section 7.1
MFC after:	3 days
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix a TCP SACK related crash resulting from incorrect computation</title>
<updated>2005-01-12T21:40:51+00:00</updated>
<author>
<name>Paul Saab</name>
<email>ps@FreeBSD.org</email>
</author>
<published>2005-01-12T21:40:51+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=8d03f2b53b7df58bc0f80a2983e36896ae728ec5'/>
<id>8d03f2b53b7df58bc0f80a2983e36896ae728ec5</id>
<content type='text'>
of len in tcp_output(), in the case where the FIN has already been
transmitted. The mis-computation of len is because of a gcc
optimization issue, which this change works around.

Submitted by:	Mohan Srinivasan
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
of len in tcp_output(), in the case where the FIN has already been
transmitted. The mis-computation of len is because of a gcc
optimization issue, which this change works around.

Submitted by:	Mohan Srinivasan
</pre>
</div>
</content>
</entry>
<entry>
<title>/* -&gt; /*- for license, minor formatting changes</title>
<updated>2005-01-07T01:45:51+00:00</updated>
<author>
<name>Warner Losh</name>
<email>imp@FreeBSD.org</email>
</author>
<published>2005-01-07T01:45:51+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=c398230b64aea809cb7c5cea8db580af7097920c'/>
<id>c398230b64aea809cb7c5cea8db580af7097920c</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Fixes a bug in SACK causing us to send data beyond the receive window.</title>
<updated>2004-11-29T18:47:27+00:00</updated>
<author>
<name>Paul Saab</name>
<email>ps@FreeBSD.org</email>
</author>
<published>2004-11-29T18:47:27+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=7d5ed1ceea133ba4355a36907d4a5ba423728128'/>
<id>7d5ed1ceea133ba4355a36907d4a5ba423728128</id>
<content type='text'>
Found by: Pawel Worach and Daniel Hartmeier
Submitted by: Mohan Srinivasan mohans at yahoo-inc dot com
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Found by: Pawel Worach and Daniel Hartmeier
Submitted by: Mohan Srinivasan mohans at yahoo-inc dot com
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove RFC1644 T/TCP support from the TCP side of the network stack.</title>
<updated>2004-11-02T22:22:22+00:00</updated>
<author>
<name>Andre Oppermann</name>
<email>andre@FreeBSD.org</email>
</author>
<published>2004-11-02T22:22:22+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=c94c54e4df9ae401d299ca3b08f00acade2fccc8'/>
<id>c94c54e4df9ae401d299ca3b08f00acade2fccc8</id>
<content type='text'>
A complete rationale and discussion is given in this message
and the resulting discussion:

 http://docs.freebsd.org/cgi/mid.cgi?4177C8AD.6060706

Note that this commit removes only the functional part of T/TCP
from the tcp_* related functions in the kernel.  Other features
introduced with RFC1644 are left intact (socket layer changes,
sendmsg(2) on connection oriented protocols)  and are meant to
be reused by a simpler and less intrusive reimplemention of the
previous T/TCP functionality.

Discussed on:	-arch
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
A complete rationale and discussion is given in this message
and the resulting discussion:

 http://docs.freebsd.org/cgi/mid.cgi?4177C8AD.6060706

Note that this commit removes only the functional part of T/TCP
from the tcp_* related functions in the kernel.  Other features
introduced with RFC1644 are left intact (socket layer changes,
sendmsg(2) on connection oriented protocols)  and are meant to
be reused by a simpler and less intrusive reimplemention of the
previous T/TCP functionality.

Discussed on:	-arch
</pre>
</div>
</content>
</entry>
<entry>
<title>Correct a bug in TCP SACK that could result in wedging of the TCP stack</title>
<updated>2004-10-30T12:02:50+00:00</updated>
<author>
<name>Robert Watson</name>
<email>rwatson@FreeBSD.org</email>
</author>
<published>2004-10-30T12:02:50+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=ab5c14d828c4bf6c3cd195d0ef6a44a29d4885fa'/>
<id>ab5c14d828c4bf6c3cd195d0ef6a44a29d4885fa</id>
<content type='text'>
under high load: only set function state to loop and continuing sending
if there is no data left to send.

RELENG_5_3 candidate.

Feet provided:	Peter Losher &lt;Peter underscore Losher at isc dot org&gt;
Diagnosed by:	Aniel Hartmeier &lt;daniel at benzedrine dot cx&gt;
Submitted by:	mohan &lt;mohans at yahoo-inc dot com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
under high load: only set function state to loop and continuing sending
if there is no data left to send.

RELENG_5_3 candidate.

Feet provided:	Peter Losher &lt;Peter underscore Losher at isc dot org&gt;
Diagnosed by:	Aniel Hartmeier &lt;daniel at benzedrine dot cx&gt;
Submitted by:	mohan &lt;mohans at yahoo-inc dot com&gt;
</pre>
</div>
</content>
</entry>
</feed>
