4 # we need to know (usual) packet size to convert byte numbers
10 # print out per-packet data in the form:
21 tim = t
[1]*3600 + t
[2]*60 + t
[3]
24 strtSeq =
substr($
6,1,i
-1)
25 id =
1.5 + (strtSeq
- 1) / packetsize
29 if (firstSend
[id
] ==
0) {
37 id =
1 + ($
7 - 2) / packetsize
40 if (firstAck
[id
] ==
0)
47 print "# " maxId
" chunks. " totalPackets
" packets sent. " \
49 # for packets that were implicitly acked, make the ack time
50 # be the ack time of next explicitly acked packet.
51 for (i = maxId
-1; i
> 0; --i
)
52 while (i
> 0 && firstAck
[i
] ==
0) {
53 lastAck
[i
] = firstAck
[i
] = firstAck
[i
+1]
57 for (i =
1; i
<= maxId
; i
++)
58 printf "%d\t%d\t%.2f\t%.2f\t%.2f\t%.2f\t%d\t%d\n",\
60 firstSend
[i
] - tzero
, lastSend
[i
] - tzero
,\
61 firstAck
[i
] - tzero
, lastAck
[i
] - tzero
,\
62 timesSent
[i
], timesAcked
[i
]