طرق التحكم بالباندويث على سويتشات وروترات سيسكو
هل تريد تحديد سرعة الإنترنت للمستخدمين على شبكتك؟ أو ربما أنت مزود خدمة وتحتاج توزيع الباندويث بشكل عادل؟ سيسكو توفر لك هذه الإمكانية مباشرة على السويتشات والروترات دون الحاجة لأجهزة إضافية.
بدلاً من شراء أجهزة Firewall أو UTM باهظة الثمن، يمكنك استخدام ميزات QoS المدمجة في أجهزة Cisco للتحكم الكامل بالباندويث. في هذا الدليل الشامل، سأشرح لك جميع الطرق المتاحة: من الأوامر البسيطة للسويتشات إلى الإعدادات المتقدمة باستخدام Policy Maps.
الفرق بين Policing و Shaping
قبل البدء بالإعدادات، يجب أن تفهم الفرق الجوهري بين طريقتين للتحكم بالباندويث:
| المعيار | Policing | Shaping |
|---|---|---|
| آلية العمل | يُسقط الحزم الزائدة فوراً | يُخزن الحزم الزائدة في طابور ويُرسلها لاحقاً |
| الاتجاه | Input و Output | Output فقط |
| التأثير على Traffic | قد يُسبب فقدان حزم | يُنعّم التدفق ويُوزعه على الوقت |
| استخدام الذاكرة | منخفض | أعلى (بسبب التخزين المؤقت) |
| الاستخدام المثالي | تطبيق حدود صارمة | Traffic حساس للفقدان |
الطريقة الأولى: تحديد الباندويث على سويتشات Catalyst
على سويتشات Catalyst مثل 2960 و 3560 و 3750، يمكنك استخدام أمر srr-queue bandwidth limit للتحكم السريع بالباندويث على أي منفذ.
الخطوات الأساسية
Switch(config)# mls qos Switch(config)# interface FastEthernet 0/1 Switch(config-if)# srr-queue bandwidth limit ? limit Configure bandwidth-limit for this interface shape Configure shaping on transmit queues share Configure shared bandwidth
أولاً، يجب تفعيل QoS على السويتش بأمر mls qos، ثم الدخول على المنفذ المطلوب.
تطبيق الحد على المنفذ
Switch(config)# interface FastEthernet 0/1 Switch(config-if)# bandwidth 1000 Switch(config-if)# srr-queue bandwidth limit 10
ملاحظة مهمة: الرقم 10 يُمثل النسبة المئوية من سرعة المنفذ وليس السرعة المطلقة:
- منفذ 100 Mbps مع limit 10 = 10 Mbps
- منفذ 1000 Mbps مع limit 10 = 100 Mbps
قيود هذه الطريقة
الحد الأدنى المسموح به هو 10%. إذا أردت سرعات أقل مثل 4 Mbps على منفذ 100 Mbps، يجب أولاً تقليل سرعة المنفذ:
Switch(config)# interface FastEthernet 0/1 Switch(config-if)# speed 10 Switch(config-if)# srr-queue bandwidth limit 40
هذا يُعطيك 40% من 10 Mbps = 4 Mbps تقريباً.
الطريقة الثانية: Policy Map للتحكم الدقيق
هذه الطريقة الحديثة والأكثر مرونة، تعمل على السويتشات والروترات وتتيح تحكماً دقيقاً بالباندويث.
إنشاء Policy Map للـ Policing
Switch(config)# policy-map LIMIT-1MB Switch(config-pmap)# class class-default Switch(config-pmap-c)# police cir 1048576 bc 1000000 Switch(config-pmap-c-police)# conform-action transmit Switch(config-pmap-c-police)# exceed-action drop
شرح القيم:
- cir 1048576: Committed Information Rate بالـ bits per second (1 Mbps = 1,048,576 bps)
- bc 1000000: Committed Burst Size بالـ bytes
- conform-action transmit: الحزم ضمن الحد تُمرر
- exceed-action drop: الحزم الزائدة تُسقط
إنشاء Policy Map للـ Shaping
Switch(config)# policy-map SHAPE-1MB Switch(config-pmap)# class class-default Switch(config-pmap-c)# shape average 1048576
تطبيق Policy Map على المنفذ
Switch(config)# interface FastEthernet 0/8 Switch(config-if)# service-policy input LIMIT-1MB Switch(config-if)# service-policy output SHAPE-1MB
الطريقة الثالثة: Rate-Limit على الروترات (الطريقة القديمة)
هذه الطريقة تُعرف بـ Committed Access Rate (CAR) وهي قديمة لكنها لا تزال مدعومة على بعض الأجهزة.
Router(config)# interface FastEthernet 0/0 Router(config-if)# rate-limit output 10000000 1875000 3750000 conform-action transmit exceed-action drop
شرح القيم:
- 10000000: السرعة المطلوبة بالـ bps (10 Mbps)
- 1875000: Normal Burst Size بالـ bytes
- 3750000: Excess Burst Size بالـ bytes
حساب قيم Burst الموصى بها من Cisco
للحصول على أفضل النتائج، استخدم هذه المعادلات:
- Normal Burst = السرعة × (1 byte / 8 bits) × 1.5 ثانية
- Excess Burst = 2 × Normal Burst
مثال لـ 10 Mbps:
- Normal Burst = 10,000,000 × 0.125 × 1.5 = 1,875,000 bytes
- Excess Burst = 2 × 1,875,000 = 3,750,000 bytes
جدول تحويل السرعات
| السرعة المطلوبة | القيمة بالـ bps | Normal Burst (bytes) |
|---|---|---|
| 256 Kbps | 256,000 | 48,000 |
| 512 Kbps | 512,000 | 96,000 |
| 1 Mbps | 1,048,576 | 196,608 |
| 2 Mbps | 2,097,152 | 393,216 |
| 5 Mbps | 5,242,880 | 983,040 |
| 10 Mbps | 10,485,760 | 1,966,080 |
مثال عملي: تحديد 2 Mbps لمنفذ معين
على السويتش باستخدام Policy Map
! تفعيل QoS Switch(config)# mls qos ! إنشاء Policy Map Switch(config)# policy-map LIMIT-2MB Switch(config-pmap)# class class-default Switch(config-pmap-c)# police cir 2097152 bc 393216 Switch(config-pmap-c-police)# conform-action transmit Switch(config-pmap-c-police)# exceed-action drop ! تطبيق على المنفذ Switch(config)# interface GigabitEthernet 0/1 Switch(config-if)# service-policy input LIMIT-2MB Switch(config-if)# service-policy output LIMIT-2MB
أوامر التحقق والمراقبة
عرض Policy Maps
Switch# show policy-map Switch# show policy-map interface FastEthernet 0/1
عرض استخدام الباندويث
Switch# show controllers utilization Switch# show interface GigabitEthernet 0/1
في مخرجات show interface، ابحث عن قيمة load المعبر عنها كـ x/255. القيمة 255/255 تعني استخدام كامل، و 1/255 تعني استخدام ضئيل.
عرض Rate Limit على الروتر
Router# show interface FastEthernet 0/0 rate-limit
تنبيه: الفرق بين أمر Bandwidth و Rate-Limit
أمر bandwidth على الروتر لا يُحدد السرعة الفعلية. هو فقط يُخبر بروتوكولات التوجيه مثل OSPF و EIGRP بقيمة الباندويث لحساب الـ Metric. لتحديد السرعة الفعلية، استخدم rate-limit أو policy-map.
أفضل الممارسات
- استخدم Policy Map بدلاً من rate-limit القديم - أكثر مرونة وتحكماً
- استخدم Shaping للتطبيقات الحساسة مثل VoIP
- استخدم Policing للتطبيقات التي تتحمل فقدان الحزم
- راقب الأداء باستمرار باستخدام أوامر show
- وثّق إعداداتك لتسهيل الصيانة لاحقاً
الأسئلة الشائعة
هل يمكن تحديد باندويث أقل من 10% على سويتشات Catalyst؟
أمر srr-queue bandwidth limit يسمح بحد أدنى 10% فقط. للحصول على نسب أقل، يمكنك تقليل سرعة المنفذ أولاً باستخدام أمر speed، أو استخدام Policy Map مع police command الذي يتيح تحديد السرعة بالـ bps بدقة.
ما الفرق بين Input و Output في تحديد الباندويث؟
Input يُحدد سرعة البيانات الداخلة للمنفذ (من الجهاز للسويتش)، و Output يُحدد سرعة البيانات الخارجة (من السويتش للجهاز). لتحديد سرعة التحميل والرفع معاً، طبّق Policy على كلا الاتجاهين.
هل يمكن تحديد باندويث على VLAN بدلاً من المنفذ؟
نعم، على بعض السويتشات يمكنك استخدام أمر rate-limit vlan لتطبيق الحد على VLAN كاملة. لكن هذه الميزة ليست متوفرة على جميع الموديلات. راجع وثائق جهازك للتأكد من الدعم.
لماذا السرعة الفعلية أقل من المُعدّة؟
إذا كانت قيم Burst صغيرة جداً، فإن السرعة الفعلية ستكون أقل من المُعدّة. Cisco توصي باستخدام معادلة: Normal Burst = السرعة × 0.125 × 1.5 للحصول على أفضل النتائج.
الخلاصة
التحكم بالباندويث على أجهزة Cisco أصبح سهلاً مع فهم الأدوات المتاحة. سواء استخدمت الطريقة البسيطة srr-queue bandwidth limit على السويتشات أو الطريقة المتقدمة Policy Map، يمكنك توزيع الباندويث بالشكل الذي يناسب شبكتك.
ثلاث نقاط أساسية:
- استخدم Policy Map مع police command للتحكم الدقيق بالسرعة بالـ bps
- Shaping أفضل للتطبيقات الحساسة لأنه لا يُسقط الحزم مباشرة
- لا تنسَ تفعيل mls qos على السويتش قبل تطبيق أي إعدادات QoS
آخر تحديث: مارس 2026