Начать стоит с VoIP. Эта специальная технология, которая подразумевает передачу голоса (или видео) через сеть. В общем и целом, VoIP - это и есть интернет-телефония. “Голос поверх IP” (voice over IP).
При знакомстве с ней везде мелькает странная, на первый взгляд, аббревиатура SIP телефония. Что же это такое?
Это лишь один из протоколов передачи данных, по которому работает IP-телефония. На данный момент он считается самым перспективным, и большинство разработок ведется на его основе.
Также стоит сказать пару слов про WebRTC, который становится всё популярнее. Это не самостоятельный протокол, а лишь транспорт (наряду с UDP и TCP), который позволяет общаться напрямую через браузер, без установки плагинов и расширений. Иначе говоря, превращает браузер в SIP-клиент.
Теперь, определившись с терминологией, разберемся - принцип работы SIP телефонии.
Общение клиентов в SIP можно представить в виде равноправного взаимодействия двух участников в виде последовательности специальных сообщений между ними.
Выглядит это следующим образом:
Инициатором общения, в данной ситуации, является абонент А. Он посылает сообщение INVITE с данными о типе требуемой сессии.
В ответ на INVITE SIP-клиент абонента В отправляет два сообщения: 180 Ringing, затем 200 OK.
Первое сообщает о том, что на стороне В подается сигнал звонка. Второе - подтверждает установку соединения.
В ответ абонент А отправляет сообщение ACK, говорящее о том, что сигнал 200ОК получен и оба клиента договорились о параметрах разговора.
После чего происходит сеанс связи, с оговоренными ранее параметрами.
Для завершения разговора абонент В отправляет BYE запрос абоненту А. Он же, в свою очередь, отправляет подтверждение. После чего - сессия завершена.
В этой ситуации мы рассмотрели самый простой вариант работы SIP протокола, но даже этого достаточно для того, чтобы составить хотя бы примерное понимание того, как эта связь устроена. Если вы хотите начать использовать SIP-телефонию прямо сейчас, рекомендуем познакомиться с программами для звонков с компьютера