commit f9251c1832ba9add93194814062fd2b0d88642ae Author: Mike Perry mikeperry-git@torproject.org Date: Sat Jan 14 15:08:44 2017 -0500
Update Prop254 to match implementation. --- proposals/254-padding-negotiation.txt | 36 ++++++++++++++++------------------- 1 file changed, 16 insertions(+), 20 deletions(-)
diff --git a/proposals/254-padding-negotiation.txt b/proposals/254-padding-negotiation.txt index e4da004..c3d9ecd 100644 --- a/proposals/254-padding-negotiation.txt +++ b/proposals/254-padding-negotiation.txt @@ -41,31 +41,27 @@ Proposal 251[1]).
In that scenario, the primary negotiation mechanism we need is a way for mobile clients to tell their Guards to stop padding, or to pad less -often. The following Trunnel payloads should cover the needed +often. The following Trunnel payload should cover the needed parameters:
- const CELL_PADDING_COMMAND_STOP = 1; - const CELL_PADDING_COMMAND_START = 2; + const CHANNELPADDING_COMMAND_STOP = 1; + const CHANNELPADDING_COMMAND_START = 2;
- /* This command tells the relay to stop sending any periodic - CELL_PADDING cells. */ - struct cell_padding_stop { - u8 command IN [CELL_PADDING_COMMAND_STOP]; - }; - - /* This command tells the relay to alter its min and max netflow - timeout range values, and send padding at that rate (resuming - if stopped). */ - struct cell_padding_start { - u8 command IN [CELL_PADDING_COMMAND_START]; + /* The start command tells the relay to alter its min and max netflow + timeout range values, and send padding at that rate (resuming + if stopped). The stop command tells the relay to stop sending + link-level padding. */ + struct channelpadding_negotiate { + u8 version IN [0]; + u8 command IN [CHANNELPADDING_COMMAND_START, CHANNELPADDING_COMMAND_STOP];
- /* Min must not be lower than the current consensus parameter - nf_ito_low. */ - u16 ito_low_ms; + /* Min must not be lower than the current consensus parameter + nf_ito_low. Ignored if command is stop. */ + u16 ito_low_ms;
- /* Max must not be lower than ito_low_ms */ - u16 ito_high_ms; - }; + /* Max must not be lower than ito_low_ms. Ignored if command is stop. */ + u16 ito_high_ms; + };
More complicated forms of link-level padding can still be specified using the primitives in Section 3, by using "leaky pipe" topology to