در این بخش می‌توانید در رابطه با شبکه و کلیه مباحث مربوط به آن بحث و تبادل نظر نمایید
Super Moderator

Super Moderator



نماد کاربر
پست ها

1166

تشکر کرده: 0 مرتبه
تشکر شده: 12 مرتبه
تاريخ عضويت

سه شنبه 3 مرداد 1385 11:49

آرشيو سپاس: 3168 مرتبه در 620 پست

<<<<<سوئيچ شبكه چگونه كار مي كند>>>>>>

توسط SHAHRAM » يکشنبه 1 شهریور 1388 14:29

اشاره :
همانطور كه مي دانيد يك شبكه شامل نود ( Node ) يا ايستگاه كاري ، واسطه هاي ارتباطي ( Wired or wireless ) و تجهيزات مخصوص شبكه مانند روتر و سوييچ و هاب ها مي باشد. در محيط اينترنت ، تمامي اين اجزا با هم كار مي كنند تا شما بتوانيد اطلاعاتي را از كامپيوتر خود براي كامپيوتر ديگري به آنسوي دنيا بفرستيد. سوئيچ ها ، از قسمت هاي اساسي بيشتر شبكه ها مي باشند. دستگاه مذكور اين امكان را براي چندين كاربر فراهم مي سازد تا در يك زمان واحد از طريق شبكه اطلاعات را براي هم ارسال كنند. سوئيچ ها به نودهاي مختلف موجود در شبكه اجازه مي دهد مستقيماً و با يك روش آسان و كارآمد به يك نود ديگر متصل شوند. سوييچ هايي كه ارتباط مجزايي را براي هر يك از نودهاي شبكه ايجاد مي كنند به LAN Switches معروف مي باشند. در اين مقاله به بررسي شبكه هاي Ethernet كه در آنها از سوئيچ هاي LAN استفاده شده است ، خواهيم پرداخت. و با سوئيچ LAN ، نحوه كار transparent bridging ، شبكه هاي Trunking , VLAN و Spanning Tree آشنا خواهيد شد.
مفاهيم اوليه شبكه
در اين قسمت به معرفي قسمت هاي اساسي يك شبكه مي پردازيم:


Network : گروهي از كامپيوترها كه به هم متصلند به گونه اي كه انتقال اطلاعات بين آنها ممكن باشد.

Node : يك نود يا گره به بخشي گفته مي شود كه به شبكه وصل مي باشد. به عنوان مثال يك كامپيوتر ، يك پرينتر و يا يك CD-Rom Tower مي تواند به عنوان نود در شبكه وجود داشته باشد.

Segment : هر بخشي از شبكه كه توسط bridge , Switch و يا Router از قسمت هاي ديگر شبكه جدا مي شوند.

Backbone : بستر اصلي در يك شبكه بوده كه تمامي Segment ها به آن وصل مي شوند. به طور نمونه backbone قادر است اطلاعات بيشتري را نسبت به سگمنت هاي منفرد حمل كند. سگمنت در حدود چند مگابيت در ثانيه در صورتيكه يك يك بون مي تواند اطلاعات را با سرعتي حدود چندين مگابيت يا گيگا بيت در ثانيه جابجايي كند.

Topology : نحوه اتصال فيزيكي و سيم بندي نودهاي شبكه به يكديگر را توپولوژي مي گويند.

Local Area Network (LAN) : شبكه محلي ، شبكه اي است از كامپيوترها كه در يك مكان فيزيكي و از نظر جغرافيايي محدود قرار دارند كه معمولاً در يك ساختمان يا فضاي باز مي باشد ولي اگر كامپيوتر در فاصله اي دور از هم ( مثلاً در شهرهاي مختلف ) باشند در اين صورت به آن شبكه گستردهWide Area Network ( WAM ) گفته مي شود.

Network Interface Card (NIC) : هر يك از كامپيوترها و دستگاه هاي ديگر از طريق NIC يا كارت شبكه به شبكه وصل مي شوند.

MAC Address (Media Access Control) : هر يك از كارت هاي شبكه داراي آدرس مي باشند. اين آدرس كه به مك آدرس معروف داراي دو قسمت است و طول هر قسمت 3 بايت است ، اولين قسمت معرف شركت سازنده كارت NIC و قسمت دوم شماره سريال كارت NIC مي باشد.

Unicast : در اين نوع آدرس دهي انتقال اطلاعات از يك نود به آدرس نود ديگر را unicast مي گويند.

Multicast : در آدرس دهي Multicast يك نود ، يك بسته اطلاعاتي را براي گروهي مي فرستد كه اعضاي اين گروه بسته هاي آدرس دهي شده را دريافت مي كنند. به طور مثال ممكن است يك روتر Cisco اطلاعات دست اول را به تمامي روترهاي Cisco ديگر ارسال دارد.

Broadcast : يك نود بسته اطلاعاتي را براي ارسال به تمامي نودهاي موجود در شبكه در نظر گرفته و مي فرستند كه به اين عمل broadcast مي گويند.

در ادامه متداول ترين انواع توپولوژي شبكه را معرفي مي نماييم.
توپولوژي هاي شبكه
متداول ترين انواع توپولوژي عبارتند از :

Bus : هر يك از گره ها ( نودها ) به شكل يك زنجيره ، يكي پس از ديگري به هم متصل و كاملاً شبيه به يك چراغوني شب كريسمس در طول يك بك بون قرار مي گيرند. اطلاعات ارسالي از جانب يك نود در طول يك بك بون حركت كرده و به نود مقصد مي رسد. انتهاي دو سر خط در شبكه Bus به يك مقاومت ختم مي شود كه مقاومت (Resistor) مذكور جهت نگهداري سيگنال هاي ارسالي توسط نود و همچنين جلوگيري از بازگشت مجدد آنها به خط مي باشند.

Ring : در ساختار حلقه اي نيز مانند ساختار Bus ، نودها يكي پس از ديگري زنجيره اي را مي سازند با اين تفاوت كه شبكه به صورت حلقه اي بوده وآخرين نود به اولين نود وصل مي باشد. در يك شبكه حلقه اي هر يك از نودها با استفاده از بسته token به ترتيب اقدام به ارسال و دريافت اطلاعات مي نمايند.

شكل 1


Star : در ساختار توپولوژي ستاره اي كه امروزه به عنوان رايج ترين نوع مي باشد ، هر يك از نودها به يك قطعه مركزي موسوم به hub يا سوييچ متصل مي شوند. دستگاه مذكور سيگنال هاي ارسال شده از جانب هر يك از نودها را دريافت مي دارد و به سمت تمامي نودهاي داخل شبكه مي فرستد. يك هاب در زمينه ف_ * ل*_ ت ر كردن و يا به جريان انداختن ديتا دخالتي ندارد بلكه تنها به منزله يك تقاطعي است كه نودهاي مختلف را به هم وصل مي كند.

شكل 2


Star ـ Bus: اين نوع توپولوژي از تركيب دو نوع توپولوژي Bus و Star تشكيل ميشود كه نتيجه آن ايجاد يك محيط چند كاره مي باشد. نودها در مناطق خاصي ، به يك هاب وصل مي باشند و هاب نيز در طول يك بك بون با يكديگر ارتباط دارند وهر ستاره خود درون يك ستاره ديگر قرا مي گيرد.

در بيشتر توپولوژي ها كه امروزه يافت مي شوند ، نودها به وسيله هاب به يكديگر اتصال مي يابند و با رشد شبكه شاهد مشكلاتي هستيم كه برخي از آنها عبارتند از:

Scalability : در يك شبكه داراي hub ، محدوديت پهناي باند شبكه را با مشكل مواجه مي سازد كه در اين صورت از كارايي شبكه كاسته مي شود. كاركردهاي امروزي شبكه به پهناي باند بيشتري نسبت به گذشته نياز دارد. به منظور ايجاد تناسب با ميزان رشد استفاده از شبكه ، مي بايست در فواصل زماني مشخصي كل شبكه مجدداً طراحي شود.

Latency : مدت زماني را كه به طول مي انجامد تا يك بسته اطلاعاتي به مقصد برسد را Latency گويند. براي جلوگيري از تصادم ياCollision بسته هاي اطلاعاتي با يكديگر ، هر يك از نودها مي بايست براي ارسال بسته اطلاعاتي خود مدت زماني را صبر كند. افزايش تعداد نودها در يك شبكه ، بر مدت زمان تاخيرLatency در ارسال بسته مي افزايد. يا به عبارتي ديگر ، اگر كسي در حال ارسال يك فايل حجيم در داخل شبكه باشد مابقي نودها مي بايد فرصتي را درنگ گرده تا پس از آن بسته هاي اطلاعاتي خود را ارسال كنند. ممكن است قبلا با اين مورد در محل كار مواجه شده باشيد يعني شما سعي داريد تا به يك سرور دست يابيد و ناگهان مشاهده مي كنيد كه همه چيز به كندي پيش مي رود.

Network Failure : در يك شبكه ممكن است يك قطعه متصل به هاب به علت اعمال تنظيمات ناصحيح يا ارسال بي وقفه بسته هاي اطلاعاتي (Broadcast) اشكالاتي براي قطعات ديگر كه متصل به آن هاب هستند بوجود آورد. كه بعنوان مثال براي حل برخي از مشكلات سوئيچ ها به كمك مي آيند مانند جلوگيري از ميزان انتشار بسته هاي اطلاعاتي.

Collisions : يك شبكه Ethernet از فرايندي موسوم به CSMA / CD استفاده مي كند كه مخفف عبارت Carrier Sense Multiple Access with collision Detection ميباشد شبكه اي كه تحت پروسه CSMA/CD مي باشد ، زماني بسته اطلاعاتي ارسال مي شود كه هيچگونه ترافيكي در شبكه وجود نداشته باشد. اگر دو نود در يك زمان مشترك بسته اطلاعات خود را ارسال كنند در اين صورت بين بسته ها برخوردي اتفاق مي افتد كه در نتيجه آن بسته هاي اطلاعاتي از بين مي روند. پس هر دوي آنها زماني را درنگ مي كنند تا بسته خود را مجدداً ارسال دارند هر قسمتي از شبكه كه احتمال برخورد بين بسته هاي ارسالي از جانب دو يا چندين نود در آنجا وجود دارد. به عنوان منطقه برخورد Collision Domain قلمداد مي گردد. اگر شبكه اي تعداد زيادي نود را در يك قسمت ( Segment ) شامل شود در اين صورت تعداد برخورد ( Collision ) بالا و در نتيجه داراي تعداد زيادي منطقه برخورد مي باشد.

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

هاب به منزله يك چهار راه مي باشد كه در آنجا همگي موظفند بايستند. اگر همزمان بيش از يك اتومبيل به چهار راه برسد آنها مي بايد منتظر نوبت خود شوند و سپس حركت كنند.

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

تفاوت اساسي بين يك هاب و يك سوئيچ اين است كه تمام نودهايي كه به هاب متصل مي باشند ، عرض باند را بين خود تقسيم مي كنند حال آنكه عرض باندي كه در حد فاصل بين قطعه و سوئيچ قرار دارد، مختص همان قطعه است. به طور مثال اگر ده عدد نود براي ارتباط از هاب و يك شبكه با عرض باند 10Mbps استفاده كنند. اگر ساير نودها نيز بخواهند به خوبي با هم ارتباط برقرار كنند ، در نتيجه هر يك از نودها ممكن است فقط قسمتي از عرض باند مذكور را استفاده كنند. اما در مورد سوئيچ ، موضوع فرق مي كند هر يك از نودها مي تواند از تمامي عرض باند 10Mbps استفاده كند. در يك خيابان اگر تمام ترافيك به يك تقاطع مشترك برسد پس هر يك از اتومبيل ها موظف است تا تقاطع را بين خود و ديگران تقسيم كنند. اما خيابان هاي شبكه به ترافيك اين امكان را مي دهد تا با تمام سرعت مسير خود را از خياباني به خيابان ديگر ادامه دهد.
شبكه Fully Switched
در يك شبكه Fully Switched ، سوئيچ ها ، هاب هاي يك شبكه Ethernet را با يگ سگمنت مختص به هر يك از نودها عوض مي كند. اين سگمنت ها به سوئيچي وصل مي باشند كه اين سوئيچ چندين سگمنت مربوطه را ساپورت مي كند. از آنجائيكه سوئيچ و نود تنها قطعات موجود در داخل يك سگمنت هستند. در نتيجه ، سوئيچ هر ارسالي را قبل از رسيدن به نود ديگر ، دريافت مي كند و آن را از يك سگمنت مناسب عبور مي دهد. از آنجائيكه هر سگمنت فقط يك نود را تحت پوشش قرار مي دهد ، در نتيجه دامنه اين ساختار به گيرنده مورد نظر ختم مي شود. خصوصيت مذكور در يك شبكه سوئيچ دار اين امكان را مي دهد تا همزمان مكالمات متعددي تحقق يابد. سوئيچينگ ، امكان برقراري يك رابطه كاملا Full Duplex را در شبكه محقق ميسازد. قبل از سوئيچينگ، شبكه به صورت half duplex مي باشد. بدان معنا كه ديتا فقط در يك مسير مي تواند ارسال شود اما در يك شبكه كه از سوئيچ استفاده مي كند ، در هر يك از نودها كه فقط با سوئيچ در ارتباطند و هيچ ارتباطي مستقيمي بين نودها وجود ندارد. در نتيجه اطلاعات مي تواند به صورت همزمان از نود به سوئيچ و از سوئيچ به نود ارسال شود يعني ارتباط Full Duplex است.

در شبكه هاي كاملا سوئيچ شده از كابل هاي نوري Fiber ، optic و يا كابل هاي Twisted Pair استفاده مي شود. در چنين محيطي ، نودها مي توانند از فرايند تشخيص برخورد اطلاعات با يكديگر صرف نظر كنند. از آنجائيكه نودها تنها قطعاتي هستند كه به كابل يا مديا دسترسي دارند در نتيجه مي توانند از جستجو و آشكار كردن برخورد بسته هاي اطلاعاتي صرف نظر كنند و بسته ها را به هر جا كه     مي خواهند ارسال كنند.

اين نوع جريان ترافيك به نودها اجازه مي دهد تا اطلاعات را به سمت سوئيچ ارسال كنند همانطور كه سوئيچ ها اطلاعات را به طرف نودها ارسال مي كنند. اين فرايند منجر به محيطي عادي از هر گونه برخورد اطلاعات با يكديگر مي شود. ارسال اطلاعات به صورت دو طرفه ، سرعت شبكه را به شكل موثرتر افزايش مي دهد. اگر سرعت شبكه 10Mbps باشد در نتيجه هر يك از نودها اطلاعاتي را همزمان به همين سرعت ارسال مي كنند.


شبكه هاي مختلط
اكثر شبكه ها صرفا فقط از سويچ در شبكه استفاده نمي كنند چون اگر سوئيچ بخواهد جايگزين تمام هاب هاي شبكه شود ، اين كار به قيمت مناسبي تمام نميشود. در عوض براي رسيدن به يك قيمت مناسب و سودآور ، از تركيب سوئيچ و هاب استفاده مي شود. به طور مثال يك شركت ممكن است از هاب براي اتصال كامپيوترهاي موجود در هر يك از دپارتمان ها استفاده كرده و براي اتصال هاب دپارتمان ها با يكديگر از سوئيچ استفاده كند.


روتر و سوئيچ
همانطور كه گفته شد يك سوئيچ مي تواند در نحوه برقراري ارتباط بين نودها تغيير اساسي ايجاد كند. اما شما از وجه تمايز سوئيچ و روتر تعجب مي كنيد. سوئيچ ها معمولاً با استفاده از آدرس هاي MAC در لايه دوم مدل مرجع OSI كه ديتا لينك است كار مي كند در حاليكه روترها در لايه سوم يا Network با آدرس هاي مربوط به همين لايه مانند آدرس هاي لايه IPX , IP كار مي كنند. مضاف بر اين ، الگوريتم سوئيچ در هدايت بسته هاي اطلاعاتي با الگوريتم روترها متفاوت است.

يكي از تفاوت هاي الگوريتم بين سوئيچ و روترها ، در نحوه دريافت اعلان همگاني ( broadcast ) مي باشد. در هر شبكه اي ، ارسال بسته به تمام نودها( broadcast ) يكي از ضروري ترين عواملي است كه در نحوه كار شبكه دخالت دارد. هرگاه يكي از نودها بخواهد اطلاعاتي را ارسال كند و گيرنده آن را نشناسد ، در اين صورت يك پكت اعلان همگاني يا Broadcast به تمامي نودها ارسال مي كند. به طور مثال اگر كامپيوتر جديدي وارد مجموعه نودهاي شبكه شود در اين صورت توسط يك پكت Broadcast حضور خود را به تمامي نودها اطلاع مي دهد.

هاب ها و سوئيچ ها هر بسته اطلاعاتي اعلان همگان ( Broadcast Packet ) دريافت شده را به تمامي سگمنت هاي موجود در محدوده اعلان ارسال مي كنند. حال آنكه روترها اين گونه عمل نمي كنند. مجددا به مثال چهار راه توجه كنيد. اهميتي ندارد كه ترافيك جاري در يك تقاطع ، به كدامين جهت در حركت مي باشد. اگر اين تقاطع در يك سرحد بين المللي واقع شده باشد. براي عبور از اين تقاطع شما مي بايد گارد مرزي را از آدرس خود مطلع سازيد. اگر شما مقصد خود را مشخص نسازيد ، گارد مانع از عبور شما مي شود. روترها نيز در شبكه همانند گارد مرزي عمل مي كنند ، اگر يك بسته اطلاعاتي آدرس مشخص از گيرنده را نداشته باشد. روتر از عبور ديتا جلوگيري مي كند ، اين باعث جداسازي شبكه ها از يكديگر مي شود. زمانيكه قسمت هاي مختلف در يك شبكه بخواهند با هم صحبت كنند سوئيچ وارد عمل شده و اگر قرار باشد كامپوترها با خارج از شبكه داخلي صحبت كنند روتر وارد عمل مي شود.


همانطور كه گفته شد يك سوئيچ مي تواند در نحوه برقراري ارتباط بين نودها تغيير اساسي ايجاد كند. اما شما از وجه تمايز سوئيچ و روتر تعجب مي كنيد. سوئيچ ها معمولاً با استفاده از آدرس هاي MAC در لايه دوم مدل مرجع OSI كه ديتا لينك است كار مي كند در حاليكه روترها در لايه سوم يا Network با آدرس هاي مربوط به همين لايه مانند آدرس هاي لايه IPX , IP كار مي كنند. مضاف بر اين ، الگوريتم سوئيچ در هدايت بسته هاي اطلاعاتي با الگوريتم روترها متفاوت است.

يكي از تفاوت هاي الگوريتم بين سوئيچ و روترها ، در نحوه دريافت اعلان همگاني ( broadcast ) مي باشد. در هر شبكه اي ، ارسال بسته به تمام نودها( broadcast ) يكي از ضروري ترين عواملي است كه در نحوه كار شبكه دخالت دارد. هرگاه يكي از نودها بخواهد اطلاعاتي را ارسال كند و گيرنده آن را نشناسد ، در اين صورت يك پكت اعلان همگاني يا Broadcast به تمامي نودها ارسال مي كند. به طور مثال اگر كامپيوتر جديدي وارد مجموعه نودهاي شبكه شود در اين صورت توسط يك پكت Broadcast حضور خود را به تمامي نودها اطلاع مي دهد.

هاب ها و سوئيچ ها هر بسته اطلاعاتي اعلان همگان ( Broadcast Packet ) دريافت شده را به تمامي سگمنت هاي موجود در محدوده اعلان ارسال مي كنند. حال آنكه روترها اين گونه عمل نمي كنند. مجددا به مثال چهار راه توجه كنيد. اهميتي ندارد كه ترافيك جاري در يك تقاطع ، به كدامين جهت در حركت مي باشد. اگر اين تقاطع در يك سرحد بين المللي واقع شده باشد. براي عبور از اين تقاطع شما مي بايد گارد مرزي را از آدرس خود مطلع سازيد. اگر شما مقصد خود را مشخص نسازيد ، گارد مانع از عبور شما مي شود. روترها نيز در شبكه همانند گارد مرزي عمل مي كنند ، اگر يك بسته اطلاعاتي آدرس مشخص از گيرنده را نداشته باشد. روتر از عبور ديتا جلوگيري مي كند ، اين باعث جداسازي شبكه ها از يكديگر مي شود. زمانيكه قسمت هاي مختلف در يك شبكه بخواهند با هم صحبت كنند سوئيچ وارد عمل شده و اگر قرار باشد كامپوترها با خارج از شبكه داخلي صحبت كنند روتر وارد عمل مي شود.


Packet-Switching
سوئيچ ها بر مبناي Packet-Switching كار مي كنند و بين سگمنت هايي كه از نظر بعد مكاني از هم به حد كافي دور مي باشند ، ارتباط برقرار مي سازد. بسته هاي اطلاعاتي وارده در buffer نگهداري مي شوند. آدرس هاي MAC در قسمت هدر فريم نگهداري مي شوند. آدرس هاي مذكور كه در اين قسمت قرار دارد ، خوانده مي شوند و با جدول مك سوئيچ (MAC Table) مقايسه مي گردند. همچنين فريم اترنت در يك شبكه LAN قسمتي به نام Payload دارد. كه شامل MAC Address مبدا و مقصد مي باشد. همانطور كه قبلا گفته شد سوئيچ آدرس مك مبدا و مقصد را چك كرده و در صورتيكه آدرس مقصد را در جدول مك آدرس هاي خود داشت براي مقصد ارسال  مي كند.



سوئيچ هاي Packet-based براي تعيين مسير ترافيك از يكي از سه روش زير استفاده مي كند :

    Cut-through

    Store-and-forward

    Fragment-free



Cut-through : در اين روش ، سوئيچ آدرس هاي MAC را به محض دريافت بسته مي خواند و سپس 6 بايت MAC اطلاعات مربوط به آدرس را ذخيره كرده و با وجود اينكه ما بقي بسته ها در حال رسيدن به سوئيچ مي باشند ، اقدام به ارسال بسته مذكور به سمت نود مقصد مي نمايد.

Store-and-forward: سوئيچي كه از اين روش استفاده مي كند ، ابتدا تمام اطلاعات داخل بسته را دريافت و نگهداري مي كند و قبل از ارسال بسته مورد نظر به دنبال خطاي CRC و يا مشكلات ديگر مي گردد. در صورتي كه بسته داراي خطايي باشد آن بسته را كنار مي گذارد. در غير اينصورت سوئيچ آدرس كارت شبكه گيرنده را جستجو كرده و سپس آن را براي نود مقصد ارسال مي دارد. بيشتر سوئيچ ها همزمان از دو روش فوق استفاده مي كنند مثلاً ابتدا از روش Cut-through استفاده كرده ولي به محض برخورد با يك خطا ، روش خود را تغيير مي دهد و به شيوه  Store-and-forward عمل مي كند ، از آنجائيكه روش Cut-through  قادر به اصلاح خطا نمي باشد در نتيجه سوئيچ هاي كمتري از اين روش استفاده مي كنند ولي از سرعت بالاتري برخوردار است.

Fragment-free : سوئيچ ها از اين روش كمتر استفاده مي كنند. اين روش مانند روش اول مي باشد با اين تفاوت كه در اين شيوه ، سوئيچ قبل از ارسال بسته ، 64 بايت اول آن را نگه مي دارد اين كار به خاطر آن است كه بيشتر خطا و برخوردها در طول اولين 64 بايت بسته اطلاعاتي اتفاق مي افتد.

سوئيچ ها بر مبناي Packet-Switching كار مي كنند و بين سگمنت هايي كه از نظر بعد مكاني از هم به حد كافي دور مي باشند ، ارتباط برقرار مي سازد. بسته هاي اطلاعاتي وارده در buffer نگهداري مي شوند. آدرس هاي MAC در قسمت هدر فريم نگهداري مي شوند. آدرس هاي مذكور كه در اين قسمت قرار دارد ، خوانده مي شوند و با جدول مك سوئيچ (MAC Table) مقايسه مي گردند. همچنين فريم اترنت در يك شبكه LAN قسمتي به نام Payload دارد. كه شامل MAC Address مبدا و مقصد مي باشد. همانطور كه قبلا گفته شد سوئيچ آدرس مك مبدا و مقصد را چك كرده و در صورتيكه آدرس مقصد را در جدول مك آدرس هاي خود داشت براي مقصد ارسال  مي كند.



سوئيچ هاي Packet-based براي تعيين مسير ترافيك از يكي از سه روش زير استفاده مي كند :

    Cut-through

    Store-and-forward

    Fragment-free



Cut-through : در اين روش ، سوئيچ آدرس هاي MAC را به محض دريافت بسته مي خواند و سپس 6 بايت MAC اطلاعات مربوط به آدرس را ذخيره كرده و با وجود اينكه ما بقي بسته ها در حال رسيدن به سوئيچ مي باشند ، اقدام به ارسال بسته مذكور به سمت نود مقصد مي نمايد.

Store-and-forward: سوئيچي كه از اين روش استفاده مي كند ، ابتدا تمام اطلاعات داخل بسته را دريافت و نگهداري مي كند و قبل از ارسال بسته مورد نظر به دنبال خطاي CRC و يا مشكلات ديگر مي گردد. در صورتي كه بسته داراي خطايي باشد آن بسته را كنار مي گذارد. در غير اينصورت سوئيچ آدرس كارت شبكه گيرنده را جستجو كرده و سپس آن را براي نود مقصد ارسال مي دارد. بيشتر سوئيچ ها همزمان از دو روش فوق استفاده مي كنند مثلاً ابتدا از روش Cut-through استفاده كرده ولي به محض برخورد با يك خطا ، روش خود را تغيير مي دهد و به شيوه  Store-and-forward عمل مي كند ، از آنجائيكه روش Cut-through  قادر به اصلاح خطا نمي باشد در نتيجه سوئيچ هاي كمتري از اين روش استفاده مي كنند ولي از سرعت بالاتري برخوردار است.

Fragment-free : سوئيچ ها از اين روش كمتر استفاده مي كنند. اين روش مانند روش اول مي باشد با اين تفاوت كه در اين شيوه ، سوئيچ قبل از ارسال بسته ، 64 بايت اول آن را نگه مي دارد اين كار به خاطر آن است كه بيشتر خطا و برخوردها در طول اولين 64 بايت بسته اطلاعاتي اتفاق مي افتد.


Switch Configurations
سوئيچ هاي LAN از نظر شكل فيزيكي با هم متفاوتند ، در حال حاضر ، سوئيچ ها داراي سه شكل عمده مي باشند:

Shared memory : اين نوع از سوئيچ ها ، بسته رسيده را در يك حافظه مشترك يا بافر كه اين بافر در بين تمامي درگاه هاي سوئيچ تقسيم مي شود نگهداري مي كنند و سپس پكت را از طريق درگاه مناسب براي سمت نود مقصد ارسال مي كنند.

Matrix : اين نوع سوئيچ ها داراي يك شبكه خطوط داخلي ( ماتريكس ) با پورت هاي ورودي و خروجي مي باشند. زمانيكه وجود يك بسته اطلاعاتي در پورت ورودي تشخيص داده شود ، آدرس كارت شبكه ( MAC ) با جدول جستجوي موجود در سوئيچ (MAC Table) مقايسه مي شود تا در نهايت بسته مذكور به پورت خروجي مورد نظر هدايت شود. بنابراين سوئيچ در حد فاصل بين اين دو پورت يك خط ارتباطي ايجاد كرده و آن دو پورت را به هم متصل مي كند.

Bus architecture : در اين دسته از سوئيچ ها يك بافر براي هر يك از درگاه ها در نظر گرفته شده است. كه گذرگاه اطلاعات را كنترل مي كند.



Transparent Bridging

اكثر سوئيچ ها از سيستمي موسوم بهtransparent bridging  استفاده مي كنند تا جداولي جهت جستجوي آدرس بسازند. سيستم مذكور يك تكنولوژي مي باشد كه امكان مي دهد تا سوئيچ همه آنچه كه در مورد موقعيت نودها در شبكه بايد بداند را بدون دخالت مدير شبكه ( network administrator ) مي آموزند. اين سيستم داراي پنج قسمت زير مي باشد :

     Learning

     Flooding

     Filtering

     Forwarding

     Aging

حال قدم به قدم با مراحل فوق آشنا مي شويم:

همانطور كه در شكل 3 مشاهده مي كنيد سوئيچ به شبكه اضافه شده است و سگمنت هاي مختلف به آن متصلند.

Learning : كامپيوترA  كه در سگمنت A قرار دارد ، ديتايي براي كامپيوتر B واقع در سگمنت C ارسال مي كند.

پس سوئيچ اولين بسته اطلاعاتي را از روي نود A دريافت مي كند. آدرس كارت شبكه يا MAC Address آن را مي خواند و آن را در جدول مك خود به ثبت مي رساند. از اين پس سوئيچ به محض دريافت يك بسته اطلاعاتي كه آدرس مقصد دستگاه ، نود A آدرس دهي شده باشد مي تواند نود A را با توجه به آدرس موجود بيايد. به اين عمليات Learning مي گويند. يعني به محض ديدن يك MAC Address جديد سوئيچ آن را يادداشت مي كند و آن را ياد مي گيرد.

Flooding : با توجه به اينكه سوئيچ ، مك آدرس نود B را نمي شناسد ، بسته را به تمامي سگمنت ها به استثناي سگمنت A مي فرستد. هرگاه سوئيچ براي يافتن يك نود مشخص بسته را به تمامي سگمنت ها بفرستد در اصطلاح به اين عمل Flooding مي گويند.

Forwarding : نود B بسته را دريافت كرده و بسته اي را براي شناسايي به سمت نود A مي فرستد. بسته ارسالي از سوي نود B به سوئيچ مي رسد و سوئيچ نيز آدرس كارت شبكه نود B را به ليست MAC Table خود در سگمنت C اضافه مي كند. از آنجائيكه سوئيچ ، آدرس نود A را از قبل مي داند در نتيجه بسته را مستقيماً به نود A مي فرستد. چون سگمنتي كه نودA متعلق به آن است با سگمنتي كه نود B به آن تعلق دارد با هم متفاوت مي باشند. در نتيجه سوئيچ مي بايد اين دو سگمنت را به هم مربوط سازد و سپس اقدام به ارسال بسته نمايد كه به اين عمل Forwarding مي گويند.

بسته ديگري از سوي نود A به سمت نود B ارسال مي گردد، بسته ابتدا به سوئيچ مي رسد، سوئيچ نيز آدرس نود B را مي داند و بسته را مستقيماً به نود B مي فرستد.

Filtering : نود C اطلاعاتي را براي نود A مي فرستد. آدرس نود C به سوئيچ نيز از طريق HUB ، ارسال مي شود و سوئيچ آدرس نود C را نيز به ليست آدرس هاي خود در سگمنت A اضافه مي كند. پيش از اين ، سوئيچ آدرس مربوط به نود A را مي دانست و مشخص مي سازد كه اين نودها ( A و C ) هر دو در يك سگمنت مشابه قرار دارند ، پس براي ارسال اطلاعات از نود C به نودA ديگر نيازي نيست تا سوئيچ سگمنت A را با سگمنت ديگري مرتبط سازد. بنابراين سوئيچ در حين انتقال اطلاعات بين نودهاي درون يك سگمنت عكس العملي از خود نشان نمي دهد كه به اين عمل Filtering مي گويند.

مراحل Learning و Flooding ادامه مي يابد تا اينكه سوئيچ مك آدرس تمامي نودها را به ليست خود اضافه كند. بيشتر سوئيچ ها براي نگهداري ليست آدرس ها از حافظه زيادي برخورد دارند. اما براي استفاده بهتر از اين حافظه سوئيچ آدرس هاي قديمي را از جدول پاك مي كند و براي جلوگيري از اتلاف وقت در آدرس هاي قديمي به دنبال آدرسي نمي گردد. براي انجام اين كار از تكنيكي موسوم به aging بهره مي گيرد. اساساً وقتي اطلاعات يك نود وارد جدول سوئيچ مي شود يك Timestamp در مقابل آن اطلاعات نوشته مي شود و با دريافت هر بسته اطلاعاتي ديگر ، آن بر چسب زمان (Timestamp) به روز مي شود. سوئيچ داراي قابليتي است كه پس از مدتي در صورت عدم فعاليت نود ، اطلاعات مربوط به آن را پاك مي كند. اين قابليت باعث ميشود تا فضاي قابل توجهي از حافظه براي اطلاعات و پكت هاي ديگر اختصاص داده شود.

در نمونه اي كه ملاحظه كرديد، دو نود ( A و C ) يك سگمنت را بين خود تقسيم  مي كنند حال آنكه سوئيچ براي هر يك از نودهاي B و D يك سگمنت مستقل ميسازد. در يك شبكه ايده آل LAN-Switched هر يك از نودها داراي يك سگمنت جداگانه مي باشد كه خصيصه مذكور ، احتمال برخورد بين بسته هاي اطلاعاتي و همچنين نياز به ف_ * ل*_ ت ر را حذف مي كند.

شكل 3


Spanning Trees

براي جلوگيري از وقوع طوفان هايي موسوم به Broadcast Storms و همچنين جوانب ناخواسته ديگري كه در اثر اتصال حلقه اي سوئيچ ها بوجود مي آيند، شركت  Digital Equipment Corporation پروتكلي با نام Spanning-tree Protocol يا STP ساخته است كه موسسه IEEE نيز آن پروتكل را با استاندارد 802.id معرفي كرده است.
اساساً پروتكل مذكور از يك الگوريتم موسوم به (STA) Spanning- tree Algorithm استفاده مي كند. الگوريتم مذكور قادر است تا در بين چندين مسير منتهي به نود مورد نظر ، بهترين راه را تشخيص داده و مسير هاي ديگر كه ايجاد حلقه مي كند را مسدود مي سازد.



روتر و سوييچ هاي لايه 3 ( Router and Layer 3 Switching )

برخي از سوئيچ ها در لايه دوم شبكه يا Data Layer كار مي كنند. با افزون روترها به اين مجموعه مي توانند در لايه سوم شبكه يا Network layer نيز كار كنند. در واقع سوييچ لايه سوم كاملا شبيه روتر است. روتر به محض دريافت پكت اطلاعات به آدرس هاي مبدا و مقصد نگاهي مي اندازد تا مسيري را كه بسته مي بايد طي كند را بيايد. يك سوئيچ استاندارد بر مبناي آدرس هاي MAC ، مبدا و مقصد بسته را شناسايي مي كند.

تفاوت اساسي بين يك روتر و سوئيچ لايه 3 اين است كه سوئيچ لايه سوم با همان سرعت سوئيچ لايه دوم كار مي كند و براي انتقال ديتا از يك قطعه سخت افزاري استفاده مي كند همچنين آنها به مانند روترها در مورد نحوه هدايت ترافيك به لايه سوم تصميم مي گيرند. در داخل يك شبكه LAN سوئيچ هاي لايه سوم معمولاً سريعتر از روترها كار مي كنند زيرا بر مبناي سوئيچينگ سخت افزاري ساخته شده اند. در واقع بيشتر سوئيچ هاي لايه سومCisco روترهايي مي باشند كه داراي سوئيچينگ سخت افزاري بوده و در داخل اين قطعه سخت افزاري ، تعدادي تراشه وجود دارد كه بر حسب نياز انتخاب مي شوند كه در مجموع موجب افزايش سرعت اين روترها مي گردند. نحوه تركيب و مختص بودن سوئيچ هاي لايه سوم همانند الگويي است كه در روترها ديده مي شود. هر دوي آنها از پروتكل ها و جداول مسيريابي (Routing Table) استفاده مي كنند تا بهترين مسير را بيابند. هر چند سوئيچ هاي لايه سوم قادرند تا به صورت فعالي با استفاده از اطلاعات مسيريابي لايه سوم براي سخت افزار برنامه ريزي كنند كه در نهايت منجر به هدايت سريع بسته هاي اطلاعاتي مي گردد.

در سوئيچ هاي لايه سوم كنوني ، اطلاعات بدست آمده از پروتكل هاي جهت يابي براي روز آمد كردن جداول سخت افزاري استفاده مي شوند.



VLAN

با رشد شبكه ها از نظر اندازه و پيچيدگي ، بيشتر شركت ها به سمت شبكه هاي محلي مجازي Virtual local Area Network يا VLANS گرايش يافته اند. اساساً يك شبكه مجازي مجموعه اي است از نودهايي كه در يك Broadcast Domain قرار دارند.

قبلاً در مورد broadcast و همچنين نحوه ممانعت روترها از عبور broadcastها مطالبي گفته شد.

در اين قسمت با دلايل استفاده از VLAN آشنا مي شويم:

Security : سيستم هايي كه داراي اطلاعات حساس بوده از ساير قسمت هاي شبكه جدا مي شوند كه اين پارامتر باعث مي شود تا از احتمال دسترسي مردم به اطلاعاتي كه مجاز به ديدن آنها نيستند، مي كاهد.

Projects / Special application : يك شبكه محلي مجازي با جمع آوري نودهاي مورد نياز در كنار هم مي تواند به انجام پروژه و يا كار كردن با يك برنامه ويژه را آسانتر كند.

Performance / Bandwidth : مدير شبكه با بررسي دقيق كار شبكه ، درصدد بر مي آيد تا شبكه هاي VLAN را بسازد و بر ميزان عرض باند شبكه مي افزايد.

Broadcast / Traffic flow : اساسي ترين فاكتور اين شبكه ها اين است كه از انتشار بسته هاي اطلاعاتي به سمت نودهايي كه جزئي از اين شبكه نمي باشند جلوگيري كند. اين كار منجر به كاهش Broadcast مي شود. همچنين داراي Access lists مي باشند، كه به كنترل نوع ترافيك توسط مدير شبكه كمك مي كند.

Department / Specific Job types : امكان دارد شركت ها بخواهند شبكه خود را بر حسب نياز دپارتمان هايي كه كاربران آن قسمت ها از شبكه در زمينه پروژه هاي سنگين استفاده مي كنند و يا دپارتمان هاي كه به كارمندان خاصي اختصاص دارند مانند كارمندان فروش و مديران طراحي كنند.

با استفاده از تعدادي سوئيچ و اتصال به سوئيچ از طريق Telnet به راحتي مي توان يك شبكه VLAN را طراحي كرد. بعد از ساخت شبكه مجازي هر يك از سگمنت هايي را كه به درگاه هاي معين وصل مي شوند جزئي از اين شبكه مجازي مي گردند.

مادامي كه در يك سوئيچ چندين شبكه VLAN داشته باشيم، اين شبكه ها نمي توانند به صورت مستقيم با شبكه ديگري كه به آن سوئيچ متصل مي باشد ارتباط برقرار كنند. در غير اين صورت مي توانست منجر به عدم استفاده از شبكه هاي مجازي شود البته براي برقراري ارتباط ما بين چندين VLAN به وجود روتر نياز است.

شبكه هاي VLAN مي توانند از چندين سوئيچ براي برقراري ارتباط استفاده كنند و همچنني چندين شبكه مجازي VLAN مي توانند به يك سوئيچ متصل شوند شبكه هاي مختلفي كه به سوئيچ هاي مختلفي متصل مي باشند قادرند تا از طريق لينك ما بين سوئيچ ها با هم ارتباط برقرار كنند. براي تحقق آن از پروتكل موسوم به Trunking بهره مي گيرند. پروتكل مذكور تكنولوژيي مي باشد كه به اطلاعات اين امكان را مي دهد تا از بين چندين شبكه VLAN و از طريق لينك سوئيچ ها عبور كنند.



پروتكل VLAN Trunking

پروتكل VTP پروتكلي است كه سوئيچ ها از آن براي اطلاع رساني به يكديگر در مورد تركيب VLANها استفاده مي كنند. همانطور كه در شكل 4 مشاهده مي كنيد هر يك از سوئيچ ها داراي 2 عدد شبكه مجازي VLAN مي باشد، به اولين سوئيچ ، شبكه هاي A و B كه از طريق پورت هايي به روتر و سوئيچ ديگر مرتبط مي شوند. شبكه هاي C و D نيز از طريق سوئيچ دوم به سوئيچ اول وصل مي شود و همچنين اين شبكه ها مي توانند از طريق سوئيچ اول به روتر مرتبط مي شوند.

شبكه هاي مجازي از طريق خطوط ارتباطي Trunk موجود در بين سوئيچ ها و با استفاده از روترها ، قادرند با يكديگر ارتباط برقرار كنند به طور مثال ديتا از كامپيوتر واقع در (A) VLAN به سرعت براي كامپيوتر ديگر مثلا كامپيوتر موجود در (B) VLAN ارسال مي شود. اين اطلاعات مي بايد از سوئيچ به طرف روتر رفته و از آنجا نيز دوباره به سوئيچ باز گردد. اما به وسيله الگوريتم transparent bridging algorithm و همچنين پروتكل Trunking، هر دوي كامپيوترها و روتر مي دانند كه آنها در داخل يك سگمنت مشابه مي باشند.

شكل 4


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

اميدواريم با اين نوشتار توانسته باشيم اندكي از مفاهيم اوليه شبكه و تفاوت ها و چگونگي رفتار تجهيزات شبكه را بيان كرده باشيم.
"هرکس از راه رسید نانش دهید و از ایمانش مپرسید . چه ، آنکس که به درگاه باریتعالی به جان ارزد ، قطعا بر سفره بوالحسن به نان ارزد "
( شیخ ابوالحسن خرقانی )

کاربران زیر از شما کاربر محترم جناب SHAHRAM تشکر کرده اند:
Mahdi1944, sokuteasemuni, arash1468

 


  • موضوعات مشابه
    پاسخ ها
    بازديدها
    آخرين پست

چه کسي حاضر است ؟

کاربران حاضر در اين انجمن: بدون كاربران آنلاين و 0 مهمان