CN113114573A - Video stream classification and scheduling system in SDN network - Google Patents

Video stream classification and scheduling system in SDN network Download PDF

Info

Publication number
CN113114573A
CN113114573A CN202110413458.XA CN202110413458A CN113114573A CN 113114573 A CN113114573 A CN 113114573A CN 202110413458 A CN202110413458 A CN 202110413458A CN 113114573 A CN113114573 A CN 113114573A
Authority
CN
China
Prior art keywords
packet
port
data
flow
data packet
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
CN202110413458.XA
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.)
Chongqing University of Post and Telecommunications
Original Assignee
Chongqing University of Post and Telecommunications
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 Chongqing University of Post and Telecommunications filed Critical Chongqing University of Post and Telecommunications
Priority to CN202110413458.XA priority Critical patent/CN113114573A/en
Publication of CN113114573A publication Critical patent/CN113114573A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/243Classification techniques relating to the number of classes
    • G06F18/24323Tree-organised classifiers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • 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/2441Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS

Abstract

The invention relates to a video stream classification and scheduling system in an SDN network, which belongs to the field of software defined networks and comprises the following steps: the flow classification module is used for analyzing the packet header of a data packet in the edge router, extracting the flow characteristics, training the classifier, predicting unknown data by using the classifier, forwarding the classified data packet to an output port of the edge router, and issuing a flow table containing modified DSCP domain and output port forwarding behaviors; the path selection module is used for acquiring a global network topology, monitoring state changes of time delay, residual bandwidth and packet loss rate of each link, normalizing and scaling a link state value, calculating to obtain a path list meeting QoS (quality of service) constraint through an FPTAS-MMCP (fast forward adaptive multi-path-multicast service) algorithm, sequentially distributing paths in the feasible path list according to the priorities of different video services, and issuing a flow table to routing nodes on the paths to control data packet forwarding.

Description

Video stream classification and scheduling system in SDN network
Technical Field
The invention belongs to the field of software defined networks, and relates to a video stream classification and scheduling system in an SDN network.
Background
With the rapid expansion of the proportion of the video service network traffic in the overall network traffic, the need for fine classification of video traffic is also increasing. Under the traditional network architecture, the routing forwarding strategy based on the OSPF dynamic routing protocol is difficult to adapt to the requirement of rapid deployment of classification and scheduling strategies, so that the realization of fine classification and scheduling of video traffic under a new network architecture is urgently needed.
In the face of the increasing challenges of video streaming, researchers have provided numerous solutions that can be introduced in terms of both traffic classification and dynamic routing.
In order to guarantee QoS between the terminals, the network traffic needs to be divided according to the service requirements. The method for traffic classification commonly used in the SDN architecture includes payload-based traffic classification, port detection-based traffic classification, and machine learning-based traffic classification. However, as more and more communications are encrypted, applications begin to use dynamic ports, and port and payload based classification methods are becoming obsolete. The traffic classification based on machine learning finds out the statistical rule of the network data flow through a machine learning algorithm, so that the risks can be well overcome, and the traffic classification based on machine learning is a current research focus.
Under the SDN network architecture, novel network functions can be deployed more quickly, and based on the OpenFlow protocol, data packets can be transmitted in a data plane and a control plane in a two-way mode. Therefore, the classifier deployed on the control plane can conveniently realize the classification of the data flow from the data plane. Under the background of multi-video scheduling, if the video stream is taken as a whole to ensure the service quality, the demands of low time delay and high bandwidth of the video stream can cause the intense competition of link resources, and network congestion is more easily caused. It is therefore highly desirable to make finer grained classification of network traffic, with video streaming sub-classification being the key to QoS classification.
J.
Figure RE-GDA0003053610870000011
Et al use stream statistics and clustering methods based on neural self-encoding to classify video applications like Youtube, Vimeo, Facebook, and Twitch. Although the clustering method has high real-time performance, the precision of video classificationOnly 47%, recall 80%. R. nossenson et al distinguishes real-time video streams and buffered video streams of the same video source according to the difference of statistical information offsets, and can also cluster the two video streams using a density clustering algorithm (DBSCAN). The unsupervised machine learning classifies from the sample similarity angle, the classification instantaneity is higher than that of the supervised machine learning, but when the aggregation among different samples is stronger, the higher classification accuracy is difficult to obtain, so that the distribution process of the data packet network resources after the flow classification is indirectly influenced.
The classified video streams with different priorities need to perform QoS hierarchical mapping according to the requirements of the video streams on delay, bandwidth and reliability, and a path meeting QoS constraints of different video streams is planned for forwarding, so that link congestion can be relieved obviously, and the transmission quality of the multiple video streams is improved.
Because there are many metrics such as time delay, bandwidth and packet loss rate in the link, the traditional shortest path algorithm Dijkstra only aims at solving the optimal path for a certain metric. Liu takes the link load as weight, and the Dijkstra algorithm is used for obtaining the path with the minimum load for high-quality video forwarding, while the shortest hop count path is used for low-quality video stream forwarding. Similarly, the metrics such as time delay, link and packet loss rate can be integrated into a link weight, and the Dijkstra algorithm is repeatedly called to obtain a plurality of paths for meeting the forwarding requirements of video streams with different priorities. However, r.liu and wang hou hei et al simply simplify multiple link metrics into one, and cannot plan a path satisfying multiple QoS constraints under the condition that multiple metrics are constrained simultaneously, for example, an interactive video service has a requirement of multiple metrics such as high bandwidth, low delay, and low packet loss rate, and thus a routing algorithm based on a single metric cannot calculate an optimal path under the condition that differentiated constraints exist in the aspects of delay, bandwidth, and packet loss rate. Therefore, in the multi-video stream scheduling, an algorithm for obtaining paths satisfying multiple QoS constraints under multiple metrics is needed.
Research aiming at multi-metric QoS routing planning is a hot spot, and the algorithm types can be divided into three types, namely an intelligent algorithm, a deterministic algorithm and an approximate algorithm. The approximate algorithm is simpler and more efficient than the first two algorithms, and can quickly acquire the upper and lower bounds of the QoS performance. Ergun et al propose an ADAPT algorithm for artificially solving the minimum cost problem under the time delay constraint, expand the original graph, decompose and reconnect each node to construct an auxiliary graph, so that only the time delay weight is kept on the path, and then the path meeting the time delay constraint and having the minimum cost is obtained on the auxiliary graph according to the shortest path algorithm. Xue et al also uses a graph expansion method to expand the number of link metrics to two or more and provide an efficient approximation algorithm PseudoRMCP. However, the implementation of the routing algorithms of f, Ergun and g.xue requires the awareness of the global network topology and the global link state information. In a network under a traditional distributed architecture, the information is difficult to obtain, and the routing algorithm is difficult to rapidly deploy.
Disclosure of Invention
In view of this, the present invention provides a video stream classification and scheduling system combining a CART decision tree and an FPTAS-MMCP algorithm, which aims to solve the problem of multiple QoS constrained paths by an FPTAS-MMCP routing algorithm combining a graph expansion method and a KSP (K-short paths) algorithm, and calculate multiple feasible paths satisfying QoS constraints for forwarding different types of video streams, respectively, for the problems of low video coarse-grained classification and accuracy and lack of constraints on multiple path weights in routing under an SDN architecture.
In order to achieve the purpose, the invention provides the following technical scheme:
a video stream classification and scheduling system in an SDN network comprises a flow classification module and a path selection module which are deployed on an SDN control plane;
the flow classification module is used for analyzing the packet header of a data packet in the edge router, extracting flow characteristics, training the CART decision tree classifier, predicting unknown data according to the flow characteristics by using the trained classifier, forwarding the classified data packet to an output port of the edge router, and issuing a flow table containing DSCP domain modification and output port forwarding behaviors;
the path selection module is used for acquiring a global network topology, monitoring state changes of time delay, residual bandwidth and packet loss rate of each link, normalizing and scaling link state values, calculating between a given source node and a given destination node through an FPTAS-MMCP algorithm to obtain a path list meeting QoS constraints, wherein data packets with different DSCP values correspond to videos with different priorities, sequentially distributing paths in the feasible path list according to the priorities of different video services, and finally issuing a flow table to routing nodes on the paths to control forwarding of the data packets.
Further, the flow classification module comprises a packet header information analysis sub-module, a flow characteristic extraction sub-module, an off-line training sub-module and a classification and marking sub-module;
the packet header information analysis submodule is used for analyzing the packet header of the data packet passing through the edge router to obtain the quintuple information of the data packet and counting the packet length and arrival time stamp information of the current data packet;
the flow characteristic extraction submodule is used for adding data packets with the same packet header quintuple information into the same queue and counting the flow characteristics of the quintuple in the queue when the length of the queue reaches a set threshold value; the quintuple information comprises a source IP address, a source port, a destination IP address, a destination port and a transport layer protocol;
the offline training sub-module is used for training the CART decision tree classifier by taking the collected stream features as a data set, exporting the classifier after the training is finished, and loading the classifier in the classification and marking sub-module;
the classification and marking submodule is used for predicting unknown data according to flow characteristics by using a loaded classifier, forwarding the classified data packet to an outlet port of the edge router, and issuing a flow table containing modified DSCP domains and outlet port forwarding behaviors.
Further, the flow classification module obtains a data Packet msg of an unknown flow through a Packet-In event processing function; extracting an ipv4 message of a packet header from a data packet in a parser () function to obtain a source IP address src and a destination IP address dst of the data packet; then, the transmission layer is analyzed to obtain a source port src _ port, a destination port dst _ port and a transmission protocol _ name; then, acquiring the effective length and arrival time information of the data packet through len () and time (); finally, a queue is constructed by taking the quintuple as a key and is put into a queue pool, and the packet length-arrival time is taken as a value and is added into the queue through a queue () function;
when the queue length exceeds a threshold value, executing an extract () function, calculating a packet average size len _ mean, a packet size variance len _ std, a packet average arrival time interval time _ mean, a packet arrival time interval variance time _ std and a packet size conversion count feature vector according to the packet length and packet arrival time information, and outputting unknown stream classes by a prediction () method by taking the feature vector as a classifier input; knowing the DSCP value to be modified through the mapping relation class _ DSCP of the flow class and the DSCP value; and finally, issuing a flow table to the OpenvSwitch switch, wherein an action field of the flow table contains OFPactionSetField () and OFPactionOutPut () behaviors, the OFPactionSetField () is used for modifying the value of a DSCP field of the data packet header, and the OFPactionOutPut () is used for designating forwarding of an egress port.
Furthermore, the offline training submodule optimizes parameters according to k-fold cross validation positive feedback in an offline state, so that the aim of pre-pruning is fulfilled, algorithm complexity is reduced under the condition of not obviously reducing precision, and prediction time is shortened; the offline training submodule exports the CART decision tree classifier into a pkl format file and loads the pkl format file in the classifying and marking submodule through load ().
Further, the path selection module interacts based on an OpenFlow message mechanism and comprises a main thread and two sub-threads, wherein the sub-thread a is used for periodically sending an Echo message request and a switch port and flow table statistical information query request, and by adding timestamp information into the Echo message, the time of data going back and forth between the controller and the switch is acquired, so that the subsequent acquisition of link delay is facilitated; the OFPFlowStatRequest request message is used for acquiring packet count, bit number and flow table lifetime statistical information meeting the conditions of a flow table matching domain; the EventOFPPortStatsReply request message is used for acquiring information such as the receiving/sending bit number of the port of the switch, the survival time of the port and the like; the EventOFPPortDescStatsReply request message is used to obtain the hardware attributes of the port, such as the current data rate, the maximum data rate and the configuration information of the port.
Further, after receiving the statistical information of the flow table or the port, the switch receives a response message msg in a corresponding message processing function of the main thread, and then analyzes the response message msg to obtain related statistical information; in the main thread, for a global network view, transmitting an LLDP data packet encapsulated with timestamp information to each switch through an OFPactionOutput message; the LLDP data Packet is forwarded to an adjacent switch through a port and is sent back to the controller through a Packet-In message, so that a message triggered by the behavior of a data layer of the switch is obtained through statistics, and maintenance and updating of the global topology are realized; the data layer behavior triggered messages include adjacency matrices, switch join/leave, port add/modify/delete, and link add/delete.
Further, the path selection module also realizes the measurement of time delay and packet loss index through a message mechanism, constructs a Graph data structure provided by a Networkx library after the calculation of the time delay, bandwidth and packet loss index of a link is completed, and calls add _ edge (), add _ weighted _ edges _ from () function to add weighted edges to the Graph G; and then taking G as a parameter, calling MinMax () to normalize the data, calling MMCP () to output to obtain a plurality of feasible paths, and finally issuing a flow table along routing nodes on the paths to control the forwarding of the data packet.
The invention has the beneficial effects that: the invention classifies with high accuracy and high real-time according to different video service differentiated QoS requirements, and the adopted CART decision tree model achieves high accuracy of more than 97.3%. And simultaneously, multi-metric QoS constraints are introduced into an SDN framework, paths meeting respective QoS constraints are planned for each video stream, and differentiated transmission service guarantee of the video streams is achieved. The utilization rate of link resources is effectively improved, and the occurrence of blocking is reduced.
Additional advantages, objects, and features of the invention will be set forth in part in the description which follows and in part will become apparent to those having ordinary skill in the art upon examination of the following or may be learned from practice of the invention. The objectives and other advantages of the invention may be realized and attained by the means of the instrumentalities and combinations particularly pointed out hereinafter.
Drawings
For the purposes of promoting a better understanding of the objects, aspects and advantages of the invention, reference will now be made to the following detailed description taken in conjunction with the accompanying drawings in which:
fig. 1 is a schematic structural diagram of a video stream classification and scheduling system in an SDN network;
FIG. 2 is a flow classification module deployment diagram;
fig. 3 is a functional implementation diagram of a path selection module.
Detailed Description
The embodiments of the present invention are described below with reference to specific embodiments, and other advantages and effects of the present invention will be easily understood by those skilled in the art from the disclosure of the present specification. The invention is capable of other and different embodiments and of being practiced or of being carried out in various ways, and its several details are capable of modification in various respects, all without departing from the spirit and scope of the present invention. It should be noted that the drawings provided in the following embodiments are only for illustrating the basic idea of the present invention in a schematic way, and the features in the following embodiments and examples may be combined with each other without conflict.
Wherein the showings are for the purpose of illustrating the invention only and not for the purpose of limiting the same, and in which there is shown by way of illustration only and not in the drawings in which there is no intention to limit the invention thereto; to better illustrate the embodiments of the present invention, some parts of the drawings may be omitted, enlarged or reduced, and do not represent the size of an actual product; it will be understood by those skilled in the art that certain well-known structures in the drawings and descriptions thereof may be omitted.
The same or similar reference numerals in the drawings of the embodiments of the present invention correspond to the same or similar components; in the description of the present invention, it should be understood that if there is an orientation or positional relationship indicated by terms such as "upper", "lower", "left", "right", "front", "rear", etc., based on the orientation or positional relationship shown in the drawings, it is only for convenience of description and simplification of description, but it is not an indication or suggestion that the referred device or element must have a specific orientation, be constructed in a specific orientation, and be operated, and therefore, the terms describing the positional relationship in the drawings are only used for illustrative purposes, and are not to be construed as limiting the present invention, and the specific meaning of the terms may be understood by those skilled in the art according to specific situations.
Referring to fig. 1 to 3, as shown in fig. 1, the system model mainly includes two functions: and flow classification and path selection are deployed on an SDN control plane.
In the traffic classification module, a Packet-In message is first forwarded to a controller for a Packet passing through an edge router, and the controller parses a Packet header to obtain information of a Packet quintuple (a source IP address, a source port, a destination IP address, a destination port and a transport layer protocol), and meanwhile, the Packet length and arrival timestamp information of a current Packet need to be counted. Then, the data packets with the same quintuple header information enter the same queue, and when the queue length is equal to the set threshold (12 in this embodiment), the flow characteristics of the quintuple are obtained by statistics from the queue. If the classifier model is not trained, the flow features need to be collected and stored as a data set for training the classifier. And applying a machine learning algorithm to the training data set in the offline submodule, and selecting a classifier with better instantaneity and accuracy, namely a CART decision tree. After training is finished, flow characteristics do not need to be acquired, and the loaded classifier is directly used for predicting unknown data according to the flow characteristics. And finally, forwarding the classified data Packet to an egress port of the edge router through a Packet-Out message, and issuing a flow table containing modified DSCP domains and egress port forwarding behaviors.
In the path selection, a global network topology (node adjacency matrix) is acquired by using an LLDP data packet, then the state changes of the time delay, the residual bandwidth and the packet loss rate of each link are monitored, and in order to unify the numerical order, the link state values need to be normalized and scaled. And then calling an FPTAS-MMCP algorithm, and calculating to obtain a path list meeting the QoS constraint between the given source node and the given destination node. The data packets with different DSCP values correspond to videos with different priorities, the paths in the feasible path list are sequentially distributed according to the priorities of different video services, and the controller issues the flow table to the routing nodes on the paths to control the forwarding of the data packets.
Flow classification module
First, an offline training submodule is introduced. The classification accuracy and the prediction time cost of the CART decision tree are superior to those of other common supervised machine learning algorithms, so that parameters are optimized in an off-line state according to k-fold cross validation positive feedback, the aim of pre-pruning is fulfilled, the algorithm complexity is reduced without obviously reducing the precision, and the prediction time is reduced. The classifier is exported as a pkl-formatted file and loaded by load () in the traffic classification and labeling submodule of the traffic classification application.
As shown In fig. 2, for msg (Packet) of an unknown flow In a Packet-In event processing function of a traffic classification module, src (source IP address) and dst (destination IP address) of the Packet are obtained by extracting an ipv4 message of a header from the Packet In a parser () function, then src _ port (source port), dst _ port (destination port) and protocol _ name (transport protocol) are obtained by analyzing a transport layer, and then effective length and arrival time information of the Packet are obtained by len () and time (). And finally, constructing a queue by taking the quintuple as a key, putting the queue into a queue pool, and adding the packet length-arrival time serving as a value into the queue through a queue () function.
When the queue length exceeds a threshold value, an extract () function is executed, feature vectors of len _ mean (packet average size), len _ std (packet size variance), time _ mean (packet average arrival time interval), time _ std (packet arrival time interval variance) and count (packet size conversion count) are calculated according to the packet length and the packet arrival time information, and unknown stream classes are output by a prediction () method by taking the feature vectors as input of a classifier. The DSCP value to be modified is known by the flow class-DSCP mapping relation with the DSCP value. And finally, issuing a flow table to the OpenvSwitch switch, wherein an action field of the flow table comprises OFPactionSetField () and OFPactionOutPut () behaviors, wherein the former is used for modifying the value of a DSCP field of a data packet header, and the latter is used for appointing the forwarding of an output port.
Route selection module
The interaction based on the OpenFlow messaging mechanism in the path selection module is shown in fig. 3. A main thread and two sub-threads are defined together, wherein the sub-thread A is used for periodically sending an Echo message request and a switch port and flow table statistical information query request, and by adding timestamp information into the Echo message, the time of data going back and forth between a controller and a switch can be acquired, so that the subsequent acquisition of link delay is facilitated. In addition, the OFPFlowStatsRequest request message can be used to obtain statistical information such as packet count, bit number, flow table lifetime and the like which meet the conditions of the flow table matching domain. The EventOFPPortStatsReply request message is used for acquiring information such as the receiving/sending bit number of the port of the switch, the survival time of the port and the like. The EventOFPPortDescStatsReply request message is used for acquiring the hardware attributes of the port, such as the current data rate, the maximum data rate, the configuration information and the like of the port.
After receiving the statistical information of the flow table or the port, the switch receives a response message msg in a corresponding message processing function of the main thread, and then obtains the relevant statistical information through analyzing the msg. And meanwhile, in the main thread, for a global network view, the LLDP data packet encapsulated with the timestamp information is issued to each switch through an OFPactionOutput message. The LLDP Packet is forwarded to the adjacent switch through the port and sent back to the controller through the Packet-In message, so that the adjacency matrix of the switch can be obtained by statistics, and the maintenance and update of the global topology are realized by the message triggered by the data layer behaviors, such as the addition/departure of the switch, the addition/modification/deletion of the port, the addition/deletion of the link, and the like. And then, the measurement of time delay and packet loss rate indexes is realized through a message mechanism. After the calculation of the delay, bandwidth and packet loss rate indexes of the link is completed, a Graph data structure provided by a Networkx library is constructed, and add _ edge (), add _ weighted _ edges _ from () and other functions are added to the Graph G. And then taking G as a parameter, calling MinMax () to normalize the data, calling MMCP () to output to obtain a plurality of feasible paths, and finally issuing a flow table along routing nodes on the paths to control the forwarding of the data packet.
Finally, the above embodiments are only intended to illustrate the technical solutions of the present invention and not to limit the present invention, and although the present invention has been described in detail with reference to the preferred embodiments, it will be understood by those skilled in the art that modifications or equivalent substitutions may be made on the technical solutions of the present invention without departing from the spirit and scope of the technical solutions, and all of them should be covered by the claims of the present invention.

Claims (7)

1. A video stream classification and scheduling system in an SDN network is characterized in that: the SDN flow classification module and the path selection module are deployed on an SDN control plane;
the flow classification module is used for analyzing the packet header of a data packet in the edge router, extracting flow characteristics, training the CART decision tree classifier, predicting unknown data according to the flow characteristics by using the trained classifier, forwarding the classified data packet to an output port of the edge router, and issuing a flow table containing DSCP domain modification and output port forwarding behaviors;
the path selection module is used for acquiring a global network topology, monitoring state changes of time delay, residual bandwidth and packet loss rate of each link, normalizing and scaling link state values, calculating between a given source node and a given destination node through an FPTAS-MMCP algorithm to obtain a path list meeting QoS constraints, wherein data packets with different DSCP values correspond to videos with different priorities, sequentially distributing paths in the feasible path list according to the priorities of different video services, and finally issuing a flow table to routing nodes on the paths to control forwarding of the data packets.
2. The system for classifying and scheduling video streams in an SDN network according to claim 1, wherein: the flow classification module comprises a packet header information analysis sub-module, a flow characteristic extraction sub-module, an off-line training sub-module and a classification and marking sub-module;
the packet header information analysis submodule is used for analyzing the packet header of the data packet passing through the edge router to obtain the quintuple information of the data packet and counting the packet length and arrival time stamp information of the current data packet;
the flow characteristic extraction submodule is used for adding data packets with the same packet header quintuple information into the same queue and counting the flow characteristics of the quintuple in the queue when the length of the queue reaches a set threshold value; the quintuple information comprises a source IP address, a source port, a destination IP address, a destination port and a transport layer protocol;
the offline training sub-module is used for training the CART decision tree classifier by taking the collected stream features as a data set, exporting the classifier after the training is finished, and loading the classifier in the classification and marking sub-module;
the classification and marking submodule is used for predicting unknown data according to flow characteristics by using a loaded classifier, forwarding the classified data packet to an outlet port of the edge router, and issuing a flow table containing modified DSCP domains and outlet port forwarding behaviors.
3. The system for classifying and scheduling video streams in an SDN network according to claim 2, wherein: the flow classification module acquires a data Packet msg of an unknown flow through a Packet-In event processing function; extracting an ipv4 message of a packet header from a data packet in a parser () function to obtain a source IP address src and a destination IP address dst of the data packet; then, the transmission layer is analyzed to obtain a source port src _ port, a destination port dst _ port and a transmission protocol _ name; then, acquiring the effective length and arrival time information of the data packet through len () and time (); finally, a queue is constructed by taking the quintuple as a key and is put into a queue pool, and the packet length-arrival time is taken as a value and is added into the queue through a queue () function;
when the queue length exceeds a threshold value, executing an extract () function, calculating a packet average size len _ mean, a packet size variance len _ std, a packet average arrival time interval time _ mean, a packet arrival time interval variance time _ std and a packet size conversion count feature vector according to the packet length and packet arrival time information, and outputting unknown stream classes by a prediction () method by taking the feature vector as a classifier input; knowing the DSCP value to be modified through the mapping relation class _ DSCP of the flow class and the DSCP value; and finally, issuing a flow table to the OpenvSwitch switch, wherein an action field of the flow table contains OFPactionSetField () and OFPactionOutPut () behaviors, the OFPactionSetField () is used for modifying the value of a DSCP field of the data packet header, and the OFPactionOutPut () is used for designating forwarding of an egress port.
4. The system for classifying and scheduling video streams in an SDN network according to claim 2, wherein: the offline training submodule optimizes parameters according to k-fold cross validation positive feedback in an offline state to achieve the purpose of pre-pruning; the offline training submodule exports the CART decision tree classifier into a pkl format file and loads the pkl format file in the classifying and marking submodule through load ().
5. The system for classifying and scheduling video streams in an SDN network according to claim 1, wherein: the path selection module carries out interaction based on an OpenFlow message mechanism and comprises a main thread and two sub-threads, wherein the sub-thread A is used for periodically sending an Echo message request and a switch port and flow table statistical information query request, and time stamp information is added into the Echo message to obtain the time of data between a controller and a switch; the OFPFlowStatRequest request message is used for acquiring packet count, bit number and flow table lifetime statistical information meeting the conditions of a flow table matching domain;
the EventOFPPortStatsReply request message is used for acquiring information such as the receiving/sending bit number of the port of the switch, the survival time of the port and the like; the EventOFPPortDescStatsReply request message is used to obtain the hardware attributes of the port, such as the current data rate, the maximum data rate and the configuration information of the port.
6. The system for classifying and scheduling video streams in an SDN network according to claim 5, wherein: after receiving the statistical information of the flow table or the port, the switch receives a response message msg in a corresponding message processing function of the main thread, and then analyzes the response message msg to obtain related statistical information; in the main thread, for a global network view, transmitting an LLDP data packet encapsulated with timestamp information to each switch through an OFPactionOutput message; the LLDP data Packet is forwarded to an adjacent switch through a port and is sent back to the controller through a Packet-In message, so that a message triggered by the behavior of a data layer of the switch is obtained through statistics, and maintenance and updating of the global topology are realized; the data layer behavior triggered messages include adjacency matrices, switch join/leave, port add/modify/delete, and link add/delete.
7. The system for classifying and scheduling video streams in an SDN network according to claim 6, wherein: the path selection module also realizes the measurement of time delay and packet loss rate indexes through a message mechanism, constructs a Graph data structure provided by a Networkx library after the calculation of the time delay, the bandwidth and the packet loss rate indexes of a link is finished, and calls add _ edge (), wherein an add _ weighted _ edges _ from () function adds weighted edges to a Graph G; and then taking G as a parameter, calling MinMax () to normalize the data, calling MMCP () to output to obtain a plurality of feasible paths, and finally issuing a flow table along routing nodes on the paths to control the forwarding of the data packet.
CN202110413458.XA 2021-04-16 2021-04-16 Video stream classification and scheduling system in SDN network Pending CN113114573A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110413458.XA CN113114573A (en) 2021-04-16 2021-04-16 Video stream classification and scheduling system in SDN network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110413458.XA CN113114573A (en) 2021-04-16 2021-04-16 Video stream classification and scheduling system in SDN network

Publications (1)

Publication Number Publication Date
CN113114573A true CN113114573A (en) 2021-07-13

Family

ID=76718115

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110413458.XA Pending CN113114573A (en) 2021-04-16 2021-04-16 Video stream classification and scheduling system in SDN network

Country Status (1)

Country Link
CN (1) CN113114573A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114760669A (en) * 2022-06-13 2022-07-15 南京邮电大学 Routing decision method and system based on flow prediction
CN114827021A (en) * 2022-06-27 2022-07-29 南京邮电大学 Multimedia service flow acceleration system based on SDN and machine learning
CN115037680A (en) * 2022-04-25 2022-09-09 哈尔滨工业大学(威海) SASE-oriented flow routing method and system
CN116055378A (en) * 2023-01-10 2023-05-02 中国联合网络通信集团有限公司 Training method and device for traffic scheduling strategy generation model
CN117077030A (en) * 2023-10-16 2023-11-17 易停车物联网科技(成都)有限公司 Few-sample video stream classification method and system for generating model

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115037680A (en) * 2022-04-25 2022-09-09 哈尔滨工业大学(威海) SASE-oriented flow routing method and system
CN115037680B (en) * 2022-04-25 2023-08-22 哈尔滨工业大学(威海) SASE-oriented flow routing method and system
CN114760669A (en) * 2022-06-13 2022-07-15 南京邮电大学 Routing decision method and system based on flow prediction
CN114760669B (en) * 2022-06-13 2022-09-02 南京邮电大学 Flow prediction-based route decision method and system
WO2023241423A1 (en) * 2022-06-13 2023-12-21 南京邮电大学 Routing decision method and system based on traffic prediction
CN114827021A (en) * 2022-06-27 2022-07-29 南京邮电大学 Multimedia service flow acceleration system based on SDN and machine learning
CN114827021B (en) * 2022-06-27 2022-11-25 南京邮电大学 Multimedia service flow acceleration system based on SDN and machine learning
CN116055378A (en) * 2023-01-10 2023-05-02 中国联合网络通信集团有限公司 Training method and device for traffic scheduling strategy generation model
CN117077030A (en) * 2023-10-16 2023-11-17 易停车物联网科技(成都)有限公司 Few-sample video stream classification method and system for generating model
CN117077030B (en) * 2023-10-16 2024-01-26 易停车物联网科技(成都)有限公司 Few-sample video stream classification method and system for generating model

Similar Documents

Publication Publication Date Title
CN113114573A (en) Video stream classification and scheduling system in SDN network
CN111600754B (en) Industrial heterogeneous network scheduling method for interconnection of TSN (transmission time network) and non-TSN (non-Transmission time network)
CN109714275B (en) SDN controller for access service transmission and control method thereof
CN108521375B (en) SDN-based network multi-service flow QoS transmission and scheduling method
US11159432B2 (en) Data transmission method, and switch and network control system using the method
CN108833279B (en) Method for multi-constraint QoS routing based on service classification in software defined network
CN108259367B (en) Service-aware flow strategy customization method based on software defined network
CN100448216C (en) Data structure and storage medium for realizing multi-protocol habel exchange system engineering
CN112491619B (en) Service customization network resource self-adaptive distribution method based on SDN
CN112313910A (en) Multi-path selection system and method for data center centric metropolitan area networks
CN102025620B (en) Cognitive network QoS (quality of service) guarantee method on basis of service differentiation
CN108040012B (en) Multi-target multicast routing path construction method in SDN network based on longicorn stigma search
CN103346922A (en) Controller for determining network state based on SDN (Software Defined Networking) and determination method thereof
CN114827021B (en) Multimedia service flow acceleration system based on SDN and machine learning
WO2021244247A1 (en) Data message forwarding method, network node, system, and storage medium
CN109617819B (en) Software-defined backhaul network routing method based on traffic classification
CN110557333A (en) method and system for controlling and guaranteeing quality of service of software defined network
CN107995121B (en) Method for counting flow in software defined network based on wildcard
Huang et al. Machine learning for broad-sensed internet congestion control and avoidance: A comprehensive survey
Xu et al. IARA: An intelligent application-aware VNF for network resource allocation with deep learning
CN111431820A (en) Online data stream QoS identification method and system based on service type
US7240124B2 (en) System and method for transferring data on a network using a single route optimizer to define an explicit route and transfer the information related to the explicit route to a plurality of routers and a plurality of optimized routers on the network
CN112350948A (en) SDN-based distributed network tracing system and method
Xu et al. An adaptive flow table adjustment algorithm for SDN
CN114745322B (en) Video flow routing method based on genetic algorithm in SDN environment

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20210713

RJ01 Rejection of invention patent application after publication