学技术学英语:TCP的三次握手和四次挥手

单词 汉语意思 音标
acknowledge 承认,确认 /əkˈnɒl.ɪdʒ/
acknowledgment 确认,承认 /əkˈnɒl.ɪdʒ.mənt/
duplex 双向的 /ˈdjuː.pleks/
establish 建立 /ɪˈstæb.lɪʃ/
handshake 握手,握手协议 /ˈhænd.ʃeɪk/
re-transmission 重传 /ˌriː.trænsˈmɪʃ.ən/
receiver 接收者 /rɪˈsiː.vər/
reliable 可靠的 /rɪˈlaɪ.ə.bəl/
sequence 序列,顺序 /ˈsiː.kwəns/
segment 段,片段 /ˈseg.mənt/
synchronize 同步 /ˈsɪŋ.krə.naɪz/
termination 终止,结束 /ˌtɜː.mɪˈneɪ.ʃən/
transmit 传输 /trænzˈmɪt/
transmitter 发送者 /trænzˈmɪt.ər/
synchronize 同步 /ˈsɪŋ.krə.naɪz/
termination 终止,结束 /ˌtɜː.mɪˈneɪ.ʃən/
handshake 握手,握手协议 /ˈhænd.ʃeɪk/
duplex 双向的 /ˈdjuː.pleks/
acknowledgment 确认,承认 /əkˈnɒl.ɪdʒ.mənt/
retransmission 重传 /ˌriː.trænsˈmɪʃ.ən/

TCP Connection (A 3-way handshake)

Handshake refers to the process to establish connection between the client and server. Handshake is simply defined as the process to establish a communication link. To transmit a packet, TCP needs a three way handshake before it starts sending data. The reliable communication in TCP is termed as PAR (Positive Acknowledgement Re-transmission). When a sender sends the data to the receiver, it requires a positive acknowledgement from the receiver confirming the arrival of data. If the acknowledgement has not reached the sender, it needs to resend that data. The positive acknowledgement from the receiver establishes a successful connection.

Here, the server is the server and client is the receiver. The above diagram shows 3 steps for successful connection. A 3-way handshake is commonly known as SYN-SYN-ACK and requires both the client and server response to exchange the data. SYN means synchronize Sequence Number and ACK means acknowledgment . Each step is a type of handshake between the sender and the receiver.

The diagram of a successful TCP connection showing the three handshakes is shown below:

The three handshakes are discussed in the below steps:

Step 1: SYN

SYN is a segment sent by the client to the server. It acts as a connection request between the client and server. It informs the server that the client wants to establish a connection. Synchronizing sequence numbers also helps synchronize sequence numbers sent between any two devices, where the same SYN segment asks for the sequence number with the connection request.

Step 2: SYN-ACK

It is an SYN-ACK segment or an SYN + ACK segment sent by the server. The ACK segment informs the client that the server has received the connection request and it is ready to build the connection. The SYN segment informs the sequence number with which the server is ready to start with the segments.

Step 3: ACK

ACK (Acknowledgment) is the last step before establishing a successful TCP connection between the client and server. The ACK segment is sent by the client as the response of the received ACK and SN from the server. It results in the establishment of a reliable data connection.

After these three steps, the client and server are ready for the data communication process. TCP connection and termination are full-duplex, which means that the data can travel in both the directions simultaneously.

TCP Termination (A 4-way handshake)

Any device establishes a connection before proceeding with the termination. TCP requires 3-way handshake to establish a connection between the client and server before sending the data. Similarly, to terminate or stop the data transmission, it requires a 4-way handshake. The segments required for TCP termination are similar to the segments to build a TCP connection (ACK and SYN) except the FIN segment. The FIN segment specifies a termination request sent by one device to the other.

The client is the data transmitter and the server is a receiver in a data transmission process between the sender and receiver. Consider the below TCP termination diagram that shows the exchange of segments between the client and server.

The diagram of a successful TCP termination showing the four handshakes is shown below:

Let's discuss the TCP termination process with the help of six steps that includes the sent requests and the waiting states. The steps are as follows:

Step 1: FIN

FIN refers to the termination request sent by the client to the server. The first FIN termination request is sent by the client to the server. It depicts the start of the termination process between the client and server.

Step 2: FIN_ACK_WAIT

The client waits for the ACK of the FIN termination request from the server. It is a waiting state for the client.

Step 3: ACK

The server sends the ACK (Acknowledgement) segment when it receives the FIN termination request. It depicts that the server is ready to close and terminate the connection.

Step 4: FIN _WAIT_2

The client waits for the FIN segment from the server. It is a type of approved signal sent by the server that shows that the server is ready to terminate the connection.

Step 5: FIN

The FIN segment is now sent by the server to the client. It is a confirmation signal that the server sends to the client. It depicts the successful approval for the termination.

Step 6: ACK

The client now sends the ACK (Acknowledgement) segment to the server that it has received the FIN signal, which is a signal from the server to terminate the connection. As soon as the server receives the ACK segment, it terminates the connection.

中文总结:

  • TCP连接建立(三次握手):

    • SYN(同步序列号):客户端向服务器发送连接请求。

    • SYN-ACK:服务器回应,确认收到请求并准备连接。

    • ACK(确认):客户端确认服务器的响应,连接建立。

  • TCP连接的特点:

    • 使用PAR(Positive Acknowledgement with Retransmission)来确保可靠通信。

    • 连接是双向的(全双工),数据可以同时双向传输。

  • TCP连接终止(四次握手):

    • FIN(终止请求):客户端发出终止连接的请求。

    • FIN_ACK_WAIT:客户端等待服务器的ACK。

    • ACK:服务器确认收到FIN请求。

    • FIN_WAIT_2:客户端等待服务器的FIN信号。

    • FIN:服务器发送FIN信号,表示准备终止连接。

    • ACK:客户端确认收到FIN,连接终止。

相关推荐
古希腊数通小白(ip在学)3 小时前
stp拓扑变化分类
运维·服务器·网络·智能路由器
kfepiza8 小时前
Netplan 中 bridges、bonds、ethernets、vlans 之间的关系 笔记250711
linux·tcp/ip·shell
程序小武10 小时前
网络请求的基本概念、原理及生活化解析
网络协议
kfepiza10 小时前
Netplan 配置网桥(Bridge)的模板笔记250711
linux·tcp/ip·ubuntu
hrrrrb11 小时前
【TCP/IP】11. IP 组播
服务器·网络·tcp/ip
甘露寺11 小时前
HTTP 请求体类型详解:选择最适合的数据提交格式
网络·网络协议·http
七仔あ11 小时前
小皮面板搭建pikachu靶场
网络·渗透
傻啦嘿哟11 小时前
长效住宅代理IP:反爬虫战场上的隐形盾牌
爬虫·网络协议·tcp/ip
Muisti12 小时前
NAT技术(网络地址转换)
网络·计算机网络·智能路由器
SKYDROID云卓小助手13 小时前
无人设备遥控器之无线电频率篇
服务器·网络·单片机·嵌入式硬件·算法