當前位置:成語大全網 - 書法字典 - TCP連接建立-三次消息握手

TCP連接建立-三次消息握手

三次握手過去被稱為三次握手。其實這是壹個交換三條消息的握手,而不是三次握手。握手用單數而不用復數,表示只是握手。

1.同步發送

SYN_SENT表示請求連接。當妳想訪問其他電腦的服務時,妳必須先向端口發送壹個同步信號。此時狀態為SYN_SENT。如果連接成功,它將被建立。此時,SYN_SENT狀態很短。

2.命令正確應答

ACK(確認)是確認字符,它是在數據通信中由接收站發送給發送站的傳輸控制字符。表示已確認發送的數據已被正確接收。

3.SYN_RCVD(同步接收)

4.ESTAB_LISHED(連接已建立)

5.變速器控制模塊TCB

TCB(傳輸控制塊)在每個連接中存儲壹些重要信息。

首先,B的PCP服務器進程首先創建傳輸控制模塊TCB,準備接受客戶端進程的連接請求。然後服務器進程處於監聽狀態,等待客戶端的連接請求。

1.SYN=1,seq=x

A的TCP客戶端進程也是先創建傳輸控制模塊TCB,然後在打算建立TCP連接時向B發送請求消息段。此時,選擇報頭中的同步比特SYN=1和初始序列號seq=x。即syn = 1,seq = X. TCP規定壹個syn段(即SYN = 1的段)不能攜帶數據,但它消耗壹個序列號。此時,TCP客戶端進程進入SYN_SENT狀態。

2.SYN=1,ACK=1,seq=y,ack=x+1

B收到連接請求消息後,如果同意建立連接,將向A發送確認。在確認報文段中,SYN位和ACK位都要設置為1,確認號為ack=x+1,還應該為自己選擇壹個初始號seq=y。即syn = 1,ack = 1,seq = y,ack = x+1。

請註意:這個消息段也不能攜帶數據,但同時會消耗壹個序列號。此時,TCP服務器進程進入SYN_RCVD(同步接收)狀態。

3.ACK=1,seq=x+1,ack=y+1

在收到來自B的確認後,TCP客戶端進程也將向B發出確認..確認段的ACK設置為1,確認號ack=y+1,自身序列號seq=x+1。即ACK = 1,seq = x+1,ack = y+1 TCP標準規定ACK段可以攜帶數據。但是如果沒有攜帶數據,則不消耗序列號。在這種情況下,下壹個數據段仍然是seq=x+1。這個時候。TCP連接已經建立,A進入ESTAB狀態。

4.當B收到A的確認時,它也進入ESTAB_LISHED狀態。