تصادم یا برخورد در شبکه چیست؟ چطور Collision Domain را کم کنیم؟
اگر متخصص داده و شبکه هستید یا دارید در این زمینه آموزش میبینید، حتما باید با مقوله مهمی به اسم تصادم (collision) آشنا باشید و بدانید که دامنه برخورد چیست. هر چند که این مفاهیم پیچیده به نظر میرسند، اما از آنچه تصورش را میکنید، سادهتر هستند.
در این مطلب فالنیک، میخواهیم مسئله تصادم در شبکه را بهطور کامل بررسی کنیم و مفاهیمی را که برای درک عمیق این موضوع و استفاده بهتر از خدمات شبکه نیاز دارید، برای شما تشریح کنیم. در نهایت هم درباره اثرات تصادم بر کارکرد شبکه و فناوریهایی که برای تشخیص و جلوگیری از تصادم قابل استفاده هستند، صحبت خواهیم کرد. با ما همراه باشید.
فالنیک صفر تا صد خدمات نصب و راه اندازی شبکه را در کنار فروش تجهیزات ارائه میدهد تا با خیالی آسوده بتوانید شبکهتان را راه اندازی کنید. برای خرید سوییچ شبکه یا خرید روتر کافیست روی لینک بزنید و از پس از دریافت مشاوره تخصصی، بهترین دستگاه را متناسب با کسبوکارتان انتخاب کنید.
فهرست محتوا
تصادم چیست؟
فرض کنید در یک بزرگراه شلوغ در حال رانندگی هستید. در چنین شرایطی، اگر همزمان دو خودرو از جهت مخالف وارد یک تقاطع شوند، «تصادف» رخ میدهد. در دنیای شبکهها نیز گاهی چنین شرایطی پیش میآید. اگر دو یا چند بسته داده بهطور همزمان از طریق یک محیط ارتباطی مشترک (مثلا کابل یا وایفای) منتقل شوند و با یکدیگر تداخل پیدا کنند، «تصادم» بهوجود میآید. برای اطلاع از نحوه رفع مشکلات شبکه پیشنهاد میکنیم مقاله روش های عیب یابی شبکه کامپیوتری را مطالعه کنید.
تصادم باعث میشود بعضی از بستههای داده خراب شده و در نتیجه، مجددا ارسال شوند. تصادم پدیدهای رایج در شبکه است؛ بهویژه در محیطهای شبکهای با ترافیک بالا مانند شبکههای محلی اترنت. با این حال، تاثیر تصادم بر عملکرد شبکه اغلب ناچیز است، مگر اینکه مشکلات دیگری آن را تشدید کند. حال که دانستیم تصادم چیست، در بخش بعدی درباره دامنه تصادم بیشتر صحبت خواهیم کرد.
دامنه برخورد چیست؟
دامنه برخورد یا Collision Domain شبکه، بخشی از شبکه است که بستههای داده در آن با یکدیگر برخورد میکنند و در واقع، تصادم در آن رخ میدهد. مثلا در یک شبکه اترنت معمولی، تمام دستگاههای متصل به یک هاب، دامنه تصادم واحد و مشترکی دارند. اما، وجود یک سوئیچ و روتر میتواند دامنههای تصادم مختلفی را برای دستگاهها در نظر بگیرد و احتمال وقوع تصادم را به میزان قابل توجهی کاهش دهد.
معرفی انواع مختلف دامنه تصادم
در شبکههای کامپیوتری، دامنه تصادم دو نوع دارد:
- دامنه تصادم سینگل (Single Collision Domain): اگر چند دستگاه بهطور همزمان دادههای خود را روی یک سگمنت مشترک از شبکه ارسال کنند، این شرایط پیش میآید. در این حالت، سادهترین نوع تصادم رخ میدهد.
- دامنه تصادم مولتیپل (Multiple Collision Domains): این برخورد، در شبکههای بزرگتر با سگمنتهای متعدد رخ میدهد. شبکههای پیچیدهتر و بزرگتر به چند سگمنت تقسیم میشوند و هر سگمنت میتواند یک دامنه تصادم جداگانه باشد. در این حالت، اگر دستگاههای سگمنتهای مختلف بخواهند بهطور همزمان داده ارسال کنند، ممکن است در خط انتقال اولیه (backbone) تصادم رخ دهد.
تصادم چه مشکلاتی را برای شبکه ایجاد میکند؟
اگر یک شبکه مکررا دچار تصادم شود، عملکرد و پایداری آن مستقیما تحت تاثیر قرار میگیرد. در زیر، بعضی از مهمترین مشکلاتی که ممکن است تصادم برای یک شبکه ایجاد کند، معرفی و بررسی شدهاست:
- کاهش کارایی شبکه: هنگامی که تصادمی رخ میدهد، دستگاهها به اجبار روند ارسال بسته را متوقف میکنند و باید مدت زمانی را منتظر بمانند تا مجددا بسته دادهها را ارسال کنند. این فرایند باعث ایجاد تاخیر و کاهش پهنای باند در دسترس میشود.
- ازدسترفتن دادهها: تصادم موجب میشود که بخشی از بستههای داده از بین برود. در این شرایط، دستگاه گیرنده نمیتواند اطلاعات را بهطور کامل دریافت کند و باید مجددا برای ارسال داده درخواست کند. این شرایط هم باعث کاهش سرعت شبکه میشود و هم اتلاف منابع شبکه را نیز در پی دارد.
- ناپایداری شبکه: در شرایطی که نرخ تصادم بسیار بالاست، پایداری شبکه تا حد زیادی تحت تاثیر قرار میگیرد. در نتیجه، مشکلاتی مثل قطع ارتباطات، ازدسترفتن دادههای مهم و اختلال در عملکرد سرویسهای شبکه رخ میدهد و حتی ممکن است در محیطهای تجاری تبعات جدی بههمراه داشته باشد.
روشهای جلوگیری از تصادم در دامنه برخورد چیست؟
برای جلوگیری از بروز تصادم در یک شبکه، از راهکارهای مختلفی میتوانیم استفاده کنیم. یکی از این راهکارها، استفاده از پروتکل CSMA/CD و CSMA/CA است. در شبکههای اترنت مبتنی بر هاب، از پروتکل CSMA/CD برای جلوگیری از تصادم استفاده میشود. این پروتکل، با شناسایی محیط شبکه و تشخیص ترافیک، میتواند ارسال دادهها را اندکی به تعویق بیندازد.
پروتکل CSMA/CA، در شبکههای بیسیم کاربرد دارند و باعث میشوند دستگاههای شبکه از یک الگوریتم برنامهریزی برای تعیین زمانهای مناسب ارسال داده استفاده کنند. در این حالت، اگر تصادم رخ دهد، بستههای داده حذف شده و فرآیند ارسال مجدد آغاز میشود.
در هر حال، بهترین راه برای جلوگیری از بروز تصادم در شبکه، استفاده از سوئیچ بهجای هاب است. سوئیچ با تقسیم شبکه به چند دامنه تصادم، احتمال برخورد را بهطور قابل توجهی کاهش میدهد و عملکرد شبکه را بهبود میبخشد.
سازوکار پروتکل CSMA/CD در دامنه برخورد چیست؟
از طریق پروتکل CSMA/CD یا Carrier Sense Multiple Access with Collision Detection، دستگاهها قبل از ارسال داده، میتوانند محیط شبکه را بررسی کنند و در صورت تشخیص ترافیک، ارسال داده را به تعویق بیندازند. اما اگر دو یا چند دستگاه بهطور همزمان داده ارسال کنند، دستگاهها میتوانند تصادم را تشخیص دهند و بلافاصله ارسال داده را متوقف کنند.
پس از وقوع تصادم نیز، دستگاه مدتی صبر میکنند و سپس، مجددا برای ارسال داده تلاش میکنند. این کار، احتمال وقوع تصادم مجدد بین همان دستگاهها را کاهش میدهد. پروتکل CSMA/CD برای شبکههایی با بار ترافیکی کم تا متوسط، عملکرد بسیار خوبی دارد و پیادهسازی آن نیز بسیار ساده است.
مقایسه عملکرد دامنه برخورد در شبکههای اترنت مبتنی بر هاب
در شبکههای اترنتی مبتنی بر هاب، تمام دستگاهها در یک دامنه تصادم قرار دارند و به این ترتیب، درصورتیکه دو یا چند دستگاه بخواهند بهطور همزمان داده ارسال کنند، احتمال تصادم بالا میرود. هاب، دستگاهی است که سیگنالهای دریافتی را بدون هیچ تغییری به تمام پورتهای خود ارسال میکند. به عبارت دیگر، هاب نمیتواند بین دادههای مختلف تمایز قائل شود و آنها را به تمامی گرههای شبکه غیر از گره مبدا ارسال میکند.
بنابراین، زمانی که دو دستگاه به طور همزمان شروع به ارسال داده میکنند، بستههای آنها در مسیر توزیع در شبکه با هم برخورد (تصادم) میکنند و خراب میشوند. هر چند که با استفاده از پروتکل CSMA/CD میتوان تا حد زیادی از بروز این مشکلی جلوگیری کرد، اما در شبکههای بزرگ و پرازدحام، احتمال وقوع تصادم همچنان وجود دارد.
مقایسه عملکرد دامنه برخورد در شبکههای اترنت مبتنی بر بریج
بریجها، برای حل مشکلات شبکههای مبتنی بر هاب به بازار عرضه شدند. بریج، شبکه را به چند سگمنت تقسیم میکند و از این طریق، مشکل تصادم را تا حد قابل توجهی کاهش میدهد. در این حالت، اگر دو دستگاه به دو پورت مختلف یک بریج متصل باشند، حتی اگر به طور همزمان داده ارسال کنند، بستههای آنها با هم برخورد نخواهند کرد؛ بریج دادهها را فقط به سگمنتی که دستگاه مقصد در آن قرار دارد، ارسال میکند.
با این حال،بریج بهطور کامل نمیتواند مشکل برخورد را برطرف کند. حتی اگر چند دستگاه مختلف به یک پورت بریج متصل باشند، همچنان احتمال تصادم وجود دارد. چون، دامنه تصادم دستگاهها مشترک است. مثلا، اگر دو دستگاه به یک پورت بریج متصل باشند و بهطور همزمان داده ارسال کنند، ممکن است بستههای آنها در داخل آن سگمنت با هم برخورد داشته باشند.
بریجها با وجود محدودیتهای خود، در تکامل شبکههای اترنت، نقش بسیار مهمی ایفا کردند. آنها در واقع، واسطهای بین هاب و سوئیچ بودند و باعث شدند عملکرد شبکههای محلی تا حد زیادی بهبود پیدا کند.
مقایسه عملکرد دامنه برخورد در شبکههای اترنت مبتنی بر سوئیچ
سوئیچ، جایگزینی کارآمد برای هاب است. یکی از تفاوتهای اصلی سوئیچ با هاب، نحوه مدیریت دامنههای تصادم است. اما نقش سوئیچ در دامنه برخورد چیست؟ در سوئیچها، هر پورت بهعنوان یک دامنه تصادم مجزا درنظر گرفته میشود و هر دستگاه متصل به پورت سوئیچ، در شبکهای کوچک و مستقل قرار دارد.
در این حالت، حتی اگر چند دستگاه بهصورت همزمان داده ارسال کنند، احتمال برخورد بین بستههای داده آنها بسیار کم خواهد بود. سوئیچ، آدرس مک را بهدرستی شناسایی کرده و بستههای داده را مستقیما به پورت مقصد ارسال میکند. هرچند که سوئیچها عملکردی عالی در بهحداقلرساندن تصادم دارند، اما نمیتوانند آن را به طور کامل حذف کنند.
تفاوت دامنه انتشار با دامنه برخورد چیست؟
علاوه بر دامنه برخورد که در بالا مفصل درباره آن صحبت کردیم، در شبکههای کامپیوتری با مفهوم دیگری بهنام دامنه انتشار (Broadcast Domain) نیز مواجه هستیم که عموما با دامنه برخورد اشتباه گرفته میشود. در دامنه انتشار، هر فریم یا بسته منتشرشده توسط یک گره، به تمامی نودهای دیگر (غیر از نود مبدا) ارسال میشود.
با وجود اینکه دامنه برخورد و انتشار برای تقسیمبندی شبکه ضروری هستند، اما مفاهیم و اثرات کاملا متفاوتی دارند. هدف اصلی از کاهش دامنههای برخورد، جلوگیری از تصادم و افزایش کارایی شبکه است. از سوی دیگر، کاهش دامنه انتشار با هدف کاهش ترافیک شبکه و بهبود عملکرد کلی آن انجام میشود.
هر چند که عموما تلاش میشود دامنه برخورد و انتشار به صفر برسد، با این حال کاهش بیش از حد دامنه انتشار ممکن است بر بعضی از پروتکلهای شبکه که به مکانیسم پخش وابسته هستند، تاثیر منفی بگذارد.
مسئله تصادم، بحرانی جدی برای کارایی شبکه!
تصادم یا برخورد در شبکه امری اجتنابناپذیر است و از آنجایی که کارایی شبکه را تا حد زیادی تحت تاثیر قرار میدهد، بسیاری از متخصصان این حوزه در پی یافتن راهکارهایی برای کنترل یا کاهش آن هستند. در این مطلب فالنیک، با شما درباره تصادم و دامنه برخورد صحبت کردیم و راهکارهایی را هم برای کاهش برخورد و افزایش کارایی دامنه در اختیارتان قرار دادیم. اگر در این زمینه تجربهای دارید، حتما در بخش نظرات آنها را با ما به اشتراک بگذارید.