يناقش هذا المستند حالات فشل المخزن المؤقت وحالات الفشل على معالج التوجيه (RP).
لا توجد متطلبات خاصة لهذا المستند.
لا يقتصر هذا المستند على إصدارات برامج ومكونات مادية معينة.
تم إنشاء المعلومات الواردة في هذا المستند من الأجهزة الموجودة في بيئة معملية خاصة. بدأت جميع الأجهزة المُستخدمة في هذا المستند بتكوين ممسوح (افتراضي). إذا كانت شبكتك مباشرة، فتأكد من فهمك للتأثير المحتمل لأي أمر.
راجع اصطلاحات تلميحات Cisco التقنية للحصول على مزيد من المعلومات حول اصطلاحات المستندات.
يعمل بروتوكول RP على تقسيم ذاكرة المعالج الخاصة به إلى مجموعات. يحتوي كل تجمع على عدد من كتل الذاكرة متساوية الحجم. تسمى كتل الذاكرة هذه المخازن المؤقتة.
هناك ست تجمعات عازلة:
المخازن المؤقتة الصغيرة—104 بايت
مخازن متوسطة سعة 600 بايت
المخازن المؤقتة بسعة 1524 بايت
المخازن المؤقتة سعة 4520 بايت
المخازن المؤقتة الكبيرة سعة 5024 بايت
مخازن ضخمة سعة 18024 بايت
على سبيل المثال، إذا كان معالج واجهة بحاجة إلى تمرير حزمة سعة 20 بايت إلى RP، فإنه "يطلب" مخزن مؤقت صغير. إذا أحتاج معالج واجهة إلى تمرير حزمة بحجم 500 بايت إلى RP، فإنه يطلب مصدا مؤقتا متوسطا، وما إلى ذلك.
ملاحظة: يجب أن يطلب معالج الواجهة مخزن مؤقت بحجم معين.
عندما يطلب معالج الواجهة مخزن مؤقت، يحدث هذا:
في حالة وجود مخزن مؤقت حر داخل التجمع المطلوب، يتم منح المخزن المؤقت. وإلا، فإن الطلب يقوم بإنشاء "خطأ" وتحاول خوارزمية المخزن المؤقت "إنشاء" المزيد من المخازن المؤقتة لتلك المجموعة .
عندما يفشل IOS في الحصول على مصد صغير، فإنه لا يسقط الحزمة. إنها تزيد العداد الفاشل وتسقط إلى المخزن المؤقت للمستوى التالي، وهو المخزن المؤقت للوسط وتطلب المخزن المؤقت هناك. إذا فشل في الحصول على مخزن مؤقت متوسط، فإنه يطلب مخزن مؤقت للمستوى التالي، وهو مخزن مؤقت كبير. تستمر هذه العملية حتى تصل إلى تجمع المخزن المؤقت الضخم. إذا فشل في الحصول على مصد ضخم، ثم يسقط الربط.
عند إستخدام مجموعة ميزات IBM، تتسبب أي مشكلة في حدوث فشل في أي وقت تقريبا.
وعلى الرغم من أنه قد يتم تبديل ميزات IBM للعملية، إلا أن الرمز للحصول على مخزن مؤقت لتمرير حزمة من واجهة إلى تنفيذ RP عند مستوى المقاطعة.
لا يمكن إنشاء المخازن المؤقتة على مستوى المقاطعة؛ وبالتالي، فإن حالة عدم وجود قائمة انتظار طلبها لمزيد من المخازن المؤقتة إلى RP.
نظرا لتعذر إنشاء مخزن مؤقت إضافي على الموقع، يفشل طلب المخزن المؤقت، ويتم إسقاط الحزمة.
حالات فشل المخزن المؤقت هي أحد الأسباب الأكثر شيوعا لإسقاط الحزم. عندما يحدث إسقاط الحزمة بسبب فشل المخزن المؤقت، يحدث هذا:
بعد فشل المخزن المؤقت، يتلقى RP طلبا متميزا لإنشاء المزيد من المخازن المؤقتة ذات الحجم المناسب للتجمع المعين.
أثناء قيام RP بخدمة طلب إنشاء المخازن المؤقتة، قد تكون هناك حالات فشل إضافية في التجمع.
وقد يفشل بروتوكول RP في إنشاء المزيد من المخازن المؤقتة بسبب قيود الذاكرة في النظام عند الحاجة إلى المخازن المؤقتة الإضافية.
بشكل أساسي، قد تستغرق عملية إنشاء المخازن المؤقتة عدة ميكرو ثانية، حيث يتم إسقاط الحزم باستمرار بسبب نقص المخزن المؤقت.
وبالإضافة إلى ذلك، إذا تم إستخدام المخازن المؤقتة بسرعة كما تم إنشاؤها، يمكن فرض أن يقضي RP وقتا أكثر على إنشاء المخزن المؤقت مما على معالجة الحزم.
وقد يتسبب ذلك في بدء RP في إسقاط الحزم بسرعة حتى أن الأداء يتدهور وتفقد الجلسات.
لحسن الحظ، كما يناقش هذا وثيقة، ليس من الصعب تعريف وحل مشاكل فشل المخزن المؤقت. يعرض إخراج الأمر show buffers هذا الحالة الحالية لتجمعات المخزن المؤقت للموجه:
dspu-7k#show buffers Buffer elements: 500 in free list (500 max allowed) 2370 hits, 0 misses, 0 created Public buffer pools: Small buffers, 104 bytes (total 16, permanent 10): 11 in free list (0 min, 10 max allowed) 1770 hits, 33 misses, 22 trims, 28 created 9 failures (0 no memory) Middle buffers, 600 bytes (total 90, permanent 90): 89 in free list (10 min, 200 max allowed) 590 hits, 0 misses, 0 trims, 0 created 0 failures (0 no memory) Big buffers, 1524 bytes (total 90, permanent 90): 90 in free list (5 min, 300 max allowed) 126 hits, 0 misses, 0 trims, 0 created 0 failures (0 no memory) VeryBig buffers, 4520 bytes (total 10, permanent 10): 10 in free list (0 min, 300 max allowed) 50 hits, 0 misses, 0 trims, 0 created 0 failures (0 no memory) Large buffers, 5024 bytes (total 10, permanent 10): 10 in free list (0 min, 30 max allowed) 0 hits, 0 misses, 0 trims, 0 created 0 failures (0 no memory) Huge buffers, 18024 bytes (total 2, permanent 0): 0 in free list (0 min, 13 max allowed) 2 hits, 2 misses, 0 trims, 2 created 0 failures (0 no memory)
في إخراج show buffers:
يحدد الإجمالي إجمالي عدد المخازن المؤقتة في المجموعة، والتي تتضمن المخازن المؤقتة المستخدمة وغير المستخدمة.
يحدد الدائم عدد المخازن المؤقتة المخصصة في التجمع. تكون هذه المخازن المؤقتة دائما في التجمع ولا يمكن تقطيعها.
تحدد القائمة الحرة عدد المخازن المؤقتة الموجودة حاليا في التجمع والمتاحة للاستخدام.
يحدد Min الحد الأدنى لعدد المخازن المؤقتة التي يجب أن يحاول RP إبقائها في القائمة الحرة:
يتم إستخدام المعلمة min لتوقع طلب المخازن المؤقتة من التجمع في أي وقت معين.
إذا كان عدد المخازن المؤقتة في القائمة الحرة أقل من قيمة الحد الأدنى، يحاول RP إنشاء المزيد من المخازن المؤقتة لتلك المجموعة.
يحدد الحد الأقصى المسموح به الحد الأقصى لعدد المخازن المؤقتة المسموح بها في القائمة الحرة:
تمنع المعلمة max-allowed التجمع من إحتكار المخازن المؤقتة التي لم يعد بحاجة إليها. كما يعمل على تحرير هذه الذاكرة مرة أخرى إلى النظام لمزيد من الاستخدام.
إذا كان عدد المخازن المؤقتة في القائمة الحرة أكبر من القيمة الحد الأقصى المسموح به، فيجب أن يحاول RP قطع المخازن المؤقتة من التجمع.
تحدد HITS عدد المخازن المؤقتة التي تم طلبها من التجمع. يوفر عداد الوصول آلية لتحديد التجمع الذي يجب أن يلبي أعلى طلب على المخازن المؤقتة.
تحدد Misses عدد المرات التي تم فيها طلب مخزن مؤقت واكتشاف RP في أي تجمع إضافي كان مطلوبا. بمعنى آخر، انخفض عدد المخازن المؤقتة في القائمة الحرة إلى ما دون مستوى الحد الأدنى. يمثل عداد الأخطاء عدد المرات التي تم فيها فرض RP على إنشاء مخازن مؤقتة إضافية.
يحدد TRIMS عدد المخازن المؤقتة التي قام RP باقتطاعها من التجمع، عند تجاوز عدد المخازن المؤقتة في القائمة الحرة عدد المخازن المؤقتة القصوى المسموح بها.
يحدد الإنشاء عدد المخازن المؤقتة التي تم إنشاؤها في التجمع. يقوم RP بإنشاء مخازن مؤقتة في هذه الحالات:
عند زيادة الطلب على المخازن المؤقتة حتى يصبح عدد المخازن المؤقتة في القائمة الحرة أقل من الحد الأدنى للتخزين المؤقت.
تحدث حالة فوضى بسبب عدم وجود مخازن مؤقتة في القائمة الحرة.
كلا الحالتين السابقتين.
تعرف حالات الفشل عندما يفشل IOS في الحصول على مخزن مؤقت صغير، ولا يقوم بإسقاط الحزمة. إنها تزيد العداد الفاشل وتسقط إلى المخزن المؤقت للمستوى التالي، وهو المخزن المؤقت للوسط وتطلب المخزن المؤقت هناك. إذا فشل في الحصول على مخزن مؤقت متوسط، فإنه يطلب مخزن مؤقت للمستوى التالي، وهو مخزن مؤقت كبير. تستمر هذه العملية حتى تصل إلى تجمع المخزن المؤقت الضخم. إذا فشل في الحصول على مصد ضخم، ثم يسقط الربط.
لا توجد ذاكرة تحدد عدد مرات الفشل الناتجة عن عدم كفاية الذاكرة لإنشاء مخازن مؤقتة إضافية.
يمكنك فحص خصائص كل تجمع، لتحديد أي تجمعات (إن وجدت) تواجه مشاكل. يمكن ضبط معلمات التجمع للسماح للموجه بأن يكون أكثر إستعدادا لمعالجة الحمل، إذا بدا أن التجمع يعرض الخصائص التالية:
عدد مرات الفشل وإنشاء زيادة بمعدل مرتفع (كنسبة مئوية من مرات الوصول).
يوجد باستمرار عدد منخفض من المخازن المؤقتة في القائمة المجانية.
عدد مرات الفشل أو عدم زيادة الذاكرة.
باستخدام أمر تكوين المخازن المؤقتة، يمكنك ضبط هذه المعلمات لكل تجمع مخزن مؤقت:
الأولي—المخازن المؤقتة التي يتم تخصيصها عند إعادة تحميل النظام.
الحد الأقصى من الخلو — الحد الأقصى لعدد المخازن المؤقتة المجانية.
الحد الأدنى - الحد الأدنى لعدد المخازن المؤقتة المجانية.
عدد المخازن المؤقتة الدائمة.
قم بضبط المخازن المؤقتة الأولية لاستيعاب اندفاع حركة مرور إنشاء جلسة العمل بعد إعادة تحميل الموجه.
buffers small initial 250
ويتم "تقليم" هذه المخازن المؤقتة في نهاية المطاف وإعادتها إلى النظام.
يتم تصميم المخازن المؤقتة الأولية لمعالجة إنشاء الجلسة، والتي يتم تحويلها دائما للعملية.
أثناء إنشاء جلسة العمل، يتم ملء ذاكرة التخزين المؤقت للتحويل السريع (المستخدمة من قبل بروتوكولات المسار الأخرى)، ولم تعد المخازن المؤقتة المحولة للعملية مطلوبة وقد يتم إرجاعها إلى النظام.
قد لا يكون ضبط المخازن المؤقتة الأولية الحل الصحيح لمجموعة ميزات IBM، لأن معظم الحزم (بعد إنشاء الجلسة) يتم تحويلها للعملية وتتطلب التخزين المؤقت الإضافي على أي حال.
ملاحظة: بالنسبة لميزات تحويل عملية IBM، يجب ضبط المخازن المؤقتة المؤقتة المؤقتة المؤقتة بدلا من ضبط المخازن المؤقتة الأولية.
ضبط المخازن المؤقتة الخالية من الحد الأقصى بحيث تكون القيمة مساوية أو أكبر من المخازن المؤقتة الدائمة. إذا كانت جميع المخازن المؤقتة الدائمة مدرجة في القائمة الحرة، فيجب على RP ألا يحاول اقتطاع المخازن المؤقتة الدائمة. يمكن إستخدام الحد الأقصى للذاكرة الخالية لضمان إرجاع المخازن المؤقتة غير المستخدمة التي تم إنشاؤها أثناء عمليات التشغيل غير النظامية إلى ذاكرة النظام.
buffers small max-free 175 buffers small permanent 125
قم بضبط المخازن المؤقتة الخالية من الأدنى حتى تمثل القيمة الحد الأدنى المقدر لعدد المخازن المؤقتة المطلوبة في أي وقت. يمكن إستخدام قيمة الحد الأدنى الخالية للتنبؤ بحالات نقص المخزن المؤقت ولضمان توفر الحد الأدنى من المخازن المؤقتة دائما.
buffers small min-free 50
قم بضبط المخازن المؤقتة الدائمة بحيث تمثل القيمة العدد المقدر من المخازن المؤقتة المطلوبة للمعالجة العادية.
buffers small permanent 125
يتم إستخدام المخازن المؤقتة الدائمة لاستيعاب متطلبات المخزن المؤقت العادية (بما في ذلك عمليات التشغيل المتكررة) للموجه. تحديد متطلبات المخزن المؤقت العادية هي عملية تفاعلية، حيث يجب أن يعرض إخراج show buffer إجمالي المخازن المؤقتة المستخدمة في تجمع في وقت معين. يجب ضبط المخازن المؤقتة الدائمة فيما يتعلق بالمخازن المؤقتة "الإجمالية" المطلوبة. عندما تقوم بضبط المخازن المؤقتة الدائمة، يجب أن تركز على تقليل عمليات الإنشاء والقضاء على حالات الإخفاق والفشل.
هناك إثنان آخر عرض أمر أن أنت يستطيع استعملت أن يعين مشكلة مع مصد تخصيص:
show interfaces interface-id
show source-bridge
يتضمن إخراج الأمر show interfaces interface-identifier العينة عداد لعدم وجود مخزن مؤقت:
dspu-7k#show interfaces channel 4/2 Channel4/2 is up, line protocol is up Hardware is cxBus IBM Channel MTU 4472 bytes, BW 98304 Kbit, DLY 100 usec, rely 255/255, load 1/255 Encapsulation CHANNEL, loopback not set, keepalive not set Virtual interface Last input 0:00:04, output 0:00:04, output hang never Last clearing of "show interface" counters never Output queue 0/40, 0 drops; input queue 0/75, 8 drops 5 minute input rate 0 bits/sec, 0 packets/sec 5 minute output rate 0 bits/sec, 0 packets/sec 646 packets input, 27760 bytes, 8 no buffer Received 0 broadcasts, 0 runts, 0 giants 0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored, 0 abort 328 packets output, 16959 bytes, 0 underruns 0 output errors, 0 collisions, 0 interface resets, 0 restarts 0 output buffer failures, 0 output buffers swapped out
في إخراج الأمر show interfaces interface-identifier:
يتزايد عداد no buffer عندما تفشل الواجهة في الحصول على مخزن مؤقت لحزمة واردة.
تزداد عدادات no buffer وdrop (قائمة انتظار الإدخال) عند فشل الواجهة في الحصول على مخزن مؤقت لحزمة واردة.
لا يقوم عداد المخزن المؤقت الذي يتزايد في إخراج show interfaces بربط عداد حالات الفشل الذي يتزايد في إخراج show buffers. قد يتم ضبط تجمع المخزن المؤقت المناسب.
يتضمن إخراج الأمر show source-bridge sample هذا عداد واجهة للقنوات، عند تكوين ربط مسار المصدر (SRB) للواجهة:
dspu-7k#show source-bridge Local Interfaces: receive transmit srn bn trn r p s n max hops cnt:bytes cnt:bytes drops Ch4/2 666 1 99 * f 7 7 7 652:26020 6:266 0 Global RSRB Parameters: TCP Queue Length maximum: 100 Ring Group 99: This TCP peer: 150.10.20.2 Maximum output TCP queue length, per peer: 100 Peers: state bg lv pkts_rx pkts_tx expl_gn drops TCP TCP 150.10.20.1 open *3 261 266 0 0 0 TCP 150.10.20.2 - *3 0 0 0 0 0 Rings: bn: 1 rn: 888 locvrt ma: 4000.7000.fff1 Buff Ring888 fwd: 0 bn: 1 RN: 666 local ma: 4000.0c48.2e80 Channel4/2 fwd: 261 bn: 1 RN: 88 remote ma: 4000.4000.fff1 TCP 150.10.20.1 fwd: 322 bn: 1 RN: 250 remote ma: 4000.300f.7c09 TCP 150.10.20.1 fwd: 0 Explorers: ------- input ------- ------- output ------- spanning all-rings total spanning all-rings total Ch4/2 0 0 0 0 1 1 Local: fastswitched 0 flushed 0 max Bps 256000 rings inputs bursts throttles output drops Ch4/2 0 0 8 0
في إخراج الأمر show source-bridge:
يتزايد عداد الكبحات عندما تفشل الواجهة في الحصول على مخزن مؤقت لحزمة واردة.
يرتبط عداد الكبحات الذي يتزايد في إخراج أمر show interfaces بعداد أخطاء تتزايد في إخراج الأمر show buffers. قد يتم ضبط تجمع المخزن المؤقت المناسب.