VoIP işleyişinin teknik detayları nelerdir

wiki.internet.gen.tr, özgür ansiklopedi

Git ve: kullan, ara

Teknik açıdan bakıldığında genel olarak VoIP iletişimi için şunlara ihtiyacımız vardır:

Öncelikle analog sinyali dijital sinyale (bits) çevirmek için ADC gereklidir. Bu dijital bit’ler iletişim için iyi bir formatla sıkıştırılmış olmalıdır. Bunun için ileride göreceğimiz birkaç protokol var. Sonrasında bu ses paketlerini gerçek zamanlı protokol ile veri paketlerine iliştirmemiz gerekmektedir(genellikle IP üzerinde UDP, onunda üzerinde RTP). Karşı tarafı aramak için sinyalleşme protokolüne ihtiyacimiz var. Bunu ITU-T H.323 yapacaktır. Karşı tarafa ulaşan paketlerin tekrar açılması, verilerin düzenlenmesi, analog ses sinyaline çevrilmesi ve son olarak ses kartına veya telefona yollanması gerekmektedir. Bütün bu işlemlerin gerçek zamanlı olarak gerçekleşmesi gerekmektedir. Çünkü çok geriden gelen paketlerin beklenmesi gibi bir seçenek yoktur.

Temel Mimari

Ses )) ADC – Sıkıştırma Algoritmasi - RTP’nin TCP/IP içine yerleştirilmesi ---
---> |
<--- |
Ses (( DAC – Açma Algoritması - RTP’nin TCP/IP’den ayıklanması ---

Analog’dan Dijital’e Dönüştürmek

Bu işlem donanım ile gerçekleştirilir, genellikle kartlar üzerinde ADC ile yapılır. Günümüzde bütün ses kartları 16 bit – 22050 Hz dönüşüme destek vermektedir (Örnekleme için Nyquist kuralına göre 44100 Hz’e ihtiyaç duyulur). Gerekli bant genişligi ise : 2 Byte * 44100 (sn. ‘deki örnekleme) = 88200 byte/sn, stereo için 176.4 kbyte/sn. VoIP’de ses yollamak için 176 Kbyte gibi bir bant genişligine ihtiyacımız olmaz. Sonraki bölümlerde görecegimiz kodlama seçenekleri ile bunu düşürmekteyiz.

Sıkıştırma Algoritmaları

Şimdi elimizde standart formatta olması gereken ve hızla iletilmesi gereken dijital veri var.

• PCM, Pulse Code Modulation, ITU-T G.711 Ses bant genişliği 4 kHz, tabiki örnekleme bant genişligi 8 kHz olmalıdır (Nyquits’e göre) Her örnekleme 8 bit’tir (Bu 256 ayrı değer demektir). Net hız : 8000 Hz * 8 bit = 64 kbit/sn, yani tipik dijital telefon hattı. Gerçek uygulamalarda Kuzey Amerika için mu-law ve Avrupa için a-law varyantları olan ve logaritmik olarak 12 yada 13 bit analog sinyalleşme kullanılır. • ADPCM, Adaptive differential PCM, ITU-T G.726 32 kbps gerektiren ses paketi ile gerçek paket arasındaki farkı çeviren sıkıştırma tekniğidir. • LD-CELP, ITU-T G.728 • CS-ACELP, ITU-T G.729 ve G.729a • MP-MLQ, ITU-T G.723.1, 6.3kbps, Gerçek Zamanlı Konuşma • ACELP, ITU-T G.723.1, 5.3kbps, Gerçek Zamanlı Konuşma • LPC-10, 2.5 kbps!! Son olarak sıralanan protokoller oldukça önemli olup, düşük bant genişliği kullanımını garanti etmektedirler. Özellikle G.723.1 çok yüksek bir MOS (Mean Opinion Score – Ses kalitesinin ölçülmesinde kullanılan bir değer) değerine sahiptir.

RTP (Real Time Transport Protocol – Gerçek Zamanlı Taşıma Protokolü)

Şimdi elimizde ham veri var ve TCP/IP yığınına yerleştirmemiz gerekmektedir. Yapı şu şekildedir: VoIP veri paketleri RTP UDP IP I,II katmanlar

VoIP veri paketleri, UDP-IP paketlerinin içindeki RTP paketlerinde yer alır. Öncelikle, VoIP TCP kullanamaz çünkü, gerçek zamanlı uygulamalar için TCP çok ağır kalır. Bu yüzden UDP kullanılır. İkinci olarak, UDP, paketlerin karşı tarafa ulaşıp ulaşmadığını veya ne kadar zamanda ulastığını kontrol etmez. Bu iki değer sesin kalitesi için önemlidir. RTP bu problemi çözerek paketlerin alındığı tarafta paketleri uygun şekilde sıraya dizer ve paketlerin ulaşması için çok uzun süre beklemez, böylece konuşma kesintilere uğramaz. Fakat hala sürekli veri akışına ihtiyaç duymaktadır.

Real Time Transport Protocol – Gerçek Zamanlı Taşıma Protokolü

0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|V=2|P|X| CC |M| PT | sira numarası |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| zaman bilgisi |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| senkronizasyon kaynak (SSRC) tanımlayıcısı |
+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+
| yardımcı kaynak (CSRC) tanımlayıcılar |
| .... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Tanımlar:

V : Kullanılan RTP’nin versiyonu P : Padding X : Başlık ekleri CC : CSRC tanımlayıcılarının sayısını veren alan. CSRC alanının kullanım yeri örneğin konferans konuşmalarıdır. M : İşaret bit’i PT : Payload tipi RTP ile ilgili tam bilgiyi RFC 1889 ve 1890’dan alabilirsiniz.

RSVP VoIP’de RSVP gibi diğer bir takım protokollerde kullanılır. RSVP Servis Kalitesi’nin kontrolünde kullanılır (QoS – Quality of Service) RSVP bir sinyalleşme protokolüdür ve paketlerin uğrayacagı her noktadaki bant genişliği ve gecikme değerlerini tespit etmeye yarar. Daha detaylı bilgi için: RFC 2205

Quality of Service (QoS) Yazı boyunca birçok kez VoIP uygulamalarının gerçek zamanlı veri akışına ihtiyaç duyduğunu belirttik. Etkileşimli ses veri değişimi için beklenen budur. Ne yazık ki, TCP/IP bu tip bir amaç için uygun değildir, sadece en iyi çabayı gösterir. Paketlerin yol aldığı bütün yönlendirici (router)’lar da paket akışını yönetmenin kural ve ip uçlarını inceleyelim:

IP protokolündeki TOS alanı servis tipini tanımlar: Yüksek değer, düşük önem anlamına gelir. Ve çok düşük bir değer ise bize daha çok gerçek zamanlı akış sağlar.

H323 Sinyalleşme Protokolü H323 VoIP üzerinden arama yapmak için kullanılır (örnegin MS Netmeeting ile). Bu protokolu kullanmak için şunlar gereklidir: VoIP baglantıyı başlatabilecek terminaller. Adres çevrimi (ismi IP ‘ye) ve kabul kontrolü (admission control – kullanıcıyı kabul veya reddetmek veya bazı kullanıcıların bant genişliği kontrolü için) yapabilmek için Gatekeeper. TCP7IP – PSTN çevrimi için Gateway. Konferans için MCU (Multipoint Control Units). Proxy sunucuları. H323 sadece VoIP için değil aynı zamanda video ve veri iletişiminde de kullanılır. VoIP ile ilgili olarak, H323, G.711, G.722, G.723, G.728 ve G.729 ses codec’lerini taşıyabilir. Video için ise, H261 ve H263.

Gatekeeper Modeli

(Terminal H323) A - - -
\
(Terminal H323) B - - - D (Gatekeeper)
/
(Terminal H323) C - - -

A, B ve C aramalar için Gatekeep’a doğru ayarlanmıştır. Terminaller her açıldığında Gatekeeper’a kayıt olurlar. Herhangi bir arama için gatekeeper’a sorgu geldiğinde Gatekeeper kendisindeki kayıtlara bakarak bu sorguya cevap verir.

Gateway Modeli

Daha öncede söylediğimiz gibi gateway’ler VoIP sistemini PSTN’e entegre etmek için kullanılır. Böylece klasik telefonlar ile İnternet birleşmiş olmaktadır.

Not : Firmamıza ait ana web sitemizden www.pusula.net.tralıntılar yapılarak hazırlanmıştır.