CN109428784A - 网络探测方法及装置、计算机存储介质及设备 - Google Patents
网络探测方法及装置、计算机存储介质及设备 Download PDFInfo
- Publication number
- CN109428784A CN109428784A CN201710772928.5A CN201710772928A CN109428784A CN 109428784 A CN109428784 A CN 109428784A CN 201710772928 A CN201710772928 A CN 201710772928A CN 109428784 A CN109428784 A CN 109428784A
- Authority
- CN
- China
- Prior art keywords
- data packet
- sent
- network
- group
- receiving end
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0876—Network utilisation, e.g. volume of load or congestion level
- H04L43/0894—Packet rate
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0823—Errors, e.g. transmission errors
- H04L43/0829—Packet loss
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0852—Delays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0852—Delays
- H04L43/087—Jitter
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/10—Active monitoring, e.g. heartbeat, ping or trace-route
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Health & Medical Sciences (AREA)
- Cardiology (AREA)
- General Health & Medical Sciences (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及一种网络探测方法及装置、计算机存储介质及设备,在发送端设备,接收网络探测触发指令,向接收端标识对应的接收端发送信息包,在接收到接收端响应信息包返回的第一确认信息时,向接收端发送当前待发送数据包对组中的各数据包对,确定当前待发送数据包对组的发送速率,并向接收端发送所述发送速率,接收所述接收端发送的目标网络状态信息。在接收端设备,接收到发送端发送的信息包时,向发送端返回第一确认信息,接收发送端响应第一确认信息发送的当前待发送数据包对组中的各数据包对,接收发送端发送的发送速率,根据发送速率,获取目标网络状态信息,向发送端发送目标网络状态信息。本实施例可减少数据包对的数据量,提高探测速度。
Description
技术领域
本发明涉及计算机信息处理技术领域,特别涉及一种网络探测方法及装置、计算机存储介质及设备。
背景技术
随着互联网技术的发展,越来越多的用户使用视频聊天、视频直播以及视频在线播放等互联网视频应用,用户在通过视频应用观看视频的过程中,要求视频应用能提供流畅以及图像分辨率高的视频,但是一般情况下,由于用户的网络带宽限制,视频应用只能在保证视频流畅的前提下,尽可能的采用相应高分辨率的视频流,视频应用中采用哪一种分辨率的视频流,主要取决于用户的网络带宽环境,因此,探测用户网络状态的技术就成为解决用户需求的一个关键因素。
目前,常采用的网络探测方法是基于包速率探测模型,通过调节序列包的发送速率为基础,采用自诱导拥塞(self-induced congestion)的思想,每次发送一组数据包,先以较小的速率发送一组数据包,再增加发送速率发送一组数据包,如此依次增加发送速率发送一组数据包,由于当发送速率大于或者等于可用带宽时,会出现拥塞的现象,由此可直到发送速率增加到导致网络链路拥塞为止,才能推断出可用带宽。这样需要发送大量的数据包直到网络拥塞,然后计算出可用带宽,实现网络探测,这种网络探测方法需要发送大量的数据包,数据量大,导致整个探测时间长,致使探测效率低。
发明内容
基于此,有必要针对目前网络探测方法网络探测时间长的问题,提出一种网络探测方法及装置、计算机存储介质及设备。
一种网络探测方法,包括以下步骤:
接收网络探测触发指令,所述网络探测触发指令携带接收端标识;
向所述接收端标识对应的接收端发送信息包,所述信息包携带当前待发送数据包对组中的数据包对的数量;
在接收到所述接收端响应所述信息包返回的第一确认信息时,向所述接收端发送所述当前待发送数据包对组中的各数据包对,单个所述待发送数据包对包括第一数据包以及第二数据包;
确定所述当前待发送数据包对组的发送速率,并向所述接收端发送所述发送速率;
接收所述接收端发送的目标网络状态信息。
还提供一种网络探测方法,包括以下步骤:
在接收到发送端发送的携带当前待发送数据包对组中的数据包对的数量的信息包时,向所述发送端返回第一确认信息;
接收所述发送端响应所述第一确认信息发送的所述当前待发送数据包对组中的各数据包对,单个所述待发送数据包对包括第一数据包以及第二数据包;
接收所述发送端发送的发送速率,所述发送速率为所述发送端发送所述当前待发送数据包对组的速率;
根据所述发送速率,获取目标网络状态信息;
向所述发送端发送所述目标网络状态信息。
还提供一种网络探测装置,包括:
指令接收模块,用于接收网络探测触发指令,所述网络探测触发指令携带接收端标识;
信息包发送模块,用于向所述接收端标识对应的接收端发送信息包,所述信息包携带当前待发送数据包对组中的数据包对的数量;
数据包对发送模块,用于在接收到所述接收端响应所述信息包返回的第一确认信息时,向所述接收端发送所述当前待发送数据包对组中的各数据包对,单个所述待发送数据包对包括第一数据包以及第二数据包;
发送速率获取模块,用于确定所述当前待发送数据包对组的发送速率,并向所述接收端发送所述发送速率;
网络信息接收模块,用于接收所述接收端发送的目标网络状态信息。
还提供一种网络探测装置,包括:
信息发送模块,用于在接收到发送端发送的携带当前待发送数据包对组中的数据包对的数量的信息包时,向所述发送端返回第一确认信息;
数据包对接收模块,用于接收所述发送端响应所述第一确认信息发送的所述当前待发送数据包对组中的各数据包对,单个所述待发送数据包对包括第一数据包以及第二数据包;
发送速率接收模块,用于接收所述发送端发送的发送速率,所述发送速率为所述发送端发送所述当前待发送数据包对组的速率;
网络信息获取模块,用于根据所述发送速率,获取目标网络状态信息;
网络信息发送模块,用于向所述发送端发送所述目标网络状态信息。
一种计算机存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述任意一项所述网络探测方法的步骤。
一种计算机设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时上述任意一项所述的网络探测方法。
通过上述网络探测方法及装置、计算机存储介质以及设备,接收网络探测触发指令,可触发网络探测,然后向网络探测触发指令中携带的接收端标识对应的接收端发送信息包,以告知接收端本次发送的一组待发送数据包对中数据包对的数量,在接收到接收端响应信息包返回的第一确认信息后,向接收端发送当前待发送数据包对组,即进行数据包对的发送,再确定当前待发送数据包对组的发送速率,并向接收端发送所述发送速率,以便接收端根据发送速率进行目标网络状态信息的获取,然后,接收所述接收端发送的目标网络状态信息,实现网络的探测,无需进行大量的数据包对发送直到网络拥塞以实现网络探测,减少发送的数据包对的数据量,提高探测速度,从而在网络探测过程中,能快速获知与接收端之间的网络状态。
上述网络探测方法及装置、计算机存储介质以及设备,在接收到发送端发送的携带当前待发送数据包对组中的数据包对的数量的信息包时,向所述发送端返回第一确认信息,以告知发送端已接收到信息包,发送端可进行数据包对的发送,接收所述发送端响应所述第一确认信息发送的当前待发送数据包对组,即进行数据包对的接收,然后接收所述发送端发送的发送速率,以便进行目标网络状态信息的获取,即根据发送速率,获取目标网络状态信息,并发送给发送端,实现网络探测以及将网络探测的结果即目标网络状态信息发送给发送端。如此,无需通过发送大量数据包对直到网络拥塞以实现网络探测,可大量减少数据包对的数据量即可实现网络探测,提高探测速度,从而在网络探测过程中,能快速获知与发送端之间的网络状态。
附图说明
图1为本发明一个实施例的工作环境示意图;
图2为一个实施例中的发送端设备/接收端设备的组成结构示意图;
图3为一个实施例的网络探测方法的流程示意图;
图4为另一个实施例的网络探测方法的流程示意图;
图5为一个实施例的网络探测方法的流程示意图;
图6为另一个实施例的网络探测方法中确定目标网络状态信息的子流程示意图;
图7为一具体实施例的数据包对测量瓶颈带宽模型图;
图8为一具体实施例的各待发送数据包对组发送模型图;
图9为一个实施例的网络探测方法交互示意图;
图10为一个实施例的网络探测装置的模块示意图;
图11为一个实施例的网络探测装置的模块示意图;
图12为另一个实施例的网络探测装置中目标网络状态信息确定模块的子模块示意图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步的详细说明。应当理解,此处所描述的具体实施方式仅仅用以解释本发明,并不限定本发明的保护范围。
图1示出了本发明一个实施例中的工作环境示意图,如图1所示,其工作环境涉及发送端设备10和接收端设备20,发送端设备10和接收端设备20通过网络30连接,发送端设备10与接收端设备20之间可以通过网络30进行通信。网络探测即是对发送端设备10与接收端设备20之间的网络环境进行探测,得到目标网络状态信息。发送端设备10与接收端设备20需要通过网络30进行数据传输时,为了确保两者之间的数据传输质量,需要进行网络探测,探测发送端设备10与接收端设备20之间的网络环境。其中,发送端设备10为网络探测的发起者,如发送端设备10需要向接收端设备20发送数据(例如视频流)时,触发网络探测,且在接收到接收端设备20发送的网络状态信息后进行数据的发送。接收端设备20为在发送端设备10触发网络探测之后,用于在网络探测过程中进行网络状态信息的获取,且是上述数据的接收者。
一个实施例中,发送端设备10在接收到网络探测触发指令后,响应网络探测触发指令,触发网络探测,向对应的接收端设备20发送携带当前待发送数据包对组中的数据包对的数量的信息包,接收端设备20在接收到发送端设备10发送的信息包后返回第一确认信息至发送端设备10,发送端设备10在接收到第一确认信息后,向接收端设备20发送当前待发送数据包对组中的各数据包对,当前待发送数据包对组发送完毕后,确定当前待发送数据包对组的发送速率,并向接收端设备20发送该发送速率,接收端设备20在接收到数据包对后,根据接收到发送速率,可获取目标网络状态信息,并发送给发送端设备10,实现网络探测的过程。
该发送端设备10和接收端设备20分别可以是任何一种能够实现智能输入输出以及网络探测的设备,如台式电脑或移动终端,移动终端可以是智能手机、平板电脑、车载电脑、穿戴式智能设备等。一个实施例中的网络探测触发指令可以包括视频开启指令,视频开启指令可以是视频聊天开启指令或者视频直播开启指令。其中,发送端设备10可以为客户端设备,接收端设备20也可以为客户端设备,如此,发送端设备10与接收端设备20之间可进行视频聊天,此时,发送端设备10接收的视频开启指令可以是视频聊天开启指令,通过在发送端设备10上的操作产生视频聊天开启指令,发送端设备10接收该视频聊天开启指令后,即可触发聊天视频传输之前的网络探测,向接收端设备20发送信息包从而执行后续的处理。另一方面,发送端设备10可以是服务器设备,接收端设备10可以是如上述的客户端设备,接收端设备20可直播观看发送端设备10上的视频,此时,发送端设备10接收的视频开启指令可以是从接收端设备20接收到的视频直播开启指令。接收端设备20在需要进行视频直播时,可通过在接收端设备20上的操作产生视频直播开启指令,并发送到发送端设备10,发送端设备10从接收端设备20接收到视频直播开启指令后,向接收端设备20发送信息包从而执行后续的处理,接收端设备20可以为一个或多个。本实施例涉及在发送端设备10进行网络探测的方案以及在接收端设备20进行网络探测的方案。
发送端设备10/接收端设备20在一个实施例中的内部结构图如图2所示。该发送端设备10/接收端设备20包括通过系统总线连接的处理器、存储介质、网络接口和内存。其中,发送端设备10/接收端设备20的存储介质存储有操作系统和计算机可读指令,该计算机可读指令在被处理器执行时,可使得处理器实现一种网络探测方法。发送端设备10/接收端设备20的处理器用于提供计算和控制能力,支撑整个发送端设备10/接收端设备20的运行。发送端设备10/接收端设备20的内存中可储存有计算机可读指令,该计算机可读指令被处理器执行时,可使得处理器执行一种网络探测方法。发送端设备10/接收端设备20的网络接口用于与网络30连接和通信。
以进行网络探测的目的是为了发送视频流数据、以网络探测触发指令是视频开启指令为例,以下就相关实施例的网络探测方法及装置进行说明。
图4提供了一个实施例的网络探测方法,该方法应用于发送端(对应发送端设备10),包括步骤S310-步骤S350。
S310:接收视频开启指令,视频开启指令携带接收端标识。
视频开启指令是用于开启视频的指令,在其中一个示例中,视频开启指令可以是视频聊天开启指令,用于开启视频聊天的指令,例如,发送端需要和接收端进行聊天时,发送端基于在发送端上的相关操作产生视频聊天开启指令(如在发送端用户对发送端屏幕上的视频聊天虚拟按钮进行触摸操作时,在发送端产生视频聊天开启指令),发送端接收到该视频聊天开启指令后,响应该视频聊天开启指令,开启与视频开启指令携带的接收端标识对应的接收端进行视频聊天。为了提高视频聊天质量,在进行视频聊天之前,即发送视频流之前,需要对发送端与接收端之间的网络情况进行探测,以便于根据探测的网络情况进行视频流的发送,实现发送端和接收端之间的视频聊天。
在另一个示例中,视频开启指令可以是用于开启视频直播的视频直播开启指令,例如,接收端需要直播发送端上的视频流,则可基于在接收端上的相应的操作产生视频直播开启指令(如在接收端用户对接收端屏幕上的视频播放虚拟按钮进行触摸操作时,在接收端产生视频直播开启指令),并将该视频直播开启指令发送给发送端,发送端接收并响应该视频直播开启指令,将视频流发送到视频直播开启指令携带的接收端标识对应的接收端,接收端可播放该视频流,即在接收端上可实现视频直播。为了提高视频直播质量,在进行视频直播前,即发送端向接收端发送视频流之前,需要对发送端与接收端之间的网络情况进行探测,以根据探测的网络情况进行视频流的发送,实现视频直播。
S320:向接收端标识对应的接收端发送信息包。
发送端在接收到视频开启指令后,表示发送端需要开启视频,可以开启视频聊天或视频直播,则需要进行网络探测,在本实施例的网络探测方案中,首先向接收端标识对应的接收端发送信息包,信息包携带当前待发送数据包对组中的数据包对的数量,向接收端发送信息包,一方面告知接收端需要开始进行网络探测,另一方面告知接收端本次网路探测发送的当前待发送数据包对组中的数据包对的数量。
S330:在接收到接收端响应信息包返回的第一确认信息时,向接收端发送当前待发送数据包对组中的各数据包对。
接收端在接收到信息包之后,向发送端返回一个第一确认信息,以表示接收端已收到信息包,以确认可以发送数据包对进行网络探测。发送端在接收到接收端返回的第一确认信息时,向接收端发送当前待发送数据包对组中的各数据包对,即开始发送数据包对进行网络探测。其中,单个待发送数据包对包括第一数据包以及第二数据包。
S340:确定当前待发送数据包对组的发送速率,并向接收端发送该发送速率。
发送端在发送前待发送数据包对组的各数据包对时,网络情况会对发送的速率有影响,从而为了探测网络情况,在当前待发送数据包对组的各数据包对发送完毕后,需要确定当前待发送数据包对组的发送速率,并向接收端发送该发送速率。在本实施例中,确定当前待发送数据包对组的发送速率时,可以根据当前待发送数据包对组中各数据包对的总发送时间以及总数据大小确定。
S350:接收所述接收端发送的目标网络状态信息。
接收端在接收到发送端发送的发送速率后,利用发送速率进行目标网络状态信息的获取并发送给发送端,发送端即可接收到接收端发送的目标网络状态信息,从而完成网络探测过程。其中,目标网络状态信息为反映网络情况的信息,接收端通过获取目标网络状态信息并发送给发送端,发送端接收目标网络状态信息,实现网络的探测。
通过上述网络探测方法,在接收到网络探测触发指令时触发网络探测,并向网络探测触发指令中携带的接收端标识对应的接收端发送信息包,以告知接收端本次发送的一组待发送数据包对中数据包对的数量,在接收到接收端响应信息包返回的第一确认信息后,进行数据包对的发送,确定发送当前待发送数据包对组的发送速率,并向接收端发送该发送速率,以便接收端根据发送速率进行目标网络状态信息的获取,并接收所述接收端发送的目标网络状态信息,实现网络的探测。该网络探测方案无需进行发送大量的数据包至网络拥塞,即可实现网络探测,减少发送的数据包对的数据量,提高探测速度,从而能快速获知与接收端之间的网络状态。
在其中一个实施例中,上述网络状态信息为接收端根据发送速率获取的。具体地,上述网络状态信息为接收端根据确定的接收数据包对的接收速率、上述发送速率、第一数据包或第二数据包的数据大小以及第一数据包和第二数据包之间的接收时间间隔确定。
一个实施例中,向接收端发送该发送速率的步骤之后,接收所述接收端发送的目标网络状态信息的步骤之前,还包括:接收所述接收端响应发送速率返回的第二确认信息;根据接收到第二确认信息的时间与发送所述发送速率的时间,确定网络延时。
由于网络延时在一定程度上可反映网络的拥堵情况,若网络发生拥堵,接收端接收发送速率所需时间长,发送端接收第二确认信息所需时间长,从而网络延时就较长,因此可以通过网络延时探测网络情况。在发送端,可根据接收到第二确认信息的时间与发送所述发送速率的时间确定网络延时。具体地,将第二确认信息的时间与发送所述发送速率的时间之间的时间差作为网络延时。
请参阅图4,在其中一个实施例中,待发送数据包对组的数量为至少两组。
在本实施例中,向接收端发送该发送速率的步骤之后,接收所述接收端发送的目标网络状态信息的步骤之前,还包括步骤:
S360:将下一个待发送数据包对组作为当前待发送数据包对组,返回向接收端标识对应的接收端发送信息包的步骤S320,直到各待发送数据包对组发送完毕。
为了提高网络探测的准确性,即提高目标网络状态信息的准确性,待发送数据包对组的数量为至少两组,即在当前待发送数据包对组中的各数据包对发送完毕后,可进行下一个待发送数据包对组的发送,直到所有的待发送数据包对组中的各数据包对发送完毕。每发送完一个待发送数据包对组中的各数据包对之后,进行一次发送速率的计算,并将发送速速发送至接收端,如此,接收端根据各待发送数据包对组对应的发送速率,获取目标网络状态信息,从而避免发送单个数据包对组的各数据包对进行网络探测面临的偶然性,通过发送至少两组的待发送数据包对组进行网络探测,提高网络探测过程中获取的目标网络状态信息的准确性,从而提高网络探测的准确性。具体地,接收端根据接收各待发送数据包对组的情况以及各待发送数据包对组对应的发送速率,获取目标状态信息,其中,目标网络状态信息为各当前待发送数据包对组分别对应的初始网络状态信息的平均值,初始网络状态信息为单个待发送数据包对组对应的目标网络状态信息。
进一步地,上述将下一个待发送数据包对组作为当前待发送数据包对组在上述确定网络延时之后,即每发送一个当前待发送数据包对组之后,需要确定一次网络延时,即确定单个待发送数据包对组对应的网络延时,待发送数据包对组至少两组,确定的网络延时为各待发送数据包对组分别对应的网络延时的平均值,提高网络延时的准确性,从而提高网络探测的准确性。
在其中一个实施例中,目标网络状态信息包括可用带宽以及丢包率。
一条网络链路的可用带宽(Available Bandwidth)通常指的是在一段时间内,该网络链路未被使用的或者空闲的带宽。该网络链路的可用带宽是随背景流量动态变化的,并且以该网络链路的瓶颈带宽为上界。瓶颈带宽(Bottleneck Bandwidth)指的是瓶颈链路在没有竞争背景流的情况下最大能达到的数据传输速率,瓶颈带宽是网络状态中非常重要的测量对象。网络中的节点或路径通常都是共用的,对于某个网络应用而言,与其共享网络带宽资源的其他网络数据流量可称为“竞争背景流”(Cross Traffic)。丢包率是指丢失的数据包的数量占所发送的数据包的数据量的比率,在本实施例中,丢包率为接收端接收到的数据包的数量占发送端发送的数据包的数量的比率,发送的数据包的数量为发送的数据包对的数量的两倍。
可用带宽为接收端根据背景带宽以及瓶颈带宽获取,丢包率为接收端根据接收数量以及当前待发送数据包对组中待发送数据包对的数量获取,接收数量为接收到的数据包对的数量,瓶颈带宽为接收端根据第一数据包或第二数据包的数据大小、以及接收时间间隔获取,接收时间间隔为分别接收完第一数据包和第二数据包之间的时间差,背景带宽为接收端根据发送速率以及接收速率获取。
在其中一个实施例中,当前待发送数据包对组中的各数据包对之间间隔预设时间发送,单个待发送数据包对中的第一数据包与第二数据包之间连续发送。
上述信息包还携带信息包的发送时间信息、以及数据包对之间的发送间隔时间即上述预设时间,发送端在发送当前待发送数据包对组中的各数据包对时,各数据包对之间是间隔预设时间发送,从而减少一次性发送的数据量,可以避免给网络带来拥堵。另外,为了提高发送效率,提高网络探测效率,单个待发送数据包对中的第一数据包与第二数据包之间连续发送,即每个数据包对内的两个数据包之间发送时,没有空闲时间间隔,发送时是紧接着的,以提高发送效率,且第一数据包与第二数据包中分别携带的是序号信息以及数据包发送时间信息,数据量较小,连续发送也不会对网络带来拥堵。而且第一数据包与第二数据包连续发送,也可以更便于接收端计算接收第一数据包和第二数据包的延时。
在其中一个实施例中,第一数据包与第二数据包的数据大小相同。进一步地,当前待发送数据包对组中的各数据包对的数据大小相同。更进一步地,各待发送数据包对组中分别对应的数据包对的数据大小不同,发送端在进行待发送数据包对组的各数据包对发送时,可根据数据包对的数据大小从小到大的顺序进行发送。
在其中一个实施例中,在接收到接收端发送的目标网络状态信息的步骤之后,还可以包括:根据目标网络状态信息以及网络延时,确定对应的视频流;向接收端发送视频流。
发送端在接收到接收端发送的目标网络状态信息后,即实现了网络探测,目标网络状态信息即为网络探测结果,然后可向接收端发送视频流。由于网络情况可影响视频流的传输,影响流畅度,为了让视频流发送更流畅以及画面尽可能的清晰,可以根据网络探测结果来确定待发送的视频流,即确定发送哪种等级的视频流。由于网络延时也能在一定程度上反映网络情况,因此,在本实施例中,根据目标网络状态信息以及网络延时,确定对应的视频流,即确定的视频流是和网络状态信息以及网络延时对应的,和网络情况相适应,能使视频更加流畅地发送,接收端播放该视频流更加流畅。另外,清晰度越高的视频流传输时对网络要求更高,由于已经探测了网络情况,上述视频流是根据网络情况确定的,因此确定的视频流的清晰度是与网络情况相适应的,从而既能满足视频流的流畅性的需求,又能尽可能地确保视频流的清晰度。
在其中一个实施例中,目标网络状态信息包括可用带宽以及丢包率。
此时,根据目标网络状态信息以及网络延时,确定对应的视频流的步骤可以包括:
根据目标网络状态信息中可用带宽确定对应的视频流码率;
根据视频流码率、目标网络状态信息中丢包率以及网络延时,确定对应的视频流。
其中,通过可用带宽确定视频流码率,根据视频流码率即可确定视频流的等级。为了进一步确保视频流能在网络中流程传输,还根据丢包率以及网络延时的情况进一步确定视频流。如:若可用带宽较大,则确定的视频流码率较高,可确定的视频流的等级较高,即可发送清晰度较高的视频流;但是网络探测中的丢包率大或网络延时较长时,为了确保视频流流畅传输,就需要降低视频流的等级。即在确定视频流的过程中,需先保证视频流能流畅传输,再确保视频流的分辨率(视频流的画面清晰度),因此,综合视频流码率、目标网络状态信息中丢包率以及网络延时的情况,确定对应的视频流,可以在确保流畅传输的同时确保画面清晰度。
请参阅图5,本发明还提供一种网络探测方法,应用于接收端(对应接收端设备20),包括步骤S510-S550:
S510:在接收到发送端发送的携带当前待发送数据包对组中的数据包对的数量的信息包时,向发送端返回第一确认信息。
接收端在接收到发送端发送的上述信息包后,回复第一确认信息,以向发送端确认已接收到了信息包。
S520:接收发送端响应第一确认信息发送的当前待发送数据包对组中的各数据包对。
发送端接收到第一确认信息后,开始当前待发送数据包对组中各数据包对的发送,接收端接收发送端发送的当前待发送数据包对组中的各数据包对,其中,单个待发送数据包对包括第一数据包以及第二数据包。
S530:接收发送端发送的发送速率,发送速率为发送端发送当前待发送数据包对组的速率。
发送端在当前待发送数据包对组中各数据包对发送完毕后,会进行当前待发送数据包对组的发送速率的确定,并将发送速率发送至接收端。
S540:根据发送速率,获取目标网络状态信息。
S550:向发送端发送目标网络状态信息。
接收端接收发送端的发送速率后,可进行目标网络状态信息的获取,目标网络状态信息为反映网络情况的信息,将其发送至发送端,实现网络探测。
通过上述网络探测方法,在接收到发送端发送的携带当前待发送数据包对组中的数据包对的数量的信息包时,向发送端返回第一确认信息,以告知发送端已接收到信息包,然后接收发送端响应第一确认信息发送的当前待发送数据包对组,即进行数据包对的接收,并接收发送端发送的发送速率,以进行目标网络状态信息的获取,即根据发送速率,获取目标网络状态信息,并发送给发送端,实现网络探测并将网络探测的结果即目标网络状态信息发送给发送端。如此,无需通过发送大量数据包至网络拥塞即可实现网络探测,可大量减少数据包对的数据量,提高探测速度,在网络探测过程中能快速获知与发送端之间的网络状态。
在其中一个实施例中,上述根据发送速率,获取目标网络状态信息的步骤包括:确定接收数据包对的接收速率;根据发送速率、第一数据包或第二数据包的数据大小、第一数据包和第二数据包之间的接收时间间隔以及接收速率,确定目标网络状态信息。
在接收端,可接收发送端发送的数据包对,从而可确定接收数据包对的接收速率,由于发送端发送第一数据包和第二数据包有时间先后,接收端接收第一数据包和第二数据包有时间差,在本实施例中,根据发送速率、第一数据包或第二数据包的数据大小、第一数据包和第二数据包之间的接收时间间隔以及接收速率,确定目标网络状态信息。可以理解,即使第一数据包和第二数据包连续发送,也存在先后顺序,在第一数据包先发,第二数据包紧接着第一数据包发送,在接收端,接收完第一数据包到接收完第二数据包之间有个时间间隔,由于第二数据包是后接收的,此时,可采用第二数据包的数据大小作为确定目标网络状态信息确定的依据。
请参阅图6,在其中一个实施例中,目标网络状态信息包括可用带宽以及丢包率。
上述确定目标网络状态信息的方式包括:
S610:根据第一数据包或第二数据包的数据大小、以及接收时间间隔获取瓶颈带宽。
瓶颈带宽为瓶颈链路在没有竞争背景流的情况下最大能达到的数据传输速率,在本实施例中,根据第根据接收第一数据包、第二数据包时后接收到的数据包的数据大小(即一数据包或第二数据包的数据大小)、以及接收时间间隔获取瓶颈带宽,接收时间间隔为分别接收完第一数据包和第二数据包之间的时间差。其中,第一数据包后接收,以第一数据包为依据,第二数据包后接收,以第二数据包为依据。具体地,将第一数据包或第二数据包的数据大小与接收时间间隔的比值作为瓶颈带宽。
在本实施例中,第一数据包与第二数据包的数据大小相同,如此,在进行瓶颈带宽的获取时,可任意采用其中一个数据包的数据作为依据,便于瓶颈带宽的获取。
S620:根据发送速率以及接收速率获取背景带宽。
背景带宽为竞争背景流占用的带宽,通过对比发送速率以及接收速率的大小,以及根据背景带宽与发送速率以及接收速率的关系,可确定背景带宽。
S630:根据背景带宽以及瓶颈带宽获取可用带宽。
瓶颈带宽为背景带宽与可用带宽之和,从而,在获取背景带宽以及瓶颈带宽后,可获取可用带宽。
S640:根据接收数量以及当前待发送数据包对组中待发送数据包对的数量获取丢包率。
其中,接收数量为接收到的数据包的数量。丢包率为接收到的数据包的数量占当前待发送数据包对组中待发送数据包对的数量的两倍(发送端发送的数据包的数量)的比率。
在其中一个实施例中,接收发送端发送的发送速率的步骤之后,还包括:
响应发送速率,向接收端发送第二确认信息。
在接收到发送端发送的发送速率之后,返回第二确认信息至发送端,以告知发送端已收到发送速率,也便于发送端根据接收到第二确认信息的时间计算网络延时。
在其中一个实施例中,待发送数据包对组的数量为至少两组;目标网络状态信息为各当前待发送数据包对组分别对应的初始网络状态信息的平均值,其中,初始网络状态信息为单个待发送数据包对组对应的目标网络状态信息。
由于待发送数据包对组的数量为至少两组,则在接收端需要根据接收发送端发送的每个待发送数据包对组的各数据包对的情况分别进行一次初始网络状态信息的计算,目标网络状态信息为各当前待发送数据包对组分别对应的初始网络状态信息的平均值。即,当只有一个待发送数据包对组时,接收端获取的目标网络状态信息即为上述一个待发送数据包对组对应的初始网络状态信息,若待发送数据包对组的数量大于或等于两组,每个待发送数据包对组的各数据包对发送后,接收端都会对应获取一次初始网络状态信息,从而获取初始网络状态信息的次数与待发送数据包对组的数量相同,然后,可将各初始网络状态信息的平均值作为目标网络状态信息。
例如,有三组待发送数据包对组,分别为A组、B组和C组,各待发送数据包对组中分别包括至少一个数据包对。发送端首先针对A组发送信息包至接收端,在接收到接收端返回的第一确认信息后,将A组中的各数据包对发送给接收端,发送端会发送A组对应的发送速率至接收端,接收端针对A组的各数据包对以及发送速率,可获取A组对应的初始网络状态信息。发送端将A组中的各数据包对发送后,再针对B组发送信息包至接收端,据此进行B组的各数据包对发送,且将B组的发送速率发送至接收端,接收端针对B组的各数据包对以及发送速率,可获取B组对应的初始网络状态信息。随后,发送端将B组中的各数据包对发送后,再针对C组发送信息包至接收端,据此进行C组的各数据包对发送,且将C组的发送速率发送至接收端,接收端针对C组的各数据包对以及发送速率,可获取C组对应的初始网络状态信息。如此,接收端进行三次初始网络状态信息的获取,然后将三次获取的初始网络状态信息求均值即可获得目标网络状态信息,并将其发送至接收端。
在其中一个实施例中,向发送端发送目标网络状态信息的步骤之后,还包括:
接收发送端发送的视频流,其中,视频流为发送端根据目标网络状态信息以及网络延时确定的。
向发送端发送目标网络状态信息,发送端接收目标网络状态信息,实现网络探测,然后可进行视频流的确定,发送端根据目标网络状态信息以及网络延时确定好视频流之后,可将视频流发送给接收端,接收端接收发送端发送的视频流,可对视频流进行播放。
在其中一个实施例中,目标网络状态信息包括可用带宽以及丢包率。
此时,视频流可以是由发送端根据目标网络状态信息中可用带宽确定的视频流码率、目标网络状态信息中丢包率以及网络延时确定。
发送给发送端的目标网络状态信息包括可用带宽以及丢包率,发送端在接收到目标网络状态信息之后,可根据目标网络状态信息中可用带宽确定视频流码率,再根据视频流码率、目标网络状态信息中丢包率以及网络延时确定对应的视频流,然后发送给接收端,接收端接收视频流后即可播放视频流。
下面以一具体实施例对上述应用于发送端的网络探测方法以及应用于接收端的网络探测方法的过程加以具体说明。
具体地,构建若干组(例如,3-5组)固定长度的待发送数据包对组,每个待发送数据包对组中数据包对的数量可以选择多个(如10个),对于任意一组待发送数据包对组而言,同一组中的数据包对的数据大小相同,各待发送数据包对组中的数据包对的数据大小可以相同,也可以是递增的(例如:第一待发送数据包对组中的数据包对大小都是256字节,第二待发送数据包对组中的数据包对大小都是512字节,第三待发送数据包对组中的数据包对大小都是768字节)。每个数据包对中都有唯一的序号信息和数据包对的发送时间信息,每个数据包对由两个相同大小的数据包组成。
从发送端与接收端的整体出发,具体的网络探测策略为:
(1)发送端在发送每个待发送数据包对组中的数据包对之前,先发送一个信息包(该信息包可携带有发送端发送信息包的发送时间信息、和待发送数据包对组中各数据包对的数量、待发送数据包对组中数据包对之间的发送间隔时间),接收端在接收到该信息包,立刻回传第一确认信息;
(2)发送端接收到第一确认信息后,以预设时间间隔发送一组包数据大小较小的数据包对;
(3)每个数据包对之间都采用相同的预设时间间隔,并且每个数据包对内的两个数据包连续发送,没有空闲时间间隔,发送是紧接着的;
(4)每组待发送数据包对发送完后,发送端都会计算发送速率,并把该组对应的发送速率发送给接收端;
(5)接收端接收到发送速率后,会依据该组数据包对的接收情况以及发送速率计算初始网络状态信息;
(6)然后发送下一个待发送数据包对组之前的信息包,接收端接收后立刻回传第一确认信息。
(7)以预设时间间隔发送一组包数据大小稍大的数据包对。
(8)以此类推,发送3到5组数据包对后,接收端再进一步对各组数据包对对应的初始网络状态信息平均,获得目标网络状态信息,并把目标网络状态信息反馈给发送端。
如此,能够较准确地探测网络状态信息,能够适应较复杂的网络环境,且探测时间较短,一般1-2秒即可,探测过程中,数据包对数据量较小,不会对网络负载产生压力。另外,探测得到的网络情况比较全面,比如可探测到瓶颈带宽、背景竞争带宽、可用带宽、网络时延以及丢包率等,能够很好地满足手机用户互联网视频应用的需求。
在接收端获取目标网络状态信息时,首先会计算瓶颈带宽,数据包对测量瓶颈带宽模型如图7所示,具体的原理如下:
为了分析和描述方便,对下面网络探测交互过程中获取目标状态信息以及网络延时过程中用到的常量做定义如下:
Ci:为第i跳网络链路的带宽(i可以为1和3)。
C:为瓶颈带宽(即图8中C2)。
Ba:为端到端路径的可用带宽。
Bc:为端到端路径的竞争背景流占用的带宽,即背景带宽。
L:为单个数据包对的长度。
Gi:为发送端发送数据包对的预设时间间隔。
G0:为接收端接收数据包对时的接收时间间隔。
Ri:接收速率。
R0:发送速率。
数据包对是两个相同大小的数据包组合在一起,在同一数据包对组中数据包对使用同一个组的序列编号,但是数据包对组中数据包区分为A和B。例如,发送端发送数据包对时,先发送包A,紧接着再发送包B,包A和B之间没有空闲时间间隔,使得在瓶颈链路处两个数据包首尾相接,两数据包散开的时间间隔等于后发送的数据包在瓶颈链路的传输时间。
两个背靠背(没有时间间隔)连续发送的数据包通过瓶颈链路后,接收到的两数据包之间的时间间隔将保持它们在瓶颈链路上的时间间隔:其中P是包对中单个数据包大小,C是瓶颈带宽,ΔT2为数据包A与数据包B在瓶颈链路上的时间间隔,ΔT3为接收完数据包A和接收完数据包B之间的接收时间间隔,从而估计瓶颈带宽为:瓶颈带宽计算时,数据流量小,探测快速且测量准确度较高,通过采用发送“探测包对”序列(多组待发送数据包对组)的方式,根据每个待发送数据包对组计算出对应的瓶颈带宽,再通过求取所有待发送数据包对组分别对应的瓶颈带宽的平均值的方式获得较稳定的瓶颈带宽。其中,各待发送数据包对组发送模型如图8所示,数据包对内部的两个数据包之间没有空闲时间间隔,但是数据包对之间有相同的时间间隔,其中,τ为发送数据包对时数据包对之间的预设时间间隔,T为发送一待发送数据包对组所需的时间。
然后,发送端根据发送数据包对的总数据大小和总发送时间,计算发送速率,接收端根据接收数据包对的总数据大小和总接收时间,计算接收速率。
其次,根据发送速率以及接收速率,计算背景带宽Bc,公式如下:
再次,根据背景带宽和瓶颈带宽计算出可用带宽Ba,公式如下:
Ba=C-Bc。
最后,获取丢包率。
网络探测交互过程如图9所示,网络探测具体过程如下:
(1)发送端接收视频开启指令:用户开始互联网视频应用时,视频应用客户端会首先开始探测用户的网络状态信息。
(2)发送端响应视频开启指令,发送一个信息包给接收端。
(3)接收端接收信息包,向发送端返回第一确认信息。
(4)发送端接收第一确认信息,向接收端发送当前待发送数据包对组中各数据包对,当前待发送数据包对组中各数据包对发送完毕后计算发送速率。其中,当前待发送数据包对组中每个数据包对的大小都相同,并且数据包对中第一数据包和第二数据包数据大小相同。每个数据包对都按照顺序编号即对应位移的序列信息,并且每个数据包对中的上述两个数据(即第一数据包和第二数据包)包共用一个包对序号、但是不同数据包也有序号信息,例如,会做包A和包B的区分。每个数据包对之间都采用相同的预设时间间隔发送,并且每个数据包对中的两个数据包之间发送时,没有空闲时间间隔,即发送时是紧接着的。
(5)向接收端发送上述发送速率。
(6)接收端接收当前待发送数据包对组对应的发送速率,返回第二确认信息至发送端。
(7)发送端可根据接收到第二确认信息的时间与发送所述发送速率的时间计算当前待发送数据包对组对应的单个网络时延。
(8)接收端接收当前待发送数据包对组中数据包对:记录每个数据包对中两个数据包的接收时间间隔、每个数据包对的间隔信息,并解析数据包的大小、解析每个数据包对的编号信息等。
(9)获取当前待发送数据包对组对应的初始网络状态信息(包括可用带宽和丢包率):
(9.1)获取当前待发送数据包对组对应的瓶颈带宽:根据当前待发送数据包对组中每个数据包对中两个数据包的接收时间间隔和每个数据包的数据大小,计算出每个数据包对对应的单个瓶颈带宽,再将各数据包对分别对应的单个瓶颈带宽的平均值作为当前待发送数据包对组对应的瓶颈带宽,获得的瓶颈带宽较稳定。
(9.2)确定当前待发送数据包对组对应的接收速率:接收端根据接收到的数据包对的总数据大小以及总接收时间,计算接收速率。
(9.3)获取当前待发送数据包对组对应的可用带宽:接收端根据发送速率和接受速率获取背景带宽,根据背景带宽以及瓶颈带宽计算出可用带宽。
(9.4)获取当前待发送数据包对组对应的丢包率:接收端通过接收到的数据包情况可以计算丢包率。
为了提高网络探测准确性,在发送端可发送至少两组的待发送数据包对,即在上述当前待发送数据包对发送完毕后,将下一待发送数据包对组作为当前待发送数据包对组,返回(2)进行下一数据包对组的发送,直到各待发送数据包对组发送完毕。每个待发送数据包对组对应单个网络延时,通过将各待发送数据包对组发送完毕后,可通过各待发送数据包对组分别对应的单个网络延时的均值作为网络延时。
对应地,在接收端,接收至少两组的待发送数据包对,上述(9)中获取的是当前待发送数据包对组对应的初始网络状态信息,则接收端每接收端到一组待发送数据包对,进行一次初始网络状态信息的计算,获得的初始网络状态信息的数量与待发送数据包对的组数相同。
(10)根据各待发送数据包对组分别对应的初始网络状态信息获取目标网络状态信息:各待发送数据包对组均发送完毕,接收端对各待发送数据包对组接收完毕后,对各待发送数据包对组分别对应的初始网络状态信息计算完毕后,将各待发送数据包对组分别对应的各初始网络状态信息的平均值作为目标网络状态信息(可用带宽和丢包率)。
(11)将目标网络状态信息发送给发送端。
(12)接收端接收目标网络状态信息。
(13)发送端根据目标网络状态信息、丢包率以及网络延时,确定对应的视频流。
(14)将上述确定的视频流发送给接收端。
(15)接收端接收视频流:接收端可对视频流进行播放,即为用户提供对应的视频流,满足用户的视频应用需求。
上述整个网络探测过程仅仅需要1—2秒的时间,实现了针对用户视频应用场景的快速准确的探测用户网络状态信息的功能。
为验证本实施例的网络探测方法的有效性,在不同场景下进行了对比实验,以下表格为对比实验结果。
表1无竞争丢包场景下传统探测方法的探测结果
表2无竞争丢包场景下本实施的探测方法的探测结果
对比表1、表2中的实验结果可以看出,在丢包场景下,本实施例的探测方法对于瓶颈带宽的测量准确度和稳定性相较于传统方式有明显的提升。在估计可用带宽和场景类型方面,本实施例的探测方法具有不错的抗丢包性能,并且探测的信息更全面。其中,抖动值为各待发送数据包对组分别对应的网络延时中最大网络延时与最小网络延时之间的差。
表3无竞争时延场景下传统探测方法的探测结果
表4无竞争时延场景下本实施例的探测方法的探测结果
表3、表4的实验数据表明,本实施例的探测方法具有较好的抗时延能力,
并且在探测带宽期间能够很好地计算网络时延变化情况,探测的信息更全面。
表5无竞争抖动场景下传统探测方法的探测结果
表6无竞争抖动场景下本实施例的探测方法的探测结果
表5、表6的实验数据表明,本实施例的方案能够更好地适应大的抖动场景,
能够较准确地估计瓶颈带宽和可用带宽,探测的信息更全面。
表7竞争场景下本实施例的探测方法的探测结果
表7的实验数据表明,在存在竞争背景流(例如,TCP背景流)的情况下,
本实施例的探测方法能够较准确地估计瓶颈带宽和可用带宽,并且准确探测出
其他的网络信息。
通过以上的模拟实验场景测试数据,本实施例能够更好地适应用户复杂的
网络环境,探测所需要的数据量较小,能够快速计算出网络状态信息,能够准确地探测出较全面的网络状态信息,能够更好地满足用户的视频应用需求。
上述实施例中是以网络探测触发指令为视频开启指令、从而触发视频流发送之前的网络探测为例进行说明,可以理解,上述网络探测触发指令还可以包括携带接收端标识的信息开启指令,以触发信息传输之前的网路探测,例如,信息可以是文本文件以及图片等,发送端和接收端之间可进行这些信息的传输,在传输之前进行网络的探测,即发送端在接收到信息开启指令后,触发网络探测,网
络探测完后,发送端根据网络探测结果可选择与网络探测结果对应的文本文件或图片进行传输,提高传输效率。
请参阅图10,提供一个实施例的网络探测装置,应用于发送端,包括:
指令接收模块110,用于网络探测触发指令,所述网络探测触发指令携带接收端标识;
信息包发送模块120,用于向接收端标识对应的接收端发送信息包,信息包携带当前待发送数据包对组中的数据包对的数量;
数据包对发送模块130,用于在接收到接收端响应信息包返回的第一确认信息时,向接收端发送当前待发送数据包对组中的各数据包对,单个待发送数据包对包括第一数据包以及第二数据包;
发送速率获取模块140,用于确定当前待发送数据包对组的发送速率,并向接收端发送该发送速率;
网络信息接收模块150,用于接收所述接收端发送的目标网络状态信息。
在其中一个实施例中,上述网络探测装置,还包括:确认信息接收模块和网络延时获取模块。
确认信息接收模块,用于接收所述接收端响应发送速率返回的第二确认信息;
网络延时获取模块,用于根据接收到第二确认信息的时间与发送所述发送速率的时间,确定网络延时。
在其中一个实施例中,待发送数据包对组的数量为至少两组;
在本实施例中,上述装置还包括:设置模块。
设置模块,用于将下一个待发送数据包对组作为当前待发送数据包对组,返回信息包发送模块执行向接收端标识对应的接收端发送信息包,直到各待发送数据包对组发送完毕。
在其中一个实施例中,目标网络状态信息包括可用带宽以及丢包率。
在其中一个实施例中,数据包对发送模块用于向接收端间隔预设时间发送当前待发送数据包对组中的各数据包对,连续发送单个待发送数据包对中的第一数据包与第二数据包。
在其中一个实施例中,所述网络探测触发指令包括视频开启指令,此时上述网络探测装置,还包括:
视频流获取模块,用于根据目标网络状态信息以及网络延时,确定对应的视频流;
视频流发送模块,用于向接收端发送视频流。
在其中一个实施例中,目标网络状态信息包括可用带宽以及丢包率;
视频流获取模块包括:
视频流码率确定模块,用于根据目标网络状态信息中可用带宽确定对应的视频流码率;
视频流确定模块,用于根据视频流码率、目标网络状态信息中丢包率以及网络延时,确定对应的视频流。
请参阅图11,提供一个实施例的网络探测装置,应用于接收端,包括:
信息发送模块210,用于在接收到发送端发送的携带当前待发送数据包对组中的数据包对的数量的信息包时,向发送端返回第一确认信息;
数据包对接收模块220,用于接收发送端响应第一确认信息发送的当前待发送数据包对组中的各数据包对,单个待发送数据包对包括第一数据包以及第二数据包;
发送速率接收模块230,用于接收发送端发送的发送速率,发送速率为发送端发送当前待发送数据包对组的速率;
网络信息获取模块240,用于根据发送速率,获取目标网络状态信息;
网络信息发送模块250,用于向发送端发送目标网络状态信息。
在其中一个实施例中,网络信息获取模块包括:接收速率确定模块和目标网络状态信息确定模块。
接收速率确定模块,用于确定接收数据包对的接收速率;
目标网络状态信息确定模块,用于根据发送速率、第一数据包或第二数据包的数据大小、第一数据包和第二数据包之间的接收时间间隔以及接收速率,确定目标网络状态信息。
在其中一个实施例中,上述网络探测装置,还包括:
速率响应模块,用于响应发送速率,向接收端发送第二确认信息。
在其中一个实施例中,待发送数据包对组的数量为至少两组;目标网络状态信息为各当前待发送数据包对组分别对应的初始网络状态信息的平均值,其中,初始网络状态信息为单个待发送数据包对组对应的目标网络状态信息。
在其中一个实施例中,目标网络状态信息包括可用带宽以及丢包率;
请参阅图12,上述目标网络状态信息确定模块包括:
瓶颈带宽获取模块301,用于根据第一数据包或第二数据包的数据大小、以及接收时间间隔获取瓶颈带宽,其中,接收时间间隔为分别接收完第一数据包和第二数据包之间的时间差;
背景带宽获取模块302,用于根据发送速率以及接收速率获取背景带宽;
可用带宽获取模块303,用于根据背景带宽以及瓶颈带宽获取可用带宽;
丢包率获取模块304,用于根据接收数量以及当前待发送数据包对组中待发送数据包对的数量获取丢包率,接收数量为接收到的当前待发送数据包对组对应的待发送数据包对的数量。
在其中一个实施例中,上述网络探测装置,还包括:
视频流接收模块,用于接收发送端发送的视频流,其中,视频流为发送端根据目标网络状态信息以及网络延时确定的。
在其中一个实施例中,目标网络状态信息包括可用带宽以及丢包率;
视频流为发送端根据目标网络状态信息中可用带宽确定的视频流码率、目标网络状态信息中丢包率以及网络延时确定的。
本发明一个实施例中还提供一种计算机设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述网络探测方法。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的程序可存储于一非易失性的计算机可读取存储介质中,如本发明实施例中,该程序可存储于计算机系统的存储介质中,并被该计算机系统中的至少一个处理器执行,以实现包括如上述各方法的实施例的流程。其中,存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(RandomAccess Memory,RAM)等。
因此,本发明一个实施例中还提供一种计算机存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述网络探测方法的步骤。
上述网络探测装置、计算机存储介质以及计算机设备中的技术特征分别与上述网络探测方法中的技术特征是对应的,在此不再赘述。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (13)
1.一种网络探测方法,其特征在于,包括以下步骤:
接收网络探测触发指令,所述网络探测触发指令携带接收端标识;
向所述接收端标识对应的接收端发送信息包,所述信息包携带当前待发送数据包对组中的数据包对的数量;
在接收到所述接收端响应所述信息包返回的第一确认信息时,向所述接收端发送所述当前待发送数据包对组中的各数据包对,单个所述待发送数据包对包括第一数据包以及第二数据包;
确定所述当前待发送数据包对组的发送速率,并向所述接收端发送所述发送速率;
接收所述接收端发送的目标网络状态信息。
2.根据权利要求1所述的网络探测方法,其特征在于,所述向所述接收端发送所述发送速率的步骤之后,接收所述接收端发送的目标网络状态信息的步骤之前,还包括:
接收所述接收端响应所述发送速率返回的第二确认信息;
根据接收到所述第二确认信息的时间与发送所述发送速率的时间,确定网络延时。
3.根据权利要求1或2所述的网络探测方法,其特征在于,所述待发送数据包对组的数量为至少两组;
所述向所述接收端发送所述发送速率的步骤之后,接收所述接收端发送的目标网络状态信息的步骤之前,还包括步骤:
将下一个待发送数据包对组作为当前待发送数据包对组,返回向所述接收端标识对应的接收端发送信息包的步骤,直到各所述待发送数据包对组发送完毕。
4.根据权利要求1所述的网络探测方法,其特征在于,所述目标网络状态信息包括可用带宽以及丢包率。
5.根据权利要求1所述的网络探测方法,其特征在于,所述当前待发送数据包对组中的各数据包对之间间隔预设时间发送,单个所述待发送数据包对中的所述第一数据包与所述第二数据包之间连续发送。
6.根据权利要求2所述的网络探测方法,其特征在于:
所述网络探测触发指令包括视频开启指令;
接收所述接收端发送的目标网络状态信息的步骤之后,还包括:
根据所述目标网络状态信息以及所述网络延时,确定对应的视频流;
向所述接收端发送所述视频流。
7.根据权利要求6所述的网络探测方法,其特征在于,所述目标网络状态信息包括可用带宽以及丢包率;
所述根据所述目标网络状态信息以及所述网络延时,确定对应的视频流的步骤包括:
根据所述目标网络状态信息中所述可用带宽确定对应的视频流码率;
根据所述视频流码率、所述目标网络状态信息中所述丢包率以及所述网络延时,确定对应的视频流。
8.一种网络探测方法,其特征在于,包括以下步骤:
在接收到发送端发送的携带当前待发送数据包对组中的数据包对的数量的信息包时,向所述发送端返回第一确认信息;
接收所述发送端响应所述第一确认信息发送的所述当前待发送数据包对组中的各数据包对,单个所述待发送数据包对包括第一数据包以及第二数据包;
接收所述发送端发送的发送速率,所述发送速率为所述发送端发送所述当前待发送数据包对组的速率;
根据所述发送速率,获取目标网络状态信息;
向所述发送端发送所述目标网络状态信息。
9.根据权利要求8所述的网络探测方法,其特征在于,所述待发送数据包对组的数量为至少两组;所述目标网络状态信息为各所述当前待发送数据包对组分别对应的初始网络状态信息的平均值,其中,所述初始网络状态信息为单个所述待发送数据包对组对应的目标网络状态信息。
10.一种网络探测装置,其特征在于,包括:
指令接收模块,用于网络探测触发指令,所述网络探测触发指令携带接收端标识;
信息包发送模块,用于向所述接收端标识对应的接收端发送信息包,所述信息包携带当前待发送数据包对组中的数据包对的数量;
数据包对发送模块,用于在接收到所述接收端响应所述信息包返回的第一确认信息时,向所述接收端发送所述当前待发送数据包对组中的各数据包对,单个所述待发送数据包对包括第一数据包以及第二数据包;
发送速率获取模块,用于确定所述当前待发送数据包对组的发送速率,并向所述接收端发送所述发送速率;
网络信息接收模块,用于接收所述接收端发送的目标网络状态信息。
11.一种网络探测装置,其特征在于,包括:
信息发送模块,用于在接收到发送端发送的携带当前待发送数据包对组中的数据包对的数量的信息包时,向所述发送端返回第一确认信息;
数据包对接收模块,用于接收所述发送端响应所述第一确认信息发送的所述当前待发送数据包对组中的各数据包对,单个所述待发送数据包对包括第一数据包以及第二数据包;
发送速率接收模块,用于接收所述发送端发送的发送速率,所述发送速率为所述发送端发送所述当前待发送数据包对组的速率;
网络信息获取模块,用于根据所述发送速率,获取目标网络状态信息;
网络信息发送模块,用于向所述发送端发送所述目标网络状态信息。
12.一种计算机存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现上述权利要求1-9中任意一项所述网络探测方法的步骤。
13.一种计算机设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1-9中任意一项所述的网络探测方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710772928.5A CN109428784B (zh) | 2017-08-31 | 2017-08-31 | 网络探测方法及装置、计算机存储介质及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710772928.5A CN109428784B (zh) | 2017-08-31 | 2017-08-31 | 网络探测方法及装置、计算机存储介质及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109428784A true CN109428784A (zh) | 2019-03-05 |
CN109428784B CN109428784B (zh) | 2021-10-15 |
Family
ID=65505403
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710772928.5A Active CN109428784B (zh) | 2017-08-31 | 2017-08-31 | 网络探测方法及装置、计算机存储介质及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109428784B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110290428A (zh) * | 2019-06-26 | 2019-09-27 | 腾讯科技(深圳)有限公司 | 一种拥塞控制方法、装置、终端及存储介质 |
CN111092791A (zh) * | 2019-12-31 | 2020-05-01 | 上海掌门科技有限公司 | 一种确定从应用至服务器的可用网络带宽的方法与设备 |
CN112491637A (zh) * | 2019-09-12 | 2021-03-12 | 北京车和家信息技术有限公司 | 通信性能测试方法、第一通信设备和计算机可读存储介质 |
CN112653635A (zh) * | 2020-12-23 | 2021-04-13 | 百果园技术(新加坡)有限公司 | 一种拥塞控制算法的改进方法、装置、设备及存储介质 |
CN113872870A (zh) * | 2020-06-30 | 2021-12-31 | 华为技术有限公司 | 控制网络拥塞的方法和相关装置 |
CN114760230A (zh) * | 2020-12-29 | 2022-07-15 | 中国移动通信集团福建有限公司 | 端到端网络性能检测方法及系统 |
CN115174429A (zh) * | 2022-05-25 | 2022-10-11 | 深信服科技股份有限公司 | 网络带宽检测方法、装置、系统、设备及存储介质 |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6839754B2 (en) * | 2000-09-15 | 2005-01-04 | Wm. Marsh Rice University | Network tomography using closely-spaced unicast packets |
CN101026509A (zh) * | 2007-02-28 | 2007-08-29 | 西南科技大学 | 一种端到端低可用带宽测量方法 |
CN101119240A (zh) * | 2007-07-05 | 2008-02-06 | 中国科学技术大学 | 一种基于pgm的有效带宽测量方法 |
CN101510847A (zh) * | 2009-02-24 | 2009-08-19 | 华为技术有限公司 | 链路速率调整方法和装置 |
CN101582836A (zh) * | 2008-05-16 | 2009-11-18 | 华为技术有限公司 | 拥塞控制的方法、无线网状网节点和系统 |
CN101841436A (zh) * | 2010-03-02 | 2010-09-22 | 北京星网锐捷网络技术有限公司 | Ipfix服务器性能的测试方法、装置和系统 |
CN102006201A (zh) * | 2010-11-23 | 2011-04-06 | 北京星网锐捷网络技术有限公司 | 网络地址转换新建连接数测试方法、系统及装置 |
CN102790779A (zh) * | 2011-05-16 | 2012-11-21 | 腾讯科技(深圳)有限公司 | 一种直播视频资源下载方法和装置 |
CN103259696A (zh) * | 2013-04-19 | 2013-08-21 | 华为技术有限公司 | 网络带宽检测方法、装置及网络设备 |
WO2014074802A1 (en) * | 2012-11-09 | 2014-05-15 | Interdigital Patent Holdings, Inc. | Controlling traffic in information centric networks |
CN104579812A (zh) * | 2013-10-29 | 2015-04-29 | 中国科学院声学研究所 | 一种计算机网络可用带宽测量方法 |
US20150180780A1 (en) * | 2011-03-09 | 2015-06-25 | Cray Inc. | Congestion abatement in a network interconnect |
CN105407411A (zh) * | 2015-10-21 | 2016-03-16 | 广州市百果园网络科技有限公司 | 一种数据发送方法及数据发送装置 |
CN105553755A (zh) * | 2015-12-08 | 2016-05-04 | 北京飞讯数码科技有限公司 | 一种网络剩余带宽探测方法及其应用 |
-
2017
- 2017-08-31 CN CN201710772928.5A patent/CN109428784B/zh active Active
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6839754B2 (en) * | 2000-09-15 | 2005-01-04 | Wm. Marsh Rice University | Network tomography using closely-spaced unicast packets |
CN101026509A (zh) * | 2007-02-28 | 2007-08-29 | 西南科技大学 | 一种端到端低可用带宽测量方法 |
CN101119240A (zh) * | 2007-07-05 | 2008-02-06 | 中国科学技术大学 | 一种基于pgm的有效带宽测量方法 |
CN101582836A (zh) * | 2008-05-16 | 2009-11-18 | 华为技术有限公司 | 拥塞控制的方法、无线网状网节点和系统 |
CN101510847A (zh) * | 2009-02-24 | 2009-08-19 | 华为技术有限公司 | 链路速率调整方法和装置 |
CN101841436A (zh) * | 2010-03-02 | 2010-09-22 | 北京星网锐捷网络技术有限公司 | Ipfix服务器性能的测试方法、装置和系统 |
CN102006201A (zh) * | 2010-11-23 | 2011-04-06 | 北京星网锐捷网络技术有限公司 | 网络地址转换新建连接数测试方法、系统及装置 |
US20150180780A1 (en) * | 2011-03-09 | 2015-06-25 | Cray Inc. | Congestion abatement in a network interconnect |
CN102790779A (zh) * | 2011-05-16 | 2012-11-21 | 腾讯科技(深圳)有限公司 | 一种直播视频资源下载方法和装置 |
WO2014074802A1 (en) * | 2012-11-09 | 2014-05-15 | Interdigital Patent Holdings, Inc. | Controlling traffic in information centric networks |
CN103259696A (zh) * | 2013-04-19 | 2013-08-21 | 华为技术有限公司 | 网络带宽检测方法、装置及网络设备 |
CN104579812A (zh) * | 2013-10-29 | 2015-04-29 | 中国科学院声学研究所 | 一种计算机网络可用带宽测量方法 |
CN105407411A (zh) * | 2015-10-21 | 2016-03-16 | 广州市百果园网络科技有限公司 | 一种数据发送方法及数据发送装置 |
CN105553755A (zh) * | 2015-12-08 | 2016-05-04 | 北京飞讯数码科技有限公司 | 一种网络剩余带宽探测方法及其应用 |
Non-Patent Citations (3)
Title |
---|
YI DU: "Enhancing accuracy of probe packet-based congestion detection in high speed networks", 《PROCEEDINGS 7TH INTERNATIONAL CONFERENCE ON COMPUTER COMMUNICATIONS AND NETWORKS (CAT. NO.98EX226)》 * |
周亚敏: "TCP/IP网络的拥塞控制机制与算法研究", 《中国优秀硕士学位论文全文数据库信息科技辑》 * |
陈伟基: "网络时延主动测量中探测干扰和发包模式的误差分析", 《 中国优秀硕士学位论文全文数据库信息科技辑》 * |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110290428A (zh) * | 2019-06-26 | 2019-09-27 | 腾讯科技(深圳)有限公司 | 一种拥塞控制方法、装置、终端及存储介质 |
CN110290428B (zh) * | 2019-06-26 | 2021-08-20 | 腾讯科技(深圳)有限公司 | 一种拥塞控制方法、装置、终端及存储介质 |
CN112491637A (zh) * | 2019-09-12 | 2021-03-12 | 北京车和家信息技术有限公司 | 通信性能测试方法、第一通信设备和计算机可读存储介质 |
CN111092791A (zh) * | 2019-12-31 | 2020-05-01 | 上海掌门科技有限公司 | 一种确定从应用至服务器的可用网络带宽的方法与设备 |
CN111092791B (zh) * | 2019-12-31 | 2023-01-31 | 上海掌门科技有限公司 | 一种确定从应用至服务器的可用网络带宽的方法与设备 |
CN113872870A (zh) * | 2020-06-30 | 2021-12-31 | 华为技术有限公司 | 控制网络拥塞的方法和相关装置 |
CN113872870B (zh) * | 2020-06-30 | 2023-10-13 | 华为技术有限公司 | 控制网络拥塞的方法和相关装置 |
CN112653635A (zh) * | 2020-12-23 | 2021-04-13 | 百果园技术(新加坡)有限公司 | 一种拥塞控制算法的改进方法、装置、设备及存储介质 |
CN114760230A (zh) * | 2020-12-29 | 2022-07-15 | 中国移动通信集团福建有限公司 | 端到端网络性能检测方法及系统 |
CN114760230B (zh) * | 2020-12-29 | 2024-05-07 | 中国移动通信集团福建有限公司 | 端到端网络性能检测方法及系统 |
CN115174429A (zh) * | 2022-05-25 | 2022-10-11 | 深信服科技股份有限公司 | 网络带宽检测方法、装置、系统、设备及存储介质 |
CN115174429B (zh) * | 2022-05-25 | 2024-04-09 | 深信服科技股份有限公司 | 网络带宽检测方法、装置、系统、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN109428784B (zh) | 2021-10-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109428784A (zh) | 网络探测方法及装置、计算机存储介质及设备 | |
US7856501B2 (en) | Network traffic prioritization | |
CN110856011B (zh) | 一种分组进行直播互动的方法、电子设备及存储介质 | |
CN106301811A (zh) | 实现多媒体会议的方法及装置 | |
CN107333087A (zh) | 一种基于视频会话的信息共享方法和装置 | |
CN105847988A (zh) | 视频分享方法和装置 | |
CN110460732A (zh) | 网络质量监控方法、装置及通信服务器 | |
CN104753980A (zh) | 数据传输方法及相关装置和通信系统 | |
CN107920108A (zh) | 一种媒体资源的推送方法、客户端及服务器 | |
CN109640113A (zh) | 一种拖拉视频数据的处理方法及代理服务器 | |
CN110087141A (zh) | 视频数据传输方法、装置、客户端及服务器 | |
CN106533932A (zh) | 一种用于推送即时消息的方法和装置 | |
CN109600579A (zh) | 视频无线传输方法、装置、系统和设备 | |
CN107517399A (zh) | 一种媒体信息同步的方法以及服务器 | |
CN115865518A (zh) | 一种基于大数据的云平台数据处理方法及系统 | |
CN112995776A (zh) | 共享屏幕内容抓屏帧率确定方法、装置、设备和存储介质 | |
CN103955846B (zh) | 信息处理系统中控制多个终端智能反馈的控制方法及装置 | |
AU2018275194A1 (en) | Temporal placement of a rebuffering event | |
CN109819341A (zh) | 视频播放方法、装置、计算设备及存储介质 | |
CN113452604A (zh) | 业务数据处理方法以及装置 | |
CN101472290B (zh) | 移动数据业务平台性能测试流量控制方法及装置 | |
CN111600808A (zh) | 一种用于即时通讯的信息处理方法和装置 | |
CN108521382A (zh) | 一种消息发送方法、装置及系统 | |
CN116723195A (zh) | 数据传输方法、装置、电子设备及存储介质 | |
CN111355972A (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 | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20221114 Address after: 1402, Floor 14, Block A, Haina Baichuan Headquarters Building, No. 6, Baoxing Road, Haibin Community, Xin'an Street, Bao'an District, Shenzhen, Guangdong 518100 Patentee after: Shenzhen Yayue Technology Co.,Ltd. Address before: 518000 Tencent Building, No. 1 High-tech Zone, Nanshan District, Shenzhen City, Guangdong Province, 35 Floors Patentee before: TENCENT TECHNOLOGY (SHENZHEN) Co.,Ltd. |