Часто задаваемые вопросы #
Почему WebRTC использует UDP?
Обход NAT требует использования UDP. Без обхода NAT установление однорангового P2P-соединения было бы невозможно. UDP не обеспечивает “гарантированную доставку”, как TCP, поэтому WebRTC реализует её на уровне пользователя.
Подробнее смотрите в разделе Подключение.
Сколько каналов данных я могу иметь?
65534 канала, так как идентификатор потока имеет 16 бит. Вы можете закрывать и открывать новые каналы в любое время.
Налагает ли WebRTC ограничения пропускной способности?
Как каналы данных, так и RTP используют контроль перегрузки. Это означает, что WebRTC активно измеряет вашу пропускную способность и пытается использовать оптимальное количество. Это баланс между отправкой максимально возможного объема данных без перегрузки соединения.
Могу ли я отправлять бинарные данные?
Да, вы можете отправлять как текстовые, так и бинарные данные через каналы данных.
Какую задержку можно ожидать с WebRTC?
Для немного настроенных медиа можно ожидать задержку менее 500 миллисекунд. Если вы готовы настраивать или жертвовать качеством ради задержки, разработчики добивались задержки менее 100 миллисекунд.
Каналы данных поддерживают опцию “частичной надежности”, которая может уменьшить задержку, вызванную повторной передачей данных по ненадежному соединению. При правильной настройке было показано, что это превосходит TCP TLS-соединения.
Зачем нужна внеочередная доставка для каналов данных?
Когда более новая информация делает старую устаревшей, например, информация о положении объекта, или когда каждое сообщение независимо от других и нужно избежать задержки блокировки первого в очереди.
Могу ли я отправлять аудио или видео через канал данных?
Да, вы можете отправлять любые данные через канал данных. В случае браузера вы будете сами отвечать за декодирование данных и передачу их медиаплееру для воспроизведения, в то время как при использовании медиаканалов все это происходит автоматически.