<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/tor-proto/src/congestion, branch arti-v1.4.4</title>
<subtitle>mirror of https://gitlab.torproject.org/tpo/core/arti
</subtitle>
<id>http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v1.4.4</id>
<link rel='self' href='http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v1.4.4'/>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/'/>
<updated>2025-05-06T22:34:17Z</updated>
<entry>
<title>Remove the last traces of CircTag.</title>
<updated>2025-05-06T22:34:17Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2025-04-29T23:25:30Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=20b729fb5bfd44fca5a56e9cc00382601032cfa5'/>
<id>urn:sha1:20b729fb5bfd44fca5a56e9cc00382601032cfa5</id>
<content type='text'>
</content>
</entry>
<entry>
<title>proto: Use SendmeTag in place of CircTag</title>
<updated>2025-05-06T22:34:17Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2025-04-29T23:20:06Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=44f4290934140cd8afdc09e03aeeadd88264b23b'/>
<id>urn:sha1:44f4290934140cd8afdc09e03aeeadd88264b23b</id>
<content type='text'>
This doesn't make much change yet, but does save us an allocation
when handling SENDMEs.
</content>
</entry>
<entry>
<title>tor-proto: Add congestion control accessors for conflux.</title>
<updated>2025-05-06T12:11:42Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2025-04-11T13:32:45Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=84ca90f6803102974c1f686c0cba50a69ae3c703'/>
<id>urn:sha1:84ca90f6803102974c1f686c0cba50a69ae3c703</id>
<content type='text'>
</content>
</entry>
<entry>
<title>tor-proto: expand docs for `CongestionWindowParams::set_sendme_inc`</title>
<updated>2025-04-23T18:38:25Z</updated>
<author>
<name>Steven Engler</name>
<email>opara@torproject.org</email>
</author>
<published>2025-04-17T03:19:44Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=b0deeca5b39c53c8523cc6f10bd34bda8862528e'/>
<id>urn:sha1:b0deeca5b39c53c8523cc6f10bd34bda8862528e</id>
<content type='text'>
</content>
</entry>
<entry>
<title>tor-proto: rename `allow_stream_sendme` to `uses_stream_sendme`</title>
<updated>2025-04-23T18:38:25Z</updated>
<author>
<name>Steven Engler</name>
<email>opara@torproject.org</email>
</author>
<published>2025-04-17T02:54:25Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=6bca46e154084f1f76612bc8dee8706d835c14e3'/>
<id>urn:sha1:6bca46e154084f1f76612bc8dee8706d835c14e3</id>
<content type='text'>
We use this method to decide whether to allow receiving stream SENDMEs,
and also whether we should send stream SENDMEs.
</content>
</entry>
<entry>
<title>tests: Add CC ntorv3 negotiation unit test</title>
<updated>2025-04-23T18:36:28Z</updated>
<author>
<name>David Goulet</name>
<email>dgoulet@torproject.org</email>
</author>
<published>2025-01-22T20:12:17Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=e8b72b7400aa7f34cf9465818307f59433f4e8f0'/>
<id>urn:sha1:e8b72b7400aa7f34cf9465818307f59433f4e8f0</id>
<content type='text'>
Also add one for the sendme_inc validity function.

Part of #1817

Signed-off-by: David Goulet &lt;dgoulet@torproject.org&gt;
</content>
</entry>
<entry>
<title>circ: Don't send stream level SENDME with CC</title>
<updated>2025-04-23T18:36:28Z</updated>
<author>
<name>David Goulet</name>
<email>dgoulet@torproject.org</email>
</author>
<published>2025-01-22T19:06:08Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=0528a4729485237cace58827236f4d459f383628'/>
<id>urn:sha1:0528a4729485237cace58827236f4d459f383628</id>
<content type='text'>
This adds a new function to the CongestionControl object that returns
true or false on if stream level SENDMEs are allowed by the underlying
algorithm.

Congestion control Vegas doesn't allow them as in it retires them and so
we avoid sending them for that algorithm.

Part of #1817

Signed-off-by: David Goulet &lt;dgoulet@torproject.org&gt;
</content>
</entry>
<entry>
<title>circ: Apply possible subprotocol changes to circ params</title>
<updated>2025-04-23T18:36:28Z</updated>
<author>
<name>David Goulet</name>
<email>dgoulet@torproject.org</email>
</author>
<published>2025-01-22T16:41:17Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=e1064562c3f718325b9930d7d6120be38a445b27'/>
<id>urn:sha1:e1064562c3f718325b9930d7d6120be38a445b27</id>
<content type='text'>
Congestion control can change the circuit parameters if the relay we are
negotiating with doesn't support FlowCtrl=2.

This commit adds a function in the circuit builder that will apply any
changes to the circuit parameters of the hop based on the hop protocol
values. For now, only congestion control applies.

Part of #1817

Signed-off-by: David Goulet &lt;dgoulet@torproject.org&gt;
</content>
</entry>
<entry>
<title>congestion: Setup a fallback algorithm in the params</title>
<updated>2025-04-23T18:36:28Z</updated>
<author>
<name>David Goulet</name>
<email>dgoulet@torproject.org</email>
</author>
<published>2025-01-22T16:17:21Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=f4a0429dbb20f3087c9591344f8d701cef77a7e7'/>
<id>urn:sha1:f4a0429dbb20f3087c9591344f8d701cef77a7e7</id>
<content type='text'>
CircParameters is built before path selection and thus once we start
building the hops, we can't access the consensus values that were used
to build it in the first place.

For congestion control, we require a fallback algorithm in case the hop
doesn't support FlowCtrl=2.

This commit adds a "fallback_alg" to the CC parameters which will be
used for this exact case.

Part of #1817

Signed-off-by: David Goulet &lt;dgoulet@torproject.org&gt;
</content>
</entry>
<entry>
<title>circ: Set the negotiated CC sendme_inc from handshake</title>
<updated>2025-04-23T18:36:28Z</updated>
<author>
<name>David Goulet</name>
<email>dgoulet@torproject.org</email>
</author>
<published>2025-01-22T15:15:57Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=a10054323c10a3b6f20db6389633faf8d7ebc749'/>
<id>urn:sha1:a10054323c10a3b6f20db6389633faf8d7ebc749</id>
<content type='text'>
When receiving the congestion control response extension, evaluate our
state and set the sendme_inc if valid in our circuit parameters.

For this, a series of helper functions is needed.

Part of #1817

Signed-off-by: David Goulet &lt;dgoulet@torproject.org&gt;
</content>
</entry>
</feed>
