CN103532668B - 一种确保tcp通信数据完整及正确的方法 - Google Patents
一种确保tcp通信数据完整及正确的方法 Download PDFInfo
- Publication number
- CN103532668B CN103532668B CN201310474621.9A CN201310474621A CN103532668B CN 103532668 B CN103532668 B CN 103532668B CN 201310474621 A CN201310474621 A CN 201310474621A CN 103532668 B CN103532668 B CN 103532668B
- Authority
- CN
- China
- Prior art keywords
- data
- bag
- packet header
- length
- sequence number
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Abstract
本发明一种确保TCP通信数据完整及正确的方法,包括:步骤1:根据实际情况定义TCP封包传输格式,TCP数据包由包头+数据长度+包序号+数据+数据效验码+包尾的先后顺序依次组成;步骤2:客户端或服务器再将要发送的数据按照步骤1的方式封装成完整数据包;步骤3:客户端或服务器在收到数据后根据封装格式进行数据完整性及正确性验证,并将当前包序号返回给发送端。
Description
技术领域
本发明涉及TCP通信领域,尤其涉及一种能确保TCP通信数据完整及正确的方法。
背景技术
采用TCP协议传输的客户端与服务器之间,在数据频繁交互的时候,由于TCP协议本身是一种流协议的,这就意味着数据是以字节流的形式传递给接收者的,没有固有的"报文"或"报文边界"的概念。在接收中可以得知总共要读取多少,但是不知道具体某一次读取多少。因此会出现多个包连接在一起,造成包不完整,从发送缓冲区看,发送方发送的若干包数据到接收方接收时粘成一包,从接收缓冲区看,后一包数据的头紧接着前一包数据的尾,从而形成了粘包现象。
出现粘包现象的原因是多方面的,它既可能由发送方造成,也可能由接收方造成。发送方引起的粘包是由TCP协议本身造成的,TCP为提高传输效率,发送方往往要收集到足够多的数据后才发送一包数据。若连续几次发送的数据都很少,通常TCP会根据优化算法把这些数据合成一包后一次发送出去,这样接收方就收到了粘包数据。接收方引起的粘包是由于接收方用户进程不及时接收数据,从而导致粘包现象。这是因为接收方先把收到的数据放在系统接收缓冲区,用户进程从该缓冲区取数据,若下一包数据到达时前一包数据尚未被用户进程取走,则下一包数据放到系统接收缓冲区时就接到前一包数据之后,而用户进程根据预先设定的缓冲区大小从系统接收缓冲区取数据,这样就一次取到了多包数据。
在使用TCP协议传输数据的过程中,TCP协议本事只能保证数据的正确,而不能保证传输的内容未经过篡改,特别对于工业及重要数据的应用场合,数据一旦篡改,将可能引发重大问题,这些都是现有技术存在的缺陷。本发明以至少解决上诉问题。
发明内容
本发明的目的是针对上述背景技术存在的缺陷,提供一种用于远程监控领域的可确保TCP通信数据完整及正确的方法。
为实现上述目的,本发明一种确保TCP通信数据完整及正确的方法,包括:
步骤1:定义TCP封包传输格式,TCP数据包由包头+数据长度+包序号+数据+数据效验码+包尾的先后顺序依次组成;;
步骤2:客户端或服务器再将要发送的数据按照步骤1的方式封装成完整数据包;
步骤3:客户端或服务器在收到数据后根据封装格式进行数据完整性及正确性验证,并将当前包序号返回给发送端;
上述步骤2、3的客户端或服务器在收到数据后根据封装格式进行数据完整性及正确性验证,并做出相应的处理的具体步骤为:
步骤11:封装数据包,根据<步骤1>所述包头与包尾均为特殊字符串组成,数据长度定义为除包头外的包的总长度,包序号定义为当前包的ID号,数据定义为待发送的数据信息,数据校验码定义为对除包头与包尾外的数据进行数据校验的结果;
步骤12:声明一个BUF存储空间并初始化,将每次接收到的数据均添加到该BUF存储空间中;
步骤13:首先判断BUF存储空间接收的数据是否大于包头长度,大于则进行判断是否为指定的包头标示,如是,则证明包头标示完整正确,否则,说明接收到无效或错误的包头标示,删除BUF存储空间中的数据直到下一个包头标示出现的位置;小于则继续<步骤12>;
步骤14:判读BUF存储空间中的接收数据长度是否大于<步骤1>中‘包头+长度’的长度,如大于,则根据数据得到该包数据剩余的总长度;如小于,则说明数据接收不完整,继续<步骤12>;
步骤15:根据长度计算出当前数据包的总长度,判读BUF存储空间中的数据长度是否大于当前计算的数据包总长度,如大于,则继续<步骤16>,如小于,说明数据接收不完整,继续<步骤12>;
步骤16:根据长度获得包尾位置,判读包尾标示是否正确,如是,则进行<步骤17>,否则,说明接收到无效或错误的包尾标示,删除BUF存储空间中的数据直到下一个包头标示出现的位置,继续<步骤12>;
步骤17:根据计算的数据包长度从BUF存储空间中得到完整的数据包,进行数据效验,其中校验方式至少包括CRC,MD5方式,效验成功表示数据正确,删除BUF存储空间中相应的数据,避免重复处理;否则,说明数据错误或者发生篡改,清理数据到下一个包头,继续<步骤12>;
步骤18:判断当前包序号是否为上一次包序号相等,如是,则说明已经处理过,直接返回包序号给客户端,否则则判断是否等于包序号加1,是则说明是接收正常;
步骤19:拿到完整的数据,返回当前包序号给客户端,提示当前数据包已经正确接收,并记录下当前数据包的包序号。
进一步地,步骤1中定义TCP封包传输格式需要根据不同的应用场合,选择不同的包头和包尾为标示符,或对传输的数据进行加密解密后通过计算机的网卡进行传输
进一步地,步骤3中所述的发送端为客户端或服务器的任意一种,即当客户端为接收端时,服务器为发送端;当服务器为接收端时,客户端为发送端。
进一步地,在所述步骤3中要分别依次进行六次判断,即进行接收到的数据长度是否大于包头标示长度的判断、包头标示是否正确的判断、接收到的数据长度是否大于‘包头+长度’长度的判断、接收到数据长度是否大于计算所得数据包的总长度的判断、包尾标示是否正确的判断及接收数据进行校验,验证数据是否被篡改判断。
进一步地,上述接收到数据的长度是否大于包头标示长度的判断、包头标示是否正确的判断、接收到的长度是否大于‘包头+长度’长度的判断、接收到数据长度是否大于计算所得数据包的总长度的判断、包尾标示是否正确的判断的五个判断步骤中均只有在获得判断结果为“是”的情况下,才可进入下一个判断步骤,否则上述五个判断步骤均会返回接收数据步骤,而后再次依次从头到尾再次进行数据包的完整性与准确性的判断。
进一步地,头标示是否正确的判断与包尾标示是否正确的判断的步骤如判断结果为“否”则会进入删除数据,直到下一包头标记位置的数据删除步骤。
进一步地,在步骤3中的接收数据进行校验,验证是否被篡改判断的步骤如获得判断结果为“是”,会进入删除数据,直到下一包头标记位置的数据删除步骤;如获得判断结果为“否”则进入步骤3。
进一步地,在步骤3中需要进一步判断当前包序号是否为上一次包序号相等,如是,则说明已经处理过,直接返回包序号给客户端,否则判断是否等于包序号加1,是则说明是接收正常。
综上所述,本发明一种确保TCP通信数据完整及正确的方法提供了一种封包机制,在接收方对数据进行了严格的判断,在接收方对数据进行了校验,保证数据无篡改,能够有效的解决粘包现象,保证使用TCP协议能够完整并且正确进行数据传输,增强程序的健壮性和安全性,提高了TCP协议的使用范围。
附图说明
图1为本发明一种确保TCP通信数据完整及正确的方法整体流程示意图。
图2为本发明一种确保TCP通信数据完整及正确的方法的数据包处理流程图。
图3为本发明一种确保TCP通信数据完整及正确的方法涉及的完整且正确的数据处理详细流程图。
具体实施方式
为详细说明本发明的技术内容、构造特征、所达成目的及效果,以下兹例举实施例并配合附图详予说明。
请参阅图1、图2及图3,本发明一种确保TCP通信数据完整及正确的方法,包括:
步骤1:根据实际情况定义TCP封包传输格式,TCP数据包由包头+数据长度+包序号+数据+数据效验码+包尾的先后顺序依次组成;
步骤2:客户端或服务器再将要发送的数据按照步骤1的方式封装成完整数据包;
步骤3:客户端或服务器在收到数据后根据封装格式进行数据完整性及正确性验证,并将当前包序号返回给发送端。
进一步地,上述步骤1中实际情况是指根据不同的应用场合,选择不同的包头和包尾为标示符,也可以对传输的数据进行加密解密后通过计算机的网卡进行传输。
步骤3中所述的发送端为客户端或服务器的任意一种,即当客户端为接收端时,服务器为发送端;当服务器为接收端时,客户端为发送端。
在所述步骤3中要分别依次进行六次判断,即进行接收到的数据长度是否大于包头标示长度的判断、包头标示是否正确的判断、接收到的数据长度是否大于‘包头+长度’长度的判断、接收到数据长度是否大于计算所得数据包的总长度的判断、包尾标示是否正确的判断及接收数据进行校验,验证数据是否被篡改判断。上述接收到的数据长度是否大于包头标示长度的判断、包头标示是否正确的判断、接收到的数据长度是否大于‘包头+长度’长度的判断、接收到数据长度是否大于计算所得数据包的总长度的判断、包尾标示是否正确的判断的五个判断步骤中均只有在获得判断结果为“是”的情况下,才可进入下一个判断步骤,否则上述五个判断步骤均会返回接收数据步骤,而后再次依次从头到尾再次进行数据包的完整性与准确性的判断。唯一的区别在于:包头标示是否正确的判断与包尾标示是否正确的判断的步骤如判断结果为“否”则会进入删除数据,直到下一包头标记位置的数据删除步骤。
在步骤3中的接收数据进行校验,验证是否被篡改判断的步骤如获得判断结果为“是”,会进入删除数据,直到下一包头标记位置的数据删除步骤;如获得判断结果为“否”则进入步骤3。
在步骤3中需要进一步判断当前包序号是否为上一次包序号相等,如是,则说明已经处理过,直接返回包序号给客户端,否则判断是否等于包序号加1,是则说明是接收正常。
上述步骤2、3的客户端或服务器在收到数据后根据封装格式进行数据完整性及正确性验证,并做出相应的处理的具体步骤为:
步骤11:根据实际情况封装数据包,根据<步骤1>所述包头与包尾均为特殊字符串组成,数据长度定义为除包头外的包的总长度,包序号定义为当前包的ID号,数据定义为待发送的数据信息,数据校验码定义为对除包头与包尾外的数据进行数据校验的结果。
步骤12:声明一个BUF存储空间并初始化,将每次接收到的数据均添加到该BUF存储空间中。
步骤13:首先判断BUF存储空间接收的数据是否大于包头长度,大于则进行判断是否为指定的包头标示,如是则证明包头标示完整正确,否则,说明接收到无效或错误的包头标示,删除BUF存储空间中的数据直到下一个包头标示出现的位置;小于则继续<步骤12>。
步骤14:判读BUF存储空间中的接收数据长度是否大于<步骤1>中‘包头+长度’的长度,大于则根据数据得到该包数据剩余的总长度;小于则说明数据接收不完整,继续<步骤12>。
步骤15:根据长度计算出当前数据包的总长度,判读BUF存储空间中的数据长度是否大于当前计算的数据包总长度,如果是则继续<步骤16>,否则说明数据接收不完整,继续<步骤12>。
步骤16:根据长度获得包尾位置,判读包尾标示是否正确,如是则进行<步骤17>,否则说明接收到无效或错误的包尾标示,删除BUF存储空间中的数据直到下一个包头标示出现的位置,继续<步骤12>。
步骤17:根据计算的数据包长度从BUF存储空间中得到完整的数据包,进行数据效验,其中校验方式至少包括CRC,MD5方式,效验成功表示数据正确,删除BUF存储空间中相应的数据,避免重复处理;否则说明数据错误或者发生篡改,清理数据到下一个包头,继续<步骤12>。
步骤18:判断当前包序号是否为上一次包序号相等,如是,则说明已经处理过,直接返回包序号给客户端,否则判断是否等于包序号加1,是则说明是接收正常。
步骤19:拿到完整的数据,返回当前包序号给客户端,提示当前数据包已经正确接收,并记录下当前数据包的包序号。
综上所述,本发明一种确保TCP通信数据完整及正确的方法提供了一种封包机制,在接收方对数据进行了严格的判断,在接收方对数据进行了校验,保证数据无篡改,能够有效的解决粘包现象,保证使用TCP协议能够完整并且正确进行数据传输,增强程序的健壮性和安全性,提高了TCP协议的使用范围。
以上所述的技术方案仅为本发明一种确保TCP通信数据完整及正确的方法的较佳实施例,任何在本发明一种确保TCP通信数据完整及正确的方法基础上所作的等效变换或替换都包含在本专利的权利要求的范围之内。
Claims (3)
1.一种确保TCP通信数据完整及正确的方法,该方法包括:
步骤1:定义TCP封包传输格式,TCP数据包由包头+数据长度+包序号+数据+数据效验码+包尾的先后顺序依次组成;步骤2:客户端或服务器再将要发送的数据按照步骤1的方式封装成完整数据包;步骤3:客户端或服务器在收到数据后根据封装格式进行数据完整性及正确性验证,并将当前包序号返回给发送端,其特征在于:
上述步骤2、3的客户端或服务器在收到数据后根据封装格式进行数据完整性及正确性验证,并做出相应的处理的具体步骤为:
步骤11:封装数据包,根据<步骤1>所述包头与包尾均为特殊字符串组成,数据长度定义为除包头外的包的总长度,包序号定义为当前包的ID号,数据定义为待发送的数据信息,数据校验码定义为对除包头与包尾外的数据进行数据校验的结果;
步骤12:声明一个BUF存储空间并初始化,将每次接收到的数据均添加到该BUF存储空间中;
步骤13:首先判断BUF存储空间接收的数据是否大于包头长度,大于则进行判断是否为指定的包头标示,如是,则证明包头标示完整正确,否则,说明接收到无效或错误的包头标示,删除BUF存储空间中的数据直到下一个包头标示出现的位置;小于则继续<步骤12>;
步骤14:判读BUF存储空间中的接收数据长度是否大于<步骤1>中‘包头+长度’的长度,如大于,则根据数据得到该包数据剩余的总长度;如小于,则说明数据接收不完整,继续<步骤12>;
步骤15:根据长度计算出当前数据包的总长度,判读BUF存储空间中的数据长度是否大于当前计算的数据包总长度,如大于,则继续<步骤16>,如小于,说明数据接收不完整,继续<步骤12>;
步骤16:根据长度获得包尾位置,判读包尾标示是否正确,如是,则进行<步骤17>,否则,说明接收到无效或错误的包尾标示,删除BUF存储空间中的数据直到下一个包头标示出现的位置,继续<步骤12>;
步骤17:根据计算的数据包长度从BUF存储空间中得到完整的数据包,进行数据效验,其中校验方式至少包括CRC,MD5方式,效验成功表示数据正确,删除BUF存储空间中相应的数据,避免重复处理;否则,说明数据错误或者发生篡改,清理数据到下一个包头,继续<步骤12>;
步骤18:判断当前包序号是否为上一次包序号相等,如是,则说明已经处理过,直接返回包序号给客户端,否则则判断是否等于包序号加1,是则说明是接收正常;
步骤19:拿到完整的数据,返回当前包序号给客户端,提示当前数据包已经正确接收,并记录下当前数据包的包序号。
2.根据权利要求1所述的一种确保TCP通信数据完整及正确的方法,其特征在于:步骤1中定义TCP封包传输格式需要根据不同的应用场合,选择不同的包头和包尾为标示符,或对传输的数据进行加密解密后通过计算机的网卡进行传输。
3.根据权利要求2所述的一种确保TCP通信数据完整及正确的方法,其特征在于:步骤3中所述的发送端为客户端或服务器的任意一种,即当客户端为接收端时,服务器为发送端;当服务器为接收端时,客户端为发送端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310474621.9A CN103532668B (zh) | 2013-10-12 | 2013-10-12 | 一种确保tcp通信数据完整及正确的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310474621.9A CN103532668B (zh) | 2013-10-12 | 2013-10-12 | 一种确保tcp通信数据完整及正确的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103532668A CN103532668A (zh) | 2014-01-22 |
CN103532668B true CN103532668B (zh) | 2016-11-23 |
Family
ID=49934385
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310474621.9A Active CN103532668B (zh) | 2013-10-12 | 2013-10-12 | 一种确保tcp通信数据完整及正确的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103532668B (zh) |
Families Citing this family (41)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104093170B (zh) * | 2014-06-10 | 2017-12-01 | 北京创毅视讯科技有限公司 | 基于tcp的数据传输方法和tcp代理装置 |
CN104410613A (zh) * | 2014-11-20 | 2015-03-11 | 广西大学 | 一种处理传输控制协议粘包方法及装置 |
CN105991223A (zh) * | 2015-02-13 | 2016-10-05 | Tcl集团股份有限公司 | 一种tcp网络传输数据中防粘包的方法及系统 |
CN107431691A (zh) * | 2015-08-25 | 2017-12-01 | 华为技术有限公司 | 一种数据包传输方法、装置、节点设备以及系统 |
CN105721245B (zh) * | 2016-02-02 | 2019-03-15 | 四川长虹电器股份有限公司 | 基于快连协议的网络数据嗅探实现方法 |
CN105681322B (zh) * | 2016-02-24 | 2019-08-23 | 清德智体(北京)科技有限公司 | 一种网络流媒体的帧数据获取方法 |
CN107239470B (zh) * | 2016-03-28 | 2021-05-28 | 咪咕音乐有限公司 | 一种数据文件检测方法和装置 |
CN106650473A (zh) * | 2016-12-01 | 2017-05-10 | 中国工商银行股份有限公司 | 校验多文件封装包的方法及系统、发送装置、接收装置 |
CN106772490B (zh) * | 2016-12-07 | 2019-12-10 | 广州市中海达测绘仪器有限公司 | Rtk差分数据传输方法和装置、接收机 |
CN107070598B (zh) * | 2017-03-30 | 2020-10-09 | 重庆伏特猫科技有限公司 | 数据包识别系统及方法 |
CN107086987B (zh) * | 2017-03-30 | 2020-08-07 | 南京青柚信息科技有限公司 | 数据包识别系统及方法 |
CN107086993B (zh) * | 2017-03-30 | 2020-08-21 | 努比亚技术有限公司 | 数据包识别系统及方法 |
CN107086992B (zh) * | 2017-03-30 | 2020-08-21 | 努比亚技术有限公司 | 移动终端及数据包识别方法 |
CN107086989B (zh) * | 2017-03-30 | 2020-08-21 | 努比亚技术有限公司 | 数据包识别系统及方法 |
CN107086991B (zh) * | 2017-03-30 | 2020-08-21 | 努比亚技术有限公司 | 数据包识别系统及方法 |
CN107086988B (zh) * | 2017-03-30 | 2020-07-07 | 深圳碳原子科技有限公司 | 数据包识别系统及方法 |
CN106961438B (zh) * | 2017-03-30 | 2020-08-04 | 新沂市数聚科技有限公司 | 数据包识别系统及方法 |
CN107070903B (zh) * | 2017-03-30 | 2020-08-21 | 努比亚技术有限公司 | 数据包识别系统及方法 |
CN107086986B (zh) * | 2017-03-30 | 2020-07-07 | 努比亚技术有限公司 | 移动终端及数据包识别方法 |
CN107070904B (zh) * | 2017-03-30 | 2020-10-16 | 树根互联技术有限公司 | 数据包识别系统及方法 |
CN107086994B (zh) * | 2017-03-30 | 2020-09-29 | 洋浦盒子数码网络科技有限公司 | 数据包识别系统及方法 |
CN107086990B (zh) * | 2017-03-30 | 2020-08-07 | 南京博雅区块链研究院有限公司 | 移动终端及数据包识别方法 |
CN107040529B (zh) * | 2017-03-30 | 2020-09-04 | 深圳芯航科技有限公司 | 数据包识别系统及方法 |
CN107071167B (zh) * | 2017-03-30 | 2020-08-07 | 南京寰嘉物联网科技有限公司 | 移动终端及数据包识别方法 |
CN107135167A (zh) * | 2017-04-19 | 2017-09-05 | 畅捷通信息技术股份有限公司 | 数据传输方法、数据传输装置和服务器 |
CN107040549B (zh) * | 2017-06-08 | 2021-03-19 | 山大鲁能信息科技有限公司 | 一种tcp粘包处理方法、服务器及系统 |
CN107241436A (zh) * | 2017-07-18 | 2017-10-10 | 山东亚华电子股份有限公司 | 一种tcp网络高速粘包传输及存储的方法 |
CN108600194B (zh) * | 2018-03-30 | 2021-03-23 | 上海兆芯集成电路有限公司 | 网络接口控制器 |
CN108599907B (zh) * | 2018-03-30 | 2021-03-02 | 上海兆芯集成电路有限公司 | 网络接口控制器 |
CN108737026B (zh) | 2018-05-08 | 2020-07-03 | 深圳市心流科技有限公司 | 数据传输方法、装置及计算机可读存储介质 |
CN108718311A (zh) * | 2018-05-18 | 2018-10-30 | 深圳市腾讯网络信息技术有限公司 | 移动终端的网页直播方法、装置及系统 |
CN109284616B (zh) * | 2018-08-17 | 2022-02-11 | 阿里巴巴(中国)有限公司 | 数据访问和数据下发方法、装置、设备及存储介质 |
CN109005477A (zh) * | 2018-09-17 | 2018-12-14 | 兰州交通大学 | 铁路信号数字化轨旁安全通信装置及方法 |
CN109257355A (zh) * | 2018-09-26 | 2019-01-22 | 郑州云海信息技术有限公司 | 一种基于tcp协议数据传输方法、系统及相关组件 |
CN109309676A (zh) * | 2018-09-28 | 2019-02-05 | 中国银行股份有限公司 | 数据传输端、数据接收端、数据处理系统及方法 |
CN109981475B (zh) * | 2019-03-27 | 2023-05-09 | 无锡海斯凯尔医学技术有限公司 | 数据发送、接收、传输方法、设备、系统及可读存储介质 |
CN110798518A (zh) * | 2019-10-25 | 2020-02-14 | 深圳市元征科技股份有限公司 | 一种数据传输方法及装置、终端设备、存储介质 |
CN112511536B (zh) * | 2020-11-27 | 2022-10-21 | 北京经纬恒润科技股份有限公司 | 一种通信方法及通信系统 |
CN113596155A (zh) * | 2021-07-29 | 2021-11-02 | 青岛海信医疗设备股份有限公司 | 数据处理方法、装置、电子设备和存储介质 |
CN114124950A (zh) * | 2021-10-09 | 2022-03-01 | 上海联适导航技术股份有限公司 | 一种数据转发方法、装置、设备及计算机可读存储介质 |
CN114401127A (zh) * | 2021-12-30 | 2022-04-26 | 中国电信股份有限公司 | 一种基于ZeroMQ的数据包传输方法、装置及设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6122670A (en) * | 1997-10-30 | 2000-09-19 | Tsi Telsys, Inc. | Apparatus and method for constructing data for transmission within a reliable communication protocol by performing portions of the protocol suite concurrently |
US6279140B1 (en) * | 1999-01-07 | 2001-08-21 | International Business Machines Corporation | Method and apparatus for checksum verification with receive packet processing |
US7403542B1 (en) * | 2002-07-19 | 2008-07-22 | Qlogic, Corporation | Method and system for processing network data packets |
CN101753586A (zh) * | 2010-01-20 | 2010-06-23 | 北京数码视讯科技股份有限公司 | 发送数据的方法、接收数据的处理方法和装置 |
CN102984253A (zh) * | 2012-11-27 | 2013-03-20 | 山东中创软件工程股份有限公司 | 一种传输控制协议粘包处理方法及装置 |
CN103095835A (zh) * | 2013-01-17 | 2013-05-08 | 成都理想科技开发有限公司 | 基于报警系统通信数据包的合理构造与正确解析的实现方法 |
-
2013
- 2013-10-12 CN CN201310474621.9A patent/CN103532668B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6122670A (en) * | 1997-10-30 | 2000-09-19 | Tsi Telsys, Inc. | Apparatus and method for constructing data for transmission within a reliable communication protocol by performing portions of the protocol suite concurrently |
US6279140B1 (en) * | 1999-01-07 | 2001-08-21 | International Business Machines Corporation | Method and apparatus for checksum verification with receive packet processing |
US7403542B1 (en) * | 2002-07-19 | 2008-07-22 | Qlogic, Corporation | Method and system for processing network data packets |
CN101753586A (zh) * | 2010-01-20 | 2010-06-23 | 北京数码视讯科技股份有限公司 | 发送数据的方法、接收数据的处理方法和装置 |
CN102984253A (zh) * | 2012-11-27 | 2013-03-20 | 山东中创软件工程股份有限公司 | 一种传输控制协议粘包处理方法及装置 |
CN103095835A (zh) * | 2013-01-17 | 2013-05-08 | 成都理想科技开发有限公司 | 基于报警系统通信数据包的合理构造与正确解析的实现方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103532668A (zh) | 2014-01-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103532668B (zh) | 一种确保tcp通信数据完整及正确的方法 | |
CN113364512B (zh) | 北斗短报文的封装解析方法及装置 | |
CN103731499B (zh) | 终端和文件传输方法 | |
CN102820959A (zh) | 在Modbus主站与从站之间进行大数据量通信的方法 | |
CN105337991A (zh) | 一种一体化的报文流查找与更新方法 | |
CN107426770B (zh) | 基于数据链路层的数据通讯方法、数据终端及系统 | |
CN104184543B (zh) | 一种数据传输的方法、装置和系统 | |
CN104780123B (zh) | 一种网络包收发处理装置及其设计方法 | |
CN104579548B (zh) | 基于管理数据输入输出多源协议的传输方法及装置 | |
CN109902055A (zh) | 一种适用窄带数据网络的slip编码数据流传输方法 | |
CN104009982B (zh) | 基于超短波电台的文件分组群发装置及文件分组群发方法 | |
CN112181883A (zh) | 一种串口通讯的数据传输方法、系统及存储介质 | |
CN111628959B (zh) | 一种基于随机标签的大规模无人机群安全认证机制 | |
CN112436998A (zh) | 一种数据传输方法及电子设备 | |
CN110297926B (zh) | 星载图像处理装置在轨配置方法 | |
CN101764669A (zh) | 数据接收过程中的crc码校验方法 | |
CN107426270A (zh) | 一种车辆远程监控终端的数据断点续传方法 | |
CN106600749A (zh) | 一种数据记录方法及无人机 | |
CN113824724B (zh) | 一种智能变电站的传感器数据被篡改的判断方法、装置及存储介质 | |
CN106547260B (zh) | 仪控系统中的通信方法、仪控系统用通信装置及仪控系统 | |
CN113934650B (zh) | 一种基于ccsds的1553b内存动态分配方法 | |
CN102884744A (zh) | 用于保护有待于通过接口传输的数据包的方法和设备 | |
CN102341784B (zh) | MoCA中发生错误时快速MAP恢复的方法 | |
CN112468389B (zh) | 一种基于tcp重组的imap邮件还原方法 | |
CN102835127B (zh) | Otn开销的发送、接收方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |