ຄວາມລຶກລັບທີ່ສໍາຄັນຂອງການເຊື່ອມຕໍ່ Network Packet Broker TCP: Demystified ຄວາມຕ້ອງການສໍາລັບ Triple Handshake

ການຕັ້ງຄ່າການເຊື່ອມຕໍ່ TCP
ເມື່ອພວກເຮົາທ່ອງເວັບ, ສົ່ງອີເມວ, ຫຼືຫຼິ້ນເກມອອນໄລນ໌, ພວກເຮົາມັກຈະບໍ່ຄິດກ່ຽວກັບການເຊື່ອມຕໍ່ເຄືອຂ່າຍທີ່ສັບສົນທີ່ຢູ່ເບື້ອງຫຼັງມັນ. ຢ່າງໃດກໍ່ຕາມ, ມັນເປັນຂັ້ນຕອນນ້ອຍໆເຫຼົ່ານີ້ທີ່ຮັບປະກັນການສື່ສານທີ່ຫມັ້ນຄົງລະຫວ່າງພວກເຮົາແລະເຄື່ອງແມ່ຂ່າຍ. ຫນຶ່ງໃນຂັ້ນຕອນທີ່ສໍາຄັນທີ່ສຸດແມ່ນການຕິດຕັ້ງການເຊື່ອມຕໍ່ TCP, ແລະຫຼັກຂອງນີ້ແມ່ນການຈັບມືສາມທາງ.

ບົດ​ຄວາມ​ນີ້​ຈະ​ປຶກສາ​ຫາລື​ກ່ຽວ​ກັບ​ຫຼັກການ, ​ຂະ​ບວນການ ​ແລະ ຄວາມ​ສຳຄັນ​ຂອງ​ການ​ຈັບ​ມື 3 ດ້ານ​ຢ່າງ​ລະອຽດ. ຂັ້ນ ຕອນ ທີ, ພວກ ເຮົາ ຈະ ອະ ທິ ບາຍ ວ່າ ເປັນ ຫຍັງ ການ ຈັບ ມື ສາມ ວິ ທີ ທີ່ ຈໍາ ເປັນ, ວິ ທີ ການ ທີ່ ມັນ ຮັບ ປະ ກັນ ຄວາມ ຫມັ້ນ ຄົງ ຂອງ ການ ເຊື່ອມ ຕໍ່ ແລະ ຄວາມ ເຊື່ອ ຖື, ແລະ ວິ ທີ ການ ທີ່ ສໍາ ຄັນ ຂອງ ການ ໂອນ ຂໍ້ ມູນ. ດ້ວຍຄວາມເຂົ້າໃຈທີ່ເລິກເຊິ່ງກ່ຽວກັບການຈັບມືສາມທາງ, ພວກເຮົາຈະໄດ້ຮັບຄວາມເຂົ້າໃຈດີຂຶ້ນກ່ຽວກັບກົນໄກພື້ນຖານຂອງການສື່ສານເຄືອຂ່າຍແລະທັດສະນະທີ່ຊັດເຈນກວ່າກ່ຽວກັບຄວາມຫນ້າເຊື່ອຖືຂອງການເຊື່ອມຕໍ່ TCP.

ຂະບວນການຈັບມືສາມທາງ TCP ແລະການຫັນປ່ຽນຂອງລັດ
TCP ແມ່ນໂປຣໂຕຄໍການຂົນສົ່ງທີ່ແນໃສ່ການເຊື່ອມຕໍ່, ເຊິ່ງຮຽກຮ້ອງໃຫ້ມີການສ້າງການເຊື່ອມຕໍ່ກ່ອນການສົ່ງຂໍ້ມູນ. ຂະບວນການສ້າງການເຊື່ອມຕໍ່ນີ້ແມ່ນເຮັດໂດຍການຈັບມືສາມທາງ.

 TCP ຈັບມືສາມທາງ

ຂໍໃຫ້ພິຈາລະນາຢ່າງລະອຽດກ່ຽວກັບແພັກເກັດ TCP ທີ່ຖືກສົ່ງໃນແຕ່ລະການເຊື່ອມຕໍ່.

ໃນເບື້ອງຕົ້ນ, ທັງລູກຄ້າແລະເຄື່ອງແມ່ຂ່າຍຖືກປິດ. ທໍາອິດ, ເຄື່ອງແມ່ຂ່າຍຟັງຢ່າງຈິງຈັງຢູ່ໃນພອດແລະຢູ່ໃນສະຖານະ LISTEN, ຊຶ່ງຫມາຍຄວາມວ່າເຄື່ອງແມ່ຂ່າຍຕ້ອງຖືກເລີ່ມຕົ້ນ. ຕໍ່ໄປ, ລູກຄ້າພ້ອມທີ່ຈະເລີ່ມຕົ້ນການເຂົ້າເຖິງຫນ້າເວັບ. ມັນຈໍາເປັນຕ້ອງສ້າງການເຊື່ອມຕໍ່ກັບເຄື່ອງແມ່ຂ່າຍ. ຮູບແບບຂອງຊຸດການເຊື່ອມຕໍ່ທໍາອິດແມ່ນດັ່ງຕໍ່ໄປນີ້:

 SYN Packet

ເມື່ອລູກຄ້າເລີ່ມຕົ້ນການເຊື່ອມຕໍ່, ມັນຈະສ້າງຕົວເລກລໍາດັບເບື້ອງຕົ້ນແບບສຸ່ມ (client_isn) ແລະວາງມັນຢູ່ໃນຊ່ອງ "ຈໍານວນລໍາດັບ" ຂອງສ່ວນຫົວ TCP. ໃນຂະນະດຽວກັນ, ລູກຄ້າກໍານົດຕໍາແຫນ່ງທຸງ SYN ເປັນ 1 ເພື່ອຊີ້ບອກວ່າແພັກເກັດທີ່ສົ່ງອອກແມ່ນແພັກເກັດ SYN. ລູກຄ້າຊີ້ໃຫ້ເຫັນວ່າມັນຕ້ອງການສ້າງການເຊື່ອມຕໍ່ກັບເຄື່ອງແມ່ຂ່າຍໂດຍການສົ່ງຊຸດ SYN ທໍາອິດໄປຫາເຄື່ອງແມ່ຂ່າຍ. ແພັກເກັດນີ້ບໍ່ມີຂໍ້ມູນຊັ້ນຂໍ້ມູນຂອງແອັບພລິເຄຊັນ (ນັ້ນຄືຂໍ້ມູນທີ່ສົ່ງມາ). ໃນຈຸດນີ້, ສະຖານະຂອງລູກຄ້າຖືກຫມາຍເປັນ SYN-SENT.

SYN+ACK Packet

ເມື່ອເຊີບເວີໄດ້ຮັບແພັກເກັດ SYN ຈາກລູກຄ້າ, ມັນສຸ່ມເລີ່ມຕົ້ນ serial number ຂອງຕົນເອງ (server_isn) ແລະຫຼັງຈາກນັ້ນເອົາຕົວເລກນັ້ນໃສ່ໃນຊ່ອງ "Serial number" ຂອງຫົວ TCP. ຕໍ່ໄປ, ເຄື່ອງແມ່ຂ່າຍເຂົ້າໄປໃນ client_isn + 1 ໃນຊ່ອງ "ຈໍານວນການຮັບຮູ້" ແລະກໍານົດທັງ SYN ແລະ ACK bits ເປັນ 1. ສຸດທ້າຍ, ເຄື່ອງແມ່ຂ່າຍຈະສົ່ງ packet ໃຫ້ກັບລູກຄ້າ, ເຊິ່ງບໍ່ມີຂໍ້ມູນຊັ້ນຂອງແອັບພລິເຄຊັນ (ແລະບໍ່ມີຂໍ້ມູນສໍາລັບເຄື່ອງແມ່ຂ່າຍ. ສົ່ງ). ໃນເວລານີ້, ເຄື່ອງແມ່ຂ່າຍແມ່ນຢູ່ໃນສະຖານະ SYN-RCVD.

ແພັກເກັດ ACK

ເມື່ອລູກຄ້າໄດ້ຮັບແພັກເກັດຈາກເຄື່ອງແມ່ຂ່າຍ, ມັນຈໍາເປັນຕ້ອງປະຕິບັດການເພີ່ມປະສິດທິພາບຕໍ່ໄປນີ້ເພື່ອຕອບສະຫນອງຊຸດຕອບສຸດທ້າຍ: ທໍາອິດ, ລູກຄ້າກໍານົດ ACK bit ຂອງ TCP header ຂອງຊອງຕອບເປັນ 1; ອັນທີສອງ, ລູກຄ້າເຂົ້າໄປໃນຄ່າ server_isn + 1 ໃນຊ່ອງ "ຢືນຢັນຄໍາຕອບ"; ສຸດທ້າຍ, ລູກຄ້າສົ່ງແພັກເກັດໄປຫາເຄື່ອງແມ່ຂ່າຍ. ແພັກເກັດນີ້ສາມາດເອົາຂໍ້ມູນຈາກລູກຄ້າໄປຫາເຄື່ອງແມ່ຂ່າຍ. ເມື່ອສໍາເລັດການດໍາເນີນການເຫຼົ່ານີ້, ລູກຄ້າຈະເຂົ້າໄປໃນສະຖານະ ESTABLISHED.

ເມື່ອເຊີບເວີໄດ້ຮັບແພັກເກັດຕອບຄືນຈາກລູກຄ້າ, ມັນຍັງສະຫຼັບກັບສະຖານະ ESTABLISHED.

ດັ່ງທີ່ທ່ານສາມາດເຫັນໄດ້ຈາກຂະບວນການຂ້າງເທິງ, ເມື່ອປະຕິບັດການຈັບມືສາມທາງ, ການຈັບມືທີສາມແມ່ນອະນຸຍາດໃຫ້ປະຕິບັດຂໍ້ມູນ, ແຕ່ການຈັບມືສອງຄັ້ງທໍາອິດແມ່ນບໍ່. ນີ້ແມ່ນຄໍາຖາມທີ່ມັກຖືກຖາມໃນການສໍາພາດ. ເມື່ອການຈັບມືສາມທາງສໍາເລັດແລ້ວ, ທັງສອງຝ່າຍເຂົ້າໄປໃນສະຖານະ ESTABLISHED, ສະແດງໃຫ້ເຫັນວ່າການເຊື່ອມຕໍ່ໄດ້ຖືກສ້າງຕັ້ງຂຶ້ນຢ່າງສໍາເລັດຜົນ, ໃນເວລານັ້ນລູກຄ້າແລະເຄື່ອງແມ່ຂ່າຍສາມາດເລີ່ມຕົ້ນການສົ່ງຂໍ້ມູນໃຫ້ກັນແລະກັນ.

ເປັນຫຍັງສາມຈັບມື? ບໍ່ແມ່ນສອງເທື່ອ, ສີ່ເທື່ອ?
ຄໍາຕອບທົ່ວໄປແມ່ນ, "ຍ້ອນວ່າການຈັບມືສາມທາງຮັບປະກັນຄວາມສາມາດໃນການຮັບແລະສົ່ງ." ຄໍາຕອບນີ້ແມ່ນຖືກຕ້ອງ, ແຕ່ວ່າມັນເປັນພຽງແຕ່ເຫດຜົນດ້ານຫນ້າ, ບໍ່ໄດ້ເອົາເຫດຜົນຕົ້ນຕໍ. ໃນຕໍ່ໄປນີ້, ຂ້າພະເຈົ້າຈະວິເຄາະເຫດຜົນສໍາລັບການຈັບມືສາມເທື່ອຈາກສາມດ້ານເພື່ອເຮັດໃຫ້ຄວາມເຂົ້າໃຈຂອງພວກເຮົາເລິກເຊິ່ງກ່ຽວກັບບັນຫານີ້.

ການຈັບມືສາມທາງສາມາດຫລີກລ້ຽງການເລີ່ມຕົ້ນຂອງການເຊື່ອມຕໍ່ຊ້ໍາກັນທາງປະຫວັດສາດ (ເຫດຜົນຕົ້ນຕໍ) ໄດ້.
ການຈັບມືສາມວິທີຮັບປະກັນວ່າທັງສອງຝ່າຍໄດ້ຮັບຕົວເລກລໍາດັບເບື້ອງຕົ້ນທີ່ເຊື່ອຖືໄດ້.
ການຈັບມືສາມທາງເພື່ອຫຼີກເວັ້ນການສູນເສຍຊັບພະຍາກອນ.

ເຫດຜົນທີ 1: ຫຼີກລ້ຽງການຊໍ້າກັນທາງປະຫວັດສາດ
ໂດຍຫຍໍ້, ເຫດຜົນຕົ້ນຕໍສໍາລັບການຈັບມືສາມທາງແມ່ນເພື່ອຫຼີກເວັ້ນການສັບສົນທີ່ເກີດຈາກການເລີ່ມຕົ້ນການເຊື່ອມຕໍ່ທີ່ຊ້ໍາກັນເກົ່າ. ໃນສະພາບແວດລ້ອມເຄືອຂ່າຍທີ່ຊັບຊ້ອນ, ການສົ່ງແພັກເກັດຂໍ້ມູນບໍ່ໄດ້ຖືກສົ່ງໄປຫາເຈົ້າພາບປາຍທາງຕະຫຼອດເວລາຕາມເວລາທີ່ກໍານົດໄວ້, ແລະແພັກເກັດຂໍ້ມູນເກົ່າອາດຈະມາຮອດເຈົ້າພາບປາຍທາງທໍາອິດເນື່ອງຈາກຄວາມແອອັດຂອງເຄືອຂ່າຍແລະເຫດຜົນອື່ນໆ. ເພື່ອຫຼີກເວັ້ນການນີ້, TCP ໃຊ້ການຈັບມືສາມທາງເພື່ອສ້າງການເຊື່ອມຕໍ່.

ການຈັບມືສາມທາງເພື່ອຫຼີກເວັ້ນການເຊື່ອມຕໍ່ທີ່ຊ້ໍາກັນທາງປະຫວັດສາດ

ເມື່ອລູກຄ້າສົ່ງຊຸດການສ້າງຕັ້ງການເຊື່ອມຕໍ່ SYN ຫຼາຍອັນຕິດຕໍ່ກັນ, ໃນສະຖານະການເຊັ່ນ: ຄວາມແອອັດຂອງເຄືອຂ່າຍ, ສິ່ງຕໍ່ໄປນີ້ອາດຈະເກີດຂຶ້ນ:

1- ແພັກເກັດ SYN ເກົ່າມາຮອດເຊີບເວີກ່ອນແພັກເກັດ SYN ຫຼ້າສຸດ.
2- ເຊີບເວີຈະຕອບກັບແພັກເກັດ SYN + ACK ໃຫ້ກັບລູກຄ້າຫຼັງຈາກໄດ້ຮັບແພັກເກັດ SYN ເກົ່າ.
3- ເມື່ອລູກຄ້າໄດ້ຮັບແພັກເກັດ SYN + ACK, ມັນກໍານົດວ່າການເຊື່ອມຕໍ່ເປັນການເຊື່ອມຕໍ່ປະຫວັດສາດ (ຈໍານວນລໍາດັບຫມົດອາຍຸຫຼືຫມົດເວລາ) ຕາມສະພາບການຂອງຕົນເອງ, ແລະຫຼັງຈາກນັ້ນສົ່ງແພັກເກັດ RST ກັບເຄື່ອງແມ່ຂ່າຍເພື່ອຍົກເລີກການເຊື່ອມຕໍ່.

ດ້ວຍການເຊື່ອມຕໍ່ສອງມື, ບໍ່ມີວິທີທີ່ຈະກໍານົດວ່າການເຊື່ອມຕໍ່ໃນປະຈຸບັນແມ່ນການເຊື່ອມຕໍ່ປະຫວັດສາດ. ການຈັບມືສາມທາງຊ່ວຍໃຫ້ລູກຄ້າສາມາດກໍານົດວ່າການເຊື່ອມຕໍ່ໃນປະຈຸບັນເປັນການເຊື່ອມຕໍ່ປະຫວັດສາດໂດຍອີງໃສ່ສະພາບການໃນເວລາທີ່ມັນພ້ອມທີ່ຈະສົ່ງຊຸດທີສາມ:

1- ຖ້າມັນເປັນການເຊື່ອມຕໍ່ປະຫວັດສາດ (ຈໍານວນລໍາດັບຫມົດອາຍຸຫຼືຫມົດເວລາ), ແພັກເກັດທີ່ສົ່ງໂດຍການຈັບມືທີສາມແມ່ນແພັກເກັດ RST ເພື່ອຍົກເລີກການເຊື່ອມຕໍ່ປະຫວັດສາດ.
2- ຖ້າບໍ່ແມ່ນການເຊື່ອມຕໍ່ທາງປະຫວັດສາດ, ຊອງທີ່ສົ່ງເປັນຄັ້ງທີສາມແມ່ນແພັກເກັດ ACK, ແລະທັງສອງຝ່າຍຕິດຕໍ່ສື່ສານກໍ່ປະສົບຜົນສໍາເລັດໃນການສ້າງການເຊື່ອມຕໍ່.

ດັ່ງນັ້ນ, ເຫດຜົນຕົ້ນຕໍທີ່ TCP ໃຊ້ການຈັບມືສາມທາງແມ່ນວ່າມັນເລີ່ມຕົ້ນການເຊື່ອມຕໍ່ເພື່ອປ້ອງກັນການເຊື່ອມຕໍ່ປະຫວັດສາດ.

ເຫດຜົນ 2: ເພື່ອ synchronize ຕົວເລກລໍາດັບເບື້ອງຕົ້ນຂອງທັງສອງຝ່າຍ
ທັງສອງຝ່າຍຂອງອະນຸສັນຍາ TCP ຕ້ອງຮັກສາຕົວເລກລໍາດັບ, ເຊິ່ງເປັນປັດໃຈສໍາຄັນເພື່ອຮັບປະກັນການສົ່ງສັນຍານທີ່ເຊື່ອຖືໄດ້. ຕົວເລກລໍາດັບມີບົດບາດສໍາຄັນໃນການເຊື່ອມຕໍ່ TCP. ພວກມັນເຮັດດັ່ງຕໍ່ໄປນີ້:

ເຄື່ອງຮັບສາມາດກໍາຈັດຂໍ້ມູນທີ່ຊ້ໍາກັນແລະຮັບປະກັນຄວາມຖືກຕ້ອງຂອງຂໍ້ມູນ.

ຜູ້ຮັບສາມາດຮັບແພັກເກັດຕາມລໍາດັບຂອງຕົວເລກລໍາດັບເພື່ອຮັບປະກັນຄວາມສົມບູນຂອງຂໍ້ມູນ.

● ໝາຍເລກລຳດັບສາມາດລະບຸຊຸດຂໍ້ມູນທີ່ໄດ້ຮັບໂດຍພາກສ່ວນອື່ນ, ເຮັດໃຫ້ການສົ່ງຂໍ້ມູນທີ່ເຊື່ອຖືໄດ້.

ດັ່ງນັ້ນ, ເມື່ອສ້າງການເຊື່ອມຕໍ່ TCP, ລູກຄ້າຈະສົ່ງແພັກເກັດ SYN ທີ່ມີເລກລໍາດັບເບື້ອງຕົ້ນແລະຮຽກຮ້ອງໃຫ້ເຄື່ອງແມ່ຂ່າຍຕອບກັບແພັກເກັດ ACK ທີ່ຊີ້ໃຫ້ເຫັນເຖິງການຮັບເອົາແພັກເກັດ SYN ຂອງລູກຄ້າທີ່ປະສົບຜົນສໍາເລັດ. ຫຼັງຈາກນັ້ນ, ເຄື່ອງແມ່ຂ່າຍຈະສົ່ງຊຸດ SYN ທີ່ມີເລກລໍາດັບເບື້ອງຕົ້ນໃຫ້ກັບລູກຄ້າແລະລໍຖ້າໃຫ້ລູກຄ້າຕອບ, ຄັ້ງຫນຶ່ງແລະສໍາລັບທັງຫມົດ, ເພື່ອຮັບປະກັນວ່າຕົວເລກລໍາດັບເບື້ອງຕົ້ນແມ່ນ synchronized ທີ່ເຊື່ອຖືໄດ້.

synchronize ເລກລໍາດັບເບື້ອງຕົ້ນຂອງທັງສອງຝ່າຍ

ເຖິງແມ່ນວ່າການຈັບມືກັນແບບສີ່ທາງກໍ່ເປັນໄປໄດ້ທີ່ຈະ synchronize ຕົວເລກລໍາດັບເບື້ອງຕົ້ນຂອງທັງສອງຝ່າຍຢ່າງຫນ້າເຊື່ອຖື, ແຕ່ຂັ້ນຕອນທີສອງແລະສາມສາມາດຖືກລວມເຂົ້າກັນເປັນຂັ້ນຕອນດຽວ, ເຊິ່ງກໍ່ໃຫ້ເກີດການຈັບມືສາມທາງ. ຢ່າງໃດກໍ່ຕາມ, ການຈັບມືສອງຄົນພຽງແຕ່ສາມາດຮັບປະກັນວ່າຈໍານວນລໍາດັບເບື້ອງຕົ້ນຂອງຝ່າຍຫນຶ່ງໄດ້ຮັບຜົນສໍາເລັດຈາກອີກຝ່າຍ, ແຕ່ບໍ່ມີການຮັບປະກັນວ່າຈໍານວນລໍາດັບເບື້ອງຕົ້ນຂອງທັງສອງຝ່າຍສາມາດຢືນຢັນໄດ້. ດັ່ງນັ້ນ, ການຈັບມືສາມທາງແມ່ນທາງເລືອກທີ່ດີທີ່ສຸດທີ່ຈະປະຕິບັດເພື່ອຮັບປະກັນຄວາມຫມັ້ນຄົງແລະຄວາມຫນ້າເຊື່ອຖືຂອງການເຊື່ອມຕໍ່ TCP.

ເຫດຜົນ 3: ຫຼີກເວັ້ນການສູນເສຍຊັບພະຍາກອນ
ຖ້າມີພຽງແຕ່ "ສອງຈັບມື", ເມື່ອຄໍາຮ້ອງຂໍ SYN ຂອງລູກຄ້າຖືກບລັອກໃນເຄືອຂ່າຍ, ລູກຄ້າບໍ່ສາມາດຮັບແພັກເກັດ ACK ທີ່ສົ່ງໂດຍເຄື່ອງແມ່ຂ່າຍ, ດັ່ງນັ້ນ SYN ຈະຖືກສົ່ງຄືນ. ຢ່າງໃດກໍຕາມ, ເນື່ອງຈາກວ່າບໍ່ມີການຈັບມືທີສາມ, ເຄື່ອງແມ່ຂ່າຍບໍ່ສາມາດກໍານົດວ່າລູກຄ້າໄດ້ຮັບການຍອມຮັບ ACK ເພື່ອສ້າງການເຊື່ອມຕໍ່. ດັ່ງນັ້ນ, ເຊີບເວີພຽງແຕ່ສາມາດສ້າງການເຊື່ອມຕໍ່ຢ່າງຈິງຈັງຫຼັງຈາກໄດ້ຮັບແຕ່ລະຄໍາຮ້ອງຂໍ SYN. ນີ້ນໍາໄປສູ່ການດັ່ງຕໍ່ໄປນີ້:

ການສູນເສຍຊັບພະຍາກອນ: ຖ້າຄໍາຮ້ອງຂໍ SYN ຂອງລູກຄ້າຖືກບລັອກ, ເຮັດໃຫ້ເກີດການສົ່ງຕໍ່ຊ້ໍາຊ້ອນຂອງແພັກເກັດ SYN ຫຼາຍ, ເຄື່ອງແມ່ຂ່າຍຈະສ້າງການເຊື່ອມຕໍ່ທີ່ບໍ່ຖືກຕ້ອງຫຼາຍຊ້ໍາຊ້ອນຫຼັງຈາກໄດ້ຮັບການຮ້ອງຂໍ. ນີ້ນໍາໄປສູ່ການເສຍຊັບພະຍາກອນຂອງເຄື່ອງແມ່ຂ່າຍທີ່ບໍ່ຈໍາເປັນ.

ການເກັບຮັກສາຂໍ້ຄວາມ: ເນື່ອງຈາກການຂາດການຈັບມືທີສາມ, ເຄື່ອງແມ່ຂ່າຍບໍ່ມີທາງທີ່ຈະຮູ້ວ່າລູກຄ້າໄດ້ຮັບການຍອມຮັບ ACK ຢ່າງຖືກຕ້ອງເພື່ອສ້າງການເຊື່ອມຕໍ່. ດັ່ງນັ້ນ, ຖ້າຂໍ້ຄວາມຕິດຢູ່ໃນເຄືອຂ່າຍ, ລູກຄ້າຈະສືບຕໍ່ສົ່ງຄໍາຮ້ອງຂໍ SYN ເລື້ອຍໆ, ເຮັດໃຫ້ເຄື່ອງແມ່ຂ່າຍສ້າງການເຊື່ອມຕໍ່ໃຫມ່ຢ່າງຕໍ່ເນື່ອງ. ນີ້ຈະເພີ່ມຄວາມແອອັດຂອງເຄືອຂ່າຍແລະການຊັກຊ້າແລະສົ່ງຜົນກະທົບທາງລົບຕໍ່ການປະຕິບັດເຄືອຂ່າຍໂດຍລວມ.

ຫຼີກເວັ້ນການສູນເສຍຊັບພະຍາກອນ

ດັ່ງນັ້ນ, ເພື່ອຮັບປະກັນຄວາມຫມັ້ນຄົງແລະຄວາມຫນ້າເຊື່ອຖືຂອງການເຊື່ອມຕໍ່ເຄືອຂ່າຍ, TCP ໃຊ້ການຈັບມືສາມວິທີເພື່ອສ້າງການເຊື່ອມຕໍ່ເພື່ອຫຼີກເວັ້ນການເກີດຂື້ນຂອງບັນຫາເຫຼົ່ານີ້.

ສະຫຼຸບ
ໄດ້Network Packet Brokerການສ້າງຕັ້ງການເຊື່ອມຕໍ່ TCP ແມ່ນເຮັດດ້ວຍການຈັບມືສາມທາງ. ໃນລະຫວ່າງການຈັບມືສາມທາງ, ລູກຄ້າທໍາອິດສົ່ງແພັກເກັດທີ່ມີທຸງ SYN ໄປຫາເຄື່ອງແມ່ຂ່າຍ, ສະແດງໃຫ້ເຫັນວ່າຕ້ອງການສ້າງການເຊື່ອມຕໍ່. ຫຼັງຈາກໄດ້ຮັບການຮ້ອງຂໍຈາກລູກຄ້າ, ເຄື່ອງແມ່ຂ່າຍຕອບຊຸດທີ່ມີ SYN ແລະທຸງ ACK ກັບລູກຄ້າ, ສະແດງໃຫ້ເຫັນວ່າການຮ້ອງຂໍການເຊື່ອມຕໍ່ໄດ້ຖືກຍອມຮັບ, ແລະສົ່ງຕົວເລກລໍາດັບເບື້ອງຕົ້ນຂອງຕົນເອງ. ສຸດທ້າຍ, ລູກຄ້າຕອບກັບດ້ວຍທຸງ ACK ກັບເຄື່ອງແມ່ຂ່າຍເພື່ອຊີ້ບອກວ່າການເຊື່ອມຕໍ່ໄດ້ຖືກສ້າງຕັ້ງຂຶ້ນຢ່າງສໍາເລັດຜົນ. ດັ່ງນັ້ນ, ທັງສອງຝ່າຍແມ່ນຢູ່ໃນສະຖານະທີ່ສ້າງຕັ້ງຂຶ້ນແລະສາມາດເລີ່ມຕົ້ນການສົ່ງຂໍ້ມູນເຊິ່ງກັນແລະກັນ.

ໂດຍທົ່ວໄປ, ຂະບວນການຈັບມືສາມທາງສໍາລັບການສ້າງຕັ້ງການເຊື່ອມຕໍ່ TCP ຖືກອອກແບບມາເພື່ອຮັບປະກັນຄວາມຫມັ້ນຄົງແລະຄວາມຫນ້າເຊື່ອຖືຂອງການເຊື່ອມຕໍ່, ຫຼີກເວັ້ນການສັບສົນແລະເສຍຊັບພະຍາກອນໃນການເຊື່ອມຕໍ່ປະຫວັດສາດ, ແລະໃຫ້ແນ່ໃຈວ່າທັງສອງຝ່າຍສາມາດຮັບແລະສົ່ງຂໍ້ມູນ.


ເວລາປະກາດ: 08-08-2025