Нужен ли WebRTC сервер?

У меня простой вопрос

на основе этой ссылки

WebRTC

WebRTC (веб-коммуникации в реальном времени) — это отраслевая попытка улучшить модель просмотра веб-страниц. Это позволяет браузерам напрямую обмениваться мультимедиа в реальном времени с другими браузерами в одноранговой сети через безопасный доступ к периферийным устройствам ввода, таким как веб-камеры и микрофоны.

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

и я думал, что webRTC такой, но потом Я видел этот урок

Приложение для чата WebRTC

Он создает сервер Node.js и даже использует WebSocket в своем приложении. Меня смущает определение, что технология WebRTC должна работать только с одноранговыми узлами, но сейчас в этом руководстве используется сервер. Я хочу знать, в чем именно разница между связью клиент-сервер в реальном времени и WebRTC.

сервер нужен только для первоначального соединения между сторонами, чтобы согласовать для них безопасный канал, и для этого вы можете использовать AJAX, например

IT goldman 11.04.2024 16:27
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
1
56
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Медиатрафик WebRTC может быть одноранговым: видео- и аудиотрафик может идти напрямую от отправителя к получателю.

Однако для связи двум узлам необходимо обменяться некоторой информацией, такой как их IP-адреса («кандидаты ICE») и их криптографические ключи. Как они обмениваются этой информацией, зависит от приложения, но обычное решение — использовать для этого сервер, называемый «сервером сигнализации».

 signalling server
    /        \
   /          \   ICE candidates and
  /            \  cryptographic keys
 /    media     \
A ============== B

Есть некоторые исключения из вышеперечисленного. Во-первых, если прямая связь невозможна (например, из-за неправильно настроенного брандмауэра), WebRTC вернется к маршрутизации медиатрафика через сервер «TURN». Во-вторых, WebRTC — довольно гибкий протокол, и многие приложения используют его с медиа-сервером («SFU»), и в этом случае весь медиа-трафик проходит через сервер.

Другие вопросы по теме

Реагировать на сокращение - useLoginMutation не является функцией или ее возвращаемое значение не является итеративным
Произвольные свойства попутного ветра вообще не применяются
UseCookies из реагирующих файлов cookie вызывает цикл рендеринга
Как использовать заголовок изgenerateMetadata() в пользовательском интерфейсе в NextJs 14?
Как я могу использовать response-router-dom для перехода к другому маршруту на моей веб-странице?
Аргумент данных в обработчике onSuccess в функции useMutation в ответном запросе не определен, и обработчик запускается до завершения запроса,
«Отрисовано меньше крючков, чем ожидалось. Это может быть вызвано случайным оператором раннего возврата на вкладках HeadlessUI
Сохраните загруженное изображение в localStore и визуализируйте на странице обновления
Лучший способ импортировать React в Wordpress при работе с Typescript?
Задержка движения кадра при onMouseLeave