掌桥专利:专业的专利平台
掌桥专利
首页

一种融合传输系统的自适应数据传输方法及装置

文献发布时间:2024-04-18 19:58:26


一种融合传输系统的自适应数据传输方法及装置

技术领域

本公开涉及通信技术领域,尤其涉及一种融合传输系统的自适应数据传输方法及装置。

背景技术

在线直播平台场景中,用户通过平台观看实时的音视频内容,比如体育赛事、音乐演唱会等。这种场景对传输的实时性和质量有较高的要求。在传统的数据传输方法中,由于网络环境的不稳定性,可能会出现带宽不足和传输延迟大的问题。这会导致用户在观看直播时出现卡顿、画面模糊等不良体验。

发明内容

本公开旨在至少在一定程度上解决相关技术中的技术问题之一。

本公开第一方面实施例提出了一种融合传输系统的自适应数据传输方法,包括:

运行预设的带宽测试应用程序,测试设备当前的网络带宽;

若所述网络带宽大于第一阈值,基于UDP协议和FEC对目标平台数据进行数据传输;

若所述网络带宽小于等于所述第一阈值,基于TCP协议进行数据传输,并确定所述设备当前的网络延迟和丢包率;

基于所述网络延迟信息和丢包率,调整发送缓冲区的大小;

在所述网络延迟小于第二阈值且所述丢包率小于第三阈值的情况下,对超时重传时间RTO进行控制,以使得所述RTO低于第四阈值。

本公开第二方面实施例提出了一种融合传输系统的自适应数据传输装置,包括:

测试模块,用于运行预设的带宽测试应用程序,测试设备当前的网络带宽;

传输模块,用于若所述网络带宽大于第一阈值,基于UDP协议和FEC对目标平台数据进行数据传输;

确定模块,用于若所述网络带宽小于等于所述第一阈值,基于TCP协议进行数据传输,并确定所述设备当前的网络延迟和丢包率;

调整模块,用于基于所述网络延迟信息和丢包率,调整发送缓冲区的大小;

控制模块,用于在所述网络延迟小于第二阈值且所述丢包率小于第三阈值的情况下,对超时重传时间RTO进行控制,以使得所述RTO低于第四阈值。

本公开第三方面实施例提出了一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现如本公开第一方面实施例提出的融合传输系统的自适应数据传输方法。

本公开第四方面实施例提出了一种非临时性计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现如本公开第一方面实施例提出的融合传输系统的自适应数据传输方法。

本公开提供的融合传输系统的自适应数据传输方法及装置,存在如下有益效果:

本公开实施例中,如果网络带宽大于第一阈值,选择基于UDP协议和前向纠错码FEC的数据传输方式,UDP协议可以提供更低的延迟和更高的传输效率。前向纠错码可以通过添加冗余数据来恢复丢失的数据,提高数据传输的可靠性。如果网络带宽小于等于第一阈值,选择基于TCP协议的数据传输方式。TCP协议可以提供可靠的数据传输,适用于网络状况较差的情况。同时,确定设备当前的网络延迟和丢包率。根据网络延迟信息和丢包率,调整发送缓冲区的大小。当网络延迟小于第二阈值且丢包率小于第三阈值时,控制超时重传时间RTO,使其低于第四阈值。较低的RTO可以减少数据传输的延迟和丢包率。通过以上设计方案,可以根据网络状况和设备性能自动选择合适的数据传输方式,并根据网络延迟和丢包率等信息进行参数调整,以提高数据传输的效率和可靠性。

本公开附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本公开的实践了解到。

附图说明

本公开上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:

图1为本公开实施例所提供的一种融合传输系统的自适应数据传输方法的流程示意图;

图2为本公开实施例所提供的一种融合传输系统的自适应数据传输装置的结构框图。

具体实施方式

下面详细描述本公开的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本公开,而不能理解为对本公开的限制。

下面参考附图描述本公开实施例的融合传输系统的自适应数据传输方法、装置、计算机设备和存储介质。

需要说明的是,本公开实施例中的融合传输系统的自适应数据传输方法的执行主体为融合传输系统的自适应数据传输装置,该装置可以由软件和/或硬件的方式实现,该装置可以配置在任意电子设备中。

图1为本公开第一实施例所提供的融合传输系统的自适应数据传输方法的流程示意图。

如图1所示,该融合传输系统的自适应数据传输方法可以包括以下步骤:

步骤101,运行预设的带宽测试应用程序,测试设备当前的网络带宽。

其中,带宽测试应用程序包括Speedtest、FAST.com、nPerf等。

在应用程序中,会有一个按钮或选项来开始测试。点击该按钮或选择相应的选项以开始测试。应用程序会自动连接到服务器,并开始测量设备当前的网络带宽。测试完成后,应用程序会显示设备的下载速度、上传速度和延迟等信息。

具体的,可以运行预设的带宽测试应用程序,以获取所述设备和多个测试服务器之间的第一测试结果,确定所述设备和所述多个测试服务器之间的距离,基于各个所述距离,对各个所述第一测试结果进行取平均值,以得到所述设备当前的网络带宽。

其中,可以将位于网络中心位置且具有高带宽的服务器作为测试服务器。

可选的,可以从设备向各个测试服务器发送一定数量的数据包,可以使用TCP或UDP协议进行数据传输,之后记录发送数据包的开始时间和结束时间,并计算传输时间。最后可以根据传输时间和发送的数据包大小,计算出网络带宽。带宽可以通过以下公式计算:带宽=数据包大小/传输时间。

可选的,可以根据确定各个距离的比例关系,进而根据该比例关系,确定每个测试服务器对应的权重,实现对各个第一测试结果的加权计算。需要说明的是,距离越远则权重越小,距离越近则权重越高。

需要说明的是,通过提供多个测试服务器选项,让用户可以选择距离较近、网络质量较好的服务器进行测试,这样可以减少网络延迟和不稳定性对测试结果的影响。多次测试和取平均值,进行多次测试,并取平均值作为最终的测试结果。这样可以降低单次测试中的误差,并更准确地反映设备的网络带宽情况。可选的,还可以在测试前关闭其他正在使用网络的应用程序、连接到稳定的Wi-Fi网络等。在测试过程中,实时监测网络连接状态和设备性能指标,如延迟、丢包率等。如果发现异常情况,可以提醒用户重新测试或检查网络设置。可以提高带宽测试应用程序的准确性,使测试结果更加可靠和准确。进而可以有效降低设备性能、网络拥塞和运营商限制等因素的影响。

步骤102,若所述网络带宽大于第一阈值,基于UDP协议和FEC对目标平台数据进行数据传输。

其中,目标平台数据可以为在线直播平台的数据,比如语音数据、视频数据、图像数据,在此不进行限定。

如果网络带宽大于第一阈值,可以选择基于UDP协议和FEC(Forward ErrorCorrection,前向纠错)的数据传输方式。UDP协议可以提供更低的传输延迟和更好的实时性,而FEC可以通过添加冗余数据来纠正丢包,提高数据传输的可靠性。

步骤103,若所述网络带宽小于等于所述第一阈值,基于TCP协议进行数据传输,并确定所述设备当前的网络延迟和丢包率。

如果网络带宽小于等于第一阈值,则可以选择基于TCP协议的数据传输方式。TCP协议可以提供可靠的数据传输,并自动处理丢包和重传等问题,但可能会增加传输延迟。因而进一步的之后,可以基于网络延迟信息和丢包率,调整发送缓冲区的大小。

步骤104,基于所述网络延迟信息和丢包率,调整发送缓冲区的大小。

具体的,可以基于预设的规则,根据所述网络延迟信息和丢包率,调整发送缓冲区的大小。可选的,可以根据当前的场景,确定所述发送缓冲区的调整范围。

需要说明的是,对于不同的场景,对网络延迟和丢包率的要求不同,比如对于实时音视频应用,通常要求较低的延迟和丢包率。具体的,可以根据预设的规则,将当前的网络延迟和丢包率与目标值进行比较。根据比较结果,调整发送缓冲区的大小,实现自适应调整,也即可以根据网络延迟和丢包率的综合情况,自适应地调整发送缓冲区的大小。例如,当网络延迟较小且丢包率较低时,可以选择较小的发送缓冲区,当网络延迟较大或丢包率较高时,可以选择较大的发送缓冲区。通过动态调整发送缓冲区的大小,可以在不同网络环境下实现更好的传输效果。

如果网络延迟较高或丢包率较大,可以适当增大发送缓冲区的大小,以提高数据传输的可靠性。反之,如果网络延迟较低或丢包率较小,可以适当减小发送缓冲区的大小,以节省资源和提高响应速度。

发送缓冲区的大小不是越大越好,过大的缓冲区可能会导致延迟增加和资源浪费。因此,在调整缓冲区大小时需要综合考虑网络环境和应用需求,并进行适当的测试和优化。因而,本公开实施例中,可以设置有与当前的场景对应的发送缓冲区的调整范围,以使其低于预设阈值。

步骤105,在所述网络延迟小于第二阈值且所述丢包率小于第三阈值的情况下,对超时重传时间RTO进行控制,以使得所述RTO低于第四阈值。

具体的,可以包括以下步骤:

确定所述设备建立连接时设置的初始超时重传时间;

基于所述网络延迟信息和丢包率,调整所述初始超时重传时间,以得到第一RTO;

基于TCP的Jacobson算法,调整所述第一RTO,以得到第二RTO;

根据拥塞控制算法,控制所述第二RTO低于所述第四阈值。

可以首先选择合适的初始RTO值,初始RTO值是指在建立连接时设置的初始超时重传时间,根据网络延迟和丢包率等情况,选择一个合适的初始RTO值。较小的初始RTO值可以提高数据传输的响应速度,但可能会增加误报丢包的概率;较大的初始RTO值可以减少误报丢包的概率,但可能会增加数据传输的延迟,根据具体的应用场景和需求,选择一个合适的初始RTO值。进一步的,可以动态调整RTO值,根据实时的网络状况和数据传输情况,动态调整RTO值。例如,当网络延迟较小且丢包率较低时,可以适当减小RTO值;当网络延迟较大或丢包率较高时,可以适当增加RTO值。通过动态调整RTO值,可以在不同网络环境下实现更好的超时重传控制。进一步的,可以使用自适应算法:使用自适应算法来控制RTO值。本公开实施例中,可以使用TCP的Jacobson/Karels算法,它根据实际的传输延迟和变化情况来动态调整RTO值。该算法通过计算平均往返时间RTT和往返时间偏差RTTVAR,来估计合适的RTO值。根据具体的应用需求,可以选择合适的自适应算法。进一步的,还需要考虑网络拥塞控制,在控制RTO值时,还需要考虑网络拥塞的影响。当网络出现拥塞时,数据传输可能会受到限制,导致RTO值增加。因此,在控制RTO值时,还需要考虑网络拥塞控制算法,如TCP的拥塞控制算法。

在在线直播平台场景中,可以采用以下方法来实现确定设备建立连接时设置的初始超时重传时间,并根据网络延迟信息和丢包率进行调整:

确定初始超时重传时间:在设备建立连接时,可以设置一个初始的超时重传时间。根据经验或标准,可以选择一个合适的初始值,例如100毫秒。

监测网络延迟和丢包率:在连接建立后,持续监测网络延迟和丢包率。可以通过发送小的探测数据包并等待响应的方式来测量往返时间(RTT)和丢包情况。

根据网络延迟信息和丢包率调整第一RTO:根据当前的网络延迟信息和丢包率,可以采用以下策略来调整初始超时重传时间,以得到第一RTO:

如果网络延迟较高或丢包率较大,可以适当增加初始超时重传时间。例如,将初始超时重传时间增加到200毫秒,以更好地适应不稳定的网络环境。

如果网络延迟较低或丢包率较小,可以适当减小初始超时重传时间。例如,将初始超时重传时间减小到50毫秒,以提高数据传输的效率。

可以基于TCP的Jacobson算法调整第二RTO:基于TCP的Jacobson算法可以根据历史的RTT信息来调整RTO值。该算法通过计算平均RTT和RTT偏差,可以得到更准确的RTO值。具体步骤如下:

计算平均RTT:将每个数据包的往返时间(RTT)记录下来,并计算它们的平均值。这个平均RTT反映了当前网络环境的延迟情况。

计算RTT偏差:对于每个数据包,计算其RTT与平均RTT之间的差值。然后,计算这些差值的平均值,即为RTT偏差。RTT偏差反映了网络延迟的波动情况。

根据Jacobson算法计算第二RTO:根据平均RTT和RTT偏差,使用Jacobson算法计算第二RTO的值。该算法通过考虑延迟和波动性来调整RTO,使其更适应当前网络环境。

根据拥塞控制算法控制第二RTO低于第四阈值:拥塞控制算法用于控制网络拥塞情况,以避免过载和丢包。根据拥塞控制算法的规则,可以调整第二RTO的值,使其低于第四阈值。具体的算法和阈值可以根据实际情况和需求来确定。

如果监测到网络延迟突然增加,可以通过增加初始超时重传时间来适应较高的延迟,并使用Jacobson算法和拥塞控制算法来进一步调整RTO值。

如果监测到丢包率较高,可以通过增加初始超时重传时间和调整RTO值来提高数据传输的可靠性。拥塞控制算法可以帮助避免过载和丢包。

如果网络波动性较大,即延迟和丢包率不稳定,可以根据实时监测的网络延迟信息和丢包率进行动态调整,以适应不同的网络环境。

需要注意的是,以上方法仅是一种示例,实际应用中可能需要根据具体情况进行调整和优化,以实现更稳定和高效的在线直播服务。

本公开实施例中,如果网络带宽大于第一阈值,选择基于UDP协议和前向纠错码FEC的数据传输方式,UDP协议可以提供更低的延迟和更高的传输效率。前向纠错码可以通过添加冗余数据来恢复丢失的数据,提高数据传输的可靠性。如果网络带宽小于等于第一阈值,选择基于TCP协议的数据传输方式。TCP协议可以提供可靠的数据传输,适用于网络状况较差的情况。同时,确定设备当前的网络延迟和丢包率。根据网络延迟信息和丢包率,调整发送缓冲区的大小。当网络延迟小于第二阈值且丢包率小于第三阈值时,控制超时重传时间RTO,使其低于第四阈值。较低的RTO可以减少数据传输的延迟和丢包率。通过以上设计方案,可以根据网络状况和设备性能自动选择合适的数据传输方式,并根据网络延迟和丢包率等信息进行参数调整,以提高数据传输的效率和可靠性。

在在线直播平台场景中,以下是一些具体的做法:测试网络带宽:在用户观看直播之前,可以运行预设的带宽测试应用程序,测试用户设备当前的网络带宽。根据测试结果判断网络带宽是否大于第一阈值。选择合适的传输协议和参数:根据网络带宽和测试结果,选择合适的传输协议和参数进行数据传输。如果网络带宽大于第一阈值,可以选择基于UDP协议和FEC的数据传输方式,以提高传输效率和实时性。如果网络带宽小于等于第一阈值,可以选择基于TCP协议的数据传输方式,以保证数据传输的可靠性。调整发送缓冲区大小:根据网络延迟信息和丢包率,调整发送缓冲区的大小。较小的发送缓冲区可以减少延迟,但可能会增加丢包率;较大的发送缓冲区可以提高传输效率,但可能会增加延迟。通过动态调整发送缓冲区的大小,可以在不同网络环境下实现更好的传输效果。控制超时重传时间RTO:根据网络延迟和丢包率等信息,控制超时重传时间RTO,使其低于第四阈值。较低的RTO可以减少数据传输的延迟和丢包率。可以使用自适应算法来动态调整RTO值。通过以上方案,可以根据网络状况和设备性能自动选择合适的数据传输方式,并根据网络延迟和丢包率等信息进行参数调整,以提高音视频内容的实时性和质量。同时,降低了网络拥塞、运营商限制等因素对数据传输的影响,提供了更好的用户体验。

为了实现上述实施例,本公开还提出一种融合传输系统的自适应数据传输装置。

图2为本公开第二实施例所提供的融合传输系统的自适应数据传输装置的结构框图。

如图2所示,该融合传输系统的自适应数据传输装置200可以包括:

测试模块210,用于运行预设的带宽测试应用程序,测试设备当前的网络带宽;

传输模块220,用于若所述网络带宽大于第一阈值,基于UDP协议和FEC对目标平台数据进行数据传输;

确定模块230,用于若所述网络带宽小于等于所述第一阈值,基于TCP协议进行数据传输,并确定所述设备当前的网络延迟和丢包率;

调整模块240,用于基于所述网络延迟信息和丢包率,调整发送缓冲区的大小;

控制模块250,用于在所述网络延迟小于第二阈值且所述丢包率小于第三阈值的情况下,对超时重传时间RTO进行控制,以使得所述RTO低于第四阈值。

可选的,所述测试模块,用于:

运行预设的带宽测试应用程序,以获取所述设备和多个测试服务器之间的第一测试结果;

确定所述设备和所述多个测试服务器之间的距离;

基于各个所述距离,对各个所述第一测试结果进行取平均值,以得到所述设备当前的网络带宽。

可选的,所述调整模块,用于:

基于预设的规则,根据所述网络延迟信息和丢包率,调整发送缓冲区的大小。

可选的,所述控制模块,用于:

确定所述设备建立连接时设置的初始超时重传时间;

基于所述网络延迟信息和丢包率,调整所述初始超时重传时间,以得到第一RTO;

基于TCP的Jacobson算法,调整所述第一RTO,以得到第二RTO;

根据拥塞控制算法,控制所述第二RTO低于所述第四阈值。

可选的,所述调整模块,还用于:

根据当前的场景,确定所述发送缓冲区的调整范围。

本公开实施例中,如果网络带宽大于第一阈值,选择基于UDP协议和前向纠错码FEC的数据传输方式,UDP协议可以提供更低的延迟和更高的传输效率。前向纠错码可以通过添加冗余数据来恢复丢失的数据,提高数据传输的可靠性。如果网络带宽小于等于第一阈值,选择基于TCP协议的数据传输方式。TCP协议可以提供可靠的数据传输,适用于网络状况较差的情况。同时,确定设备当前的网络延迟和丢包率。根据网络延迟信息和丢包率,调整发送缓冲区的大小。当网络延迟小于第二阈值且丢包率小于第三阈值时,控制超时重传时间RTO,使其低于第四阈值。较低的RTO可以减少数据传输的延迟和丢包率。通过以上设计方案,可以根据网络状况和设备性能自动选择合适的数据传输方式,并根据网络延迟和丢包率等信息进行参数调整,以提高数据传输的效率和可靠性。

为了实现上述实施例,本公开还提出一种计算机设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时,实现如本公开前述实施例提出的融合传输系统的自适应数据传输方法。

本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。

此外,在本公开各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。

上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本公开的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本公开的限制,本领域的普通技术人员在本公开的范围内可以对上述实施例进行变化、修改、替换和变型。

相关技术
  • 一种基于数据传输系统的数据传输方法、装置及系统
  • 一种数据传输方法、通信设备和数据传输系统
  • 一种数据传输方法、装置、系统、网络设备及用户设备
  • 一种数据传输方法、装置、系统、基站、AMF和介质
  • 一种数据传输方法、系统、切换装置及可读存储介质
  • 一种基于融合传输系统的自适应数据传输方法
  • 一种基于融合传输系统的自适应数据传输方法
技术分类

06120116487197