Header Ads

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
เป็นการควบคุมปริมาณการส่งข้อมูลเช่นกัน แต่เพื่อป้องกันไม่ให้ส่งข้อมูลเข้าไปในเครือข่าย ที่ ณ ขณะนั้นมีความหนาแน่นของข้อมูลสูงมาก ซึ่งมีความเสี่ยงที่ข้อมูลที่ส่งเข้าไปจะไปไม่ถึงผู้รับ
ในทางตรงกันข้ามเมื่อเราหันมาดูคุณสมบัติของ UDP บ้าง จะเป็นดังนี้
UDP
– Unreliable
ไม่รับประกันว่าข้อมูลจะถึงผู้รับหรือไม่
– Connectionless
ไม่มีการสร้างช่องทางการรับส่งข้อมูลก่อนเริ่มส่ง
– No flow control
ไม่มีการควบคุมปริมาณการรับส่งข้อมูลระหว่างต้นทางและปลายทาง
– No congestion control
ไม่มีการควบคุมปริมาณการส่งข้อมูลระหว่างที่เครือข่ายมีความหนาแน่นสูง
ถ้าดูการเปรียบเทียบข้างบน ก็คงจะรู้สึกได้ว่า TCP นั้นดีกว่า UDP อย่างไม่ต้องสงสัย แต่ในความเป็นจริง UDP ก็มีข้อดีที่เหนือกว่า TCP อยู่หลายข้อ
ข้อดีของ UDP
เริ่มต้นส่งข้อมูลได้เร็วกว่าเพราะไม่ต้องรอการสร้าง connection
ส่งข้อมูลได้เร็วกว่าเพราะไม่ต้องรอการตรวจสอบ
ส่งข้อมูลได้ปริมาณมากว่าเพราะไม่มี flow control และ congestion control
จากข้อแตกต่างข้างต้นดังกล่าว ทั้งสอง protocol จึงเหมาะที่จะใช้กับงานที่แตกต่างกัน ดังต่อไปนี้
TCP  จะใช้ในการรับส่งข้อมูลของ protocol บน application layer ที่ต้องการความน่าเชือถือสูง ดังต่อไปนี้
– SMTP
– Telnet
– HTTP
– FTP
UDP จะเหมาะกับการรับส่งข้อมูลของ protocol บน application layer ยินยอมให้ข้อมูลบางส่วนสูญหายได้โดยไม่กระทบต่อคุณภาพของข้อมูลในภาพรวม ดังต่อไปนี้
– NFS
– Streaming multimedia
– Internet telephony
– SNMP
– RIP
– DNS
แต่ในปัจจุบันเนื่องจากเทคโนโลยีความเร็วของเครือข่ายได้พัฒนาไปมาก จึงมีการนำ TCP มาใช้ในการรองรับการทำงานของ application ที่เคยทำงานบน UDP  เช่น streaming multimedia หรือวีดีโอออนไลน์ และ internet telephony หรือการใช้โทรศัพท์ผ่านอินเตอร์ ในปัจจุบันก็มีการใช้งานบน TCP  ในจำนวนที่พอ ๆ กับ UDP


ไม่มีความคิดเห็น

ขับเคลื่อนโดย Blogger.