- TCP 是面向连接的,UDP 是面向无连接的
- UDP程序结构较简单
- TCP 是面向字节流的,UDP 是基于数据报的
- TCP 保证数据正确性,UDP 可能丢包
- TCP 保证数据顺序,UDP 不保证
大写ACK是确认值(Acknowledgement),为1便是确认连接。
小写ack是确认编号(Acknowledgement Number),即接收到的上一次远端主机传来的seq然后+1
客户端和服务端都有自己seq,每次请求,都是在自己上次seq请求加1
大写ACK是确认值(Acknowledgement),为1便是确认连接。
小写ack是确认编号(Acknowledgement Number),即接收到的上一次远端主机传来的seq然后+1;
有客户端C和服务端S(处于监听状态)
第一次请求:客户端发送数据包中,SYN同步位为1,初始seq序列号为某个值x,此时tcp客户进程进入SYN-SENT(同步已发送)阶段状态。
第二次请求:服务端送到数据包后,将SYN和ACK都置为1,确认号ack为x+1,同时自己选择一个初始序列号为y,向客户端发送数据,tcp服务端进入SYN-RCVD(同步收到)状态。
第三次请求:客户端收到后,还要向服务端确认,确认报文段的ACK置1,确认号ack = y + 1,而自己的序号seq= x + 1。TCP连接已经建立,A进入ESTABLISHED(已建立连接)状态。当B收到A的确认后,也进入ESTABLISHED状态。