
Table of Contents
پروتکل UDP چیست؟
UDP (پروتکل دیتاگرام کاربر) یک پروتکل بلندمدت است که با پروتکل IP برای ارسال داده ها استفاده می شود که سرعت انتقال و کارایی مهمتر از امنیت و قابلیت اعتماد است. UDP از یک مدل ارتباط بیارتباط و ساده با مکانیزم های پروتکل حداقل استفاده می کند. UDP از چکسازی برای اطمینان از سالم بودن داده ها و شماره پورت برای تمایز بین برنامه های مختلف در فرستنده و گیرنده داده استفاده می کند.
مزایا و معایب پروتکل UDP چیستند؟
مزایا
سرعت انتقال سریع
UDP دستنیافتههای TCP مانند handshake، acknowledgment، retransmission، congestion control و سایر مکانیزمها را ندارد. به جای اینها، UDP یک پروتکل انتقال بدون وضعیت است که سریعتر دادهها را انتقال میدهد.
سربرگ کوتاهتر است
سربرگ TCP 20 بایت است و سربرگ UDP 8 بایت است.

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

داده ها از دست رفته است
از پروتکل UDP در شبکههای ناامن استفاده نکنید. UDP یک پروتکل نوع اتصال نیست. بنابراین، اگر نیازی به برقراری اتصال ندارید، میتوانید پیامها را مستقیماً ارسال کنید که منجر به از دست دادن بستههای مهم میشود.
با این حال، این کمترین منابع را مصرف می کند، سرعت پردازش سریعتری دارد و برای انتقال صدا، ویدیو و داده های عمومی مناسب تر است. بنابراین، حتی اگر یک یا دو بسته از دست بروند، برای نتایج دریافت شده عواقب شدیدی وجود نخواهد داشت.
کی باید از پروتکل UDP استفاده کرد؟
بسته های UDP به دلیل عدم وجود تضمین قابلیت اطمینان، تضمین توالی و فیلدهای کنترل جریان، قابلیت اطمینان کمی دارند. با این حال، به دلیل اینکه پروتکل UDP کمترین گزینه های کنترل را دارد، تاخیر در انتقال داده کم است و کارایی انتقال داده بالا است. بنابراین، برای برنامه هایی که نیاز به قابلیت اطمینان بالا ندارند یا می توانند قابلیت اطمینان را تضمین کنند، مانند DNS، TFTP و SNMP مناسب است.