Output Drops on Serial interface: Ukuran antrian yang lebih baik atau Output?

16

Pada router tepi Internet yang berbicara eBGP ke beberapa operator dan iBGP satu sama lain, semua antarmuka di sisi LAN dan WAN adalah GE kecuali untuk satu Serial full-DS3 (~ 45Mbps) pada setiap router. Meskipun saya pikir saya hampir tidak mengirim banyak lalu lintas keluar pada antarmuka serial - dalam kisaran 3-10Mbps - saya melihat tetesan antrian output konstan (OQD). Apakah penjelasan yang mungkin bahwa benar-benar ada lalulintas lalu lintas yang tidak saya lihat karena interval beban minimum 30 detik dan pemungutan suara SNMP rata-rata lalu lintas selama 5 menit, sehingga mereka tidak akan menerangi burstiness itu?

Platform ini adalah Cisco 7204VXR NPE-G2. Antrian serial adalah fifo .

Serial1 / 0 sudah habis, protokol line sudah habis
  Perangkat kerasnya adalah M2T-T3 + pa
  Penjelasan: -removed-
  Alamat internet abcd / 30
  MTU 4470 byte, BW 44210 Kbit, DLY 200 usec,
     keandalan 255/255, txload 5/255, rxload 1/255
  Enkapsulasi HDLC, crc 16, loopback tidak diatur
  Set Keepalive (10 detik)
  Restart-Delay adalah 0 detik
  Input terakhir 00:00:02, output 00:00:00, output hang tidak pernah
  Penghapusan terakhir dari "show interface" counter 00:35:19
  Antrian input: 0/75/0/0 (ukuran / maks / tetes / flushes); Total output turun: 36
  Strategi antrian: fifo
  Antrian keluaran: 0/40 (ukuran / maks)
  Laju input 30 detik 260000 bit / detik, 208 paket / detik
  Tingkat output 30 detik 939000 bit / detik, 288 paket / detik
     Input paket 410638, 52410388 byte, 0 tanpa buffer
     Menerima 212 siaran, 0 runts, 0 raksasa, 0 throttles
              0 paritas
     0 kesalahan input, 0 CRC, 0 frame, 0 overrun, 0 diabaikan, 0 batalkan
     515752 paket keluaran, 139195019 byte, 0 underruns
     0 kesalahan output, 0 applique, 0 antarmuka ulang
     0 kegagalan buffer output, 0 buffer output diganti
     0 transisi operator
   rxLOS tidak aktif, rxLOF tidak aktif, rxAIS tidak aktif
   txAIS tidak aktif, rxRAI tidak aktif, txRAI tidak aktif

24 jam kemudian akan menampilkan ribuan OQD. Kami mendorong lebih banyak lalu lintas sekitar jam 3 pagi setiap hari, jadi mungkin ada beberapa lalu lintas yang meledak-ledak di sini.

Last clearing of "show interface" counters 1d01h
Input queue: 0/75/0/158 (size/max/drops/flushes); Total output drops: 12049

Saya ingin mendorong lebih banyak lalu lintas keluar pada DS3, tetapi tidak dengan perhatian saya pada OQD. ISP tingkat 2 di belakang DS3 memiliki POP yang berfungsi ganda sebagai peering-points dengan 6+ tier 1's, jadi idenya adalah untuk mendapatkan lalu lintas di internet dengan klien secepatnya dibandingkan ISP utama kami di GE yang merupakan tier 1 , tetapi harus bekerja dengan cara mereka menuju pertukaran mengintip mereka. Lalu lintas masuk tidak menjadi masalah.

Apakah ada strategi antrian yang lebih baik daripada fifo dalam situasi ini? Melihat pada dokumen Cisco tentang tetes antrian input & output, penambahan ukuran antrian outbound tidak disarankan karena paket sudah ada di router dan akan lebih baik untuk menjatuhkan input sehingga TCP dapat mempercepat aplikasi kembali. Ada banyak bandwidth pada tautan GE kami, jadi tidak perlu untuk membatasi input. Tidak ada peta kebijakan pada router ini. 90% lalu lintas keluar berasal dari respons HTTP kami; sebagian besar sisanya dari FTP dan SMTP. Tautan GE mendorong 50-200 + Mbps.

Apakah Anda merekomendasikan penyesuaian ke buffer ukuran antrian output? Antarmuka serial ini adalah tautan cadangan kami yang lebih baik saya manfaatkan karena alasan yang diberikan sebelumnya (jika valid), tetapi dihadapkan dengan kebijakan BGP saya yang berusaha untuk tidak membebani antarmuka serial itu (yang tampaknya sangat kurang memuat sebagian besar waktu).

generalnetworkerror
sumber

Jawaban:

13

Anda benar, Anda tidak akan benar-benar melihat ledakan di SNMP. 1GE dapat mengirim 1,48Mpps, sehingga sangat sedikit waktu untuk memadatkan 45Mbps, yang dapat menangani kurang dari 75kpps.

Jika masuknya Anda adalah 1GE dan jalan keluar adalah 45Mbps, maka jelas titik kemacetan 45Mbps harus menjatuhkan paket. Ini normal dan diharapkan. Jika Anda menambah buffer, Anda akan mengajukan lebih banyak penundaan.
1GE membutuhkan 0,45ms untuk mengirim 40 frame IP 1500B, yang saat ini jumlah burst yang bisa Anda tangani. Namun dequeueing mereka pada 45Mbps sudah memakan waktu 10ms.

Jika Anda tidak memiliki masalah akut, saya mungkin tidak akan berbuat apa-apa. Tetapi jika beberapa traffic lebih memenuhi syarat untuk drop daripada yang lain, maka Anda harus mengganti FIFO dengan antrian berbasis kelas. Katakanlah mungkin Anda ingin memprioritaskan sehingga lebih banyak ftp dijatuhkan dan lebih sedikit voip.
Maka akan lebih masuk akal untuk menambahkan lebih banyak buffering pada traffic ftp, karena itu tidak terlalu sensitif untuk ditunda.

Jika Anda ingin mencoba keberuntungan Anda dengan buffer yang lebih dalam, sesuatu seperti ini sudah cukup:

policy-map WAN-OUT
 class class-default
    fair-queue
    queue-limit 200 packets
!
interface Serial1/0
  service-policy output WAN-OUT

Ini akan menyebabkan buffer 50ms pada Serial1 dan memungkinkan Anda untuk menangani hingga 2,25 ms burst dari antarmuka Gige tunggal.

ytti
sumber
Masuknya dan keluar jalan utama adalah 1GE di jalur utama kami dengan beberapa persentase lalu lintas melewati DS3s. Diedit Q untuk menunjukkan bahwa 90% keluar adalah lalu lintas respons HTTP dengan FTP dan SMTP membuat sisanya.
generalnetworkerror
Saya akan menghindari menggunakan DS3 ketika Gige tersedia, karena penundaan yang disebabkan oleh buffering. Semua aplikasi yang disebutkan tampaknya sangat menunda dan kehilangan toleransi.
ytti
Alasan lain yang tidak saya sebutkan untuk mencoba menggunakan lebih banyak dari DS3 adalah untuk mencoba menghindari biaya burst pada tautan GE WAN yang menghasilkan> 100MB. Meskipun kami meledak setiap hari di atas 100MB, itu belum cukup lama (belum).
generalnetworkerror
Anda bisa mengarahkan lebih banyak lalu lintas ke DS3 dan bahkan mengurangi penurunan paket dengan memperkenalkan lebih banyak penundaan. Tetapi jika Anda memproyeksikan untuk meningkatkan tingkat traffic Anda, maka masalahnya akan menjadi semakin buruk. Ingatlah bahwa ethernet tidak pernah lain dari 100% atau 0%, hanya berapa lama 100% bervariasi. Jadi, Anda akan selalu berakhir menahan ledakan yang disebabkan oleh jaringan 1GE berkecepatan tinggi Anda.
ytti
2
Alasan saya untuk 200 paket adalah keterlambatan yang diperlukan untuk mengirimkannya pada 45Mbps Anda, yaitu 50 ms yang masih merupakan penundaan yang lumayan untuk aplikasi data. Anda harus bertanya pada diri sendiri, berapa lama Anda akan mentolerir dan kemudian menentukan buffer untuk memenuhi tujuan itu. Dalam situasi Anda, saya hanya menggunakan gige.
ytti
8

OQD biasanya disebabkan oleh satu dari dua hal:

  1. Anda terlalu memanfaatkan tautan; dengan penggunaan tinggi yang konstan atau lalu lintas bursty.

  2. Anda memiliki peta kebijakan yang diterapkan ke antarmuka yang dikonfigurasi untuk melakukan sesuatu seperti pemolisian atau membentuk sebagian atau semua lalu lintas

  3. Ada beberapa jenis kesalahan pada antarmuka, lihat penghitung kesalahan ( show interface Serial1/0 counters errors) dan periksa apakah itu tidak menjatuhkan paket karena kesalahan.

Anda dapat melihat (jika Anda belum memilikinya) menempatkan peta kebijakan di tempat untuk melakukan hal-hal seperti memberikan antrian lalu lintas kritis kepada misi Anda, memungkinkan penghindaran kemacetan pada lalu lintas reguler (WRED) atau bahkan hanya memungkinkan antrian yang adil pada lalu lintas sehingga bahwa bandwidth dibagi antara aliran yang mentransmisikan antarmuka.

Seperti yang telah Anda sebutkan, opsi lain akan meningkatkan ukuran antrian output pada antarmuka tetapi jika Anda menggunakan peta kebijakan maka tidak akan diperlukan karena ini kebijakan karena akan membuat sub-antrian lainnya.

David Rothera
sumber