CN114900488A - 一种数据传输方法、计算机可读存储介质及装置 - Google Patents
一种数据传输方法、计算机可读存储介质及装置 Download PDFInfo
- Publication number
- CN114900488A CN114900488A CN202210216685.8A CN202210216685A CN114900488A CN 114900488 A CN114900488 A CN 114900488A CN 202210216685 A CN202210216685 A CN 202210216685A CN 114900488 A CN114900488 A CN 114900488A
- Authority
- CN
- China
- Prior art keywords
- data packet
- sent
- data
- gateway
- node
- 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.)
- Pending
Links
- 230000005540 biological transmission Effects 0.000 title claims abstract description 63
- 238000000034 method Methods 0.000 title claims abstract description 61
- 239000012634 fragment Substances 0.000 claims abstract description 63
- 238000004590 computer program Methods 0.000 claims description 16
- 238000012790 confirmation Methods 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 10
- 238000013467 fragmentation Methods 0.000 description 6
- 238000006062 fragmentation reaction Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000011143 downstream manufacturing Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
- H04L49/9057—Arrangements for supporting packet reassembly or resequencing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/66—Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/36—Flow control; Congestion control by determining packet size, e.g. maximum transfer unit [MTU]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Communication Control (AREA)
Abstract
本申请公开了一种数据传输方法、计算机可读存储介质及装置,该方法应用于节点,该方法包括:获取第一待发送数据包;在第一待发送数据包的数据量大于预设数据量时,将第一待发送数据包拆分为至少两个第一分片数据包;将所有第一分片数据包连续发送至网关;其中,网关在接收到最后一个第一分片数据包后,发送第一块确认帧至节点,第一块确认帧用于表示每个第一分片数据包是否接收到。通过上述方式,本申请能够提升数据发送效率以及带宽。
Description
技术领域
本申请涉及通信技术领域,具体涉及一种数据传输方法、计算机可读存储介质及装置。
背景技术
远距离无线电(Long Range Radio,LoRa)是物联网(Internet of Things,IOT)领域低功率广域网络(Low-Power Wide-Area Network,LPWAN)通信技术中的一种,其为用户提供一种简单的、能实现远距离传输、长电池寿命、大容量的系统;远距离无线电广域网(LoRa Wide Area Network,LoRaWAN)是为LoRa远距离通信网络设计的一套通讯协议和系统架构,现有的LoRaWAN方案中在class A模式下,只适用于传输少量数据,发送完一个数据包之后,至少需要等待接收延迟时间(RECEIVE_DELAY),才打开接收窗口来接收下行数据,导致实际的数据传输率非常低。
发明内容
本申请提供一种数据传输方法、计算机可读存储介质及装置,能够提升数据发送效率以及带宽。
为解决上述技术问题,本申请采用的技术方案是:提供一种数据传输方法,该方法应用于节点,该方法包括:获取第一待发送数据包;在第一待发送数据包的数据量大于预设数据量时,将第一待发送数据包拆分为至少两个第一分片数据包;将所有第一分片数据包连续发送至网关;其中,网关在接收到最后一个第一分片数据包后,发送第一块确认帧至节点,第一块确认帧用于表示每个第一分片数据包是否接收到。
为解决上述技术问题,本申请采用的技术方案是:提供一种数据传输方法,该方法应用于数据传输系统中的网关,数据传输系统还包括节点,节点用于获取第一待发送数据包;在第一待发送数据包的数据量大于预设数据量时,将第一待发送数据包拆分为至少两个第一分片数据包;将所有第一分片数据包连续发送至网关,该方法包括:在接收到最后一个第一分片数据包后,发送第一块确认帧至节点,第一块确认帧用于表示每个第一分片数据包是否接收到。
为解决上述技术问题,本申请采用的另一技术方案是:提供一种节点,该节点包括互相连接的存储器和处理器,其中,存储器用于存储计算机程序,计算机程序在被处理器执行时,用于实现上述技术方案中的数据传输方法。
为解决上述技术问题,本申请采用的另一技术方案是:提供一种网关,该网关包括互相连接的存储器和处理器,其中,存储器用于存储计算机程序,计算机程序在被处理器执行时,用于实现上述技术方案中的数据传输方法。
为解决上述技术问题,本申请采用的另一技术方案是:提供一种数据传输系统,该数据传输系统包括互相连接的节点和网关,节点用于向网关发送数据包和/或接收网关发送的数据包,其中,节点为上述技术方案中的节点,网关为上述技术方案中的网关。
为解决上述技术问题,本申请采用的另一技术方案是:提供一种计算机可读存储介质,该计算机可读存储介质用于存储计算机程序,计算机程序在被处理器执行时,用于实现上述技术方案中的数据传输方法。
通过上述方案,本申请的有益效果是:本申请提供的方案中节点为了将获取到的第一待发送数据包发送给网关,先判断第一待发送数据包的数据量是否大于预设数据量;若第一待发送数据包的数据量大于预设数据量,则对第一待发送数据包进行拆分处理,得到至少两个第一分片数据包;然后节点将所有第一分片数据包连续发送至网关;网关在接收到最后一个第一分片数据包后,发送第一块确认帧至节点,以向节点反馈每个第一分片数据包是否接收到;本申请通过采用将大数据包拆分为分片数据包且连续传输的方式,解决了IOT领域数据发送效率较低的问题,可以大大提高实际有效的传输速率;而且,相比现有方案,在单位时间内传输的数据更多,能够大幅度提高链路实际带宽。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。其中:
图1是本申请提供的数据传输方法一实施例的流程示意图;
图2是本申请提供的大数据包与小数据包的发送示意图;
图3是本申请提供的重传第一分片数据包的示意图;
图4是本申请提供的数据传输方法另一实施例的流程示意图;
图5是本申请提供的数据传输方法又一实施例的流程示意图;
图6是本申请提供的节点一实施例的结构示意图;
图7是本申请提供的网关一实施例的结构示意图;
图8是本申请提供的数据传输系统一实施例的结构示意图;
图9是本申请提供的计算机可读存储介质一实施例的结构示意图。
具体实施方式
下面结合附图和实施例,对本申请作进一步的详细描述。特别指出的是,以下实施例仅用于说明本申请,但不对本申请的范围进行限定。同样的,以下实施例仅为本申请的部分实施例而非全部实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
在本申请中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
需要说明的是,本申请中的术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”、“第三”的特征可以明示或者隐含地包括至少一个该特征。本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
请参阅图1,图1是本申请提供的数据传输方法一实施例的流程示意图,该方法应用于节点,该方法包括:
S11:获取第一待发送数据包。
节点可接收其他设备发送的数据包,将其作为第一待发送数据包;或者,节点将自身生成的数据包作为第一待发送数据包;或者,节点将从数据库中获取到的数据包作为第一待发送数据包,第一待发送数据包可以包括文字、数字或图像等信息。进一步地,本方案适用于多种调制方案,比如:采用LoRa或频移键控(Frequency shift keying,FSK)等调制方案。
S12:在第一待发送数据包的数据量大于预设数据量时,将第一待发送数据包拆分为至少两个第一分片数据包。
节点可采用不同的传输策略来传输第一待发送数据包,比如:先判断第一待发送数据包的数据量是否大于预设数据量,如果第一待发送数据包的数据量大于预设数据量,则表明节点发送的上行数据(即第一待发送数据)为大数据包,此时需要对第一待发送数据包进行拆分处理,生成至少两个第一分片数据包。
在一具体的实施例中,预设数据量为最大传输单元(Maximum TransmissionUnit,MTU),即大数据包为数据包的数据量大于MTU的数据包;第一分片数据包的划分方式为:计算第一待发送数据包的数据量与预设数据量的比值;对比值进行向上取整,得到第一分片数据包的总数量,第一分片数据包的数据量小于或等于预设数据量。例如,MTU为100字节,第一待发送数据包的数据量为350字节,则将第一待发送数据包分为4个数据包,前三个数据包的数据量是100字节,最后一个数据包的数据量是50字节。
S13:将所有第一分片数据包连续发送至网关。
在完成分片后,节点向网关连续发送第一分片数据包,直到所有的第一分片数据包发送完成为止,如图2所示,其中,“TX”表示发送,“RX”表示接收。
进一步地,网关在接收到最后一个第一分片数据包后,发送第一块确认帧至节点,第一块确认帧用于表示每个第一分片数据包是否接收到。具体地,最后一个第一分片数据包携带传输结束标识,该传输结束标识用来表示此次传输结束;第一块确认帧包括每个第一分片数据包的编号以及相应的块确认字段,当块确认字段为“1”时,表示网关接收到相应的第一分片数据包,当块确认字段为“0”时,表示网关未接收到相应的第一分片数据包。可以理解地,节点在接收到网关发送的第一块确认帧之后,可以重传丢失的第一分片数据包,直到网关接收到所有的第一分片数据包。
例如,如图3所示,假设节点发送的第一分片数据包的总数为8个,记作No.1~No.8;网关接收到的第一分片数据包为No.1~No.4、No.6以及No.8,第一分片数据包No.5与No.7未传输至网关,因此网关回复给节点的第一块确认帧为“11110101”,第一分片数据包No.5、No.7对应的块确认字段为“0”;节点重新传输第一分片数据包No.5与No.7给网关,网关在接收到第一分片数据包No.5与No.7后,回复给节点的第一块确认帧为“11111111”。
在其他具体的实施例中,在第一待发送数据包的数据量小于或等于预设数据量时,表明节点发送的第一待发送数据包为小数据包,此时可直接将第一待发送数据包发送至网关,如图2所示;在发送完第一待发送数据包后,关闭接收窗口,并在预设接收延迟时间后,打开接收窗口,以接收网关发送的数据包,该数据包包括网关发送的回复消息或下行数据。
进一步地,IOT领域的传输协议都需要保证节点的低功耗特性,本实施例所提供的方案也一样,本方案分为节点端和网关端这两侧,在节点侧支持使用电池供电,在网关侧使用常供电的方式;在不发送数据包时,节点侧一直关闭接收窗口,当有数据需要发送时,节点侧打开自身的射频收发器发送一定量的数据,然后关闭射频收发器,等待预设接收延迟时间后,重新打开接收窗口,接收网关发送的回复消息或者下行数据。
本实施例提出了一种基于IOT领域中的LPWAN的数据传输方法,节点在发送大数据包至网关时,采用连续发送和对方连续打开接收窗口的方式,在发送完数据后,节点及时关闭接收窗口,能够保证节点的低功耗,而且,由于采用连续发送多个第一分片数据包的方式,在单位时间内传输的数据量增多,有效提高了带宽利用率;此外,本方案还采用了块确认的机制,来向节点反馈第一分片数据包的接收情况,实现一次性确认此次传输的所有第一分片数据包,提升反馈的效率。
请参阅图4,图4是本申请提供的数据传输方法另一实施例的流程示意图,该方法应用于节点,该方法包括:
S41:获取第一待发送数据包。
S42:判断第一待发送数据包的数据量是否大于预设数据量。
S43:若第一待发送数据包的数据量大于预设数据量,则将第一待发送数据包拆分为至少两个第一分片数据包。
S44:将所有第一分片数据包连续发送至网关。
S45:若第一待发送数据包的数据量小于或等于预设数据量,则将第一待发送数据包发送至网关。
S41-S45与上述实施例中S11-S13类似,在此不再赘述。
S46:确定是否重新传输第一待发送数据包中的至少部分数据。
在完成第一待发送数据包的第一次发送后,节点根据网关反馈的确认帧,确定第一次发送过程中是否存在丢包的情况;若检测到发生丢包状况,则需要将第一待发送数据包中丢失的数据重新发送至网关,以便网关接收到完整的数据。
S47:若不需要重新传输第一待发送数据包中的至少部分数据,则确定第一待发送数据包发送成功。
如果节点根据网关反馈的块确认帧,确认网关已经接收到完整的数据,则无需再次发送第一待发送数据包中的数据,此时确定将第一待发送数据包发送至网关的操作成功。
在一具体的实施例中,从以下几个方面具体描述节点的处理操作,如下所示:
(1)节点发送的第一待发送数据包为大数据包
先将当前重传次数设置为预设次数,即当前重传次数的初始值为预设次数,该预设次数可以为0;在发送完所有第一分片数据包后,直接打开接收窗口;判断是否接收到第一块确认帧;若未接收到第一块确认帧,则判断当前重传次数是否达到重传次数阈值;若当前重传次数达到重传次数阈值,则确定第一待发送数据包发送失败;若当前重传次数未达到重传次数阈值,则返回将所有第一分片数据包连续发送至网关的步骤(即步骤44)或者返回将第一待发送数据包拆分为至少两个第一分片数据包的步骤(即步骤43),并将当前重传次数与预设步长相加,以对当前重传次数进行更新,预设步长可以为1。
进一步地,在接收到第一块确认帧时,可以采用以下方案:
a)基于第一块确认帧,确定是否传输第一丢失数据包。
节点在接收到网关发送的第一块确认帧后,对该第一块确认帧进行分析,确定第一块确认帧中是否存在块确认字段为“0”的字段,以判定网关是否漏接某些第一分片数据包,即检测是否存在第一丢失数据包,该第一丢失数据包为所有第一分片数据包中未被网关接收到的第一分片数据包。
b)若确定需要传输第一丢失数据包,则表明当前存在丢包状况,此时可将第一丢失数据包发送至网关,接收节点发送的第一确认帧,并返回基于第一块确认帧,确定是否传输第一丢失数据包的步骤,直至网关接收到所有第一分片数据包。
c)若确定不需要传输第一丢失数据包,则表明当前不存在丢包状况,网关已经接收到所有的第一分片数据包,此时可关闭接收窗口,确定第一待发送数据包发送成功。
(2)节点发送的第一待发送数据包为小数据包
节点在发送完第一待发送数据包后,关闭接收窗口,并在预设接收延迟时间后,打开接收窗口;在打开接收窗口后,判断是否接收到第二块确认帧;若接收到第二块确认帧,则关闭接收窗口,确定第一待发送数据包发送成功,此次数据发送结束;若未接收到第二块确认帧,则表明当前传输出现问题,此时可以判断当前重传次数是否达到重传次数阈值,当前重传次数的初始值为预设次数;若当前重传次数达到重传次数阈值,则确定第一待发送数据包发送失败;若当前重传次数未达到重传次数阈值,则返回将第一待发送数据包发送至网关的步骤,并将当前重传次数与预设步长相加,以对当前重传次数进行更新。
(3)节点接收网关发送的第二待发送数据包(即下行数据)
发送接收请求至网关,并休眠预设接收延迟时间,即在等待预设接收延迟时间后,打开接收窗口;判断是否接收到网关发送的数据包;若未接收到网关发送的数据包,则判断当前重传次数是否达到重传次数阈值,当前重传次数的初始值为预设次数;若当前重传次数未达到重传次数阈值,则返回发送接收请求至网关的步骤,并将当前重传次数与预设步长相加,以对当前重传次数进行更新。
若接收到网关发送的数据包,则判断该数据包是否为分片数据包;若数据包为分片数据包,则判断分片数据包是否为第二待发送数据包中的最后一个分片数据包;若分片数据包不为第二待发送数据包中的最后一个分片数据包,则返回打开接收窗口的步骤。在分片数据包为第二待发送数据包中的最后一个分片数据包时,发送第三块确认帧至网关;判断是否接收完第二待发送数据包中的所有分片数据包;若未接收完第二待发送数据包中的所有分片数据包,则返回发送接收请求至网关的步骤,直至接收完第二待发送数据包中的所有分片数据包;若接收完第二待发送数据包中的所有分片数据包,则确定完成下行数据的接收。
进一步地,分片数据包与非分片数据包可用一标识位进行区分,比如:设置一分片标识位,当分片标识位的值为“1”时,表示数据包为分片数据包;当分片标识位的值为“0”时,表示数据包为非分片数据包。
本实施例所采用的方案可以大大提高系统在上行与下行发送大数据包时的带宽,同时保证节点的低功耗特性;而且,使用块确认的机制,可以提高系统对数据包的确认效率,进一步提高有效数据的传输带宽。
参阅图5,图5是本申请提供的数据传输方法又一实施例的流程示意图,该方法应用于数据传输系统中的网关,数据传输系统还包括节点,该方法包括:
S51:节点获取第一待发送数据包。
S52:节点在第一待发送数据包的数据量大于预设数据量时,将第一待发送数据包拆分为至少两个第一分片数据包。
S53:节点将所有第一分片数据包连续发送至网关。
S54:节点在接收到最后一个第一分片数据包后,发送第一块确认帧至节点。
S51~S54与上述实施例中S11~S13类似,在此不再赘述。
在一具体的实施例中,在网关发送下行数据时,可先将第二待发送数据包放入缓存队列中,等待节点打开接收窗口;然后判断第二待发送数据包的数据量是否大于预设数据量;若第二待发送数据包的数据量小于或等于预设数据量,则向节点的接收窗口中发送第二待发送数据包;判断是否接收到节点发送的第四确认帧;若接收到节点发送的第四确认帧,则从缓存队列中删除第二待发送数据包,确认下行数据发送成功,结束此次发送操作。
在第二待发送数据包的数据量大于预设数据量时,将第二待发送数据包拆分为至少两个第二分片数据包;向节点的接收窗口中发送第二分片数据包;在发送完所有第二分片数据包后,判断是否接收到节点发送的第三块确认帧;若未接收到第三块确认帧,则确定第二待发送数据包发送失败,等待下次发送第二待发送数据包。
进一步地,若接收到第三块确认帧,则基于第三块确认帧,确定是否传输第二丢失数据包,第二丢失数据包为所有第二分片数据包中未被节点接收到的第二分片数据包;若确定传输第二丢失数据包,则返回向节点的接收窗口中发送第二分片数据包的步骤,直至节点接收到所有第二分片数据包;若确定无需传输第二丢失数据包,则表明当前不存在第二丢失数据包,此时从缓存队列中删除第二待发送数据包,确认下行数据发送成功,结束此次发送操作。
本实施例中为了保证节点的低功耗,第二待发送数据包会在网关侧缓存,直到节点将接收请求上行至网关;网关在节点打开接收窗口时,把第二待发送数据包发送下去,且一次只能发送一个数据包;当节点接收到第二分片数据包时,再次打开接收窗口用于接收剩下的第二分片数据包;如果节点接收的为非分片数据包,则直接关闭接收窗口,实现省电。
可以理解地,网关如果有多个数据包需要传输给节点,则可在每个数据包中设置待办(pending)位的值,以便通知节点再次发送接收请求来完成数据下行的过程。具体地,当pending位的值为“1”时,表示还有数据包待接收;当pending位的值为“0”时,表示未有数据包待接收。
本实施例提供了一种IOT领域的低功耗、大带宽的数据传输方法,在节点需要发送大数据包时,节点对大数据包进行分片并持续发送分片数据包;在网关需要下行发送大数据包时,节点可以区分接收的数据包是否为分片数据包;在节点接收到分片数据包时,持续打开接收窗口,准备接收下一个分片数据包;在节点接收到非分片数据包时,完成接收后就关闭接收窗口,节省电力;此外,使用块确认帧一次性回复是否接收到所有的分片数据包,数据包的发送方根据块确认帧的缺失情况重传丢失的数据包,提升对数据包的确认效率。
请参阅图6,图6是本申请提供的节点一实施例的结构示意图,节点60包括互相连接的存储器61和处理器62,存储器61用于存储计算机程序,计算机程序在被处理器62执行时,用于实现上述实施例中的数据传输方法。
请参阅图7,图7是本申请提供的网关一实施例的结构示意图,网关70包括互相连接的存储器71和处理器72,存储器71用于存储计算机程序,计算机程序在被处理器72执行时,用于实现上述实施例中的数据传输方法。
请参阅图8,图8是本申请提供的数据传输系统一实施例的结构示意图,数据传输系统80包括互相连接的节点81和网关82,节点81用于向网关82发送数据包和/或接收网关发送的数据包,其中,节点81为上述实施例中的节点,网关82为上述实施例中的网关。
请参阅图9,图9是本申请提供的计算机可读存储介质一实施例的结构示意图,计算机可读存储介质90用于存储计算机程序91,计算机程序91在被处理器执行时,用于实现上述实施例中的数据传输方法。
计算机可读存储介质90可以是服务端、U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
在本申请所提供的几个实施方式中,应该理解到,所揭露的方法以及设备,可以通过其它的方式实现。例如,以上所描述的设备实施方式仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施方式方案的目的。
另外,在本申请各个实施方式中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅为本申请的实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (15)
1.一种数据传输方法,其特征在于,应用于节点,所述方法包括:
获取第一待发送数据包;
在所述第一待发送数据包的数据量大于预设数据量时,将所述第一待发送数据包拆分为至少两个第一分片数据包;
将所有所述第一分片数据包连续发送至网关;
其中,所述网关在接收到最后一个所述第一分片数据包后,发送第一块确认帧至所述节点,所述第一块确认帧用于表示每个所述第一分片数据包是否接收到。
2.根据权利要求1所述的数据传输方法,其特征在于,所述方法还包括:
基于所述第一块确认帧,确定是否传输第一丢失数据包,所述第一丢失数据包为所有所述第一分片数据包中未被所述网关接收到的第一分片数据包;
若是,则将所述第一丢失数据包发送至所述网关,并接收所述节点发送的第一确认帧,并返回所述基于所述第一块确认帧,确定是否传输第一丢失数据包的步骤,直至所述网关接收到所有所述第一分片数据包;
若否,则关闭接收窗口,确定所述第一待发送数据包发送成功。
3.根据权利要求2所述的数据传输方法,其特征在于,所述方法还包括:
在发送完所有所述第一分片数据包后,打开接收窗口;
判断是否接收到所述第一块确认帧;
若接收到所述第一块确认帧,则执行所述确定是否传输第一丢失数据包的步骤;
若未接收到所述第一块确认帧,则判断当前重传次数是否达到重传次数阈值,所述当前重传次数的初始值为预设次数;若是,则确定所述第一待发送数据包发送失败;若否,则返回所述将所有所述第一分片数据包连续发送至网关的步骤,并将所述当前重传次数与预设步长相加,以对所述当前重传次数进行更新。
4.根据权利要求1所述的数据传输方法,其特征在于,所述方法还包括:
在所述第一待发送数据包的数据量小于或等于所述预设数据量时,将所述第一待发送数据包发送至所述网关;
在发送完所述第一待发送数据包后,关闭接收窗口,并在预设接收延迟时间后,打开所述接收窗口,以接收所述网关发送的数据包。
5.根据权利要求4所述的数据传输方法,其特征在于,所述方法还包括:
在打开所述接收窗口后,判断是否接收到第二块确认帧;
若接收到所述第二块确认帧,则关闭所述接收窗口;
若未接收到所述第二块确认帧,则判断当前重传次数是否达到重传次数阈值,所述当前重传次数的初始值为预设次数;
若是,则确定所述第一待发送数据包发送失败;
若否,则返回所述将所述第一待发送数据包发送至所述网关的步骤,并将所述当前重传次数与预设步长相加,以对所述当前重传次数进行更新。
6.根据权利要求1所述的数据传输方法,其特征在于,所述方法还包括:
发送接收请求至所述网关,并等待预设接收延迟时间后,打开接收窗口;
判断是否接收到所述网关发送的数据包;
若未接收到所述网关发送的数据包,则判断当前重传次数是否达到重传次数阈值,所述当前重传次数的初始值为预设次数;若所述当前重传次数未达到所述重传次数阈值,则返回所述发送接收请求至所述网关的步骤,并将所述当前重传次数与预设步长相加,以对所述当前重传次数进行更新;
若接收到所述网关发送的数据包,则判断所述数据包是否为分片数据包;若所述数据包为所述分片数据包,则判断所述分片数据包是否为第二待发送数据包中的最后一个分片数据包;若所述分片数据包不为所述最后一个分片数据包,则返回所述打开接收窗口的步骤。
7.根据权利要求6所述的数据传输方法,其特征在于,所述方法还包括:
在所述分片数据包为所述最后一个分片数据包时,发送第三块确认帧至所述网关;
判断是否接收完所述第二待发送数据包中的所有分片数据包;
若否,则返回所述发送接收请求至所述网关的步骤,直至接收完所述第二待发送数据包中的所有分片数据包。
8.根据权利要求1所述的数据传输方法,其特征在于,所述预设数据量为最大传输单元,所述将所述第一待发送数据包拆分为至少两个第一分片数据包的步骤,包括:
计算所述第一待发送数据包的数据量与所述预设数据量的比值;
对所述比值进行向上取整,得到所述第一分片数据包的总数量,所述第一分片数据包的数据量小于或等于所述预设数据量。
9.一种数据传输方法,其特征在于,应用于数据传输系统中的网关,所述数据传输系统还包括节点,所述节点用于获取第一待发送数据包;在所述第一待发送数据包的数据量大于预设数据量时,将所述第一待发送数据包拆分为至少两个第一分片数据包;将所有所述第一分片数据包连续发送至网关,所述方法包括:
在接收到最后一个所述第一分片数据包后,发送第一块确认帧至所述节点,所述第一块确认帧用于表示每个所述第一分片数据包是否接收到。
10.根据权利要求9所述的数据传输方法,其特征在于,所述方法还包括:
将第二待发送数据包放入缓存队列中,等待所述节点打开接收窗口;
判断所述第二待发送数据包的数据量是否大于预设数据量;
若所述第二待发送数据包的数据量小于或等于所述预设数据量,则向所述节点的接收窗口中发送所述第二待发送数据包;
判断是否接收到所述节点发送的第四确认帧;
若接收到所述节点发送的第四确认帧,则从所述缓存队列中删除所述第二待发送数据包。
11.根据权利要求10所述的数据传输方法,其特征在于,所述方法还包括:
在所述第二待发送数据包的数据量大于所述预设数据量时,将所述第二待发送数据包拆分为至少两个第二分片数据包;
向所述节点的接收窗口中发送所述第二分片数据包;
在发送完所有所述第二分片数据包后,判断是否接收到第三块确认帧;
若接收到所述第三块确认帧,则基于第三块确认帧,确定是否传输第二丢失数据包,所述第二丢失数据包为所有所述第二分片数据包中未被所述节点接收到的第二分片数据包;
若确定传输所述第二丢失数据包,则返回所述向所述节点的接收窗口中发送所述第二分片数据包的步骤,直至所述节点接收到所有所述第二分片数据包。
12.一种节点,其特征在于,包括互相连接的存储器和处理器,其中,所述存储器用于存储计算机程序,所述计算机程序在被所述处理器执行时,用于实现权利要求1-8中任一项所述的数据传输方法。
13.一种网关,其特征在于,包括互相连接的存储器和处理器,其中,所述存储器用于存储计算机程序,所述计算机程序在被所述处理器执行时,用于实现权利要求9-11中任一项所述的数据传输方法。
14.一种数据传输系统,其特征在于,包括互相连接的节点和网关,所述节点用于向所述网关发送数据包和/或接收所述网关发送的数据包,其中,所述节点为权利要求12所述的节点,所述网关为权利要求13所述的网关。
15.一种计算机可读存储介质,用于存储计算机程序,其特征在于,所述计算机程序在被处理器执行时,用于实现权利要求1-11中任一项所述的数据传输方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210216685.8A CN114900488A (zh) | 2022-03-07 | 2022-03-07 | 一种数据传输方法、计算机可读存储介质及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210216685.8A CN114900488A (zh) | 2022-03-07 | 2022-03-07 | 一种数据传输方法、计算机可读存储介质及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114900488A true CN114900488A (zh) | 2022-08-12 |
Family
ID=82716408
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210216685.8A Pending CN114900488A (zh) | 2022-03-07 | 2022-03-07 | 一种数据传输方法、计算机可读存储介质及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114900488A (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4543654A (en) * | 1983-02-03 | 1985-09-24 | Wang Laboratories, Inc. | Interfacing a communication network |
US5313467A (en) * | 1989-11-15 | 1994-05-17 | Digital Equipment Corporation | Integrated communication link having a dynamically allocatable bandwidth and protocol for transmission of allocation information over the link |
US20060192697A1 (en) * | 2003-08-08 | 2006-08-31 | Quick Ashleigh G | Collision detection in a non-dominant bit radio network communication system |
CN103546248A (zh) * | 2013-09-27 | 2014-01-29 | 章程 | 一种ack超时时间自动调节方法 |
CN104918290A (zh) * | 2015-05-15 | 2015-09-16 | 中国农业大学 | 一种数据传输方法 |
CN107612664A (zh) * | 2017-10-25 | 2018-01-19 | 京信通信系统(中国)有限公司 | 一种无线链路控制层rlc数据重传方法、装置及存储介质 |
CN107911841A (zh) * | 2017-10-24 | 2018-04-13 | 浙江工业大学 | 一种传感网时延优化的可靠传输方法 |
CN110401962A (zh) * | 2019-08-13 | 2019-11-01 | 翱捷科技(深圳)有限公司 | 自动调整数据报文长度的LoRaWAN系统及其方法 |
CN110913431A (zh) * | 2019-11-27 | 2020-03-24 | 深圳云博智联科技有限公司 | 数据无线传输方法、装置、计算机设备及存储介质 |
CN113225622A (zh) * | 2021-03-19 | 2021-08-06 | 海能达通信股份有限公司 | 一种视频传输方法、装置和计算机可读存储介质 |
-
2022
- 2022-03-07 CN CN202210216685.8A patent/CN114900488A/zh active Pending
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4543654A (en) * | 1983-02-03 | 1985-09-24 | Wang Laboratories, Inc. | Interfacing a communication network |
US5313467A (en) * | 1989-11-15 | 1994-05-17 | Digital Equipment Corporation | Integrated communication link having a dynamically allocatable bandwidth and protocol for transmission of allocation information over the link |
US20060192697A1 (en) * | 2003-08-08 | 2006-08-31 | Quick Ashleigh G | Collision detection in a non-dominant bit radio network communication system |
CN103546248A (zh) * | 2013-09-27 | 2014-01-29 | 章程 | 一种ack超时时间自动调节方法 |
CN104918290A (zh) * | 2015-05-15 | 2015-09-16 | 中国农业大学 | 一种数据传输方法 |
CN107911841A (zh) * | 2017-10-24 | 2018-04-13 | 浙江工业大学 | 一种传感网时延优化的可靠传输方法 |
CN107612664A (zh) * | 2017-10-25 | 2018-01-19 | 京信通信系统(中国)有限公司 | 一种无线链路控制层rlc数据重传方法、装置及存储介质 |
CN110401962A (zh) * | 2019-08-13 | 2019-11-01 | 翱捷科技(深圳)有限公司 | 自动调整数据报文长度的LoRaWAN系统及其方法 |
CN110913431A (zh) * | 2019-11-27 | 2020-03-24 | 深圳云博智联科技有限公司 | 数据无线传输方法、装置、计算机设备及存储介质 |
CN113225622A (zh) * | 2021-03-19 | 2021-08-06 | 海能达通信股份有限公司 | 一种视频传输方法、装置和计算机可读存储介质 |
Non-Patent Citations (7)
Title |
---|
刘新;戴琼海;吴秋峰;: "Adaptive Delayed Acknowledgement Algorithm for MPEG-4 Traffic in UWB Networks", 清华大学学报(自然科学版)(英文版), no. 03 * |
刘新;戴琼海;吴秋峰;: "Adaptive Delayed Acknowledgement Algorithm for MPEG-4 Traffic in UWB Networks", 清华大学学报(自然科学版)(英文版), no. 03, 30 June 2006 (2006-06-30) * |
来自 褚云霞,李志祥,张岳魁,张军等: "《低功耗广域物联网技术开发》", 31 March 2021, pages: 190 - 208 * |
秦志华;侯亮;: "GPON的关键技术――GEM的封装研究", 中国新通信, no. 13 * |
秦志华;侯亮;: "GPON的关键技术――GEM的封装研究", 中国新通信, no. 13, 5 July 2020 (2020-07-05) * |
贺尊义;劳振煜;李宏;: "基于CAN总线和WiFi通信的爬架组监控系统设计", 无线电通信技术, no. 02 * |
贺尊义;劳振煜;李宏;: "基于CAN总线和WiFi通信的爬架组监控系统设计", 无线电通信技术, no. 02, 2 March 2018 (2018-03-02) * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8824376B2 (en) | Method for sending status information in mobile telecommunications system and receiver of mobile telecommunications | |
US9397791B2 (en) | Transmitting data in a mobile communication system | |
KR100436435B1 (ko) | 유무선 통합망에서 간접 승인을 이용한 패킷 전송 장치 및그 방법 | |
EP1721405B1 (en) | Method for retransmitting packet in mobile communication system and computer-readable medium recorded program thereof | |
US20050152350A1 (en) | System and method for transmitting/receiving automatic repeat request | |
CN1914844B (zh) | 移动通信系统中重传分组的方法和其上记录程序的计算机可读介质 | |
US9565699B2 (en) | Method of performing polling procedure in a wireless communication system | |
CN102387009B (zh) | 一种无线链路控制层上行传输的方法和演进的节点b | |
JP4927940B2 (ja) | セルラ・アクセス・システムにおける改良されたデータ通信のための方法および装置 | |
EP1575204A2 (en) | Mobile communication system, mobile station device, and network-side device | |
CN102217258B (zh) | 探测处理方法、数据发送端、数据接收端以及通信系统 | |
US10979934B2 (en) | System and method for maintaining synchronization in connectionless transmissions | |
CN112436994B (zh) | 一种数据传输方法及电子设备 | |
RU2460214C2 (ru) | Инициирование сообщения статуса в беспроводной системе связи | |
CN107959555B (zh) | 一种基于lwaap的数据传输方法、装置及存储介质 | |
US10999762B2 (en) | Internet of things transmission optimization method and apparatus, and device | |
WO2020210940A1 (zh) | 无线局域网的通信方法、装置、终端及可读存储介质 | |
KR20050078096A (ko) | 데이터 프레임 재전송 방법 및 상기 방법을 사용하는네트워크 장치 | |
Sayenko et al. | Performance analysis of the IEEE 802.16 ARQ mechanism | |
CN113132930A (zh) | 物联网控制方法、系统、设备及存储介质 | |
CN102457986A (zh) | 终端的上行数据传输方法及终端 | |
US11316620B2 (en) | Enhanced HARQ algorithm for large round trip delay links | |
KR100612654B1 (ko) | 자동 재송신 요청을 위한 프레임 생성 장치 및 방법 | |
CN114900488A (zh) | 一种数据传输方法、计算机可读存储介质及装置 | |
CN116963175A (zh) | 数据传输方法、装置及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |