TCP网络协议

ops/2025/3/17 16:55:53/

TCP粘包

1. TCP在接收数据时,多包数据粘在了一起

2. 原因:

    1. TCP发送数据时,没有及时发走,会根据缓冲区数据的情况进行重新组包;
    2. TCP接收方,没有及时读走缓冲区数据,导致缓冲区大量数据缓存。

3. 如何解决TCP粘包:

    1.  发指定大小字节(结构体)
         struct  data
        {
             int id;
             float tmp;
             xxx;
        };

       指定在相同平台上使用,注意结构体对其齐问题。

    
     2. 发送具有指定分隔符的数据

         "hello world\n"
         "how are you\n"

     3. 封装自定义数据帧
          
          
         AA 0d 01  00 00 00 14 00 00 00 15  xx xx xx xx sum BB
         

网络抓包

网络抓包:抓取通过设备网卡的数据

wireshark:网络抓包工具:

1. 分析和追踪网络问题
2. 查看网络协议栈

安装:sudo apt-get install wireshark

1. sudo wireshark
2. 选择通信设备的网卡---》any
3. 选择抓取的过滤条件
4. 开始抓取
5. 进行一次通信

TCP报文头

标志位:
    
    1. URG: 紧急指针标志, 为1时表示紧急指针有效, 该报文应该优先传送。
    2. ACK: 确认应答标志
    3. PSH:  表示发送数据,提示接收端从TCP接收缓冲区中读走数据,为接收后续数据腾出空间
    4. RST: 重置连接标志
    5. SYN: 表示请求建立一个连接
    6. FIN: finish标志, 表示释放连接

TCP机制

     1. 应答机制:为每个数据增加序列发,发送数据时,第一个数据的序号作为报文中的序号。
                             接收方收到相关数据,会回应ACK报文,报文中的确认号是接收方下次希望接收到的数据的
                             起始序号。

     2. 超时重传机制:TCP发送数据后会在一定的时间内等待ACK,假设在指定时间ACK未收到,则视这包数据已经
                                    丢失,会重新传输这包数据。

     3. 流量控制机制:根据接收方接收数据的能力,调整窗口大小,通知发送发进行流量控制


http://www.ppmy.cn/ops/166558.html

相关文章

吊舱视频参数设置

1. 分辨率与码率的关系 分辨率:指视频像素尺寸(如1080p、4K),分辨率越高,细节越清晰,但数据量越大。 码率(流速度):单位时间内的数据量(如Mbps)…

淘宝API vs 爬虫:合规获取实时商品数据的成本与效率对比

以下是淘宝 API 和爬虫在合规获取实时商品数据方面的成本与效率对比: 成本对比 淘宝 API 开发成本:需要申请开发者账号并获取 API 权限,部分敏感或高频访问的接口可能需要额外的审核或付费。开发过程中需要按照平台规定进行编程,相…

【最新】 ubuntu24安装 1panel 保姆级教程

系统:ubuntu24.04.1 安装软件 :1panel 第一步:更新系统 sudo apt update sudo apt upgrade 如下图 第二步:安装1panel,运行如下命令 curl -sSL https://resource.fit2cloud.com/1panel/package/quick_start.sh -o …

贪吃蛇小游戏-简单开发版

一、需求 本项目旨在开发一个经典的贪吃蛇游戏,用户可以通过键盘控制蛇的移动方向,让蛇吃掉随机出现在游戏区域内的食物,每吃掉一个食物,蛇的身体长度就会增加,同时得分也会相应提高。游戏结束的条件为蛇撞到游戏区域的…

LLaMA:开放且高效的基础语言模型

摘要 我们介绍了LLaMA,这是一系列参数规模从70亿到650亿不等的基础语言模型。我们在数万亿的标记上训练我们的模型,并展示了仅使用公开可用的数据集训练出最先进模型的可能性,而无需依赖专有和难以获取的数据集。特别是,LLaMA-13…

网络空间安全(31)安全巡检

一、定义与目的 定义: 安全巡检是指由专业人员或特定部门负责,对各类设施、设备、环境等进行全面或重点检查,及时发现潜在的安全隐患或问题。 目的: 预防事故发生:通过定期的安全巡检,及时发现并解决潜在的…

MySQL-深分页问题的背景和影响

什么是深分页? MySQL 作为最受欢迎的开源关系数据库之一,被广泛用于各种规模的应用程序中。随着数据量的不断增长,高效地处理大量数据成为数据库管理的重要挑战之一。分页是一种常见的数据检索技术,它允许用户在大量数据中浏览和检…

Kubernetes 中metrics-server的采集周期,采集链路是什么样的?

0. 运维干货分享 软考高级系统架构设计师备考学习资料软考高级网络规划设计师备考学习资料Kubernetes CKA认证学习资料分享信息安全管理体系(ISMS)制度模板分享免费文档翻译工具(支持word、pdf、ppt、excel)PuTTY中文版安装包MobaXterm中文版安装包ping…