cc.c (db0ac6ded61105caab4700aeac255328d4238dc4) | cc.c (a9696510f5caef4a7c525fcf4359597798829350) |
---|---|
1/*- 2 * SPDX-License-Identifier: BSD-2-Clause-FreeBSD 3 * 4 * Copyright (c) 2007-2008 5 * Swinburne University of Technology, Melbourne, Australia. 6 * Copyright (c) 2009-2010 Lawrence Stewart <lstewart@freebsd.org> 7 * Copyright (c) 2010 The FreeBSD Foundation 8 * All rights reserved. --- 70 unchanged lines hidden (view full) --- 79 80/* 81 * Have a sane default if no CC_DEFAULT is specified in the kernel config file. 82 */ 83#ifndef CC_DEFAULT 84#define CC_DEFAULT "newreno" 85#endif 86 | 1/*- 2 * SPDX-License-Identifier: BSD-2-Clause-FreeBSD 3 * 4 * Copyright (c) 2007-2008 5 * Swinburne University of Technology, Melbourne, Australia. 6 * Copyright (c) 2009-2010 Lawrence Stewart <lstewart@freebsd.org> 7 * Copyright (c) 2010 The FreeBSD Foundation 8 * All rights reserved. --- 70 unchanged lines hidden (view full) --- 79 80/* 81 * Have a sane default if no CC_DEFAULT is specified in the kernel config file. 82 */ 83#ifndef CC_DEFAULT 84#define CC_DEFAULT "newreno" 85#endif 86 |
87uint32_t hystart_minrtt_thresh = 4000; 88uint32_t hystart_maxrtt_thresh = 16000; 89uint32_t hystart_n_rttsamples = 8; 90uint32_t hystart_css_growth_div = 4; 91uint32_t hystart_css_rounds = 5; 92uint32_t hystart_bblogs = 0; 93 |
|
87MALLOC_DEFINE(M_CC_MEM, "CC Mem", "Congestion Control State memory"); 88 89/* 90 * List of available cc algorithms on the current system. First element 91 * is used as the system default CC algorithm. 92 */ 93struct cc_head cc_list = STAILQ_HEAD_INITIALIZER(cc_list); 94 --- 482 unchanged lines hidden (view full) --- 577 NULL, 0, cc_default_algo, "A", 578 "Default congestion control algorithm"); 579 580SYSCTL_PROC(_net_inet_tcp_cc, OID_AUTO, available, 581 CTLTYPE_STRING | CTLFLAG_RD | CTLFLAG_MPSAFE, 582 NULL, 0, cc_list_available, "A", 583 "List available congestion control algorithms"); 584 | 94MALLOC_DEFINE(M_CC_MEM, "CC Mem", "Congestion Control State memory"); 95 96/* 97 * List of available cc algorithms on the current system. First element 98 * is used as the system default CC algorithm. 99 */ 100struct cc_head cc_list = STAILQ_HEAD_INITIALIZER(cc_list); 101 --- 482 unchanged lines hidden (view full) --- 584 NULL, 0, cc_default_algo, "A", 585 "Default congestion control algorithm"); 586 587SYSCTL_PROC(_net_inet_tcp_cc, OID_AUTO, available, 588 CTLTYPE_STRING | CTLFLAG_RD | CTLFLAG_MPSAFE, 589 NULL, 0, cc_list_available, "A", 590 "List available congestion control algorithms"); 591 |
592SYSCTL_NODE(_net_inet_tcp_cc, OID_AUTO, hystartplusplus, 593 CTLFLAG_RW | CTLFLAG_MPSAFE, NULL, 594 "New Reno related HyStart++ settings"); 595 596SYSCTL_UINT(_net_inet_tcp_cc_hystartplusplus, OID_AUTO, minrtt_thresh, 597 CTLFLAG_RW, 598 &hystart_minrtt_thresh, 4000, 599 "HyStarts++ minimum RTT thresh used in clamp (in microseconds)"); 600 601SYSCTL_UINT(_net_inet_tcp_cc_hystartplusplus, OID_AUTO, maxrtt_thresh, 602 CTLFLAG_RW, 603 &hystart_maxrtt_thresh, 16000, 604 "HyStarts++ maximum RTT thresh used in clamp (in microseconds)"); 605 606SYSCTL_UINT(_net_inet_tcp_cc_hystartplusplus, OID_AUTO, n_rttsamples, 607 CTLFLAG_RW, 608 &hystart_n_rttsamples, 8, 609 "The number of RTT samples that must be seen to consider HyStart++"); 610 611SYSCTL_UINT(_net_inet_tcp_cc_hystartplusplus, OID_AUTO, css_growth_div, 612 CTLFLAG_RW, 613 &hystart_css_growth_div, 4, 614 "The divisor to the growth when in Hystart++ CSS"); 615 616SYSCTL_UINT(_net_inet_tcp_cc_hystartplusplus, OID_AUTO, css_rounds, 617 CTLFLAG_RW, 618 &hystart_css_rounds, 5, 619 "The number of rounds HyStart++ lasts in CSS before falling to CA"); 620 621SYSCTL_UINT(_net_inet_tcp_cc_hystartplusplus, OID_AUTO, bblogs, 622 CTLFLAG_RW, 623 &hystart_bblogs, 0, 624 "Do we enable HyStart++ Black Box logs to be generated if BB logging is on"); 625 |
|
585VNET_DEFINE(int, cc_do_abe) = 0; 586SYSCTL_INT(_net_inet_tcp_cc, OID_AUTO, abe, CTLFLAG_VNET | CTLFLAG_RW, 587 &VNET_NAME(cc_do_abe), 0, 588 "Enable draft-ietf-tcpm-alternativebackoff-ecn (TCP Alternative Backoff with ECN)"); 589 590VNET_DEFINE(int, cc_abe_frlossreduce) = 0; 591SYSCTL_INT(_net_inet_tcp_cc, OID_AUTO, abe_frlossreduce, CTLFLAG_VNET | CTLFLAG_RW, 592 &VNET_NAME(cc_abe_frlossreduce), 0, 593 "Apply standard beta instead of ABE-beta during ECN-signalled congestion " 594 "recovery episodes if loss also needs to be repaired"); | 626VNET_DEFINE(int, cc_do_abe) = 0; 627SYSCTL_INT(_net_inet_tcp_cc, OID_AUTO, abe, CTLFLAG_VNET | CTLFLAG_RW, 628 &VNET_NAME(cc_do_abe), 0, 629 "Enable draft-ietf-tcpm-alternativebackoff-ecn (TCP Alternative Backoff with ECN)"); 630 631VNET_DEFINE(int, cc_abe_frlossreduce) = 0; 632SYSCTL_INT(_net_inet_tcp_cc, OID_AUTO, abe_frlossreduce, CTLFLAG_VNET | CTLFLAG_RW, 633 &VNET_NAME(cc_abe_frlossreduce), 0, 634 "Apply standard beta instead of ABE-beta during ECN-signalled congestion " 635 "recovery episodes if loss also needs to be repaired"); |