توجيه (شبكات)

توجيه (شبكات)
في هندسة الشبكات، التسيير أو التوجيه هي عملية اختيار مسار لحركة البيانات ضمن شبكة ما، وبين أو عبر عدّة شبكات. تحصل عملية التوجيه في العديد من أنواع الشبكات، ويشمل ذلك شبكات تبديل الدارات مثل شبكات الهاتف العامة، وشبكات الحاسب كشبكة الإنترنت.
في شبكات تبديل الرزم، تقوم آليّات التوجيه باتخاذ قرار التوجيه لتحديد مسار رزم البيانات من مصدرها إلى وجهتها عبر عدد من عقد الشبكة الوسيطيّة، والعمليّة بشكلٍ مُجرد هي انتقال الرزم المُعنونة من أحد المنافذ المُتصلة مع الشبكة إلى منفذ آخر. تكون العقد الوسيطية تجهيزات من عتاد الشبكة، مثل المُوجهات والبوابات وجدران الحماية والمُبدلات. تقوم الحواسب أيضاً بعملية توجيه الرزم، رغم أنّها لا تملك عتاداً مُخصصاً لهذا الغرض تحديداً.
عادةً، تعتمد عملية التوجيه على جداول خاصة تحتفظ بسجلات عن أفضل المسارات نحو الشبكات الوجهة، تُسمى جداول التوجيه. ولذلك فإنّ بناء جداول التوجيه، التي يجب أن تحتفظ بها العقد التي تقوم بالتوجيه هو مرحلة جوهرية لنجاح العمليّة. تقوم العديد من خوازميات التوجيه بحساب أفضل مسار متاح للوجهة، ولكن بعضها يقوم بحساب أكثر من مسار بنفس الوقت، ويُسمى التوجيه عندها بالتوجيه مُتعدد المسارات (Multi-path Routing).
نظرة عامة
توجيه الرزم
توجيه الرزم هو تحديد مسار كل رزمة من مصدرها إلى هدفها بشكل منفرد ومستقل عن بقية الرزم، ويعني ذلك أن رزمتين متجهتين من نفس المصدر إلى نفس الوجهة قد تسلكان طريقين مختلفين، وقد يسبب ذلك تأخيراً زمنياً أو وصولاً للرزم بغير الترتيب الذي أرسلت فيه. يعتمد توجيه الرزم بشكل أساسي على عنوان الوجهة الذي يكون موجوداً داخل الرزمة، وعلى معلومات التوجيه الموجودة في المُوجّهات عبر الشبكة.
لنجاح توجيه الرزم، يجب أن يحدد البروتوكول المُوجّه بنية خاصة لترويسة الرزمة، تحتوي على عدد من الحقول التي تضم معلومات أساسية للتوجيه مثل عنوان مصدر الرزمة وعنوان وجهة الرزمة وغيرها، بالإضافة إلى تحديد فضاء العنونة الذي يضم مجالات من العناوين وكيفية تجزئة هذا المجال إلى مجموعة من المجالات القياسية أو الفرعيّة.
لا يجب أن تحتوي مسارات الرزم على حلقات. في حالة الرزم المنفردة، يكون هناك مصدر وحيدة للزرمة، ووجهة وخيدة كذلك، ويكون المسار خطياً من المصدر إلى الوجهة عبر عقد الشبكة، أمّا رزم البث المجموعاتي، فبها مصدر وحيد وعدة وجهات، فتكون مساراتها شجريّة الشكل، تبدأ من المصدر وتتفرع في المُوجّهات إلى عدة مسارات فرعية لتنتهي في الوجهات المختلفة. في الحالة العامة، لا يتمّ توجيه رزم البث العام خارج مجال البث العام الخاص بها، لكن ذلك ممكن بهد تهيئة وإجراءات خاصّة.
توجيه الرزم المنفردة ورزم البث العام
مفاهيم واصطلاحات
المُضيف: هو جهاز يضمّ بطاقة شبكة واحدة أو أكثر أو كيان برمجي يستضيف أحد عناوين البروتوكول المُوجّه الفريدة. يمكن للمضيف أن يستضيف أكثر من عنوان في نفس الوقت، وتسمى هذه الحالة بالاستضافة المتعددة (Multi-homing).
المصدر: هو مضيف مميز بعنوان فريد، يقوم بتوليد رزمة البيانات الفريدة أو رزمة البث المجموعاتي.
الوجهة: هي مضيف يُشكّل الهدف النهائي الذي يُراد إيصال الرزمة إليه.
رزمة البث المنفرد: هي رزمة بيانات يكون عنوان الوجهة فيها هو عنوان فريد يخص مضيفاً محدداً بعينه.
رزمة البث العام: هي رزمة بيانات يكون عنوان الوجهة فيها هو عنوان البث العام المحدد بحسب فضاء العناوين.
المسار: هو الطريق الذي تسلكه رزمة البيانات من مصدرها إلى وجهتها.
المخرج الافتراضي (Default Gateway): هو منفذ لأحد التجهيزات التي تقوم بالتوجيه، يتصل هذا المنفذ مع شبكة محليّة ما ويلعب دور البوابة التي تصلها مع باقي أجزاء الشبكة، يجب أن يكون هذا المنفذ فعالاً ويجب أن يستضيف عنواناً من تلك الشبكة.
الشبكة المحلية: هي مجموعة من الأجهزة الشبكية (طرفيات، مبدلات، وموزعات وأسلاك ..) التي تشكل البنية الفيزيائية التي تمتد عليها المسارات الواصلة بين الطرفيات المختلفة، تتوقف حدود الشبكة المحليّة عند النظام الوسيطي.
الشبكة المحلية المتصلة بشكلٍ مُباشر مع الموجه: تكون الشبكة المحلية متصلة بشكل مباشر مع الموجه إذا اتصلت معع عبر مخرج افتراضي.
النظام الوسيطي (Intermediate System): هو مجموعة من الأجهزة الشبكية (موجهات، ومبدلات، أسلاك ..) التي تشكّل البينة الفيزيائية للعمود الفقري الذي يصل بين الشبكات المحلية المختلفة.
الشبكة (Internetwork): تجمع لشبكتين محليتين أو أكثر بالإضافة للنظم الوسيطية التي تصلّ بينها.
آلية العمل
تتم عملية توجيه الرزم المنفردة أو رزم البث العام على مرحلتين، تحصل الأولى في المُضيف أمّا الثانية ففي النظام وسيطي الذي يربط بين الشبكات المحلية، يضمّ هذا النظام مُوجّهاً واحداً على الأقل.
لنجاح عملية التوجيه في المضيف يجب أن يملك المضيف عنواناً مميزاً من فضاء عناوين البروتكول المُوجّه الذي يتم توجيه رزمته، بالإضافة لذلك يجب أن يملك المضيف عنوان المُوجّه الذي يتصل مع الشبكة، وقد يحصل المضيف على هذه العناوين بواسطة التهيئة اليدوية، أو باستخدام طرق تهيئة آليّة مثل استعمال بروتوكول التهيئة الآلية للمضيفين (DHCP) أو تهيئة العناوين الآلية (SLAAC).
في البداية، تبدأ عملية توجية رزمة البيانات في المضيف المصدر الذي ولّدها:
تبدأ العملية في المُضيف المصدر، وتحديداً في طبقة الشبكة، عند تغليف رزمة البيانات لإنشاء إطار البيانات، وهو وحدة البيانات التي يتم نقلها عبر الشبكة، ويقوم المضيف بتحديد عنوان الوجهة.
يقارن المضيف المصدر عنوان وجهة الرزمة، مع العنوان الذي يستضيفه لتحديد فيما إذا كانت الوجهة تنتمي إلى نفس الشبكة أو لا:
إذا كان عنوان الوجهة ينتمي إلى نفس الشبكة، يتم اتخاذ قرار توجيه الرزمة محليّاً نحو الوجهة مباشرة.
إذا كان عنوان الوجهة ينتمي إلى شبكة مختلفة، يتم اتخاذ قرار توجية الرزمة محليّاً نحو الموجه المتصل مع الشبكة، والذي يُسمى عادة البوابة الافتراضية.
بالاعتماد على جدول العناوين الخاص بالطبقة الثانية، يتم مطابقة عنوان الوجهة الموجود في الرزمة مع عنوان الوجهة التي تمّ تحديدها بحسب قرار التوجيه، وفي حال عدم وجود عنوان الوجهة في الجدول يتم الاعتماد على أحد بروتوكولات مطابقة العناوين مثل بروتوكول دقة العناوين (ARP) أو بروتوكول اكتشاف الجيران (NDP).
ينتقل العمل إلى طبقة ربط البيانات، حيث يتم تشكيل ترويسة وملحق الطبقة بشكل مناسب، ثُم تُغلّف الرزمة ويُشكّل إطار البيانات.
إرسال إطار البيانات عبر الشبكة.
تقوم معدات الشبكة بعد ذلك، كالمُبدلات والمُوزّعات، بنقل الإطار إلى وجهته، إمّا إلى المُضيف الوجهة بشكل مباشر في حال كونه في نفس الشبكة، أو إلى المُوجّه المُتصل مع الشبكة المحليّة في حال كون الوجهة في شبكة أخرى، وهذا يعني وصول الإطار إلى النظام الوسيطي الذي يربط بين الشبكات المحليّة.
في حال كانت الوجهة في شبكة أخرى، تصل الرزمة إلى منفذ المُوجّه المُتصل مع الشبكة المحليّة، وتدخل بذلك النظام الوسيطي، ويتم معالجتها في أول موجه بحسب الخطوات التاليّة:
استقبال الإطار.
التحقق من وصول الإطار بشكل سليم وبدون أخطاء مرتبطة بالنقل، في حال وجود أخطاء يتمّ التخلص من الإطار.
يُفك تعليف الإطار، وتُستخرج الرزمة.
يُقرأ عنوان الوجهة من ترويسة الرزمة.
يُقارن عنوان الوجهة مع جدول توجيه المُوجّه، ويكون هناك حالتان:
عنوان الوجهة ينتمي إلى شبكة غير موجودة في جدول التوجيه، فيُتخذ قرار التوجيه بالتخلّص من الرزمة.
عنوان الوجهة ينتمي لشبكة موجودة في جدول التوجيه، وعندها:
أ- عنوان الوجهة ينتمي إلى شبكة متصلة بشكل مباشر مع الموجه، وعندها:
1) إذا كان عنوان الوجهة ينتمي لنفس الشبكة التي وردت منها الرزمة، يتمّ اتخاذ قرار توجيه بالتخلص من الرزمة، وهي حالة رزم البث العام.
2) إذا كان عنوان الوجهة ينتمي لشبكة متصلة بشكل مباشر مع الموجه ولكنّها مُغايرة للشبكة التي وردت منها الرزمة، يتم اتخاذ قرار توجيه الرزمة نحو تلك الشبكة.
ب- إذا كان عنوان الوجهة ينتمي لشبكة غير مُتصلة بشكل مباشر مع المُوجّه، يُتخذ قرار توجيه الرزمة نحو تلك الشبكة، اعتماداً على المعلومات المُوجودة في جدول التوجيه.
6. تُنشئ ترويسة وملحق بروتوكول طبقة ربط البيانات المناسبين بحسب قرار التوجيه، ثُمّ تُغلّف الرزمة في إطار البيانات.
7. يُرسل إطار البيانات بحسب قرار التوجيه، وهناك حالتين:
إذا كانت الوجهة في شبكة متصلة بشكل مباشر مع الموجه، تقوم معدات الشبكة المحليّة بإيصال الإطار إليها.
إذا كانت الوجهة في شبكة غير متصلة بشكل مباشر مع الموجه يرسل الإطار إلى المُوجّه التالي على المسار حيث تُعاد كامل الخطوات السابقة.
توجيه رزم البث المجموعاتي
مصطلحات ومفاهيم
يختلف مفهوم توجيه رزم البث المجموعاتي عن توجيه الرزم المنفردة أو رزم البث العام، حيث يكون مسار رزم البث المجموعاتي يشبه الشجرة، التي تبدأ من المضيف الذي يولد الرزمة، ثُمّ تتفرع في الموجهات التي تدعم البث لمجموعاتي لتصل إلى جميع أعضاء المجموعة. هناك مجموعة من الاصطلاحات المُستعملة في هذا المجال، والتي لابد من معرفتها لإدارك آلية التوجيه المُستعملة مع تقنية البث المجموعاتي:
عنوان المجموعة (Group address): هو مُعرّف مميز من فضاء عناوين البروتوكول المُوجَّه المستعمل، إنّ عنوان المجموعة ليس عنواناً فريداً ويمكن أن يستضيفه أكثر من مضيف بنفس الوقت.
المضيف (Host): هو جهاز طرفيّ متصل مع الشبكة يستضيف عنوان مجموعة واحد أو أكثر.
المجموعة (Group): هي تجمع من المُضيفين الذين يستضيفون عنوان مجموعة ما، قد تمتد المجموعة ضمن شبكة محلية فقط أو قد تتسع لتمتد عبر عدة شبكات محلية.
المصدر (Source): هو طرفية متصلة مع الشبكة وتملك عنواناً فريداً، قد تكون هذه الطرفية عضواً في مجموعة البث المجموعاتي، ولكل هذا ليس شرطاً لازماً. يقوم المصدر بتوليد حركة بيانات هي عبارة عن رزم بث مجموعاتي مُوجّهة نحو عنوان المجموعة.
العقدة (Node): ويقصد بها المُوجّه الذي يدعم البث المجموعاتي.
عقدة الجذر (Root node): وهي أوّل عقدة تبدأ فيها عملية مضاعفة رزمة البث المجموعاتي القادمة من المصدر، يختلف موقع عقدة الجذر بحسب نوع الشجرة، ففي الأشجار المبنية بحسب المصدر، تكون عقدة الجذر هي أول عقدة تستقبل رزمة البث المجموعاتي القادمة من المصدر، أما في الأشجار المشتركة، فعقدة الجذر هي نقطة الالتقاء التي يتم تحديدها بشكل مُسبق.
التيار الصاعد (Upstream): وهو حركة البيانات بعيداً عن عقدة الجذر.
التيار الهابط (Downstream): وهو حركة البيانات باتجاه عقدة الجذر.
عقدة الورقة (Leaf node): هي عقدة لا ترسل تياراً صاعداً نحو عقدة أخرى.
العقدة الوسطية (Intermediate node): هي عقدة تقع على مسار الرزمة بين عقدة الجذر وعقدة الورقة، تستقبل هذه العقدة تياراً صاعداً من عقدة سابقة في الشجرة، وترسله إلى عقدة واحدة أو أكثر، قد تكون هذه العقد اللاحقة أوراقاً أو عقد وسيطيّة أخرى.
شجرة البث المجموعاتي (Multicast tree): هي مسار تيار البث المحموعاتي الصاعد من أجل مجموعة مُحددة بعنوان بثّ مجموعاتي (G) ومصدر لرزم البث المجموعاتي (S)، يشار إلى شجرة البث المجموعاتي بالرمز (S,G).
بروتوكول توجيه رزم البث المجموعاتي:
بروتوكول إدارة مجموعات البث المجموعاتي:
أشجار البث المجموعاتي
مصادر معلومات التوجيه
الاتصال المباشر
إنّ كون مسار نحو وجهةٍ ما متصلٌ بشكلٍ مُباشر مع المُوجّه يعني أن المُوجّه يمتلك مساراً نحو تلك الوجهة، ويُضاف هذا المسار بشكل آليّ إلى جدول التوجيه في المُوجّه. لكي يكون المسار مُتصلاً بشكل مباشر مع المُوجّه، يجب أن يحقق الشرطين التاليين:
أن يكون المسار مُتصلاً مع الموجه عبر منفذ بحالة فعّالة.
أن يستضيف المنفذ عنواناً من الشبكة التي تعنون الوجهة.
تسبب العملية السابقة إضافة مسارين إلى جدول التوجيه، الأول هو المسار المتصل بشكل مباشر، وهو مسار نحو شبكة وجهة، ويستخدمه المُوجّه لتوجيه الرزم التي يكون عنوان وجهتها من نفس الشبكة الوجهة. أمّا المسار الثاني، فهو المسار المحلي، وهو مسار نحو منفذ الموجه المتصل مع الشبكة الوجهة، ويُضاف هذا المسار بشكل مُستقلٍ إلى جدول التوجيه أيضاً.
التوجيه اليدوي
التوجيه اليدوي هو تحديد مسار الرزم في الموجه بحسب قرار توجيه تم اتخاذه اعتماداً على معلومات مُضافة إلى جدول التوجيه بشكلٍ يدوي، تظهر الحاجة لهذا النوع من التوجيه مع زيادة حجم الشبكة، ووجود شبكات غير متصلة بشكل مباشر مع الموجه. عملياً، التوجيه اليدوي تحديد مسارات الرزم نحو الشبات التي لا تتصل مع الموجه بشكل مباشر، من خلال تزويد جدول التوجيه بمعلومات تتعلق بالطوبولوجيا وتأثر بشكل مباشر على قرار التوجيه.
من سلبيات التوجيه اليدوي، هو عدم إمكانية تحديث المسارات بشكل آلي، لملاحقة التغيرات الحاصلة في الشبكة، ويجب إنجاز ذلك بشكل يدوي، على كل موجهات الشبكة، وهو عمل مرهق، ويحتاج لإنجاز حسابات تزداد تعقيداً مع زيادة حجم الشبكة. على الجانب الآخر، لا يُستهلك التوجيه اليدوي عرض النطاق المتاح، مقارنة ببروتوكولات التوجيه، ولا يحتاج إلى قدرات معالجة في العقد لإنجاز الحسابات.
في أنظمة لينوكس، يكون شكل الأمر الذي يضيف مساراً بشكل يدوي إلى جدول التوجيه بالشكل التالي:
root@router:~# ip route add 192.0.2.0/24 via 10.0.0.1
أما في أنظمة سيسكو فيكون شكل الأمر:
Router(config)# ip route 10.10.20.0 255.255.255.0 Serial 0/0/0
وفي أنظمة جانبر، يكون شكل أمر التوجيه اليدوي مشابهاً لما يلي:
set routing-options static route 192.168.47.0/24 next-hop 172.16.1.2
بشكل عام، ومع اختلاف الأنظمة، تتكون الأوامر أو التعليمات الخاصة بالتوجيه اليدوي من ثلاث أجزاء رئيسية:
قسم الديباجة: وهو يحتوي على الكلمات التي تميّز الأمر عن غيره من الأوامر.
عنوان الوجهة: ويضم هذا الجزء فضاء العناوين الخاص بالوجهة، وهو يتكون من قسمين هما العنوان وقناع الشبكة.
الخطوة التالية: وهي المعلومات التي تساعد الموجه في تحديد مسار الرزمة بدقة إذا تم اختيار المسار اليدوي، وقد تكون هذه المعلومات عبارة عن اسم منفذ محلي في المُوجه، أو عنوان منفذ محلي فيه، أو عنوان الخطوة التالية على المسار.
وتحتوي بعض الموجهات على واجهات رسومية، تساعد بإنجاز عملية التوجيه اليدوي.
بروتوكولات التوجيه
الموجهات وما في حكمها
بحسب نموذج الإتصال المعياري (OSI)، تُشكّل المبدلات، التي تعمل على مستوى الطبقة الثانية وحدة البناء الأساسية لشبكات المعطيات، أما المُوجّهات، التي تعمل في مستوى الطبقة الثالثة، فتقوم بمهمة الوصل بين هذه الشبكات. تقوم المُوجّهات بإنجاز التوجيه وبإدارة كافة العمليّات المُرتبطة به.
بسبب ذلك، فقط أطلق على الموجهات في البداية أسماء مثل: الأنظمة الوسيطية (Intermediate System)، وبدالة الشبكة (Network Relay). وتُسمّى المُوجّهات أيضاً، بالبوابات (Gateway)، والسبب في ذلك أنها تربط الشبكة المحلية مع باقي الشبكات، أو مع شبكة الإنترنت، فهي بمثابة بوابة الطرفيات للعالم الخارجي، تقوم الطرفيات بتوجيه الرزم التي توّد إرسالها إلى وجهات خارج الشبكة المحلية، نحو المُوجّه، لذلك يُسمّى عنوان المُوجّه في الشبكة المحلية، منظوراً من الطرفيات فيها بعنوان البوابة أو عنوان المخرج الافتراضي (Default Gateway Address).
يقوم الموجه بالعديد من الوظائف المعقدة، فهو يُخزّن جدول التوجيه، ويحافظ عليه بأحدث صورة، كما أنه يتخذ قرار التوجيه من أجل كل رزمة، ويقوم أيضاً بتعديل قيمة بعض حقول الرزمة، ويعيد تشكيل الإطار قبل إرسال الرزمة عبر أحد منافذه.
أمّا التبديل على مستوى الطبقة الثالثة (Layer 3 Switching)، والذي يُسمّى أيضاً التبديل متعدد الطبقات (MultiLayer Switching)، فهو شكل من أشكال التوجيه يحصل في تجهيزات خاصّة تُسمّى المُبدلات متعددة الطبقات، والاحتلاف الأساسي الذي يميز هذا النوع من التوجيه عن التوجيه الذي تقوم به المُوجّهات هو كونه يتمّ على مستوى العتاد، أما في المُوجّهات، فإنّ التوجيه هو عملية برمجيّة بالكامل .
أنماط التوجيه
يتم تصنيف أنماط التوجيه بحسب الطريقة التي يتم فيها توصيل الرسالة:
البثّ المُنفرد: وفيه يتم توصيل الرسالة إلى وجهة واحدة فريدة مميزة بعنوان خاص بها، وتسمى رزمة البيانات التي تحتوي عنوان فريداً، بالرزمة الفريدة، وتقوم الموجهات بنوجيه الرزمة الفريدة نحو وجهتها بشكل مباشر. في محددات البروتوكول المستخدم في العنونة، يتم تحديد مجال جزئي من فضاء العناوين ليكون مجالاً للعناوين الفريدة التي يمكن تخصيصها للطرفيات.
البث المجموعاتي: وفيه يتم توصيل الرسالة إلى مجموعة تضم عدداً من العقد، يكون للمجموعة عنوان خاص يميزها، يستضيف كل فرد في المجموعة عنوان المجموعة بالإضافة لعنوانه الخاص المميز. تسمى رزمة البيانات التي تحمل عنوان بث مجموعاتي غي حقل الوجهة الخاص بها برزمة البث المجموعاتي، وتقوم الموجهات، التي تدعم البث المجموعاتي، بتوجيه رزمة البث المجموعاتي نحو كل الطرفيات الأعضاء في المجموعة.
البثّ العام: وفيه يتم توصيل الرسالة إلى كل العقد في الشبكة، ويكون للبث العام عنوان مميز، تسمى رزمة البيانات برزمة البث العام، أو برسالة البث العامـ عندما يتواجد عنوان البث في حقل الوجهة الخاص بها، إن وجود العنوان في حقل الوجهة يعني وجوب قيام الموهات بإرسال الرزمة لجميع العقد، أما الطرفيات التي تستقبل رسالة بث عام، فهي تعاملها وكأنها رسالة بث منفرد.
البث الاختياري (Anycast): وفي هذه الحالة، تتواحد مجموعة من المضيفين التي تستقبل عنوان بث اختياري، ويتم توجيه رزمة البيانات نحو المضيف الأقرب الذي يستضيف عنوان بث اختياري.
البث الجغرافي: وفيه تقوم الموجهات بتوجيه رزمة البيانات بحسب الموقع الجغرافي للوجهة.
جدول التوجيه
هوامش
. يظهر ذلك بوضوح في اسم بروتوكول الربط بين الأنظمة الوسيطية (IS-IS)، أي بروتوكول الربط بين الموجهات.
انظر أيضاً
موجه
جدول التوجيه
بروتوكول توجيه
مراجع
وصلات خارجية
كيف يتم توجيه رزم بروتوكول الإنترنت المنفردة، مقال تفصيلي من مايكروسوفت.
التوجيه
بنية الإنترنت
وصول إنترنت