/linux-6.14.4/net/ipv4/ |
D | Kconfig | 470 bool "TCP: advanced congestion control" 472 Support for selection of various TCP congestion control 483 tristate "Binary Increase Congestion (BIC) control" 490 congestion window is large, additive increase with a large 492 scalability. Under small congestion windows, binary search 509 protocol stack that optimizes the performance of TCP congestion 511 congestion window and slow start threshold after a congestion 513 slow start threshold and a congestion window which takes into 514 account the bandwidth used at the time congestion is experienced. 524 congestion control for high speed network links. It uses a [all …]
|
D | tcp_nv.c | 3 * TCP NV: TCP with Congestion Avoidance 7 * Like TCP-Vegas, TCP-NV supports true congestion avoidance, 8 * the ability to detect congestion before packet losses occur. 9 * When congestion (queue buildup) starts to occur, TCP-NV 17 * detect congestion (congestion control) and those that use queue 18 * buildup to detect congestion (congestion avoidance). 25 * 1) Add mechanism to deal with reverse congestion. 39 * nv_cong_dec_mult Decrease cwnd by X% (30%) of congestion when detected 40 * nv_ssthresh_factor On congestion set ssthresh to this * <desired cwnd> / 8 46 * slow-start due to congestion [all …]
|
D | tcp_cong.c | 3 * Pluggable TCP congestion control support and newReno 4 * congestion control. 89 /* Attach new congestion control algorithm to the list 118 * Remove congestion control algorithm, called from 159 pr_notice("invalid old congestion control algorithm to replace\n"); in tcp_update_congestion_control() 214 /* Assign choice of congestion control. */ 279 /* Used by sysctl to change default congestion control */ 317 /* Build string with list of available congestion control values */ 335 /* Get current default congestion control */ 346 /* Built list of non-restricted congestion control values */ [all …]
|
D | tcp_plb.c | 4 * switches. PLB is a host-based optimization; it leverages congestion 6 * connection experiencing sustained congestion. PLB prefers to repath 16 * "PLB: Congestion Signals are Simple and Effective for 43 /* Check whether recent congestion has been persistent enough to warrant 105 * congestion characteristics. in tcp_plb_update_state_upon_rto()
|
D | tcp_bic.c | 3 * Binary Increase Congestion control for TCP 8 * "Binary Increase Congestion Control for Fast, Long Distance 13 * Unless BIC is enabled and congestion window is large 41 MODULE_PARM_DESC(low_window, "lower bound on congestion window (for TCP friendliness)"); 81 * Compute congestion window to use. 159 * then increase congestion window slowly
|
D | tcp_vegas.c | 3 * TCP Vegas congestion control 5 * This is based on the congestion detection/avoidance scheme described in 7 * "TCP Vegas: End to end congestion avoidance on a global internet." 65 * stale info -- both the saved cwnd and congestion feedback are 209 * of delayed ACKs, at the cost of noticing congestion in tcp_vegas_cong_avoid() 231 * and switch to congestion avoidance. in tcp_vegas_cong_avoid() 249 /* Congestion avoidance. */ in tcp_vegas_cong_avoid()
|
D | tcp_lp.c | 9 * As of 2.6.13, Linux supports pluggable congestion control algorithms. 18 * o Handle reaction for Early Congestion Indication (ECI) within 92 * @sk: socket to initialize congestion control algorithm for 263 * @sk: socket requiring congestion avoidance calculations 266 * Deal with active drop under Early Congestion Indication.
|
/linux-6.14.4/drivers/crypto/caam/ |
D | dpseci.h | 36 * Enable the Congestion Group support 257 * enum dpseci_congestion_unit - DPSECI congestion units 268 * congestion state (see 'threshold_entry') 274 * congestion state (see 'threshold_exit') 286 * DPIO/DPCON's WQ channel once entering a congestion state 293 * DPIO/DPCON's WQ channel once exiting a congestion state 306 * struct dpseci_congestion_notification_cfg - congestion notification 309 * @threshold_entry: above this threshold we enter a congestion state. 311 * @threshold_exit: below this threshold we exit the congestion state.
|
D | debugfs.c | 27 * This is a counter for the number of times the congestion group (where all 28 * the request and response queueus are) reached congestion. Incremented 29 * each time the congestion callback is called with congested == true.
|
/linux-6.14.4/Documentation/networking/ |
D | rds.rst | 90 mark the port as "congested" and send a congestion update to 118 a congestion update is sent to all peers. 122 notification when a congestion update arrived, or when a RDMA 144 this - by using congestion notifications, and by checking for 178 Congestion Notifications 207 CONG_BITMAP this is a congestion update bitmap 248 Congestion 271 communication of per-port congestion. The sender does a very 282 The general layer handles the socket API, congestion handling, 318 wraps the raw congestion bitmap, contains rbnode, waitq, etc. [all …]
|
/linux-6.14.4/drivers/infiniband/hw/qib/ |
D | qib_mad.h | 97 * Congestion control class attributes 139 * Congestion Control class portinfo capability mask bits 166 /* Congestion control traps */ 181 /* Congestion info flags */ 222 /* Sixteen congestion entries */ 257 /* 64 Congestion Control table entries in a single MAD */
|
/linux-6.14.4/net/dccp/ |
D | Kconfig | 6 Datagram Congestion Control Protocol (RFC 4340) 10 The Datagram Congestion Control Protocol (DCCP) is a transport 12 congestion-controlled, unreliable datagrams. It should be suitable
|
/linux-6.14.4/net/rds/ |
D | cong.c | 42 * This file implements the receive side of the unconventional congestion 64 * finer-grained communication of per-port congestion. The sender does a very 76 * We maintain a global counter that is incremented each time a congestion map 84 * Congestion monitoring 304 rdsdebug("setting congestion for %pI4:%u in map %p\n", in rds_cong_set_bit() 318 rdsdebug("clearing congestion for %pI4:%u in map %p\n", in rds_cong_clear_bit() 357 /* update congestion map for now-closed port */ in rds_cong_remove_socket() 383 /* Test again - a congestion update may have arrived in in rds_cong_wait() 416 * Allocate a RDS message containing a congestion update.
|
/linux-6.14.4/samples/bpf/ |
D | hbm_out_kern.c | 31 * to reduce the congestion window. The current implementation uses a linear 122 // Set flags (drop, congestion, cwr) in _hbm_out_cg() 123 // Dropping => we are congested, so ignore congestion flag in _hbm_out_cg() 133 // Congested, set congestion flag in _hbm_out_cg() 153 // Do congestion control in _hbm_out_cg()
|
/linux-6.14.4/include/uapi/linux/ |
D | rds.h | 295 * Congestion monitoring. 296 * Congestion control in RDS happens at the host connection 299 * up when the congestion map is updated. 304 * When a congestion update arrives, RDS checks the set of 309 * To install the congestion monitor bitmask, use RDS_CONG_MONITOR 311 * Congestion updates are received via RDS_CMSG_CONG_UPDATE
|
/linux-6.14.4/drivers/net/ethernet/freescale/dpaa/ |
D | dpaa_eth.h | 88 u64 cg_tdrop; /* Congestion group taildrop */ 89 u64 wred; /* WRED congestion */ 153 * (and the same) congestion group. 161 * entered congestion state
|
/linux-6.14.4/drivers/net/ethernet/freescale/dpaa2/ |
D | dpni.h | 62 * DPNI_OPT_SHARED_CONGESTION - Congestion can be managed in several ways, 64 * use congestion groups for sets of queues. If set, it configures a single 65 * congestion groups across all TCs. If reset, a congestion group is allocated 440 * @page_4: Page_4 statistics structure: congestion points 441 * @page_4.cgr_reject_frames: number of rejected frames due to congestion point 442 * @page_4.cgr_reject_bytes: number of rejected bytes due to congestion point 853 * enum dpni_congestion_unit - DPNI congestion units 863 * enum dpni_congestion_point - Structure representing congestion point 890 /* DPNI congestion options */ 893 * DPNI_CONG_OPT_FLOW_CONTROL - This congestion will trigger flow control or [all …]
|
/linux-6.14.4/include/soc/fsl/ |
D | qman.h | 47 #define QM_PIRQ_CSCI 0x00100000 /* Congestion State Change */ 83 __be32 cfg; /* format, offset, length / congestion */ 106 * interpreted purely for congestion calculations, ie. a "congestion 137 * If 'format' is _compound, 29b "congestion weight". 502 #define QM_FQCTRL_CGE 0x0400 /* Congestion Group Enable */ 521 #define QM_OAC_CG 0x1 /* Accounting for Congestion Groups */ 538 * how we represent it here. The congestion state threshold is calculated from 661 * This object type represents a QMan congestion group, it is defined further 776 * This callback type is used when handling congestion group entry/exit. 777 * 'congested' is non-zero on congestion-entry, and zero on congestion-exit. [all …]
|
/linux-6.14.4/tools/include/uapi/linux/ |
D | tcp.h | 104 #define TCP_CONGESTION 13 /* Congestion control algorithm */ 116 #define TCP_CC_INFO 26 /* Get Congestion Control (optional) info */ 175 * Sender's congestion state indicating normal or abnormal situations 195 * The sender enters Congestion Window Reduction (CWR) state when it 196 * has received ACKs with ECN-ECE marks, or has experienced congestion 299 TCP_NLA_SND_CWND, /* Sending congestion window */
|
/linux-6.14.4/Documentation/networking/devlink/ |
D | hns3.rst | 28 - Used to represent the Soft Congestion Control (SSC) firmware version. 29 SCC is a firmware component which provides multiple RDMA congestion
|
/linux-6.14.4/drivers/soc/fsl/qbman/ |
D | qman_priv.h | 58 /* "Query Congestion Group State" */ 91 /* Congestion Groups */ 94 * This wrapper represents a bit-array for the state of the 256 QMan congestion 95 * groups. Is also used as a *mask* for congestion groups, eg. so we ignore 97 * already used in the management command to query congestion groups.
|
/linux-6.14.4/net/sctp/ |
D | transport.c | 579 * cwnd only if the current congestion window is being fully in sctp_transport_raise_cwnd() 594 * if, and only if the congestion window is being fully in sctp_transport_raise_cwnd() 641 pr_debug("%s: congestion avoidance: transport:%p, " in sctp_transport_raise_cwnd() 652 /* This routine is used to lower the transport's cwnd when congestion is 705 * then the sender knows that congestion was encountered in the in sctp_transport_lower_cwnd() 707 * indication of congestion should be treated just as a in sctp_transport_lower_cwnd() 708 * congestion loss in non-ECN Capable TCP. That is, the TCP in sctp_transport_lower_cwnd() 709 * source halves the congestion window "cwnd" and reduces the in sctp_transport_lower_cwnd() 712 * congestion indications more than once every window of in sctp_transport_lower_cwnd() 747 /* Apply Max.Burst limit to the congestion window: [all …]
|
/linux-6.14.4/tools/testing/selftests/net/netfilter/packetdrill/ |
D | common.sh | 16 # TCP congestion control. 22 # TCP Explicit Congestion Notification (ECN)
|
/linux-6.14.4/net/dccp/ccids/ |
D | ccid2.c | 98 * need to check that the ack ratio is still less than the congestion in ccid2_check_l_ack_ratio() 99 * window. Otherwise, we will send an entire congestion window of in ccid2_check_l_ack_ratio() 103 * the congestion window (or 1 if that's zero) instead of to the in ccid2_check_l_ack_ratio() 104 * congestion window. This prevents problems if one ack is lost. in ccid2_check_l_ack_ratio() 176 * Congestion window validation (RFC 2861). 180 MODULE_PARM_DESC(ccid2_do_cwv, "Perform RFC2861 Congestion Window Validation"); 390 * (see P. Sarolahti, A. Kuznetsov,"Congestion Control in ccid2_rtt_estimator() 523 /* check reverse path congestion */ in ccid2_hc_tx_packet_recv() 548 * FIXME: Ack Congestion Control is broken; in in ccid2_hc_tx_packet_recv() 560 /* check forward path congestion */ in ccid2_hc_tx_packet_recv() [all …]
|
D | Kconfig | 19 rate-controlled congestion control mechanism. TFRC is designed to 31 The TFRC congestion control algorithms were initially described in
|