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