数据包传输方法及装置制造方法

文档序号:8002551阅读:289来源:国知局
数据包传输方法及装置制造方法
【专利摘要】本发明实施例公开了数据包传输的方法、装置及传输设备,所述方法包括:接收第一数据包;比较缓存队列中数据包的数据量与设置的数据量阈值,所述缓存队列中的数据包包括所述第一数据包;当比较结果为所述缓存队列中数据包的数据量大于所述数据量阈值时,将所述缓存队列中的数据包进行聚合生成聚合数据包;传输所述聚合数据包。应用本发明实施例,无需每次传输一个数据包,而是可以在缓存队列中数据包的数据量超过数据量阈值时,通过传输聚合数据包降低网络中数据包的传输碰撞概率,减小数据包的传输时延,从而可以提高系统的总体吞吐量。
【专利说明】数据包传输方法及装置

【技术领域】
[0001]本发明涉及通信【技术领域】,特别涉及数据包传输方法、装置及传输设备。

【背景技术】
[0002]无线局域网络(Wireless Local Area Networks,WLAN)系统中存在大量通过无线网络传输的数据包业务,特别是小数据包业务,例如,在无线企业网的云桌面应用中,大量鼠标和键盘的操作会生成大量的小数据包。通常一个WLAN的物理资源块可以传输几百个字节的数据,而小数据包的大小通常只有几个字节到几十个字节,远小于一个物理资源块的传输能力。在现有WLAN系统中,各个设备都采用载波侦听多路访问/冲突避免(CarrierSense Multiple Access with Collis1n Avoidance, CSMA/CA)技术,通过竞争信道的方式发送数据包。当设备接收到数据包后,如果监听到信道空闲,则等待一段随机时间后,如果监听到信道仍然空闲,则传输该数据包。
[0003]发明人在对现有技术的研究过程中发现,当WLAN系统中设备传输的数据包数量较大,特别是小数据包的数量较大时,这些数据包对信道的竞争可能使得同一时间有至少两个数据包需要通过该信道进行传输,从而提高了数据包的传输碰撞概率,由于数据包之间的传输碰撞导致数据包重传,从而增大了数据包的传输时延;并且由于每个小数据包以小数据量占用整个信道资源,也会导致系统的总体吞吐量下降。


【发明内容】

[0004]本发明实施例中提供了数据包传输方法、装置及传输设备,以解决现有技术中的数据包传输方式容易增大传输碰撞概率和时延,导致系统总体吞吐量下降的问题。
[0005]为了解决上述技术问题,本发明实施例公开了如下技术方案:
[0006]第一方面,提供一种数据包传输方法,所述方法包括:
[0007]接收第一数据包;
[0008]比较缓存队列中数据包的数据量与设置的数据量阈值,所述缓存队列中的数据包包括所述第一数据包;
[0009]当比较结果为所述缓存队列中数据包的数据量大于所述数据量阈值时,将所述缓存队列中的数据包进行聚合生成聚合数据包;
[0010]传输所述聚合数据包。
[0011]结合第一方面,在第一方面的第一种可能的实现方式中,所述接收第一数据包后,所述方法还包括:
[0012]获取所述第一数据包的初始最大等待时间;
[0013]判断所述缓存队列中是否存在第二数据包,所述第二数据包为所述缓存队列中的数据包中除所述第一数据包以外的其他数据包;
[0014]当不存在所述第二数据包时,设置所述第一数据包的最大等待时间为所述初始最大等待时间,并按照所述初始最大等待时间传输所述第一数据包,当存在所述第二数据包时,执行所述比较缓存队列中数据包的数据量与设置的数据量阈值的步骤。
[0015]结合第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述方法还包括:
[0016]当比较结果为所述缓存队列中数据包的数据量不大于所述数据量阈值时,更新所述缓存队列中所有数据包的最大等待时间,更新后的最大等待时间为所述第一数据包的初始最大等待时间和所述第二数据包的最大等待时间的剩余时间中的较小值;
[0017]当所述更新后的最大等待时间到达时,执行所述将所述缓存队列中的数据包进行聚合生成聚合数据包的步骤。
[0018]结合第一方面的第一种可能的实现方式,或第一方面的第二种可能的实现方式,在第一方面的第三种可能的实现方式中,所述获取所述第一数据包的初始最大等待时间,包括:
[0019]获取第一数据包的业务时延和网络时延;
[0020]将所述业务时延和所述网络时延的差值确定为所述第一数据包的初始最大等待时间。
[0021]结合第一方面,或第一方面的第一种可能的实现方式,或第一方面的第二种可能的实现方式,或第一方面的第三种可能的实现方式,在第一方面的第四种可能的实现方式中,所述比较缓存队列中数据包的数据量与设置的数据量阈值之前,所述方法还包括:
[0022]检测数据包的传输条件值;
[0023]当所述传输条件值超过设置的条件阈值时,执行所述比较缓存队列中数据包的数据量与设置的数据量阈值的步骤;其中,
[0024]所述数据包的传输条件值包括至少一个下述值:数据包传输的冲突概率值、数据包传输的丢包率、数据包传输的空口繁忙占空比。
[0025]第二方面,提供一种数据包传输装置,所述装置包括:
[0026]接收单元,用于接收第一数据包;
[0027]比较单元,用于比较缓存队列中数据包的数据量与设置的数据量阈值,所述缓存队列中的数据包包括所述接收单元接收的第一数据包;
[0028]聚合单元,用于当所述比较单元的比较结果为所述缓存队列中数据包的数据量大于所述数据量阈值时,将所述缓存队列中的数据包进行聚合生成聚合数据包;
[0029]传输单元,用于传输所述聚合单元生成的聚合数据包。
[0030]结合第二方面,在第二方面的第一种可能的实现方式中,所述装置还包括:
[0031]获取单元,用于获取所述接收单元接收的第一数据包的初始最大等待时间;
[0032]判断单元,用于判断所述缓存队列中是否存在第二数据包,所述第二数据包为所述缓存队列中的数据包中除所述第一数据包以外的其他数据包;
[0033]设置单元,用于当所述判断单元的判断结果为不存在所述第二数据包时,设置所述第一数据包的最大等待时间为所述初始最大等待时间;
[0034]所述传输单元,还用于按照所述设置单元设置的初始最大等待时间传输所述第一数据包;
[0035]所述比较单元,具体用于当所述判断单元的判断结果为存在所述第二数据包时,比较缓存队列中数据包的数据量与设置的数据量阈值。
[0036]结合第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,所述装置还包括:
[0037]更新单元,用于当所述比较单元的比较结果为所述缓存队列中数据包的数据量不大于所述数据量阈值时,更新所述缓存队列中所有数据包的最大等待时间,更新后的最大等待时间为所述第一数据包的初始最大等待时间和所述第二数据包的最大等待时间的剩余时间中的较小值;
[0038]所述聚合单元,具体用于当所述更新单元更新后的最大等待时间到达时,将所述缓存队列中的数据包进行聚合生成聚合数据包。
[0039]结合第二方面的第一种可能的实现方式,或第二方面的第二种可能的实现方式,在第二方面的第三种可能的实现方式中,所述获取单元包括:
[0040]时延获取子单元,用于获取第一数据包的业务时延和网络时延;
[0041]时间确定子单元,用于将所述业务时延和所述网络时延的差值确定为所述第一数据包的初始最大等待时间。
[0042]结合第二方面,或第二方面的第一种可能的实现方式,或第二方面的第二种可能的实现方式,或第二方面的第三种可能的实现方式,在第二方面的第四种可能的实现方式中,所述装置还包括:
[0043]检测单元,用于检测数据包的传输条件值;
[0044]所述比较单元,具体用于当所述检测单元检测到的传输条件值超过设置的条件阈值时,比较缓存队列中数据包的数据量与设置的数据量阈值;
[0045]其中,所述数据包的传输条件值包括至少一个下述值:数据包传输的冲突概率值、数据包传输的丢包率、数据包传输的空口繁忙占空比。
[0046]第三方面,提供一种传输设备,所述传输设备包括:网络接口、缓存器和处理器,其中,
[0047]所述网络接口,用于接收数据包;
[0048]所述缓存器,用于通过缓存队列缓存所述网络接口接收到的数据包;
[0049]所述处理器,用于当所述网络接口接收到第一数据包后,比较所述缓存队列中数据包的数据量与设置的数据量阈值,所述缓存队列中的数据包包括所述第一数据包,当比较结果为所述缓存队列中数据包的数据量大于所述数据量阈值时,将所述缓存队列中的数据包进行聚合生成聚合数据包;
[0050]所述网络接口,还用于传输所述聚合数据包。
[0051]结合第三方面,在第三方面的第一种可能的实现方式中,所述处理器,还用于获取所述第一数据包的初始最大等待时间,判断所述缓存队列中是否存在第二数据包,所述第二数据包为所述缓存队列中的数据包中除所述第一数据包以外的其他数据包,当不存在所述第二数据包时,设置所述第一数据包的最大等待时间为所述初始最大等待时间,当存在所述第二数据包时,比较缓存队列中数据包的数据量与设置的数据量阈值;
[0052]所述网络接口,还用于按照所述初始最大等待时间传输所述第一数据包。
[0053]结合第三方面的第一种可能的实现方式,在第三方面的第二种可能的实现方式中,所述处理器,还用于当比较结果为所述缓存队列中数据包的数据量不大于所述数据量阈值时,更新所述缓存队列中所有数据包的最大等待时间,更新后的最大等待时间为所述第一数据包的初始最大等待时间和所述第二数据包的最大等待时间的剩余时间中的较小值,并当所述更新后的最大等待时间到达时,将所述缓存队列中的数据包进行聚合生成聚合数据包。
[0054]结合第三方面的第一种可能的实现方式,或第三方面的第二种可能的实现方式,在第三方面的第三种可能的实现方式中,所述处理器,具体用于获取第一数据包的业务时延和网络时延,将所述业务时延和所述网络时延的差值确定为所述第一数据包的初始最大等待时间。
[0055]结合第三方面,或第三方面的第一种可能的实现方式,或第三方面的第二种可能的实现方式,或第三方面的第三种可能的实现方式,在第三方面的第四种可能的实现方式中,所述处理器,还用于检测数据包的传输条件值,当所述传输条件值超过设置的条件阈值时,比较缓存队列中数据包的数据量与设置的数据量阈值;其中,
[0056]所述数据包的传输条件值包括至少一个下述值:数据包传输的冲突概率值、数据包传输的丢包率、数据包传输的空口繁忙占空比。
[0057]本发明实施例中,接收第一数据包后,比较缓存队列中数据包的数据量与设置的数据量阈值,缓存队列中的数据包包括第一数据包和至少一个第二数据包,当比较结果为缓存队列中数据包的数据量大于数据量阈值时,将缓存队列中的数据包进行聚合生成聚合数据包,并传输聚合数据包。应用本发明实施例,无需每次传输一个数据包,而是可以在缓存队列中数据包的数据量超过数据量阈值时,通过传输聚合数据包降低网络中数据包的传输碰撞概率,减小数据包的传输时延,从而可以提高系统的总体吞吐量。

【专利附图】

【附图说明】
[0058]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0059]图1为本发明数据包传输方法的一个实施例流程图;
[0060]图2为本发明数据包传输方法的另一个实施例流程图;
[0061]图3为本发明数据包传输方法的另一个实施例流程图;
[0062]图4为本发明数据包传输装置的一个实施例框图;
[0063]图5为本发明数据包传输装置的另一个实施例框图;
[0064]图6为本发明数据包传输装置的另一个实施例框图;
[0065]图7为本发明传输设备的实施例框图。

【具体实施方式】
[0066]为了使本【技术领域】的人员更好地理解本发明实施例中的技术方案,并使本发明实施例的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明实施例中技术方案作进一步详细的说明。
[0067]参见图1,为本发明数据包传输方法的一个实施例流程图:
[0068]步骤101:接收第一数据包。
[0069]本发明实施例可以应用在WLAN系统中的传输设备对数据包进行传输,传输设备可以包括各种接入点(Access Point,AP)设备,以及终端设备,例如,手机、平板电脑等。
[0070]本实施例中,传输设备接收到的第一数据包可以是普通数据包,也可以是小数据包。需要说明的是,本实施例不对小数据包的数据量的具体值进行限制,可以根据实际需求灵活定义,例如,定义一个K字节,对于数据量不大于K字节的数据包为小数据包,对于数据量大于K字节的数据包为普通数据包。
[0071]步骤102:比较缓存队列中数据包的数据量与设置的数据量阈值,该缓存队列中的数据包包括该第一数据包。
[0072]本实施例中,传输设备可以对接收到的数据包设置最大等待时间,当最大等待时间未到达时,这些数据包存储在缓存队列中等待传输。当传输设备接收到第一数据包后,将该第一数据包加入缓存队列,此时缓存队列中可能还存在未发送的数据包,这些未发送的数据包可以称为第二数据包,第二数据包可以为一个或多个。
[0073]传输设备统计缓存队列中包括第一数据包和第二数据包在内的所有数据包的数据量,并比较统计的数据量与设置的数据量阈值之间的大小。其中,数据量阈值可以根据需要灵活设置,例如,可以设置为一个物理资源块(Physical Resource Block, PRB)的大小。
[0074]步骤103:当比较结果为缓存队列中数据包的数据量大于数据量阈值时,将缓存队列中的数据包进行聚合生成聚合数据包。
[0075]本实施例中,当缓存队列中数据包的数据量大于数据量阈值时,即使这些数据包的最大等待时间还未达到,传输设备也可以将这些数据包进行聚合生成聚合数据包,以便对这些数据包进行整体传输。本发明实施例对聚合的方式不进行限制,例如,可以基于物理层进行聚合,也可以基于介质访问控制(Media Access Control,MAC)层或应用层进行聚入口 ο
[0076]步骤104:传输该聚合数据包。
[0077]与现有技术相比,本实施例中的传输设备在传输聚合数据包时,可以通过一个传输资源传输多个数据包。
[0078]由上述实施例可见,该实施例无需每次传输一个数据包,而是可以在缓存队列中数据包的数据量超过数据量阈值时,通过传输聚合数据包降低网络中数据包的传输碰撞概率,减小数据包的传输时延,从而可以提高系统的总体吞吐量。
[0079]参见图2,为本发明数据包传输方法的另一个实施例流程图:
[0080]步骤201:传输设备接收第一数据包。
[0081]本实施例中,传输设备可以包括各种AP设备,以及终端设备,例如,手机、平板电脑等。本实施例中,传输设备接收到的第一数据包可以是普通数据包,也可以是小数据包。需要说明的是,本实施例不对小数据包的数据量的具体值进行限制,可以根据实际需求灵活定义,例如,定义一个K字节,对于数据量不大于K字节的数据包为小数据包,对于数据量大于K字节的数据包为普通数据包。
[0082]步骤202:传输设备获取第一数据包的业务时延和网络时延。
[0083]其中,传输设备可以根据第一数据包的业务类型获取该第一数据包的业务时延,例如,当第一数据包的业务类型为基于互联网协议的语音(Voice over InternetProtocol, VoIP)类业务时,则对应的业务时延为20ms (毫秒);传输设备可以按照现有技术计算第一数据包的网络时延,对此本发明实施例不再赘述。
[0084]步骤203:传输设备将业务时延和网络时延的差值确定为第一数据包的初始最大等待时间。
[0085]步骤204:传输设备判断缓存队列中是否存在第二数据包,如果是,则执行步骤205 ;如果否,则执行步骤209。
[0086]本实施例中,传输设备可以对接收到的数据包设置最大等待时间,当最大等待时间未到达时,这些数据包存储在缓存队列中等待传输,因此步骤201中当传输设备接收到第一数据包后,可以将该第一数据包加入缓存队列。传输设备确定完第一数据包的初始最大等待时间后,判断缓存队列中是否存在已接收到的第二数据包。
[0087]步骤205:传输设备判断缓存队列中的所有数据包的数据量是否大于设置的数据量阈值,若是,则执行步骤208 ;否则,执行步骤206。
[0088]当缓存队列中存在第二数据包时,传输设备统计缓存队列中包括第一数据包和第二数据包在内的所有数据包的数据量,并比较统计的数据量与设置的数据量阈值之间的大小。其中,数据量阈值可以根据需要灵活设置,例如,可以设置为一个PRB的大小。
[0089]步骤206:传输设备更新缓存队列中所有数据包的最大等待时间,更新后的最大等待时间为第一数据包的初始最大等待时间和第二数据包的最大等待时间的剩余时间的较小值。
[0090]由于缓存队列中包括新接收到的第一数据包,以及已存在的第二数据包,其中第二数据包已经在缓存队列中等待了一段时间,因此第二数据包的最大等待时间的剩余时间即为第二数据包的最大等待时间与已等待时间的差值。本实施例中,传输设备需要对缓存队列中的多个数据包进行聚合发送,就要保证发送聚合数据包时,没有任何一个数据包的最大等待时间的到达时刻超过该聚合数据包的发送时刻,因此传输设备在判断出缓存队列中的所有数据包的数据量不大于设置的数据量阈值时,传输设备从第一数据包的初始最大等待时间和第二数据包的最大等待时间的剩余时间中选择一个较小值,将该最小值更新为缓存队列中所有数据包的最大等待时间。
[0091]步骤207:传输设备判断更新后的最大等待时间是否到达,若是,则执行步骤208 ;否则;返回步骤207。
[0092]步骤208:传输设备将缓存队列中的所有数据包进行聚合生成聚合数据包,并传输该聚合数据包,结束当前流程。
[0093]当步骤205中传输设备判断缓存队列中的所有数据包的数据量大于设置的数据量阈值时,传输设备直接将缓存队列中的所有数据包进行聚合,并传输该聚合数据包;当步骤207中传输设备判断缓存队列中所有数据包更新后的最大等待时间到达时,则传输设备对所有数据包进行聚合生成聚合数据包,并可以通过一个传输资源传输该聚合数据包。
[0094]本发明实施例对数据包的聚合方式不进行限制,例如,可以基于物理层进行聚合,也可以基于MAC层或应用层进行聚合。
[0095]步骤209:传输设备将第一数据包的最大等待时间设置为初始最大等待时间。
[0096]步骤210:传输设备判断第一数据包的最大等待时间是否到达,若是,则执行步骤211 ;否则,返回步骤210。
[0097]步骤211:传输设备传输该第一数据包,结束当前流程。
[0098]当缓存队列中仅有该第一数据包时,则第一数据包的最大等待时间到达时,与现有技术一致,传输设备通过一个传输资源传输该第一数据包即可。
[0099]由上述实施例可见,该实施例无需每次传输一个数据包,而是可以在缓存队列中数据包的数据量超过数据量阈值时,通过传输聚合数据包降低网络中数据包的传输碰撞概率,减小数据包的传输时延,从而可以提高系统的总体吞吐量。
[0100]参见图3,为本发明数据包传输方法的另一个实施例流程图:
[0101]步骤301:传输设备检测数据包的传输条件值。
[0102]本实施例中,数据包的传输条件值包括至少一个下述值:数据包传输的冲突概率值、数据包传输的丢包率、数据包传输的空口繁忙占空比。其中,在检测冲突概率值时,传输设备可以统计预设时间段内发起信道竞争的次数中,与其它传输设备发生冲突的次数,将发生冲突的次数与发起信道竞争的次数的比值作为冲突概率值;另外,数据包传输的丢包率和数据包传输的空口繁忙占空比可以采用现有技术中的方式进行检测,对此本发明实施例不再赘述。
[0103]步骤302:判断传输条件值是否超过设置的条件阈值,若是,则执行步骤303 ;否贝U,执行步骤306。
[0104]本实施例中,每一种传输条件值对应的条件阈值可以根据需要灵活设置,对比本发明实施例不进行限制。结合步骤301,当传输条件值为数据包传输的冲突概率值时,对应的条件阈值为冲突概率阈值;当传输条件值为数据包传输的丢包率时,对应的传输条件阈值为丢包率阈值;当传输条件值为数据包传输的空口繁忙占空比时,对应的传输条件阈值为占空比阈值;当传输条件值包括两个以上时,则可以分别为每个传输条件值分别设置条件阈值,并在每个传输条件值均超过各自的条件阈值时,才执行步骤303。
[0105]步骤303:当接收到第一数据包后,比较缓存队列中数据包的数据量与设置的数据量阈值,该缓存队列中的数据包包括该第一数据包。
[0106]本实施例中,传输设备接收到的第一数据包可以是普通数据包,也可以是小数据包。需要说明的是,本实施例不对小数据包的数据量的具体值进行限制,可以根据实际需求灵活定义。本实施例中,传输设备可以对接收到的数据包设置最大等待时间,当最大等待时间未到达时,这些数据包存储在缓存队列中等待传输。当传输设备接收到第一数据包后,将该第一数据包加入缓存队列,此时缓存队列中可能还存在未发送的数据包,这些未发送的数据包可以称为第二数据包,第二数据包可以为一个或多个。
[0107]传输设备统计缓存队列中包括第一数据包和第二数据包在内的所有数据包的数据量,并比较统计的数据量与设置的数据量阈值之间的大小。其中,数据量阈值可以根据需要灵活设置,例如,可以设置为一个PRB的大小。
[0108]步骤304:当比较结果为缓存队列中数据包的数据量大于数据量阈值时,将缓存队列中的数据包进行聚合生成聚合数据包。
[0109]本实施例中,当缓存队列中数据包的数据量大于数据量阈值时,即使这些数据包的最大等待时间还未达到,传输设备也可以将这些数据包进行聚合生成聚合数据包,以便对这些数据包进行整体传输。本发明实施例对聚合的方式不进行限制,例如,可以基于物理层进行聚合,也可以基于MAC层或应用层进行聚合。
[0110]步骤305:传输该聚合数据包,结束当前流程。
[0111]步骤306:当接收到第一数据包后,按照现有数据包传输方式传输该第一数据包,结束当前流程。
[0112]由上述实施例可见,该实施例可以兼容现有的数据包传输方式,当数据包的传输条件值未超过设置的条件阈值时,使用现有的数据包传输方式,当数据包的传输条件值超过设置的条件阈值时,使用本发明实施例提供的数据包传输方式,该传输方式无需每次传输一个数据包,而是可以在缓存队列中数据包的数据量超过数据量阈值时,通过传输聚合数据包降低网络中数据包的传输碰撞概率,减小数据包的传输时延,从而可以提高系统的总体吞吐量。
[0113]与本发明数据包传输方法的实施例相对应,本发明还提供了数据包传输装置及传输设备的实施例。
[0114]参见图4,为本发明数据包传输装置的一个实施例框图:
[0115]该装置包括:接收单元410、比较单元420、聚合单元430和传输单元440。
[0116]其中,接收单元410,用于接收第一数据包;
[0117]比较单元420,用于比较缓存队列中数据包的数据量与设置的数据量阈值,所述缓存队列中的数据包包括所述接收单元接收的第一数据包;
[0118]聚合单元430,用于当所述比较单元的比较结果为所述缓存队列中数据包的数据量大于所述数据量阈值时,将所述缓存队列中的数据包进行聚合生成聚合数据包;
[0119]传输单元440,用于传输所述聚合单元生成的聚合数据包。
[0120]参见图5,为本发明数据包传输装置的另一个实施例框图:
[0121]该装置包括:接收单元510、获取单元520、判断单元530、设置单元540、传输单元550、比较单元560、聚合单元570和更新单元580。
[0122]其中,接收单元510,用于接收第一数据包;
[0123]获取单元520,用于获取所述接收单元510接收的第一数据包的初始最大等待时间;
[0124]判断单元530,用于判断缓存队列中是否存在第二数据包,所述第二数据包为所述缓存队列中的数据包中除所述第一数据包以外的其他数据包;
[0125]设置单元540,用于当所述判断单元530的判断结果为不存在所述第二数据包时,设置所述第一数据包的最大等待时间为所述初始最大等待时间;
[0126]传输单元550,用于按照所述设置单元540设置的初始最大等待时间传输所述第一数据包;
[0127]比较单元560,用于当所述判断单元530的判断结果为存在所述第二数据包时,比较缓存队列中数据包的数据量与设置的数据量阈值;
[0128]更新单元580,用于当所述比较单元560的比较结果为所述缓存队列中数据包的数据量不大于所述数据量阈值时,更新所述缓存队列中所有数据包的最大等待时间,更新后的最大等待时间为所述第一数据包的初始最大等待时间和所述第二数据包的最大等待时间的剩余时间中的较小值;
[0129]聚合单元570,用于当所述比较单元560的比较结果为所述缓存队列中数据包的数据量大于所述数据量阈值时,将所述缓存队列中的数据包进行聚合生成聚合数据包,或者当所述更新单元580更新后的最大等待时间到达时,将所述缓存队列中的数据包进行聚合生成聚合数据包;
[0130]传输单元550,还用于传输所述聚合单元570生成的聚合数据包。
[0131]可选的,所述获取单元520可以包括(图5中未示出):
[0132]时延获取子单元,用于获取第一数据包的业务时延和网络时延;
[0133]时间确定子单元,用于将所述业务时延和所述网络时延的差值确定为所述第一数据包的初始最大等待时间。
[0134]参见图6,为本发明数据包传输装置的另一个实施例框图:
[0135]该装置包括:检测单元610、接收单元620、比较单元630、聚合单元640和传输单元 650。
[0136]其中,检测单元610,用于检测数据包的传输条件值;其中,所述数据包的传输条件值包括至少一个下述值:数据包传输的冲突概率值、数据包传输的丢包率、数据包传输的空口繁忙占空比;
[0137]接收单元620,用于接收第一数据包;
[0138]比较单元630,用于当所述检测单元610检测到的传输条件值超过设置的条件阈值时,比较缓存队列中数据包的数据量与设置的数据量阈值,所述缓存队列中的数据包包括所述接收单元620接收的第一数据包;
[0139]聚合单元640,用于当所述比较单元630的比较结果为所述缓存队列中数据包的数据量大于所述数据量阈值时,将所述缓存队列中的数据包进行聚合生成聚合数据包;
[0140]传输单元650,用于传输所述聚合单元640生成的聚合数据包。
[0141]参见图7,为本发明传输设备的实施例框图:
[0142]该传输设备包括:网络接口 710、缓存器720和处理器730。
[0143]其中,所述网络接口 710,用于接收数据包;
[0144]所述缓存器720,用于通过缓存队列缓存所述网络接口接收到的数据包;
[0145]所述处理器730,用于当所述网络接口 710接收到第一数据包后,比较所述缓存队列中数据包的数据量与设置的数据量阈值,所述缓存队列中的数据包包括所述第一数据包,当比较结果为所述缓存队列中数据包的数据量大于所述数据量阈值时,将所述缓存队列中的数据包进行聚合生成聚合数据包;
[0146]所述网络接口 710,还用于传输所述聚合数据包。
[0147]在一个可选的实现方式中:
[0148]所述处理器730,还可以用于获取所述第一数据包的初始最大等待时间,判断所述缓存队列中是否存在第二数据包,所述第二数据包为所述缓存队列中的数据包中除所述第一数据包以外的其他数据包,当不存在所述第二数据包时,设置所述第一数据包的最大等待时间为所述初始最大等待时间,当存在所述第二数据包时,比较缓存队列中数据包的数据量与设置的数据量阈值;
[0149]所述网络接口 710,还可以用于按照所述初始最大等待时间传输所述第一数据包。
[0150]在另一个可选的实现方式中:
[0151]所述处理器730,还可以用于当比较结果为所述缓存队列中数据包的数据量不大于所述数据量阈值时,更新所述缓存队列中所有数据包的最大等待时间,更新后的最大等待时间为所述第一数据包的初始最大等待时间和所述第二数据包的最大等待时间的剩余时间中的较小值,并当所述更新后的最大等待时间到达时,将所述缓存队列中的数据包进行聚合生成聚合数据包。
[0152]在另一个可选的实现方式中:
[0153]所述处理器730,可以具体用于获取第一数据包的业务时延和网络时延,将所述业务时延和所述网络时延的差值确定为所述第一数据包的初始最大等待时间。
[0154]在另一个可选的实现方式中:
[0155]所述处理器730,还可以用于检测数据包的传输条件值,当所述传输条件值超过设置的条件阈值时,比较缓存队列中数据包的数据量与设置的数据量阈值;其中,所述数据包的传输条件值包括至少一个下述值:数据包传输的冲突概率值、数据包传输的丢包率、数据包传输的空口繁忙占空比。
[0156]由上述实施例可见,本发明实施例中接收第一数据包后,比较缓存队列中数据包的数据量与设置的数据量阈值,缓存队列中的数据包包括第一数据包,当比较结果为缓存队列中数据包的数据量大于数据量阈值时,将缓存队列中的数据包进行聚合生成聚合数据包,并传输聚合数据包。应用本发明实施例,无需每次传输一个数据包,而是可以在缓存队列中数据包的数据量超过数据量阈值时,通过传输聚合数据包降低网络中数据包的传输碰撞概率,减小数据包的传输时延,从而可以提高系统的总体吞吐量。
[0157]本领域的技术人员可以清楚地了解到本发明实施例中的技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如R0M/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者传输设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
[0158]本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0159]以上所述的本发明实施方式,并不构成对本发明保护范围的限定。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明的保护范围之内。
【权利要求】
1.一种数据包传输的方法,其特征在于,所述方法包括: 接收第一数据包; 比较缓存队列中数据包的数据量与设置的数据量阈值,所述缓存队列中的数据包包括所述第一数据包; 当比较结果为所述缓存队列中数据包的数据量大于所述数据量阈值时,将所述缓存队列中的数据包进行聚合生成聚合数据包; 传输所述聚合数据包。
2.根据权利要求1所述的方法,其特征在于,所述接收第一数据包后,所述方法还包括: 获取所述第一数据包的初始最大等待时间; 判断所述缓存队列中是否存在第二数据包,所述第二数据包为所述缓存队列中的数据包中除所述第一数据包以外的其他数据包; 当不存在所述第二数据包时,设置所述第一数据包的最大等待时间为所述初始最大等待时间,并按照所述初始最大等待时间传输所述第一数据包,当存在所述第二数据包时,执行所述比较缓存队列中数据包的数据量与设置的数据量阈值的步骤。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括: 当比较结果为所述缓存队列中数据包的数据量不大于所述数据量阈值时,更新所述缓存队列中所有数据包的最大等待时间,更新后的最大等待时间为所述第一数据包的初始最大等待时间和所述第二数据包的最大等待时间的剩余时间中的较小值; 当所述更新后的最大等待时间到达时,执行所述将所述缓存队列中的数据包进行聚合生成聚合数据包的步骤。
4.根据权利要求2或3所述的方法,其特征在于,所述获取所述第一数据包的初始最大等待时间,包括: 获取第一数据包的业务时延和网络时延; 将所述业务时延和所述网络时延的差值确定为所述第一数据包的初始最大等待时间。
5.根据权利要求1至4任意一项所述的方法,其特征在于,所述比较缓存队列中数据包的数据量与设置的数据量阈值之前,所述方法还包括: 检测数据包的传输条件值; 当所述传输条件值超过设置的条件阈值时,执行所述比较缓存队列中数据包的数据量与设置的数据量阈值的步骤;其中, 所述数据包的传输条件值包括至少一个下述值:数据包传输的冲突概率值、数据包传输的丢包率、数据包传输的空口繁忙占空比。
6.一种数据包传输装置,其特征在于,所述装置包括: 接收单元,用于接收第一数据包; 比较单元,用于比较缓存队列中数据包的数据量与设置的数据量阈值,所述缓存队列中的数据包包括所述接收单元接收的第一数据包; 聚合单元,用于当所述比较单元的比较结果为所述缓存队列中数据包的数据量大于所述数据量阈值时,将所述缓存队列中的数据包进行聚合生成聚合数据包; 传输单元,用于传输所述聚合单元生成的聚合数据包。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括: 获取单元,用于获取所述接收单元接收的第一数据包的初始最大等待时间; 判断单元,用于判断所述缓存队列中是否存在第二数据包,所述第二数据包为所述缓存队列中的数据包中除所述第一数据包以外的其他数据包; 设置单元,用于当所述判断单元的判断结果为不存在所述第二数据包时,设置所述第一数据包的最大等待时间为所述初始最大等待时间; 所述传输单元,还用于按照所述设置单元设置的初始最大等待时间传输所述第一数据包; 所述比较单元,具体用于当所述判断单元的判断结果为存在所述第二数据包时,比较缓存队列中数据包的数据量与设置的数据量阈值。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括: 更新单元,用于当所述比较单元的比较结果为所述缓存队列中数据包的数据量不大于所述数据量阈值时,更新所述缓存队列中所有数据包的最大等待时间,更新后的最大等待时间为所述第一数据包的初始最大等待时间和所述第二数据包的最大等待时间的剩余时间中的较小值; 所述聚合单元,具体用于当所述更新单元更新后的最大等待时间到达时,将所述缓存队列中的数据包进行聚合生成聚合数据包。
9.根据权利要求7或8所述的装置,其特征在于,所述获取单元包括: 时延获取子单元,用于获取第一数据包的业务时延和网络时延; 时间确定子单元,用于将所述业务时延和所述网络时延的差值确定为所述第一数据包的初始最大等待时间。
10.根据权利要求6至9任意一项所述的装置,其特征在于,所述装置还包括: 检测单元,用于检测数据包的传输条件值; 所述比较单元,具体用于当所述检测单元检测到的传输条件值超过设置的条件阈值时,比较缓存队列中数据包的数据量与设置的数据量阈值; 其中,所述数据包的传输条件值包括至少一个下述值:数据包传输的冲突概率值、数据包传输的丢包率、数据包传输的空口繁忙占空比。
【文档编号】H04L1/00GK104301066SQ201310306110
【公开日】2015年1月21日 申请日期:2013年7月19日 优先权日:2013年7月19日
【发明者】伍天宇, 李云波, 罗毅 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1