Meine Server- und Client-Software laufen beide unter Linux.
Der Server sendet Multicast, der Client hört Multicast.
Mein Client muss auf eine andere Site migrieren,
und leider ist Multicast zwischen den beiden Sites nicht zulässig :-(
Wie kann man Multicast zwischen den beiden Standorten übertragen?
- Über TCP oder UDP?
- Welche Tools empfehlen Sie?
- Was ist mit der Latenz?
Ich habe eine gute Antwort zur Cisco- Konfiguration (GRE) erhalten,
aber eines der Netzwerkteams möchte diese nicht überwachen / warten.
=> Wenn die Übertragung unterbrochen wird, verbringt das Support-Team zu viele Stunden, um sie zu verstehen und zu reparieren.
=> Also, was sollte die beste Alternative zu GRE sein?
Gibt es eine Lösung, die auf Linux-Kernelfunktionen
oder Netzwerkkartenfunktionen basiert ? (geringe Latenz ist wichtig)
Anwendungsbeispiele werden geschätzt :-)
Derzeit: Server und Client auf derselben Site
Zukunft: Server und Client, jeweils an einem anderen Standort
Multicast-Kanal: 225.1.0.1:6666
Verwandte Fragen
- UPD Multicast (Klasse D) = Wie kann dies über das Internet geleitet werden?
- IGMP / Multicast-Routing unter Linux
- Multicast über die Subnetze und RSVP-Antwort
- Multiple GRE NAT Router und "Multiple VPN Limitation" Link
- ...
quelle
Antworten:
Ich bin nicht sicher, ob ich Ihre Grafik in Ihrer Frage verstehe, aber soweit ich verstanden habe, müssen Sie Multicast-Pakete über TCP weiterleiten? Eine werkzeugorientierte Lösung kann Folgendes umfassen
socat
:Der Multicast-Kanal lautet beispielsweise 224.1.0.1:6666.
Auf dem Server-Host (IP = SS.SS.SS.SS):
Auf dem Client-Host (IP = CC.CC.CC.CC):
Ich lasse Sie überprüfen, wie Parameter mit dem
socat
Handbuch eingestellt werden. Sobald Sie Ihre MULTICAST GROUP und die IP-Adressen Ihrer Netzwerkschnittstelle kennen, ist dies ganz einfach. :-)quelle
Bei einigen Routern kann Multicast-Verkehr über IP-Netzwerkverbindungen getunnelt werden. Beide Enden des Tunnels müssen entsprechend konfiguriert werden. Insbesondere Cisco unterstützt das Tunneln von Multicast-Verkehr über GRE-Verbindungen. Hier ist ein Artikel darüber, wie Sie dieses Cisco erreichen können
quelle
Es ist möglich, aber die Verwendung eines Stream-Protokolls wie TCP ist aus Gründen, die mehrere Überlastungsimplementierungen erfordern (einmal von TCP und ein anderes Mal von Programmen, die versuchen, UDP auf intelligente Weise zu nutzen), keine gute Idee [1] .
Die Möglichkeiten, die Sie haben, sind Tunnellösungen wie OpenVPN + TAP (mit UDP-Transport) oder GRE oder sogar Dinge wie L2TP. [Ich frage mich, ob IPIP / IP6IP6-Tunneling auch funktionieren würde.]
quelle
Linux-Kernel-orientierte Lösung:
mrouted
ist ein Deamon, der Multicast-Pakete erhält und dem Kernel mitteilt, wohin er sie weiterleiten soll. Sie müssen Ihren Linux-Kernel mit einem bestimmten Patch und den richtigen Optionen neu kompilieren. Konfigurieren Sie dann denmrouted
Daemon. Weitere Informationen finden Sie unter Linux-Mrouted-MiniHOWTO.html .Eine gute Referenz ist das Multicast-Howto , gute Lektüre.
Ich hoffe es hilft.
quelle
Steve Miller hat ein gutes Tutorial für Ihr Problem veröffentlicht. Hoffe das wird dir helfen!
quelle