This could even be seen as the simplest way of how TCP connection is established. Before moving into the main points, allow us to study some basics. TCP stands for Transmission Control Protocol which indicates that it does something to manage the transmission of the info during a reliable way.
The process of communication between devices over the web happens in step with this TCP/IP suite model(stripped out version of OSI reference model). the applying layer could be a top pile of stack of TCP/IP model from where network referenced application like applications program on the client side establish reference to the server. From the applying layer, the information is transferred to the transport layer where our topic comes into picture. the 2 important protocols of this layer are – TCP, UDP(User Datagram Protocol) out of which TCP is prevalent(since it provides reliability for the connection established). However you'll find application of UDP in querying the DNS server to urge the binary equivalent of the name used for the web site.
TCP provides reliable communication which is called PAR (Positive Acknowledgement with Re-transmission). The Protocol Data Unit(PDU) of the transport layer is named segment. Now a tool using PAR resend the info unit until it receives an acknowledgement. If the information unit received at the receiver’s end is damaged(It checks the info with checksum functionality of the transport layer that's used for Error Detection), then receiver discards the segment. that the sender needs to resend the information unit that positive acknowledgement isn't received. you'll be able to realize from above mechanism that three segments are exchanged between sender(client) and receiver(server) for a reliable TCP connection to urge established. allow us to delve how this mechanism works :
Step 1 (SYN) : within the opening move, client wants to determine a reference to server, so it sends a segment with SYN(Synchronize Sequence Number) which informs server that client is probably going to start out communication and with what sequence number it starts segments with
Step 2 (SYN + ACK): Server responding to all of the client request with set of SYN-ACK signal bits. Acknowledgement(ACK) signifies the response of segment it received and SYN signifies with what sequence number it's likely to begin the segments.
Step 3 (ACK) : within the final part client acknowledges the response of server and that they both establish a reliable reference to which they'll start the particular data transfer
The steps 1, 2 creating the connection signals (sequence number) for one direction and it's acknowledged. The steps 2, 3 establish the connection parameter (sequence number) for the opposite direction and it's acknowledged. With these, a full-duplex communication is established.
Note – Initial sequence numbers are randomly selected while establishing connections between client and server.
Reference-
Connection establishment – Wikipedia
Comments
Post a Comment