elkinghack
08-01-2006, 10:18 AM
الدرس السادس
تحدثنا فى الدرس الخامس عن مميزات جهاز switch وكيفية اداء وظيفته و ما يتبعه من تقسيم النطاق الى نطاقات فرعية و اهمية ذلك فى تقليل حجم المرور فى كل نطاق و عرفنا ايضا انواع البث المستخدمة بين الأجهزة و سنستخدم هذه الأنواع بعد ذلك فى تعريف اى نوع من انواع البث .
و تعرفنا على حقل صحة الكبسولة و وظيفته و عرفنا اهم الأشياء عن جهاز switch و قارنا وظيفته بوظيفة HUB و تحدثنا عن عنصر التأخير او delay و كيفية تقليله باستخدام جهاز switch .
بعد كل هذه المعرفة سيتبقى لنا اشياء بسيطة
اولا : كيف يعرف كل جهاز بعنوان MAC للاجهزة الأخرى فى نفس النطاق حيث انه حان الأن معرفة هذه العمليه
ثانيا : اهمية هذه العملية فى مرحلة تعلم جهاز switch للاجهزة من حوله .
نأخذ النقطة الأولى :
معرفة كل جهاز لعناوين MAC للاجهزة الأخرى حتى يكون قادر على ضغط كبسولة اتصال لأحد الأجهزة او ما سنسميها الأن unicast frame
يستخدم الجهاز المستعلم عن عناوين الأخرين بروتوكول اسمه ARP او Address resulotion protocol و يختص هذا البروتوكول بهذه العملية او عملية حل عناوين MAC لباقى الأجهزة
طريقة عمل هذا البروتوكول :
نبدأ مثال ...
طبعا لازم نتابع الرسم التوضيحى
سنتخيل الأن ان الشبكة التى انشأناها جديدة و تم بداية العمل
كل الأجهزة تريد التعارف على بعضها كأن نكون فى غرفة و لا نعرف بعضنا البعض فلابد من التعارف بيننا حتى نستطيع التحدث و توجيه الحديث الى شخص معين .
الجهاز الأول كما فى الرسم سيقوم الأن بارسال كبسولة تعارف عن طريق بروتوكول ARP و سنطلق عليها هذه الكبسولة ARP request او طلب تعارف و لكن كيف سيكون شكل هذه الكبسولة ؟؟
سوف تحتوى على الأتى
حقل MAC المصدر يحمل عنوان الجهاز المستعلم
اما حقل MAC الوجهه سيحمل صيغة تعريفية بنفس شكل صيغة MAC address
و سوف تكون هكذا FF-FF-FF-FF-FF-FF كأن هذه الصيغة هى علامات استفهام مثلا ؟؟-؟؟-؟؟-؟؟-؟؟-؟؟ هذه الصيغة اذا ما وجدت فى حقل الوجهه سميت كبسولة التعارف هنا كبسولة بث عام او broadcast يعنى لابدان يتم استلامها من كل الأعضاء لذلك سوف نطلق الأن على هذه العملية اسم ARP broadcast من الجهاز المستعلم .
و لكن ما معنى broadcast طبعا نحن نعلم الأن انها كبسولة هدفها محادثة الجميع كأنك فى نفس الغرفة تريد ان تتعرف على باقى الأعضاء ماذا ستقول " يا اخوانى مرحبا اريد التعرف عليكم" هذه هى الصيغة لاحظ ان كلمة "يا اخوانى" حددت ان الحديث الى الجميع و هذا ما نطلق عليه broadcast فأجاب الجميع كل بأسمه مثلا " احمد و على و راشد " اذا الأن انت تعرف اسماء الجميع فعند محادثة راشد سوف تقوم بنداء اسمه اولا " يا راشد" ثم تتحدث اذا علم راشد هنا ان الحديث موجهه له و هذا هو اسلوب بث unicast ..
نفس الفكرة سنطبقها معا ....
تابع الرسم
لاحظ فى الرسم الجهاز الذى يحمل MAC A يريد معرفة باقى الأعضاء هو لا يعلم ان هناك اعضاء كأنه فى غرفة مظلمة لا يرى احد لذلك لابد من ارسال هذه الكبسولة و سنجد ان هذا ينبطق فى حالة ادخال جهاز جديد على النطاق مثلا فهذه الكبسولة بمثابة ضوء للجهاز لمعرفة هل هناك احد ام انه بمفرده و سينتظر الرد سيقوم الجهاز الأن الحامل ل MAC A بارسال كبسولة ماذا ؟؟؟؟ تمام ARP broadcast request حاملة فى حقل MAC الوجهه صيغة F السابقة فى حالة عدم وجود اى اجهزة ربط مثل HUB او switch ستذهب الكبسولة الى باقى الأعضاء مباشرة لأننا هنا قد صنفنا على اننا فى بيئة مشاركة يعنى اى جهاز يستقبل اى كبسولة مرسلة سواء كانت ARP او لا
حالة اذا ما وجد جهاز HUB ايضا كل الأعضاء سيستلموا الكبسولة لأننا نعرف وظيفة جهاز HUB اما حالة switch نحن نعلم ان هذا الجهاز يمرر حسب القرار الصحيح اذا كيف سيستلم جميع الأعضاء الكبسولة ؟؟؟؟
هنا توجب على جهاز switch ان يمرر الكبسولة الى جميع المنافذ و لكن كيف فهو لا يعمل بهذا المنطق لا ..
هو سيعمل بهذا المنطق فى حالة واحدة و هى حالة broadcast فقط اذا هو ايضا قرار من جهاز switch عندما يستلم الكبسولة سيراجع حقل الوجهه سيجد صيغة F سيعلم هنا ان هذه الكبسولة بث عام اذا لابد على الجميع استلامها و بالتالى سيمرر الى جميع المنافذ .
شىء اخر و هو ليس فقط يقوم بمراجعة حقل الوجهه و لكن سيتحقق من حقل المصدر لماذا؟؟
هذا جزء من عملية تعلم جهاز switch .
عند مراجعة حقل المصدر سيتأكد الجهاز هنا من وجود او عدم وجود MAC المصدر فى جدول التوجيه الخاص به
اذا اذاوجد لا مشاكل يتابع عمله بتمرير الكبسولة الى جميع المنافذ
لكن اذا لم يوجد فى جدول التوجيه ماذا يحدث ؟؟
سيعلم هنا ان هذا الجهاز جديد اذا لابد من تسجيل هذا العنوان الجديد و ربطه بالمنفذ المستلم منه فى الرسم نجد ان جهاز switch قد احتفظ بعنوان MAC المصدر و قام بربطه بمنفذ رقم 1 لأنه استلمه من هذا المنفذ .
و الأن ستقوم كل الأجهزة باستقبال الكبسولة و ستعمل الأتى...
سيراجع كل جهاز حقل MAC المصدر لمعرفة من هو المستعلم ثم تقوم بمراجعة حقل MAC الوجهه ستجد هنا ان الصيغة هى صيغة F و بالتالى ستعرف الأن ان هذه الكبسولة هى كبسولة استعلام عن MAC .
الأن ستقوم الأجهزة الأخرى بتجهيز الرد و لكن سنتوقف هنا قليلا لتوضيح شىء مهم ...
عند مراجعة الأجهزة المستلمة لكبسولة التعارف ARP سوف تتحقق من حقل المصدر لمعرفة
من هو المستعلم هو ليس ذلك فقط و هو معرفة من راسل الكبسولة و انما هناك جدول خاص لكل جهاز مثل تماما جهاز switch كل جهاز له هذا الجدول و لكن ليس اسمه جدول توجيه لأن الأجهزة لا توجه و انما ترسل و يسمى هذا الجدول ب ARP cash و يحتوى هذا الجدول على جميع MAC لكل الأجهزة الأخرى فى نفس النطاق اذا عملية ARP عموما هدفها بناء جدول ARP cash لكل جهاز ...
نتابع الأن ...
عند مراجعة حقل المصدر سيراجع الجهاز الذى يقوم بالرد جدول ARP cash الخاص به ليتأكد من وجود هذا العنوان ام لا .
اذا لم يجده سوف يعتبره تسجيل او ادخال جديد لجدول ARP cash و اذا وجده اذا قد تم التعامل مع هذا الجهاز من قبل و لكن لابد من تلبية طلب تعارفه لا مشاكل فى ذلك سيبقى كما هو فى جدول ARP cash .
اذا الأن الجهاز سيحضر رد الكبسولة و سنطلق على الرد اسم رد طلب تعارف او
ARP reply unicast frame و لكن لماذا الكبسولة كبسولة بث مباشر طبعا لأنها سوف تحمل فقط كل من MAC المصدر و MAC الوجهه فقط اى انها موجهه الى جهاز A و هو المستعلم ..
و سيكون الرد من جميع الأجهزة بنفس نوع الكبسولة .
اذا شكل الكبسولة هو MAC المصدر هو الجهاز الذى يلبى طلب التعارف و هو جهاز B فى الرسم و حقل MAC الوجهه هو الجهاز المستعلم و لكن كيف عرف الجهاز الذى يحضر الرد ب MAC المستعلم هو كان موجود فى حقل المصدر من كبسولة الاستعلام و ذكرنا انه راجعه حتى يدخله فى جدول ARP cash اذا ستنقلب الحقول فى الكبسولة الأن المصدر يصبح وجهه و الوجهه و هى صيغة F ستصبح مصدر و لكن ليس الأن بصيغة F لان هذا رد و بالتالى لابد ان يحمل MAC الجهاز الذى يقوم بالرد و هو جهاز B فى هذه الحالة .
ما اريد توضيحه انه عند عمل الرد ستكون كبسولة عادية جدا تحمل MAC المصدر للجهاز الذى يحضر الرد و MAC الوجهه يكون الجهاز الذى سبق و استعلم .
نتابع الأن كبسولة الرد ستتجه الى جهاز switch يتفحص الحقول يجد الأن MAC المصدر هو B يراجع جدول التوجيه لهذا ال MAC هل هو موجود ام لا
اذا كان موجود لا مشاكل فقد تم التعامل معه مسبقا
اذا كان غير موجود اذا هذه معلومة جديدة يتعلمها switch سينقل هذا ال MAC الى جدول التوجيه و يعتبر ادخال جديد ثم يربط بينه و بين المنفذ الذى استلم منه الكبسولة سيجده منفذ رقم 2 اذا الأن هناك جهاز يحمل MAC B على منفذ رقم 2
و الأن اتخاذ القرار سيراجع switch حقل الوجهه سيجد MAC A يبحث فى الجدول هل هناك مطابقة بمعنى هل هناك MAC A ام لا ؟؟
سيجد ان هناك MAC A على منفذ رقم 1 اذا مرر الى منفذ رقم 1 ...
هل لاحظتم كيف يتعلم switch انها عملية متداخلة فى حالة ان الشبكة كلها جديدة و تعمل لأول مرة سيتم التعلم هكذا و لكن لو هناك جهاز جديد على الشبكة فالتعلم هنا جزىء فقط بمعنى ان switch سيعرف الجهاز الجديد فقط و باقى الأجهزة كما هى فى جدول التوجيه و التى تعلمها من قبل .
نتابع الأن ...
خرجت الكبسولة من منفذ رقم 1 الى جهاز A و هو المستعلم يستلمها جهاز A الأن
يراجع اولا حقل الوجهه ليتأكد انها له لذلك دائما حقل الوجهه يتم مراجعته اولا لماذا ؟؟؟
لأن لو تم مراجعة حقل المصدر اولا قد تكون هذه الكبسولة ليست له فهنا قد راجع حقل المصدر دون وجود ما يؤكد انها له و لكن نحن على جهاز switch يعنى لازم تكون له و لكن جهاز الكمبيوتر لا يعرف هذا يعنى هو لا يعرف من هو الجهاز الرابط له مع الأجهزة الأخرى بمعنى انه فى غرفة مظلمة لا يرى لأنه لو كان يعرف ان هذا جهاز switch لما كان عليه مراجعة حقل الوجهه لأن دائما ستكون اى كبسولة موجهه اليه هى له طالما انه على جهاز switch لكن الحقيقة هو لا يعرف ...
لذلك سيراجع دائما حقل الوجهه اولا
معنى كل هذا انه جهاز A لو قام بمراجعة حقل المصدر اولا ثم راجع حقل الوجهه و اكتشف ان هذه الكبسولة ليست له لأنها لا تحمل عنوان الوجهه الذى يحمله جهاز A فقد استغرق وقت بلا فائدة . و اخيرا الكبسولة ليست له ...
بعد مراجعة حقل الوجهه اولا و التأكد من ان الكبسولة موجهه لجهاز A سيراجع الأن حقل المصدر لمعرفة من الذى يرد على استعلامه سيجد انه MAC B اذا عرف هنا ان له جار يدعى B و سيراجع الأن فى حالة انه جهاز جديد على النطاق جدول ARP cash لأنه خالى ليس به عناوين و سيتم نقل هذا العنوان الجديد الى هذا الجدول و لكن ماذا لو كان جهاز غير جديد فى النطاق لابد من مراجعة جدول ARP cash ايضا لأن من الممكن يكون هناك جهاز اخر جديد فلابد لجهاز A التأكد من محتويات ARP cash و هل هو دائم التحديث بمعنى يحمل كل البيانات الجديدة ام لا ؟؟؟
يعنى من الممكن ان جهاز A يكون قد تعامل مع جهاز B من قبل لذلك فى هذه الحالة ليس عليه نقل العنوان الجديد الى جدول ARP cash فى حالة عدم وجود عنوان B سوف يتم تثبيته فى الجدول لكن اذا كان موجود فلا مشاكل لقد تم التعامل مع هذا الجهاز من قبل و يبقى كما هو فى جدول ARP cash
اذا فى مثالنا عرف الأن ان هناك جهاز معه اسمه B و لاحظ الرسم ان هناك معلومة اخرى فى جدول ARP cash هو C هذا يعنى ان نفس العملية التى نشرحها الأن تمت مع جهاز C و قد تم وضعه فى جدول ARP cash الخاص بجهاز A
لاحظ ايضا جدول التوجيه لجهاز switch فى الرسم لقد تم بناءه كاملا و يعرف الأن كل عنوان و منفذه فهو جاهز للتوجيه الصحيح ...
نأخذ الأن بعد كل هذا التوضيح مثال غريب ...
ماذا لو حدث ان تم تغيير شريحة الأتصال الخاصة بجهاز C مثلا اذا فى هذه الحالة سيتغير MAC C الى MAC اخر هل سيقوم C بعمل ARP ؟؟؟
نعم طبعا هو كما هو يعلم باقى الأجهزة و لكنه يريد اخبارهم بالتغير سوف يتم هذا بارسال ARP جديد من جهاز C حامل MAC الجديد هل هذا يعنى ان ARP يحدث عدة مرات ؟؟؟
فى الحقيقة ARP يحدث كل زمن معين و هذا لضمان معرفة اى تغيرات جديدة قد تحدث على النطاق بمعنى ان ARP يحدث كل زمن معين من الأجهزة يكون بسبب ان الأجهزة تريد تحديث جدول ARP cash الخاص بها مع اى تغيرات جديدة .
و سنجد ايضا ان switch يقوم كل زمن معين بتفريغ جدول التوجيه كاملا ثم تعلمه من جديد اعتقادا منه انه قد يحدث تغيرات فى اى وقت كأن ينقل مثلا جهاز من الأجهزة على منفذ جديد له
و نظرا ان عملية ARP ينتج عنها حجم مرور كبير جدا بسبب كبسولات broadcast فقد تم تعيين زمن كبير لاعادة عملية ARP قد يكون مثلا كل 5 دقائق و لكن ماذا لو تم ادخال جهاز جديد فى خلال الخمس دقائق لا مشاكل بمجرد ان الجهاز الجديد يحس بوجود كابل تم تركيبه له مباشرة يبث ARP للجميع .
و السبب فى كبر وقت اعادة عملية ARP هو اتاحة وقت لكى تستطيع الشبكة نقل بيانات فعلا حتى لا تزدحم الشبكة بكبسولات البث العام و هو ما سنطلق عليه بعد ذلك بعواصف البث العام او broadcast storms يعنى لو تخيلنا ان ARP يحدث كل 2 ثانية اذا هذه الشبكة مخصصة لهذه العملية فقط و لن يكون هناك نقل بيانات .
من الواضح اننا لاحظما عملية تعلم جهاز switch ضمن عملية تعلم الأجهزة لبعضها المسألة الأن بسيطة جدا
كل كبسولة تدخل الى switch يراجع حقل المصدر ثم يراجع جدول التوجيه
هل العنوان موجود بالجدول
اذا كان الجواب نعم لا مشاكل انتقل الى حقل الوجهه ثم الى جدول التوجيه هل عنوان الوجهه موجود ام انه بث عام ثم اتخاذ القرار لو موجود اذا تمرير الى منفذه لو بث عام اذا الى جميع المنافذ
اذا كان عنوان المصدر غير موجود اذا انقل الى جدول التوجيه هذه معلومة جديدة ثم تابع عملية اتخاذ القرار .
لنراجع الأن كل جهاز من الذى شرحناه و الطابق الخاص به لوظيفة عمله من طوابق الكبسلة او OSI model انظر الرسم
لاحظنا فى الرسم فى الطابق الثالث Network layer جهاز جديد " راوتر" اوRouter سيكون لنا معه دروس كثيرة فى المستقبل انشاء الله
بقى لنا شىء مهم و هو حجم الذاكرة لشريحة الاتصال NIC
كما علمنا ان جهاز switch يملك لكل منفذ عليه ذاكرة سريعة اطلقنا عليها اسم buffer size تملك ايضا شريحة الاتصال نفس الذاكرة buffer size و يمكن التحكم فى حجمها من خلال نظام التشغيل المستعمل على الجهاز و وظيفة هذه الذاكرة نفس وظيفتها فى جهاز switch فهى تقوم بتخزين الاشارات القادمة فى حالة الضغط حتى تستطيع الشريحة متابعة عملها و هو طبعا فك الكبسولة و معرفة ما بها من معلومات .
و لكن هل هناك طريقة او استراتيجية لمحاولة تخفيف او التحكم فى سير او تدفق الاشارات
سنعلم هذا عند الدخول فى دروس بروتوكول TCP الرائع و المثير فى عمله فهو يستخدم كأداة للتحكم فى حجم التدفق للاشارات و ايضا يحمل خاصية التصحيح و التقطيع و التصفيف واعادة البث لأى قطعة مفقودة او تالفة . و لذلك سوف نطلق عليه انه من بروتوكولات تصحيح الأخطاء عموما او ما ذكرناها من قبل فى الدروس السابقة connection oriented protocol لذلك سنجد فى دروسه انه يستخدم فى معظم بروتوكولات التعامل الأساسية التى لا غنى عنها مثل مثلا FTP او HTTP او SMTP و POP3 و Bittorrent هذه طبعا اشهرها .
ننتقل الى اخر جزء فى هذا الدرس وهو امكانية جهاز switch من التمرير الى منافذ مختلفة فى السرعة
Asimitric switching and semitric switching
الخاصية الأولى و هى Asimitric اى التمرير الى المنافذ المختلفة فى السرعة
يعنى لو يملك منفذ مربوط عليه جهاز HUB مثلا بسرعة 10 ميجا / ث و منفذ اخر يعمل بسرعة 100 ميجا / ث يستطيع التمرير و مراعاة السرعة بين المنفذين
اما الخاصية الثانية simitric و هى طبعا خاصية التمرير الى المنافذ المتساوية فى السرعة
و يستطيع ان يقوم بكلا العمليتين فى نفس الوقت .
الى اللقاء فى الدرس السابع و اعتذر يا اخوانى عن بعض التأخير الذى سوف يصاحب نشر هذه الدروس نظرا لأنشغالى بالمذاكرة لأن الامتحانات على الأبواب دعواتكم لى فانا فى حاجة اليها
و الله ولى التوفيق ...
المصطلحات
unicast نوع كبسولة موجهه الى جهاز بعينه
broadcast نوع كبسولة موجهه الى جميع الأجهزة فى النطاق
simitric خاصية فى جهاز switch و هى التوجيه او التمرير الى المنافذ المتساوية فى السرعة
asimitric خاصية بجهاز switch و هى التمرير الى المنافذ المختلفة فى السرعة
FTP بروتوكول نقل او تبادل الملفات عن طريق الانترنت بين جهاز شخصى و خادم خاص لهذا النوع من التنزيل
HTTP بروتوكول التصفح او الخاص بعرض صفحات الويب
SMTP بروتوكول الخاص بالبريد الالكترونى و يحتاج الى خادم خاص لتشغيل خدمات البريد الالكترونى
POP3 بروتوكول خاص للبريد الالكترونى و يمكن عن طريقه تخزين الرسائل و استدعائها و يمكن ايضا من تصفع اى بريد اخر لك من احد الحسابات الخاصة ببريد ك الالكترونى
Bittorrent بروتوكول جديد فى عملية نقل الملفات عن طريق المشاركة و هو تطوير لبروتوكول P2P الشهير ل Kaza و لكن يستخدم هذا البروتوكول نظام جديد عن طريق تنظيم التبادل بين الأشخاص بواسطة خادم و يدعى Tracker او المتعقب
ARP البروتوكول الخاص لتعريف عناوين MAC لكل جهاز للأخر
تحدثنا فى الدرس الخامس عن مميزات جهاز switch وكيفية اداء وظيفته و ما يتبعه من تقسيم النطاق الى نطاقات فرعية و اهمية ذلك فى تقليل حجم المرور فى كل نطاق و عرفنا ايضا انواع البث المستخدمة بين الأجهزة و سنستخدم هذه الأنواع بعد ذلك فى تعريف اى نوع من انواع البث .
و تعرفنا على حقل صحة الكبسولة و وظيفته و عرفنا اهم الأشياء عن جهاز switch و قارنا وظيفته بوظيفة HUB و تحدثنا عن عنصر التأخير او delay و كيفية تقليله باستخدام جهاز switch .
بعد كل هذه المعرفة سيتبقى لنا اشياء بسيطة
اولا : كيف يعرف كل جهاز بعنوان MAC للاجهزة الأخرى فى نفس النطاق حيث انه حان الأن معرفة هذه العمليه
ثانيا : اهمية هذه العملية فى مرحلة تعلم جهاز switch للاجهزة من حوله .
نأخذ النقطة الأولى :
معرفة كل جهاز لعناوين MAC للاجهزة الأخرى حتى يكون قادر على ضغط كبسولة اتصال لأحد الأجهزة او ما سنسميها الأن unicast frame
يستخدم الجهاز المستعلم عن عناوين الأخرين بروتوكول اسمه ARP او Address resulotion protocol و يختص هذا البروتوكول بهذه العملية او عملية حل عناوين MAC لباقى الأجهزة
طريقة عمل هذا البروتوكول :
نبدأ مثال ...
طبعا لازم نتابع الرسم التوضيحى
سنتخيل الأن ان الشبكة التى انشأناها جديدة و تم بداية العمل
كل الأجهزة تريد التعارف على بعضها كأن نكون فى غرفة و لا نعرف بعضنا البعض فلابد من التعارف بيننا حتى نستطيع التحدث و توجيه الحديث الى شخص معين .
الجهاز الأول كما فى الرسم سيقوم الأن بارسال كبسولة تعارف عن طريق بروتوكول ARP و سنطلق عليها هذه الكبسولة ARP request او طلب تعارف و لكن كيف سيكون شكل هذه الكبسولة ؟؟
سوف تحتوى على الأتى
حقل MAC المصدر يحمل عنوان الجهاز المستعلم
اما حقل MAC الوجهه سيحمل صيغة تعريفية بنفس شكل صيغة MAC address
و سوف تكون هكذا FF-FF-FF-FF-FF-FF كأن هذه الصيغة هى علامات استفهام مثلا ؟؟-؟؟-؟؟-؟؟-؟؟-؟؟ هذه الصيغة اذا ما وجدت فى حقل الوجهه سميت كبسولة التعارف هنا كبسولة بث عام او broadcast يعنى لابدان يتم استلامها من كل الأعضاء لذلك سوف نطلق الأن على هذه العملية اسم ARP broadcast من الجهاز المستعلم .
و لكن ما معنى broadcast طبعا نحن نعلم الأن انها كبسولة هدفها محادثة الجميع كأنك فى نفس الغرفة تريد ان تتعرف على باقى الأعضاء ماذا ستقول " يا اخوانى مرحبا اريد التعرف عليكم" هذه هى الصيغة لاحظ ان كلمة "يا اخوانى" حددت ان الحديث الى الجميع و هذا ما نطلق عليه broadcast فأجاب الجميع كل بأسمه مثلا " احمد و على و راشد " اذا الأن انت تعرف اسماء الجميع فعند محادثة راشد سوف تقوم بنداء اسمه اولا " يا راشد" ثم تتحدث اذا علم راشد هنا ان الحديث موجهه له و هذا هو اسلوب بث unicast ..
نفس الفكرة سنطبقها معا ....
تابع الرسم
لاحظ فى الرسم الجهاز الذى يحمل MAC A يريد معرفة باقى الأعضاء هو لا يعلم ان هناك اعضاء كأنه فى غرفة مظلمة لا يرى احد لذلك لابد من ارسال هذه الكبسولة و سنجد ان هذا ينبطق فى حالة ادخال جهاز جديد على النطاق مثلا فهذه الكبسولة بمثابة ضوء للجهاز لمعرفة هل هناك احد ام انه بمفرده و سينتظر الرد سيقوم الجهاز الأن الحامل ل MAC A بارسال كبسولة ماذا ؟؟؟؟ تمام ARP broadcast request حاملة فى حقل MAC الوجهه صيغة F السابقة فى حالة عدم وجود اى اجهزة ربط مثل HUB او switch ستذهب الكبسولة الى باقى الأعضاء مباشرة لأننا هنا قد صنفنا على اننا فى بيئة مشاركة يعنى اى جهاز يستقبل اى كبسولة مرسلة سواء كانت ARP او لا
حالة اذا ما وجد جهاز HUB ايضا كل الأعضاء سيستلموا الكبسولة لأننا نعرف وظيفة جهاز HUB اما حالة switch نحن نعلم ان هذا الجهاز يمرر حسب القرار الصحيح اذا كيف سيستلم جميع الأعضاء الكبسولة ؟؟؟؟
هنا توجب على جهاز switch ان يمرر الكبسولة الى جميع المنافذ و لكن كيف فهو لا يعمل بهذا المنطق لا ..
هو سيعمل بهذا المنطق فى حالة واحدة و هى حالة broadcast فقط اذا هو ايضا قرار من جهاز switch عندما يستلم الكبسولة سيراجع حقل الوجهه سيجد صيغة F سيعلم هنا ان هذه الكبسولة بث عام اذا لابد على الجميع استلامها و بالتالى سيمرر الى جميع المنافذ .
شىء اخر و هو ليس فقط يقوم بمراجعة حقل الوجهه و لكن سيتحقق من حقل المصدر لماذا؟؟
هذا جزء من عملية تعلم جهاز switch .
عند مراجعة حقل المصدر سيتأكد الجهاز هنا من وجود او عدم وجود MAC المصدر فى جدول التوجيه الخاص به
اذا اذاوجد لا مشاكل يتابع عمله بتمرير الكبسولة الى جميع المنافذ
لكن اذا لم يوجد فى جدول التوجيه ماذا يحدث ؟؟
سيعلم هنا ان هذا الجهاز جديد اذا لابد من تسجيل هذا العنوان الجديد و ربطه بالمنفذ المستلم منه فى الرسم نجد ان جهاز switch قد احتفظ بعنوان MAC المصدر و قام بربطه بمنفذ رقم 1 لأنه استلمه من هذا المنفذ .
و الأن ستقوم كل الأجهزة باستقبال الكبسولة و ستعمل الأتى...
سيراجع كل جهاز حقل MAC المصدر لمعرفة من هو المستعلم ثم تقوم بمراجعة حقل MAC الوجهه ستجد هنا ان الصيغة هى صيغة F و بالتالى ستعرف الأن ان هذه الكبسولة هى كبسولة استعلام عن MAC .
الأن ستقوم الأجهزة الأخرى بتجهيز الرد و لكن سنتوقف هنا قليلا لتوضيح شىء مهم ...
عند مراجعة الأجهزة المستلمة لكبسولة التعارف ARP سوف تتحقق من حقل المصدر لمعرفة
من هو المستعلم هو ليس ذلك فقط و هو معرفة من راسل الكبسولة و انما هناك جدول خاص لكل جهاز مثل تماما جهاز switch كل جهاز له هذا الجدول و لكن ليس اسمه جدول توجيه لأن الأجهزة لا توجه و انما ترسل و يسمى هذا الجدول ب ARP cash و يحتوى هذا الجدول على جميع MAC لكل الأجهزة الأخرى فى نفس النطاق اذا عملية ARP عموما هدفها بناء جدول ARP cash لكل جهاز ...
نتابع الأن ...
عند مراجعة حقل المصدر سيراجع الجهاز الذى يقوم بالرد جدول ARP cash الخاص به ليتأكد من وجود هذا العنوان ام لا .
اذا لم يجده سوف يعتبره تسجيل او ادخال جديد لجدول ARP cash و اذا وجده اذا قد تم التعامل مع هذا الجهاز من قبل و لكن لابد من تلبية طلب تعارفه لا مشاكل فى ذلك سيبقى كما هو فى جدول ARP cash .
اذا الأن الجهاز سيحضر رد الكبسولة و سنطلق على الرد اسم رد طلب تعارف او
ARP reply unicast frame و لكن لماذا الكبسولة كبسولة بث مباشر طبعا لأنها سوف تحمل فقط كل من MAC المصدر و MAC الوجهه فقط اى انها موجهه الى جهاز A و هو المستعلم ..
و سيكون الرد من جميع الأجهزة بنفس نوع الكبسولة .
اذا شكل الكبسولة هو MAC المصدر هو الجهاز الذى يلبى طلب التعارف و هو جهاز B فى الرسم و حقل MAC الوجهه هو الجهاز المستعلم و لكن كيف عرف الجهاز الذى يحضر الرد ب MAC المستعلم هو كان موجود فى حقل المصدر من كبسولة الاستعلام و ذكرنا انه راجعه حتى يدخله فى جدول ARP cash اذا ستنقلب الحقول فى الكبسولة الأن المصدر يصبح وجهه و الوجهه و هى صيغة F ستصبح مصدر و لكن ليس الأن بصيغة F لان هذا رد و بالتالى لابد ان يحمل MAC الجهاز الذى يقوم بالرد و هو جهاز B فى هذه الحالة .
ما اريد توضيحه انه عند عمل الرد ستكون كبسولة عادية جدا تحمل MAC المصدر للجهاز الذى يحضر الرد و MAC الوجهه يكون الجهاز الذى سبق و استعلم .
نتابع الأن كبسولة الرد ستتجه الى جهاز switch يتفحص الحقول يجد الأن MAC المصدر هو B يراجع جدول التوجيه لهذا ال MAC هل هو موجود ام لا
اذا كان موجود لا مشاكل فقد تم التعامل معه مسبقا
اذا كان غير موجود اذا هذه معلومة جديدة يتعلمها switch سينقل هذا ال MAC الى جدول التوجيه و يعتبر ادخال جديد ثم يربط بينه و بين المنفذ الذى استلم منه الكبسولة سيجده منفذ رقم 2 اذا الأن هناك جهاز يحمل MAC B على منفذ رقم 2
و الأن اتخاذ القرار سيراجع switch حقل الوجهه سيجد MAC A يبحث فى الجدول هل هناك مطابقة بمعنى هل هناك MAC A ام لا ؟؟
سيجد ان هناك MAC A على منفذ رقم 1 اذا مرر الى منفذ رقم 1 ...
هل لاحظتم كيف يتعلم switch انها عملية متداخلة فى حالة ان الشبكة كلها جديدة و تعمل لأول مرة سيتم التعلم هكذا و لكن لو هناك جهاز جديد على الشبكة فالتعلم هنا جزىء فقط بمعنى ان switch سيعرف الجهاز الجديد فقط و باقى الأجهزة كما هى فى جدول التوجيه و التى تعلمها من قبل .
نتابع الأن ...
خرجت الكبسولة من منفذ رقم 1 الى جهاز A و هو المستعلم يستلمها جهاز A الأن
يراجع اولا حقل الوجهه ليتأكد انها له لذلك دائما حقل الوجهه يتم مراجعته اولا لماذا ؟؟؟
لأن لو تم مراجعة حقل المصدر اولا قد تكون هذه الكبسولة ليست له فهنا قد راجع حقل المصدر دون وجود ما يؤكد انها له و لكن نحن على جهاز switch يعنى لازم تكون له و لكن جهاز الكمبيوتر لا يعرف هذا يعنى هو لا يعرف من هو الجهاز الرابط له مع الأجهزة الأخرى بمعنى انه فى غرفة مظلمة لا يرى لأنه لو كان يعرف ان هذا جهاز switch لما كان عليه مراجعة حقل الوجهه لأن دائما ستكون اى كبسولة موجهه اليه هى له طالما انه على جهاز switch لكن الحقيقة هو لا يعرف ...
لذلك سيراجع دائما حقل الوجهه اولا
معنى كل هذا انه جهاز A لو قام بمراجعة حقل المصدر اولا ثم راجع حقل الوجهه و اكتشف ان هذه الكبسولة ليست له لأنها لا تحمل عنوان الوجهه الذى يحمله جهاز A فقد استغرق وقت بلا فائدة . و اخيرا الكبسولة ليست له ...
بعد مراجعة حقل الوجهه اولا و التأكد من ان الكبسولة موجهه لجهاز A سيراجع الأن حقل المصدر لمعرفة من الذى يرد على استعلامه سيجد انه MAC B اذا عرف هنا ان له جار يدعى B و سيراجع الأن فى حالة انه جهاز جديد على النطاق جدول ARP cash لأنه خالى ليس به عناوين و سيتم نقل هذا العنوان الجديد الى هذا الجدول و لكن ماذا لو كان جهاز غير جديد فى النطاق لابد من مراجعة جدول ARP cash ايضا لأن من الممكن يكون هناك جهاز اخر جديد فلابد لجهاز A التأكد من محتويات ARP cash و هل هو دائم التحديث بمعنى يحمل كل البيانات الجديدة ام لا ؟؟؟
يعنى من الممكن ان جهاز A يكون قد تعامل مع جهاز B من قبل لذلك فى هذه الحالة ليس عليه نقل العنوان الجديد الى جدول ARP cash فى حالة عدم وجود عنوان B سوف يتم تثبيته فى الجدول لكن اذا كان موجود فلا مشاكل لقد تم التعامل مع هذا الجهاز من قبل و يبقى كما هو فى جدول ARP cash
اذا فى مثالنا عرف الأن ان هناك جهاز معه اسمه B و لاحظ الرسم ان هناك معلومة اخرى فى جدول ARP cash هو C هذا يعنى ان نفس العملية التى نشرحها الأن تمت مع جهاز C و قد تم وضعه فى جدول ARP cash الخاص بجهاز A
لاحظ ايضا جدول التوجيه لجهاز switch فى الرسم لقد تم بناءه كاملا و يعرف الأن كل عنوان و منفذه فهو جاهز للتوجيه الصحيح ...
نأخذ الأن بعد كل هذا التوضيح مثال غريب ...
ماذا لو حدث ان تم تغيير شريحة الأتصال الخاصة بجهاز C مثلا اذا فى هذه الحالة سيتغير MAC C الى MAC اخر هل سيقوم C بعمل ARP ؟؟؟
نعم طبعا هو كما هو يعلم باقى الأجهزة و لكنه يريد اخبارهم بالتغير سوف يتم هذا بارسال ARP جديد من جهاز C حامل MAC الجديد هل هذا يعنى ان ARP يحدث عدة مرات ؟؟؟
فى الحقيقة ARP يحدث كل زمن معين و هذا لضمان معرفة اى تغيرات جديدة قد تحدث على النطاق بمعنى ان ARP يحدث كل زمن معين من الأجهزة يكون بسبب ان الأجهزة تريد تحديث جدول ARP cash الخاص بها مع اى تغيرات جديدة .
و سنجد ايضا ان switch يقوم كل زمن معين بتفريغ جدول التوجيه كاملا ثم تعلمه من جديد اعتقادا منه انه قد يحدث تغيرات فى اى وقت كأن ينقل مثلا جهاز من الأجهزة على منفذ جديد له
و نظرا ان عملية ARP ينتج عنها حجم مرور كبير جدا بسبب كبسولات broadcast فقد تم تعيين زمن كبير لاعادة عملية ARP قد يكون مثلا كل 5 دقائق و لكن ماذا لو تم ادخال جهاز جديد فى خلال الخمس دقائق لا مشاكل بمجرد ان الجهاز الجديد يحس بوجود كابل تم تركيبه له مباشرة يبث ARP للجميع .
و السبب فى كبر وقت اعادة عملية ARP هو اتاحة وقت لكى تستطيع الشبكة نقل بيانات فعلا حتى لا تزدحم الشبكة بكبسولات البث العام و هو ما سنطلق عليه بعد ذلك بعواصف البث العام او broadcast storms يعنى لو تخيلنا ان ARP يحدث كل 2 ثانية اذا هذه الشبكة مخصصة لهذه العملية فقط و لن يكون هناك نقل بيانات .
من الواضح اننا لاحظما عملية تعلم جهاز switch ضمن عملية تعلم الأجهزة لبعضها المسألة الأن بسيطة جدا
كل كبسولة تدخل الى switch يراجع حقل المصدر ثم يراجع جدول التوجيه
هل العنوان موجود بالجدول
اذا كان الجواب نعم لا مشاكل انتقل الى حقل الوجهه ثم الى جدول التوجيه هل عنوان الوجهه موجود ام انه بث عام ثم اتخاذ القرار لو موجود اذا تمرير الى منفذه لو بث عام اذا الى جميع المنافذ
اذا كان عنوان المصدر غير موجود اذا انقل الى جدول التوجيه هذه معلومة جديدة ثم تابع عملية اتخاذ القرار .
لنراجع الأن كل جهاز من الذى شرحناه و الطابق الخاص به لوظيفة عمله من طوابق الكبسلة او OSI model انظر الرسم
لاحظنا فى الرسم فى الطابق الثالث Network layer جهاز جديد " راوتر" اوRouter سيكون لنا معه دروس كثيرة فى المستقبل انشاء الله
بقى لنا شىء مهم و هو حجم الذاكرة لشريحة الاتصال NIC
كما علمنا ان جهاز switch يملك لكل منفذ عليه ذاكرة سريعة اطلقنا عليها اسم buffer size تملك ايضا شريحة الاتصال نفس الذاكرة buffer size و يمكن التحكم فى حجمها من خلال نظام التشغيل المستعمل على الجهاز و وظيفة هذه الذاكرة نفس وظيفتها فى جهاز switch فهى تقوم بتخزين الاشارات القادمة فى حالة الضغط حتى تستطيع الشريحة متابعة عملها و هو طبعا فك الكبسولة و معرفة ما بها من معلومات .
و لكن هل هناك طريقة او استراتيجية لمحاولة تخفيف او التحكم فى سير او تدفق الاشارات
سنعلم هذا عند الدخول فى دروس بروتوكول TCP الرائع و المثير فى عمله فهو يستخدم كأداة للتحكم فى حجم التدفق للاشارات و ايضا يحمل خاصية التصحيح و التقطيع و التصفيف واعادة البث لأى قطعة مفقودة او تالفة . و لذلك سوف نطلق عليه انه من بروتوكولات تصحيح الأخطاء عموما او ما ذكرناها من قبل فى الدروس السابقة connection oriented protocol لذلك سنجد فى دروسه انه يستخدم فى معظم بروتوكولات التعامل الأساسية التى لا غنى عنها مثل مثلا FTP او HTTP او SMTP و POP3 و Bittorrent هذه طبعا اشهرها .
ننتقل الى اخر جزء فى هذا الدرس وهو امكانية جهاز switch من التمرير الى منافذ مختلفة فى السرعة
Asimitric switching and semitric switching
الخاصية الأولى و هى Asimitric اى التمرير الى المنافذ المختلفة فى السرعة
يعنى لو يملك منفذ مربوط عليه جهاز HUB مثلا بسرعة 10 ميجا / ث و منفذ اخر يعمل بسرعة 100 ميجا / ث يستطيع التمرير و مراعاة السرعة بين المنفذين
اما الخاصية الثانية simitric و هى طبعا خاصية التمرير الى المنافذ المتساوية فى السرعة
و يستطيع ان يقوم بكلا العمليتين فى نفس الوقت .
الى اللقاء فى الدرس السابع و اعتذر يا اخوانى عن بعض التأخير الذى سوف يصاحب نشر هذه الدروس نظرا لأنشغالى بالمذاكرة لأن الامتحانات على الأبواب دعواتكم لى فانا فى حاجة اليها
و الله ولى التوفيق ...
المصطلحات
unicast نوع كبسولة موجهه الى جهاز بعينه
broadcast نوع كبسولة موجهه الى جميع الأجهزة فى النطاق
simitric خاصية فى جهاز switch و هى التوجيه او التمرير الى المنافذ المتساوية فى السرعة
asimitric خاصية بجهاز switch و هى التمرير الى المنافذ المختلفة فى السرعة
FTP بروتوكول نقل او تبادل الملفات عن طريق الانترنت بين جهاز شخصى و خادم خاص لهذا النوع من التنزيل
HTTP بروتوكول التصفح او الخاص بعرض صفحات الويب
SMTP بروتوكول الخاص بالبريد الالكترونى و يحتاج الى خادم خاص لتشغيل خدمات البريد الالكترونى
POP3 بروتوكول خاص للبريد الالكترونى و يمكن عن طريقه تخزين الرسائل و استدعائها و يمكن ايضا من تصفع اى بريد اخر لك من احد الحسابات الخاصة ببريد ك الالكترونى
Bittorrent بروتوكول جديد فى عملية نقل الملفات عن طريق المشاركة و هو تطوير لبروتوكول P2P الشهير ل Kaza و لكن يستخدم هذا البروتوكول نظام جديد عن طريق تنظيم التبادل بين الأشخاص بواسطة خادم و يدعى Tracker او المتعقب
ARP البروتوكول الخاص لتعريف عناوين MAC لكل جهاز للأخر



