深刻解析TCP协议--传输层数据收发机制和内核视角下的数据报文收发过程

在这里插入图片描述

一.UDP协议解析

UDP协议报头

在这里插入图片描述

  • UDP协议是全双工通信协议,CS两端都没有发送缓冲区,只有接收缓冲区
    在这里插入图片描述
  • 由于CS双方的UDP报文都是在单次调用写接口的过程中发送完成的,即一次写接口的调用就可以发送一个完整的应用层报文,同样,一次读接口的调用就可以获取一个完整的应用层报文,因而UDP协议被称为数据报传输协议

二.认识TCP协议报文

  • TCP协议是基于连接的传输控制协议,面向字节流通信,为了实现传输控制,CS双方内核中都有一个发送缓冲区和一个接收缓冲区,报文的发送和接收过程由CS双方的操作系统内核自主控制完成(内核自主决定应用层数据报文的发送时间,传输字节数和差错处理等等)
    在这里插入图片描述

TCP报文结构

在这里插入图片描述

  • 双方内核传输数据的速度由双方内核接收缓冲区的剩余空间决定,通过TCP报头中的16位窗口大小通信双方都可以得知彼此的接收缓冲区剩余空间
  • 6位报头类型标识中各字段的含义:
    • URG: 紧急指针是否有效(若有效则紧急数据会被对端应用层优先读取)
    • ACK: 确认序号是否有效(标识应答报文)
    • PSH: 提示接收端应用程序立刻从TCP缓冲区把数据读走
    • RST: 发送报文时发现对端机器通信状态异常,则会发送RST报文要求重新建立连接
      • 对端通信机器发生硬件异常时,TCP 具有连接保活机制,本端机器可以在一定时间内维持连接状态(内核中的连接结构体暂时不销毁)
    • SYN: 请求建立连接; 我们把携带SYN标识的称为同步报文段(握手协商报文)
    • FIN: 通知对方, 本端要关闭了, 我们称携带FIN标识的为结束报文段(挥手协商报文)

三.TCP协议确保数据高效稳定传输的机制

1.数据稳定传输的核心机制:确认应答机制

  • 确认应答机制贯穿整个TCP协议的设计
  • 数据发送方向另一端发送报文,数据接收方收到报文后向数据发送方回应一个ACK报文进行应答,数据发送方接收到
评论 53
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

努力的青菜

谢谢各位爹娘的打赏

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值