Overview

This iperf-based Network Performance Tool executes a synthetic workload on the network to evaluate the performance characteristics available between the Delphix Engine and Target servers.

Prerequisites

The network performance tool measures network performance between a Delphix Engine and an environment host. You must have added an environment in order to use this tool.

This transmission control protocol (TCP) throughput test uses TCP port 50001 by default. The port can also be configured on a per-test-run basis. For the duration of a given throughput test, a server on the receiver will be listening on this port. For a transmit test, the receiver is the remote host; for a receive test, the receiver is the Delphix Engine.

Running the Network Test via CLI - Latency

The network latency test measures network round-trip latency by transmitting ICMP echo requests (like the ping utility) and measuring the time to receive replies from the remote host. To execute a test:

  1. Login as a domain user to the Delphix Engine CLI using ssh.
  2. Create a network latency test.

    delphix> network test latency
    delphix network test latency> create
    delphix network test latency create *> 
  3. You must set remoteHost to the name of an environment host already configured in the Delphix Engine. (You should press tab after the "=" (equal sign) to auto-populate and confirm registered destinations). Use 'get' to see other optional arguments. Modify the test parameters as needed and commit to start the test. 

    delphix network test latency create *> set remoteHost=oracletarget 
    delphix network test latency create *> get
        type: NetworkLatencyTestExecuteParameters
        remoteHost: oracletarget
        requestCount: 20
        requestSize: 8B
    delphix network test latency create *> commit
        Dispatched job JOB-20
        NETWORK_LATENCY_TEST_EXECUTE job started for "oracletarget-2014-06-20T18:57:28.659Z".
        Executing network latency test.
        NETWORK_LATENCY_TEST_EXECUTE job for "oracletarget-2014-06-20T18:57:28.659Z" completed successfully.
  4. The job will be submitted and visible in the Delphix Management application.

  5. Retrieve the test results. All times are in microseconds.

    delphix network test latency> list
    NAME                                   AVERAGE
    oraclesource-2014-06-20T18:57:28.659Z  872
    delphix network test latency> select oraclesource-2014-06-20T18:57:28.659Z 
    delphix network test latency "oraclesource-2014-06-20T18:57:28.659Z"> get
        type: NetworkLatencyTest
        name: oraclesource-2014-06-20T18:57:28.659Z
        average: 872
        endTime: 2014-06-20T18:57:48.558Z
        loss: 0
        maximum: 2755
        minimum: 294
        reference: NETWORK_LATENCY_TEST-2
        remoteAddress: 172.16.203.184
        remoteHost: oraclesource
        requestCount: 20
        requestSize: 8B
        startTime: 2014-06-20T18:57:28.659Z
        stddev: 527

Running the Network Test via CLI - Throughput

The network throughput test measures sustained throughput using a synthetic workload to or from a remote host. To execute a test:

  1. Login as a domain user to the Delphix Engine CLI using ssh.
  2. Create a network throughput test.

    delphix> network test throughput
    delphix network test throughput> create
    delphix network test throughput create *> 
  3. You must set remoteHost to the name of an environment host already configured in the Delphix Engine. Use 'get' to see other optional arguments. Modify the test parameters as needed and commit to start the test. 

    delphix network test throughput create *> set remoteHost=oraclesource 
    delphix network test throughput create *> ls
    Properties
        type: NetworkThroughputTestParameters
        blockSize: 128KB
        direction: TRANSMIT
        duration: 30
        numConnections: 0
        port: 50001
        receiveSocketBuffer: 4MB
        remoteHost: oraclesource
        sendSocketBuffer: 4MB
    delphix network test throughput create *> commit
        Dispatched job JOB-21
        NETWORK_THROUGHPUT_TEST_EXECUTE job started for "oraclesource-2014-06-20T19:30:12.566Z".
        Executing network throughput transmit test.
        Measuring throughput with variable number of connections: 1.
        Measuring throughput with variable number of connections: 2.
        Measuring throughput with variable number of connections: 4.
        Measuring throughput with variable number of connections: 6.
        Measuring throughput with variable number of connections: 8.
        Measuring maximum sustained throughput for 30 seconds with 8 connections.
        NETWORK_THROUGHPUT_TEST_EXECUTE job for "oraclesource-2014-06-20T19:30:12.566Z" completed successfully.
  4. The job will be submitted and visible in the Delphix Management application.

Retrieve the test results.

delphix network test throughput> list
NAME                                   DIRECTION    STATE     THROUGHPUT
oraclesource-2014-06-20T19:30:12.566Z  TRANSMIT     COMPLETED 695.6Mbps
delphix network test throughput> select oraclesource-2014-06-20T19:30:12.566Z
delphix network test throughput "oraclesource-2014-06-20T19:30:12.566Z"> get
    type: NetworkThroughputTest
    name: oraclesource-2014-06-20T19:30:12.566Z
    endTime: 2014-06-20T19:31:15.041Z
    numConnections: 8
    parameters:
        type: NetworkThroughputTestParameters
        blockSize: 128KB
        direction: TRANSMIT
        duration: 30
        numConnections: 0
        port: 50001
        receiveSocketBuffer: 4MB
        remoteHost: oraclesource
        sendSocketBuffer: 4MB
    reference: NETWORK_THROUGHPUT_TEST-2
    remoteAddress: 172.16.203.184
    startTime: 2014-06-20T19:30:12.566Z
    state: COMPLETED
    throughput: 695.6Mbps

Delphix Session Protocol Test from Primary Engine to Replication Engine

Delphix uses the Delphix Session Protocol (DSP) protocol to communicate between primary and replication engines.

  1. To execute a test via the CLI:Login to Delphix Engine using a Delphix administrator account such as delphix_admin.
    As soon as you login, you will get prompt with engine name.


    -bash-4.3$ ssh delphix_admin@delphix
    Password:
    delphix>
  2. Create a dsp test

    delphix> network test dsp create
  3. Set the destinationType to DELPHIX_ENGINE to do a DSP test between two Delphix Engines. The default is REMOTE_HOST which executes a DSP test between a source or target host and the Delphix Engine.


    delphix network test dsp create *> set destinationType=DELPHIX_ENGINE
  4. Use 'get' to see other optional arguments. Modify the test parameters as needed and commit to start the test. 


    delphix network test dsp create *> get
       type: NetworkDSPTestParameters
       blockSize: 64KB
       compression: false
       destinationType: REMOTE_HOST
       direction: TRANSMIT
       duration: 30
       encryption: false
       numConnections: 0
       queueDepth: 32
       receiveSocketBuffer: 256KB
       remoteDelphixEngineInfo: (unset)
       remoteHost: (unset)
       sendSocketBuffer: 256KB
    delphix network test dsp create *> set remoteDelphixEngineInfo.address=delphix2
    delphix network test dsp create *> set remoteDelphixEngineInfo.principal=delphix_admin
    delphix network test dsp create *> edit remoteDelphixEngineInfo
    delphix network test dsp create remoteDelphixEngineInfo *> get
       type: RemoteDelphixEngineInfo (*)
       address: delphix2 (*)
       credential: (required)
       principal: delphix_admin (*)
    delphix network test dsp create remoteDelphixEngineInfo *> set credential.password=delphix
    delphix network test dsp create remoteDelphixEngineInfo *> commit
       `NETWORK_DSP_TEST-2
       Dispatched job JOB-8
       NETWORK_DSP_TEST_EXECUTE job started.
       Measuring throughput with variable number of connections: 716 Mbps measured for 1 connections.
       Measuring throughput with variable number of connections: 711 Mbps measured for 2 connections.
       Measuring throughput with variable number of connections: 611 Mbps measured for 4 connections.
       Measuring throughput with variable number of connections: 646 Mbps measured for 6 connections.
       Measuring throughput with variable number of connections: 567 Mbps measured for 8 connections.
       Measuring average throughput for 30 seconds with 1 connections.
       Measured throughput of 408 Mbps.
       NETWORK_DSP_TEST_EXECUTE job completed successfully.

  5. Retrieve the test results


    delphix> network test dsp list
    NAME                               PARAMETERS.DIRECTION  STATE      THROUGHPUT
    delphix2-2018-01-23T21:25:31.172Z  TRANSMIT              COMPLETED  880.5Mbps
    delphix2-2018-02-02T17:54:58.322Z  TRANSMIT              COMPLETED  408.5Mbps


Related Links