stringtranslate.com

Bonjour Прокси для сна

Служба Bonjour Sleep Proxy от Apple — это компонент с открытым исходным кодом [1] для сетей с нулевой конфигурацией , разработанный для снижения энергопотребления сетевых электронных устройств. [2] Он позволяет устройству, предоставляющему такие услуги, как общий доступ к файлам, общий доступ к принтерам или удаленный вход в систему , перейти в спящий режим, т. е. перейти в режим пониженного энергопотребления, при этом его услуги остаются доступными даже по всему миру, путем регистрации на прокси-сервере сна в локальной сети. Прокси-сервер сна продолжает как рекламировать услуги в локальной сети от имени хоста сна, так и прослушивать входящие соединения, независимо от того, доступны ли услуги только локально или через Интернет. Когда какое-либо устройство пытается использовать любую прокси-службу, прокси-сервер пробуждает спящее устройство, и служба работает так, как если бы спящее устройство оставалось полностью включенным.

Любое устройство, которое может выступать в качестве спящего прокси-сервера, объявляет об этом во всех локальных сетях, частью которых оно является. Устройство, предоставляющее сетевые услуги, такие как обмен файлами, когда его услуги не используются активно, может зарегистрировать свои услуги на доступном спящем прокси-сервере и спать до тех пор, пока одна из его услуг не понадобится. Спящий прокси-сервер продолжает объявлять услуги в Multicast DNS (mDNS) от имени спящего хоста. [2] Когда спящий прокси-сервер видит попытку использования любой такой услуги, он пробуждает спящий хост, и услуга продолжает работать нормально, а в случае SSH сервер с активным сеансом может зарегистрироваться на прокси, спать и быть разбуженным следующим полученным пакетом, продолжая тот же сеанс. [3] [2]

Apple называет эту службу Bonjour Sleep Proxy в своих документах поддержки. [4] Служба использует функцию Wake on Demand , впервые предложенную в Mac OS X Snow Leopard . [5]

Подробности

Протокол разрешения адресов и протокол обнаружения соседей

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

Когда из любой точки Интернета поступает пакет для проксируемой службы, спящий прокси-сервер пробуждает спящий хост и выполняет описанный выше процесс в обратном порядке, снова используя ARP и NDP для повторной привязки тех же IP-адресов к нужному компьютеру, и любая служба продолжает работу так, как будто сервер не находился в спящем режиме.

Это может показаться запутанным для сетевых администраторов, которые не ожидают такого поведения при смене MAC-адресов .

Wake-on-LAN и магические пакеты

Метод, с помощью которого спящий прокси-сервер пробуждает спящий хост, называется wake-on-LAN . Сетевой интерфейс спящего хоста с этой возможностью разбудит машину, когда получит определенную серию битов, а пакет, содержащий этот шаблон, является магическим пакетом . Ранние реализации Wake on LAN (WoL) требовали проводных сетевых интерфейсов. В беспроводном случае ( Wi-Fi ) пакет пробуждения отправляется через Wireless Multimedia Extensions (WMM). [5] В любом случае функция должна поддерживаться сетевым интерфейсом. Apple предоставляет инструкции по проверке совместимости с этой функцией для компьютеров Macintosh. [4]

Поддерживаемые услуги и примеры

Служба sleep proxy может рекламировать любые службы, поддерживаемые Bonjour , пока хост-компьютер спит. Вот некоторые примеры поддерживаемых служб: [4]

Реализации

Реализации в локальной сети можно увидеть с помощью браузера Bonjour .

Ссылки

  1. ^ Примечание: см. исходный код mDNSResponder на сайте www.macosforge.org, который включает полную реализацию DNS-SD/mDNS Sleep Proxy Service, доступную по лицензии Apache 2.0 Open Source.
  2. ^ abc Марк Крохмал (2010-03-23). ​​"Интернет-черновик: draft-cheshire-dnsext-multicastdns-11". Apple Inc. Получено 2010-05-30 .
  3. ^ Чешир, Стюарт (декабрь 2009 г.). «Понимание службы Sleep Proxy». Стюарт Чешир . Получено 2024-04-11 .
  4. ^ abcdef "Mac OS X v10.6: About Wake on Demand (Apple Article HT3774)". Apple. 2009-08-27 . Получено 2009-09-15 . Настройка Wake on Demand", "Настройка Bonjour Sleep Proxy
  5. ^ ab Glenn Fleishman (28.08.2009). "Wake on Demand позволяет Snow Leopard спать с одним открытым глазом". Macworld.com. Архивировано из оригинала 16.09.2009 . Получено 15.09.2009 . Как это работает", "Панель настроек энергосбережения
  6. ^ Всемирная конференция разработчиков Apple Inc. (WWDC) 2009, сессия 508, Zero Configuration Networking Using Bonjour "Архивная копия" (PDF) . Архивировано из оригинала (PDF) 2009-08-06 . Получено 2009-09-15 .{{cite web}}: CS1 maint: archived copy as title (link)

Внешние ссылки