![]() |
Voice Over IP (IP Üzerinde Ses İletimi) MsXLabs.org GİRİŞ Bu konuda VoIP’nin (internet protokolü üzerinden sesli iletişim) bugünkü yayın ağından internet, özel IP intranetleri için yeni servisleri olanaklı kılan ve gelirler ile network uygulamalarındaki tasarrufu güçlendiren ses ve data trafiğinin birleşimini göstermektedir. Aynı zamanda diğer haberleşme stratejilerinin en düşük maliyet ve en yüksek gelirlerle voip’ye dönüşümünü de açıklamaktadır. Ayrıca VoIP haberleşme servislerinde gelecek nesile sunduğu kolaylıklar ve avantajlar ile gelecekte haberleşme alanında (özellikle ilk 5 yılda) kullanımından ve diğer teknolojilerle karşılaştırılması ayrıntılı bir şekilde anlatılmaktadır. Buna ilaveten VoIP ile VtoA (voice telephony over ATM) arasındaki rekabete ve alacakları pazar paylarına da yer verilmiştir. IP telefon teknolojisi seçiminin avantajlarından ve uzun süreli gelişiminden de bahsedilmektedir. Ayrıca (Voice over IP) internet protokolü üzerinden sesli iletişim için örnek uygulamalar verilmiş ve bunların yararlarına değinilmiştir. Günümüzde iletişim ağları artık sadece veri iletişimi için kullanılmakla kalmıyor, mevcut altyapı üzerinde multimedya uygulamaları da gerçekleşebiliyor. Kurulan altyapı maliyetlerine baktığımız zaman, kısa sürede giderlerin azaltılarak amortismanının sağlanması, firmalara önemli avantajlar sağlıyor. Yeni nesil sistemlerin gelişimiyle, veri hatları üzerinden ses ve görüntünün aktarıldığı uygulamalar ve video konferans teknolojileri her geçen gün daha da yaygınlaşıyor. INDEKS 1. VOİP (VOİCE OVER IP) NEDİR? 2. TCP/IP NEDİR? 2.1. IP Nedir?3. DİGİTAL SES TEKNOLOJİLERİNE GİRİŞ 3.1. Digital Ses Geçmişi4. VOIP VE QOS (QUALİTY OF SERVİCE) BAĞLANTISI 4.1. Bant Genişliği ve Paketler5. KODLAMA STANDARTLARI 5.1. Ses Kodlama6. VOIP PROTOKOL MİMARİSİ 6.1. H.3237. VOIP BÜTÜNLEŞİK YAZILIM MİMARİSİ 7.1. Ses Paketi Yazılım Modülü8. SİNYALLEŞME, KURAL VE YÖNETİM MODÜLLERİ 8.1. Telefon-Sinyalleşmesi Ağ Geçidi Modülü9. VoIP UYGULAMALARI 10.VoIP'NİN DİĞER TEKNOLOJİLERLE KARŞILAŞTIRMASI 10.1. FR uzeri ses (VoFR-Voice Over Frame Relay)11. VoIP'İN AVANTAJLARI 12. SON SÖZ |
1. VOIP (Voice Over IP) NEDİR? Internet ve Intranetlerin gelişerek yaygınlaşmasıyla birlikte, ses iletişiminin paketlenerek, analog teknolojilere göre daha avantajlı olan IP ağları üzerinden transferi son derece cazip ve ekonomik gözükmektedir. Zira paketlenerek IP trafiği üzerine oturtulmuş ses verilerinden oluşan telefon faturaları, özellikle deniz aşırı konuşmalar dikkate alındığında ciddi bir ucuzlama sağlıyor. Şehir içi görüşmelerde her ne kadar belirgin bir ucuzlama olamıyorsa da, deniz aşırı görüşmelerde IP telefonu yaklaşık % 60'lık bir tasarrufu sağlamakta. Tabi bunun yanı sıra firmalar oluşturdukları intranetler vasıtasıyla, dahili olarak ta Voice Over IP tekniği ile dahili fax ve telefon trafiğini oluşturarak tasarruf sağlayabilirler. Ancak tüm bu avantajlarına karşın bu teknolojiye geçmeden önce yapılması gereken bazı önemli saptamalar vardır ve bu tür teknolojilere ne kadar hazır olduğunuzu belirlemeye yarar. Bunları sıralayacak olursak;Öncelikle sahip olduğunuz networklerdeki trafiğinizi ölçümleyerek, ne kadar yoğunlukta bir data trafiğine sahip olduğunuzu belirleyin. Ayrıca bu data trafiğine bir de ses trafiğinin ilave edildiği durumlarda, altyapınızın bu daha da ağır yükü taşıyıp taşıyamayacağından emin olmanız gerekir. Bu anlamda Voice Over IP'ye geçmeden önce, belirleyeceğiniz iki kullanıcı arasında günün değişik zamanlarında bir dizi denemeler yapın ve gecikme zamanını ölçün.
Bu noktada üreticiler yukarıda belirttiğimiz gibi değişik ve kendilerine özgü ürünleri piyasaya sunmaktadırlar. Burada dikkat edilmesi gerekli şey, her üretici firma cihazı için iletilen sesin karakteristiklerinin bilinmesi gerekir. Yani sesin, Fax, Müzik, Video sesi veya sadece sesten oluşup oluşmadığı bilinmelidir. Her birinin değişik kodlama algoritması vardır ve gateway cihazlarının hangi algoritmaları destekleyip desteklemediği ve hangi standartla çalıştığı kesin olarak bilinmelidir. Ayrıca tüm bunların yanı sıra yapacağınız bir diğer şey de tüm bu karmaşık ve zor gibi görünen işlemleri olabildiğine basite indirgeyerek, kullanım kolaylığını ön planda tutmaktır. VoIP yi anlamadan once TCP/IP nin anlasılması gerekmektedir. |
2. TCP/IP 2.1. IP Nedir? Internet’e bağlı bir bilgisayar en az bir Internet protokol (IP) adresi bulunur ve bu adres onu Internet’e bağlı diğer bilgisayarlardan ayırır. Bir veri gönderdiğiniz veya aldığınız zaman (Örneğin, bir e-posta veya bir web sayfası), veri veya mesaj paket denilen küçük parçalara bölünür. Bu paketlerin her biri göndericinin adresini ve alıcınin Internet adresini ihtiva eder. Herhangi bir paket Internet’in küçük bir bölümünü anlayabilen “gateway” bilgisayara gönderilir. Gateway bilgisayar paketin gideceği adresi okur ve bu adrese göre paketi ilgili bir gateway bilgisayara gönderir ve sıra ile Internet üzerindeki diğer gateway bilgisayarlar, paketin yakın komşusundaki bilgisayara ait olduğunu anlayana kadar aynı işlemi yapar. Paketin adresini tanıyan gateway bilgisayar, paketi doğrudan adresi belirtilen bilgisayara gönderir. Birçok pakete bölünen mesajdaki her bir paket gerektiğinde Internet üzerindeki farklı bir güzergahtan gönderilir. Bu durumda paketler gideceği adrese farklı sıralarda varabilir. Internet protokol, paketlerin yalnız iletimini sağlar. Diğer bir protokol, İletim Kontrol Protokolü (Transmission Control Protocol, TCP), gelen paketleri sıraya dizer. IP, haberleşmeyi sağladığı iki uç donanım arasında devamlı bir bağlantı kurmaz ve bu nedenle bağlantısız protokol olarak adlandırılır. Internet içinde seyahat eden her bir paket, diğer paket veya veriler ile ilgisi bulunmayan bağımsız bir birim olarak kabul edilir. IP şebekesine karşın geleneksel şebeke (Devre anahtarlamalı telefon şebekesi, PSTN): IP üzerinden ses ve IP şebekeleri ile devre anahtarlamalı geleneksel şebekeler arasındaki ana fark, bir donanımdan diğer donanıma bilgi alınmasındaki metot farkıdır. Geleneksel Kamu Anahtarlamalı Telefon Şebekesinde (PSTN) bir çağrı yapıldığında, iki donanım arasında fiziksel bir hat kurulur. IP üzerinden ses durumunda, donanım arasında tahsis edilmiş bir bağlantı yoktur. Bunun yerine konuşma bilgisi veya verisi (Analog konuşma sayısal konuşmaya çevrilir) kodlanır ve paketlere bölünür. Bir donanımdan diğer donanıma bu bilgi paket anahtarlamalı şebeke üzerinden iki donanım arasında devamlı bir bağlantı kurulmadan şebeke içindeki mümkün olan en hızlı yol üzerinden iletilir. Internet, paket veri şebekelerinde bilgiyi nakletmek için aynı metodu kullanır. Her çeşit veri (Doküman, resim, ses) paketlere bölünür ve şebeke boyunca gönderilir. Paketler gideceği yere vardığı zaman, yeniden sıralanarak birleştirilir. 2.2. IP Üzerinden Sesli Çağrı Kurulması IP telefon veya yazılım telefonu (IP üzerinden ses iletimi ile donatılmış bilgisayar) analog konuşmayı sayısal paketlere çevirir. Bunlar eternet kablosu üzerinden IP şebekesine iletilirler. Kullanıcının donanımı, merkezi bir şebekede kayıtlı olduğu için, aynı donanım şebeke üzerinde herhangi bir yerde, altyapıda bir değişiklik yapılmadan kullanılabilir. I) Anolog konuşma, bir ses kodlayıcı tarafından (Voice encoder) sayısal sinyale çevrilir. II) Bu sayısal sinyal IP paketlerine bölünür ve gideceği yere sıraya bakılmaksızın, sürekli bir sinyal olmadan, gönderilir. III) IP paketleri IP şebekesi boyunca bireysel olarak iletilirler. IV) IP üzerinden sağlanan ses hizmetinin merkezi bir çağrı sunucusudur (Call server). Bu sunucu bütün çağrıları kontrol eder ve hizmetin aklını oluşturur. V) IP üzerinden ses için, gateway, PSTN şebekesine bağlantı ara yüzü oluşturur. VI) Alici tarafta bulunan bir Jitter, paket şebekenin oluşturduğu herhangi bir gecikmeyi dengeleyerek, düzgün ve kesintisiz ses çıkışını kod çözücü (Decoder) üzerinden sağlar. 2.3. TCP/IP’ye Giriş TCP/IP’nin kökleri 1960’ların sonunda ve 1970’lerin başında Amerikan Savunma Bakanlığına bağlı İleri Araştırma Projeleri Ajansının (Advanced Research Projects Agency, ARPA) yürüttüğü paket anahtarlamalı ağ deneylerine kadar uzanır. TCP/IP’nin yaratılmasını sağlayan proje, ABD’deki bilgisayarların bir felaket anında da ayakta kalabilmesini, birbiriyle iletişiminin devam etmesini amaçlıyordu. Şimdi baktığımız zaman projenin fazlasıyla amacına ulaştığını ve daha başka şeyleri de başardığını görüyoruz. TCP/IP’nin tarihi aynı zamanda Internet’in tarihidir. Internet ile TCP/IP ayrılmaz kardeşlerdir. TCP/IP, Internet’in temelidir. Bildiğiniz gibi Internet’in bir sahibi yoktur. Herkes Internet’in sahibidir, hiç kimse Internet’in sahibi değildir. Ama bu, Internet tümüyle başıboş demek de değildir. Internet’i Internet’in protokolü TCP/IP’yi düzenleyen gönüllü kuruluşlar vardır. Bunları şöyle sıralayabiliriz: Internet Society: (ISOC, Internet Derneği) 1992 yılında oluşturulmuştur. Internet’te kullanılan teknolojileri, uygulamaları, kuralları belirler. Her ülkede yerel Internet Dernekleri bulunur. Internet Architecture Board: (IAB, Internet Mimarisi Kurulu) ISOC içinde teknik kuralları öneren kuruldur. Bu kurulun altında da üç kurul bulunur. Internet’i düzenleyenler de aslında bunlardır. Bu kurullar hakkında da kısaca bilgi vereyim: Internet Engineering Task Force: Internet Mühendislik Görev Gücü: Internet standartlarını oluşturur, teknik sorunlara çözüm üretir. Internet Assigned Number Authority: Internet Numara Atama Merkezi: Internet’te kullanılan protokolleri belirler ve gelecek için planlama yapar. Internet Research Task Force: Internet Araştırma Görev Gücü: TCP/IP ile ilgili araştırma projelerinden sorumludur. Bu kısa tarihçeden sonra bir yerel alan bilgisayar ağı üzerinde TCP/IP’yi anlatmaya geçelim. Buradaki anlattıklarım Internet üzerinde de geçerli olacaktır. TCP/IP genelde bir bilgisayar ortamında iki program arasında iletişim kurulması için kullanılan bir protokoldür. Burada programlar Server (Sunucu, İşgören) ve Client (İşveren) olarak iki ayrı konumda çalışır. Kısaca söylemek gerekirse programlardan biri gelen bilgiyi işleyip diğer programa göndermeyi gerçekleştirirken, bilgiyi alan program, işlenmiş bilgiyi görüntüler ya da kullanır. Bu kavram bize iki değişik ortamda çalışan programlar yazma olanağı getirir. Genelde kullanıcıların hepsinde yalnız kullanıcı ara yüzü olan programlar çalışırken, merkezde veri tabanı erişimi, yazıcı paylaşımı ve dış dünya ile bağlantı için gereken programlar bulunur. Kullanıcı bilgilerinin ekrandan alınması sırasında kullanıcı bilgisayarında çalışan program merkezdeki programla bağlantı olmadığından tüm işlem yükü yalnız kullanıcı bilgisayarında kalır. Bu işlemler için merkez bilgisayar bir emek harcamaz. Bilgi tamamlanıp merkeze gönderildiğinde ilgili program, gelen bilgi üzerinde gereken işlemleri yapıp sonuçları kullanıcının bilgisayarına iletir. Aradaki iletişim sürekli değildir. İletişim yalnız mesaj alış verişi sırasında kurulur. Ancak aynı anda birden çok kullanıcı bir merkeze bağlantı kurabildiğinden merkezdeki bilgisayar yüksek işlem gücü ile donatılır. Kullanıcı bilgisayarları ise herkesin kullandığı PC'ler olabilir. Bazı koşullarda tüm kullanıcılara her işi yapan yetki verilmez. Ancak kullandıkları programın veri tabanına ekler yapması, ya da verilerin bazılarını değiştirmesi gerekebilir. Bu durumda sunucu tüm yetkiler ile donatılır ve client program gerekli mesajı göndererek işlemin yapılmasını ister. Burada sunucu ve client programlar aynı bilgisayarda çalışabilir. Örneğin bir java applet ile ekrandan girilen bilginin diske yazılması hakkı bir server programa mesaj gönderilerek yapılabilir. Burada java applet, bilgiyi alırken kullanıcının yetkisi olup olmadığını, güvenlik kuralları çerçevesinde kontrol eder (Kullanıcı adı ve şifresi almak gibi) ve uygun güvenlik bilgilerini mesajla birlikte sunucuya gönderir. Bu nedenle TCP/IP iletişim programları kullanıcılara client ve sunucu programlar yazarak uygulama alanlarını genişletme olanağı getirir. Burada anlattığım ve ileride anlatacağım bazı temel kavramlar, TCP/IP hakkında teknik bilgileri içermektedir. Amaç, çeşitli uygulamalarda bu kavramları kullanarak iletişim programları yazılımını kolaylaştırmaktır. 2.4. TCP/IP Internet Protokolü TCP/IP, Transmission Control Protocol/Internet Protocol ifadesinin kısaltması. Türkçe’si “İletim Kontrol Protokolü/Internet Protokolü” anlamına geliyor. Protokol belirli bir işi düzenleyen kurallar dizisi demektir. Örneğin, devlet protokolü devlet erkanının nerede duracağını, nasıl oturup kalkacağını düzenler. Ağ protokolleri de bilgisayarlar arası bağlantıyı, iletişimi düzenler. TCP/IP’nin adına bakıp tek bir protokol olduğunu düşünmemeliyiz. TCP/IP, bir protokoller kümesidir. Her biri değişik işler yapan bir yığın protokolden oluşur. TCP/IP ile kurulan bir bilgisayar ağında bir bilgisayarı üç parametre ile tanımlarız. Bu parametreler: Bilgisayarın ismi, IP adresi ve MAC adresi (Media Access Control: Ortama Erişim Adresi)’dir. TCP/IP protokoller kümesi bu üç parametreyi kullanarak bilgisayarları birbirine bağlar. Bilgisayarın ismi kullanıcı tarafından işletim sistemine yüklenirken bilgisayara verilen addır (Bilgisayarlara MUHASEBE, SATIS, VERITABANI ya da AHMET, ALPAY gibi açıklayıcı ve anımsanması kolay isimler verilir). IP adresi ise 172.44.123.89 örnek adresinde olduğu gibi dört bölmeden oluşan bir adrestir. Nokta ile birbirinden ayrılan bu bölmelerin her biri 0 (sıfır) ile 255 arasında bir değer alabilir. MAC adresi, bilgisayarların ağ kartının ya da benzer cihazlarının içine değiştirilmez bir şekilde yerleştirilmiş bulunan bir adrestir. 0020AFF-8E771 örneğinde olduğu gibi onaltılık düzende (Hexadecimal) rakamlardan oluşur. MAC adresi yerine donanım (Hardware) adresi ya da fiziksel (Phisical) adres terimleri de kullanılabilir. Ağ üzerinde iletişim aslında yalnızca MAC adresleri ile gerçekleşir. Çünkü IP adresleri TCP/IP protokolüne özeldir. Başka bir protokolde, örneğin, Novell’in kullandığı IPX/SPX protokolünde IP adresi diye bir şey yoktur. Bütün protokollerde değişmeden kalan tek şey MAC adresidir. Her protokol kendine göre bir protokol şeması kullanır ama bu şemalarda yer alan adreslerin dönüp dolaşıp en alttaki MAC adreslerine çevrilmesi gerekir. Bir bilgisayar bir başka bilgisayarın IP adresine sahipse ama MAC adresine sahip değilse Adres Çözümleme Protokolü (Address Resolution Protocol, ARP) adı verilen bir protokol kullanarak IP adresini MAC adresine çevirir. TCP/IP’nin bir protokol kümesi olduğunu belirtmiştim. İşte ARP bu kümenin bir üyesidir. İletişime geçeceği bilgisayarın IP adresini bilen bir bilgisayar ARP protokolü ile “Bu IP adresi kiminse bana MAC adresini söylesin” şeklinde bir mesaj oluşturur ve bu mesajı broadcast yapar, yani, ağdaki tüm bilgisayarlara gönderir. Ağdaki tüm bilgisayarlar bu mesajı alırlar, eğer söz konusu IP adresi kendilerine ait değilse mesajı çöpe atarlar. Mesajdaki IP adresinin sahibi olan bilgisayar ise kendi IP adresini tanır ve hemen “Bu IP adresi bana ait, benim MAC adresim şudur” şeklinde bir mesajla yanıt verir. İlk bilgisayar artık diğer bilgisayarın MAC adresini bildiği için asıl mesajını doğrudan (Broadcast yapmadan) gönderebilir. Peki, bir bilgisayar IP adresini nasıl alır? Bunun iki yolu vardır: Ya siz bu adresi elle girersiniz, ya da bir bilgisayar belli bir adres havuzundan aldığı adresleri diğer bilgisayarlara dağıtır. Adresleri elle girmenin en büyük sakıncası adreslerin, subnet mask değerinin ve default gateway gibi diğer bazı bilgilerin yanlış girilebilmesidir. Eğer ağdaki bilgisayar sayısı 5-10’u aşıyorsa adresleri elle girmek pek akıllıca değildir. IP adreslerini otomatik olarak dağıtmanın bir yolu vardır ve bu yolun adı Dinamik Bilgisayar Konfigürasyonu Protokolü (Dynamic Host Configuration Protocol, DHCP) ‘dür. Bu protokol ile bir bilgisayar DHCP sunucu (Server) olarak tanımlanır ve IP adres dağıtımı bu sunucu üzerinden yapılır. DHCP sunucu üzerinde bir IP adres havuzu tanımlıdır (Örneğin 172.123.34.100 ile 172.123.34.300 arası gibi). Henüz IP adresi almamış olan bir bilgisayar, eğer IP adresini DHCP’den alacağı belirtilmişse, açıldığında, “Ben yeni açıldım, henüz bir IP adresim yok, eğer ortamda bir DHCP sunucu varsa bana bir IP adresi göndersin” anlamında bir mesaj yayınlar (Broadcast eder). Eğer ortamda bir DHCP sunucu tanımlı ise bu mesajı alır “Ben bir DHCP sunucu olduğuma göre bu mesaja yanıt vermeliyim” şeklinde düşünüp kendisinde tanımlı olan IP adreslerinden boşta olanlardan birini seçerek bilgisayara gönderir. IP adresi alan bilgisayar artık diğer bilgisayarlarla iletişim kullanırken bu adresi kullanır. Böylece bir IP adresinin nasıl alındığını anlamış olduk, IP adresinin nasıl MAC adresine çevrildiğini anlamıştık. Şimdi “İyi ama, biz Windows 98’de ya da Windows NT’de Ağ Komşuları’na (Ya da Network Neighborg’a) tıkladığımızda karşımıza IP adresleri ya da MAC adresleri gelmiyor ki, yalnızca bilgisayar isimleri geliyor” diyebilirsiniz; haklısınız. Baştaki söylediklerimizi düşünürsek; TCP/IP dünyasında bir bilgisayarı üç şey belirler: Bilgisayarın ismi, IP adresi, MAC adresi. Bir bilgisayarın MAC adresini ya da IP adresini değil de ismini kullanmak daha kolaydır. Aksi taktirde bilgisayarların IP adreslerini daha da kötüsü MAC adreslerini ezberlemek zorunda kalabilirdik. Bu yüzden bilgisayarlara hatırlanması kolay ve açıklayıcı isimler verir ve iletişim sırasında bu isimleri kullanırız. Bilgisayar ismini kullanmak kolayımıza gidiyor ama ağ üzerinde iletişim gerçekte MAC adresleri üzerinden gerçekleşiyor. O zaman bilgisayar ismini önce IP adresine çeviren daha sonra da MAC adresine çeviren mekanizmalar, protokoller olmalıdır. IP adresini MAC adresine çeviren protokole değinmiştim (ARP Protocol). Bilgisayar adları IP adreslerine nasıl çevriliyor şimdide buna kısaca değineyim: En basit olarak şunu yapabiliriz: Bulunduğumuz yerde “Adı şu olan makine bana IP adresini bildirsin” anlamında bir mesaj broadcast ederiz. Eğer bulunduğumuz ortamda böyle bir bilgisayar varsa bize IP adresini verir. Ama bunu yapmaktan kaçınmamız gerekir. Çünkü yayınladığımız broadcast mesajlar ağ üzerindeki her bilgisayarı gereksiz yere meşgul ederler. Bu bir apartmanın önüne gelip birilerini dışarı çıkarmak için arabanın kornasına basmaya benzer. İstediğiniz kişiler dışarı çıkarlar ama bu arada tüm apartmanı ayağa kaldırırsınız. Aynı işi apartmanın kapısındaki zil tablosuna bakıp ilgili zili çalarak ta yapabilirsiniz. Bu durumda da amacınıza ulaşırsınız üstelik kimseyi de rahatsız etmemiş olursunuz. Bilgisayar ağları da benzer mekanizmalar kullanabilir. Şu anda bu iş için iki temel seçeneğiniz vardır: DNS ve WINS. “Neden iki seçenek” diye sorabilirsiniz. Çünkü bu iki ayrı seçenek iki ayrı ismi IP adresine çeviriyor. PC dünyasında bilgisayarların iki ismi vardır. Birincisi en çok 15 karakter olabilen NetBIOS ismi. Diğeri ise 256 karakter olabilen Unix/Internet ortamındaki “Host” ismi. NetBIOS ismine örnek olarak “MUHASEBE” şeklinde bir isim verebiliriz. Host ismine örnek olarak ise “bilgi.sanor.com.tr” ismini verebiliriz. Host ismindeki ilk parametre (“bilgi”) bir Internet domainindeki bilgisayarın ismidir. Host ismini geri kalanı ise o bilgisayarın bulunduğu Internet domain’ini tanımlar (sanor.com.tr). Buradaki domain, NT’deki domain’den tamamen farklıdır. İkisi arasında bir bağlantı yoktur. Bilgisayarların domain+bilgisayar isminden oluşan host ismine Tümüyle Tanımlanmış İsim (Fully Qualified Name, FQN) de denir. İsimler iki tane olunca isim/IP eşleştirme (Çözümleme) mekanizmaları da iki tane olur. Microsoft, NetBIOS isimlerini IP adresine çevirme konusunda Windows Internet Adlandırma Servisi’ni (Winsows Internet Naming Service, WINS) öneriyor. Host isimlerini IP’ye çevirme konusunda ise hem Microsoft, hem de Internet dünyası Domain İsim Sistemi (Domain Name System, DNS) mekanizmasını kullanıyor. WINS servisinde bir makineyi WINS sunucusu olarak tanımlıyoruz, bütün bilgisayarlar gidip adlarını ve IP adreslerini bu sunucuya bildiriyorlar (Yeni bir eve taşındığımızda hane halkının mahallenin muhtarına kayıt olması gibi). Böylece WINS sunucusu üzerinde ortamdaki bilgisayarların isimleri ve IP adreslerine ilişkin bir veritabanı oluşturulmuş oluyor. Bir bilgisayar ismini bildiği bir bilgisayarın IP adresini bulmak istediği zaman broadcast yapmak yerine bu sunucuya gidiyor “Şu addaki bilgisayarın ismi nedir?” Şeklinde bir soru soruyor. WINS sunucu da kendi veritabanına bakarak soruyu yanıtlıyor. Bu aşamadan sonrasını zaten açıklamıştım (ARP ile IP adresi MAC adresine çevriliyor, sonra da MAC adresi üzerinden iletişim gerçekleştiriliyor. Bu bağlamda “Bilgisayarlar ortamda bir WINS sunucunun var olup olmadığını varsa adresini nereden biliyorlar?” şeklinde bir soru aklınıza gelebilir. Bu sorunun yanıtı “WINS sunucu adresi elle girilmiştir” şeklinde verilebilir. Ağ Özellikleri sayfasına gidilir, TCP/IP protokolü seçilir ve WINS kısmından ortamdaki WINS sunucu adresi girilebilir. Peki WINS sunucu adresinin de otomatik bir şekle verilme olanağı yok mu? Yukarıda DHCP’yi anlatırken DHCP sunucunun IP adresinin yanı sıra başka bilgileri de istemci bilgisayarlara (DHCP client’lara) gönderebileceğini söylemiştik.İşte bu bilgilerden birisi de WINS sunucunun adresidir. DHCP sunucudan IP adresi alan bilgisayarlar ortamdaki WINS sunucunun adresini de öğreniyorlar ve gidip kendilerini kaydettiriyorlar. Bu işlem otomatik olarak, el değmeden son derece fenni yöntemlerle gerçekleştiriliyor. Yukarıdaki son cümle biraz abartılı görülebilir, ama bunun bir nedeni var: WINS, Microsoft tarafından bulunan ve kullanılan bir yöntemdir. Internet’te isim IP eşleştirmesi için başka bir yöntem kullanılıyor: DNS (Domain Name System). Bu sistemde bilgisayar adları ve IP adresleri DNS sunucu olarak konumlandırılan bilgisayarlara “Elle” kaydediliyor. Burada WINS’dekine benzer bir otomasyon söz konusu değil. İsim-IP bilgilerini girme işi bilgi işlem bölümü çalışanlarının üzerine kalıyor. Bilgiler DNS’e kaydedildikten sonra bir bilgisayar ismini bildiği bir bilgisayarın IP adresini öğrenmek isterse DNS sunucuya gidiyor ve adını soruyor. Bilgisayarlar ortamda bir DNS sunucu olup olmadığını nereden biliyorlar? Bu sorunun cevabı artık daha kolay: DNS sunucunun adresi ya elle statik olarak giriliyor ya da DHCP tarafından DNS sunucu adresi de dağıtılabilir. DNS sisteminin kötülüğü bilgilerin elle girilmesinde ve statik olmasındadır. Bilgisayar adlarının ve IP adreslerinin elle girilmesi ve değiştirilmesi gereklidir. Windows NT’de 4.0 versiyonuna kadar bir DNS sunucu fonksiyonu bulunmuyordu. 4.0 ile birlikte DNS sunucu fonksiyonu da eklendi. Üstelik Microsoft DNS’i WINS’e bağlamayı da başardı. 4.0’da, DNS sunucu bir kaydı kendi veritabanında bulamazsa ortamdaki bir WINS sunucuya sorabilir ve ondan aldığı yanıtı iletebilir. Bu yöntemle hem Microsoft çözümünü koruyor hem de DNS sunucu isteklerini karşılıyor. Kısaca özetlersek: TCP/IP bir protokoller kümesidir. TCP/IP, Internet’in protokolüdür. Son yıllarda ise Internet’in yanı sıra yerel bilgisayar ağlarında da hızla yaygınlaşmıştır. TCP/IP içindeki DHCP, bilgisayarlara otomatik olarak IP konfigürasyonu dağıtmak için kullanılır. ARP, IP adresini MAC adresine çevirir. WINS, NetBIOS isimlerini IP adresine çevirir. DNS, host isimlerini IP adresine çevirir. 2.5. TCP/IP’nin Yapısı Bilgisayar ağlarını anlatan kitaplara bakarsak hepsinde yedi katmanlı OSI yapısından söz edildiğini görürüz. Burada TCP/IP de ise dört katmanlı bir yapı düşünüyoruz. Aşağıdaki şekilde bu katmanları ve katmandaki protokolleri görebiliriz. 1) Uygulama (Application) 2) İletim (Transport) 3) Internet 4) Ağ Ethernet, Token-Ring, FDDI, Frame Relay, X-25, SLIP, PPP 2.6. Ağ (Network) katmanı Ağ katmanı bilgisayarlarda bulunan ağ kartını, kabloları vs. şeyleri göstermektedir. Veri paketlerinin ağa iletilmesinden ve ağdan çekilmesinden bu katman sorumludur. 2.7. Internet Katmanı İnternet Katmanında IP’ye göre düzenlenmiş veri paketlerini görüyoruz. İletim katmanından gelen veriler burada Internet paketleri haline geliyor. Paketlerin yönlendirilmesi ile ilgili işler de burada yapılıyor. Bu katmanda dört adet protokol bulunuyor: I) ARP: IP adreslerini MAC adreslerine çeviriyor. II) ICMP: Kontrol mesajları gönderip karşılığında gitti gitmedi bilgisi sağlıyor. PING komutu bu protokolü kullanarak karşı bilgisayarın TCP/IP konfigürasyonu bakımından ayakta olup olmadığını anlar. III) IGMP: Multicast gruplarını belirlemek için kullanılır. Bir ağda mesajlar üç şekilde gönderilebilir: Mesaj ya bütün makinelere (Broadcast message), ya bir gruba (Multicast message) ya da doğrudan bir makineyi (Direct message) gönderilebilir. IV) IP: Paketlerin adresleme ve yönlendirme işlemlerini yapar. 2.8. İletim (Transport) katmanı İletim Katmanında bilgisayarlar arası iletişim için oturumlar düzenlenir. Burada iki seçenek söz konusudur: I) TCP: Bağlantılı (Connection-oriented) ve güvenilir bir iletişim sağlar. Buradaki bağlantı mantıksal bir bağlantıdır: İki bilgisayarın iletişim kuralları için anlaşmaları demektir. TCP’ye uygun olarak gönderilen paketler için bir onay mesajı beklenir. Belli bir süre içerisinde onay mesajı gelmezse paket yeniden gönderilir. Bu da iletimin güvenli olması anlamına gelir. II) UDP: Bağlantısız ve güvenilir olmayan bir iletişim sunar. Bu iletişim şeklinde karşı tarafla iletişim kuralları için anlaşma gerekmediği ve giden mesajların yerine ulaşıp ulaşmadığı kontrol edilmediği için bu protokol daha hızlı bir veri iletişimi sağlar. Verinin çok hızlı bir şekilde karşı tarafa ulaştırılması veya paket kaybının önemli olmadığı durumlarda bu protokol kullanılır. 2.9. Uygulama (Application) Katmanı Uygulama katmanı ağ üzerinden iş yapacak uygulamaların bulunduğu katmandır. FTP, DNS, WINS gibi uygulamalar bu katmanda bulunur. İçinde ağ işlevi olan bir uygulama geliştirmek için iki API’miz var. API (Application Programming Interface) uygulama geliştirme arabirimi anlamına geliyor ve bir program yazarken kullanacağımız fonksiyonlar, uyacağımız kurallar anlamına geliyor. Örneğin, program yazmak için Win32 API’sini kullanırsak, Windows 95, Wındows 98 ve Windows NT ortamlarında çalışabilecek 32 bitlik bir program oluşturmuş oluruz. Internet Üzerinde ağ uygulamaları için Microsoft ve IBM’in birlikte geliştirdiği NetBIOS API’si ya da Internet ortamındaki standart API olan Sockets’in Windows uyarlaması, Windows Sockets (WinSock) kullanılır. Bir programı NetBIOS API’si ile yazarsanız bu program Microsoft İşletim Sistemi altında çalışır, fakat Internet ortamında çalışmaz. Uygulama Windows Sockets API’sine uygun yazılırsa her iki ortamda da çalışır. Sockets uyumlu bir uygulamaya örnek olarak PING programını verebiliriz. 2.10. Tanımlanmış IP protokolleri Bu tabloda yer alan IP protokollerinin kullanım biçimleri TCP/IP iletişimi için önemlidir. Örneğin, programlarda kullanılan socket açma komutunun son parametresi aşağıdaki IP protokollerinden biri olmalıdır. 2.11. IP Protokolleri Tanımları IPPROTO_IP: TCP için standart protokol IPPROTO_ICMP: Internet Kontrol Mesajları Protokolü IPPROTO_IGMP: Internet Grup Yönetim Protokolü IPPROTO_IPIP: IPIP tünelleri IPPROTO_TCP: Transmission Control Protocol (TCP) IPPROTO_EGP: Başka bir bilgisayardaki eşik protokolü IPPROTO_PUP: PUP protokolü IPPROTO_UDP: Kullanıcının tanımladığı Datagram Protokolü IPPROTO_IDP: XNS IDP Protokolü IPPROTO_RAW: 255 byte’lık Ham IP paketleri 2.12. TCP Socket Protokolleri TCP socket'lerinde bağlantı türleri socketin özelliğine göre değişir. TCP iletişiminde iki ana kavram vardır. Biri bağlantılı, diğeri bağlantısız iletişim. Bağlantılı iletişimde socket'ten mesaj bekleyen (listen komutu ile socketi dinleyen) programa bağlantı, connect komutu ile yapılır. Bağlantı sağlandıktan sonra mesaj gönderme ve alma işlemi read ve write komutları ile gerçekleşir. Bağlantılı iletişimde kullanılan socket türü SOCK_STREAM olmalıdır. TCP/IP üzerinden iletişimde, hattın yoğunluğu ve kalitesine bağımlı olarak parçalanan TCP paketleri bu socket türü kullanıldığında alıcı socket altında sıralanır ve birleştirilerek TCP katmanına ulaştırılır. Bu durumda uygulama programı, bir read komutu ile tüm mesajı bir seferde okuyabilir. Kısa mesajlar SOCK_DGRAM socket üzerinden iletilebilir. Bu tür mesajların parçalanması söz konusu olmadığından yukarıdaki sorun yaşanmaz. Bu tür mesajlarda mesaj boyu 256 byte ya da daha kısa olmalıdır. Ve mesajlar hep aynı uzunlukta olmalıdır. Bağlantısız iletişim ortamında kullanılır. Yani socket dinleyen program accept komutu kullanmaz, sockete bilgi gönderen de connect komutunu kullanmaz. Burada yalnız listen komutu vardır. Programlar karşılıklı "read" ve "write" komutu ile haberleşir. İletişim açısından çok güvenli bir socket haberleşmesi değildir. Daha güvenli ve bağlantılı iletişimde (connected) DATA_DGRAM mesajları, SOCK_SEQPACKET tipi socket'ler üzerinde iletilmelidir. Bir bilgisayar içindeki programlar arası iletişim SOCK_RAW tipi socket ile kurulabilir. Bu tür socket'lerde Data Gram tipi mesajlar iletilir. |
1 ek 3. Digital Ses Teknolojilerine Giriş 3.1. Digital Ses Geçmişi 1970’ lerin başinda, digital taşıma teknolojisi kullanıma sunuldu. Bu taşıma, digital teknolojiyi kullanan devrelerle iletişim performansını arttırmayı hedefliyordu. Bu yeni sistemin ekonomik olmasi ve ses kalitesini arttırması ve olanaklarının çok olması nedeni ile kullanıcıların isteklerini karşılar oldu. Digital Loop teknolojisi, DDS (Digital Data Service) ve bazı analog servislerin birleşimini kullanan bir çözüm oldu. Digital ortam daha güvenilir, kolay kurulur ve analog sinyallemeye göre daha az karmaşık olmaktadır. Kullanıcı tarafında analog servis kullanılırken, network tarafinda digital servis kullanılarak 12/1 oranında kablo baglantılarından kazanç saglandı. Digital sinyal yeniden oluşturulabildiginden ye gürültü sinyalleme ile birlikte güçlendirilmediginden, daha etkindir ye analog sinyalin digital olarak taşınmasının temel nedenlerinden biri bu özelliğidir. 3.2. Analog & Digital Sinyalleme Analog sinyal bilgiyi sürekli değişen bir değerle temsil eder. Analog sinyal sonsuz sayıda durumu temsil edebilir. Buna karşılık digital sinyal ardışık olmayan kesikli degerler temsil eder. Genelde 0 ve 1 degerleri sinyalin olup olmamasına göre belirlenir. Analog sinyal codec’ler aracılığı ile digital sinyale çevirilebilir. Codecle bu işlemi önlemler alarak ye quantize (bir niceligin katsayilari olarak gostermek) ederek ve kodlayarak gerçekleştirir. Codec’ler ses-frekansı kanallarını 64 Kbps digital sinyal düzeylerine çevirerek dönüştürülür. Digital sinyaller bir fiziksel ortam üzeninde birleştirilerek multiplex edilebilirler ye böylece ses taşıma için kullanılan kablo sayisi azaltilabilir. 3.3. Analog sinyalin digital hale getirilmesi Üç aşamada yapılır. Analog sinyal düzenli olarak örneklenir, bu örnekler quantize edilir ve değer 8-bit digital formda kodlanır. Örnekleme alma: Nyquist Teorisine göre örneklerin hızı en yüksek frenkansın iki katı olması gerekir. Quantize edilme: 8 temel bölüme göre yapılır ve buna chords denililir. Her chord 16 çeşit adıma bölünmüştür. Chord’lar eşit aralıkta degildir ancak orijine yolun olanlar iyiye yakındır. Chord içindeki adımlar aynıdır ancak chord’lar arasında bakıldıgında farklıdır. Orijine dogru daha fazla derecelendirme yapılmaktadir ye böylece düşük düzeydeki tone’ler i9in daha az bozulma olmaktadır. Kodlama: PBX çıkışı, ardışık ses dalga formudur. T1 digital ses algısı bu dalganın anlık 0 ve 1’ e çevrilmiş halidir. Sıkıştırma: Sıkıstırma seçeneklidir. Her ne kadar analog sinyali digital’e çevirmek şart olmasa da, sinyali sıkıştırmak band kullanımını azaltır ve yaygın olarak kullanır. 3.4. Analog’dan Sayısal’a Çevirim İşlemi Band-pass filtrelerin ses sinyallerini 300Hz ile 3400Hz arasında sınırlandırmaktadır. Böylece herhangi bir potansiyel kodlama ve kod çözmede problem yaşanmamış olur. Örnekleme: Analog sinyal periyodik aralıklarla örneklenir örneklerin çıkışına Pulse Amplitude Modulation (PAM) denilir. Quantize Etme: PAM sinyali segmente edilmiş bir derece ile işlenir. Bu adımının amacı sinyalin genlik degerini belirlemek ve buna bir tamsayı atamaktır. Encoding: 10 üzerili sayısal deger 8-bil ikili sayı sistemine çevirilir. Cıktı 8-bit’li 0 ve 1 lerden olusan bir değerdir. Bu işlem saniyede 8000 defa yapılır. En yaygın kullanılan metod Pulse Code Modulation (PCM) ğ. Digital’den analog’a çevrim işlemi: Digital PCM sinyal alıcı uca ulastıgında tekrar analog’a çevrilmesi gerekir Decoding 8-bit değerindeki bilgi decode edilerek sinyalin genligini belirleyen sayı bulunur. Bu bilgi kullanılarak orijinal genlikteki isaret bulunur. 3.5. Nyguist Kriteri Bir sinyal belli aralıklarla anlık olarak örneklendiginde ve hızı kanaldaki en yüksek frekansın iki katı olduğunda bu örneklerin bilgisi, alıcı tarafta aynı sinyali tekrar oluşturmak için yeterli bilgi içerecektir. Ses için en yüksek frekans 4000kHz’dir. Bu durumda her saniyede 8000 örnek alınmaktadır (her bir örnek 125 mikrosaniye tutmaktadır). Digital ses’in bit hızını hesaplamak için =2*4kHz*8 örnek basına bit sayısı=64000 bit/saniye Quantalama: X ekseni zamanı Y ekseni de voltaj degerlerini gostermektedir (PAM). Quantalama analog sinyalın eit olmayan aralıklara böler ve buna segment denilir. Pozifif 8 negatif 8 olmak üzere 16 segment bulunur. Bunlara chord denilir. Bu segmentlerde kendi içinde eşit 16 adıma bölünmüştür. Quantalama tekniği: Egğer burada lineer örnekler alınmış olsa, segmet ler eşit aralıklara bölünmüş olacak ve ses kalitesinde düşüş yaşanacaktır. Çünkü genelde sinyal genliği 0 volta yakın yerlerde daha yoğundur. Bu nedenle M-law ve A-law teknikleri düşük genlikteki sinyalin değerini daha ince hesaplamaktadır. Ayrıca sinyal güçlendirmede önce sıkıştırabilmekte ve buda band kazancı sağlamaktadır. M-law ve A-law giriş-cıkış ilişkisinin lineer yaklaşımıdır.8-bit kodlar kullanılarak 64 kbps bilgi akışı oluşturur. Orijinal analog sinyal ile quantalama düzeyi arasındaki farka quantalama hatası denilir. Bu digital sisteminde bir erezyon oluşturur. Quantizasyon hatası iletimi ve sinyal kalitesini etkileyen bir faktördür. M-law ve A-law ülkeleri birbiri ile iletişim kurmaları gerektiginde, M-law ülkeleri sinyalleşmesini A-law olarak değiştirmesi gerekmektedir (ITU-T). Kodlama: Saniyede alınan 8000 örnekleme 8 bit olarak kodlanırken ![]() İlk bit artı-eksi değerini gösterir.1 artı 0 eksi değer olduğunu, diğer üçbit seğmenti gösterir. Toplam 16 segment vardır. Bunlardan 8’i artı 8’i eksidir ve ilk bit polarizasyonu gosterdigi için 3 bit yeterlidir. Son 4 bit adımları gösterir toplam 16 adım vardır. |
4.2 VoIP ve QoS (Quality of Service) Bağlantısı Paket ağları üzerinden ses taşımanın düşük maliyet ve bant genişliği tasarrufu her pket ağına göre QoS yayınlarıyla birleştirilmiştir. 4.2.1. Delay (Gecikme) Gecikme iki probleme sebep olur: yankı ve konuşmaların üstüste binmesi. Yankı, uzak uçtan konuşan kişinin ses sinyallerinin yansıyarak yine kendisine dönmesine sebep olur. Yankı gidiş-dönüş gecikmesinin 50 milisaniyeden fazla olması durumunda önemli sorunlara yol açar. Eğer yankı önemli bir kalite problemi olarak algılanırsa paket ağları üzerinden ses taşıma sistemlerinin yankı kontrolü (echo control) ve bir anlamda yankı iptaline (echo cancellation) ihtiyacı vardır. Konuşmanın üstüste binmesi (ya da bir konuşmacının diğeri konuşurken araya girmesi), tek yönlü gecikmenin 250 milisaniyeden uzun olduğunda önemli hale gelir. Bu yüzden uçtan-uca gecikme paket ağların üzerinde en büyük tehdit ve gecikmeyi azaltmak için bir gereklilik durumuna gelir. Takip eden kısımda uçtan-uca paket üzerinden ses taşımasındaki gecikmelerin kaynakları anlatılmıştır: Gecikmeyi engellemek için standart-tabanlı çalışmalar: · Paket önceliklendirme · Kaynak Rezervasyonu(Bandın rezerve edilmesi) · Paket Parçalama · Gecikmeye duyarlı bağlantılar için Pos Çalışması · Paket kayıbını engelleyebilmek için transfer yolunda sabit band ayrımı · Uçtan uca gecikmedeki değişkenliğin azaltılması(Jitter) · Uçtan uca gecikmenin azaltılması 4.2.2. Biriktirme Gecikmesi - Accumulation Delay (Bazen Algoritmik gecikme diye de adlandırılır) Bu gecikme ses kodlayıcısı tarafından ses örnekleri içeren çerçevelerin (frames) biriktirilmesinden kaynaklanır. Ses kodlayıcısının tipine ve tek bir örnek zamandan (.125 mikrosaniye) çok milisaniyeyle bağlantılıdır. Aşağıda ses kodlayıcılar ve çerçeve zamanları gösterilmiştir:
Bu gecikme, normal kodlama süreci ve kodlanmış örneklerin pakete çevrilerek paket ağları üzerinden geçirilmesi sonucunda oluşur. Kodlama gecikmesi, kullanılan işlemci yürütme zamanı ve algoritmanın fonksiyonudur. Paket ağlarının bant genişliğinin fazla kullanılmaması için sık sık birden fazla ses-kodu çerçevesi bir pakette birleştirilir. Örneğin 3 adet G.729 kod kelimesi, 30 milisaniyelik bir konuşmaya karşılık gelir, belki de birleştirilerek ve paketlenerek bir adet paket haline getirilir. 4.2.4. Ağ Gecikmesi Bu gecikme fiziksel ortamdan, ses verilerini geçirmek için kullanılan kurallardan ve alıcı tarafında paket stresini kaldırmak için kullanılan tamponlardan kaynaklanır. Ağ gecikmesi, ağdaki bağlantıların kapasitesinin ve ağ üzerinden geçirilen paketler üzerinde yapılan işlemlerin bir fonksiyonudur. Paket ağından geçen her paketin, paket-gecikme değişiminin ortadan kaldırılması için maruz kaldığı stres tamponları gecikme ekler. Bazı frame relay ve IP ağlarında paket-gecikmesi değişimi 70 ila 100 milisaniye civarına eriştiğinde bu gecikme tüm gecikmeler içinde önemli bir yer alır. 4.2.5. Stress (Jitter) Gecikme problemi, stresin, paketlerin geçtiği ağ yüzünden ortaya çıkan değişken iç paket zamanlaması, kaldırılması gereksinimiyle birleşir. Stresi kaldırmak için paketlerin biriktirilmesi ve bu paketlerin yeteri kadar süre tutularak yavaş paketlerin de gelip dinleyiciye doğru sırada çalınması gerekir. Bu ek gecikmeye sebep olur. İki zıt amaç olan gecikmeyi en aza indirme ve stresi kaldırma üzerine ağdaki stresin kaldırılması için stres tampon boyutunun, zaman değişimi gereksinimine uydurulması için çeşitli yaklaşımlar ortaya çıkmıştır. Bu adaptasyon stres tamponunun boyutunu ve gecikmesini en aza indirmek için açık bir amaçtır ve aynı zamanda stres yüzünden oluşan tamponun akışının düşük kalmasını engeller. Stres tampon boyutunu adapte etmek için iki yaklaşım aşağıda detaylandırılmıştır. Seçilecek olan yaklaşım paketlerin geçtiği ağa göre olmalıdır. Birinci yaklaşım, stres tamponundaki paket seviyesi değişimi belirli bir zaman periyodunda ölçülerek, tampon boyutu yükseltilerek hesaplanan strese uydurulur. Bu yaklaşım en iyi ATM ağları gibi istikrarlı bir stres oluşturan ağlarda çalışır. İkinci yaklaşımda geç gelen paket sayılarını belirledikten sonra bu paketlerin başarıyla işlenmiş paketlere oranı oluşturulur. Bu oran daha sonra stres tamponunu, daha önceden belirlenmiş, mazur görülebilecek geç gelen paket oranına uydurmak için kullanılır. Bu yaklaşım daha çok paket içgeliş değişkenliği yüksek olan IP ağlarında kullanılır. Anlatılan tekniklerin yanı sıra, tutarlı bir QoS kullanılarak da en az gecikme ve stres ile karşılaşılabilir. 4.2.6. Kayıp-Paket Telafisi Kullanılan paket ağı ile bağlantılı olarak paket kayıpları çok daha önemli bir sorun olabilir. IP ağları servis garantisi veremedikleri için ATM ağlarından çok daha fazla oranda kayıp ses paketine sebep olurlar. Şu anki IP ağları bütün ses çerçevelerine veri çerçeveleriymiş gibi davranırlar. Bant genişliği yüklenmeleri ve tıkanıklık şartlarında ses çerçeveleri, veri çerçeveleriyle aynı oranda iptal edilirler. Fakat veri çerçeveleri zaman-duyarlı değildirler ve iptal edilen paketler yeniden transfer edilerek düzeltilebilirler. Kayıp ses paketleri ise bu şekilde düzeltilemez. Bazı paket üzerinden ses taşıma yazılımları kayıp paket sorununu çözmek için aşağıdaki gibi davranırlar:
Telefon ağındaki yankı, 4-telli devreler ve 2 telli devreleri birbirine çeviren melez devrelerdeki sinyal yansımalarından kaynaklanır. Bu yansımalar konuşan kullanıcının kendi sesini duymasına sebep olur. Yankı, geleneksel devre-anahtarlı telefon ağlarında bile bulunmaktadır. Fakat dolaşım süresi 50 milisaniyeden az olduğu için ve yankının her telefon cihazında çıkan çevre sesiyle maskelenmesinden ötürü bu gürültü kabul edilebilir boyuttadır. Yankı, paket üzerinden ses taşıma sistemlerinde dolaşım süresi hemen hemen her ağda 50 milisaniyeden fazla olduğu için problem yaratır. Bu nedenle her zaman yankı iptal etme teknikleri kullanılır. Yankı iptalleme yazılımları için ITU standartlarında G.165 performans gereksinimlerini açıklar. ITU, G.IEC şartnamesi, performans gereksinimleri için daha katı kurallar açıklar. Yankı telefon ağından paket ağına doğru yaratılır. Yankı iptalleyicisi paket ağından gelen ve giden ses verisini karşılaştırır. Melez telefon ağından, paket ağına geçen yolda yankı sayısal bir filtreyle kaldırılır. |
1 ek 5. Kodlama Standartları 5.1. Ses Kodlama 5.1.1. Voice form coders Bunlar analog sinyali saniyede 8000 örnekleme olarak kodlar ve bunun için lineer olmayan yaklaşımlar kullanir. PCM, ADPCM, A-law, M-law bunlara örnektir. 5.1.2. Vocoders Bunlar çok az band genişliğinde çalışmakta ancak ses sentetik gelmektedir. Bu sese alışmak için egitim gerekmektedir. Bu tür bir kodlama askeri uygulamalarda kullanilir ve birçok uygulama half-duplex’ dir; LPC, channel, phase. 5.1.3. Hybrid coders Analyses-by-synthesis coding’ in bir parçasıdır ve burada kullanılan kodlama teknikleri 4.8 kbps ile 16 kbps aralığında band kullanır. Bu teknik sürekli analiz yaparak, nasıl bir / ses dalgası bekledigini öğrenir. Bu nedenle 5 ms ötesine bakması gerekmektedir. Geri besleme döngüsü codebook’ un sürekli ögrenmesini sağlar; APC, CELP, SELP. 5.1.4. Ses sıkıstırma artı- eksileri Sıkıştırma bandı ve bellegi daha etkin kullanmayı saglar dolayısı ile zaman ve maliyet kazancına neden olur. Sıkıstırma algoritmaları ses için optimize edilmiştir. Quantizasyon gecikmesi, tandem switching ve echo sıkıstırmasının neden olabilecegi problemlerdir. 5.2. Ses Sıkıştırma Teknikleri IP Telefonu uygulamalarındaki en temel işlem sesin sıkıştırılmasıdır. Bu amaçla çeşitli teknik ve standartlar uygulanmaktadır. Bu sıkıştırma ve çözümleme işlemini yapan cihazlara genellikle Codec (Coder-Decoder) denilmektedir. 5.2.1 Wave form algoritmaları (coders) Analog sinyali saniyede 8000 örnekleme alır, band kullanımını azaltmak için bir önceki sinyalin şimdiki sinyalle farkını alır. Band kullanımı ne kadar azaltılırsa, ses kalitesi o kadar etkilenir. Önceki kodlama degerlerine bakarak sonraki degerleri tahmin etme ve buna göre kodlamaya dayanmaktadir. Adaptive kısmi saniyede gönderilmesi gereken bit miktarını düşünür. ADPCM izleyicisi 4-bitlik degerler üretir. Bu durumda 16 farklı deger tutabilir. CCITT’ nin ADPCM’ i bütün 16 biti gönderirken ANSI, ADPCM 15 farkli deger kullanır ve 0000’ i iletmez. 5.2.2. Source Algoritmaları Bu tür kodlayıcılara vocoder denilir. Ses karakteristiginin avantajlarını kullanır. Lineer filtre ayarlamasi ile band kullanımını azaltır. Codebook excitation index ile tekrarlanan bilgiler kodlanır. CELP (Code Exited Linear Processing ) analog ses sinyalini aşagıdaki gibi çevirir. —Coder’ a gelen bilgi 8-bit PCM’ den 16 bit linear PCM’e çevrilir. —Bir codebook sürekli ögrenmek için bir codebook kullanir ve ses dalgası formunu tahmin eder. —Oder, beyan ses üretici ile harekete geçer. —Matematiksel sonuç ses karşı taraftaki decorder’ a gönderilir; LD-CELP (low-delay). —Bu da CELP gibi çalışır ancak bazı farkları vardır. —LD-CELP daha küçük bir codebook kullanir ve 16 kbps hızında çalışarak gecikmeyi 2-5 ms arasinda tutar ( çok ileriye bakmaz). —8 kHz girişte, her beş örnek için 10-bit’lik bir kod üretilir. —Bu üretilen kodlarda 4 tanesine subframe denilir ve kodlaması yaklaşık 2.5 ms tutar. —Bu frame’ lerin iki adeti 5 ms’ lik bloklar şeklinde gönderilir. — CS-CELP (Conjugate Structure), CELP’ in bir varyasyonunu alır ve aşagıdakı gibi çalışır. 80-byte frame’leri buffer’lar ve işler (bu yaklaşık 10 ms tutar). 5 ms ayrica ileriye bakması için tutar. Gürültü azaltımı ve pitch-sentezi ayrıca bir işlem zamanı ekler. 5.2.3. G729 ve G729'a sıkıştırma G729 ITU tarafindan belirlenmiş ve CS-CELP teknigini kullanan ve cisco tarafindan desteklenen sesi kalitesi bozulmadan 8-kbps paketlere dönüştüren bir standarttır. Dogru olarak gerçekleştirildiginde, 8 kbps G729 teknigi 32 kbps ADPCM kadar iyi bir kalite verebilmektedir. Bu nedenle bir DSP çipinde bir ses kanalı taşınabilmektedir. G729a ise G729’ un kardeşidir ve 8 kbps sıkıştırma kullanır, ancak G729 kadar iyi ses kalitesi yoktur. Daha az karmaşık oldugu için, bir DSP çip üzerinde iki kanal kullanılabilir. 5.3. Kodlama Standartları
![]() |
7 ek 6. VoIP Protokol Mimarisi Bağlantıya dayalı ses trafiğinin, bağlantısız IP ağlarda başarılı olarak görünmesini sağlamak gerekir. Bağlantısız ağların daha bağlantıya dayalı olarak entegre edilebilmesi için sinyalleme ile ilgili bir takım geliştirmelerin yapılması gerekir. Bağlantısız ağların daha bağlantıya dayalı olarak görünmesini sağlamak gerekir. Aşağıda VoIP de kullanılan temel protokoller verilmistir. H.323 etkileşimli konferans geliştirilmiş ITU standartı bir protokoldür.H323 ISDN standartlarından geliştirilmiştir. Esnek vekompleks bir protokoldür. MGCP (Media Gateway Control Protocol ) gelişen PSTN’ler için gateway kontrol protokoludur. SIP (Session Intiation Protocol): IETF Protokolüdür. Draft Standartıa yakındır Interaktif ve interaktif olmayan konferans için kullanılır. Basit ancak H323’e gore daha olgunlaşmıştır. RTP(Real time Transport Protocol):IETF protocoludur. RTCP (Real Time Transport Control Protocol ) RTP akışı için band kontrol bilgisi sağlar. LLQ( Low Latency Qüeuing) VIP tabanlı priority quering (CBWFQ) 6.1. H.323 ITU-T tarafından iki ya da daha fazla taraf arasında IP benzeri QoS desteği olmayan bir ağ üzerinde ses ya da görüntü trafiğini taşımak için geliştirilen H.323 standardı bir protokol grubudur. Önceleri yerel ağlar üzerinde çokluortam konferansı için geliştirilmiş, fakat sonradan IP üzerinden ses uygulamasını kapsayacak şekilde genişletilmiştir. Bu standardın tanımlanmasında Microsoft, IBM, İntel, telefon operatörleri ve ISP lerden oluşan birçok kurum ve firmanın geniş katılımı ve desteği sağlanmıştır. İnternet telefonu amacıyla kullanılan en geniş ve en etkin standartlardan birisidir. Ses ile beraber tüm çokluortam (data, ses, video, resim gibi) uygulamalarını desteklemektedir. H.323 standardı bir şemsiye standart olup birçok standardı kapsamaktadır. Bu standartlar ses kodlama, video kodlama, sistem kontrol, çoklama, çokluortam yayın senronizasyonu ve yapısını içermektedir. Bu standartlar PSTN, Mobil, ATM, F/R, LAN, WAN, IP tabanlı İnternet gibi şebekeleri içermektedir. IP telefonun etkileşmek zorunda kalacağı sistemlere ilişkin ITU standartlarından bazıları şunlardır: H.323 LAN şebekeleri için Görüntülü Telefon sistemleri ve ekipmanlarının standardını içeren bir protokoldur. QoS gibi parametreler içermemektedir. ITU 96c H.324 PSTN şebekelerinde kullanılan görüntülü telefon sistemi ve ekipmanlarının standartlarını belirleyen bir protokoldur. H.324/M ise GSM gibi hücresel Mobile networkler için geliştirilmiş bir standartdır. (ITU 96d) H.310 Genişbantlı ses ve görüntülü iletişim sistemlerini ve terminallerini kapsamayan bir standartdır. H.321 Genişbantlı ISDN şebekeleri için görüntülü telefon terminalleri standartlarını belirler. H.322 Lan şebekeleri için görüntülü telefon sistemleri ve terminallerini kapsamayan bir standardır. QoS parametreleri içermektedir. 6.1.1. H.323 ve Ses ITU SG16 çalışma grubu G.729 kodlama standardını ve H.323 multimedya standardını IP telefonu uygulamalarında default standart olarak Ocak 1998 tarihinde onaylayarak belirlemiştir. G.729 standardında 8 Kbps kodlama teknolojisi kullanmaktadır. G.723.1' in en büyük avantajı ise iki farklı kodlama oranını desteklemesidir. (5.3–6.3 Kbps) . G.723.1 kodlama teknolojisi özellikle PSTN şebekesindeki uygulamalar için geliştirildiğinden H.324 ve H.324/M terminal standartları ile son derece uyumlu olarak çalışmaktadır. Bununla beraber H.323 terminal standardı ile de uyumu sağlanarak internet uygulamalarında kullanılmaktadır. Ayrıca H.323 standardı G.711 (64 Kbps PCM), G.722. G.728, G.729, MPEG–1 Audio kodlama standartlarını deslemektedir. H.323 terminal standardı GSM, IS–54, IS–95 gibi standartları ile de başarıyla kullanılmaktadır. H.245 sistem kontrol protokolu ise tüm ses standartlarında kontrol ve sinyalleşme protokolu olarak kullanılmaktadır. Farklı networklerde çalışma ortamını sağlayan H.323, H.320, H.322, H.324, H.324/I ve H.324/M gibi terminal standartları bulunmaktadır. H.323 protokolu, standardın bir parçası olarak tanımlanan, gateway aracılığıyla H.320 (ISDN), H.321 (B-ISDN), H.324 (PSTN), H.324/M (Mobile) terminal standartları ile uyumlu çalışabilmektedir. 6.1.2. Video Video standardı H.261. ve H.263 protokolu ile sağlanmaktadır. H.261 düşük bit oranlarını desteklememektedir. Bu terminal standartları video sinyallerinin hem kodlama hemde kod çözme işlemlerini kapsamaktadır. ISDN ağlarında ise H.320 videokonferans terminal standartları kullanılmaktadır. Bu standart 128 Kbps 'lık bir bantgenişliğinden ses, video ve data transferine imkan vermektedir. Bu standartlar H.323 ile uyumlu çalışmaktadırlar ve H.320 terminal ISDN standardı ile H.261 ve H.263 görüntü standartları birbirini desteklemektedir. H.323 standardı, özellikle tanımladığı cihazların gerçekleştirimine (implementation) ilişkin fazla ayrıntıya girmediği yönünde eleştiriler almıştır. 6.1.3. H.323 Bileşenleri Şekil-3'de temel mimarisi gösterilen H.323 standardı dört farklı tip uç birim tanımlar. Bu uç birimler şunlardır:
Gateway PSTN ağları ile IP ağları arasındaki arayüzler ya da geçiş elemanları olarak çalışan başka bir ifade ile interworking fonksiyonlarını yerine getiren modüllerdir. Bir gateway, paket anahtarlamalı bir ağ üzerindeki H.323 uyumlu terminaller ile devre anahtarlamalı bir ağdaki diğer H.323 terminalleri veya diğer bir gateway arasında gerçek zamanlı çift yönlü trafik sağlayan bir ağda "end point" olarak çalışır. Diğer ITU terminalleri H.310 (B-ISDN), H.320 (ISDN) , H.321 (ATM), H.322 (GQoS-LAN), H.324 (PSTN), H.324 (Mobile) ya da POTS terminaller olabilir. Gateway iletim formatları (örneğin H.323 uyumlu bir uçdaki H.225.0 bir terminalle H.320 bir uçtaki H.221 bir terminal arasındaki dönüşüm) ve işaretleşme benzeri iletişim prosedürleri (H.323 bir uçtaki H.245 ile H.320 arasındaki bir H.242 arasındaki dönüşüm gibi) arasında gerekli dönüşümleri yapar. Bu dönüşümlerin nasıl olacağı H.246'da tanımlanmıştır. IP ağ ile PSTN ağ arasındaki çağrı kurulum ve kaldırma (call setup and clearing) işlemlerini de gateawayler üstlenir. Video, ses ve data formatları arasındaki dönüşüm de gatewaylerde gerçekleştirilir. Kavramsal olarak gateway TIPHON modeline göre şu fonksiyonel birimlerden oluşur;
Gatewaylerin fonksiyonel birimlere ayrılmaları sonucu bunlar arasındaki iletişimleri yürütecek yeni bir protokole de ihtiyaç duyulmuş ve bu nedenle Media Gateway Control Protocol (MGCP) geliştirilmeye başlanmıştır. MGCP IETF'nin Megaco çalışma grubu tarafından önerilen ve henüz taslak aşamasında olan bir protokoldür. Bağlantı denetimi (connection control), bant içi işaretleşme (in-band signalling) ve aygıt yönetimi (device management) birimlerinden oluşur. Gatewayler kapasitelerine göre veya bir ağ aygıtı olarak üretim biçimlerine göre sınıflandırılabilir. Kapasitelerine göre yapılan sınıflandırma şu şekilde olabilir.
Gatekeeper ETSI/TIPHON tanımı ile gatekeeper "terminallerin ve gatewaylerin kayıt, kabul ve statü (Registration, Admission and Status -RAS-) takibinden sorumlu olan ağ modulüdür. Gatekeeperlar zone yönetimini ve çağrı işleme/işaretleşme işlevlerinide yerine getirirler."
Multi-point Control Unit (MCU) MCU ağ'da ikiden fazla terminalin ya da Gateway’in çoklu bir konferansa katılımlarını sağlamaya yarayan cihazlardır. Sonradan çoklu bir konferansa dönüşebilecek ikili görüşmeler de MCU'lar aracılığı ile sağlanabilir. MCU iki kısımdan oluşur: Bunlar Multipoint Controller (MC) (bulunması zorunludur) ve Multipoint Processor (MP) (bulunması zorunlu değildir) olarak adlandırılır. MC çağrı süreçlerine, konferansa katılacak bütün terminallerin ortak iletişim seviyelerinde bulunmalarını sağlamak için iletişim parametleri üzerindeki uzlaşmaları (negotiation) sağlar. MP, MC'nin denetiminde medya streamlerinin işlenmesi (mixing, switching vb.) görevlerini yürütür. MP, yürütülen konferansın tipine göre tek bir media streamini ya da daha çok sayıda media streamini işleyebilir. En basit hali ile MCU tek bir MC'den oluşur. 6.1.4. H.323 Terminallerin Haberleşmesi Şekil-5'te iki H.323 uç arasında gatekeeper kullanılmadan cağrı kurulum ve kaldırılma mekanizması (call setup and clearing) anlatılmıştır. Kullanılması mecburi olan bütün Q.931 ve H.245 mesajları listelenmiştir. Her mesajın kaynak terminali tarafından atanan bir sıra numarası (sequence number) vardır. İletişim A terminalinden B terminaline hedef adresi içeren bir Setup (1) mesajı göndermesi ile başlar. B terminali bir Q.931 Alerting (2) mesajı ve takiben eğer çağrı kabul edilirse bir Connect (3) mesajı göndererek cevap verir. Bu noktada çağrı kurulması işlemi tamamlanmış olur ve H.245 uzlaşma (negotiation) işlemi başlar. Her iki terminalde terminal yeteneklerini (terminal capabilities) terminalCapabilitySet (4) mesajları göndererek karşı tarafa bildirir. Terminal yeteneklerine örnek olarak media tipleri, kodlama yöntemleri verilebilir. Terminaller bu mesajlara termCapabilitySetAck mesajları ile cevap verirler. Oturum sırasında herhangi bir anda terminal yetenekleri yeniden gönderilebilir. Bu aşamadan sonra Master/Slave belirleme aşamasına (6–8) geçilir. H.245 Master/Slave belirleme prosedürlerinin her ikiside bir konferansa MC olarak servis verebilecek uç noktalar ya da her ikisi de iki-yönlü iletişim kanalı açmaya çalışan uç noktalar arasında ortaya çıkabilecek anlaşmazlıkları gidermek için kullanılır. Prosedürde master ve slave uç noktayı belirlemek amacı ile her iki uç nokta H.245 masterSlave Determination mesajları ile birbirine gelişigüzel (random) sayılar aktarır. H.323 uç noktaların hepsi hem master hem de slave olarak çalışma yeteneğine sahip olmalıdır. Master/Slave belirleme prosedüründen sonra iki terminal de mantıksal kanal açmak için mesajlaşmaya başlarlar (9–10). Ses ve görüntü kanalları tek bir yöne doğru açılırken, data kanalları iki yönlü açılır. Terminaller gerektiği kadar kanal açmakta serbesttir. Şekildeki akış tek bir kanal için gösterilmiştir. Açılacak her kanal için aynı prosedür uygulanır. Oturumun (ya da iletişimin) kapatılmasına taraflardan birinin göndereceği endSession mesajı ile başlanır. endSession mesajını alan taraf aynı mesajla cevap verir (11) ve oturum bu ilk mesajı gönderen tarafın ReleaseComplete mesajı göndermesi ile son bulur. Şekil-6'da gatekeeper kullanılarak iki H.323 nokta arasında oturum başlatılması gösterilmiştir. Konferans başlamadan önce her iki terminalde GatekeeperDiscovery multicast (GRQ) mesajı göndererek bağlanacakları bir gatekeeper ararlar. Bu mesajı alan gatekeeper GatekeeperConfirm (GCF) mesajı ile kendisine bağlanmak isteyen terminali kabul eder yadaGatekeeperReject (GRJ) mesajı ile terminali reddeder. Gatekeper terminalleri kabul ettikten sonra her iki terminalde takma (alias) isimlerini RegistrationRequest (RRQ) mesajları ile gatekeeperdan kayıt (register) talebinde bulunur. Gatekeeper bu isteği ya RegistrationConfirm (RCF) mesajı ile kabul eder ya da Registration Reject (RRJ) mesajı ile reddeder. Takma isimlerin kullanılması ile aramaların transport adreslerine göre daha kullanıcı-dostu olan (e-mail, isim vb.) adreslerle yapılması sağlanabilir. Bir uç nokta ya da Gatekeeper bir başka uç noktanın adresini Gatekeeperdan LocationRequest (LRQ) mesajı ile sorabilir ve Gatekeeper sorulan adres bilgisini içeren LocationConfirm mesajı (LCF) ile cevap verebilir. Uç noktalardan biri çağrı başlatmak istediğinde Gatekeeperdan AdmissionRequest (ARQ) mesajı ile onay ister. Gatekeeper çağrıya AdmissionConfirm (ACF) mesajı ile onay verir ya da Admission Reject (ARJ) mesajı ile reddeder. Eğer çağrı isteği kabul edilirse çağrıyı başlatan uç tarafçağırmak istediği adrese Q.931 Setup mesajıgöndererir. Setup mesajını alan taraf da bağlı olduğu Gatekeeperdan ARQ mesajı ile çağrıyı kabul etmek için onay ister. Çağrı kabul edildikten sonra Q.931 işaret akışı H.245 uzlaşma (negotiation) mesajları ile tamamlanır. ARQ mesajları konferans boyunca taraflara gerekecek bant genişliği taleplerini de içerir. Eğer H.245 uzlaşma mesajları sırasında uç taraflardan biri ARQ mesajında belirtilenden daha fazla bant genişliğine ihtiyaç duyarsa, Gatekeeper'a BandwidthRequest (BRQ) mesajı göndererek bant genişliği talebinde bulunur. Gatekeeper BandwidthConfirm mesajı ile talebi kabul ettiğini ya da Bandwidth Reject (BRJ) mesajı ile talebi kabul etmediğini terminale bildirir. Çağrı sonlandığı zaman her iki terminal de Gatekeeper'a DisengageRequest (DRQ) mesajları göndererek çağrının sonlandırıldığını bildirir. Gatekeeper DRQ mesajını DisengageConfirm (DCF) mesajı ile kabul eder veya Disengage Reject (DRJ) mesajı ile reddeder. Terminaller Gatekeeper'a gönderecekleri UnregisterRequest (URQ) mesajları ile kendilerini Gatekeeperdan sildirebilirler. Gatekeeper bu mesaja UnregisterConfirm (UF) ya da Unregister Reject (URJ) mesajlarından biri ile cevap verebilir. 6.2. RTP ve RTCP RTP IETF tarafından geliştirilmiş bir standartdır. H.323 ile beraber kullanılmaktadır. RTP uçtan uca bir işletim protokoludur. Ses gibi gerçek zamanlı ve gecikmeye duyarlı sevislerde uçtan uca ağ fonksiyonunu ve dağıtım servislerini sağlar. UDP üzerinde çalışır. RTP çokluortam uygulamalarında iki önemli görevi yerini getirir. RTP'nin en önemli görevi senkronizasyon mekanizmasını sağlamaktır. Diğer bir görevi ise datanın resim ve ses kodlamasını tanımlamaktadır. VoIP’deRTP kuyruklama ile birlikte çalışarak ses trafiğini diğer trafiğe göre önceliklendirir. Sağladıgı gorevler:
RTCP protokolu ile ses ve video bilgilerinin oturum kontrol fonsiyonları, data oranları ve diğer parametreleri ayarlanabilmektedir. Ayrıca RTCP ile ses ve video sinyalleri kontrol edilebilmektedir. Ses ve video sinyalleri RTP protokolunda farklı oturumlardan gönderilmektedir. 6.3. Media Gateway Control Protocol (MGCP)
Birçok data trafıği bir düzeye kadar gürültülüye ve gecikmelere tolerans gösterebilir. Buna karşılık, görüntü ve ses ile ilgili frafiğin, sürekli ve gürültüsüz olması gerekmektedir. Bu sebepden dolayı ses, video ve radyo sinyal trafiğinin network üzerinde, kalitesi yüksek servis gerektirdiğinden (QoS) problemlerin çıkmasına neden olmaktadır. Resource Reservation Protocol (RSVP), IP network üzerinde gecikmeye duyarlı olan multimedia trafiğinin taşınmasını sağlar. RSVP’de network bantgenişliği önceden rezerve edilmektedir. Bu da multicast ve unicast networklerde kaliteli servis (QoS) garantisi verir. Unicast servislerde tek bir alıcı olmasına karşılık multicast servislerde daha çok alıcı olabilir. Önceden bantgenişliği reservasyonu yapılması, bantgenişliğinden de tasarruf sağlanmış olur. Bunun sebebi de eğer bantgenişliği reservasyonu için yeteri kadar bantgenişliği olamması durumunda transmisyon da olmamasıdır. RSVP TCP/IP tabanalı networklerde uctan-uca haberleşme sağlayan bir protokoldür. The Internet Engineering Task Force (IETF) RSVP’nin standart bir protokol olması için çalışmaktadır. Burada dikkat edilmesi gereken bir husus, RSVP’nin bir routing protokolü olmadığıdır. RSVP IP networkü üzerinde bir control protokolüdür, OSI modeline güre trasport layer seviyesidir. RSVP routing protokolleri ile birlikte çalışır. Bu anlamda, RSVP Inetrnet Kontrol Mesaj Protokul’ü (ICMP) ve Internet Gateway Mesaj Protokolü (IGMP) ile benzerliklere sahiptir. RSVP ile aynı kaynağa ve QoS’e ait mesajlar sıralı bir data akışı ile taşınırlar. Bu data akışı da bağlantı (session) olarak bilinir. Bir RSVP işleminde;
Aslında, kaynak reservasyon isteği bir routerdan bir sonrakine atlayarak tüm ağı dolaşarak gerçekleşir. RSVP’nin bu şekilde çalışması hem multicast hem de unicast ağlarda problemlere sebep olmaktadır. Örneğin lokal yönlendirici, alıcının reservasyon isteğini kabul etmesine karşın ağdaki diğer yönlendiriciler reddedebilir. Eğer böyle olursa, RSVP paketleri ağda kilitli kalır ve veri aktarımı gerçekleştirilemez. IETF, RSVP çalışma grubu RSVP’nin bu problemi için yeni stratejiler geliştirmekteler. Networkün değişmesi veya taşınması problemlere sebep olabilir. Bu problemi gidermek için, yönlendiriciler RSVP mesajlarını yeniliyebilmelidirler. Yani, göderici belirli aralıklarla RSVP rota mesajları gönderecek, alıcı da sürekli reservasyon isteğini yenileyecektir. Böylece network sürekli reservasyon isteklerinin varliğinindan haberdar olacaktır. Bu durumda, ağ’da meydana gelecek bir değişmeden reservasyon istekleri zarar görmeyecek ve bu istekler hesaba katılacaktır. RSVP düzenli olarak yeni reservesyon mesajlarını gözden geçirir. İşe yarammaz mesajları da siler. 6.5. SAP, SDP ve SIP protocolleri SAP(Session Announcement Protocol), SDP(Session Description Protocol), SIP ( Session Initialization Protocol) protocolleri ağ üzerindeki kullanıcılara multicast session larla ilgili duyuruları ve bilgileri sağlarlar. Bir kere kullanıcı bir session’ı görmek ya da dinlemek istediğinde SIP protocolu arama istepini kuran be bağlantıyı sağlayan protocoldur. Örneğin cisco IP/TV yazılımında, session duyuru protocolu iyi bilinen bir port numarası ile multicast yayın yapan SAP paketi yönetim ve kontrol bilgilerini içeren bir başlık bulundurur. Ayrıca payload kısmında SDP bilgileri bulunur. SAP paketi, yayın ya da silme ile ilgili bir pakettir. SDP sessionı tanımlamak için kullanılan sıkıştırılmış bir pakettir ve text tabanlıdır. SIP paketi, aramalarla ilgili bağlantı kurma sonlandırma ile ilgili komut ve yanıtlar içerir. Ayrıca, guvenlik prosay ve taşıma (TCP ve UDP ) servisleri ile ilgili özellikleri kapsar. 6.5.1. SIP SIP, IETF'nin Multiparty Multimedia Session Control (MMUSIC) grubu tarafından geliştirilen multimedia uygulamaları için bir protokol grubudur. MMUSIC H.323'ün aksine küçük bir çekirdek protokol ile başlayıp bu protokolü ihtiyaçlara göre geliştirmeyi amaçlamıştır. Temel olarak HTTP protokolünü alan bu protokol, e-mail gibi diğer internet servisleri ile de benzerlik göstermektedir. Temel SIP mimarisi Şekil-2'de gösterildiği gibidir. Bu protokole göre bir çağrı başlatıldığı zaman, gelen çağrı, çağrıyı başlatan tarafa servis veren bir sunucuya yönlendirilir. Çağrının yönlendirildiği sunucu çağrıyı reddedebilir veya bir başka sunucuya ya da terminale yönlendirebilir. Çağrı bu şekildecevap verecek bir sunucubulununcaya kadar ağda hiyerarşik olarak ilerletilir. SIP basit bir protokoldür ve basitliği nedeni ile karmaşık hizmetlerin verilmesi gerektiği durumlarda diğer protokollerden faydalanması gerekebilir. SIP'in çağrı kontrol mesajlarının geçirilebileceği güvenilir bir kanal açmak için INVITE ve ACK mesajları bulunmaktadır. SIP bir alt seviye taşıyıcı protokol için minimum varsayımları yapar. Bu protokol güvenilirliğini kendisi sağlayıp TCP'nin güvenlik ile ilgili normlarını kullanmaya gerek duymaz. SIP kullanılacak codec uzlaşması (negotiation) için yani o oturumda hangi codec'in kullanılacağına karar vermek için Session Description Protocol (SDP)'yi kullanmaktadır. SIP’in sağladığı servisler ise;
SIP Sistemi temel olarak iki parçadan oluşur.
|
1 ek 8. Sinyalleşme, Kural ve Yönetim Modülleri VoIP yazılımı, yeni bir arama olup olmadığı kontrol ederek telefon sinyalleşmesini yerine getirir ve aramayı gideceği yere yönlendirmek için adres bilgisini (çevrilen numara) toplar. Çok çeşitli telefon-sinyalleşme kuralını destekler ve birçok ortama uyabilir. Ses kartının yazılımı ve konfigürasyonu ayarlama, kolay yükleme ve uzaktan yenilemeye izin vermek için bir ağ-yönetim sisteminden indirilebilir. Yazılım, ses tonu belirlemek ve yaratmak için DSP ile etkileşime girmesinin yanı sıra hat denetimine bağlı olan çalışma kontrol tarzını da belirler ve sinyalleşme fonksiyonları için telefon ara yüzüyle etkileşir. Yazılım, ağ yönetimi vasıtasıyla konfigürasyon verisini alır ve çalışma-sistemi servislerini değerlendirir. 8.1. Telefon-Sinyalleşmesi Ağ Geçidi Modülü Yukarıdaki şekil, aşağıdaki bileşenlerden oluşan sinyalleşme yazılımının mimarisini göstermektedir:
Ağ-yönetim yazılımı MIB'de belirtilen 3 temel servise göre düzenlenmiştir:
|
1 ek 7. VoIP Bütünleşik Yazılım Mimarisi Telefon cihazlarını paket ağlarıyla birleştirmek için temel olarak iki bilgi tipi ele alınmalıdır: ses ve sinyalleşme bilgisi. Resim 4'te de gösterildiği gibi, VoIP yazılımı, hem telefon ağlarından gelen bilgi akımlarıyla, hem de bunları tek paket akımlarına çevirerek paket ağlarına geçirmekle karşı karşıyadır. Yazılım 4 genel fonksiyona bölünmüştür. 7.1. Ses Paketi Yazılım Modülü Bu yazılım, ses-işletim modülü olarak da bilinir, genellikle bit sayısal sinyal işlemcisi (DSP) üzerinde çalışır, ses örneklerini, paket ağı üzerinden iletmek için hazırlar. Yankı iptali, ses sıkıştırması, ses-aktivasyon denetimi, stresin kaldırılması, saat senkronizasyonu ve ses paketlenmesi bu modülün bileşenleri tarafından yapılmaktadır. 7.2. Telefon-Sinyalleşme Ağ Geçidi Yazılım Modülü Bu yazılım telefon cihazı ile iletişime geçip, bağlantı kurulabilmesi için paket kuralı modülü tarafından kullanılan durum değişkliklerini (açık, kapalı, trunk yakalama vb.) sinyallere çevirir. Kulak, ağız, yer ve manyeto (E&M) tip I, II, III, IV; döngü ya da zemin başlangıcı dış merkez santral istasyonu (FXS); dış santral ofisi (FXO); ve bütünleşik Servisler Sayısal Ağı (ISDN) temel sıra arayüzü (BRI) ve temel sıra arayüzü'nü (PRI) destekler. 7.3. Paket Kuralı Modülü Bu modül sinyal bilgisini işler ve bunları telefon-sinyal kurallarından paket ağları üzerinden bağlantı kurulması için gereken özel paket-sinyal kuralına çevirir (örneğin; Q.933 ve frame relay üzerinden ses sinyali). Ayrıca paket ağlarına iletim yapılmadan ses ve sinyal paketlerine kural-başlıkları ekler. 7.4. Ağ-Yönetim Modülü Bu modül, paket sistemleri üzerinden ses taşınmasında kullanılan diğer modüllerin konfigürasyonu ve bakımı için gereken ses yönetim modülü arayüzünü ihtiva eder. Bütün yönetim bilgisi Amerikan Ulusal Standartları Enstitüsü (ANSI) tarafından açıklanmıştır. Sinyalleşme ağ-yönetim kuralı (SNMP) V1 sözdizimi ile de uyumludur. Forumlarda standartlar gelişinceye kadar tescilli ses-paket yönetim bilgi tabanı (MIB) desteklenecektir. Çoklu ses-paket kuralları ve uygulamaları kullanımı için DSP yazılımında iyi tanımlanmış bir arayüz sağlamak için yazılım bölümlenmiştir. DSP ses verisini işler ve ses paketlerini genel ses başlıklarıyla mikroişlemciye gönderir. Mikroişlemci, gerçek zaman kuralı (RTP), frame relay üzerinden ses taşınması (VoFR) ve ATM üzerinden ses telefonlaşmaşı (VToA) gibi uygulama tarafından istenilen özel ses-paket kurallarına uygun genel ses başlıklarının ve ses paketlerinin taşınmasından sorumludur. Mikroişlemci ayrıca sinyal bilgisini işlemekten ve bunu desteklenen telefon-sinyalleşme kurallarından paket ağı sinyalleşme kuralına çevirmekle yükümlüdür (örneğin: H.323 IP, frame relay ya da ATM sinyalleşmesi). Bu bölümlenme, sıkıştırma, yankı iptalleme ve ses-aktivitesi algılama gibi genel ses-işleme fonksiyonları ile uygulamalara özel sinyalleme arasında temiz bir arayüz ve ses kuralı işlenmesini sağlar. |
3 ek 9. VoIP Uygulamaları Birinci uygulama Resim 1, çok ofisli bir organizasyonun veri ve ses trafiğini birleştirerek merkez ofis ile olan iletişiminde maliyeti düşürmek istemesidir. Bu sorun, hâlihazırda bulunan veri trafiğinin içerisine ses iletişimi de eklenerek çözüme ulaştırılacaktır. Tipik olarak bu ağ konfigürasyonunda kullanılacak olan uygulama sınırlı band genişliğine ses trafiğinin de sıkıştırılmasıyla fayda sağlayacaktır. Paket üzerinden ses internetworking fonksiyonu (Internetworking Function - IWF), paket networkü üzerinden birleştirilmiş ses ve data transferinin yapılabilmesini sağlayan donanım ve yazılımların fiziksel açıklaması. Bu durumda IWF'in desteklemesi gereken arabirimler doğrudan telefonlara bağlı olan analog arabirimler ya da anahtar sistemlerdir. Bu durumda IWF, hem yan ofislerdeki PBX'lerin hem de Merkez ofisteki PBX'e bağlı olan telefon terminallerinin fonksiyonlarını emüle etmelidir. IWF bu işlemi bu fonksiyonları yerine getiren bir sinyalleme yazılımı ile başarır. İkinci VoIP uygulaması Resim 2, bir trunk uygulamasıdır. Bu senaryoda, bir şirket 2 lokasyondaki ofislerinin santrallerini paket ağları üzerinden birbirine bağlayarak buralardaki PBX'leri birleştirmek istemektedir. Bu uygulama bir önceki uygulamadan daha yüksek kapasiteli sayısal kanal destekleyen, 1,544 ya da 2,048 Mbps destekli T1/E1 arabirimi, bir IWF gerektirir. IWF, PBX'in sinyalleşme fonksiyonlarını emüle eder, bunu sonucunda da şirketin iletişim maliyetlerinde gözle görülebilir bir düşüş yaşanır. VoIP yazılımının üçüncü uygulaması Resim 3'te de görülebildiği gibi hücresel ağların birbirlerine bağlanılmasıdır. Sayısal hücresel bir ağda, ses verisi hücresel telefon tarafından havadan transfer edilebilmek için evvelce sıkıştırılmış ve paketlenmiştir. Bu sayede paket ağları bant genişliğinden yüksek oranda tasarruf ile sıkıştırılmış hücresel ses paketlerini transfer ederler. IWF, hücresel ses verisini PSTN (Public Switched Telephone Network) biçimine transfer etme fonksiyonunu desteklemelidir.
|
| Saat: 16:59 |
©2005 - 2026, MsXLabs - MaviKaranlık