traffic generation for multiple flows

Bug #1212680 reported by Midori Kato
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Flowgrind
Fix Committed
Low
Unassigned

Bug Description

When I run two flows with specific reponse size, the second flow doesn't transfer instructed data. When I run tcpdump, it shows that the second flow always transfer 8 segments. It doesn't matter OS although I tried FreeBSD and Linux.
What I understand is that the controller read data size correctly but the daemon doesn't seems to recognize data size. Although I tried to debug flowgrind, I couldn't understand how to debug daemon.
I show one of examples as below. Please fix it.

$ ./src/flowgrind -n 2 -F 0 -Q -G s=q,C,2000000 -G s=g,C,10 -A s -F 1 -G s=q,C,2000000 -G s=g,C,10 -Q -A s
# Thu Aug 15 15:29:44 2013: controlling host = shiro, number of flows = 2, reporting interval = 0.05s, [through] = 10**6 bit/second (flowgrind-0.6.1-17-ga1ba28)

# 0 S: localhost, random seed: 2114670480, sbuf = 16384/0, rbuf = 87380/0 (real/req), SMSS = 16364, Path MTU = 16436, flow duration = 10.014s/10.000s (real/req), through = 1.597768/0.000019Mbit/s (out/in), transactions/s = 0.10, request blocks = 1/0 (out/in), response blocks = 0/1 (out/in), RTT = 145.256/145.256/145.256 (min/avg/max)
# 0 D: localhost, random seed: 2114670480, sbuf = 16384/0, rbuf = 87380/0 (real/req), SMSS = 16364, Path MTU = 16436, through = 0.000019/1.599415Mbit/s (out/in), request blocks = 0/1 (out/in), response blocks = 1/0 (out/in), IAT = 340282346638529014554209094157051287830528.000/0.000/0.000 (min/avg/max)

# 1 S: localhost, random seed: 2065275323, sbuf = 16384/0, rbuf = 87380/0 (real/req), SMSS = 16364, Path MTU = 16436, flow duration = 10.015s/10.000s (real/req), through = 0.006544/0.000019Mbit/s (out/in), transactions/s = 0.10, request blocks = 1/0 (out/in), response blocks = 0/1 (out/in), RTT = 12.361/12.361/12.361 (min/avg/max)
# 1 D: localhost, random seed: 2065275323, sbuf = 16384/0, rbuf = 87380/0 (real/req), SMSS = 16364, Path MTU = 16436, through = 0.000019/0.006544Mbit/s (out/in), request blocks = 0/1 (out/in), response blocks = 1/0 (out/in), IAT = 340282346638529014554209094157051287830528.000/0.000/0.000 (min/avg/max)

Revision history for this message
Midori Kato (midori-kato) wrote :

Finally, I find the cause. Commit diff.
$ git diff
diff --git a/src/flowgrind.c b/src/flowgrind.c
index a99f940..11c64e5 100644
--- a/src/flowgrind.c
+++ b/src/flowgrind.c
@@ -2153,7 +2153,7 @@ static void parse_cmdline(int argc, char **argv) {

                case 'F':
                        tok = strtok(optarg, ",");
- id = 0;
+
                        while (tok) {
                                rc = sscanf(tok, "%d", &optint);
                                if (rc != 1) {

Revision history for this message
Christian Samsel (oxygenx) wrote :

Thank you

Changed in flowgrind:
importance: Undecided → Low
status: New → Fix Committed
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.