天天看點

TCP 資料傳輸過程的計算方法

tcp 整個傳輸分為三大部分

1. 三次握手

三次握手過程

客戶-------------> 伺服器

SYN,seq(随機産生的,一般是0) =x

客戶<------------------伺服器

SYN,ACK,seq =y(随機産生的,一般是0),ack =x+1

客戶--------------------> 伺服器

ACK,seq =x +1,ack = y+1;

2. 資料傳輸過程

和三次握手的接口

__________________________________________

1)客戶------------------->伺服器

PSH,ACK,seq =x +1,ack = y+1;

如果是伺服器到客戶

客戶<------------------------伺服器

PSH,ACK,seq =Y +1,ack = x+1;

___________________________________________

對于1)

客戶------------------------------> 伺服器

PSH ,ACK,Seq =x,ack =y,datelen =z,

客戶<-------------------------------伺服器

ack,seq = (ack =y) , ack = ((sql =x)+ z), datelen =z1;

客戶--------------------------------->伺服器

PSH,ACK ,seq = ack,ack =(seq + z1);

如果對方沒有資料過來,自己的确認和序列号不變,下一個确認号為本次的序列号+本次要發送的資料

3.四次握手過程

不再講述

三次包的回應過程可以總結如下,

自己攜帶的資料,可以序号 seq1-sql2 可以得出

對方攜帶的資料,可以用ack_seq 得出,ack_seq1- ack_seq2