3-Way Handshake: The Backbone of TCP Communication
3-Way Handshake is a process in TCP (Transmission Control Protocol) where a client and a server communicates with each other to establish a secure connection.It synchronizes the sequence numbers of client and server and ensures if both sides are ready to communicate.
- SYN (Synchronize): In this process, the client sends a packet with SYN flag to the server requesting a connection and starting a synchronization process.
- SYN-ACK (Synchronize-Acknowledge): Server responds to the SYN flag with SYN and ACK flags in return, acknowledging clients requests and sending their own synchronization request.
- ACK (Acknowledge): In servers, the client sends another ACK packet to confirm the response, and the connection is established.
Role in Reliable Data Transmission: 3-Way Handshake makes sure both client and server are synchronized and agree on initial sequence numbers, giving a reliable communication channel.
Security Risks: In 3-Way Handshake, there is a common attack called SYN Flooding,where attackers sends fake SYN requests to the server but never complete the handshake ,overwhelming the server.
Mitigation Techniques:
- SYN Cookies: Instead allocating resources the server sends cookies for incoming SYN until it receives the final ACK.
- Rate Limiting: Limiting rate of requests per second can help prevent excessive requests.
- Firewall Filters: Firewall filters that can detect unusual traffic patterns and block them can reduce the risk of SYN Flooding Attacks.