โพรโตคอล Three-Way Handshake ใน Transmission Control Protocol (TCP) เป็นวิธีหนึ่งที่ใช้ในเครือข่าย TCP/IP แบบ TCP เป็นโปรโตคอลที่ใช้การเชื่อมต่อแบบเชื่อมต่อและบำรุงรักษาการเชื่อมต่อจนกระทั่งโปรแกรมแอปพลิเคชันที่อยู่ที่สองของแต่ละด้านเสร็จสิ้นการแลกเปลี่ยนข้อความ TCP ใช้กระบวนการที่เรียกว่า "การสื่อสารแบบเชื่อมต่อสามชั้น" เพื่อเจรจาการแลกเปลี่ยนตอนลำดับและการยอมรับและเริ่มต้นเซสชันและสิ้นสุดเซสชัน แม้ว่า 'เชื่อมต่อแบบเชื่อมต่อ' จะไม่ได้หมายความว่า TCP จะตั้งค่าเส้นทางทางกายภาพระหว่างเครื่องส่งและเครื่องรับ มันเพียงแค่หมายถึงว่าโฮสต์สองเครื่องจะถูกเก็บไว้ในสถานะ 'การรับรู้' เกี่ยวกับการส่งข้อมูล สิ่งนี้ทำผ่านกระบวนการสามชั้นของโปรโตคอล TCP ที่เรียกว่าการเชื่อมต่อสามชั้น และ UDP นั่นเองไม่ได้ตรวจสอบว่าผู้รับพร้อมรับข้อความหรือไม่ ดังนั้นเป็นบริการ 'แบบไม่เชื่อมต่อ'
เทคนิคการเชื่อมต่อสามชั้นเรียกว่า "SYN-SYN-ACK" ตัวอย่างเช่นเมื่อคุณ ping เครื่องคุณกำลังส่งสัญญาณ SYN ซึ่งถูก ACK โดยเครื่องรีโมทแล้วเครื่องรีโมทจะส่งสัญญาณ SYN-ACK กลับไปยังเครื่องรีโมท แล้วเครื่องโฮสต์รับ SYN-ACK และส่งสัญญาณ ACK กลับเพื่อยืนยันการเชื่อมต่อเดียวกัน
TCP (Transmission Control Protocol) - แยกข้อมูลเป็น datagram และส่งมัน ทำการส่งซ้ำหากจำเป็น และรวบรวม datagram ที่ได้รับ มันให้การส่งอย่างน่าเชื่อถือเป็นบริการที่เชื่อมต่อระหว่างแอปพลิเคชัน คุณสมบัติสำคัญของ TCP แสดงดังนี้
เชื่อมต่อแบบเชื่อมต่อ: TCP เป็นบริการเชื่อมต่อ หมายความว่าทุกส่วนย้อนกลับสามารถตามเส้นทางเดียวกันได้และส่วนอยู่ในลำดับที่ส่งมา จำเป็นต้องเชื่อมต่อก่อนที่อุปกรณ์สองเครื่องจะสามารถสื่อสารกันได้ แอปพลิเคชันร้องขอ "การเชื่อมต่อ" ไปยังปลายทางและใช้การเชื่อมต่อเพื่อถ่ายโอนข้อมูล
น่าเชื่อถือ: โปรโตคอลเองตรวจสอบเพื่อดูว่าทุกสิ่งที่ถูกส่งไปถูกส่งถึงที่ปลายทางที่รับ
ควบคุมข้อผิดพลาดและการควบคุมการไหล: การตรวจสอบข้อผิดพลาด การควบคุมข้อผิดพลาดรวมถึงกลไกสำหรับการแก้ไขข้อผิดพลาด การควบคุมการไหล - Flow Control หมายถึงว่า TCP จะให้ความสำคัญในการให้แน่ใจว่าผู้ส่งไม่กำลังส่งแพคเก็ตได้เร็วกว่าผู้รับที่สามารถบรรจุไปได้และการรับรองการทำงาน
จุดสู่จุด: การเชื่อมต่อ TCP รับประกันว่าแพคเก็ตจะมาถึงที่ปลายทางโดยไม่เสียหายและในลำดับที่ถูกต้อง ทำให้การเชื่อมต่อจุดสู่จุดเป็นการเชื่อมต่อที่เกือบไม่มีข้อผิดพลาด
การถ่ายโอนข้อมูลแบบไหล: หน้าที่ของ TCP คือการแพคกระแสไบต์เป็นแพคเก็ตที่เรียกว่า TCP segments ซึ่งถูกส่งให้กับชั้น IP เพื่อส่งไปยังอุปกรณ์ปลายทาง
แอปพลิเคชันร้องขอ "การเชื่อมต่อ" ไปยังปลายทางและใช้การเชื่อมต่อเพื่อถ่ายโอนข้อมูล
การเส้นทาง: TCP/IP เป็นโปรโตคอลที่สามารถเส้นทางได้
ช่วยในการแก้ไขที่อยู่โลจิก
การแก้ไขชื่อ: ช่วยในการแปลงชื่อที่สามารถอ่านได้เป็นที่อยู่ IP
การสื่อสารแบบเทียม: แต่ละการเชื่อมต่อ TCP รองรับคู่ของไบต์สตรีมที่ไหลในทิศทางแตกต่างกัน
กระบวนการที่เกิดขึ้นระหว่างโหนด TCP/IP สองโหนดเพื่อตั้งค่าการเชื่อมต่อ ทราบว่าเป็นการระบบสำรองระหว่างการเชื่อมต่อ ทราบว่าการเชื่อมต่อซิงโครไนซ์และซิงค์แอคโครไนซ์ ตัวอย่างเช่น หากคอมพิวเตอร์ A ส่งแพคเก็ตซิงโครไนซ์ไปยังคอมพิวเตอร์ B ซึ่งส่งกลับแพคเก็ตซิงค์แอคโครไนซ์ไปยังคอมพิวเตอร์ A คอมพิวเตอร์ A จะส่งแพคเก็ตแสดงการยอมรับไปยังคอมพิวเตอร์ B และการเชื่อมต่อจะถูกสร้างขึ้น กระบวนการทั้งหมดที่กล่าวมาเรียกว่าการเชื่อมต่อสามชั้นของ TCP (TCP Handshaking)
โปรโตคอลการเชื่อมต่อสองทาง (Two-Way Handshake Protocol)
โปรโตคอลการแลกเปลี่ยนสถานะสามทาง (Three-Way Handshake Protocol)
ถ้า A ต้องการโอนเงินให้ B ดังนั้น A จะส่ง SYN ไปยัง B และจากนั้น B จะส่ง ACK กลับไปยัง A การเชื่อมต่อถูกสร้างขึ้นและจากนั้น A สามารถส่งเงินของเขาได้และจากนั้นปิดการเชื่อมต่อหลังจากเสร็จสิ้น หากมี SYN ซ้ำที่มีการเลื่อนการส่งจาก A ไปยัง B โดยการเสียเวลา B จะส่ง ACK อีกครั้งและ A จะทำการโอนเงินของเขาอีกครั้ง นี่เป็นหนึ่งในจุดอ่อนของการเชื่อมต่อสองทาง การแลกเปลี่ยนสถานะสามทางสามารถแก้ไขปัญหานี้
เพื่อเชื่อมต่อการเชื่อมต่อ กระบวนการ Three-Way Handshake หรือการสามก้าว (3-step handshake) จะเกิดขึ้น:
ขั้นตอนที่ 1 (SYN): การเปิดทำงานแบบใช้งานโดยผู้ใช้ จะทำการส่ง SYN ไปยังเซิร์ฟเวอร์ ที่คลายคลายคือผู้ใช้ต้องการเปิดการเชื่อมต่อกับเซิร์ฟเวอร์ โดยมีหมายเลขลำดับสุ่ม X ผู้ใช้กำหนดหมายเลขลำดับของ segment เป็นค่าสุ่ม X
ขั้นตอนที่ 2 (SYN+ACK): เป็นการตอบกลับจากเซิร์ฟเวอร์ ที่ประกอบด้วย SYN-ACK โดยมีหมายเลขลำดับสุ่มและหมายเลข ACK ที่รับทราบหมายเลขลำดับของผู้ใช้ หมายเลขการรับรองถูกตั้งค่าไปเป็นหนึ่งมากกว่าหมายเลขลำดับที่ได้รับ คือ X+1 และหมายเลขลำดับที่เซิร์ฟเวอร์เลือกสำหรับแพคเก็ตคือหมายเลขสุ่ม Y
ขั้นตอนที่ 3 (ACK): ในขั้นสุดท้าย ผู้ใช้ยืนยันการตอบกลับจากเซิร์ฟเวอร์และพวกเขาก็สร้างการเชื่อมต่อที่เชื่อถือได้กันที่พวกเขาจะเริ่มโอนข้อมูลจริง ผู้ใช้ส่ง ACK กลับไปยังเซิร์ฟเวอร์ หมายเลขลำดับถูกตั้งค่าเป็นค่าค่าการรับรองที่ได้รับ คือ X+1 และหมายเลขการรับรองถูกตั้งค่าไปเป็นหนึ่งมากกว่าหมายเลขลำดับที่ได้รับ คือ Y+1
บมความอื่นๆ
100/280 Soi 17, Delight Village, Bang Khun Thian - Chaitalay, Phanthai Norasing, Samut Sakhon 74000
Copyright © 2025 DriteStudio All Rights Reserved.