IPv4 Multicast
Multicast temel olarak birden fazla ağ istemcisine bant genişliği tasarrufu amacıyla, tek bir akışın gönderiliyor olmasıdır. Genelde video, ip tv veya ip telefonlar için kullanılır ki bu cihazlar fazladan bant genişliği oluşturup, ağ üzerinde sıkıntılara neden olmasınlar.
Internet Protokolü (IP), multicast teknolojisi için geneli itibarı ile 224.0.0.0 ile 239.255.255.255 aralığını ayırmıştır. Yerel ağlarda ise D sınıfı(224.0.0.0/24) adresleri kullanarak multicast teknolojisini destekler. Bahsi geçen bu D sınıftaki her adres bir grubu tanımlar. IPv4 adreslemede, D sınıfı IP adresleri multicast yayınlar için kullanılmaktadır. Bu adresler için TTL (time to live) değeri 1 olduğundan yerel ağ dışına çıkamayacaktır.
IP seviyesinde multicast akışının sağlanabilmesi için, yönlendirici veya OSI 3.seviye(Layer 3) desteği olan switch’lerin multicast özelliğini desteklemesi gerekmektedir. Ipv4′de multicast işlemi için IGMP (Internet Group Management Protokol) kullanılmaktadır. IPv6’da ise MLD protokolü bu işi üstlenmektedir.
IPv4 içersinde Multicast temelde iki farklı protokol ile çalışmaktadır
· IGMP (Internet Group Management Protocol)
· PIM (Protocol Independent Multicast)
IGMP (Internet Group Management Protocol)
IGMP yönlendiriciden istemciye doğru çalışan bir protokoldür. Herhangi bir multicast grubuna üye olan istemciler düzenli olarak katılım(join) ve üyelik raporu(membership report) mesajları gönderirler. Böylece router istemci hakkında güncel bilgiye sahip olur. IGMPv1’de ayrılma(leave) mesajı olmadığından membership report ile istemcinin ayakta olup olmadığını anlarlar. IGMPv2’de ise ayrılma (leave) mesajları yer almaktadır. İstemci üyelikten ayrılmak istediği zaman leave mesajı gönderir ve multicast grubundan çıkarak trafiği dinlemez hale gelir. IGMPv3’te ise belirli bir grubun içinde belirli bir kaynak hosta üye olabilme özelliği gelmektedir.
PIM (Protocol Independent Multicast)
Esasında OSPF veya RIP gibi bir yönlendirme protokolüdür. Daha ziyade ağlar arası bir multicast yapılandırması için kullanılır. Unicast yönlendirme protokollerine, Multicast trafiğin bulaşmaması için dizayn edilmiştir. PIM protokolünün 2 temel modu vardır; Dense ve Sparse Mod.
Dense Mod:
Bu modda kök yönlendirici yerel ağdaki bütün yönlendiricilerin multicast trafiğine üye olmak istediğini varsayar. Yönlendiriciler, kendilerine bağlı olan hostlar eğer multicast trafiğini istemiyorsa kök yönlendiriciye budama (prune) mesajı gönderir ve üyelikten çıkar. Dense modda kaynak temelli bir dağıtım söz konusudur.
Sparse Mod:
Dense Modun aksine Sparse Modda yönlendirici ağdaki hiçbir ucun multicast trafiği istemediğini varsayar. Bu durumda multicast yayın almak isteyen istemciye en yakın yönlendiriciye PIM join mesajı iletilir ve birbirine direk bağlı olan yönlendiriciler PIM Join mesajını birbirleri üzerinden buluşma noktasına (Rendezvous Point – RP) iletirler. RP olarak tabir edilen yönlendirici aslında buluşma noktası olarak ayarlanmış bir yönlendiricidir. RP’in görevi multicast gruplarına giden yolları tutmaktır. RP multicast kaynağına giden yönlendiricilere join mesajını gönderir ve kaynak ile alıcı arasındaki multicast akışı başlar.
PIM ile IGMP’nin bir arada nasıl çalışabileceğine dair basit bir resim aşağıda yer almaktadır.
Yerel Ağda HP Cihazlar Üzerinde Multicast Uygulaması
Yukarıdaki resmi olan yapı içinde yapılan denemede HP cihazlar kullanıldı.
Omurga: HP 5400zl
Kenar Switch: HP 3500
Yapmış olduğum uygulamada VLAN60 içinde akan telefon trafiğini multicast trafiği haline getirmeye
Omurga Switch konfigürasyonu:
#vlan 60 // Vlan 60 içindeki ayarlar
#ip address 10.0.60.254 255.255.255.0
#tagged A1-A12 // A1-A12 portları arasında vlan 60 trunk durumda
#ip helper-address 10.0.60.1 // Vlan 60’a bağlı cihazlar IP almak için 10.0.60.1 adresine başvuracaklar
#ip igmp // igmp protokolü aktif ediliyor.
Kenar Switch Konfigürasyonu:
#Vlan 60
#no ip address
#ip igmp // igmp aktif ediliyor.
Yukarıdaki veriler doğrultusunda gereken ayarları girip, kenar switch’e bağlı olan telefon ile bir görüşme yaptıktan sonra omurga üzerinde multicast trafiği oluşup oluşmadığını kontrol etmek için
#sh ip igmp statistics
komutunu çalıştırıp çıktısını aşağıda resim olarak veriyorum
Görüldüğü gibi vlan 60 için multicast verileri oluşmuş durumda.
Multicast Avantajları:
Daha fazla Verimlilik: Network trafiğini kontrol altına alıp, CPU ve sunucu üzerindeki yükleri azaltan bir teknolojidir.
Yüksek network Performansı: Gereksiz ağ trafiklerinin engeller.
Daha Fazla Uygulama: Ağ üzerinde gereksiz yükler oluşmayacağından, yüksek bant genişliği isteyen uygulamaların sayısı arttırılabilir.
Multicast Dezavantajları:
Güvensiz Bağlantı: UDP protokolünü temel alan bir teknoloji olduğundan paketlerin sağlam bir şekilde iletiliyor olması garanti edilmemektedir. Akış içinde paket kayıpları yaşanması muhtemeldir. Bu konuda daha güvenilir multicast uygulamalarına ihtiyaç vardır
Oluşabilecek Tıkanıklıklara Karşı Stratejisi Olmaması: TCP’de kullanılan, mevcut ağ yapısının taşıyabileceğinden daha fazla yük olmamasını kontrol eden slowstart algoritması gibi bir algoritmaya sahip olmadığından, muhtemel tıkanıklıkları algılayamayacak ve tıkanıklık anında sorun çözümsüz kalacaktır. Bu durum da yine multicast uygulamaları oluşturulurken, daha farklı bir bakış açısı gerektirmektedir.
Faydalı olması dileği ile…