Commit Graph

3339 Commits

Author SHA1 Message Date
David Goulet
ee0c415f8e prop339: Move to Accepted state
Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-05-31 10:12:06 -04:00
Nick Mathewson
ffceda4ac2 Merge branch 'netflow_clarification' 2022-05-27 14:26:02 -04:00
Mike Perry
1272bd0db5 Describe a potential (rare) distringuisher in idle circuits.
In the rare event that a user resumes activity after a period between the
"reduced connection timeout" and the full value, and that user has not set
reduced padding, this is a distinguisher on circuits that have been held idle
and open for that long.
2022-05-27 14:25:03 -04:00
Nick Mathewson
5536d29700 Padding spec: describe behavior with queues.
(Briefly: "Sent" is sometimes unobservable, so we should use
"queued" as a reasonable proxy.)
2022-05-27 14:25:03 -04:00
Nick Mathewson
836a5fb964 Try to document the many uses of nf_conntimeout_clients.
(This is largely determined by reverse-engineering tor's current
behavior.)
2022-05-27 14:25:03 -04:00
Nick Mathewson
9aad630153 Clarify who sends padding negotiation and when.
Also explain what should happen if those assumptions are violated.
2022-05-27 14:25:03 -04:00
Nick Mathewson
e35a770882 netflow padding: clarify directionality and padding behavior.
The main points here are:

  * We assume that flow measurements are unidirectional, so
    each side must make sure to send traffic.
  * So we restart our timer when sending, only.
  * We restart the timer whether we're sending real traffic or
    padding traffic.
  * The logic for `max(X,X)` timing  applies even though we aren't
    using a bidirectional trigger for timing.
2022-05-27 14:25:03 -04:00
David Goulet
e80e874964 prop275: Merged in 048 now
Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-05-16 08:54:49 -04:00
David Goulet
391d3cc6c0 prop339: Rename relay command and minor fixes
Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-05-09 10:54:32 -04:00
David Goulet
2437d19ccf attic: Move onion service v2 spec to attic
Deprecated. Not supported by the network anymore.

Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-05-05 11:44:26 -04:00
David Goulet
58df78f92c tor-spec: Add relay command values of flow control cells
Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-05-05 10:17:17 -04:00
David Goulet
7f36b97110 tor-spec: Add FlowCtrl=2 for congestion control
Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-05-04 14:27:47 -04:00
David Goulet
cdc9df7aa7 tor-spec: Add Relay=4, ntorv3 handshake support
See proposal 332 for more details.

Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-05-04 14:25:20 -04:00
David Goulet
0b19ef1ba3 prop339: Fix couple typos
Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-05-04 13:36:29 -04:00
Nick Mathewson
6c19c28090 Draft proposal for UDP over Tor.
This has already been discussed somewhat on a pad; now we can move
to an MR and fill in the missing parts.
2022-05-04 12:47:34 -04:00
Nick Mathewson
d24db4a752 Update the status of several proposals
(Based on network team discussion, 28 April 2022)
2022-04-29 13:54:34 -04:00
Richard Pospesel
7be12aaceb fix typo in ADD_ONION V3Key definition (ed25519 -> x25519)
resolves #116
2022-04-26 16:20:14 +00:00
David Goulet
c00fea1e4d prop328: Update proposal to reflect implementation
Closes #113

Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-04-22 09:28:06 -04:00
Alexander Færøy
26a2dc7470 Merge remote-tracking branch 'nickm/prop275' 2022-03-24 17:15:57 +00:00
Georg Koppen
ca33a7ca1a
DNS timeouts are not causing overload anymore
Closes: #81.
2022-03-16 12:48:54 +00:00
David Goulet
0c25d7a89f param: Changes from nickm's suggestion
Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-03-16 08:22:16 -04:00
David Goulet
1d12f0e041 param: Exit DNS parameters from tor#40312
Related to #40312

Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-03-15 16:08:00 -04:00
David Goulet
379f8a79ff param: Merge duplicate sections
Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-03-15 16:02:55 -04:00
David Goulet
45e8919f54 Merge branch 'tor-gitlab/mr/65' 2022-03-15 15:20:15 -04:00
David Goulet
3a97b976ec param: Add overload onionskin ntor parameters
Related to https://gitlab.torproject.org/tpo/core/tor/-/issues/40560

Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-03-15 15:20:05 -04:00
David Goulet
80761a861b Merge branch 'tor-gitlab/mr/66' 2022-03-14 15:37:24 -04:00
David Goulet
48e063fa17 Merge branch 'tor-gitlab/mr/64' 2022-03-14 15:35:12 -04:00
Mike Perry
86bbf141aa Add XON/XOFF status fields to STREAM event. 2022-03-14 17:57:54 +00:00
Mike Perry
e38527978a Add congestion control fields to CIRC_BW 2022-03-14 17:57:54 +00:00
Nick Mathewson
3b8a1436c9 Proposal 338: Use an 8-byte timestamp in NETINFO cells 2022-03-14 12:43:35 -04:00
David Fifield
ec77ae643f Remove comma from STATUS format specification. 2022-02-28 07:38:36 +00:00
Nick Mathewson
80e9d9e7db Merge remote-tracking branch 'tor-gitlab/mr/60' 2022-02-24 10:54:05 -05:00
Mike Perry
71c326ae93 Prop 324: Updates for Negotiation and Simulation Testing
Changes:
  - Rework exit negotiation logic a bit
  - Specify using ntorv3 with extension fields for negotiation
  - Clients only request congestion control; exits and services
    control sendme_inc
  - Rework onion service negotiation for descriptor-controlled
    FlowCtrl protover and sendme_inc value
  - Add bounds checks on sendme_inc for clients
  - Update parameter values based on Shadow results
  - Improvements to TOR_VEGAS algorithm based on simulation testing
  - Additional consensus parameters for RTT N-EWMA smoothing and
    TOR_VEGAS queue use caps
  - Clarify N_EWMA smoothing, and relocate it to its own sub-section.
  - TOR_VEGAS now defaults to CWND/RTT BDP estimator
  - Minor TOR_VEGAS alg bugfixes
  - Add a 'delta' parameter to TOR_VEGAS for steady-state backoff
  - Consensus param update notes and param range fixes.
  - Add glossary of common congestion control acronyms
  - Misc clarifications
2022-02-22 20:18:12 +00:00
Nick Mathewson
fa940c0d9e Be explicit about EXT_FIELD_LEN=0 2022-02-17 16:16:15 -05:00
Nick Mathewson
176c9001f9 ntor3, rend3: clarify extension field defaults.
These patch changes describe new default behaviors for extension
field lists, as appear in ntor3 and in many places throughout the
ntor3 protocol.  In general:

* Unrecognized extensions MUST be ignored.

Additionally, all the following rules apply _unless otherwise stated
in the documentation for an extension.

* Extensions are sent in sorted order.
* Extensions should only be sent once in a message
* If you receive multiple copies of an extension, only the first
  one counts.

This comes out of discussions on tor!525.
2022-02-17 10:53:20 -05:00
David Goulet
4da63977b8 Merge branch 'tor-gitlab/mr/56' 2022-01-19 14:45:11 -05:00
David Goulet
617a98c9f5 dir-spec: Add missing versions for HSv3 lines
Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-01-19 14:45:01 -05:00
Hans-Christoph Steiner
bdb862ff73
gitlab-ci: default branch is now main 2021-12-22 09:06:03 +01:00
David Goulet
ab4a8d4433 Merge branch 'tor-gitlab/mr/55' 2021-12-14 12:58:40 -05:00
David Goulet
99a5447042 params: Deprecate DNS overload parameters
Signed-off-by: David Goulet <dgoulet@torproject.org>
2021-12-13 10:41:23 -05:00
David Goulet
485abc986f Merge branch 'tor-gitlab/mr/53' 2021-12-09 15:42:46 -05:00
Nick Mathewson
57d1e7d163 Clarify how we derive ed25519 for cross-certification.
The descriptor format uses a curve25519->ed25519 conversion
algorithm to cross-certify descriptors with their ntor onion keys.

This patch clarifies two aspects of the algorithm:

1. When deriving a private key, how to derive the part of the
   private key that _isn't_ a point on the curve.

2. That there are two algorithms here, one for private->private and
   one for public->public.
2021-12-08 11:25:09 -05:00
Nick Mathewson
0911bbd0cd Clarify the behavior of some circuit timeout params.
In particular, this commit clarifies that the ranges of some
parameters are such that choosing a very high value will, in effect,
disable parts of the circuit timeout inference code.
2021-12-08 11:10:05 -05:00
Nick Mathewson
73d3702a49 Fold prop 335-middle-only-redux.md into the specs.
Also, mark it closed.
2021-12-08 09:41:21 -05:00
Nick Mathewson
583d028d4a Update status for the two middle-only proposals.
334 is superseded by 335, which is Finished but not Closed.
2021-11-22 10:09:29 -05:00
Nick Mathewson
2b871d0a08 Update proposal 321 based on discussions from @arma
See tor#40134
2021-11-22 10:00:17 -05:00
Nick Mathewson
f3e1d58f4e Mark proposal 315 as implemented in 0.4.5.1-alpha. 2021-11-22 09:56:25 -05:00
Nick Mathewson
d27f6daa15 Update proposal index based on recent reclassification. 2021-11-22 09:36:39 -05:00
Nick Mathewson
14c8021629 Mark proposal 273 (exit pinning) as Reserve.
There's not been much progress here, and I don't think we'll
come back to it any time soon.
2021-11-22 09:32:33 -05:00
Nick Mathewson
6a406bc719 Mark proposal 160 as closed.
It was documented back in b4d580ebbd.
2021-11-22 09:28:31 -05:00