天天看点

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