پروتکل UDP

پروتکل UDP

قیمت :   ۱۲۹۰۰ تومان 

تعداد صفحات:

۴۰  ( چهل )

دسته :

کامپیوتر و IT

نوع فایل:

Word

توضیحات:

مناسب جهت پروژه دانشجویی

فهرست مطالب :

پروتکل UDP

پروتکل UDP

مقدمه

فصل اول -مروری بر انواع پروتکلها در اینترنت

۱-۱ ؟

۱-۲ و کارایی و قابلیت های آنها در شبکه

۱-۳ معرفی پروتکل TCP/IP

۱-۴

۱-۵

۱-۶ لایه Transport

۱-۷ لایه اینترنت

۱-۸

۱-۹ مشخص نمودن برنامه ها

۱-۱۰ پورت TCP/UDP

۱-۱۱ پروتکل TCP : لایه Transport

۱-۱۲ ارسال اطلاعات با استفاده از TCP

۱-۱۳ پروتکل UDP : لایه Transport

۱-۱۴ :

۱-۱۵ عملیات انجام شده توسط IP

۱-۱۶ پروتکل ICMP : لایه Internet

۱-۱۷ پروتکل IGMP : لایه Internet

 

فصل دوم -پروتکل UDP

۲-۱ UDP

۲-۲ پورت‌های مورد استفاده در UDP

۲-۳ ساختار بسته UDP

۲-۴ شماره پورت مبدأ

۲-۵

۲-۶

۲-۷

۲-۸

۲-۹ قابلیت اطمینان و راه‌حل‌هایی برای کنترل ازدحام در UDP

۲-۱۰ کاربردهای UDP

۲-۱۱ مقایسه UDP و TCP

بحث و نتیجه گیری

منابع و ماخذ

چکیده :

UDP) User Datagram Protocol) ، پروتکلی در سطح لایه “حمل” بوده که برنامه مقصد در شبکه را مشخص نموده و از نوع بدون اتصال است . پروتکل فوق، امکان توزیع اطلاعات با سرعت مناسب را ارائه ولی در رابطه با تضمین صحت ارسال اطلاعات ، سطح مطلوبی از اطمینان را بوجود نمی آورد . UDP در رابطه با داده های دریافتی توسط مقصد ، به Acknowledgment نیازی نداشته و در صورت بروز اشکال و یا خرابی در داده های ارسال شده ، تلاش مضاعفی بمنظور ارسال مجدد داده ها ، انجام نخواهد شد . این بدان معنی است که داده هائی کمتر ارسال می گردد ولی هیچیک از داده های دریافتی و صحت تسلسل بسته های اطلاعاتی ، تضمین نمی گردد .از پروتکل فوق ، بمنظور انتقال اطلاعات به چندین کامپیوتر با استفاده از Broadcast و یا Multicast ، استفاده بعمل می آید .
پروتکل UDP ، در مواردیکه حجم اندکی از اطلاعات ارسال و یا اطلاعات دارای اهمیت بالائی نمی بانشد ، نیز استفاده می گردد. استفاده از پروتکل UDP در مواردی همچون Multicasting Streaming media ، (نظیر یک ویدئو کنفرانس زنده) و یا انتشار لیستی از اسامی کامپیوترها که بمنظور ارتباطات محلی استفاده می گردند ، متداول است . بمنظور استفاده از UDP ، برنامه مبداء می بایست پورت UDP خود را مشخص نماید دقیقا” مشابه عملیاتی که می بایست کامپیوتر مقصد انجام دهد . لازم به یادآوری است که پورت های UDP از پورت های TCP مجزا و متمایز می باشند (حتی اگر دارای شماره پورت یکسان باشند ).

کلمات کلیدی :
پروتکل-انواع پروتکل-قرارداد اینترنتی-پروتکلUDP-پروتکل دیتاگرام-مقایسه UDP –پروتکل TCP

 

پروتکل UDP 

۲-۱ UDP :

قرارداد داده‌نگار کاربر یا پروتکل داده‌نگار کاربر (به انگلیسی: UDP یا User Datagram Protocol)‏ یکی از اجزاء اصلی مجموعه پروتکل اینترنت، مجموعه‌ای از پروتکل‌های شبکه که در اینترنت مورد استفاده قرار می‌گیرند، می‌باشد. رایانه‌ها با استفاده از UDP قادر به ارسال پیغام، که در این مورد آن را داده‌نگار یا Datagram می‌نامیم، به دیگر میزبان‌های موجود در پروتکل اینترنت (IP) می‌باشند. این پروتکل توانایی این را دارد که این کار را بدون برقراری ارتباط قبلی و یا ایجاد کانالها یا مسیرهای انتقال داده ویژه انجام دهد. پروتکل مزبور در سال ۱۹۸۰ توسط دیوید پی. رید ابداع گردیده و به طور رسمی در استاندارد RFC 768 تعریف شد.

UDP از مدل انتقال ساده بدون استفاده از تکنیک دست تکانی صریح که برای ایجاد قابلیت اطمینان (Reliability)، مرتب سازی و یکپارچه سازی داده‌ها بکار می‌رود، بهره می‌جوید. بنابراین، UDP سرویس غیرمطمئنی را ارائه می‌دهد و ممکن است داده‌نگارها نامرتب، تکراری بوده و یا بدون اطلاع قبلی از دست بروند. UDP تشخیص می‌دهد که بررسی خطا و تصحیح آن با توجه به نوع کاربردی که دارد لازم نبوده و یا نباید اجرا شود، بنابراین چنین بار اضافی پردازشی را بر شبکه تحمیل نمی‌کند. برنامه‌های که نسبت به زمان حساس هستند از UDP استفاده می‌کنند، زیرا از دست دادن بسته‌ها بهتر از منتظر ماندن برای بسته هاست. بنابراین پروتکل UDP بهترین گزینه برای سیستم‌های بلادرنگ به حساب می‌آید. اگر برنامه‌ای نیاز به امکانات تصحیح خطا در سطح واسط شبکه داشته باشد، می‌تواند از قرارداد کنترل انتقال (به انگلیسی: TCP یا Transmission Control Protocol)‏ و یا پروتکل انتقال کنترل جریان (به انگلیسی: SCTP یا Stream Control Transmission Protocol)‏ استفاده کند که به طور خاص برای این منظور طراحی شده‌اند.

طبیعت [[پروتکل‌های بدون حالت|بدون حالت}} UDP می‌تواند برای سرورهایی که به پرس و جوهای کوچک حجم زیادی از کلاینت‌ها پاسخ می‌دهند نیز مفید واقع شود. UDP بر خلاف TCP، با شبکه‌های پخشی (انتشار بسته در کل شبکه محلی) و شبکه‌های چندپخشی (ارسال بسته به بخشی از شبکه) سازگاری کامل دارد.

برنامه‌های معمول شبکه که از UDP استفاده می‌کنند عبارتند از: سامانه نام دامنه (به انگلیسی: DNS یا Domain Name System)‏، برنامه‌هایی که از پخش زنده یا رسانه جویباری (Streaming Media) استفاده می‌کنند نظیر تلویزیون پروتکل اینترنت یا IPTV، صدا روی پروتکل اینترنت یا VoIP، پروتکل ساده انتقال فایل (به انگلیسی: TFTP یا Trivial File Transfer Protocol)‏ و بسیاری از بازی‌های برخط.

۲-۲ پورت‌های مورد استفاده در UDP

برنامه‌های UDP از سوکت داده‌نگار برای برقراری ارتباطات میزبان-به-میزبان استفاده می‌کنند. برنامه یک سوکت را در انتهای بسته انتقال داده اش می‌چسباند، که ترکیبی از آدرس آی‌پی و شماره پورت سرویس است. پورت یک ساختار نرم افزاری است که با یک عدد ۱۶ بیتی به نام شماره پورت شناسایی می‌شود. شماره پورت عددی بین ۰ تا ۶۵,۵۳۵ است. پورت ۰ رزرو شده‌است، اما اگر پردازش ارسال کننده انتظار دریافت پیام را نداشته باشید مجاز است که از این پورت استفاده کند.

آیانا یا انجمن شماره‌های تخصیص یافته اینترنتی شماره پورتها را به سه دسته تقسیم کرده‌است. پورت‌های بین ۰ تا ۱۰۲۳ برای سرویس‌های شناخته شده و عمومی آزادند. پورتهای بین ۱۰۲۴ و ۴۹,۱۵۱ پورت‌های ثبت شده هستند و برای سرویس‌های مخصوص IANA در نظر گرفته شده‌اند. پورتهای بین ۴۹,۱۵۲ تا ۶۵,۵۳۵ پورت‌های داینامیکی هستند که به طور رسمی برای سرویس خاصی در نظر گرفته نشده‌اند و می توان برای هر منظوری استفاده کرد.

۲-۳ ساختار بسته UDP

UDP کمینه ترین پروتکل مبتنی بر پیغام لایه انتقال است که جزئیات آن در RFC 768 آورده شده‌است.

UDP هیچگونه تضمینی برای تحویل پیام به پروتکل لایه بالاتر را نمی‌دهد و پروتکل‌هایی هم که از UDP استفاده می‌کنند هیچ حالتی از پیغامی را می‌فرستند نگه نمی‌دارند. به همین دلیل، UDP را پروتکل داده‌نگار غیر مطمئن می‌نامند.

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

 

افست (بیت) ۰ – ۱۵ ۱۶ – ۳۱
۰ شماره پورت مبدأ شماره پورت مقصد
۳۲ طول چک‌سام
۶۴ داده

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

برای آنکه بتوان برای پروسه مبدأ پاسخی برگرداند، به شماره پورت مبدأ نیاز است. بدین منظور محتوای فیلد پورت مبدأ از بسته ورودی، در فیلد پورت مقصد از بسته خروجی، کپی و ارسال می شود. بدین ترتیب فرستنده پاسخ، پروسه تحویل گیرنده بسته را مشخص می نماید.[۱]

سرایند UDP دارای ۴ ستون، طول هر کدام ۲ بایت (۱۶ بیت) و استفاده از دو تای آنها در IPv4 اختیاری است. (فیلدهایی که با رنگ صورتی مشخص شده‌اند). در IPv6 تنها استفاده از شماره پورت مبداً اختیاری می باشد. (جدول پایین)

۲-۴ شماره پورت مبدأ

این فیلد شماره پورت فرستنده را مشخص می‌کند و زمانی معنا پیدا می‌کند که برای پاسخ دادن احتیاج به شماره پورت فرستنده داشته باشیم. اگر از آن استفاده نشود، عدد صفر در آن قرار می‌گیرد. اگر میزبان مبدأ یک کلاینت باشد، شماره پورت به احتمال زیاد یک شماره پورت موقتی (دسته سوم) خواهد بود. اگر میزبان مبدأ یک سرور باشد، احتمالاً شماره پورت جزو پورت‌های عمومی (دسته اول) خواهد بود.

۲-۵ شماره پورت مقصد

این فیلد شماره پورت مقصد را نشان می‌دهد و وجود آن الزامیست. همانند شماره پورت مبدأ، اگر کلاینت، میزبان مقصد باشد، شماره پورت به احتمال زیاد جزو پورت‌های موقتی خواهد بود و اگر میزبان مقصد یک سرور باشد شماره پورت جزو دسته اول خواهد بود.

طول

فیلدی که طول کل داده‌نگار را بر حسب بایت نشان می‌دهد. حداقل طول ۸ بایت است که متعلق به طول سرآیند می‌باشد. اندازه فیلد به طور تئوریک ۶۵,۵۳۵ بایت (۸ بایت برای سرآیند + ۶۵,۵۲۷ بایت برای داده) برای داده‌نگار UDP است. اما حداکثر اندازه عملی برای IPv4 عبارت است از ۶۵,۵۰۷ بایت. (۶۵,۵۳۵ – ۸ بایت برای سرآیند یو دی پی – ۲۰ بایت برای سرآیند IP). عدم استفاده از این فیلد نوعی سهل انگاری است مگر اینکه کیفیت داده ها چندان مهم نباشد. (مثلاً در مورد صدای دیجیتال)

۲-۶ Checksum

فیلد چک‌سام برای بررسی خطای سرایند و داده استفاده می‌شود. اگر هیچ چک‌سامی توسط فرستنده تولید نشود، این فیلد با صفر پر می‌شود. فیلد مزبور در IPv6 اختیاری نیست.

محاسبه چک‌سام

روشی که برای محاسبه چک‌سام مورد استفاده قرار می گیرد در RFC 768 تعریف شده است:

این کد حاصل جمع سرآیند، داده‌ها و یک «شبه فرآیند فرضی» (Pseudoheader) است. قالب شبه سرآیند فرضی در جدول پایین آمده است. برای محاسبه این کد ابتدا فید چک‌سام صفر فرض می شود و در صورت فرد بودن تعداد بایتها، تعدادی صفر زائد به انتهای داده‌ها اضافه می گردد تا تعداد بایتها زوج شود. الگوریتم محاسبه چک‌سام بسیار ساده است: مجموعه بایتها به صورت کلمات ۱۶ بیتی (یعنی دو بایت دو بایت) با هم جمع شده و حاصل جمع به صورت «متمم ۱» (One’s Complement) منفی می شود و درون فید چک‌سام قرار می گیرد. نتیجتاً وقتی در گیرنده این محاسبه بر روی کل قطعه (شامل فیلد چک‌سام) انجام می شود نتیجه آن باید صفر باشد. در غیر اینصورت داده‌ها قابل اطمینان و سالم نیستند.[۲]

تفاوت IPv4 و IPv6 در محاسبه چک‌سام در میزان داده های محاسباتی آنها می باشد.

۲-۷ شبه سرآیند فرضی در IPv4

چک سام در قالب UDP IPv4 با استفاده از یک شبه سرآیند فرضی محاسبه می شود و شباهت زیادی به سرآیند واقعی یک IP دارد. این سرآیند فرضی یک سرآیند واقعی IP نمی باشد که در ارسال بسته IP دخالت دارد. جدول زیر ساختار کامل شبه سرآیند فرضی که تنها برای محاسبه چک‌سام مورد استفاده قرار می گیرد را مشخص می نماید.

[۱] اندرو تنن‌بام. «فصل ششم، لایه انتقال». در شبکه‌های کامپیوتری. ترجمهٔ حسین پدرام، احسان ملکیان، علیرضا زارع پور. ویرایش چهارم. تهران: نص، ۱۳۸۲٫ ۵۲۳-۵۲۲٫

[۲] همان، ص ۵۳۷٫

(فایل کامل این پروژه ۴۰ (چهل) صفحه word همراه با منابع و ماخذ می باشد.)

در تمامی ساعات شبانه روز >> پرداخت آنلاین و دانلود آنی فایل پس از پرداخت. 


پروتکل UDP

توجه مهم :

*دوست عزیز در صورت نداشتن رمز پویا یا قطع بودن درگاه بانکی ، لطفا نام پروژه درخواستی خود را جهت هماهنگی برای دریافت شماره کارت واریزی و دریافت لینک دانلود، به واتساپ پشتیبانی سایت  ۰۹۳۹۲۷۶۱۶۳۰  ارسال کنید *(از ساعت ۸ الی ۲۳)

Related posts

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

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