EtherChannel چيست؟

همانطور كه مي دانيم اگر بين دو سوئيچ بيش از يك لينك ترانك وجود داشته باشد، پروتكل STP (Spanning Tree Protocol ) تنها يك لينك را بصورت فعال نگه داشته و مابقي لينكها را بمنظور جلوگيري از ايجاد لوپ Block مي كند.حال اگر لينك فعال Down شود، STP يكي از لينكهايي را كه Block كرده بصورت فعال در مي آورد تا ارتباط بين دو سوئيچ برقرار بماند.

سوالي كه مطرح است اين است كه اگر بخواهيم بطور همزمان چند لينك فعال بين دو سوئيچ داشته باشيم، با توجه به عملكرد STP از چه روشي بايد استفاده كنيم.
بمنظور افزايش تعداد لينكهاي بين دو سوئيچ به بيش از يك لينك ( از دو لينك تا هشت لينك ) از Ether Channel استفاده مي كنيم. مكانيزم Ether Channel بدين صورت مي باشد كه تمام لينكهاي بين دو سوئيچ را يك لينك مجازي تحت عنوان Port Channel در نظر گرفته و STP نيز كليه لينكها را بصورت يك لينك ديده در نتيجه تمام لينكهاي بين دو سوئيچ بصورت Active باقي مي مانند.

پكتهايي كه بين دو سوئيچ جابجا مي شوند بسته به نوع الگوريتم Aggregation مي تواند بر اساس Source Mac ، Destination Mac ، Source IP ، Destination IP و يا تركيب آنها Load Balance شوند.

براي راه اندازي Ether Channel دو پروتكل Aggregationوجود دارد :

-      پروتكل PAGP كه مختص محصولات سيسكو مي باشد.

-      پروتكل LACP كه روي تمام محصولات قابل پياده سازي مي باشد.

پروتكل PAGP داراي سه مد On ، Desirable وAuto مي باشد.

پروتكل LACP داراي سه مد On ، Active و Auto مي باشد.

مد Active در اين پروتكل معادل Desirable پروتكل PAGP و مد Passive در اين پروتكل معادل مد Auto در پروتكل PAGP مي باشد.

تفاوت سه مد پروتكل PAGP به شرح ذيل مي باشد :

-      وقتي يك پورت سوئيچ را در مد Desirable قرار مي دهيم بدين معني است كه اين پورت به پورت مقابل خود پيشنهاد Aggregation مي دهد. اگر طرف مقابل در مد Auto و يا Desirable تنظيم شده باشد، پيشنهاد Aggregation را پذيرفته و لينك به حالت Aggregate در مي آيد.

-      وقتي يك پورت سوئيچ را در مد Auto تنظيم مي كنيم، در صورتي اين پورت Aggregate مي شود كه پورت مقابل پيشنهاد Aggregate شدن ارسال كند و اين امر زماني محقق خواهد شد پورت مقابل در مد Desirable باشد.

نكته اي كه بايد به آن توجه شود اين است كه وقتي يك پورت را به مد On مي بريم، پروتكل Aggregation غيرفعال مي شود. در اين حالت وقتي Aggregation بين دو سوئيچ برقرار خواهد شد كه هر دو پورت در حالت On باشد.

اگر هر دو پورت را در مد Auto قرار دهيم، Aggregation اتفاق نخواهد افتاد.

حالتهاي فوق را در ادامه مطلب بر روي دو سوئيچ پياده و نتايج را مشاهده خواهيم كرد.

 

پياده سازي Ether Channel

مطالبي كه در قسمت پياده سازي بيان مي شود توسط نرم افزار GNS3 پياده سازي و خروجي آن در اينجا ذكر مي گردد.

فرض كنيد دو سوئيچ داريم كه مي خواهيم بين آنها دو لينك برقرار كنيم كه همزمان هردو لينك فعال باشند.با عنايت به مطالب فوق ناچاريم دو لينك فوق را بصورت يك لينك مجازي تحت عنوان Port Channel تعريف كنيم.


Etherchannel



ابتدا بر روي دو سوئيچ Show Spanning-tree مي گيريم تا ببينيم هر دو لينك فعال مي باشد يا STP تنها يك لينك را فعال و ما بقي لينكها را Block كرده است :

2960A# Show spanning-tree

Interface         Role            Sts              Cost            Prio.Nbr     Type

Fa0/2              Desg           FWD

Fa0/3              Desg           FWD

وضعيت هر دو لينك در روي سوئيچ 2960A بصورت فعال مي باشد، بنابراين در روي سوئيچ ديگر يكي از لينكها در وضعيت Block خواهد بود :

2960B# Show spanning-tree

Interface         Role            Sts              Cost            Prio.Nbr     Type

Fa0/2              Root           FWD

Fa0/3              Altn            BLK

ابتدا سوئيچ 2960B را كانفيگ مي كنيم:

2960B(config)#Interface range fastethernet 0/2-3

2960B(config-if-range)#channel-protocol pagp

2960B(config-if-range)#channel-group 1 mode Auto

روي يك سوئيچ 6-1 تا Channel Group  ميتوان ايجاد كرد.

مد را Auto قرار داديم يعني تا سوئيچ 2960A پيشنهاد aggregation ندهد، سوئيچ فوق نسبت به تشكيل Channel Group هيچ اقدامي نخواهد كرد.

براي اطلاع از وضعيت اينترفيسهاي 4و5 پس از كانفيگ فوق از دستور زير استفاده مي كنيم :

2960B#Show Interface Status

Port           Status                          Vlan                 Duplex             Speed              Type

Fa0/1         Disable                                    1                      auto                 auto                 10/100Tx

Fa0/2         notconnected              trunk                a-full                a-100               10/100

Fa0/3         notconnected              trunk                a-full                a-100               10/100

…..             ……                               …                     …..                   ….                    …..

حال وارد سوئيچ 2960A شده و تنظيمات مربوط به EtherChannel  را بر روي آن انجام ميدهيم:

2960A(config)#Interface range fastethernet 0/2-3

2960A(config-if)#Channel-protocol pagp

2960A(config-if-range)#channel-group 1 mode Desirable

قاعدتاً با انجام تنطيمات فوق بر روي سوئيچ 2960A مي بايست EtherChannel تشكيل شود. با استفاده از دستور ذيل مطلب فوق را چك مي كنيم :

2960A#Show Interface Status

Port           Status                          Vlan                 Duplex             Speed              Type

Fa0/1         Disable                                    1                      auto                 auto                 10/100Tx

Fa0/2         connected                   trunk                a-full                a-100               10/100

Fa0/3         connected                   trunk                a-full                a-100               10/100

…..                ……                                     …                …..                 ….                    …..

Po1            connected                   trunk                a-full                …                     ….

اگر به خروجي دستور فوق دقت كنيم متوجه خواهيم شد كه وضعيت اينترفيسهاي 4و5 بصورت Connected و Trunk تغيير وضعيت داده است.

در ضمن يك Port channel نيز تشكيل شده است.

براي اطلاع از وضعيت Port channel تشكيل شده، از دستور زير استفاده مي كنيم :

2960A# show Etherchannel 1 summary

Group             port-channel        protocol               ports

1                      po1(su)              pagp         Fa0/2(p)  Fa0/3(p

همانطور كه در خروجي دستور فوق مي بينيم يك port channel  بر روي سوئيچ داريم كه اينترفيسهاي 2 و 3 داخل اين port channel قرار دارند و port channel فوق بصورت لايه دويي Up شده است.

SU: Switch Up, Fa0/2(p) -> p : in port channel

بطور كلي port channel را بسته به كاربر آن مي توان لايه دويي ( مانند مثال فوق ) يا در لايه سه يا يك سمت لايه دو و سمت ديگر را لايه سه تعريف كرد.