ndt-dev - [ndt-dev] Issue 161 in ndt: Non-random Test Data risks compression
Subject: NDT-DEV email list created
List archive
- From:
- To:
- Subject: [ndt-dev] Issue 161 in ndt: Non-random Test Data risks compression
- Date: Mon, 06 Oct 2014 21:06:16 +0000
Status: New
Owner: ----
Labels: Type-Defect Severity-Medium
New issue 161 by
:
Non-random Test Data risks compression
https://code.google.com/p/ndt/issues/detail?id=161
Reading the source, I noticed that the data that NDT sends in S2C and C2s tests is nonrandom.
From the Flash client:
// Prepare the data to send to the server.
for (var i:int = 0; i < NDTConstants.PREDEFINED_BUFFER_SIZE; i++) {
_dataToSend.writeByte(i);
}
https://code.google.com/p/ndt/source/browse/trunk/flash-client/src/TestC2S.as#168
From the C client:
// ....Fill buffer upto NDTConstants.PREDEFNED_BUFFER_SIZE packets
pkts = 0;
k = 0;
for (i = 0; i < (64*KILO_BITS); i++) { // again buffer sizes differ.
// Since the actual transmitted byte count is timed, it doesn't appear
// that it is causing specific problems.
while (!isprint(k & 0x7f))
k++;
buff[i] = (k++ % 0x7f);
}
https://code.google.com/p/ndt/source/browse/trunk/src/test_c2s_clt.c#141
Because we're sending buffers of sequential bytes (and in the case of the C client, only printable ASCII characters), there is a risk that boxes on the network will compress the data and skew measurements.
We should modify the code for data generation so that we use a pseudorandom number generator with a periodicity of at least 64k, then take the last byte of each generated number as the next byte to place in the send buffer.
--
You received this message because this project is configured to send all issue notifications to this address.
You may adjust your notification preferences at:
https://code.google.com/hosting/settings
- [ndt-dev] Issue 161 in ndt: Non-random Test Data risks compression, ndt, 10/06/2014
Archive powered by MHonArc 2.6.16.