Каталог Поиск 0 Сравнить 0 Закладки 0 Корзина Войти
Каталог
105082, Москва, ул. Фридриха Энгельса, 75с21, БЦ Бауманский ИТКОЛ
Пн - Пт: с 09-00 до 18-00 Сб: с 10-00 до 18-00 Вс: выходной
Страницы: 1
RSS
Мой 8-портовый USW-Aggregation коммутатор виноват в медленной передаче данных?, wifiman
 
Я испытываю медленную передачу данных между моим MacPro и стойкой моей домашней лаборатории, и вот думаю, решит ли обновление моего агрегационного USW-коммутатора на другой USW-PRO-Agg проблему. У меня есть довольно скромная домашняя лаборатория в офисе и гараже. В офисе живут NVR, UDM SE и 8-портовый USW-Aggregation коммутатор, а также пара рабочих Mac, (оба с 10gbe). В гараже находится USW-Pro-Aggregation коммутатор и 24-портовый коммутатор ниже, как видно на прикрепленном изображении (кажется, нужно кликнуть на него, чтобы увидеть все). Вот соответствующие части моей сети (я постарался сопоставить имена на изображении с именами ниже):
1) Мой MacPro подключен к "Server Rack Agg 8-port" (8-портовый USW-Aggregation коммутатор) через 10gbe к SFP+.
2) "Server Rack Agg 8-p" (8-портовый USW-Aggregation коммутатор) подключен к "Garage Aggregation" (USW-Pro-Aggregation) через агрегированные 2x10gbe SFP волоконные кабели.
3) "Server Rack Agg 8-p" также подключен к шлюзу, UDM SE.
4) Целевой сервер (пикард), рабочая станция на базе 52-ядерного Xeon, подключен к "Garage Aggregation" коммутатору через агрегированные 2x10gbe SFP DAC кабели.
5) Есть и другие серверы (один — kirk) также подключены непосредственно к "Garage Aggregation" коммутатору через агрегированные 2x10gbe SFP DAC кабели.

Вот некоторые значения времени для передачи файлов:   Можно видеть разницу в скоростях передачи. Все это передают папку размером ~10 ГБ через scp -r.
MacPro to kirk (MacPro -> 8-портовый agg -> pro agg -> kirk) -- ~16 МБ/с
kirk to picard (оба подключены к pro agg) -- ~400 МБ/с
picard to kirk (оба подключены к pro agg) -- ~400 МБ/с
kirk to MacPro (kirk -> pro agg -> 8-портовый agg -> MacPro, то есть обратное первому пункту) -- ~500 МБ/с

Запуск iperf3 между всеми вышеуказанными вариантами дает ~9 ГБ/с в обе стороны (и я думаю, что iperf3 работает на уровне 2). Сначала я думал, что причиной может быть то, что серверы в гараже, все работающие под управлением proxmox, создают ВМ с другим VLAN, чем MacPro. Я создал ВМ в VLAN по умолчанию (то же самое, что и у MacPro), но увидел ту же падению скорости. Разница в скорости в зависимости от направления/происхождения потока данных — вот что меня интересует.

Мой вопрос в том, является ли 8-портовый агрегационный коммутатор тем, что замедляет меня, потому что это коммутатор уровня 2, который должен обращаться к UDM SE за помощью в маршрутизации? Поможет ли замена этого коммутатора уровня 2 на Pro агрегационный коммутатор (который маршрутизирует L3) для получения лучшего двунаправленного трафика? Я планирую добавить 10-гигабитный NAS и хочу установить его в стойке в гараже, но не на таких скоростях.

Спасибо,
-jamie
 
Я всё ещё копаюсь, но реального прогресса не делаю. А самое обидное, что мне кажется, раньше это работало в разы быстрее.
 
Какой роутер у тебя?
 
Привет! Отлично! Рад, что у тебя получилось! Как я и говорил, нужно просто проверять каждую часть пошагово. Наверное, стоило сразу сказать: "сначала убедись, что конфигурация одинаковая на всех хостах." ;) Спасибо за скрипт!
 
Сахафеез, во-первых, хочу поблагодарить тебя за всю помощь. Я написал довольно прямолинейный, но эффективный скрипт, который перебирал разные варианты использования scp для отправки и получения 2ГБ файла, как внутри, так и между VLAN (в /dev/null). Он вытаскивал среднюю конечную скорость передачи и сохранял её. Я еще заставил его запускать tshark и останавливаться, чтобы слушать повторные передачи: tshark -Y tcp.analysis.retransmission.

В итоге скрипт пишет CSV-файл, как этот: Как ты и говорил, часто в самом неожиданном месте. Передача трафика между VLAN была немного медленнее, но не на порядки, как я видел от компьютеров Mac в офисе. Пытаясь ещё больше оптимизировать свои тесты, я устал печатать имя пользователя и хост для ssh & scp, поэтому открыл свой файл .ssh/config… И увидел вот это для пары соответствующих хостов: Compression yes.

Я добавил это, когда консолидировал записи на днях 😱. Я удалил эту строку, и передача папки с астрономическими изображениями размером 4,77ГБ прошла от ~7,5 минут до 27 секунд. В общем, еще раз спасибо за помощь, даже если это не то, что решило проблему. Я многому научился, когда что-то действительно сломано и не PEBTKAC. Приложу свой скрипт на всякий случай, если кому интересно посмотреть на хрупкость захвата статистики scp или на хост-лупинг.
 
Зависит от потребностей клиентов, но UDM Pros или WatchGuards. Раньше использовали PFSense или WatchGuards, но теперь, когда Ubiquiti серьёзно улучшают свои маршрутизаторы, мы переходим на них.
 
@jamiesmithnc они в GUI. Порты > Аналитика. Нужно отредактировать меню столбцов в правом верхнем углу, чтобы они отображались. Также можно подключиться к коммутатору по SSH и войти в CLI, используя команды show.
 
Эти цифры из какой общей суммы пакетов? Если это из нескольких миллионов, ну что ж. Если из нескольких тысяч — это плохо. Впрочем, на чистой, неподгруженной сети ты бы, в идеале, вообще ничего не увидел. А если ты запустишь тот же тест на системах, где проблем нет, увидишь что-то подобное по повторным передачам? Когда ты это запускал, ты использовал предложенный мной тестовый файл и выводил его на принимающей стороне в /dev/null? Будет очень интересно посмотреть, что произойдет, когда ты подключишь его к тому же коммутатору. Если проблем нет, переноси его на следующий коммутатор, повтори процесс. Извини, знаю, что это много, но честно говоря, я бы подошел к решению именно так. Слишком много движущихся частей — нужно протестировать каждую из них.
 
Я установил tshark, потому что это облегчило пакетную запись, и провёл предварительный тест. Могу предоставить больше подробностей, но вижу, что происходит перепосылка того 2-гигабайтного файла туда и обратно — о каких типах (или типах) мне стоит беспокоиться?

count | type
    9 | TCP Fast Retransmission
  112 | TCP Retransmission
   54 | TCP Spurious Retransmission
с [psh] и [PSH, ACK] — эта информация хоть немного полезна?
 
Спасибо за постоянные советы! Я все равно попробую, я уже написал скрипты, чтобы это запустить :) Еще одно из того, что я планирую – просто временно подключить линию от MacPro к гаражной розетке, чтобы посмотреть, как это повлияет на ситуацию. Напишу, когда что-нибудь узнаю.
 
Как я уже говорил, попробуй угадай, и честно говоря, я немного удивлён. Пока что я бы пропустил прочие вещи, которые предлагал ИИ, и сосредоточился на запуске TCPdump на обеих проблемных системах во время передачи данных. Если в захвате ничего не видно, будет интересно посмотреть на поведение их локальных компонентов и ПО. Ты проверял статистику сетевых взаимодействий, которые задействованы? Случайный вопрос: у обеих систем одновременно работает подключение к Wi-Fi? Как я уже говорил, я просто предполагаю и прохожусь по тем вещам, которые я бы проверил. Если перенести обе системы на один коммутатор, заработает ли это? Да что там, если напрямую соединить их друг с другом, заработает ли? Многое из того, что я предлагаю, направлено на сбор отрицательных результатов, чтобы исключить возможные проблемы. Помни: ответ будет в последнем месте, где ты будешь искать! :)
 
Вот план на выходные. Попробую еще покопаться в tcpdump. И пока что отменю агрегации, как кто-то и предложил. Когда ты говоришь "дропы", ты имеешь в виду только дропы, или еще и ошибки? Я, честно говоря, почти не вижу ни того, ни другого
 
@jamiesmithnc если ты будешь устранять неполадки, как я описал, ты найдёшь проблему. Это довольно подробный пошаговый процесс, но ты получишь ответ. Не пропускай шаги, не гадай. Не копайся в настройках. Я уже 30 лет в сетевом мире, занимался строительством WAN, дата-центров, магистральных сетей, а также проектированием и настройкой коммутаторов. Кстати, если бы я должен был угадывать, если ты запустишь передачу файла и tcpdump с обеих сторон, ты увидишь повторные передачи, и hop by hop — это способ выяснить, где именно происходит сбой. Уверен, если ты посмотришь на счётчики портов, ты увидишь сбросы. Ну и вот что касается гаданий: даже если ты прав, тебе всё равно придётся потрудиться, чтобы это доказать, так что просто сделай работу. А если ты не прав… ну, тебе тоже придётся потрудиться ;)
 
Лично у меня L3 будет относиться к моему роутеру, для маршрутизации и использования его в роли Core Switch. В вашем вопросе слишком много неопределённостей, чтобы сейчас дать ответ, но профессионально скажу, что в моей компании есть 8-портовые агрегирующие коммутаторы повсюду, и нет проблем с достижением необходимой пропускной способности. Я бы посоветовал вам обратиться к сотрудникам UI, возможно, они попросят вас загрузить файлы конфигурации, чтобы они могли более детально посмотреть, что у вас настроено или происходит, если вы не хотите добавлять больше деталей здесь.
 
Могу попробовать, слоев у меня не так много. Глупый вопрос, да? Где искать "drop counters"?
 
Помимо шагов, описанных, но @sahafeez, попробуй еще эти тесты с включенным Flow Control.
 
У тебя слишком много движущихся частей, и ты скачешь с места на место. Нужно проводить тестирование по уровням в одной VLAN, используя тестовый сервер, который не перемещается, и постепенно поднимая тестовый хост на каждом уровне. Нужно проверять счетчики отбрасываемых пакетов на каждом порту на каждом тесте. Нужно убрать LAGs и упростить всё до минимума во время тестирования, добавляя их обратно только по одному, когда будет подтвержден сквозной путь. Затем нужно протестировать еще раз таким же образом каждый добавляемый LAG. Проводи hop by hop iperf3 и смотри на отбрасываемые пакеты. Запускай iperf3 на 120 секунд, чтобы исключить влияние TCP windowing и буферов коммутатора из теста. И это нужно делать без другого трафика. Оба хоста используют текущую версию SCP SFTP, или один из них использует устаревшую? Также ты проверяешь скорость чтения и записи хоста, делая это. Можно убрать проверку скорости записи, выводя файл в /dev/null на принимающей стороне: scp testfile.img user@remoteserver:/dev/null
Нужно создать файл разумного размера для этого. 2Гб с случайными данными, чтобы исключить влияние сжатия и т.д. Используй один и тот же файл каждый раз. Проводи тест несколько раз, чтобы файл как можно больше находился в RAM и исключить влияние дискового чтения.
 
Кирк — это minisforum MS-01, в котором установлен 14-ядерный процессор i9, два порта 10gb SFP и 96gb оперативной памяти. Этот путь, MacPro -> Кирк, медленный, но это просто отражение проблемы: любое устройство, подключенное к L2/USW-Aggregation коммутатору, и пытающееся связаться с чем-то, подключенным к L3/USW-PRO-Aggregation коммутатору, демонстрирует аналогичное замедление. Что касается VLAN, даже когда они все находятся на одном и том же VLAN по умолчанию, я все равно вижу огромное снижение скорости передачи данных (хотя iperf3 показывает 9Gb). Когда они находятся на разных VLAN, передача файлов по-прежнему медленная, но iperf3 падает до 3.84Gb (что, я думаю, ожидаемо из-за L2). Я не настраивал никаких специальных правил маршрутизации для VLAN, просто создал их и назначил диапазон IP-адресов, оставив настройку роутера на UDM SE (есть опция использовать L3/USW-PRO-Aggregation коммутатор в качестве роутера).
 
Зависит от того, как у тебя настроены VLAN, сети и шлюзы — все ли они в одной VLAN, или разделены? Все ли маршрутизация происходит на UDM, или часть маршрутизация происходит на L3? Нужно больше информации, особенно по сетевой части, чтобы понять, где может быть проблема.
 
Так вопрос в MacPro для Кирка, верно? А кто такой Кирк?
Страницы: 1
Читают тему (гостей: 1)