Проверка Потерь Пакетов

WebRTC

WebRTC - это передовая технология (по состоянию на 2019 г.), которая делает этот сайт возможным. Он включает в себя несколько API-интерфейсов JavaScript в WebIDL, которые обеспечивают связь в режиме реального времени. Как все это работает с сервером STUN и кандидатами в ICE, довольно сложно, но в основном он использует магию, чтобы найти способ быстрой связи в обоих направлениях.

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

Кроме того, спасибо Google за бесплатный STUN-сервер, который я использую для установления соединений.