Назад | Перейти на главную страницу

Устранение неполадок, связанных со скоростью сети - запрос на возраст

Мне нужна помощь с вопросом, который, я уверен, извечный. Я оказался в ситуации, когда мне очень хотелось более четко понять пропускную способность сети, но я не могу найти информацию, которая заставит ее "щелкнуть"

У нас есть несколько географически распределенных серверов, на которых работают различные версии Windows. Предполагая, что мы всегда используем один хост (рабочий стол) в качестве источника, при копировании данных с этого хоста на другие серверы по всей стране мы видим большие различия в скорости. В некоторых случаях мы можем последовательно копировать данные со скоростью 12 МБ / с, в других - 0,8 МБ / с. Следует отметить, что после тестирования 8 пунктов назначения мы всегда показываем либо 0,6-0,8 МБ / с, либо 11-12 МБ / с. В здании, которое нас больше всего интересует, у нас есть соединение OC-3 с нашим интернет-провайдером.

Я знаю, что есть много переменных, но я полагаю, что надеялся, что эксперты помогут ответить на несколько основных вопросов, которые помогут мне лучше понять.

1.) Для старых машин, работающих под управлением Windows XP, server 2003 и т. Д., С картой Ethernet 100 Мбит / с и типичной задержкой 72 мс, приемлем ли звук 0,8 МБ / с? Или вы думаете, что это достаточно медленно, чтобы указать на проблему?

2.) Классическая «математическая самая быстрая скорость» «пропускная способность = окно TCP / задержка» в нашем случае рассчитывается как 0,8 МБ / с (64 КБ / 72 мс). Насколько я понимаю, это верхняя граница; которую вы никогда не ожидаете достичь (из-за накладных расходов), не говоря уже о превышении этой скорости. Однако в некоторых случаях мы видим скорость 12,3 МБ / с. По сети разбросаны ускорители Steelhead, могут ли они объяснить такую ​​более высокую скорость передачи?

3.) Было высказано предположение, что использование SMB против SMB2 может объяснить разницу в скорости. Действительно, как и следовало ожидать, захваты пакетов показывают, что оба используются в зависимости от используемых версий ОС, как и следовало ожидать. Я понимаю, что определяет использование SMB2 или нет, но мне любопытно узнать, какой прирост производительности можно ожидать от SMB2.

Моя проблема просто, кажется, заключается в отсутствии опыта и, что более важно, перспективы с точки зрения того, что является, а что нет, разумными скоростями сети. Может ли кто-нибудь помочь поделиться контекстом / перспективой?

Математическая формула, о которой вы говорите, на самом деле является способом определения наиболее эффективных настроек размера окна передачи для TCP, а не фактической доступной полосы пропускания. TCP использует механизм, называемый скользящими окнами, который позволяет регулировать скорость передачи в зависимости от состояния сети. Идея состоит в том, что передатчик TCP будет отправлять все больше и больше данных, не требуя подтверждения от получателя. При потере данных объем данных, отправляемых между подтверждениями, уменьшается, что также снижает эффективную пропускную способность.

Рассматриваемая формула фактически определяет идеальный размер этого окна передачи TCP на основе задержки и задержки приема-передачи между данной парой хостов. Идея состоит в том, чтобы размер окна был таким, чтобы объем данных «в полете» соответствовал так называемому произведению задержки полосы пропускания. Например, если у вас есть 50 мегабит в секунду (6,25 мегабайта) и средняя задержка приема-передачи 100 мс, то у вас будет 6,25 * 0,1 = 625 килобайт данных. Это будет значение, которое TCP будет согласовывать (при правильной настройке). Поскольку характеристики задержки и пропускной способности ваших ссылок меняются, то меняется и размер окна.

Что вам нужно, так это инструмент управления пропускной способностью, такой как iperf (бесплатно), работающий как в источнике, так и в разных местах назначения. Это должно дать вам представление о фактической возможной пропускной способности (независимо от других приложений), а также дать некоторое представление о задержке. Запуск расширенного эхо-запроса между хостами также даст общее представление о характеристиках задержки. Когда у вас есть эти данные, вы будете лучше понимать, что вы должны видеть в плане пропускной способности.

Кстати - использование любого оптимизатора LAN часто включает сжатие данных, оптимизацию TCP, кеширование и т. Д. Хотя это удобно, оно может скрыть природу базовых ссылок. Как только вы получите представление о необработанной полосе пропускания / задержке (и, возможно, потере пакетов), вы можете внимательнее присмотреться, чтобы убедиться, что ваши различные хосты настроены для надлежащего использования доступной полосы пропускания.

Здесь много комментариев, и пользователи дали отличные советы. Некоторые из них попали довольно близко к тому, что я искал, но мне также посчастливилось встретиться с ветераном Сети из нашей компании, который помог прояснить ситуацию. Я думал, что опубликую здесь свои выводы / понимания для других. Пожалуйста, не стесняйтесь поправлять меня, если что-то из этого кажется неправильным:

1.) Максимальная пропускная способность одного сеанса TCP с задержкой 72 мс и окном 64 КБ составляет около 0,8 МБ / с, что делает эту скорость разумной для однопоточных копий одиночных сеансов, подобных тем, которые мы выполняли с помощью robocopy.

2.) Эта разница в скорости, по-видимому, сводится к эффективности метода передачи. В нашем случае мы использовали Robocopy и Repliweb. Я обнаружил, что robocopy использует один сеанс TCP, тогда как Repliweb может открывать несколько сеансов для отправки данных.

3.) Исследование, проведенное на веб-сайте Microsoft, действительно показывает, что SMB2 значительно увеличивает производительность по сравнению с SMB1. Тем не менее, в некоторых случаях возникали проблемы с тем, как ОС согласовывает, какой протокол использовать, поэтому нужно знать как: a.) Какие случаи SMB2 может и b.) действительно ли используется SMB2 на основе сетевых захватов.

В настоящее время похоже, что Wire-shark может определять использование протокола SMB2.

Надеюсь, это поможет. Опять же, мое понимание здесь довольно элементарно, не стесняйтесь расширяться.

Попробуйте "ping -l 8092" или FTP или HTTP, чтобы проверить, не проблема ли это SMB.

Прежде всего: какие носители вы используете для подключения компьютеров? Что нам "100mpbs"? Ethernet? Вы не можете использовать его для «географически распределенных» компьютеров, верно?

В случае «vpn over Internet» маршрутизаторы между вашими компьютерами могут использовать разные ссылки: один быстрый, другой - нет. Они могут выбрать ссылку по многим параметрам.

Опишите свою сеть.

Это также может быть проблемой MTU: несколько ссылок могут иметь разные MTU.