System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及通信领域,更具体地涉及数据发送装置、数据接收装置、以及数据传输系统和方法。
技术介绍
1、在使用传输控制协议(transmission control protocol,tcp)的通信中,由于tcp是面向连接且无数据边界的,因此在通过tcp传输数据时,数据帧可能由于帧的大小而产生粘包或拆包的问题。例如,若数据帧较小,则容易导致粘包,即两个数据帧被拼接在一起传输,或者,若数据帧过大以至于超过缓存区大小,则容易导致拆包,即一个数据帧被拆分成两个或更多个帧来传输。粘包和拆包均会导致数据接收装置无法准确解析所接收的数据帧。
技术实现思路
1、应当理解,本专利技术以上的一般性描述和以下的详细描述都是示例性和说明性的,并且旨在为如权利要求所述的本专利技术提供进一步的解释。
2、根据本专利技术第一方面,提供了一种数据发送装置,包括:发送接口,所述发送接口被配置成用于向数据接收装置发送信息;接收接口,所述接收接口被配置成用于接收来自所述数据接收装置的信息;以及处理单元,所述处理单元被配置成用于:执行初始化操作以确定所述数据发送装置的互联网协议(ip)地址和端口号;使所述发送接口通过无连接通信方式向所述数据接收装置发送数据信息,所述数据信息包括所述数据发送装置的ip地址和端口号、以及待发送的数据帧的帧大小;使所述接收接口接收来自所述数据接收装置的连接请求,以建立与所述数据接收装置的使用传输控制协议(tcp)的连接;使所述接收接口通过所述无连接通信方式接收来自所述数据接收装置
3、在上述的数据发送装置中,所述无连接通信方式使用以下各项中的一者:用户数据报协议(udp)、串口、串行外围接口(spi)、内部集成电路(iic)。
4、在上述的数据发送装置中,所述数据信息还包括待发送的数据帧的帧头信息和帧尾信息。
5、在上述的数据发送装置中,所述数据信息还包括待发送的数据帧的特殊位置信息,所述特殊位置信息用于指示特定信息在数据帧中的位置。
6、根据本专利技术第二方面,提供了一种数据接收装置,包括:发送接口,所述发送接口被配置成用于向数据发送装置发送信息;接收接口,所述接收接口被配置成用于接收来自所述数据发送装置的信息;以及处理单元,所述处理单元被配置成用于:使所述接收接口通过无连接通信方式接收来自所述数据发送装置的数据信息,所述数据信息包括所述数据发送装置的互联网协议(ip)地址和端口号、以及待发送的数据帧的帧大小;执行初始化操作,以解析所述数据信息,并记录所述数据信息中的所述数据发送装置的ip地址和端口号、以及待发送的数据帧的帧大小;使所述发送接口基于所述数据信息中的所述数据发送装置的ip地址和端口号向所述数据发送装置发送连接请求,以建立与所述数据发送装置的使用传输控制协议(tcp)的连接;使所述发送接口通过所述无连接通信方式向所述数据发送装置发送确认响应;使所述接收接口通过所述tcp接收来自所述数据发送装置的数据流;以及基于所述帧大小来解析所述数据流中的数据帧。
7、在上述的数据接收装置中,所述无连接通信方式使用以下各项中的一者:用户数据报协议(udp)、串口、串行外围接口(spi)、内部集成电路(iic)。
8、在上述的数据接收装置中,所述处理单元被配置成用于基于所述帧大小来解析所述数据流中的数据帧包括被配置成用于:基于所述帧大小来判断数据帧是否是独立的;以及如果数据帧不是独立的,则基于所述帧大小对所述数据流进行拆分或拼接。
9、在上述的数据接收装置中,所述数据信息还包括待发送的数据帧的帧头信息和帧尾信息,并且所述处理单元被配置成用于基于所述帧大小来解析所述数据流中的数据帧包括被配置成用于:基于所述帧大小来判断数据帧是否是独立的;以及如果数据帧不是独立的,则基于所述帧大小、所述帧头信息和所述帧尾信息对所述数据流进行拆分或拼接。
10、在上述的数据接收装置中,所述数据信息还包括待发送的数据帧的特殊位置信息,所述特殊位置信息用于指示特定信息在数据帧中的位置,并且所述处理单元被配置成用于基于所述帧大小来解析所述数据流中的数据帧还包括被配置成用于:基于所述特殊位置信息来解析数据帧中的特定信息。
11、在上述的数据接收装置中,所述处理单元被配置成用于执行初始化操作还包括被配置成用于:根据所述帧大小来申请缓存。
12、在上述的数据接收装置中,所述处理单元被配置成用于执行初始化操作还包括被配置成用于:创建附加接收线程来接收和解析所述数据流。
13、在上述的数据接收装置中,所述处理单元还被配置成用于:针对所述附加接收线程创建回调函数,以用于调用经解析的数据帧。
14、根据本专利技术第三方面,提供了一种数据传输系统,所述系统包括:如上述的数据发送装置中任一项所述的数据发送装置;以及如上述的数据接收装置中任一项所述的数据接收装置。
15、根据本专利技术第四方面,提供了一种由数据发送装置执行的数据传输方法,所述方法包括:执行初始化操作以确定数据发送装置的互联网协议(ip)地址和端口号;通过无连接通信方式向数据接收装置发送数据信息,所述数据信息包括所述数据发送装置的ip地址和端口号、以及待发送的数据帧的帧大小;接收来自所述数据接收装置的连接请求,以建立与所述数据接收装置的使用传输控制协议(tcp)的连接;通过所述无连接通信方式接收来自所述数据接收装置的确认响应;以及响应于接收到所述确认响应以及连接建立完成,通过所述tcp向所述数据接收装置发送数据流,所述数据流中的数据帧能够基于所述帧大小来解析。
16、根据本专利技术第五方面,提供了一种由数据接收装置执行的数据传输方法,所述方法包括:通过无连接通信方式接收来自数据发送装置的数据信息,所述数据信息包括所述数据发送装置的互联网协议(ip)地址和端口号、以及待发送的数据帧的帧大小;执行初始化操作,以解析所述数据信息,并记录所述数据信息中的所述数据发送装置的ip地址和端口号、以及待发送的数据帧的帧大小;基于所述数据信息中的所述数据发送装置的ip地址和端口号向所述数据发送装置发送连接请求,以建立与所述数据发送装置的使用传输控制协议(tcp)的连接;通过所述无连接通信方式向所述数据发送装置发送确认响应;通过所述tcp接收来自所述数据发送装置的数据流;以及基于所述帧大小来解析所述数据流中的数据帧。
17、根据本专利技术第六方面,提供了一种由数据传输系统执行的数据传输方法,包括:数据发送装置执行初始化操作以确定所述数据发送装置的互联网协议(ip)地址和端口号;所述数据发送装置通过无连接通信方式向数据接收装置发送数据信息,所述数据信息包括所述数据发送装置的ip地址和端口号、以及待发送的数据帧的帧大小;所述数据接收装置执行初始化操作,以解析所述数据信息,并记录所述数据信息中的所述数据发送装置的ip地本文档来自技高网...
【技术保护点】
1.一种数据发送装置,包括:
2.如权利要求1所述的数据发送装置,其中,所述无连接通信方式使用以下各项中的一者:用户数据报协议(UDP)、串口、串行外围接口(SPI)、内部集成电路(IIC)。
3.如权利要求1所述的数据发送装置,其中,所述数据信息还包括待发送的数据帧的帧头信息和帧尾信息。
4.如权利要求1所述的数据发送装置,其中,所述数据信息还包括待发送的数据帧的特殊位置信息,所述特殊位置信息用于指示特定信息在数据帧中的位置。
5.一种数据接收装置,包括:
6.如权利要求5所述的数据接收装置,其中,所述无连接通信方式使用以下各项中的一者:用户数据报协议(UDP)、串口、串行外围接口(SPI)、内部集成电路(IIC)。
7.如权利要求5所述的数据接收装置,其中,所述处理单元被配置成用于基于所述帧大小来解析所述数据流中的数据帧包括被配置成用于:
8.如权利要求5所述的数据接收装置,其中,所述数据信息还包括待发送的数据帧的帧头信息和帧尾信息,并且所述处理单元被配置成用于基于所述帧大小来解析所述数据流中
9.如权利要求7或8所述的数据接收装置,其中,所述数据信息还包括待发送的数据帧的特殊位置信息,所述特殊位置信息用于指示特定信息在数据帧中的位置,并且所述处理单元被配置成用于基于所述帧大小来解析所述数据流中的数据帧还包括被配置成用于:
10.如权利要求5所述的数据接收装置,其中,所述处理单元被配置成用于执行初始化操作还包括被配置成用于:
11.如权利要求5所述的数据接收装置,其中,所述处理单元被配置成用于执行初始化操作还包括被配置成用于:
12.如权利要求11所述的数据接收装置,其中,所述处理单元还被配置成用于:
13.一种数据传输系统,所述系统包括:
14.一种由数据发送装置执行的数据传输方法,所述方法包括:
15.一种由数据接收装置执行的数据传输方法,所述方法包括:
16.一种由数据传输系统执行的数据传输方法,包括:
...【技术特征摘要】
1.一种数据发送装置,包括:
2.如权利要求1所述的数据发送装置,其中,所述无连接通信方式使用以下各项中的一者:用户数据报协议(udp)、串口、串行外围接口(spi)、内部集成电路(iic)。
3.如权利要求1所述的数据发送装置,其中,所述数据信息还包括待发送的数据帧的帧头信息和帧尾信息。
4.如权利要求1所述的数据发送装置,其中,所述数据信息还包括待发送的数据帧的特殊位置信息,所述特殊位置信息用于指示特定信息在数据帧中的位置。
5.一种数据接收装置,包括:
6.如权利要求5所述的数据接收装置,其中,所述无连接通信方式使用以下各项中的一者:用户数据报协议(udp)、串口、串行外围接口(spi)、内部集成电路(iic)。
7.如权利要求5所述的数据接收装置,其中,所述处理单元被配置成用于基于所述帧大小来解析所述数据流中的数据帧包括被配置成用于:
8.如权利要求5所述的数据接收装置,其中,所述数据信息还包括待发送的数据帧的帧头信息和...
【专利技术属性】
技术研发人员:孙照焱,童晓蕾,汪海山,王猛,
申请(专利权)人:北京霍里思特科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。