Pomiar opóźnienia / drgań / utraty pakietów na łącze

9

Muszę zmierzyć opóźnienie, fluktuację i utratę pakietów na łącze w sieci, w przeciwieństwie do połączeń końcowych, np. W następujący sposób:

s1-eth0 <--> s2-eth0 (średnie opóźnienie ~ 20µs, standardowe wyprowadzenie 10µs, 57% utrata pakietu / ostatnia sekunda)

s2-eth1 <--> s3-eth0 (średnie opóźnienie ~ 25µs, standardowe wyprowadzenie 5µs, 21% utrata pakietu / ostatnia sekunda)

...

Wszystkie rozwiązania, które udało mi się znaleźć, były albo propozycjami akademickimi lub wymagały użycia dedykowanego sprzętu do aktywnego sondowania.

Oto podsumowanie tego, co według moich badań nie działa:

  • NetFlow: Brak informacji o opóźnieniu, tylko od końca do końca
  • Aktywne sondowanie: Nie mogę zmienić konfiguracji sieci
  • Zmierz czas przejścia w obie strony: nie zapewnia statystyk dla poszczególnych łączy

Czy istnieje protokół sieciowy, narzędzie pomiarowe lub inna funkcjonalność zapewniająca wszystkie powyższe statystyki lub przynajmniej niektóre z nich?

użytkownik1923488
źródło

Odpowiedzi:

12

Na urządzeniach Cisco możesz korzystać z Cisco IP SLA. Musisz go najpierw skonfigurować i włączyć, a następnie monitorować wyniki.

Kroki:

1. ip sla monitor operation-number

2. type echo protocol ipIcmpEcho {destination-ip-address | destination-hostname} [source-ipaddr {ip-address | hostname} | source-interface interface-name]

3. frequency seconds

4. ip sla monitor schedule operation-number [life {forever | seconds}] [start-time {hh:mm[:ss] [month day | day month] | pending | now | after hh:mm:ss] [ageout seconds] [recurring]

Przykład konfiguracji wzięty z Cisco: Umowy SLA IP - Analiza poziomów usług IP za pomocą operacji ICMP Echo .

Router> enable
Router# configure terminal
Router(config)# ip sla monitor 10
Router(config-sla-monitor)# type echo protocol ipIcmpEcho 172.29.139.134
Router(config-sla-monitor-echo)# frequency 300
Router(config-sla-monitor-echo)# exit
Router(config)# ip sla monitor schedule 10 start-time now life forever

Monitorować:

show ip sla monitor statistics
Ahmet Cemil Sabır
źródło
6

Na sprzęcie jałowca możesz skorzystać z usługi RPM, aby uzyskać te pomiary. Usługę można skonfigurować w taki sposób, aby monitorowała określone interfejsy, które pomogą spełnić wymóg „na łącze”.

użytkownik5469
źródło
4

Sprawdź protokół Y.1731 (lub IEEE 802.1ag lub OAM). Jest dość łatwy do zaimplementowania w oprogramowaniu (domyślam się, że do tego zmierzasz) i jest obsługiwany przez wszystkie fizyczne elementy sieci.

Istnieje bardzo naiwna implementacja Y.1731 typu open source w języku C , na którą można spojrzeć.

Należy pamiętać, że Y.1731 nie jest przeznaczony do przekraczania fizycznej granicy sieci (tj. Wymaga znajomości adresów MAC obu posłów do PE), więc jeśli musisz przejść przez routing IP, chciałbyś obudować swoje ramki Y.1731 w ramach niektórych tuneli protokół, taki jak VXLAN lub GRE.

Mam nadzieję że to pomoże.

Eshed Gal-Or
źródło
4

Etherate pozwala zmierzyć przepustowość, opóźnienie i utratę pakietów (ramek) w warstwie 2 bezpośrednio przez Ethernet (co brzmi jak to, czego szukasz). Nie mierzy jittera, ale zrobi to w przyszłości.

Za jego pomocą można generować ruch Ethernet warstwy 2 w kontrolowany sposób, który można zmierzyć.

Można określić czas trwania przepływu ruchu, rozmiar ramki, bitów na sekundę / bajtów na sekundę, całkowitą liczbę bajtów do przesłania, typ eteru, identyfikator VLAN i wartość PCP. Możesz także POTWIERDZIĆ ramki warstwy 2, jeśli chcesz przetestować utratę w warstwie 2.

Po zakończeniu testu host Rx wyświetla liczbę odebranych ramek testowych (jeśli jest to mniej niż liczba ramek wysłanych z hosta Tx, co daje liczbę utraty ramek), odebrane ramki nie-testowe, ramki odebrane w kolejność i ramki testowe otrzymane poza kolejnością (wczesne lub późne).

https://github.com/jwbensley/etherate

jwbensley
źródło