Option Negotiation
The following configuration options are communicated between clients and servers to negotiate a final value: Aggression, Expire, MaxRate, MaxRTT, MinRTT, MaxDatagram, MinDatagram, NoiseRatio.
When different values are set at the client and server, the final value is chosen according to the following rules:
- If no value is specified, the default value at the software receiving the data is chosen.
- If a value is specified at one of the client or server, but not the other, the specified value is chosen.
- If a value is specified by both the client and the server, the client's value will be chosen, subject to the limits below.
- If the server has specified a Limit value, and the value chosen is outside this limit, the value chosen will be clamped to that limit.
- If a SiteOptions rule applies to the client, any values given in that rule will be used as the server's settings. Otherwise the server's global or user values will be used.
- If a user restriction applies, that value will be used as the server's settings, overriding any SiteOptions or global value.
The following configuration options set limits on the values the client may set: AggressionLimit, ExpireLimit, MaxRateLimit, MaxRTTLimit, MaxRateTotal, NoiseRatioLimit.