CN110445723A - 一种网络数据调度方法及边缘节点 - Google Patents

一种网络数据调度方法及边缘节点 Download PDF

Info

Publication number
CN110445723A
CN110445723A CN201910587509.3A CN201910587509A CN110445723A CN 110445723 A CN110445723 A CN 110445723A CN 201910587509 A CN201910587509 A CN 201910587509A CN 110445723 A CN110445723 A CN 110445723A
Authority
CN
China
Prior art keywords
scheduling
stream medium
medium data
target
network
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
Application number
CN201910587509.3A
Other languages
English (en)
Other versions
CN110445723B (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.)
Wangsu Science and Technology Co Ltd
Original Assignee
Wangsu Science and 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 Wangsu Science and Technology Co Ltd filed Critical Wangsu Science and Technology Co Ltd
Priority to CN201910587509.3A priority Critical patent/CN110445723B/zh
Priority to PCT/CN2019/100419 priority patent/WO2021000379A1/zh
Priority to US17/622,235 priority patent/US20220353314A1/en
Priority to EP19936306.0A priority patent/EP3993329A1/en
Publication of CN110445723A publication Critical patent/CN110445723A/zh
Application granted granted Critical
Publication of CN110445723B publication Critical patent/CN110445723B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/58Changing or combining different scheduling modes, e.g. multimode scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/611Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for multicast or broadcast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/70Media network packetisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/765Media network packet handling intermediate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS

Abstract

本发明公开了一种网络数据调度方法及边缘节点,其中,所述方法应用于边缘节点中,所述方法包括:读取目标域名的调度策略信息,所述调度策略信息中至少包括网络调度比例阈值;针对访问所述目标域名的目标连接,根据所述目标域名下,当前的网络调度比例和所述网络调度比例阈值,为所述目标连接设置调度标识;其中,所述调度标识用于表征通过所述目标连接传输的数据报文采用的网络调度方式。本申请提供的技术方案,能够提高数据在网络中传输的质量。

Description

一种网络数据调度方法及边缘节点
技术领域
本发明涉及互联网技术领域,特别涉及一种网络数据调度方法及边缘节点。
背景技术
随着互联网技术的不断发展,直播行业正在兴起。直播行业在给用户带来实时性和便捷性的同时,也对网络中数据的传输和分发提出了较高的要求。
当前,应用于直播行业的流媒体直播服务,通常可以采用RTMP、HLS和HTTP FLV等通信协议进行数据的传输,这些协议可以提供安全可靠的数据传输服务。然而,当网络环境出现抖动、网络中的数据通塞时,往往会影响数据传输的质量。具体地,边缘节点和中心节点之间的通信,会受到网络质量的影响。如果网络质量不佳,会导致回源数据质量差,进而会导致用户端播放卡顿、声画不同步等问题。
发明内容
本申请的目的在于提供一种网络数据调度方法及边缘节点,能够提高数据在网络中传输的质量。
为实现上述目的,本申请一方面提供一种网络数据调度方法,所述方法应用于边缘节点中,所述方法包括:读取目标域名的调度策略信息,所述调度策略信息中至少包括网络调度比例阈值;针对访问所述目标域名的目标连接,根据所述目标域名下,当前的网络调度比例和所述网络调度比例阈值,为所述目标连接设置调度标识;其中,所述调度标识用于表征通过所述目标连接传输的数据报文采用的网络调度方式。
为实现上述目的,本申请另一方面还提供一种边缘节点,所述边缘节点包括:调度策略信息读取单元,用于读取目标域名的调度策略信息,所述调度策略信息中至少包括网络调度比例阈值;调度标识设置单元,用于针对访问所述目标域名的目标连接,根据所述目标域名下,当前的网络调度比例和所述网络调度比例阈值,为所述目标连接设置调度标识;其中,所述调度标识用于表征通过所述目标连接传输的数据报文采用的网络调度方式。
为实现上述目的,本申请另一方面还提供一种边缘节点,所述边缘节点包括处理器和存储器,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时,实现上述的网络数据调度方法。
由上可见,本申请提供的技术方案,可以为数据传输提供不同的网络调度方式,从而尽可能地保证数据传输的质量。具体地,当需要传输目标域名的数据报文时,边缘节点可以读取该目标域名的调度策略信息,在该调度策略信息中,可以注明目标域名的网络调度比例阈值。后续,针对访问所述目标域名的目标连接,边缘节点可以根据目标域名下,当前的网络调度比例和上述的网络调度比例阈值,为该目标连接设置对应的调度标识。这样,通过所述目标连接传输的数据报文可以依据该调度标识限定的网络调度方式进行调度。举例来说,在实际应用中可以选用公网调度和自建网络调度这两种网络调度方式。其中,自建网络调度的网络环境通常会较好。这样,针对访问目标域名的目标连接,可以根据调度策略信息灵活地选择公网调度或者自建网络调度。通过不同的网络调度方式,可以尽可能地减少单一网络环境所造成的影响,同时也能够避免单一网络中的数据拥塞,为提高数据在网络中传输的质量提供了保障。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施方式中系统的结构示意图;
图2是本发明实施方式中网络数据调度方法的步骤示意图;
图3是本发明实施方式中数据缓存和读取的步骤示意图;
图4是本发明实施方式中跳帧策略的执行示意图;
图5是本发明实施方式中向发送队列写入数据的流程图;
图6是本发明实施方式中边缘节点的内部结构示意图;
图7是本发明实施方式中计算机终端的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
本申请提供一种网络数据调度方法,该方法可以应用于如图1所示的系统架构中。图1所示的系统中,可以包括边缘节点、中心节点、交换机和用户客户端。其中,用户客户端可以是用户使用的终端设备,用户客户端可以请求流媒体数据,并播放流媒体数据。边缘节点和中心节点可以位于内容分发网络(Content Delivery Network,CDN)中。其中,边缘节点是供用户客户端就近接入的边缘服务器或者边缘服务器集群,边缘节点一方面可以向用户客户端提供自身已缓存的流媒体资源,还可以通过回源的方式,从中心节点处获取到对应流媒体资源,再将获取到的流媒体资源提供给用户客户端。
在本申请中,CDN中的边缘节点与中心节点之间可以通过不同网络相结合的方式进行数据传输。例如,边缘节点与中心节点之间可以通过公网和自建网络进行数据传输。其中,公网可以是当前的广域网,而自建网络可以是CDN的厂商自身搭建的网络。通常而言,自建网络的网络质量会优于公网,但是受限于构建成本、维护成本等因素,自建网络可使用的带宽会低于公网。因此,在实际应用中,通常是将公网和自建网络相结合来进行数据传输。
上述的交换机可以与边缘节点相连,交换机可以接收边缘节点发出的数据报文,并根据数据报文的内容来判断,是将该数据报文通过公网传输,还是通过自建网络传输。
需要说明的是,在实际应用中,上述的系统架构中还可以包括更多的组成部分。例如,可以包括数据采集服务器和策略下发服务器。其中,数据采集服务器可以采集各个域名通常所需的带宽、自建网络可用的带宽等网络参数,并可以将采集的网络参数汇报给策略下发服务器。策略下发服务器可以根据接收到的网络参数,以及管理人员输入的操控指令,针对各个域名生成调度策略文件,并可以将生成的调度策略文件下发至边缘节点。
请参阅图2,本申请提供的网络数据调度方法,可以应用于上述的边缘节点,该方法可以包括以下步骤。
S1:读取目标域名的调度策略信息,所述调度策略信息中至少包括网络调度比例阈值。
在本实施方式中,针对不同的域名,策略下发服务器可以生成不同的调度策略文件。当然,在实际应用中,策略下发服务器也可以仅生成一份调度策略文件,只不过在该调度策略文件中,包含了各个不同的域名对应的调度策略信息。边缘节点在接收到策略下发服务器下发的调度策略文件后,可以解析该调度策略文件中的内容。具体地,该调度策略文件中通常可以包括客户域名、预设IP地址段、各个域名的网络调度比例阈值等参数。其中,客户域名可以是需要将公网和自建网络相结合来进行数据传输的域名,预设IP地址段可以是上述各个客户域名解析得到的IP地址构成的集合,网络调度比例阈值可以是预先设定的百分比数值,用于限定某个网络调度方式所占的比例上限。通过解析调度策略文件,边缘节点可以读取到目标域名的调度策略信息。其中,所述目标域名可以是用户客户端当前访问的域名,也可以是边缘节点当前正在建立的连接所对应的域名。
在实际应用中,网络调度比例阈值可以是公网调度比例阈值,当然,在一些应用场景下,也可以是自建网络调度比例阈值,本申请对此并不做限定。以下可以通过公网调度比例阈值对本申请的方案进行阐述,针对自建网络调度比例阈值的实现方式,可以参考公网调度比例阈值的实现方式。
在本实施方式中,对于不同的客户域名,设定的网络调度比例阈值的大小也可以不同。例如,对于百度而言,设定的网络调度比例阈值可以是50%,而对于腾讯而言,设定的网络调度比例阈值可以是30%。以目标域名的公网调度比例阈值为例,该公网调度比例阈值可以限定在目标域名下,通过公网进行数据传输的连接数,在总连接数中所占的比例上限。例如,目标域名的公网调度比例阈值为50%,而此时目标域名下一共有10条连接,其中4条连接是通过公网进行数据传输,那么目标域名当前的公网调度比例就是40%,没有超过50%的比例上限。
S3:针对访问所述目标域名的目标连接,根据所述目标域名下,当前的网络调度比例和所述网络调度比例阈值,为所述目标连接设置调度标识;其中,所述调度标识用于表征通过所述目标连接传输的数据报文采用的网络调度方式。
在本实施方式中,用户客户端就近接入边缘节点后,可以向边缘节点发起访问目标域名的请求。边缘节点响应于该请求,可以与中心节点之间建立针对目标域名的目标连接。后续,可以通过建立的目标连接在中心节点和边缘节点之间进行数据传输。
在实际应用中,用户客户端发起的访问目标域名的请求可以被域名解析服务器接收,并由域名解析服务器解析为对应的IP地址,该IP地址可以被域名解析服务器提供给用户客户端接入的边缘节点。这样,该IP地址便可以被确定为所述目标连接对应的IP地址。
当边缘节点确定出目标连接对应的IP地址后,可以判断该IP地址是否位于上述的预设IP地址段中。当所述IP地址位于所述预设IP地址段中时,表明目标域名的数据报文需要通过公网和自建网络相结合的方式进行传输。此时,可以根据所述目标域名下,当前的网络调度比例和所述网络调度比例阈值,为所述目标连接设置调度标识,从而通过设置的调度标识,进一步地确定当前应当通过何种网络调度方式来调度该目标连接。而如果所述IP地址并没有位于所述预设IP地址段中,则表明该目标域名的数据报文只需要通过公网传输即可,并不需要采用公网与自建网络相结合的方式。
在本实施方式中,上述的网络调度方式至少可以包括不同的第一调度方式和第二调度方式。例如,可以包括公网调度方式和自建网络调度方式。当然,随着技术的不断进步和应用场景的不断增加,还有可能会产生更多的网络调度方式。在本申请中仅以第一调度方式和第二调度方式为例进行阐述,将更多的调度方式进行结合的方案,也可以以此类推,在本申请中就不再赘述。
通常而言,上述的第一调度方式可以是默认的调度方式,而第二调度方式可以是为了实现某项特定的功能,或者为了提高数据传输质量而设置的调度方式。例如,上述的公网调度方式可以作为第一调度方式,数据在默认的情况下,都可以被调度至公网。然而,在公网中传输的数据,安全性和传输质量可能会受到各种因素的影响。上述的自建网络调度方式可以作为第二调度方式,数据在受到路由策略控制的情况下,可以被调度至自建网络。自建网络的网络环境通常较好,可以提升数据传输的安全性和稳定性。只不过出于成本考虑,自建网络的网络带宽通常较小,因此并不能所有的数据都被调度至自建网络。这样,通过两种或者多种服务质量同的网络调度方式,可以有选择地对数据进行调度,一方面可以保证数据能够被及时调度,另一方面还可以保证一些重要数据的传输稳定性。
在一个实施方式中,在为目标连接设置调度标识时,可以先识别目标域名下,当前的网络调度比例。以公网调度比例为例,当前的公网调度比例,可以是目标域名下目前采用公网调度方式的连接,在总连接中所占的比例。需要说明的是,在识别目标域名下当前的网络调度比例时,上述的目标连接,并不包含在目标域名的总连接中,而是作为网络调度方式未确定的一个连接。
在本实施方式中,在判断目标连接应当采用哪种调度方式时,可以先假设目标连接按照所述第一调度方式进行调度。在这种情况下,可以在所述当前的网络调度比例的基础上,计算按照所述第一调度方式进行调度的连接数在总连接数中所占的比例。举例来说,假设目标域名下除目标连接之外,当前采用公网调度方式的连接数为4个,采用自建网络调度方式的连接数为6个,那么当前的公网调度比例为40%。此时,假设目标连接按照公网调度方式进行调度,那么采用公网调度方式的连接数就是5个,总连接数就是11个,计算得到的按照公网调度方式进行调度的连接数在总连接数中所占的比例就约等于45.45%。
在本实施方式中,可以进一步地将计算得到的比例与目标域名的网络调度比例阈值进行对比。若计算的所述比例小于或者等于所述网络调度比例阈值,则表示按照第一调度方式来调度目标连接时,并没有超出网络调度比例阈值限定的比例上限,此时可以为所述目标连接设置用于表征按照所述第一调度方式进行调度的调度标识。而若计算的所述比例大于所述网络调度比例阈值,则表示按照第一调度方式来调度目标连接时,已经超出了网络调度比例阈值限定的比例上限,这样,需要为所述目标连接设置用于表征按照所述第二调度方式进行调度的调度标识。
在实际应用中,上述的调度标识可以通过数据报文中的指定字段来实现。具体地,可以通过IP报文中的差分服务器代码点(Differentiated Services Code Point,DSCP)字段来实现上述的调度标识。针对不同的网络调度方式,DSCP的赋值也可以不同。例如,若表征按照第一调度方式进行调度,DSCP的赋值可以是0,若表征按照第二调度方式进行调度,DSCP的赋值可以是1。当然,本领域技术人员在理解本申请技术精髓的前提下,可以想到通过其他的方式来实现上述的调度标识,但只要该调度标识所起的作用于本申请中的调度标识所起的作用一致或者类似,都应当包含于本申请的保护范围内。
在实际应用中,上述的网络调度比例阈值可以细分为上行比例阈值和下行比例阈值。其中,“上行”可以指边缘节点向中心节点发送数据报文,而“下行”可以指中心节点向边缘节点发送数据报文。在中心节点和边缘节点之间,可以通过上行连接和下行连接来分别传输上行的数据报文和下行的数据报文。具体地,针对上行连接应当采用何种网络调度方式,可以按照上述的方式,将上行比例阈值作为参考值来判断;同理,针对下行连接应当采用何种网络调度方式,可以按照上述的方式,将下行比例阈值作为参考值来判断。
在一个实施方式中,针对上行连接和下行连接,可以采用不同的方式来设置调度标识。具体地,若所述目标连接为所述边缘节点与中心节点之间的上行连接,那么可以在所述边缘节点发往所述中心节点的数据报文的指定字段中设置所述调度标识。其中,边缘节点发往中心节点的数据报文可以是IP报文,所述指定字段可以是IP报文中的DSCP字段,那么通过设置DSCP字段中的赋值,便可以在IP报文中设置对应的调度标识。
在一个实施方式中,若所述目标连接为所述边缘节点与中心节点之间的下行连接,那么边缘节点发往中心节点的可以是HTTP请求,后续中心节点可以根据接收到的HTTP请求反馈响应数据包。而在HTTP请求中,通常是不具备上述的DSCP字段的。在这种情况下,可以在HTTP请求中添加自定义字段,该自定义字段可以用于容纳所述调度标识。这样,在所述边缘节点发往所述中心节点的请求报文中,可以添加用于容纳所述调度标识的自定义字段。举例来说,该自定义字段例如可以是X-DSCP:1,表示下行传输的数据应当采用第二调度方式进行调度。所述中心节点在解析所述自定义字段中的内容后,可以在发往所述边缘节点的响应报文的指定字段中设置所述调度标识。所述响应报文可以是IP报文,那么由于IP报文中原本就携带DSCP字段,因此可以直接在该响应报文的DSCP字段中通过赋值的方式来设置调度标识。也就是说,中心节点解析出X-DSCP:1的内容后,可以在反馈的响应报文中设置DSCP:1的内容。
在本实施方式中,中心节点和边缘节点之间传输的IP报文,可以通过交换机中转。交换机通过分析IP报文中DSCP的赋值,从而可以知晓应当将当前的IP报文按照何种网络调度方式进行调度。
在一个实施方式中,如果所述目标连接断开,那么边缘节点需要根据当前未断开的连接中各个连接的网络调度方式,重新计算当前的网络调度比例。例如,包含目标连接在内时,采用公网调度的连接数为5,采用自建网络调度的连接数也是5,那么公网调度比例就是50%。当目标连接断开后,采用公网调度的连接数变为4,采用自建网络调度的连接数保持是5,那么重新计算得到的公网调度比例就约等于44.44%。
由上可见,在中心节点和边缘节点之间通过不同的网络调度方式进行数据传输,可以避免将所有的数据都通过公网传输,一方面可以利用自建网络的高质量优势,另一方面还可以避免数据拥塞,极大地提高了回源数据的质量。
在一个实施方式中,为了解决直播视频无法保持较高的实时性的问题,可以按照图3所示的步骤,实现数据缓存和读取方面的改进。
S11:将流媒体数据写入预设缓存区域中,并记录所述流媒体数据写入所述预设缓存区域时的写入时间戳。
在本实施方式中,边缘节点内可以具备缓存模块(cache)和服务模块(server),其中,缓存模块中具备预设缓存区域,可以不断地写入待下发的流媒体数据,服务模块可以从缓存模块中读取流媒体数据,并将读取的流媒体数据写入发送队列,从而将读取的流媒体数据依次向外发送。
具体地,边缘节点在将流媒体数据写入缓存模块中的预设缓存区域时,可以记录所述流媒体数据写入所述预设缓存区域时的写入时间戳,还可以记录该流媒体数据的关键帧信息。其中,所述写入时间戳,可以是写入流媒体数据时边缘节点的系统时间节点,所述关键帧信息,可以表征关键帧在流媒体数据中的偏移量(offset)。
S21:在所述预设缓存区域中确定待下发的目标流媒体数据,并基于所述目标流媒体数据的第一写入时间戳和最新写入所述预设缓存区域中的流媒体数据的第二写入时间戳,判断是否执行跳帧策略。
在本实施方式中,服务模块可以不断地从预设缓存区域中读取流媒体数据,服务模块当前读取的流媒体数据,可以作为待下发的目标流媒体数据。此时,为了保证下发的流媒体数据具备较高的实时性,可以识别所述目标流媒体数据的第一写入时间戳和最新写入所述预设缓存区域中的流媒体数据的第二写入时间戳,并且可以将所述第一写入时间戳与所述第二写入时间戳进行对比。若所述第一写入时间戳和所述第二写入时间戳之间的时间间隔大于预设阈值,则表示向用户客户端推送的流媒体数据和主播当前上传的流媒体数据之间的间隔时间较长。此时,为了保证直播视频的实时性,可以执行跳帧策略。相反,若所述第一写入时间戳和所述第二写入时间戳之间的时间间隔小于或者等于所述预设阈值,则表示向用户客户端推送的流媒体数据和主播当前上传的流媒体数据之间的间隔时间处于正常范围内,此时可以不执行所述跳帧策略。
S31:若执行所述跳帧策略,读取并发送位于所述目标流媒体数据之后的指定位置处的流媒体数据。
在本实施方式中,在所述跳帧策略执行时,服务模块可以从目标流媒体数据开始,跳过一部分的流媒体数据,直接读取并发送位于目标流媒体数据之后的流媒体数据。这样,通过追赶进度的方式,可以使得向外发送的流媒体数据,能够接近最新写入预设缓存区域中的流媒体数据,从而保证直播的实时性。
具体地,请参阅图4,流媒体数据可以按照画面组(Group Of Pictures,GOP)进行划分。在一个画面组中,可以包括音频帧、视频关键帧以及非视频关键帧。例如在图4中,A可以表示音频帧,Vfk可以表示视频关键帧,Vnk可以表示非视频关键帧。在执行跳帧策略时,可以从所述目标流媒体数据中的关键帧(视频关键帧)开始,向后跳过指定数量的画面组,并将跳过所述指定数量的画面组后的流媒体数据作为所述指定位置处的流媒体数据。具体地,如图4所示,可以从所述目标流媒体数据的关键帧开始,向后跳过两个画面组,并从位于所述目标流媒体数据的关键帧之后的第二个关键帧开始向外发送流媒体数据。
在一个实施方式中,服务模块从缓存模块中读取了流媒体数据后,可以将读取的流媒体数据写入发送队列中,发送队列中的流媒体数据可以依次发送给目标连接,并通过目标连接将流媒体数据向外分发。
请参阅图5,当服务模块需要向发送队列中写入流媒体数据时,可以判断所述发送队列中的流媒体数据的长度是否大于预设长度阈值。该预设长度阈值可以作为发送队列中数据是否拥塞的临界值。若发送队列中的流媒体数据的长度大于所述预设长度阈值,则表示目前存在数据拥塞的现象,如果将读取的流媒体数据全部写入发送队列中,会进一步加重数据拥塞的现象。此时,可以仅将所述当前读取的流媒体数据中的关键帧写入所述发送队列中,而将非关键帧全部丢弃。由于关键帧包含一帧完整画面,这样既可以保留视频帧的全部内容,也能够减缓数据拥塞的问题。若发送队列中的流媒体数据的长度小于或者等于所述预设长度阈值,则表明目前还未出现数据拥塞的情况,可以将所述当前读取的流媒体数据的全部内容写入所述发送队列中。
在本实施方式中,在将当前读取的流媒体数据写入发送队列后,可以识别表征总线繁忙的标识当前所处的状态。在实际应用中,该表征总线繁忙的标识可以是vio_busy标识。当该标识处于第一状态时,表示当前位于发送队列中的流媒体数据不向外发送;而当该标识处于第二状态时,表示当前位于发送队列中的流媒体数据需要向外发送。其中,第一状态可以是true,第二状态可以是false。这样,如果识别出该标识当前所处的状态为第二状态,表示目前写入发送队列中的流媒体数据应当向外发送,此时,可以将所述表征总线繁忙的标识设置为第一状态,并将所述当前读取的流媒体数据写入所述目标连接。这样处理的目的在于,一方面可以将当前读取的流媒体数据通过目标连接向外发送,另一方面,通过将标识设置为第一状态,可以避免发送队列中的数据频繁地以数据长度较短的小数据向外发送。这样,每当向发送队列中写入流媒体数据时,都可以将表征总线繁忙的标识设置为第一状态。此外,为了避免发送队列中的数据无限堆积,当目标连接传输完需要分发的流媒体数据后,可以通过回调函数传递异步回调成功提示。服务模块在接收到目标连接反馈的异步回调成功提示后,可以将所述表征总线繁忙的标识设置为第二状态,然后就可以将所述发送队列中的流媒体数据向外发送。这样,通过写入数据和连接回调的异步处理,可以使得表征总线繁忙的标识在两个状态之间来回切换,这样既能保证发送队列中的流媒体数据能够正常向外发送,又可以避免频繁地发送数据量较小的数据,提高了数据传输的稳定性。
本申请还提供一种边缘节点,所述边缘节点包括:
调度策略信息读取单元,用于读取目标域名的调度策略信息,所述调度策略信息中至少包括网络调度比例阈值;
调度标识设置单元,用于针对访问所述目标域名的目标连接,根据所述目标域名下,当前的网络调度比例和所述网络调度比例阈值,为所述目标连接设置调度标识;其中,所述调度标识用于表征通过所述目标连接传输的数据报文采用的网络调度方式。
在一个实施方式中,所述边缘节点还包括:
数据写入单元,用于将流媒体数据写入预设缓存区域中,并记录所述流媒体数据写入所述预设缓存区域时的写入时间戳;
策略判断单元,用于在所述预设缓存区域中确定待下发的目标流媒体数据,并基于所述目标流媒体数据的第一写入时间戳和最新写入所述预设缓存区域中的流媒体数据的第二写入时间戳,判断是否执行跳帧策略;
数据发送单元,用于若执行所述跳帧策略,读取并发送位于所述目标流媒体数据之后的指定位置处的流媒体数据。
在一个实施方式中,所述边缘节点还包括:
状态设置单元,用于将当前读取的流媒体数据写入发送队列中,并将表征总线繁忙的标识设置为第一状态;其中,所述第一状态表示当前位于所述发送队列中的流媒体数据不向外发送;
状态重置单元,用于在接收到异步回调成功提示后,将所述表征总线繁忙的标识设置为第二状态,并将所述发送队列中的流媒体数据向外发送。
请参阅图6,本申请还提供一种边缘节点,所述边缘节点包括处理器和存储器,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时,可以实现上述的网络数据调度方法。
请参阅图7,在本申请中,上述实施例中的技术方案均可以应用于如图7所示的计算机终端10上。计算机终端10可以包括一个或多个(图中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器104、以及用于通信功能的传输模块106。本领域普通技术人员可以理解,图7所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,计算机终端10还可包括比图7中所示更多或者更少的组件,或者具有与图7所示不同的配置。
存储器104可用于存储应用软件的软件程序以及模块,处理器102通过运行存储在存储器104内的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端10的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
由上可见,本申请提供的技术方案,可以为数据传输提供不同的网络调度方式,从而尽可能地保证数据传输的质量。具体地,当需要传输目标域名的数据报文时,边缘节点可以读取该目标域名的调度策略信息,在该调度策略信息中,可以注明目标域名的网络调度比例阈值。后续,针对访问所述目标域名的目标连接,边缘节点可以根据目标域名下,当前的网络调度比例和上述的网络调度比例阈值,为该目标连接设置对应的调度标识。这样,通过所述目标连接传输的数据报文可以依据该调度标识限定的网络调度方式进行调度。举例来说,在实际应用中可以选用公网调度和自建网络调度这两种网络调度方式。其中,自建网络调度的网络环境通常会较好。这样,针对访问目标域名的目标连接,可以根据调度策略信息灵活地选择公网调度或者自建网络调度。通过不同的网络调度方式,可以尽可能地减少单一网络环境所造成的影响,同时也能够避免单一网络中的数据拥塞,为提高数据在网络中传输的质量提供了保障。
本说明书中的各个实施方式均采用递进的方式描述,各个实施方式之间相同相似的部分互相参见即可,每个实施方式重点说明的都是与其他实施方式的不同之处。尤其,针对边缘节点的实施方式来说,均可以参照前述方法的实施方式的介绍对照解释。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (15)

1.一种网络数据调度方法,其特征在于,所述方法应用于边缘节点中,所述方法包括:
读取目标域名的调度策略信息,所述调度策略信息中至少包括网络调度比例阈值;
针对访问所述目标域名的目标连接,根据所述目标域名下,当前的网络调度比例和所述网络调度比例阈值,为所述目标连接设置调度标识;
其中,所述调度标识用于表征通过所述目标连接传输的数据报文采用的网络调度方式。
2.根据权利要求1所述的方法,其特征在于,所述网络调度方式至少包括不同的第一调度方式和第二调度方式;
所述根据所述目标域名下,当前的网络调度比例和所述网络调度比例阈值,为所述目标连接设置调度标识包括:
在所述目标连接按照所述第一调度方式进行调度的情况下,在所述当前的网络调度比例的基础上,计算按照所述第一调度方式进行调度的连接数在总连接数中所占的比例;
若计算的所述比例小于或者等于所述网络调度比例阈值,为所述目标连接设置用于表征按照所述第一调度方式进行调度的调度标识;
若计算的所述比例大于所述网络调度比例阈值,为所述目标连接设置用于表征按照所述第二调度方式进行调度的调度标识。
3.根据权利要求1所述的方法,其特征在于,所述调度策略信息中还包括预设IP地址段;在所述根据所述目标域名下,当前的网络调度比例和所述网络调度比例阈值,为所述目标连接设置调度标识之前,所述方法还包括:
确定所述目标连接对应的IP地址,并判断所述IP地址是否位于所述预设IP地址段中;
当所述IP地址位于所述预设IP地址段中时,根据所述目标域名下,所述当前的网络调度比例和所述网络调度比例阈值,为所述目标连接设置调度标识。
4.根据权利要求1所述的方法,其特征在于,在为所述目标连接设置调度标识后,所述方法还包括:
若所述目标连接为所述边缘节点与中心节点之间的上行连接,在所述边缘节点发往所述中心节点的数据报文的指定字段中,设置所述调度标识;
若所述目标连接为所述边缘节点与中心节点之间的下行连接,在所述边缘节点发往所述中心节点的请求报文中,添加用于容纳所述调度标识的自定义字段,以使得所述中心节点在解析所述自定义字段中的内容后,在发往所述边缘节点的响应报文的指定字段中设置所述调度标识。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述目标连接断开后,根据当前未断开的连接中各个连接的网络调度方式,重新计算当前的网络调度比例。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
将流媒体数据写入预设缓存区域中,并记录所述流媒体数据写入所述预设缓存区域时的写入时间戳;
在所述预设缓存区域中确定待下发的目标流媒体数据,并基于所述目标流媒体数据的第一写入时间戳和最新写入所述预设缓存区域中的流媒体数据的第二写入时间戳,判断是否执行跳帧策略;
若执行所述跳帧策略,读取并发送位于所述目标流媒体数据之后的指定位置处的流媒体数据。
7.根据权利要求6所述的方法,其特征在于,判断是否执行跳帧策略包括:
将所述第一写入时间戳与所述第二写入时间戳进行对比,若所述第一写入时间戳和所述第二写入时间戳之间的时间间隔大于预设阈值,判定执行跳帧策略;若所述第一写入时间戳和所述第二写入时间戳之间的时间间隔小于或者等于所述预设阈值,判定不执行所述跳帧策略。
8.根据权利要求6所述的方法,其特征在于,所述指定位置处的流媒体数据按照以下方式确定:
从所述目标流媒体数据中的关键帧开始,向后跳过指定数量的画面组,并将跳过所述指定数量的画面组后的流媒体数据作为所述指定位置处的流媒体数据。
9.根据权利要求1或6所述的方法,其特征在于,所述方法还包括:
将当前读取的流媒体数据写入发送队列中,并将表征总线繁忙的标识设置为第一状态;其中,所述第一状态表示当前位于所述发送队列中的流媒体数据不向外发送;
在接收到异步回调成功提示后,将所述表征总线繁忙的标识设置为第二状态,并将所述发送队列中的流媒体数据向外发送。
10.根据权利要求9所述的方法,其特征在于,在将当前读取的流媒体数据写入发送队列中之前,所述方法还包括:
判断所述发送队列中的流媒体数据的长度是否大于预设长度阈值,若大于所述预设长度阈值,仅将所述当前读取的流媒体数据中的关键帧写入所述发送队列中;若小于或者等于所述预设长度阈值,将所述当前读取的流媒体数据写入所述发送队列中。
11.根据权利要求9所述的方法,其特征在于,在将当前读取的流媒体数据写入发送队列中之后,所述方法还包括:
识别所述表征总线繁忙的标识当前所处的状态;
若处于第二状态,将所述表征总线繁忙的标识设置为第一状态,并将所述当前读取的流媒体数据写入所述目标连接。
12.一种边缘节点,其特征在于,所述边缘节点包括:
调度策略信息读取单元,用于读取目标域名的调度策略信息,所述调度策略信息中至少包括网络调度比例阈值;
调度标识设置单元,用于针对访问所述目标域名的目标连接,根据所述目标域名下,当前的网络调度比例和所述网络调度比例阈值,为所述目标连接设置调度标识;其中,所述调度标识用于表征通过所述目标连接传输的数据报文采用的网络调度方式。
13.根据权利要求12所述的边缘节点,其特征在于,所述边缘节点还包括:
数据写入单元,用于将流媒体数据写入预设缓存区域中,并记录所述流媒体数据写入所述预设缓存区域时的写入时间戳;
策略判断单元,用于在所述预设缓存区域中确定待下发的目标流媒体数据,并基于所述目标流媒体数据的第一写入时间戳和最新写入所述预设缓存区域中的流媒体数据的第二写入时间戳,判断是否执行跳帧策略;
数据发送单元,用于若执行所述跳帧策略,读取并发送位于所述目标流媒体数据之后的指定位置处的流媒体数据。
14.根据权利要求12或13所述的边缘节点,其特征在于,所述边缘节点还包括:
状态设置单元,用于将当前读取的流媒体数据写入发送队列中,并将表征总线繁忙的标识设置为第一状态;其中,所述第一状态表示当前位于所述发送队列中的流媒体数据不向外发送;
状态重置单元,用于在接收到异步回调成功提示后,将所述表征总线繁忙的标识设置为第二状态,并将所述发送队列中的流媒体数据向外发送。
15.一种边缘节点,其特征在于,所述边缘节点包括存储器和处理器,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时,实现如权利要求1至11中任一所述的方法。
CN201910587509.3A 2019-07-02 2019-07-02 一种网络数据调度方法及边缘节点 Active CN110445723B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201910587509.3A CN110445723B (zh) 2019-07-02 2019-07-02 一种网络数据调度方法及边缘节点
PCT/CN2019/100419 WO2021000379A1 (zh) 2019-07-02 2019-08-13 一种网络数据调度方法及边缘节点
US17/622,235 US20220353314A1 (en) 2019-07-02 2019-08-13 Network data scheduling method and edge node thereof
EP19936306.0A EP3993329A1 (en) 2019-07-02 2019-08-13 Network data scheduling method and edge node

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910587509.3A CN110445723B (zh) 2019-07-02 2019-07-02 一种网络数据调度方法及边缘节点

Publications (2)

Publication Number Publication Date
CN110445723A true CN110445723A (zh) 2019-11-12
CN110445723B CN110445723B (zh) 2022-05-27

Family

ID=68428938

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910587509.3A Active CN110445723B (zh) 2019-07-02 2019-07-02 一种网络数据调度方法及边缘节点

Country Status (4)

Country Link
US (1) US20220353314A1 (zh)
EP (1) EP3993329A1 (zh)
CN (1) CN110445723B (zh)
WO (1) WO2021000379A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110896365A (zh) * 2019-12-20 2020-03-20 网宿科技股份有限公司 网络节点内的流量调度方法、服务器及存储介质

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114007200A (zh) * 2021-10-21 2022-02-01 北京全路通信信号研究设计院集团有限公司 一种调度命令信息发送方法、装置、设备及存储介质
CN114625359B (zh) * 2022-05-16 2022-08-05 西安数道航空技术有限公司 通过同步并发网络连接的多机无耦合数字化开发平台
CN117395178B (zh) * 2023-12-13 2024-03-08 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院) 一种基于网络划分的质量监控方法

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130107817A1 (en) * 2011-11-01 2013-05-02 Google Inc. Generating Transmission Schedules
CN103746933A (zh) * 2013-12-24 2014-04-23 乐视网信息技术(北京)股份有限公司 一种节点分配方法和控制中心
CN104486255A (zh) * 2014-12-30 2015-04-01 杭州华三通信技术有限公司 业务资源调度方法和装置
CN106301966A (zh) * 2016-10-25 2017-01-04 北京云端智度科技有限公司 一种基于域名的按比例分配流量的方法
CN108521856A (zh) * 2017-01-22 2018-09-11 华为技术有限公司 内容分发网络中的调度方法和设备
CN108600344A (zh) * 2018-04-09 2018-09-28 杭州登虹科技有限公司 一种网络访问请求调度方法、装置和存储介质
CN109151491A (zh) * 2018-09-14 2019-01-04 网宿科技股份有限公司 数据分发系统、方法及计算机可读存储介质
CN109787921A (zh) * 2019-03-19 2019-05-21 网宿科技股份有限公司 Cdn带宽调度方法、采集及调度服务器和存储介质
CN109818881A (zh) * 2019-03-19 2019-05-28 网宿科技股份有限公司 Cdn带宽调度方法、采集及调度服务器和存储介质

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090164287A1 (en) * 2007-12-24 2009-06-25 Kies Jonathan K Method and apparatus for optimizing presentation of media content on a wireless device based on user behavior
CN102355448B (zh) * 2011-06-29 2015-07-01 北京原力创新科技有限公司 云流媒体数据传输方法及系统
CN103476062B (zh) * 2012-06-06 2015-05-27 华为技术有限公司 一种数据流调度的方法、设备和系统
CN104580305B (zh) * 2013-10-18 2018-11-06 腾讯科技(深圳)有限公司 网络上传调度和带宽检测方法、系统、客户端和服务器
CN105072151A (zh) * 2015-07-03 2015-11-18 中国联合网络通信集团有限公司 一种cdn的内容协同调度方法及系统
US20170054982A1 (en) * 2015-08-19 2017-02-23 Hitachi, Ltd. Real time video stream processing systems and methods thereof
CN105847264A (zh) * 2016-03-31 2016-08-10 乐视控股(北京)有限公司 一种提供流媒体服务的方法和系统
US10565671B2 (en) * 2017-04-24 2020-02-18 Intel Corporation Reduce power by frame skipping
EP3588896A1 (en) * 2018-06-28 2020-01-01 InterDigital CE Patent Holdings Multi-path management
US11025588B2 (en) * 2018-10-31 2021-06-01 Hewlett Packard Enterprise Development Lp Identify assets of interest in enterprise using popularity as measure of importance
US11102319B2 (en) * 2019-01-29 2021-08-24 Wangsu Science and Technology Co., Ltd. Method, system and server for stream-pushing

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130107817A1 (en) * 2011-11-01 2013-05-02 Google Inc. Generating Transmission Schedules
CN103746933A (zh) * 2013-12-24 2014-04-23 乐视网信息技术(北京)股份有限公司 一种节点分配方法和控制中心
CN104486255A (zh) * 2014-12-30 2015-04-01 杭州华三通信技术有限公司 业务资源调度方法和装置
CN106301966A (zh) * 2016-10-25 2017-01-04 北京云端智度科技有限公司 一种基于域名的按比例分配流量的方法
CN108521856A (zh) * 2017-01-22 2018-09-11 华为技术有限公司 内容分发网络中的调度方法和设备
CN108600344A (zh) * 2018-04-09 2018-09-28 杭州登虹科技有限公司 一种网络访问请求调度方法、装置和存储介质
CN109151491A (zh) * 2018-09-14 2019-01-04 网宿科技股份有限公司 数据分发系统、方法及计算机可读存储介质
CN109787921A (zh) * 2019-03-19 2019-05-21 网宿科技股份有限公司 Cdn带宽调度方法、采集及调度服务器和存储介质
CN109818881A (zh) * 2019-03-19 2019-05-28 网宿科技股份有限公司 Cdn带宽调度方法、采集及调度服务器和存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
梁可结等: "一种有效的网络多出口流量调度方案", 《计算机工程》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110896365A (zh) * 2019-12-20 2020-03-20 网宿科技股份有限公司 网络节点内的流量调度方法、服务器及存储介质
CN110896365B (zh) * 2019-12-20 2022-09-02 网宿科技股份有限公司 网络节点内的流量调度方法、服务器及存储介质

Also Published As

Publication number Publication date
WO2021000379A1 (zh) 2021-01-07
EP3993329A1 (en) 2022-05-04
US20220353314A1 (en) 2022-11-03
CN110445723B (zh) 2022-05-27

Similar Documents

Publication Publication Date Title
CN110445723A (zh) 一种网络数据调度方法及边缘节点
US20130086279A1 (en) Systems and methods for media service delivery
CN106464680A (zh) 内容分发网络中的带宽管理
CN108989264A (zh) 一种直播方法、系统以及相关设备
CN102420868B (zh) 服务的提供方法、装置及系统
CN114071168B (zh) 混流直播流调度方法及装置
AU2020257112B2 (en) Distribution of bandwidth in a network
CN106993014A (zh) 缓存内容的调整方法、装置及系统
CN104471904B (zh) 用于内容优化的方法和设备
US20210195271A1 (en) Stream control system for use in a network
EP3316600A1 (en) Video distribution method and device
CN101483535A (zh) 内容分发方法及接收装置
CN101262413B (zh) 实现媒体缓存的方法、系统和装置
CN109510868A (zh) 一种建立p2p网络的方法、装置、终端设备及存储介质
US11303573B2 (en) Method and system for managing the download of data
JP3964751B2 (ja) ネットワーク品質推定制御方式
JP2004140486A (ja) ユーザオンデマンド型通信制御システム
CN109040199A (zh) 一种分发资源数据的方法、系统及存储介质
CN112788135B (zh) 资源调度方法、设备及存储介质
US20220021920A1 (en) Communication entity and a method for transmitting a video data stream
CN101621545B (zh) 一种实现向终端设备下拉媒体资源的装置及方法
WO2021090539A1 (ja) 無線端末、サーバおよび無線通信システム
Kalan et al. Implementation of sand architecture using sdn
WO2017071524A1 (zh) 多媒体资源的发布方法及装置
US20140164625A1 (en) System and method for sharing multiple network resources on stand-alone machine

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