Что на самом деле делает Low Data Mode на Mac
Low Data Mode на Mac сообщает macOS и запущенным на нем приложениям уменьшить использование сети на одном конкретном соединении. Когда он включен, macOS приостанавливает автоматические обновления программного обеспечения и фоновые загрузки App Store, Photos в iCloud перестает синхронизировать, активность iCloud Drive и резервного копирования замедляется, фоновые службы Apple становятся тихими, а видеозвонки, такие как FaceTime, могут снижать битрейт. Он настраивается для каждой сети отдельно, а не для всей системы, поэтому ваш Mac может считать точку доступа iPhone дорогой, продолжая при этом считать домашний Wi-Fi безлимитным.
Стоит точно определить категорию, к которой принадлежит эта функция. Low Data Mode — не ограничитель пропускной способности, не лимитатор трафика, не брандмауэр и не счетчик данных. Он ничего не ограничивает, ничего не считает, и никогда не скажет вам, что вы приближаетесь к лимиту, потому что у него нет понятия о лимите. Это один булевский флаг, привязанный к сети, и вся его задача — переносить отложенную работу на более позднее, более дешевое соединение.
Это объяснение важно, потому что оно раскрывает как сильные стороны, так и слабости. Сильные стороны — это мгновенность, бесплатность, отсутствие необходимости стороннего программного обеспечения и отсутствие снижения производительности. Собственные сервисы Apple — крупнейший источник неожиданного фонового трафика на типичном Mac, и Low Data Mode работает с ними напрямую и надежно. Одно отложенное обновление macOS может занимать несколько гигабайт, которые никогда не выйдут за пределы вашего лимита данных.
Слабость обусловлена той же конструкцией. Поскольку механизм — это флаг, а не фильтр, все, что находится ниже по цепочке, — это добровольно. Мы объясним, почему это важно, в разделе три, но пока запомните, что изменение режима — это реакция на флаг, выбранная в собственном коде Apple, и все, что зависит от этого флага, — это добровольное действие.
Где включить Low Data Mode
Для Wi-Fi откройте Системные настройки, выберите Wi-Fi в боковой панели, нажмите кнопку Подробнее рядом с сетью, к которой вы подключены, и включите Low Data Mode в появившейся панели. В более старых версиях, использующих Системные настройки, путь аналогичен: Сеть, затем Wi-Fi, затем Дополнительно или Подробнее в зависимости от версии. Эта настройка появилась на Mac с macOS Monterey, ранее она существовала на iOS с iOS 13.
Важно, что переключатель принадлежит сети, а не самому Mac. macOS сохраняет его для конкретного SSID и запоминает, поэтому включение Low Data Mode на точке доступа iPhone не влияет на домашние и офисные сети. Обмен на этом уровне — это компромисс: обычно нужно быть подключенным к сети или иметь ее сохраненной в списке известных сетей, чтобы настроить. Если вы путешествуете и подключаетесь к новой точке доступа каждый раз, вам нужно помнить о повторной настройке для каждого нового SSID.
Личный hotspot с iPhone отображается macOS как обычная Wi-Fi сеть, и настройка происходит в том же месте. Если вы используете USB-тетеринг, найдите его в Системных настройках, затем в разделе Сеть, там — интерфейс iPhone USB, где есть аналогичная опция. Проводной Ethernet обычно не предлагает такой настройки, поскольку предполагается, что фиксированное соединение не лимитировано.
Визуального подтверждения включения нет. Нет значка, пункта меню или уведомления. Единственный способ — вернуться к тому же окну с деталями и проверить переключатель. Это, пожалуй, самая большая проблема удобства использования: настройка, которая невидима после выхода из окна настроек, легко забывается, и пользователь не отключает ее, когда возвращается к быстрому соединению, удивляясь, почему его фотогалерея перестала обновляться.
Еще один важный момент — Low Data Mode на iPhone и Low Data Mode на Mac — это полностью отдельные настройки на разных устройствах. Включение его на телефоне, предоставляющем точку доступа, ограничивает только трафик этого телефона. Оно никак не влияет на Mac, подключенный к нему.
Что действительно меняется, когда это включено
Самый крупный и наиболее надежный эффект проявляется при обновлениях системы. При активном Low Data Mode macOS не будет скачивать обновления системы в фоновом режиме, а App Store откладывает автоматические обновления приложений и фоновую загрузку. На Mac, который был офлайн несколько недель, это обычно самое большое сбережение, потому что обновление macOS или несколько крупных обновлений приложений значительно превышают все остальные действия, которые вы, скорее всего, выполняете через точку доступа.
iCloud — вторая важная область. iCloud Photos приостанавливает синхронизацию, что означает, что новые снимки, сделанные на вашем телефоне, не будут передаваться на Mac, а редактирования, выполненные на Mac, будут поставлены в очередь, а не загружены. iCloud Drive откладывает неотложную синхронизацию, а активность, связанная с резервным копированием, уменьшается. Это действительно полезное поведение и также самое вероятное, что удивит людей, поскольку приостановленная синхронизация выглядит так же, как и сломанная. Если коллега говорит, что файл не отображается, проверьте, находится ли Mac в сети Low Data Mode, прежде чем что-либо диагностировать.
Другие фоновые службы Apple следуют той же схеме. Функции, связанные с Continuity, и различные периодические задачи, которые Apple выполняет от вашего имени, уменьшают свою активность, Safari сокращает предварительную загрузку, а FaceTime принимает более низкий битрейт видео, чтобы не перегружать слабое соединение. Приложения сторонних разработчиков, построенные на фреймворках Apple, могут видеть снижение фонового планирования как побочный эффект, потому что система менее склонна пробуждать их для сетевых задач по возможности.
Также важно ясно понимать, что не меняется. Low Data Mode никогда не мешает запросам, которые вы делаете сами. Откройте страницу — она загрузится полностью. Начните загрузку — она загрузится. Откройте потоковое приложение — оно будет транслировать в качестве, которое выбрало приложение. Ничего не сжимается, ничего не проксируется, и изображение не уменьшается по пути к вам. Режим влияет только на работу, которую система выполняла бы сама по себе.
И поскольку отсутствует слой учета, вы не получаете обратную связь о результате. Low Data Mode не сможет сказать вам, что он сэкономил вам два гигабайта, потому что он никогда ничего не измерял. Он принял решения по-другому и продолжил работу. Для многих это вполне достаточно. Для тех, кто действительно работает с лимитом данных, отсутствие чисел — это тот момент, когда встроенная функция исчерпала свой ресурс.
Честная часть: это подсказка, а не принуждение
Под переключателем Low Data Mode скрыт рекомендательный флаг. macOS отмечает сетевой путь как ограниченный и передаёт это приложениям через Network framework: путь сообщает isConstrained, соединения можно настроить через NWParameters так, чтобы отказываться от ограниченных путей, а URLSession предлагает переключатель для каждого запроса, чтобы разработчик мог указать, что конкретная передача не должна выполняться по дорогой сети. macOS честно и последовательно устанавливает этот флаг. Что он не делает — так это не контролирует сокет.
Последствие прямое. Приложение, которое никогда не читает этот флаг, полностью на него не реагирует. Нет уровня ядра, нет формирования трафика, нет слоя принуждения, перехватывающего запрос от приложения, которое не выбрало опцию. Если разработчик никогда не писал три строки кода, проверяющие, ограничен ли путь, его программа будет вести себя на вашем платном hotspot так же, как и на гигабитном оптоволокне.
На практике это охватывает большую часть программного обеспечения, которое люди действительно используют. Браузер вроде Chrome, клиент синхронизации вроде Dropbox, Docker, скачивающий многогигабайтный слой образа, лаунчер игр, применяющий патч, сторонний агент резервного копирования, запускающий плановый прогон, или Electron‑приложение, проверяющее обновления при запуске. Ни одно из них не обязано смотреть на флаг, многие этого не делают, и ни одно из них не сообщит вам об этом. Сервисы Apple соблюдают Low Data Mode, потому что Apple их так написала. Все остальные полагаются на честное поведение.
Это оправданный выбор дизайна, а не халатность. Приложение — единственная сторона, которая знает, какие из его передач можно отложить, а какие необходимы, и система, которая молча блокировала бы трафик, ломала бы ПО в трудно диагностируемые способы. Кооперативная сигнализация даёт лучшее поведение, чем грубое блокирование, когда все сотрудничают.
Проблема в том, что происходит, когда они этого не делают. Гарантия распределена между каждым разработчиком, чей код исполняется на вашей машине, вы доверяете каждому из них по отдельности и не можете проверить результат. Режим отказа также молчалив: ничего не выдает ошибок, ничего не вызывает уведомлений, ничего не появляется в журнале, который вы бы посмотрели. Вы узнаёте об этом, когда ваш оператор присылает сообщение о расходовании трафика. Именно этот пробел закрывает per-app enforcement, и именно поэтому такие инструменты, как NetMute, работают на сетевом уровне, а не полагаются на добрую волю.
Закрытие разрыва с помощью принудительного применения правил для каждого приложения
Альтернативный подход — перестать просить приложения вести себя определённым образом и начать принимать решения за них. NetMute — это брандмауэр и монитор трафика для macOS, который применяет правила на сетевом уровне, что означает, что сотрудничество приложения не требуется, и его мнение не учитывается. Если правило говорит, что приложению не разрешено использовать сеть, оно её не использует, независимо от того, слышал ли его разработчик когда-либо о API ограниченного пути.
Это делает возможным реализовать несколько функций, которых структурно не может обеспечить Low Data Mode. Вы можете установить ежедневные или месячные лимиты данных для каждого приложения, а также глобальный лимит для всего Mac, получать уведомление, когда приложение превышает выбранный вами порог, и автоматически блокировать его при достижении ста процентов лимита. Лимиты хранятся для каждого сетевого профиля, поэтому приложение может иметь строгий лимит на вашем точке доступа и не иметь лимита дома, а профили переключаются автоматически в зависимости от SSID Wi-Fi, к которому вы подключаетесь. Защита точки доступа решает неловкую задачу с captive-portal, когда сеть должна быть достаточно доступной для входа, но не настолько открытой, чтобы позволить любому фоновому процессу работать без ограничений.
Повседневная часть — это монитор трафика в реальном времени для каждого приложения, показывающий, какой процесс передает что, с возможностью блокировки одним кликом и временными правилами, которые автоматически истекают, если вы хотите отключить что-то на следующий час, а не навсегда. Он отвечает на вопрос, который оставляет без ответа Low Data Mode: не только о том, просили ли приложения вести себя аккуратно, но и о том, сколько каждое из них реально отправило.
Обоснованный вывод — эти две функции дополняют друг друга, а не конкурируют. Включите Low Data Mode. Он ничего не стоит, хорошо работает с трафиком, которым управляет Apple, и собственные сервисы Apple действительно составляют значительную часть фонового использования. Затем добавьте принудительное применение правил для программного обеспечения, которое никогда не соглашалось на такие условия, чтобы ваш лимит данных зависел от правила, которое вы установили, а не от решения разработчика о проверке обновлений три года назад.