ความแตกต่างระหว่าง TCP กับ UDP

ความแตกต่างระหว่าง TCP กับ UDP

 

ความแตกต่างระหว่าง TCP กับ UDP

TCP คือ อะไร?
TCP ย่อมาจาก Transmission Control Protocol เป็นหนึ่งในโปรโตคอลหลักของเครือข่ายอินเทอร์เน็ต  ทำหน้าที่ควบคุมการรับส่งข้อมูลระหว่างผู้ส่งกับผู้รับ เพื่อใช้แลกเปลี่ยนข้อมูลระหว่างกัน โดยมีการตรวจสอบให้แน่ใจว่าทุกแพ็กเก็ตที่จัดส่งไปยังปลายทางนั้นเป็นไปตามลำดับที่ถูกต้องตามที่ต้นทางส่งออกมา ด้วยการสร้างการเชื่อมต่อระหว่างสองฝั่ง ทั้งผู้ส่งและผู้รับ ดังนั้นข้อมูลที่แลกเปลี่ยนกันจะมีความน่าเชื่อถือสูงและประกันความถูกต้อง

UDP คือ อะไร?
UDP ย่อมาจาก User Datagram Protocol เป็นโปรโทคอลหลักในชุดโปรโทคอลอินเทอร์เน็ตที่เรียกว่า Datagram ซึ่งเป็นข้อมูลขนาดเล็กกว่าส่งผ่านเครือข่ายไปยังเครื่องปลายทาง  แต่ UDP จะไม่รับประกันความน่าเชื่อถือของข้อมูลและลำดับของ Datagram ในขณะที่ TCP จะรับประกันความถูกต้องของข้อมูล ซึ่งหมายความว่า Datagram อาจมาถึงไม่เรียงลำดับหรือสูญหายได้

ทั้ง TCP และ UDP ต่างก็เป็นโปรโตคอลที่ใช้สำหรับการส่งรับข้อมูลเป็นแบบแพ็คเก็จในระบบสื่อสารบน Ethernet  โดยปกติ TCP และ UDP จะทำงานโดยการอ้างอิง IP(Internet Protocol) ซึ่งนิยมเรียกว่า TCP/IP และ UDP/IP  เราสามารถแยกความแตกต่างของโปรโตคอลทั้ง 2 อย่างได้ดังนี้

TRANSMISSION CONTROL PROTOCOL (TCP) USER DATAGRAM PROTOCOL (UDP)
TCP คือ โปรโตคอลแบบ connection-oriented ซึ่งหมายความว่าอุปกรณ์ที่จะสื่อสารกันต้องเปิดเชื่อมต่อกันก่อนการรับส่งข้อมูลกันและต้องปิดการเชื่อมต่อหลังจากการรับส่งข้อมูลกัน UDP คือ โปรโตคอลแบบ Datagram oriented ซึ่งไม่มี overhead สำหรับการเปิดการเชื่อมต่อและรักษาการเชื่อมต่อและยกเลิกการเชื่อมต่อ  UDP เหมาะสำหรับการรับส่งข้อมูลแบบ broadcast และ multicast
TCP มีความน่าเชื่อถือและประกันว่าข้อมูลส่งถึงปลายทางแน่นอน UDP จะไม่สามารถรับประกันได้ว่าข้อมูลจะถูกส่งถึงปลายทางหรือไม่
TCP มีการกลไกลในการตรวจสอบข้อผิดพลาด มีการ flow control และการรับรู้ว่าได้รับข้อมูล UDP มีการตรวจสอบการรับส่งข้อมูลแบบพื้นฐานเท่านั้นโดยใช้ checksums
ลำดับของข้อมูลคือข้อเด่นของ Transmission Control Protocol (TCP) นั่นหมายความว่าแพ็คเก็จข้อมูลจะส่งถึงผู้รับเรียงลำดับกัน ไม่มีลำดับของข้อมูล ถ้าต้องการให้เรียงลำดับต้องให้แอฟลิเคชั่นเป็นตัวจัดการ
TCP ทำงานช้ากว่า UDP UDP ทำงานเร็วกว่า ง่ายกว่าและมีประสิทธิภาพมากกว่า TCP
มีการรับส่งซ้ำถ้ามีการสูญหายของข้อมูล ไม่มีการรับส่งซ้ำถ้าข้อมูลสูญหาย
TCP header มีขนาด 20 bytes. UDP Header มีขนาด 8 bytes.
TCP ถูกใช้งานกับ HTTP, HTTPs, FTP, SMTP และ Telnet UDP ถูกใช้งานกับ DNS, DHCP, TFTP, SNMP, RIP, และ VoIP