Einfach gesagt:
------------------------------------------------------------
| TYPE | ASSOCIATIONS | SCOPE | EXAMPLE |
------------------------------------------------------------
| Unicast | 1 to 1 | Whole network | HTTP |
------------------------------------------------------------
| Broadcast | 1 to Many | Subnet | ARP |
------------------------------------------------------------
| Multicast | One/Many to Many | Defined horizon | SLP |
------------------------------------------------------------
| Anycast | Many to Few | Whole network | 6to4 |
------------------------------------------------------------
Unicast wird verwendet, wenn zwei Netzwerkknoten miteinander kommunizieren müssen. Das ist ziemlich einfach, also werde ich nicht viel Zeit damit verbringen. TCP ist per Definition ein Unicast-Protokoll, es sei denn, es handelt sich um Anycast (mehr dazu weiter unten).
Wenn mehr als zwei Knoten den Datenverkehr anzeigen müssen, haben Sie Optionen.
Befinden sich alle Knoten im selben Subnetz, ist Broadcast eine praktikable Lösung. Alle Knoten im Subnetz sehen den gesamten Datenverkehr. Es wird kein TCP-ähnlicher Verbindungsstatus beibehalten. Broadcast ist eine Layer-2-Funktion im Ethernet-Protokoll und eine Layer-3-Funktion in IPv4.
Multicast ist wie ein Broadcast, der Subnetze überqueren kann, aber im Gegensatz zu Broadcast nicht alle Knoten berührt. Knoten müssen eine Multicast-Gruppe abonnieren, um Informationen zu erhalten. Multicast-Protokolle sind in der Regel UDP-Protokolle, da per Definition kein Verbindungsstatus aufrechterhalten werden kann. Knoten, die Daten an eine Multicast-Gruppe senden, wissen nicht, welche Knoten empfangen werden. Standardmäßig leiten Internet-Router keinen Multicast-Verkehr weiter. Für den internen Gebrauch ist es jedoch vollkommen erlaubt; daher "Definierter Horizont" in der obigen Tabelle. Multicast ist eine Layer-3-Funktion von IPv4 und IPv6.
Um Anycast zu verwenden, machen Sie Werbung für dasselbe Netzwerk an mehreren Stellen im Internet und verlassen sich auf Berechnungen auf kürzesten Wegen, um Clients zu Ihren mehreren Standorten zu leiten. Für die Netzwerkknoten selbst wird eine Unicast- Verbindung verwendet, um mit Ihren Anycast-Knoten zu kommunizieren. Weitere Informationen zu Anycast finden Sie unter: Was ist "anycast" und wie ist es hilfreich? . Anycast ist ebenfalls ein Layer-3-Feature, hängt jedoch davon ab, wie das Zusammenführen von Routen erfolgt.
Beispiele
Einige Beispiele für die Verwendung von Nicht-Unicast-Methoden im realen Internet.
Broadcast
ARP ist ein Broadcast-Protokoll und wird von TCP / IP-Stacks verwendet, um zu bestimmen, wie Datenverkehr an andere Knoten im Netzwerk gesendet werden soll. Befindet sich das Ziel im selben Subnetz, wird mit ARP die MAC-Adresse ermittelt, die zur angegebenen IP-Adresse gehört. Dies ist ein Level 2 (Ethernet) Broadcast an die reservierte FF: FF: FF: FF: FF: FF MAC-Adresse.
Das Microsoft-Protokoll zum Durchsuchen von Computern basiert bekanntermaßen auf Broadcasts. Workarounds wie WINS wurden erstellt, um das Surfen über Subnetze hinweg zu ermöglichen. Hierbei handelt es sich um ein IP-Broadcast (Level 3), bei dem es sich um ein IP-Paket handelt, dessen Zieladresse als Broadcast-Adresse des Subnetzes aufgeführt ist (in 192.168.101.0/24 wäre die Broadcast-Adresse 192.168.101.255).
Das NTP-Protokoll ermöglicht eine Broadcast-Methode zum Ankündigen von Zeitquellen.
Multicast
Innerhalb eines Unternehmensnetzwerks kann Multicast Live-Videos an mehrere Knoten übertragen, ohne dass der Server, der den Video-Feed bereitstellt, über eine massive Bandbreite verfügen muss. Auf diese Weise kann ein Videoserver einen 720p-Stream nur über eine 100-MB-Verbindung einspeisen und diesen Feed dennoch an 3000 Clients weiterleiten.
Als Novell von IPX zu IP wechselte, mussten sie ein Dienstwerbeprotokoll auswählen, um das SAP-Protokoll in IPX zu ersetzen. In IPX, dem Service Advertising Protocol, wurde jedes Mal eine netzwerkweite Ankündigung durchgeführt, wenn bekannt gegeben wurde, dass ein Dienst verfügbar ist. Da für TCP / IP ein solches globales Ansageprotokoll fehlte, entschied sich Novell stattdessen für ein Multicast-basiertes Protokoll: das Service Location Protocol. Neue Server melden ihre Dienste in der SLP-Multicast-Gruppe an. Kunden, die nach bestimmten Arten von Diensten suchen, geben der Multicast-Gruppe ihren Bedarf bekannt und warten auf Unicast-Antworten.
HP Drucker melden ihre Anwesenheit standardmäßig in einer Multicast-Gruppe an. Mit den richtigen Tools können Sie ganz einfach feststellen, welche Drucker in Ihrem Netzwerk verfügbar sind.
Das NTP - Protokoll auch ermöglicht ein Multicast - Verfahren (IP 224.0.1.1) für mehr als nur eine Subnetz Zeitquellen Bereiche ankündigen.
Anycast
Anycast ist etwas Besonderes, da Unicast-Ebenen darüber liegen. Anycast kündigt dasselbe Netzwerk in verschiedenen Teilen des Netzwerks an, um die für den Zugriff auf dieses Netzwerk erforderlichen Netzwerksprünge zu verringern.
Das 6to4 IPv6-Übergangsprotokoll verwendet Anycast. 6to4-Gateways geben ihre Anwesenheit auf einer bestimmten IP-Adresse (192.88.99.1) bekannt. Clients, die ein 6to4-Gateway verwenden möchten, senden Datenverkehr an 192.88.99.1 und vertrauen darauf, dass das Netzwerk die Verbindungsanforderung an einen 6to4-Router sendet.
NTP-Dienste für besonders beliebte NTP-Hosts sind möglicherweise Anycasts, aber ich habe keinen Beweis dafür. Das Protokoll enthält nichts, was dies verhindern könnte.
Andere Dienste verwenden Anycast, um die Datenlokalität für Endbenutzer zu verbessern. Google erstellt Anycast mit seinen Suchseiten an einigen Stellen (und Geo-IP an anderen Stellen). Die Root-DNS-Server verwenden Anycast aus ähnlichen Gründen. ServerFault selbst könnte dort hingehen, es gibt Rechenzentren in New York und Oregon, aber noch nicht dorthin.
Netzwerkbedenken
Übermäßiger Broadcast-Verkehr kann allen Knoten in diesem Subnetz Bandbreite rauben. Dies ist heutzutage bei Vollduplex-GigE-Ports weniger ein Problem, aber in den 10-MB-Halbduplex-Tagen könnte ein Broadcast-Sturm ein Netzwerk sehr schnell zum Erliegen bringen. Diese Halbduplex-Netzwerke mit einer großen Kollisionsdomäne auf allen Knoten waren besonders anfällig für Broadcast-Stürme, weshalb Netzwerkbücher, insbesondere ältere, den Broadcast-Verkehr im Auge behalten sollen. Switched / Full-Duplex-Netzwerke sind bei einem Broadcast-Sturm viel schwerer zum Erliegen zu bringen, können aber dennoch auftreten. Broadcast ist für die ordnungsgemäße Funktion von IP-Netzwerken erforderlich .
Multicast hat die gleiche Möglichkeit für Missbrauch. Wenn ein Knoten in der Multicast-Gruppe große Datenmengen an diese Gruppe sendet, sehen alle abonnierten Knoten den gesamten Datenverkehr. Wie bei Broadcasts kann übermäßiger Mcast-Verkehr die Wahrscheinlichkeit von Kollisionen bei solchen Verbindungen erhöhen, bei denen dies ein Problem darstellt.
Multicast ist eine optionale Funktion für IPv4, wird jedoch für IPv6 benötigt . Die IPv4-Übertragung wird in IPv6 durch Multicast ersetzt (Siehe auch: Warum kann IPv6 keine Übertragungen senden? ). In IPv4-Netzwerken wird es häufig deaktiviert. Nicht zufällig ist das Aktivieren von Multicast einer der vielen Gründe, warum Netzwerkingenieure den Umstieg auf IPv6 ablehnen, bevor sie dies tun müssen.
Die Berechnung, wie viel Verkehr zu viel Verkehr ist, hängt von einigen Dingen ab
- Halb- oder Vollduplex : Halbduplex-Netzwerke haben viel geringere Toleranzen für Bcast / Mcast-Verkehr.
- Geschwindigkeit der Netzwerkports: Je schneller Ihr Netzwerk ist, desto weniger wird dies zum Problem. In den 10-MB-Ethernet-Tagen könnten 5 bis 10% des Datenverkehrs auf einem Port übertragen werden, wenn nicht sogar mehr, aber bei GigE sind weniger als 1% (wahrscheinlich weit weniger) wahrscheinlicher.
- Anzahl der Knoten im Netzwerk: Je mehr Knoten Sie haben, desto mehr unvermeidbarer Broadcast-Verkehr entsteht (ARP). Wenn Sie bestimmte Broadcast-Protokolle verwenden, ändert sich das Windows-Browsing oder andere Dinge wie Cluster-Heartbeats, bei denen Probleme auftreten.
- Netzwerktechnologie: Kabelgebundenes Ethernet ist schnell genug, so lange Sie über moderne Geräte verfügen, ist es unwahrscheinlich, dass Bcast / Mcast Probleme verursachen. Auf der anderen Seite kann Wireless unter übermäßigem Broadcast-Verkehr leiden, da es ein von allen Knoten gemeinsam genutztes Medium ist und sich daher in einer einzigen Kollisionsdomäne befindet.
Am Ende rauben Bcast- und Mcast-Datenverkehr die Bandbreite von oben nach unten. Wann Sie sich Sorgen machen müssen, hängt in hohem Maße von Ihrem individuellen Netzwerk und der Toleranz für variable Leistung ab. Im Allgemeinen ist die Anzahl der Netzwerkknoten nicht so hoch wie die Netzwerkgeschwindigkeit, sodass die prozentuale Anzahl der Broadcasts im Laufe der Zeit gesunken ist.
Einige Netzwerke erlauben Multicast aus bestimmten Gründen nicht, andere haben sich nie die Zeit genommen, es einzurichten. Es gibt einige Multicast-Protokolle, die jedem, der nach den richtigen Dingen sucht, interessante Informationen liefern können (SLP ist eines davon). Persönlich stört mich der geringe Multicast-Verkehr nicht, da der größte Ärger, den ich dabei gesehen habe, verschmutzte Netzwerk-Captures sind, wenn ich Netzwerkanalysen durchführe. und dafür gibt es filter.