Статьи

Принципи організації IP-телефонії на базі рішень Cisco Systems

  1. Принципи організації IP-телефонії на базі рішень Cisco Systems
  2. Передача голосу через IP-мережу
  3. Проблеми використання мережі передачі даних для передачі голосу
  4. технології магістралі
  5. Механізми забезпечення якості передачі голосових даних
  6. Класифікація та маркування трафіку
  7. Механізми черг або усунення перевантажень на інтерфейсах
  8. Механізм стиснення заголовків RTP пакетів (cRTP)
  9. Фрагментація пакетів (LFI)
  10. Помилки проектування IP-телефонії
  11. Короткий огляд протоколів VoIP
  12. Принципи встановлення з'єднання
  13. етапи з'єднання

2007 р

Принципи організації IP-телефонії на базі рішень Cisco Systems

Іван Ярцев
Інформаційний бюлетень JET INFO

назад Зміст вперед

Передача голосу через IP-мережу

Інкапсуляція голосових даних і розрахунок пропускної здатності каналу

Голос для передачі по мережі спочатку потрапляє на вхід цифрового сигнального процесора DSP (Digital Signal Processor), де він порціями кодується певним кодеком. Вихід з DSP инкапсулируется в PDU (одиниця даних протоколу - фрейми, пакети) і передається по мережі.

При доставці даних реального часу, таких як голос, метод визначення PDU, несучих голос, є необхідним. Якщо буде виявлено такий PDU, можна застосувати механізми прискорення його передачі.

Технологія VoFR (Voice over Frame Relay - передача голосу по каналах Frame Relay) використовує спеціальний заголовок FRF.11 ( Мал. 1 ). Цей заголовок займає, як мінімум, три байта і служить для визначення типу даних, які містяться у фреймі. Пристрої VoATM (Voice over ATM - передача голосу по каналах ATM) використовують такий же заголовок.

Мал. 1. Поля, що відповідають за позначку пріоритету

Пропускна здатність каналу, займаного одним голосовим дзвінком, залежить від наступних компонентів:

Різні кодеки (скорочення від "кодер-декодер" - компонент системи, що забезпечує стиснення і розпаковування певних даних) вимагають різну смугу пропускання:

кодек

технологія стиснення

Бітрейт кодека (Кб / с)

G.711

PCM

64

G.726

ADPCM

16, 24, 32

G.728

LDCELP

16

G.729

CS-ACELP

8

G.729A

CS-ACELP

8

Займану смугу пропускання можна обчислити, грунтуючись на бітрейте (число бітів потоку, що передаються за секунду; основна характеристика відео- або аудиопотока при стисканні) кодека, витраті пакетизації і розмірі корисного навантаження в пакеті.

Розмір корисного навантаження залежить від розміру голосового семпли (звукового файлу), який є величиною конфігурується і безпосередньо впливає на необхідну смугу пропускання. Голосовий семпл - це вихід з процесора DSP, інкапсулює в PDU. Cisco використовує DSP, обробні по 10 мс голосу. Устаткування Cisco за замовчуванням инкапсулирует в PDU 20 мс голосу незалежно від використовуваного кодека. Це значення можна змінити, але при його збільшенні необхідна смуга пропускання зменшується, що може призвести до збільшення змінних затримок (так званих джиттером - jitter) і появи відчутних розривів в звучанні, якщо пакет не дійде до пункту призначення.

Розмір семпли в байтах розраховується за формулою:

Розмір семпли в байтах розраховується за формулою:

де

Для обчислення смуги пропускання каналу, займаної одним дзвінком, використовується наступна формула:

Total_bandwidth = (Layer2_overhead + IP_UDP_overhead + Sample_size) / Sample_size * Codec_speed,

де

Наведемо приклади смуги пропускання, займаної одним дзвінком, при використанні кодеків G.711 і G.729 і різних розмірах семплів. Як протоколів канального рівня візьмемо Frame Relay і Ethernet II.

Розмір службової інформації при використанні Ethernet II становить 18 байт (6 байт - адреса призначення, 6 байт - адреса джерела, 2 байта - тип, 4 - контрольна сума); при використанні Frame Relay - 6 байт (2 байта - DLCI, 2 - FRF.12, 2 - контрольна сума). Заголовки IP, UDP і RTP без компресії займають 40 байт (20 IP, 8 UDP, 12 RTP). Таким чином отримуємо розподіл, представлене в Таб. 1 .

Проблеми використання мережі передачі даних для передачі голосу

У традиційної телефонії голос має гарантовану фіксовану затримку при передачі і гарантовану смугу пропускання для кожного дзвінка. У мережі передачі даних для передачі голосу потрібна низька затримка, мінімальні джиттером і втрати пакетів.

Проблеми якості передачі голосу включають:

  1. Втрати пакетів. Голосові кодеки здатні заповнювати невеликі втрати, але якщо вони вище певної межі, то можливо переривання голосу.
  2. Затримка. Наскрізна затримка - це час, який потрібен для передачі пакета від передавального на приймаючий пристрій. Затримка складається з постійної і змінної складових. Постійна складова може бути оцінена при проектуванні мережі. Приклади постійних затримок - час проходження сигналу по мережі, затримка кодування, час пакетизації. Перевантажені черзі на інтерфейсах і час викладання даних на фізичну середу передачі даних (Serialization delay) народжують змінні затримки. Час викладання даних на фізичну середу є функцією від швидкості каналу і розміру пакета - чим більше пакет і менше швидкість каналу, тим більше цей час. Незважаючи на те що це ставлення відомо, час викладання даних на фізичну середу віднесено до змінних затримок, тому що більший пакет може увійти в чергу на інтерфейсі в будь-який момент перед голосовим пакетом. В цьому випадку голосовий пакет буде чекати в черзі на інтерфейсі, поки не буде оброблений пакет перед ним.
  3. Різниця часу затримок передачі від пакета до пакету (джиттер) - різниця між очікуваним і фактичним часом приходу чергового пакета. VoIP-пристрої використовують спеціальний буфер для встановлення постійного темпу обробки пакетів, таким чином досягається плавність звучання голосу.

технології магістралі

Для забезпечення передачі різних типів трафіку в магістральних каналах зв'язку використовуються різні технології:

Всі ці технології повинні забезпечити різним видам трафіку відповідний рівень обслуговування та необхідну якість голосових з'єднань.

Механізми забезпечення якості передачі голосових даних

Додатки реального часу, такі як голосові, відрізняються своїми характеристиками від традиційних додатків. Голосові програми допускають мінімальний джиттер. Втрати пакетів і джитера погіршують якість переданого голосу. При заміні традиційних голосових технологій IP-телефонією користувачі повинні отримувати те ж якість голосу, як і при звичайній телефонії. Для ефективної передачі голосу через IP-мережу потрібен механізм надійної доставки з маленькою затримкою.

VoIP гарантує передачу голосу високої якості тільки в тому випадку, якщо аудіо- та сигнальні пакети мають пріоритет перед будь-якими іншими пакетами в мережі. Для виконання цієї вимоги використовується механізм QoS (Quality of Service). QoS - це методика забезпечення якості передачі певних даних, заснована на поділі трафіку за пріоритетами для відповідної його обробки. QoS забезпечує кращий, більш передбачуваний, сервіс мережі, виконуючи наступні функції:

Програмне забезпечення Cisco IOS (операційна система активного мережного обладнання фірми Cisco Systems) включає в себе повний набір засобів забезпечення QoS в мережі. Перерахуємо деякі з них.

Класифікація та маркування трафіку

Класифікація дозволяє виділити з трафіку певний потік і потім застосувати до нього політики і дії різного характеру. Класифікація використовується для маркування, приоритизации, буферизації і т.д.

Для визначення приналежності трафіку до того чи іншого класу, що необхідно для прийняття рішення про спосіб його обробки, можуть перевірятися різні характеристики:

Класифікація застосовується для вхідного і / або виходить з маршрутизатора трафіку.

Для маркування пакета може бути використаний заголовок другого рівня (802.1Q / p, FR DE bits) і / або поле TOS IP-заголовка (IP Precedence або DSCP).

Маркований трафік спрощує застосування єдиних правил приоритизации / обробки трафіку для всіх пристроїв в мережі передачі даних, в тому числі і для пристроїв провайдера послуг.

Маркування трафіку і перемаркування рекомендована на вхідному інтерфейсі, як можна ближче до джерела трафіку.

Механізми черг або усунення перевантажень на інтерфейсах

Для регулювання можливих перевантажень на вихідному інтерфейсі в програмному забезпеченні маршрутизатора (IOS) існує рівнева система буферизації пакетів. Підсистема L3 оперує IP-пакетами, L2-буфер сильно залежить від канального протоколу і L1-буфер (Tx Ring) працює на драйвері пристрою.

Існують різні алгоритми регулювання черг для підсистеми L3.

При наявності в мережі VoIP-трафіку компанією Cisco рекомендовано використовувати LLQ (Low-Latency Queuing). Алгоритм заснований на класифікації потоків:

Механізм стиснення заголовків RTP пакетів (cRTP)

На маршрутизаторах можна задіяти механізм стиснення заголовків RTP пакетів. В цьому випадку, замість того щоб передавати один одному RTP-пакети з заголовком в 40 байт (IP + UDP + RTP), вони передають пакети з заголовком в 2-5 байт. Передавальний маршрутизатор замінює вихідний заголовок, а приймає при прийомі його відновлює.

Механізм не впливає на затримку VoIP-трафіку. Зменшує смугу каналу, займану голосовим трафіком.

Механізм cRTP має наступні характеристики:

Фрагментація пакетів (LFI)

Механізм підтримує виконання рекомендації ITU G.114 - пристрій не повинно обробляти голосовий пакет більше 20 мс. Механізм не змінює займану смугу каналу. Зменшує можливу затримку пакета і варіацію затримки (jitter) потоку.

Механізм LFI має наступні характеристики:

Неефективно використовувати даний механізм на каналах більше 1 Mbps.

Помилки проектування IP-телефонії

Відмінні риси неправильного проектування:

Короткий огляд протоколів VoIP

В технології VoIP використовуються наступні протоколи:

Відповідність протоколів VoIP рівням моделі OSI:

Принципи встановлення з'єднання

Абонентські пристрої (Dial Peers)

Абонентський пристрій (Dial Peer) - це адресується точка дозвону. Такі точки встановлюють логічні з'єднання, звані етапами дозвону (Call Legs), для завершення встановлення дзвінка. Маршрутизатор Cisco, що підтримують голосові функції, підтримують два типи абонентських пристроїв: POTS Dial Peer і VoIP Dial Peer.

POTS (Plane old telephone service) Dial Peer підключаються до традиційних телефонних мереж або традиційним телефонних апаратів. Такі пристрої виконують функції з надання адреси (телефонного номера або діапазону телефонних номерів) для кінцевого пристрою (мережі) і також вказують на конкретний голосової порт, до якого кінцеве пристрій (мережа) підключено.

VoIP Dial Peer підключаються через мережу передачі даних і надають адреса призначення (телефонний номер або діапазон номерів) для кінцевого пристрою в мережі і асоціюють адресу призначення з наступним маршрутизатором, на який дзвінок повинен передатися.

Коли відбувається виклик, пристрій генерує цифри номера дозвону як спосіб вказівки пристрою, на якому дзвінок повинен завершитися, тобто пристрої, на яке здійснюється дзвінок. Коли ці цифри потрапляють на голосовий порт маршрутизатора, маршрутизатор повинен мати спосіб вирішити, куди виклик повинен бути маршрутизований. Маршрутизатор знаходить це рішення, переглядаючи список абонентських пристроїв.

Адреси Абонентське пристрою, звань шаблоном призначення (destination pattern), налаштованості на кожному Абонентське пристрої. Шаблон призначення может ВІДПОВІДАТИ як один телефонний номер, так и діапазону телефонних номерів. Маршрутизатор використовує абонентські пристрої для встановлення логічних з'єднань (Call Legs) як в вихідному, так і у вхідному напрямках.

Коли до маршрутизатора Cisco Systems з голосовими функціями підключається традиційне телефонний пристрій (варіант POTS Dial Peer), в конфігурації маршрутизатора вказується телефонний номер цього пристрою і порт, до якого під'єднано. Таким чином, маршрутизатор "знає", куди направляти вхідний дзвінок на цей номер.

У разі VoIP Dial Peer конфігурація маршрутизатора включає телефонний номер призначення (діапазон номерів) і мережеву адресу наступного маршрутизатора.

етапи з'єднання

Етапи встановлення з'єднання (Call Legs) - це логічні з'єднання між будь-якими двома телефонними пристроями, такими як шлюзи, маршрутизатори, додатки Cisco CallManager або кінцеві телефонні пристрої.

Коли надходить вхідний дзвінок, він обробляється окремо, поки не буде визначено пункт призначення. Після цього встановлюється вихідні повідомлення, і вхідний дзвінок комутується з вихідним портом.

Наскрізний дзвінок складається з чотирьох етапів з'єднання: два з точки зору маршрутизатора, на якому дзвінок виникає, і два з точки зору маршрутизатора, на якому телефонне з'єднання завершується.

Вхідний етап з'єднання виникає, коли виклик входить в маршрутизатор або шлюз, що виходить - коли виклик відбувається маршрутизатором або шлюзом.

Процес встановлення телефонного з'єднання можна описати наступними кроками ( Мал. 3 ):

Мал. 2. Етапи з'єднання

Мал. 3. Етапи з'єднання з точки зору маршрутизаторів.

  1. Дзвінок з традиційного телефону приходить на R1 і абонентський пристрій, що ініціювала виклик, ідентифіковано.
  2. Після асоціювання вхідного дзвінка з абонентським пристроєм R1 створює вхідний етап з'єднання і призначає йому ідентифікатор Call ID (Call Leg 1).
  3. R1 використовує рядок набору з метою визначення абонентського пристрою для здійснення вихідного кроку з'єднання.
  4. Після визначення абонентського пристрою, з яким буде встановлюватися з'єднання, R1 створює вихідний крок з'єднання і призначає йому ідентифікатор (Call Leg 2).
  5. Мережевий запит надходить на маршрутизатор 2 (R2), на якому відбувається ідентифікація викликає мережевого абонентського пристрою.
  6. Після визначення мережевого абонентського пристрою, з якого надійшов запит, R2 створює вхідні повідомлення і призначає йому ідентифікатор (Call Leg 3). Тут R1 і R2 узгоджують параметри при необхідності.
  7. R2 використовує рядок набору з метою визначення абонентського пристрою для здійснення вихідного кроку з'єднання.
  8. Після визначення абонентського пристрою R2 створює вихідний дзвінок з призначенням йому ідентифікатора і завершує процес з'єднання (Call Leg 4).

В якості ілюстрації процесу в розділі "Приклади конфігурацій" наведено приклад конфігурації абонентських пристроїв і описані методи конфігурації діапазонів телефонних номерів.

Новости