ndt-dev - [ndt-dev] [ndt] r428 committed - Added more detailed sections to Connection Setup
Subject: NDT-DEV email list created
List archive
[ndt-dev] [ndt] r428 committed - Added more detailed sections to Connection Setup
Chronological Thread
- From:
- To:
- Subject: [ndt-dev] [ndt] r428 committed - Added more detailed sections to Connection Setup
- Date: Fri, 29 Jul 2011 14:00:30 +0000
Revision: 428
Author:
Date: Fri Jul 29 07:00:12 2011
Log: Added more detailed sections to Connection Setup
http://code.google.com/p/ndt/source/detail?r=428
Modified:
/wiki/NDTProtocol.wiki
=======================================
--- /wiki/NDTProtocol.wiki Fri Jul 29 06:52:14 2011
+++ /wiki/NDTProtocol.wiki Fri Jul 29 07:00:12 2011
@@ -8,7 +8,7 @@
== Table of Contents ==
-<wiki:toc max_depth="3" />
+<wiki:toc max_depth="4" />
== Introduction ==
@@ -125,6 +125,8 @@
=== Connection Setup ===
+==== Logging in to server with a test suite request ====
+
Before Client can start test sessions, it has to establish a connection to the server.
First, a client opens a TCP connection to the server on a well-known port 3001 and sends a LOGIN message:
@@ -139,6 +141,8 @@
Where TESTS is a bitwise OR of the tests' ids that should be run in a requested test-suite.
+==== Kick off message to disconnect old clients ====
+
In the same time Server sends the specially crafted 13 octets long data that kicks off the old clients ("123456 654321"):
{{{
@@ -154,6 +158,8 @@
All non-compatible clients SHOULD drop the connection after receiving the above message.
+==== Queuing clients ====
+
In the next step NDT server is calculating if it can handle client request and client SHOULD expect at least one 'SRV_QUEUE' message. This message MAY contain one of the following values:
|| *SRV_QUEUE value* || *Description* ||
@@ -164,7 +170,11 @@
|| 9990 || This is a check from server to verify if the client is alive. Available from v3.5.5. The client SHOULD respond to this message by sending 'MSG_WAITING' empty message. ||
|| N || Where N is any other value. It means the estimated number of minutes that client will wait for its test to begin. ||
-When server decides that client can start its test session, it sends SRV_QUEUE message with value *0*. After this server and clients SHOULD verify their version compatibility.
+When server decides that client can start its test session, it sends SRV_QUEUE message with value *0*.
+
+==== Verifying version compatibility ====
+
+At the beginning of the test session server and client MUST verify their version compatibility.
Server MUST send a MSG_LOGIN message containing its version identifier in the following form:
@@ -184,6 +194,8 @@
It is RECOMMENDED, that client will display a warning message in case of the difference. Moreover, client MAY also drop a connection when incompatibility is too big.
+==== Negotiating test suite ====
+
In the next step server MUST send a list of tests' ids that will be performed. This list is a string containing space separated numbers that describes particular tests. The test suite containing all five tests (Middlebox test, Simple firewall test, C2S throughput test, S2C throughput test and META test) will have the following description:
{{{
1 2 4 8 32
- [ndt-dev] [ndt] r428 committed - Added more detailed sections to Connection Setup, ndt, 07/29/2011
Archive powered by MHonArc 2.6.16.