IP Aları Üzerinden Telefon Hizmetlerinde Gecikme Latency IP aları üzerinden telefon hizmetlerinin yaygınlaması ile, kurulan sistemlerdeki gecikmenin sebeplerinin ve etkilerinin anlaılması önem kazanmaktadır. Burada karılıklı telefon görümesi yapan uçlar arasında gecikmenin etkileri, gecikmeye sebep olan sistem bileenleri ve yeterli servis kalitesinin salanabilmesi için kullanılabilen yöntemler üzerinde durulmaktadır. Bir IP Telefon sistemini ina ederken ve devreye alırken, nihai sisteminin kalitesini etkileyecek birçok teknik özellik bulunmaktadır. Bu özellikler arasında ses kodlama algoritması (Voice Coding, vocoder), sistem gecikmesi, hat kalitesi bulunmaktadır. Bunlar arasında servis kalitesi üzerinde en etkili olanı kullanılacak ses kodlama algoritmasıdır. IP Telefon sistemlerinde gecikme tipik olarak milisaniye cinsinden ölçülen, konuan tarafın azından sesin çıkmasını takiben, sesin karı tarafa ulaması sırasında geçen süredir. Bu tek yönlü veya aızdan kulaa gecikme olarak da adlandırılır. Gidi dönü gecikmesi (Round Trip Delay) ise, bir telefon çarısındaki söz konusu iki adet tek yönlü gecikmenin toplamıdır. Konvansiyonel PSTN sistemlerinde, yerel çarılarda bu gecikme her zaman 150 ms nin altındadır. Bu seviyelerde gecikme birçok kii tarafından algılanamaz. Ancak, özellikle uydu üzerinden gerçekletirilen uluslararası çarılarda gidi dönü gecikme süresi rahatsız edici olabilen bir saniyelik süreyi aabilmektedir. Gecikmenin Etkisi Nedir? ki kii arasındaki telefon görümesi birçok kiinin tahmin edebileceinden daha çok konumanın zamanlamasına balıdır. Birçok görümede dinleyen taraf konuan tarafa, dinlediine dair ifadeler iletir. Böylelikle konuan taraf, dinleyen tarafın kendisini dinlediini algılar. Bir telefon görümesi sırasında bu ifadeleri, veya sözlü mimikleri doal olarak yaptıınızın siz de farkına varacaksınız. Eer bu sözlü mimikler kesilirse konuan taraf bir onay gelene kadar bekleyecektir. Eer bu sözlü mimikler gecikirse ve konuan tarafa yanlı zamanda ulaırsa, konumanın kesilmesine ve karmaaya yol açacaktır. Bunu normal bir telefon görümesinde siz de deneyebilirsiniz. Kabul Edilebilir Gecikme Miktarı Nedir? nsan faktörünün devreye girdii her konuda olduu gibi bu konuda da herkesin görüü arasında farklılıklar bulunmaktadır. Ancak gecikmenin kabul edilebilir bir üst sınırı bulunmaktadır. Gecikmenin kabul edilebilir miktarının tam olarak belirlenmesi oldukça zordur; zira kullanıcılar sunulan kalite ile salanan katma deeri dengeleyebilmektedirler. GSM gibi mobil sistemlerde gecikme süresi fazla, ses kalitesi düük olmasına ramen sunulan hareket özgürlüü kullanıcıların GSM hizmetlerini tercih etmelerini salamaktadır. Maliyet avantajı sunan IP telefon sistemleri için Brooktrout tarafından bulunan deerler aaıda gösterilmektedir. Daha fazla katma deer sunulan uygulamalarda daha yüksek gecikme sürelerinin kabul edilebilir olacaı göz önünde bulundurulmalıdır: http://yasin.kaplan.net/ - Her hakkı saklıdır 1
Mükemmel yi Zayıf Kötü 0 150 300 450 Tek yönlü gecikme (ms) ekil 1. - Kalite algısı ve gecikme Görüldüü gibi tek yönlü gecikme 150 ms yi amaya baladıında, kullanıcıların kalite algısı kötülemektedir. Eer gecikme 450 ms yi geçerse bir konumayı sürdürmek zorlamakta ve gecikme rahatsız edici olmaktadır. Seçme imkanı olduunda birçok kullanıcı, ses kalitesi tatmin edici ölçülerde olsa da, gecikme süresi 200 ms nin altında olan telefon hatlarını tercih edecektir. Gecikmenin Sebepleri Nelerdir? Genel olarak bir IP telefon sistemi, bir geni alan aı üzerinden (WAN) birbirlerine balanan ve mevcut konvansiyonel telefon cihazlarına ara yüz salayan ses geçitleri kullanılarak ina edilir. Bu tipik yapılandırma, birbirleri arasında telefon görümesi yapabilen iki ucun ses geçitleri ve ip yönlendiricileri ile balanması aaıdaki ekilde gösterilmektedir. Ses geçidi ilevi yönlendirici hatta telefon cihazına bütünleik olabilir; ancak sesin ilenmesi ve iletilmesi için aynı ilemler gerçekletirilir. Bu yüzden IP telefon sistemleri ile görüme yapılabilmesi için en az iki ses geçidi gereklidir; uygulamaya göre sadece geçidin yeri deiecektir. ekil 2. - Tipik IP telefon sistemi Bir IP telefon sisteminde gecikme iki temel kaynaktan ileri gelir. Gecikmenin bir kısmı IP telefon geçitlerinin iç dinamiklerinden geri kalanı ise IP geçitlerini birbirine balayan IP aından kaynaklanır. Gecikme kumülatif olduundan, IP telefonun sisteminin bir bileeni tarafından kaynaklanan gecikme kullanıcının maruz kalacaı toplam gecikmeyi dorudan etkileyecektir. Ses Geçidinden Kaynaklanan Gecikme Bir ses geçidinden kaynaklanan gecikmenin anlaılabilmesi için bir ses geçidinin nasıl çalıtıının öncelikle incelenmesi gereklidir. Aaıdaki ekilde bir ses geçidinde yürütülen ilemler bir blok emasında gösterilmektedir. Konvansiyonel telefon sistemine balantı sol tarafta, IP aına balantı ise sa tarafta gösterilmektedir. http://yasin.kaplan.net/ - Her hakkı saklıdır 2
Sesli bir görümede, bir telefondan dierine izlenen yolda, her ilevsel blok, geçitten kaynaklanan gecikmeye bir katkıda bulunmaktadır. Bu ilevler ve her birinin sebep olduu gecikme ile ilgili detaylı bilgiye de ayrıca deinilmektedir: PCM DSP Kodlama Çerçeveler A Ara Yüzü Sayısal aret leme Tamponlama ve Paketizasyon Kayma Tamponu A Arayüzü E1, PRI, BRI, FXO, FXS, E&M... TCP/IP Protokol Yıını Paket leme E1 Ethernet A Arayüzü IP ekil 3. - Ses geçidi ilevleri A Ara Yüzü Gecikmesi Bir ses geçidindeki a ara yüzü, geçidin bir telefona veya telefon konvansiyonel telefon aına balantısını salayan yazılın ve donanımı içerir. Tipik bir a ara yüzü a tarafından gelen sayısal sesi içeren PCM veri dizilerini çerçeveler ve dahili PCM veri yolu aracılıı ile DSP taınması için bir çevrime tabi tutar. Bu ilem sırasında tipik olarak 1 ms altında bir gecikme söz konusudur. DSP Gecikmesi Bir IP telefon geçidinde gerçekleen en karmaık ilemlerden biri sayısal iaret ilemedir. Bu ilev, sesi sıkıtıran veya açan, DTMF tonlarını tespit eden, sessizlii algılayan, DTMF tonlarını oluturan, seçime balı olarak arka plan gürültüsü ekleyen ve yankıyı iptal eden bir sayısal iaret ilemcisi (Digital Signal Processor, DSP) ve ilgili dier yazılım algoritmaları ile gerçekletirilir. Tüm bu ilemler toptan olarak ses kodlama (Vocoding) olarak adlandırılır. Ses Ayrıtırıcı DTMF Üreteci DTMF Algılayıcı Arayan uçtan gelen veya arayan uca giden sıkıtırılmı bit dizileri Hinrid Yankı Silici TDM veri yoluna giden veya gelen PCM iaretleri Ses Kodlayıcı VAD DTMF Algılayıcı + DTMF Algılayıcı ekil 4. - DSP ses sıkıtırma alt sistemi http://yasin.kaplan.net/ - Her hakkı saklıdır 3
Çerçeveleme (Framing) Gecikmesi Ses kodlamasının en verimli bir ekilde gerçekletirilebilmesi içim DSP uyarlamaları tüm veri çerçevelerinin aynı anda ilenmesine dayanır. Bu DSP nin, yüksek younluklu IP telefon uygulamalarında ihtiyaç duyulan özel yönergeleri kullanabilmesine olanak tanır. Bir sonraki örnek Çerçeve ekil 5. - Çerçeveleme ilemi Verinin çerçeveler içinde ilenmesinin yan etkisi verinin çerçeve dolduktan sonra ilenebilmesidir. Konvansiyonel sayısal telefon aından sayısal ses dizileri sabit, saniyede 8000 örnek olarak geldiinden verinin ilenmesi için kullanılan çerçevenin boyu gecikmenin miktarını dorudan etkilemektedir. Örnein 100 örnekten oluan bir çerçevenin dolması 12,5 ms sürerse 1000 örneklik çerçeve 125 ms de dolacaktır. Çerçeve boyu büyüdükçe DSP performansı artacak ancak gecikme de artacaktır. Ancak bu seçim genelde kullanıcı inisiyatifinde deildir. Her ses kodlama yöntemi kendine has standart bir çerçeve boyu kullanır. Çerçeveleme ileminden kaynaklanan gecikme dorudan seçilen ses kodlaması yöntemine balıdır: Ses Kodlaması Band Genilii (bps) Çerçeve Süresi (ms) Çerçeve Genilii (Byte) G.711 1 64000 15 120 G.723.1 5300-6300 30 24 G.729a 8000 10 10 Tablo 1. - Ses kodlaması çerçeve boyları leme Zamanı Tüm çerçeveyi oluturacak verinin toplanmasından sonra, oluturlan çerçeve üzerinde DSP algoritmaları çalıtırılmalıdır. Bu ilem için gerekli süre deikendir ancak çerçevenin tekil edilmesi için gerekli süreyi geçemez (Eer öyle olsaydı DSP bir sonraki çerçeve gelmeden önce ilemeyi bitiremezdi). Birçok yüksek younluklu IP telefon geçidi her DSP üzerinde birden fazla ses kanalını e zamanlı olarak ilediinden kodlama veya sesin ayrıtırılmasındaki ilemlerden dolayı gecikmenin hesaplanması biraz karmaıktır. Bu gibi durumlarda her DSP farklı kanallardan gelen çerçeveleri birbiri ardına sıra ile iler. Bu ilk kanalın sonraki dier kanallardan daha önce ilenecei anlamına gelir. Tam olarak yüklü bir DSP alt sisteminde son kanal için ileme ilk kanal için veri gelmeden hemen önce tamamlanır. 1 G.711 teknik olarak bir Vocoder olmamasına ramen burada sadece karılatırma amacıyla listeye eklenmitir. http://yasin.kaplan.net/ - Her hakkı saklıdır 4
Sonuç olarak DSP tek bir ses kanalı için kodlama süresi ilemeden dolayı eklenen gecikmenin hesaplanması için kullanılamaz. Bunun yerine ilemeden dolayı kaynaklanan gecikme ms cinsinden çerçeve süresi olarak ifade edilir. Bu çerçeveleme ve ilemeden kaynaklanan toplam gecikmenin çerçeve süresinin iki katını geçemeyecei anlamına gelir. Paket Yönetiminde Gecikme DSP ileme ve verinin WAN e iletilmesi arasında, sistem gecikmesine etki eden bir dizi paket yönetim ilemi bulunmaktadır: Tamponlama Ses kodlama ileminden sonra birçok IP telefon sistemi üretilen sıkıtırılmı ses verisi çerçevelerini a yazılımına iletmeden önce ayrıca tamponlar. Bu ek tamponlama geçitteki DSP nin CPU ya erimesi için ihtiyaç duyduu seferleri azaltması için gerçekletirilir. Dier durumlarda tamponlama kodlama algoritmalarının çerçeve süresine (Çerçeve uzunluuna deil) uyması için uygulanır. Örnein bir sistem bir kanalda G.723.1, dier bir kanalda G.729a kullanıyorsa çerçeve uzunlukları farklıdır (Tablo 1. e bakınız). Bir sistem tasarlanırken her G.723.1 çerçevesi için üç G.729a çerçevesini bir tamponda toplayabilir. Bu sistemin bir tamponu kodlama algoritmasından baımsız olarak 30 ms de bir iletmesine olanak tanır. Paketizasyon Kodlanmı ses WAN üzerinden iletime hazırlanmadan önce, paketler içinde düzenlenmelidir. Bu ilem tipik olarak TCP/IP protokol yıını tarafından UDP (User Datagram Protocol) ve RTP (Real Time Protocol) kullanılarak yapılır. Bu protokoller ses trafiinin zamanında, iletim sırasında paket onaylarından kaynaklanan fazlıklardan ve yeniden iletimden kaçınılması için seçilirler. Tipik bir IP telefon veri paketine bakıldıında her paket toplamı 40 Byte olan bir IP, UDP ve RTP balıı ile balar. Her balık kaynak ve alıcı IP adresleri, IP port numarası, paket sıra numarası ve verinin iletilebilmesi için gerekli dier protokol bilgilerini içerir. IP balıını bir veya daha fazla kodlanmı ses veri çerçevesi takip eder. Tek bir veri paketine birden fazla çerçevenin konulandırılması her IP telefon sistemi için göz önünde bulundurulması gereken önemli bir husustur. G.723.1 kodlamasını (Her 30 ms de 24 Byte lık çerçeveler üretir) kullanan bir sistemde, her paket 40 Byte ve 24 Byte lık veriden oluacaktır. Bu da veri yükünün 1,5 (% 166) katı büyüklüünde bir balıın kullanılması anlamına gelir! IP Balıı IP Balıı 20 Byte 20 Byte UDP Balıı UDP Balıı 8 Byte 8 Byte RTP Balıı RTP Balıı 12 Byte 12 Byte Ses Verisi Ses Verisi 40 Byte ekil 6. - Bir IP telefon paketinin anatomisi http://yasin.kaplan.net/ - Her hakkı saklıdır 5
IP paket fazlalıından kaynaklanan verimsizlii azaltmanın en yaygın yolu bir IP paketine birden fazla kodlanmı ses çerçevesini konulandırmaktır. Eer her paket ile iki çerçeve taınırsa fazlalık % 83 oranına düecek ancak bir çerçeve periyodu kadar gecikme eklenecektir. Bu bir IP telefon sistemi tasarlanırken göz önünde bulundurulması gereken baka bir husustur. Fazlalıın azaltılması için ilgi çekici baka bir yöntem aynı IP paketine farklı kanallardan gelen ses verisi çerçevelerinin konulandırılmasıdır. Bu yaklaım söz konusu ses kanallarından verinin aynı ses geçidine gittii durumlarda kullanılabilir. Bu özellik H.323 protokolü tarafından desteklenmemektedir ancak verimliliin artırılması için bazı özel uyarlamalarda kullanılabilmektedir. Kayma Tamponu Gecikmesi IP aları veri paketlerinin teslim edilecei süre ve zamanı (Aynı zamanda sırasını) garanti edemediinden veri bir uçtan dierine deiken zamanlarda ulaır. Varı zamanındaki bu deikenlik kayma (Jitter) olarak adlandırılır. Sesin decode edilmesi ilemi sırasında (Adan gelen ses paketlerinden, sesin yeniden sentezlenmesi) adan gelen verideki kaymayı karılamak durumundadır. Kaymanın karılanabilmesi için birçok sistem adan gelen en az bir paketi DSP ye geçirmeden önce tamponlar. Bu kayma tamponları veri DSP ye iletilirken zamanlamanın doruluundan emin olunmasını salar. Bu tamponlar kullanılmasaydı veride boluklar oluur ve konumayı etkilerdi. Ancak tahmin edilecei üzere kayma tamponlarının kullanılması gecikme süresinin artmasına neden olacaktır. Kayma tamponu ne kadar geni tutulursa sistemin IP aından kaynaklanan kaymaya daha baııklı olmasını salarken gecikmeyi de artıracaktır. IP Aından Kaynaklanan Gecikme Ses, sıkıtırıldıktan ve paketlendikten sonra, karı uçtaki ses geçidine ulatırılması için IP aına geçirilir. IP aı toplam gecikme süresine etki edecek potansiyel bazı özelliklere sahiptir: Ortam Eriiminden Kaynaklanan Gecikme Veri fiziksel olarak bir ortamdan dierine geçerken, her geçite ortama eriimden kaynaklanan bir gecikme meydana gelmektedir. Bir IP aı birbirine yönlendiriciler ve dier a cihazları ile balı birçok fiziksel olarak farklı ortamdan oluabildiinden, göz önünde bulundurulması gereken gecikme süreleri oluacaktır. Eer bir WAN balantısı saniyede 28800 bitlik bir hat üzerinde iletiliyorsa her bir Byte lık bilginin bu hat üzerinden iletimi 0,35 ms ye ihtiyaç vardır. Yani 100 Byte lık bir paketin iletimi 35 ms sürecektir. Bir E1 hattı kullanıldıında (2 Mbps), 100 Byte lık paket için gecikme 0,4 ms ye düecektir. Fast Ethernet (100 Mbps) kullanıldıında ise gecikme 0,008 ms olacaktır. Elbette bu veriler söz konusu hattın sadece 100 Byte lık veri iletimi için rezerve edildii durumlar için geçerlidir. Örnein veri trafiinin youn, çarıma ve tıkanmaların yaandıı bir Ethernet balantısında gecikme ideal durumdan daha fazla olacaktır. http://yasin.kaplan.net/ - Her hakkı saklıdır 6
Yönlendirmeden Kaynaklanan Gecikme IP yönlendirilebilir bir protokol olduundan, her paket bir kaynak ve alıcı adresine sahiptir. Bu basit tasarım her yönlendirici a cihazının her paketi inceleyip alıcı adrese göre (Kimi zaman kaynak adrese göre de) uygun bir yöne yönlendirmesini gerektirir. IP telefonu kavramı var olmadan önce birçok yönlendiricinin kullandıı kuyruk mekanizması gelitirilmitir. Kuyruk mekanizması yönlendirici cihazın farklı kaynaklardan gelen paketleri hafızada sıraya dizerek, sırayla ileyip yönlendirmesini salar. Ancak bu mantık IP telefon sistemlerinin gerçek zamanlı çalıma sistemi için bir zayıflık oluturmaktadır. Bu yüzden klasik yönlendiriciler tıkanma durumlarında trafik türü ne olursa olsun tüm veriyi geciktirirler. IETF tarafından tanımlanan Kaynak Ayırım Protokolü (Resource Reservation Protocol, RSVP) IP yönlendiriciler ve geçitler içindeki kaynakların oluturulması ve yönetimi için bir yol salar. RSVP, geçitler arası bir balantıda, ara a cihazları üzerinden garantili bir band genilii tahsisi yapılmasını ve paket teslim sürelerindeki deikenlii azaltarak hizmet kalitesinin artmasını salar. Ancak RSVP nin kullanılabilmesi için aı oluturan tüm cihazların RSVP yi desteklemesi ve RSVP iaretlemesi için yapılandırılmı olmaları gereklidir. Bu yüzden RSVP çok kez bir a yöneticisinin uçtan uca tüm a cihazları üzerinde denetimi olduu kapalı sistemlerde kullanılabilmektedir. Firewall lar ve Proxy Sunucuları Günümüzde birçok ada güveliin salanması için Firewall ve Proxy sunucuları kullanılmaktadır. Her iki tür güvenlik sistemi de her gelen ve giden IP paketini incelemek zorunda olduundan kayda deer bir gecikmeye sebep olabilirler. Bu yüzden IP telefonu sistemlerinde bu tür cihazların kullanımından kaçınılmaktadır. Ayrıca Firewall ve Proxy sunucularının aırı yük durumunda, nominal yük durumuna göre daha az responsif olacaı unutulmamalıdır. Firewall kullanımı yerine yönlendiricilerin birçounda dahili olarak mevcut paket filtreleme özellii nispeten daha az gecikme ile yeterli güvenliin salanmasına yardımcı olabilir. Gecikme ile Nasıl Baa Çıkılır? Gecikme ile baa çıkma, baarılı bir IP telefonu sistemi için anahtar bir konudur. Aaıda gecikme ile baa çıkmak için bazı önemli adımlar bulunmaktadır: Sistemdeki gecikme kaynakları sıralanarak bir özet hazırlanmalıdır. Sistemdeki gecikmenin anlaılabilmesi için büyük resmin görülmesi gereklidir. Seçilen portlarında paket bazlı önceliklendirmeyi destekleyen veya RSVP yi destekleyen yönlendirme cihazları kullanılmalıdır. Ayrıca yönlendirme cihazlarının yapılandırmaları azami paket çıktısını salayacak ekilde iyiletirilmelidir. IP telefonu sisteminin üzerinde çalıtıı IP aında yeterli band geniliinin mevcut olduundan emin olunmalıdır. Bu kapsamda uygun ses kodlama algoritmasının kullanılması iyi bir yaklaımdır. Ayrıca çarı bazında hatta çarı sırasında aın younluuna göre dinamik olarak kullanılan ses kodlama algoritmasını deitirebilen IP telefonu platformlarının kullanılması önerilebilir. Sunulacak hizmetin kalitesi göz önünde bulundurularak tüm denetimin salanamadıı Internet gibi ortamların kullanılmasından kaçınılmalıdır. Paket fazlalıı azaltılmaya çalıılmalıdır. Aynı alıcıya giden ses paketleri konsolide edilerek % 50 nin üzerinde verimlilik artıı salanabilir. http://yasin.kaplan.net/ - Her hakkı saklıdır 7
Örnek Toplam Gecikme Hesabı Aaıdaki örnekte bir sistem için tek yönlü gecikme hesabı gösterilmektedir: Kaynak Gecikme (ms) A ara yüzü 1 (2 Mbps E1) Çerçeveleme 30 (G.723.1) leme süresi 10 (En kötü hal) Tamponlama 0 (Ek tamponlama yok) Paketizasyon 30 (Paket baına iki çerçeve) Ortam eriim gecikmesi 10 (5-2 ms atlama) Yönlendirme 50 (Yönlendiriciye balı...) Kayma tamponu 30 (Tek tampon) Toplam tek yönlü gecikme 161 Tablo 2. - Toplam gecikme hesabı http://yasin.kaplan.net/ - Her hakkı saklıdır 8