Поиск и устранение неисправностей Dante

Проблема: Щелчки и хлопки

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

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

Как работает синхронизация времени в Dante: В Dante используется протокол точного времени, или PTP. PTP - это основанный на стандартах метод достижения очень жесткой временной синхронизации устройств в сети.

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

Как же все устройства одновременно "видят" лидера часов PTP? Ответ заключается в многоадресной рассылке, которая позволяет PTP-лидеру отправлять сообщения о синхронизации всем устройствам Dante одновременно. Здесь же кроется и большая часть нашей проблемы.

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

Плохая конфигурация коммутатора № 1: неправильно включена многоадресная рассылка. Сетевой коммутатор, неправильно настроенный для обработки многоадресного трафика, может стать причиной сбоев в работе системы Dante. Обратите внимание, что неуправляемые коммутаторы всегда пропускают всю многоадресную рассылку, но управляемые коммутаторы содержат настройки, которые могут блокировать или ограничивать многоадресный трафик. Для решения этой проблемы обратитесь к документации по конфигурации коммутатора.

Неудачная конфигурация коммутатора № 2: энергоэффективный Ethernet. Во многих новых коммутаторах используются функции энергосбережения, получившие название "Энергоэффективный Ethernet". К сожалению, используемые методы автоматического закрытия портов часто создают проблемы для устройств, которые должны быть всегда доступны, например, для лидера часов PTP. Избегайте коммутаторов с такой функцией или отключите ее, если это возможно.

Плохая конфигурация коммутатора № 3: Плохая конфигурация IGMP snooping. Многие управляемые коммутаторы содержат важную функцию под названием IGMP, или Internet Group Management Protocol. Эта функция позволяет администратору разумно управлять многоадресным трафиком, чтобы он поступал только на те устройства, которые его запрашивают. К сожалению, на некоторых коммутаторах такая настройка может оказаться сложной и привести к потере трафика PTP. Обратитесь к производителю коммутатора за советом по правильной настройке IGMP.

Плохая конфигурация коммутатора № 4: разные марки коммутаторов используют IGMP вместе. Хотя IGMP основан на стандартах, конкретные реализации различаются в зависимости от производителя. Смешение сетевых коммутаторов разных марок в одной сети с IGMP может привести к неожиданным результатам, поскольку коммутаторы могут не договориться о том, что делать с IGMP-трафиком. В результате теряется синхронизация часов PTP и появляются писки и щелчки. Большинство сетевых экспертов рекомендуют использовать одного производителя для всех коммутаторов в системе, чтобы избежать этой проблемы.

Несоответствие версий IGMP (компьютеры Apple). Сетевые стандарты, увы, не совсем стандартны. Инженеры Apple интерпретируют стандарты таким образом, чтобы различать вариации версий IGMP, в то время как другие производители этого не делают. В результате при использовании программы Dante на Mac может пропасть многоадресный трафик, что приведет к сбою часов и пропадет звук.

К счастью, эта проблема касается только встроенных Ethernet-портов компьютеров Apple Mac. Использование любого Ethernet-адаптера (USB или Thunderbolt) устраняет эту проблему и позволяет PTP работать как положено при использовании таких программных продуктов, как Dante Virtual Soundcard.

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

Если вы используете Dante на микшерном пульте наряду с несетевыми цифровыми аудиоустройствами, такими как MADI, необходимо использовать общий тактовый генератор, который может работать с обоими одновременно. Для этого можно выбрать: 1) использовать внутренние часы консоли для всего, или 2) использовать часы Dante для всего.

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

Пример: микшерный пульт настроен на использование своих внутренних часов. Интерфейс Dante настроен на использование часов Dante PTP. Оба часа могут быть очень близки по времени, но они не одинаковы. В результате звук будет прерывистым, так как часы дрейфуют и временно не синхронизируются.

Решение, к счастью, простое. Проверьте настройки микшерного пульта и выберите источник синхронизации, Dante или внутренний. В Dante Controller установите параметр "Enable Sync to External" в соответствии с настройками консоли; включите параметр, чтобы использовать часы консоли, или отключите параметр, чтобы использовать синхронизацию Dante.

Проблема: Ничего не отображается

Итак, вы только что настроили свою систему Dante. Вы подключили устройства с поддержкой Dante к сетевым коммутаторам, возможно, произвели некоторые настройки коммутаторов, а затем запустили Dante Controller и увидели... ничего. Или, возможно, вы видите несколько устройств, но ничего не работает. Это не очень удобно. Что же происходит?

Давайте узнаем немного о Dante Automatic Discovery и разберемся с этим.

Основы Dante Automatic Discovery: Dante спроектирован таким образом, что в большинстве случаев простое подключение устройств Dante к той же сети, что и ПК с Dante Controller, приведет к появлению этих устройств в Dante Controller. Для этого каждое устройство Dante должно "объявить" о своем существовании в сети, чтобы все копии Dante Controller и любые другие устройства Dante могли его "услышать".

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

Существует 3 основных типа сетевого трафика:

  • Unicast - частное общение между устройствами, как письмо, отправленное одному человеку.
  • Широковещательная рассылка (Broadcast) - сообщение от одного до многих, которое должны получить все устройства, например, нежелательная почта, адресованная "жильцу".
  • Многоадресная рассылка (Multicast) - передача данных от одного устройства ко многим устройствам, только запрашивающим их, например, рассылка новостей многим адресатам, подписавшимся на нее.

Поскольку новое устройство Dante не может "знать", где находится Dante Controller, использование широковещательной или многоадресной рассылки имеет смысл в качестве метода обнаружения. Устройство отправляет сообщение, адресованное "всем", и ожидает ответа. Многоадресная рассылка ведет себя гораздо лучше, чем беспорядочная широковещательная, и поэтому именно ее использует Dante. Dante Controller прослушивает многоадресный трафик от устройств Dante, чтобы отобразить и использовать их.

Секретный соус в коммутаторе: Как подписчики на рассылку новостей являются частью какого-то списка, так и получатели многоадресного трафика. Когда отправляется многоадресное сообщение, устройства, которым нужен этот трафик, запрашивают его и становятся частью списка членов группы, находящегося на сетевом коммутаторе. Когда многоадресные сообщения поступают на коммутатор, он проверяет эти списки групп, чтобы узнать, какие устройства запрашивали данные. Эта технология группового членства называется IGMP (Internet Group Management Protocol).

Когда коммутатор объединяет отправителя данных с группой получателей, этот процесс называется snooping. Когда в сети несколько коммутаторов, все они должны быть согласны с этими многоадресными группами и, следовательно, должны координировать свое поведение IGMP. В противном случае часть трафика не попадет туда, куда должна.

Именно здесь и возникают проблемы с обнаружением Dante.

Ошибки обнаружения Dante - это ошибки многоадресной рассылки: Когда устройства Dante не появляются или появляются и не работают, это чаще всего связано с тем, что многоадресный трафик недоступен там, где он нужен. Что может привести к этому?

  • Неправильная конфигурация коммутатора. Настройка IGMP может быть сложной, и неопытные пользователи могут случайно настроить IGMP так, что он будет работать неправильно, не позволяя многоадресному трафику достигать контроллера Dante. Это самый распространенный случай, с которым мы сталкиваемся. Мы рекомендуем проводить тестирование с отключенными всеми ограничениями многоадресной рассылки.
  • Несколько коммутаторов разных брендов. Чтобы IGMP работал, все коммутаторы должны быть способны координировать информацию о группах IGMP. К сожалению, при использовании коммутаторов разных производителей это невозможно гарантировать. Для получения дополнительной информации обратитесь к производителям ваших коммутаторов. Использование коммутаторов одной марки часто позволяет избежать этой проблемы.
  • Путаница в версиях многоадресной рассылки. Существует несколько версий спецификаций многоадресной рассылки, и некоторые интерпретации могут препятствовать работе старых технологий с новыми устройствами. Хорошим примером этого являются встроенные порты Ethernet на компьютерах Apple, которые используют multicast v3 и не будут работать с устройствами, использующими multicast v2. Примечание: эту проблему легко решить, используя внешние адаптеры Ethernet вместо встроенных разъемов.
  • Устройства и компьютер с контроллером Dante не находятся в одной локальной сети. Если у вас есть сеть с несколькими подсетями, у вас есть несколько локальных сетей. Многоадресный трафик обычно не может проходить между подсетями или локальными сетями, поэтому для работы все устройства Dante должны находиться в одной локальной сети. Если маршрутизация между подсетями не осуществляется, то необходимо убедиться, что все IP-адреса уникальны и являются частью правильно определенного набора. Обычно это делается автоматически с помощью DHCP, но может быть источником сбоев при обнаружении Dante, если используются IP-адреса, назначенные вручную. Примечание: Dante Domain Manager позволяет передавать трафик Dante между подсетями.

Комментарии к статье