|
1 | 1 | /* Bottleneck Bandwidth and RTT (BBR) congestion control
|
2 |
| - * |
| 2 | + |
| 3 | + * Modified by @nanqinlang |
| 4 | + |
3 | 5 | * BBR congestion control computes the sending rate based on the delivery
|
4 | 6 | * rate (throughput) estimated from ACKs. In a nutshell:
|
5 | 7 | *
|
@@ -830,15 +832,13 @@ static u32 bbr_ssthresh(struct sock *sk)
|
830 | 832 | return TCP_INFINITE_SSTHRESH; /* BBR does not use ssthresh */
|
831 | 833 | }
|
832 | 834 |
|
833 |
| -static size_t bbr_get_info(struct sock *sk, u32 ext, int *attr, |
834 |
| - union tcp_cc_info *info) |
| 835 | +static size_t bbr_get_info(struct sock *sk, u32 ext, int *attr, union tcp_cc_info *info) |
835 | 836 | {
|
836 | 837 | if (ext & (1 << (INET_DIAG_BBRINFO - 1)) ||
|
837 | 838 | ext & (1 << (INET_DIAG_VEGASINFO - 1))) {
|
838 | 839 | struct tcp_sock *tp = tcp_sk(sk);
|
839 | 840 | struct bbr *bbr = inet_csk_ca(sk);
|
840 | 841 | u64 bw = bbr_bw(sk);
|
841 |
| - |
842 | 842 | bw = bw * tp->mss_cache * USEC_PER_SEC >> BW_SCALE;
|
843 | 843 | memset(&info->bbr, 0, sizeof(info->bbr));
|
844 | 844 | info->bbr.bbr_bw_lo = (u32)bw;
|
|
899 | 899 | MODULE_AUTHOR( "Neal Cardwell <[email protected]>");
|
900 | 900 | MODULE_AUTHOR( "Yuchung Cheng <[email protected]>");
|
901 | 901 | MODULE_AUTHOR( "Soheil Hassas Yeganeh <[email protected]>");
|
902 |
| -MODULE_AUTHOR("nanqinlang <www.nanqinlang.com>"); |
| 902 | +MODULE_AUTHOR("nanqinlang <https://www.nanqinlang.com>"); |
903 | 903 | MODULE_LICENSE("Dual BSD/GPL");
|
904 | 904 | MODULE_DESCRIPTION("TCP BBR (Bottleneck Bandwidth and RTT)");
|
0 commit comments