Mengapa "menunjukkan kedekatan" begitu lama untuk dijalankan?

9

Mengapa perintah "tunjukkan kedekatan" membutuhkan waktu lama untuk dijalankan (dalam urutan menit) pada Perangkat Lunak Cisco IOS, Perangkat Lunak 7200 (C7200P-SPSERVICESK9-M), Versi 12.4 (4) XD5, RELEASE SOFTWARE (fc1)? Router adalah router tepi Internet yang menjalankan BGP? Apa arti dari "(5)", "(10003)", atau "(75845)" setelah alamat? Tampaknya untuk menghitung sebagian besar alamat pada jaringan yang terhubung langsung / 23. CPU <2% dan memori sepertinya bukan penyebabnya.

r-x-y-edge1#sh adjacency
Protocol Interface                 Address
IP       GigabitEthernet0/2        x.67.155.9(5)
IP       GigabitEthernet0/2        x.67.155.8(5)
IP       GigabitEthernet0/2        x.67.155.11(5)
IP       GigabitEthernet0/2        x.67.155.10(5)
IP       GigabitEthernet0/2        x.67.155.13(5)
IP       GigabitEthernet0/2        x.67.155.12(5)
IP       GigabitEthernet0/2        x.67.155.15(5)
IP       GigabitEthernet0/3        172.31.4.130(10003)
IP       Serial1/0                 point2point(75845)
...
<truncated>

CPU utilization for five seconds: 2%/1%; one minute: 3%; five minutes: 3%

Processor Pool Total:  864815572 Used:  547631528 Free:  317184044
      I/O Pool Total:   67108864 Used:    4520592 Free:   62588272

Apakah ada cara untuk menghentikan eksekusi perintah ini sebelum menutup sesi karena Ctrl- ^ x tidak berpengaruh?

generalnetworkerror
sumber
Sudahkah Anda mencoba berbagai versi iOS? Apakah selalu butuh waktu lama untuk menampilkan hasil atau baru saja mulai terjadi?
Adam Loeless
Ctrl-Shift-6 adalah break sequence di iOS.
Yosef Gunsburg
1
Tolong jelaskan berapa lama waktu yang dibutuhkan untuk "show adj"
Mike Pennington
1
Versi kode itu tidak hanya tua (4+ tahun) tetapi bahkan di dalam kereta itu digantikan berkali-kali. Sudah pasti ada perbaikan dan perubahan pada penanganan CEF dan cenderung menyarankan bahwa Anda akan lebih baik mengatasi masalah pada rev kode yang lebih baru (atau final dalam kereta).
rnxrx
1
@ rnxrx, saya mengharapkan setidaknya satu komentar pada usia versi kode itu. Suara positif untuk Anda.
generalnetworkerror

Jawaban:

8

Sudahkah Anda memeriksa untuk melihat apakah pencarian domain Anda dinonaktifkan? ( no ip domain lookup)

Bisa jadi perintah Anda membutuhkan waktu lama untuk kembali karena mencoba menyelesaikan semua IP untuk nama host.

David Rothera
sumber
Ini adalah saran yang menarik - Saya tidak akan berpikir bahwa IOS akan berusaha melakukan resolusi nama untuk entri kedekatan CEF karena mayoritas dari mereka akan mewakili awalan dengan panjang <32.
John Jensen
Saya telah mengkonfigurasi "ip domain name" dan "ip domain list", tetapi tidak ada "ip name-server". Pengaturan beberapa server nama membuat tampilan output hampir seketika.
generalnetworkerror
Itu super luar biasa! Senang belajar hal-hal baru.
John Jensen
Tangkapan besar @ David, tidak terpikir oleh saya juga. Tidak seperti DNS yang terkenal celaka karena kurangnya 'transport preferently none' di bawah garis VTY :)
ytti
Terima kasih atas komentar dari insinyur jaringan yang lebih berpengalaman dalam grup; Saya tidak merasa seburuk itu adalah pencarian terbalik yang membuat saya bingung.
generalnetworkerror
4

Apa arti dari "(5)", "(10003)", atau "(75845)" setelah alamat?

Nilai dalam tanda kurung mengacu pada berapa kali entri FIB menunjuk ke entri adjacency. Disebutkan di sini .

Adam Loveless
sumber
2

Apakah router mengambil tabel penuh? Jika ya, saya kira saya tidak akan terkejut bahwa ini membutuhkan waktu lama, mengingat bagaimana ia harus menyelesaikan banyak jaringan yang merepresentasikan tabel penuh ke antarmuka keluar (RIB-> FIB). Juga ingat bahwa 7200 masih merupakan platform penerusan berbasis perangkat lunak. Anda masih memiliki 3 lapisan CEF di atas Anda dalam hal mana yang lebih cepat.

Jika sejumlah besar dari adjacency tersebut adalah adjacency punt (entri yang harus di-punted ke metode switching tingkat berikutnya) atau gillan adjacencies, ini juga dapat menjelaskan mengapa ini membutuhkan waktu lama - dan saya membayangkan bahwa besar jumlah mereka akan - lagi, masih menganggap itu adalah tabel lengkap di sini.

Angka dalam tanda kurung disebut refcount, dan menunjukkan berapa kali kedekatan ditunjukkan oleh entri FIB.

Sunting: tentang membatalkan perintah, coba Ctrl + C (berulang kali) - kadang-kadang ini berhasil bagi saya karena membunuh perintah yang sudah berjalan lama. OTOH jika saya tahu perintah akan menghasilkan banyak output, saya akan mengatur "panjang terminal" menjadi sesuatu seperti "50", dengan cara itu saya memiliki opsi untuk membunuh perintah dengan cara output pagination.

John Jensen
sumber
Hai John, saya tidak yakin saya mengikuti komentar tentang 3 lapisan CEF lagi ... bisakah Anda menguraikannya?
Mike Pennington
Tentu - secara umum saya berbicara tentang metode switching "terbaik" (menurut Cisco), secara berurutan: hardware dCEF -> hardware CEF -> switching PXF -> CEF berbasis perangkat lunak -> fast switching -> switching proses
John Jensen
Tapi saya tidak melihat mengapa ini relevan untuk menyebutkan jalur switching lain ... AFAIK, jalur switching lain yang lebih efisien dalam memindahkan paket tidak ada hubungannya dengan waktu yang diperlukan untuk membuang tabel adjacency pada router 7200.
Mike Pennington
Itu relevan dengan poin saya bahwa 7200 adalah platform berbasis perangkat lunak daripada sesuatu seperti cat65k atau 7600 yang melakukan CEF dalam perangkat keras; sepertinya itu akan menjadi asumsi yang aman bahwa platform yang melakukan CEF dalam perangkat keras akan melakukan sedikit lebih cepat dalam membuang adjacencies, bukan? Menjadi sangat jujur ​​meskipun pengalaman saya dengan produksi 7200 terbatas - saya selalu "cukup beruntung" untuk bekerja dengan kotak multi-stage berbasis ASIC yang lebih besar.
John Jensen