در شبکههای کامپیوتری، درگیری (Conflict) وضعیتی است که در آن دو یا چند گره برای دسترسی به یک منبع مشترک با هم رقابت میکنند. این منابع میتوانند شامل پهنای باند شبکه، حافظه، CPU یا سایر منابع باشند. درگیری میتواند منجر به عملکرد ضعیف شبکه، از دست دادن دادهها و حتی خرابی شبکه شود.
انواع مختلفی از درگیری در شبکههای کامپیوتری وجود دارد، اما رایجترین آنها عبارتند از:
درگیری دسترسی به رسانه (Media Access Conflict):
این نوع درگیری زمانی رخ میدهد که دو یا چند گره در یک زمان واحد سعی در ارسال دادهها از طریق یک رسانه مشترک دارند.
درگیری حافظه (Memory Conflict):
این نوع درگیری زمانی رخ میدهد که دو یا چند گره سعی در دسترسی به یک بخش مشترک از حافظه در یک زمان واحد دارند.
درگیری CPU (CPU Conflict):
این نوع درگیری زمانی رخ میدهد که دو یا چند گره سعی در اجرای یک فرآیند در یک زمان واحد دارند که به یک منبع مشترک CPU نیاز دارد.
برای جلوگیری از درگیری، شبکهها از الگوریتمهای مختلفی استفاده میکنند که به گرهها اجازه میدهد تا به طور همزمان و بدون تداخل به منابع دسترسی داشته باشند. برخی از رایجترین الگوریتمهای کنترل دسترسی به رسانه (MAC) عبارتند از:
CSMA/CD (Carrier Sense Multiple Access with Collision Detection):
این الگوریتم به گرهها اجازه میدهد تا به صورت رقابتی به رسانه دسترسی داشته باشند و تصادم را تشخیص دهند.
CSMA/CA (Carrier Sense Multiple Access with Collision Avoidance):
این الگوریتم به گرهها اجازه میدهد تا به صورت رقابتی به رسانه دسترسی داشته باشند و از تصادم جلوگیری کنند.
Token Ring:
این الگوریتم به یک توکن مجازی اجازه میدهد تا در شبکه گردش کند و گرهها فقط زمانی میتوانند به رسانه دسترسی داشته باشند که توکن در اختیار آنها باشد.
با استفاده از این الگوریتمها، میتوان درگیری را در شبکههای کامپیوتری به حداقل رساند و عملکرد شبکه را بهبود بخشید.