برنامه نویسی

UDP چیست؟ درک پروتکل حمل و نقل “غیرقابل اعتماد”

هنگامی که شما یک پیام از طریق اینترنت ارسال می کنید – خواه یک یادداشت گربه ، یک جریان ویدئویی یا یک جستجوی DNS باشد – از طریق لایه های پروتکل ها سفر می کند. دو مورد از مهمترین پروتکل های لایه حمل و نقل در این پشته TCP و UDP هستند. در حالی که TCP به لطف قابلیت اطمینان و استفاده گسترده در ترافیک وب ، مورد توجه بسیاری قرار می گیرد ، UDP (پروتکل DataGram کاربر) قهرمان Unsung در پشت بسیاری از برنامه های واقعی و کم تحرک است.

در این پست ، ما تغییر می دهیم که UDP چیست ، چگونه کار می کند و چرا توسعه دهندگان با وجود نام مستعار آن ، آن را انتخاب می کنند: “پروتکل غیرقابل اعتماد Datagram”.

UDP چیست؟

UDP یکی از پروتکل های اصلی مجموعه پروتکل اینترنت (IP) است. در سال 1980 به عنوان یک جایگزین سبک برای TCP معرفی شد. UDP در بالای IP فعالیت می کند و برای ارسال پیام های کوتاه به نام Datagrams استفاده می شود.

تفاوت کلیدی؟ UDP قبل از ارسال داده ارتباط برقرار نمی کند. این فقط بسته ها را می فرستد و امیدوار است که آنها وارد شوند. این سادگی به معنای:

  • بدون دست دادن

  • بدون تأیید

  • بدون انتقال مجدد

  • بدون ضمانت سفارش

به طور خلاصه: آتش و فراموش کنید.

Datagram vs Packet: تفاوت چیست؟

اصطلاح “Datagram” به یک واحد داده شده از داده ها اشاره دارد که کلیه اطلاعات مورد نیاز برای تحویل را حمل می کند. یک بسته یک اصطلاح کلی تر است. در حالی که تمام داده ها بسته ها هستند ، همه بسته ها داده های داده نیستند. در زمینه UDP ، ما به واحد داده به عنوان یک داده داده مراجعه می کنیم زیرا بدون تحویل تضمین شده منتقل می شود.

تصور کنید که یک دسته از کارت پستال را از طریق نامه معمولی ارسال کنید. هرکدام آدرس مقصد دارند ، اما هیچ راهی برای دانستن اینکه آیا تحویل داده شده است مگر اینکه کسی به شما بگوید. این UDP است.

UDP در مقابل TCP: مقایسه سریع

UDP در مقابل TCP

چرا از UDP استفاده می کنیم؟

با وجود محدودیت های خود ، UDP مزایای قدرتمندی دارد:

1. سرعت
UDP سریع است. از آنجا که این ارتباط را ایجاد نمی کند یا قابلیت اطمینان را مدیریت نمی کند ، از تأخیرهای مرتبط با دست های TCP و تصدیق جلوگیری می کند.

2. بالای سربار
UDP دارای حداقل هدر (فقط 8 بایت) است و آن را برای پیام های کوچک کارآمدتر می کند.

3. هیچ حالت اتصال
از آنجا که هیچ ارتباطی وجود ندارد ، UDP نیازی به حافظه یا ردیابی در هر دو طرف ندارد ، که باعث می شود آن را برای برنامه های سبک و مقیاس پذیر مناسب کند.

4. برنامه های زمان واقعی
برای برنامه هایی مانند تماس های ویدیویی ، بازی های آنلاین و پخش مستقیم ، قابلیت اطمینان سرعت را ترامپ می کند. اگر چند بسته از بین برود ، بهتر است حرکت کنید تا منتظر انتقال مجدد باشید.

موارد استفاده مشترک برای UDP

  • DNS (سیستم نام دامنه): جستجوی سریع/پاسخ پاسخ

  • DHCP (پروتکل پیکربندی میزبان پویا): اختصاص آدرس IP

  • VoIP (Voice Over IP): صوتی در زمان واقعی

  • پخش ویدیو: به خصوص هنگامی که از طریق Webrtc اجرا می شود

  • بازی های چند نفره آنلاین: اقدامات کم تأخیر

خلاصه

UDP ممکن است تحویل یا سفارش را تضمین نکند ، اما آنچه ارائه می دهد سرعت ، سادگی و مینیمالیسم است. این پروتکل Go-to است که برنامه شما می تواند برخی از دست دادن داده ها را تحمل کند اما نیاز به تأخیر کم دارد.

درک UDP اولین قدم در درک نحوه کار برنامه های شبکه مدرن است. در پست بعدی ما ، ما عمیق تر به داخل داخلی پروتکل می رویم و ساختار و محدودیت های آن را در جزئیات فنی تر کشف می کنیم.

🔜 بعدی در قسمت اول-پست 2: در داخل پروتکل UDP: آناتومی ، ویژگی ها و “خدمات غیر خدمات”-ما آنچه را که درون یک بسته UDP قرار دارد ، باز می کنیم و طراحی مینیمالیستی آن را به عمق کشف می کنیم.

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا