sctp: Make sysctl tunables per net
Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:

committed by
David S. Miller

parent
f53b5b097e
commit
e1fc3b14f9
@@ -36,6 +36,96 @@ struct netns_sctp {
|
||||
/* Lock that protects the local_addr_list writers */
|
||||
spinlock_t local_addr_lock;
|
||||
|
||||
/* RFC2960 Section 14. Suggested SCTP Protocol Parameter Values
|
||||
*
|
||||
* The following protocol parameters are RECOMMENDED:
|
||||
*
|
||||
* RTO.Initial - 3 seconds
|
||||
* RTO.Min - 1 second
|
||||
* RTO.Max - 60 seconds
|
||||
* RTO.Alpha - 1/8 (3 when converted to right shifts.)
|
||||
* RTO.Beta - 1/4 (2 when converted to right shifts.)
|
||||
*/
|
||||
unsigned int rto_initial;
|
||||
unsigned int rto_min;
|
||||
unsigned int rto_max;
|
||||
|
||||
/* Note: rto_alpha and rto_beta are really defined as inverse
|
||||
* powers of two to facilitate integer operations.
|
||||
*/
|
||||
int rto_alpha;
|
||||
int rto_beta;
|
||||
|
||||
/* Max.Burst - 4 */
|
||||
int max_burst;
|
||||
|
||||
/* Whether Cookie Preservative is enabled(1) or not(0) */
|
||||
int cookie_preserve_enable;
|
||||
|
||||
/* Valid.Cookie.Life - 60 seconds */
|
||||
unsigned int valid_cookie_life;
|
||||
|
||||
/* Delayed SACK timeout 200ms default*/
|
||||
unsigned int sack_timeout;
|
||||
|
||||
/* HB.interval - 30 seconds */
|
||||
unsigned int hb_interval;
|
||||
|
||||
/* Association.Max.Retrans - 10 attempts
|
||||
* Path.Max.Retrans - 5 attempts (per destination address)
|
||||
* Max.Init.Retransmits - 8 attempts
|
||||
*/
|
||||
int max_retrans_association;
|
||||
int max_retrans_path;
|
||||
int max_retrans_init;
|
||||
/* Potentially-Failed.Max.Retrans sysctl value
|
||||
* taken from:
|
||||
* http://tools.ietf.org/html/draft-nishida-tsvwg-sctp-failover-05
|
||||
*/
|
||||
int pf_retrans;
|
||||
|
||||
/*
|
||||
* Policy for preforming sctp/socket accounting
|
||||
* 0 - do socket level accounting, all assocs share sk_sndbuf
|
||||
* 1 - do sctp accounting, each asoc may use sk_sndbuf bytes
|
||||
*/
|
||||
int sndbuf_policy;
|
||||
|
||||
/*
|
||||
* Policy for preforming sctp/socket accounting
|
||||
* 0 - do socket level accounting, all assocs share sk_rcvbuf
|
||||
* 1 - do sctp accounting, each asoc may use sk_rcvbuf bytes
|
||||
*/
|
||||
int rcvbuf_policy;
|
||||
|
||||
int default_auto_asconf;
|
||||
|
||||
/* Flag to indicate if addip is enabled. */
|
||||
int addip_enable;
|
||||
int addip_noauth;
|
||||
|
||||
/* Flag to indicate if PR-SCTP is enabled. */
|
||||
int prsctp_enable;
|
||||
|
||||
/* Flag to idicate if SCTP-AUTH is enabled */
|
||||
int auth_enable;
|
||||
|
||||
/*
|
||||
* Policy to control SCTP IPv4 address scoping
|
||||
* 0 - Disable IPv4 address scoping
|
||||
* 1 - Enable IPv4 address scoping
|
||||
* 2 - Selectively allow only IPv4 private addresses
|
||||
* 3 - Selectively allow only IPv4 link local address
|
||||
*/
|
||||
int scope_policy;
|
||||
|
||||
/* Threshold for rwnd update SACKS. Receive buffer shifted this many
|
||||
* bits is an indicator of when to send and window update SACK.
|
||||
*/
|
||||
int rwnd_upd_shift;
|
||||
|
||||
/* Threshold for autoclose timeout, in seconds. */
|
||||
unsigned long max_autoclose;
|
||||
};
|
||||
|
||||
#endif /* __NETNS_SCTP_H__ */
|
||||
|
Reference in New Issue
Block a user