User Datagram Protocol : สถาปัตยกรรม การทำงาน & แอปพลิเคชัน

ลองใช้เครื่องมือของเราเพื่อกำจัดปัญหา





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 คืออะไร?