CN114827041A - Method and related equipment for scheduling service flow peak staggering - Google Patents

Method and related equipment for scheduling service flow peak staggering Download PDF

Info

Publication number
CN114827041A
CN114827041A CN202110127349.1A CN202110127349A CN114827041A CN 114827041 A CN114827041 A CN 114827041A CN 202110127349 A CN202110127349 A CN 202110127349A CN 114827041 A CN114827041 A CN 114827041A
Authority
CN
China
Prior art keywords
flow
burst
peak
traffic
scheduling
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202110127349.1A
Other languages
Chinese (zh)
Inventor
丁建坤
李建平
郭建伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technical Service Co Ltd
Original Assignee
Huawei Technical Service Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technical Service Co Ltd filed Critical Huawei Technical Service Co Ltd
Priority to CN202110127349.1A priority Critical patent/CN114827041A/en
Priority to PCT/CN2021/117778 priority patent/WO2022160728A1/en
Publication of CN114827041A publication Critical patent/CN114827041A/en
Pending legal-status Critical Current

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

Landscapes

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

Abstract

The application provides a method for scheduling service flow peak shifting and related equipment, wherein the method is applied to a service flow convergence forwarding node, and comprises the following steps: receiving a plurality of service flows; according to a preset time interval, counting the flow of each service flow received in each time period; identifying the burst flow of each service flow according to the flow of each service flow received in each time period; and determining the scheduling delay of each service flow according to the burst flow of each service flow. The method and the device increase corresponding scheduling time delay for the plurality of service flows, reduce the superposed flow peak value of the plurality of service flows, and avoid the forwarding time delay of all the service flows.

Description

Method and related equipment for scheduling service flow peak staggering
Technical Field
The present application relates to the field of communications technologies, and in particular, to a method and a related device for scheduling a traffic flow peak-to-peak.
Background
With the continuous increase of data service flow and the rapid development of the real-time audio and video industry, the requirements on network transmission quality are higher and higher. When the traffic flow exceeds the transmission capability of the network, the network has the phenomena of large time delay, packet loss, retransmission and the like, so that the network transmission condition is further deteriorated, the network experience is seriously reduced, and the influence on real-time video services such as video monitoring, video conferences, Virtual Reality (VR) games and the like is particularly obvious. The real-time video services mostly adopt a real-time coding transmission mode, video flow is more obvious in burstiness, the data volume of an intra-frame coding frame (i.e. an I frame) is far larger than that of a forward prediction coding frame (i.e. a P frame), and video streams have larger peak-to-average ratio. When multiple videos are transmitted simultaneously, if time periods for transmitting I frames of different video streams overlap, that is, I frame collision occurs, very high instantaneous burst flow is generated, network congestion is caused, congestion packet loss, retransmission and the like occur, and network experience is affected. Therefore, the network flow is controlled, the impact of the flow burst on the network is reduced, the data volume transmitted by the network is matched with the transmission capability of the network, and the method is very important for guaranteeing and improving the transmission quality and the network experience of the network.
Disclosure of Invention
The embodiment of the application discloses a method and related equipment for scheduling off-peak of service flow, which can realize off-peak scheduling of instantaneous burst flow.
The first aspect of the present application discloses a method for scheduling a service flow peak error, which is applied to a service flow aggregation forwarding node, and the method includes:
receiving a plurality of service flows;
according to a preset time interval, counting the flow of each service flow received in each time period;
identifying the burst flow of each service flow according to the flow of each service flow received in each time period;
and determining the scheduling delay of each service flow according to the burst flow of each service flow.
The embodiment of the application aims at the characteristic of the periodic traffic burst of the service flow (such as video flow), increases the corresponding scheduling time delay for each service flow, reduces the superposed traffic peak value of a plurality of service flows, and avoids the forwarding time delay of all service flows. According to the embodiment of the application, the transmission guarantee capacity is improved by planning the traffic shaping scheme and resource allocation. In a real-time video service scene, the multi-service stream peak-shifting scheduling method disclosed by the embodiment of the application is used for performing peak-shifting scheduling, so that an I frame of a video stream can be transmitted in a whole frame, and a part of the video stream preferentially receives the whole I frame and performs decoding playing.
In some optional embodiments, the determining the scheduling delay of each service flow according to the burst traffic of each service flow includes:
extracting burst flow characteristics of each service flow according to the flow of each service flow received in each time period;
constructing a burst flow model according to the burst flow characteristics;
adding scheduling time delay in the burst flow model as a design variable to obtain a scheduled burst flow model;
establishing a target function for the scheduled burst flow model;
and carrying out optimization solution on the objective function to obtain the scheduling delay of each service flow.
In some optional embodiments, the burst traffic characteristics include a burst time phase, a burst traffic size, and a burst duration, and the constructing a burst traffic model according to the burst traffic characteristics includes:
and constructing a burst flow function according to the burst time phase, the burst flow size and the burst duration.
In some optional embodiments, the constructing a burst traffic function according to the burst time phase, the burst traffic size, and the burst duration includes:
for each service flow, translating an S-shaped function with time as an independent variable according to the burst duration and the burst time phase of the service flow and performing expansion according to a first expansion coefficient to obtain a first function;
turning the S-shaped function, translating according to the burst time phase of the service flow and stretching according to a second stretching coefficient to obtain a second function;
multiplying the first function and the second function to obtain a third function;
and scaling the third function according to the burst flow size of the service flow to obtain the burst flow function.
In some alternative embodiments, the first and second coefficients of expansion are both 1.
In some alternative embodiments, the objective function is a maximum function or an entropy function.
In some optional embodiments, the burst traffic characteristics include a burst traffic size, a burst start time, and a burst end time, and the constructing a burst traffic model according to the burst traffic characteristics includes:
and constructing a peak value flow peak collision matrix according to the burst flow size, the burst starting time and the burst ending time.
In some optional embodiments, the constructing a peak traffic collision matrix according to the burst traffic size, the burst start time, and the burst end time includes:
selecting the number of prediction time periods, wherein the product of the number of the prediction time periods and the preset time interval is larger than the burst period of the service flow;
and constructing the peak flow peak-collision matrix by taking the number of the plurality of service flows as the row number of the peak flow peak-collision matrix and taking the number of the predicted time periods as the column number of the peak flow peak-collision matrix, wherein if one predicted time period of one service flow in the plurality of service flows is not overlapped with the burst duration of the service flow, the value of an element corresponding to the predicted time period of the service flow in the peak flow peak-collision matrix is 0, if the predicted time period of the service flow is overlapped 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 flow peak-collision matrix is the burst flow size of the service flow, and the burst duration is determined by the burst start time and the burst end time.
In some alternative embodiments, the objective function is a maximum function.
In some optional embodiments, the establishing an objective function for the scheduled bursty traffic model includes:
and under the constraint condition of the maximum scheduling time delay, establishing the objective function for the scheduled burst flow model.
By establishing the objective function for the scheduled burst traffic model under the constraint condition of the maximum scheduling delay, peak staggering shaping under a certain delay constraint condition can be realized, so that the delay of each service flow increased due to the traffic shaping is controllable, and the delay constraint can be set according to the actual service requirement and the delay cost of packet loss retransmission.
In some optional embodiments, before the building the burst traffic model according to the burst traffic characteristics, the method further includes:
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;
and if the burst flow of the service flow collides with the burst flows of other service flows, constructing the burst flow model for the service flow.
By judging the peak collision condition of the video stream, modeling is not performed when the video stream does not have the peak collision, so that the computational load of modeling can be reduced, and the peak-shifting scheduling efficiency is improved.
In some optional embodiments, the method further comprises:
and sending the scheduling delay of each service flow to an upstream node, so that the upstream node adds corresponding scheduling delay to each service flow according to the scheduling delay of each service flow.
In some optional embodiments, the method further comprises:
according to the scheduling delay of each service flow, increasing corresponding scheduling delay for the scheduling delay of each service flow;
and sending the plurality of service flows with the increased scheduling delay to a downstream node.
The second aspect of the present application discloses a service flow peak shifting scheduling device, which is applied to a service flow aggregation forwarding node, and the device includes:
the service flow counting module is used for receiving a plurality of service flows and counting the flow of each service flow received in each time period according to a preset time interval;
and the peak staggering scheduling algorithm module is used for identifying the burst flow of each service flow according to the flow of each service flow received in each time period and determining the scheduling delay of each service flow according to the burst flow of each service flow.
In some optional embodiments, the peak shift scheduling algorithm module is configured to:
extracting burst flow characteristics of each service flow according to the flow of each service flow received in each time period;
constructing a burst flow model according to the burst flow characteristics;
adding scheduling time delay in the burst flow model as a design variable to obtain a scheduled burst flow model;
establishing a target function for the scheduled burst flow model;
and carrying out optimization solution on the objective function to obtain the scheduling delay of each service flow.
In some optional embodiments, the burst traffic characteristics include a burst time phase, a burst traffic size, and a burst duration, and the peak-to-peak scheduling algorithm module is configured to:
and constructing a burst flow function according to the burst time phase, the burst flow size and the burst duration.
In some optional embodiments, the peak shift scheduling algorithm module is configured to:
for each service flow, translating an S-shaped function with time as an independent variable according to the burst duration and the burst time phase of the service flow and performing expansion according to a first expansion coefficient to obtain a first function;
turning the S-shaped function, translating according to the burst time phase of the service flow and stretching according to a second stretching coefficient to obtain a second function;
multiplying the first function and the second function to obtain a third function;
and scaling the third function according to the burst flow size of the service flow to obtain the burst flow function.
In some alternative embodiments, the first and second coefficients of expansion are both 1.
In some alternative embodiments, the objective function is a maximum function or an entropy function.
In some optional embodiments, the burst traffic characteristics include a burst traffic size, a burst start time, and a burst end time, and the peak-to-peak scheduling algorithm module is configured to:
and constructing a peak value flow peak collision matrix according to the burst flow size, the burst starting time and the burst ending time.
In some optional embodiments, the peak shift scheduling algorithm module is configured to:
selecting the number of prediction time periods, wherein the product of the number of the prediction time periods and the preset time interval is larger than the burst period of the service flow;
and constructing the peak value flow peak-collision matrix by taking the number of the plurality of service flows as the row number of the peak value flow peak-collision matrix and taking the number of the predicted time periods as the column number of the peak value flow peak-collision matrix, wherein if one predicted time period of one service flow in the plurality of service flows is not overlapped with the burst duration of the service flow, the value of an element corresponding to the predicted time period of the service flow in the peak value flow peak-collision matrix is 0, if the predicted time period of the service flow is overlapped 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 value flow peak-collision matrix is the burst flow size of the service flow, and the burst duration is determined by the burst start time and the burst end time.
In some alternative embodiments, the objective function is a maximum function.
In some optional embodiments, the peak shift scheduling algorithm module is configured to:
and under the constraint condition of maximum scheduling time delay, establishing the objective function for the scheduled burst flow model.
In some optional embodiments, the apparatus further comprises:
and the judging module is used 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.
In some optional embodiments, the apparatus further comprises:
and the message sending module is used for sending the scheduling delay of each service flow to the upstream node, so that the upstream node adds corresponding scheduling delay to each service flow according to the scheduling delay of each service flow.
In some optional embodiments, the apparatus further comprises:
and the peak staggering scheduling module is used for increasing corresponding scheduling time delay for the scheduling time delay of each service flow according to the scheduling time delay of each service flow and sending the service flows with the increased scheduling time delay to a downstream node.
A third aspect of the present application discloses a computer-readable storage medium, which includes computer instructions, when the computer instructions are run on an electronic device, cause the electronic device to execute the traffic flow peak-to-peak scheduling method according to the first aspect.
A fourth aspect of the present application discloses an electronic device, where the electronic device includes a processor and a memory, the memory is configured to store instructions, and the processor is configured to call the instructions in the memory, so that the electronic device executes the traffic flow peak-shifting scheduling method according to the first aspect.
A fifth aspect of the present application discloses a chip system, which is applied to an electronic device; the chip system comprises an interface circuit and a processor; the interface circuit and the processor are interconnected through a line; the interface circuit is used for receiving signals from a memory of the electronic equipment and sending the signals to the processor, and the signals comprise computer instructions stored in the memory; when the processor executes the computer instructions, the system-on-chip performs the traffic flow peak-shifting scheduling method according to the first aspect.
A sixth aspect of the present application discloses a computer program product, which, when run on a computer, causes the computer to perform the traffic flow peak-off scheduling method according to the first aspect.
The seventh aspect of the present application discloses an apparatus having a function of implementing the behavior of the electronic device in the method provided by the first aspect. The functions may be implemented by hardware, or by hardware executing corresponding software. The hardware or software includes one or more modules corresponding to the above-described functions.
It should be understood that the traffic flow peak staggering scheduling apparatus of the second aspect, the computer-readable storage medium of the third aspect, the electronic device of the fourth aspect, the chip system of the fifth aspect, the computer program product of the sixth aspect, and the apparatus of the seventh aspect all correspond to the method of the first aspect, and therefore, the beneficial effects that can be achieved by the apparatus may refer to the beneficial effects in the corresponding methods provided above, and are not repeated herein.
Drawings
Fig. 1 is a schematic view of an application scenario of a traffic flow peak-shifting scheduling method disclosed in an embodiment of the present application.
Fig. 2 is a software block diagram of a service flow aggregation forwarding node disclosed in an embodiment of the present application.
Fig. 3 is a flowchart of a traffic flow peak shifting scheduling method disclosed in an embodiment of the present application.
Fig. 4 is a schematic diagram of burst traffic.
Fig. 5 is an implementation of the peak-to-peak scheduling algorithm block of fig. 2.
Fig. 6 is a schematic diagram of a burst traffic function.
Fig. 7 is another implementation of the peak-staggered scheduling algorithm block of fig. 2.
Fig. 8 is a schematic diagram of the peak flow bump matrix values.
Fig. 9 is a schematic diagram of a value of a peak traffic collision matrix after scheduling.
Fig. 10 is a schematic diagram of a peak-shifting scheduling module deployed in a terminal.
Fig. 11 is a schematic structural diagram of an electronic device disclosed in an embodiment of the present application.
Detailed Description
For ease of understanding, some descriptions of concepts related to the embodiments of the present application are given by way of illustration and reference.
In the present application, "at least one" means one or more, "and" a plurality "means two or more. "and/or" describes an association relationship of associated objects, meaning that three relationships may exist, e.g., A and/or B may represent: a exists alone, A and B exist simultaneously, and B exists alone, wherein A and B can be singular or plural. The terms "first," "second," "third," "fourth," and the like in the description and in the claims and drawings of the present application, if any, are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order.
Group of pictures (GOP): the video encoder divides a plurality of encoded video frames into a group. The size of a GOP is the number of frames between two intra-coded frames (i.e., I-frames).
Intra-coded frame (I frame, also called intra picture): one type of video frame, also known as a key frame. The compression degree of the I frame is low, and the data volume is large. The decoding of I-frames is independent of other frames.
Forward Predictive-coded frames (P-frames): a video frame type has high compression degree and the data volume is far less than the I frame data volume. P-frame decoding relies on temporally earlier I-frame and P-frame information.
Bi-directional interpolated prediction frame (B frame): one type of video frame, the degree of compression is very high, with a smaller amount of data than P frames. The decoding of B frames depends on both temporally preceding and temporally following video frames.
Flow rate: the amount of data transferred.
Upstream and downstream: upstream and downstream are relative to the current node and the data flow direction, the part of the data from the sending end to the current node is called upstream, and the part of the data from the current node to the receiving end is called downstream.
Inlet and outlet: the entry refers to the position where the message reaches the current node, and the exit refers to the position 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 traffic data transmission requirements may be less than the network transmission capacity, the transmission rate may be less than the transmission bandwidth.
Peak-to-average ratio: which is the ratio of the maximum and average values of the amount of data transmitted per unit time by the traffic flow.
Burst flow: burst traffic is the sudden increase of the amount of data transmitted per unit time, which returns to the original level after a short time. This variation exhibits a "peak shape" on the time-flow curve, and is therefore also referred to as peak flow.
Queuing: in the network transmission process, messages need to be sent in a certain sequence, and when the number of the messages is too large, the messages which cannot be sent in time need to be queued in a cache to wait for sending.
Network congestion: the packet loss and retransmission are caused by the accumulation of the packets in the network due to the fact that the data quantity required to be sent in unit time is larger than the network bandwidth.
Congestion and packet loss: when the network is congested, the messages are discarded due to the fact that the number of the messages waiting in a queue is larger than the network cache capacity, or the time of the messages waiting in the queue in the network is too long.
And (4) retransmission: and when the sending end and the receiving end find that the message is lost through message interaction, the sending end resends the lost message.
And (4) screen printing: due to data loss or errors, the decoded video frame images are severely damaged.
Blocking: the video playing is to play each video frame according to a certain time sequence, and when the video is played for a certain time and the video data corresponding to the time is not received, the playing effect is blocked.
Network experience: for services which need to be transmitted through the network, the network quality, such as network packet loss, network delay, network transmission rate, etc., affects the services.
Service flow: a set of ordered traffic data sequences of bytes (or messages) having a start point and an end point.
And (3) flow shaping: the data volume transmitted by the service flow at different time is changed by a control or scheduling mode.
A quintuple: refers to the source Internet Protocol (IP) address, source port, destination IP address, destination port, and transport layer Protocol number. In the IP protocol, only one sent or received address is determined through IP address and port information. The source IP address and the source port form an address of a sending end, and the destination IP address and the destination port form an address of a receiving end. The transport layer Protocol number is used to describe a transport layer Protocol carried in the IP packet, such as a Transmission Control Protocol (TCP) and a User Datagram Protocol (UDP). Each protocol is identified by a unique number (i.e., transport layer protocol number), e.g., 6 for TCP and 17 for UDP.
In order to better understand the traffic flow peak shifting scheduling method and the related device disclosed in the embodiment of the present application, an application scenario of the traffic flow peak shifting scheduling method of the present application is first described below.
Fig. 1 is a schematic view of an application scenario of a traffic flow peak-to-peak scheduling method disclosed in an embodiment of the present application. Fig. 1A shows a method for scheduling a service flow peak offset according to the embodiment of the present application, which is not applied to a Customer Premise Equipment (CPE), and fig. 1B shows a method for scheduling a service flow peak offset according to the embodiment of the present application, which is applied to a CPE. The method for scheduling the peak load shifting of the service flow is applied to an application scene of the peak load shifting of the periodic burst flow of the multiple service flows, for example, the application scene of the real-time monitoring video uploading service shown in fig. 1. As shown in fig. 1, the network includes a plurality of cameras, a CPE, a Base Station (Base Station), a Core network device (Core), and a server. The camera is a terminal, the CPE is a service flow convergence forwarding node, and the core network equipment is user data processing forwarding equipment. Each camera can only monitor a local area, and a plurality of cameras are required to work simultaneously in order to realize omnibearing monitoring. The plurality of cameras send the monitoring videos collected in real time to the base station through the CPE, and the base station forwards the data to the server through the core network equipment, so that the all-around real-time video monitoring is realized.
In order to ensure the real-time performance of video monitoring, a video frame output by camera coding needs to be sent to a server in real time, and the instantaneous flow of a video stream is positively correlated with the data size of the video frame. The camera divides a plurality of video frames into GOPs after encoding. The encoded video frames include three types of I-frames, P-frames, and B-frames, and each GOP includes one I-frame and a plurality of P-frames, or one I-frame and a plurality of B-frames. In one embodiment of the present application, in order to ensure real-time performance of video decoding, one GOP of real-time video coding contains 1I frame and a plurality of P frames, and does not contain B frames. In another embodiment of the present application, a GOP for real-time video coding contains 1I frame and a plurality of B frames. The compression degree of the I frame is low, and the I frame data amount is several times of the P frame data amount. The real-time video streams uploaded by the plurality of cameras are converged at the CPE and are sent to the base station through the CPE. The real-time video stream has the characteristic of periodic traffic burst, and when the burst traffic of a plurality of video streams collide together (i.e. the burst traffic collides with a peak), a larger burst traffic is caused, so that instant network congestion is caused. Because the real-time video stream has the characteristic of periodic burst traffic, instantaneous network congestion can occur periodically (namely, the periodic burst traffic bumps occur).
Referring to fig. 1A, when the peak-shifting scheduling method for the service flow provided by the embodiment of the present application is not applied to perform peak-shifting scheduling, traffic burst times of different video streams output by the CPE overlap, so that burst traffic collision is caused. Referring to fig. 1B, after the peak staggering scheduling method for the service stream provided in the embodiment of the present application is applied to perform peak staggering scheduling, the traffic burst times of different video streams output by the CPE do not overlap, so that burst traffic collision is avoided.
In other embodiments of the present application, the service flow peak staggering scheduling method may also be applied to other scenes where multiple service flows periodically burst flow peak collisions exist, such as video on demand (including Virtual Reality (VR) video on demand), live video and other scenes.
Fig. 2 is a software block diagram of a service flow aggregation forwarding node according to an embodiment of the present application.
The traffic flow peak-shifting scheduling method can be applied to a traffic flow aggregation forwarding node 20 in a network, such as a CPE in fig. 1. As shown in fig. 2, the traffic flow aggregation forwarding node 20 includes a traffic flow peak-shifting scheduling apparatus 200, where the traffic flow peak-shifting scheduling apparatus 200 includes a traffic flow statistics module 201, a peak-shifting scheduling algorithm module 202, and a peak-shifting scheduling module 203. The main functions of the respective modules are described below.
The traffic flow statistics module 201 may be deployed at an ingress location of the traffic flow aggregation forwarding node 20. The traffic flow counting module 201 is configured to receive a plurality of traffic flows, and count traffic of each traffic flow received in each time period according to a preset time interval (e.g., 10 milliseconds).
In one embodiment of the present application, the preset time interval is set to be less than the burst duration of each traffic stream.
For example, in the real-time monitoring video upload service scenario shown in fig. 1, the burst traffic is generated by I-frame data transmission, and the preset time interval may be set to be smaller than the I-frame transmission time. For example, the transmission time of the I frame is 20 ms, and the preset time interval may be set to 10 ms.
The peak-to-peak scheduling algorithm module 202 is configured to identify a burst traffic of each service flow according to the traffic of each service flow received in each time period, and determine a scheduling delay of each service flow according to the burst traffic of each service flow. In an embodiment of the present application, the peak-to-peak scheduling algorithm module 202 extracts a burst traffic feature of each service flow according to the traffic of each service flow received in each time period, and models the burst traffic according to the burst traffic feature of each service flow to obtain a burst traffic model. The peak-shifting scheduling algorithm module 202 adds scheduling delay in the bursty traffic model as a design variable to obtain a scheduled bursty traffic model, establishes an objective function for the scheduled bursty traffic model, and performs optimization solution on the objective function to obtain scheduling delay of each service flow, i.e., obtains a delay scheduling scheme that minimizes peak-hitting degree.
In an embodiment of the present application, the peak-shifting scheduling algorithm module 202 performs an optimization solution on the objective function under a constraint condition of a maximum scheduling delay, so as to ensure that the scheduled service flow meets an actual service requirement.
The peak-off scheduling module 203 may be deployed at an egress location of the traffic aggregation forwarding node 20. The peak staggering scheduling module 203 adds corresponding scheduling delay to each service flow according to the delay scheduling scheme, so that the burst flow time of each service flow is staggered, and peak staggering scheduling is realized.
Fig. 3 is a flowchart of a traffic flow peak shifting scheduling method disclosed in an embodiment of the present application.
The method for scheduling a service flow peak error disclosed in the embodiment of the present application may be applied to a service flow aggregation forwarding node, such as a 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 comprises a traffic flow statistics module, a peak offset scheduling algorithm module, and a peak offset scheduling module (see fig. 2). The implementation flow of the present application is described in detail below with reference to fig. 3.
301, multiple cameras send multiple real-time video streams to the CPE.
The camera sends the video stream to the CPE through a message.
In one embodiment of the present application, the camera sends the video stream to the CPE via an IP packet. The IP packet has five tuples, i.e. source IP address, source port, destination IP address, destination port and protocol number.
And 302, the service flow counting module counts the flow of each video flow received by the CPE in each time period according to a preset time interval.
The time length of each time segment is equal to the preset time interval. For example, the starting time is t 0 If the predetermined time interval is Δ t, then the Mth time period is t 0 +M·Δt<t<t 0 +(M+1)·Δt。
In an embodiment of the present application, the camera sends video streams to the CPE through an IP packet, and the service stream statistics module may distinguish the video streams according to a 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 (e.g., 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.
Or, the traffic of each video stream received by the CPE in each time period may be counted according to the size of the packet of the video stream received in the time period. That is, the traffic of each video stream received by the CPE per time period may be equal to the sum of the sizes of all the packets of the video stream received in the time period.
303, the traffic flow statistics module transfers the traffic of each video flow received in each time period to the peak shifting scheduling algorithm module.
304, the peak-to-peak scheduling algorithm module identifies the burst traffic according to the traffic of each service flow received in each time period.
Burst traffic is the sudden increase in the amount of data transmitted per unit time, which decreases after a short time.
Fig. 4 is a flow rate change diagram of a real-time video stream, in which "peak-like" projections indicate burst flow rates.
The traffic flow statistic 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 and variance of the traffic. If the flow rate in a certain time period exceeds the threshold value, the flow rate is determined to be burst flow rate.
The transmission rate, i.e. the instantaneous rate, of a certain time period is determined by dividing the flow rate of the time period by a preset time interval.
The burst traffic threshold may be expressed as:
r threshold =f(r mean ,r var );
wherein r is threshold Indicating bursty trafficThreshold value, r mean Means of flow, r var Representing the variance of the flow. r is mean And r var Can be calculated by an exponential smoothing method. In one embodiment of the present application, r threshold =r mean +k·r var Where k is a constant, e.g., k-3.
305, the peak-to-peak scheduling algorithm module extracts the burst traffic characteristics of each traffic stream.
In one embodiment of the present application, the extracted burst traffic characteristics include burst time phase, burst traffic size, and burst duration.
In another embodiment of the present application, the extracted burst traffic characteristics include a burst traffic size, a burst start time, and a burst end time.
The extracted burst traffic characteristics may also include a burst period.
Burst start time (t) ps ): the time when the traffic transitions from less than the bursty traffic threshold to greater than the bursty traffic threshold.
Burst end time (t) pe ): the time when the traffic transitions from greater than the bursty traffic threshold to less than the bursty traffic threshold.
Burst duration (w): the time from the start time of the burst traffic (i.e., the burst start time) to the end time (i.e., the burst end time). In a real-time video stream, the duration of one I-frame (key-frame) is represented.
Burst traffic size (r): the maximum value of the burst traffic or the average value of the traffic over the burst duration.
Burst period (T): the time interval of two adjacent burst flows. In a real-time video stream, the transmission time of a GOP video frame.
Burst time phase (theta) i ): setting an arbitrary time point t 0 Burst time phase θ of ith traffic stream (e.g., video stream) i Means that the first burst start time of the ith service flow is relative to t 0 The time difference of (a). Using the burst time phase theta i 、t 0 And the burst period T can calculate any one of the ith service flowThe burst start time of a burst traffic. For example, the burst start time of the jth burst traffic of the ith traffic flow is: t is t 0i +T·(j-1)。
And 306, constructing a burst flow model by the peak-staggering scheduling algorithm module according to the burst flow characteristics.
In an embodiment of the present application, the peak shifting scheduling algorithm module determines whether each video stream has a peak collision with other video streams before modeling the burst traffic of each video stream. And if the burst traffic collision does not occur between a certain video stream and other video streams, not modeling the burst traffic of the video stream. Otherwise, if the video stream has burst traffic collision with other video streams, modeling the burst traffic of the video stream.
Burst traffic collision refers to that burst traffic of different service streams (such as video streams) collide together, and the burst traffic is superimposed to generate larger instantaneous burst traffic. Burst traffic collisions may occur between two traffic streams or between multiple traffic streams. The peak-shifting scheduling algorithm module may determine whether the burst duration of the video stream overlaps with the burst duration of other video streams, and if the burst duration of the video stream overlaps with the burst duration of other video streams, determine that a burst traffic peak collision occurs between the video stream and other video streams.
By judging the peak collision condition of the video stream, the video stream is not modeled when the video stream has no burst flow peak collision, so that the computational load of modeling can be reduced, and the peak-load-shifting scheduling efficiency is improved.
307, the peak-shifting scheduling algorithm module adds scheduling delay in the burst traffic model as a design variable to obtain the scheduled burst traffic model.
308, the peak-shifting scheduling algorithm module establishes an objective function for the scheduled burst traffic model.
The objective function may be a maximum function or an entropy function.
309, the peak shifting scheduling algorithm module performs optimization solution on the objective function to obtain a time delay scheduling scheme (i.e. the scheduling time delay of each video stream is obtained).
In an embodiment of the application, when the peak-shifting scheduling algorithm module performs optimization solution on the scheduled burst traffic model to an objective function, the maximum scheduling delay is used as a constraint condition of the objective function. Therefore, the obtained time delay scheduling scheme is the time delay scheduling scheme which enables the peak collision degree to be the lowest under the condition of meeting the maximum scheduling time delay constraint condition.
The maximum scheduling delay is the maximum delay that the traffic can tolerate to increase. The maximum scheduling delay can be set according to the service requirement. By taking the maximum scheduling delay as the constraint condition of the objective function, a more reasonable scheduling scheme can be obtained, and the scheduling result is ensured to meet the actual service requirement.
The specific implementation process of 306-309 is described in fig. 5 and 6.
The off-peak scheduling algorithm module passes the delay scheduling scheme to the off-peak scheduling module 310.
And 311, the peak shifting scheduling module increases corresponding scheduling delay for each video stream according to the delay scheduling scheme.
312, the peak-shifting scheduling module sends the video stream with increased scheduling delay to the base station.
And if the scheduling time delay is 0, the peak-staggering scheduling module directly sends the video stream to the base station.
Increasing the scheduling delay for the video stream is to increase the scheduling delay for the packet of the video stream.
And the peak staggering scheduling module increases corresponding scheduling time delay for the message of each video stream according to the time delay scheduling scheme, and sends the video stream with the increased scheduling time delay to the base station, so that the peak staggering scheduling of the video streams is realized, and the peak-to-average ratio of the total flow forwarded to the base station by the CPE is reduced.
It should be noted that, if a video stream sent to the CPE by the camera changes (for example, a new video stream is added or a video stream is reduced), the traffic stream peak-shifting scheduling method in the embodiment of the present application determines a new delay scheduling scheme according to the changed video stream, and performs peak-shifting scheduling on the video stream according to the new delay scheduling scheme.
For example, the service flow statistics module distinguishes each video flow according to the quintuple of the IP packet, when it is detected that the number of the service flows changes, the service flow statistics module transmits the changed flow of each video flow received in each time period to the peak staggering scheduling algorithm module (i.e., step 303), and the peak staggering scheduling module re-executes step 304 and step 309, so as 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 exceeding the transmission capacity of the network. The traffic shaping method can be deployed in a message forwarding device (i.e., a service flow aggregation forwarding node) of a network transmission path, and avoids network congestion caused by excessive data sent to a downstream node by changing the data volume transmitted in unit time. The existing traffic shaping method adopts a speed-limiting mode (such as token bucket, leaky bucket and combination mode thereof) to control the data volume of data sent by the current node to the downstream node, so as to achieve the purpose of reducing traffic burst and network congestion.
The existing traffic shaping method has the following defects:
(1) for real-time video service, a video frame needs to be split into a plurality of messages for transmission, and a receiving end needs to receive all the messages of the same video frame to successfully decode the video frame. The existing traffic shaping method simply limits the forwarding rate of all video streams according to a preset sending rate threshold, so that the time delay of all video streams is increased, and the decoding time of all video streams is delayed.
(2) The existing traffic shaping algorithm essentially adopts a mode of setting a rate threshold value to carry out rate control. The method can obtain better effect in the scenes of wired transmission and relatively stable bandwidth. However, in a wireless transmission scenario, a bandwidth (a maximum network transmission rate, that is, a network transmission capability) is constantly changing and fluctuates greatly, and a preset rate threshold cannot be constantly matched with the changing bandwidth. Two problems thus arise: when the bandwidth is sufficient, the transmission rate is limited by a rate threshold set by a shaping algorithm, so that the message transmission rate is low; when the bandwidth is insufficient, too much data is transmitted to a downstream network due to a higher rate threshold set by a shaping algorithm, so that network congestion is caused.
The embodiment of the application aims at the characteristic of the periodic traffic burst of the service flow (such as video flow), increases the corresponding scheduling time delay for each service flow, reduces the superposed traffic peak value of a plurality of service flows, and avoids the forwarding time delay of all service flows. According to the embodiment of the application, the traffic shaping scheme and the resource allocation are planned in advance through peak collision prediction, and the transmission guarantee capability is improved. The embodiment of the application realizes peak staggering shaping under a certain time delay constraint condition, so that the time delay of each service flow increased due to flow shaping is controllable, and the time delay constraint can be set according to the actual service requirement and the time delay cost of packet loss retransmission. In a real-time video service scene, the multi-service stream peak-staggering scheduling method disclosed by the embodiment of the application is used for performing peak-staggering scheduling, so that the I frame of the video stream can be transmitted in a whole frame, and part of the video stream preferentially receives the whole I frame and is decoded and played.
In the embodiment provided by the application, the peak-to-peak scheduling algorithm module models the burst traffic according to the burst traffic characteristics to obtain a burst traffic model. And the peak-staggering scheduling algorithm module increases scheduling time delay in the burst flow model as a design variable to obtain a scheduled burst flow model, and performs optimization solution on the scheduled burst flow model to obtain a time delay scheduling scheme. The embodiment of the application provides two schemes for modeling and optimizing solution.
Scheme one
Scheme one describes the traffic characteristics of each traffic flow by a constructor (i.e., a burst traffic function).
The specific implementation process of the first scheme is shown in fig. 5.
501, the peak shifting scheduling algorithm module constructs a burst traffic function according to the burst time phase, the burst traffic size and the burst duration.
The burst traffic function is a relation between time and traffic, and represents the change of traffic of a service flow with time.
In one embodiment of the present application, the burst traffic function is constructed based on a sigmoid function with time as an argument. The S-type function is also called Sigmoid function, and the S-type function takes time t as an independent variableZ 0 (t) is:
Figure BDA0002924448520000111
and for each service flow, the peak-shifting scheduling algorithm module translates the S-shaped function according to the burst duration and the burst time phase of the service flow and expands and contracts according to a first expansion coefficient to obtain a first function of the service flow. First function Z of ith traffic stream 1,i (t) can be expressed as:
Figure BDA0002924448520000112
wherein, theta i For the burst time phase, w, of the ith traffic stream i And alpha is a first scaling factor, which is the burst duration of the ith service stream.
And the peak-staggering scheduling algorithm module overturns the S-shaped function, translates the S-shaped function according to the burst time phase of the service flow and expands and contracts according to a second expansion coefficient to obtain a second function. Second function Z of ith traffic stream 2,i (t) can be expressed as:
Figure BDA0002924448520000113
wherein β is the second coefficient of expansion.
In one embodiment of the present application, the first and second scaling factors are both 1.
The first and second coefficients of stretch may be other values. For example, the first expansion coefficient is 1, and the second expansion coefficient is 3.
And the peak shifting scheduling algorithm module multiplies the first function and the second function to obtain a third function. Third function Z of ith traffic stream 3,i (t) can be expressed as:
Figure BDA0002924448520000114
and the peak-shifting scheduling algorithm module stretches the third function according to the size of the burst flow to obtain the burst flow function. Burst flow function X of ith traffic stream i (t|θ i ,r i ,w i α, β) can be expressed as:
Figure BDA0002924448520000115
wherein X i Is the flow of the ith traffic stream, r i The burst traffic size of the ith traffic stream.
Fig. 6 is a schematic diagram of a burst flow function, wherein 60 is a burst flow function curve, and 61 is a time-flow curve obtained according to a statistical flow.
502, the peak shifting scheduling algorithm module adds scheduling delay in the burst traffic function as a design variable to obtain the scheduled burst traffic function.
For example, for burst traffic function X i (t|θ i ,r i ,w i α, β), the scheduled burst traffic function can be expressed as:
Figure BDA0002924448520000116
t i indicating that the scheduling delay t is increased at the ith traffic flow i . The scheduling delay of each service flow can be used as a scheduling vector S 1 It is shown that,
Figure BDA0002924448520000121
503, the peak shifting scheduling algorithm module establishes an objective function for the scheduled burst traffic function.
The objective function being the scheduling delay t i Is used for reflecting the target of peak-shifting scheduling.
In one embodiment of the present application, the objective function of the scheduled burst traffic function may be an overlay streamMaximum function or entropy function of the quantity, i.e.
Figure BDA0002924448520000122
Or
Figure BDA0002924448520000123
Wherein f is 1 (. h) an objective function representing a scheduled burst traffic function, g 1 (t) is the superimposed flow of all traffic flows at time t, g 1 (t) can be expressed as:
Figure BDA0002924448520000124
and 504, the peak shifting scheduling algorithm module performs optimization solution on the target function of the scheduled burst flow function under the constraint condition of the maximum scheduling delay to obtain a delay scheduling scheme.
Under the constraint condition of maximum scheduling delay, the optimal solution of the objective function of the scheduled burst traffic function can be expressed as:
Figure BDA0002924448520000125
wherein, t max Represents the maximum scheduling delay;
Figure BDA0002924448520000126
to a constraint condition, i.e. satisfy
Figure BDA0002924448520000127
The optimization objective is to place constraints on maximum scheduling delay (i.e.
Figure BDA0002924448520000128
) Next, scheduling is performed to reduce the peak-to-average ratio of the superimposed traffic (i.e., the superimposed traffic) of all the traffic flows. For example, the objective function is an entropy function, and the optimization objective is:
Figure BDA0002924448520000129
the optimization target represents entropy maximization, that is, the more uniform the distribution of the superposed traffic of each service flow in each time period, the better the smaller the peak traffic.
For the solution of the optimization problem, a heuristic optimization algorithm (such as a quasi-Newton iteration method) based on gradient descent can be adopted to solve a local optimal solution to obtain a final time delay scheduling scheme
Figure BDA00029244485200001210
In the first scheme, the flow characteristics of each service flow are described through a construction function (namely, a burst flow function), and target optimization is performed according to the burst flow function, so that planning and allocation of resources are realized, and the network transmission guarantee capability is improved.
Scheme two
The scheme two-way describes the flow characteristics of each service flow through a flow matrix. The specific implementation process of the second scheme is shown in fig. 7.
701, a peak-shifting scheduling algorithm module constructs a peak flow peak-hitting matrix according to the burst flow size, the burst starting time and the burst ending time of the service flow.
The peak flow bump matrix is used for representing the burst flow occurring in each prediction time period.
In an embodiment of the present application, the peak-shifting scheduling algorithm module selects a number of prediction time periods, and a product of the number of prediction time periods and a preset time interval is greater than a burst period of a traffic flow.
And the peak staggering scheduling algorithm module takes the number of the service flows as the row number of the peak flow peak-bumping matrix and takes the number of the predicted time periods as the column number of the peak flow peak-bumping matrix to construct the peak flow peak-bumping matrix. Each row of the peak traffic collision matrix represents the traffic of one traffic flow in a different prediction time period. If a prediction time period of a service flow is not overlapped with the burst duration of the service flow, the value of an element corresponding to the prediction time period of the service flow in the peak flow collision matrix is 0. If the prediction time period of the service flow is overlapped with the burst duration of the service flow, the value of the element corresponding to the prediction time period of the service flow in the peak flow 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 traffic stream.
Assuming that the number of service flows is N, the number of prediction time periods is N ken ,n ken Satisfies the following conditions:
n ken ×Δt>T
wherein, Δ T is a preset time interval, T is a burst period,
the peak flow collision matrix is Y, the elements in Y are Y (i, j), i belongs to [1, N ]],j∈[1,n Len ]Each row of Y represents the traffic of one traffic flow at different time periods, and Y (i, j) is defined as follows:
Figure BDA0002924448520000131
the above formula indicates when t is satisfied pe ≤t j- Or t j+ ≤t ps When Y (i, j) takes the value r i (ii) a When t is not satisfied pe ≤t j- And t j+ ≤t ps When Y (i, j) takes a value of 0. Wherein r is i The burst traffic size, t, of the ith traffic stream ps Indicating the burst start time, t pe Indicating the end of the burst, t j- ,t j+ Denotes the jth time period n j A start time and an end time of, i.e. n j =[t j- ,t j+ ]。
Fig. 8 is a schematic diagram of the peak flow bump matrix values. Fig. 8 shows the values of the elements in the peak flow bump matrix.
And 702, adding scheduling time delay in the peak flow peak collision matrix by the peak staggering scheduling algorithm module as a design variable to obtain the scheduled peak flow peak collision matrix.
The number of scheduling time windows of the ith service flow is n i I.e. scheduling delay of ith traffic streamt i Is n i Δ t, where Δ t is a preset time interval and the scheduling vector can be expressed as
Figure BDA0002924448520000132
The peak traffic collision matrix after scheduling can be represented as:
Figure BDA0002924448520000133
the above formula indicates when t is satisfied ps +n i ·Δt<j<t pe +n i At the time of the Δ t,
Figure BDA0002924448520000134
taking the value of Y (i, j-n) i ) (ii) a When t is not satisfied ps +n i ·Δt<j<t pe +n i At the time of the Δ t, the time of the start,
Figure BDA0002924448520000135
the value is 0.
Fig. 9 is a schematic diagram of a value of a peak traffic collision matrix after scheduling. FIG. 9 shows the ith traffic flow increased by n i After a scheduling delay of 2 (i.e. two preset time intervals), elements in the scheduled peak flow peak collision matrix (i.e. the elements in the scheduling delay
Figure BDA0002924448520000136
) The value of (a).
703, the peak staggering scheduling algorithm module establishes a target function for the scheduled peak flow peak bumping matrix.
In an embodiment of the present application, the objective function of the peak traffic collision matrix after scheduling may be a maximum function of the superimposed traffic of all traffic flows, that is, the objective function is a maximum function of the superimposed traffic of all traffic flows
Figure BDA0002924448520000137
f 2 (. g) an objective function representing a post-schedule peak flow bump matrix 2 (j) Is the superimposed flow of all traffic flows, g 2 (j) Can be expressed as:
Figure BDA0002924448520000138
704, the peak staggering scheduling algorithm module optimizes and solves the objective function of the scheduled peak flow peak-hitting matrix under the constraint condition of the maximum scheduling time delay to obtain a time delay scheduling scheme.
Under the constraint condition of maximum scheduling delay, the optimization solution of the objective function of the peak flow peak-collision matrix after scheduling can be expressed as:
Figure BDA0002924448520000141
s.t.n i ≤n max for the constraint, i.e. satisfying n i ≤n max
Maximum number of scheduling windows of
Figure BDA0002924448520000142
Wherein
Figure BDA0002924448520000143
Denotes rounding down, t max Is the maximum scheduling delay.
This form is directly targeted at the maximum minimization of the superimposed flow, i.e. the peak flow minimization of the superimposed flow.
Because the modeling mode of the second scheme has no explicit function expression, a gradient descent optimization algorithm (such as a quasi-Newton iteration method) cannot be used for solving. In the second scheme, a heuristic optimization algorithm such as a genetic algorithm and particle swarm can be adopted to solve the objective function to obtain the scheduling delay of each service flow
Figure BDA0002924448520000144
The embodiment of the application realizes the peak shifting scheduling of the multiple service flows through the service flow counting module, the peak shifting scheduling algorithm module and the peak shifting scheduling module. In the above embodiments, the traffic flow statistics module, the peak shift scheduling algorithm module, and the peak shift scheduling module are deployed at a traffic flow aggregation forwarding node (e.g., CPE). The peak shifting scheduling module increases scheduling time delay for each service flow to realize peak shifting scheduling. In other embodiments of the present application, the peak-shifting scheduling module may be deployed at any upstream node with traffic flow control capability. For example, in a video surveillance scene, a peak staggering scheduling module is deployed in a camera (terminal).
Fig. 10 is a schematic diagram of a peak-shifting scheduling module deployed in a terminal.
As shown in fig. 10, the terminals (e.g., terminal 1 and terminal 2) include a peak-to-peak scheduling module, and the traffic aggregation forwarding node includes a traffic statistics module, a peak-to-peak scheduling algorithm module, and a message sending module. In 10A, the peak-to-peak scheduling module sends the service flow to the service flow aggregation forwarding node according to the original time sequence. The peak shifting scheduling algorithm module solves the time delay scheduling scheme, and the scheduling time delay of each service flow is sent to the corresponding terminal through the message sending module. In 10B, the peak-to-peak scheduling module adjusts the traffic flow according to the scheduling delay, so as to adjust the time when the burst traffic of the traffic flow occurs.
The peak-shifting scheduling module is deployed on the terminal, so that the generation time of the burst large data volume can be adjusted, for example, the time of I frame coding in a real-time video stream is adjusted. The method can solve the problem of traffic peak collision at the sink node in the network transmission process from the data source head on the premise of not introducing extra time delay.
Fig. 11 is a schematic structural diagram of an electronic device (a traffic aggregation forwarding node or a terminal) disclosed in an embodiment of the present application. As shown in fig. 11, the electronic device 110 may include: radio Frequency (RF) circuitry 1101, memory 1102, input unit 1103, display unit 1104, sensor 1105, audio circuitry 1106, Wi-Fi module 1107, processor 1108, and power supply 1109. Those skilled in the art will appreciate that the architecture shown in fig. 11 does not constitute a limitation of a traffic flow aggregation forwarding node, and may include more or fewer components than shown, or some components in combination, or a different arrangement of components.
The RF circuit 1101 may be configured to receive and transmit information or signals during a call, and particularly, to forward the downlink information of the base station to the processor 1108 for processing after receiving the downlink information; in addition, data relating to uplink is transmitted to the base station. In general, 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, etc.
The memory 1102 may be used for storing software programs and modules, and the processor 1108 executes various functional applications and data processing of the electronic device by operating the software programs and modules stored in the memory 1102. The memory 1102 may mainly include a program storage area and a data storage area, wherein the program storage area may store an operating system, an application program required by at least one function (such as a sound playing function, an image playing function, etc.), and the like; the storage data area may store data (such as audio data, a phonebook, etc.) created according to the use of the electronic device, and the like. Further, the 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 numeric or character information and generate key signal inputs related to user settings and function control of the electronic device. Specifically, the input unit 1103 may include a touch panel 11031 and other input devices 11032. The touch panel 11031, also referred to as a touch screen, may collect touch operations of a user thereon or nearby (e.g., operations of a user on or near the touch panel 11031 using any suitable object or accessory such as a finger, a stylus, etc.) and drive corresponding connection devices according to a preset program. Alternatively, the touch panel 11031 may include two portions of a touch detection device and a touch controller. The touch detection device detects the touch direction of a user, detects a signal brought by touch operation and transmits the signal to the touch controller; the touch controller receives touch information from the touch sensing device, converts the touch information into touch point coordinates, sends the touch point coordinates to the processor 1108, and receives and executes commands sent by the processor 1108. In addition, the touch panel 11031 may be implemented by various types, such as a resistive type, a capacitive type, an infrared ray, and a surface acoustic wave. The input unit 1103 may include other input devices 11032 in addition to the touch panel 11031. In particular, other input devices 11032 may include, but are not limited to, one or more of a physical keyboard, function keys (e.g., volume control keys, switch keys, etc.), a trackball, a mouse, a joystick, and the like.
The display unit 1104 may be used to display information input by or 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. Further, the touch panel 11031 can cover the display panel 11041, and when the touch panel 11031 detects a touch operation thereon or nearby, the touch panel 11031 transmits the touch operation to the processor 1108 to determine the type of the touch event, and then the processor 1108 provides a corresponding visual output on the display panel 11041 according to the type of the touch event. Although in fig. 11 the touch panel 11031 and the display panel 11041 are implemented as two separate components to implement the input and output functions of the electronic device, in some embodiments, the touch panel 11031 and the display panel 11041 may be integrated to implement the input and output functions of the electronic device.
The electronic device may also include at least one sensor 1105, such as a light sensor, motion sensor, and other sensors. Specifically, the light sensor may include an ambient light sensor that may adjust the brightness of the display panel 11041 according to the brightness of ambient light, and a proximity sensor that may turn off the display panel 11041 and/or the backlight when the electronic device is moved to the ear. As one of the motion sensors, the accelerometer sensor can detect the magnitude of acceleration in each direction (generally, three axes), detect the magnitude and direction of gravity when stationary, and can be used for applications (such as horizontal and vertical screen switching, related games, magnetometer attitude calibration) for recognizing the attitude of the electronic device, vibration recognition related functions (such as pedometer, tapping) and the like; in addition, the electronic device may further configure other sensors such as a gyroscope, a barometer, a hygrometer, a thermometer, and an infrared sensor, which are not described herein again.
The audio circuitry 1106, the speaker 11061, and the microphone 11062 may provide an audio interface between a user and an electronic device. The audio circuit 1106 can transmit the electrical signal converted from the received audio data to the speaker 11061, and the electrical signal is converted into a sound signal by the speaker 11061 and output; on the other hand, the microphone 11062 converts the collected sound signal into an electric signal, receives the electric signal by the audio circuit 1106, converts the electric signal into audio data, processes the audio data by the audio data output processor 1108, and transmits the processed audio data to another electronic device via the RF circuit 1101, or outputs the audio data to the memory 1102 for further processing.
Wi-Fi belongs to short-distance wireless transmission technology, and electronic equipment can help a user to send and receive e-mails, browse webpages, access streaming media and the like through a Wi-Fi module 1107, and provides wireless broadband internet access for the user. Although fig. 11 shows the Wi-Fi module 1107, it is understood that it does not belong to the essential constitution of the electronic device, and it may be omitted entirely as needed within a range not changing the essence of the invention.
The processor 1108, which is the control center of the electronic device, connects various parts of the entire electronic device using various interfaces and lines, performs various functions of the electronic device and processes data by operating or executing software programs and/or modules stored in the memory 1102 and calling data stored in the memory 1102, thereby integrally monitoring the electronic device. Alternatively, processor 1108 may include one or more processing units; preferably, the processor 1108 may integrate an application processor, which primarily handles operating systems, user interfaces, application programs, etc., and a modem, which primarily handles wireless communications. It is to be appreciated that the modem processor described above may not be integrated into processor 1108.
The electronic device also includes a power supply 1109 (e.g., a battery) that provides power to the various components, optionally logically coupled to the processor 1108 via a power management system, such that the power management system may manage charging, discharging, and power consumption.
Although not shown, the electronic device may further include a camera, a bluetooth module, and the like, which are not described in detail herein.
The electronic device depicted in fig. 11 may be used to implement part or all of the process in the embodiment of the method introduced in fig. 3 of the present application, which may refer to the related explanation in the embodiment described in fig. 3, and is not described herein again.
The present embodiment also provides a computer storage medium, where computer instructions are stored in the computer storage medium, and when the computer instructions are run on an electronic device, the electronic device is caused to execute the above related method steps to implement the block chain signature verification method in the above embodiments.
The embodiment also provides a computer program product, which, when running on an electronic device, causes the electronic device to execute the relevant steps described above, so as to implement the block chain signature verification method in the above embodiment.
In addition, embodiments of the present application also provide an apparatus, which may be specifically a chip, a component or a module, and may include a processor and a memory connected to each other; the memory is used for storing computer execution instructions, and when the device runs, the processor can execute the computer execution instructions stored in the memory, so that the chip can execute the block chain signature verification method in the above-mentioned method embodiments.
The electronic device, the computer storage medium, the computer program product, or the chip provided in this embodiment are all configured to execute the corresponding method provided above, so that the beneficial effects achieved by the electronic device, the computer storage medium, the computer program product, or the chip may refer to the beneficial effects in the corresponding method provided above, and are not described herein again.
Through the above description of the embodiments, it is clear to those skilled in the art that, for convenience and simplicity of description, the foregoing division of the functional modules is merely used as an example, and in practical applications, the above function distribution may be completed by different functional modules according to needs, that is, the internal structure of the device may be divided into different functional modules to complete all or part of the above described functions.
In the several embodiments provided in the present application, it should be understood that the disclosed apparatus and method may be implemented in other ways. For example, the above-described device embodiments are merely illustrative, and for example, the division of the module or unit is only one logical division, and there may be other divisions when actually implemented, for example, a plurality of units or components may be combined or integrated into another device, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, devices or units, and may be in an electrical, mechanical or other form.
The units described as separate parts may or may not be physically separate, and parts displayed as units may be one physical unit or a plurality of physical units, that is, may be located in one place, or may be distributed to a plurality of different places. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
In addition, functional units in the embodiments of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit. The integrated unit can be realized in a form of hardware, and can also be realized in a form of a software functional unit.
The integrated unit, if implemented in the form of a software functional unit and sold or used as a stand-alone product, may be stored in a readable storage medium. Based on such understanding, the technical solutions of the embodiments of the present application may be essentially or partially contributed to by the prior art, or all or part of the technical solutions may be embodied in the form of a software product, where the software product is stored in a storage medium and includes several instructions to enable a device (which may be a single chip, a chip, or the like) or a processor (processor) to execute all or part of the steps of the methods described in the embodiments of the present application. And the aforementioned storage medium includes: various media capable of storing program codes, such as a usb disk, a removable hard disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk, or an optical disk.
The above description is only an embodiment of the present application, but the scope of the present application is not limited thereto, and any changes or substitutions within the technical scope of the present disclosure should be covered by the scope of the present application. Therefore, the protection scope of the present application shall be subject to the protection scope of the claims.

Claims (29)

1. A method for scheduling service flow peak shifting is applied to a service flow convergence forwarding node, and is characterized in that the method comprises the following steps:
receiving a plurality of service flows;
according to a preset time interval, counting the flow of each service flow received in each time period;
identifying the burst flow of each service flow according to the flow of each service flow received in each time period;
and determining the scheduling delay of each service flow according to the burst flow of each service flow.
2. The method of claim 1, wherein the determining the scheduling delay of each traffic flow according to the burst traffic of each traffic flow comprises:
extracting burst flow characteristics of each service flow according to the flow of each service flow received in each time period;
constructing a burst flow model according to the burst flow characteristics;
adding scheduling time delay in the burst flow model as a design variable to obtain a scheduled burst flow model;
establishing a target function for the scheduled burst flow model;
and carrying out optimization solution on the objective function to obtain the scheduling delay of each service flow.
3. The method of claim 2, wherein the burst traffic characteristics include a burst time phase, a burst traffic size, and a burst duration, and the constructing the burst traffic model according to the burst traffic characteristics includes:
and constructing a burst flow function according to the burst time phase, the burst flow size and the burst duration.
4. The method of claim 3, wherein the constructing the burst traffic function according to the burst time phase, the burst traffic size, and the burst duration comprises:
for each service flow, translating an S-shaped function with time as an independent variable according to the burst duration and the burst time phase of the service flow and performing expansion according to a first expansion coefficient to obtain a first function;
turning the S-shaped function, translating according to the burst time phase of the service flow and stretching according to a second stretching coefficient to obtain a second function;
multiplying the first function and the second function to obtain a third function;
and scaling the third function according to the burst flow size of the service flow to obtain the burst flow function.
5. The traffic flow peak-to-peak scheduling method according to claim 4, wherein the first scaling factor and the second scaling factor are both 1.
6. The traffic flow peak-shifting scheduling method according to claim 4, wherein the objective function is a maximum function or an entropy function.
7. The method of claim 2, wherein the burst traffic characteristics include burst traffic size, burst start time, and burst end time, and the constructing the burst traffic model according to the burst traffic characteristics includes:
and constructing a peak value flow peak collision matrix according to the burst flow size, the burst starting time and the burst ending time.
8. The method of claim 7, wherein the constructing a peak traffic collision matrix according to the burst traffic size, the burst start time, and the burst end time comprises:
selecting the number of prediction time periods, wherein the product of the number of the prediction time periods and the preset time interval is larger than the burst period of the service flow;
and constructing the peak flow peak-collision matrix by taking the number of the plurality of service flows as the row number of the peak flow peak-collision matrix and taking the number of the predicted time periods as the column number of the peak flow peak-collision matrix, wherein if one predicted time period of one service flow in the plurality of service flows is not overlapped with the burst duration of the service flow, the value of an element corresponding to the predicted time period of the service flow in the peak flow peak-collision matrix is 0, if the predicted time period of the service flow is overlapped 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 flow peak-collision matrix is the burst flow size of the service flow, and the burst duration is determined by the burst start time and the burst end time.
9. The traffic flow peak-shifting scheduling method of claim 8, wherein the objective function is a maximum function.
10. The method as claimed in any of claims 2 to 9, wherein said establishing an objective function for the scheduled bursty traffic model comprises:
and under the constraint condition of maximum scheduling time delay, establishing the objective function for the scheduled burst flow model.
11. The traffic flow peak-to-peak scheduling method according to any one of claims 2 to 10, wherein before the building of the burst traffic model according to the burst traffic characteristics, the method further comprises:
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;
and if the burst flow of the service flow collides with the burst flows of other service flows, constructing the burst flow model for the service flow.
12. The traffic flow peak-off scheduling method according to any of claims 1 to 10, wherein the method further comprises:
and sending the scheduling delay of each service flow to an upstream node, so that the upstream node adds corresponding scheduling delay to each service flow according to the scheduling delay of each service flow.
13. The traffic flow peak-off scheduling method according to any of claims 1 to 10, wherein the method further comprises:
according to the scheduling delay of each service flow, increasing corresponding scheduling delay for the scheduling delay of each service flow;
and sending the plurality of service flows with the increased scheduling delay to a downstream node.
14. A service flow peak-shifting scheduling device is applied to a service flow convergence forwarding node, and is characterized in that the device comprises:
the service flow counting module is used for receiving a plurality of service flows and counting the flow of each service flow received in each time period according to a preset time interval;
and the peak staggering scheduling algorithm module is used for identifying the burst flow of each service flow according to the flow of each service flow received in each time period and determining the scheduling delay of each service flow according to the burst flow of each service flow.
15. The traffic stream peak-shifting scheduling apparatus of claim 14, wherein the peak-shifting scheduling algorithm module is configured to:
extracting burst flow characteristics of each service flow according to the flow of each service flow received in each time period;
constructing a burst flow model according to the burst flow characteristics;
adding scheduling time delay in the burst traffic model as a design variable to obtain a scheduled burst traffic model;
establishing a target function for the scheduled burst flow model;
and carrying out optimization solution on the objective function to obtain the scheduling delay of each service flow.
16. The traffic stream peak-shifting scheduler of claim 15, wherein the burst traffic characteristics include a burst time phase, a burst traffic size and a burst duration, and the peak-shifting scheduling algorithm module is configured to:
and constructing a burst flow function according to the burst time phase, the burst flow size and the burst duration.
17. The traffic stream peak-shifting scheduler of claim 16, wherein the peak-shifting scheduling algorithm module is configured to:
for each service flow, translating an S-shaped function with time as an independent variable according to the burst duration and the burst time phase of the service flow and performing expansion according to a first expansion coefficient to obtain a first function;
turning the S-shaped function, translating according to the burst time phase of the service flow and stretching according to a second stretching coefficient to obtain a second function;
multiplying the first function and the second function to obtain a third function;
and stretching the third function according to the burst flow size of the service flow to obtain the burst flow function.
18. The traffic stream peak-shifting scheduler of claim 17, wherein the first scaling factor and the second scaling factor are both 1.
19. The traffic flow peak-shifting scheduler of claim 17, wherein the objective function is a maximum function or an entropy function.
20. The traffic stream peak-shifting scheduler of claim 15, wherein the burst traffic characteristics include a burst traffic size, a burst start time and a burst end time, and the peak-shifting scheduling algorithm module is configured to:
and constructing a peak value flow peak collision matrix according to the burst flow size, the burst starting time and the burst ending time.
21. The traffic stream peak-shifting scheduling device of claim 20, wherein the peak-shifting scheduling algorithm module is configured to:
selecting the number of prediction time periods, wherein the product of the number of the prediction time periods and the preset time interval is larger than the burst period of the service flow;
and constructing the peak flow peak-collision matrix by taking the number of the plurality of service flows as the row number of the peak flow peak-collision matrix and taking the number of the predicted time periods as the column number of the peak flow peak-collision matrix, wherein if one predicted time period of one service flow in the plurality of service flows is not overlapped with the burst duration of the service flow, the value of an element corresponding to the predicted time period of the service flow in the peak flow peak-collision matrix is 0, if the predicted time period of the service flow is overlapped 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 flow peak-collision matrix is the burst flow size of the service flow, and the burst duration is determined by the burst start time and the burst end time.
22. The traffic stream peak-shifting scheduler of claim 21, wherein the objective function is a maximum function.
23. The traffic flow peak-error scheduling device according to any one of claims 15 to 22, wherein the peak-error scheduling algorithm module is configured to:
and under the constraint condition of maximum scheduling time delay, establishing the objective function for the scheduled burst flow model.
24. The traffic flow peak-off scheduling device according to any of claims 15 to 23, wherein the device further comprises:
and the judging module is used 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.
25. The traffic flow peak-off scheduling device according to any of claims 14 to 23, wherein the device further comprises:
and the message sending module is used for sending the scheduling delay of each service flow to the upstream node, so that the upstream node adds corresponding scheduling delay to each service flow according to the scheduling delay of each service flow.
26. The traffic flow peak-off scheduling device according to any of claims 14 to 23, wherein the device further comprises:
and the peak staggering scheduling module is used for increasing corresponding scheduling time delay for the scheduling time delay of each service flow according to the scheduling time delay of each service flow and sending the service flows with the increased scheduling time delay to a downstream node.
27. A computer readable storage medium comprising computer instructions which, when run on an electronic device, cause the electronic device to perform the traffic flow peak-off scheduling method of any of claims 1 to 13.
28. An electronic device, wherein the electronic device comprises a processor and a memory, wherein the memory is configured to store instructions, and wherein the processor is configured to invoke the instructions in the memory, such that the electronic device performs the traffic flow off-peak scheduling method according to any of claims 1 to 13.
29. A chip system, the chip system is applied to electronic equipment; the chip system comprises an interface circuit and a processor; the interface circuit and the processor are interconnected through a line; the interface circuit is configured to receive signals from a memory of the electronic device and to send signals to the processor, the signals including computer instructions stored in the memory; when the processor executes the computer instructions, the system-on-chip performs the traffic flow peak-shifting scheduling method according to any one of claims 1 to 13.
CN202110127349.1A 2021-01-29 2021-01-29 Method and related equipment for scheduling service flow peak staggering Pending CN114827041A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202110127349.1A CN114827041A (en) 2021-01-29 2021-01-29 Method and related equipment for scheduling service flow peak staggering
PCT/CN2021/117778 WO2022160728A1 (en) 2021-01-29 2021-09-10 Service flow staggered scheduling method and related device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110127349.1A CN114827041A (en) 2021-01-29 2021-01-29 Method and related equipment for scheduling service flow peak staggering

Publications (1)

Publication Number Publication Date
CN114827041A true CN114827041A (en) 2022-07-29

Family

ID=82526615

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110127349.1A Pending CN114827041A (en) 2021-01-29 2021-01-29 Method and related equipment for scheduling service flow peak staggering

Country Status (2)

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

Family Cites Families (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
US10058778B2 (en) * 2007-12-05 2018-08-28 Sony Interactive Entertainment America Llc Video compression system and method for reducing the effects of packet loss over a communication channel
CN103780907B (en) * 2014-01-27 2018-01-16 浙江宇视科技有限公司 A kind of method and apparatus of video data flow shaping
CN106789385B (en) * 2015-11-23 2020-05-22 杭州海康威视数字技术股份有限公司 Video stream sending method, sending device and network camera
CN112187586A (en) * 2020-10-13 2021-01-05 盛科网络(苏州)有限公司 Method and device for monitoring micro burst flow

Also Published As

Publication number Publication date
WO2022160728A1 (en) 2022-08-04

Similar Documents

Publication Publication Date Title
US11606564B2 (en) Video encoding code rate control method, apparatus, and device, and storage medium
CN104394486B (en) A kind of video stream processing method and device based on cloud desktop
Ray et al. Vantage: optimizing video upload for time-shifted viewing of social live streams
CN106134130B (en) The system and method that dynamic effective speed for real-time video flow is estimated
CN109068187B (en) Real-time traffic delivery system and method
CN109729437B (en) Streaming media self-adaptive transmission method, terminal and system
Kwon et al. MPMTP: Multipath multimedia transport protocol using systematic raptor codes over wireless networks
CN112203100B (en) Transmission method and system for reducing uplink and downlink bandwidth requirements
JP2015536594A (en) Aggressive video frame drop
CN106789385B (en) Video stream sending method, sending device and network camera
Ahmed A real-time routing protocol with adaptive traffic shaping for multimedia streaming over next-generation of Wireless Multimedia Sensor Networks
JP4934524B2 (en) Data communication apparatus and data communication method
CN112954385A (en) Self-adaptive shunt decision method based on control theory and data driving
Wu et al. A novel scheduling approach to concurrent multipath transmission of high definition video in overlay networks
CN114449353B (en) Session-based adaptive playback profile decision-making for video streaming
Lee et al. On the MDP-based cost minimization for video-on-demand services in a heterogeneous wireless network with multihomed terminals
CN106921860B (en) End-to-end video sending method and device
Zhang et al. Intelligent video ingestion for real-time traffic monitoring
Karimi et al. Improving video delivery over wireless multimedia sensor networks based on queue priority scheduling
CN114827041A (en) Method and related equipment for scheduling service flow peak staggering
US20140099039A1 (en) Image processing device, image processing method, and image processing system
CN115334307B (en) Data transmission method, front-end equipment, video acquisition system and medium
Wang et al. A qoe-based 360 video adaptive bitrate delivery and caching scheme for c-ran
CN105306970B (en) A kind of control method and device of live streaming media transmission speed
CN109922318B (en) Multi-channel video transmission scheduling method and device, storage medium and electronic terminal

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination