File: inst-thruput.awk

package info (click to toggle)
ns2 2.35%2Bdfsg-3
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 78,796 kB
  • sloc: cpp: 172,923; tcl: 107,130; perl: 6,391; sh: 6,143; ansic: 5,846; makefile: 816; awk: 525; csh: 355
file content (36 lines) | stat: -rwxr-xr-x 651 bytes parent folder | download | duplicates (7)
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
#!/usr/bin/gawk -f
{
	time = $2;
	saddr = $4;
	sport = $6;
	daddr = $8;
	dport = $10;
	hiack = $14;
	cwnd = $18;
	ssthresh = $20;
	srtt = $26;
	rttvar = $28;

	s = sprintf("%d%c%d%c%d%c%d", saddr, SUBSEP, sport, SUBSEP, daddr, SUBSEP, dport);
	if (time >= starttime && time <= endtime) {
		if (!(s in startack)) {
			startack[s] = hiack;
		}
		if (hiack > endack[s]) {
			endack[s] = hiack;
		}
	}
}

END {
	for (s in startack) {
		split(s,a,SUBSEP);
		saddr = a[1];
		sport = a[2];
		daddr = a[3];
		dport = a[4];
		if (sport != 0)
			printf "(%d,%d)->(%d,%d) %g\n", saddr, sport, daddr, dport, (endack[s]-startack[s])*8/(endtime-starttime);
	}
}