การสื่อสารข้อมูลบนเครือข่ายอินเทอร์เน็ตนั้น จะทำได้โดยใช้กฎข้อบังคับที่เรียกว่า IP (In – ternet Protocol) เครือข่ายอินเทอร์เน็ตบางครั้งจึงถูกเรียกว่า เครือข่าย IP (IP Network) โดย IP จะโปรโตคอลในระดับที่ 3 ของ OSI Model หรือ Network Layer โดยจะมีโปรโตคอลระดับสูง(ระดับที่ 4 ของ OSI Model คือ Transport Layer) ที่ทำงานอยู่เหนือระดับ IP อีกที คือ TCP (Transmission Control Protocol) และ UDP (User Datagram Protocol)
TCP จะเป็นการสื่อสารข้อมูลแบบ Connection-Oriented คือมีลักษณะเหมือนการส่งข้อมูล เสียงทางโทรศัพท์ คือผู้ใช้ต้องสร้าง connection (หมุนโทรศัพท์) แล้วถึงส่งข้อมูล (พูดโทรศัพท์) และเมื่อใช้เสร็จแล้วก็ยกเลิก connection (วางสายโทรศัพท์) การส่งข้อมูลแบบนี้ เปรียบเสมือนการ ส่งของผ่านท่อ คือผู้ส่งส่งของทีละชิ้นไปตามท่อ แล้วผู้รับซึ่งอยู่อีกปลายหนึ่งของท่อก็รับของทีละชิ้นออกจากท่อ ตามลำดับที่ของถูกส่งมา
TCP ซึ่งเป็นแบบ Connection-Oriented นี้ จะต้องเสียเวลาในการเริ่มต้นทำการสื่อสารค่อนข้างนาน การรับส่งข้อมูลจะมีความถูกต้อง และรับรองการได้รับของอีกฝ่ายได้แน่นอน โดยผู้ส่งจะรอรับคำยืนยันว่า “ได้รับแล้ว” ของข้อมูลชุดที่แล้วจากผู้รับเสียก่อน จึงค่อยดำเนินการส่งข้อมูลชุดต่อไป เหมาะกับข้อมูลปริมาณมากๆ และมีความสำคัญ ตัวอย่างการใช้งานที่ใช้ TCP เช่น E-mail, World Wide Web และ FTP (File Transfer Protocol) เป็นต้น
สำหรับแบบ UDP จะเป็นการสื่อสารข้อมูลอีกชนิดหนึ่งที่เราเรียกว่า Connectionless แบบนี้มีลักษณะคล้ายการส่งจดหมายในระบบไปรษณีย์ กล่าวคือข้อมูลหน่วยย่อย (จดหมายแต่ละฉบับ) มีที่อยู่ปลายทางของผู้รับ และแต่ละหน่วยข้อมูลจะถูกส่งต่อเป็นช่วงๆ (ผ่านที่ทำการไปรษณีย์แต่ละพื้นที่) จนถึงจุดหมาย การส่งข้อมูลลักษณะนี้แต่ละหน่วยข้อมูลอาจมีเส้นเดินทางต่างกันเล็กน้อยและเป็นไปได้ว่าจดหมายที่ส่งทีหลังอาจถึงปลายทางก่อน
แบบ Connectionless นี้ การเริ่มต้นส่งสามารถทำได้รวดเร็ว เนื่องจากไม่ต้องเสียเวลา สร้าง Connection แต่ก็ไม่สามารถรับรองการได้รับข้อมูลของอีกฝ่าย เหมาะกับการส่งข้อมูลเพียงเล็กน้อยส่งเพียงครั้งเดียวก็เสร็จสิ้น หรือข้อมูลที่ไม่สำคัญมาก สามารถสูญเสียได้บางส่วน ตัวอย่างงานที่ใช้ UDP เช่น สัญญาณ Video, เสียง ซึ่งข้อมูลสามารถหายไปบางส่วนได้
สรุปได้ว่า การสื่อสารข้อมูลบนอินเทอร์เน็ต จะมี 2 แบบ
- TCP เป็นแบบ Connection-Oriented ต้องสร้าง connection ก่อน เสียเวลาตอนเริ่มต้นหลังจากนั้นจึงเริ่มส่งได้ มีการรับประกันว่าข้อมูลถึงปลายทางอย่างถูกต้อง
- UDP เป็นแบบ Connectionless ไม่มีการสร้าง connection ส่งได้เลย ทำได้รวดเร็ว แต่ไม่มีการรับประกันว่าข้อมูลถึงปลายทางอย่างถูก
ขอขอบคุณ
Pattara @ Nectec
http://linux.thai.net/ott/books
เพราะอะไรต้องมี Three-way-handshake ครับมันช่วยอะไร และมีประโยชน์อย่างไรครับ
ตอบลบลบกวนหน่อยนะครับงานด่นมาเลย
ลบ3-Way Handshake
ลบ3-Way Handshake
3-Way Handshake เป็นวิธีในการสร้างช่องทางการสื่อสารสำหรับการรับส่งข้อมูลด้วยโพรโทคอล TCP สาเหตุที่เรียกว่า 3-Way Handshake เนื่องจากกระบวนการทำงานนั้นจะใช้ 3 ขั้นตอนด้วยกัน คือ
1. เครื่อง Client ส่งแพ็คเกต SYN เพื่อขอเชื่อมต่อไปยังเครื่อง Server
2. เครื่อง Server ส่งแพ็คเกต SYN/ACK ตอบกลับเครื่อง Client
3. เครื่อง Client ตอบกลับเครื่อง Server ด้วยแพ็คเกต ACK
หลังจากที่เครื่อง Server ได้รับแพ็คเกต ACK แสดงว่าการเชื่อมต่อเสร็จสมบูรณ์ จากนั้นเครื่อง Server ก็จะเริ่มรับส่งข้อมูลกับเครื่อง Client ได้
http://www.tcpipguide.com/free/t_TCPConnectionEstablishmentProcessTheThreeWayHandsh-3.htm
kkjtklklhll
ตอบลบ