Networkآموزش

پروتکل UDP (پروتکل دیتاگرام کاربر) چیست؟

ارتباط سیستم ها در شبکه های محلی خانگی و شرکتی و همچنین شبکه های عمومی مانند اینترنت به طور پیش فرض بر اساس خانواده پروتکل اینترنت انجام می شود. شناخته شده ترین مولفه این پروتکل، بدون شک پروتکل اینترنت (IP) است که نه تنها مسئولیت آدرس دهی و تقسیم بندی بسته های داده را دارد، بلکه نحوه توصیف اطلاعات مربوط به منبع و مقصد را نیز تعریف می کند.
با این حال، انتقال داده ها معمولاً توسط پروتکل کنترل انتقال اتصال (TCP) انجام می شود، به همین دلیل است که شبکه ها اغلب به عنوان شبکه های TCP / IP شناخته می شوند. از آنجا که TCP امنیت را تأمین می کند اما انتقال را نیز به تأخیر می اندازد، دیوید پاتریک رید مفهوم User Datagram Protocol (UDP) خود را در سال 1980 به عنوان گزینه ساده تر و سریع تر پروتکل استاندارد منتشر کرد.
در این مقاله قصد داریم یکی از انواع پروتکل های شبکه که پروتکل UDP می باشد و مخف عبارت User Datagram Protocol است را به شما معرفی کنیم.

UDP بخشی از مجموعه پروتکل اینترنت است که به آن مجموعه UDP / IP می گویند. برخلاف TCP، این پروتکل غیر قابل اعتماد و بدون اتصال است. بنابراین، نیازی به برقراری ارتباط قبل از انتقال داده نیست.

اگرچه پروتکل کنترل انتقال (TCP) پروتکل اصلی لایه حمل و نقل است و در بیشتر سرویس های اینترنتی استفاده می شود و تحویل مطمئن، قابلیت اطمینان و موارد دیگر را فراهم می کند اما همه این خدمات با هزینه اضافی و تأخیر اضافی برای ما خواهد بود.

در اینجا، UDP وارد می شود و برای خدمات بی درنگ مانند بازی های رایانه ای، ارتباط صوتی یا تصویری و کنفرانس های زنده مورد استفاده قرار می گیرد. در UDP هیچ خطایی وجود ندارد، بنابراین باعث پهنای باند نیز می شود. پروتکل اطلاعات کاربر (UDP) از نظر تأخیر و پهنای باند کارآمدتر است.

پروتکل UDP چیست؟

(UDP) User Datagram Protocol یک استاندارد ارتباطی برای تبادل داده از طریق اینترنت است. UDP با استفاده از یک فرایند بدون اتصال برای ارسال بسته های داده به مقصد، سرعت را بر قابلیت اطمینان اولویت می دهد. به دلیل تأخیر کم، UDP برای موارد استفاده حساس به زمان مانند پخش ویدئو، پروتکل Voice over Internet (VoIP)، بازی های ویدیویی و جستجوی سیستم نام دامنه (DNS) مناسب است.

وقتی پروتکل های سطح بالاتر نیاز به انتقال سریع داده ها دارند، برای بسته بندی و توزیع این داده ها از طریق پروتکل اینترنت (IP) به UDP اعتماد می کنند.

پروتکل UDP چیست؟

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

با استفاده از پروتکل User Datagram، یک برنامه کاربردی می تواند اطلاعات را خیلی سریع ارسال کند، زیرا نه باید ارتباطی با مخاطب برقرار شود و نه اینکه منتظر پاسخ باشید. با این وجود هیچ تضمینی وجود ندارد بسته ها به صورت کامل و به همان ترتیب ارسال شده وارد شوند.

علاوه بر این، پروتکل محافظت خود را در برابر دستکاری یا دسترسی اشخاص ثالث فراهم نمی کند. با این حال، بسته های معیوب را می توان با یک چک کنترل قابل استفاده اختیاری (در ترکیب با IPv6 اجباری) تشخیص داد.

هدر های UDP

مانند UDP ،TCP بسته های داده را با یک سربرگ برچسب گذاری می کند. اما هدر های UDP بسیار ساده تر هستند. فقط چهار زمینه وجود دارد: 

  1. پورت منبع
  2. بندر هدف
  3. طول UDP
  4. checksum

پورت منبع نشان می دهد که انتقال از کجا انجام می شود. بندر مقصد نشان می دهد که کجا می رود. طول UDP مشخص می کند که چند بایت عنوان و داده ها را نشان می دهد و checksum فیلدی است که می تواند برای بررسی خطاهای موجود در هدر یا جریان داده مورد استفاده قرار گیرد.

TCP دارای قسمت های اضافی متعددی در عنوان است که به شما کمک می کند بسته های داده سالم بمانند و در صورت لزوم می توانند دوباره مرتب شوند. این قسمت های اضافی به طور قابل توجهی اندازه هدر را افزایش می دهند.

ویژگی های UDP در یک نگاه

برای درک دقیق نحوه کار انتقال بسته با این پروتکل به طور مفصل، نگاهی دقیق به خصوصیات پروتکل کاربر دیتاگرام بیاندازیم:

  1. UDP بدون اتصال است: ویژگی انتقال داده از طریق UDP این است که بدون اتصال موجود بین مخاطب و گیرنده انجام می شود. سپس بسته های مربوطه بدون تعیین نیاز به پاسخ دادن به کامپیوتر، به آدرس IP ترجیحی ارسال می شوند و درگاه مورد نظر را مشخص می کنند.
    با این حال، اگر بسته ها نیز قرار است به گیرنده بازگردانده شوند، سرصفحه UDP به صورت اختیاری می تواند شامل پورت منبع نیز باشد.
  2. UDP از پورت استفاده می کند: مانند UDP،TCP نیز از پورت استفاده می کند تا بسته ها به پروتکل های صحیح بعدی یا برنامه های مورد نظر در سیستم هدف منتقل شوند. پورت ها با توجه به الگوی اثبات شده توسط اعداد تعریف می شوند و اعداد بین 0 تا 1023 به سرویس های ثابت اختصاص داده می شوند.
  3. UDP ارتباط سریع و بدون تاخیر را امکان پذیر می کند: پروتکل حمل و نقل به دلیل عدم تنظیم اتصال، برای انتقال سریع داده مناسب است. این امر از این واقعیت حاصل می شود که از بین رفتن بسته های جداگانه فقط بر کیفیت انتقال تأثیر می گذارد.
    از طرف دیگر، با اتصالات TCP، بسته های گمشده به طور خودکار مجدداً درخواست می شوند و این باعث می شود که کل فرآیند انتقال به بن بست برسد.
  4. UDP امنیت و یکپارچگی داده ها را تضمین نمی کند: عدم احراز هویت متقابل بین مخاطب و گیرنده، سرعت انتقال عالی UDP را تضمین می کند. با این حال، پروتکل نه می تواند کامل بودن و نه امنیت بسته های داده را تضمین کند.
    توالی صحیح بسته های ارسالی نیز تضمین نمی شود. به همین دلیل، خدماتی که از UDP استفاده می کنند باید اقدامات خاص خود را برای اصلاح یا محافظت ارائه دهند.

سرآیند UDP چگونه ساخته شده است؟

همانطور که برای پروتکل ها معمول است، بسته های UDP از یک سرآیند و اطلاعات واقعی کاربر تشکیل می شوند.
هدر UDP شامل تمام اطلاعات مورد نیاز برای انتقال داده ها با استفاده از پروتکل حمل و نقل است و باعث می شود یک بسته UDP به همین ترتیب قابل شناسایی باشد.
به دو بلوک 32 بیتی با چهار قسمت داده مختلف تقسیم شده است، ساختار به شرح زیر است:

بیت 0 – 15بیت 16 – 31
0پورت منبعبندر هدف
32طولchecksum

✔ 16 بیت اول ناحیه هدر، پورت منبع را نشان می دهد که بسته داده مربوطه از طریق آن ارسال می شود. گیرنده به این اطلاعات نیاز دارد تا بتواند به بسته پاسخ دهد. از آنجا که UDP بدون اتصال است و بین مخاطب و گیرنده مبادله ای انجام نمی شود، این قسمت اختیاری است. بنابراین، مقدار “0” معمولاً در اینجا تنظیم می شود.

✔ در قسمت بعدی، پورت هدف و بنابراین سرویس قابل دسترسی مشخص شده است. بر خلاف پورت منبع، این اطلاعات اجباری است، در غیر این صورت نمی توان به طور صحیح داده را تعیین کرد.

نکته: اگر یک برنامه سمت مشتری باشد، شماره پورت اختصاص داده شده احتمالاً بی ثبات است. اگر پورت به یک فرآیند سرور اختصاص داده شود، شماره پورت معمولاً یکی از “پورت های شناخته شده” (پورت های استاندارد) است.

✔ قسمت length طول دیتاگرام را مشخص می کند. این شامل طول هدر: (8 بایت) و اندازه داده های کاربر است (حداکثر تئوری: 65،535 بایت). هنگام استفاده از IPv4، حد واقعی برای داده های کاربر 65507 بایت است. در IPv6 بسته هایی (به اصطلاح ژامبوگرام) که از حداکثر بیشتر باشند نیز امکان پذیر است. طبق RFC 2675، در چنین حالتی مقدار فیلد طول روی “0” تنظیم می شود.

✔ هدر UDP توسط checksum خاتمه می یابد که برای تشخیص خطا در هنگام انتقال استفاده می شود. به این ترتیب می توان هرگونه دستکاری داده های ارسالی را تشخیص داد.

سخن آخر

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

منابع: ionosemnify

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

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

نشانی ایمیل شما منتشر نخواهد شد.

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