ndt-dev - [ndt-dev] [ndt] r588 committed - Feedback based modifications in the Middlebox Test section.
Subject: NDT-DEV email list created
List archive
[ndt-dev] [ndt] r588 committed - Feedback based modifications in the Middlebox Test section.
Chronological Thread
- From:
- To:
- Subject: [ndt-dev] [ndt] r588 committed - Feedback based modifications in the Middlebox Test section.
- Date: Fri, 02 Sep 2011 09:21:37 +0000
Revision: 588
Author:
Date: Fri Sep 2 02:20:56 2011
Log: Feedback based modifications in the Middlebox Test section.
http://code.google.com/p/ndt/source/detail?r=588
Modified:
/wiki/NDTTestMethodology.wiki
=======================================
--- /wiki/NDTTestMethodology.wiki Thu Sep 1 10:09:04 2011
+++ /wiki/NDTTestMethodology.wiki Fri Sep 2 02:20:56 2011
@@ -28,11 +28,11 @@
=== Middlebox Test ===
-The middlebox test is a short throughput test from the server to the client with a limited CWND to check for a duplex mismatch condition. Moreover, this test uses a pre-defined MSS value to check if any intermediate node will modify its connection settings.
+The middlebox test is a short throughput test from the server to the client with a limited CWND ([http://en.wikipedia.org/wiki/Congestion_window congestion window] - one of the factors that determines the number of bytes that can be outstanding at any time) to check for a duplex mismatch condition. Moreover, this test uses a pre-defined MSS value to check if any intermediate node will modify its connection settings.
A detailed description of all of the MID protocol messages can be found in the [NDTProtocol#Middlebox_test NDT Protocol document].
-As a first step the server binds an ephemeral port and notify the client about this port number. The server also sets MSS on this port to 1456 (strange value).
+As a first step the server binds an ephemeral port and notify the client about this port number. The server also sets MSS on this port to 1456 (a strange value that it is unlikely a routers will have been tested with, so this also tests that they can handle such weird MSS sizes).
Next, the client connects to the server's ephemeral port. When the connection is successfully established, the server sets the maximum value of the congestion window for this connection to `2 * (The current maximum segment size (MSS))`.
@@ -42,6 +42,8 @@
{{{
BUFFER_SIZE * 16 < ((Next Sequence Number To Be Sent) - (Oldest Unacknowledged Sequence Number) - 1)
}}}
+
+The both `"Next Sequence Number To Be Sent"` and `"Oldest Unacknowledged Sequence Number"` values are obtained from the connection with the help of the [http://www.web100.org/ web100] library.
When the 5 seconds throughput test is over, the server sends the following results to the client:
@@ -49,9 +51,9 @@
|| !WinScaleSent || The value of the transmitted window scale option if one was sent; otherwise, a value of -1. ||
|| !WinScaleRcvd || The value of the received window scale option if one was received; otherwise, a value of -1. ||
-Next, the client sends its calculated throughput value to the server. This throughput value is calculated using the following formula:
+Next, the client sends its calculated throughput value to the server. The throughput value is calculated by taking the transmitted bytes over the duration of the test. This value, in Bps, is then converted to kbps. This can be shown by the following formula:
{{{
-THROUGHPUT_VALUE = 8 * TRANSMITTED_BYTES / 1000 / TEST_DURATION_SECONDS
+THROUGHPUT_VALUE = (TRANSMITTED_BYTES / TEST_DURATION_SECONDS) * 8 / 1000
}}}
=== Simple Firewall Test ===
- [ndt-dev] [ndt] r588 committed - Feedback based modifications in the Middlebox Test section., ndt, 09/02/2011
Archive powered by MHonArc 2.6.16.