درس چهل و سوم: مفاهیم و پیاده سازی EtherChannel

مفاهیم و پیاده سازی EtherChannel

 

 

 

 

مفهوم EtherChannel

EtherChennel ( که از این پس آنرا به اختصار EC خواهیم نوشت) قابلیتی است که در آن چندین پورت فیزیکی از سوئیچ A با چندین پورت فیزیکی از سوئیچ B تجمیع و ترکیب میشوند و یک channel group ایجاد میکنند که کل این Channel Group فیزیکی بصورت یک پورت منطقی در نظر گرفته میشود.

Concept etherchannel

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

  • افزایش پهنای باند: پهنای باند تمام لینک های فیزیکی موجود در Etherchannel جمع زده میشود. یعنی یک etherchannel که در آن چهار پورت fastethernet از یک سوئیچ و چهار پورت Fastethernet از سوئیچ دیگر در آن وجود دارند، ( هر کدام با 100Mbps سرعت ) دارای 400Mbps پهنای باند خواهد بود که بسیار عالی است . یعنی مجموع پهنای باند لینک ها.
  • ایجاد قابلیت fault tolerance : تا زمانی که یکی از لینک های فیزیکی enable باشد، پورت منطقی آماده به کار خواهد بود. یعنی اگر 8 لینک فیزیکی وجود داشته باشد، 7 لینک fail شده باشد، همان یک لینک فعال باعث فعال بودن و فعال محسوب شدن پورت منطقی Etherchannel خواهد بود.
  • ایجاد قابلیت Load Balancing : طبعا وقتی چند لینک همگروه وجود داشته باشد، قابلیت Load balancing نیز وجود دارد.

در پیکربندی EtherChannel باید نکات ذیل را مد نظر قرار داد:

  • نیازی نیست که پورت های شرکت کننده در EC از نظر فیزیکی به ترتیب و پشت سرهم باشند. میتوان بعنوان مثال پورت های 2 و 7 و 17 و 21 یک سوئیچ را در EC قرار داد. حتی لازم نیست پورت های فوق در یک ماژول باشند.
  • پورت های فوق باید از نظر Speed و Duplex یکسان باشند.
  • پورت های فوق Enable باشند.
  • از یک سوئیچ میتوان 2 یا 4 یا 8 پورت را در EC قرار داد.
  • تمام پورت ها باید از یک نوع باشند. یعنی همگی FastEthernet یا همگی Gigabit Ethernet باشند.

 

 

استفاده از EtherChannel در STP

 EC یکی از بهترین راههای پایین آوردن STP Convergence Time نیز محسوب میشود چون قابلیت Fault Tolerance موجود در EC باعث میگردد که نیاز به convergence مجدد کمتر و کمتر شود. بعنوان مثال در شکل ذیل اگر یکی از لینک های فیزیکی موجود در EC بین SW1 و SW2 قطع شود، لینک دیگر ارتباط را ادامه میدهد و نیازی به convergence نخواهد بود.

EC with STP

چون از نظر منطقی و از نظر STP فقط یک لینک بین SW1 و SW2 قرار دارد یعنی STP فقط یک لینک بین دو سوئیچ فوق می بیند در حالیکه لینک فوق شاید در اصل شامل دو یا چهار یا هشت لینک فیزیکی باشد و صرفا زمانی از نظر STP لینک بین این دو سوئیچ قطع شده محسوب میشود که هر هشت لینک فیزیکی fail شود و ارتباط فیزیکی بین دو سوئیچ از بین برود. توجه داشته باشید که اگر بین دو سوئیچ چند لینک داشته باشید ولی EC را فعال و پیکربندی نکرده باشید، STP غیر از یکی بقیه را block یا discard خواهد بود پس صرف وجود چند لینک کافی نیست بلکه باید EC روی لینک ها پیکربندی شود.

 EC در لایه 2 و لایه 3 مدل OSI میتواند عمل کند. EC در هر دو لایه لینک ها را ترکیب میکند. در EC لایه دو از منطق سوئیچینگ برای ارسال / دریافت فریم ها استفاده میشود ولی در EC لایه سه از منطق routing . در این درس درباره EtherChannel  لایه دو خواهیم خواند.

 

 

پروتکل های مدیریتی مورد استفاده

 دو پروتکل برای مدیریت EC وجود دارد:

  • PAgP : پروتکل انحصاری شرکت سیسکو است. از این پروتکل فقط زمانی میتوان استفاده کرد که طرفین EC حتما و فقط متعلق و ساخته شرکت Cisco باشد.
  • LACP : پروتکلی است عمومی که توسط شرکتهای متعددی ( از جمله سیسکو) پشتیبانی میشود و مناسب زمانی است که سوئیچ های شما از شرکت های مختلفی می باشند.

 

 

مدهای EtherChannel

EC در مدهای مختلفی به شرح ذیل عمل میکند:

  • On : این مد باعث فعال شدن EC روی پورت ها میشود اما بدون ارسال هیچگونه پیام LACP و PAgP
  • Auto : در این مد پورت هیچ پیام PAgP ارسال نمی کند در نتیجه قادر به ایجاد مذاکره PAgP بین دو سوئیچ نیست اما میتواند به پیامهای PAgP سوئیچ مقابل پاسخ دهد.
  • Desirable : در این مد پورت میتواند پیامهای PAgP را ایجاد و به سوی سوئیچ مقابل ارسال کند و مذاکره PAgP را آغاز نماید.
  • Passive : در این مد پورت نمی تواند هیچ پیام LACP را ارسال کند پس نمی تواند یک مذاکره LACP را آغاز کند ولی قادر به پاسخگویی به پیامهای LACP طرف مقابل می باشد.
  • Active : در این مد پورت میتواند پیامهای LACP را ایجاد و فوروارد کند و مذاکره LACP را آغاز نماید.

 

 

پیکربندی EtherChannel بصورت دستی

ساده ترین راه برای پیکربندی EC اینست که پورت هایی از دو سوئیچ را درون Channel-group قرار دهیم و مد On را انتخاب کنیم. فرض کنید که قصد دارید EC را بین دو سوئیچ ذیل بصورت دستی پیکربندی کنیم:

EC manualy Example

  1. روی سوئیچ Sw1 به ترتیب وارد محیط کانفیگ اینترفیس های fa 0/7 و fa 0/14 شده و دستور ذیل را وارد می کنیم:

Channel-group 1 mode on

  1. روی سوئیچ Sw2 به ترتیب وارد محیط کانفیگ اینترفیس های fa 0/9 و fa 0/18 شده و دستور ذیل را وارد می کنیم:

Channel-group 2 mode on

  1. اکنون لینک EC بین دو سوئیچ برقرار است و از نظر STP هم یک لینک ( و نه دو لینک) بین دو سوئیچ وجود دارد. یادآوری میشود که اگر بین دو سوئیچ تعدادی لینک برقرار کنید ولی EC را فعال نکنید، STP سریعا غیر از یک لینک بقیه لینک ها را block یا discard میکند تا loop رخ ندهد.

اکنون دستور ذیل که مهمترین دستور show در مبحث EC می باشد را روی سوئیچ SW1 وارد کنید:

Show etherchannel summary

با خروجی ذیل مواجه خواهید شد:

43-4 sh ec summary

ابتدا لیستی از flag های EC را مشاهده می کنید که به مرور با معنای هر یک آشنا خواهید شد. سپس در بدنه اصلی جواب، ابتدا تعداد channel-group های مورد استفاده را نشان میدهد که یک می باشد. سپس در برابر عبارت number of aggregators تعداد کل channel-group ها را نشان میدهد که باز هم یک است.

آنگاه در ذیل ستون group شماره channel-group را نشان میدهد. لینک منطقی ساخته شده از نوع port-channel است پس در ذیل ستون port-channel نام اختصاص یافته به آنرا نشان میدهد که Po1 است. چرا 1 ؟ چون شماره channel-group که ساخته ایم یک است. داخل پرانتز عبارت SU وجود دارد. با مشاهده راهنمای بالا خواهیم دید که S به معنای اینست که port-channel یا در واقع EC از نوع لایه 2 است. U نیز به معنای این است که port-channel فوق در حال استفاده می باشد. چون از هیچکدام از پروتکل های PAgP و LACP استفاده نکرده ایم زیر ستون پروتکل فقط یک خط تیره وجود دارد. از همینجا مشخص میشود که EC نه به صورت خودکار بلکه به صورت manually و دستی ایجاد شده است. نهایتا هم در زیر ستون port، پورت های فیزیکی موجود در این port-channel یا channel-group مشخص شده اند. حرف p که در کنار هر کدام قرار دارد به این معناست که این پورت ها مرحله اعتبارسنجی برای حضور در port-channel Po1 را با موفقیت پشت سر گذاشته اند.

پورت های fa 0/9 و fa 0/18 در سوئیچ sw2 در فرآیند EC شرکت کردند. این دو پورت عضو VLAN 1 هستند. اکنون دستور show spanning-tree vlan 1 را روی سوئیچ SW2 وارد می کنیم:

43-5 sh stp vlan

مشاهده می کنید که در قسمت Root ID یک خط اضافه شده است به نام port که داخل پرانتز port channel 2 نوشته شده است یعنی این سوئیچ دارای یک port channel 2 است. یعنی یک لینک EC بین این سوئیچ و یکی از سوئیچ های مجاورش وجود دارد. کمی پایین تر زیر ستون interface متوجه میشویم که این port-channel به نام Po2 شناخته میشود. دارای نقش root است و در وضعیت forward قرار دارد و port-type آن از نوع  shared است. نکته خیلی ریزی که وجود دارد اینست که خط port موجود در قسمت Root ID صرفا زمانی قابل مشاهده خواهد بود که سوئیچ فوق در VLAN فوق root نباشد.

در EC بجای قرار گرفتن MAC Address پورت های فیزیکی موجود در port-channel در MAC Address Table فقط MAC خود Port-channel در جدول فوق قرار می گیرد و برای ارسال / دریافت فریم ها از این MAC استفاده میشود.

 

پیکربندی EtherChannel بصورت خودکار

گفته شد که دو پروتکل PAgP و LACP در سوئیچ های سیسکو وجود دارند تا مذاکرات بین دو سوئیچ را بر سر اینکه آیا بین آنها EC برقرار شود یا نه و جزئیات مربوط به این کار  را مدیریت کنند. اگر بر سر ایجاد EC توافق حاصل شد نخستین موردی که باید دو سوئیچ درباره آن تصمیم بگیرند تعداد channel-group هاست. سپس هر کدام از دو سوئیچ میتواند با استفاده از پیامهای این دو پروتکل بین خود و سوئیچ همسایه ( شریک در EC ) تبادل اطلاعات کند و بفهمد که آیا تنظیمات پیکربندی درست انجام شده اند یا نه؟ اگر درست انجام شده باشد، لینک فوق به EC اضافه میشود و مورد استفاده قرار می گیرد. در غیر این صورت، لینک در وضعیت down قرار گرفته و منتظر میماند که مشکلات برطرف شود.

سوئیچ با یکی از مدهای desirable ( برای PAgP ) و Active ( برای LACP ) میتواند مذاکره را شروع کند.

Ec negotiation

همانطور که مشاهده می کنید سوئیچ SW1 قصد شروع مذاکره را دارد. این سوئیچ باید ابتدا مشخص کند که از PAgP میخواهد استفاده کند یا LACP ؟ بسته به انتخابش حال باید channel-group 1 را در یکی از مدهای desirable یا Active ایجاد کند. سوئیچ SW2 متوجه ایجاد ارتباط EC میشود. پس باید پاسخ بدهد. بسته به اینکه سوئیچ SW1 کدام پروتکل را انتخاب کرده باشد، سوئیچ SW2 میتواند با هر کدام از مدهای پروتکل PAgP یا هر کدام از مدهای پروتکل LACP اقدام به ایجاد channel-group 2 کرده و به درخواست برقراری EC پاسخ مثبت بدهد.

در مثال فوق ، سوئیچ SW1 دستور ذیل را در محیط های کانفیگ fa 0/7 و fa 0/14 وارد کرده است:

Channel-group 1 mode desirable

سوئیچ SW2 نیز در محیط کانفیگ اینترفیس های fa 0/9 و fa 0/18 دستور ذیل را وارد کرده است:

Channel-group 2 mode auto

اکنون EC بین دو سوئیچ برقرار شده است.

43-7 sh ec port-channel on sw1

ابتدا شماره group که یک است نمایش داده شده است. سپس شماره port-channel که آنهم طبعا یک می باشد. سپس زمانی که از ایجاد port-channel سپری شده است به نمایش درآمده است. سپس تعداد پورت های فیزیکی موجود در port-channel که دو می باشد نشان داده شده است. وضعیت پورت حاصل هم که port-channel می باشد. پروتکل مورد استفاده هم که PAgP بوده است. Port-security روی این پورت فعلا غیرفعال است.

 

معایب متداول 

در صورتیکه از EC استفاده میکنید جهت پیکربندی صحیح آن باید موارد ذیل حتما رعایت شود:

  • روی یک سوئیچ باید همه دستورات Channel-group از یک شماره مشترک برای channel-group استفاده کنند. یعنی نمی توان چند پورت فیزیکی را در channel-group 1 و چند پورت دیگر را در channel-group 5 قرار داد.
  • هیچ منعی وجود ندارد که شماره channel-group یک سوئیچ متفاوت از شماره channel-group سوئیچ همسایه ( طرف مقابل در رابطه EC ) باشد. مشکلی پیش نمی آید.
  • اگر از مد desirable روی سوئیچ استفاده می کنید، سوئیچ مقابل فقط در مدهای Auto و desirable میتواند قرار داشته باشد.
  • اگر از مد on روی سوئیچ استفاده میکنید، سوئیچ مقابل فقط در مد on باید قرار بگیرد.
  • اگر از مد Active روی سوئیچ استفاده میکنید، سوئیچ مقابل فقط در مدهای Active و Passive باید قرار گیرند.
  • اگر از هر دو سوئیچ در مد auto استفاده کنید چون این مد قابلیت شروع مذاکره را ندارد، هیچ مذاکره ای برقرار نخواهد شد و هر سوئیچ منتظر میماند تا سوئیچ مقابل مذاکره را آغاز کند. یک انتظار بی پایان.
  • همینطور اگر از هر دو سوئیچ در مد Passive استفاده کنید چون این مد قابلیت شروع مذاکره را ندارد، هیچ مذاکره ای برقرار نخواهد شد و هر سوئیچ منتظر میماند تا سوئیچ مقابل مذاکره را آغاز کند.
  • اگر در خروجی دستور show etherchannel summary وضعیت port-channel با حرف D نمایش داده شده است یعنی port-channel ایجاد شده ولی down است. یکی از دلایل down بودن اینست که روی یک سوئیچ از مدهای مربوط به PAgP و روی سوئیچ طرف مقابل از مدهای مربوط به LACP استفاده کرده اید.
  • اگر در خروجی دستور show etherchannel summary در پرانتز جلوی پورت فیزیکی حرف I مشاهده کردید به این معناست که پورت فوق عضو port-channel هست و احتمال دارد connected هم باشد ولی در عمل دارد بصورت مستقل از etherchannel عمل میکند که پیامدهای خود را در مورد تنظیمات STP ایجاد خواهد کرد.

توصیه میشود برای جلوگیری از وقوع اشتباه در پیکربندی etherchannel یک چک لیست از باید / نبایدها قبل از شروع پیکربندی EC برای خود ایجاد کرده و مطابق آن عمل کنید. چک لیست باید حتما شامل موارد ذیل باشد برای پورت هایی که قصد دارید در channel-group آنها را عضو کنید.

  • Speed یکسان
  • Duplex یکسان
  • همه پورت ها یا باید Trunk باشند یا Access
  • اگر پورت ها از نوع Access هستند باید حتما عضو یک VLAN باشند.
  • اگر پورت های فوق بصورت trunk هستند باید اجازه عبور ترافیک VLAN مرتبط به ترافیک EC را با دستور switchport allowed vlan را بدهند.
  • اگر از مد on استفاده میکنید باید پروتکل CDP روی هر دو سوئیچ فعال باشد.
  • اگر سوئیچ مقابل از قبل دارای تنظیمات EC میباشد باید سوئیچی که قصد کانفیگ آنرا داریم از لحاظ PAgP و LACP مطابق با سوئیچ مقابل باشد.
  • نیازی نیست که تنظیمات STP دو سوئیچ یکسان باشند اما پورت های عضو هر channel-group باید دارای تنظیمات STP یکسان باشند. بعنوان مثال باید حتما Port Cost آنها مساوی باشد وگرنه خطای channel-misconfig رخ خواهد داد و port-channel نیز down خواهد شد. زیرا سوئیچ همه پورت های channel-group ( تر و خشک ) بهمراه خود port-channel ایجاد شده را در وضعیت err-disable قرار خواهد داد. برای رفع این مشکل ابتدا باید ناهماهنگی های STP پورت های فوق را برطرف کنید و سپس در محیط کانفیگ تک تک پورت ها و حتی port-channel باید به ترتیب دستورات shutdown و noshutdown را وارد کنید تا از وضعیت err-disable خارج شوند.

 

 

ترمینولوژی

PAgP: Port Aggregation Protocol

LACP: Link Aggregation Control Protocol

ضمایم4

  • Concept etherchannel
  • EC with STP
  • EC manualy Example
  • Ec negotiation
مشاهده همه افزودن یک یادداشت
شما
دیدگاه خود را وارد کنید
رفتن به نوار ابزار