На скорость работы приложений может влиять очень много факторов. Один из основных - для передачи данных многие приложения используют протокол TCP, в котором есть ряд параметров, которые могут существенно влиять на скорость его работы, например размер "окна". Данный параметр определяет, сколько данных может передать отправитель без получения подтверждения об их приеме от получателя. В идеальном случае, "окно" должно расти до тех пор, пока не достигнет максимально возможного для данного канала размера. Но в каждой операционной системе этот алгоритм реализован по-разному. В Windows'XX, например, стек TCP/IP оптимизирован под применение в локальных сетях, со скоростями ~10Mbit/s и задержками ~1-70ms. Если RTT превышает указанный промежуток, размер "окна" не увеличивается, а значит остается значение по умолчанию (например MS - 8KB, Solaris - 24KB и т.д.). Даже если "окно" увеличивается, то в Windows 2000 max TcpWindowsSize равно 17520 байт, что при задержке Москва - Владивосток в ~130ms дает максимально возможную скорость передачи для одной TCP сессии между Window's машинами ~135КБ/c(~1Мбит/c). С помощью настроек в реестре Windows можно несколько улучшить ситуацию, но, к сожалению, незначительно. В UNIX-системах ситуация немного лучше. Тестирование с помощью программы Iperf и использование различных ключей позволяют уйти от параметров по умолчанию для конкретной ОС и протестировать реально возможную пропускную способность каналов. В ответе на следующий вопрос приводится методика тестирования с использованием программы Iperf.
© ttk.ru