root/net/ipv4/tcp_vegas.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


   1 /* SPDX-License-Identifier: GPL-2.0 */
   2 /*
   3  * TCP Vegas congestion control interface
   4  */
   5 #ifndef __TCP_VEGAS_H
   6 #define __TCP_VEGAS_H 1
   7 
   8 /* Vegas variables */
   9 struct vegas {
  10         u32     beg_snd_nxt;    /* right edge during last RTT */
  11         u32     beg_snd_una;    /* left edge  during last RTT */
  12         u32     beg_snd_cwnd;   /* saves the size of the cwnd */
  13         u8      doing_vegas_now;/* if true, do vegas for this RTT */
  14         u16     cntRTT;         /* # of RTTs measured within last RTT */
  15         u32     minRTT;         /* min of RTTs measured within last RTT (in usec) */
  16         u32     baseRTT;        /* the min of all Vegas RTT measurements seen (in usec) */
  17 };
  18 
  19 void tcp_vegas_init(struct sock *sk);
  20 void tcp_vegas_state(struct sock *sk, u8 ca_state);
  21 void tcp_vegas_pkts_acked(struct sock *sk, const struct ack_sample *sample);
  22 void tcp_vegas_cwnd_event(struct sock *sk, enum tcp_ca_event event);
  23 size_t tcp_vegas_get_info(struct sock *sk, u32 ext, int *attr,
  24                           union tcp_cc_info *info);
  25 
  26 #endif  /* __TCP_VEGAS_H */

/* [<][>][^][v][top][bottom][index][help] */