Добрый день понятия

Добрый день комплект протоколов для нулевой конфигурации, объединяющейся в сеть по IP, который Apple представил IETF как часть продолжающегося процесса создания стандартов. В этом разделе описываются проблемы, который Добрый день решает и как он решает их.

Почему добрый день?

За прошлые два десятилетия компьютеры постепенно переходили далеко от специфичных для платформы протоколов, таких как AppleTalk, IPX и NetBIOS к Протоколу Интернета (IP). Большинство компьютеров и других сетевых устройств все использование TCP/IP для коммуникации. В том переходе, однако, одна часть функциональности была потеряна — возможность добавить устройства к локальной сети и затем соединиться с теми устройствами от компьютеров и другими устройствами в сети, всех с минимальной конфигурацией.

Для IP для работы каждому устройству нужен уникальный адрес, ли статически присвоенный или динамично присвоенный сервером DHCP. Динамично присвоенный адрес может измениться, таким образом, без Добрый день, принтеры и другие устройства должны были быть вручную сконфигурированы со статическим адресом так, чтобы компьютеры в сети могли достигнуть их. Затем администратор сети должен был сконфигурировать сервер DNS так, чтобы пользователи компьютера не должны были соединяться с принтером IP-адресом. Таким образом на вид незначительная задача потребовала значительной конфигурации. Поскольку люди, не соответствующие традиционной роли администратора сети часто, устанавливают сети — семьи, подключающие их ноутбуки к Интернету по совместно используемому маршрутизатору, например — что уровень конфигурации просто не практичен.

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

Для поддержки этого людям нужен простой и надежный способ сконфигурировать и просмотреть для служб по сетям IP. Они хотят обнаружить доступные службы и выбрать один из списка, вместо того, чтобы иметь необходимость знать имя каждой службы или IP-адрес заранее. Это находится в общем интересе для IP для имения этой возможности. Это - точно Добрый день обеспечивающая возможность.

Нулевая конфигурация: пример

Нулевая конфигурация сети IP содержит большую сумму потенциала. Рассмотрите повседневную задачу печати. Как только принтер сконфигурирован на Вашем компьютере или устройстве на iOS, это - просто вопрос выбора Команды печати приложения.

Возьмите свой ноутбук к компании клиента или дому соседа, и попытайтесь распечатать что-то. Если у них есть принтер, поддерживающий Добрый день протоколы, печать так же проста, как это было в Вашей локальной сети. Для печати подключите ноутбук к точке доступа Wi-Fi клиента и запустите ноутбук. Или запустите свой ноутбук, и он немедленно находит домашнюю беспроводную сеть Вашего соседа. Так или иначе Ваш ноутбук автоматически обнаруживает любые доступные принтеры. Вы открываете документ, выбираете Команду печати, и каждый доступный принтер появляется в диалоговом окне Печати. Вы выбираете принтер, нажимаете Print и печать документа.

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

Этот сценарий проиллюстрирован на рисунке 1-1. На шаге 1 Вы открываете свой ноутбук в доме Вашего соседа, и ноутбук или получает адрес из сервера DHCP в маршрутизаторе или, в отсутствие сервера DHCP, присваивает себя доступный локальный адрес. На шаге 2 сеть запрашивается для доступных принтеров так, чтобы при открытии диалогового окна Печати был перечислен принтер соседа. Наконец, на шаге 3, Вы включаете музыкальное совместное использование на своем компьютере, и компьютер Вашего соседа видит его и подключения.

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

Рисунок 1-1  типичная нулевая конфигурация сетевой сеанс

Что добрый день?

Добрый день предложение Apple по нулевой конфигурации, объединяющейся в сеть по IP. Добрый день выходит из работы Рабочей группы ZEROCONF, части Инженерной группы по развитию интернета (IETF). Требования Рабочей группы ZEROCONF и предлагаемые решения для нулевой конфигурации, объединяющейся в сеть по IP по существу, покрывают три области:

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

Добрый день позволяет поставщикам услуг, производителям оборудования и прикладным программистам поддерживать протокол единой сети — IP — привнося нечто новое в простоту использования.

Пользователи сети больше не должны присваивать IP-адреса, присваивать имена хоста, или даже вводить на имена к службам доступа в сети. Пользователи просто просят видеть, какие сетевые службы доступны, и выбирают из списка.

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

Обращение

Проблема рассмотрения решена самоприсвоенным локальным для ссылки обращением. Локальное для ссылки обращение использует диапазон адресов, зарезервированных для локальной сети, обычно маленький LAN или сегмент одиночной LAN. С этой целью спецификация IPv6 включает самоприсвоенное локальное для ссылки обращение как часть протокола. Основная проблема решения в сетях нулевой конфигурации переоснащала эту возможность к IPv4.

В IPv4 самоприсвоенное обращение работает путем выбора случайного IP-адреса в локальном для ссылки диапазоне и тестирования его. Если адрес не используется, это становится Вашим локальным адресом. Если это уже используется, компьютер или другое устройство выбирают другой адрес наугад и попробовали еще раз.

Локальное для ссылки обращение в IPv4 и IPv6 поддерживается в большинстве главных операционных систем. Производители оборудования должны реализовать локальное для ссылки обращение на своих устройствах для получения полного преимущества Добрый день.

Любой пользователь или служба на компьютер или устройство на iOS, поддерживающее локальные для ссылки преимущества обращения от этой функции автоматически. Когда Ваш главный компьютер встречается с локальной сетью, он находит неиспользованный локальный адрес и принимает его. Никакое действие с Вашей стороны не требуется.

Именование

Предлагаемое решение для преобразования имен в адреса в локальной сети использует Многоадресную передачу DNS (mDNS), в котором запросы формата DNS отправляются по локальной сети с помощью IP-пакета многоадресного. Поскольку эти запросы DNS отправляются в групповой адрес, никакой единственный сервер DNS с глобальным знанием не требуется, чтобы отвечать на запросы. Каждая служба или устройство могут обеспечить свою собственную возможность DNS — когда это видит запрос для своего собственного имени, это предоставляет ответу DNS свой собственный адрес.

Добрый день идет немного далее. Это включает респондента, обрабатывающего запросы mDNS для любой сетевой службы на главном компьютере или устройстве на iOS. Это уменьшает Ваше приложение потребности интерпретировать и ответить на сообщения mDNS. Путем регистрации службы, Добрый день mDNSResponder демон автоматически распространяет доступность службы так, чтобы любые запросы для имени были направлены к корректному IP-адресу и номеру порта автоматически.

Добрый день также предоставляет встроенную поддержку для порта NAT, отображающего протокол (NAT-PMP). Если восходящий маршрутизатор поддерживает этот протокол, OS X и приложения для iOS могут создать и уничтожить отображения порта, чтобы позволить узлам с другой стороны брандмауэра соединяться с предоставленными услугами. (Отображения порта NAT описаны далее в Брандмауэрах и Преобразовании сетевых адресов в Сетевом Обзоре.)

Для преобразования имен в адреса для работы должным образом уникальное имя в локальной сети необходимо. В отличие от стандартных имен хоста DNS, локальное имя только имеет значение на локальном сетевом сегменте или сегменте LAN. Можно самоприсвоить локальное имя тем же путем, Вы самоприсваиваетесь, локальный адрес — выбирают тот; если это уже не используется, это Ваше:

  • Производители оборудования определяют, используется ли их выбранное имя уже при наличии их устройства, отправляют запрос mDNS за тем именем и ищущий любой ответ. Если существует ответ, устройство должно выбрать другое имя. Устройства без пользовательского интерфейса добавляют инкрементно большее число к имени по умолчанию, пока имя не уникально. Например, если принтер с именем по умолчанию XYZ-LaserPrinter.local присоединения к локальной сети с двумя другими идентичными принтерами уже установили, она тестирует на XYZ-LaserPrinter.local, тогда XYZ-LaserPrinter-2.local, тогда XYZ-LaserPrinter-3.local, который не использован и становится его именем.

  • Программные сервисы обеспечивают имя, когда они регистрируются в Добрый день. Если предоставленное имя уже будет использоваться, то Добрый день автоматически переименует Вашу службу для Вас по умолчанию.

В OS X пользователи могут установить имя хоста для своих компьютеров через установку Local Hostname в области Sharing Установок системы. (В iOS имя хоста сгенерировано автоматически и не конфигурируемо.) Это имя хоста может использоваться где угодно, стандартное имя хоста DNS используется — веб-браузеры, инструменты командной строки, и т.д. Чтобы указать к системе, что имя является локальным именем хоста, добавьте точку (.) и local. к имени хоста; Steve.local. пример локального имени хоста.

Например, если пользователь вводит steve.local. в веб-браузер это говорит системе многоадресно передавать запрос на steve в локальной сети вместо того, чтобы отправить его в стандартный сервер DNS. Если называют Добрый день поддерживающий компьютер steve находится в локальной сети, браузер пользователя отправляется корректный IP-адрес за нею. Это позволяет пользователям получать доступ к локальным узлам и службам без стандартного сервера DNS.

Для получения дополнительной информации см. Доменные Соглашения о присвоении имен.

Открытие службы

Заключительный элемент Добрый день является открытием службы. Открытие службы позволяет приложениям находить все доступные экземпляры определенного типа службы и вести список именованных служб и номеров портов. Приложение может тогда разрешить имя хоста службы к списку IPv4 и адресов IPv6, как описано в Именовании.

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

Открытие службы в Добрый день выполняется путем «просмотра». Запрос mDNS отослан для данного типа службы и домена и любого ответа служб соответствия с их именами. Результатом является список доступных служб для выбора из.

Это очень отличается от традиционной центральной устройством идеи сетевых служб. Для кого-то, кто имеет дело с серверами, сетевыми устройствами и сетевым программированием, просто привыкнуть думать о службах с точки зрения физического оборудования. В этом центральном устройством представлении сеть состоит из многих устройств или узлов, каждого с рядом служб. Например, сеть могла бы состоять из машины сервера и нескольких клиентских машин. В центральной устройством схеме просмотра клиент запрашивает сервер для того, какие службы он выполняет, возвращает список (FTP, HTTP, и т.д.), и решает который служба использовать. Интерфейс отражает способ, которым организована физическая система. Но это не обязательно, что пользователь логически хочет или нуждается.

Пользователи обычно хотят выполнить определенную задачу, не запросить список устройств для обнаружения то, что выполняют службы. Это имеет намного больше смысла для клиента задать единственный вопрос: “Какие службы печати доступны?”, чем запросить каждое доступное устройство с вопросом, “Какие службы Вы выполняете?” и отсейте через результаты, ища принтеры. Центральный устройством подход не только длителен, он генерирует огромную сумму сетевого трафика, большую часть из него бесполезный. Центральный службой подход отправляет единый запрос, генерируя только соответствующие ответы.

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

Добрый день получает представление для обслуживания широкого круга запросов. Запросы сделаны согласно типу необходимой службы, не узлы если их. Приложения хранят имена экземпляра службы, не адреса, поэтому если IP-адрес, номер порта или даже имя хоста изменились, приложение может все еще соединиться. Путем концентрации на службах, а не устройствах, опыт просмотра пользователя сделан более полезным и безаварийным.

Как добрый день сокращает наверху

Обращение без серверов, именование и открытие службы имеют потенциал для создания существенного количества избыточного сетевого трафика, но Добрый день предпринимает много шагов для сокращения этого трафика до минимума. Это позволяет Добрый день достигать простоты использования AppleTalk при предотвращении любой ненужной «болтливости».

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

Кэширование

Добрый день использует кэш Многоадресной передачи записи DNS, чтобы препятствовать тому, чтобы узлы запросили информацию, которую уже требовали. Например, когда один узел запрашивает, скажем, список спулеров печати LPR, список принтеров возвращается через многоадресную передачу, таким образом, все локальные узлы видят его. В следующий раз, когда узлу нужен список спулеров печати, он уже имеет список в своем кэше и не должен переиздавать запрос. Многоадресная передача респондент DNS ответственна за поддержание кэша; разработчики приложений не должны делать ничего для поддержания его.

Утаивание двойных ответов

Для предотвращения повторенных ответов на тот же запрос запросы службы Bonjour включают список известных ответов. Например, если узел просматривает для принтеров, первый запрос не включает служб печати и получает, скажем, двенадцать ответов от доступных серверов печати. В следующий раз запросы узла для служб печати, запрос включает список известных серверов. Серверы печати уже в списке не отвечают.

Добрый день подавляет двойные ответы в другом отношении. Если узел собирается ответить и замечает, что другой узел уже ответил той же информацией, узел подавляет свой ответ.

Разработчики приложений не должны принимать меры для подавления двойных ответов. Добрый день дескрипторы копируют утаивание ответа.

Экспоненциальная задержка и объявление службы

Когда узел просматривает для служб, он постоянно не отправляет запросы, чтобы видеть, доступны ли новые службы. Вместо этого узел выпускает начальный запрос и отправляет последующие запросы экспоненциально менее часто, например: после 1 секунды, 3 секунд, 9 секунд, 27 секунд, и т.д., до максимального интервала одного часа.

Это не означает, что может принять час для браузера для наблюдения новой службы. Когда служба запускает в сети, она объявляет о своем присутствии несколько раз с помощью подобного алгоритма экспоненциальной задержки. Таким образом, сетевой трафик для объявления службы и открытия сведен к минимуму, но новые службы замечены очень быстро.

О службах, работающих на Добрый день оборудованном узле, объявляют автоматически, когда они регистрируются в mDNSResponder демоне. Службы, работающие на других аппаратных средствах, такие как принтеры, должны реализовать объявление службы с экспоненциальной задержкой, чтобы в полной мере воспользоваться Добрый день.