У разговора
есть язык.
В VoIP разные протоколы решают разные задачи. Одни договариваются о звонке, другие передают звук, третьи помогают сетевому соединению.
Сигнализация ≠ медиа.
Главное различие: организовать разговор и передать голос — не одно и то же.
SIP ↗
Находит адресата, инициирует звонок, согласует сеанс и завершает разговор.
RTP ↝
Переносит аудиокадры с метками времени и номерами последовательности.
Карта протоколов.
Выберите элемент, чтобы увидеть его роль в системе VoIP.
Сначала договориться.
SIP отвечает за создание, изменение и завершение сеансов. Он может взаимодействовать с IP-АТС, регистраторами и прокси-серверами. Сами звуковые пакеты SIP не переносит.
Теперь передать звук.
RTP добавляет к аудио номер пакета и метку времени. Это помогает восстановить порядок воспроизведения. RTCP передаёт статистику качества, например о потерях и джиттере.
Согласовать детали.
SDP описывает параметры будущего сеанса: доступные кодеки, сетевые адреса, порты и другие характеристики медиа. Его часто передают внутри сообщений SIP.
Защитить содержимое.
SRTP обеспечивает конфиденциальность и целостность медиапотока при корректной настройке. Ключи могут согласовываться различными способами, например через DTLS-SRTP в WebRTC.
Как начинается SIP-звонок.
Упрощённый обмен сообщениями между двумя участниками. SIP-обмен и путь RTP могут проходить через разные узлы.
Схема иллюстративная: реальный обмен может включать прокси, аутентификацию, дополнительные ответы и согласование параметров.
А как же WebRTC?
WebRTC — набор технологий для аудио, видео и обмена данными в приложениях и браузерах. Для согласования сетевых путей часто применяются ICE, STUN и TURN, а медиапоток обычно защищён с помощью SRTP. Способ сигнализации приложение выбирает самостоятельно.