Jak mogę przetestować łączność UDP multiemisji między dwoma serwerami?


19

Mam dwa serwery w tej samej podsieci. Mam zainstalowaną aplikację, która używa rozsyłania grupowego UDP do propagowania zdarzeń między dwoma serwerami i ich synchronizacji.

Wydaje się, że tak się nie dzieje, dlatego chcę się upewnić, że wiadomości UDP multiemisji przechodzą przez mój pierwszy krok.

Na serwerach działa system Windows 2008 R2.

Jak mogę przetestować łączność UDP multiemisji między dwoma serwerami?

Odpowiedzi:



9

iperf to świetne narzędzie, ale jego instalacja może być długa; Większość repozytoriów nie ma tego pakietu. W zależności od Dystrybucji netcat jest dostępny w większości repozytoriów

Możesz także użyć netcat:

Serwer: nc -lu -p PortNr

Klient: nc -vzu ServerIP PortNr


+1 Ah! Niesamowite! Spróbuję tego!
Wietnam

4
To nie zadziała dla UDP Multicatst. Próbowałem z adresem MC takim jak 224.4.4.4 i nic się nie dzieje. Również strace na nim nie pokazuje żadnej operacji ADD_MEMBERSHIP. W man nc brakuje również multiemisji. Sugeruję sockperf - patrz poniżej.
avner

1
przykład z socat:socat UDP4-RECVFROM:9875,ip-add-membership=225.2.215.254:0.0.0.0,fork - |hexdump
Francois

Nie sądzę, żeby to było poprawne. Jak ustawić grupę?
AndreKR

4

Bardzo polecam sockperf

Jest to doskonałe narzędzie do sprawdzania wydajności zarówno z TCP, jak i UDP, w tym z UDP Multicast.

Przykład strumienia UDP multiemisji:

  • na serwerze: sockperf server -i 224.4.4.4 -p 1234
  • na kliencie: sockperf ping-pong -i 224.4.4.4 -p 1234


0

Możesz po prostu użyć narzędzia multiNC, ten pozwala na obsługę wielu połączeń na tym samym porcie, repozytorium github


2
Witaj i witaj w ServerFault. W odpowiedzi powinieneś wskazać, że napisałeś to narzędzie; w przeciwnym razie prawdopodobnie zostanie oznaczony jako spam.
Daniel Griscom
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.