TCP/IP 协议

简介

类似 OSI 模型,一种网络协议概念模型

  • 应用层:提供应用间通讯能力;
  • 传送层:提供主机对主机(host-to-host)传输,TCP/UDP 协议,端口
  • 网络层:提供地址到地址(ip-to-ip)传输; IP 协议 -链路层:设备对设备传输(mac-to-mac)传输;
  • 物理层:光电信号传输

TCP/IP 封包

  • 应用层:数据;
  • 传输层:头(源端口、目标端口等) + 数据(应用层数据,会被切片);
  • 网络层:头(源 IP、目标 IP) + 数据(传输层数据,会被切成更小的片段);
  • 链路层:头 + 数据(网络层数据) + 尾。

如何保证数据顺序

  • SEQ(sequence):这个消息发送前一共发送了多少字节;
  • ACK(acknowledge):这个消息发送前一共收到了多少个字节。

三次握手

  1. 客户端发送同步请求 -> SYN(seq=0, ack=0);
  2. 服务端响应请求,并也发起同步请求 -> ACK(seq=0, ack=1);
  3. 客户端响应请求 -> ACK(seq=1, ack=1)。
  4. 开始传送数据。

四次挥手

  1. 客户端发送关闭请求 -> FIN;
  2. 服务端响应请求 -> ACK;
  3. 服务端处理完后发送关闭请求 -> FIN;
  4. 客户端处理完后发送响应请求 -> ACK;
  5. 关闭连接。
posted @ 2022-03-21 21:17  梦渊同学  阅读(83)  评论(0)    收藏  举报