CN109561356B - 数据发送方法、数据发送装置、电子设备和计算机可读存储介质 - Google Patents

数据发送方法、数据发送装置、电子设备和计算机可读存储介质 Download PDF

Info

Publication number
CN109561356B
CN109561356B CN201811322897.4A CN201811322897A CN109561356B CN 109561356 B CN109561356 B CN 109561356B CN 201811322897 A CN201811322897 A CN 201811322897A CN 109561356 B CN109561356 B CN 109561356B
Authority
CN
China
Prior art keywords
packet loss
value
loss rate
rate
data transmission
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
Application number
CN201811322897.4A
Other languages
English (en)
Other versions
CN109561356A (zh
Inventor
周超
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Dajia Internet Information Technology Co Ltd
Original Assignee
Beijing Dajia Internet Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Dajia Internet Information Technology Co Ltd filed Critical Beijing Dajia Internet Information Technology Co Ltd
Priority to CN201811322897.4A priority Critical patent/CN109561356B/zh
Publication of CN109561356A publication Critical patent/CN109561356A/zh
Application granted granted Critical
Publication of CN109561356B publication Critical patent/CN109561356B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64723Monitoring of network processes or resources, e.g. monitoring of network load
    • H04N21/64738Monitoring network characteristics, e.g. bandwidth, congestion level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0823Errors, e.g. transmission errors
    • H04L43/0829Packet loss
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • H04L43/0894Packet rate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/16Threshold monitoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/25Flow control; Congestion control with rate being modified by the source upon detecting a change of network conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64784Data processing by the network

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Multimedia (AREA)
  • Environmental & Geological Engineering (AREA)
  • Computer Security & Cryptography (AREA)
  • Databases & Information Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请是关于一种数据发送方法、数据发送装置、电子设备和非临时性计算机可读存储介质。所述种数据发送方法,包括:按照发送速率在设定时长内向接收方发送设定数量的数据包;接收所述设定时长内所述接收方反馈的接收速率和丢包率初值,所述丢包率初值等于1减去在所述设定时长内接收到的包数量除以所述设定数量;计算速度参量,所述速度参量等于1减去所述接收速率除以所述发送速率;根据所述丢包率初值和所述速度参量得到丢包率终值;以及根据所述丢包率终值调整所述发送速率。通过将速度参量纳入到丢包率计算中,有助于平衡丢包率计算的偏差,从而提高丢包率估算的准确性。

Description

数据发送方法、数据发送装置、电子设备和计算机可读存储 介质
技术领域
本申请属于计算机软件应用领域,尤其是数据发送方法、数据发送装置、电子设备和计算机可读存储介质。
背景技术
当前,各种直播工具多采用有较高传输速率的用户数据报协议(User DatagramProtocol,UDP)传输视音频数据流。UDP是无连接的传输层协议,提供简单不可靠的信息传送服务。因此,在视音频数据流输出时,丢包现象普遍存在。如果丢包数量过多,会导致视频播出时出现丢帧等情况,影响播出效果。因此丢包率的准确估计,对于发送端的决策至关重要。
发明内容
为克服相关技术中存在的问题,本申请公开一种数据发送方法、数据发送装置、电子设备和计算机可读存储介质,该数据方法根据速度参量和丢包率初值获得丢包率终值,并根据丢包率终值调整发送速率。
根据本申请实施例的第一方面,提供一种数据发送方法,包括:
按照发送速率在设定时长内向接收方发送设定数量的数据包;
接收所述设定时长内所述接收方反馈的接收速率和丢包率初值,所述丢包率初值等于1减去第一商值,所述第一商值等于在所述设定时长内接收到的包数量除以所述设定数量;;
计算速度参量,所述速度参量等于1减去第二商值,所述第二商值等于所述接收速率除以所述发送速率;
根据所述丢包率初值和所述速度参量得到丢包率终值;以及
根据所述丢包率终值调整所述发送速率。
可选地,根据所述丢包率初值和所述速度参量得到丢包率终值包括:
计算多个速度参量和多个丢包率初值;
计算所述多个速度参量的平均值和所述多个丢包率初值的平均值;以及
对所述多个速度参量的平均值和所述多个丢包率初值的平均值进行加权计算,得到所述丢包率终值。
可选地,所述根据所述丢包率初值和所述速度参量得到所述丢包率终值包括:
对所述丢包率初值和所述速度参量进行加权计算,得到所述丢包率终值。
可选地,所述根据所述丢包率终值调整所述发送速率包括:
判断根据所述丢包率终值是否大于设定阈值;以及
如果所述丢包率终值大于设定阈值,则减小所述发送速率。
可选地,还包括:在每次发送数据包之前,拆分视音频文件,以得到所述设定数量的数据包。
可选地,还包括:每次发送数据包采用的拆分方案均不相同。
可选地,所述发送速率等于在设定时长内发送的数据包的字符总量除以所述设定时长,所述接收速率等于所述接收方在所述设定时长内接收的数据包的字符总量除以所述设定时长。
可选地,所述根据多个速度参量的平均值和多个丢包率初值的平均值进行加权计算,得到丢包率终值包括:
分别设定第一权重值和第二权重值,所述第一权重值和第二权重值之和等于1;
将所述多个速度参量的平均值乘以所述第一权重值,得到第一乘积;
将所述多个丢包率初值的平均值乘以所述第二权重值,得到第二乘积;
将所述第一乘积和第二乘积之和作为所述丢包率终值。
可选地,所述第一权重值和所述第二权重值均等于0.5。
可选地,还包括:存储所述丢包率初值和所述丢包率终值。
根据本发明实施例的第二方面,提供一种数据发送装置,包括:
数据包发送单元,用于按照发送速率在设定时长内向接收方发送设定数量的数据包;
参数接收单元,用于接收所述设定时长内所述接收方反馈的接收速率和丢包率初值,所述丢包率初值等于1减去第一商值,所述第一商值等于在所述设定时长内接收到的包数量除以所述设定数量;
比值计算单元,计算速度参量,所述速度参量等于1减去第二商值,所述第二商值等于所述接收速率除以所述发送速率;
终值获取单元,用于根据所述丢包率初值和所述速度参量得到丢包率终值;
调整单元,用于根据所述丢包率终值调整所述发送速率。
可选地,所述终值获取单元包括:
计算多个速度参量和多个丢包率初值;
计算所述多个速度参量的平均值和所述多个丢包率初值的平均值;以及
对所述多个速度参量的平均值和所述多个丢包率初值的平均值进行加权计算,得到所述丢包率终值。
可选地,所述终值获取单元包括:
对所述丢包率初值和所述速度参量进行加权计算,得到所述丢包率终值。
可选地,所述调整单元包括:
判断根据所述丢包率终值是否大于设定阈值;以及
如果所述丢包率终值大于设定阈值,则减小所述发送速率。
可选地,还包括:拆分单元,用于在每次发送数据包之前,拆分视音频文件,以得到所述设定数量的数据包。
可选地,还包括:每次发送数据包采用的拆分方案均不相同。
可选地,所述发送速率等于在设定时长内发送的数据包的字符总量除以所述设定时长,所述接收速率等于所述接收方在所述设定时长内接收的数据包的字符总量除以所述设定时长。
可选地,还包括:存储单元,用于存储所述丢包率初值和所述丢包率终值。
根据本发明实施例的第三方面,提供一种电子设备,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行上述任意一项所述的数据发送方法。
根据本发明实施例的第四方面,提供一种非临时性计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令被执行时实现上述任一项所述的数据发送方法。
根据本发明的第五方面,提供计算机程序产品,包括计算机程序产品,所述计算机程序包括程序指令,当所述程序指令被电子设备执行时,使所述电子设备执行上述数据发送方法。
本申请的实施例提供的技术方案可以包括以下有益效果:根据速度参量和丢包率初值获得丢包率终值,通过将速度参量纳入到丢包率计算中,有助于平衡现有技术中丢包率估算的偏差,从而提高丢包率估算的准确性。
进一步地,根据多个速度参量的平均值和多个丢包率初值的平均值获得丢包率终值,采用平均值进行计算,避免单次采集到的数据受到偶然事件的影响,从而进一步提高了丢包率估算的准确性。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1是根据现有技术一示例性实施例示出的直播系统的结构示意图;
图2是根据本发明一示例性实施例的数据发送方法的流程图;
图3是根据本发明另一示例性实施例的数据发送方法的流程图;
图4是根据本发明示例性实施例的数据发送装置的结构图;
图5是根据一示例性实施例示出的一种执行数据发送方法的电子设备的框图;
图6是根据一示例性实施例示出的一种执行数据发送方法的电子设备的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
图1是根据现有技术一示例性实施例示出的直播系统的结构示意图。该直播系统包括多个终端和服务器130,每个终端上运行有客户端软件,服务器130上部署有服务器端软件。为方便起见,图1中只示出了两个终端。如图1所示,终端A和终端B分别部署了客户端软件,终端A的直播客户通过客户端软件组织和制作视音频数据,并发送到服务器130上,服务器端软件接收到视音频数据后,为终端B提供转发服务。终端A和服务器130之间采用局域网或广域网进行通信连接,终端B和服务器130之间采用局域网或广域网进行通信连接。
本发明实施例的数据发送方法可以基于上述直播系统实现。例如,该数据发送方法应用于终端A,终端A向终端B发送数据包,并在此过程中根据丢包率终值调整发送速率。图2是根据本发明一示例性实施例的数据发送方法的流程图。具体包括以下步骤。
在步骤S201中,按照发送速率在设定时长内向接收方发送设定数量的数据包。
在步骤S202中,接收设定时长内接收方反馈的接收速率和丢包率初值。
在步骤S203中,计算速度参量。丢包率初值等于1减去第一商值,所述第一商值等于在设定时长内接收到的包数量除以设定数量。速度参量等于1减去第二商值,所述第二商值等于接收速率除以发送速率。
在步骤S204中,根据丢包率初值和速度参量得到丢包率终值。
在步骤S205中,根据丢包率终值调整发送速率。
以上述终端A和终端B为示例说明本实施例。假设终端A向终端B在设定时长t内发送设定数量num的数据包,发送速率为r_send,终端B在设定时长t内实际接收到的数据包的数量cnt,接收速率为r_recv,终端B计算丢包率初值,得到丢包率初值p_packet=1-cnt/num,然后终端B将丢包率初值p_packet和接收速率r_recv发送给终端A,终端A采用公式p_rate=1-r_recv/r_send计算速度参量p_rate,最终根据p_rate和p_packet计算丢包率终值,并根据丢包率终值调整发送速率。此处发送速率r_send等于在t时长内发送的所有数据包的字符数除以t,接收速率r_recv等于在t时长内接收的所有数据包的字符数除以t。
现有技术中多直接采用p_packet作为丢包率的最终估测值,并作为调整发送速率的依据。而本实施例,将速度参量纳入到纳入到丢包率计算中,通过速度参量有助于平衡现有技术中的丢包率估算的偏差,从而提高丢包率估算的准确性。应该理解,发送速率和接收速率对丢包率有直接影响,当发送速率大于接收速率时,丢包的可能性较大;当发送速率不大于(小于或等于)接收速率时,丢包的可能性较小。由此,将发送速率和接收速率的比值作为一个参量进行丢包率估测,有助于准确估测丢包率,进而降低速率变化对丢包率的影响。
在本实施例中,p_packet的计算公式还可以为:p_packet=1-cnt/(seq_max-seq_min),seq_max为在设定时间t内,发送的最大包序号,seq_min为最小包序号。
在一个实施例中,采用加权求和的方式根据p_rate和p_packet计算丢包率终值p_opt,具体公式为:
p_opt=alpha*p_packet+beta*p_rate,
其中alpha和beta为设定的第一权重和第二权重,alpha+beta=1。可选择alpha=beta=0.5。第一权重和第二权重可以根据带宽、网络速度等因素进行设置。
在另一个实施例中,根据p_rate和p_packet计算丢包率终值p_opt则采用与上述不同的计算方式。具体参见图3。图3是根据本发明另一示例性实施例的数据发送方法的流程图。具体包括以下步骤。
在步骤S301中,按照发送速率在设定时长内向接收方发送设定数量的数据包。
在步骤S302中,接收设定时长内接收方反馈的接收速率和丢包率初值。
在步骤S303中,计算速度参量。所述速度参量等于1减去接收速率除以发送速率。
步骤S301-S303和上述步骤S201-S203相同,这里就不再赘述。
在步骤S304中,计算N个速度参量的平均值和N个丢包率初值的平均值。N是大于等于2的正整数。
在步骤S305中,根据N个速度参量的平均值和N个丢包率初值的平均值进行加权计算,得到丢包率终值。
步骤S304和S305是本实施例和上述实施例的区别步骤。在本实施例中,通过N次重复执行步骤S301-S303,得到N个速度参量和N个丢包率初值,计算这N个速度参量的平均值和N个丢包率初值的平均值,进而,根据各自的平均值加权计算得到丢包率终值。例如,设定一个统计时间为5秒,每隔1秒向接收方发送设定数量的数据包,进行5次这样的操作,从而得到5个速度比率和5个丢包率初值。
对于丢包率初值和速度参量仍旧以p_packet和p_rate进行说明。通过N次操作获得N个p_packet和p_rate,并得到平均值p_packet_avg和p_rate_avg。则丢包率终值p_opt以下公式得到:
p_opt=alpha*p_packet_avg+beta*p_rate_avg,其中alpha+beta=1。
在步骤S306中,根据丢包率终值调整发送速率。
例如,在接收速率不变的情况下,将发送速率减小,使得接收速率和发送速率的比值增大,进而速度参量变小,最终丢包率终值减小。优选地,根据丢包率终值调整发送速率还包括将丢包率终值和一个设定阈值比较,如果丢包率终值大于设定阈值,则根据丢包率终值减小发送速率。
应当理解,在本发明实施例中,根据多个速度参量的平均值和多个丢包率初值的平均值获得丢包率终值,采用平均值进行计算,避免单次采集到的数据受到偶然事件的影响,从而能够进一步提高了丢包率估算的准确性。
在一个实施例中,上述多次发送的数据包来自一个视音频文件,在第一次发送数据包之前,将视音频文件分为多个数据包,每次发送时,从多个数据包中取出设定数量的数据包发送。
在另一个实施例中,上述多次发送的数据包来自多个视音频文件,每个视音频文件的编码格式可不相同。每次发送之前,拆分一个视音频文件,而且每次拆分的方案不相同,即每次拆分的数据包的大小不相同,每次发送时,从多个数据包中取出设定数量的数据包发送。
图4是根据本发明示例性实施例的数据发送装置的结构图。所述数据发送装置400包括数据包发送单元401、参数接收单元402、比值计算单元403、终值获取单元404和调整单元405。
数据包发送单元401用于按照发送速率在设定时长内向接收方发送设定数量的数据包。
参数接收单元402用于接收设定时长内所述接收方反馈的接收速率和丢包率初值,丢包率初值等于1减去第一商值,所述第一商值等于在所述设定时长内接收到的包数量除以设定数量。
比值计算单元403计算速度参量,速度参量等于1减去第二商值,所述第二商值等于所述接收速率除以所述发送速率。
终值获取单元404用于根据丢包率初值和速度参量得到丢包率终值。
调整单元405用于根据丢包率终值调整发送速率。
在一个实施例中,终值获取单元404包括:计算多个速度参量和多个丢包率初值;计算多个速度参量的平均值和多个丢包率初值的平均值;以及对多个速度参量的平均值和所述多个丢包率初值的平均值进行加权计算,得到丢包率终值。
而在另一个实施例中,终值获取单元404包括:对丢包率初值和速度参量进行加权计算,得到丢包率终值。
在一个实施例中,调整单元405包括:判断根据丢包率终值是否大于设定阈值;以及如果丢包率终值大于设定阈值,则减小发送速率。
在一个实施例中,上述装置还包括:拆分单元,用于在每次发送数据包之前,拆分视音频文件,以得到设定数量的数据包。而且,多次发送的数据包采用不同的拆分方案。
在一个实施例中,上述装置还包括:存储单元,用于存储所述丢包率初值和丢包率终值。
应该理解,上述装置和方法是对应的,因此,对装置以相应简略的方式进行描述。
图5是根据一示例性实施例示出的一种执行数据发送方法的电子设备的框图。例如,电子设备1200可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
参照图5,电子设备1200可以包括以下一个或多个组件:处理组件1202,存储器1204,电力组件1206,多媒体组件1208,音频组件1210,输入/输出(I/O)的接口1212,传感器组件1214,以及通信组件1216。
处理组件1202通常控制电子设备1200的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件1202可以包括一个或多个处理器1220来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件1202可以包括一个或多个模块,便于处理组件1202和其他组件之间的交互。例如,处理组件1202可以包括多媒体模块,以方便多媒体组件1208和处理组件1202之间的交互。
存储器1204被配置为存储各种类型的数据以支持在设备1200的操作。这些数据的示例包括用于在电子设备1200上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器1204可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电源组件1206为电子设备1200的各种组件提供电力。电源组件1206可以包括电源管理系统,一个或多个电源,及其他与为电子设备1200生成、管理和分配电力相关联的组件。
多媒体组件1208包括在所述电子设备1200和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件1208包括一个前置摄像头和/或后置摄像头。当设备1200处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件1210被配置为输出和/或输入音频信号。例如,音频组件1210包括一个麦克风(MIC),当电子设备1200处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器1204或经由通信组件1216发送。在一些实施例中,音频组件1210还包括一个扬声器,用于输出音频信号。
I/O接口1212为处理组件1202和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启用按钮和锁定按钮。
传感器组件1214包括一个或多个传感器,用于为电子设备1200提供各个方面的状态评估。例如,传感器组件1214可以检测到设备1200的打开/关闭状态,组件的相对定位,例如所述组件为电子设备1200的显示器和小键盘,传感器组件1214还可以检测电子设备1200或电子设备1200一个组件的位置改变,用户与电子设备1200接触的存在或不存在,电子设备1200方位或加速/减速和电子设备1200的温度变化。传感器组件1214可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件1214还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件1214还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件1216被配置为便于电子设备1200和其他设备之间有线或无线方式的通信。电子设备1200可以接入基于通信标准的无线网络,如WiFi,运营商网络(如2G、3G、4G或5G),或它们的组合。在一个示例性实施例中,通信组件1216经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件1216还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,电子设备1200可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器1204,上述指令可由电子设备1200的处理器1220执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
图6是根据一示例性实施例示出的一种执行数据发送方法的电子设备的框图。例如,装置1300可以被提供为一服务器。参照图6,装置1300包括处理组件1322,其进一步包括一个或多个处理器,以及由存储器1332所代表的存储器资源,用于存储可由处理组件1322的执行的指令,例如应用程序。存储器1332中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件1322被配置为执行指令,以执行上述信息列表显示方法方法。
装置1300还可以包括一个电源组件1326被配置为执行装置1300的电源管理,一个有线或无线网络接口1350被配置为将装置1300连接到网络,和一个输入输出(I/O)接口1358。装置1300可以操作基于存储在存储器1332的操作系统,例如Windows ServerTM,MacOS XTM,UnixTM,LinuxTM,FreeBSDTM或类似。
在示例性实施例中,还提供了计算机程序产品,包括计算机程序产品,所述计算机程序包括程序指令,当所述程序指令被电子设备执行时,使所述电子设备执行上述数据发送方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。

Claims (18)

1.一种数据发送方法,其特征在于,包括:
按照发送速率在设定时长内向接收方发送设定数量的数据包;
接收所述设定时长内所述接收方反馈的接收速率和丢包率初值,所述丢包率初值等于1减去第一商值,所述第一商值等于在所述设定时长内接收到的包数量除以所述设定数量;
计算速度参量,所述速度参量等于1减去第二商值,所述第二商值等于所述接收速率除以所述发送速率;
对所述丢包率初值和所述速度参量进行加权计算,得到丢包率终值,所述丢包率初值和所述速度参量的权重之和为1;以及
根据所述丢包率终值调整所述发送速率。
2.根据权利要求1所述的数据发送方法,其特征在于,对所述丢包率初值和所述速度参量进行加权计算,得到丢包率终值包括:
计算多个速度参量和多个丢包率初值;
计算所述多个速度参量的平均值和所述多个丢包率初值的平均值;以及
对所述多个速度参量的平均值和所述多个丢包率初值的平均值进行加权计算,得到所述丢包率终值。
3.根据权利要求1所述的数据发送方法,其特征在于,所述根据所述丢包率终值调整所述发送速率包括:
判断根据所述丢包率终值是否大于设定阈值;以及
如果所述丢包率终值大于设定阈值,则减小所述发送速率。
4.根据权利要求2所述的数据发送方法,其特征在于,还包括:在每次发送数据包之前,拆分视音频文件,以得到所述设定数量的数据包。
5.根据权利要求4所述的数据发送方法,其特征在于,还包括:每次发送数据包采用的拆分方案均不相同。
6.根据权利要求1所述的数据发送方法,其特征在于,所述发送速率等于在设定时长内发送的数据包的字符总量除以所述设定时长,所述接收速率等于所述接收方在所述设定时长内接收的数据包的字符总量除以所述设定时长。
7.根据权利要求2所述的数据发送方法,其特征在于,所述根据多个速度参量的平均值和多个丢包率初值的平均值进行加权计算,得到丢包率终值包括:
分别设定第一权重值和第二权重值,所述第一权重值和第二权重值之和等于1;
将所述多个速度参量的平均值乘以所述第一权重值,得到第一乘积;
将所述多个丢包率初值的平均值乘以所述第二权重值,得到第二乘积;
将所述第一乘积和第二乘积之和作为所述丢包率终值。
8.根据权利要求7所述的数据发送方法,其特征在于,所述第一权重值和所述第二权重值均等于0.5。
9.根据权利要求1所述的数据发送方法,其特征在于,还包括:存储所述丢包率初值和所述丢包率终值。
10.一种数据发送装置,其特征在于,包括:
数据包发送单元,用于按照发送速率在设定时长内向接收方发送设定数量的数据包;
参数接收单元,用于接收所述设定时长内所述接收方反馈的接收速率和丢包率初值,所述丢包率初值等于1减去第一商值,所述第一商值等于在所述设定时长内接收到的包数量除以所述设定数量;
比值计算单元,计算速度参量,所述速度参量等于1减去第二商值,所述第二商值等于接收速率除以所述发送速率;
终值获取单元,用于对所述丢包率初值和所述速度参量进行加权计算,得到丢包率终值,所述丢包率初值和所述速度参量的权重之和为1;
调整单元,用于根据所述丢包率终值调整所述发送速率。
11.根据权利要求10所述的数据发送装置,其特征在于,所述终值获取单元包括:
计算多个速度参量和多个丢包率初值;
计算所述多个速度参量的平均值和所述多个丢包率初值的平均值;以及
对所述多个速度参量的平均值和所述多个丢包率初值的平均值进行加权计算,得到所述丢包率终值。
12.根据权利要求10所述的数据发送装置,其特征在于,所述调整单元包括:
判断根据所述丢包率终值是否大于设定阈值;以及
如果所述丢包率终值大于设定阈值,则减小所述发送速率。
13.根据权利要求11所述的数据发送装置,其特征在于,还包括:拆分单元,用于在每次发送数据包之前,拆分视音频文件,以得到所述设定数量的数据包。
14.根据权利要求13所述的数据发送装置,其特征在于,还包括:每次发送数据包采用的拆分方案均不相同。
15.根据权利要求10所述的数据发送装置,其特征在于,所述发送速率等于在设定时长内发送的数据包的字符总量除以所述设定时长,所述接收速率等于所述接收方在所述设定时长内接收的数据包的字符总量除以所述设定时长。
16.根据权利要求10所述的数据发送装置,其特征在于,还包括:存储单元,用于存储所述丢包率初值和所述丢包率终值。
17.一种电子设备,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行上述权利要求1至9任意一项所述的数据发送方法。
18.一种非临时性计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令被执行时实现如权利要求1至9任一项所述的数据发送方法。
CN201811322897.4A 2018-11-08 2018-11-08 数据发送方法、数据发送装置、电子设备和计算机可读存储介质 Active CN109561356B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811322897.4A CN109561356B (zh) 2018-11-08 2018-11-08 数据发送方法、数据发送装置、电子设备和计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811322897.4A CN109561356B (zh) 2018-11-08 2018-11-08 数据发送方法、数据发送装置、电子设备和计算机可读存储介质

Publications (2)

Publication Number Publication Date
CN109561356A CN109561356A (zh) 2019-04-02
CN109561356B true CN109561356B (zh) 2020-12-18

Family

ID=65866055

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811322897.4A Active CN109561356B (zh) 2018-11-08 2018-11-08 数据发送方法、数据发送装置、电子设备和计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN109561356B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111669340B (zh) * 2020-07-03 2021-06-22 全时云商务服务股份有限公司 发送带宽控制方法、装置、网络设备及可读存储介质
CN114124833A (zh) * 2020-08-26 2022-03-01 华为技术有限公司 一种控制报文发送的方法、网路设备和系统
CN112737884B (zh) * 2020-12-28 2022-11-11 北京达佳互联信息技术有限公司 数据的转发及检测网络性能的方法、相关装置
CN114615164B (zh) * 2022-03-09 2023-12-29 网易(杭州)网络有限公司 丢包率探测方法及装置、存储介质、电子设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005217697A (ja) * 2004-01-29 2005-08-11 Nippon Telegr & Teleph Corp <Ntt> 双方向映像コミュニケーションシステムにおけるフィードバック品質制御方法、端末、およびプログラム
CN101557273A (zh) * 2008-04-11 2009-10-14 傅承鹏 一种同时适用于有线和无线网络的实时流媒体传输的方法
CN103067791A (zh) * 2012-12-11 2013-04-24 深圳市梦网科技发展有限公司 一种网络动态适应监控视频传输方法
CN104022843A (zh) * 2014-04-01 2014-09-03 天津大学 基于长距离无线网络的自适应数据传输速率调整算法
CN104159256A (zh) * 2014-08-29 2014-11-19 大连大学 一种基于延时容忍卫星网络的拥塞控制方法
CN105656602A (zh) * 2015-12-31 2016-06-08 小米科技有限责任公司 数据传输方法及装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120281536A1 (en) * 2009-06-12 2012-11-08 Cygnus Broadband, Inc. Systems and methods for detection for prioritizing and scheduling packets in a communication network
US9609040B2 (en) * 2014-02-21 2017-03-28 Dialogic Corporation Efficient bitrate adaptation in video communications over IP networks

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005217697A (ja) * 2004-01-29 2005-08-11 Nippon Telegr & Teleph Corp <Ntt> 双方向映像コミュニケーションシステムにおけるフィードバック品質制御方法、端末、およびプログラム
CN101557273A (zh) * 2008-04-11 2009-10-14 傅承鹏 一种同时适用于有线和无线网络的实时流媒体传输的方法
CN103067791A (zh) * 2012-12-11 2013-04-24 深圳市梦网科技发展有限公司 一种网络动态适应监控视频传输方法
CN104022843A (zh) * 2014-04-01 2014-09-03 天津大学 基于长距离无线网络的自适应数据传输速率调整算法
CN104159256A (zh) * 2014-08-29 2014-11-19 大连大学 一种基于延时容忍卫星网络的拥塞控制方法
CN105656602A (zh) * 2015-12-31 2016-06-08 小米科技有限责任公司 数据传输方法及装置

Also Published As

Publication number Publication date
CN109561356A (zh) 2019-04-02

Similar Documents

Publication Publication Date Title
CN109474538B (zh) 一种数据传输方法、装置、终端设备及存储介质
CN109561356B (zh) 数据发送方法、数据发送装置、电子设备和计算机可读存储介质
CN109698794B (zh) 一种拥塞控制方法、装置、电子设备及存储介质
CN110120896B (zh) 网络延迟控制方法、装置、电子设备及存储介质
CN109274510B (zh) 消息处理方法、装置、客户端、服务器及存储介质
US10009283B2 (en) Method and device for processing information
CN107743096B (zh) 网络优化方法、装置、终端以及存储介质
CN111654354B (zh) 最大传输单元mtu的探测方法、装置及存储介质
CN111385349B (zh) 通信处理方法、装置、终端、服务器及存储介质
US20220132190A1 (en) Method and apparatus for determining bandwidth, and electronic device and storage medium
CN109565650B (zh) 同步信号块的配置信息的广播、接收方法和装置
WO2018201439A1 (zh) 随机接入方法及装置、用户设备和计算机可读存储介质
CN107087254B (zh) 发包方法、装置和蓝牙低能耗从设备
CN111866720A (zh) 定位方法及装置
CN113965517A (zh) 网络传输方法、装置、电子设备及存储介质
CN110933773B (zh) 链路监测方法及装置
CN107846481B (zh) 账户管理方法及装置
CN107026941B (zh) 未读消息的回复处理方法和装置
CN110719598B (zh) 一种数据传输方法、装置、电子设备及存储介质
CN115002007A (zh) 网络延迟判别方法、装置、电子设备及存储介质
CN110213531B (zh) 监控录像处理方法及装置
CN104618165B (zh) 一种网络评估方法及装置
CN110677470B (zh) 服务信息推送方法、装置及计算机可读存储介质
CN113660513A (zh) 同步播放时间的方法、装置及存储介质
CN108551459B (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
GR01 Patent grant
GR01 Patent grant