Программная проблема нового MacBook Air искусственно ограничивает скорость передачи данных по 802.11ac

В своем обширном обзоре нового MacBook Air 2013 года AnandTech отмечает проблему с новыми возможностями Wi-Fi 802.11ac машины, которая, по их словам, ограничивает потенциал более быстрого Wi-Fi чипа. В то время как им удалось получить в среднем 533 Мбит/с с использованием инструмента сетевого тестирования iPerf, Anand обнаружил, что реальная скорость передачи файлов составляет всего 21,2 МБ/с или 169,6 Мбит/с:

Я отключил весь другой беспроводной интернет в моем офисе. Никакой разницы. Я менял кабели Ethernet, пробовал другие Mac, пытался копировать с ПК, даже пытался копировать небольшие файлы – ничего из этого не помогло. В лучшем случае я видел только 21,2 МБ/с по 802.11ac. Я перепроверил свои данные iPerf. 533 Мбит/с. Происходило что-то странное. Я подключил адаптер Apple Thunderbolt Gigabit Ethernet и увидел 906 Мбит/с, ясно, что источник и MacBook Air были способны на высокоскоростную передачу. То, что я попробовал дальше, дало мне некоторое понимание того, что происходит. Я настроил веб- и FTP-серверы на MacBook Air и передавал файлы таким образом. Я не получил 533 Мбит/с, но преодолел 300 Мбит/с. По какой-то причине копирование через AFP или SMB-шары было ограничено гораздо меньшей производительностью. Это была проблема протокола.

Согласно обзору, проблема, вероятно, заключается в сетевом стеке OS X, который по какой-то причине искусственно ограничивает возможности 802.11ac:

Размер окна TCP определяет максимальный объем данных, который может находиться в полете до получения подтверждения. Современные реализации TCP поддерживают динамическое масштабирование окна TCP с целью оптимизации для интерфейсов с более высокой пропускной способностью… OS X не масштабировала размер окна TCP за пределы 64 КБ, что ограничивает производительность немного выше того, что я мог получить по 5 ГГц 802.11n на MacBook Air. Интересно, что лучшую производительность можно получить через HTTP или FTP, но ни в одном из случаев OS X не масштабировала размер окна TCP до 256 КБ – тем самым искусственно ограничивая 802.11ac.

К сожалению, AnandTech не смог найти обходного пути для решения проблемы, а последующие сообщения от других подтвердили, что он не единственный, кто сталкивается с этой проблемой. Также это не то, что, похоже, исправлено в текущей сборке OS X Mavericks для разработчиков. Хорошая новость в том, что Apple, вероятно, сможет исправить эту проблему для первых покупателей нового MacBook Air в будущем обновлении программного обеспечения.

Дальнейший анализ от ArsTechnica показал, что 802.11ac, в отличие от OS X, работал должным образом под Windows в Boot Camp, показывая скорость передачи данных примерно на 218 процентов выше, чем в OS X.