Обычный телефонный звонок кажется мгновенным: вы произносите слово, и через доли секунды собеседник на другом континенте слышит ваш голос. В классических сетях телефонии TDM для каждого разговора выделялся гарантированный физический канал с постоянной скоростью 64 кбит/с. В пакетных сетях IP фиксированных каналов нет: непрерывный акустический сигнал нарезается на дискретные фрагменты, упаковывается в независимые UDP-пакеты и отправляется через маршрутизаторы со статистическим уплотнением. В этом уроке мы разберём каждый шаг этой цепочки — от колебаний воздуха перед микрофоном до восстановления звуковой волны в динамике.

Цель и что нужно знать

После урока вы сможете:

  • последовательно раскладывать полную цепочку голосового тракта VoIP от микрофона до динамика;
  • объяснять физические и архитектурные отличия передачи речи по IP от традиционных каналов TDM;
  • рассчитывать базовые параметры оцифровки и пакетизации акустического сигнала (частота дискретизации, размер фрейма, темп передачи);
  • локализовать функциональный узел тракта при возникновении задержек, выпадений или искажений звука.

Что нужно знать заранее: уроки telbasics 12–16 (звук, частотный спектр, шум), telbasics 21–25 (дискретизация, квантование, ИКМ 64 кбит/с), ipnet 2–3 (модель OSI, инкапсуляция, Ethernet) и ipnet 35 (протокол UDP).

Задача из жизни

Инженер модернизирует корпоративную телефонную связь: вместо старого потока E1 ISDN PRI подключается современная виртуальная АТС по SIP-транку через корпоративную сеть. При первом тестировании сотрудники замечают странность: одни звонки звучат идеально, а в других пропадают слоги, возникает металлический дребезг или собеседники начинают перебивать друг друга. При старом подключении E1 таких симптомов не существовало в принципе. Чтобы устранить проблему и корректно настроить оборудование, инженеру необходимо понимать, через какие аппаратные и программные звенья проходит оцифрованный голос и где в сети со статистическим уплотнением возникают уязвимости.

Анатомия тракта передачи: от акустической волны к IP

Человеческая речь представляет собой механические колебания воздуха с частотным спектром, основная информативная часть которого укладывается в диапазон от 300 до 3400 Гц. Для передачи этой волны в цифровой пакетной сети передатчик выполняет серию последовательных трансформаций.

Схема тракта передачи речи: от микрофона до упаковки в RTP/UDP/IP
Схема тракта передачи речи: от микрофона до упаковки в RTP/UDP/IP
  1. Микрофон (акустический преобразователь): преобразует механические колебания давления воздуха в непрерывный аналоговый электрический сигнал (напряжение).
  2. Аналого-цифровой преобразователь (АЦП): производит дискретизацию сигнала по теореме Котельникова-Найквиста с частотой 8000 Гц (8 кГц). Каждые 125 микросекунд фиксируется амплитуда, которая затем квантуется в цифровой отсчёт.
  3. Голосовой кодек (DSP/Encoder): оцифрованные отсчёты кодируются согласно выбранному алгоритму (например, несжатый ИКМ G.711 A-law/μ-law со скоростью 64 кбит/с или компрессионный кодек Opus/G.729).
  4. Пакетизатор речи (Packetizer): накапливает отсчёты в течение окна пакетизации (стандартное значение ptime = 20 ms, то есть 160 отсчётов для 8 кГц) и формирует полезную нагрузку (payload).
  5. Инкапсуляция RTP/UDP/IP: к полезной нагрузке добавляется заголовок RTP (12 байт, содержащий метку времени и порядковый номер), заголовок UDP (8 байт), заголовок IPv4 (20 байт) и канальный заголовок Ethernet (18 байт).

Разбор примера: расчёт базового голосового потока

Рассчитаем параметры стандартного некомпрессированного потока G.711 при стандартном интервале пакетизации 20 мс:

text
Sampling rate (fs):        8000 Hz (8000 samples/sec)
Sample interval:           1 / 8000 = 0.000125 s = 125 us
Bit depth:                 8 bits (1 byte per sample)
Audio bitrate:             8000 * 8 = 64000 bps (64 kbps)
Packetization time:        ptime = 20 ms = 0.020 s
Audio samples per packet:  8000 * 0.020 = 160 samples
Voice payload size:        160 samples * 1 byte = 160 bytes
Packet rate (cadence):     1000 ms / 20 ms = 50 packets/sec (pps)

Каждые 20 миллисекунд голосовой шлюз строго по таймеру формирует пакет размером 160 байт аудиоданных и передаёт его сетевому стеку.

Канал TDM против сети IP: фундаментальный сдвиг

Историческая телефонная сеть общего пользования (ТфОП / TDM) строилась вокруг идеи коммутации каналов. IP-сеть опирается на статистическое мультиплексирование.

ПараметрТрадиционная телефония TDM (E1 / ИКМ)Пакетная телефония VoIP (IP / Ethernet)
Выделение ресурсовЖестко фиксированный таймслот 64 кбит/сСтатистическое разделение общей полосы
Паузы в разговореКанал занят и передаёт тишину (потеря емкости)Полоса в паузах освобождается для других данных
ИнфраструктураОтдельные телефонные кабели и кроссыЕдиная конвергентная кабельная сеть LAN/WAN
Факторы искаженияТолько физическое затухание в медной линииЗадержки очередей, джиттер, потери UDP-пакетов

Переход к IP позволил объединить передачу голоса, видео и данных в единой кабельной инфраструктуре Ethernet, избавившись от громоздких медных распределительных шкафов и дорогостоящих плат цифровых интерфейсов E1.

Тракт приёма: восстановление непрерывного звука

В сети IP пакеты путешествуют независимо и могут прибывать к приёмнику с разным интервалом (явление джиттера). Для корректного воспроизведения человеческой речи приёмный узел должен восстановить строгий изохронный темп.

Схема тракта приёма речи: джиттер-буфер, декодер и воспроизведение в ЦАП
Схема тракта приёма речи: джиттер-буфер, декодер и воспроизведение в ЦАП
text
IP Packet Arrival (variable delays: 18ms, 25ms, 12ms, 31ms)
  │
  ▼
[Dejitter Buffer (reorders packets, absorbs delay variance)]
  │ steady 20ms playout
  ▼
[Audio Decoder (G.711 / Opus: decompresses payload)]
  │ 8000 samples/sec PCM
  ▼
[Digital-to-Analog Converter (DAC) & Smoothing Filter]
  │ continuous analog voltage
  ▼
[Loudspeaker / Headset (acoustic pressure wave)]
  1. Сетевой интерфейс и декапсуляция: сетевая карта принимает кадр Ethernet, извлекает пакет IP и датаграмму UDP, проверяя порт назначения.
  2. Джиттер-буфер (Jitter Buffer): буферизует входящие пакеты на 30–50 мс, упорядочивает их по номерам RTP sequence number и устраняет неравномерность доставки.
  3. Декодер (Decoder): извлекает 160 байт полезной нагрузки и восстанавливает массив отсчётов звуковой волны. Если пакет потерян в сети, включается алгоритм маскирования потерь (PLC).
  4. Цифро-аналоговый преобразователь (ЦАП): превращает дискретные числовые отсчёты в непрерывное аналоговое электрическое напряжение.
  5. Динамик (акустический излучатель): диффузор динамика колеблет воздух, воссоздавая исходную акустическую волну для барабанной перепонки слушателя.

Что может сломаться и как это найти

СимптомВозможная причинаЧто проверить
Полная тишина в одну сторону (односторонняя слышимость)Межсетевой экран или NAT блокирует входящие UDP-порты RTPПараметры SDP в сигнальных сообщениях SIP и таблицу NAT
Металлический скрежет и заикание речиОпустошение джиттер-буфера из-за всплесков сетевой задержкиСтатистику джиттера и потерь в RTCP-отчётах шлюза
Абоненты регулярно перебивают друг другаСуммарная задержка «рот-в-ухо» превысила предел 150–200 мсВремя прохождения пакетов (RTT) и размер джиттер-буфера
Эхо собственного голоса в трубкеАкустическая связь микрофона и динамика на удалённом концеРаботу блока эхоподавления (AEC) на стороне собеседника

⚠️ Самая распространённая ошибка начинающего администратора VoIP — диагностировать проблему медиатракта только по логам сигнализации SIP. Сигнализация SIP лишь договаривается об IP-адресах и портах (SDP), а сам голос передаётся отдельным независимым потоком UDP/RTP. Проверяйте фактическое прохождение UDP-пакетов через межсетевые экраны.

Практика

  1. Предскажите. Если частоту дискретизации речи поднять с 8 кГц до 16 кГц при сохранении разрядности 8 бит, как изменится размер фрейма полезной нагрузки за 20 мс?
  2. Проверьте. Рассчитайте число отсчётов за 20 мс при 16 кГц: 16000 * 0.020 = 320 отсчётов. Объем полезной нагрузки вырастет ровно в 2 раза.
  3. Объясните. Почему в пакетной телефонии для передачи голоса применяется протокол UDP, а не надёжный протокол TCP с подтверждением доставки?
  4. Измените. Рассчитайте, сколько пакетов в секунду (pps) генерирует передатчик, если интервал пакетизации уменьшить с 20 мс до 10 мс.
  5. Сделайте сами (со звёздочкой ⭐). Телефонный шлюз обслуживает 30 одновременных вызовов с кодеком G.711 (payload 160 байт, суммарный кадр Ethernet 218 байт). Посчитайте суммарный пакетный темп (pps) и полосу пропускания в килобитах в секунду, поступающую на порт коммутатора.

Самопроверка

Вопрос 1. В какой последовательности звуковой сигнал проходит звенья тракта на передающей стороне IP-телефона?

Разбор. Акустическая волна сначала воздействует на мембрану микрофона, создавая аналоговое напряжение. АЦП производит замеры амплитуды 8000 раз в секунду. Кодер формирует сжатые или несжатые цифровые отсчёты. Пакетизатор накапливает 160 отсчётов за 20 мс. Модуль инкапсуляции навешивает заголовки RTP, UDP, IP и Ethernet.

Вопрос 2. Сколько отсчётов и байт полезной нагрузки содержит один пакет G.711 при интервале пакетизации 10 мс и 30 мс?

Разбор.

text
ptime = 10 ms:
  Samples = 8000 samples/s * 0.010 s = 80 samples
  Payload = 80 samples * 1 byte = 80 bytes
  Packet rate = 1000 / 10 = 100 packets/sec

ptime = 30 ms:
  Samples = 8000 samples/s * 0.030 s = 240 samples
  Payload = 240 samples * 1 byte = 240 bytes
  Packet rate = 1000 / 30 = 33.33 packets/sec

Ответы к практике. 1 — размер полезной нагрузки удвоится и составит 320 байт. 3 — повторная передача потерянного TCP-пакета занимает сотни миллисекунд; к моменту доставки опоздавший голосовой фрейм уже бесполезен для диалога в реальном времени. 4 — 1000 / 10 = 100 пакетов в секунду вместо 50 pps. 5 — суммарный темп: 30 * 50 = 1500 pps; суммарная полоса: 1500 * 218 * 8 / 1000 = 2616 кбит/с (~2.62 Мбит/с).

Повторение и критерий перехода

Переходите к следующему уроку, если без подсказки можете:

  • назвать все звенья тракта передачи и приёма речи от микрофона до динамика;
  • объяснить математическую связь между частотой дискретизации 8000 Гц, интервалом пакетизации 20 мс и размером полезной нагрузки 160 байт;
  • сформулировать, почему задержка повторной передачи TCP делает его непригодным для живого разговора.

Стандарты и источники

  • ITU-T Recommendation G.711 (1988) — Pulse code modulation (PCM) of voice frequencies.
  • IETF RFC 3550 — RTP: A Transport Protocol for Real-Time Applications.
  • IETF RFC 768 — User Datagram Protocol (UDP).
  • ITU-T Recommendation G.100 / P.10 — Vocabulary for performance and quality of service.