Разница между DTLS-SRTP и пакетами SRTP, отправляемыми по соединениям DTLS
У меня есть две конечные точки SIP, и я хотел отправить медиа через DTLS-SRTP. Я немного запутался в нижеследующих пунктах
Являются ли пакеты DTLS-SRTP и SRTP, передаваемые через соединения DTLS, одинаковыми или разными?
Если разные, не могли бы вы объяснить, чем они отличаются?
2 ответа
DTLS используется для установления ключей, которые затем используются для защиты потока RTP. Как только ключи установлены, они используются для шифрования потока RTP, чтобы сделать его SRTP(ничего особенного в шифровании, стандартный SRTP rfc3711), а затем отправляются по этому каналу DTLS. Если вы прочитаете rfc5764, вы сможете получить больше подробностей о том, что такое канал DTLS, демультиплексирование пакетов и т. Д.
Таким образом, DTLS является ключевым УПРАВЛЕНИЕМ для обмена SRTP. См. Rfc5764 раздел 4.1 для небольшого примера.
В итоге: если под SRTP через соединение DTLS вы имеете в виду обмен ключами и шифрование мультимедиа этими ключами, разница невелика. Основное отличие состоит в том, что с DTLS-SRTP согласование DTLS происходит на тех же портах, что и сам носитель, и, следовательно, демультиплексирование пакетов должно учитываться на этих портах.
Приведенный выше ответ является почти правильным. В DTLS-SRTP рукопожатие DTLS действительно используется для получения главного ключа SRTP.
Однако после получения главного ключа DTLS не используется для передачи RTP: пакеты RTP шифруются с использованием SRTP и отправляются непосредственно через базовый транспорт (UDP).