NameCheap-Hosting

استفد من الخصومات على خدمات الاستضافة بمختلف انواعها

VPS hosting: up to 30% off!

‏إظهار الرسائل ذات التسميات التوجيه (Routing). إظهار كافة الرسائل
‏إظهار الرسائل ذات التسميات التوجيه (Routing). إظهار كافة الرسائل

الثلاثاء، 2 نوفمبر 2021

تعريف الـ OSPF Throttling

 

تعريف الـ OSPF Throttling

يقوم بروتوكول الـ  OSPF بإرسال رسائل تحديث عند حدوث تغيير في الشبكة، مما يتسبب بتغيير على قاعدة بيانات البروتوكول LSDB عند الراوترات التي وصلها رسائل التحديث OSPF LSA، وهذا يؤدي إلى قيام الراوتر بإجراء عمليات احتساب المسارات للشبكات نتيجة للتغيرات الحاصلة وخصوصا في الحالات التي تكون فيها وضعية الشكبة غير مستقرة. لكي يتجنب الراوتر إجهاد المعالج في إجراء عمليات الحساب بسبب ورود أكثر من تحديث متتالي، يقوم الراوتر بجدولة هذه العملية من خلال انتظار فترة من الزمن قبل الشروع بعملية الحساب. يطلق على هذه الخاصية إسم OSPF Throttling، تقوم هذه الخاصية بتأخير بدء عملية الحساب لفترة محددة او تباعد الفترات بين عمليات الاحتساب المتتالية كلما ورد رسالة تحديث OSPF LSA.

يتم ضبط عمل خاصية OSPF Throttling من خلال ثلاثة ضوابط زمنية لكي لا تمتد فترة التأخير لفترات طويلة، وهذه الضوابط هي:

-         spf-start هي الفترة الزمنية الأولية التي ينتظرها الرواتر قبل الشروع في أول عملية حساب.



-          spf-hold هي أقل فترة انتظار بين عمليتي حساب متتاليتين. تتضاعف مدة هذه الفترة عند كل تشغيل لعملية الحساب، تبقى تتضاعف هذه الفترة ما دامت عمليات الحساب يعاد تشغيلها بشكل مضطرد. لكن تعود لقيمتها الأولية في حال انقضت الفترة دون ورود رسالة تحديث تستوجب تشغيل عملية الحساب.

-         spf-max-wait وهي أقصى مدة ممكنة ينتظرها الراوتر بين عمليتي حساب متتاليتين.

لو افترضنا أن الرواتر استلم رسالة تحديث OSPF LSA فإنه سينتظر مدة spf-start 5 ثواني (على سبيل المثال) قبل بدء عملية حساب المسارات للوضع الحالي بعد التغيير، بعد تشغيل عملية الحساب وانتهائها سينتظر الراوتر مدة spf-hold (نفترض قيمتها هو 10 ثواني) قبل بدء العملية مرة أخرى في حال ورود رسالة تحديث جديدة تستدعي تشغيل العملية من جديد، هنا سينتظر الراوتر مدة spf-hold الحالية (10 ثواني) قبل الشروع بالحساب، وستتضاعف المدة لتصبح (20 ثانية)، ستبقى تتضاعف هذه المدة ما دام الأمر يستلزم تشغيل عملية الحساب. لكن أقصى قيمة يمكن أن تصلها مدة الانتظار بين عمليتي حساب هو  spf-max-wait ولنفترض أنها (40 ثانية).

حال انقضت مدة spf-hold الحالية دون ورود رسالة تحديث وعدم الحاجة لتشغيل العملية فإن مدة الانتظار البينية تعود لقيمتها spf-hold الأصلية.




 

السبت، 24 يوليو 2021

الفرق بين عمل السويتش وعمل الراوتر

 نتيجة وجود VLANs على السويتشات فإن التوصيل بين السويتشات يتم من خلال مداخل بوضعية trunks.

جهاز السويتش (layer2 switch) يجسد مبادئ ال layer2 forwarding، بينما الراوتر يجسد مبادئ ال  layer3 forwarding.

مقارنة بين المبدئين:

السويتش one broadcast domain في حال دخل فريم متجه للكل يقوم السويتش بتمريره عبر جميع المنافذ الأخرى غير الذي دخل منه، بينما هذا نرفوض بالرواتر (لن يمرره عبر المنافذ الأخرى).

السويتش يربط بين عناصر الشبكة الواحدة بينما الراوتر يربط بين الشبكات.

السويتش يمرر الفريم اذا كان وجتهه غير معلومة بالنسبة له (unknown destination) بينما الراوتر يقوم باهمال الرسالة المتجهة لعنوان غير معروف.

السويتش يمرر البيانات بشفافية transparently اي لا يغير بال headers المضافة عليها بينما الراوتر يغير layer2 header ويغير TTL and checksum

السويتش يبني ال forwarding table تلقائيا دون الحاجة لبروتوكول learning process، بينما هذا غير ممكن بالرواتر يتطلب static or dynamic routing

لمزيد من التفاصيل عن الفرق بين اعدادات الخاصة لمنافذ layer2 وبين منافذ layer3، تابع الموضوع التالي:

https://ipmasters-tc.blogspot.com/2013/08/switched-port-routed-port.html

 

الأحد، 8 أبريل 2018

Subnetting

تأتي فكرة ال subnetting لانتاج شبكات جزئية باحجام تناسب الاحتياج وكسراً للعرف السائد عن احجام الشبكات والتي كانت يجب أن تكون إما Class A أو Class B أو Class C والتي تسمى  Classful network. تقوم فكرة ال subnetting على تحويل (استدانة) خانات bits في ip address من جزء host لتصبحnetwork part . بالتالي فإن عدد الخانات المحسوبة لجزء ال host تصبح أقل أي حجم الشبكة أقل، وكذلك تزداد خانات network part  وبالتالي عدد شبكات أكثر.

لو كان لدينا شبكة /16172.16.0.0، وقمنا بتحويل 8bits  من host part إلى network part  فإنه ينتج لدينا شبكات جزئية عددها 256 شبكة جزئي .subnets أي أنه ستصبح عدد الخانات لجزء network هي 24bits  وعدد الخانات لجزء host هي 8bits . حسب ما هو موضح في الشكل.



مسائل ال subnetting تهتم بايجاد نطاق الشبكة (اي ايجاد بداية الشبكة ونهايتها)، ويتم ذلك باتباع القاعدتين:

1- يتم ايجاد بداية الشبكة بتحديد جزء ال host لل ip address ثم جعل قيم bits الخاصة ب host part تساوي zeros مكتوبة بنظام  binary.

2- يتم ايجاد نهاية الشبكة بتحديد جزء ال network لل ip address ثم جعل قيم bits الخاصة ب network part تساوي ones مكتوبة بنظام  binary.

في الصورة التالية أمثلة لكيفية تحديد بداية ونهاية كل شبكة. الرمز | يفصل بين bits الخاصة ب ال network part عنhost part. الأرقام بين الأقواس أرقام مكتوبة بنظام binary.


يتعدى تطبيقات ال subnetting عمل تقسيم للشبكة، بل أننا نحتاج فهم ال subnetting لمعرفة عنوان الشبكة ل ip address معين، ايضا فيما لو كان لدينا أكثر من IP address هل هم بنفس الشبكة أم لا.

السبت، 27 يناير 2018

Route Map



Route Map

تحتاج إدارة الشبكات وبالأخص الجزء المتعلق بتوجيه البيانات routing لأدوات لمعالجة وتغيير محتويات الـ routing table عن طريق تغيير النتائج المستخلصة من عمل بروتوكولات التوجيه routing protocols . في كثير من الحالات نحتاج لادوات للسيطرة على محتوى التحديثات updates المرسلة بين بروتوكولات التوجيه، بل تتعدى الحاجة لامكانية استثناء بروتوكول معين من اضافة بعض الشبكات على routing table.

هذه الأدوات تسمى route filtering تستخدم للسيطرة على محتوى قائمة الشبكات التي يتم نشرها أو اعادة توزيعها route redistribution بين بروتوكولات التوجيه. عند تشغيل أكثر من بروتوكول من بروتوكولات التوجيه داخل الشبكات الكبيرة، فإننا نحتاج لعمل اعادة توزيع route redistribution للشبكات بين البروتوكولات العاملة كون تبادل معلومات الشبكات route information يتم بين الراوترات العاملة داخل نطاق نفس البروتوكول.

Route map هي إحدى هذه الأدوات وهي تعتبر الأكثر امكانية وفعالية، تستخدم هذه الأداة لغايتين رئيسيتين هما:

- فلترة الشبكات route filtering: تتيح route map اماكنيات اضافية على نظيرها من الادوات الأخرى مثل امكانية تغيير قيمة metric لشبكات معينة عند اعادة توزيعها.

- توجيه البيانات المقيّد Policy- Based Routing: الوضع الطبيعي للراوتر عند توجيه وتمرير اليبانات packet forwarding أن تتم العملية استناداً على destination IP address الموجود في الباكيت، لكن يمكن تغيير هذا الأسلوب عن طريق استخدام مبدأ توجيه البيانات المقيّد Policy- Based Routing أو (PBR) وذلك اعتمادا على اعتبارات معينة منها source IP address أو اعتمادا على منفذ الراوتر الذي دخلت منه البيانات وغيرها من الاعتبارات.


تركيبة Route Map

تشبه route map في فكرتها فكرة Access Control List (ACL) كثيراً والتي تتكون من شروط conditions وإجراءات actions. الـ ACL تتكون من سطور يحتوي كل سطر على شروط وإجراء، والاجراء يكون إما سماح permit أو منع deny.

لكن route map مختلفة في تركيبتها حيث تتكون من جزئين، الجزء الأول يتم فيه تحديد الشروط للمطابقة match بحيث يمكن أن تحتوي عدة شرط متنوعة، أما الجزء الثاني فيتعلق بوضع الاجراءات set  المطلوب تنفيذها في مطابقة الشروط.

يتم صياغة route map من خلال انشاء جمل statements، في كل جملة يتم تحديد الشروط والاجراءات المطلوبة. قد تحتوي route map على عدة جمل متسلسلة كل جملة لها رقم تسلسلي. يتم فحص الشروط للمطابقة وتنفيذ الاجراءات من الجملة ذات الرقم الأقل. ففي حال عدم مطابقة الشروط في الجملة الأولى تصبح الاجراءات الخاصة بالجملة الأولى غير نافذة، وتتنقل العملية للجملة الثانية، ويتم فحص الشروط في هذه الجملة للمطابقة فإن تطابقت الشروط يتم تنفيذ الإجراءات، وإن لم تتطابق الشروط تتنقل العملية للجملة التالية، وهكذا.

يمكن صياغة الشروط من خلال أسطر متعددة داخل جزء match، قد تحتوي route map على عدة سطور، وكل سطر قد يكون مخصص لشروط واحد أو أكثر.

لنأخذ المثال العام التالي، الـ route map التي تحمل اسم demo يوجد بها جملة تحمل رقم 10، وتحمل عدة شروط مبينة في أسطر match وهي أربعة شروط  a، z، y، x. لكن السؤال الآن هل يجب أن تنطبق الشروط الأربعة جميعها معا لتطبيق الاجراءات المحددة والمبينة في جزء set وهما b و c
لحل الإشكال سنتبع القانون التالي:
الشروط الموضحة بنفس السطر فيكفي تحقق أحدها أما إن كانت الشروط مفصلة بعدة أسطر فيجب تحقيق جميع الشروط.
وهذا يعني أن الشروط التي تكون بنفس السطر تكون العلاقة بينها (or) بينما تكون العلاقة بين الشروط المفصلة بعدة سطور تكون (and). وعليه فإن هذه الجملة تنطيق في حال وجود واحد من الشروط الثلاثة z، y، x  بالاضافة للشرط  سيتم تطبيق الاجراءات b  و c.

 route-map demo permit 10
match x y z
match a
set b
set c

===========================
If (x or y or z) and (a) Matched
then set b and c


ومن الملاحظ وجود permit عند انشاء الجملة statement في route map وقد يتم تحديد deny بدلاً من permit، ويختلف مفهوم deny حسب تطبيق واستخدام route map. علماً بأن permit/deny بالاضافة للرقم التسلسلي هما خياران غير أساسيان عند تعريف جملة route map، القيمة الافتراضية هو permit والقيمة الافتراضية للرقم التسلسلي هو 10.

 وكما هو في الـ ACL فإن route map تحتوي بشكل ضمني على جملة آخيرة غير ظاهرة وهي جملة منع عامة deny any any.


 
 
 الشروط والاجرءات

يمكن اختيار شروط المطابقة وكذلك الاجراءات بما يناسب الاستخدام للroute map المراد تطبيقه. في التطبيقات المرتبطة باستخدام الـ route map في اعادة نشر أو فلترة تحديثات بروتوكولات التوجيه، يمكن اختيار الشروط من الخيارات التالية:  

-  match interface المطابقة اعتماداً على اسم منفذ الراوتر الذي يكون مخرج للشبكات egress interface الموجودة في الـ routing table.

-   match ip next-hop المطابقة اعتماداً على عنوان المخرج next-hop ip address، حيث أن الشبكات التي لها عنوان مخرج معين ينطبق على الشرط، يمكن تحديد أكثر من مخرج.

-     match ip address المطابقة اعتماداً على العناوين المحددة في الـ ACL أو في الـ prefix-list

-   match length المطابقة اعتماداً على حجم الباكيت ويمكن تحديد حد أدني وحد أعلى لحجم الباكيت

-  match ip route-source المطابقة للشبكات اعتماداً على عنوان الراوتر الذي أرسل التحديثات لهذه الشبكات source ip address of advertised router

-      match metric المطابقة للشبكات اعتماداً على قيمة metric

-      match tag المطابقة للشبكات اعتماداً على قيمة tag

-    match route-type المطابقة للشبكات اعتماداً على نوع الشبكات، وهذا الأمر ينطبق على عدد من بروتوكولات التوجيه مثل بروتوكول OSPF الذي يميز أنواع الشبكات الخارجية  E1 و E2.


أما فيما يتعلق بالاجراءات فتكون من ضمن الخيارات التالية:

-         set metric يتم تغيير قيمة الـ metric

-         set metric-type يتم تغيير نوع الـ metric لبروتوكول OSPF

-         set interface يتم تحديد اسم منفذ الراوتر ليكون مخرج للوصول للشبكات المطابقة

-         set default interface يتم تحديد اسم منفذ الراوتر لل default route

-         set ip next-hop يتم تحديد عنوان الراوتر التالي ليكون مخرج للشبكات المطابقة

-         set default next-hop يتم تحديد عنوان الراوتر التالي ليكون مخرج لل default route


أما في حالة استخدام الـ route map في توجيه البيانات المقيّد (PBRتكون خيارت الشروط والاجراءات محدودة جدا مقارنة مع الاستخدام في فلترة واعادة التوزيع الشبكات.