CN105813142B - 一种数据帧的发送方法、装置及系统 - Google Patents
一种数据帧的发送方法、装置及系统 Download PDFInfo
- Publication number
- CN105813142B CN105813142B CN201410849983.6A CN201410849983A CN105813142B CN 105813142 B CN105813142 B CN 105813142B CN 201410849983 A CN201410849983 A CN 201410849983A CN 105813142 B CN105813142 B CN 105813142B
- Authority
- CN
- China
- Prior art keywords
- rate
- mpdu
- currently transmitted
- value
- failure
- 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
Classifications
-
- 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/41—Flow control; Congestion control by acting on aggregated flows or links
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0001—Systems modifying transmission characteristics according to link quality, e.g. power backoff
- H04L1/0002—Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission rate
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0001—Systems modifying transmission characteristics according to link quality, e.g. power backoff
- H04L1/0006—Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission format
- H04L1/0007—Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission format by modifying the frame length
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0001—Systems modifying transmission characteristics according to link quality, e.g. power backoff
- H04L1/0015—Systems modifying transmission characteristics according to link quality, e.g. power backoff characterised by the adaptation strategy
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/0273—Traffic management, e.g. flow control or congestion control adapting protocols for flow control or congestion control to wireless environment, e.g. adapting transmission control protocol [TCP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/06—Optimizing the usage of the radio link, e.g. header compression, information sizing, discarding information
- H04W28/065—Optimizing the usage of the radio link, e.g. header compression, information sizing, discarding information using assembly or disassembly of packets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W72/00—Local resource management
- H04W72/12—Wireless traffic scheduling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1867—Arrangements specially adapted for the transmitter end
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Quality & Reliability (AREA)
- Communication Control (AREA)
- Mobile Radio Communication Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施例公开了一种数据帧的发送方法和装置。本发明实施例方法包括:获取基本速率集合;确定当前发送速率,当前发送速率为备选速率集合中速率最大的元素,其中,备选速率集合为基本速率集合中发包成功率大于等于发包成功率门限的元素的集合;根据当前发送速率获取聚合长度值,聚合长度值为采用当前发送速率能够发送的帧的最大长度;根据聚合长度值从待发送MPDU中确定多个MPDU,聚合多个MPDU以得到A‑MPDU,A‑MPDU的长度小于等于聚合长度值;采用当前发送速率发送A‑MPDU,可以有效地提高发送效率。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种数据帧的发送方法、装置及系统。
背景技术
无线局域网(英文:wireless local area network,缩写:WLAN)可以采用聚合的方式发送数据帧。具体是将多个发往同一个接收方地址(英文:receiver address,缩写:RA)的介质访问控制协议数据单元(英文:medium access control(MAC)protocol dataunit,缩写:MPDU)聚合,得到聚合MAC协议数据单元(英文:aggregate MAC protocol dataunit,缩写:A-MPDU),并发送该A-MPDU。接收端通过块响应(英文:Block Acknowledgment)响应A-MPDU,可以降低开销。采用帧聚合的方式发送MPDU的过程中,首先需要确定A-MPDU的长度上限。
传统地,A-MPDU的长度上限的确定方法为:从几个基本速率中选择一个最小速率,以采用该最小速率可发送的MPDU的长度值作为A-MPDU的长度上限。因每次均固定以最小速率获取A-MPDU的长度上限,该上限值太小,而每个MPDU的长度是固定的,这样每一次可以聚合的MPDU数量较少。
发明内容
本发明实施例提供了一种数据帧的发送方法、装置及系统,用于提高发送效率。
第一方面,本发明提供了一种数据帧的发送方法,其主要可包括:
获取基本速率集合;确定当前发送速率,所述当前发送速率为备选速率集合中速率最大的元素,其中,所述备选速率集合为所述基本速率集合中发包成功率大于等于发包成功率门限的元素的集合;根据所述当前发送速率获取聚合长度值,所述聚合长度值为采用所述当前发送速率能够发送的帧的最大长度;根据所述聚合长度值从待发送MPDU中确定多个MPDU,聚合所述多个MPDU以得到聚合介质访问控制协议数据单元A-MPDU,所述A-MPDU的长度小于等于所述聚合长度值;采用所述当前发送速率发送所述A-MPDU。
结合第一方面,在第一方面的第一种可能的实现方式中,所述采用所述当前发送速率发送所述A-MPDU的步骤之后,还包括:若所述A-MPDU发送成功,向上调整所述当前发送速率的发包成功率;若所述A-MPDU发送失败,向下调整所述当前发送速率的发包成功率。
结合第一方面或第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,如果采用所述当前发送速率发送所述A-MPDU失败,还包括:确定采用所述当前发送速率发送所述A-MPDU的发送失败次数;若所述发送失败次数小于失败次数门限,则采用所述当前发送速率重发所述A-MPDU。
结合第一方面,第一方面的第一种可能的实现方式和第二种可能的实现方式中的任意一个,在第一方面的第三种可能的实现方式中,若所述发送失败次数等于失败次数门限,还包括:将所述备选速率集合中所述当前发送速率的下一阶速率确定为新的当前发送速率;根据所述新的当前发送速率获取新的聚合长度值,所述新的聚合长度值为采用所述新的当前发送速率在预置时间内可发送的帧的长度;根据所述新的聚合长度值从所述待发送MPDU中确定新的多个MPDU,聚合所述新的多个MPDU以得到新的A-MPDU,所述新的A-MPDU的长度小于等于所述聚合长度值;采用所述当前发送速率发送所述新的A-MPDU。
结合第一方面,以及第一方面的第一种可能的实现方式至第三种可能的实现方式中的任意一个,在第一方面的第四种可能的实现方式中,若采用所述当前发送速率发送所述A-MPDU成功,将当前发送速率的发包成功率增加第一值;若采用所述当前发送速率发送所述A-MPDU失败的发送失败次数小于失败次数门限,将当前发送速率的发包成功率增加第二值,其中,所述第一值大于第二值,当前发送速率的发包成功率的初始值为上限值,增加第一值或第二值后不超过所述上限值;若采用所述当前发送速率发送所述A-MPDU失败的发送失败次数等于所述失败次数门限,将当前发送速率的发包成功率减小第三值。
第二方面,本发明提供了一种数据帧的发送装置,其主要可包括:
第一获取单元,用于获取基本速率集合;
确定单元,用于确定当前发送速率,所述当前发送速率为备选速率集合中速率最大的元素,其中,所述备选速率集合为所述第一获取单元获取到的所述基本速率集合中发包成功率大于等于发包成功率门限的元素的集合;
第二获取单元,用于根据所述确定单元确定的所述当前发送速率获取聚合长度值,所述聚合长度值为采用所述当前发送速率能够发送的介质访问控制协议数据单元MPDU的最大长度;
聚合单元,用于根据所述第二获取单元获取的所述聚合长度值从待发送MPDU中确定多个MPDU,聚合所述多个MPDU以得到聚合介质访问控制协议数据单元A-MPDU,所述A-MPDU的长度小于等于所述聚合长度值;
发送单元,用于采用所述当前发送速率发送所述聚合单元聚合得到的所述A-MPDU。
结合第二方面,在第二方面的第一种可能的实现方式中,该装置还可包括:调整单元,用于在所述A-MPDU发送成功,向上调整所述当前发送速率的发包成功率;在所述A-MPDU发送失败,向下调整所述当前发送速率的发包成功率。
结合第二方面的第一种可能的实现方式,在第二种可能的实现方式中,所述调整单元,还用于在所述A-MPDU发送成功,将当前发送速率的发包成功率增加第一值;在所述A-MPDU发送失败的发送失败次数小于失败次数门限,将当前发送速率的发包成功率增加第二值,其中,所述第一值大于第二值,当前发送速率的发包成功率的初始值为上限值,增加第一值或第二值后不超过所述上限值;在所述A-MPDU发送失败的发送失败次数等于失败次数门限,将当前发送速率的发包成功率减小第三值。
结合第二方面的第一种可能的实现方式或第二种可能的实现方式,在第三种可能的实现方式中,所述发送单元,还用于在采用所述当前发送速率发送所述A-MPDU失败的发送失败次数小于失败次数门限,采用所述当前发送速率重发所述A-MPDU。
结合第二方面的第一种可能的实现方式或第二种可能的实现方式,在第四种可能的实现方式中,所述发送单元,还用于在采用所述当前发送速率发送所述A-MPDU失败的发送失败次数等于失败次数门限,将所述备选速率集合中所述当前发送速率的下一阶速率确定为新的当前发送速率;根据所述新的当前发送速率获取新的聚合长度值,所述新的聚合长度值为采用所述新的当前发送速率在预置时间内可发送的帧的长度;根据所述新的聚合长度值从所述待发送MPDU中确定新的多个MPDU,聚合所述新的多个MPDU以得到新的A-MPDU,所述新的A-MPDU的长度小于等于所述聚合长度值;采用所述当前发送速率发送所述新的A-MPDU。
从以上技术方案可以看出,本发明实施例具有以下优点:
本发明实施例从发包成功率大于等于发包成功率门限的基本速率集合中动态选择一个最大速率来获取聚合长度值,相比现有技术中固定选择一个最小速率,有效地提高了聚合长度值,从而可以增加A-MPDU中MPDU的数量,在相同数量的MPDU需要发送的前提下,相比现有技术,本发明每一次帧聚合时可聚合的MPDU的数量更多,可以有效地减少发送次数,从而有效地提高了发送效率。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的数据帧的发送方法的一个流程示意图;
图2是本发明实施例提供的数据帧的发送方法的另一个流程示意图;
图3是本发明实施例提供的数据帧的发送方法的又一个流程示意图;
图4是本发明实施例提供的数据帧的发送装置的一个结构示意图;
图5是本发明实施例提供的数据帧的发送装置的另一个结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚地描述。
本发明实施例提供了一种数据帧的发送方法。本发明实施例还提供相应的数据帧的发送装置,请参阅图1至图5。下面通过具体实施例,分别进行详细的说明。
本发明实施例提供的数据帧的发送方法可适用于无线局域网系统,例如,该方法可应用在无线局域网协议下的数据通信。
一种数据帧的发送方法,主要可包括:获取基本速率集合;确定当前发送速率,当前发送速率为备选速率集合中速率最大的元素,其中,备选速率集合为基本速率集合中发包成功率大于等于发包成功率门限的元素的集合;根据当前发送速率获取聚合长度值,聚合长度值为采用当前发送速率能够发送的MPDU的最大长度;根据聚合长度值从待发送MPDU中确定多个MPDU,聚合多个MPDU以得到A-MPDU,A-MPDU的长度小于等于聚合长度值;采用当前发送速率发送A-MPDU。
请参考图1,图1为本发明实施例提供的数据帧的发送方法的流程示意图,其具体可包括如下步骤:
步骤101、获取基本速率集合。
基本速率集合的元素可以为所有可能的发送速率。基本速率集合的元素也可以为从所有可能发送速率中选取的多个发送速率。例如可以从所有可能发送速率中根据传统的速率选择算法选择多个发送速率作为基本速率集合的元素。以下以基本速率集合的元素是4个,4个元素分别为V1、V2、V3和V4,其中,V1、V2、V3和V4的速率依次减小,为例说明本发明实施例的发送方法。
步骤102、确定当前发送速率,当前发送速率为备选速率集合中速率最大的元素,其中,备选速率集合为基本速率集合中发包成功率大于等于发包成功率门限的元素的集合。
基本速率集合中的各个元素(例如V1、V2、V3和V4)各有一个发包成功率,选择基本速率集合中发包成功率大于等于发包成功率门限的元素,作为备选速率集合。因此,备选速率集合是基本速率集合的子集。发包成功率门限可自定义,例如,发包成功率门限可以是80或90等等,本发明实施例以发包成功率门限为80为例进行详细描述。因为计算机中所有变量可能得取值是分立的,因此发包成功率大于等于发包成功率门限和发包成功率大于发包成功率门限是相同的。例如,如果可能的发包成功率门限为整数,则大于等于80和大于79是相同的,如果可能的发包成功率门限为精确到8位的实数,则大于等于80和大于79.99999999是相同的。
其中,基本速率集合(V1、V2、V3和V4)中各个元素的发包成功率的初始值均为上限值,例如100。那么,在第一次确定备选速率集合中元素时,基本速率集合中的所有元素(V1、V2、V3和V4)都是备选速率集合中的元素。
当前发送速率为V1、V2、V3和V4中速率最大的,即V1。
步骤103、根据当前发送速率获取聚合长度值,聚合长度值为采用当前发送速率能够发送的帧的最大长度。
根据当前发送速率可以得到聚合长度值,能够发送的帧的最大长度可能受各种因素,例如传输机会(英文:Transmission Opportunity,缩写:TXOP)的影响。该聚合长度值为采用当前发送速率在TXOP内能够发送的帧的最大长度。TXOP是一个时长,例如,在日本,TXOP为4毫秒,即聚合长度值为采用当前发送速率在4毫秒时长内能够发送的帧的长度。
为了提高该聚合长度值,在没有4毫秒限制的信道上不以4毫秒作为TXOP,而是适当延长,例如5毫秒、5.5毫秒或6毫秒等等,优选的,本实施例的聚合长度值为采用当前发送速率在5.5毫秒时间内能够发送的帧的长度为例。
步骤104、根据聚合长度值从待发送MPDU中确定多个MPDU,聚合多个MPDU以得到A-MPDU,A-MPDU的长度小于等于聚合长度值。
根据聚合长度值可以将从待发送MPDU中确定的多个MPDU聚合为A-MPDU,聚合长度值是A-MPDU的长度上限。
例如,当前待发送MPDU有a、b、c、d和e共5个,这5个MPDU的长度依次为25字节、30字节、35字节、40字节、50字节。若聚合长度值为100字节,则本次可以对a、b和c这3个MPDU(总长度为90字节)聚合得到A-MPDU。若聚合长度值为200字节,则本次可以对a、b、c、d和e这5个MPDU(总长度为180字节)聚合得到A-MPDU。
由此可见,在MPDU的排序和长度固定的情况下,聚合长度值越大,可聚合的MPDU数量越多,可以有效地减少MPDU的发送次数,从而有效地提高了MPDU的发送效率。
步骤105、采用当前发送速率发送A-MPDU。
以前述确定的备选速率集合中最大的速率来发送该A-MPDU。
本发明实施例从发包成功率大于等于发包成功率门限的基本速率集合中动态选择一个最大速率来获取聚合长度值,相比现有技术中固定选择一个最小速率,有效地提高了聚合长度值,从而可以增加A-MPDU中MPDU的数量,在相同数量的MPDU需要发送的前提下,相比现有技术,本发明每一次帧聚合时可聚合的MPDU的数量更多,可以有效地减少发送次数,从而有效地提高了发送效率。
进一步地,在步骤105中,采用当前发送速率发送A-MPDU,A-MPDU可能发送成功,也可能发送失败。
若采用当前发送速率发送A-MPDU失败,但是发送失败次数在失败次数门限范围内,则可以采用当前发送速率重传该A-MPDU。若失败次数等于失败次数门限,则采用另一速率作为新的当前发送速率来发送该A-MPDU,新的当前发送速率为备选速率集合中除发送A-MPDU失败的速率外的其他速率中的最大速率,即选择备选速率集合中当前发送速率的下一阶速率确定为新的当前发送速率。其中,失败次数门限可自定义,例如可以设置为10。也可以一旦发送A-MPDU失败则不再用当前发送速率重传该A-MPDU,即可以设置失败次数门限为1。
此外,本实施例将根据该发送结果对当前发送速率的发包成功率进行调整,可包括:若A-MPDU发送成功,向上调整当前发送速率的发包成功率;若A-MPDU发送失败,向下调整当前发送速率的发包成功率。例如,如果采用发包成功次数和总发包次数的比值作为发包成功率,若发包成功,在该次发包成功前的发包成功率为90/100,则发包成功后的发包成功率为91/101。又如,可以采用一定的评分作为发包成功率,每次发包成功则发包成功率加固定值,例如加5;例如,若发包成功,该次发包成功前的发包成功率为90,向上调整5后,发包成功率为95。
进一步地,为了避免因多次发送失败导致基本速率集合中的各个元素的发包成功率均太低,可以周期性向上调整所有基本速率的发包成功率,例如,可以每隔20毫秒将所有基本速率的发包成功率在原有基础上增加某一数值,其中,具体的调整范围可自定义。
下面将结合对当前发送速率的发包成功率的调整对本发明实施例进行详细说明:
请参阅图2,图2是本发明提供的数据帧的发送方法的另一流程示意图。其主要可包括:
步骤201、获取基本速率集合。
步骤202、确定当前发送速率,当前发送速率为备选速率集合中速率最大的元素,其中,备选速率集合为基本速率集合中发包成功率大于等于发包成功率门限的元素的集合。
步骤203、根据当前发送速率获取聚合长度值,聚合长度值为采用当前发送速率能够发送的帧的最大长度。
步骤204、根据聚合长度值从待发送MPDU中确定多个MPDU,聚合多个MPDU以得到A-MPDU,A-MPDU的长度小于等于聚合长度值。
步骤205、采用当前发送速率发送A-MPDU。
其中,步骤201~步骤205的具体实施可参见步骤101~步骤105,此处不再赘述。
步骤206、判断A-MPDU是否发送成功。
若是发送成功,执行步骤207;若发送失败,执行步骤208。
步骤207、若发送成功,将当前发送速率的发包成功率增加第一值。
采用当前发送速率发送A-MPDU一次发送成功,将其发包成功率增加第一值,并进行下一次帧聚合并发送,即返回执行步骤201。
可选的,若A-MPDU发送成功,可以将发包成功率增加的第一值。例如可以直接在原发包成功率的基础上增加第一值,即30。
需说明的是,当前发送速率的发包成功率的初始值为上限值,增加第一值后不超过上限值。例如,当前发送速率的原发包成功率为100,那么增加30,其发包成功率仍是100。
步骤208,若发送失败,确定采用当前发送速率发送A-MPDU的发送失败次数。
步骤209、判断发送失败次数是否小于失败次数门限。
若等于,则执行步骤210和步骤211;若小于,则执行步骤212。
步骤210、发送失败次数等于失败次数门限,将当前发送速率的发包成功率减小第三值。
例如,可以直接在原发包成功率的基础上减少第三值,即12。
步骤211、将备选速率集合中当前发送速率的下一阶速率确定为新的当前发送速率。
确定了新的当前发送速率,则根据新的当前发送速率获取新的聚合长度值,新的聚合长度值为采用新的当前发送速率在预置时间内可发送的帧的长度,根据新的聚合长度值从待发送MPDU中确定新的多个MPDU,聚合新的多个MPDU以得到新的A-MPDU,新的A-MPDU的长度小于等于聚合长度值,采用当前发送速率发送新的A-MPDU。即返回执行步骤203至步骤205。
由于备选速率集合中的最大速率元素发送该A-MPDU失败,则由第二大速率元素作为当前发送速率继续发送该A-MPDU,采用该新的当前发送速率发送该A-MPDU的实施与本实施例同理,即在步骤211之后继续执行步骤206。
其中,步骤210和步骤211时序无关。
步骤212、发送失败次数小于失败次数门限,采用当前发送速率重发A-MPDU。
步骤213、判断重发A-MPDU是否发送成功。
若成功,则执行步骤214、若失败,则执行步骤208。
步骤214、若成功,则将当前发送速率的发包成功率增加第二值。
其中,采用当前发送速率多次才发送成功,将其发包成功率增加第二值。为了在下一次帧聚合时可以选择到质量更好的速率,一次发送成功增加的第一值大于多次发送成功增加的第二值。例如,可以直接在原发包成功率的基础上增加第二值,即15。
需说明的是,当前发送速率的发包成功率的初始值为上限值,增加第二值后不超过上限值,例如,当前发送速率的原发包成功率为100,那么增加第二值后,其发包成功率仍是100。
请参阅图3,图3是本发明提供的数据帧的发送方法的另一流程示意图。其主要可包括:
步骤301~步骤305具体实施可参见步骤201~步骤205,此处不再赘述。
步骤306、判断A-MPDU是否发送成功。
发送成功,执行步骤307;发送失败,执行步骤308。
步骤307、若发送成功,将当前发送速率的发包成功率增加第四值。
若采用当前发送速率发送A-MPDU成功,将当前发送速率的发包成功率向上调整第四值,其中,当前发送速率的发包成功率的初始值为上限值,向上调整后不超过上限值。
可选的,第四值可以是任意数值,或者是原发包成功率的任意比例值,本发明对此不做限定。
步骤308、若发送失败,将当前发送速率的发包成功率减少第五值。
若采用当前发送速率发送A-MPDU失败,将当前发送速率的发包成功率减少第五值。
可选的,第五值可以是任意数值,或者是原发包成功率的任意比例值,本发明对此不做限定。
步骤309、确定采用当前发送速率发送A-MPDU的发送失败次数。
步骤310、判断发送失败次数是否小于失败次数门限。
若等于,则执行步骤311;若小于,则执行步骤312。
步骤311、将备选速率集合中当前发送速率的下一阶速率确定为新的当前发送速率。
确定了新的当前发送速率,则根据新的当前发送速率获取新的聚合长度值,新的聚合长度值为采用新的当前发送速率在预置时间内可发送的帧的长度,根据新的聚合长度值从待发送MPDU中确定新的多个MPDU,聚合新的多个MPDU以得到新的A-MPDU,新的A-MPDU的长度小于等于聚合长度值,采用当前发送速率发送新的A-MPDU。即返回执行步骤303至步骤305。
由于备选速率集合中的最大速率元素发送该A-MPDU失败,则由第二大速率元素作为当前发送速率继续发送该A-MPDU,采用该新的当前发送速率发送该A-MPDU的实施与本实施例同理,即在步骤311之后继续执行步骤306。
步骤312、发送失败次数小于失败次数门限,则采用当前发送速率重发A-MPDU。
并返回执行步骤306,即判断判断A-MPDU是否发送成功,其中,若A-MPDU发送成功,则执行步骤307、若A-MPDU发送失败,则执行步骤308,以此类推。
为便于更好的实施本发明实施例提供的数据帧的处理方法,本发明实施例还提供一种基于上述数据帧的处理方法的装置。其中名词的含义与上述数据帧的处理方法中相同,具体实现细节可以参考方法实施例中的说明。
请参阅图4,图4是数据帧的处理装置的结构示意图,该数据帧的处理装置400,其具体可包括:第一获取单元401、确定单元402、第二获取单元403、聚合单元404和发送单元405。
第一获取单元401,用于获取基本速率集合;
确定单元402,用于确定当前发送速率,当前发送速率为备选速率集合中速率最大的元素,其中,备选速率集合为第一获取单元401获取到的基本速率集合中发包成功率大于等于发包成功率门限的元素的集合;
第二获取单元403,用于根据确定单元402确定的当前发送速率获取聚合长度值,聚合长度值为采用当前发送速率能够发送的帧的最大长度;
聚合单元404,用于根据第二获取单元403获取的聚合长度值从待发送MPDU中确定多个MPDU,聚合多个MPDU以得到A-MPDU,A-MPDU的长度小于等于聚合长度值;
发送单元405,用于采用当前发送速率发送聚合单元404聚合得到A-MPDU。
进一步地,发送单元405发送A-MPDU可能发送成功,也可能发送失败。若采用当前发送速率发送A-MPDU失败,但是发送失败次数在失败次数门限范围内,则可以采用当前发送速率重传该A-MPDU。若失败次数等于失败次数门限,则选择备选速率集合中当前发送速率的下一阶速率确定为新的当前发送速率。其中,失败次数门限可自定义,例如可以设置为10。
因此,发送单元405还可用于:在采用当前发送速率发送A-MPDU失败的发送失败次数小于失败次数门限,采用当前发送速率重发A-MPDU。
发送单元405还可用于在采用当前发送速率发送A-MPDU失败的发送失败次数等于失败次数门限,将备选速率集合中当前发送速率的下一阶速率确定为新的当前发送速率;采用新的当前发送速率发送A-MPDU。
此外,本实施例还可包括:调整单元406(图4中用虚线框表示进一步包括的单元),调整单元406用于根据该发送结果对当前发送速率的发包成功率进行调整,其具体可用于在A-MPDU发送成功,向上调整当前发送速率的发包成功率;在A-MPDU发送失败,向下调整当前发送速率的发包成功率。
其中,采用当前发送速率一次发送成功,多次发送成功时向上调整值不一样,因此,进一步地,调整单元406,还用于在A-MPDU发送成功,将当前发送速率的发包成功率增加第一值;在A-MPDU发送失败的发送失败次数小于失败次数门限,将当前发送速率的发包成功率增加第二值,其中,第一值大于第二值,当前发送速率的发包成功率的初始值为上限值,增加第一值或第二值后不超过上限值;在A-MPDU发送失败的发送失败次数等于失败次数门限,将当前发送速率的发包成功率减小第三值。
其中,为了避免因多次发送失败导致基本速率集合中的各个元素的发包成功率均太低,调整单元406,还可以用于周期性向上调整所有基本速率的发包成功率,例如,可以每隔20毫秒将所有基本速率的发包成功率在原有基础上增加某一数值,其中,具体的调整范围可自定义。
本发明实施例从发包成功率大于等于发包成功率门限的基本速率集合中动态选择一个最大速率来获取聚合长度值,相比现有技术中固定选择一个最小速率,有效地提高了聚合长度值,从而可以增加A-MPDU中MPDU的数量,在相同数量的MPDU需要发送的前提下,相比现有技术,本发明每一次帧聚合时可聚合的MPDU的数量更多,可以有效地减少MPDU的发送次数,从而有效地提高了MPDU的发送效率。
本发明还提供了一种接入点设备,结构示意图如图5所示,包括:处理器501,存储器502,无线局域网接口503等。处理器501可以通过总线连接存储器502和无线局域网接口503。处理器501为WLAN通信芯片。上述WLAN通信芯片例如为高通的AR9580和AR9344。存储器502包括可以包括易失性存储器(英文:volatile memory),例如随机存取存储器(英文:random-access memory,缩写:RAM);存储器502也可以包括非易失性存储器(英文:non-volatile memory),例如只读存储器(英文:read-only memory,缩写:ROM),快闪存储器(英文:flash memory),硬盘(英文:hard disk drive,缩写:HDD)或固态硬盘(英文:solid-state drive,缩写:SSD);存储器502还可以包括上述种类的存储器的组合。无线局域网接口503包括射频(英文:radio frequency,缩写:RF)芯片和天线,其中:
存储器502中用来储存处理器501处理数据的必要文件等信息,比如程序代码,本实施例中存储器502储存的程序代码用于实现上述数据帧的发送方法,然后由处理器501来执行这些程序代码;
处理器501,具体用于获取基本速率集合;确定当前发送速率,当前发送速率为备选速率集合中速率最大的元素,其中,备选速率集合为基本速率集合中发包成功率大于等于发包成功率门限的元素的集合;根据当前发送速率获取聚合长度值,聚合长度值为采用当前发送速率能够发送的帧的最大长度;根据聚合长度值从待发送MPDU中确定多个MPDU,聚合多个MPDU以得到聚合介质访问控制协议数据单元(英文:Aggregation-Media accesscontrol Protocol Data Unit,缩写:A-MPDU),A-MPDU的长度小于等于聚合长度值;采用当前发送速率通过无线局域网接口503发送A-MPDU。
进一步地,如果采用当前发送速率发送A-MPDU发送失败,且发送失败次数小于失败次数门限,这种情况下,处理器501还用于采用当前发送速率重发A-MPDU;如果采用当前发送速率发送A-MPDU发送失败,且发送失败次数等于失败次数门限,这种情况下,处理器30还用于将备选速率集合中当前发送速率的下一阶速率确定为新的当前发送速率;采用新的当前发送速率发送A-MPDU。
在一个具体的实施例中,处理器501,还用于在A-MPDU发送成功,向上调整当前发送速率的发包成功率;在A-MPDU发送失败,向下调整当前发送速率的发包成功率。
在一个具体的实施例中,处理器501,还用于在A-MPDU发送成功,将当前发送速率的发包成功率增加第一值;在A-MPDU发送失败的发送失败次数小于失败次数门限,将当前发送速率的发包成功率增加第二值,其中,第一值大于第二值,当前发送速率的发包成功率的初始值为上限值,增加第一值或第二值后不超过上限值;在A-MPDU发送失败的发送失败次数等于失败次数门限,将当前发送速率的发包成功率减小第三值。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令处理器完成,所述的程序可以存储于计算机可读存储介质中,所述存储介质是非短暂性(英文:non-transitory)介质,例如随机存取存储器,只读存储器,快闪存储器,硬盘,固态硬盘,磁带(英文:magnetic tape),软盘(英文:floppy disk),光盘(英文:optical disc)及其任意组合。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
Claims (8)
1.一种数据帧的发送方法,其特征在于,包括:
获取基本速率集合;
确定当前发送速率,所述当前发送速率为备选速率集合中速率最大的元素,其中,所述备选速率集合为所述基本速率集合中发包成功率大于等于发包成功率门限的元素的集合;
根据所述当前发送速率获取聚合长度值,所述聚合长度值为采用所述当前发送速率能够发送的帧的最大长度;
根据所述聚合长度值从待发送介质访问控制协议数据单元MPDU中确定多个MPDU,聚合所述多个MPDU以得到聚合介质访问控制协议数据单元A-MPDU,所述A-MPDU的长度小于等于所述聚合长度值;
采用所述当前发送速率发送所述A-MPDU;
若采用所述当前发送速率发送所述A-MPDU成功,将所述当前发送速率的发包成功率增加第一值;
若采用所述当前发送速率发送所述A-MPDU失败的发送失败次数小于失败次数门限,将所述当前发送速率的发包成功率增加第二值,其中,所述第一值大于所述第二值,所述当前发送速率的发包成功率的初始值为上限值,增加所述第一值或所述第二值后不超过所述上限值;
若采用所述当前发送速率发送所述A-MPDU失败的发送失败次数等于所述失败次数门限,将所述当前发送速率的发包成功率减小第三值。
2.根据权利要求1所述的方法,其特征在于,所述采用所述当前发送速率发送所述A-MPDU的步骤之后,还包括:
若所述A-MPDU发送成功,向上调整所述当前发送速率的发包成功率;
若所述A-MPDU发送失败,向下调整所述当前发送速率的发包成功率。
3.根据权利要求1或2所述的方法,其特征在于,如果采用所述当前发送速率发送所述A-MPDU失败,还包括:
确定采用所述当前发送速率发送所述A-MPDU的发送失败次数;
若所述发送失败次数小于失败次数门限,则采用所述当前发送速率重发所述A-MPDU。
4.根据权利要求1或2所述的方法,其特征在于,若所述发送失败次数等于失败次数门限,所述方法还包括:
将所述备选速率集合中所述当前发送速率的下一阶速率确定为新的当前发送速率;
根据所述新的当前发送速率获取新的聚合长度值,所述新的聚合长度值为采用所述新的当前发送速率在预置时间内可发送的帧的长度;
根据所述新的聚合长度值从所述待发送MPDU中确定新的多个MPDU,聚合所述新的多个MPDU以得到新的A-MPDU,所述新的A-MPDU的长度小于等于所述聚合长度值;
采用所述当前发送速率发送所述新的A-MPDU。
5.一种数据帧的发送装置,其特征在于,包括:
第一获取单元,用于获取基本速率集合;
确定单元,用于确定当前发送速率,所述当前发送速率为备选速率集合中速率最大的元素,其中,所述备选速率集合为所述第一获取单元获取到的所述基本速率集合中发包成功率大于等于发包成功率门限的元素的集合;
第二获取单元,用于根据所述确定单元确定的所述当前发送速率获取聚合长度值,所述聚合长度值为采用所述当前发送速率能够发送的介质访问控制协议数据单元MPDU的最大长度;
聚合单元,用于根据所述第二获取单元获取的所述聚合长度值从待发送MPDU中确定多个MPDU,聚合所述多个MPDU以得到聚合介质访问控制协议数据单元A-MPDU,所述A-MPDU的长度小于等于所述聚合长度值;
发送单元,用于采用所述当前发送速率发送所述聚合单元聚合得到的所述A-MPDU;
调整单元,还用于在所述A-MPDU发送成功,将所述当前发送速率的发包成功率增加第一值;在所述A-MPDU发送失败的发送失败次数小于失败次数门限,将所述当前发送速率的发包成功率增加第二值,其中,所述第一值大于所述第二值,所述当前发送速率的发包成功率的初始值为上限值,增加所述第一值或所述第二值后不超过所述上限值;在所述A-MPDU发送失败的发送失败次数等于失败次数门限,将所述当前发送速率的发包成功率减小第三值。
6.根据权利要求5所述的装置,其特征在于,还包括:
所述调整单元,还用于在所述A-MPDU发送成功,向上调整所述当前发送速率的发包成功率;在所述A-MPDU发送失败,向下调整所述当前发送速率的发包成功率。
7.根据权利要求5或6所述的装置,其特征在于,
所述发送单元,还用于在采用所述当前发送速率发送所述A-MPDU失败的发送失败次数小于失败次数门限,采用所述当前发送速率重发所述A-MPDU。
8.根据权利要求5或6所述的装置,其特征在于,
所述发送单元,还用于在采用所述当前发送速率发送所述A-MPDU失败的发送失败次数等于失败次数门限,将所述备选速率集合中所述当前发送速率的下一阶速率确定为新的当前发送速率;根据所述新的当前发送速率获取新的聚合长度值,所述新的聚合长度值为采用所述新的当前发送速率在预置时间内可发送的帧的长度;根据所述新的聚合长度值从所述待发送MPDU中确定新的多个MPDU,聚合所述新的多个MPDU以得到新的A-MPDU,所述新的A-MPDU的长度小于等于所述聚合长度值;采用所述当前发送速率发送所述新的A-MPDU。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410849983.6A CN105813142B (zh) | 2014-12-31 | 2014-12-31 | 一种数据帧的发送方法、装置及系统 |
EP15202178.8A EP3041285B1 (en) | 2014-12-31 | 2015-12-22 | Data frame sending method and apparatus |
US14/984,474 US9882822B2 (en) | 2014-12-31 | 2015-12-30 | Data frame sending method and apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410849983.6A CN105813142B (zh) | 2014-12-31 | 2014-12-31 | 一种数据帧的发送方法、装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105813142A CN105813142A (zh) | 2016-07-27 |
CN105813142B true CN105813142B (zh) | 2019-04-19 |
Family
ID=55085469
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410849983.6A Active CN105813142B (zh) | 2014-12-31 | 2014-12-31 | 一种数据帧的发送方法、装置及系统 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9882822B2 (zh) |
EP (1) | EP3041285B1 (zh) |
CN (1) | CN105813142B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109905327B (zh) | 2017-12-11 | 2021-05-07 | 网宿科技股份有限公司 | 一种无线网络数据传输方法、发送端及接收端 |
US11016924B2 (en) * | 2018-03-01 | 2021-05-25 | Samsung Electronics Co., Ltd. | System and method for supporting multi-mode and/or multi-speed non-volatile memory (NVM) express (NVMe) over fabrics (NVMe-oF) devices |
CN112822787B (zh) * | 2020-12-28 | 2023-03-28 | 普联技术有限公司 | 聚合mpdu的生成、解析方法、装置及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1951070A (zh) * | 2004-05-13 | 2007-04-18 | 皇家飞利浦电子股份有限公司 | 用于ieee802.11n的具有不同数据速率的多接收机聚合(mra) |
US8184551B2 (en) * | 2008-08-08 | 2012-05-22 | Broadcom Corporation | Throughput-based rate adaptation for wireless transmissions |
CN103428756A (zh) * | 2013-08-14 | 2013-12-04 | 杭州华三通信技术有限公司 | 一种无线局域网中聚合帧的控制装置和方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4127709B2 (ja) * | 2006-05-30 | 2008-07-30 | 株式会社東芝 | 無線通信装置及び送信制御方法 |
JP4127710B2 (ja) * | 2006-05-30 | 2008-07-30 | 株式会社東芝 | 無線通信装置及び送信制御方法 |
US8995367B2 (en) * | 2011-06-08 | 2015-03-31 | Marvell World Trade Ltd. | Efficient transmission for low data rate WLAN |
US20140254408A1 (en) * | 2013-03-08 | 2014-09-11 | Qualcomm Incorporated | Rate control associated with frame aggregation |
-
2014
- 2014-12-31 CN CN201410849983.6A patent/CN105813142B/zh active Active
-
2015
- 2015-12-22 EP EP15202178.8A patent/EP3041285B1/en active Active
- 2015-12-30 US US14/984,474 patent/US9882822B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1951070A (zh) * | 2004-05-13 | 2007-04-18 | 皇家飞利浦电子股份有限公司 | 用于ieee802.11n的具有不同数据速率的多接收机聚合(mra) |
US8184551B2 (en) * | 2008-08-08 | 2012-05-22 | Broadcom Corporation | Throughput-based rate adaptation for wireless transmissions |
CN103428756A (zh) * | 2013-08-14 | 2013-12-04 | 杭州华三通信技术有限公司 | 一种无线局域网中聚合帧的控制装置和方法 |
Also Published As
Publication number | Publication date |
---|---|
US9882822B2 (en) | 2018-01-30 |
US20160191403A1 (en) | 2016-06-30 |
CN105813142A (zh) | 2016-07-27 |
EP3041285A1 (en) | 2016-07-06 |
EP3041285B1 (en) | 2018-03-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11071134B2 (en) | Feedback information receiving method, base station and user equipment | |
US20160073402A1 (en) | Method and Apparatus for Dynamic control of TTI Bundling Sizes | |
CN107819545A (zh) | 极化码的重传方法及装置 | |
CN103986548B (zh) | 一种确定丢包原因的方法和终端 | |
CN102239728A (zh) | 数据处理方法和装置 | |
KR101561947B1 (ko) | 피드백 정보의 전송 방법, 시스템 및 장치 | |
CN104158760B (zh) | 一种广域网tcp单边加速的方法及系统 | |
US10469210B2 (en) | Acknowledgment data unit for data unit fragment | |
CN107222298B (zh) | 一种数据传输方法及装置 | |
CN105813142B (zh) | 一种数据帧的发送方法、装置及系统 | |
EP3910842A1 (en) | Data retransmission method and device, storage medium, and electronic device | |
CN102355695B (zh) | 数据速率选择方法、装置及网络设备 | |
CN103701567B (zh) | 一种用于无线地下传感器网络的自适应调制方法与系统 | |
CN106301714B (zh) | 一种数据传输方法及装置 | |
US20200145145A1 (en) | Acknowledgment data unit for data unit fragment | |
CN107172649A (zh) | 一种数据传输方法及设备 | |
CN105960771A (zh) | 无线数据传输的方法、网络侧设备、用户设备和系统 | |
CN107666369A (zh) | 一种重传极化码的方法及其发送设备、接收设备 | |
CN104429013B (zh) | 传输反馈信息的方法、用户设备和基站 | |
CN108631921A (zh) | 一种针对sn长度进行处理的方法和设备 | |
JP2012533929A (ja) | 無線システムのリンクバジェットを改善する方法及びシステム | |
JP7149970B2 (ja) | フィードバック応答情報の伝送方法、装置及びシステム | |
CN103312469A (zh) | 组播重传中的确认代表选择方法及装置 | |
CN103516501B (zh) | 一种发送和接收反馈信息的方法、系统及装置 | |
CN104579579A (zh) | 一种大数据包传输方法和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |