数据发送方法、接收方法以及数据发送端、接收端的制作方法

文档序号:9754314阅读:557来源:国知局
数据发送方法、接收方法以及数据发送端、接收端的制作方法
【技术领域】
[0001] 本发明涉及网络数据传输领域,特别是涉及一种数据发送方法、接收方法以及数 据发送端、接收端。
【背景技术】
[0002] 自从物联网问世以来,如何使得物能够联网有了很多的方式,其中smartconfig (一键配置)方式通过将路由器ssid(Service Set Identifier,服务集标识)+pwd (password,密码)编码到组播IP地址进行发送,利用组播IP地址到MAC (Media Access Control,媒体访问控制)的对等映射,接收方通过抓取信道上的报文MAC提取出ssid+pwd, 然后连接到拥有该ssid标识的路由器。
[0003] 但是,smart conf i g有易被干扰和弱网环境下丢包问题,虽然针对丢包问题可以通 过多遍发送与多遍抓取来改善,但仍具有较大的不确定性,例如在丢包率为5 % (即1/20)的 环境下,发送一个长度为20字节的ssid+pwd串,则每次发送都有丢1包的概率,如果在抓取 第二遍时用户停止了发包,或者两次相邻发送丢失了同一处的包,这种情况下接收方无法 通过多遍抓取来完成合成。

【发明内容】

[0004] 本发明要解决的技术问题是提供一种数据发送方法、接收方法以及数据发送端、 接收端,用以解决现有技术弱网环境下丢包的问题。
[0005] 为解决上述技术问题,一方面,本发明提供一种数据发送方法,所述方法包括以下 步骤:
[0006] 利用纠删码对原始数据进行编码,得到结果矩阵;
[0007] 发送所述结果矩阵的数据。
[0008] 进一步,所述利用纠删码对原始数据进行编码得到结果矩阵的过程包括:
[0009] 根据所述原始数据的长度和预先设置的冗余数据长度,获取编码矩阵A;
[0010] 将所述编码矩阵A与原始数据矩阵D相乘,得到编码后的结果矩阵E。
[0011] 进一步,所述编码矩阵A为单位矩阵与范德蒙矩阵的组合。
[0012] 进一步,所述编码矩阵A为
[0013]
[0014] 其中η为原始数据的长度,η为正整数;m为预先设置的冗余数据长度,m为正整数; 所述原始数据矩阵D为
[0015]
[0016] 其中山~丄为原始数据;所述结果矩阵E为
[0017]
[0018]其中dl~dn为原始数据,C1~Cm为校验数据。
[0019] 进一步,所述发送结果矩阵的数据的过程包括:
[0020] 发送前导报文;
[0021] 发送长度报文,所述长度报文包括原始数据的长度η和预先设置的冗余数据长度 m;
[0022] 将所述结果矩阵E中的原始数据和校验数据进行编号,每个数据及对应编号生成 一个数据报文,共生成m+n个数据报文;
[0023]发送所有数据报文。
[0024]另一方面,本发明还提供一种数据接收方法,所述方法包括以下步骤:
[0025]接收结果矩阵的数据;
[0026] 对所述结果矩阵的数据进行解码,得到原始数据。
[0027] 进一步,所述接收结果矩阵的数据的过程包括:
[0028]接收前导报文;
[0029]接收长度报文,并获取原始数据的长度η和冗余数据长度m;其中,n、m均为正整数; [0030]接收η个数据报文。
[0031]进一步,所述对结果矩阵的数据进行解码得到原始数据的过程包括:
[0032]根据m和η获取编码矩阵A;
[0033]根据所述η个数据报文中的编号,去除所述编码矩阵A中不存在的行,得到解码矩 阵A2;
[0034]根据所述η个数据报文中的原始数据和/或校验数据,得到中间矩阵E2;
[0035] 将所述解码矩阵Α2的逆矩阵与所述中间矩阵Ε2相乘,得到原始数据矩阵D。
[0036] 进一步,所述编码矩阵Α为单位矩阵与范德蒙矩阵的组合。
[0037]进一步,所述编码矩阵A为
[0038]
[0039] 其中η为原始数据的长度,m为冗余数据长度;所述原始数据矩阵D为
[0040]
[0041 ]其中di~dn为原始数据。
[0042]另一方面,本发明还提供一种数据发送端,所述数据发送端包括:
[0043] 编码单元,用于利用纠删码对原始数据进行编码,得到结果矩阵;
[0044] 发送单元,用于发送所述结果矩阵的数据。
[0045] 进一步,所述编码单元包括:
[0046] 编码矩阵获取子单元,用于根据所述原始数据的长度和预先设置的冗余数据长 度,获取编码矩阵A;
[0047] 结果矩阵获取子单元,用于将所述编码矩阵A与原始数据矩阵D相乘,得到编码后 的结果矩阵E。
[0048] 进一步,所述编码矩阵A为
[0049]
1234 其中η为原始数据的长度,η为正整数;m为预先设置的冗余数据长度,m为正整数; 2 所述原始数据矩阵D为 3
[0051]
4
[0052]其中山~丄为原始数据;所述结果矩阵E为
[0053]
[0054] 其中dl~dn为原始数据,Cl~Cm为校验数据。
[0055] 另一方面,本发明还提供一种数据接收端,所述数据接收端包括:
[0056] 接收单元,用于接收结果矩阵的数据;
[0057] 解码单元,用于对所述结果矩阵的数据进行解码,得到原始数据。
[0058]进一步,所述接收单元包括:
[0059]报文接收子单元,用于接收前导报文、长度报文和η个数据报文;其中,η为正整数; [0060]长度获取子单元,用于从所述长度报文中获取原始数据的长度η和冗余数据长度 m;其中,m为正整数。
[0061] 进一步,所述解码单元包括:
[0062] 编码矩阵获取子单元,用于根据m和η获取编码矩阵A;
[0063] 解码矩阵获取子单元,用于根据所述η个数据报文中的编号,去除所述编码矩阵A 中不存在的行,得到解码矩阵A2;
[0064]中间矩阵获取子单元,用于根据所述η个数据报文中的原始数据和/或校验数据, 得到中间矩阵Ε2;
[0065]原始数据矩阵获取子单元,用于将所述解码矩阵Α2的逆矩阵与所述中间矩阵Ε2相 乘,得到原始数据矩阵D。
[0066] 进一步,所述编码矩阵Α为
[0067]
其中η为原始数据的长度,m为冗余数据长度;所述原始数据矩阵D为
[0069]
[0070]其中di~dn为原始数据。
[0071]本发明有益效果如下:
[0072] 本发明将纠删码同smartconfig配置入网技术融合,不依赖数据的完整到达,即使 在高丢包率的环境下仍然能从剩余包中提取出完整数据,因而能增加smartconfig在弱网 环境下配置入网的一次配置成功率,使家电接收方不必进行丢包重取,进而减少配置入网 等待时间和等待次数。本发明提高了数据丢失后的自我恢复能力,实现了数据传输的一次 到达。
【附图说明】
[0073] 图1是本发明实施例中一种数据发送方法的流程图;
[0074] 图2是本发明实施例中一种数据接收方法的流程图。
【具体实施方式】
[0075] 为了解决现有技术弱网环境下丢包的问题,本发明提供了一种数据发送方法、接 收方法以及数据发送端、接收端,以下结合附图以及四个实施例,对本发明进行进一步详细 说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不限定本发明。
[0076] 实施例一
[0077] 本发明实施例的一种数据发送方法的流程如图1所示,首先利用纠删码对原始数 据进行编码,得到结果矩阵;然后发送所述结果矩阵的数据,即利用smartconfig技术原理 将结果矩阵E组成组播包发送。具体过程包括:
[0078] 步骤slOl,根据原始数据的长度和预先设置的冗余数据长度,获取编码矩阵A。本 实施例中,所述编码矩阵A为单位矩阵与范德蒙矩阵的组合,具体为
[0079]
[0080]其中,η为原始数据的长度(ssid+pwd长度),n为正整数;m为预先设置的冗余数据 长度(比如m取5,考虑到丢包率m不用很大),m为正整数。
[0081] 步骤sl02,将所述编码矩阵A与原始数据矩阵D相乘,得到编码后的结果矩阵E。本 实施例中,根据公式
[0082]
[0083] 计算结果矩阵E。其中,
[0084]
原始数据矩阵D,di~dn为原始数据 b结果矩阵E,di~dn为原始数据, C1~Cm为校验数据。
[0085]步骤sl03,发送前导报文。本实施例中,发送5个239.118.0.0组播包作为前导标 识。
[0086] 步骤sl04,发送长度报文,所述长度报文包括原始数据的长度η和预先设置的冗余 数据长度m。本实施例中,发送239.126.m.n,m+n即为编码后报文总个数。
[0087] 步骤sl05,生成数据报文。本实施例将所述结果矩阵E中的原始数据和校验数据进 行编号,每个数据及对应编号生成一个数据报文,共生成m+n个数据报文。
[0088]步骤s 106,发送所有数据报文。本实施例中,发送239.126. i . d。其中i为编号,d为 数据,i的范围为1~(m+n),总共需要发送m+n个数据包,也就是将结果矩阵E中的数据全部 发送出去并带上编号。
[0089] 实施例二
[0090] 本发明实施例的一种数据接收方法的流程如图2所示,首先接收结果矩阵的数据; 然后对所述结果矩阵的数据进行解码,得到原始数据。其具体过程包括
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1