1

TCP

TCP 是面向连接的、可靠的、基于字节流的传输层通信协议

  • 面向连接:一对一连接
  • 可靠的:保证报文一定能够到达接收端
  • 字节流:报文可被分为多个组

报文格式

  • seq:序列号,建立连接时生成的随机数,每发送一次数据则自增,用于解决网络包乱序
  • ack:确认应答号,发送端收到这个应答号后,可认为这个序号之前的数据已经被正常接收,用于解决丢包
  • ACK:该位为 1 时,确认应答号的字段变为有效
  • SYN:该位为 1 时,表示希望建立连接
  • FIN:该位为 1 时,表示今后不会再有数据发送,希望断开连接

三次握手

  1. 前两次握手确保客户端成功连接
  2. 第三次握手确保服务端成功连接

image.png

四次挥手

  1. 第三步确保服务端完成自己未处理完的数据

image.png

TPC 和 UDP 的区别

tcp

  • 可靠,即发出请求成功与否是可知的
  • 面向连接,即客户端连接到服务器必须建立起一个连接
  • 相对 udp 较慢

udp

  • 不可靠
  • 不面向连接
  • 相对 udp 较快

TaoWu
15 声望2 粉丝