4- Protocol Independent Multicast (PIM)

Protokolden Bağımsız Çok Noktaya Yayın (PIM)

 PIM (Protocol Independent Multicast), adından da anlaşılacağı gibi, belirli bir unicast routing protokolüne bağımlı değildir ve farklı unicast routing protokolleriyle entegre olarak çalışabilir. Ağ içerisinde unicast ve multicast yönlendirme trafiğini birbirlerinden ayırmak için geliştirilmiştir. PIM multicast trafiği için gerekli rotaları ağdaki mevcut unicast yönlendirme bilgilerini kullanarak oluşturur. 

Dense Mode (Yoğun Mod)  ve Sparse Mode (Seyrek Mod)

Dense Mode (Yoğun Mod): PIM-DM multicast trafiğini varsayılan olarak tüm router'lara yayar (flood). Eğer bir router veya ona bağlı hostlar multicast verilerini almak istemiyorsa, master router'a "prune" mesajı gönderirler.

Sparse Mode (Seyrek Mod): PIM-SM, PIM-DM'nin tersine, multicast trafiğini yalnızca talep eden router'lara iletir. Bunun için bir merkezi RP (Rendezvous Point) kullanır. Alıcılar (receivers), multicast trafiğini almak istediklerinde en yakın router'a bir "join" mesajı gönderirler.
Bu mod, multicast trafiğini daha verimli bir şekilde yönlendirdiği için, özellikle büyük ve karmaşık ağlarda tercih edilir.

Randevouz Point (RP)

Randevouz Point (RP), PIM Sparse Mode'un çalışması için kritik bir bileşendir. Statik veya Dinamik RP kullanımı tercih edilebilir.
Dinamik RP genellikle "Bootstrap Router (BSR)" veya "Anycast RP" gibi yöntemlerle belirlenir. RP, multicast kaynaklarına ve alıcılarına giden yolları yönetir. Multicast akışını almak isteyen cihazlar, ilk olarak RP'ye başvurur ve gerekli yönlendirme bilgilerini alır. RP, genellikle statik olarak yapılandırılabilir; bu durumda, tüm PIM yönlendiricileri belirli bir RP adresine erişim sağlar ve multicast akışlarını bu nokta üzerinden yönlendirir.

PIM Sparse Mode, genellikle verimlilik açısından tercih edilir. Ağ üzerindeki multicast akışını yalnızca ihtiyacı olan cihazlarla paylaşır. Bu, ağ kaynaklarının daha verimli kullanılmasını sağlar ve gereksiz trafik yükünü azaltır.


Prune: Eğer bir cihaz veya ağ segmenti, belirli bir multicast akışını almak istemiyorsa, "Prune" mesajı gönderir.



Reverse Path Forwarding (RPF)

RPF, multicast trafiğinin belirli bir kaynaktan alıcıya doğru en kısa ve en uygun yoldan iletilmesini garanti eder. Eğer trafik, beklenmedik bir yoldan geri dönmeye çalışırsa veya asimetrik bir yönlendirme durumu oluşursa, RPF bunu tespit eder ve trafiği düşürür. Bu durum multicast trafiğinin güvenli ve döngüsüz bir şekilde yönlendirilmesini sağlar.


RPF Nasıl Çalışır?

1.      Multicast Trafiğinin Yönlendirilmesi:

    • Multicast kaynağı (streamer) trafiği alıcılara gönderir. Bu trafik, yönlendiriciler üzerinden geçerken her yönlendirici RPF kontrolü uygular.

    • Trafik, R1'e ulaştığında, R1 bu trafiği hem R2 hem de R3'e bağlı olan arayüzlerinden (interfaceler) iletir.

    • R2 ve R3 ise aldıkları trafiği R4'e yönlendirirler. Bu noktada, R4 iki kopya multicast trafiği alır ve her iki trafiği de son alıcıya iletir.

2.      Multicast Trafiğinin Geri Dönüşü:

    • Multicast alıcısından (client) gelen geri dönüş trafiği R4'e ulaştığında, R4 yönlendirme tablosunu kontrol eder. RPF mekanizması burada devreye girer.

    • R4, geri dönüş trafiğini hangi arayüzden (interface) göndermesi gerektiğine karar verir. Bu karar, yönlendirme tablosunda bulunan en kısa yola dayanır.

3.      RPF Kontrolü:

    • Eğer R4, geri dönüş trafiğinin geldiği arayüzün, trafiği geri göndermesi gereken arayüzle aynı olduğunu tespit ederse (örneğin Gi 0/1), trafik normal şekilde iletilir.

    • Ancak, eğer geri gönderilecek arayüz ile gelen arayüz farklıysa, RPF mekanizması bu trafiği durdurur (drop eder). Bu sayede, asimetrik trafik ya da olası bir döngü (loop) oluşmasının önüne geçilir.