| Stephen Hemminger | 7752237 | 2007-04-23 22:28:23 -0700 | [diff] [blame] | 1 | /* | 
 | 2 |  * TCP Vegas congestion control interface | 
 | 3 |  */ | 
 | 4 | #ifndef __TCP_VEGAS_H | 
 | 5 | #define __TCP_VEGAS_H 1 | 
 | 6 |  | 
 | 7 | /* Vegas variables */ | 
 | 8 | struct vegas { | 
 | 9 | 	u32	beg_snd_nxt;	/* right edge during last RTT */ | 
 | 10 | 	u32	beg_snd_una;	/* left edge  during last RTT */ | 
 | 11 | 	u32	beg_snd_cwnd;	/* saves the size of the cwnd */ | 
 | 12 | 	u8	doing_vegas_now;/* if true, do vegas for this RTT */ | 
 | 13 | 	u16	cntRTT;		/* # of RTTs measured within last RTT */ | 
 | 14 | 	u32	minRTT;		/* min of RTTs measured within last RTT (in usec) */ | 
 | 15 | 	u32	baseRTT;	/* the min of all Vegas RTT measurements seen (in usec) */ | 
 | 16 | }; | 
 | 17 |  | 
 | 18 | extern void tcp_vegas_init(struct sock *sk); | 
 | 19 | extern void tcp_vegas_state(struct sock *sk, u8 ca_state); | 
| Stephen Hemminger | 30cfd0b | 2007-07-25 23:49:34 -0700 | [diff] [blame] | 20 | extern void tcp_vegas_pkts_acked(struct sock *sk, u32 cnt, s32 rtt_us); | 
| Stephen Hemminger | 7752237 | 2007-04-23 22:28:23 -0700 | [diff] [blame] | 21 | extern void tcp_vegas_cwnd_event(struct sock *sk, enum tcp_ca_event event); | 
 | 22 | extern void tcp_vegas_get_info(struct sock *sk, u32 ext, struct sk_buff *skb); | 
 | 23 |  | 
 | 24 | #endif	/* __TCP_VEGAS_H */ |