اذهب إلى المحتوى

تعريف ببروتوكول OSPF


محمد أحمد العيل

يُصنَّف بروتوكول OSPF (اختصارًا لـ Open Shortest Path First، المسار المفتوح الأقصر أولًّا) ضمن بروتوكولات حالة الربط، وقد طوّرته جمعيّة مجموعة مهندسي شبكة الإنترنت (IETF) ليكون بديلًا عن بروتوكول RIP.

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

  • up/up، وتعني أنّ كلًّا من الطبقة الأولى (الطبقة الفيزيائيّة) والثانيّة (طبقة وصل البيانات) تعملان جيّدًا؛
  • up/down، وتدلّ على وجود مشكلة في بروتوكول وصل البيانات (الطبقة الثانيّة)؛
  • down/down، وتشير إلى وجود مشكلة في الكابل (الطبقة الثانيّة).

استخدم الأمر sh ip int brie لعرض ملخَّص لضبط بطاقات الشبكة. راجع درس بدء تشغيل الموجهات (Routers) عند بناء الشبكات للمزيد.

يراقب الموجِّه، على افتراض استخدام البروتكول OSPF، حالة بطاقات الشبكة وفور تبدّل الحالة عن up/up فإنه يرسل إشعارًا بحالة الربط LSA‏ (Link-State Advertisement)، إذ نعني بالربط هنا بطاقة الشبكة، والحالة كونها تعمل (up) أم لا (down). في حال عودة بطاقة الشبكة للعمل (up/up) يرسل الموجِّه إشعارًا جديدًا بذلك. ينتشر الإشعار عبر ما يُعرَف بالمناطق (Areas)، ويمرّ على الأجهزة الموجودة بين المناطق، المعروفة بالموجِّهات الحدوديّة (Border routers) كما سنرى لاحقا. يجمع بروتوكول OSPF المعلومات التي يتحصّل عليها من أجل بناء مخطَّط يشمل جميع المسارات المتوفّرة في الشبكة، ويحتفظ بها في قاعدة بيانات تُسمَّى قاعدة بيانات حالة الربط (Link-State Database, LSDB)، ثم يستخدم خوارزميّة طوّرها عالم الحاسوب إدسخر ديكسترا (Edsger W. Dijkstra) سنة 1956 للحصول على أقصر مسار إلى كلّ شبكة أو شبكة فرعيّة ضمن المخطَّط. يعمل بروتوكول OSPF على إنشاء ثلاثة جداول:

  • جدول الجوار (Neighbor table)، ويشمل جميع الموجهات المجاورة التي أنشأ معها علاقة جوار، والتي ستُتَبادل معها المعلومات.
  • جدول المُخطَّط (Topology table)، ويحوي خارطة كاملة للشبكة بما في ذلك موجهات OSPF المتاحة والمسارات الأفضل، والمسارات البديلة للمسارات الأفضل في حال عدم توفرها.
  • جدول التوجيه (Routing table)، ويتضمّن المسار الأفضل في الظروف الحاليّة، والذي سيُستخدَم لتوجيه حركة البيانات بين الموجهات المتجاورة.

مفهوم الجوار في OSPF

يعدّ مفهوم تقارب الجوار (Neighbor adjacency) أحد المفاهيم الأساسيّة في OSPF. إنْ أردنا معرفة طرق الوصول إلى الوِجهات باستخدام OSPF فعلينا إنشاء علاقات جوار بالموجِّهات. تُستخدَم لهذا الغرض رزم تُعرَف برزم الترحيب (Hello packet) التي تستخدم عناوين بثّ متعدّد (Multicast) معروفة. عرضنا للبثّ المتعدّد في السابق أثناء شرح بروتوكول Ethernet إذ قلنا إنّ الإرسال في الشبكة المحلية إمّا أن يكون ذا وجهة وحيدة (Unicast)، أو إلى جميع الأجهزة (البث الإذاعي Broadcast)، أو أن يكون وسطًا بين الإثنين (البث المتعدّد Multicast).

تحدّثنا في درس فهم طبقة الإنترنت في TCP/IP عن تقسيم عناوين IP إلى فئات A، و B، و C. توجد فئة عناوين آخرى خاصّة تُسمَّى الفئة D تشمل العناوين من 224.0.0.0 إلى 239.255.255.255. عندما يريد موجِّه إرسال رزمة إلى أجهزة محدَّدة فإنّه يرسل الرزمة إلى عنوان IP الذي يعرِّف مجموعة الأجهزة تلك، مثلًا 224.1.2.3، يتلقّى الموجِّه الرسالة عندما يكون عضوًا في المجموعة، بمعنى أنّ لديه عنوان البثّ المتعدّد نفسه (224.1.2.3 في المثال السابق)، فيُنشِئ نسخًا جديدة من الرزمة ويعيد بثّها إلى شبكته الفرعيّة باستخدام رزمة متعدّدة الوجهات من الطبقة الثانية (إيثرنت).

يستخدم بروتوكول OSPF عنوان البثّ المتعدّد 224.0.0.5 لإرسال رزم الترحيب التي تهدف إلى تكوين علاقات جوار بين الموجِّهات، لذا فإنّه على الموجِّه أن يكون عضوًا في المجموعة التي تستخدم العنوان المذكور. سنتعمّق في علاقات الجوار في OSPF في الدروس القادمة.

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

01-ospf-hellos.jpg

تتكوَّن رزم الترحيب من حقول عدّة، أهمّها:

  • معرّف الموجِّه (ID): وهي قيمة من 32 بتًّا تُعرِّف الموجِّه في الشبكة، تُستنتَج عادةً من عنوان IP الخاص بالبطاق. يجب أن تكون هذه القيمة فريدة ومستقرّة.
  • معرِّف المنطقة (Area) التي ينتمي إليها الموجِّه، والمنطقة – كما سنرى أدناه – هي تقسيم منطقي للنظام المستقلّ (Autonomous System) بحيث تجتمع موجِّهات ضمن منطقة واحدة من أجل تسهيل الإدارة والرفع من أداء البروتكول. يبلغ حجم معرِّف المنطقة 32 بتا.
  • مؤقّت الترحيب (Hello interval): يحدّد المدة الفاصلة بين إرسال رزمتيْ ترحيب. يجب أن يتطابق مؤقِّت الترحيب بين الموجهات المتجاورة في OSPF، وإلّا فإن مخطَّط التجاور لن يعمل. القيمة المبدئيّة للمؤقّت هي 10 ثوان.
  • مؤقّت الخمول (Dead interval): يحدّد المدّة القصوى التي إن تجاوزها الموجِّه دون إرسال رزمة ترحيب فإنّه يعدّ خارج الخدمة. تكون قيمة مؤقّت الخمول – مبدئيًّا – أربعة أضعاف قيمة مؤقّت الترحيب، فإذا كانت قيمة مؤقّت الترحيب 10 ثوان فإنّ قيمة مؤقّت الخمول 40 ثانية. يجب أن تتطابق هذه القيمة أيضًا بين الموجِّهات.
  • معرّفات الموجِّهات المجاورة: تشمل الموجهات التي تلقى منها رزم ترحيب ضمن المجال المسموح به.

يجب الانتباه إلى أنّ علاقة الجوار في OSPF هي علاقة متبادلة، فالموجِّه R1 يرسل رزمة ترحيب إلى الموجِّه R2 ولكنه لا يعتمد هذا الموجِّه ضمن جواره إلّا إذا تلقى منه رزمة ترحيب تفيد بأنّ العلاقة متبادلة، بمعنى أنّ معرِّف R1 يوجد ضمن حقل معرّفات الموجِّهات المجاورة في رزمة الترحيب القادمة من الموجّه R2. الأمر نفسه ينطبق على R2.

مفهوم المنطقة في OSPF

يتوفّر بروتوكول OSPF على خاصيّة مميِّزة وهي مناطق التوجيه (Routing areas)، وتتمثّل في تقسيم الموجِّهات ضمن نظام مستقلّ يعمل ببروتوكول OSPF إلى مناطق بحيث تتكوّن كل منطقة من مجموعة من الموجِّهات المترابطة فيما بينها. تهدف المناطق إلى تسهيل الإدارة والتحسين من استخدام الموارد المتوفّرة في الشبكة. يعدّ ترشيد موارد الشبكة غاية الأهميّة في الشبكات الكبيرة، التي تحوي الكثير من الشبكات الفرعيّة والروابط. قد يؤدّي تبادل قاعدة بيانات حالة الربط (LSDB) في الشبكات الكبيرة إلى ملْء الشبكة بالرزم والحدّ بالتالي من أدائها، وبالتالي لُجئ إلى إنشاء المناطق.

تشترك الموجِّهات التي تنتمي إلى المنطقة نفسها في قيمة معرِّف المنطقة. تحمل المنطقة الأولى المُنشَأة في الشبكة الرقم 0 و تُسمَّى بمنطقة العمود الفقري (Backbone area). يجب أن ترتبط مناطق الشبكة جميعها بمنطقة العمود الفقري عن طريق موجِّهات تُسمَّى موجِّهات حدود المنطقة ABR‏ (اختصارًا إلى Area Boarder Routers). تمرّ البيانات التي تنتقل من منطقة إلى أخرى حتمًا بمنطقة العمود الفقري.

02-ospf-areas.png

تتقاسم الموجهات في المنطقة جدول المُخطَّط وقاعدة بيانات حالة الربط، إلّا أنّ لكلّ منها جدول توجيه مختلفًا، نظرًا لكون OSPF يحسب المسارات الأفضل بالنسبة لكلّ موجِّه اعتمادًا على موقعه في الشبكة. لا يتضمّن جدول المُخطَّط داخل المنطقة سوى المعلومات المتعلِّقة بموجِّهات المنطقة

  • تمنح حدود المناطق الفرصة لتجميع المسارات، رغم أنّ بروتوكولات حالة الربط لا تتيح هذه الإمكانيّة عادةً، نظرًا لأنّه من المفترَض أن يكون لدى الموجِّهات جميعًا مخطّط الشبكة نفسه، في حين أنّ OSPF يستخدم مناطق لها مخطّط خاصّ بها.
  • تجنّب إغراق الشبكة بإشعارات حالة الربط (LSA)، خصوصًا في الشبكات الكبيرة جدًّا التي تتعرّض للتغيير باستمرار، حيث لا تتلقّى الموجّهات سوى الإشعارات من الموجِّهات التي تشترك معها في المنطقة.

ترجمة - بتصرّف - للمقال Introducing OSPF.


تفاعل الأعضاء

أفضل التعليقات

لا توجد أية تعليقات بعد



انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أضف تعليق

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • أضف...