Aracılığıyla paylaş


Çok Noktaya Yayın Programlama

Çok noktaya yayın programlama, Windows Soketleri aracılığıyla etkinleştirilir. Windows Soketleri, yuva seçenekleri veya IOCTL'ler kullanılarak IPv6'da Çok Noktaya Yayın Dinleyicisi Bulma (MLD) sürüm 1 (MLDv1) ve 2 (MLDv2) ve İnternet Grup Yönetimi Protokolü sürüm 2 (IGMPv2) ve 3 (IGMPv3) etkinleştirir. Bu bölümde Windows uygulaması açıklanır, Windows Yuvaları kullanılarak çok noktaya yayın programlamanın nasıl etkinleştirileceği açıklanır ve kullanımını göstermek için programlama örnekleri sağlanır.

Bundan sonra IGMPv2 olarak adlandırılacak IGMP'nin ikinci sürümü, konakların belirli bir ağ arabirimi üzerinden IPv4 multicast adresiyle tanımlanan multicast gruplarına katılmalarını ve bu gruplardan ayrılmalarını sağlar. Windows Yuvaları, bir uygulamanın bu tür grupları belirli yuvalarda birleştirmesine ve bırakmasına olanak tanır. Ancak, IGMPv2'nin bir dezavantajı, IGMPv2 grubuna katılmış tüm IPv4 kaynak adreslerinin tüm üyelere ileterek grubu su basması ve İnternet radyo istasyonu gibi birincil bir kaynak gerektiren iletimler için kullanılamaz hale getirmesidir. IGMPv2 ile ilgili sorun, tek bir IPv4 kaynak adresini (hatta birkaç kaynağı) seçmeli olarak seçememesi ve belirli bir çok noktaya yayın grubu için gönderenleri (sahte yayıncılar veya hizmet reddi failleri gibi) engelleyememesidir. IGMPv3 bu eksiklikleri giderir.

Windows Sockets ve IGMPv3 ile, uygulamalar belirli bir multicast IPv4 kaynak adresi ve multicast grup çifti seçebilir. Ayrıca, Windows Yuvaları geliştiricilerin belirli bir kaynak/grup çiftinde ek yayıncılara seçmeli olarak izin vermesine veya uygulamaların belirli yayıncıları engellemesine olanak tanır. IGMPv3, Windows Vista ve sonraki sürümlerde desteklenir.

IPv6'da MLD'nin MLDv1 olarak adlandırılan ilk sürümü IGMPv2'ye çok benzer ve aynı sınırlamalardan muzdariptir. MLDv1, konakların belirli bir ağ arabiriminde IPv6 çok noktaya yayın adresiyle tanımlanan çok noktaya yayın gruplarına katılmasını ve gruptan ayrılmasını sağlar. Windows Yuvaları, bir uygulamanın bu tür grupları belirli yuvalarda birleştirmesine ve bırakmasına olanak tanır. Bununla birlikte, MLDv1 grubuna katılmış tüm IPv6 kaynak adresleri tüm üyelere iletim yapabilir, bu da grubu su basabilir ve birincil kaynak gerektiren iletimler için kullanılamaz hale gelebilir. MLDv1 ile ilgili sorun, tek bir IPv6 kaynak adresini (hatta birkaç kaynağı) seçmeli olarak seçememesi ve belirli bir çok noktaya yayın grubu için gönderenleri (sahte yayıncılar veya hizmet reddi failleri gibi) engelleyememesidir. MLDv2 bu eksiklikleri giderir.

Windows Sockets ve MLDv2 ile, uygulamalar belirli bir çok noktaya yayın IPv6 kaynak adresi ve çok noktaya yayın grup çifti seçebilirler. Ayrıca, Windows Yuvaları geliştiricilerin belirli bir kaynak/grup çiftinde ek yayıncılara seçmeli olarak izin vermesine veya uygulamaların belirli yayıncıları engellemesine olanak tanır. MLDv2, Windows Vista ve sonraki sürümlerde desteklenir.

Bir uygulama programcının Windows'ta çok noktaya yayın uygulamaları geliştirirken kullanabileceği iki yaklaşım vardır. İlk yaklaşım değişim tabanlıdır; çoklu yayın kaynakları, iletim sırasında bile gerektiğinde soket seçenekleri kullanılarak eklenir veya kaldırılır. İkinci yaklaşım son durum tabanlıdır; kaynak adresleri ve dahil edilen/dışlanan tüm adresler bir IOCTL ile belirtilir. Her yaklaşım geçerli bir çoklama uygulamasıdır, ancak geliştiriciler soket seçeneklerini ve değişiklik tabanlı yaklaşımı daha sezgisel ve esnek olduğunu düşünebilir.

Bu bölümde aşağıdaki sayfalar vardır:

Sayfa başlığı Açıklama
Windows Soketlerini Kullanarak MLD ve IGMP Değişiklik tabanlı programlama yaklaşımını kullanarak Windows Sockets programlamasında kullanılabilen multicast soket seçeneklerini numaralandırır. İki çok noktaya yayın uygulama kategorisi tanımlar.
Çok Noktaya Yayın Yuva Seçeneği Davranışı Çok noktaya yayın yuva seçeneklerini belirli bir sırada çağırmanın etkilerini ve gereksinimlerini açıklamak için kapsamlı bir tablo sağlar.
Çok Noktaya Yayın Programlama Örneği Windows'ta çok noktaya yayın uygulamalarını etkinleştirmek için yuva seçeneklerinin nasıl kullanılacağını gösteren programlama kod parçacığı.
Son Durum Bazlı Çoklu Yayın Programlama Nihai durum yaklaşımını ve Windows Soketleri ile çok noktaya yayın programlama için IOCTL'lerin nasıl kullanılacağını açıklar.
Yayın Uygulamalarını IPv6'a Taşımak IPv4 yayın uygulamalarını IPv6 çok noktaya yayına taşıma yönergeleri sağlar.