بروتوكول STP
Spanning Tree Protocol
ما هو STP :
هو عبارة عن بروتوكول وظيفته منع دوران البيانات في السويتشات، فهو يفهم قاعدة تقول إذا تم الربط ما بين سوتشين بلينك واحد لان يحدث دوران للبيانات ولكن إذا تم ربط اكثر من لينك مثل ربط ثلاث أو اربع لينك في هذه الحالة سيحدث عملية دوران البيانات في السويتشات، و هنا تأتي وظيفة بروتوكول الـ STP ليقوم بتنظيم الينك و منع دوران البيانات في السويتشات و هذا البروتوكول يعمل بشكل تلقائي من دون أن نقوم بتفعيله على السويتش و يبدا في عملية تنظيم الينك الموجود ، سيقوم باختيار لينك واحد لعملية إرسال البيانات و باقي اللينكات سيتم ايقافها بشكل مؤقت و في حال حدث عطل ما في الينك الذي يرسل البيانات في هذه الحالة سيقوم بروتوكول الـ STP بشكل تلقائي بتشغيل لينك ثاني ليقوم بأخذ دور الينك الأولى و يبدا بعملية الإرسال و الاستقبال .
أهم خصائص STP
- يعمل هذا البروتوكول على مستوى الطبقة الثانية Data Link Layer.
- بروتوكول STP يعمل على جميع أجهزة السويتش مثل سويتشات سيسكو وjuniper وهواوي.
- بروتوكول الـ STP ينتمي لمنظمة IEEE وتصنيفها 802.1D.
لنتعرف على عملية اختيار الينك الرئيسي الذي سيتم الاعتماد عليه في نقل المعلومات و الداتا، و باقي الينكات سيتم توقيفها بشكل مؤقت و هذه العملية تتم على عدة خطوات سأقوم بذكر هذه الخطوات و شرحها , ولكن يجب أن نعلم أيضاً إنه يتم انتخاب سويتش رئيسي واحد من مجموعة سويتشات و باقي السويتشات ستكون بشكل احتياطي أو مساعدة للسويتش الرئيسي , ولتتم عملية الانتخاب ايضاً يقوم بعدة خطوات .
مصطلحات السويتشات في بروتوكول الـ STP:
- السويتش الرئيسي Root Bridge .
- السويتش الاحتياطي Non Bridge .
عملية انتخاب السويتشات و تحديد السويتش الرئيسي Root Bridge و السويتش الاحتياطي Non Bridge , ولتتم هذه العملية ستمر السويتشات في عدة مراحل سأقوم بذكر هذه المراحل .
مرحلة عملية الانتخاب تتكون من إرسال رسالة ترحيب BPDU = Bridge Protocol Data Units هذه عبارة عن رسالة يتم تبادلها ما بين السويتشات ليتم التعرف على السويتشات و حالتهم، و هل هم موجودين في داخل الشبكة وقيد التشغيل أو لا، بمعنى إنها هذه الرسالة التي تقوم بمعرفة المعلومات الخاصة في جميع السويتشات الموجودة على الشبكة و تتبادلها مع بعضها البعض لتتم عملية الانتخاب.
محتويات رسالة الـ BPDU:
تنقسم رسالة الـ BPDU الى عدة اقسام مهمة جدا جدا ويتم الاعتماد عليهم في عملية انتخاب السويتش الرئيسي Root Bridge سأقوم بذكر الاقسام.
Bridge ID:
هو عبارة عن قيمة رقمية من خلاله يتم اختيار من هو السويتش الذي سيكون Root Bridge ومن هو السويتش الذي سيكون Non Bridge وينقسم هذا المحتوى الـ Bridge ID الى قسمين.
- Bridge Priority
- MAC Address
- Bridge Priority: هي عبارة عن قيمة رقمية للقيمة الأولية الخاصة في جهاز السويتش و تبدأ من 0 إلى 65535, القيمة الطبيعية تكون 32768 = Default Value.
- Mac Address: هو عبارة عن العنوان الفيزيائي الخاص في جهاز السويتش ولا يتكرر على جهاز آخر .
كيف تتم عملية انتخاب السويتش الرئيسي Root Bridge:
تتم عملية الانتخاب من خلال عدة خطوات تمر فيها رسالة الترحيب الـ BPDU و هي كما شرحنا سابقاً تحتوي على Bridge Priority و MAC Address و سيتم الاعتماد في عملية الانتخاب على هذه المحتويات, في البداية سيتم استكشاف قيمة الـ Priority في جميع السويتشات و في حال كان قيمة الـ Priority قليل في أحد السويتشات سيتم انتخابه ليكون السويتش الرئيسي Root Bridge , ولكن إذا كانت قيمة الـ Priority متساوية في جميع السويتشات سيتم تجاوز هذه القيمة و الانتقال الى الـ Mac Address ستقوم رسالة إلـ BPDU باستكشاف العنوان الفيزيائي في جميع السويتشات وكما قلنا سابقاً لكل سويتش عنوان ماك ادرس مختلف لا يتكرر على السويتشات الآخر في هذه الحالة سيتم الاعتماد على اقل عنوان ماك ادرس يمتلكه السويتش ليكون هو السويتش الرئيسي Root Bridge و سنأخذ بعض الامثلة على هذه الشرح لنستطيع فهم العملية بشكل ممتاز .
حالة المنافذ في السويتش مع بروتوكول الـ STP:
بعد عملية انتخاب السويتش الرئيسي Root Bridge و استقرار السويتشات تأتي وظيفة المنافذ التي ستعمل على حسب حالة السويتشات التي تم انتخابها , و في هذه الحالة يوجد ثلاث حالات لمنافذ السويتش التي سيتم اختيارها بشكل مناسب على حسب طبيعية السويتشات التي تعمل في الشبكة سأقوم بذكر الحالة و شرح كل حالة متى تعمل و لماذا تأخذ هذه الحالة .
تكلفة المسارات STP Port Cost Values
تحديد تكلفة سرعة المسارات لعملية اختيار المسار، وتتم عن طريق الـ Cost ويعتمد على سرعة المنافذ التي على السويتش وبعد تحديد المنفذ وسرعة المنفذ عن طريق الـ Cost سيتم تحديد نوع الـ STP Port ليتم تحديد حالته، و هذا الجدول يوضح عملية التكلفة لكل السرعات الموجودة.
اشكال حالة المنافذ STP Port:
- DP = Designated Port
- RP = Root Port
- BP = Block Port
DP = Designated Port:
هذه حالة المنافذ التي تكون على السويتش الرئيسي Root Bridge وهي تعمل بشكل طبيعي وتقوم بعملية إرسال واستقبال البيانات.
RP = Root Port:
هذا المنفذ ايضاً يعمل على استقبال وإرسال البيانات ولكن هذه الحالة من المنافذ تكون على سويتش الـ Non Bridge وتكون متصلة مع السويتش الرئيسي Root Bridge ويكون صاحب التكلفة الاقل في المسارات.
ملاحظة: السويتش الرئيسي تكون حالة المنافذ عليه DP ولا تكون RP بمعنى أن منافذ الـ RP فقط تكون على السويتشات Non Bridge فقط.
BP = Block Port:
هذا المنفذ المغلق الذي يأخذ اعلى تكلفة Cost .
- بهذه الطريقة نكون قد فهمنا كيفية تتم عملية الانتخاب و حالة المنافذ و تكلفة سرعة المسار، الأن سأقوم بعرض بعض الامثلة لنفهم و نحلل كيفية عمل بروتوكول الـ STP سأقوم بعرض أكثر من نموذج لنستطيع فهم بروتوكول الـ STP بشكل ممتاز لأنه بروتوكول مهم جداً جداً ويجب أن نكون على معرفة و اتقان و فهم هذا البروتوكول .
- النموذج الأول مكون من سويتشين SW1, SW2 و نلاحظ إنه تم ربطهم من خلال 2 لينك، ونلاحظ ايضاً إنه تم ايقاف أحد الينكات في هذه الحالة يجب أن نعرف أن بروتوكول الـ STP قام بعملية الانتخاب و قام بتحديد لينك واحد لعملية إرسال و استقبال البيانات و تم تحديد سويتش رئيسي Root Bridge , بمعنى في هذه الحالة لا يوجد ما يمسى دوران البيانات في الشبكة سنقوم بنظر على النموذج و بعده سأقوم بشرح النموذج بشكل كامل أنظر للنموذج التالي :
لاحظ في النموذج إنه تم اختيار سويتش رئيسي Root Bridge و هذا السويتش هو SW1 , الأن لنعرف كيف تمت عملية الانتخاب أنظر للنموذج يظهر فيه السويتشان قيمة الـ 32768 Priority متساوية في الـ SW1 SW2 في هذه الحالة سيتم تجاوز هذه المرحلة و الانتقال الى المرحلة التالية و هي استكشاف عنوان الماك ادرس للسويتشات أنظر للماك ادرس يوجد اختلاف
SW1 عنوان الماك ادرس لديه : 0000.0000.0000.1 : MAC Address
و عنوان الماك ادرس لـ 2 MAC Address 0000.0000.0000.2 :SW
في هذه الحالة سيتم انتخاب الـ 1 SW لي لأنه يحتوي على الماك أدرس الاقل كما شرحنا سابقاً و قولنا السويتش الذي يحتوي على ماك ادرس اقل هو الذي سيكون السويتش الرئيسي Root Bridge و في هذا النموذج سيكون السويتش الرئيسي هو الـ SW1 , سنقوم بدخول على السويتشات و ننظر على المعلومات الموجودة في كل سويتش و نتأكد ايضاً من هو السويتش الرئيسي Root Bridge و نتأكد ايضا من حالة المنافذ .
الأن سنقوم بدخول على السويتش الأول 1 SW و نقوم باستعراض المعلومات الخاصة في بروتوكول الـ STP :
Switch> enable
Switch # show spanning-tree
SW 1
أنظر للصورة هذه من داخل السويتش الرئيسي Root Bridge هذه المنافذ لاحظ إنه تأخذ حالة الـ DP = Designated Port هذا يعني إنه هذا السويتش الرئيسي والمنافذ في حالة إرسال واستقبال، اما الآن سنقوم بدخول على السويتش الثاني SW 2 ونقوم بعملية استعراض للمعلومات لنرى ما هي حالة المنافذ.
الأن سنقوم بدخول على السويتش 2 SW وكتابة الأوامر السابقة:
SW 2
أنظر للصورة هذه من داخل السوتيش الـ Non Bridge. أنظر للمنافذ المنفذ الأول F 0/1 يأخذ حالة الـ RP = Root Port و هذا يعني إنه يرسل و يستقبل من السويتش الرئيسي الـ Root Bridge بهذه الحالة نعرف إنه يوجد اتصال، اما بنسبه للمنفذ الثاني 2 /0 F فهو يأخذ حالة الـ BP = Block Port لأنه يخضع تحت امر بروتوكول الـ STP و بهذا الشكل لان يحصل عملية دوران البيانات loop اما في حال تم تعطيل الينك الأولى فسيتم بشكل تلقائي عملية التحويل الى الينك الثاني ليتم العمل بدل الأول.
الأن سننتقل لنموذج ثاني متوسط بعض الشيء لنتعرف بشكل اوسع على عملية بروتوكول الـ STP.
هذا النموذج الثاني مكون من ثلاث سويتشات سيتم انتخاب سويتش واحد ليكون السويتش الرئيسي Root Bridge و باقي السويتشات ستكون Non Bridge كما في النموذج التالي , وسنقوم بدخول على السويتشات لنتعرف على الإعدادات ؟
لاحظ في النموذج إنه تم اختيار سويتش رئيسي Root Bridge و هذا السويتش هو 2 SW, الأن لنعرف كيف تمت عملية الانتخاب أنظر للنموذج يظهر فيه ثلاث سويتشات قيمة الـ 32768 Priority متساوية في الـ SW, SW,SW3 في هذه الحالة سيتم تجاوز هذه المرحلة و الانتقال الى المرحلة التالية و هي استكشاف عنوان الماك ادرس للسويتشات أنظر للماك ادرس يوجد اختلاف 1 SW عنوان الماك ادرس لديه 0000.0000.0000.2 : MAC Address و عنوان الماك ادرس لـ 2 SW 0000.0000.0000.1 : MAC Address وعنوان الماك ادرس لـ MAC SW3 0000.0000.0000.3 : Address الأن في هذه الحالة سيتم انتخاب السويتش SW 2 لي إنه يحتوي على اقل ماك ادرس و هو الذي سيكون السويتش الرئيسي Root Bridge و باقي السويتشات ستكون Non Bridge , اما بنسبه لتكلفة Cost ستكون متساوية لي إنه جميع المنافذ تعمل بنفس السرعة و ستكون سرعة المسارات جميعها 19 Cost كما هو موجود في النموذج .
الأن سنقوم بدخول على السويتش الأول 1 SW ونقوم باستعراض المعلومات الخاصة في بروتوكول الـ STP:
Switch > enable
Switch # show spanning-tree
SW 1
أنظر للصورة هذه من داخل السوتيش SW1 الـ Non Bridge , أنظر للمنافذ المنفذ الأول 0/1 F يأخذ حالة الـ RP = Root Port و هذا يعني إنه يرسل و يستقبل من السويتش الرئيسي الـ Root Bridge بهذه الحالة نعرف إنه يوجد اتصال مع السويتش الرئيسي Root Bridge , اما بنسبه للمنفذ الثاني 2 /0 F فهو يأخذ حالة الـ = DP Designated Port هذا يدل على إنه متصل في سويتش SW3 الـ Non Bridge .
الأن سنقوم بدخول على السويتش 2 SW وكتابة الأوامر السابقة:
أنظر للصورة هذه من داخل السويتش الرئيسي 2 Root Bridge SW وهذه المنافذ لاحظ إنه تأخذ حالة الـ DP = Designated Port هذا يعني إنه هذا السويتش الرئيسي والمنافذ في حالة إرسال واستقبال، اما الآن سنقوم بدخول على السويتش الثالث SW3 ونقوم بعملية استعراض للمعلومات لنرى ما هي حالة المنافذ.
الآن سنقوم بدخول على السويتش SW3 وكتابة الأوامر السابقة:
أنظر للصورة هذه من داخل السوتيش SW3 الـ Non Bridge , أنظر للمنافذ المنفذ الأول F0/1 يأخذ حالة الـ BP = Block Port و هذا يعني إنه المنفذ مقفل بشكل مؤقت و لمنع دوران البيانات ما بين السويشات ولكن في حال تعطل أحد الينكات سيتم تشغيل هذه المنفذ بشكل تلقائي بدل من الينك الذي تعطل عن العمل , بنسبه للمنفذ الثاني 0/2 F لاحظ إنه يأخذ حالة الـ RP = Root Port و هذا يعني إنه يرسل و يستقبل من السويتش الرئيسي الـ Root Bridge بهذه الحالة نعرف إنه يوجد اتصال مع السويتش الرئيسي Root Bridge .
بهذا النموذج نكون قد فهمنا بشكل متوسط عملية الانتخاب و حالة المنافذ ولكن سأقوم بعمل نموذج آخر اضخم من هذا النموذج لنكون على دراية كاملة بهذا البروتوكول كيف يعمل ولنكون قد فهمنا قاعد بروتوكول الـ STP.
النموذج الثالث مكون من اربعة سويتشات 4 SW1 SW2, SW 3,SW و نلاحظ إنه تم الربط من خلال 2 لينك لكل سويتش، ونلاحظ ايضاً إنه تم ايقاف أحد الينكات في كل سويتش، في هذه الحالة يجب أن نعرف أن بروتوكول الـ STP قام بعملية الانتخاب و قام بتحديد لينك واحد لعملية إرسال واستقبال البيانات و تم تحديد سويتش رئيسي Root Bridge , بمعنى في هذه الحالة لا يوجد ما يمسى دوران البيانات في الشبكة سنقوم بنظر على النموذج و بعده سأقوم بشرح النموذج بشكل كامل أنظر للنموذج التالي :
لاحظ في النموذج إنه تم اختيار سويتش رئيسي Root Bridge و هذا السويتش هو SW1 , الأن لنعرف كيف تمت عملية الانتخاب أنظر للنموذج يظهر فيه اربع سويتشات قيمة الـ 32768 Priority متساوية في الـ,3 SW1 SW2, SW 4 SW في هذه الحالة سيتم تجاوز هذه المرحلة و الانتقال الى المرحلة التالية و هي استكشاف عنوان الماك ادرس للسويتشات أنظر للماك ادرس يوجد اختلاف 1 SW عنوان الماك ادرس لديه MAC Address : 0005.5EAE.6CBB و عنوان الماك ادرس لـ 2 MAC Address : 000A.F3EE.0929 SW و عنوان الماك ادرس لـ 3 MAC Address : 0060.47C9.E392 SW وعنوان الماك ادرس لـ SW4 MAC Address : 00D0.BAC0.2BBA , الأن في هذه الحالة سيتم انتخاب السويتش SW1 لي لأنه يحتوي على اقل عنوان ماك ادرس و هو الذي سيكون السويتش الرئيسي Root Bridge و باقي السويتشات ستكون Non Bridge , اما بنسبه لتكلفة Cost ستكون متساوية لأن جميع المنافذ تعمل بنفس السرعة و ستكون سرعة المسارات جميعها 19 Cost كما هو موجود في النموذج, ولكن يجب أن نعلم سيتم حسب التكلفة على حسب المسارات مثل عندما يريد سويتش 3 SW إرسال رسالة لسويتش SW4 ستخرج البيانات من سويتش 3 SW و تصل الى 1 SW السويتش الرئيسي و بعده سيقوم السويتش الرئيسي بإرسال ها للسويتش 2 SW و سيقوم بإرسال البيانات الى سويتش 4 SW في هذه الحالة سيتم حسب تكلفة المسارات التي تسير فيها البيانات, و ستكون تكلفة المسار ما بين السويتش 3 SW و 4 SW ستكون57 Cost كيف تم حسب التكلفة أنظر للنموذج قام بحسب تكلفة المسار الأول الذي يربط ما بين 3 SW و SWI ستكون القيمة 19 Cost كما في النموذج و بعده سيتم حسب قيمة المسارات التي ما بين 1 SW و 2 SW ستكون النتيجة 38 Cost كما في النموذج موضح و بعده سيتم حسب التكلفة التي تربط ما بين 2 SW و 4 SW ما إضافة الـ 38 Cost ستكون النتيجة 57 Cost هذه النتيجة النهائية .
الآن سنقوم بدخول على السويتش الأول 1 SW ونقوم باستعراض المعلومات الخاصة في بروتوكول الـ STP:
الأن سنقوم بكتابة الاوامر التالية:
Switch > enable
Switch # show spanning-tree
أنظر للصورة التالية من داخل السويتش الرئيسي 1 Root Bridge SW لاحظ إنه جميع المنافذ تأخذ حالة الـ DP = Designated Port هذا يعني إنه هذا السويتش الرئيسي والمنافذ في حالة إرسال واستقبال، اما الآن سنقوم بدخول على السويتش الثالث 2 SW ونقوم بعملية استعراض للمعلومات لنرى ما هي حالة المنافذ. الأن سنقوم بدخول على السويتش 2 SW وكتابة الأوامر السابقة:
SW 1
أنظر للصورة التالية من داخل السويتش الثاني 2 Non Bridge SW , و المنافذ لاحظ إنه تأخذ حالة مختلفة هذا يدل على إنه سويتش مرتبط بأكثر من سويتش سأقوم بشرح هذه المنافذ .
SW 2
لاحظ إنه يوجد أربع منافذ متصلة كل منفذ يأخذ حالة مختلفة عن الآخر سأقوم بشرح..
المنافذ المتصلة في السويتشات
Fa0/1 Desg FWD هذا المنفذ متصل في السويتش الرابع 4 SW و في حالة إرسال و استقبال ما بين السويتش الرئيسي Root Bridge و السويتش non-Bridge.
Fa0/2 Root FWD هذا المنفذ متصل بسويتش الأول الرئيسي 1 Root Bridge SW
Fa0/3 Desg FWD هذا المنفذ متصل بسويتش الرابع 4 SW و في حالة إرسال.
Fa 0/4 Altn BLK هذا المنفذ المعطل بشكل مؤقت و متصل بسويتش الأول الرئيسي Root Bridge SW 1
- في هذا النموذج قمت بعمل اكثر من توصيل لتعقيد الشبكة و فهمها بشكل ممتاز لنتعرف على كيف يعمل بروتوكول الـ STP و نتعرف على كيفية حل مشكلة دوران البيانات و ايضاً اخذ الاحتياط من عدم تعطل أحد اللينكات , سيتم تشغيل لينك تم ايقافه بشكل مؤقت ليعود تشغيله ايضاً بشكل تلقائي من غير تدخل بهذا الشكل نكون قد تجاوزنا مشكلة دوران البيانات و تعطل اي لينك بشكل مفاجئ .
الأن سنقوم بدخول على السويتش 3 SW وكتابة الأوامر السابقة:
أنظر للصورة التالية من داخل السويتش الثالث 3 Non Bridge SW , و المنافذ لاحظ إنه تأخذ حالة مختلفة هذا يدل على إنه سويتش مرتبط بأكثر من سويتش سأقوم بشرح هذه المنافذ .
SW 3
لاحظ إنه يوجد أربع منافذ متصلة كل منفذ يأخذ حالة مختلفة عن الآخر بنفس حالة السويتش الثاني.
الأن سنقوم بدخول على السويتش 4 SW وكتابة الامر السابقة:
SW 4
لاحظ الصورة التالية من داخل السويتش الرابع 4 SW و يظهر لنا اربع منافذ بينم يوجد منفذ واحد فقط يعمل بحالة و باقي المنافذ تأخذ حالة أخرى سأقوم بشرحهم. .
Fa0/1 Root FWD هذا المنفذ يدل على إنه متصل مع السويتش الرئيسي 1 SW Root Bridge
Fa 0/4 Altn BLK هذا المنفذ المعطل بشكل مؤقت و متصل بسويتش الأول الرئيسي 1 Root Bridge SW و في باقي السويتش الـ non-Bridge
- بهذا الشكل نكون قد تم الانتهاء من بروتوكول الـ STP ولكن يجب أن نعلم إنه تم تطوير هذا البروتوكول وتم ايضاً إضافة بعض الإضافة الخاص في هذا البروتوكول وتم تطويره لعدة بروتوكولات سأقوم بذكره والشرح عنه لنكون على معرفة كامل في بروتوكول الـ STP.
مراحل المنافذ في السويتشات في STP
STP switch port states
مرحلة قرارات المنافذ في السويتش تأخذ 30 ثانية لي عملية استقرار المنفذ و في هذا الوقت الذي يأخذه المنفذ يكون على عملية تهيئة نفسه ليعمل بشكل صحيح و بيداء في العمل و يضيء بالون الاخضر، و تبدأ هذه العملية بعدة خطوات سأقوم بذكرها.
- Blocking المنفذ في حالة اغلاق سيتم الانتقال للمرحلة الثانية
- Listening المنفذ في حالة استماع ماذا سيكون في هذه المرحلة سيتم تحديد نوع المنفذ
- Learning المنفذ في حالة تجهيز نفسه ليستلم وظيفته
- Forwarding المنفذ في حالة إرسال و استقبال و هذه المرحلة بعد تعين نوعه المنفذ
- Disabled المنفذ في حالة تعطل
بعد أن تعرفنا على حالة المنافذ سأقوم بشرح كل حالة من هذه الحالة بشكل منفصل مع ذكر امثلة على كل حالة لنفهم حالة المنافذ بشكل ممتاز.
Blocking:
هذه حالة المنفذ عند أول مرحلة تشغيل له سيكون بشكل مغلق وعند تشغيله سيتم الانتقال للمرحلة الثانية.
كما في الصورة التالية المنفذ مضاء بالون البرتقالي هذا يعني إنه الحالة Blocking ويأخذ المنفذ وقت 30 ثانية لعملية استقرار المنفذ أنظر للصورة التالية:
Listening:
هذه حالة المنفذ يكون يستمع ماذا سيكون نوعها هل سيكون Access أو Trunk وهذه الحالة تأخذ 15 ثانية من عملية الاستماع من المنفذ المقابل ما هو نوعها وبعده ينتقل للمرحلة الثالثة.
Learning:
هذه حالة المنفذ بعد تحديد نوعه ووظفته سيأخذ وقت 15 ثانية من عملية التجهيز وبعد أن قام يقوم بتحديد المنفذ إنه سيكون من نوع Access وهذه المنفذ متصل في جهاز حاسوب كما في الصورة التالي وسيقوم السويتش بتسجيل عنوان الماك ادرس في جدول العناوين الفيزيائية.
Forwarding:
في هذه الحالة المنفذ تم استقراره والآن في حالة إرسال واستقبال بشكل طبيعي.
Disabled:
هذه حالة المنفذ عندما نريد اغلاقها ولا نريد العمل عليه مثل نريد اقفال منفذ معين بشكل كامل حتى ولو تم توصيله في أحد الأجهزة لن يعمل ابدأ.
Optimizing Spanning Tree Protocol
تطوير بروتوكول STP
مرحلة تطوير بروتوكول الـ STP كانت لحل كثير من المشاكل التي تحصل في الشبكة مثل الوقت الزائد في استقرار حالة المنافذ الخاصة في السويتشات, و تحسين اداء الشبكة بشكل عام مثل عملية انتخاب السويتش الرئيسي في بروتوكول الـ STP , سأقوم بذكر التحديثات التي حصلت على هذا البروتوكول .
- Port Fast
- Uplink Fast
- Backbone Fast
- RLQ BPDU = Root Link Query
Port Fast:
هذه الخاصية التي تم تطويرها لتحسين عملية المنافذ، وظيفة هذه الخاصية تجاهل حالة الانتظار التي تأخذ sec 30 ثانية في حالة استقرار المنفذ وهي Listening Learning وهذه الخاصية تعمل بشكل مباشر مثل عندما ا نقوم بتبديل لينك أو ربط جهاز بمنفذ السويتش لان ينتظر sec 30 ثانية بل سيتم الربط بشكل مباشر من دون انتظار وهذه الخاصية مهم جداً جداً.
ملاحظة مهمة: يجب أن نعلم إنه هذه العملية فقط يتم تطبيقها على منافذ الـ Access بمعنى المنافذ التي تتصل فيها أجهزة حاسوب فقط لا غير، ولا يجب أن نقوم بعمل هذه الخاصة على المنافذ التي تربط السويتشات مع بعضها البعض.
Uplink Fast:
هذه الخاصية مهم جداً ايضاً ووظيفة هذه الخاصية إنه تقوم بعدة وظائف، تقوم بزيادة السرعة في الينك وتفيد ايضاً في حالة تم تعطيل أحد الينكات سيتم التحويل بسرعة مباشرة جداً ومن دون انتظار سيتم تبديل الينك الذي تعطل بلينك يعمل.
ملاحظة مهمة: يجب أن نكون على معرفة إنه إذا تم تفعيل هذه الخاصية على السوتيش الذي نريده لي يدخل هذه السويتش في عملية انتخاب السويتش الرئيسي.
Backbone Fast:
هذه الخاصية تفيد عندما ا تكون لدنيا عدة سويتشات وتم انتخاب سويتش رئيسي، وعندما ا يتوقف السويتش الرئيسي عن العمل ستبدأ السويتشات بإرسال رسالة الـ RLQ BPDU لعملية الاستكشاف هل يوجد سويتش رئيسي في الشبكة أو لا وأن وجد سيتم تعديل المسارات اما في حال لما يجد سيتم معاودة انتخاب سويتش رئيسي من جديد.
Per Vlan Spanning Tree
يروتوكول PVST
PVST : هو عبارة عن بروتوكول خاص بشركة سيسكو و يعمل فقط على أجهزة سيسكو، وهذه مجموعة من البروتوكولات ولكن سأقوم بذكر هذا البروتوكول PVST، و فكرة هذا البروتوكول إنه يعمل على أساسيات تطبيقات بروتوكول الـ STP على مستوى الشبكة الافتراضي الوهمية Vlan و يقوم هذا البروتوكول على تقسيم هذه الشبكات مثل كل شبكة تملك تصميمها الخاص فيها و مساراتها الخاصة فيها حيث يدعم ايضاً عملية توزيع الحمل ما بين الينكات أو نستطيع أن نقول الـ Load Balancing.
Rapid Spanning Tree Protocol
بروتوكول RSTP
RSTP: هذا البروتوكول تم تطويره على اساسيات بروتوكول الـ STP بمعنى إنه مطور منه و يرمز لهذا البروتوكول برمز 802.1w، و هذا البروتوكول مهتم بسرعة و تم اختصار الوقت الذي كان يعتمد عليه بروتوكول الـ STP كان يعتمد على وقت Sec 20 ثانية و تم اختصارهم في بروتوكول الـ RSTP لـ Sec 6 ثواني، ولكن هو نفس وظيفة بروتوكول الـ STP يقوم بانتخاب سويتش رئيسي Root Bridge.
الأن اريد أن أوضح الحالة التي يعتمد عليه الـ RSTP.
قبل أن نبدأ اريد أن اوضح اشياء بسيطة جداً لنتعرف ونفهم ما هي الحالة التي تم اختصاره من بروتوكول الـ STP
هذه الحالة التي يعتمد عليها بروتوكول الـ STP خمس حالة وتم اختصاره في بروتوكول الـ RSTP واصبحت ثلاث حالة سأقوم بذكرهم …
حالات STP switch port states
- Blocking
- Listening
- Learning
- Forwarding
- Disabled
حالات RSTP switch port states
في بروتوكول الـ RSTP تم دمج حالة المنافذ الخاص في الـ Blocking وListening بحالة واحدة وهي الـ Discarding وكما نعرف أن الـ Listening لديه وقت معین مكون من Sec 15 ثانية.
- Discarding : حالة المنفذ معطل لا يستقبل ولا يرسل اية بيانات
- Learning : تعلم العناوين و تسجيلها في جدول العناوين الموجود في السويتش
- Forwarding : عملية التصفية والإرسال
حالة المنافذ في بروتوكول الـ RSTP bridge port roles
- Root : هذه حالة المنفذ صاحب التكلفة الاقل و ايضاً يكون متصل في السويتش
- Designated : هذه حالة المنفذ التي داما تكون في حالة إرسال واستقبال
- Alternate : هذه حالة المنفذ الذي يكون بديل لمنفذ الـ Root
- Backup : هذه حالة المنفذ الذي يكون متصل عليه لينك احتياطي
- Disabled : حالة المنفذ المعطل بشكل يدوي
كما في الصورة التالية
أنواع طريق الربط في بروتوكول RSTP
يوجد ثلاث حالة على أنواع الربط ما بين السويتش والأجهزة الآخر سأقوم بذكرهم:
- Point to Point : هذه النوع من الربط هو ربط سويتش في سوتيش آخر
- Shared : هذا النوع من الربط يكون متصل مثل بجهاز هاب
- Edge : هذا النوع من الربط يكون متصل بجهاز حاسوب أو خادم أو طابعة
كما في الصورة التالية