معالج الشبكة

إنتل FWIXP422BB

معالج الشبكة عبارة عن دائرة متكاملة تحتوي على مجموعة من الميزات المصممة خصيصًا لمجال تطبيقات الشبكات .

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

تاريخ التطور

في شبكات الاتصالات الحديثة ، تُنقل المعلومات (الصوت والفيديو والبيانات) على شكل حزم بيانات (يُطلق عليها تحويل الحزم )، وهو ما يختلف عن شبكات الاتصالات القديمة التي كانت تنقل المعلومات كإشارات تناظرية ، كما هو الحال في شبكة الهاتف العامة (PSTN) أو شبكات التلفزيون / الراديو التناظرية . وقد أدى معالجة هذه الحزم إلى ابتكار دوائر متكاملة (IC) مُحسّنة للتعامل مع هذا النوع من بيانات الحزم. تتميز معالجات الشبكة بخصائص أو بنى معمارية محددة تُوفر لتحسين كفاءة معالجة الحزم داخل هذه الشبكات.

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

تُستخدم معالجات الشبكة في تصنيع أنواع عديدة من معدات الشبكة مثل:

جداول مطابقة قابلة لإعادة التكوين

طُرحت جداول المطابقة القابلة لإعادة التكوين [ 1 ] [ 2 ] في عام 2013 لتمكين المحولات من العمل بسرعات عالية مع الحفاظ على المرونة فيما يتعلق ببروتوكولات الشبكة المُفعّلة على الجهاز وكيفية معالجتها. يُستخدم معالج P4 [ 3 ] لبرمجة الرقاقات. تأسست شركة Barefoot Networks على هذه المعالجات، واستحوذت عليها شركة Intel لاحقًا في عام 2019.

وصف خط أنابيب RMT

تعتمد بنية معالجة البيانات عن بُعد (RMT) على ثلاث مراحل رئيسية: المُحلِّل القابل للبرمجة، [ 2 ] وجداول المطابقة والإجراء، والمُحلِّل القابل للبرمجة. يقرأ المُحلِّل الحزمة على شكل أجزاء، ثم يُعالج هذه الأجزاء لتحديد البروتوكولات المُستخدمة فيها ( مثل Ethernet و VLAN و IPv4 )، ويستخرج حقولًا مُحددة منها إلى متجه رأس الحزمة (PHV). قد تُحجز بعض الحقول في متجه رأس الحزمة لاستخدامات خاصة، مثل عرض الرؤوس الموجودة أو إجمالي طول الحزمة. عادةً ما تكون البروتوكولات قابلة للبرمجة، وكذلك الحقول المراد استخراجها. أما جداول المطابقة والإجراء، فهي عبارة عن سلسلة من الوحدات التي تقرأ متجه رأس الحزمة المُدخل وتُطابق حقولًا مُحددة فيه باستخدام مُصفوفة مُتقاطعة وذاكرة CAM . والنتيجة هي تعليمة واسعة النطاق تُنفذ على حقل واحد أو أكثر من حقول متجه رأس الحزمة، بالإضافة إلى البيانات اللازمة لدعم هذه التعليمة. ثم يُرسل متجه رأس الحزمة الناتج إلى مرحلة المطابقة والإجراء التالية أو إلى المُحلِّل. يستقبل محلل البيانات (deparser) حزمة البيانات الأصلية (PHV) بالإضافة إلى حزمة البيانات الأصلية وبياناتها الوصفية (لإكمال الأجزاء المفقودة التي لم تُستخرج في حزمة البيانات الأصلية)، ثم يُخرج حزمة البيانات المُعدّلة على شكل أجزاء. عادةً ما يكون محلل البيانات، مثل محلل البيانات (parser)، قابلاً للبرمجة، وقد يتشاركان بعض ملفات التكوين.

يحاول FlexNIC [ 4 ] تطبيق هذا النموذج على وحدات التحكم في واجهة الشبكة مما يسمح للخوادم بإرسال واستقبال الحزم بسرعات عالية مع الحفاظ على مرونة البروتوكول ودون زيادة الحمل الزائد لوحدة المعالجة المركزية.

الوظائف العامة

في دورها العام كمعالج حزم البيانات، تتواجد عادةً في معالج الشبكة عدد من الميزات أو الوظائف المحسّنة، والتي تشمل ما يلي:

  • مطابقة الأنماط - القدرة على إيجاد أنماط محددة من البتات أو البايتات داخل الحزم في تدفق الحزم.
  • البحث باستخدام المفتاح - القدرة على إجراء بحث سريع في قاعدة البيانات باستخدام مفتاح (عادةً ما يكون عنوانًا في حزمة) للعثور على نتيجة، وعادةً ما تكون معلومات التوجيه .
  • حساب
  • معالجة حقول البيانات - القدرة على تغيير حقول بيانات معينة موجودة في الحزمة أثناء معالجتها.
  • إدارة قوائم الانتظار - حيث يتم استلام الحزم ومعالجتها وجدولة إرسالها، يتم تخزينها في قوائم الانتظار.
  • معالجة التحكم - يتم التحكم في العمليات الدقيقة لمعالجة الحزمة على مستوى كلي يتضمن الاتصال والتنسيق مع العقد الأخرى في النظام.
  • تخصيص سريع وإعادة تدوير مخازن الحزم.

النماذج المعمارية

من أجل التعامل مع معدلات نقل البيانات العالية، تُستخدم العديد من النماذج المعمارية بشكل شائع:

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

التطبيقات

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

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

انظر أيضاً

مراجع

  1. بوشارت، بات؛ جيب، جلين؛ كيم، هون-سوك؛ فارغيز، جورج؛ ماكيون، نيك؛ إزارد، مارتن؛ موجيكا، فرناندو؛ هورويتز، مارك (2013-08-01). تحويل التوجيه: معالجة سريعة وقابلة للبرمجة لمطابقة الإجراءات في الأجهزة لشبكات SDN . مؤتمر ACM SIGCOMM 2013. مؤرشف من الأصل في 2022-03-26 . تم الاسترجاع في 2022-03-26 .
  2. 1 2 جيب، جلين؛ فارغيز، جورج؛ هورويتز، مارك؛ ماكيون، نيك (أكتوبر 2013). "مبادئ تصميم محللات الحزم". بنى أنظمة الشبكات والاتصالات . ص 13-24 . doi : 10.1109/ANCS.2013.6665172 . ISBN  978-1-4799-1641-2. S2CID 12282067 . 
  3. "P4: برمجة معالجات الحزم المستقلة عن البروتوكول | acm sigcomm" . www.sigcomm.org . تم الاطلاع عليه بتاريخ 26-03-2022 .
  4. كوفمان، أنطوان؛ بيتر، سيمون؛ شارما، نافين كر.؛ أندرسون، توماس؛ كريشنامورثي، أرفيند (25 مارس 2016). "معالجة الحزم عالية الأداء باستخدام FlexNIC". وقائع المؤتمر الدولي الحادي والعشرين حول الدعم المعماري للغات البرمجة وأنظمة التشغيل . ASPLOS '16. نيويورك، نيويورك، الولايات المتحدة الأمريكية: رابطة آلات الحوسبة. الصفحات 67-81 . doi : 10.1145/2872362.2872367 . ISBN  978-1-4503-4091-5. S2CID 9625891 . 
  5. جيلادي، ران (2008). معالجات الشبكة: البنية، والبرمجة، والتنفيذ . أنظمة على السيليكون. مورغان كوفمان. ISBN 978-0-12-370891-5.
  6. بونو، دانييلي؛ مينكالي، غابرييل (21-25 يوليو 2014). آليات وقت التشغيل للتوازي الدقيق على معالجات الشبكة: تجربة TILEPro64 (ملف PDF) . المؤتمر الدولي لعام 2014 حول محاكاة الحوسبة عالية الأداء (HPCS 2014). بولونيا، إيطاليا. الصفحات 55-64 . doi : 10.1109/HPCSim.2014.6903669 . ISBN  978-1-4799-5313-4تمت أرشفة الملف (PDF) من النسخة الأصلية بتاريخ 27 مارس 2019.رابط بديل
  7. كومر، دوغلاس إي. (2005). تصميم أنظمة الشبكات باستخدام معالجات الشبكة: إصدار إنتل 2XXX . أديسون-ويسلي. ISBN 978-0-13-187286-8.