
MTU چیست؟
MTU چیست؟
بیایید با یک مثال ساده شروع کنیم.
فرض کنید میخواهید تعدادی کتاب برای دوستتان پست کنید. اما اداره پست قانونی دارد که در هر بسته پستی نمیتوانید بیشتر از ۵ کتاب قرار دهید. و برای مثال، اگر ۱۵ کتاب داشته باشید، باید آنها را در ۳ بسته جدا ارسال کنید.
در دنیای اینترنت هم دقیقاً چنین محدودیتی وجود دارد. وقتی دادهای از دستگاهی به دستگاه دیگر فرستاده میشود، این داده نمیتواند بهصورت یکجا ارسال شود. بلکه باید به بستههایی کوچکتر تقسیم شود.
مقدار MTU (Maximum Transmission Unit) تعیین میکند که هر بسته (یا پکت) داده در شبکه، حداکثر چه مقداری میتونه داشته باشه
در بسیاری از شبکهها، مقدار پیشفرض MTU برابر با 1500 بایت است.
نکته ای که باید بهش توجه کنیم اگر مقدار MTU بیشتر از ظرفیت مسیر شبکه باشه یا خیلی پایین تنظیم شده باشه مشکلاتی واسه ما به وجود میاره البته نگران نباشید در اخر این مقاله اسکریپتی واستون قرار دادیم که خودش بهترین mtu رو پیدا میکنه و اونو برای شما تنظیم میکنه
اگر MTU کمتر از حد مجاز مسیر شبکه باشه چه اتفاقی میافتد؟
1.افزایش بار شبکه
هر بستهی داده دارای هدر (Header) مخصوص به خودش هست که شامل اطلاعاتی مانند IP، پورت، پروتکل، شماره ترتیب بسته (Sequence Number) و… میشود.
وقتی MTU پایینتر از حد نرمال باشه، برای انتقال همان مقدار داده، تعداد بستهها بیشتر میشه. در نتیجه مجموع هدرهای اضافی افزایش پیدا میکنه و این یعنی افزایش سربار شبکه (Overhead) که در نهایت باعث کاهش کارایی کلی شبکه میشه.
2. کاهش سرعت انتقال
تکهتکه شدن دادهها باعث میشه که بستهها به تعداد بیشتری تقسیم بشن که باعث میشه زمان بیشتری صرف ارسال، دریافت و پردازش اونا بشه . این فرآیند میتونه باعث کاهش سرعت انتقال دادهها بشه، بهویژه در بازیهای آنلاین، تماسهای ویدیویی و استریم.
3. افزایش احتمال از دست رفتن بستهها
هرچقدر تعداد بستههای ارسالی بیشتر باشه، احتمال از بین رفتن اونها هم بالاتر میره. اگر حتی یکی از این بستههای کوچک از بین بره، ممکنه نیاز به ارسال مجدد کل بسته ها باشه. این مسئله باعث افزایش تأخیر (Latency) و کاهش پایداری اتصال میشه.
اگر MTU زیادتر از حد مجاز مسیر شبکه باشه چه اتفاقی میافتد؟
1.تکهتکه شدن پکت ها (Fragmentation)
وقتی پکت بزرگ شما به یک دستگاه یا بخشی از شبکه میرسد که MTU کمتری داره ، اون پکت مجبور میشه به قطعات کوچکتر تبدیل بشه تا بتونه عبور کنه از اون بخش و دستگاه گیرنده هم بعداً باید این تکهها را دوباره به هم بچسبونه که همین مورد باعث کاهش کارای کلی شبکه میشه.
2.افت شدید عملکرد
این فرآیند تکهتکه شدن و دوباره سرهم کردن، کلی تأخیر و سربار به شبکه اضافه میکند و میتواند عملکرد را به شدت پایین بیاورد. گاهی اوقات ضررِ MTU بیش از حد بالا، از MTU کمی پایین هم بیشتر است!
3. از دست رفتن پکت ها (Packet Loss)
بعضی از دستگاههای شبکه یا فایروالها طوری تنظیم شدن که پکت های کوچیک شده یا به زبون خودمون تیکه تیکه شده رو به دلایل امنیتی یا چون نمیتونن پردازششون کنن، از خودش عبور نمیدن یا به اصطلاح (Drop میکنن). این یعنی بخشی از دادههای ما اصلاً به مقصد نمی رسه و نتیجهاش میشه دانلودهای ناقص، وبسایتهایی که درست باز نمیشن، یا بازیهای آنلاینی که مدام قطع و وصل میشن.
نقش MTU در مقابله با حملات DDoS
مورد جالبی که باید بدونید اینه که این MTU حتی در برابر حملات DDOS هم به ما کمک میکنه ( میگی چطوری؟ باید بگم ممنون شما چطوری؟ ) حالا جدا از شوخی بریم برسی کنیم
1.فیلتر کردن پکت های بزرگ و ناقص: بعضی از حملات DDOS ، مثل UDP flood یا حملات انعکاسی (Amplification attacks)، ممکن است از پکت های غیرعادی و بزرگ استفاده کنند. اگر دستگاههای شبکه شما (مثل فایروال یا روتر) MTU مناسبی داشته باشن و قوانینی برای رد کردن پکت هایی که از مقدار MTU ما بیشتر هستن میتونن مقداری از این ترافیک و پکت های مخرب را قبل از اینکه منابع زیادی مصرف کند، فیلتر کنند.
2.محدود کردن اندازه بستهها: برخی از حملات DDoS با ارسال بستههای خیلی بزرگ یا کوچک برای ایجاد بار اضافی در سیستم انجام میشن. اما اگر مناسب MTU تنظیم کرده باشیم، میتونیم جلوی بخشی از این حملاتو بگیریم
3.افزایش کارایی شبکه : وقتی MTU بهینه و مناسب باشه ، سرورها سریعتر پاسخ میدن و احتمال فشار بیش از حد در زمان حمله کاهش پیدا میکنه .
چجوری MTU رو تنظیم کنیم ؟
برای راحتی شما، یک اسکریپت ساده آماده کردهایم که به سرعت و بدون دردسر مقدار بهینه MTU را تشخیص میدهد و آن را تنظیم میکند.
کافی است این اسکریپت را دانلود و اجرا کنید تا تنظیمات بهینه روی دستگاه شما اعمال شود.