0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

TCP粘包到底是什么

Wildesbeast 来源:今日头条 作者:wendellFang 2020-02-17 17:45 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

TCP是一种流式连接,对小包会进行封包缓存发送,大包会出现分包发送。接收端就会发现接收到的数据和发送的数据的次数不一致。这个就是粘包现象。

解决:

1、定长数据包(太理想)

2、使用特殊标记来区分消息间隔(字符数据可以,二级制数据不可行)

3、把消息尺寸与消息一并发送(目前最通用的做法是在每次发送的数据的固定偏移位置写入数据包的长度)

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • TCP
    TCP
    +关注

    关注

    8

    文章

    1418

    浏览量

    83019
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    请问Keil中的map文件到底是什么意思?

    Keil中的map文件到底是什么意思?里面是如何进行相关执行操作的
    发表于 11-25 06:59

    GD32F470+LWIP TCP偶尔丢怎么解决?

    硬件校验和的宏,不相符。 通过wireshark在上位机监控数据,发现出现问题的时候,上位机是发送了数据的,但是板子似乎没有收到,而且过1.5秒后板子还会重发一次上一的数据,符合tcp没有收到ack
    发表于 09-29 06:43

    IEC 到底是什么?为什么它能影响全球?

    IEC 到底是什么?为什么它能影响全球?
    的头像 发表于 09-04 17:07 2476次阅读

    晶振的 “负载电容” 到底是什么

    负载电容,到底是什么? 负载电容,简单来说,是指晶振的两条引线连接IC块内部及外部所有有效电容之和,我们可以将其看作晶振片在电路中串接的电容。从更专业的角度讲,它是为了使晶振能够在其标称频率下稳定
    的头像 发表于 07-25 16:26 671次阅读

    请问编译纯rtos到底是选择Linux+rtos的sdk编译only rtos还是直接使用rtos sdk?

    编译纯rtos到底是选择Linux+rtos的sdk编译only rtos还是直接使用rtos sdk?
    发表于 07-11 07:22

    一文给你讲透!DA板卡到底是什么?它和主板又有哪些不同?

    大家好,我是老王,在电子行业干了十几年,今天我就用“大白话”给大家讲讲DA板卡到底是啥,它和咱们常说的“主板”有啥区别。文章里会穿插一些表格和实际案例,保证你读完不仅能懂,还能跟朋友吹牛!
    的头像 发表于 04-24 16:48 1666次阅读
    一文给你讲透!DA板卡<b class='flag-5'>到底是</b>什么?它和主板又有哪些不同?

    ADS1298 RDATAC Opcode时,START到底是低还是高?

    您好,1298的datasheet看到这有点糊涂了。 1、RDATAC Opcode时,START到底是低还是高? 从时序图上看实线是高、虚线是低,请问实线虚线有什么区别? 2、同时在DOUT
    发表于 02-14 07:48

    ADS1298 tdr的值到底是多大,跟采样率等有没有什么关系?

    我想请问一下, 1、tdr的值到底是多大,跟采样率等有没有什么关系。数据手册上只找到建立时间,好像没有这个时间的值,28页那个最小SCLK时钟为110khz是怎么计算的。 2、 tdr到底是
    发表于 02-13 06:11

    ADS1298的操作温度范围到底是多少?

    ADS1298是 0°Cto +70°C;工业级ADS1298I 是 –40°Cto +85°C。 现在不知道ADS1298的操作温度范围到底是多少?
    发表于 02-10 07:19

    ADS1298ECG-FE原理图上看见很多NI的符号, 到底是什么意思呢?

    我们在ADS1298ECG-FE原理图上看见很多NI的符号, 到底是什么意思呢? 具体的值是多少呢? 如下面两个图所示: R1, R2电阻的值是多少? 这个比较重要。 R59 - R66又是多少? 麻烦你们回答一下。 谢谢
    发表于 02-05 08:16

    ADS1278的参考电压的要求到底是怎样的?

    <27MHz为例,Vrefp输入范围为0.5到3.1V 而后文又提到,参考输入电压的范围为AGND-0.4v to AVDD+0.4v 问题1. 这个参考电压的要求到底是怎样的? 问题2.
    发表于 01-23 08:02

    ADS7864采样频率到底是由外部时钟决定还是HOLDX信号频率决定?

    ADS7864数据手册上说当采用8M外部时钟的时候,采样频率为500kHz,但是有人说可以通过HOLDX频率来控制采样频率,一个HOLDX下降沿采样一次,HOLDX频率就是采样频率。请问采样频率到底是由外部时钟决定还是HOLDX信号频率决定?
    发表于 01-14 06:47

    TCP三次握手的常见问题及解决方案

    (同步-确认),和ACK(确认)。 1. 什么是TCP三次握手? TCP三次握手是TCP连接建立的过程,包括: SYN :客户端发送一个SYN到服务器以发起连接。 SYN-ACK :
    的头像 发表于 01-06 09:11 1839次阅读

    LM629 PID参数调节,所谓的高频震荡到底是什么意思?

    为何我的系统一直没有所谓的高频震荡这种现象;只是随着Kd的增加,系统的阻尼开始变大而已。所谓的高频震荡到底是什么意思?
    发表于 01-01 07:30

    DAC3283到底是8位的LVDS输入数据还是16位的LVDS输入数据?

    请问这个DAC到底是8位的LVDS输入数据还是16位的LVDS输入数据啊。。也就是说,这个I路的15:8和7:0,是一个16位数据拆成了两部分,高八位和第八位(其中又包含P和N),还是一个8位
    发表于 12-31 08:27