WO2022160728A1 - 业务流错峰调度方法及相关设备 - Google Patents

业务流错峰调度方法及相关设备 Download PDF

Info

Publication number
WO2022160728A1
WO2022160728A1 PCT/CN2021/117778 CN2021117778W WO2022160728A1 WO 2022160728 A1 WO2022160728 A1 WO 2022160728A1 CN 2021117778 W CN2021117778 W CN 2021117778W WO 2022160728 A1 WO2022160728 A1 WO 2022160728A1
Authority
WO
WIPO (PCT)
Prior art keywords
burst
service flow
traffic
scheduling
peak
Prior art date
Application number
PCT/CN2021/117778
Other languages
English (en)
French (fr)
Inventor
丁建坤
李建平
郭建伟
Original Assignee
华为技术有限公司
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 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2022160728A1 publication Critical patent/WO2022160728A1/zh

Links

Images

Classifications

    • 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/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2416Real-time traffic
    • 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/12Avoiding congestion; Recovering from congestion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output

Definitions

  • the present application relates to the field of communication technologies, and in particular, to a method and related equipment for peak-staggered scheduling of service flows.
  • the embodiments of the present application disclose a method and related equipment for peak-staggered scheduling of service flows, which can realize peak-staggered scheduling of instantaneous burst traffic.
  • a first aspect of the present application discloses a service flow staggered scheduling method, which is applied to a service flow aggregation and forwarding node.
  • the method includes:
  • the scheduling delay of each service flow is determined according to the burst flow of each service flow.
  • the embodiments of the present application increase corresponding scheduling delays for each service stream, reduce the superimposed traffic peaks of multiple service streams, and avoid forwarding time delays of all service streams.
  • the embodiment of the present application improves the transmission guarantee capability by planning the traffic shaping scheme and resource allocation.
  • the peak-staggered scheduling method for multi-service streams disclosed in the embodiments of the present application can perform peak-staggered scheduling, so that I-frames of the video stream can be transmitted in whole frames, so that some video streams can preferentially receive the complete I-frames and process them. Decode playback.
  • the determining the scheduling delay of each service flow according to the burst flow of each service flow includes:
  • the objective function is optimized and solved to obtain the scheduling delay of each service flow.
  • the burst traffic characteristics include a burst time phase, a burst traffic size, and a burst duration
  • the building a burst traffic model according to the burst traffic characteristics includes:
  • a burst flow function is constructed from the burst time phase, burst flow size and burst duration.
  • the constructing the burst flow function according to the burst time phase, the burst flow size and the burst duration includes:
  • the sigmoid function with time as an independent variable is shifted according to the burst duration and the burst time phase of the service flow, and is stretched according to the first scaling coefficient to obtain the first function;
  • the third function is scaled according to the burst flow size of the service flow to obtain the burst flow function.
  • the first scaling factor and the second scaling factor are both 1.
  • the objective function is a maximum value function or an entropy function.
  • the burst traffic characteristics include burst traffic size, burst start time and burst end time
  • the building a burst traffic model according to the burst traffic characteristics includes:
  • a peak traffic collision matrix is constructed according to the burst traffic size, the burst start time and the burst end time.
  • the constructing a peak traffic peak collision matrix according to the burst traffic size, the burst start time and the burst end time includes:
  • the peak traffic peak collision matrix Using the number of the multiple service flows as the row number of the peak traffic peak collision matrix, and using the number of predicted time periods as the column number of the peak traffic peak collision matrix, construct the peak traffic peak collision matrix , wherein, if a predicted time period of a service flow in the plurality of service flows does not overlap with the burst duration of the service flow, then the predicted time period of the service flow in the peak traffic collision matrix corresponds to the predicted time period of the service flow.
  • the value of the element is 0.
  • the value of the element corresponding to the predicted time period of the service flow in the peak traffic collision matrix is this
  • the burst flow size of the service flow, and the burst duration is determined by the burst start time and the burst end time.
  • the objective function is a maximum value function.
  • the establishing an objective function for the scheduled burst traffic model includes:
  • the objective function is established for the scheduled burst traffic model.
  • the method before the construction of the burst traffic model according to the burst traffic characteristics, the method further includes:
  • the burst flow model is constructed for the service flow.
  • the method further includes:
  • the scheduling delay of each service flow is sent to the upstream node, so that the upstream node adds a corresponding scheduling delay to the service flow according to the scheduling delay of each service flow.
  • the method further includes:
  • a second aspect of the present application discloses a service flow peak shift scheduling device, which is applied to a service flow aggregation and forwarding node, and the device includes:
  • the business flow statistics module is used for receiving multiple business flows, and according to the preset time interval, counts the traffic of each business flow received in each time period;
  • the peak shift scheduling algorithm module is used to identify the burst flow of each service flow according to the flow of each service flow received in each time period, and determine the scheduling delay of each service flow according to the burst flow of each service flow .
  • the staggered peak scheduling algorithm module is used to:
  • the objective function is optimized and solved to obtain the scheduling delay of each service flow.
  • the burst traffic characteristics include burst time phase, burst traffic size and burst duration
  • the peak shift scheduling algorithm module is used for:
  • a burst flow function is constructed from the burst time phase, burst flow size and burst duration.
  • the staggered peak scheduling algorithm module is used to:
  • the sigmoid function with time as an independent variable is shifted according to the burst duration and the burst time phase of the service flow, and is stretched according to the first scaling coefficient to obtain the first function;
  • the third function is scaled according to the burst flow size of the service flow to obtain the burst flow function.
  • the first scaling factor and the second scaling factor are both 1.
  • the objective function is a maximum value function or an entropy function.
  • the burst traffic characteristics include burst traffic size, burst start time and burst end time
  • the peak shift scheduling algorithm module is used to:
  • a peak traffic collision matrix is constructed according to the burst traffic size, the burst start time and the burst end time.
  • the staggered peak scheduling algorithm module is used to:
  • the peak traffic peak collision matrix Using the number of the multiple service flows as the row number of the peak traffic peak collision matrix, and using the number of predicted time periods as the column number of the peak traffic peak collision matrix, construct the peak traffic peak collision matrix , wherein, if a predicted time period of a service flow in the plurality of service flows does not overlap with the burst duration of the service flow, then the predicted time period of the service flow in the peak traffic collision matrix corresponds to the predicted time period of the service flow.
  • the value of the element is 0.
  • the value of the element corresponding to the predicted time period of the service flow in the peak traffic collision matrix is this
  • the burst flow size of the service flow, and the burst duration is determined by the burst start time and the burst end time.
  • the objective function is a maximum value function.
  • the staggered peak scheduling algorithm module is used to:
  • the objective function is established for the scheduled burst traffic model.
  • the apparatus further includes:
  • a judging module for judging whether the burst flow of each service flow in the plurality of service flows collides with the burst flow of other service flows in the plurality of service flows.
  • the apparatus further includes:
  • the message sending module is configured to send the scheduling delay of each service flow to the upstream node, so that the upstream node adds the corresponding scheduling delay to the service flow according to the scheduling delay of each service flow.
  • the apparatus further includes:
  • the staggered peak scheduling module is used to add the corresponding scheduling delay to the scheduling delay of each service flow according to the scheduling delay of each service flow, and send the multiple service flows after the scheduling delay is increased to the downstream node .
  • a third aspect of the present application discloses a computer-readable storage medium, comprising computer instructions, which, when the computer instructions are executed on an electronic device, cause the electronic device to execute the method for scheduling traffic flow off-peak according to the first aspect .
  • a fourth aspect of the present application discloses an electronic device, the electronic device includes a processor and a memory, the memory is used for storing instructions, and the processor is used for invoking the instructions in the memory, so that the electronic device executes the following steps: The method for scheduling service flow staggered in the first aspect.
  • a fifth aspect of the present application discloses a chip system, which is applied to an electronic device; the chip system includes an interface circuit and a processor; the interface circuit and the processor are interconnected by lines; the interface circuit is used for receiving signals from a memory of the electronic device, A signal is sent to the processor, where the signal includes computer instructions stored in the memory; when the processor executes the computer instructions, the chip system executes the method for scheduling traffic flow off-peak according to the first aspect.
  • a sixth aspect of the present application discloses a computer program product, which, when the computer program product runs on a computer, enables the computer to execute the method for scheduling peak traffic flow according to the first aspect.
  • a seventh aspect of the present application discloses an apparatus, which has the function of implementing the behavior of the electronic device in the method provided in the above-mentioned first aspect.
  • the functions can be implemented by hardware, or by executing corresponding software by hardware.
  • the hardware or software includes one or more modules corresponding to the above functions.
  • the apparatus for scheduling service flow peak shift according to the second aspect the computer-readable storage medium according to the third aspect, the electronic device according to the fourth aspect, the chip system according to the fifth aspect,
  • the computer program product described in the sixth aspect and the device described in the seventh aspect all correspond to the method of the first aspect. Therefore, for the beneficial effects that can be achieved, reference may be made to the beneficial effects of the corresponding methods provided above. The effect will not be repeated here.
  • FIG. 1 is a schematic diagram of an application scenario of the method for scheduling service flow peak shift disclosed in an embodiment of the present application.
  • FIG. 2 is a software block diagram of a service flow aggregation and forwarding node disclosed in an embodiment of the present application.
  • FIG. 3 is a flowchart of a method for scheduling service flow peak shift disclosed in an embodiment of the present application.
  • Figure 4 is a schematic diagram of burst traffic.
  • FIG. 5 is an implementation scheme of the peak-staggered scheduling algorithm module in FIG. 2 .
  • Figure 6 is a schematic diagram of a burst traffic function.
  • FIG. 7 is another implementation scheme of the peak staggered scheduling algorithm module in FIG. 2 .
  • FIG. 8 is a schematic diagram of the value of the peak flow impingement matrix.
  • FIG. 9 is a schematic diagram of the value of the peak traffic collision matrix after scheduling.
  • FIG. 10 is a schematic diagram of deploying a peak-staggered scheduling module on a terminal.
  • FIG. 11 is a schematic structural diagram of an electronic device disclosed in an embodiment of the present application.
  • GOP Group of pictures
  • Intra-coded frame (I frame, also known as intra picture): A type of video frame, also known as key frame. I-frames have a lower degree of compression and a larger amount of data. The decoding of I-frames does not depend on other frames.
  • Forward predictive coding frame (Predictive-frame, P frame): a type of video frame with a high degree of compression and a data volume much smaller than that of an I frame.
  • P-frame decoding relies on the information of I-frames and P-frames earlier in time.
  • Bi-directional interpolated prediction frame A type of video frame with a very high degree of compression and a smaller amount of data than a P frame.
  • the decoding of B-frames depends on both earlier and later video frames in time.
  • Traffic The amount of data transferred.
  • Upstream and downstream are relative to the current node and data flow direction. The part from the data sender to the current node is called upstream, and the part from the current node to the receiver is called downstream.
  • the ingress refers to the location where the message arrives at the current node, and the egress refers to the location where the message is sent from the current node.
  • Transmission bandwidth refers to the amount of data that the network can transmit per unit time.
  • Transmission rate refers to the amount of data actually transmitted by the network per unit time. Since the service data transmission requirement may be smaller than the network transmission capacity, the transmission rate may be smaller than the transmission bandwidth.
  • Peak-to-average ratio refers to the ratio of the maximum value to the average value of the data volume transmitted per unit time of the service flow.
  • Burst traffic refers to a sudden increase in the amount of data transmitted per unit of time, which returns to the original level after a short period of time. This change exhibits a "mountain shape" on the time-flow curve and is therefore also called peak flow.
  • Queueing During network transmission, the packets need to be sent in a certain order. When the number of packets is too large, the packets that cannot be sent in time need to be queued in the buffer for sending.
  • Network congestion refers to the fact that the amount of data to be sent per unit time is greater than the network bandwidth, resulting in the accumulation of packets in the network, resulting in packet loss and retransmission.
  • Packet loss due to congestion When the network is congested, the packets are discarded due to factors such as the number of queued packets being larger than the network buffer capacity, or the packet waiting time in the network is too long.
  • Huaping The decoded video frame image is severely damaged due to data loss or errors.
  • Video playback is to play each video frame in a certain time sequence. When the video is played to a certain time, but the video data corresponding to the time is not received, the playback effect will be stuttered.
  • Network experience For services that need to be transmitted through the network, network quality, such as network packet loss, network delay, network transmission rate and other factors, affect the service.
  • Service flow an ordered set of byte (or message) service data sequences with start and end points.
  • Traffic shaping Change the amount of data transmitted by a service flow at different times by means of control or scheduling.
  • Five-tuple refers to the source Internet Protocol (Internet Protocol, IP) address, source port, destination IP address, destination port and transport layer protocol number.
  • IP Internet Protocol
  • the source IP address and the source port constitute the address of the sender
  • the destination IP address and the destination port constitute the address of the receiver.
  • the transport layer protocol number is used to describe the transport layer protocol carried in the IP packet, such as Transmission Control Protocol (TCP) and User Data Protocol (UDP).
  • TCP Transmission Control Protocol
  • UDP User Data Protocol
  • Each protocol is identified with a unique number (ie, the transport layer protocol number), for example, 6 represents TCP, and 17 represents UDP.
  • FIG. 1 is a schematic diagram of an application scenario of the method for scheduling service flow peak shift disclosed in an embodiment of the present application.
  • 1A shows that the service flow staggered scheduling method provided by the embodiment of the present application is not applied to the customer premise equipment (Customer Premise Equipment, CPE), and 1B shows that the service flow provided by the embodiment of the present application is applied on the CPE.
  • CPE Customer Premise Equipment
  • the service flow staggered scheduling method of the present application is applied to an application scenario where multiple service flows periodically burst into peak traffic, for example, the application scenario of the real-time monitoring video upload service shown in FIG. 1 .
  • the network includes multiple cameras, CPEs, base stations (Base Station), core network equipment (Core), and servers.
  • the camera is the terminal, the CPE is the service flow aggregation and forwarding node, and the core network device is the user data processing and forwarding device.
  • Each camera can only monitor a local area. In order to achieve all-round monitoring, multiple cameras need to work at the same time. Multiple cameras send the real-time monitoring video to the base station through the CPE, and the base station forwards the data to the server through the core network equipment, thereby realizing all-round real-time video monitoring.
  • the camera encodes multiple video frames and divides them into GOPs.
  • the encoded video frame includes three types of I frame, P frame and B frame, and each GOP includes one I frame and multiple P frames, or includes one I frame and multiple B frames.
  • one GOP of real-time video coding in order to ensure the real-time performance of video decoding, includes one I frame and multiple P frames, but does not include B frames.
  • one GOP of real-time video coding includes one I frame and multiple B frames.
  • the compression degree of the I frame is lower, and the data volume of the I frame is several times that of the P frame.
  • the real-time video streams uploaded by multiple cameras are aggregated at the CPE and sent to the base station through the CPE.
  • Real-time video streams have the characteristics of periodic traffic bursts. When the burst traffic of multiple video streams collides together (ie, burst traffic peaks), it will cause a larger burst traffic, resulting in instantaneous network congestion. Due to the characteristics of periodic traffic bursts in real-time video streams, instantaneous network congestion will occur periodically (ie, periodic burst traffic peaks).
  • the peak-staggered scheduling method for service flows provided by the embodiments of the present application when the peak-staggered scheduling method for service flows provided by the embodiments of the present application is not used for peak-staggered scheduling, the traffic burst times of different video streams output by the CPE overlap, thereby causing burst traffic to peak.
  • the peak-staggered scheduling method for service flow provided by the embodiment of the present application is applied to perform peak-staggered scheduling, the traffic burst times of different video streams output by the CPE do not overlap, which avoids burst traffic peaking.
  • the method for scheduling service flow peak shift can also be applied to other scenarios where there are periodic burst traffic peaks of multiple service flows, such as video on demand (including virtual reality (Virtual Reality, VR) video on-demand), live video and other scenarios.
  • video on demand including virtual reality (Virtual Reality, VR) video on-demand
  • live video and other scenarios.
  • FIG. 2 is a software block diagram of a service flow aggregation and forwarding node provided by an embodiment of the present application.
  • the method for scheduling service flow peak shift in the present application can be applied to a service flow aggregation and forwarding node 20 in a network, such as the CPE in FIG. 1 .
  • the service flow convergence and forwarding node 20 has a service flow peak shift scheduling apparatus 200
  • the service flow peak shift scheduling apparatus 200 includes a service flow statistics module 201 , a peak shift scheduling algorithm module 202 and a peak shift scheduling module 203 .
  • the main functions of each module are introduced below.
  • the service flow statistics module 201 may be deployed at the entrance of the service flow aggregation and forwarding node 20 .
  • the service flow statistics module 201 is configured to receive multiple service flows, and according to a preset time interval (for example, 10 milliseconds), count the traffic of each service flow received in each time period.
  • the preset time interval is set to be smaller than the burst duration of each service flow.
  • the burst traffic is generated by I-frame data transmission, and the preset time interval can be set to be smaller than the I-frame transmission time.
  • the transmission time of the I frame is 20 milliseconds, and the preset time interval may be set to 10 milliseconds.
  • the peak shift scheduling algorithm module 202 is used to identify the burst flow of each service flow according to the flow of each service flow received in each time period, and determine the scheduling delay of each service flow according to the burst flow of each service flow .
  • the peak-staggered scheduling algorithm module 202 extracts the burst flow characteristics of each service flow according to the flow of each service flow received in each time period, and according to the burst flow characteristics of each service flow Model the burst traffic to get the burst traffic model.
  • the peak-staggered scheduling algorithm module 202 adds the scheduling delay as a design variable in the burst traffic model, obtains the scheduled burst traffic model, establishes an objective function for the scheduled burst traffic model, and optimizes and solves the objective function to obtain each The scheduling delay of each service flow, that is, the delay scheduling scheme that minimizes the peak collision degree is obtained.
  • the staggered peak scheduling algorithm module 202 optimizes and solves the objective function under the constraint of the maximum scheduling delay, so as to ensure that the scheduled service flow meets actual service requirements.
  • the peak shift scheduling module 203 may be deployed at the egress position of the service flow aggregation and forwarding node 20 .
  • the staggered peak scheduling module 203 adds a corresponding scheduling delay to each service flow according to the delay scheduling scheme, so that the burst traffic time of each service flow is staggered, so as to realize peak staggered scheduling.
  • FIG. 3 is a flowchart of a method for scheduling service flow peak shift disclosed in an embodiment of the present application.
  • the method for scheduling service flow peak shift disclosed in the embodiment of the present application can be applied to a service flow aggregation and forwarding node, such as the CPE shown in FIG. 1 , and the embodiment shown in FIG. 3 is described by taking the application scenario of FIG. 1 as an example.
  • the CPE includes a service flow statistics module, a peak shift scheduling algorithm module, and a peak shift scheduling module (see Figure 2).
  • the implementation process of the present application will be described in detail below according to FIG. 3 .
  • Multiple cameras send multiple real-time video streams to the CPE.
  • the camera sends the video stream to the CPE through packets.
  • the camera sends a video stream to the CPE through an IP packet.
  • An IP packet has a five-tuple, that is, a source IP address, a source port, a destination IP address, a destination port, and a protocol number.
  • the service flow statistics module counts the traffic of each video stream received by the CPE in each time period according to a preset time interval.
  • the time length of each time period is equal to the preset time interval. For example, if the starting time is t 0 and the preset time interval is ⁇ t, the M-th time period is t 0 +M ⁇ t ⁇ t ⁇ t 0 +(M+1) ⁇ t.
  • the camera sends a video stream to the CPE through an IP packet
  • the service flow statistics module can distinguish each video stream according to the quintuple of the IP packet.
  • the traffic of each video stream received by the CPE in each time period may be counted according to the number of packets (for example, IP packets) of the video stream received in the time period. That is, the traffic of each video stream received by the CPE in each time period may be equal to the number of packets of the video stream received in the time period.
  • IP packets for example, IP packets
  • the traffic of each video stream received by the CPE in each time period may be counted according to the size of the packets of the video stream received in the time period. That is, the traffic of each video stream received by the CPE in each time period may be equal to the sum of the sizes of all packets of the video stream received in the time period.
  • the service flow statistics module transmits the received traffic of each video stream in each time period to the staggered-peak scheduling algorithm module.
  • the peak shift scheduling algorithm module identifies burst traffic according to the traffic of each service flow received in each time period.
  • Burst traffic refers to the sudden increase in the amount of data transmitted per unit of time, which then decreases after a short period of time.
  • Figure 4 is a flow change diagram of a real-time video stream, in which "mountain-like" protrusions represent burst traffic.
  • the service flow statistics module can calculate the traffic of each time period according to the traffic received in each time period, and calculate the burst traffic threshold according to the mean value and variance of the traffic. If the traffic in a certain period of time exceeds the threshold, it is determined to be burst traffic.
  • the traffic of a certain period of time divided by the preset time interval is the transmission rate of this period of time, that is, the instantaneous rate.
  • the burst traffic threshold can be expressed as:
  • r threshold f(r mean , r var );
  • r threshold represents the burst traffic threshold
  • r mean represents the mean value of the traffic
  • r var represents the variance of the traffic.
  • r mean and r var can be calculated by exponential smoothing.
  • the peak staggered scheduling algorithm module extracts the burst traffic characteristics of each service flow.
  • the extracted burst traffic characteristics include burst time phase, burst traffic size and burst duration.
  • the extracted burst traffic characteristics include burst traffic size, burst start time and burst end time.
  • the extracted burst traffic characteristics may also include burst periods.
  • Burst start time (t ps ): The time when the traffic changes from less than the burst traffic threshold to greater than the burst traffic threshold.
  • Burst end time (t pe ) The time when the traffic changes from being greater than the burst traffic threshold to being less than the burst traffic threshold.
  • Burst duration (w): The time from the start time of the burst traffic (ie the start time of the burst) to the end time (ie the end time of the burst).
  • start time of the burst traffic ie the start time of the burst
  • end time ie the end time of the burst.
  • Burst Size The maximum value of the burst traffic or the average value of the traffic during the burst duration.
  • Burst period (T) The time interval between two adjacent bursts of traffic. In real-time video streaming, it is the transmission time of one GOP video frame.
  • the burst time phase ⁇ i of the ith service stream (eg video stream) refers to the first burst start time of the ith service stream Time difference relative to t0 .
  • the burst start time of any burst flow of the ith service flow can be calculated by using the burst time phase ⁇ i , t 0 and the burst period T.
  • the burst start time of the j-th burst traffic of the i-th service flow is: t 0 + ⁇ i +T ⁇ (j-1).
  • the staggered-peak scheduling algorithm module constructs a burst traffic model according to the burst traffic characteristics.
  • the peak staggered scheduling algorithm module determines whether each video stream collides with other video streams in burst traffic. If the burst traffic of a video stream does not collide with other video streams, the burst traffic of the video stream is not modeled. Otherwise, if the burst traffic of this video stream collides with other video streams, the burst traffic of this video stream is modeled.
  • Burst traffic peak collision means that burst traffic of different service flows (eg video streams) collide together, and the superimposed burst traffic results in a larger instantaneous burst traffic. Burst traffic peaks may occur between two service flows or between multiple service flows.
  • the peak staggered scheduling algorithm module can determine whether the burst duration of this video stream overlaps with the burst duration of other video streams, if the burst duration of this video stream and the burst duration of other video streams have the same If it overlaps, it is determined that the video stream and other video streams have burst traffic peaks.
  • the video stream is not modeled when there is no sudden traffic peak collision, which can reduce the computational complexity of modeling and improve the efficiency of peak shifting scheduling.
  • the peak-staggered scheduling algorithm module adds scheduling delay as a design variable in the burst traffic model to obtain a scheduled burst traffic model.
  • the peak-staggered scheduling algorithm module establishes an objective function for the scheduled burst traffic model.
  • the objective function can be a maximum function or an entropy function.
  • the peak-staggered scheduling algorithm module optimizes and solves the objective function, and obtains a delay scheduling scheme (that is, obtains the scheduling delay of each video stream).
  • the obtained delay scheduling scheme is the delay scheduling scheme that minimizes the peak collision degree under the condition of satisfying the maximum scheduling delay constraint.
  • the maximum scheduling delay is the maximum delay that the service can tolerate.
  • the maximum scheduling delay can be set according to business requirements. Taking the maximum scheduling delay as the constraint condition of the objective function, a more reasonable scheduling scheme can be obtained to ensure that the scheduling results meet the actual business requirements.
  • the peak-staggered scheduling algorithm module transmits the delay scheduling scheme to the peak-staggered scheduling module.
  • the peak shift scheduling module adds a corresponding scheduling delay for each video stream according to the delay scheduling scheme.
  • the peak-staggered scheduling module sends the video stream whose scheduling delay is increased to the base station.
  • the peak shift scheduling module directly sends the video stream to the base station.
  • Adding scheduling delay to a video stream means adding scheduling delay to packets of the video stream.
  • the staggered peak scheduling module adds the corresponding scheduling delay to the packets of each video stream according to the delay scheduling scheme, and sends the video stream with the increased scheduling delay to the base station, thereby realizing peak staggered scheduling of video streams and reducing CPE forwarding. Peak-to-average ratio of total traffic to the base station.
  • the service flow peak scheduling method in this embodiment of the present application determines a new video stream according to the changed video stream.
  • Delay scheduling scheme according to the new delay scheduling scheme, perform peak-staggered scheduling of video streams.
  • the service flow statistics module distinguishes each video stream according to the quintuple of IP packets.
  • the service flow statistics module receives the changed video streams in each time period.
  • the traffic is passed to the peak-staggered scheduling algorithm module (ie, step 303), and the peak-staggered scheduling module re-executes 304-309 to obtain a new delay scheduling scheme.
  • Traffic shaping is an effective method for the problem of congestion caused by the amount of data to be transmitted exceeds the network transmission capacity.
  • the traffic shaping method can be deployed on the packet forwarding device (that is, the service flow aggregation and forwarding node) in the network transmission path. By changing the amount of data transmitted per unit time, it can avoid network congestion caused by the excessive amount of data sent to downstream nodes.
  • Existing traffic shaping methods use rate limiting methods (such as token buckets, leaky buckets and their combinations) to control the amount of data sent by the current node to downstream nodes, so as to reduce traffic bursts and network congestion.
  • the existing traffic shaping methods have the following shortcomings:
  • a video frame needs to be split into multiple packets for transmission, and the receiving end needs to receive all the packets of the same video frame to successfully decode the video frame.
  • Existing traffic shaping methods simply limit the forwarding rate of all video streams according to a preset sending rate threshold, resulting in increased delay of all video streams and delayed decoding time of all video streams.
  • the existing traffic shaping algorithm essentially adopts the method of setting a rate threshold to perform rate control. This method can achieve better results in the scenario of wired transmission and relatively stable bandwidth.
  • the bandwidth the maximum transmission rate of the network, that is, the network transmission capability
  • the preset rate threshold cannot match the changing bandwidth at any time.
  • the following two problems will arise: when the bandwidth is sufficient, the transmission rate is limited by the rate threshold set by the shaping algorithm, resulting in a low packet transmission rate; when the bandwidth is insufficient, the rate threshold set by the shaping algorithm is too high, resulting in excessive transmission rate. Too much data is sent to the downstream network, causing network congestion.
  • the embodiments of the present application increase the corresponding scheduling delay for each service stream, reduce the superimposed traffic peak of multiple service streams, and avoid the forwarding time delay of all service streams.
  • the traffic shaping scheme and resource allocation are planned in advance through peak collision prediction, and the transmission guarantee capability is improved.
  • the embodiment of the present application realizes peak shifting shaping under a certain delay constraint condition, so that the delay increased by traffic shaping for each service flow is controllable, and the delay constraint can be implemented according to actual service requirements and the delay cost of packet loss and retransmission. set up.
  • the peak-staggered scheduling method for multi-service streams disclosed in the embodiments of the present application can perform full-frame transmission of the I-frame of the video stream, so that some video streams can preferentially receive the complete I-frame and perform Decode playback.
  • the peak-staggered scheduling algorithm module models the burst traffic according to the characteristics of the burst traffic to obtain the burst traffic model.
  • the peak-staggered scheduling algorithm module adds scheduling delay as a design variable in the burst traffic model, obtains the scheduled burst traffic model, and optimizes the scheduled burst traffic model to obtain the delay scheduling scheme.
  • the embodiments of the present application provide two solutions for modeling and optimization.
  • Scheme 1 describes the traffic characteristics of each service flow through a constructor (ie, a burst traffic function).
  • the peak-staggered scheduling algorithm module constructs a burst flow function according to the burst time phase, the burst flow size, and the burst duration.
  • the burst traffic function is a relationship between time and traffic, and it represents the change of the traffic of the service flow with time.
  • the burst flow function is constructed based on a sigmoid function with time as an independent variable.
  • the sigmoid function is also called the sigmoid function.
  • the sigmoid function Z 0 (t) with time t as the independent variable is:
  • the staggered peak scheduling algorithm module shifts the sigmoid function according to the burst duration and burst time phase of the service flow, and scales according to the first scaling coefficient to obtain the first function of the service flow.
  • the first function Z 1,i (t) of the i-th service flow can be expressed as:
  • ⁇ i is the burst time phase of the ith service flow
  • wi is the burst duration of the ith service flow
  • is the first scaling coefficient
  • the peak staggered scheduling algorithm module inverts the S-shaped function, shifts according to the burst time phase of the service flow, and scales according to the second scaling coefficient to obtain the second function.
  • the second function Z 2,i (t) of the i-th service flow can be expressed as:
  • is the second stretch coefficient.
  • the first scaling factor and the second scaling factor are both 1.
  • the first scaling factor and the second scaling factor may be other values.
  • the first scaling factor is 1, and the second scaling factor is 3.
  • the staggered peak scheduling algorithm module multiplies the first function and the second function to obtain the third function.
  • the third function Z 3,i (t) of the i-th service flow can be expressed as:
  • the peak-staggered scheduling algorithm module scales the third function according to the size of the burst traffic to obtain the burst traffic function.
  • ⁇ i ,r i , wi , ⁇ , ⁇ ) of the i-th service flow can be expressed as:
  • Xi is the traffic of the ith service flow
  • ri is the burst flow size of the ith service flow.
  • Fig. 6 is a schematic diagram of a burst traffic function, wherein 60 is a burst traffic function curve, and 61 is a time-traffic curve obtained according to statistical traffic.
  • the peak-staggered scheduling algorithm module adds a scheduling delay as a design variable in the burst traffic function to obtain a scheduled burst traffic function.
  • the scheduled burst flow function can be expressed as:
  • t i represents increasing the scheduling delay t i in the i-th service flow.
  • the scheduling delay of each service flow can be represented by the scheduling vector S1,
  • the peak-staggered scheduling algorithm module establishes an objective function for the scheduled burst traffic function.
  • the objective function is a mathematical function of the scheduling delay t i , which is used to reflect the objective of peak-staggered scheduling.
  • the objective function of the scheduled burst traffic function may be the maximum value function or the entropy function of the superimposed traffic, that is, or Among them, f 1 ( ⁇ ) represents the objective function of the scheduled burst traffic function, g 1 (t) is the superimposed traffic of all service flows at time t, and g 1 (t) can be expressed as:
  • the staggered-peak scheduling algorithm module optimizes and solves the objective function of the scheduled burst traffic function under the constraint of the maximum scheduling delay, and obtains a delay scheduling scheme.
  • the optimal solution to the objective function of the scheduled burst traffic function can be expressed as:
  • t max represents the maximum scheduling delay
  • the optimization objective is the constraint condition of the maximum scheduling delay (ie ), the peak-to-average ratio of superimposed traffic (ie, superimposed traffic) of all service flows is reduced by scheduling scheduling.
  • the objective function is the entropy function, and the optimization objective is:
  • the above optimization objective represents the maximization of the entropy value, that is, the more uniform the distribution of the superimposed traffic of each service flow in each time period, and the smaller the peak traffic, the better.
  • a heuristic optimization algorithm based on gradient descent (such as the quasi-Newton iteration method) can be used to solve the local optimal solution, and the final delay scheduling scheme can be obtained.
  • Scheme 1 describes the traffic characteristics of each service flow through a constructor (ie, a burst traffic function), and performs target optimization according to the burst traffic function, thereby realizing the planning and allocation of resources and improving the network transmission guarantee capability.
  • a constructor ie, a burst traffic function
  • Scheme 2 describes the traffic characteristics of each service flow through a traffic matrix.
  • the specific implementation process of the second solution is shown in FIG. 7 .
  • the peak staggered scheduling algorithm module constructs a peak traffic collision matrix according to the burst flow size of the service flow, the burst start time and the burst end time.
  • the peak traffic collision matrix is used to represent the burst traffic that occurs in each forecast time period.
  • the staggered peak scheduling algorithm module selects the number of predicted time periods, and the product of the number of predicted time periods and the preset time interval is greater than the burst period of the service flow.
  • the staggered peak scheduling algorithm module uses the number of service flows as the row number of the peak traffic peak collision matrix, and the number of predicted time periods as the column number of the peak traffic peak collision matrix to construct the peak traffic peak collision matrix.
  • Each row of the peak traffic collision matrix represents the traffic of a service flow in different forecast time periods. If a predicted time period of a service flow does not overlap with the burst duration of the service flow, the value of the element corresponding to the predicted time period of the service flow in the peak traffic peak collision matrix is 0. If the predicted time period of the service flow overlaps with the burst duration of the service flow, the value of the element corresponding to the predicted time period of the service flow in the peak traffic peak collision matrix is the burst flow size of the service flow.
  • the time from the burst start time to the burst end time is the burst duration of the service flow.
  • ⁇ t is the preset time interval
  • T is the burst period
  • the peak traffic collision matrix is Y, and the elements in Y are Y(i,j), i ⁇ [1,N],j ⁇ [1,n Len ], and each row of Y represents the traffic flow of a service flow in different time periods.
  • the flow, Y(i,j) is defined as follows:
  • ri is the burst flow size of the i -th service flow
  • t ps is the start time of the burst
  • t pe is the end time of the burst
  • t j- , t j+ are the start time of the j-th time period n j and end time
  • ie n j [t j- ,t j+ ].
  • FIG. 8 is a schematic diagram of the value of the peak flow impingement matrix.
  • Figure 8 shows the values of the elements in the peak flow hit matrix.
  • the peak-staggered scheduling algorithm module adds the scheduling delay as a design variable in the peak-traffic peak-collision matrix, and obtains the scheduled peak-traffic peak-collision matrix.
  • the number of scheduling time windows of the ith service flow is n i , that is, the scheduling delay t i of the ith service flow is n i ⁇ t, where ⁇ t is the preset time interval, and the scheduling vector can be expressed as
  • the peak traffic collision matrix after scheduling can be expressed as:
  • the above formula indicates that when t ps +n i ⁇ t ⁇ j ⁇ t pe +n i ⁇ t, The value is Y(i,jn i ); when t ps +n i ⁇ t ⁇ j ⁇ t pe +n i ⁇ t is not satisfied, The value is 0.
  • FIG. 9 is a schematic diagram of the value of the peak traffic collision matrix after scheduling.
  • the staggered peak scheduling algorithm module establishes an objective function for the scheduled peak traffic collision matrix.
  • the objective function of the scheduled peak traffic collision matrix may be the maximum value function of the superimposed traffic of all service flows, that is, f 2 ( ⁇ ) represents the objective function of the scheduled peak traffic collision matrix, g 2 (j) is the superimposed traffic of all service flows, and g 2 (j) can be expressed as:
  • the staggered peak scheduling algorithm module optimizes and solves the objective function of the scheduled peak traffic collision matrix to obtain a delay scheduling scheme.
  • the optimal solution to the objective function of the scheduled peak traffic collision matrix can be expressed as:
  • stn i ⁇ n max is a constraint condition, that is, n i ⁇ n max is satisfied.
  • the maximum number of scheduling time windows is in Indicates rounded down, and t max is the maximum scheduling delay.
  • This form directly aims to minimize the maximum value of the superimposed flow, that is, the peak flow of the superimposed flow is minimized.
  • Scheme 2 can use heuristic optimization algorithms such as genetic algorithm and particle swarm to solve the objective function, and obtain the scheduling delay of each service flow.
  • the embodiment of the present application implements multi-service flow peak-staggered scheduling through a service flow statistics module, a peak-staggered scheduling algorithm module, and a peak-staggered scheduling module.
  • the service flow statistics module, the peak shift scheduling algorithm module, and the peak shift scheduling module are deployed on the service flow aggregation and forwarding node (eg, CPE).
  • the staggered peak scheduling module increases the scheduling delay for each service flow to realize peak staggered scheduling.
  • the peak staggered scheduling module may be deployed on any upstream node with service flow control capability. For example, in a video surveillance scenario, the staggered peak scheduling module is deployed in the camera (terminal).
  • FIG. 10 is a schematic diagram of deploying a peak-staggered scheduling module on a terminal.
  • terminals include a peak shift scheduling module, and a service flow aggregation and forwarding node includes a service flow statistics module, a peak shift scheduling algorithm module, and a message sending module.
  • the peak shift scheduling module sends the service flow to the service flow aggregation and forwarding node according to the original time sequence.
  • the peak-staggered scheduling algorithm module solves the delay scheduling scheme, and sends the scheduling delay of each service flow to the corresponding terminal through the message sending module.
  • the peak shift scheduling module adjusts the service flow according to the scheduling delay, so as to adjust the moment when the burst traffic of the service flow occurs.
  • Deploying the staggered peak scheduling module on the terminal can adjust the generation time of a large burst of data, such as adjusting the time of I-frame encoding in a real-time video stream. This method can solve the problem of traffic peaking at the sink node during the network transmission process from the data source without introducing additional delay.
  • FIG. 11 is a schematic structural diagram of an electronic device (service flow aggregation and forwarding node or terminal) disclosed in an embodiment of the present application.
  • the electronic device 110 may include: a radio frequency (RF) circuit 1101 , a memory 1102 , an input unit 1103 , a display unit 1104 , a sensor 1105 , an audio circuit 1106 , a Wi-Fi module 1107 , a processor 1108 and Power 1109 and other components.
  • RF radio frequency
  • FIG. 11 does not constitute a limitation on the service flow aggregation and forwarding node, and may include more or less components than those shown in the figure, or combine some components, or arrange different components .
  • the RF circuit 1101 can be used to send and receive information or to receive and send signals during a call. In particular, after receiving the downlink information of the base station, it is transferred to the processor 1108 for processing; in addition, it sends the uplink data to the base station.
  • the RF circuit 1101 includes, but is not limited to, an antenna, at least one amplifier, a transceiver, a coupler, a Low Noise Amplifier (LNA), a duplexer, and the like.
  • LNA Low Noise Amplifier
  • the memory 1102 can be used to store software programs and modules, and the processor 1108 executes various functional applications and data processing of the electronic device by running the software programs and modules stored in the memory 1102 .
  • the memory 1102 may mainly include a stored program area and a stored data area, wherein the stored program area may store an operating system, an application program required for at least one function (such as a sound playback function, an image playback function, etc.), etc.; Data created by the use of electronic equipment (such as audio data, phone book, etc.), etc.
  • memory 1102 may include high-speed random access memory, and may also include non-volatile memory, such as at least one magnetic disk storage device, flash memory device, or other volatile solid state storage device.
  • the input unit 1103 may be used to receive input numerical or character information, and generate key signal input related to user setting and function control of the electronic device.
  • the input unit 1103 may include a touch panel 11031 and other input devices 11032 .
  • the touch panel 11031 also known as the touch screen, can collect the user's touch operations on or near it (such as the user using a finger, a stylus, etc., any suitable object or accessory on or near the touch panel 11031) operation), and drive the corresponding connection device according to the preset program.
  • the touch panel 11031 may include two parts, a touch detection device and a touch controller.
  • the touch detection device detects the user's touch orientation, detects the signal brought by the touch operation, and transmits the signal to the touch controller; the touch controller receives the touch information from the touch detection device, converts it into contact coordinates, and then sends it to the touch controller.
  • the touch panel 11031 can be realized by various types of resistive, capacitive, infrared, and surface acoustic waves.
  • the input unit 1103 may also include other input devices 11032 .
  • other input devices 11032 may include, but are not limited to, one or more of physical keyboards, function keys (such as volume control keys, switch keys, etc.), trackballs, mice, joysticks, and the like.
  • the display unit 1104 may be used to display information input by the user or information provided to the user and various menus of the electronic device.
  • the display unit 1104 may include a display panel 11041, and optionally, the display panel 11041 may be configured in the form of a Liquid Crystal Display (LCD), an Organic Light-Emitting Diode (OLED), or the like.
  • the touch panel 11031 can cover the display panel 11041. When the touch panel 11031 detects a touch operation on or near it, it transmits it to the processor 1108 to determine the type of the touch event, and then the processor 1108 determines the type of the touch event according to the touch event. Type provides corresponding visual output on display panel 11041.
  • the touch panel 11031 and the display panel 11041 are used as two independent components to realize the input and output functions of the electronic device, but in some embodiments, the touch panel 11031 and the display panel 11041 can be integrated And realize the input and output functions of electronic equipment.
  • the electronic device may also include at least one sensor 1105, such as light sensors, motion sensors, and other sensors.
  • the light sensor may include an ambient light sensor and a proximity sensor, wherein the ambient light sensor may adjust the brightness of the display panel 11041 according to the brightness of the ambient light, and the proximity sensor may turn off the display panel 11041 and the display panel 11041 when the electronic device is moved to the ear. / or backlight.
  • the accelerometer sensor can detect the magnitude of acceleration in all directions (generally three axes), and can detect the magnitude and direction of gravity when stationary, and can be used for applications that recognize the posture of electronic devices (such as horizontal and vertical screen switching, related games, magnetometer attitude calibration), vibration recognition related functions (such as pedometer, tapping), etc.; in addition, electronic devices can also be equipped with other sensors such as gyroscopes, barometers, hygrometers, thermometers, infrared sensors, etc. This will not be repeated here.
  • Audio circuitry 1106, speakers 11061, and microphones 11062 may provide an audio interface between the user and the electronic device.
  • the audio circuit 1106 can convert the received audio data into an electrical signal, and transmit it to the speaker 11061, and the speaker 11061 converts it into a sound signal for output; on the other hand, the microphone 11062 converts the collected sound signal into an electrical signal, which is converted by the audio circuit 1106. After receiving, it is converted into audio data, and then the audio data is output to the processor 1108 for processing, and then sent to another electronic device through the RF circuit 1101, or the audio data is output to the memory 1102 for further processing.
  • Wi-Fi is a short-distance wireless transmission technology, and the electronic device can help users to send and receive emails, browse web pages, and access streaming media through the Wi-Fi module 1107, which provides users with wireless broadband Internet access.
  • FIG. 11 shows the Wi-Fi module 1107, it can be understood that it is not a necessary component of the electronic device, and can be completely omitted as required without changing the essence of the invention.
  • the processor 1108 is the control center of the electronic device, using various interfaces and lines to connect various parts of the entire electronic device, by running or executing the software programs and/or modules stored in the memory 1102, and calling the data stored in the memory 1102. , perform various functions of electronic equipment and process data, so as to monitor electronic equipment as a whole.
  • the processor 1108 may include one or more processing units; preferably, the processor 1108 may integrate an application processor and a modem, wherein the application processor mainly processes the operating system, user interface, and application programs, and the modem mainly processes Wireless communication. It can be understood that, the above-mentioned modulation and demodulation processor may not be integrated into the processor 1108.
  • the electronic device also includes a power supply 1109 (such as a battery) that supplies power to various components.
  • a power supply 1109 (such as a battery) that supplies power to various components.
  • the power supply can be logically connected to the processor 1108 through a power management system, so as to manage charging, discharging, and power consumption management functions through the power management system. .
  • the electronic device may further include a camera, a Bluetooth module, and the like, which will not be repeated here.
  • the electronic device depicted in FIG. 11 may be used to implement part or all of the processes in the method embodiment described in FIG. 3 of the present application. Reference may be made to the related descriptions in the foregoing embodiment in FIG. 3 , which will not be repeated here.
  • This embodiment also provides a computer storage medium, where computer instructions are stored in the computer storage medium.
  • the electronic device executes the above-mentioned relevant method steps to realize the blockchain verification in the above-mentioned embodiments. sign method.
  • This embodiment also provides a computer program product, which, when the computer program product runs on the electronic device, causes the electronic device to execute the above-mentioned relevant steps, so as to realize the blockchain signature verification method in the above-mentioned embodiment.
  • the embodiments of the present application also provide an apparatus, which may specifically be a chip, a component or a module, and the apparatus may include a connected processor and a memory; wherein, the memory is used for storing computer execution instructions, and when the apparatus is running, The processor can execute the computer-executed instructions stored in the memory, so that the chip executes the blockchain signature verification method in the above method embodiments.
  • the electronic device, computer storage medium, computer program product or chip provided in this embodiment are all used to execute the corresponding method provided above. Therefore, for the beneficial effects that can be achieved, reference can be made to the corresponding provided above. The beneficial effects in the method will not be repeated here.
  • the disclosed apparatus and method may be implemented in other manners.
  • the device embodiments described above are only illustrative.
  • the division of the modules or units is only a logical function division. In actual implementation, there may be other division methods.
  • multiple units or components may be combined. Or it may be integrated into another device, or some features may be omitted, or not implemented.
  • the shown or discussed mutual coupling or direct coupling or communication connection may be through some interfaces, indirect coupling or communication connection of devices or units, and may be in electrical, mechanical or other forms.
  • the units described as separate components may or may not be physically separated, and components shown as units may be one physical unit or multiple physical units, that is, may be located in one place, or may be distributed to multiple different places. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution in this embodiment.
  • each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically alone, or two or more units may be integrated into one unit.
  • the above-mentioned integrated units may be implemented in the form of hardware, or may be implemented in the form of software functional units.
  • the integrated unit if implemented in the form of a software functional unit and sold or used as an independent product, may be stored in a readable storage medium.
  • a readable storage medium including several instructions to make a device (which may be a single-chip microcomputer, a chip, etc.) or a processor (processor) to execute all or part of the steps of the methods described in the various embodiments of the present application.
  • the aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (Read-Only Memory, ROM), random access memory (Random Access Memory, RAM), magnetic disk or optical disk and other media that can store program codes .

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Multimedia (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请提供一种业务流错峰调度方法及相关设备,所述方法应用于业务流汇聚转发节点,所述方法包括:接收多个业务流;依据预设时间间隔,统计每个时间段接收到的每个业务流的流量;根据每个时间段接收到的每个业务流的流量识别每个业务流的突发流量;根据每个业务流的突发流量确定每个业务流的调度时延。本申请为多个业务流增加相应的调度时延,降低多个业务流的叠加流量峰值,避免所有业务流的转发时间延迟。

Description

业务流错峰调度方法及相关设备
本申请要求于2021年1月29日提交中国专利局、申请号为202110127349.1、发明名称为“业务流错峰调度方法及相关设备”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及通信技术领域,尤其涉及一种业务流错峰调度方法及相关设备。
背景技术
随着数据业务流量的不断增加以及实时音视频行业的快速发展,对网络传输质量的要求越来越高。当业务流量超过网络传输能力时,网络就会出现大时延、丢包、重传等现象,进而会使网络传输条件进一步恶化,严重降低网络体验,对视频监控、视频会议、虚拟现实(Virtual Reality,VR)游戏等实时视频类业务影响尤为明显。实时视频类业务多采用实时编码传输的方式,视频流量突发性比较明显,帧内编码帧(即I帧)数据量远大于前向预测编码帧(即P帧)的数据量,视频流具有较大的峰均比。多个视频同时传输时,如果不同视频流传输I帧的时间段有交叠,即发生I帧碰撞,则会产生非常高的瞬时突发流量,引起网络拥塞,出现拥塞丢包、重传等,影响网络体验。因此,控制网络流量大小,减少流量突发对网络的冲击,使网络传输的数据量和网络传输能力匹配,对保障及提升网络传输质量和网络体验至关重要。
发明内容
本申请实施例公开了一种业务流错峰调度方法及相关设备,能够实现瞬时突发流量的错峰调度。
本申请第一方面公开了一种业务流错峰调度方法,应用于业务流汇聚转发节点,所述方法包括:
接收多个业务流;
依据预设时间间隔,统计每个时间段接收到的每个业务流的流量;
根据每个时间段接收到的每个业务流的流量识别每个业务流的突发流量;
根据每个业务流的突发流量确定每个业务流的调度时延。
本申请实施例针对业务流(例如视频流)周期性流量突发的特点,为各个业务流增加相应的调度时延,降低多个业务流的叠加流量峰值,避免所有业务流的转发时间延迟。本申请实施例通过规划流量整形方案和资源分配,提高传输保障能力。在实时视频业务场景中,通过本申请实施例公开的多业务流错峰调度方法进行错峰调度,可以使视频流的I帧能够整帧传输,从而使部分视频流优先接收完整I帧并进行解码播放。
在一些可选的实施方式中,所述根据每个业务流的突发流量确定每个业务流的调度 时延包括:
根据每个时间段接收到的每个业务流的流量提取每个业务流的突发流量特征;
根据所述突发流量特征构建突发流量模型;
在所述突发流量模型中增加调度时延作为设计变量,得到调度后的突发流量模型;
对所述调度后的突发流量模型建立目标函数;
对所述目标函数进行优化求解,得到每个业务流的调度时延。
在一些可选的实施方式中,所述突发流量特征包括突发时间相位、突发流量大小和突发持续时间,所述根据所述突发流量特征构建突发流量模型包括:
根据所述突发时间相位、突发流量大小和突发持续时间构建突发流量函数。
在一些可选的实施方式中,所述根据所述突发时间相位、突发流量大小和突发持续时间构建突发流量函数包括:
对于每个业务流,对以时间为自变量的S型函数根据所述业务流的突发持续时间和突发时间相位进行平移以及根据第一伸缩系数进行伸缩,得到第一函数;
对所述S型函数进行翻转、根据所述业务流的突发时间相位进行平移以及根据第二伸缩系数进行伸缩,得到第二函数;
将所述第一函数和所述第二函数相乘,得到第三函数;
根据所述业务流的突发流量大小对所述第三函数进行伸缩,得到所述突发流量函数。
在一些可选的实施方式中,所述第一伸缩系数和所述第二伸缩系数均为1。
在一些可选的实施方式中,所述目标函数为最大值函数或熵函数。
在一些可选的实施方式中,所述突发流量特征包括突发流量大小、突发开始时刻和突发结束时刻,所述根据所述突发流量特征构建突发流量模型包括:
根据所述突发流量大小、突发开始时刻和突发结束时刻构建峰值流量撞峰矩阵。
在一些可选的实施方式中,所述根据所述突发流量大小、突发开始时刻和突发结束时刻构建峰值流量撞峰矩阵包括:
选择预测时间段个数,所述预测时间段个数与所述预设时间间隔的乘积大于所述业务流的突发周期;
以所述多个业务流的个数作为所述峰值流量撞峰矩阵的行数,以所述预测时间段个数作为所述峰值流量撞峰矩阵的列数,构建所述峰值流量撞峰矩阵,其中,若所述多个业务流中的一个业务流的一个预测时间段与该业务流的突发持续时间没有交叠,则所述峰值流量撞峰矩阵中该业务流该预测时间段对应元素的值为0,若该业务流的该预测时间段与该业务流的突发持续时间有交叠,则所述峰值流量撞峰矩阵中该业务流该预测时间段对应元素的值为该业务流的突发流量大小,所述突发持续时间由所述突发开始时刻和所述突发结束时刻确定。
在一些可选的实施方式中,所述目标函数为最大值函数。
在一些可选的实施方式中,所述对所述调度后的突发流量模型建立目标函数包括:
在最大调度时延的约束条件下,对所述调度后的突发流量模型建立所述目标函数。
通过在最大调度时延的约束条件下,对所述调度后的突发流量模型建立所述目标函数,可以实现一定时延约束条件下的错峰整形,使每个业务流因流量整形增加的时延可 控,时延约束可以根据实际业务需求和丢包重传的时延代价进行设置。
在一些可选的实施方式中,所述根据所述突发流量特征构建突发流量模型之前,所述方法还包括:
判断所述多个业务流中的每个业务流的突发流量是否与所述多个业务流中的其他业务流的突发流量发生撞峰;
若该业务流的突发流量与所述其他业务流的突发流量发生撞峰,则对该业务流构建所述突发流量模型。
通过对视频流的撞峰情况进行判断,当视频流不发生撞峰时不进行建模,可以减小建模的运算量,提高错峰调度效率。
在一些可选的实施方式中,所述方法还包括:
将每个业务流的调度时延发送给上游节点,使所述上游节点根据每个业务流的调度时延为该业务流增加相应的调度时延。
在一些可选的实施方式中,所述方法还包括:
根据每个业务流的调度时延,为每个业务流的调度时延增加相应的调度时延;
将增加调度时延后的所述多个业务流发送给下游节点。
本申请第二方面公开了一种业务流错峰调度装置,应用于业务流汇聚转发节点,所述装置包括:
业务流统计模块,用于接收多个业务流,依据预设时间间隔,统计每个时间段接收到的每个业务流的流量;
错峰调度算法模块,用于根据每个时间段接收到的每个业务流的流量识别每个业务流的突发流量,根据每个业务流的突发流量确定每个业务流的调度时延。
在一些可选的实施方式中,所述错峰调度算法模块用于:
根据每个时间段接收到的每个业务流的流量提取每个业务流的突发流量特征;
根据所述突发流量特征构建突发流量模型;
在所述突发流量模型中增加调度时延作为设计变量,得到调度后的突发流量模型;
对所述调度后的突发流量模型建立目标函数;
对所述目标函数进行优化求解,得到每个业务流的调度时延。
在一些可选的实施方式中,所述突发流量特征包括突发时间相位、突发流量大小和突发持续时间,所述错峰调度算法模块用于:
根据所述突发时间相位、突发流量大小和突发持续时间构建突发流量函数。
在一些可选的实施方式中,所述错峰调度算法模块用于:
对于每个业务流,对以时间为自变量的S型函数根据所述业务流的突发持续时间和突发时间相位进行平移以及根据第一伸缩系数进行伸缩,得到第一函数;
对所述S型函数进行翻转、根据所述业务流的突发时间相位进行平移以及根据第二伸缩系数进行伸缩,得到第二函数;
将所述第一函数和所述第二函数相乘,得到第三函数;
根据所述业务流的突发流量大小对所述第三函数进行伸缩,得到所述突发流量函数。
在一些可选的实施方式中,所述第一伸缩系数和所述第二伸缩系数均为1。
在一些可选的实施方式中,所述目标函数为最大值函数或熵函数。
在一些可选的实施方式中,所述突发流量特征包括突发流量大小、突发开始时刻和突发结束时刻,所述错峰调度算法模块用于:
根据所述突发流量大小、突发开始时刻和突发结束时刻构建峰值流量撞峰矩阵。
在一些可选的实施方式中,所述错峰调度算法模块用于:
选择预测时间段个数,所述预测时间段个数与所述预设时间间隔的乘积大于所述业务流的突发周期;
以所述多个业务流的个数作为所述峰值流量撞峰矩阵的行数,以所述预测时间段个数作为所述峰值流量撞峰矩阵的列数,构建所述峰值流量撞峰矩阵,其中,若所述多个业务流中的一个业务流的一个预测时间段与该业务流的突发持续时间没有交叠,则所述峰值流量撞峰矩阵中该业务流该预测时间段对应元素的值为0,若该业务流的该预测时间段与该业务流的突发持续时间有交叠,则所述峰值流量撞峰矩阵中该业务流该预测时间段对应元素的值为该业务流的突发流量大小,所述突发持续时间由所述突发开始时刻和所述突发结束时刻确定。
在一些可选的实施方式中,所述目标函数为最大值函数。
在一些可选的实施方式中,所述错峰调度算法模块用于:
在最大调度时延的约束条件下,对所述调度后的突发流量模型建立所述目标函数。
在一些可选的实施方式中,所述装置还包括:
判断模块,用于判断所述多个业务流中的每个业务流的突发流量是否与所述多个业务流中的其他业务流的突发流量发生撞峰。
在一些可选的实施方式中,所述装置还包括:
消息发送模块,用于将每个业务流的调度时延发送给上游节点,使所述上游节点根据每个业务流的调度时延为该业务流增加相应的调度时延。
在一些可选的实施方式中,所述装置还包括:
错峰调度模块,用于根据每个业务流的调度时延,为每个业务流的调度时延增加相应的调度时延,将增加调度时延后的所述多个业务流发送给下游节点。
本申请第三方面公开了一种计算机可读存储介质,包括计算机指令,当所述计算机指令在电子设备上运行时,使得所述电子设备执行如第一方面所述的业务流错峰调度方法。
本申请第四方面公开了一种电子设备,所述电子设备包括处理器和存储器,所述存储器用于存储指令,所述处理器用于调用所述存储器中的指令,使得所述电子设备执行如第一方面所述的业务流错峰调度方法。
本申请第五方面公开了一种芯片系统,该芯片系统应用于电子设备;芯片系统包括接口电路和处理器;接口电路和处理器通过线路互联;接口电路用于从电子设备的存储器接收信号,并向处理器发送信号,信号包括存储器中存储的计算机指令;当处理器执行该计算机指令时,芯片系统执行如第一方面所述的业务流错峰调度方法。
本申请第六方面公开了一种计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机执行如第一方面所述的业务流错峰调度方法。
本申请第七方面公开了一种装置,该装置具有实现上述第一方面所提供的方法中电子设备行为的功能。功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块。
应当理解地,上述提供的第二方面所述的业务流错峰调度装置、第三方面所述的计算机可读存储介质,第四方面所述的电子设备,第五方面所述的芯片系统、第六方面所述的计算机程序产品,及第七方面所述的装置均与上述第一方面的方法对应,因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。
附图说明
图1是本申请实施例公开的业务流错峰调度方法的应用场景示意图。
图2是本申请实施例公开的业务流汇聚转发节点的软件框图。
图3是本申请实施例公开的业务流错峰调度方法的流程图。
图4是突发流量的示意图。
图5是图2中的错峰调度算法模块的一种实现方案。
图6是突发流量函数的示意图。
图7是图2中的错峰调度算法模块的另一种实现方案。
图8是峰值流量撞峰矩阵取值的示意图。
图9是调度后的峰值流量撞峰矩阵取值的示意图。
图10是将错峰调度模块部署在终端的示意图。
图11是本申请实施例公开的电子设备的结构示意图。
具体实施方式
为了便于理解,示例性的给出了部分与本申请实施例相关概念的说明以供参考。
需要说明的是,本申请中“至少一个”是指一个或者多个,“多个”是指两个或多于两个。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。本申请的说明书和权利要求书及附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不是用于描述特定的顺序或先后次序。
图像组(group of pictures,GOP):视频编码器将多个编码后的视频帧划分为一组。GOP的大小为两个帧内编码帧(即I帧)之间的帧数。
帧内编码帧(I frame,I帧,又称为内部画面(intra picture)):一种视频帧类型,也称为关键帧。I帧的压缩程度较低,数据量较大。I帧的解码不依赖于其他帧。
前向预测编码帧(Predictive-frame,P帧):一种视频帧类型,压缩程度高,数据量远小于I帧数据量。P帧解码依赖于时间靠前的I帧和P帧信息。
双向预测内插编码帧(Bi-directional interpolated prediction frame,B帧):一种视频帧类型,压缩程度非常高,数据量小于P帧。B帧的解码对时间靠前和靠后的视频帧均有依赖。
流量:传输的数据量。
上游、下游:上游和下游是相对于当前节点和数据流方向而言,数据发送端到当前节点的部分称为上游,当前节点到接收端的部分称为下游。
入口、出口:入口是指报文到达当前节点的位置,出口是指报文从当前节点发出的位置。
传输带宽:是指单位时间网络能够传输的数据量。
传输速率:是指单位时间网络实际传输的数据量。由于业务数据传输需求可能小于网络传输能力,因此,传输速率可能小于传输带宽。
峰均比:是指业务流单位时间传输的数据量的最大值和平均值的比值。
突发流量:突发流量是指单位时间内传输的数据量突然增大,持续短暂时间之后又恢复为原来水平。这种变化在时间-流量曲线上呈现出“山峰形状”,因此也称为峰值流量。
排队:网络传输过程中需要将报文按一定的顺序发送,报文的数量过多时,无法及时发出的报文需要在缓存中排队等待发送。
网络拥塞:是指由于单位时间需要发送的数据量大于网络带宽,导致报文在网络中堆积,从而出现丢包、重传等情况。
拥塞丢包:在网络拥塞时,由于排队等待的报文个数大于网络缓存能力,或者报文在网络中排队等待的时间过长等因素引起的报文被丢弃。
重传:发送端和接收端通过消息交互发现报文丢失时,发送端重新发送丢失的报文。
花屏:由于数据丢失或者错误,导致解码出的视频帧图像严重受损。
卡顿:视频播放是按一定的时间顺序播放各个视频帧,当视频播放到某个时间,却没有接收到该时间对应的视频数据时,播放效果上会出现卡顿的现象。
网络体验:对于需要通过网络传输完成的业务,网络质量,如网络丢包、网络时延、网络传输速率等因素对业务的影响。
业务流:一组有序、有起点和终点的字节的(或报文的)业务数据序列。
流量整形:通过控制或者调度的方式改变业务流在不同时刻传输的数据量大小。
五元组:指源互联网协议(Internet Protocol,IP)地址、源端口、目的IP地址、目的端口和传输层协议号。IP协议中通过IP地址和端口两个信息确定唯一一个发送或者接收的地址。源IP地址和源端口组成发送端的地址,目的IP地址和目的端口组成接收端的地址。传输层协议号用来说明IP报文中承载的传输层协议,如传输控制协议(Transmission Control Protocol,TCP)、用户数据报协议(User Data Protocol,UDP)。各个协议用唯一的数字(即传输层协议号)标识,例如6表示TCP,17表示UDP。
为了更好地理解本申请实施例公开的业务流错峰调度方法及相关设备,下面首先对本申请业务流错峰调度方法的应用场景进行描述。
图1是本申请实施例公开的业务流错峰调度方法的应用场景示意图。其中,1A展示的是未在用户前置设备(Customer Premise Equipment,CPE)上应用本申请实施例提供的业务流错峰调度方法,1B展示的是在CPE上应用本申请实施例提供的业务流错峰调度方法。本申请业务流错峰调度方法应用于多业务流周期性突发流量撞峰的应用场景,例如图1所示实时监控视频上传业务的应用场景。如图1所示,网络中包括多个摄像头、CPE、基站(Base Station)、核心网设备(Core)和服务器。其中摄像头为终端,CPE为业务流汇聚转发节点,核心网设备为用户数据处理转发设备。每个摄像头只能监控到一块局部的区域,为了实现全方位的监控需要多个摄像头同时工作。多个摄像头将实时采集的监控视频通过CPE发送给基站,基站将数据经过核心网设备转发给服务器,从而实 现全方位的实时视频监控。
为了保证视频监控的实时性,需要将摄像头编码输出的视频帧实时地发送给服务器,视频流的瞬时流量大小与视频帧的数据量大小正相关。摄像头将多个视频帧编码后划分为GOP。编码后的视频帧包括I帧、P帧和B帧三种类型,每个GOP包括一个I帧和多个P帧,或者包括一个I帧和多个B帧。在本申请的一个实施例中,为了保证视频解码的实时性,实时视频编码的一个GOP中包含1个I帧和多个P帧,不包含B帧。在本申请的另一个实施例中,实时视频编码的一个GOP中包含1个I帧和多个B帧。I帧的压缩程度较低,I帧数据量是P帧数据量的数倍。多个摄像头上传的实时视频流在CPE汇聚,通过CPE发送给基站。实时视频流具有周期性流量突发的特点,当多个视频流的突发流量碰撞到一起(即突发流量撞峰)时会造成更大的突发流量,从而造成瞬间的网络拥塞。由于实时视频流具有周期性流量突发的特点,瞬间的网络拥塞会周期性的出现(即出现周期性突发流量撞峰)。
参见1A所示,在未应用本申请实施例提供的业务流错峰调度方法进行错峰调度时,CPE输出的不同视频流的流量突发时间有交叠,从而引起突发流量撞峰。参见1B所示,在应用本申请实施例提供的业务流错峰调度方法进行错峰调度后,CPE输出的不同视频流的流量突发时间没有交叠,避免了突发流量撞峰。
在本申请的其他实施例中,所述业务流错峰调度方法还可以应用于其他存在多业务流周期性突发流量撞峰的场景,例如视频点播(包括虚拟现实(Virtual Reality,VR)视频点播)、视频直播等场景。
图2是本申请实施例提供的业务流汇聚转发节点的软件框图。
本申请业务流错峰调度方法可以应用于网络中的业务流汇聚转发节点20,例如图1中的CPE。如图2所示,业务流汇聚转发节点20业务流错峰调度装置200,业务流错峰调度装置200包括业务流统计模块201、错峰调度算法模块202和错峰调度模块203。下面分别介绍各个模块的主要功能。
业务流统计模块201可以部署在业务流汇聚转发节点20的入口位置。业务流统计模块201用于接收多个业务流,依据预设时间间隔(例如10毫秒),统计每个时间段接收到的每个业务流的流量。
在本申请的一个实施例中,预设时间间隔设定为小于每个业务流的突发持续时间。
例如,图1所示的实时监控视频上传业务场景中,突发流量由I帧数据传输产生,预设时间间隔可以设定为小于I帧传输时间。例如,I帧的传输时间为20毫秒,预设时间间隔可以设定为10毫秒。
错峰调度算法模块202用于根据每个时间段接收到的每个业务流的流量识别每个业务流的突发流量,根据每个业务流的突发流量确定每个业务流的调度时延。在本申请的一个实施例中,错峰调度算法模块202根据每个时间段接收到的每个业务流的流量提取每个业务流的突发流量特征,根据每个业务流的突发流量特征对突发流量进行建模,得到突发流量模型。错峰调度算法模块202在突发流量模型中增加调度时延作为设计变量,得到调度后的突发流量模型,对调度后的突发流量模型建立目标函数,对目标函数进行优化求解,得到每个业务流的调度时延,即获得使撞峰程度最低的时延调度方案。
在本申请的一个实施例中,错峰调度算法模块202在最大调度时延的约束条件下, 对目标函数进行优化求解,以保证调度后的业务流满足实际业务需求。
错峰调度模块203可以部署在业务流汇聚转发节点20的出口位置。错峰调度模块203根据时延调度方案,为每个业务流增加相应的调度时延,使各个业务流的突发流量时间错开,实现错峰调度。
图3是本申请实施例公开的业务流错峰调度方法的流程图。
本申请实施例公开的业务流错峰调度方法可以应用在业务流汇聚转发节点,例如图1所示CPE,图3所示实施例以图1的应用场景为例进行说明。CPE包括业务流统计模块、错峰调度算法模块和错峰调度模块(参见图2所示)。下面根据图3详细介绍本申请的实现流程。
301,多个摄像头将多个实时的视频流发送给CPE。
摄像头通过报文将视频流发送给CPE。
在本申请的一个实施例中,摄像头通过IP报文向CPE发送视频流。IP报文具有五元组,即源IP地址、源端口、目的IP地址、目的端口和协议号。
302,业务流统计模块依据预设时间间隔,统计CPE每个时间段接收到的每个视频流的流量。
每个时间段的时间长度等于预设时间间隔。例如,起始时刻为t 0,预设时间间隔为Δt,则第M个时间段为t 0+M·Δt<t<t 0+(M+1)·Δt。
在本申请的一个实施例中,摄像头通过IP报文向CPE发送视频流,业务流统计模块可以根据IP报文的五元组区分各条视频流。
CPE每个时间段接收到的每个视频流的流量可以按照该时间段内接收到的该条视频流的报文(例如IP报文)的个数来统计。也就是说,CPE每个时间段接收到的每个视频流的流量可以等于该时间段内接收到的该条视频流的报文的个数。
或者,CPE每个时间段接收到的每个视频流的流量可以按照该时间段内接收到的该条视频流的报文的大小来统计。也就是说,CPE每个时间段接收到的每个视频流的流量可以等于该时间段内接收到的该条视频流的所有报文的大小之和。
303,业务流统计模块将每个时间段接收到的每个视频流的流量传递给错峰调度算法模块。
304,错峰调度算法模块根据每个时间段接收到的每个业务流的流量识别突发流量。
突发流量是指单位时间内传输的数据量突然增大,持续短暂时间之后又减小。
图4是实时视频流的流量变化图,图中“山峰状”的突起表示突发流量。
业务流统计模块可以根据各个时间段接收到的流量计算各个时间段的流量,根据流量的均值和方差计算突发流量阈值。若某个时间段的流量超过该阈值,确定是突发流量。
某个时间段的流量除以预设时间间隔就是该时间段的传输速率,即瞬时速率。
突发流量阈值可以表示为:
r threshold=f(r mean,r var);
其中,r threshold表示突发流量阈值,r mean表示流量的均值,r var表示流量的方差。r mean和r var可以通过指数平滑法计算得到。在本申请的一个实施例中,r threshold=r mean+k·r var,其中k为常量,例如k=3。
305,错峰调度算法模块提取每个业务流的突发流量特征。
在本申请的一个实施例中,提取的突发流量特征包括突发时间相位、突发流量大小和突发持续时间。
在本申请的另一个实施例中,提取的突发流量特征包括突发流量大小、突发开始时刻和突发结束时刻。
提取的突发流量特征还可以包括突发周期。
突发开始时刻(t ps):流量从小于突发流量阈值转变为大于突发流量阈值的时刻。
突发结束时刻(t pe):流量从大于突发流量阈值转变为小于突发流量阈值的时刻。
突发持续时间(w):从突发流量的开始时刻(即突发开始时刻)到结束时刻(即突发结束时刻)的时间。在实时视频流中,表示一个I帧(关键帧)的持续时长。
突发流量大小(r):突发流量的流量最大值或突发持续时间内的流量平均值。
突发周期(T):相邻两次突发流量的时间间隔。在实时视频流中,为一个GOP视频帧的传输时间。
突发时间相位(θ i):设定任意一个时间点t 0,第i个业务流(例如视频流)的突发时间相位θ i是指第i个业务流的第一个突发开始时刻相对于t 0的时间差。利用突发时间相位θ i、t 0和突发周期T可以计算第i个业务流的任意一个突发流量的突发开始时刻。例如,第i个业务流的第j个突发流量的突发开始时刻为:t 0i+T·(j-1)。
306,错峰调度算法模块根据突发流量特征构建突发流量模型。
在本申请的一个实施例中,错峰调度算法模块在对各条视频流的突发流量进行建模之前,判断每个视频流是否与其他视频流发生突发流量撞峰。若某条视频流与其他视频流未发生突发流量撞峰,则不对该条视频流的突发流量进行建模。否则,若该条视频流与其他视频流发生突发流量撞峰,则对该条视频流的突发流量进行建模。
突发流量撞峰是指不同业务流(例如视频流)的突发流量碰撞在一起,突发流量叠加后造成更大的瞬时突发流量。突发流量撞峰可能发生在两个业务流之间,也可能发生在多个业务流之间。错峰调度算法模块可以判断该条视频流的突发持续时间与其他视频流的突发持续时间是否有交叠,若该条视频流的突发持续时间与其他视频流的突发持续时间有交叠,则判断该条视频流与其他视频流发生突发流量撞峰。
通过对视频流的撞峰情况进行判断,当视频流未发生突发流量撞峰时不对视频流进行建模,可以减小建模的运算量,提高错峰调度效率。
307,错峰调度算法模块在突发流量模型中增加调度时延作为设计变量,得到调度后的突发流量模型。
308,错峰调度算法模块对调度后的突发流量模型建立目标函数。
目标函数可以是最大值函数或熵函数。
309,错峰调度算法模块对目标函数进行优化求解,得到时延调度方案(即得到每个视频流的调度时延)。
在本申请的一个实施例中,错峰调度算法模块在对调度后的突发流量模型对目标函数进行优化求解时,以最大调度时延作为目标函数的约束条件。因此,得到的时延调度方案是在满足最大调度时延约束条件下,使撞峰程度最低的时延调度方案。
最大调度时延是业务能够容忍增加的最大时延。可以根据业务需求设定最大调度时延。以最大调度时延作为目标函数的约束条件,可以获得更加合理的调度方案,保证调 度结果满足实际业务需求。
306-309的具体实现过程在图5、图6中进行描述。
310,错峰调度算法模块将时延调度方案传递给错峰调度模块。
311,错峰调度模块根据时延调度方案,为各条视频流增加相应的调度时延。
312,错峰调度模块将增加调度时延后的视频流发送给基站。
如果调度时延为0,错峰调度模块直接将视频流发送给基站。
为视频流增加调度时延就是为该条视频流的报文增加调度时延。
错峰调度模块根据时延调度方案,为各条视频流的报文增加相应的调度时延,将增加调度时延后的视频流发送给基站,从而实现视频流的错峰调度,降低CPE转发给基站的总流量的峰均比。
需要说明的是,若摄像头发送给CPE的视频流发生变化(例如新增一个视频流或减少一个视频流),则本申请实施例的业务流错峰调度方法根据变化后的视频流确定新的时延调度方案,根据新的时延调度方案对视频流进行错峰调度。
例如,业务流统计模块根据IP报文的五元组区分各条视频流,当检测到业务流的数量发生变化时,业务流统计模块将每个时间段接收到的变化后的每个视频流的流量传递给错峰调度算法模块(即步骤303),错峰调度模块重新执行304-309,得到新的时延调度方案。
针对要传输的数据量超过网络传输能力而引起拥塞的问题,流量整形是一种行之有效的方法。流量整形方法可以部署在网络传输路径的报文转发设备(即业务流汇聚转发节点),通过改变单位时间传输的数据量,来避免由于向下游节点发送的数据量过大而引起网络拥塞。现有的流量整形的方法采用限速的方式(例如令牌桶、漏桶及其组合方式)控制当前节点向下游节点发送数据的数据量,达到减少流量突发和网络拥塞的目的。
现有的流量整形方法存在如下不足:
(1)对于实时视频业务,一个视频帧需要拆分成多个报文进行传输,接收端需要接收到同一视频帧的所有报文才能成功解码该视频帧。现有流量整形方法单纯地根据预设的发送速率阈值限制所有视频流的转发速率,导致所有视频流的时延增加,所有视频流的解码时刻延迟。
(2)现有流量整形算法本质上是采用设定速率阈值的方式进行速率控制。这种方式在有线传输、带宽相对稳定的场景下可以获得较好的效果。然而,在无线传输场景下,带宽(网络最大传输速率,即网络传输能力)在不断变化,波动较大,预先设定的速率阈值无法时刻匹配变化的带宽。由此会出现如下两个问题:带宽充足时,由于整形算法设定的速率阈值限制了发送速率,导致报文传输速率低;带宽不足时,由于整形算法设定的速率阈值偏高,导致过多的数据被发送到下游网络,导致网络拥塞。
本申请实施例针对业务流(例如视频流)周期性流量突发的特点,为各个业务流增加相应的调度时延,降低多个业务流的叠加流量峰值,避免所有业务流的转发时间延迟。本申请实施例通过撞峰预测,提前规划流量整形方案和资源分配,提高传输保障能力。本申请实施例实现了一定时延约束条件下的错峰整形,使每个业务流因流量整形增加的时延可控,时延约束可以根据实际业务需求和丢包重传的时延代价进行设置。在实时视频业务场景中,通过本申请实施例公开的多业务流错峰调度方法进行错峰调度,可以使 视频流的I帧能够整帧传输,从而使部分视频流优先接收完整I帧并进行解码播放。
本申请提供的实施例中,错峰调度算法模块根据突发流量特征对突发流量进行建模,得到突发流量模型。错峰调度算法模块在突发流量模型中增加调度时延作为设计变量,得到调度后的突发流量模型,并对调度后的突发流量模型进行优化求解,得到时延调度方案。本申请实施例提供了两种建模及优化求解的方案。
方案一
方案一通过构造函数(即突发流量函数)描述各个业务流的流量特征。
方案一的具体实现过程参阅图5所示。
501,错峰调度算法模块根据突发时间相位、突发流量大小和突发持续时间构建突发流量函数。
突发流量函数是时间与流量的关系式,表示业务流的流量随时间的变化。
在本申请的一个实施例中,突发流量函数是基于以时间为自变量的S型函数构建的。S型函数也叫Sigmoid函数,以时间t为自变量的S型函数Z 0(t)为:
Figure PCTCN2021117778-appb-000001
对于每个业务流,错峰调度算法模块对S型函数根据业务流的突发持续时间和突发时间相位进行平移以及根据第一伸缩系数进行伸缩,得到业务流的第一函数。第i个业务流的第一函数Z 1,i(t)可以表示为:
Figure PCTCN2021117778-appb-000002
其中,θ i为第i个业务流的突发时间相位,w i为第i个业务流的突发持续时间,α为第一伸缩系数。
错峰调度算法模块对S型函数进行翻转、根据业务流的突发时间相位进行平移以及根据第二伸缩系数进行伸缩,得到第二函数。第i个业务流的第二函数Z 2,i(t)可以表示为:
Figure PCTCN2021117778-appb-000003
其中,β为第二伸缩系数。
在本申请的一个实施例中,第一伸缩系数和第二伸缩系数均为1。
第一伸缩系数和第二伸缩系数可以为其他数值。例如,第一伸缩系数为1,第二伸缩系数为3。
错峰调度算法模块将第一函数和第二函数相乘,得到第三函数。第i个业务流的第三函数Z 3,i(t)可以表示为:
Figure PCTCN2021117778-appb-000004
错峰调度算法模块根据突发流量大小对第三函数进行伸缩,得到突发流量函数。第i个业务流的突发流量函数X i(t|θ i,r i,w i,α,β)可以表示为:
Figure PCTCN2021117778-appb-000005
其中,X i是第i个业务流的流量,r i为第i个业务流的突发流量大小。
图6是突发流量函数的示意图,其中,60为突发流量函数曲线,61为根据统计的流 量得到的时间-流量曲线。
502,错峰调度算法模块在突发流量函数中增加调度时延作为设计变量,得到调度后的突发流量函数。
例如,对于突发流量函数X i(t|θ i,r i,w i,α,β),调度后的突发流量函数可以表示为:
Figure PCTCN2021117778-appb-000006
t i表示在第i个业务流增加调度时延t i。各个业务流的调度时延可以用调度向量S 1表示,
Figure PCTCN2021117778-appb-000007
503,错峰调度算法模块对调度后的突发流量函数建立目标函数。
目标函数是调度时延t i的数学函数,用于反映错峰调度的目标。
在本申请的一个实施例中,调度后的突发流量函数的目标函数可以是叠加流量的最大值函数或者熵函数,即
Figure PCTCN2021117778-appb-000008
或者
Figure PCTCN2021117778-appb-000009
其中,f 1(·)表示调度后的突发流量函数的目标函数,g 1(t)是所有业务流在时间t的叠加流量,g 1(t)可以表示为:
Figure PCTCN2021117778-appb-000010
504,错峰调度算法模块在最大调度时延的约束条件下,对调度后的突发流量函数的目标函数进行优化求解,得到时延调度方案。
在最大调度时延的约束条件下,对调度后的突发流量函数的目标函数进行优化求解可以表示为:
Figure PCTCN2021117778-appb-000011
其中,t max表示最大调度时延;
Figure PCTCN2021117778-appb-000012
为约束条件,即满足
Figure PCTCN2021117778-appb-000013
优化目标为在最大调度时延的约束条件(即
Figure PCTCN2021117778-appb-000014
)下,通过编排调度使所有业务流的叠加流量(即叠加流量)的峰均比降低。例如,目标函数为熵函数,优化目标为:
Figure PCTCN2021117778-appb-000015
上述优化目标表示熵值最大化,即各个业务流的叠加流量在各个时间段的分布越均匀、峰值流量越小越好。
对于该优化问题的求解,可以采用基于梯度下降的启发式优化算法(例如拟牛顿迭代法)求解局部最优解,得到最终的时延调度方案
Figure PCTCN2021117778-appb-000016
方案一通过构造函数(即突发流量函数)描述各个业务流的流量特征,根据突发流量函数进行目标优化,从而实现资源的规划分配,提高网络传输保障能力。
方案二
方案二通过流量矩阵描述各个业务流的流量特征。方案二的具体实现过程参阅图7所示。
701,错峰调度算法模块根据业务流的突发流量大小、突发开始时刻和突发结束时刻构建峰值流量撞峰矩阵。
峰值流量撞峰矩阵用于表示各个预测时间段出现的突发流量。
在本申请的一个实施例中,错峰调度算法模块选择预测时间段个数,预测时间段个数与预设时间间隔的乘积大于业务流的突发周期。
错峰调度算法模块以业务流的个数作为峰值流量撞峰矩阵的行数,以预测时间段个数作为峰值流量撞峰矩阵的列数,构建峰值流量撞峰矩阵。峰值流量撞峰矩阵的每一行表示一个业务流在不同预测时间段的流量。若一个业务流的一个预测时间段与该业务流的突发持续时间没有交叠,则峰值流量撞峰矩阵中该业务流该预测时间段对应元素的值为0。若该业务流的该预测时间段与该业务流的突发持续时间有交叠,则峰值流量撞峰矩阵中该业务流该预测时间段对应元素的值为该业务流的突发流量大小。
从突发开始时刻到突发结束时刻的时间为业务流的突发持续时间。
假设业务流个数为N,预测时间段个数为n Len,n Len满足:
n Len×Δt>T
其中,Δt为预设时间间隔,T为突发周期,
峰值流量撞峰矩阵为Y,Y中的元素为Y(i,j),i∈[1,N],j∈[1,n Len],Y的每一行表示一个业务流在不同时间段的流量,Y(i,j)定义如下:
Figure PCTCN2021117778-appb-000017
上式表示当满足t pe≤t j-或者t j+≤t ps时,Y(i,j)取值为r i;当不满足t pe≤t j-和t j+≤t ps时,Y(i,j)取值为0。其中,r i为第i个业务流的突发流量大小,t ps表示突发开始时刻,t pe表示突发结束时刻,t j-,t j+表示第j个时间段n j的起始时间和结束时间,即n j=[t j-,t j+]。
图8是峰值流量撞峰矩阵取值的示意图。图8展示了峰值流量撞峰矩阵中的元素的取值。
702,错峰调度算法模块在峰值流量撞峰矩阵中增加调度时延作为设计变量,得到调度后的峰值流量撞峰矩阵。
第i条业务流的调度时窗个数为n i,即第i条业务流的调度时延t i为n i·Δt,,Δt为预设时间间隔,调度向量可以表示为
Figure PCTCN2021117778-appb-000018
调度后的峰值流量撞峰矩阵可以表示为:
Figure PCTCN2021117778-appb-000019
上式表示当满足t ps+n i·Δt<j<t pe+n i·Δt时,
Figure PCTCN2021117778-appb-000020
取值为Y(i,j-n i);当不满足t ps+n i·Δt<j<t pe+n i·Δt时,
Figure PCTCN2021117778-appb-000021
取值为0。
图9是调度后的峰值流量撞峰矩阵取值的示意图。图9展示了第i个业务流增加n i=2(即两个预设时间间隔)的调度时延后,调度后的峰值流量撞峰矩阵中元素(即
Figure PCTCN2021117778-appb-000022
)的取值。
703,错峰调度算法模块对调度后的峰值流量撞峰矩阵建立目标函数。
在本申请的一个实施例中,调度后的峰值流量撞峰矩阵的目标函数可以是所有业务 流的叠加流量的最大值函数,即
Figure PCTCN2021117778-appb-000023
f 2(·)表示调度后的峰值流量撞峰矩阵的目标函数,g 2(j)是所有业务流的叠加流量,g 2(j)可以表示为:
Figure PCTCN2021117778-appb-000024
704,错峰调度算法模块在最大调度时延的约束条件下,对调度后的峰值流量撞峰矩阵的目标函数进行优化求解,得到时延调度方案。
在最大调度时延的约束条件下,对调度后的峰值流量撞峰矩阵的目标函数进行优化求解可以表示为:
Figure PCTCN2021117778-appb-000025
s.t.n i≤n max为约束条件,即满足n i≤n max
最大调度时窗个数为
Figure PCTCN2021117778-appb-000026
其中
Figure PCTCN2021117778-appb-000027
表示向下取整,t max是最大调度时延。
这种形式直接以叠加流量的最大值最小化为目标,即叠加流量的峰值流量最小化。
由于方案二的建模方式没有显式的函数表达式,无法使用梯度下降优化算法(例如拟牛顿迭代法)进行求解。方案二可以采用遗传算法、粒子群等启发式优化算法对目标函数进行求解,得到各个业务流的调度时延
Figure PCTCN2021117778-appb-000028
本申请实施例通过业务流统计模块、错峰调度算法模块、错峰调度模块实现多业务流错峰调度。上述实施例中,业务流统计模块、错峰调度算法模块、错峰调度模块部署在业务流汇聚转发节点(例如CPE)。其中错峰调度模块为各个业务流增加调度时延实现错峰调度。在本申请的其他实施例中,错峰调度模块可以部署在任意的具有业务流控制能力的上游节点。例如,在视频监控场景中,将错峰调度模块部署在摄像头(终端)中。
图10是将错峰调度模块部署在终端的示意图。
如图10所示,终端(例如终端1和终端2)包括错峰调度模块,业务流汇聚转发节点包括业务流统计模块、错峰调度算法模块和消息发送模块。10A中,错峰调度模块按照原有时序向业务流汇聚转发节点发送业务流。错峰调度算法模块求解时延调度方案,通过消息发送模块将每个业务流的调度时延发送给相应的终端。10B中,错峰调度模块根据调度时延对业务流进行调整,以调整业务流的突发流量出现的时刻。
将错峰调度模块部署在终端上可以调整突发大数据量的生成时刻,如,在实时视频流中调整I帧编码的时刻。这种方式可以在不引入额外时延的前提下,从数据源头上解决网络传输过程中在汇聚节点流量撞峰的问题。
图11是本申请实施例公开的一种电子设备(业务流汇聚转发节点或终端)的结构示意图。如图11所示,电子设备110可以包括:射频(Radio Frequency,RF)电路1101、存储器1102、输入单元1103、显示单元1104、传感器1105、音频电路1106、Wi-Fi模块1107、处理器1108以及电源1109等部件。本领域技术人员可以理解,图11中示出的结构并不构成对业务流汇聚转发节点的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
RF电路1101可用于收发信息或在通话过程中,对信号进行接收和发送,特别地,接收基站的下行信息后,转给处理器1108进行处理;另外,将涉及上行的数据发送给基 站。通常,RF电路1101包括,但不限于:天线、至少一个放大器、收发信机、耦合器、低噪声放大器(Low Noise Amplifier,LNA)、双工器等。
存储器1102可用于存储软件程序以及模块,处理器1108通过运行存储在存储器1102中的软件程序以及模块,从而执行电子设备的各种功能应用以及数据处理。存储器1102可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据电子设备的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器1102可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
输入单元1103可用于接收输入的数字或字符信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入。具体地,输入单元1103可包括触控面板11031以及其他输入设备11032。触控面板11031,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触控笔等任何适合的物体或附件在触控面板11031上或在触控面板11031附近的操作),并根据预先设定的程序驱动相应的连接装置。可选地,触控面板11031可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器1108,并接收处理器1108发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板11031。除了触控面板11031,输入单元1103还可以包括其他输入设备11032。具体地,其他输入设备11032可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元1104可用于显示由用户输入的信息或提供给用户的信息以及电子设备的各种菜单。显示单元1104可包括显示面板11041,可选地,可以采用液晶显示器(Liquid Crystal Display,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板11041。进一步地,触控面板11031可覆盖显示面板11041,当触控面板11031检测到在其上或附近的触摸操作后,传送给处理器1108以确定触摸事件的类型,随后处理器1108根据触摸事件的类型在显示面板11041上提供相应的视觉输出。虽然在图11中,触控面板11031与显示面板11041是作为两个独立的部件来实现电子设备的输入和输出功能,但是在某些实施例中,可以将触控面板11031与显示面板11041集成而实现电子设备的输入和输出功能。
电子设备还可包括至少一种传感器1105,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板11041的亮度,接近传感器可在电子设备移动到耳边时,关闭显示面板11041和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别电子设备姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;此外,电子设备还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路1106、扬声器11061,传声器11062可提供用户与电子设备之间的音频接 口。音频电路1106可将接收到的音频数据转换后的电信号,传输到扬声器11061,由扬声器11061转换为声音信号输出;另一方面,传声器11062将收集的声音信号转换为电信号,由音频电路1106接收后转换为音频数据,再将音频数据输出处理器1108处理后,经RF电路1101发送给另一电子设备,或者将音频数据输出至存储器1102以便进一步处理。
Wi-Fi属于短距离无线传输技术,电子设备通过Wi-Fi模块1107可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图11示出了Wi-Fi模块1107,但是可以理解的是,其并不属于电子设备的必需构成,完全可以根据需要、在不改变发明本质的范围内进行省略。
处理器1108是电子设备的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过运行或执行存储在存储器1102内的软件程序和/或模块,以及调用存储在存储器1102内的数据,执行电子设备的各种功能和处理数据,从而对电子设备进行整体监控。可选地,处理器1108可包括一个或多个处理单元;优选的,处理器1108可集成应用处理器和调制解调器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1108中。
电子设备还包括给各个部件供电的电源1109(比如电池),可选地,电源可以通过电源管理系统与处理器1108逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
尽管未示出,电子设备还可以包括摄像头、蓝牙模块等,在此不再赘述。
图11中描述的电子设备可以用于实施本申请图3介绍的方法实施例中的部分或全部流程,可参见前述图3所述实施例中的相关阐述,这里不再赘述。
本实施例还提供一种计算机存储介质,该计算机存储介质中存储有计算机指令,当该计算机指令在电子设备上运行时,使得电子设备执行上述相关方法步骤实现上述实施例中的区块链验签方法。
本实施例还提供了一种计算机程序产品,当该计算机程序产品在电子设备上运行时,使得电子设备执行上述相关步骤,以实现上述实施例中的区块链验签方法。
另外,本申请的实施例还提供一种装置,这个装置具体可以是芯片,组件或模块,该装置可包括相连的处理器和存储器;其中,存储器用于存储计算机执行指令,当装置运行时,处理器可执行存储器存储的计算机执行指令,以使芯片执行上述各方法实施例中的区块链验签方法。
其中,本实施例提供的电子设备、计算机存储介质、计算机程序产品或芯片均用于执行上文所提供的对应的方法,因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其 它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,该模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
该作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
该集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (29)

  1. 一种业务流错峰调度方法,应用于业务流汇聚转发节点,其特征在于,所述方法包括:
    接收多个业务流;
    依据预设时间间隔,统计每个时间段接收到的每个业务流的流量;
    根据每个时间段接收到的每个业务流的流量识别每个业务流的突发流量;
    根据每个业务流的突发流量确定每个业务流的调度时延。
  2. 如权利要求1所述的业务流错峰调度方法,其特征在于,所述根据每个业务流的突发流量确定每个业务流的调度时延包括:
    根据每个时间段接收到的每个业务流的流量提取每个业务流的突发流量特征;
    根据所述突发流量特征构建突发流量模型;
    在所述突发流量模型中增加调度时延作为设计变量,得到调度后的突发流量模型;
    对所述调度后的突发流量模型建立目标函数;
    对所述目标函数进行优化求解,得到每个业务流的调度时延。
  3. 如权利要求2所述的业务流错峰调度方法,其特征在于,所述突发流量特征包括突发时间相位、突发流量大小和突发持续时间,所述根据所述突发流量特征构建突发流量模型包括:
    根据所述突发时间相位、突发流量大小和突发持续时间构建突发流量函数。
  4. 如权利要求3所述的业务流错峰调度方法,其特征在于,所述根据所述突发时间相位、突发流量大小和突发持续时间构建突发流量函数包括:
    对于每个业务流,对以时间为自变量的S型函数根据所述业务流的突发持续时间和突发时间相位进行平移以及根据第一伸缩系数进行伸缩,得到第一函数;
    对所述S型函数进行翻转、根据所述业务流的突发时间相位进行平移以及根据第二伸缩系数进行伸缩,得到第二函数;
    将所述第一函数和所述第二函数相乘,得到第三函数;
    根据所述业务流的突发流量大小对所述第三函数进行伸缩,得到所述突发流量函数。
  5. 如权利要求4所述的业务流错峰调度方法,其特征在于,所述第一伸缩系数和所述第二伸缩系数均为1。
  6. 如权利要求4所述的业务流错峰调度方法,其特征在于,所述目标函数为最大值函数或熵函数。
  7. 如权利要求2所述的业务流错峰调度方法,其特征在于,所述突发流量特征包括突发流量大小、突发开始时刻和突发结束时刻,所述根据所述突发流量特征构建突发流量模型包括:
    根据所述突发流量大小、突发开始时刻和突发结束时刻构建峰值流量撞峰矩阵。
  8. 如权利要求7所述的业务流错峰调度方法,其特征在于,所述根据所述突发流量大小、突发开始时刻和突发结束时刻构建峰值流量撞峰矩阵包括:
    选择预测时间段个数,所述预测时间段个数与所述预设时间间隔的乘积大于所述业 务流的突发周期;
    以所述多个业务流的个数作为所述峰值流量撞峰矩阵的行数,以所述预测时间段个数作为所述峰值流量撞峰矩阵的列数,构建所述峰值流量撞峰矩阵,其中,若所述多个业务流中的一个业务流的一个预测时间段与该业务流的突发持续时间没有交叠,则所述峰值流量撞峰矩阵中该业务流该预测时间段对应元素的值为0,若该业务流的该预测时间段与该业务流的突发持续时间有交叠,则所述峰值流量撞峰矩阵中该业务流该预测时间段对应元素的值为该业务流的突发流量大小,所述突发持续时间由所述突发开始时刻和所述突发结束时刻确定。
  9. 如权利要求8所述的业务流错峰调度方法,其特征在于,所述目标函数为最大值函数。
  10. 如权利要求2至9中任一项所述的业务流错峰调度方法,其特征在于,所述对所述调度后的突发流量模型建立目标函数包括:
    在最大调度时延的约束条件下,对所述调度后的突发流量模型建立所述目标函数。
  11. 如权利要求2至10中任一项所述的业务流错峰调度方法,其特征在于,所述根据所述突发流量特征构建突发流量模型之前,所述方法还包括:
    判断所述多个业务流中的每个业务流的突发流量是否与所述多个业务流中的其他业务流的突发流量发生撞峰;
    若该业务流的突发流量与所述其他业务流的突发流量发生撞峰,则对该业务流构建所述突发流量模型。
  12. 如权利要求1至10中任一项所述的业务流错峰调度方法,其特征在于,所述方法还包括:
    将每个业务流的调度时延发送给上游节点,使所述上游节点根据每个业务流的调度时延为该业务流增加相应的调度时延。
  13. 如权利要求1至10中任一项所述的业务流错峰调度方法,其特征在于,所述方法还包括:
    根据每个业务流的调度时延,为每个业务流的调度时延增加相应的调度时延;
    将增加调度时延后的所述多个业务流发送给下游节点。
  14. 一种业务流错峰调度装置,应用于业务流汇聚转发节点,其特征在于,所述装置包括:
    业务流统计模块,用于接收多个业务流,依据预设时间间隔,统计每个时间段接收到的每个业务流的流量;
    错峰调度算法模块,用于根据每个时间段接收到的每个业务流的流量识别每个业务流的突发流量,根据每个业务流的突发流量确定每个业务流的调度时延。
  15. 如权利要求14所述的业务流错峰调度装置,其特征在于,所述错峰调度算法模块用于:
    根据每个时间段接收到的每个业务流的流量提取每个业务流的突发流量特征;
    根据所述突发流量特征构建突发流量模型;
    在所述突发流量模型中增加调度时延作为设计变量,得到调度后的突发流量模型;
    对所述调度后的突发流量模型建立目标函数;
    对所述目标函数进行优化求解,得到每个业务流的调度时延。
  16. 如权利要求15所述的业务流错峰调度装置,其特征在于,所述突发流量特征包括突发时间相位、突发流量大小和突发持续时间,所述错峰调度算法模块用于:
    根据所述突发时间相位、突发流量大小和突发持续时间构建突发流量函数。
  17. 如权利要求16所述的业务流错峰调度装置,其特征在于,所述错峰调度算法模块用于:
    对于每个业务流,对以时间为自变量的S型函数根据所述业务流的突发持续时间和突发时间相位进行平移以及根据第一伸缩系数进行伸缩,得到第一函数;
    对所述S型函数进行翻转、根据所述业务流的突发时间相位进行平移以及根据第二伸缩系数进行伸缩,得到第二函数;
    将所述第一函数和所述第二函数相乘,得到第三函数;
    根据所述业务流的突发流量大小对所述第三函数进行伸缩,得到所述突发流量函数。
  18. 如权利要求17所述的业务流错峰调度装置,其特征在于,所述第一伸缩系数和所述第二伸缩系数均为1。
  19. 如权利要求17所述的业务流错峰调度装置,其特征在于,所述目标函数为最大值函数或熵函数。
  20. 如权利要求15所述的业务流错峰调度装置,其特征在于,所述突发流量特征包括突发流量大小、突发开始时刻和突发结束时刻,所述错峰调度算法模块用于:
    根据所述突发流量大小、突发开始时刻和突发结束时刻构建峰值流量撞峰矩阵。
  21. 如权利要求20所述的业务流错峰调度装置,其特征在于,所述错峰调度算法模块用于:
    选择预测时间段个数,所述预测时间段个数与所述预设时间间隔的乘积大于所述业务流的突发周期;
    以所述多个业务流的个数作为所述峰值流量撞峰矩阵的行数,以所述预测时间段个数作为所述峰值流量撞峰矩阵的列数,构建所述峰值流量撞峰矩阵,其中,若所述多个业务流中的一个业务流的一个预测时间段与该业务流的突发持续时间没有交叠,则所述峰值流量撞峰矩阵中该业务流该预测时间段对应元素的值为0,若该业务流的该预测时间段与该业务流的突发持续时间有交叠,则所述峰值流量撞峰矩阵中该业务流该预测时间段对应元素的值为该业务流的突发流量大小,所述突发持续时间由所述突发开始时刻和所述突发结束时刻确定。
  22. 如权利要求21所述的业务流错峰调度装置,其特征在于,所述目标函数为最大值函数。
  23. 如权利要求15至22中任一项所述的业务流错峰调度装置,其特征在于,所述错峰调度算法模块用于:
    在最大调度时延的约束条件下,对所述调度后的突发流量模型建立所述目标函数。
  24. 如权利要求15至23中任一项所述的业务流错峰调度装置,其特征在于,所述装置还包括:
    判断模块,用于判断所述多个业务流中的每个业务流的突发流量是否与所述多个业务流中的其他业务流的突发流量发生撞峰。
  25. 如权利要求14至23中任一项所述的业务流错峰调度装置,其特征在于,所述装置还包括:
    消息发送模块,用于将每个业务流的调度时延发送给上游节点,使所述上游节点根据每个业务流的调度时延为该业务流增加相应的调度时延。
  26. 如权利要求14至23中任一项所述的业务流错峰调度装置,其特征在于,所述装置还包括:
    错峰调度模块,用于根据每个业务流的调度时延,为每个业务流的调度时延增加相应的调度时延,将增加调度时延后的所述多个业务流发送给下游节点。
  27. 一种计算机可读存储介质,其特征在于,包括计算机指令,当所述计算机指令在电子设备上运行时,使得所述电子设备执行如权利要求1至13中任一项所述的业务流错峰调度方法。
  28. 一种电子设备,其特征在于,所述电子设备包括处理器和存储器,所述存储器用于存储指令,所述处理器用于调用所述存储器中的指令,使得所述电子设备执行如权利要求1至13中任一项所述的业务流错峰调度方法。
  29. 一种芯片系统,其特征在于,所述芯片系统应用于电子设备;所述芯片系统包括接口电路和处理器;所述接口电路和所述处理器通过线路互联;所述接口电路用于从所述电子设备的存储器接收信号,并向所述处理器发送信号,所述信号包括所述存储器中存储的计算机指令;当所述处理器执行该计算机指令时,所述芯片系统执行如权利要求1至13中任一项所述的业务流错峰调度方法。
PCT/CN2021/117778 2021-01-29 2021-09-10 业务流错峰调度方法及相关设备 WO2022160728A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202110127349.1A CN114827041A (zh) 2021-01-29 2021-01-29 业务流错峰调度方法及相关设备
CN202110127349.1 2021-01-29

Publications (1)

Publication Number Publication Date
WO2022160728A1 true WO2022160728A1 (zh) 2022-08-04

Family

ID=82526615

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2021/117778 WO2022160728A1 (zh) 2021-01-29 2021-09-10 业务流错峰调度方法及相关设备

Country Status (2)

Country Link
CN (1) CN114827041A (zh)
WO (1) WO2022160728A1 (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7684320B1 (en) * 2006-12-22 2010-03-23 Narus, Inc. Method for real time network traffic classification
CN103780907A (zh) * 2014-01-27 2014-05-07 浙江宇视科技有限公司 一种视频数据流量整形的方法和装置
US20160014437A1 (en) * 2007-12-05 2016-01-14 Sony Computer Entertainment America Llc Video compression system and method for reducing the effects of packet loss over a communication channel
CN106789385A (zh) * 2015-11-23 2017-05-31 杭州海康威视数字技术股份有限公司 一种视频流的发送方法、发送装置和网络摄像机
CN112187586A (zh) * 2020-10-13 2021-01-05 盛科网络(苏州)有限公司 微突发流量的监测方法和装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7684320B1 (en) * 2006-12-22 2010-03-23 Narus, Inc. Method for real time network traffic classification
US20160014437A1 (en) * 2007-12-05 2016-01-14 Sony Computer Entertainment America Llc Video compression system and method for reducing the effects of packet loss over a communication channel
CN103780907A (zh) * 2014-01-27 2014-05-07 浙江宇视科技有限公司 一种视频数据流量整形的方法和装置
CN106789385A (zh) * 2015-11-23 2017-05-31 杭州海康威视数字技术股份有限公司 一种视频流的发送方法、发送装置和网络摄像机
CN112187586A (zh) * 2020-10-13 2021-01-05 盛科网络(苏州)有限公司 微突发流量的监测方法和装置

Also Published As

Publication number Publication date
CN114827041A (zh) 2022-07-29

Similar Documents

Publication Publication Date Title
US11606564B2 (en) Video encoding code rate control method, apparatus, and device, and storage medium
CN104394486B (zh) 一种基于云桌面的视频流处理方法及装置
CN109068187B (zh) 实时流量传送系统和方法
Kwon et al. MPMTP: Multipath multimedia transport protocol using systematic raptor codes over wireless networks
Shen et al. QMOR: QoS-aware multi-sink opportunistic routing for wireless multimedia sensor networks
EP3709663A1 (en) Video transmission method, apparatus, and system, and computer readable storage medium
Ahmed A real-time routing protocol with adaptive traffic shaping for multimedia streaming over next-generation of Wireless Multimedia Sensor Networks
Wu et al. A novel scheduling approach to concurrent multipath transmission of high definition video in overlay networks
WO2014190642A1 (zh) 一种媒体数据的传输方法、装置和系统
WO2024021777A1 (zh) 一种数据传输的方法、相关装置、设备以及存储介质
Zhang et al. Intelligent video ingestion for real-time traffic monitoring
JP5720787B2 (ja) コンテンツ配信システム、キャッシュサーバおよびコンテンツ配信方法
KR20220081930A (ko) 비디오 스트리밍에서의 다중 프로토콜 예측 및 세션내 적응
WO2024099035A1 (zh) 一种参数调节方法和相关装置
WO2022160728A1 (zh) 业务流错峰调度方法及相关设备
Kuo et al. Traffic prediction and QoS transmission of real-time live VBR videos in WLANs
US20140099039A1 (en) Image processing device, image processing method, and image processing system
Kennedy et al. Household bandwidth and the'need for speed': evaluating the impact of active queue management for home internet traffic
Tamizhselvi et al. Adaptive video streaming in mobile cloud computing
CN109450815B (zh) 一种基于效用值的对等网络流媒体系统数据调度方法
JP5675164B2 (ja) 送信装置、送信方法、並びにプログラム
Baziz et al. Energy Efficiency and Video Quality Aware using EvalVSN in Wireless Video Sensor Networks.
Chu et al. Queueing Theoretical Performance Assessment of Mobile Virtual Reality Video Streaming
WO2024020756A1 (zh) 无线通信方法、装置、通信设备及存储介质
WO2021217573A1 (zh) 控制数据传输速率的方法、装置、通信设备及存储介质

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21922321

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21922321

Country of ref document: EP

Kind code of ref document: A1