Как продолжить тест IPerf3 до тех пор, пока сервер не получит весь объем данных - PullRequest
0 голосов
/ 07 мая 2020

Я делаю тест IPERF3. Клиентская команда:

iperf3 --client server_ip--port 22001 --cport 32001 --connect-timeout
9999   --set-mss 1400 -w 32M -n 512K --json --logfile filename

Но в отчете я обнаружил

    "sum_sent": {
            "start":    0,
            "end":  0.33279991149902344,
            "seconds":  0.33279991149902344,
            "bytes":    1310720,
            "bits_per_second":  31507700.686485216,
            "retransmits":  0
        },
        "sum_received": {
            "start":    0,
            "end":  1.1867570877075195,
            "seconds":  1.1867570877075195,
            "bytes":    6940,
            "bits_per_second":  46782.952109642763
        },

Здесь есть разрыв между байтами sum_sent и sum_received. Я работаю в нестабильной среде, поэтому ожидается потеря пакетов.

Теперь мой вопрос: « Есть ли способ продолжить тест, пока все данные не будут подтверждены сервером? »

В качестве примера: Вот я отправляя 512 КБ данных, я хочу, чтобы клиент повторно передавал данные, если сегмент не подтвержден сервером, а также, если клиент видит потерю пакета, он должен уменьшить размер окна, а также повторно передать сегмент. И продолжайте передавать и повторно передавать сегменты, пока сервер не подтвердит все сегменты. Как это сделать?

...