Genel Bakis
VoIP Nedir? VoIP, 'V'oice 'o'ver 'I'nternet 'P'rotokol (Internet üzerinden ses) açilimina karsilik gelmektedir. VoIP, ses’i (genellikle insan sesi) IP paketleri halinde internet üzerinden tasimaktir.
Nasil Çalisir? Yillar önce, uzak bir noktaya digital formda sinyal gönderme kesfedildi. Sinyal yollanmadan önce dijital formata ADC (analog to digital converter – analog’dan dijital’e dönüstürücü) ile ile çevrilmekte ve karsi tarafa yollanmakta, karsi taraf sinyali aldiginda tekrar analog formata çevirmek için DAC (Digital to analog converter – dijital’den analog’a dönüstürücü) kullanilmaktadir. VoIP’de bu sekilde çalismaktadir, dijital formattaki ses, veri paketleri olarak karsiya yollanmakta ve karsi tarafta tekrar dijital ses haline dönüstürülmektedir. Dijital format daha iyi kontrol edilebilmektedir: Sikistirabiliriz, yönlendirebiliriz, daha iyi bir formata çevirebiliriz ve daha fazlasi. Zaten bilindigi gibi dijital sinyalin gürültü toleransi, analog’a göre daha fazladir. (Örnek: GSM) TCP/IP aglarinda, IP paketleri iletisim kontrolü için header ve veri transferi için payload kisimlarini içerir. VoIP bunlari agda ilerleyebilmek için ve hedefe ulasmak için kullanir.
Ses(kaynak) --- ADC --- Internet --- DAC --- Ses(hedef)
VoIP kullanmanin PSTN’e göre avantjlari nelerdir? Eger PSTN hat kullaniyorsaniz, genel olarak hatti kullandiginiz süre kadar, o hatti size saglayan ve yöneten sirkete para ödersiniz. Eger uzun süre konusursaniz daha çok ödersiniz. Ve ayrica ayni anda birden fazla kisi ile konusamazsiniz. (Telekonferans) VoIP’de ise bunun tersine ayni anda ihtiyaciniz olan herkezle görüsebilirsiniz (Karsi tarafinda VoIP kullaniyor olmasi lazim). Istediginiz kadar ve ayni anda birçok kisi ile konusabilirsiniz.
Peki neden herkes VoIP kullanmiyor? Ne yazik ki hala VoIP mimarisi ile Internet arasindaki entegrasyonda hala problemlerimiz bulunmakta. Tahmin edebileceginiz gibi ses trafigi gerçek zamanli akisa sahip olmalidir (VoIP’de, sesinizin karsi tarafa gitmesi veya sizin onu duymaniz için beklemeniz gerekmektedir) Bu internetin yogunlugu ile alakalidir. Internet, birçok yönlendirici (router) dan olusan heterojen bir yapiya sahiptir, 20-30 civarinda veya daha fazla yönlendiriciden geçerek yol almak ve bunlarin yogunluklari göz önüne alinirsa bu paketlerin yol alacagi zaman artacaktir. Demek ki iyi bir performans için bazi seyleri degistirmek gerekmektedir. Takip eden bölümde bu büyük problemi nasil asabilecegimizi anlatmaya çalisacagiz. Genel olarak, VoIP uygulamalari için internet üzerinde belli bir bant genisligini garanti etmek çok zordur.
VoIP hakkinda teknik bilgi Bu bölümde VoIP hakkinda bazi önemli bilgileri vermeye çalisacagiz. Daha sonraki açiklamalari anlamak için gerekli bilgilerdir bunlar.
VoIP iletisimine genel bakis VoIP iletisimi için sunlara ihtiyacimiz vardir: Öncelikle analog sinyali dijital sinyale (bits) çevirmek için ADC gereklidir. Ve bu dijital bit’lerin iletisim için iyi bir formatla sikistirilmis olmasi olmasi gerekmektedir. Bunun için ileride görecegimiz birkaç protokol vardir. Simdi bu ses paketlerini gerçek zamanli protokol ile veri paketlerine ilistirmemiz gerekmektedir. (genellikle IP üzerinde UDP, onunda üzerinde RTP) Karsi tarafi aramak için sinyallesme protokolüne ihtiyacimiz var. Bunu ITU-T H.323 yapacaktir. Karsi tarafa ulasan paketlerin tekrar açilmasi,verilerin düzenlenmesi, analog ses sinyaline çevrilmesi ve son olarak ses kartina veya telefona yollanmasi gerekmektedir. Bütün bu islemlerin gerçek zamanli olarak gerçeklesmesi gerekmektedir. Çünkü çok geriden gelen paketlerin beklenmesi gibi bir seçenek yoktur.
Temel Mimari
Ses )) ADC – Sikistirma Algoritmasi - RTP’nin TCP/IP içine yerlestirilmesi ----- ----> | <---- | Ses (( DAC – Açma Algoritmasi - RTP’nin TCP/IP’den ayiklanmasi -----
Analog’dan Dijital’e Dönüstürmek Bu islem donanim ile gerçeklestirilir, genellikle kartlar üzerinde ADC ile. Günümüzde bütün ses kartlari 16 bit – 22050 Hz dönüsüme destek vermektedir (Örnekleme için Nyquist kuralina göre 44100 Hz’e ihtiyaç duyulur). Gerekli bant genisligi ise : 2 Byte * 44100 (sn. ‘deki örnekleme) = 88200 byte/sn, stereo için176.4 kbyte/sn. VoIP’de ses yollamak için 176 Kbyte gibi bir bant genisilgine ihtiyacimiz olmaz. Sonraki bölümlerde görecegimiz kodlama seçenekleri ile bunu düsürmekteyiz.
Sikistirma Algoritmalari Simdi elimizde standart formatta olmasi gereken ve hizli iletilmesi gereken dijital veri var. • PCM, Pulse Code Modulation, ITU-T G.711 Ses bant genisligi 4 kHz, tabii ki örnekleme bant genisilgi 8 kHz olmali (Nyquits’e göre) Her örnekleme 8 bit’tir (Bu 256 ayri deger demek). Net hiz : 8000 Hz * 8 bit = 64 kbit/sn, yani tipik dijital telefon hatti. Gerçek uygulamalarda Kuzey Amerika için mu-law ve Avrupa için a-law varyantlari olan ve logaritmik olarak 12 yada 13 bit analog sinyallesme kullanilir. • ADPCM, Adaptive differential PCM, ITU-T G.726 32 kbps gerektiren ses paketi ile gerçek paket arasindaki farki çeviren sikistirma teknigidir. • 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 Zamanli Konusma • ACELP, ITU-T G.723.1, 5.3kbps, Gerçek Zamanli Konusma • LPC-10, 2.5 kbps!! Son olarak siralanan protokoller oldukça önemli olup, düsük bant genisligi kullanimini garanti etmektedirler. Özellikle G.723.1 çok yüksek bir MOS (Mean Opinion Score – Ses kalitesinin ölçülmesinde kullanilan bir deger) degerine sahiptir.
RTP (Real Time Transport Protocol – Gerçek Zamanli Tasima Protokolü) Simdi elimizde ham veri var ve TCP/IP yiginina yerlestirmemiz gerekmekte. Yapi su sekildedir: VoIP veri paketleri RTP UDP IP I,II katmanlar
VoIP veri paketleri, UDP-IP paketlerinin içindeki RTP paketlerinde yer alir. Öncelikle, VoIP TCP kullanamaz çünkü, gerçek zamanli uygulamalar için TCP çok agir. Bu yüzden UDP kullanilir. Ikinci olarak, UDP, paketlerin karsi tarafa ulasip ulasmadigini veya ne kadar zamanda ulastigini kontrol etmez. Bu iki deger sesin kalitesi için önemlidir. RTP bu problemi çözerek paketlerin alindigi tarafta paketleri uygun siraya dizer ve paketlerin ulasmasi için çok uzun süre beklemez, böylece konusma kesintilere ugramaz. Fakat hala sürekli veri akisina ihtiyaç duymaktadir.
Real Time Transport Protocol – Gerçek Zamanli Tasima 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 numarasi | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | zaman bilgisi | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | senkronizasyon kaynak (SSRC) tanimlayicisi | +=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ | yardimci kaynak (CSRC) tanimlayicilar | | .... | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Tanimlar: V : Kullanilan RTP’nin versiyonu P : Padding X : Baslik ekleri CC : CSRC tanimlayicilarinin sayisini veren alan. CSRC alaninin kullanim yeri örnegin konferans konusmalaridir. M : Isaret bit’I PT : Payload tipi RTP ile ilgili tam bilgiyi RFC 1889 ve 1890’dan alabilirsiniz.
RSVP VoIP’de RSVP gibi diger bir takim protokollerde kullanilir. RSVP Servis Kalitesi’nin kontrolünde kullanilir (QoS – Quality of Service) RSVP bir sinyallesme protokolüdür ve paketlerin ugrayacagi her noktadaki bant genisligi ve gecikme degerlerini tespit etmeye yarar. Daha detayli bilgi için: RFC 2205
Quality of Service (QoS) Yazi boyunca birçok kez VoIP uygulamalarinin gerçek zamanli veri akisina ihtiyaç duydugunu ve etkilesimli ses veri degisimi için beklenende budur zaten. Ne yazik ki, TCP/IP bu tip bir amaç için uygun degildir, sadece en iyi çabayi gösterir. Paketlerin yol aldigi bütün yönlendirici (router)’lar da paket akisini yönetmenin kural ve ip uçlarini inceleyelim: IP protokolündeki TOS alani servis tipini tanimlar: Yüksek deger, düsük önem anlamina gelir. Ve çok düsük bir deger ise bize daha çok gerçek zamanli akis saglar.
H323 Sinyallesme Protokolü H323 VoIP üzerinden arama yapmak için kullanilir (örnegin MS Netmeeting ile). Bu protokolu kullanmak için sunlar gereklidir: VoIP baglantiyi baslatabilecek terminaller. Adres çevrimi (ismi IP ‘ye) ve kabul kontrolu (admission control – kullaniciyi kabul veya reddetmek veya bazi kullanicilarin bant genisligi kontrolü için) yapabilmek için Gatekeeper. TCP7IP – PSTN çevrimi için Gateway. Konferans için MCU (Multipoint Control Units). Proxy sunuculari. H323 sadece VoIP için degil ayni zamanda video ve veri iletisiminde de kullanilir. VoIP ile ilgili olarak, H323, G.711, G.722, G.723, G.728 ve G.729 ses codec’lerini tasiyabilir. 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 dogru ayarlanmistir. Terminaller her açildiginda Gatekeeper’a kayit olurlar. Herhangi bir arama için gatekeepr’a sorgu geldiginde Gatekeeper kendisindeki kayitlara bakarak bu sorguya cevap verir.
Gateway Modeli Daha öncede söyledigimiz gibi gateway’ler VoIP sistemini PSTN’e entegre etmek için kullanilir. Böylece klasik telefonlar ile Internet birlesmis olmaktadir.
|