TCP UDP แตกต่างกันอย่างไร
TCP UDP แตกต่างกันอย่างไร
เวลาที่เราส่งของไปให้ใครโดยไม่ได้ส่งให้กับมือผู้รับโดยตรง
แต่ใช้วิธีฝากส่งไปทางพัสดุไปรษณีย์หรือฝากเพื่อให้ถือเอาไปให้
ถ้าของชิ้นนั้นเป็นของที่สำคัญและมีราคาแพง เราก็คงอยากจะทราบว่าของทุก ๆ
ชิ้นที่ส่งไปนั้นถึงมือผู้รับแล้วจริง ๆ
ในทางกลับกันถ้าของชิ้นนั้นเป็นของไม่สำคัญไม่มีราคาค่างวดอะไรมากนัก
เช่นใบปลิวโฆษณา ตัวอย่างสินค้า ของชำร่วย
เราก็คงไม่ได้สนใจมากนักว่าของทุกชิ้นที่ฝากให้คนอื่นไปแจกนั้นจะถึงมือผู้รับทุกชิ้น
ในเครือข่ายอินเตอร์ก็มี protocol ที่ใช้ทำหน้าที่
ที่แตกต่างกันสองแบบตามตัวอย่างข้างต้นก็คือ TCP (transmission control protocol) และUDP (user datagram protocol)
TCP และ UDP ต่างก็เป็น
protocol สำคัญที่อยู่ใน transport layer protocol
ซึ่งถูกออกแบบให้มีคุณสมบัติหน้าที่การทำงานที่เหมาะกับงานที่แตกต่างกัน
คุณสมบัติของทั้งสอง protocol ดังกล่าวมีดังต่อไปนี้
TCP
– Reliable
ไว้วางใจได้ว่าข้อมูลที่ส่งไปจะถือผู้รับอย่างแน่นอน ซึ่ง TCP จะมีการตรวจสอบว่าข้อมูลที่ส่งไปนั้นถึงผู้รับจริง ๆ หรือไม่ ถ้าไม่ถึง TCP ก็จะทำการส่งข้อมูลนั้นไปให้ใหม่อีกครั้ง
– Connection-oriented
มีการเชื่อมต่อช่องทางการรับส่งข้อมูลก่อนที่จะเริ่มส่ง เป็นการเตรียมทรัพยากรต่าง ๆ ระหว่างเครื่องผู้รับและผู้ส่ง เช่น socket หน่วยความจำ และตัวแปรที่ใช้เก็บข้อมูลต่าง ๆ เพื่อให้การรับส่งข้อมูลระหว่างต้นทางและปลายทางเป็นไปอย่างราบรื่นและมีประสิทธิภาพ
– Flow control
มีการควบคุมปริมาณข้อมูลที่รับส่งระหว่างต้นทางและปลายทาง เพื่อป้องกันไม่ให้ฝั่งผู้ส่ง ส่งข้อมูลมากจนเกินกว่าที่ buffer ของฝั่งผู้รับจะรับได้
– Congestion control
เป็นการควบคุมปริมาณการส่งข้อมูลเช่นกัน แต่เพื่อป้องกันไม่ให้ส่งข้อมูลเข้าไปในเครือข่าย ที่ ณ ขณะนั้นมีความหนาแน่นของข้อมูลสูงมาก ซึ่งมีความเสี่ยงที่ข้อมูลที่ส่งเข้าไปจะไปไม่ถึงผู้รับ
– Reliable
ไว้วางใจได้ว่าข้อมูลที่ส่งไปจะถือผู้รับอย่างแน่นอน ซึ่ง TCP จะมีการตรวจสอบว่าข้อมูลที่ส่งไปนั้นถึงผู้รับจริง ๆ หรือไม่ ถ้าไม่ถึง TCP ก็จะทำการส่งข้อมูลนั้นไปให้ใหม่อีกครั้ง
– Connection-oriented
มีการเชื่อมต่อช่องทางการรับส่งข้อมูลก่อนที่จะเริ่มส่ง เป็นการเตรียมทรัพยากรต่าง ๆ ระหว่างเครื่องผู้รับและผู้ส่ง เช่น socket หน่วยความจำ และตัวแปรที่ใช้เก็บข้อมูลต่าง ๆ เพื่อให้การรับส่งข้อมูลระหว่างต้นทางและปลายทางเป็นไปอย่างราบรื่นและมีประสิทธิภาพ
– Flow control
มีการควบคุมปริมาณข้อมูลที่รับส่งระหว่างต้นทางและปลายทาง เพื่อป้องกันไม่ให้ฝั่งผู้ส่ง ส่งข้อมูลมากจนเกินกว่าที่ buffer ของฝั่งผู้รับจะรับได้
– Congestion control
เป็นการควบคุมปริมาณการส่งข้อมูลเช่นกัน แต่เพื่อป้องกันไม่ให้ส่งข้อมูลเข้าไปในเครือข่าย ที่ ณ ขณะนั้นมีความหนาแน่นของข้อมูลสูงมาก ซึ่งมีความเสี่ยงที่ข้อมูลที่ส่งเข้าไปจะไปไม่ถึงผู้รับ
ในทางตรงกันข้ามเมื่อเราหันมาดูคุณสมบัติของ UDP
บ้าง จะเป็นดังนี้
UDP
– Unreliable
ไม่รับประกันว่าข้อมูลจะถึงผู้รับหรือไม่
– Connectionless
ไม่มีการสร้างช่องทางการรับส่งข้อมูลก่อนเริ่มส่ง
– No flow control
ไม่มีการควบคุมปริมาณการรับส่งข้อมูลระหว่างต้นทางและปลายทาง
– No congestion control
ไม่มีการควบคุมปริมาณการส่งข้อมูลระหว่างที่เครือข่ายมีความหนาแน่นสูง
– Unreliable
ไม่รับประกันว่าข้อมูลจะถึงผู้รับหรือไม่
– Connectionless
ไม่มีการสร้างช่องทางการรับส่งข้อมูลก่อนเริ่มส่ง
– No flow control
ไม่มีการควบคุมปริมาณการรับส่งข้อมูลระหว่างต้นทางและปลายทาง
– No congestion control
ไม่มีการควบคุมปริมาณการส่งข้อมูลระหว่างที่เครือข่ายมีความหนาแน่นสูง
ถ้าดูการเปรียบเทียบข้างบน ก็คงจะรู้สึกได้ว่า TCP
นั้นดีกว่า UDP อย่างไม่ต้องสงสัย
แต่ในความเป็นจริง UDP ก็มีข้อดีที่เหนือกว่า TCP อยู่หลายข้อ
ข้อดีของ UDP
– เริ่มต้นส่งข้อมูลได้เร็วกว่าเพราะไม่ต้องรอการสร้าง connection
– ส่งข้อมูลได้เร็วกว่าเพราะไม่ต้องรอการตรวจสอบ
– ส่งข้อมูลได้ปริมาณมากว่าเพราะไม่มี flow control และ congestion control
– เริ่มต้นส่งข้อมูลได้เร็วกว่าเพราะไม่ต้องรอการสร้าง connection
– ส่งข้อมูลได้เร็วกว่าเพราะไม่ต้องรอการตรวจสอบ
– ส่งข้อมูลได้ปริมาณมากว่าเพราะไม่มี flow control และ congestion control
จากข้อแตกต่างข้างต้นดังกล่าว ทั้งสอง protocol
จึงเหมาะที่จะใช้กับงานที่แตกต่างกัน ดังต่อไปนี้
TCP จะใช้ในการรับส่งข้อมูลของ protocol
บน application layer ที่ต้องการความน่าเชือถือสูง
ดังต่อไปนี้
– SMTP
– Telnet
– HTTP
– FTP
– SMTP
– Telnet
– HTTP
– FTP
UDP จะเหมาะกับการรับส่งข้อมูลของ protocol
บน application layer ยินยอมให้ข้อมูลบางส่วนสูญหายได้โดยไม่กระทบต่อคุณภาพของข้อมูลในภาพรวม
ดังต่อไปนี้
– NFS
– Streaming multimedia
– Internet telephony
– SNMP
– RIP
– DNS
– NFS
– Streaming multimedia
– Internet telephony
– SNMP
– RIP
– DNS
แต่ในปัจจุบันเนื่องจากเทคโนโลยีความเร็วของเครือข่ายได้พัฒนาไปมาก
จึงมีการนำ TCP มาใช้ในการรองรับการทำงานของ application
ที่เคยทำงานบน UDP เช่น streaming
multimedia หรือวีดีโอออนไลน์ และ internet telephony หรือการใช้โทรศัพท์ผ่านอินเตอร์ ในปัจจุบันก็มีการใช้งานบน TCP
ในจำนวนที่พอ ๆ กับ UDP
ไม่มีความคิดเห็น