تم كتابة هذه المقالة لنفسي ، بحيث ، إذا لزم الأمر ، تحديث ذاكرتي بسرعة وفهم النظرية. قررت نشره ، ربما سيكون مفيدًا لشخص ما ، أو ربما أكون مخطئًا في شيء ما.
سنحاول في هذه المقالة فهم نظرية بروتوكول OSPF. لن نتعمق في تاريخ وعملية إنشاء البروتوكول ؛ هذه المعلومات وفيرة في كل مقال تقريبًا حول OSPF. سنحاول أن نفهم بمزيد من التفصيل كيف يعمل OSPF وكيف يبني جدول التوجيه الخاص به. من المهم إعطاء تعريف عام للبروتوكول:
OSPF (Open Shortest Path First) هو بروتوكول توجيه ديناميكي يعتمد على تقنية حالة الارتباط ويستخدم خوارزمية Dijkstra للعثور على أقصر مسار.
يطرح السؤال على الفور - ما هي تقنية تتبع القناة؟ أعتقد أن هذا الاسم ليس ناجحًا تمامًا. حدث أن هناك نوعان من بروتوكولات التوجيه الديناميكي: حالة الارتباط ومسافة المتجه. فكر في مبادئ عملهم:
في بروتوكولات Vector-Vector ، يتعرف جهاز التوجيه على معلومات المسار من خلال أجهزة التوجيه المتصلة مباشرة بنفس قطعة الشبكة. أي أن جهاز التوجيه لديه معلومات حول الهيكل فقط داخل حدود أجهزة التوجيه المجاورة له وليس لديه فكرة عن كيفية ترتيب الهيكل وراء أجهزة التوجيه هذه ، مع التركيز فقط على المقاييس. في بروتوكولات حالة الارتباط ، يجب ألا يعرف كل جهاز توجيه بسهولة أفضل الطرق لجميع الشبكات البعيدة ، ولكن يجب أن يكون في الذاكرة أيضًا خريطة شبكة كاملة مع جميع الاتصالات الموجودة بين أجهزة التوجيه الأخرى بما في ذلك. يتم تحقيق ذلك من خلال بناء قاعدة LSDB خاصة ، ولكن المزيد عن ذلك لاحقًا.
لذا ، لنبدأ بكيفية بناء LSDB الذي يتعلم منه جهاز التوجيه معلومات عن جميع المسارات؟ نحن نبني الطبولوجيا الأولية للدراسة. يبدو هذا:

سنقوم بتكوين OSPF. من أين يبدأ OSPF؟ C إنشاء حي بين أجهزة التوجيه - بعد تنشيط OSPF على واجهات جهاز التوجيه ، تبدأ أجهزة التوجيه في إرسال رسائل Hello. يتم إرسال هذه الرسالة إلى عنوان الإرسال المتعدد - 224.0.0.5 كل 10 ثوانٍ (Hello Timer). سنقوم بتمكين OSPF على جهاز التوجيه vIOS1 أولاً.
دعونا نرى كيف تبدو حزمة Hello:

في الرسالة ، من المهم الانتباه إلى مجالات مثل معرف المنطقة ، Source OSPF Router. عند بدء عملية OSPF ، يتم تحديد معرف جهاز التوجيه ، وهو أمر ضروري لتحديد جهاز التوجيه من بين أجهزة توجيه OSPF الأخرى. قواعد اختيار هذه المعلمة هي كما يلي:
1. تمت تهيئتها بواسطة أمر معرف جهاز توجيه خاص ABCD - بتنسيق عنوان IP.
2. يتم تكوين واجهة استرجاع واحدة وواجهات عديدة مع عناوين مختلفة:
- سيكون العنوان المعين لواجهة الاسترجاع هو معرف جهاز التوجيه.
3. تكوين العديد من واجهات الاسترجاع مع العديد من عناوين IP في كل منها:
- سيكون عنوان IP الأعلى المخصص لأي من واجهات الاسترجاع هو معرف جهاز التوجيه.
4. تكوين عدة واجهات بعنوان IP على كل:
- سيكون أكبر عنوان IP لجميع الواجهات النشطة هو معرف جهاز التوجيه.
الآن دعنا ننتقل إلى حقل معرف المنطقة - هذا مفهوم أكثر أهمية وأساسية في OSPF. للعمل مع عدد كبير من أجهزة التوجيه ، يستخدم OSPF مناطق. يجب أن تنتمي كل واجهة من واجهات جهاز التوجيه إلى أي منطقة واحدة. في طوبولوجيا لدينا ، تنتمي واجهات Gi0 / 0 الخاصة بأجهزة توجيه vIOS1 و vIOS2 و vIOS3 و vIOS4 إلى المنطقة 0. تسمى المنطقة 0 العمود الفقري وهي مركز لجميع المناطق الأخرى. يجب أن تكون كل منطقة أخرى متصلة بمنطقة العمود الفقري (لم يتم النظر في الارتباط الظاهري بعد). في مزيد من التحليل ، ستصبح هذه المفاهيم أكثر وضوحا.
لذا ، قمنا بتشغيل OSPF على vIOS1 وبدأ في إرسال حزم Hello كل 10 ثوانٍ. قم بتشغيل OSPF على vIOS2 وانظر كيف يتم تأسيس علاقات الجوار.

لذلك ، نحن نراقب بدقة تسلسل الرسائل. أولاً ، يرسل Hello جهاز التوجيه فقط 1.1.1.1 (192.168.1.1) ، بمجرد تمكين OSPF على 192.168.1.2 ، سيتم إرسال حزمة Hello. سيتلقى كل من vIOS1 و vIOS2 حزم Hello من بعضهما البعض ، ومن أجل إجراء الحي ، من المهم أن تكون المعلمات التالية هي نفسها في تكوين OSPF على كلا الموجهين:
- Hello Interval - تكرار إرسال رسائل Hello
- فاصل الراوتر الميت - الفترة الزمنية التي يعتبر الجار بعدها غير متاح إذا لم يكن هناك Hello.
- معرف المنطقة - لا يمكن إنشاء الحي إلا من خلال واجهات في منطقة واحدة.
- المصادقة - كلمة المرور المستخدمة للمصادقة ونوع المصادقة ، إن وجدت.
- علامة منطقة كعب - علامة اختيارية يتم تعيينها على جميع أجهزة التوجيه التي تنتمي إلى منطقة كعب الروتين
إذا نظرت إلى حزمة Hello الموضحة أعلاه ، فسيتم الإشارة إلى جميع هذه المعلمات في حزمة Hello. بمجرد أن يتلقى أحد أجهزة التوجيه (vIOS1) حزمة Hello جديدة ويتحقق من جميع الشروط ، سيرسل على الفور حزمة Hello حيث سيشير إلى عنوان جهاز التوجيه الجديد (vIOS2) في حقل Active Neighbor ، سيتلقى vIOS2 نفسه ويرى نفسه في حقل الجيران ، سيضيف vIOS1 إلى الجيران وسترسل الحزمة أحادية الإرسال إلى 192.168.1.1 (vIOS1) ، حيث ستشير إليها كجار. إذا جاز التعبير ، فقد أصبحوا جيرانًا والآن تبدأ المتعة - تبادل المعلومات وبناء قاعدة LSDB الأساسية. من أجل إنشاء الحي ، أنصحك بقراءة
المقال التالي.
ستحتوي قاعدة LSDB على معلومات حول المسارات ويجب أن يتطابق LSDB بعد إنشاء الحي على جميع أجهزة التوجيه داخل نفس المنطقة. وقبل كل شيء ، تبدأ أجهزة التوجيه بعد إنشاء حي عملية مزامنة قواعد البيانات الخاصة بهم مع بعضها البعض (vIOS1 مع vIOS2). كما ترى ، يبدأ كل شيء بتبادل الرسائل وصف DB (DBD). لتوضيح الأمر أكثر ، دعنا نتحدث عن أنواع الرسائل التي يستخدمها OSPF:
- مرحبًا - يُستخدم لاكتشاف الجيران والتحقق من المعلمات وبناء علاقات الجوار معهم ومراقبة مدى التوفر.
- وصف قاعدة البيانات (DBD) - للتحقق من حالة مزامنة قاعدة البيانات على أجهزة التوجيه.
- طلب حالة الارتباط (LSR) - يطلب سجلات محددة حول حالة القنوات من جهاز التوجيه إلى جهاز التوجيه للمزامنة.
- تحديث حالة الارتباط (LSU) - يرسل سجلات حالة قناة معينة استجابة لطلب.
- إقرار حالة الارتباط (LSAck) - يقر باستلام أنواع أخرى من الحزم.
من المهم أيضًا تقديم مفهوم مثل LSA:
إعلان حالة الارتباط (LSA) - وحدة بيانات تصف الحالة المحلية لجهاز التوجيه أو الشبكة. تشكل العديد من LSAs التي تصف أجهزة التوجيه والشبكات قاعدة بيانات حالة الارتباط (LSDB). يتكون LSDB من عدة أنواع من LSA. تمت كتابة مفصلة للغاية عن كل LSA في
هذه المقالة. تستخدم رسائل DBD الكثير من العلامات لتحديد حالة المزامنة ، وتحتوي هذه الرسائل على معلومات حول قاعدة البيانات الخاصة بها. أي أن تقارير vIOS1 في هذه الرسائل تشير إلى أنه في قاعدة البيانات الخاصة بي توجد معلومات حول شبكات مثل 192.168.0 / 24 و 1.1.1.0/24 (LSA Type 1) و vIOS2 بدورها تقارير لديها سجلات حول الشبكات: 192.168.2.0/24 ، 2.2.2.0/24 (LSA Type 1). بعد تلقي رسائل DBD ، يرسل كل جهاز توجيه LSAck تأكيدًا للرسالة المستلمة ، ثم يقارن المعلومات الموجودة في قاعدة البيانات المجاورة ببياناته الخاصة. إذا تم العثور على عدم توفر معلومات ، يرسل جهاز التوجيه طلب LS ، حيث يطلب معلومات كاملة حول أي LSA. على سبيل المثال ، طلب vIOS1 طلب LS من vIOS2 ، يستجيب vIOS2 مع LS Update ، الذي يحتوي بالفعل على معلومات تفصيلية حول كل مسار. فيما يلي تحديث LS:

كما ترى ، في هذا المنشور ، يتحدث vIOS2 عن الشبكات الفرعية المعروفة له والمعلومات المرتبطة بها. أيضا ، يتحدث vIOS1 عن LSDB الخاص به. وفي النهاية ، تمتلك أجهزة التوجيه نفس LSDB. بمجرد اكتمال العملية ، يتم تشغيل خوارزمية Dijkstra (أقصر مسار أولاً). يحسب جميع المسارات المعروفة من LSDB ويضع أفضلها في جدول التوجيه. أفضل واحد بمقياس أقل ، ولكن المزيد عن ذلك لاحقًا.
دعونا نفكر في السؤال ، ماذا يحدث إذا قمنا بتنشيط OSPF على vIOS3؟ نظرًا لأنه سيتعين على vIOS3 إنشاء LSDB ومزامنته مع أجهزة التوجيه الأخرى ، فإن السؤال الذي يطرح نفسه مع من تريد المزامنة بالضبط؟ مع vIOS1 أو vIOS2؟ مع كل فرد على حدة؟ ما مدى أمثل هذا؟ لذلك ، في OSPF يوجد شيء مثل جهاز التوجيه DR المعين. نقدم هذا المفهوم:
جهاز توجيه مخصص (جهاز توجيه مخصص ، DR) - يدير عملية توزيع LSA على الشبكة. يؤسس كل موجه شبكة علاقة حي مع DR. يتم إرسال المعلومات حول التغييرات في الشبكة بواسطة DR ، وجهاز التوجيه الذي اكتشف هذا التغيير ، و DR مسؤول عن التأكد من إرسال هذه المعلومات إلى أجهزة التوجيه الأخرى في الشبكة.
بمعنى آخر ، إذا ظهر جهاز توجيه جديد في مقطع الشبكة ، فإنه سيقوم بمزامنة LSDB مع DR. من المهم أيضًا ملاحظة أنه ليس جديدًا فحسب ، بل ستقوم جميع أجهزة التوجيه الأخرى بإبلاغ DR عن ذلك عندما تتغير الشبكة أو يظهر مسار جديد ، وسيأخذ الباقي هذه المعلومات من DR. ولكن بعد ذلك تطرح الأسئلة - ماذا سيحدث إذا فشل DR؟ كيف يتم اختيار DR؟
عندما يفشل ، يجب تحديد DR جديد. يجب تكوين علاقات جوار جديدة ، وإلى أن تتم مزامنة قواعد بيانات جهاز التوجيه مع قاعدة بيانات DR الجديدة ، لن تكون الشبكة متاحة لإعادة توجيه الحزم. لإزالة هذا العيب ، حدد BDR - جهاز توجيه مخصص للنسخ الاحتياطي:
جهاز توجيه مخصص للنسخ الاحتياطي (BDR). يؤسس كل موجه شبكة علاقة جوار ليس فقط مع DR ، ولكن أيضًا BDR. يقيم DR و BDR أيضًا علاقات جوار مع بعضهما البعض. عندما يفشل DR ، يصبح BDR DR ويقوم بجميع وظائفه. نظرًا لأن أجهزة توجيه الشبكة أقامت علاقات جوار مع BDRs ، يتم تقليل وقت عدم توفر الشبكة. وبالتالي ، في شبكتنا لا نحصل على DR فحسب ، بل نحصل أيضًا على BDR. ستتلقى أجهزة التوجيه الأخرى المعلومات ذات الصلة بالشبكة وتبلغ عنها فقط من خلالها. يمكن تحديد DR و BDR ضمن مقطع واحد فقط ، وليس منطقة! أي بالنسبة لأجهزة التوجيه vIOS1 و vIOS2 و vIOS3 و vIOS4 ، سيتم تحديد DR و BDR واحد ، وعلى سبيل المثال ، بين vIOS و vIOS1 سيتم تحديد DR و BDR بالنسبة لقطاع الشبكة الخاصة بهم ، حتى إذا كانوا في نفس المنطقة 0. باستخدام DR و BDR ، تستخدم أجهزة التوجيه عنوان الإرسال المتعدد 224.0.0.6.
السؤال التالي هو: كيف يتم اختيار DR / BDR؟ تنطبق المعايير التالية:
- DR: OSPF واجهة جهاز التوجيه ذات الأولوية القصوى.
- BDR: جهاز التوجيه مع ثاني أعلى أولوية لواجهة OSPF.
- إذا كانت أولويات واجهات OSPF متساوية ، فسيتم استخدام أعلى معرف جهاز توجيه لإجراء التحديد. كما قلنا ، تحدد أجهزة التوجيه معرف جهاز التوجيه الخاص بهم. في البداية ، عندما تم إطلاق OSPF على vIOS1 و vIOS2 ، بالإضافة إلى إنشاء حي ، تم إجراء انتخابات DR / BDR أيضًا. VIOS2 بمعرف - 2.2.2.2 فاز في هذا النزاع ، عندما كان vIOS1 معرف - 1.1.1.1. تم اختيار vIOS1 باعتباره BDR. من المهم ملاحظة أن عملية اختيار DR و BDR لا تحدث مباشرة بعد استلام حزم Hello الأولى من جهاز التوجيه الثاني. للقيام بذلك ، هناك جهاز توقيت خاص يساوي الفاصل الزمني لجهاز التوجيه الميت - 40 ثانية. إذا لم يتم استلام حزمة Hello بأفضل معرّف خلال هذا الوقت ، فسيتم التحديد بناءً على حزم Hello الموجودة.
الآن فقط يمكننا العودة إلى السؤال - ماذا سيحدث إذا قمنا بتنشيط OSPF على vIOS3؟ بعد تنشيط OSPF ، سيبدأ vIOS3 في إرسال حزم Hello والاستماع إليها. سوف تتلقى حزم Hello من vIOS1 و vIOS2 ، والتي ستشير إلى أي أجهزة التوجيه هي DR و BDR وتفهم مع من يجب أن تزامن LSDB. من المهم ملاحظة أنه عند ظهور جهاز توجيه بمعرف أفضل ، لا تتغير DR / BDR حتى يتعطل أحدها. بعد ذلك ، يبدأ vIOS3 لمزامنة LSDB مع أجهزة التوجيه هذه.

بعد تلقي معلومات جديدة من vIOS3 ، يرسل DR رسائل تحديث LS إلى جميع أجهزة التوجيه إلى العنوان 224.0.0.5 ، والتي ترسل إليها أجهزة التوجيه الأخرى ، بعد تلقي حزمة ، إشعارًا بـ LS إلى DR ، ولكن إلى عنوان 224.0.0.6 (عنوان DR / BDR).
وفقًا للمخطط نفسه ، نقوم أيضًا بتوصيل vIOS4. بعد المزامنة ، يكون لكل أجهزة التوجيه نفس LSDB. دعونا نرى كيف تبدو دول حي vIOS3. إظهار أمر الجوار ip ospf:

كما نرى ، DR هو 2.2.2.2 ، BDR 1.1.1.1 ، و 2WAY / DROTHER محدد مع vIOS4. تمت الإشارة إلى حالات الجوار
أعلاه .
وهنا دول الجوار على vIOS1 مع الجوار القائم مع vIOS:

كما ترون ، لديه اثنين من DRs لأنه لديه جار في جزء آخر من الشبكة.
مناطق متعددة
ضع في اعتبارك كيفية عمل OSPF عند استخدام مناطق متعددة. تغيير طوبولوجيا لدينا بإضافة أجهزة توجيه جديدة:

بادئ ذي بدء ، سنقوم بتكوين OSPF على vIOS1 و vIOS بحيث تكون واجهاتهما Gi0 / 1 على vIOS و vIOS1 في المنطقة 1. دعنا نرى التغييرات. لدى vIOS1 الآن واجهات في كل من المنطقة 0 (Gi0 / 0) والمنطقة 1 (Gi0 / 0). يسمى هذا الموجه ABR - Area Border Router (أدناه نعطي تعريفًا أكثر دقة لـ ABR). سيرسل ABR معلومات المسار من منطقة إلى أخرى. يتم ذلك من خلال LSA Type 3:
النوع 3 LSA - ملخص الشبكة LSA - إعلان موجز عن حالة قنوات الشبكة:
- نشر الإعلان بواسطة أجهزة توجيه Edge
- يصف الإعلان الطرق المؤدية إلى الشبكات خارج المنطقة المحلية
- يحتوي على معلومات حول الشبكات وتكلفة المسار لهذه الشبكات ، لكنه لا يرسل معلومات حول هيكل الشبكة
- بشكل افتراضي ، يرسل جهاز التوجيه edge إعلانًا منفصلًا لكل شبكة يعرفها. إذا لزم الأمر ، يمكن تلخيصها على شبكة ABR
- معرف حالة الارتباط - رقم شبكة الوجهة.
في جوهره ، بين المناطق ، يشبه مبدأ تشغيل البروتوكول مبدأ بروتوكول متجه المسافات ، وينقل فقط معلومات المسار باستخدام المقاييس. فيما يلي تحديث LS من vIOS1 في المنطقة 0 ، والذي يحتوي على 3 قطع LSA من النوع 3:

في جوهرها ، لا يختلف هيكل LSA Type 3 كثيرًا عن LSA Type 1 ، ولكنه يؤثر على البروتوكول بطرق مختلفة. عند تلقي LSA محدث أو في حالة فقد أي LSA Type 1 & 2 ، يتم إعادة تشغيل SPF (أقصر خوارزمية المسار) وإعادة حساب LSDB.
عند استلام LSA Type 3 ، لا تحدث هذه العملية - يتم الحصول على مسار بمقياس في LSA Type 3. يقوم LSA هذا بتخزين البيانات التي تم من خلالها استلام ABR لمسار معين (يتم تحديد ABR في حقل راوتر الإعلانات) ومقياس لتحقيق هذا ABR متوفر بالفعل في LSDB. وبالتالي ، يتم تلخيص المقياس من LSA Type 3 بمقياس المسار إلى ABR ونحصل على المسار النهائي دون إعادة تشغيل نظام التعرف على هوية المرسل (SPF). تُسمى هذه العملية
بحساب SPF الجزئي . هذا مهم جدًا لأنه في الشبكات الكبيرة ، يمكن أن تكون أحجام LSDB كبيرة جدًا وغالباً ما يكون تشغيل SPFs غير جيد. أيضًا ، يشير إنشاء LSA Type 3 إلى أن تغيير وإعادة حساب LSDBs هو مجال واحد. تقارير ABR فقط أنه مع بعض الطريق ما تغير.
من المهم أيضًا ملاحظة أن أي مسار من منطقة غير صفرية إلى أي منطقة غير صفرية يمر عبر المنطقة 0. إذا كان هناك ABR ، فلا يمكن توصيله بالمنطقة 0 (نستبعد الخيار باستخدام الارتباط الظاهري). المنطقة 0 هي المركز الذي يربط جميع المناطق الأخرى ويوفر التوجيه بين المناطق. تعريف ABR يبدو كما يلي:
موجه الحدود (موجه حدود المنطقة ، ABR) - يربط منطقة واحدة أو أكثر بمنطقة الجذع ويعمل كبوابة لحركة المرور بين المناطق. يحتوي موجه الحافة دائمًا على واجهة واحدة على الأقل في منطقة الجذع. لكل منطقة متصلة ، يحتفظ جهاز التوجيه بقاعدة بيانات منفصلة لحالة القناة.
تعاملنا مع إنشاء الحي ، وإنشاء LSDB و SPF ، مع المنطقة المعتادة. الآن دعونا نلقي نظرة على تقارب واستجابة OSPF للتغيرات في الهيكل.
دعونا نلقي نظرة على الطوبولوجيا الخاصة بنا ونتخيل أن vIOS3 توقف عن العمل (لم تتغير حالة القنوات). سيساعد في إعادة بناء طوبولوجيا عداد الوقت - 40 ثانية. إذا لم يتلق جهاز التوجيه حزمة ترحيب من أحد الجيران خلال هذا الفاصل الزمني ، ثم ينهار الحي. في حالتنا ، سيرسل DR تحديث LS مع LSA Type 2 ، مما يشير إلى عدم وجود vIOS3 بين أجهزة التوجيه المتصلة ، سيؤدي ذلك إلى بدء نظام SPF وإعادة حساب LSDB دون تلقي LSA من vIOS3. من المهم ملاحظة أنه على جهاز توجيه vIOS4 العادي ، حتى استنفاد مؤقت الفاصل الزمني الميت وفقدان القرب مع vIOS3 لا يؤدي إلى إعادة حساب الهيكل ، فإن رسالة LS Update مع LSA Type 2 هي التي تبدأ هذه العملية.
Type 2 LSA - Network LSA - إعلان حالة
ارتباط الشبكة :
- يوزعها DR في شبكات وصول متعددة
- لم يتم إنشاء Network LSA للشبكات التي لم يتم تحديد DR فيها
- موزعة فقط داخل منطقة واحدة
- معرف حالة الارتباط - عنوان IP لواجهة DR
وبالتالي ، يتم تجاهل البيانات التي توقفت عن العمل بمساعدة هذه الرسالة. هذا هو مؤشر الجيران هو الدافع لتجاهل الطرق غير ذات الصلة.
قم بتشغيل vIOS3 مرة أخرى وإنشاء الحي مرة أخرى. ستكون التجربة التالية بمثابة رد فعل على تعطيل واجهة Gi0 / 1 على vIOS3. بمجرد اكتشاف vIOS3 لانخفاض الارتباطات ، يرسل على الفور LS Update إلى DR إلى العنوان 224.0.0.6 ، حيث يتم الإبلاغ عن انخفاض بعض المسارات عن طريق تعيين إشارة في LSA - LS Age تساوي 3600 ثانية. بالنسبة إلى LSDB ، هذا هو الحد الأقصى للعمر ولا يتم أخذ جميع LSAs ذات الحد الأقصى للعمر في الاعتبار في نظام التعرف على هوية المرسل (SPF) ، لذا فلن تكون في جدول التوجيه. السؤال هو: عندما يصل Age LSA بشكل طبيعي إلى Max Age ، ماذا يحدث؟ للقيام بذلك ، يحتوي OSPF على LSRefreshTime - يساوي نصف العمر الأقصى ، كل 1800 ثانية يتم إرسال LS Update من جهاز التوجيه لتحديث بيانات المؤقت:

علاوة على ذلك ، بعد معالجة DR لتحديث LS هذا ، يرسل LS LS إلى جميع أجهزة التوجيه الأخرى إلى العنوان 224.0.0.5. بمجرد أن تحصل أجهزة التوجيه على معلومات جديدة - يرسلون LSAck. وهذا يضمن التقارب الجيد في OSPF.
اختيار أفضل طريق
يختار جهاز التوجيه أفضل مسار استنادًا إلى أقل قيمة قياس. ومع ذلك ، يأخذ OSPF في الاعتبار أيضًا العديد من العوامل الأخرى عند اختيار الطريق. في هذه الحالة ، يعد مصدر المسار ونوعه مهمين. اختيار مسار الأولوية كما يلي:
- الطرق الداخلية للمنطقة (داخل المنطقة)
- طرق بين المناطق (بين المناطق)
- المسارات الخارجية من النوع 1 (E1)
- المسارات الخارجية من النوع 2 (E2)
على الرغم من أن تكلفة مسار E2 لا تتغير عند نقلها حسب المناطق (لا تتم إضافة تكلفة المسار إلى ASBR) ، عندما تتزامن تكلفة مسارات E2 ، تتم مقارنة تكلفة المسار إلى ASBR التي تعلن عن المسار. يتم أخذ المقياس في الاعتبار عندما يتعين عليك الاختيار من بين المسارات من نفس النوع. كمقياس ، يتم استخدام مفهوم مثل التكلفة. يتم حسابه بالصيغة:التكلفة = عرض النطاق المرجعي / عرض النطاق الترددي للوصلة. عرض النطاق المرجعي - أساس عرض النطاق الترددي. بشكل افتراضي ، على Cisco يساوي 100 ميجابت.منع حلقة ABR.كما قلنا أعلاه ، بين المناطق ، فإن مبدأ تشغيل OSPF مشابه لبروتوكول متجه المسافات. باستخدام آليات منع الحلقة ، يمكننا الحصول على اختيار المسار غير الأمثل. على سبيل المثال ، بين المناطق توجد قاعدة مثل Split Horizon من بروتوكولات متجه المسافات. ضع في اعتبارك هذا كمثال ، إذا قمنا بتغيير طوبولوجيا لدينا على حدود المنطقة 0 و 4 على النحو التالي:
ثم نحصل على أن vIOS18 سيختار مسارًا غير مثالي مع المقياس 100 من خلال واجهة Gi0 / 0. يحدث هذا بسبب حقيقة أن vIOS18 لن يأخذ في الاعتبار LSA Type 3 المستلم ليس من المنطقة 0. أيضًا ، تمنع القاعدة المذكورة أعلاه نقل LSA Type 3 مرة أخرى إلى المنطقة 0.