User Datagram Protocol (UDP) ในระบบเครือข่ายคอมพิวเตอร์ได้รับการพัฒนาในปี 1980 โดย David P. Reed เป็นโปรโตคอลมาตรฐานและเป็นส่วนหนึ่งของ โปรโตคอล TCP/IP ผ่านทางอินเทอร์เน็ต โปรโตคอลนี้อนุญาตให้แอปพลิเคชันของคอมพิวเตอร์ส่งข้อความในรูปแบบดาตาแกรมจากคอมพิวเตอร์เครื่องหนึ่งไปยังอีกเครื่องหนึ่งผ่านเครือข่าย IP (Internet Protocol) UDP นี้เป็นโปรโตคอลการสื่อสารทางเลือกแทนโปรโตคอลควบคุมการส่ง โปรโตคอลนี้มีชุดของกฎเช่น TCP ที่กำหนดวิธีแลกเปลี่ยนข้อมูลบนอินเทอร์เน็ต บทความนี้กล่าวถึงภาพรวมของ UDP หรือโปรโตคอลดาตาแกรมของผู้ใช้ - การทำงานกับแอพพลิเคชั่น
User Datagram Protocol คืออะไร?
ดิ โปรโตคอลการสื่อสาร ซึ่งใช้ในการสร้างความน่าเชื่อถือและการเชื่อมต่อเวลาแฝงที่น้อยลงระหว่างแอปพลิเคชันอินเทอร์เน็ตเรียกว่าโปรโตคอลดาตาแกรมของผู้ใช้หรือ UDP โปรโตคอล UDP ถูกเลือกมาโดยเฉพาะสำหรับแอปพลิเคชันที่คำนึงถึงเวลา เช่น การเล่นวิดีโอ การเล่นเกม ฯลฯ โปรโตคอลนี้ช่วยเร่งความเร็วในการสื่อสาร เนื่องจากจะไม่ใช้เวลามากขึ้นในการสร้างการเชื่อมต่อที่แน่นหนาผ่านปลายทางก่อนที่จะส่งข้อมูล
UDP ใช้บริการ IP เพื่อให้กลไกการจัดส่งที่ดีที่สุด ในโปรโตคอลนี้ ผู้รับจะไม่สร้างการตอบรับแพ็กเก็ตที่ได้รับและตามลำดับ ผู้ส่งจะไม่คงอยู่สำหรับการรับรู้แพ็กเก็ตที่ส่ง ดังนั้นข้อผิดพลาดนี้จะทำให้โปรโตคอลนี้ไม่น่าเชื่อถือและง่ายต่อการประมวลผล
คุณสมบัติ
ดิ คุณสมบัติของโปรโตคอลดาต้าผู้ใช้ รวมสิ่งต่อไปนี้
- นี่ไม่ใช่โปรโตคอลที่เน้นการเชื่อมต่อ
- ไม่รับประกันการส่งข้อมูล
- โปรโตคอลนี้เรียบง่ายและเหมาะสมสำหรับการสื่อสารแบบสอบถามข้อมูล
- มันส่งแพ็กเก็ตในปริมาณมาก
- ดาตาแกรม UDP ถูกใช้ภายใน DNS, NFS, TFTP, SNMP เป็นต้น
- โปรโตคอลนี้เหมาะสำหรับข้อมูลที่ไหลไปในทิศทางเดียว
- ไม่มีกลไกควบคุมความแออัด
- เหมาะสำหรับการสตรีมแอปพลิเคชัน เช่น การสตรีมมัลติมีเดีย VoIP เป็นต้น
- ไม่มีความแออัดหรือการควบคุมการไหล ดังนั้นผู้ส่งจึงสามารถบุกรุกบัฟเฟอร์ของผู้รับได้
- มันเพิ่มการกำหนดที่อยู่และการตรวจสอบระหว่างกระบวนการกับ IP
- ใช้เมื่อเปิดซ็อกเก็ตในโหมดดาตาแกรม
- สำหรับการถ่ายโอนข้อมูล ต้องใช้โปรโตคอลล็อกขั้นตอนกับ UDP
ลักษณะเฉพาะ
ดิ ลักษณะของโปรโตคอลดาต้าผู้ใช้ รวมสิ่งต่อไปนี้
- โปรโตคอลนี้เป็นตัวแปรและโปรโตคอลประเภทการเชื่อมต่อ
- มันเกือบจะเป็น Null Protocol
- โปรโตคอลนี้ดีเมื่อกระแสข้อมูลอยู่ในทิศทางเดียว
- เมื่อใช้โปรโตคอลนี้ จะไม่มีกลไกควบคุมความแออัด
- โปรโตคอลนี้ให้บริการขนส่งขั้นต่ำ
- UDP เป็นโปรโตคอลไร้สัญชาติ
- ดาตาแกรม UDP ใช้เส้นทางที่คล้ายกันและมาถึงในลำดับที่ถูกต้องที่ปลายทาง
- แอปพลิเคชัน UDP ถือว่าไม่น่าเชื่อถือเสมอไป
- UDP จะส่งข้อมูลไปยังเครือข่ายอย่างง่าย ๆ เมื่อปลายทางพร้อมที่จะรับข้อมูล
สถาปัตยกรรมโปรโตคอลดาตาแกรมของผู้ใช้
โดยปกติแพ็กเก็ตโปรโตคอลดาตาแกรมของผู้ใช้จะเรียกว่า User Datagram และขนาดส่วนหัวได้รับการแก้ไขเช่น 8 ไบต์ ให้เราพูดถึงรูปแบบดาตาแกรมของผู้ใช้ ส่วนหัวของ UDP ประกอบด้วยสี่ฟิลด์หมายเลขพอร์ตต้นทาง หมายเลขพอร์ตปลายทาง ความยาวทั้งหมด และเช็คซัม โดยที่แต่ละฟิลด์จะกล่าวถึงด้านล่าง
- หมายเลขพอร์ตต้นทางคือข้อมูล 16 บิตที่รับรู้พอร์ตที่จะส่งแพ็กเก็ต
- หมายเลขพอร์ตปลายทางเพียงระบุพอร์ตที่จะอนุญาตให้มีข้อมูลซึ่งเป็นข้อมูล 16 บิตที่ใช้สำหรับระบุบริการระดับแอปพลิเคชันบนเครื่องปลายทาง
- ความยาวคือฟิลด์ 16 บิตที่ระบุความยาวแพ็กเก็ต UDP ทั้งหมดที่ประกอบด้วยส่วนหัว ดังนั้นค่าต่ำสุดจะเป็น 8 ไบต์ เนื่องจากขนาดส่วนหัวคือ 8 ไบต์
- เช็คซัมเป็นฟิลด์ 16 บิต ซึ่งจะตรวจสอบว่าข้อมูลถูกต้องหรือไม่ เนื่องจากมีโอกาสที่ข้อมูลจะถูกทำลายขณะส่ง ดังนั้น checksum จึงเป็นฟิลด์ที่ไม่บังคับ ดังนั้นมันจึงขึ้นอยู่กับแอปพลิเคชันเป็นหลัก ไม่ว่าจะต้องเขียนเช็คซัมหรือไม่ก็ตาม
หากไม่ต้องการเขียนผลรวมตรวจสอบ ถัดไป 16 บิตทั้งหมดจะเหลือ '0' ในโปรโตคอลนี้ ฟิลด์ checksum จะมอบให้กับทั้งแพ็กเก็ต นั่นคือ ส่วนหัว & ส่วนข้อมูล แต่ฟิลด์ checksum ใน IP จะใช้กับฟิลด์ส่วนหัวเท่านั้น
User Datagram Protocol ทำงานอย่างไร
โปรโตคอลดาตาแกรมของผู้ใช้ใช้ IP เพื่อรับดาตาแกรมจากพีซีเครื่องหนึ่งไปยังอีกเครื่องหนึ่ง โปรโตคอลนี้ทำงานโดยการรวบรวมข้อมูลภายในแพ็กเก็ต UDP & รวมถึงข้อมูลส่วนหัวของตัวเองในแพ็กเก็ต ดังนั้นข้อมูลนี้จึงรวมถึง IP ของพอร์ตต้นทางและปลายทางที่จะสนทนา ความยาวแพ็กเก็ต & การตรวจสอบ เมื่อแพ็กเก็ต UDP ถูกสรุปภายในแพ็กเก็ต IP แล้ว แพ็กเก็ตเหล่านั้นจะถูกส่งไปยังปลายทาง
ไม่เหมือน TCP โปรโตคอลนี้ไม่ได้เชื่อมต่อโดยตรงกับคอมพิวเตอร์ที่รับ ดังนั้นจึงไม่ให้การรับรองในการส่งแพ็กเก็ตไปยังปลายทางที่ถูกต้อง แต่จะส่งข้อมูลออก & ขึ้นอยู่กับอุปกรณ์ระหว่างคอมพิวเตอร์ที่ส่งและรับ ได้รับข้อมูลอย่างถูกต้อง
แอปพลิเคชันส่วนใหญ่รอการตอบกลับใดๆ ที่พวกเขาคิดว่าจะได้รับอันเป็นผลมาจากแพ็กเก็ตที่ส่งผ่าน UDP ดังนั้น หากแอปพลิเคชันใดไม่ได้รับการตอบกลับในช่วงเวลาใดเวลาหนึ่ง แอปพลิเคชันจะส่งแพ็กเก็ตอีกครั้งหรือสิ้นสุดการทดลองใช้
โปรโตคอลนี้ใช้รูปแบบการส่งข้อมูลอย่างง่ายซึ่งไม่มีการพูดคุยแบบจับมือกันสำหรับการสั่งซื้อ ความน่าเชื่อถือ หรือความสมบูรณ์ของข้อมูล ส่งผลให้บริการของโปรโตคอลนี้ไม่มีความรับผิดชอบ ดังนั้นแพ็คเก็ตอาจดูไม่เป็นระเบียบ มีสำเนาหรือหายไปโดยไม่มีการเตือน
ความแตกต่าง B/w TCP กับ UDP
ดิ ความแตกต่างระหว่าง TCP และ UDP รวมถึงสิ่งต่อไปนี้
TCP |
UDP |
TCP ใช้การเชื่อมต่อที่กำหนดไว้สำหรับการส่งข้อมูล | UDP เป็นโปรโตคอลแบบไม่มีการเชื่อมต่อ |
โปรโตคอลนี้มีความน่าเชื่อถือ | โปรโตคอลนี้ไม่น่าเชื่อถือ |
มีความสามารถในการจัดลำดับข้อมูล | ไม่สามารถจัดลำดับข้อมูลได้ |
มีกลไกสำหรับการตรวจสอบข้อผิดพลาดในวงกว้าง | มีกลไกการตรวจสอบข้อผิดพลาดพื้นฐานพร้อมเช็คซัม |
ความเร็วช้ากว่า UDP | ความเร็วของมันเร็วกว่า TCP |
ไม่รองรับการออกอากาศ | รองรับการออกอากาศ |
ในโปรโตคอลนี้ มีความเป็นไปได้ในการส่งสัญญาณซ้ำของแพ็กเก็ตที่สูญหาย | ไม่มีทางเป็นไปได้ของการส่งแพ็กเก็ตซ้ำที่สูญหาย |
มีการเชื่อมต่อกระแสข้อมูลไบต์ | มีการเชื่อมต่อสตรีมข้อความ |
มีความยาวส่วนหัวตัวแปร 20 ถึง 60 | มีความยาวส่วนหัวคงที่ 8 ไบต์ |
น้ำหนักของ TCP นั้นหนัก | น้ำหนักของ UCP นั้นไม่หนัก |
โปรโตคอลนี้ใช้เทคนิคการจับมือเช่น ACK, SYN และ SYN-ACK | ไม่ใช้เทคนิคการจับมือ |
โปรโตคอลนี้ใช้โดย FTP , SMTP, HTTP และ HTTP | โปรโตคอลนี้ใช้โดย DHCP, DNS, TFTP, RIP, VoIP & SNMP |
ค่าโสหุ้ยสูงเมื่อเทียบกับ UDP | ค่าโสหุ้ยต่ำมากเมื่อเทียบกับ TCP |
ข้อดีและข้อเสีย
ดิ ข้อดีของ UDP รวมสิ่งต่อไปนี้
- โดยใช้โปรโตคอลนี้ การส่งมัลติคาสต์และการออกอากาศเป็นไปได้
- UDP ใช้แบนด์วิดท์อย่างมีประสิทธิภาพมากเนื่องจากมีโอเวอร์เฮดของแพ็กเก็ตเล็กน้อย
- UDP นั้นเร็วมาก
- ไม่มีการบัฟเฟอร์และการกำหนดหมายเลขของแพ็กเก็ต
- ไม่มีข้อกำหนดสำหรับการจับมือกัน
- ไม่มีการควบคุมความแออัดดังนั้นจึงใช้สำหรับแอปพลิเคชันตามเวลาจริง
- โปรโตคอลนี้ใช้เช็คซัมผ่านแพ็กเก็ตทั้งหมดเพื่อตรวจหาข้อผิดพลาด
- โปรโตคอลนี้ยังสามารถใช้ในเหตุการณ์ได้ทุกที่ที่ต้องการแลกเปลี่ยนแพ็กเก็ตข้อมูลเดียวระหว่างโฮสต์
ดิ ข้อเสียของ UDP รวมสิ่งต่อไปนี้
- โปรโตคอล UDP เป็นโปรโตคอลการขนส่งที่ไม่น่าเชื่อถือและไร้การเชื่อมต่อ
- โปรโตคอลนี้ไม่ได้ใช้การควบคุมข้อผิดพลาดใดๆ ดังนั้น หากโปรโตคอลนี้ตรวจพบข้อผิดพลาดใดๆ ภายในแพ็กเก็ตที่ได้รับ มันก็จะดร็อปทิ้งไปอย่างเงียบๆ
- ไม่มีกลไกควบคุมความแออัดและการไหล
- ไม่มีการรับประกันการจัดส่ง
- โปรโตคอลดาต้าของผู้บริโภคส่วนใหญ่ได้รับผลกระทบจากการสูญหายของแพ็กเก็ต
- UDP ทำให้ข้อมูลสูญหาย
- โปรโตคอลนี้ค่อนข้างประมาทเลินเล่อ จึงไม่ส่งสัญญาณซ้ำหากเกิดปัญหา
แอปพลิเคชั่น/การใช้งาน User Datagram Protocol
ดิ แอปพลิเคชันหรือการใช้ User Datagram Protocol รวมสิ่งต่อไปนี้
- UDP ใช้ในแอปพลิเคชันที่คำนึงถึงเวลาและโดยเซิร์ฟเวอร์ที่ตอบสนองต่อการสืบค้นขนาดเล็กจากฐานลูกค้าที่ใหญ่กว่า
- เหมาะอย่างยิ่งกับการออกอากาศแพ็กเก็ตโดยเฉพาะสำหรับการส่งสัญญาณทั่วเครือข่าย
- นอกจากนี้ยังใช้ภายใน Voice over IP เกมออนไลน์และระบบชื่อโดเมน
- โปรโตคอลนี้ใช้ในแอปพลิเคชันเครือข่าย เช่น การสื่อสารด้วยเสียง เกม และวิดีโอ
- ใช้เมื่อต้องการส่งข้อมูลแบบไม่สูญเสียข้อมูล
- โปรโตคอลนี้ใช้สำหรับมัลติคาสต์เนื่องจากรองรับการสลับแพ็กเก็ตเท่านั้น
- UDP ใช้ในแอปพลิเคชันที่ขึ้นอยู่กับการแลกเปลี่ยนข้อมูลที่เชื่อถือได้ แต่ควรมีเทคนิคของตนเองในการตอบสนองต่อแพ็กเก็ต
- UDP ถูกใช้ในทุกที่ที่ความเร็วมีความสำคัญมากกว่าความน่าเชื่อถือ
ดังนั้น ทั้งหมดนี้เกี่ยวกับ ภาพรวมของโปรโตคอลดาตาแกรมของผู้ใช้ – สถาปัตยกรรมการทำงานกับแอพพลิเคชั่น การดำเนินการต่างๆ ของโปรโตคอล User Datagram ส่วนใหญ่รวมถึงบริการแบบไม่ต้องสัมผัส การควบคุมการไหลและข้อผิดพลาด การห่อหุ้มและการดีแคปซูล ตัวอย่างโปรโตคอลดาตาแกรมของผู้ใช้คือ เกมออนไลน์ การประชุมทางวิดีโอ VoIP (voice over IP) และ DNA (ระบบชื่อโดเมน) นี่คือคำถามสำหรับคุณ พอร์ต UDP คืออะไร?