عرض مشاركة واحدة
قديم 12-14-2010, 10:41 PM   #1
احمد علي ( ابو مصطفى )
:: سيسكو نشيط ::
 
تاريخ التسجيل: Aug 2010
المشاركات: 201
شكراً: 35
تم شكره 44 مرة في 11 مشاركة
احمد علي ( ابو مصطفى ) will become famous soon enough
افتراضي ما هو ال Auto Negotiation بالمختصر المفيد ؟



ما هو ال Auto Negotiation ؟

ال Auto Negotiation هو بروتوكول Protocol يسمح لل ports على جهاز ال Switch او ال Router او ال Server أو اي جهاز شبكة اخر بالتواصل مع الجهاز على الطرف الاخر من ال Link ( والذي يسمى Link Partner ) من اجل الاتفاق على ال Duplex Mode وعلى ال Speed ثم بعد ذلك يتم اعداد ال Link على حسب ذلك.

الان ما هي ال Speed وما هو ال Duplex Mode ؟

Speed: هي سرعة ال Interface وعادة ما تقاس بال Mbps واكثرها شيوعا هو 10 Mbps و 100 Mbps و 1000 Mbps او ما يسمى بال Gigabit Ethernet .

Duplex Mode: يشير الى كيفية جريان ال Data على ال Interface , في حالة ال Half Duplex فان ال Interface يستطيع ان يرسل او يستقبل ال Data في اي وقت (مثل جهاز ال Walkie Talkie انت تضغط على زر والطرف الاخر يستمع ثم يضغط هو ويتحدث وانت تستمع) , اما في حالة ال Full Dulpex فان ال Interface يستطيع ان يرسل ويستقبل ال Data في ان واحد (مثل جهاز الهاتف فانت تستطيع ان تتحدث وتستمع الى الطرف الاخر في ان واحد).

متي يتفعل ال Auto Negotiation ؟

يتفعل عندما يكون ال Link في حالة initialization ولا يستطيع ال Link ان يقوم بارسال اي بيانات في هذه الحالة قبل ان تنتهي عملية ال Auto Negotiation ويمر ال Link في هذه الحالة اذا ما :
  • تم تشغيل الجهاز لاول مرة.
  • تم ربط cable بين الطرفين لاول مرة (او اذا ما تم فصله ثم اعادة ربطه مرة اخرى)
  • اذا ما تم تفعيل ال Port اي استخدام ايعاز (No Shutdown) وهي طريقة يستخدمها ال Network Administrators لتفعيل ال Auto Negotiation ( اي تقوم باطفاء ال Port ثم تعيد تشغيله لكي تجبره ان يمر بعملية ال Auto Negotiation مرة ثانية).


الان كيف يعمل ال Auto Negotiation ؟

قبل ان نتحدث عن كيفية عمل ال Auto Negotiation نتحدث عن ما لا يقوم به ال Auto Negotiation, ال Auto Negotiation لا يقوم بالتعرف على الاعدادت على طرف من السرعة وال duplex mode ثم يطابقها على الطرف الاخر, هذا مفهوم خاطئ غالبا ما يقود الى المشاكل.

ال Auto Negotiation هو بورتوكول كما اشرنا اعلاه وكما هو حال اي بروتوكول فانه كي يقوم بعمله بنجاح يجب ان يعمل على الطرفين, فما الذي يحدث اذا كان يعمل على الطرفين وماذا يحدث اذا كان لا يعمل على احد الطرفين؟

اذا كان يعمل على الطرفين يحدث التالي :
  • يقوم الطرفين بالاعلان عن امكانياته من خلال اشارة تسمى (Fast Link Pulse FLP) (مثلا ان يقول احدهما انا استطيع ان اعمل على السرع 10Mbps و 100 Mbps كما انني ادعم ال Full Duplex و ال Half Duplex, بينما يقول الطرف الاخر انا ادعم سرعة 100 Mbps وادعم ال Full Duplex)
  • يقوم الطرفين بالاتفاق سويا على اختيار الافضل وبصورة تلقائية يقومون باعداد ال Link على حسب ذلك.

افضل الاعدادات هي اعلى سرعة يدعمها الطرفان (لاحظ انها اعلى سرعة يدعمها الطرفان السرعة وليس اعلى سرعة موجودة) واذا كان الطرفان يدعمان ال Full Duplex يتم اختياره, وبالتالي في مثالنا اعلاه فان الطرفان يختاران 100 Mbps وال Full Duplex ويقومان باعداد ال Link على هذه الاساس.

اما اذا كان ال Auto Negotiation لا يعمل على احد الطرفين ويعمل على الاخر يحدث التالي:
  • يتم استخدام تقنية ال Parallel Detection التي هي ميكانيكة تعمل فقط حينما لا يجد ال Auto Negotiation ان الطرف الاخر لديه Auto Negotiation مفعل عنده, ال Parallel Detection يستطيع تحديد سرعة الطرف الاخر من خلال اشارة تسمى ( Normal Link Pulse NLP) يستطيع من خلالها معرفة السرعة ما اذا كانت 10 Mbps او 100 Mbps, لكنه لا يستطيع معرفة امكانيات الطرف الاخر فيما يخص ال Duplex Mode.
  • يتم اختيار Half Duplex لل Duplex Mode .

سبب اختيار ال Half Duplex لل Duplex Mode وليس Full Duplex هو ان ال 10 Mbps لم يتم تصميمه لكي يعمل Full Duplex (ولو انه يوجد 10 Mbps يعمل Full Duplex) فهو في الغالب Half Duplex كما ان ال 100 Mbps تم تصميمه ليعمل Full Duplex لكن تم اعداده افتراضيا ليعمل على half duplex (لذا يجب ان تقوم بتغييره الى Full Duplex يدويا اذا اردت ذلك) لذا كان من الاسلم ان يتم اختيار ال half duplex بدل ال Full Duplex لكي يتطابق مع الاكثر شيوعا.

الان ما هي مشاكل ال Auto Negotiation ومتى تحدث ؟

تحدث المشكلة مع ال Auto Negotiation حينما يكون مفعل على طرف والطرف الاخر تم تعطيل ميزة ال Auto Negotiation (او انه لا يدعمها ) وقد تم اعداده على 100/Full, هنا ال Auto Negotiation سوف يستخدم ال Parallel Detection الذي ينجح في معرفة السرعة ويتم اختيار 100Mbps في حالة مثالنا اعلاه , اما ما يخص ال Duplex فان طرف ال Auto Negotiation يقوم باختيار Half Duplex كما هو مبين اعلاه (هذا التصرف هو المقياس العالمي اي انه ليس فقط اجهزة سيسكو تقوم بذلك )على عكس الطرف الاخر الذي هو Full Duplex, فهنا تحدث المشكلة والتي تسمى بال Duplex Mismatch اي ان ال Duplex Mode لا يتطابق على الطرفين احدهما Full Duplex والاخر Half Duplex على ال Link ذاته.

عندما يكون لدينا Duplex Mismatch يحدث التالي:
  • ال Interface الذي يعمل على half duplex يقوم بالاستماع الى ال link باستخدام ال CSMA/CD لكي يتأكد انه غير مشغول حاليا بنقل data لكي يقوم هو بارسال بياناته لانه لا يمكن ارسال واستلام البيانات على نفس ال Link في ان واحد في ال half duplex mode.
  • اما ال Interface الذي يعمل على Full Duplex فانه لا يستمع الى ال Link لانه غير مضطر الى ذلك حيث انه يمكن ان يرسل ويستلم في اي وقت لذلك يقوم بارسال بياناته بدون توقف.
Auto Negotiation بالمختصر المفيد

وبذا فان ال Interface الذي يعمل half duplex يصعب عليه استخدام ال Link حيث ان طرف ال Full Duplex يستخدمه باستمرار مما يسبب بطئ الجهاز في الشبكة واذا حدث وارسل data فانه غالبا ما سيحدث Collision (تضارب) مع بيانات الطرف الاخر وكلما حدث Collision فان عداد ال Collision يزداد يمكنك الاطلاع على عداد ال Collision من خلال هذا الايعاز (Show Interface Fastethernet 0/1 counters errors طبعا هذا الامر يتغير على حسب مواصفات ال Interface اذا كان ethernet او gigabit ethernet) مما سيظهر عدد كبير من ال Collisions على طرف ال half duplex.

كيف تكتشف ال Duplex Mismatch ؟
  1. بطئ في الشبكة.
  2. عدد كبير من ال Collisiion وهي شئ يجب ان لا يحدث في عالم ال Switch.
  3. وهذه هي الاهم هو انك بعد انتهاء عملية ال Auto Negotiation تجد ان الطرف الذي يدعم ال Auto Negotiation قد تم اعداده ال 100/half (على الرغم من كون الاعداد الافتراضي لل 100 Mbps هو half duplex لكن نادرا ما يترك على هذا ال Mode وغالبا ما يتم اعداده على Full Duplex) وهذا غالبا ما يعني ان الطرف الاخر قد تم الغاء تفعيل ميزة ال Auto Negotiation لدية وتم اعداده ال 100/Full مما يسبب حدوث مشكلة.
  4. عندما تشك في وجود مشكلة في ال Auto Negotiation ادخل الى وضع ال config وقم بكتابة هذا الامر ( Terminal Monitor) وسوف تظهر لك رسالة صريحة تخبرك عن وجود Duplex Mismatch.

ما هو الذي ينصح به او ال Best Practice في الحياة العملية في ما يخص ال Auto Negotiation:
  • التأكد دائما من ان الاعدادات على طرفي ال Link متطابقة.
  • يجب ترك ال Auto Negotiation فعال, وهذا ما تنصح به كبرى الشركات مثل Cisco و Juniper و Dell و hp وان لا تقوم بالغاء تفعيله الا في حال اضطررت الى ذلك لا ن الطرف الاخر لا يدعم خاصية ال Auto Negotiation وحتى في هذه الحالة يجب ان يكون هذا الحل مؤقت الى ان تحل مشكلة الطرف الاخر.
  • ان تضع في عين الاعتبار المفاهيم السابقة وان تقوم بتحري اعدادات ال Interface.
  • التأكد من جودة ال Media اي ال Cable لانه حتى في حال نجح ال Auto Negotiation فان اداء ال Media او الوسط الحامل يؤثر على السرعة ويسبب مشاكل اخرى.

الان كيف يتم اعداد ال Auto Negotiation على اجهزة سيسكو؟

يتم اعداد ال Speed وال Duplex Mode على نطاق ال Port الواحد اي انك يجب ان تكون ضمن اعدادت ال Port في نظام ال IOS :

ملاحظة: قبل البدء باعدادات ال Port يجب ان تقوم باعداد ال Speed قبل ال Duplex واذا قمت بذلك ستظهر لك رسالة خطأ:
Sw2950(config-if)# duplex half
Duplex can not be set until speed is set to non-auto value

الان نقوم باعداد ال Speed:
Sw2950(config-if)# speed ?
10 Force 10 Mbps operation
100 Force 100 Mbps operation
Auto Enable Auto speed configuration

حيث ال 10 لل 10 Mbps وال 100 لل 100 Mbps وال Auto لتفعيل ال Auto Negotiation
الموضوع الأصلى من هنا: منتديات سيسكو التعليمية | كن بين الخبراء ! http://www.ciscovb.com/vb/t2244.html#post15785


والان نقوم باعداد ال Duplex Mode:
Sw2950(config-if)# duplex ?
Auto Enable Auto duplex configuration
full Force full duplex operation
half Force half-duplex operation


حيث ال half لل half duplex mode وال full لل full duplex mode وال Auto لتفعيل ال Auto Negotiation.

الان ماذا يحدث اذا كان ال Auto Negotiation لا يعمل على الطرفين:
  • اذا كان الطرفان يعملان على نفس السرعة اي كلاهما 10 Mbps وا 100 Mbps يعمل ال Link اما اذا كان احد الطرفين يعمل على 10 mbps والاخر يعمل على 100 Mbps فلا يحدث اتصال نهائيا No Link.
  • اذا كان الطرفان على نفس ال Duplex Mode يعمل بدون مشاكل اما اذا كان احدهما يعمل على ال full duplex والاخر على half duplex فان ال link يحدث او يعمل لكن يحدث لدينا Duplex Mismatch.


اخيرا اود الاشارة الى ان هذه المقالة تحدثت عن السرع 10 Mbps و 100 Mbps ولم تتحدث عن 1000 Mbps او ال Gigabit Ethernet حيث اننا سوف نتحدث عنها في مقالة خاصة ان شاء الله لان موضوعها مهم خاصة مع تطور التقنية في ايامنا هذه التي تشهد ظهور ال 40 Gigabit وال 100 Giagabit.

للمزيد قم بقراءة كتاب Network Warrior حيث انه مصدر معظم المعلومات اعلاه وتجده في منتدانا اضغط هنا

وكما يمكنك ان تقرأ عن ال Auto Negotiation هنا





lh i, hg Auto Negotiation fhglojwv hgltd] ? auto-negotiation


التعديل الأخير تم بواسطة احمد علي ( ابو مصطفى ) ; 12-14-2010 الساعة 10:47 PM
احمد علي ( ابو مصطفى ) غير متواجد حالياً   رد مع اقتباس
3 أعضاء قالوا شكراً لـ احمد علي ( ابو مصطفى ) على المشاركة المفيدة:
مبرمج المستحيل (02-14-2011), networkinglife (12-16-2010), سيسكو 1 (12-15-2010)
 

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36