xref: /freebsd/sys/netinet/tcp_accounting.h (revision 79ac3c12a714bcd3f2354c52d948aed9575c46d6)
1 #ifndef __tcp_accounting_h__
2 #define __tcp_accounting_h__
3 /*
4  * Return values from tcp_do_ack_accounting
5  * and indexs to the into the tcp_proc_time[]
6  * array.
7  */
8 #define ACK_BEHIND	0
9 #define ACK_SACK	1
10 #define ACK_CUMACK	2
11 #define ACK_CUMACK_SACK	3
12 #define ACK_DUPACK	4
13 #define ACK_RWND	5
14 /* Added values for tracking output too  */
15 #define SND_BLOCKED	6
16 #define SND_LIMITED	7
17 #define SND_OUT_DATA 	8
18 #define SND_OUT_ACK	9
19 #define SND_OUT_FAIL	10
20 /* We also count in the counts array two added (MSS sent and ACKS In) */
21 #define CNT_OF_MSS_OUT 11
22 #define CNT_OF_ACKS_IN 12
23 
24 /* for the tcpcb we add two more cycle counters */
25 #define CYC_HANDLE_MAP 11
26 #define CYC_HANDLE_ACK 12
27 
28 /* Should the tp->xxx array's be alloc'ed? */
29 /* #define TCP_NUM_PROC_COUNTERS 11 defined in tcp_var.h */
30 /* #define TCP_NUM_CNT_COUNTERS 13 defined in tcp_var.h */
31 
32 #ifdef _KERNEL
33 #ifdef TCP_ACCOUNTING
34 extern counter_u64_t tcp_cnt_counters[TCP_NUM_CNT_COUNTERS];
35 extern counter_u64_t tcp_proc_time[TCP_NUM_PROC_COUNTERS];
36 #endif
37 #endif
38 
39 #endif
40