زیر ساخت شبکه, مقالات

تمام آنچه که باید در مورد Auto-Negotiation بدانید

 Auto-Negotiation قابلیتی است که به پورت روی سوئیچ، روتر، سرور یا دستگاه دیگر اجازه می‌ دهد تا با دستگاه در انتهای دیگر لینک ارتباط برقرار کند تا حالت دوطرفه و سرعت بهینه برای اتصال را تعیین کند. سپس درایور به صورت دینامیک رابط را با مقادیر تعیین شده برای لینک پیکربندی می کند.

Auto-Negotiation چیست؟

Auto-Negotiation یا Negotiation Speed به مکانیزم سیگنال دهی اشاره دارد که به رابط های اترنت دو دستگاه متصل اجازه می دهد تا سرعت بهینه و حالت duplex اتصال را تعین کنند. به عنوان مثال، روتر های سیمی از این رابط ها برای برقراری ارتباط با دستگاه های موجود در شبکه محلی خود استفاده می کنند. پارامتر های Auto-Negotiation را می توان به طور خودکار توسط خود دستگاه ها یا به صورت دستی تنظیم کرد، بنابراین مهم است که به نحوه بهینه سازی آن برای بهترین اتصالات در ساختار شبکه خود توجه کنید.

هنگام بحث در مورد Auto-Negotiation، چند اصطلاح وجود دارد که باید در نظر داشته باشید:

Interface – این یک پورت فیزیکی را در یک دستگاه شبکه معین، مانند روتر، سوئیچ، سرور یا هاب توصیف می کند که قادر به انتقال داده از یک دستگاه به دستگاه دیگر است.

Speed – معمولاً بر حسب مگابیت در ثانیه (Mbps) نمایش داده می شود و نرخ هر رابط است. اینترفیس ها می توانند دارای نرخ سرعت اترنت 10 مگابیت بر ثانیه، 100 مگابیت بر ثانیه و 1000 مگابیت بر ثانیه باشند که به عنوان اترنت گیگابیت نیز شناخته می شود.

Duplex – به نحوه انتقال داده ها بر روی رابط اشاره دارد. اینترفیس ها می توانند half duplex یا full duplex باشند:

رابط های half duplex فقط می توانند داده ها را در یک زمان ارسال یا دریافت کنند. به عنوان مثال، یک هاب (مانند چاپگر، بلندگو و غیره) همیشه این حالت است، زیرا تنها یک دستگاه می‌ تواند همزمان با آن ارتباط برقرار کند. به همین دلیل است که آنها دیگر به ندرت مورد استفاده قرار می گیرند.

از سوی دیگر، رابط های Full-Duplex می توانند داده ها را به طور همزمان ارسال و دریافت کنند. به عنوان مثال، یک سوئیچ یا تلفن یک رابط full duplex است که به چندین دستگاه در شبکه شما امکان می دهد همزمان با هم ارتباط برقرار کنند.

Auto-Negotiation چگونه کار می کند؟

Auto-Negotiation پروتکلی است که در بند 28 IEEE 802.3 مشخص شده است. استانداردی که یک هدف ساده، هرچند مهم دارد: ایجاد بهترین حالت ارتباط بین دستگاه ها. در اینجا خلاصه ای کوتاه از آنچه در طول فرآیند Auto-Negotiation اتفاق می افتد آورده شده است:

هر رابط پارامتر های خود را از طریق پالس های لینک سریع (FLP) به اشتراک می گذارد: حالت دوطرفه (full duplex یا half duplex) و سرعت اترنت (10، 100، 1000 مگابیت در ثانیه)

رابط‌ ها بالاترین نرخ انتقال را انتخاب می‌ کنند که هر دو می‌ توانند برای دستیابی به بالاترین عملکرد پشتیبانی کنند:

رابط A و رابط B را تصور کنید. رابط A توانایی حفظ سرعت 10، 100 یا 1000 مگابیت در ثانیه را در half یا full duplex دارد. با این حال، رابط B تنها می تواند به سرعت 10 یا 100 مگابیت در ثانیه در حالت half duplex یا full duplex دست یابد. در این سناریو، بهترین گزینه ممکن انتقال با سرعت 100 مگابیت بر ثانیه full duplex است. طبیعتاً بالاترین سرعت بر کمترین ترجیح داده می شود و فول duplex نتایج بهتری نسبت به دیگری به دست می آورد.

اصطلاحات مربوط به Auto Negotiation

سرعت یا Speed

سرعت، نرخ رابط است که معمولاً بر حسب مگابیت در ثانیه (Mbps) ذکر می شود. سرعت های رایج اترنت شامل 10 مگابیت بر ثانیه، 100 مگابیت در ثانیه و 1000 مگابیت بر ثانیه است. اترنت 1000 مگابیت بر ثانیه به عنوان اترنت گیگابیتی نیز شناخته می شود.

Duplex

Duplex به نحوه جریان داده ها در رابط اشاره دارد.

در یک رابط half duplex، داده ها فقط می توانند در هر زمان معین ارسال یا دریافت شوند. مکالمه در یک رادیو دو طرفه معمولاً نیمه دوطرفه است – هر شخص باید یک دکمه را فشار دهد تا صحبت کند و در حین صحبت کردن، آن شخص نمی تواند گوش دهد.

از طرف دیگر، یک رابط full duplex می تواند داده ها را به طور همزمان ارسال و دریافت کند. مکالمه تلفنی full duplex است.

Half duplex

در یک محیط half duplex، خط گیرنده (Rx) نظارت می شود. اگر فریمی در لینک Rx وجود داشته باشد، تا زمانی که خط Rx مشخص نشود، هیچ فریمی ارسال نمی شود. اگر فریمی در خط Rx دریافت شود در حالی که فریمی در خط فرستنده (Tx) ارسال می شود، برخورد رخ می دهد. برخورد ها باعث می شوند شمارشگر خطای برخورد افزایش یابد – و فریم ارسالی دوباره ارسال شود.

اصطلاحات مربوط به Auto Negotiation

Full duplex

در عملیات فول duplex، خط Rx نظارت نمی شود و خط Tx همیشه در دسترس در نظر گرفته می شود. برخورد در حالت تمام duplex رخ نمی دهد زیرا خطوط Rx و Tx کاملا مستقل هستند.

اصطلاحات مربوط به Auto Negotiation

Misconfiguration

هنگامی که یک طرف لینک full duplex و طرف دیگر half duplex باشد، تعداد زیادی برخورد در سمت half duplex رخ می دهد.

اصطلاحات مربوط به Auto Negotiation

از آنجایی که طرف فول duplex فریم ‌ها را بدون بررسی خط Rx ارسال می‌ کند، اگر دستگاه شلوغی باشد، به احتمال زیاد فریم ‌ها را دائما ارسال می‌ کند.

استفاده از Auto-Negotiation به آسانی به یاد آوردن یک قانون ساده است:

مطمئن شوید که هر دو طرف لینک به یک شکل پیکربندی شده اند.

اگر یک طرف لینک روی Auto-Negotiation تنظیم شده است، مطمئن شوید که طرف دیگر نیز روی Auto-Negotiation تنظیم شده است. اگر یک طرف روی 100/full تنظیم شده است، مطمئن شوید که طرف دیگر نیز روی 100/full تنظیم شده است. در مورد استفاده از 10/full مراقب باشید، زیرا full duplex در همه دستگاه های اترنت 10Base-T پشتیبانی نمی شود.

بیشتر بخوانید: تفاوت Half Duplex و Full Duplex

آنچه که باعث می شود Auto-Negotiation انجام نشود

هنگامی که Auto-Negotiation در یک پورت فعال است، به طور خودکار پیکربندی پورت در طرف دیگر کابل اترنت را تعیین نمی کند و سپس با آن مطابقت نمی کند. این یک تصور غلط رایج است که اغلب منجر به مشکلات می شود.

Auto-Negotiation  یک پروتکل است و مانند هر پروتکلی، فقط در صورتی کار می کند که در دو طرف لینک اجرا شود.

بنابراین اگر یک طرف لینک در حال

Auto-Negotiation باشد، و طرف دیگر لینک اجرا نشود،

Auto-Negotiation نمی‌تواند سرعت و پیکربندی دوطرفه طرف دیگر را تعیین کند.

اگر Auto-Negotiation در طرف دیگر لینک اجرا شود، دو دستگاه با هم در مورد بهترین سرعت و حالت Duplex تصمیم می گیرند. هر رابط سرعت و حالت‌ های Duplex را که می‌ تواند در آن کار کند، تبلیغ می‌ کند و بهترین تطابق انتخاب می‌ شود (سرعت بالاتر و full duplex ترجیح داده می ‌شود).

هنگامی که Auto-Negotiation با شکست مواجه می شود:

هنگامی که Auto-Negotiation در 100/10 لینک با شکست مواجه می شود، محتمل ترین علت این است که یک طرف لینک روی 100/full تنظیم شده است و طرف دیگر روی Auto-Negotiation تنظیم شده است. این باعث می شود یک طرف 100/full و طرف دیگر 100/half باشد.

Auto-Negotiation در اترنت 

دیده شده است که مشکلات شبکه به طور منظم در کار های روزمره یک مهندس شبکه ظاهر می شود، و زمانی که این اتفاق می افتد، بیشتر نتیجه دستگاه های نادرست پیکربندی یا مدیریت نادرست است. می توانیم به شما بگوییم که طبق تجربه ما، مسائل مربوط به Auto-Negotiation یکی از رایج ترین مشکلاتی است که در یک شبکه دیده ایم، و این چیز خوبی است زیرا پیدا کردن آنها آسان است (اگر می دانید چگونه کار می کند و می دانید کجا باید نگاه کنید) و به سرعت قابل اصلاح است.

Auto-Negotiation در دستگاه های اترنت چیست؟

Auto-Negotiation روی لایه فیزیکی مدل OSI کار می‌ کند و به یک پورت در یک سوئیچ اترنت شبکه، روتر، سرور یا دستگاه‌ های دیگر اجازه می‌ دهد تا با دستگاه‌ های متصل در انتهای دیگر لینک ارتباط برقرار کند تا مشخص کند کدام حالت دوطرفه، سرعت و جریان چیست و کنترل بهترین عملکرد را خواهد داشت.

سپس درایور نرم افزار شبکه پیکربندی خودکار را بر روی رابط به مقادیر تعیین شده برای پیوند انجام می دهد.

تاریخچه Auto Negotiation چیست؟

گفتیم که Auto-Negotiation اولین بار در سال 1995 توسط IEEE معرفی شد.

بند 28 استاندارد IEEE 802.3u (برای اترنت سریع) و استاندارد IEEE 802.3z استاندارد بند 37 (برای اترنت گیگابیتی).

در ابتدا یک جز اختیاری در استاندارد Fast Ethernet بود. با این حال، با پالس های لینک عادی (NLP) که توسط 10BASE-T استفاده می شود، سازگار است.

بعداً، پروتکل مذاکره خودکار به مشخصات اترنت گیگابیتی گسترش یافت و برای اترنت گیگابیتی 1000BASE-T اجباری است.

لطفا توجه داشته باشید: Auto-Negotiation یک چیز جادویی یا هوش مصنوعی نیست و به طور خودکار فعال نمی شود. برای اینکه Auto-Negotiation کار کند، همیشه باید به صورت دستی اطمینان حاصل کنید که در هر دو طرف درگاه های دستگاه شبکه فعال است. اگر از یک طرف فعال و از طرف دیگر غیرفعال باشد، Auto-Negotiation کار نخواهد کرد.

شما باید یک ویژگی اساسی در Auto-Negotiation به نام تشخیص موازی را بدانید که دارای مزایای زیر است:

تشخیص موازی یا parallel detection زمانی شروع می شود که فرآیند Auto-Negotiation موفق به کشف Auto-Negotiation در انتهای مخالف لینک نشود. سپس، سیگنال دریافتی را به درایور های محلی 10Base-T، 100Base-TX و 100Base-T4 ارسال می کند. اگر هر یک از این درایور ها سیگنال را تشخیص دهند، رابط با آن سرعت تنظیم می شود.

تشخیص موازی فقط سرعت لینک را در نظر می گیرد، نه حالت های duplex پشتیبانی شده را. با این حال، حالت های اترنت سطوح مختلفی از پشتیبانی از duplex را دارند، بنابراین این عاملی است که باید در نظر داشت.

تشخیص موازی همچنین اجازه می‌ دهد تا سرعت لینک در سیستم‌ های قدیمی‌تری که قابلیت Auto-Negotiation را ندارند تنظیم شود.

Auto-Negotiation اترنت زمانی صورت می گیرد که رویداد های زیر رخ دهد:

ابتدا لینک وصل می شود

دستگاهی در دو انتهای لینک روشن می شود

یک دستگاه در حال تنظیم اولیه یا بازنشانی است

درخواست Negotiation مجدد داده می شود

قابلیت های اختیاری Auto-Negotiation

جدا از سرعت و duplex، Auto-Negotiation قابلیت های اختیاری دیگری را نیز ارائه می دهد:

کنترل جریان flow control

نشانگر خطا از راه دور remote fault indication

رابط مدیریت فیزیکی physical management interface

قابلیت مکث نامتقارن یا متقارن asymmetric or symmetric pause capabilities

رابط تشخیص خودکار رسانه یا (MDI) automatic media detection interface

تشخیص کابل متقاطع رابط تشخیص رسانه (MDIX).  Media detection crossover cable detection

بهترین شیوه های Auto Negotiation

یک قانون اساسی: همیشه باید هر دو طرف پورت های لینک را با مجموعه ای از دستورات پیکربندی کنید.

اگر یک طرف لینک روی Auto-Negotiation تنظیم شده باشد، طرف دیگر نیز باید پیکربندی شود.

اگر یک طرف 100/فول است، مطمئن شوید که طرف دیگر نیز فول است. پیکربندی سرعت و duplex را در هر دو طرف پیوند یکسان کنید.

مراحل پیکربندی Auto-Negotiation:

برای نرم افزار Cisco IOS:

در سوئیچ های سیسکو، Auto-Negotiation از قبل به طور پیش فرض روشن است. دستوراتی در IOS وجود دارد که به شما امکان می دهد سرعت و حالت دوطرفه را خودتان تنظیم کنید.

اما قبل از راه اندازی duplex باید ابتدا سرعت را تنظیم کنید وگرنه پورت سوییچ خطای زیر را می دهد.

Switch-2900(config-if)#duplex half

تا زمانی که سرعت روی مقدار غیر خودکار تنظیم نشده باشد، نمی توان Duplex را تنظیم کرد

همچنین، سوئیچ‌ های سیسکو مدرن ممکن است هشدار های بیشتری در مورد تلاش برای راه‌اندازی half duplex در پورت‌ های گیگابیتی به شما بدهند.

SW-3850(config-if)#duplex half

وقتی زیرمجموعه مذاکره خودکار سرعت دارای 1 گیگابیت در ثانیه باشد، نمی توان ٪ Duplex را به نصف تنظیم کرد

برای تغییر سرعت رابط، speed را تایپ کنید. اگر رابط قبلاً تنظیم شده است، می توانید با استفاده از کلمه کلیدی auto آن را به Auto-Negotiation بازگردانید:

Switch-3850(config-if)#speed ?

10 Force 10 Mbps operation

100 Force 100 Mbps operation

1000 Force 1000 Mbps operation

auto Enable AUTO speed configuration –> This is the auto-negotiation mode

پس از تنظیم سرعت، می توانید حالت دوپلکس را تنظیم کنید.

Switch-3850(config-if)#duplex ?

خودکار پیکربندی دوطرفه خودکار را فعال کنید -> این حالت auto-negotiation است

برای نرم افزار Cisco NXOS:

دستورات NX-OS مانند IOS هستند:

Nexus-5K(config)#int e1/5

Nexus-5K(config-if)#speed ?

10 Force 10 Mbps operation

100 Force 100 Mbps operation

1000 Force 1000 Mbps operation

auto Enable AUTO speed configuration –> This is the auto-negotiation mode

NX-5K(config-if)#

NX-5K(config-if)#speed 1000

NX-5K(config-if)#duplex full

منابع: afrozahmad، techopedia، fiberoptics4sale و mercku