Frage Was ist der Unterschied zwischen Unicast-, Anycast-, Broadcast- und Multicast-Datenverkehr?


Ich hatte nie das Privileg, in einer Umgebung zu arbeiten, die ein kompliziertes Routing erforderte, oder wenn es erforderlich war, wurde es stromaufwärts von mir gehandhabt. Ich habe immer sehr einfache statische Routing-Konfigurationen verwendet und musste nie ein Multipath-Routing durchführen - daher meine allgemeine Verwirrung in Bezug auf dieses Thema. Ich würde gerne Multicasting und Anycasting besser verstehen.

  • Was ist der Unterschied zwischen Unicast-, Anycast-, Broadcast- und Multicast-Datenverkehr?
  • In welchen Situationen werden sie normalerweise verwendet und warum (z. B. welche Anwendungen welche Methode verwenden)?
  • Wie berechnen Sie, wie viel Broadcast-Verkehr für ein bestimmtes Netzwerksegment oder eine Broadcast-Domäne zu viel ist?
  • Welche Sicherheitsrisiken bestehen beim Zulassen von Broadcast- und Multicast-Datenverkehr?

103
2018-06-11 19:17


Ursprung


Dies könnte Ihnen beim Multicast helfen. ixiacom.com/library/white_papers/display?skey=multicast - SpacemanSpiff


Antworten:


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, deshalb werde ich nicht viel Zeit darauf verwenden. TCP per Definition ist ein Unicast-Protokoll, außer wenn Anycast beteiligt ist (mehr dazu unten).

Wenn Sie mehr als zwei Knoten sehen müssen, haben Sie Optionen.

Wenn sich alle Knoten im selben Subnetz befinden, dann Übertragung wird eine praktikable Lösung. Alle Knoten im Subnetz sehen den gesamten Datenverkehr. Es wird kein TCP-ähnlicher Verbindungsstatus beibehalten. Broadcast ist ein Layer-2-Feature im Ethernet-Protokoll und auch ein Layer-3-Feature in IPv4.

Multicast ist wie eine Sendung, die Subnetze durchqueren kann, aber anders als 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 Verbindungszustand aufrechterhalten werden kann. Knoten, die Daten an eine Multicast-Gruppe senden, wissen nicht, welche Knoten sie empfangen. Standardmäßig geben Internet-Router keinen Multicast-Verkehr weiter. Für den internen Gebrauch ist es jedoch vollkommen erlaubt; daher "Definierter Horizont" im obigen Diagramm. Multicast ist ein Layer-3-Feature von IPv4 und IPv6.

Benutzen Anycast Sie werben an mehreren Stellen des Internets für dasselbe Netzwerk und vertrauen auf die Berechnung des kürzesten Pfads, um Clients an Ihre verschiedenen Standorte zu leiten. Soweit es die Netzwerkknoten selbst betrifft, verwenden sie ein Unicast Verbindung, um mit Ihren anonymen Knoten zu sprechen. Um mehr über Anycast zu erfahren, versuchen Sie Folgendes: Was ist "Anycast" und wie ist es hilfreich?. Anycast ist ebenfalls ein Layer-3-Feature, aber es ist eine Funktion des Routes-Coalescings.


Beispiele

Einige Beispiele, wie die Nicht-Unicast-Methoden im echten Internet verwendet werden.

Übertragung
ARP ist ein Broadcast-Protokoll und wird von TCP / IP-Stacks verwendet, um zu bestimmen, wie Verkehr an andere Knoten im Netzwerk gesendet wird. Wenn sich das Ziel im selben Subnetz befindet, wird mithilfe von ARP die MAC-Adresse ermittelt, die an die angegebene IP-Adresse gesendet wird. Dies ist ein Level 2 (Ethernet) Broadcast an die reservierte FF: FF: FF: FF: FF: FF MAC-Adresse.

Auch Microsofts Browsing-Protokoll ist bekannt Broadcast-basiert. Workarounds wie WINS wurden erstellt, um das Subnetz-Browsing zu ermöglichen. Hierbei handelt es sich um einen IP-Broadcast der Stufe 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 lautet die Broadcast-Adresse 192.168.101.255).

Das NTP-Protokoll ermöglicht eine Broadcast-Methode zur Ankündigung von Zeitquellen.

Multicast
In einem Unternehmensnetzwerk kann Multicast Live-Video an mehrere Knoten liefern, ohne dass der Server, der den Video-Feed bereitstellt, über eine enorme Bandbreite verfügt. Auf diese Weise können Sie einen Videoserver mit einem 720p-Stream nur für eine 100-MB-Verbindung versorgen und trotzdem diesen Feed für 3000 Clients bereitstellen.

Als Novell von IPX auf IP umstellte, mussten sie ein Service-Advertising-Protokoll wählen, um das SAP-Protokoll in IPX zu ersetzen. In IPX, dem Service Advertising Protocol, hat a netzweite Ankündigung Jedes Mal, wenn es angekündigt wurde, war ein Dienst verfügbar. Da TCP / IP ein solches globales Ankündigungsprotokoll fehlte, entschied sich Novell, stattdessen ein Multicast-basiertes Protokoll zu verwenden: das Service Location Protocol. Neue Server kündigen ihre Dienste in der SLP-Multicast-Gruppe an. Clients, die nach bestimmten Arten von Diensten suchen, melden ihre Notwendigkeit an die Multicast-Gruppe und warten auf Unicast-Antworten.

HP Drucker kündigen standardmäßig ihre Anwesenheit in einer Multicast-Gruppe an. Mit den richtigen Tools können Sie ganz einfach herausfinden, welche Drucker in Ihrem Netzwerk verfügbar sind.

Das NTP-Protokoll ebenfalls ermöglicht eine Multicast-Methode (IP 224.0.1.1) zur Ankündigung von Zeitquellen in Bereichen, die über nur ein Subnetz hinausgehen.

Anycast
Anycast ist ein bisschen speziell seit Unicast-Schichten darüber. Anycast kündigt das gleiche Netzwerk in verschiedenen an Teile des Netzwerks, um die Netzwerkhops zu reduzieren, die benötigt werden, um zu diesem Netzwerk zu gelangen.

Das 6to4-IPv6-Übergangsprotokoll verwendet Anycast. IPv6-zu-IPv4-Gateways kündigen ihre Anwesenheit auf einer bestimmten IP an, 192.88.99.1. 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 können sehr wohl anfallen, aber ich habe keinen Beweis dafür. Es gibt nichts im Protokoll, um es zu verhindern.

Andere Dienste verwenden Anycast, um die Datenlokalisierung für Endbenutzer zu verbessern. Google macht Anycast mit seinen Suchseiten an einigen Stellen (und Geo-IP in anderen). Die Root-DNS-Server verwenden Anycast aus ähnlichen Gründen. ServerFault selbst könnte nur dorthin gehen, sie haben Datenzentren in New York und Oregon, aber noch nicht dort.


Netzwerk betrifft

Übermäßiger Broadcast-Verkehr kann alle Knoten in diesem Subnetz der Bandbreite berauben. Bei Vollduplex-GigE-Ports ist dies heutzutage weniger von Bedeutung, aber in den Halbduplex-10MB-Tagen könnte ein Broadcast-Sturm ein Netzwerk schnell zum Erliegen bringen. Diese Halbduplex-Netzwerke mit einer großen Kollisionsdomäne über alle Knoten waren besonders anfällig für Broadcast-Stürme, weshalb Netzwerkbücher, insbesondere ältere, den Broadcast-Verkehr im Auge behalten sollten. Switched / Full-Duplex-Netzwerke sind mit einem Broadcast-Sturm viel schwieriger zu stoppen, aber es kann immer noch passieren. Sendung ist erforderlich für die korrekte Funktion von IP-Netzwerken.

Multicast hat die gleiche Missbrauchsmöglichkeit. Wenn ein Knoten in der Multicast-Gruppe beginnt, große Datenmengen an diese Gruppe zu senden, sehen alle abonnierten Knoten den gesamten Datenverkehr. Wie bei der Übertragung kann übermäßiger Mcast-Verkehr die Möglichkeit von Kollisionen bei solchen Verbindungen erhöhen, wenn dies ein Problem darstellt.

Multicast ist ein wahlweise Feature mit IPv4, aber erforderlich für IPv6. Die IPv4-Übertragung wird in IPv6 durch Multicast ersetzt (siehe auch: Warum kann IPv6 keine Broadcasts senden?). In IPv4-Netzwerken ist es häufig deaktiviert. Nicht zufällig ist das Aktivieren von Multicast einer der vielen Gründe, warum Netzwerktechniker mürrisch sind, bevor sie zu IPv6 wechseln haben es zu tun.

Zu berechnen, wie viel Verkehr zu viel Verkehr ist, hängt von ein paar Dingen ab

  • Halb vs Vollduplex: Halbduplex-Netzwerke haben viel geringere Toleranzen für den bcast / mcast-Verkehr.
  • Geschwindigkeit der Netzwerkports: Je schneller Ihr Netzwerk ist, desto geringer wird das Problem. In den 10-Mb-Ethernet-Tagen könnte 5-10% des Datenverkehrs auf einem Port bcast-Verkehr sein, wenn nicht mehr, aber auf GigE weniger als 1% (wahrscheinlich viel weniger) ist wahrscheinlicher.
  • Anzahl der Knoten im Netzwerk: Je mehr Knoten Sie haben, desto unausweichlicher ist der Broadcast-Verkehr (ARP). Wenn Sie Broadcast-spezifische Protokolle verwenden, werden Windows-Browsing oder andere Dinge wie Cluster-Heartbeats, bei denen Probleme auftreten, geändert.
  • Netzwerktechnologie: Wired Ethernet ist schnell genug, solange Sie moderne Geräte haben, die es fahren, wird Ihnen bcast / mcast wahrscheinlich keine Probleme bereiten. Drahtlos kann andererseits übermäßigen Rundfunkverkehr erleiden, da es ein gemeinsam genutztes Medium unter allen Knoten und daher in einer einzigen Kollisionsdomäne ist.

Am Ende rauben Bcast- und Mcast-Traffic Bandbreite an die Spitze. Wenn Sie anfangen, sich Sorgen zu machen, hängt es in hohem Maße von Ihrem individuellen Netzwerk und der Toleranz für die variable Leistung ab. Im Allgemeinen sind die Netzwerkknoten nicht so schnell skaliert worden wie die Netzwerkgeschwindigkeiten, so dass der Gesamtsenderprozentsatz als Verkehrsnummer im Laufe der Zeit gesunken ist.

Einige Netzwerke verbieten Multicast aus bestimmten Gründen und andere haben sich nie die Zeit genommen, sie einzurichten. Es gibt einige Multicast-Protokolle, die interessante Informationen enthüllen können (SLP ist eine solche) für jeden, der auf die richtigen Dinge hört. PersönlichIch kümmere mich nicht um kleinen Multicast-Verkehr, da das größte Ärgernis, das ich damit gesehen habe, verschmutzte Netzwerk-Captures sind, wenn ich eine Netzwerkanalyse mache; und dafür gibt es Filter.


160
2018-06-11 20:51



+1. Übertragungen können und treten in beiden Schichten 2 und 3 auf. Eine ARP-Anforderung ist eine Schicht-2-Übertragung, während eine NetBIOS-Namensabfrage eine Schicht-3-Übertragung ist. - joeqwerty
Eine absolut fantastische Antwort. Ich würde +10 wenn ich könnte. Ich mag besonders Ihre Diskussion über SLP, da ich mcast Probleme damit hatte. - kce


Hier sind einige grundlegende Informationen:

Unicast: Unicast-Datenverkehr ist Datenverkehr, der für einen einzelnen Host bestimmt ist. Alle anderen Hosts ignorieren Unicast-Datenverkehr, der nicht für sie selbst bestimmt ist. In einer geswitchten Umgebung wird Unicast-Datenverkehr normalerweise von keinem anderen Host als dem Host "gehört", für den der Datenverkehr bestimmt ist. In einer Umgebung, die Hubs (Shudder) verwendet, hören alle Hosts Unicast-Verkehr, der für jeden anderen Host gedacht ist, aber sie ignorieren den gesamten Verkehr, der nicht für sie selbst bestimmt ist.

Übertragung: Broadcast-Verkehr ist Verkehr, der mit der Absicht gesendet wird, von allen Hosts in einem bestimmten Netzwerksegment "gehört" zu werden. Beispiele für Broadcast-Verkehr wäre eine ARP-Anfrage, bei der es sich um eine Broadcast-Sendung auf der physikalischen Ebene handelt (MAC-Adresse FF-FF-FF-FF-FF) oder eine NetBIOS-Namensabfrage, die auf der Netzwerkschicht gesendet wird (was auch immer passiert) Broadcast-Adresse für dieses bestimmte Netzwerk, wie 64.28.42.63 für das Netzwerk 64.28.42.0/26).

Multicast: Multicast-Verkehr ist Verkehr, der mit der Absicht gesendet wird, von einer bestimmten Gruppe von Hosts in einem Netzwerksegment "gehört" zu werden. Ein gewisser Multicast-Verkehr kann als Broadcast-Verkehr betrachtet werden, wie z. B. Verkehr zu der Multicast-Adresse 224.0.0.1, bei dem es sich um Multicast-Verkehr handelt, der für alle Hosts in demselben Netzwerksegment gedacht ist. Ein anderes Beispiel für Multicast-Verkehr wäre der an die Multicast-Adresse 224.0.0.9 gesendete Verkehr, mit dem RIP-Router Routing-Informationen an andere RIP-Router im selben Netzwerksegment senden.

Ich werde Anycast an jemand anderen verlassen, da ich wirklich nicht viel darüber weiß.


11
2018-06-11 20:21



Ich war wirklich froh, dass es auch beantwortet wurde. Ich wusste auch nicht, was Anycast war. - KCotreau


Anycast ist keine allgemein akzeptierte Art der Kommunikation in IPv4, aber es ist in IPv6 vorhanden.

Drei Arten von Kommunikation in IPv4 sind 1) Unicast, 2) Multicast 3) Broadcast.

1) IPv4 Unicast Eins-zu-eins-Kommunikation. Ein Netzwerkgerät kommuniziert mit einem anderen Netzwerkgerät. Die für Unicast verwendete Layer 3-Adresse ist IPv4-Klasse A, Klasse B, Klasse C-Adressen. Layer 2-Adresse ist eine Unicast-MAC-Adresse.

Beispiel: Durchsuchen einer Website, Herunterladen einer Datei mit FTP, Herstellen einer Verbindung mit einem anderen Gerät mit SSH (Secure Shell) usw.

2) IPv4-Multicast Eine-zu-viele-Art der Kommunikation. Ein Netzwerkgerät sendet ein IPv4-Datenpaket und es wird an die Geräte gesendet, die an diesem Datenverkehr interessiert sind. Die Layer-3-Adresse für IPv4-Multicast ist IPv4-Adressen der Klasse D (beginnt bei 224 bis 239) Die Layer 2-Adresse für IPv4-Multicast beginnt mit "01: 00: 5e".

Beispiel: IPTV, OSPF Hallo Nachrichten, EIGRP Hallo Nachrichten, RIPv2 Route Updates.

3) IPv4-Übertragung One-to-All-Art der Kommunikation. Ein Netzwerkgerät sendet ein IPv4-Datenpaket und es werden alle Geräte in diesem LAN-Segment geliefert. Das Problem mit Broadcast-Verkehr ist, dass Broadcasts alle Geräte im LAN stören und zu Bandbreitenverschwendung führen.

Beispiel: DHCPv4 Discover messages

In IPv6 haben wir Unicast, Multicast und Anycast. Das Konzept von Unicast und Multicast ist in IPv4 und IPv6 identisch, mit Ausnahme der Änderungen in IPv6-Layer-3-Adressen, die für Broadcast und Multicast verwendet werden, und der Layer-2-Adresse, die für Multicast verwendet wird. Die Layer-2-Adresse, die für IPv6-Multicast-Verkehr verwendet wird, beginnt bei "33:33:" (in IPv4 ist es "01: 00: 5e").

IPv6 Anycast Der IPv6-Anycast-Kommunikationstyp wird verwendet, um eine Schnittstelle aus einer Gruppe von Schnittstellen zu identifizieren, die den gleichen Dienst bereitstellen, jedoch in der Nähe des Clients in Routing-Entfernung (wir können die Routing-Entfernung ähnlich der geografischen Entfernung vergleichen). Anycast ist nur mit Hilfe von Routing-Protokollen möglich.

Weitere Informationen zu IPv6 Anycast finden Sie unter dem folgenden Link.

http://www.omnisecu.com/tcpip/ipv6/unicast-multicast-anycast-types-of-network-communication-in-ipv6.php

Beispiel: Mein Zuhause befindet sich in Indien und ich möchte den FQDN auflösen. "www.serverfault.com"An eine IP-Adresse. Bedenken Sie, dass ich drei DNS-Server habe, einen in den USA, einen anderen in Kanada und einen anderen in Indien, die alle den gleichen Dienst anbieten. Besser ist der DNS-Server aus Indien, weil er sich in der Nähe meines Hauses befindet Ich erhalte eine schnellere Antwort und verursache weniger Netzwerkverkehr, wenn ich den Dienst in meiner Nähe nutze.Anycast kann den Server finden, der sich in meiner Nähe befindet und den Dienst von diesem Server erhält.


6
2018-02-10 14:39