summaryrefslogtreecommitdiffstats
path: root/testsuite/buildok/tcp_test.stp
blob: a5e3bafb0978e5556e78f144282df7afdfa5dc10 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#! stap -p4
global send_bytes, recv_bytes, ports, src_ips, rtos, state, mss, ssthresh, cwnd

function print_report()
{
	printf("%d\t%d\t%d\t%s\t%d\t%d\t%d\t%d\t%d\n", 
        	send_bytes,recv_bytes,ports,src_ips,rtos,mss,ssthresh,cwnd,state);
}

probe tcp.sendmsg {
	ports   = inet_get_local_port(sock)
	src_ips = inet_get_ip_source(sock)
	rtos    = tcp_get_info_rto(sock)
}

probe tcp.recvmsg {
        cwnd     = tcp_get_info_snd_cwnd(sock)
        mss      = tcp_ts_get_info_rcv_mss(sock)
        ssthresh = tcp_ts_get_info_snd_ssthresh(sock)
        state    =  tcp_ts_get_info_state(sock)
}

probe tcp.sendmsg.return {
	if (size > 0) {
		send_bytes += size
	}
}

probe tcp.recvmsg.return {
	if (size > 0) {
		recv_bytes += size
	}
}

probe tcp.disconnect {
        log("tcp disconnect")
}

probe timer.ms(2000) {
	print_report()
}