المحتويات

المقدمة

المتطلبات الأساسية

المتطلبات

المكونات المستخدمة

معلومات أساسية

التحقق من الصحة

التعرف على الواجهة المتأثرة

التعرف على الواجهات الواردة والصادرة

تخصيص المخزن المؤقت

استكشاف الأخطاء وإصلاحها

تعديل توزيع المخزن المؤقت

تعديل المخازن المؤقتة لكل قائمة انتظار

تحليل عمليات إسقاط الإخراج باستخدام Wireshark

نهج بديلة

معلومات ذات صلة

المقدمة

يصف هذا المستند كيفية أستكشاف أخطاء الإخراج وإصلاحها على الواجهات عالية السرعة على منصات Catalyst 9000 Series المستندة إلى UADP ASIC.

المتطلبات الأساسية

المتطلبات

توصي Cisco بأن تكون لديك معرفة بالمواضيع التالية:

- مفاهيم جودة الخدمة القياسية

- واجهة سطر أوامر جودة خدمة الوحدة النمطية (CLI)

- Wireshark

المكونات المستخدمة

تستند المعلومات الواردة في هذا المستند إلى إصدارات البرامج والمكونات المادية التالية:

- أنواع ASIC من UADP 2.0 و UADP 3.0

- Catalyst 9200

- Catalyst 9300

- Catalyst 9400

- Catalyst 9500

- Catalyst 9600

- برنامج Cisco IOS® XE 16.x أو 17.x

ملاحظة: راجع دليل التكوين المناسب للأوامر التي يتم إستخدامها لتمكين هذه الميزات على منصات Cisco الأخرى.

تم إنشاء المعلومات الواردة في هذا المستند من الأجهزة الموجودة في بيئة معملية خاصة. بدأت جميع الأجهزة المُستخدمة في هذا المستند بتكوين ممسوح (افتراضي). إذا كانت شبكتك قيد التشغيل، فتأكد من فهمك للتأثير المحتمل لأي أمر.

معلومات أساسية

تعد عمليات إسقاط الإخراج على الواجهات عالية السرعة مشكلة يمكن أن تحدث في بيئات الشبكة، وخاصة عندما تتعامل مع الواجهات التي تدعم معدلات نقل البيانات التي تبلغ 10 جيجابت في الثانية أو أعلى. تحدث عمليات إسقاط الإخراج عند إسقاط الحزم بواسطة الواجهة قبل أن يمكن إرسالها إلى الشبكة.

غالبا ما يساء فهم كيفية تفسير إستخدام الواجهة عند حدوث انخفاض في المخرجات عند مستويات إستخدام منخفضة:

- عندما يتم إرسال حركة مرور كثيرة جدا من واجهة واحدة، يمكن أن تصبح المخازن المؤقتة لتلك الواجهة معطلة وأن تحدث حالات سقوط للإخراج. كما يمكن أن تزيد الواجهة التي تحتوي على عدد قليل جدا من المخازن المؤقتة من احتمال حالات إسقاط الإخراج.

- كما يمكن أن تحدث عمليات إسقاط الإخراج بسبب عدم تطابق بين سرعة الواجهة وسرعة الجهاز المتصل. على سبيل المثال، إذا كانت الواجهة بسرعة 10 جيجابت في الثانية متصلة بجهاز يدعم معدل نقل البيانات فقط بسرعة 1 جيجابت في الثانية، فيمكن للواجهة إسقاط الحزم إذا لم يكن قادرا على إبطاء معدل البيانات لمطابقة إمكانيات الجهاز.

ومع ذلك، في الغالبية العظمى من الحالات يكون سقوط المخرجات ناجما عن حركة مرور البيانات الدقيقة التي أستنفدت المخازن المؤقتة للمنافذ:

- يشير الانفجار المصغر إلى ظاهرة يتم فيها إرسال كمية كبيرة من حركة المرور في فترة زمنية قصيرة جدا، وعادة ما يستمر هذا التدفق بضع مللي ثانية فقط ويتجاوز النطاق الترددي المتاح للواجهة.

- عند حدوث اندفاع صغير، تحتاج أجهزة الشبكة إلى تخزين حركة المرور مؤقتا حتى يمكن إرسالها إلى الشبكة. إذا تم تجاوز حجم المخزن المؤقت، يتم إسقاط الحزم.

غالبا ما يتم قياس حركة مرور الشبكة عن طريق متوسط إستخدام الارتباط (ويتم قياسه عبر 30 ثانية إلى 5 دقائق وفقا للتكوين). على الرغم من أن هذا المتوسط يظهر تدفقا ثابتا ومتساويا نسبيا، إلا أن إستخدام الواجهة على نطاق مللي ثانية غالبا ما يكون بطيئا للغاية.

شكل 1. يظهر تمثيل بصري للسبب الأساسي لانخفاضات المخرجات على واجهة عالية السرعة.

1. تمثل الحزمة تدفقات A و B و C مجموعات من وحدات بت في التدفق.

2. يتم إرسال التدفقات A و B و C من خلال واجهة 100G ويتم استقبالها في محول الخطوة التالية.

3. لاحظ أنه تتم إعادة توجيه وحدات بت A وبعض وحدات بت B بنجاح من واجهة مخرج الجيل العاشر.

- ومع ذلك، عند وصول التدفق C، قام المحول بتخزين بعض وحدات بت مؤقتا من التدفق B بسبب عدم القدرة على إلغاء قوائم التحكم في وحدات بت بسرعة عند وصولها.

- يصبح المخزن المؤقت ممتلئا ولا يمكنه الاحتفاظ بكل من وحدات بت B المتبقية وجميع وحدات بت في الحزمة C.

- إذا حدد مصنف المدخل أنه لا يوجد مكان لجزء واحد من الإطار التالي، فإنه يسقط الحزمة بأكملها!

4. يتم إرسال التدفق A وبعض التدفق B من خلال واجهة 10G.

تعتبر الواجهة "speed/bandwidth" كلا من أنواع سوء الاستخدام إلى حد ما:

- النطاق الترددي = البيانات (وحدات بت)/الوقت

- لا تقوم وحدات البت "بالإسراع ماديا" عندما تنتقل من 10 جيجا > 100 جيجا > 10 جيجا

الفرق في "السرعة" هو القدرات المتشابكة/عدد الممرات/عدد النبضات لكل فترة زمنية، وآلية الترميز، وهلم جرا، في مقابل أن تسير الوسائط (الضوء/الإلكترونات) أسرع.

تلميح: أستخدم الأمر load-interval <30-600>ضمن وضع تكوين الواجهة لتعديل تأخر فترة التحميل في ثوان. (يمثل الفاصل الزمني للتحميل التردد عدادات واجهة استبيان المحول).

التحقق من الصحة

يمكن أن تكون عمليات إسقاط مخرجات أستكشاف الأخطاء وإصلاحها على الواجهات عالية السرعة عملية معقدة، ولكن فيما يلي بعض الخطوات العامة التي يمكن أن تساعد في تحديد المشكلة وحلها:

التعرف على الواجهة المتأثرة:

- ابدأ بتضييق الواجهة التي تختبر عمليات إسقاط الإخراج.

- أستخدم show interfaces | يتضمن up|إجمالي عمليات إسقاط الإخراج إخراج الأمر أو إستخدام أدوات المراقبة لتحديد الواجهة التي تواجه المشكلة.

تحديد الواجهات الواردة والصادرة:

- للتحقق من القارن إلى تعيينات ASIC، قم بتشغيل الأمر show platform software fed <switch|active> ifm mappings.

التحقق من تخصيص المخزن المؤقت:

- من المهم التحقق من تخصيص المخزن المؤقت وتكوين الواجهة للواجهات المتأثرة.

تحقق من البقع الدقيقة باستخدام Wireshark:

- غالبا ما تحدث حالات سقوط المخرجات على الواجهات عالية السرعة بسبب دفعات صغيرة من حركة المرور.

- أستخدم أدوات تحليل حركة المرور مثل Wireshark لمراقبة أنماط حركة المرور والتعرف على أي دفعات صغيرة محتملة.

ضع في الاعتبار ترقية الأجهزة:

- إذا لم تحل الخطوات السابقة المشكلة، فمن الضروري ترقية الأجهزة، مثل الواجهة أو الجهاز أو البنية الأساسية للشبكة، لمعالجة حركة المرور المتزايدة.

التعرف على الواجهة المتأثرة

لتحديد الواجهة المتأثرة التي تختبر عمليات إسقاط الإخراج، أستخدم الأمر show interfaces.

- يوفر هذا الأمر معلومات تفصيلية حول كل واجهة تتضمن إحصائيات حول أخطاء الإدخال والإخراج والحزم التي تم إسقاطها ومعلومات هامة أخرى.

لتضييق قائمة الواجهات والتعرف بسرعة على الواجهة المتأثرة، أستخدم show interfaces | يتضمن الأمر up|Total output drop لتصفية الواجهات لأسفل أو Admin لأسفل، وإظهار فقط تلك النشطة التي لها عمليات إسقاط.

- على سبيل المثال، يمكنك إستخدام هذا الأمر لعرض الواجهات التي شهدت حالات إسقاط مخرجات فقط.

Cat9k(config)#show interfaces | in is up|Total output drops

HundredGigE1/0/1 is up, line protocol is up (connected)

Input queue: 0/2000/0/0 (size/max/drops/flushes); Total output drops: 54845

HundredGigE1/0/10 is up, line protocol is up (connected)

Input queue: 0/2000/0/0 (size/max/drops/flushes); Total output drops: 1540231

--snip--

تلميح: أستخدم الأمر show interfaces وقم بتصفية الإخراج باستخدام المعايير المناسبة للتعرف على الواجهة المتأثرة بسرعة وسهولة. إتخاذ الخطوات اللازمه لحل المشكله.

افتراضيا، على مادة حفازة 9000 sery مفتاح، مخرج ربط عرض بالبايت بدلا من ربط. ومن المهم تحديد ما إذا كان مقدار حالات انخفاض الناتج التي تم العثور عليها قد حدث أي تأثير فعلي أو أنها كانت ببساطة ناجمة عن حركة مرور مزدحمة عابرة.

لحساب النسبة المئوية لإجمالي وحدات بايت الإخراج التي تم إرسالها على واجهة تم إسقاطها:

- تجميع إجمالي عدد عمليات إسقاط الإخراج من الواجهة.

- تجميع إجمالي عدد وحدات البايت للإخراج من الواجهة.

- حساب النسبة المئوية لانخفاضات المخرجات. تقسيم إجمالي عدد مرات إسقاط الإخراج إلى إجمالي عدد وحدات البايت للمخرجات ومضاعفتها ب 100.

يوفر هذا النسبة المئوية لوحدات بايت الإخراج التي تم إسقاطها على الواجهة، والتي يمكن أن تساعدك في تحديد ما إذا كانت هناك مشكلة إزدحام أو مشكلة تخصيص مخزن مؤقت تحتاج إلى معالجة، أو ما إذا كانت عمليات إسقاط الإخراج قد حدثت بسبب حركة مرور بيانات microBus العابرة.

أستخدم الأمر show interface <interface>لجمع المعلومات.

Cat9k#show interfaces twentyFiveGigE 1/0/41

TwentyFiveGigE1/0/41 is up, line protocol is up (connected)

Hardware is Twenty Five Gigabit Ethernet, address is dc77.4c8a.4289 (bia dc77.4c8a.4289)

MTU 1500 bytes, BW 25000000 Kbit/sec, DLY 10 usec,

reliability 255/255, txload 3/255, rxload 1/255

Encapsulation ARPA, loopback not set

Keepalive set (10 sec)

Full-duplex, 10Gb/s, link type is auto, media type is SFP-10GBase-AOC1M

input flow-control is on, output flow-control is off

ARP type: ARPA, ARP Timeout 04:00:00

Last input 00:00:06, output 00:00:10, output hang never

Last clearing of "show interface" counters 6w1d

Input queue: 0/2000/0/0 (size/max/drops/flushes); Total output drops: 299040207

Queueing strategy: Class-based queueing

Output queue: 0/40 (size/max)

30 second input rate 767000 bits/sec, 155 packets/sec

30 second output rate 14603000 bits/sec, 1819 packets/sec

931864194 packets input, 572335285416 bytes, 0 no buffer

Received 933005 broadcasts (933005 multicasts)

0 runts, 0 giants, 0 throttles

0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored

0 watchdog, 0 multicast, 0 pause input

0 input packets with dribble condition detected

1067891106 packets output, 5930422327799 bytes, 0 underruns

--snip--

إجمالي حالات انخفاض الإخراج: 299040207

إجمالي وحدات البايت للإخراج: 5930422327799

النسبة المئوية لانخفاضات الناتج = 299040207/5930422327799 x 100 = 0.005٪

في هذا المثال، تمثل عمليات إسقاط الإخراج الإجمالية 0.005٪ من إجمالي مبلغ وحدات البايت التي تم إرسالها على هذه الواجهة خلال الأسابيع الستة الماضية (آخر مسح للعدادات 6w1d).

- إجمالي عدد الحزم مقابل عدد الحزم التي تم إسقاطها ثانوي، ولن يكون له أي تأثير.

التعرف على الواجهات الواردة والصادرة

لتخصيص المخازن المؤقتة المرنة وإدارة حركة مرور البيانات على محولات Catalyst 9000 Series Switches بشكل أفضل، تذكر تحديد الواجهات الواردة والصادرة في ASICs مختلفة.

يشير مخزن مؤقت لين، يعرف أيضا باسم مخزن مؤقت ديناميكي أو مخزن مؤقت مشترك، إلى جزء من الذاكرة يتم تخصيصه ديناميكيا لتخزين الحزم مؤقتا في فترات الازدحام أو حمل حركة مرور مرتفع.

تلميح: يرجى الرجوع إلى مستند فهم تخصيص المخزن المؤقت لقائمة الانتظار على محولات Catalyst 9000 Switches للحصول على معلومات تفصيلية حول تخصيص المخزن المؤقت في محولات Catalyst 9000 Series Switches.

استنادا إلى بنية نموذج محدد من محولات Catalyst 9000 switches، من المهم ملاحظة أنها غالبا ما تتضمن العديد من بطاقات ASIC المسؤولة عن وظائف متعددة.

للتحقق من القارن إلى تعيينات ASIC، يمكنك تشغيل الأمر: show platform software fed <switch|active> ifm mappings

يوضح هذا المثال الواجهة إلى تعيينات ASIC. يتم تعيين نطاق الواجهة TenGigabitEthernet1/0/1 إلى TenGigabitEthernet1/0/24 على ASIC 1 بينما يتم تعيين الباقي على ASIC 0:

Cat9k#show platform software fed switch active ifm mappings

Interface                 IF_ID    Inst Asic Core Port SubPort Mac  Cntx LPN  GPN  Type Active

TenGigabitEthernet1/0/1   0x9        3   1   1    0      0      11   0    1    1    NIF  Y

TenGigabitEthernet1/0/2   0xa        3   1   1    1      0      10   1    2    2    NIF  Y

TenGigabitEthernet1/0/3   0xb        3   1   1    2      0      9    2    3    3    NIF  Y

TenGigabitEthernet1/0/4   0xc        3   1   1    3      0      8    3    4    4    NIF  Y

TenGigabitEthernet1/0/5   0xd        3   1   1    4      0      7    4    5    5    NIF  Y

TenGigabitEthernet1/0/6   0xe        3   1   1    5      0      6    5    6    6    NIF  Y

TenGigabitEthernet1/0/7   0xf        3   1   1    6      0      5    6    7    7    NIF  Y

TenGigabitEthernet1/0/8   0x10       3   1   1    7      0      4    7    8    8    NIF  Y

TenGigabitEthernet1/0/9   0x11       3   1   1    8      0      3    8    9    9    NIF  Y

TenGigabitEthernet1/0/10  0x12       3   1   1    9      0      2    9    10   10   NIF  Y

TenGigabitEthernet1/0/11  0x13       3   1   1    10     0      1    10   11   11   NIF  Y

TenGigabitEthernet1/0/12  0x14       3   1   1    11     0      0    11   12   12   NIF  Y

TenGigabitEthernet1/0/13  0x15       2   1   0    12     0      11   0    13   13   NIF  Y

TenGigabitEthernet1/0/14  0x16       2   1   0    13     0      10   1    14   14   NIF  Y

TenGigabitEthernet1/0/15  0x17       2   1   0    14     0      9    2    15   15   NIF  Y

TenGigabitEthernet1/0/16  0x18       2   1   0    15     0      8    3    16   16   NIF  Y

TenGigabitEthernet1/0/17  0x19       2   1   0    16     0      7    4    17   17   NIF  Y

TenGigabitEthernet1/0/18  0x1a       2   1   0    17     0      6    5    18   18   NIF  Y

TenGigabitEthernet1/0/19  0x1b       2   1   0    18     0      5    6    19   19   NIF  Y

TenGigabitEthernet1/0/20  0x1c       2   1   0    19     0      4    7    20   20   NIF  Y

TenGigabitEthernet1/0/21  0x1d       2   1   0    20     0      3    8    21   21   NIF  Y

TenGigabitEthernet1/0/22  0x1e       2   1   0    21     0      2    9    22   22   NIF  Y

TenGigabitEthernet1/0/23  0x1f       2   1   0    22     0      1    10   23   23   NIF  Y

TenGigabitEthernet1/0/24  0x20       2   1   0    23     0      0    11   24   24   NIF  Y

TenGigabitEthernet1/0/25  0x21       1   0   1    24     0      11   0    25   25   NIF  Y

TenGigabitEthernet1/0/26  0x22       1   0   1    25     0      10   1    26   26   NIF  Y

TenGigabitEthernet1/0/27  0x23       1   0   1    26     0      9    2    27   27   NIF  Y

TenGigabitEthernet1/0/28  0x24       1   0   1    27     0      8    3    28   28   NIF  Y

TenGigabitEthernet1/0/29  0x25       1   0   1    28     0      7    4    29   29   NIF  Y

TenGigabitEthernet1/0/30  0x26       1   0   1    29     0      6    5    30   30   NIF  Y

TenGigabitEthernet1/0/31  0x27       1   0   1    30     0      5    6    31   31   NIF  Y

TenGigabitEthernet1/0/32  0x28       1   0   1    31     0      4    7    32   32   NIF  Y

TenGigabitEthernet1/0/33  0x29       1   0   1    32     0      3    8    33   33   NIF  Y

TenGigabitEthernet1/0/34  0x2a       1   0   1    33     0      2    9    34   34   NIF  Y

TenGigabitEthernet1/0/35  0x2b       1   0   1    34     0      1    10   35   35   NIF  Y

TenGigabitEthernet1/0/36  0x2c       1   0   1    35     0      0    11   36   36   NIF  Y

TenGigabitEthernet1/0/37  0x2d       0   0   0    36     0      11   11   37   37   NIF  Y

TenGigabitEthernet1/0/38  0x2e       0   0   0    37     0      10   10   38   38   NIF  Y

TenGigabitEthernet1/0/39  0x2f       0   0   0    38     0      9    9    39   39   NIF  Y

TenGigabitEthernet1/0/40  0x30       0   0   0    39     0      8    8    40   40   NIF  Y

TenGigabitEthernet1/1/1   0x31       0   0   0    40     0      0    19   41   41   NIF  N

TenGigabitEthernet1/1/2   0x32       0   0   0    41     0      0    18   42   42   NIF  N

TenGigabitEthernet1/1/3   0x33       0   0   0    42     0      0    17   43   43   NIF  N

TenGigabitEthernet1/1/4   0x34       0   0   0    43     0      0    16   44   44   NIF  N

TenGigabitEthernet1/1/5   0x35       0   0   0    44     0      0    15   45   45   NIF  N

TenGigabitEthernet1/1/6   0x36       0   0   0    45     0      0    14   46   46   NIF  N

TenGigabitEthernet1/1/7   0x37       0   0   0    46     0      0    13   47   47   NIF  N

TenGigabitEthernet1/1/8   0x38       0   0   0    47     0      0    12   48   48   NIF  N

FortyGigabitEthernet1/1/1 0x39       0   0   0    48     0      4    4    49   49   NIF  N

FortyGigabitEthernet1/1/2 0x3a       0   0   0    49     0      0    0    50   50   NIF  N

تخصيص المخزن المؤقت

يعد تخصيص المخزن المؤقت عاملا مهما لتجنب عمليات إسقاط الإخراج نظرا لاستخدام المخازن المؤقتة لتخزين حركة مرور البيانات التي لا يمكن إعادة توجيهها بسبب الازدحام أو متغيرات أخرى. إذا لم يكن هناك ما يكفي من المخازن المؤقتة المتاحة، يتم إسقاط حركة المرور، مما يؤدي إلى ضعف أداء الشبكة والإضطرابات المحتملة. مع عملية التحقق هذه، يمكنك التأكد من أن المحول يحتوي على مساحة تخزين مؤقت كافية لمعالجة أحمال حركة المرور العالية.

يسمح لك الأمر <interface>show platform hardware fed switch نشط في قوائم انتظار جودة الخدمة بمشاهدة إحصائيات كل قائمة انتظار على واجهة، والتي تتضمن عدد وحدات البايت التي تم وضعها في المخازن المؤقتة، وعدد وحدات البايت التي تم إسقاطها بسبب نقص المخازن المؤقتة المتاحة.

في هذا المثال:

- تحتفظ قوائم الانتظار من 0 إلى 4 حاليا بحركة المرور المضمنة في قائمة الانتظار. يتم تخزين حركة المرور المستلمة على هذه الواجهة بشكل مؤقت في المخازن المؤقتة حتى يمكن إرسالها.

- شهدت قائمة الانتظار 2 فقط حركة مرور مهملة أو مسقطة (24010607 بايت).

Cat9k#show platform hardware fed active qos queue stats interface twentyFiveGigE 1/0/41

----------------------------------------------------------------------------------------------

AQM Global counters

GlobalHardLimit: 16257   |   GlobalHardBufCount: 0

GlobalSoftLimit: 39039   |   GlobalSoftBufCount: 0

----------------------------------------------------------------------------------------------

High Watermark Soft Buffers:  Port Monitor Disabled

----------------------------------------------------------------------------------------------

Asic:0 Core:0 DATA Port:8 Hardware Enqueue Counters

----------------------------------------------------------------------------------------------

Q Buffers          Enqueue-TH0          Enqueue-TH1          Enqueue-TH2             Qpolicer

(Count)              (Bytes)              (Bytes)              (Bytes)              (Bytes)

-- ------- -------------------- -------------------- -------------------- --------------------

0       0                    0             40588200              9368282                    0

1       0                    0             23584521               789524                    0

2       0                    0                    0         110307150901                    0

3       0                    0                    0            487852543                    0

4       0                    0                    0              5483512                    0

5       0                    0                    0                    0                    0

6       0                    0                    0                    0                    0

7       0                    0                    0                    0

Asic:0 Core:0 DATA Port:8 Hardware Drop Counters

--------------------------------------------------------------------------------------------------------------------------------

Q             Drop-TH0             Drop-TH1             Drop-TH2             SBufDrop              QebDrop         QpolicerDrop

(Bytes)              (Bytes)              (Bytes)              (Bytes)              (Bytes)              (Bytes)

-- -------------------- -------------------- -------------------- -------------------- -------------------- --------------------

0                    0                    0                    0                    0                    0                    0

1                    0                    0                    0                    0                    0                    0

2                    0                    0             24010607 <-- (drops on Q2)  0                    0                    0

3                    0                    0                    0                    0                    0                    0

4                    0                    0                    0                    0                    0                    0

5                    0                    0                    0                    0                    0                    0

6                    0                    0                    0                    0                    0                    0

7                    0                    0                    0                    0                    0                    0

استكشاف الأخطاء وإصلاحها

تعديل توزيع المخزن المؤقت

لزيادة قيمة المخازن المؤقتة المرنة المستخدمة بواسطة واجهة، أستخدم الأمر qos queue-softmax-multipliercommand في وضع التكوين العام:

- حدد قيمة في النطاق من 100 إلى 4800. القيمة الافتراضية هي 100.

- يزيد هذا أمر من قدرة قائمة انتظار ذات منفذ واحد على إستيعاب التوهجات الدقيقة.

- يزيد هذا الأمر من حدود قائمة انتظار المنافذ حتى يمكن لقائمة انتظار المنافذ إستهلاك وحدات تخزين مؤقت إضافية من التجمع المشترك.

ينطبق هذا التكوين عبر جميع الواجهات:

- يفترض تخصيص المخزن المؤقت نفسه أن لا يحدث البروتوكولات الدقيقة على جميع المنافذ على المحول في نفس الوقت.

- إذا حدثت انفجارات صغيرة في لحظات عشوائية، يمكن للمخزن المؤقت المشترك تخصيص وحدات مصد إضافية لاستيعابها.

أستخدم الأمر QoS queue-softmax-multiplier<100 4800>في وضع التكوين العام لتعديل تخصيص المخزن المؤقت السهل. إذا قمت بتكوين هذا إلى الحد الأقصى للقيمة المتاحة، فإنه يوفر للمحول أعلى احتمال لتقليل أو تقليل حالات سقوط المخرجات. هذه أفضل ممارسة يوصى بها بشكل عام لتجنب حالات السقوط كلما أمكن.

Cat9k(config)#qos queue-softmax-multiplier ?

<100-4800> multiplier(%)

أستخدم الأمر show platform hardware الذي تم تغذيته بواجهة تكوين قائمة انتظار جودة الخدمة النشطة <interface>لتحديد تخصيص المخزن المؤقت السهل على السلسلة Catalyst 9000.

يوضح هذا المثال المخازن المؤقتة المرنة الافتراضية المخصصة على واجهة قامت بالتفاوض على السرعة 10 جيجابت في الثانية على محول Catalyst 9500.

Cat9k#show platform hardware fed active qos queue config interface twentyFiveGigE 1/0/41

Asic:0 Core:0 DATA Port:8 GPN:141 LinkSpeed:0x12

AFD:Disabled FlatAFD:Disabled QoSMap:0 HW Queues: 64 - 71

DrainFast:Disabled PortSoftStart:5 - 4320 BufferSharing:Disabled

DTS  Hardmax  Softmax   PortSMin  GlblSMin  PortStEnd   QEnable

----- --------  --------  --------  --------  ---------  -------

0   1  6   480   8  1920  16   960   0     0   3  5760      En <-- 1920 is the total soft buffers allocated to queue 0 on interface twentyFiveGigE 1/0/41

1   1  5     0  11  2880  16  1440   8   720   3  5760      En <-- 2880 is the total soft buffers allocated to queue 1 on interface twentyFiveGigE 1/0/41

2   1  5     0   6     0   0     0   0     0   3  5760      En

3   1  5     0   6     0   0     0   0     0   3  5760      En

4   1  5     0   6     0   0     0   0     0   3  5760      En

5   1  5     0   6     0   0     0   0     0   3  5760      En

6   1  5     0   6     0   0     0   0     0   3  5760      En

7   1  5     0   6     0   0     0   0     0   3  5760      En

Priority   Shaped/shared   weight  shaping_step  sharpedWeight

--------   -------------   ------  ------------   -------------

0      0     Shared            50           0           0

1      0     Shared            75           0           0

2      0     Shared         10000           0           0

3      0     Shared         10000           0           0

4      0     Shared         10000           0           0

5      0     Shared         10000           0           0

6      0     Shared         10000           0           0

7      0     Shared         10000           0           0

Port       Port            Port    Port

Priority   Shaped/shared   weight  shaping_step

--------   -------------   ------  ------------

2     Shaped          1023        1023

QPolicer     Refresh Credit   Max Credit  Interval Idx

-----------   --------------   ----------  ------------

0 Disabled                 0            0           0

1 Disabled                 0            0           0

2 Disabled                 0            0           0

3 Disabled                 0            0           0

4 Disabled                 0            0           0

5 Disabled                 0            0           0

6 Disabled                 0            0           0

7 Disabled                 0            0           0

Weight0 Max_Th0 Min_Th0 Weigth1 Max_Th1 Min_Th1  Weight2 Max_Th2 Min_Th2

------- ------- ------- ------- ------- -------  ------- ------- ------

0       0    1912       0       0    2137       0       0    2400       0 <-- Thresholds values in queue 0 on interface twentyFiveGigE 1/0/41

1       0    2295       0       0    2565       0       0    2880       0 <-- Thresholds values in queue 1 on interface twentyFiveGigE 1/0/41

2       0       0       0       0       0       0       0       0       0

3       0       0       0       0       0       0       0       0       0

4       0       0       0       0       0       0       0       0       0

5       0       0       0       0       0       0       0       0       0

6       0       0       0       0       0       0       0       0       0

7       0       0       0       0       0       0       0       0       0

يوضح هذا المثال وحدات التخزين المؤقت المرنة المخصصة على واجهة قامت بالتفاوض على السرعة التي تبلغ 10 جيجابت في الثانية على محول Catalyst 9500 باستخدام المضاعف 4800 الذي تم تكوينه.

Cat9k#show platform hardware fed active qos queue config interface twentyFiveGigE 1/0/41

Asic:0 Core:0 DATA Port:8 GPN:141 LinkSpeed:0x12

AFD:Disabled FlatAFD:Disabled QoSMap:0 HW Queues: 64 - 71

DrainFast:Disabled PortSoftStart:4 - 42000 BufferSharing:Disabled

DTS  Hardmax  Softmax   PortSMin  GlblSMin  PortStEnd   QEnable

----- --------  --------  --------  --------  ---------  -------

0   1  6   480  10 42000   1  1312   0     0   4 42000      En <-- 42000 is the total soft buffers allocated to queue 0 on interface twentyFiveGigE 1/0/41

1   1  5     0  10 42000   1  1312   1  1312   4 42000      En <-- 42000 is the total soft buffers allocated to queue 1 on interface twentyFiveGigE 1/0/41

2   1  5     0   6     0   0     0   0     0   4 42000      En

3   1  5     0   6     0   0     0   0     0   4 42000      En

4   1  5     0   6     0   0     0   0     0   4 42000      En

5   1  5     0   6     0   0     0   0     0   4 42000      En

6   1  5     0   6     0   0     0   0     0   4 42000      En

7   1  5     0   6     0   0     0   0     0   4 42000      En

Priority   Shaped/shared   weight  shaping_step  sharpedWeight

--------   -------------   ------  ------------   -------------

0      0     Shared            50           0           0

1      0     Shared            75           0           0

2      0     Shared         10000           0           0

3      0     Shared         10000           0           0

4      0     Shared         10000           0           0

5      0     Shared         10000           0           0

6      0     Shared         10000           0           0

7      0     Shared         10000           0           0

Port       Port            Port    Port

Priority   Shaped/shared   weight  shaping_step

--------   -------------   ------  ------------

2     Shaped          1023        1023

QPolicer     Refresh Credit   Max Credit  Interval Idx

-----------   --------------   ----------  ------------

0 Disabled                 0            0           0

1 Disabled                 0            0           0

2 Disabled                 0            0           0

3 Disabled                 0            0           0

4 Disabled                 0            0           0

5 Disabled                 0            0           0

6 Disabled                 0            0           0

7 Disabled                 0            0           0

Weight0 Max_Th0 Min_Th0 Weigth1 Max_Th1 Min_Th1  Weight2 Max_Th2 Min_Th2

------- ------- ------- ------- ------- -------  ------- ------- ------

0       0   33851       0       0   37833       0       0   42480       0 <-- Thresholds values in queue 0 on interface twentyFiveGigE 1/0/41

1       0   33468       0       0   37406       0       0   42000       0 <-- Thresholds values in queue 1 on interface twentyFiveGigE 1/0/41

2       0       0       0       0       0       0       0       0       0

3       0       0       0       0       0       0       0       0       0

4       0       0       0       0       0       0       0       0       0

5       0       0       0       0       0       0       0       0       0

6       0       0       0       0       0       0       0       0       0

7       0       0       0       0       0       0       0       0       0

ملاحظة: يختلف توزيع المخازن المؤقتة المرنة. من المحتمل ألا يتطابق التوزيع مع الناتج أعلاه. وتختلف مخرجات التخصيص، اعتمادا على النظام الأساسي المحدد المستخدم وسياسات جودة الخدمة المطبقة وسرعة تشغيل الواجهة المعنية التي تم التفاوض عليها.

تعديل المخازن المؤقتة لكل قائمة انتظار

يمكن الاستفادة من تعديل المخزن المؤقت لكل قائمة انتظار للسيناريوهات التي لا يمكنك فيها إستخدام مضاعف SoftMax أو في السيناريوهات التي تحاول فيها ضبط المخازن المؤقتة لملائمة ملف تعريف حركة مرور البيانات.

- لتعديل تخصيص مخزن قائمة الانتظار المؤقت للمحول على أساس كل واجهة، يجب إستخدام مخططات النهج.

- في معظم الظروف، تقوم بتعديل خريطة السياسة الحالية لواجهة ما وتغيير المخازن المؤقتة على أساس كل فئة.

في هذا المثال على الواجهة، تعرض الطراز 2FiveGigE 1/0/1 إلى حالات انخفاض في المخرجات. كما هو موضح في الأمر output policy-map الذي يتم تطبيقه على هذه الواجهة.

يسمح لك الأمر <interface>show platform hardware fed switch نشط قوائم انتظار جودة الخدمة برؤية إحصائيات كل قائمة انتظار على واجهة، والتي تتضمن عدد وحدات البايت التي تم وضعها في المخازن المؤقتة، وعدد وحدات البايت التي تم إسقاطها بسبب نقص المخازن المؤقتة المتاحة.

Cat9k#show platform hardware fed active qos queue stats interface twentyFiveGigE 1/0/1

----------------------------------------------------------------------------------------------

AQM Global counters

GlobalHardLimit: 16257   |   GlobalHardBufCount: 0

GlobalSoftLimit: 39039   |   GlobalSoftBufCount: 0

----------------------------------------------------------------------------------------------

High Watermark Soft Buffers:  Port Monitor Disabled

----------------------------------------------------------------------------------------------

Asic:0 Core:0 DATA Port:8 Hardware Enqueue Counters

----------------------------------------------------------------------------------------------

Q Buffers          Enqueue-TH0          Enqueue-TH1          Enqueue-TH2             Qpolicer

(Count)              (Bytes)              (Bytes)              (Bytes)              (Bytes)

-- ------- -------------------- -------------------- -------------------- --------------------

0       0                    0                    0                   82                    0

1       0                    0                    0                 7517                    0

2       0                    0                    0         110307150901                    0

3       0                    0                    0           7174010710                    0

4       0                    0                    0                    0                    0

5       0                    0                    0                    0                    0

6       0                    0                    0                    0                    0

7       0                    0                    0                    0

Asic:0 Core:0 DATA Port:8 Hardware Drop Counters

--------------------------------------------------------------------------------------------------------------------------------

Q             Drop-TH0             Drop-TH1             Drop-TH2             SBufDrop              QebDrop         QpolicerDrop

(Bytes)              (Bytes)              (Bytes)              (Bytes)              (Bytes)              (Bytes)

-- -------------------- -------------------- -------------------- -------------------- -------------------- --------------------

0                    0                    0                    0                    0                    0                    0

1                    0                    0                    0                    0                    0                    0

2                    0                    0             24010607                    0                    0                    0

3                    0                    0             20071103                    0                    0                    0

4                    0                    0                    0                    0                    0                    0

5                    0                    0                    0                    0                    0                    0

6                    0                    0                    0                    0                    0                    0

7                    0                    0                    0                    0                    0                    0

لتخفيف عمليات إسقاط الإخراج على هذه الواجهة، استنادا إلى عدادات قائمة الانتظار، يكون لقيم Q0 إلى Q1 معدل دخول منخفض جدا، وبالتالي لا يمكن أن يتطلب العديد من المخازن المؤقتة مثل Q2 و Q3. الإجراء الموصى به هو تخصيص المزيد من المخازن المؤقتة لقائمة الانتظار رقم 2 وقائمة الانتظار رقم 3، نظرا لأن قوائم الانتظار هذه تحتوي على مقدار أكبر من حركة مرور البيانات التي تم إدخالها في قائمة الانتظار مقارنة بأي قائمة انتظار أخرى.

- لتعديل تخصيص المخزن المؤقت، يمكنك إستخدام تكوين المخازن المؤقتة ل <0-100> في خريطة السياسة المطبقة على الواجهة 25GigE 1/0/1.

ملاحظة: إذا تم تكوين هذا الأمر على كل فئة في النهج، فيجب أن يقوم بإضافة ما يصل إلى 100. ومع ذلك، في حالة تكوين فئة واحدة فقط، يقوم النظام بطرح المخازن المؤقتة من قوائم الانتظار الأخرى بشكل متساو.

يوضح هذا المثال كيفية تكوين نسبة المخازن المؤقتة للصفوف على خريطة نهج.

Cat9k(config)#policy-map test

Cat9k(config-pmap)# class Voice

Cat9k(config-pmap-c)# priority level 1

Cat9k(config-pmap-c)# queue-buffers ratio 5

Cat9k(config-pmap-c)# class Video

Cat9k(config-pmap-c)# bandwidth remaining percent 50

Cat9k(config-pmap-c)# queue-buffers ratio 15

Cat9k(config-pmap-c)# class BuisnessCritical

Cat9k(config-pmap-c)# bandwidth remaining percent 30

Cat9k(config-pmap-c)# queue-buffers ratio 40           <-- Queue 3

Cat9k(config-pmap-c)# class class-default

Cat9k(config-pmap-c)# bandwidth remaining percent 20

Cat9k(config-pmap-c)# queue-buffers ratio 40           <-- Queue 4

من الإصدار Cisco IOS XE 17.2.1، يمكن تكوين المحولات المستندة إلى UADP 3.0 (Catalyst 9500 High Performance و Catalyst 9600) لمشاركة المخازن المؤقتة لإدارة قائمة الانتظار النشطة (AQM) بين النقطتين داخل ASIC نفسه.

- يستخدم المنفذ الذي تم تكوينه بمشاركة المخزن المؤقت أي من المخازن المؤقتة ل AQM المتوفرة بغض النظر عن المراكز التي تم تعيين المخازن المؤقتة ل AQM إليها.

- يساعد ذلك على إدارة حالات التزاحم الأعلى لحركة المرور التي كانت لتجعل المخزن المؤقت لنواة AQM واحدة مشبعا.

- يمكنك تمكين هذه الميزة باستخدام الأمر qos share-buffer في وضع التكوين العام.

- يمكنك التحقق من الميزة باستخدام أمر الواجهة show platform hardware fed active qoS queue config. هذا تكوين عمومي يؤثر على النظام بالكامل.

يمكنك تعطيل مشاركة المخزن المؤقت باستخدام الأمر no form of the command، no qos share-buffer.

Cat9k(config)#qos share-buffer

Cat9k(config)#end

تحليل عمليات إسقاط الإخراج باستخدام Wireshark

للتحقق من وجود عمليات نفث مصغرة على شبكة ما، يمكنك إستخدام أداة التقاط الحزم مثل Wireshark:

- يلتقط Wireshark الحزم ويسمح لك بتحليل حركة مرور الشبكة في الوقت الفعلي أو بعد الالتقاط.

- لتحديد ما يحدث من عمليات التشغيل الصغيرة عند حدوث عملية إسقاط مع Wireshark، ابدأ التقاط الحزمة على الواجهة المتأثرة، وفحص الواجهة بشكل متكرر حتى يحدث إسقاط إخراج.

- بمجرد اكتمال عملية الالتقاط، افتح ملف الالتقاط في Wireshark وابحث عن فترات عالية لحركة المرور يتبعها فترات تكون فيها حركة المرور منخفضة أو بلا حركة مرور. هذه هي احتمال حدوث انفجارات صغيرة.

لالتقاط عمليات إسقاط الإخراج على واجهة وتحليلها بشكل فعال، أستخدم التوصيات التالية:

- يجب عدم إستخدام EPC (التقاط الحزم المضمن). تحدد EPC حركة المرور على 1000 حزمة في الثانية (PPS) كحد أقصى، مما قد يؤدي إلى إبطال البيانات.

- فسحة بين دعامتين TX-فقط للواجهة حيث يتم تعريف عمليات إسقاط الإخراج هي الطريقة الموصى بها.

- المصدر وغاية ميناء ينبغي يتلقى ال نفسه سرعة، أو الغاية ميناء ينبغي يتلقى سرعة أعلى من المصدر ميناء عندما يستعمل أنت فسحة بين دعامتين. هذا يضمن أن الفسحة بين دعامتين لا يقدم جلسة إضافي شبكة إزدحام أو ربط إسقاط واجب أن لا يطابق ميناء سرعة.

- هو مهم أن يجمع الفسحة بين دعامتين جلسة بينما الإنتاج انخفاض يكون نشط زيادة. وهذا يضمن التقاط حركة المرور ذات الصلة ويمكنك تحديد السبب الجذري للانفجار البالغ الصغر. إن الفسحة بين دعامتين جمعت جلسة يكون بعد أن وقعت الإسقاط، أنت لن يستطيع أن على قبض الحركة مرور مناسب.

للتأكد مما إذا كانت هذه الفترات من إرتفاع حركة المرور هي في الواقع دفعات صغيرة، أستخدم ميزة رسم Wireshark I/O البياني. ونظرا لأن الرسم البياني للإدخال/الإخراج يعرض تمثيلا رسوميا لحركة مرور الشبكة عبر الوقت، فمن السهل التعرف على التفتيشات الدقيقة. لإنشاء رسم بياني للإدخال/الإخراج، انتقل إلى الإحصائيات > رسم I/O البياني:

ملاحظة: لتوضيح هذا الإجراء، إستخدمنا التقاط حزمة مأخوذ على واجهة بسرعة 1 جيجابت في الثانية. ومع ذلك، تكون الخطوات نفسها لاستكشاف أخطاء الإخراج وإصلاحها على أي واجهة عالية السرعة.

شكل 2. قم بتحديد رسم I/O البياني.

يعرض الرسم البياني التالي خطا يمثل مقدار البيانات التي يتم نقلها عبر الوقت. ابحث عن الارتفاعات في الرسم البياني، والتي تشير إلى فترات من حركة المرور العالية. إذا تبعت هذه الارتفاعات فترات تكون فيها حركة المرور منخفضة أو منعدمة، ربما تعرفتم على انفجار ميكروسوفت.

شكل 3. يعرض رسم I/O البياني لالتقاط الحزمة.

من المهم التأكد من تحديد جميع الحزم بدون تطبيق عامل تصفية العرض. بالإضافة إلى ذلك، حدد خيار الرسم البياني الخطي واضبط المحور الرأسي إلى وحدات بت لتحليل حركة المرور بشكل صحيح.

شكل 4. إظهار كيفية تحديد خيار الرسم البياني الخطي وضبط المحور الرأسي على وحدات بت.

عندما تقوم بتحليل التقاط حزمة كبير، فمن المهم للغاية تحديد الفترة الزمنية المحددة التي أنت مهتم بها. وعلى سبيل المثال، في هذا السيناريو، يمكن ملاحظة وجود كمية كبيرة من حركة المرور في حدود 30 ثانية.

يؤدي النقر فوق أعلى إرتفاع في الرسم البياني للإدخال/الإخراج إلى قيام Wireshark بتحديد الحزمة في الخلفية. في السيناريو الذي قمنا به، تم إختيار الحزم 79280 و 101896 لإنشاء مجموعة فرعية من التقاط الحزمة للعمل داخل الطوابع الزمنية حيث يتم الاشتباه في وجود عمليات الدوران الدقيقة.

شكل 5. يعرض كيفية إنشاء مجموعة فرعية من التقاط الحزمة التي تركز على الطوابع الزمنية المشتبه فيها لوجود الاندفاع المتناهي الصغر.

لتصدير الحزم الأولى والأخيرة المحددة إلى ملف جديد، تأكد من تحديد أيقونات الراديو النطاق والملتقطة.

شكل 6. عرض كيفية تصدير المجموعة الفرعية من التقاط الحزمة وحفظها.

بعد أن تقوم بحفظ الملف، قم بفتحه ثم قم بالانتقال للخلف إلى الرسم البياني للإدخال/الإخراج. تأكد من تعيين الفاصل الزمني على 1 مللي ثانية لرسم الحركات النقطية التي تمت رؤيتها على أساس المللي ثانية.

شكل 7. يعرض رسم I/O البياني للمجموعة الفرعية المصدرة من التقاط الحزمة.

عند عرض الرسم البياني، من المهم تحديد الارتفاعات التي تمثل الفترات التي تم إرسال حركة المرور فيها بمعدل سطر بالمللي ثانية كاملة، والتي تسبب في تعبئة المخزن المؤقت وحيث يمكن أن يكون قد تم إنشاء عمليات إسقاط مخرجات. على سبيل المثال، على واجهة بسرعة 1 جيجابت في الثانية، سوف تتطابق مع 1000000 بت لكل مللي ثانية. انقر على قمة القفزة التي تمثل انفجارا مجهريا محتملا. وهو يساعد على تحديد الحزمة التي تسببت في حالات إسقاط المخرجات. ويمكن بعد ذلك تحليل هذه الحزمة بشكل أكبر لتحديد السبب الجذري للانفجار المصغر واتخاذ الإجراءات التصحيحية.

شكل 8. تظهر كيفية التعرف على حركة مرور البيانات ذات الاندفاع الصغير المحتملة في الرسم البياني للإدخال/الإخراج.

تحذير: من المهم أن تكون على علم بهذا التحديد عندما تستخدم Wireshark أو أي أداة أخرى لالتقاط الحزم على واجهة عالية السرعة. وتعمل الواجهات فائقة السرعة، مثل 40G و 100G، على توليد حجم كبير لحركة مرور الشبكة التي تنطوي على إمكانية التغلب على موارد النظام المستخدمة لالتقاط الحزم. وبالتالي، قد يؤدي ذلك إلى إسقاط الحزم أثناء عملية الالتقاط ويمكن أن يؤثر على دقة البيانات الملتقطة واكتمالها.

نهج بديلة

إذا قمت باستنفاد الموارد المخصصة لقائمة انتظار وما زلت تعاني من حالات السقوط، فستحتاج إلى التفكير في خيارات بديلة لإدارة الازدحام. ويمكن أن يشمل ذلك ما يلي:

- سرعات واجهة الترقية. يمكنك الانتقال من شبكة الجيل الأول إلى شبكة الجيل العاشر أو شبكة الجيل العاشر إلى شبكة الجيل الخامس والعشرين أو شبكة الجيل الرابع والأربعين لزيادة عرض النطاق الترددي للمخرج وتقليل نسبة الاشتراك الزائد.

- قم بتغيير النظام الأساسي إلى نظام ذي مخزن مؤقت أكبر لكل قائمة انتظار/لكل واجهة.

- قم بضبط إعدادات التطبيق لتقليل حجم الاندفاع الذي يسبب إنخفاض المخرجات.

- أستخدم مجدول قوائم انتظار لتحديد أولوية فئة حركة مرور واحدة على أخرى. وتعطي هذه الطريقة الأولوية لحماية حركة المرور الأكثر أهمية على حساب زيادة حالات السقوط لحركة المرور الأقل أهمية.

- قم بتنفيذ خوارزميات إدارة الازدحام مثل التجاهل العشوائي المبكر المرجح (WRED) أو الإسقاط الذيل المرجح (WTD) لإسقاط حركة المرور في وقت مبكر. يمكن أن تؤدي حدود WRED أو WTD إلى السقوط المبكر لحركة المرور المتقطعة، مما يؤدي إلى الخفض التلقائي لنوافذ الإرسال للعملاء النهائيين. وهذا يسمح لحركة المرور الأخرى الأقل حرارة بمواجهة الازدحام الأقل، مما يضمن تخصيص حد أدنى من المخزن المؤقت لفئات حركة المرور المختلفة أثناء فترات الازدحام العالي.

- حركة مرور الشرطة الأقرب إلى مصدر تطبيق معروف ذي نطاق ترددي عريض فائق، مثل النسخ الاحتياطية للبيانات لتقليل تكرار ومدى خطورة النوبات على الشبكة. وهذا يوفر مناطق النطاق الترددي المنخفض بين المصدر والوجهة، الموجودة في أماكن أخرى على الشبكة، مزيدا من الفرص لإدارة كل من حركة المرور المتقطعة وحركة مرور الشبكة العادية بشكل فعال.

- أستخدم Port-channels. بيد أنه من المهم ملاحظة أنه نظرا للتشابك، هناك إمكانية توجيه تدفقات متعددة إلى عضو واحد، مما يمكن أن يؤدي إلى حالات هبوط مستمرة.

من المهم ملاحظة أن بعض هذه الخيارات تتطلب تكوينات أكثر مشاركة، مثل هندسة حركة المرور، ولكنها يمكن أن توفر فوائد كبيرة للحد من إزدحام الشبكة وحالات سقوط المخرجات.

معلومات ذات صلة

- الأنظمة الأساسية المحولة ل Cisco Catalyst 9000: جودة الخدمة والإعداد لقائمة الانتظار

- دليل تكوين جودة الخدمة، Cisco IOS XE 17.x

- مصفوفة التوافق مع الأجهزة الضوئية من Cisco

- دعم الابتكار: كيف يقوم Cisco TAC بتحويل الوثائق وتبسيط الخدمة الذاتية

- الدعم التقني والمستندات - Cisco Systems