买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】基于LORAWAN的文件传输方法_成都博高信息技术股份有限公司_201711407588.2 

申请/专利权人:成都博高信息技术股份有限公司

申请日:2017-12-22

公开(公告)日:2020-11-24

公开(公告)号:CN108173920B

主分类号:H04L29/08(20060101)

分类号:H04L29/08(20060101);H04L1/18(20060101)

优先权:

专利状态码:有效-授权

法律状态:2020.11.24#授权;2018.07.13#实质审查的生效;2018.06.15#公开

摘要:本发明涉及通信技术领域,实施例具体公开一种基于LORAWAN的文件传输方法,通过网络服务器向LORAWAN网关发送文件上传请求包;LORAWAN网关收到文件上传请求包后,应答文件上传要求包至网络服务器;网络服务器收到文件上传要求包后,将待发送文件分割成符合LORAWAN网关文件上传要求的若干个数据包;网络服务器逐个发送数据包至LORAWAN网关,直至待发送文件发送完毕。实现了在LORAWAN网关与网络服务器进行数据文件传输时具有更好的可靠性,保证了数据的完整性和传输的高效性。

主权项:1.一种基于LORAWAN的文件传输方法,应用于网络服务器和LORAWAN网关,其特征在于,包括:S11:网络服务器向LORAWAN网关发送文件上传请求包;其中,文件上传请求包包括待发送文件的文件名、文件大小和文件分包大小;S12:LORAWAN网关收到所述文件上传请求包后,应答文件上传要求包至网络服务器;LORAWAN网关创建对应的文件用于存储从网络服务器收到的数据包;其中,文件上传要求包包括LORAWAN网关可接受文件的文件大小和文件分包大小;S13:网络服务器收到所述文件上传要求包后,将待发送文件分割成符合LORAWAN网关文件上传要求的若干个数据包;S14:网络服务器逐个发送数据包至LORAWAN网关,直至所述待发送文件发送完毕;其中,S14的方法包括:S141:网络服务器根据预设每批个数将若干个数据包划分为若干批数据包;S142:网络服务器逐批发送数据包至LORAWAN网关,直至所述待发送文件发送完毕;其中,所述S142的方法包括:S1421:网络服务器连续发送一批数据包至LORAWAN网关;S1422:网络服务器发送该批数据包丢包查询包至LORAWAN网关;S1423:LORAWAN网关检查是否丢失该批数据包中的数据包,若否,则进入步骤S1425,若是,则进入步骤S1424;S1424:LORAWAN网关应答丢失该批数据包中的数据包个数和数据包包号至网络服务器,网络服务器重发该批数据包中丢失的数据包至LORAWAN网关,进入步骤S1422;S1425:LORAWAN网关应答未丢失该批数据包中的数据包至网络服务器;网络服务器检查待发送文件是否发送完毕,若否,则进入步骤S1426;若是,则进入步骤S1427;S1426:网络服务器连续发送下一批数据包至LORAWAN网关,进入步骤1422;S1427:网络服务器发送包数为0的该批数据包丢包查询包至LORAWAN网关,LORAWAN网关应答未丢失该批数据包至网络服务器,则待发送文件发送完毕。

全文数据:基于LORAWAN的文件传输方法技术领域[0001]本发明涉及通信技术领域,具体涉及一种基于LORAWAN的文件传输方法。背景技术[0002]LoRa技术是由Semtech公司提供的超长距离、低功耗的物联网解决方案。L0RAWANL0RAWAN网关是L0RA网络的核心,是终端和网络服务器之间的桥梁,同时也是多信道的收发机。L0RAWANL0RAWAN网关与网络网络服务器之间通过标准IP进行连接,L0RAWANL0RAWAN网关与网络网络服务器之间更多采用的协议是基于UDP协议来实现,使用UDP协议能实现文件传输效率更高,但是UDP协议在传输文件的同时存在着可靠性差比如存在传输数据丢包,以及报文被篡改的问题,同时只能限于单个数据报文传输和数据重传机制较少的问题。发明内容[0003]有鉴于此,针对现有技术中使用UDP协议传输文件存在的上述问题,本申请提供一种更可靠的基于LORAWAN的文件传输方法。[0004]为解决以上技术问题,本发明提供的技术方案是一种基于LORAWAN的文件传输方法,应用于网络服务器和LORAWAN网关,包括:[0005]S11:网络服务器向LORAWAN网关发送文件上传请求包;[0006]S12:L0RAWAN网关收到所述文件上传请求包后,应答文件上传要求包至网络服务器;LORAWAN网关创建对应的文件用于存储从网络服务器收到的数据包;[0007]S13:网络服务器收到所述文件上传要求包后,将待发送文件分割成符合LORAWAN网关文件上传要求的若干个数据包;[0008]S14:网络服务器逐个发送数据包至LORAWAN网关,直至所述待发送文件发送完毕。[0009]更优地,所述步骤S11中,文件上传请求包包括待发送文件的文件名、文件大小和文件分包大小。[0010]更优地,所述步骤S12中,文件上传要求包包括LORAWAN网关可接受文件的文件大小和文件分包大小。[0011]更优地,所述步骤S14中,网络服务器逐个发送数据包至LORAWAN网关,直至所述待发送文件发送完毕的方法,包括:[0012]S141:网络服务器根据预设每批个数将若干个数据包划分为若千批数据包;[0013]S142:网络服务器逐批发送数据包至LORAWAN网关,直至所述待发送文件发送完毕。[0014]更优地,所述步骤S142中,网络服务器逐批发送数据包至LORAWAN网关,直至所述待发送文件发送完毕的方法,包括:[0015]S1421:网络服务器连续发送一批数据包至LORAWAN网关;[0016]S1422:网络服务器发送该批数据包丢包查询包至LORAWAN网关;[0017]S1423:LORAWAN网关检查是否丢失该批数据包中的数据包,若否,则进入步骤S1425,若是,则进入步骤S1424;[0018]S1424:LORAWAN网关应答丢失该批数据包中的数据包个数和数据包包号至网络服务器,网络服务器重发该批数据包中丢失的数据包至L0RAWAN网关,进入步骤S1422;[0019]S1425:L0RAWAN网关应答未丢失该批数据包中的数据包至网络服务器;网络服务器检查待发送文件是否发送完毕,若否,则进入步骤S1426;若是,则进入步骤S1427;[0020]S1426:网络服务器连续发送下一批数据包至LORAWAN网关,进入步骤1422;[0021]S1427:网络服务器发送包数为0的该批数据包丢包查询包至LORAWAN网关,LORAWAN网关应答未丢失该批数据包至网络服务器,则待发送文件发送完毕。[0022]本发明还提供一种基于LORAWAN的文件传输方法,应用于网络服务器和LORAWAN网关,包括:[0023]S21:网络服务器向LORAWAN网关发送文件下载请求包;[0024]S22:L0RAWAN网关收到所述文件下载请求包后,应答文件下载确认包至网络服务器;LORAWAN网关将待下载文件分割成若干个数据包;[0025]S23:网络服务器收到所述文件下载确认包后,网络服务器创建对应的文件用于存储从LORAWAN网关收到的数据包;[0026]S24:L0RAMN网关逐个发送数据包至网络服务器,直至所述待下载文件发送完毕。[0027]更优地,所述步骤S21中,文件下载请求包包括待下载文件的文件名。[0028]更优地,所述步骤S22中,文件下载确认包包括待下载文件的文件名、文件大小和文件分包大小。[0029]更优地,所述步骤S24中,LORAWAN网关逐个发送数据包至网络服务器,直至所述待下载文件发送完毕的方法,包括:[0030]S241:LORAWAN网关根据预设每批个数将若干个数据包划分为若干批数据包;[0031]S242:LORAWAN网关逐批发送数据包至网络服务器,直至所述待下载文件发送完毕。[0032]更优地,所述步骤S242中,LORAWAN网关逐批发送数据包至网络服务器,直至所述待下载文件发送完毕的方法,包括:[0033]S2421:LORAWAN网关连续发送一批数据包至网络服务器;[0034]S2422:LORAWAN网关发送该批数据包丢包查询包至网络服务器;[0035]S2423:网络服务器检查是否丢失该批数据包中的数据包,若否,则进入步骤S2425,若是,则进入步骤S2424;[0036]S2424:网络服务器应答丢失该批数据包中的数据包个数和数据包包号至LORAWAN网关,LORAWAN网关重发该批数据包中丢失的数据包至网络服务器,进入步骤S2422;[0037]S2425:网络服务器应答未丢失该批数据包中的数据包至LORAWAN网关,LORAWAN网关检查待下载文件是否发送完毕,若否,则进入步骤S2426;若是,则进入步骤SM27;[0038]S2426:LORAWAN网关连续发送下一批数据包至网络服务器,进入步骤S2422;[0039]S2427:LORAWAN网关发送包数为0的该批数据包丢包查询包至LORAWAN网关,网络服务器应答未丢失该批数据包中的数据包至LORAWAN网关,待下载文件发送完毕。[0040]本申请与现有技术相比,其有益效果详细说明如下:实现了在LORAWAN网关与网络服务器的数据文件传输时具有更好的可靠性以及数据传输时的具有更好的数据完整性和传输高效性。附图说明[0041]图1为本发明实施例基于L0RAWAN的文件传输方法流程示意图;[0042]图2为本发明实施例网络服务器逐个发送数据包至L0RAWAN网关的方法流程示意图;[0043]图3为本发明实施例网络服务器逐批发送数据包至L0RAWAN网关的方法流程示意图;[0044]图4为本发明另一实施例基于L0RAWAN的文件传输方法流程示意图;[0045]图5为本发明另一实施例L0RAWAN网关逐个发送数据包至网络服务器的方法流程示意图;[0046]图6为本发明另一实施例L0RAWAN网关逐批发送数据包至网络服务器的方法流程示意图。具体实施方式[0047]为了使本领域的技术人员更好地理解本发明的技术方案,下面结合附图和具体实施例对本发明作进一步的详细说明。[0048]如图1所示,本发明实施例提供一种基于L0RAWAN的文件传输方法,应用于网络服务器和L0RAWAN网关,应用于网络服务器向L0RAWAN网关上传文件,包括:[0049]S11:网络服务器向L0RAWAN网关发送文件上传请求包;[0050]S12:L0RAWAN网关收到文件上传请求包后,应答文件上传要求包至网络服务器;L0RAWAN网关创建对应的文件用于存储从网络服务器收到的数据包;[0051]S13:网络服务器收到文件上传要求包后,将待发送文件分割成符合L0RAWAN网关文件上传要求的若干个数据包;[0052]S14:网络服务器逐个发送数据包至L0RAWAN网关,直至待发送文件发送完毕。[0053]具体的,步骤SI1中,文件上传请求包包括待发送文件的文件名、文件大小和文件分包大小。[0054]具体的,步骤S12中,文件上传要求包包括L0RAWAN网关可接受文件的文件大小和文件分包大小。[0055]如图2所示,步骤S14中,网络服务器逐个发送数据包至L0RAWAN网关,直至待发送文件发送完毕的方法,包括:[0056]S141:网络服务器根据预设每批个数将若干个数据包划分为若干批数据包;[0057]S142:网络服务器逐批发送数据包至L0RAWAN网关,直至待发送文件发送完毕。[0058]如图3所示,步骤S142中,网络服务器逐批发送数据包至L0RAWAN网关,直至待发送文件发送完毕的方法,包括:[0059]S14M:网络服务器连续发送一批数据包至L0RAWAN网关;[0060]S1422:网络服务器发送该批数据包丢包查询包至L0RAWAN网关;[0061]S1423:L0RAWAN网关检查是否丢失该批数据包中的数据包,若否,则进入步骤S1425,若是,则进入步骤S1424;[0062]S1424:L0RAWAN网关应答丢失该批数据包中的数据包个数和数据包包号至网络服务器,网络服务器重发该批数据包中丢失的数据包至LORAWAN网关,进入步骤S1422;[0063]S1425:LORAWAN网关应答未丢失该批数据包中的数据包至网络服务器;网络服务器检查待发送文件是否发送完毕,若否,则进入步骤S1426;若是,则进入步骤S1427;[0064]S1426:网络服务器连续发送下一批数据包至LORAWAN网关,进入步骤1422;[0065]S1427:网络服务器发送包数为0的该批数据包丢包查询包至LORAWAN网关,LORAWAN网关应答未丢失该批数据包至网络服务器,则待发送文件发送完毕。[0066]例如,当网络服务器向LORAWAN网关上传文件时,定义代码为:cmd=命令关键字,dir=传输方向,fl=filelength文件长度,ps=packetsize分包大小,pn=packetnumber包号,pc=packetcount包数,pl=packetnumberlist包号表。[0067]TRANS—FILEcmd=0,dir=0,f1=12345,ps=1024,name=test•txt,网络服务器发送文件传输请求,文件名为test•txt,文件长度12345字节,文件分包大小1024字节。[0068]TRANS_FILE_ACKcmd二0x80,fl=12345,ps=1024,LORAWAN网关应答可接受的文件大小和分包大小。[0069]TRANS_FILEcmd=l,pn=0,data...,[0070]TRANS_FILEcmd=l,pn=l,data.",[0071]TRANS_FILEcmd=l,pn=2,data.",[0072]TRANS_FILEcmd=1,pn=3,data…),网络服务器发送文件数据,按照预设数量连续发送4个数据包。[0073]TRANS_FILEcmd=2,pc=4,pl=0,l,2,3,网络服务器查询是否有掉包。[0074]TRANS_FILE_ACKcmd=0x83,pc=1,pi=2,LORAWAN网关应答未收到的包数和包号。[0075]丁1^吧_?11^〇111=1,?11=2,〇^〜),网络服务器重发丢失的包。[0076]TRANS_FILEcmd=2,pc=l,pl=2,网络服务器重新查询是否有掉包。[0077]TRANS_FILE—ACKcmd=0x83,pc=0,L0RAWAN网关应答,没有掉包。[0078]TRANS_FILEcmd=2,pc=0网络服务器发送完成,通过发送包数为〇的查询包通知LORAWAN网关。[0079]TRANS_FILE_ACKcmd=0x83,pc=0LORAWAN网关应答收到。[0080]如图4所示,本发明另一种实施例提供一种基于LORAWAN的文件传输方法,应用于网络服务器和LORAWAN网关,应用于网络服务器从LORAWAN网关下载文件,包括:[0081]S21:网络服务器向LORAWAN网关发送文件下载请求包;[0082]S22:LORAWAN网关收到文件下载请求包后,应答文件下载确认包至网络服务器;LORAWAN网关将待下载文件分割成若干个数据包;[0083]S23:网络服务器收到文件下载确认包后,网络服务器创建对应的文件用于存储从LORAWAN网关收到的数据包;[0084]S24:L0RAWAN网关逐个发送数据包至网络服务器,直至所述待下载文件发送完毕。[0085]具体的,步骤S21中,文件下载请求包包括待下载文件的文件名。[0086]具体的,步骤S22中,文件下载确认包包括待下载文件的文件名、文件大小和文件分包大小。[0087]如图5所示,步骤S24中,L0RAWAN网关逐个发送数据包至网络服务器,直至待下载文件发送完毕的方法,包括:[0088]S241:L0RAWAN网关根据预设每批个数将若干个数据包划分为若干批数据包;[0089]S242:L0RAWAN网关逐批发送数据包至网络服务器,直至待下载文件发送完毕。[0090]如图6所示,步骤S242中,L0RAWAN网关逐批发送数据包至网络服务器,直至待下载文件发送完毕的方法,包括:[0091]S2421:L0RAWAN网关连续发送一批数据包至网络服务器;[0092]S2422:L0RAWAN网关发送该批数据包丢包查询包至网络服务器;[0093]S2423:网络服务器检查是否丢失该批数据包中的数据包,若否,则进入步骤S2425,若是,则进入步骤S2424;[0094]S2424:网络服务器应答丢失该批数据包中的数据包个数和数据包包号至L0RAWAN网关,L0RAWAN网关重发该批数据包中丢失的数据包至网络服务器,进入步骤S2422;[0095]S2425:网络服务器应答未丢失该批数据包中的数据包至L0RAWAN网关,L0RAWAN网关检查待下载文件是否发送完毕,若否,则进入步骤S2426;若是,则进入步骤S2427;[0096]S2426:L0RAWAN网关连续发送下一批数据包至网络服务器,进入步骤S2422;[0097]S2427:L0RAWAN网关发送包数为0的该批数据包丢包查询包至L0RAWAN网关,网络服务器应答未丢失该批数据包中的数据包至L0RAWAN网关,待下载文件发送完毕。[0098]网络服务器和L0RANWAN网关设置的文件传输协议文件传输方法),基于UDPUserDatagramProtocol的简称,中文名是用户数据报协议),包含文件请求包、数据包、和丢包查询。文件传输是双向的,网络服务器可上传文件到L0RAWAN网关,也可下载L0RAWAN网关中存在的文件。传输过程为,网络服务器发送文件请求包到L0RAWAN网关,请求包中包含文件名,文件大小,分包大小等信息,L0RAWAN网关收到后应答网络服务器,与网络服务器协商L0RAMN网关可接受的文件大小和分包大小。之后网络服务器便可批量发送数据包,再通过丢包查询包查询是否有丢包,有丢包则重传丢包,重复此过程直到文件发送完成。如果是上传文件,则L0RAWAN网关创建相应的文件,收到数据后进行存储。如果是下载文件,则由网络服务器发送文件请求,L0RAWAN网关进行数据包发送和丢包查询。该文件传输方法具有更好的可靠性,同时数据传输时实现了数据的完整性和传输的高效性。[00"]以上仅是本发明的优选实施方式,应当指出的是,上述优选实施方式不应视为对本发明的限制,本发明的保护范围应当以权利要求所限定的范围为准。对于本技术领域的普通技术人员来说,在不脱离本发明的精神和范围内,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

权利要求:1.一种基于LORAWAN的文件传输方法,应用于网络服务器网关,其特征在于,包括:S11:网络服务器向L0RAWAN网关发送文件上传请求包;S12:L0RAWAN网关收到所述文件上传请求包后,应答文件上传要求包至网络服务器;L0RAMN网关创建对应的文件用于存储从网络服务器收到的数据包;’S13:网络服务器收到所述文件上传要求包后,将待发送文件分割成符合L0RAWAN网关文件上传要求的若干个数据包;S14:网络服务器逐个发送数据包至L0RAWAN网关,直至所述待发送文件发送完毕。2.根据权利要求1所述的基于L0RAWAN的文件传输方法,其特征在于,所述步骤S1丨中,文件上传请求包包括待发送文件的文件名、文件大小和文件分包大小。3.根据权利要求1所述的基于L0RAWAN的文件传输方法,其特征在于,所述步骤S12中,文件上传要求包包括L0RAWAN网关可接受文件的文件大小和文件分包大小。4.根据权利要求1所述的基于L0RAWAN的文件传输方法,其特征在于,所述步骤S14中,网络服务器逐个发送数据包至L0RAWAN网关,直至所述待发送文件发送完毕的方法,包括:S141:网络服务器根据预设每批个数将若干个数据包划分为若干批数据包;S142:网络服务器逐批发送数据包至L0RAWAN网关,直至所述待发送文件发送完毕。5.根据权利要求4所述的基于L0RAWAN的文件传输方法,其特征在于,所述步骤S142中,网络服务器逐批发送数据包至L0RAWAN网关,直至所述待发送文件发送完毕的方法,包括:S1421:网络服务器连续发送一批数据包至L0RAWAN网关;S1422:网络服务器发送该批数据包丢包查询包至L0RAWAN网关;S1423:L0RAWAN网关检查是否丢失该批数据包中的数据包,若否,则进入步骤S1425,若是,则进入步骤S1424;S1424:L0RAWAN网关应答丢失该批数据包中的数据包个数和数据包包号至网络服务器,网络服务器重发该批数据包中丢失的数据包至L0RAWAN网关,进入步骤S1422;S1425:L0RAWAN网关应答未丢失该批数据包中的数据包至网络服务器;网络服务器检查待发送文件是否发送完毕,若否,则进入步骤S1426;若是,则进入步骤S1427;S1426:网络服务器连续发送下一批数据包至L0RAWAN网关,进入步骤1422;S1427:网络服务器发送包数为0的该批数据包丢包查询包至L0RAWAN网关,L0RAWAN网关应答未丢失该批数据包至网络服务器,则待发送文件发送完毕。6.—种基于L0RAWAN的文件传输方法,应用于网络服务器和L0RAWAN网关,其特征在于,包括:S21:网络服务器向LORAffAN网关发送文件下载请求包;S22:L0RAWAN网关收到所述文件下载请求包后,应答文件下载确认包至网络服务器;L0RAWAN网关将待下载文件分割成若干个数据包;S23:网络服务器收到所述文件下载确认包后,网络服务器创建对应的文件用于存储从L0RAWAN网关收到的数据包;S24:L0RAWAN网关逐个发送数据包至网络服务器,直至所述待下载文件发送完毕。7.根据权利要求6所述的基于LORAffAN的文件传输方法,其特征在于,所述步骤S21中,文件下载请求包包括待下载文件的文件名。8.根据权利要求6所述的基于LORAWAN的文件传输方法,其特征在于,所述步骤S22中,文件下载确认包包括待下载文件的文件名、文件大小和文件分包大小。9.根据权利要求6所述的基于LORAWAN的文件传输方法,其特征在于,所述步骤S24中,LORAWAN网关逐个发送数据包至网络服务器,直至所述待下载文件发送完毕的方法,包括:S241:L0RAMN网关根据预设每批个数将若干个数据包划分为若千批数据包;SM2:LORAWAN网关逐批发送数据包至网络服务器,直至所述待下载文件发送完毕。10.根据权利要求9所述的基于UDP的文件传输方法,其特征在于,所述步骤S242中,LORAWAN网关逐批发送数据包至网络服务器,直至所述待下载文件发送完毕的方法,包括:S2421:LORAWAN网关连续发送一批数据包至网络服务器;S2422:LORAWAN网关发送该批数据包丢包查询包至网络服务器;S2423:网络服务器检查是否丢失该批数据包中的数据包,若否,则进入步骤S2425,若是,则进入步骤S2424;S2424:网络服务器应答丢失该批数据包中的数据包个数和数据包包号至LORAWAN网关,LORAWAN网关重发该批数据包中丢失的数据包至网络服务器,进入步骤S2422;S2425:网络服务器应答未丢失该批数据包中的数据包至LORAWAN网关,LORAWAN网关检查待下载文件是否发送完毕,若否,则进入步骤S2426;若是,则进入步骤S2427;S2426:LORAWAN网关连续发送下一批数据包至网络服务器,进入步骤S2422;S2427:L0RAWAN网关发送包数为〇的该批数据包丢包查询包至L0RAWAN网关,网络服务器应答未丢失该批数据包中的数据包至LORAWAN网关,待下载文件发送完毕。

百度查询: 成都博高信息技术股份有限公司 基于LORAWAN的文件传输方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。