CCID4 Testing - Some Results

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Below are some test results with the latest CCID4 subtree; two tests were performed:

 (a) iperf throughput tests
 (b) audio streaming using paraslash.

Both tests were performed using DCCPv6 only, so DCCPv4 supposedly works also.


1. iperf throughput testing 
---------------------------
To make iperf accept IPv6 addresses, the -V option had to be passed to
the program; below are the results of running between two hosts
connected via a 100Mbps (crossover) LAN:

          +--------+-------------------+--------------------+
          |  `s'   |  iperf throughput | packets per second |
          +--------+-------------------+--------------------+
          |   16b  |  12.6 kbps        |      98.43         |
          |   32b  |  25.1 kbps        |      98.05         |
          |   64b  |  50.3 kbps        |      98.24         |
          |  128b  | 101.0 kbps        |      98.63         |
          |  256b  | 201.0 kbps        |      98.14         |
          |  512b  | 402.0 kbps        |      98.14         |
          | 1024b  | 805.0 kbps        |      98.27         |
          | 1420b  | 1.12 Mbps         |      98.60         |
          +--------+-------------------+--------------------+

The tests were run over DCCPv6 only which is why the highest MPS is 1420 bytes
(Ethernet; with minimum set of features the MPS is 1440 for v4 and 1420 for v6).

It is noticeable that CCID4 uses a built-in speed-limiter: the packets-per-second
speed is the same in each case (the value is only approximate, the column simply
shows throughput / (8 * s), one would want to take IPv6/DCCP header sizes into
the calculation as well; not done here).

So in this regard CCID4 behaves like CCID3: when there is no loss, it quickly
climbs up to link speed, or rather maximum the speed limit.

How the results were obtained: when iperf is used without the `-b' option, it
                               completely tries to overrun the socket with data,
                               so for all packet sizes less than 1420 bytes,
                               the -b switch was set to the default value (1 Mbps);
                               for 1420b it was set to `-5m' which corresponds to a
                               constant bitrate of 5Mbps.


2. Audio streaming using paraslash
----------------------------------
CCID4 was set as default CCID using the {rx,tx}_ccid sysctls and a longer (50 min) MP3
file was streamed from server to client. It is a less boring setup than iperf, since when
there is a problem, it will become audible very quickly.

When doing the MP3-streaming, I had on DCCPv6
 * average packet size: 160 bytes
 * and the X_recv observed in the DCCP-Acks was
   frequently set to 6042 bytes/sec
 * which corresponds to ~ 48kbps, which is in agreement with the above table
 * and it also agrees perfectly with the encoding of the MP3 file -- its
   header says that it was encoded for 48 kbps joint-stereo and I think
   that means constant bitrate since VBR in MP3 is a bit more complex.

Gerrit   
-
To unsubscribe from this list: send the line "unsubscribe dccp" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel]     [IETF DCCP]     [Linux Networking]     [Git]     [Security]     [Linux Assembly]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]

  Powered by Linux