Closed leshow closed 3 years ago
Hi @leshow, assuming we are talking about UDP - yes the ids may overlap between generators, but each generator has its own randomly/OS chosen UDP source port and the queries are tracked by (src port, query id) pair so essentially each generator has its own 2^16 id space.
I see, thanks for the response!
Perhaps this is the wrong place to ask this, but I noted from the docs:
I noted that each traffic generator creates a list of ids from 0 to 2^16 and randomly shuffles them: https://github.com/DNS-OARC/flamethrower/blob/master/flame/trafgen.cpp#L27
However, if there are multiple traffic generators, and each creates a new vector with these random ids, is it not possible that there will be multiple in-flight queries with the same id? The docs also mention starting multiple flamethrower processes and I would think this would cause a similar issue.
Is there any way around this or is it just an inescapable fact that this can happen due to the DNS protocol only having 16-bit ids?