В компютърните мрежи UDP означава User Datagram Protocol. Дейвид П. Рийд разработи UDP протокола през 1980 г. Той е дефиниран в RFC 768 и е част от TCP/IP протокола, така че е стандартен протокол в интернет. UDP протоколът позволява на компютърните приложения да изпращат съобщенията под формата на дейтаграми от една машина на друга машина през мрежата на интернет протокола (IP). UDP е алтернативен комуникационен протокол на TCP протокола (протокол за контрол на предаването). Подобно на TCP, UDP предоставя набор от правила, които управляват как трябва да се обменят данните по интернет. UDP работи, като капсулира данните в пакета и предоставя собствена информация за заглавката на пакета. След това този UDP пакет се капсулира в IP пакета и се изпраща до местоназначението си. И двете TCP и UDP протоколите изпращат данните през мрежата на интернет протокола, така че е известен също като TCP/IP и UDP/IP. Има много разлики между тези два протокола. UDP позволява на процеса да обработва комуникация, докато TCP осигурява комуникация между хостове. Тъй като UDP изпраща съобщенията под формата на дейтаграми, това се счита за най-добрия начин на комуникация. TCP изпраща отделните пакети, така че е надеждна транспортна среда. Друга разлика е, че TCP е протокол, ориентиран към връзка, докато UDP е протокол без връзка, тъй като не изисква никаква виртуална верига за прехвърляне на данните.
UDP също така предоставя различен номер на порт за разграничаване на различни потребителски заявки и също така предоставя възможност за контролна сума, за да провери дали пълните данни са пристигнали или не; IP слоят не предоставя тези две услуги.
Характеристики на UDP протокола
Следните са характеристиките на UDP протокола:
UDP е най-простият комуникационен протокол на транспортно ниво. Съдържа минимално количество комуникационни механизми. Счита се за ненадежден протокол и се основава на услуги за доставка с най-добри усилия. UDP не предоставя механизъм за потвърждение, което означава, че получателят не изпраща потвърждението за получения пакет, а подателят също не изчаква потвърждението за пакета, който е изпратил.
UDP е протокол без връзка, тъй като не създава виртуален път за прехвърляне на данните. Той не използва виртуалния път, така че пакетите се изпращат по различни пътища между подателя и получателя, което води до загуба на пакети или получени неправилно.
Поръчаната доставка на данни не е гарантирана.
В случай на UDP, дейтаграмите се изпращат в някакъв ред, ще бъдат получени в същия ред, не е гарантирано, тъй като дейтаграмите не са номерирани.
UDP протоколът използва различни номера на портове, така че данните да могат да бъдат изпратени до правилната дестинация. Номерата на портовете са дефинирани между 0 и 1023.
какво е регистърът на буквите в sql
UDP позволява по-бързо предаване, тъй като е протокол без връзка, т.е. не е необходим виртуален път за прехвърляне на данните. Но има вероятност отделният пакет да бъде загубен, което се отразява на качеството на предаване. От друга страна, ако пакетът се изгуби в TCP връзка, този пакет ще бъде изпратен повторно, така че се гарантира доставката на пакетите с данни.
UDP има някакъв механизъм за потвърждение, т.е. няма ръкостискане между UDP подателя и UDP получателя. Ако съобщението е изпратено в TCP, тогава получателят потвърждава, че съм готов, след което подателят изпраща данните. В случай на TCP ръкостискането се осъществява между подателя и получателя, докато в UDP няма ръкостискане между подателя и получателя.
Всеки UDP сегмент се обработва отделно от другите, тъй като всеки сегмент поема по различен път, за да достигне до дестинацията. UDP сегментите могат да бъдат загубени или доставени неправилно, за да достигнат до дестинацията, тъй като няма настройка на връзката между подателя и получателя.
Това е протокол без състояние, което означава, че подателят не получава потвърждението за изпратения пакет.
Защо се нуждаем от UDP протокол?
Тъй като знаем, че UDP е ненадежден протокол, но все пак изискваме UDP протокол в някои случаи. UDP се използва там, където пакетите изискват голяма честотна лента заедно с действителните данни. Например, при стрийминг на видео, признаването на хиляди пакети е обезпокоително и губи много честотна лента. В случай на поточно видео, загубата на някои пакети не може да създаде проблем и може също да бъде игнорирана.
UDP формат на заглавката
В UDP размерът на заглавието е 8 байта, а размерът на пакета е до 65 535 байта. Но този размер на пакета не е възможен, тъй като данните трябва да бъдат капсулирани в IP дейтаграмата, а размерът на заглавката на IP пакет може да бъде 20 байта; следователно максимумът на UDP ще бъде 65 535 минус 20. Размерът на данните, които UDP пакетът може да носи, ще бъде 65 535 минус 28 като 8 байта за заглавката на UDP пакета и 20 байта за IP заглавката.
UDP заглавката съдържа четири полета:
Концепция за опашка в UDP протокол
В UDP протокола числата се използват за разграничаване на различните процеси на сървър и клиент. Знаем, че UDP предоставя процес за обработка на комуникация. Клиентът генерира процесите, които се нуждаят от услуги, докато сървърът генерира процесите, които предоставят услуги. Опашките са налични и за двата процеса, т.е. две опашки за всеки процес. Първата опашка е входящата опашка, която получава съобщенията, а втората е изходящата опашка, която изпраща съобщенията. Опашката функционира, когато процесът се изпълнява. Ако процесът бъде прекратен, опашката също ще бъде унищожена.
UDP управлява изпращането и получаването на UDP пакети с помощта на следните компоненти:
частично производно в латекс
Няколко процеса искат да използват услугите на UDP. UDP мултиплексира и демултиплексира процесите, така че множеството процеси да могат да се изпълняват на един хост.
Ограничения
- Предоставя ненадеждна услуга за доставка на връзка. Той не предоставя никакви услуги на IP, освен че осигурява комуникация процес към процес.
- UDP съобщението може да бъде изгубено, забавено, дублирано или може да не работи.
- Не предоставя надеждна транспортна услуга за доставка. Той не предоставя механизъм за потвърждение или контрол на потока. Въпреки това, той осигурява до известна степен контрол на грешките.
Предимства
- Той произвежда минимален брой режийни разходи.