Data Domain. Поиск и устранение неисправностей производительности сети с помощью iperf
Summary: Используйте инструмент iperf и команду DD net iperf для измерения необработанной пропускной способности сети между конечными точками, помогая диагностировать медленные или неудачные операции резервного копирования, восстановления или репликации путем проверки пропускной способности между сетевыми платами по всему сетевому пути. ...
Symptoms
В этой статье приведены подробные инструкции по использованию iperf и ДД net iperf команда для измерения пропускной способности сети между медиасервером и системой Data Domain (DD) или между двумя системами DD.
Утилита iperf — это стандартный инструмент, предназначенный для измерения необработанной производительности сети между двумя конечными точками. Это помогает проверить базовый NIC-to-NIC bandwidth по всем промежуточным сетевым компонентам, таким как коммутаторы, маршрутизаторы, межсетевые экраны и каналы глобальной сети, с использованием трафика TCP или UDP. Это очень важно для изоляции проблем, связанных с сетью, от проблем на уровне приложений.
Возможно, потребуется выполнить iperf при возникновении любого из следующих симптомов:
- Снижение производительности резервного копирования или восстановления при использовании CIFS, NFS или DD Boost по IP между медиасервером и DD.
- Сбои резервного копирования или восстановления между медиасервером и DD Boost через CIFS, NFS или DD Boost.
- Проблемы с производительностью репликации (например, сбора, каталога, репликации MTree или управляемой репликации файлов) между двумя системами DD.
Cause
Проблемы с производительностью во время резервного копирования, восстановления или репликации часто возникают из-за узких мест в сети, а не из-за ограничений на уровне приложений. Эти узкие места могут возникать в любом месте пути прохождения данных — между медиасервером и системой Data Domain или между двумя системами DD — и могут включать:
- Ограничения пропускной способности на сетевых платах или промежуточных сетевых устройствах (коммутаторах, маршрутизаторах, межсетевых экранах).
- Несоответствие значений MTU приводит к фрагментации и повторной передаче.
- Высокая задержка или потеря пакетов из-за перегрузки, неисправных кабелей или неправильно настроенного QoS.
- Проблемы с масштабированием окна TCP или недостаточный размер буфера влияют на пропускную способность.
- Межсетевой экран или инспекция IDS/IPS , издержки регулирования трафика SMB/NFS/DDBoost.
Поскольку эти проблемы часто незаметны на уровне приложения, iperf используется для измерения необработанной пропускной способности TCP/UDP между конечными точками, проверяя производительность базовой сети независимо от CIFS, NFS или DD Boost. Это помогает определить, вызвано ли медленное резервное копирование или восстановление сетевыми ограничениями или конфигурацией приложения или хранилища.
Resolution
Iperf — это широко используемая утилита тестирования производительности сети с открытым исходным кодом, которая генерирует потоки трафика TCP и UDP для измерения доступной полосы пропускания и пропускной способности. Он обеспечивает точную оценку необработанной пропускной способности сети между двумя конечными точками, такими как медиасервер и система Data Domain (DD), или между двумя системами DD. Моделируя передачу данных на транспортном уровне, iperf Помогает выявлять узкие места в сети, проблемы с задержкой и потерей пакетов между промежуточными компонентами, такими как коммутаторы, маршрутизаторы и межсетевые экраны, независимо от протоколов прикладного уровня, таких как CIFS, NFS или DD Boost.
Iperf имеет два режима: серверный и клиентский.
РАЗДЕЛ I: ГДЕ ВЗЯТЬ ИНСТРУМЕНТ IPERF:
Существует три способа получить iperf исполняемый файл:
Метод 1:
DD имеет "net iperf" . Если вы просто хотите проверить пропускную способность между двумя DD, используйте "net iperf" Достаточно команды.
Способ 2.Iperf доступен для DDR в разделе /ddr/var/tools/iperf . Чтобы получить исполняемый файл iperf, сопоставьте /ddvar с помощью CIFS или NFS на медиасервере и поместите его в любую папку, например, /tmpили C:\EMCили C:\ddtools.
1. Чтобы создать временную сетевую папку CIFS для /ddvar где iPerf утилита для Windows:
cifs share create <Share Name is recommended to be 'ddvar' without any slash> path <Path to the directory being shared '/ddvar'> clients <IP of relevant remote Windows Host>
Eg: sysadmin@dd# cifs share create ddvar path /ddvar clients <IP of affected backup Host>
Чтобы удалить временную сетевую папку CIFS, выполните следующие действия.
cifs share destroy <Temporary Share Name>
Eg: sysadmin@dd# cifs share destroy ddvar
2. Чтобы создать временную сетевую папку NFS для Linux, выполните следующие действия.
nfs export create <Share Name is recommended to be 'ddvar' without any slash> path <Path to the directory being shared '/ddvar' clients <IP of relevant remote Linux Host>
Eg: sysadmin@dd# nfs export create ddvar path /ddvar clients <IP of relevant remote Linux Host>
Чтобы удалить временную сетевую папку NFS, выполните следующие действия.
nfs export destroy <Temporary Share Name>
Eg: sysadmin@dd# nfs export destroy ddvar
Способ 3:
Скачивание из DD с помощью scp (UNIX) или pscp (Windows):
UNIX:
scp <localuser>@<IP or hostname of DD>:/ddr/var/tools/iperf/<OS>/<iperf executable> <local path>
example: scp sysadmin@10.10.10.10:/ddr/var/tools/iperf/Linux/iperf /tmp/iperf
OS/iperf executable:
HP-UX_RISC/iperf
AIX/iperf
Linux/iperf
HP-UX_IA64/iperf
Solaris_Sparc/iperf
Windows/iperf.exe
Windows:
pscp -scp <localuser>@<IP or hostname of DD>:/ddr/var/tools/iperf/Windows/iperf.exe <local path>
example: pscp -scp sysadmin@10.10.10.10:/ddr/var/tools/iperf/Windows/iperf.exe C:\ddtools\iperf.exe
pscp (версия для командной строки scp для Windows) доступен для скачивания в putty.org (внешний). Winscp не работает для скачивания из ДД.
РАЗДЕЛ II: Найдите IP-адрес в DD, который будет использоваться в тесте iperf.#net show hardware, to see which port, 1G/10G link#net show setting, to see the IP assigned to the port
РАЗДЕЛ III: КАК ЗАПУСТИТЬ IPERF
ПРИМЕР I. КАК ЗАПУСТИТЬ IPERF МЕЖДУ ДВУМЯ DD:
В целевом DD с помощью сеанса PuTTY,
#net iperf server
Затем на исходном DD,
#net iperf client <DestinationDDIP> interval 10 duration 60
#net iperf server status, чтобы подтвердить, что iperf остановлен.-Вышеуказанная команда - чтобы увидеть, какая пропускная способность сети доступна от исходного DD до целевого DD, с 1 потоком, с 10-секундным интервалом в течение 60 секунд.
-Вы можете выполнить вышеуказанную команду с помощью команды
"connection 10" , чтобы проверить пропускную способность сети с 10 подключениями, которая должна быть больше 1 подключения.-Если репликация выполняется между этими 2 DD одновременно,
iperf Результат показывает пропускную способность сети, оставшуюся помимо той, которая уже используется при репликации. Можно использовать #iostat 2 для просмотра пропускной способности, используемой на порте одновременно.-Вы можете перевернуть тест, чтобы увидеть доступную пропускную способность наоборот, т.е. между адресатом и исходным DD.
ПРИМЕР II: КАК ЗАПУСТИТЬ IPERF С МЕДИАСЕРВЕРА В DD. Это может быть использовано для проблемы медленного резервного копирования/записи.
На DD, используя сеанс PuTTY,
#net iperf server --- This means DD in server mode and is listening
На медиасервере Windows или Linux:
#iperf -c <DDIPaddress> -t 60 -i 10
Примечание. -После теста используйте ctl+c в исходном коде, чтобы остановить iperf..
#net iperf server status,
, чтобы подтвердить, что iperf остановлен.
-Вы можете выполнить вышеуказанную команду с -P 10, чтобы проверить пропускную способность сети с 10 соединениями, которая должна быть больше, чем 1 соединение.
-Вам нужно использовать опцию -w 256K, чтобы указать размер окна.
Example:
root@client 1 iperf-2.0.5]# iperf -c 11.65.228.28 -i 3 -t 30 -w 256K
------------------------------------------------------------
Client connecting to 11.65.228.28, TCP port 5001
TCP window size: 512 KByte (WARNING: requested 256 KByte)
------------------------------------------------------------
[ 3] local 11.65.249.45 port 63535 connected with 11.65.228.28 port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0- 3.0 sec 2.79 GBytes 7.98 Gbits/sec
[ 3] 3.0- 6.0 sec 2.86 GBytes 8.19 Gbits/sec
[ 3] 6.0- 9.0 sec 2.90 GBytes 8.30 Gbits/sec
Примечание. В приведенном выше выводе .45 — это IP-адрес источника, используемый медиасервером для записи в DD. .28 — IP-адрес DD, используемый для резервного копирования.
ПРИМЕР III. КАК ЗАПУСТИТЬ IPERF ИЗ DD НА МЕДИАСЕРВЕР: Это может быть использовано для медленного восстановления/чтения.
На медиасервере Windows или Linux:
#iperf -s
На DD:
#net iperf client <ip address> duration 60 interval 10
Примечание.
-Возможно, вам придется использовать опцию -p 5001 или другое #, чтобы указать порт.
-Возможно, вам понадобится использовать опцию -w 256K, чтобы указать размер окна.
РАЗДЕЛ IV: ДАЛЬНЕЙШИЕ ДЕЙСТВИЯ
-В идеале между портами 1 Гбит/с мы хотели бы видеть пропускную способность от 800 Мбит/с до 900 Мбит/с, когда ничто другое не использует полосу пропускания.
Мы хотели бы видеть пропускную способность между портами 10 Гбит/с, когда другая полоса пропускания не используется.
-Если пропускная способность ниже указанной выше идеальной скорости линии, используйте несколько соединений (10 или 20), чтобы увидеть увеличение доступной пропускной способности.
-Также проверьте маршрутизацию и убедитесь, что MTU согласован на всем пути. (См. примечания ниже, как использовать ping для проверки MTU)
Additional Information
Проверьте согласованность значений MTU по всему сетевому пути.
Чтобы убедиться в согласованности настроек MTU на всех этапах (клиент → сеть → хранилище), используйте команду ping с опцией Don't Fragment . Это гарантирует, что пакеты не будут фрагментированы вдоль пути.
Windows (Standard MTU 1500):ping -f -l 1472(1472-bytes payload + 28-byte header = 1500 MTU)
Windows (Jumbo Frame MTU 9000):ping -f -l 8972(8972 bytes payload + 28-bytes header = 9000 MTU)
Из Data Domain (DD):net ping count 2 packet-size 1472 path-mtu donet ping count 2 packet-size 8972 path-mtu do
Почему это важно:
Проверка MTU гарантирует, что пакеты jumbo frame или стандартные кадры поддерживаются согласованно на всех сетевых устройствах, предотвращая фрагментацию и потерю пакетов, которые могут ухудшить производительность восстановления CIFS.