Sdílet prostřednictvím


Programování vícesměrového vysílání

Programování vícesměrového vysílání je povoleno prostřednictvím rozhraní Windows Sockets. Rozhraní Windows Sockets umožňuje Multicast Listener Discovery (MLD) verze 1 (MLDv1) a 2 (MLDv2) na IPv6 a Internet Group Management Protocol verze 2 (IGMPv2) a 3 (IGMPv3) prostřednictvím možností soketu nebo IOCTLs. Tato část popisuje implementaci Systému Windows, vysvětluje, jak povolit programování vícesměrového vysílání pomocí rozhraní Windows Sockets a poskytuje ukázky programování, které ilustrují jeho použití.

Druhá verze IGMP, která se dále označuje jako IGMPv2, umožňuje hostitelům připojit se ke skupinám vícesměrového vysílání identifikovaným adresou vícesměrového vysílání IPv4 v konkrétním síťovém rozhraní. Rozhraní Windows Sockets umožňuje aplikaci připojit se ke skupinám a opustit je na určitých soketech. Nevýhodou protokolu IGMPv2 je však to, že jakákoli zdrojová adresa IPv4 připojená ke skupině IGMPv2 může předávat data všem členům, což může potenciálně zahltit skupinu a učinit ji nepoužitelnou pro přenosy, které vyžadují primární zdroj, jako je například internetová rádiová stanice. Problém s PROTOKOLEM IGMPv2 je jeho neschopnost selektivně zvolit jednu zdrojovou adresu IPv4 (nebo dokonce jen několik zdrojů) a její neschopnost blokovat odesílatele (například neautorní vysílače nebo pachatele odepření služby) pro danou skupinu vícesměrového vysílání. IGMPv3 tyto nedostatky řeší.

Pomocí rozhraní Windows Sockets a IGMPv3 můžou aplikace vybrat konkrétní zdrojovou adresu IPv4 vícesměrového vysílání a dvojici skupin vícesměrového vysílání. Kromě toho windows Sockets umožňuje vývojářům selektivně povolit další vysílání v daném páru zdrojového/skupinového vysílání nebo umožňuje aplikacím blokovat konkrétní vysílání. Protokol IGMPv3 je podporován v systému Windows Vista a novějších verzích.

První verze MLD na IPv6, označovaná jako MLDv1, je velmi podobná IGMPv2 a má stejná omezení. MLDv1 umožňuje hostitelům připojit se ke skupinám vícesměrového vysílání identifikovaným adresou vícesměrového vysílání IPv6 na konkrétním síťovém rozhraní a ponechat je v ní. Rozhraní Windows Sockets umožňuje aplikaci připojit se k určitým soketům a opustit tyto skupiny na konkrétních soketech. Jakákoli zdrojová adresa IPv6 připojená ke skupině MLDv1 však může přenášet všem členům, potenciálně zahltit skupinu a učinit ji nepoužitelnou pro přenosy, které vyžadují primární zdroj. Problém s MLDv1 je jeho neschopnost selektivně zvolit jednu zdrojovou adresu IPv6 (nebo dokonce jen několik zdrojů) a její neschopnost blokovat odesílatele (například neautorní vysílače nebo pachatele dosílané služby) pro danou skupinu vícesměrového vysílání. MLDv2 řeší tyto nedostatky.

Pomocí rozhraní Windows Sockets a MLDv2 můžou aplikace vybrat konkrétní zdrojovou adresu IPv6 vícesměrového vysílání a dvojici skupin vícesměrového vysílání. Kromě toho windows Sockets umožňuje vývojářům selektivně povolit další vysílání v daném páru zdrojového/skupinového vysílání nebo umožňuje aplikacím blokovat konkrétní vysílání. MLDv2 je podporován v systému Windows Vista a novějších verzích.

Při vývoji multicastových aplikací ve Windows může programátor použít dva přístupy. První přístup je založený na změnách; zdroje vícesměrového vysílání se přidávají nebo odebírají pomocí možností soketů, a to i v průběhu přenosu podle potřeby. Druhý přístup je založený na konečném stavu; zdrojové adresy a všechny zahrnuté/vyloučené adresy se zadají pomocí hodnoty IOCTL. Každý přístup je platným postupem vícesměrového vysílání, ale vývojáři mohou považovat možnosti soketů a přístup založený na změnách za intuitivnější a flexibilnější.

Tato část obsahuje následující stránky:

Název stránky Popis
MLD a IGMP pomocí Windows Sockets Výčet možností vícesměrového soketu, které jsou k dispozici pro použití v programování rozhraní Windows Sockets pomocí programovacího přístupu založeného na změnách. Definuje dvě kategorie aplikací vícesměrového vysílání.
chování možností vícesměrového soketu Poskytuje rozsáhlou tabulku, která vysvětluje důsledky a požadavky volání možností vícesměrového soketu v konkrétním pořadí.
Ukázka programování vícesměrového vysílání Programovací fragment kódu, který ukazuje, jak pomocí možností soketů povolit vícesměrové aplikace ve Windows.
programování vícesměrového vysílání na základě konečného stavu Vysvětluje přístup k stavu konečnému a jak používat IOCTLs pro multicastové programování pomocí rozhraní Windows Sockets.
Převod vysílacích aplikací na IPv6 Poskytuje pokyny pro přenos aplikací všesměrového vysílání IPv4 do vícesměrového vysílání IPv6.