Как правильно вычислять качество связи?

Нашёл на хабре статью https://habr.com/ru/post/317746/
Интересует механика/методика вычисления качества связи.

По статье, на коленке, с применением формулы R = 100 - (RTT / 10 + 2 * MaxLostPackets)
Поучилось нечто такое
61fd46061fda2094067055.png

public function onRTCPReceived(EventMessage $event)
    {
        $channel = $event->getKey("Channel");
        
        if (!preg_match("/PJSIP\/\d+/s", $channel)) {
            return;
        }

        $this->channels[$channel] = [
            "From" => $event->getKey("From"),
            "Exten" => $event->getKey("Exten"),
            "SentPackets" => $event->getKey("SentPackets"),
            "SentOctets" => $event->getKey("SentOctets"),
            "Report0CumulativeLost" => $event->getKey("Report0CumulativeLost"),
            "RTT" => $event->getKey("RTT")
        ];

        // R = 100 - (RTT / 10 + 2 * MaxLostPackets)

        $this->table->setRows([]);
        $this->table->setHeaders([
            "Канал", "Качество"
        ]);
        foreach ($this->channels as $key => $item) {
            $r = 100 - ($item["RTT"] / 10+2* $item["Report0CumulativeLost"]);
            $this->table->addRow([
                $key, $r
            ]);
        }

        $this->output->write(sprintf("\033\143"));
        $this->table->render();
    }


Поделитесь опытом, кто решал подобные задачи.
Спасибо!
  • Вопрос задан
  • 327 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы