VoIP
Матеріал з Вікіпедії — вільної енциклопедії.
VoIP (англ. voice over IP — технологія передачі медіа даних в реальному часі за допомогою сімейства протоколів TCP/IP. IP-телефонія — система зв'язку, при якій аналоговий звуковий сигнал від одного абонента дискретизується (кодується в цифровий вигляд), компресія і пересилається по цифрових каналах зв'язку до другого абонента, де проводиться зворотня операція — декомпресія, декодування і відтворення аналогового сигналу.
Зміст |
[ред.] Протоколи
Частина протоколів із сімейства VoIP затверджується Інтернет співтовариством в якості RFC (англ. request for comments), частина — міжнародними організаціями (IETF тощо).
Основу технології VoIP складає протокол RTP (real time protocol, RFC 1889, RFC 3550), побудований поверх протоколів UDP/IP, а також протоколи (методи) кодування медіа даних (для кодування голосу це протоколи G.711, G.723, G.729, GSM, Speex та інші, для кодування відео це протоколи RFC ???).
Існують розширення (профілі) протоколу RTP, такі як SRTP (secure RTP) та інші (RFC 1890, RFC 2198, RFC 3711 тощо).
[ред.] Протоколи IP телефонії
Протоколи забезпечують реєстрацію IP пристрою (шлюз, термінал або IP телефон) на сервері або гейткіпері провайдера, виклик і/або переадресацію виклику, встановлення голосового з'єднання, передачу імені і/або номери абонента. В даний час широкого поширення набули наступні протоколи VoIP:
- SIP - забезпечує передачу голосу і для сигналізації зазвичай використовує порт 5060 UDP
- H.323 - протокол, більш прив'язаний до систем традиційної телефонії, чим SIP, сигналізація по порту 1720 TCP
- IAX2 - через 4569 UDP порт і сигналізація, і медіа
- MGCP
- SIGTRAN
- SCTP
- SGCP
- Skinny/SCCP
- Unistim - закритий протокол передачі сигнального трафіку в продуктах компанії Nortel
[ред.] Кодування мовної інформації
Джерелом інформаційних даних є мовний сигнал, можливою моделлю якого є нестаціонарний випадковий процес. У першому наближенні можна виділити наступні типи сигнальних фрагментів: вокалізування, невокалізування, перехідні і паузи. При передачі мови в цифровій формі кожен тип сигналу при одній і тій же тривалості і однаковій якості вимагає різного числа біт для кодування і передачі. Отже, швидкість передачі різних типів сигналу також може бути різною, що обумовлює застосування кодеків із змінною швидкістю. В результаті передача мовних даних в кожному напрямі дуплексного каналу розглядається як передача асинхронних логічно самостійних фрагментів цифрових послідовностей (транзакцій) з датаграмною синхронізацією усередині транзакції, наповненої блоками різної довжини.
У основі кодека мови зі змінною швидкістю лежить класифікатор вхідного сигналу, що визначає ступінь його інформативності і, таким чином, задаючий метод кодування і швидкість передачі мовних даних. Найбільш простим класифікатором мовного сигналу є VAD (англ. Voice Activity Detector, детектор мовної активності), який виділяє у вхідному мовному сигналі активну мову і паузи. Фрагменти сигналу, що класифікуються як активна мова, кодуються якимсь з відомих алгоритмів (як правило, на базі методу Code Excited Linear Prediction — CELP) з базовою швидкістю 4 — 8 кбіт/с. Фрагменти, класифіковані як паузи, кодуються і передаються з низькою швидкістю порядка 0.1 — 0.2 Кбіт/с, або не передаються взагалі. Коли спрацьовує VAD, на приймальній стороні може автоматично генеруватися так званий «комфортний шум» щоб у співбесідника не виникало відчуття пропажі зв'язку. При цьому передачі мінімальної інформації про фрагменти пауз надається перевага. Дана стратегія дозволяє оптимізувати швидкість кодування 2 — 4 кбіт/с при достатній якості мови, що синтезується. При цьому для особливо критичних фрагментів мовного сигналу виділяється велика швидкість передачі, для менш відповідальних — менша.
Вокодер вносить додаткову затримку порядка 15 — 45 мс, що виникає з наступних причин:
- використання буфера для накопичення сигналу і обліку статистики подальших відліків (алгоритмічна затримка);
- математичні перетворення, що виконуються над мовним сигналом, вимагають процесорного часу (обчислювальна затримка).
Дану затримку необхідно враховувати при розрахунку крізних затримок. Проведений в різних дослідницьких групах аналіз якості передачі мовних даних через мережу Інтернет показує, що основним джерелом виникнення спотворень, зниження якості і розбірливості синтезованої мови є переривання потоку мовних даних, викликане:
- втратами пакетів при передачі по мережі зв'язку;
- перевищенням допустимого часу доставки пакету з мовними даними.
Це вимагає рішення задачі оптимізації затримок в мережі і створення алгоритмів компресії мови, стійких до втрат пакетів (відновлення втрачених пакетів).
[ред.] Кодеки
Відкриті:
- GSM
- G.711 uLaw інакше (Mu-law)
- G.711 aLaw
- G.722
- G.726
- Speex
- iLBC
Пропрієтарні:
- G.729
- G.729A
- G.723
- G.723.1
[ред.] Декодування мовної інформації
З урахуванням можливих втрат пакетів в мережі для відновлення мовного потоку на приймальній стороні використовується протокол реального часу — Real Time Protocol (RTP). У заголовку даного протоколу, зокрема, передаються тимчасова мітка і номер пакету. Ці параметри дозволяють при мінімальних затримках визначити порядок і момент декодування кожного пакету, а також інтерполювати втрачені пакети. Відновлена послідовність, з можливими пропусками як одиночних пакетів, так і груп пакетів, поступає на декодер. Декодер має забезпечити відновлення мовної інформації, заповнення пауз фоновим шумом, а також ехо-компенсацію кодованого сигналу, виявлення і детектування телефонної сигналізації.
[ред.] Історія
Можливість передачі голосових повідомлень через мережу з пакетною комутацією вперше була реалізована в 1993 році. Дана технологія отримала назву VoIP (Voice over IP). Одним з приватних додатків даної технології є IP-телефонія — послуга з передачі телефонних розмов абонентів по протоколу IP.
[ред.] Переваги та недоліки
Основними перевагами технології VoIP є скорочення необхідної смуги пропускання, що забезпечується обліком статистичних характеристик мовного трафіку:
- блокуванням передачі пауз (діалогових, складових, смислових і ін.), які можуть складати до 40-50 % часу зайнятості каналу передачі;
- високою надмірністю мовного сигналу і його стисненням (без втрати якості при відновленні) до рівня 20-40 % початкового сигналу.
З іншого боку трафік VoIP критичний до затримок пакетів в мережі, але толерантний (стійкий) щодо втрат окремих пакетів. Так втрата до 5 % пакетів не призводить до погіршення розбірливості мови.
[ред.] Виноски
[ред.] Ресурси
- VoIP independent discussion and support topics relating to Voice over IP. (англ.)
- Атака на VoIP: Перехват и Підслуховування
- IP телефония в работе - приклади програм]

