User Datagram Protocol
UDP - user datagram протоколын тухай
[засварлах | кодоор засварлах]TCP/IP |
---|
Хэрэглээний түвшин |
Тээвэрлэлтийн түвшин |
Сүлжээний түвшин |
Холболтын түвшин |
User Datagram Protocol буюу UDP нь компьютерийн сүлжээний тээвэрлэлтийн түвшний найдваргүй, холболтгүй нөхцөлд хэрэглэгддэг протокол юм. IP протоколын үйлчилгээг өргөжүүлж процессоос процесс руух холболт, бага зэргийн алдаа шалгалтыг гүйцэтгэдэг. UDP нь маш энгийн протокол бөгөөд процессууд хоорондоо найдваргүйгээр зурвас явуулахыг хүсвэл UDP протоколыг ихэвчлэн ашигладаг. Найдвартай байдал, байнгын холболт шаардлагатай үед TCP гэх мэт протоколыг ашигладаг.UDP IP давхарга заасан нь хоёроос үйлчилгээг үзүүлж байна. Энэ нэмэлт нь шалгалтын чадавхи мэдээллийн бүрэн бүтэн ирсэн гэдгийг нотлохын тулд өөр өөр хэрэглэгчийн хүсэлтийг ялгаж болон туслах портын дугаарыг олгодог. Харин UDP л пакетуудыг, энэ нь их бага зурвасын өргөн нэмэлт зардал болон хоцрогдол байна гэсэн үг илгээдэг. Харин пакетууд нь алдсан, хувь пакетууд нь илгээгч болон хүлээн авагчийн хооронд дундуур өөр өөр замыг улмаас, үр дүнд тулд гарч хүлээн авч болно. UDP нь хожимдол нь ийм тоглоомын, дуу, видео харилцаа холбоо, сөрөг ойлголт чанарт нөлөөлж байгаа ч зарим өгөгдлийн алдагдлаас зовох болно гэж чухал юм үзэж сүлжээний програмууд нь хамгийн тохиромжтой протокол юм. Зарим тохиолдолд, форвард алдаа залруулах арга нь зарим алдсан хэдий ч, аудио, видео чанарыг сайжруулахын тулд ашигладаг. Найдвартай байдал, байнгын холболт шаардлагатай үед TCP протоколыг ашигладаг.TCP нь бие даасан багц руу их хэмжээний өгөгдлийг багц зөрчсөн шалгаж ба алдагдсан пакетуудыг resending зөв дараалалд оруулах пакетуудыг жагсаах зэрэг үйлдлүүдийг үйлчилгээний улмаас интернэт холболт ихэнх нь ашиглаж зонхилох протокол болоод байна. Гэхдээ эдгээр нэмэлт үйлчилгээ нэмэлт өгөгдөл нэмэлт ачааллын хувьд нь зардлаар ирж, саатал хоцрогдол гэж нэрлэдэг
Пакетийн бүтэц
[засварлах | кодоор засварлах]UDP пакетын толгойн хэсэг нь 8 байт урттай.
Offsets | Октет | 0 | 1 | 2 | 3 | ||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Октет | Бит | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 |
0 | 0 | Source port | Destination port | ||||||||||||||||||||||||||||||
4 | 32 | Length | Checksum |
Source port number
[засварлах | кодоор засварлах]- Илгээгч дээр ажиллаж буй процессын портын хаяг. Урт нь 16 бит ба авах утгын хязгаар нь 0-65535 байна. Хэрвээ илгээгч нь клиент бол (клиент хүсэлт явуулахад) портын дугаар нь ихэнх тохиолдолд ephemeral port number байна. Илгээгч дээр ачаалж байгаа UDP нь энэ дугаарыг сонгосон байдаг. Хэрвээ илгээгч нь сервер бол портын дугаар нь ихэнх тохиолдолд well-known port number байна.
Destination port number
[засварлах | кодоор засварлах]- Хүлээн авагч дээр ачаалж байгаа процесын портын дугаар. Мөн 16 бит урттай. Хэрвээ хүлээн авагч нь сервер бол well-known port number, клиент бол ephemeral port number байна.
Length
[засварлах | кодоор засварлах]- Хэрэглэгчийн пакетын толгой хэсэг, өгөгдлийн хэсгийн нийлбэр. Хамгийн багадаа 8 байт (өгөгдөл байхгүй, зөвхөн толгой хэсэг).
Checksum
[засварлах | кодоор засварлах]- Checksum нь хэрэглэгчийн пакетийн (толгой хэсэг болон өгөгдлийн хэсэг хоёулангийн) алдааг илрүүлдэг.
UDP-гийн ажиллагаа
[засварлах | кодоор засварлах]Холболт үүсгэдэггүй шинж
[засварлах | кодоор засварлах]UDP протоколын connectionless буюу холболт үүсгэдэггүй үйлчилгээний гол санаа нь UDP-гээр илгээгдсэн пакет бүр нь бусад пакетуудаасаа үл хамаарна. Ингэхдээ илгээж буй, хүлээн авч буй талууд нь ижилхэн байсан ч хоорондоо хамааралгүй байдаг. Хэрэглэгчийн datagram-уудыг дугаарладаггүй.
Түүнчлэн холболт үүсгэх, салгах процесс байдаггүй бөгөөд пакет бүр ялгаатай замуудаар дамжиж болно. Холболт үүсгэхгүй байхын тэг сул тал нь холболтын үед дамжуулж байгаа мэдээллийг урсгал байдлаар дамжуулж болохгүй бөгөөд пакет бүрд таарах байдлаар жижиг хэсгүүдэд задлан дамжуулах ёстой.
Урсгал, алдааны удирдлага
[засварлах | кодоор засварлах]UDP-д урсгалыг зохицуулах механизм байдаггүй ба хүлээн авагч нь ирж байгаа бүх зурвасыг хүлээн авч чадалгүй overflow үүсэх боломж байдаг. Checksum ашиглахаас өөр алдааны удирдлагын механизм байдаггүй. Өөрөөр хэлбэл зурвас нь дамжуулах дунд алдагдсан, эсвэл дахин дамжуулалт хийгдсэнийг илгээгч мэдэх боломжгүй. Хүлээн авагч нь checksum-г шалгаж алдаатай гэж үзвэл илгээгчид мэдэгдэхгүйгээр шууд хаядаг.
Encapsulation ба Decapsulation
[засварлах | кодоор засварлах]Процесс хооронд мессеж дамжуулахын тулд IP протоколын пакет руу зурвасуудыг багцалж, задалдаг.
Queuing
[засварлах | кодоор засварлах]UDP ашиглан сүлжээгээр мэдээлэл дамжуулахын тулд процесс нь UDP порттой байх ба энэхүү порттой холбогдсон орох, гарах дараалал буюу queue байдаг. UDP нь queue-г ашиглан IP протоколтой харилцаж, зурвасыг авч, хийдэг.
Хэрэглээ
[засварлах | кодоор засварлах]- Урсгал, алдааны удирдлага хэрэггүй процесст хэрэглэгдэнэ. FTP зэрэг их хэмжээний өгөгдөл дамжуулдаг протоколд хэрэглэгддэгүй.
- Өөртөө урсгал, улдааны удирдлагатай процесст тохиромжтой. Жишээ нь TFTP-н дотоод ажиллагаанд энэ 2 удирдалаг байдаг тул UDP тохиромжтой
- Multicasting-д тохиромжтой. UDP-д multicasting байдаг ч TCP-д байхгүй
- SNMP зэрэг менежмэнтийн процесст хэрэглэгдэнэ.
- RIP зэрэг протоколд хэрэглэнэ.