Mengukur latensi per-tautan / jitter / packet-loss

9

Saya perlu mengukur latensi, jitter, dan packet-loss per tautan di jaringan, sebagai lawan dari ujung ke ujung, misalnya seperti ini:

s1-eth0 <--> s2-eth0 (~ 20µs rata-rata, latensi standar 10μs, 57% paket loss / detik terakhir)

s2-eth1 <--> s3-eth0 (~ 25µs rata-rata, latensi standar, 5μs, 21% paket loss / detik terakhir)

...

Semua solusi yang saya dapat temukan adalah proposal akademis atau melibatkan penggunaan perangkat keras khusus untuk penyelidikan aktif.

Berikut ini ringkasan yang menurut penelitian saya tidak berhasil:

  • NetFlow: Tidak ada informasi latensi, hanya ujung ke ujung
  • Probing Aktif: Tidak mungkin bagi saya untuk mengubah konfigurasi jaringan
  • Measure Roundtrip-Time: tidak menyediakan statistik per-tautan

Apakah ada protokol jaringan, alat ukur atau fungsi lain yang menyediakan semua atau setidaknya beberapa statistik di atas?

pengguna1923488
sumber

Jawaban:

12

Pada perangkat Cisco, Anda dapat menggunakan Cisco IP SLA. Anda harus terlebih dahulu mengonfigurasi dan mengaktifkannya, lalu memantau hasilnya.

Langkah:

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]

Contoh konfigurasi diambil dari Cisco: IP SLA - Menganalisis Tingkat Layanan IP Menggunakan ICMP Echo Operation .

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

Untuk memantau:

show ip sla monitor statistics
Ahmet Cemil Sabır
sumber
6

Pada perangkat keras juniper Anda dapat menggunakan layanan RPM untuk mendapatkan pengukuran tersebut. Layanan ini dapat dikonfigurasi untuk memantau antarmuka tertentu yang akan membantu dengan persyaratan 'per-tautan'.

pengguna5469
sumber
4

Lihat protokol Y.1731 (atau IEEE 802.1ag , atau OAM). Ini cukup mudah diimplementasikan dalam perangkat lunak (saya rasa itulah yang Anda tuju), dan didukung oleh semua elemen jaringan fisik.

Ada implementasi Y.1731 open-source yang sangat naif di C , yang dapat Anda lihat.

Harap dicatat bahwa Y.1731 tidak dirancang untuk melewati batas jaringan fisik (yaitu mengharuskan alamat MAC dari kedua MEP diketahui), jadi jika Anda harus melalui perutean IP, Anda ingin merangkum frame Y.1731 Anda dalam beberapa tunneling protokol, seperti VXLAN atau GRE.

Semoga ini membantu.

Eshed Gal-Atau
sumber
4

Etherate memungkinkan Anda untuk mengukur kehilangan throughput, latensi, dan paket (frame) pada layer 2 langsung melalui Ethernet (yang terdengar seperti apa yang Anda cari). Itu tidak mengukur jitter pada saat ini tetapi itu akan dilakukan di masa depan.

Menggunakannya, Anda dapat menghasilkan lalu lintas Ethernet layer 2 dengan cara yang terkontrol yang dapat Anda ukur.

Anda dapat menentukan durasi aliran lalu lintas, ukuran frame, bit per detik / byte per detik, total byte yang akan ditransfer, ethertype, VLAN ID, dan nilai PCP. Anda juga dapat ACK frame layer 2 jika Anda ingin menguji kerugian di layer 2.

Ketika tes selesai, host Rx menampilkan jumlah frame tes yang diterima (jika ini kurang dari jumlah frame yang dikirim dari host Tx, yang memberi Anda angka kehilangan frame), frame non-tes yang diterima, frame tes yang diterima dalam pesanan dan kerangka uji yang diterima rusak (awal atau terlambat).

https://github.com/jwbensley/etherate

jwbensley
sumber