CN114679414A - Traffic scheduling method, device, equipment and storage medium - Google Patents

Traffic scheduling method, device, equipment and storage medium Download PDF

Info

Publication number
CN114679414A
CN114679414A CN202110568201.1A CN202110568201A CN114679414A CN 114679414 A CN114679414 A CN 114679414A CN 202110568201 A CN202110568201 A CN 202110568201A CN 114679414 A CN114679414 A CN 114679414A
Authority
CN
China
Prior art keywords
outlet
data stream
flow
target data
target
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
CN202110568201.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.)
Tencent Cloud Computing Beijing Co Ltd
Original Assignee
Tencent Cloud Computing Beijing 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 Tencent Cloud Computing Beijing Co Ltd filed Critical Tencent Cloud Computing Beijing Co Ltd
Priority to CN202110568201.1A priority Critical patent/CN114679414A/en
Publication of CN114679414A publication Critical patent/CN114679414A/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
    • 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/2425Traffic characterised by specific attributes, e.g. priority or QoS for supporting services specification, e.g. SLA
    • H04L47/2433Allocation of priorities to traffic types
    • 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/2483Traffic characterised by specific attributes, e.g. priority or QoS involving identification of individual flows

Landscapes

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

Abstract

The embodiment of the application discloses a traffic scheduling method, a traffic scheduling device, traffic scheduling equipment and a storage medium, which can be used in the field of cloud technology to realize network scheduling. The method comprises the following steps: acquiring data flow information of each target data flow in a plurality of target data flows, wherein the data flow information comprises outlet information used for indicating an initial flow outlet; acquiring a network resource parameter of each flow outlet in a plurality of flow outlets, and determining an outlet identifier corresponding to each target data stream according to the network resource parameter and the outlet information of each target data stream; marking each target data stream by using the outlet identification corresponding to each target data stream to obtain a plurality of marking data streams, wherein each marking data stream carries the outlet identification; and scheduling the plurality of marking data streams to a target flow outlet according to the outlet identification carried in each marking data stream. The method can realize the automation of flow scheduling and provide a better flow outlet for the data flow.

Description

Traffic scheduling method, device, equipment and storage medium
Technical Field
The present application relates to the field of cloud technologies, and in particular, to a traffic scheduling method, apparatus, device, and storage medium.
Background
With the rapid development of computers, data streams of videos, pictures and the like are increasing rapidly. When a data flow enters an external network from an internal network, the data flow is generally required to be scheduled from the internal network to the external network by some scheduling method. At present, data flow generally implements traffic scheduling according to a destination IP address of the data flow, that is, the data flow is scheduled to an external network corresponding to the destination IP address. However, if an external network corresponding to the destination IP address fails or is congested, data processing corresponding to the data flow may be affected. Therefore, how to select a suitable external network for the data stream becomes an urgent problem to be solved.
Disclosure of Invention
The embodiment of the application provides a traffic scheduling method, a traffic scheduling device, traffic scheduling equipment and a storage medium, which can realize the automation of traffic scheduling and provide a better traffic outlet for a data stream, so that the data stream can be sent to a better network for subsequent data processing.
A first aspect of the present embodiment discloses a traffic scheduling method, where the method includes:
Acquiring data flow information of each target data flow in a plurality of target data flows, wherein the data flow information comprises outlet information used for indicating an initial flow outlet;
acquiring a network resource parameter of each flow outlet in a plurality of flow outlets, and determining an outlet identifier corresponding to each target data stream according to the network resource parameter and the outlet information of each target data stream;
marking each target data stream by using the outlet identification corresponding to each target data stream to obtain a plurality of marking data streams, wherein each marking data stream carries the outlet identification;
and scheduling the plurality of marking data streams to a target flow outlet according to the outlet identification carried in each marking data stream.
A second aspect of the embodiments of the present application discloses a data traffic device, where the device includes:
an obtaining unit, configured to obtain data flow information of each of a plurality of target data flows, where the data flow information includes outlet information indicating an initial traffic outlet;
a determining unit, configured to obtain a network resource parameter of each of a plurality of traffic outlets, and determine, according to the network resource parameter and outlet information of each target data stream, an outlet identifier corresponding to each target data stream;
The marking unit is used for marking each target data stream by using the outlet identifier corresponding to each target data stream to obtain a plurality of marking data streams, and each marking data stream carries the outlet identifier;
and the scheduling unit is used for scheduling the marking data streams to a target flow outlet according to the outlet identification carried in each marking data stream.
In a third aspect of the embodiments of the present application, a data traffic is disclosed, which includes a processor, a memory, and a network interface, where the processor, the memory, and the network interface are connected to each other, where the memory is used to store a computer program, and the computer program includes program instructions, and the processor is configured to call the program instructions to execute the method of the first aspect.
A fourth aspect of embodiments of the present application discloses a computer-readable storage medium, in which a computer program is stored, the computer program comprising program instructions, which, when executed by a processor, cause the processor to perform the method of the first aspect.
A fifth aspect of embodiments of the present application discloses a computer program product or a computer program comprising computer instructions stored in a computer-readable storage medium. The processor of the server reads the computer instructions from the computer readable storage medium, and the processor executes the computer instructions to cause the server to perform the method of the first aspect described above.
In this embodiment, data flow information of each of a plurality of target data flows may be obtained, where the data flow information may include outlet information indicating an initial traffic outlet. The method can further include the steps of obtaining a network resource parameter of each of the plurality of flow outlets, determining an outlet identifier corresponding to each target data stream according to the network resource parameter and outlet information of each target data stream, and marking each target data stream by using the outlet identifier corresponding to each target data stream, so that a plurality of marking data streams are obtained, wherein each marking data stream carries the outlet identifier. Furthermore, a plurality of marking data streams can be scheduled to a target flow outlet according to an outlet identifier carried in each marking data stream. By implementing the method, the automation of flow scheduling can be realized, and a better flow outlet is provided for the data flow, so that the data flow can be sent to a better network for subsequent data processing.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings needed to be used in the description of the embodiments are briefly introduced below, and it is obvious that the drawings in the following description are some embodiments of the present application, and it is obvious for those skilled in the art to obtain other drawings based on these drawings without creative efforts.
Fig. 1 is a schematic architecture diagram of a traffic scheduling system according to an embodiment of the present application;
fig. 2 is a schematic flowchart of a traffic scheduling method according to an embodiment of the present application;
fig. 3 is a schematic flow chart of another traffic scheduling method according to an embodiment of the present application;
fig. 4 is a schematic flowchart of a traffic scheduling method based on a routing scheduling manner according to an embodiment of the present application;
fig. 5 is a schematic flowchart of another traffic scheduling method according to an embodiment of the present application;
fig. 6 is a schematic structural diagram of a traffic scheduling apparatus according to an embodiment of the present application;
fig. 7 is a schematic structural diagram of a traffic scheduling device according to an embodiment of the present application.
Detailed Description
The technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application, and it is obvious that the described embodiments are some, but not all, embodiments of the present application. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present application.
The technical scheme of the application can be applied to a traffic scheduling device (or a traffic scheduling device system), and the traffic scheduling device can be a server or other devices. For example, the traffic scheduling device may be an independent physical server, a server cluster or a distributed system formed by a plurality of physical servers, or a cloud server providing basic cloud computing services such as a cloud service, a cloud database, cloud computing, a cloud function, cloud storage, a network service, cloud communication, a middleware service, a domain name service, a security service, a CDN, a big data and artificial intelligence platform, and the like.
Cloud Technology refers to a hosting Technology for unifying resources of hardware, software, network and the like in a wide area network or a local area network to realize calculation, storage, processing and sharing of data.
The cloud technology is based on the general names of network technology, information technology, integration technology, management platform technology, application technology and the like applied in the cloud computing business model, can form a resource pool, is used as required, and is flexible and convenient. Cloud computing technology will become an important support. Background services of the technical network system require a large amount of computing and storage resources, such as video websites, picture-like websites and more web portals. With the high development and application of the internet industry, each article may have its own identification mark and needs to be transmitted to a background system for logic processing, data in different levels are processed separately, and various industrial data need strong system background support and can only be realized through cloud computing.
According to the method and the device, data required by flow scheduling are stored in the cloud, and the data in the cloud are acquired at any time according to requirements and expanded at any time.
The traffic scheduling refers to scheduling specific traffic to a designated link for transmission, so as to achieve purposes of quality optimization or cost saving and the like. The traffic is classified into an incoming direction, which is a traffic entering the internal network from the external network, and an outgoing direction, which is a traffic entering the external network from the internal network. Generally, traffic scheduling schemes can be distinguished into two categories, the egress direction and the ingress direction. The traffic scheduling in the incoming direction may guide the traffic of the external network entering the internal network by issuing different routing priorities. The scheme mainly aims at the traffic scheduling in the outgoing direction.
According to the traffic scheduling method provided by the embodiment of the application, the data stream information of each target data stream in a plurality of target data streams is obtained, the network resource parameter of each traffic outlet in the plurality of traffic outlets is also obtained, the outlet identifier of each target data stream is determined according to the network resource parameter and the outlet information which is included in the data stream information of each target data stream and used for indicating the initial traffic outlet, and the outlet identifier of each target data stream is utilized to mark each target data stream, so that each target data stream is scheduled to the target traffic outlet according to the outlet identifier carried in each target data stream. By implementing the method, the automation of flow scheduling can be realized, and a better flow outlet is provided for the data flow, so that the data flow can be sent to a better network for subsequent data processing.
Optionally, in some scenarios, the traffic scheduling device (or system) may include multiple components, such as a control component, a marking component, and a forwarding component. Optionally, the above components may also be referred to by other names, such as control device, marking device, and forwarding device, and the application is not limited thereto.
For example, please refer to fig. 1, fig. 1 is a schematic structural diagram of a traffic scheduling system according to an embodiment of the present disclosure. As shown in fig. 1, the flow scheduling system includes a control component, a marking component, and a forwarding component.
A control component configured to obtain data flow information for each of a plurality of target data flows, the data flow information including outlet information indicating an initial traffic outlet. The target data stream may be determined by the control component by filtering according to the received data stream information of each of the plurality of initial data streams. As shown in fig. 1, the initial data flow refers to a data flow that needs to enter a second network (second network 1, second network 2, …, second network n) from a first network, wherein the first network may be an internal network, and the first network may be an external internal network. Optionally, the control component may further obtain the network resource parameter to determine a target traffic outlet according to the network resource parameter, where the target traffic outlet may be a better traffic outlet than the initial traffic outlet. After the outlet information of each target data stream in the multiple target data streams is obtained, the outlet identifier corresponding to each target data stream may be determined according to the outlet information of each target data stream. The control component can also be used for converting the flow scheduling rules required by the user into flow marking rules and flow forwarding rules, issuing the flow marking rules to the marking component, and issuing the flow forwarding rules to the forwarding component, so that the marking component can mark a plurality of target data streams transmitted to the marking component according to the flow marking rules, and the forwarding component can schedule each marking data stream to a corresponding target flow outlet.
And the marking assembly is used for marking each target data stream by using the outlet identification corresponding to each target data stream to obtain a plurality of marking data streams, wherein each marking data stream can carry the outlet identification. Optionally, the multiple target data streams may be marked by using a flow marking rule issued by the control component. Wherein the DSCP value in the data stream may be used to identify different data streams, i.e. the DSCP value may be used to represent the exit identification.
And the forwarding component is used for scheduling the plurality of marking data streams to the target flow outlet according to the outlet identification carried in each marking data stream. Optionally, the multiple marking data streams may be scheduled to the corresponding target flow outlets by using a flow forwarding rule issued by the control component, and through the target flow outlets, the marking data streams may also enter external networks corresponding to the target flow outlets.
As can be seen from the above, the present application provides a refined outlet traffic scheduling manner, a more optimal and more suitable traffic outlet corresponding to a data flow can be determined through relevant information (e.g., data flow information, network resource parameters, and user attributes) obtained by a control component, and a traffic outlet corresponding to the data flow is indicated by using an outlet identifier, so that traffic scheduling can be performed on a large number of data flows according to the outlet identifier, and a data amount is scheduled to a better traffic outlet, so that the data flow can perform subsequent data processing in a better network.
The implementation details of the technical solution of the embodiment of the present application are set forth in detail below:
referring to fig. 2, fig. 2 is a schematic flowchart of a traffic scheduling method according to an embodiment of the present disclosure, and as shown in fig. 2, the traffic scheduling method may include:
s201: data flow information of each target data flow in the plurality of target data flows is obtained, and the data flow information comprises outlet information used for indicating an initial flow outlet.
In one implementation, the control component may obtain data flow information of each target data flow in the multiple target data flows, where the target data flow is a data flow that needs to be subsequently scheduled. The data flow information may include outlet information indicating an initial traffic outlet, which may be understood as a user-desired traffic outlet corresponding to the target data flow. The data flow information may also include other information, for example, the data flow information may also include a source IP address, a destination IP address, etc. of the target data flow. For example, the data flow information of the multiple target data flows acquired by the control component may be as shown in table 1, and as can be seen from table 1, when a source IP address of a certain target data flow is 10.1.1.1, and a destination IP address is 1.1.1.1, its corresponding initial traffic outlet is a telecommunications outlet. For another example, when a source IP address of a certain target data flow is 10.1.1.3 and a destination IP address is 1.1.1.1, the corresponding initial traffic outlet is a mobile outlet. In this application, a traffic egress may be understood as an egress from a first network into a second network. For example, a data flow may access a network segment within a telecommunications network through a telecommunications outlet, or a data flow may access a network segment within a telecommunications network through a connectivity outlet.
Table 1:
source IP address Destination IP address Initial flow outlet
10.1.1.1 1.1.1.1 Telecommunications outlet
10.1.1.2 1.1.1.1 Communicating outlet
10.1.1.3 1.1.1.1 Mobile outlet
In an implementation manner, the target data stream may be a screened data stream, that is, the application may specifically schedule a part of the data stream. Specifically, the control component may obtain data stream information for each of the plurality of initial data streams, and after obtaining the data stream information, determine a traffic outlet for a portion of the initial data stream in view of subsequently marking the portion of the initial data stream. Then, multiple initial data streams may be screened to obtain a target data stream. Optionally, a plurality of target data streams may be screened from the plurality of initial data streams according to the data stream screening rule and the data stream information of each initial data stream. The data flow information may also include time, region, data flow identification, etc. of the data flow. Alternatively, the data flow filtering rule may be a filtering rule for a region, or a filtering rule for a certain time period, or a filtering rule for a data flow identifier, or a filtering rule for an IP address, etc. Other data stream screening rules can be set according to requirements, which are not limited in this application. For example, if the data flow screening rule is a screening rule for a region, an initial data flow in the same region may be determined as a target data flow, assuming that the data flow screening rule is an initial data flow to be screened in shanghai, that is, the initial data flow in shanghai may be taken as the target data flow. For another example, if the data flow screening rule is a screening rule for an IP address, the data flow screening rule may be a screening rule for a source IP address or a destination IP address carried by the data flow, and taking the source IP address as an example, the data flow screening rule may include an IP address range of the source IP address, that is, an initial data flow corresponding to the source IP address in the IP address range is taken as a target data flow.
S202: and acquiring the network resource parameter of each flow outlet in the plurality of flow outlets, and determining an outlet identifier corresponding to each target data stream according to the network resource parameter and the outlet information of each target data stream.
In one implementation, a mapping relationship between a flow outlet and an outlet identifier may be obtained, and the mapping relationship is stored in a target area, for example, in a control component, or in another area, which is not limited in this application. Then, for any target data flow in the multiple target data flows, the outlet identifier corresponding to the target data flow may be determined according to the mapping relationship and the initial traffic outlet carried by the outlet information of the target data flow. Wherein, the outlet identifier may be an identifier corresponding to the initial flow outlet.
In one implementation, the target data stream may be matched to a better and more appropriate traffic outlet, and then the target data stream may be sent to a better network for subsequent data processing. Then the initial flow outlet may be adjusted to adjust the initial flow outlet to a target flow outlet, which may be a more optimal, suitable flow outlet than the initial flow outlet. Then, the outlet id corresponding to the target data flow may also be the id corresponding to the target traffic outlet. Optionally, the network resource parameter of each of the multiple traffic outlets may be obtained, so as to determine a target traffic outlet of the target data stream from the multiple traffic outlets according to the network resource parameter. After the target flow outlet is determined, the outlet identifier corresponding to the target data stream may be determined according to the target flow outlet of the target data stream. For example, the initial traffic outlet in the outlet information of the target data flow may be replaced by the target traffic outlet, and then the outlet identifier corresponding to the target data flow may be determined according to the target traffic outlet of the target data flow.
For example, the network resource parameters may include current network quality, traffic egress cost, and the like, and may also include other parameters, which are not limited in this application. For example, assuming that the network resource parameters include current network quality, and the current network quality corresponding to each traffic outlet can be obtained, it may be considered that a traffic outlet with a better current network quality is determined as a target traffic outlet of the target data flow. For another example, assuming that the network resource parameters include current network quality and traffic outlet cost, and the current network quality and traffic outlet cost corresponding to each traffic outlet may be obtained, then, under the condition that the current network quality is the same, a traffic outlet with a lower traffic outlet cost may be selected to be determined as the target traffic outlet of the target data flow.
Optionally, the egress identifier may be represented by a Differentiated Services Code Point (DSCP), and the DSCP may be encoded by using 6 bit values of the IP packet header in the TOS identifier byte of the service class of each packet IP header to obtain a DSCP value. It will be appreciated that encoding with a 6 bit value results in 64 DSCP values, i.e. there may be 64 egress identifiers, one for each traffic egress. Then 64 traffic outlets can be marked with a DSCP value, and it can be seen that it is also convenient to use the DSCP value for outlet identification. In some cases, a user may need to set a DSCP value in a corresponding data stream, that is, set a 6-bit value of an IP packet header of a data packet, and want to perform some processing according to the DSCP value at a receiving end of the data stream. However, this is generally used between internal networks, and from the internal network to the external network, the user will not normally set the DSCP value in the data stream, which is understood not to conflict with the use of the DSCP value for oral identification in this application. The exit identifier may also be implemented in other manners, which are not limited in this application.
In some scenarios, in order to prevent the user from setting the DSCP value, the user may be prohibited from setting the DSCP value when the target data stream is subjected to traffic scheduling. Or, before marking the target data stream with the DSCP value, detecting whether the DSCP value is a set DSCP value (for example, the original DSCP value is usually 0), if the DSCP value is the set DSCP value, the set DSCP value may be backed up first, and the set DSCP value is restored with a backup after the traffic scheduling is completed.
For example, taking the egress identifier as a DSCP value as an example, the mapping relationship between the traffic egress and the egress identifier may be as shown in table 2, and it can be seen that different traffic egress corresponds to different egress identifiers, for example, when an initial traffic egress of a target data flow is telecom, the egress identifier corresponding to the target data flow is 10.
Table 2:
source IP address Destination IP address Flow outlet Exit identification (DSCP value)
10.1.1.1 1.1.1.1 Telecommunications 10
10.1.1.2 1.1.1.1 Are communicated 20
10.1.1.3 1.1.1.1 Move 30
S203: marking each target data stream by using the outlet identification corresponding to each target data stream to obtain a plurality of marked data streams.
In one implementation, each target data stream may be marked according to a flow marking rule, where the flow marking rule may be used to indicate that the target data stream is marked according to an outlet identification. Specifically, taking any one of the target data streams as an example for explanation, the initial identifier corresponding to the target data stream may be obtained. For example, the exit identifier is represented by a DSCP value, the original DSCP value in the data stream is usually 0, and then the initial identifier of the target data stream is 0. After the initial identifier is obtained, the initial identifier of the target data stream may be replaced according to the outlet identifier corresponding to the target data stream, so as to obtain a marking data stream corresponding to the target data stream, where the marking data stream also carries the outlet identifier. For example, if the exit identifier corresponding to a target data stream is 10, the initial identifier 0 of the target data stream may be replaced by 10.
In one implementation, step S203 may be implemented by a marking assembly, specifically, the multiple target data streams may be transmitted to the marking assembly, and after the multiple target data streams reach the marking assembly, the marking assembly may modify a DSCP value in each target data stream according to a flow marking rule, that is, a marking data stream corresponding to each target data stream may be obtained.
S204: and scheduling the plurality of marking data streams to a target flow outlet according to the outlet identification carried in each marking data stream.
In one implementation, each marking data stream may be scheduled according to a traffic forwarding rule, such that each marking data stream is scheduled to a corresponding target traffic outlet. The traffic forwarding rule may be used to instruct to perform scheduling according to the outlet identifier, and the traffic forwarding rule may further carry a mapping relationship between the traffic outlet and the outlet identifier, so as to determine the traffic outlet corresponding to the target data stream according to the mapping relationship, where the mapping relationship between the traffic outlet and the outlet identifier may be as shown in table 2. Specifically, the outlet identifier in each of the plurality of marking data streams may be identified, that is, the DSCP value in each marking data stream may be obtained. Then, after the outlet identifier in each marking data stream is determined, a target flow outlet corresponding to each marking data stream may be determined according to the mapping relationship between the flow outlets and the outlet identifier ports and the outlet identifier in each marking data stream, and then each marking data stream is forwarded to the corresponding target flow outlet according to the target flow outlet corresponding to each marking data stream. For example, as shown in table 2, if an outlet in a certain marking data stream is identified as 10, it can be determined that a target traffic outlet corresponding to the marking data stream is a telecommunication outlet, and the marking data stream can be forwarded to the telecommunication outlet.
It can be known from the above that, according to the method, the corresponding traffic egress is selected according to the egress identifier, and by using the method, the scheduling problem caused by the error of the network segment information of the external network can be solved well, for example, the network segment information of a certain external network is wrongly issued, for example, the network segment information of the external network is 1.1.1.0/24, but the information issued to the public is 2.2.2.0/24. For another example, when the external network 1 distributes segment information, it is actually the segment information of the external network 2. As another example, multiple external networks may publish the same segment information. Then, as can be seen from the above description, if the corresponding traffic outlet is determined according to the destination IP address, a problem may occur in traffic scheduling, and scheduling efficiency may be affected. The method and the device select the corresponding flow outlet instead of the target IP address by using the outlet identifier, thereby effectively avoiding the scheduling problem caused by the error of the network segment information of the external network.
In one implementation, step S204 may be implemented by a forwarding component, specifically, multiple marking data streams may be transmitted to the forwarding component by the marking component, and after the multiple marking data streams reach the forwarding component, the forwarding component may schedule each marking data stream according to a traffic forwarding rule, so as to schedule each marking data stream to a corresponding target traffic outlet.
In this embodiment, data flow information of each of a plurality of target data flows may be obtained, where the data flow information may include outlet information indicating an initial traffic outlet. The method can further include the steps of obtaining a network resource parameter of each of the plurality of flow outlets, determining an outlet identifier corresponding to each target data stream according to the network resource parameter and outlet information of each target data stream, and marking each target data stream by using the outlet identifier corresponding to each target data stream, so that a plurality of marking data streams are obtained, wherein each marking data stream carries the outlet identifier. Furthermore, a plurality of marking data streams can be scheduled to a target flow outlet according to an outlet identifier carried in each marking data stream. By implementing the method, the automation of flow scheduling can be realized, and a better flow outlet is provided for the data flow, so that the data flow can be sent to a better network for subsequent data processing.
Referring to fig. 3, fig. 3 is a schematic flow chart of another traffic scheduling method according to an embodiment of the present application, and as shown in fig. 3, the traffic scheduling method may include:
S301: data stream information for each of a plurality of target data streams is obtained.
S302: and acquiring the network resource parameter of each flow outlet in the plurality of flow outlets, and determining the target flow outlet of each target data stream from the plurality of flow outlets according to the network resource parameters.
In one implementation, it is understood that the route scheduling may be a route lookup based on the destination IP address. For example, as shown in fig. 4, a flow chart of implementing traffic scheduling by using a route scheduling manner is illustrated. As shown in fig. 4, the forwarding component interfaces with 3 external networks of telecommunications, communications, and mobility, and each external network has 3 network segments, where the network segment of telecommunications is 1.1.1.0/24, the network segment of communications is 2.2.2.0/24, and the network segment of mobility is 3.3.3.0/24. The three external networks are also intercommunicated, that is, the network segments in the communication and the mobile can be accessed through a telecommunication outlet, and the forwarding component can receive the full-volume routing tables of 3 external networks through a Border Gateway Protocol (BGP), so that the network segment where the destination IP address is located can be searched in the full-volume routing table according to the destination IP address of the data stream during traffic scheduling, thereby performing traffic scheduling. For example, if the destination IP address of a certain data flow is 1.1.1.1, the data flow is dispatched to the telecommunication outlet; if the destination IP address of a certain data flow is 2.2.2.2, the data flow is dispatched to the communication outlet; the destination IP address of a certain data flow is 3.3.3.3, then the data flow is scheduled to the mobile outlet. It can be seen that the routing scheduling mode is a routing mode issued according to the network segment corresponding to the destination IP address, thereby implementing scheduling.
In some scenarios, if the current telecommunications network is down or congested, and the quality of the network scheduled to the breakout and visited 1.1.1.1 is better than scheduling directly to the telecommunications breakout. Then, in this case, a data flow that wants to access 1.1.1.1 may also be scheduled to the unicom outlet. If a route is issued to the forwarding component, the route indicates that the network segment of 1.1.1.0/24 is directed to the connected exit, and considering that the connected exit may have the problem of insufficient bandwidth, etc., then all data streams accessing 1.1.1.0/24 in the telecommunication exit cannot be superimposed. In this case, only a portion of the data streams accessing 1.1.1.0/24 data streams may be forwarded to the unicom outlet. Then, if it is necessary to perform scheduling according to the source IP address and the destination IP address at the same time, the traffic scheduling may be implemented by using a Policy Based Routing (PBR) manner, where one of the Policy Routing manners performs Routing selection through a traffic Policy, the Policy Routing may match with a certain feature of the traffic to perform special processing, and compared with the Routing scheduling manner, the Policy Routing may make a decision to provide Routing only through the destination IP address of the traffic, and the Policy Routing may make a decision to provide Routing according to traffic features such as the source IP address, the destination IP address, the source port, the destination port, the protocol, and the TOS.
In some scenarios, if the number of the source IP addresses is several tens of thousands and the number of the destination IP addresses is also several tens of thousands, there may be several tens of millions of combinations of the source IP addresses and the destination IP addresses, and it can be understood that the computation complexity of the traffic scheduling is very large and the computation speed may be slow, thereby reducing the traffic scheduling efficiency.
As can be seen from the above, the routing scheduling method and the policy routing method are more suitable for the situations of less data flows or low user requirements, and when there are more data flows, the two traffic scheduling methods may have the following problems: firstly, the scale is limited, the PBR mode can occupy hardware of the forwarding equipment, the forwarding equipment can be generally provided with thousands of rules, but for the Internet, hundreds of thousands of routes can exist, and hundreds of thousands of routes of the Internet can not be realized by utilizing the PBR; secondly, the fineness is not enough, the routing network segments are issued in a routing scheduling mode, and the full amount of IP can not be achieved, because the current routing network segments are about more than 80 ten thousand, if the routing network segments are split into 32-bit mask routing, hundreds of millions of routing can be achieved, and forwarding equipment can not process the routing network segments.
Then, in order to implement traffic scheduling on a large amount of data streams and schedule the amount of data to a better traffic outlet, it may be considered to add an outlet identifier to a target data stream to determine a traffic outlet according to the outlet identifier, where the outlet identifier may be implemented by using a DSCP carried by the data stream, and the DSCP is a mature data stream (data packet) flag field, and all devices can process normally and do not need to be developed additionally. Optionally, marking the data stream with the outlet identification may be accomplished by adding a marking component. To determine the outlet identifier, a flow outlet corresponding to the data stream needs to be determined first, so that the outlet identifier of the data stream is determined subsequently according to a mapping relationship between the flow outlet and the outlet identifier. Wherein, the determination of the flow outlet corresponding to the data flow can be realized by adding a control component. The control component may obtain data flow information for the data flow, which may include egress information indicating an initial traffic egress, which may be an original demand of the user. Then, according to the outlet information, an outlet identifier may be assigned to the data stream, and the outlet identifier may also be issued to the marking component, so that the marking component marks the data stream. In order to enable the data flow to be scheduled to the better traffic outlet, the control component may further obtain the relevant network resource parameter, so as to replace the original requirement (initial traffic outlet) of the user with the better traffic outlet according to the network resource parameter.
In one implementation, in order for the target data flow to be scheduled to a superior traffic outlet, the initial traffic outlet may be replaced with the superior traffic outlet, i.e., the target traffic outlet. In particular, the control component may obtain a network resource parameter for each of the plurality of traffic outlets to determine a target traffic outlet for each target data flow from the plurality of traffic outlets based on the network resource parameter. The network resource parameters may include current network quality, traffic egress cost, and the like. Besides the network resource parameter corresponding to each traffic outlet, the user attribute corresponding to the target data stream can be obtained, so that the target traffic outlet of the target data stream can be determined according to the user attribute corresponding to the target data stream and the network resource parameter corresponding to each traffic outlet. Optionally, an exit adjustment rule may be set, and an optimal flow exit may be automatically calculated by using the network resource parameters and the user attributes related to the exit adjustment rule, where the optimal flow exit is also the target flow exit. For example, for any target data flow in the multiple target data flows, the user priority corresponding to the target data flow may be determined according to the user attribute corresponding to the target data flow, and the outlet priority corresponding to each of the multiple traffic outlets may be determined according to the network resource parameter. After the user priority and the egress priority are determined, the target traffic egress of the target data stream may be determined from the plurality of traffic egress according to the egress adjustment rule, the user priority corresponding to the target data stream, and the egress priority corresponding to each traffic egress.
Optionally, the outlet adjustment rule may be to determine a target traffic outlet of the target data flow according to the user attribute of the target data flow and a traffic outlet cost corresponding to each traffic outlet. The user priority of the target data stream may be determined according to the user attribute, and the egress priority of the traffic egress may be determined according to the traffic egress cost. The exit adjustment rule may specifically be that a target data stream with a high user priority may be scheduled to a traffic exit with a high exit priority, and a target data stream with a low user priority is scheduled to a traffic exit with a low exit priority, thereby implementing differentiated services. For example, a traffic outlet cost corresponding to each of the multiple traffic outlets and a user attribute corresponding to each target data stream may be obtained, an outlet priority corresponding to each traffic outlet is determined according to the traffic outlet cost corresponding to each traffic outlet, a user priority corresponding to each target data stream is determined according to the user attribute corresponding to each target data stream, and a target traffic outlet corresponding to each target data stream is determined according to the outlet priority and the user priority.
For example, assuming that there are 3 traffic outlets and 2 target data streams, where the traffic outlet costs of the 3 traffic outlets are 1000 yuan (traffic outlet 1), 700 yuan (traffic outlet 2), and 500 yuan (traffic outlet 3), respectively, the setting of the outlet priority may be performed by using the traffic outlet costs of the respective traffic outlets, and the higher the traffic outlet cost of a certain traffic outlet is, the lower the outlet priority of the traffic outlet is. For example, the outlet priorities of the 3 traffic outlets may be 1 (traffic outlet 1), 2 (traffic outlet 2), and 3 (traffic outlet 3), respectively. The user attributes corresponding to the 2 target data streams may be an important user (target data stream 1) and a normal user (target data stream 2), and the user priorities of the 2 target data streams may be divided into 2 (target data stream 1) and 1 (target data stream 2), respectively. Then, according to the outlet adjustment rule, the target traffic outlet corresponding to the target data stream 1 may be the traffic outlet 3, and the target traffic outlet corresponding to the target data stream 2 may be the traffic outlet 2 or the traffic outlet 3. In this application, the priority (for example, the exit priority, the user priority, or the cost priority and the quality priority described below) may be higher or lower, and the priority may be other values, which may represent the priority and the priority.
Optionally, the outlet adjustment rule may be to determine the target traffic outlet of the target data flow according to the user attribute of the target data flow, the traffic outlet cost corresponding to each traffic outlet, and the current network quality corresponding to each traffic outlet. Wherein, whether the current network quality has faults, congestion degree and the like is reflected. The exit adjustment rule may specifically be that the target data stream with high user priority may be scheduled to a traffic exit with low cost and good network quality, and the target data stream with low user priority may be scheduled to a traffic exit with high cost and poor network quality, thereby implementing differentiated services. For example, a traffic outlet cost corresponding to each traffic outlet, a current network quality corresponding to each traffic outlet, and a user attribute corresponding to each target data stream in the multiple traffic outlets may be obtained, an outlet priority corresponding to each traffic outlet may be determined according to the traffic outlet cost corresponding to each traffic outlet and the current network quality, a user priority corresponding to each target data stream may be determined according to the user attribute corresponding to each target data stream, and a target traffic outlet corresponding to each target data stream may be determined according to the outlet priority and the user priority.
For example, assume that there are 3 traffic outlets and 2 target data flows, where the traffic outlet costs of the 3 traffic outlets are 1000 yuan (traffic outlet 1), 700 yuan (traffic outlet 2), and 500 yuan (traffic outlet 3), respectively, and the current network qualities of the 3 traffic outlets are low (traffic outlet 1), low (traffic outlet 2), and high (traffic outlet 3), respectively. The egress priority for each traffic egress may be determined jointly using the cost priority for the traffic egress cost and the quality priority for the current network quality. For example, the higher the traffic egress cost for a traffic egress, the lower the cost priority for that traffic egress, and the higher the current network quality for a traffic egress, the higher the quality priority for that traffic egress. Then, the cost priorities of the 3 flow outlets may be 1 (flow outlet 1), 2 (flow outlet 2), and 3 (flow outlet 3), respectively, and the quality priorities may be 1 (flow outlet 1), 1 (flow outlet 2), and 2 (flow outlet 3), respectively. The exit priority may be a sum of the cost priority and the quality priority, a sum of the weighted cost priority and the weighted quality priority, or an exit priority determined in other manners, which is not limited in this application. Assuming that the egress priority is a sum of the cost priority and the quality priority, the egress priorities of the 3 traffic outlets may be 2 (traffic outlet 1), 3 (traffic outlet 2), and 5 (traffic outlet 3). The user attributes corresponding to the 2 target data streams may be an important user (target data stream 1) and a normal user (target data stream 2), and the user priorities of the 2 target data streams may be divided into 2 (target data stream 1) and 1 (target data stream 2), respectively. Then, according to the outlet adjustment rule, the target traffic outlet corresponding to the target data flow 1 may be the traffic outlet 3, and the target traffic outlet corresponding to the target data flow 1 may be the traffic outlet 1 or the traffic outlet 2. It is understood that, under the condition of the same network quality, a traffic outlet with a lower traffic outlet cost is preferentially selected, and then, the target traffic outlet corresponding to the target data flow 2 may be the traffic outlet 2.
S303: and replacing the initial flow outlet in the outlet information with the target flow outlet.
S304: and determining an outlet identifier corresponding to each target data stream according to the target flow outlet in the outlet information of each target data stream.
In one implementation, a mapping relationship between traffic outlets and outlet identifications may be obtained. For example, the mapping relationship may be as shown in table 2. Then, for any target data flow in the multiple target data flows, the outlet identifier corresponding to the target data flow may be determined according to the mapping relationship and the target traffic outlet carried by the outlet information of the target data flow. For example, when the target traffic egress of the target data flow is telecom, the corresponding egress of the target data flow is identified as 10.
S305: marking each target data stream by using an outlet identifier corresponding to each target data stream to obtain a plurality of marking data streams, wherein each marking data stream carries the outlet identifier;
s306: and scheduling the plurality of marking data streams to a target flow outlet according to the outlet identification carried in each marking data stream.
For specific implementation of steps S301 and S305 to S306, reference may be made to the detailed description of steps S201 and S203 to S204 in the above embodiment, and details are not repeated here.
In this embodiment, a plurality of target data flows may be determined, and each target data flow may carry egress information indicating an initial traffic egress. The method can further include the steps of obtaining network resource parameters of each of the multiple flow outlets, determining a target flow outlet of each target data stream from the multiple flow outlets according to the network resource parameters, replacing an initial flow outlet in outlet information with the target flow outlet, determining an outlet identifier corresponding to each target data stream according to the target flow outlet of each target data stream, marking each target data stream by using the outlet identifier corresponding to each target data stream to obtain multiple marking data streams, wherein each marking data stream can carry the outlet identifier, and therefore the multiple marking data streams can be scheduled to the target flow outlets according to the outlet identifiers carried in each marking data stream. By implementing the method, the automation of traffic scheduling can be realized, traffic outlets can be selected more flexibly, the traffic scheduling efficiency is improved, and better traffic outlets are provided for the data streams, so that the data streams can be subjected to subsequent data processing in a better network.
To better understand the traffic scheduling method provided in the embodiment of the present application, the following further describes with reference to the flow illustrated in fig. 5. As shown in fig. 5, the control component may obtain a source IP address, a destination IP address pair and outlet information corresponding to each target data stream shown in table 1, and the control component may further convert the flow scheduling rule into a flow marking rule and a flow forwarding rule, and issue the flow marking rule to the marking component, so that the marking component may mark a plurality of target data streams transmitted to the marking component according to the flow marking rule, and issue the flow forwarding rule to the forwarding component, so that the forwarding component schedules each marking data stream to a corresponding target flow outlet. The marking assembly can be a marking cluster which can be composed of an X86 cluster, an X86 cluster can be used for public network flow processing, can process ten million-level data streams, and can also be multiplexed. The marking assembly may also be other clusters, which is not limited in this application. If the original traffic scheduling system does not have a cluster capable of processing public network traffic, a cluster can be newly added, but the traffic scheduling cost can be increased by singly adding a cluster. While existing cloud service providers can provide Elastic IP (EIP), which is implemented by using X86 cluster, it can be understood that the present application can be applied to cloud service provider scenarios.
In an implementation, the control component may further optimize an initial traffic outlet of the target data stream to obtain a better traffic outlet, where the traffic outlet is the target traffic outlet, for example, an outlet adjustment rule may be added to the control component, where the outlet adjustment rule may specifically be a certain algorithm, and then the control component may obtain relevant parameters (which may be understood as the network resource parameters and the user attributes) related to the algorithm, for example, the parameters of the algorithm may include information of current network quality, traffic outlet cost, user attributes, and the like. Then, after the relevant parameters are obtained, an optimal flow outlet, that is, the target flow outlet, can be automatically calculated by using the algorithm and the relevant parameters. The algorithm may be used to periodically calculate the optimal flow outlet, for example, the period may be 1 second, or 3 seconds, or other values. Therefore, the traffic scheduling method provided by the application can be applied to cloud service providers, the cloud service providers generally need to provide the best network quality at the lowest cost according to the service levels of users, and the current EIP cluster can be reused as the most marked component without adding extra hardware resources.
In one implementation, after the target traffic outlets are calculated according to the network resource parameters, a corresponding outlet identifier may be allocated to each target data stream according to a preset mapping relationship between the traffic outlets and the outlet identifiers, for example, the outlet identifier may be represented by a DSCP value. After the target data streams reach the marking cluster, the marking cluster can modify the DSCP value corresponding to each target data stream according to the flow marking rule to obtain a plurality of marking data streams, and then the plurality of marking data streams are transmitted to the forwarding component. After the forwarding component receives the multiple marking data streams, the DSCP value corresponding to each marking data stream may be identified, so as to determine a target flow outlet corresponding to each marking data stream according to a mapping relationship between the outlet identifier and the flow outlet, and schedule each marking data stream to the corresponding target flow outlet, for example, as shown in table 2, if the DSCP value corresponding to the marking data stream is 10, the forwarding component may forward the marking data stream to a telecommunication outlet, and if the DSCP value corresponding to the marking data stream is 20, the forwarding component may forward the marking data stream to a communication outlet. If the marking data stream corresponds to a DSCP value of 30, the forwarding component may forward the marking data stream to the mobile outlet.
Referring to fig. 6, fig. 6 is a schematic structural diagram of a traffic scheduling device according to an embodiment of the present application. The traffic scheduling apparatus described in this embodiment includes:
an obtaining unit 601, configured to obtain data stream information of each of a plurality of target data streams, where the data stream information includes outlet information indicating an initial traffic outlet;
a determining unit 602, configured to obtain a network resource parameter of each of a plurality of traffic outlets, and determine, according to the network resource parameter and the outlet information of each target data stream, an outlet identifier corresponding to each target data stream;
a marking unit 603, configured to mark each target data stream by using an outlet identifier corresponding to each target data stream to obtain multiple marking data streams, where each marking data stream carries an outlet identifier;
and the scheduling unit 604 is configured to schedule the multiple marking data streams to a target flow outlet according to the outlet identifier carried in each marking data stream.
In one implementation, the marking unit 603 is specifically configured to:
aiming at any one of the target data streams, acquiring an initial identifier corresponding to the target data stream;
And replacing the initial identifier included in the target data stream according to the outlet identifier corresponding to the target data stream to obtain the marking data stream corresponding to the target data stream.
In an implementation manner, the determining unit 602 is specifically configured to:
determining a target traffic outlet for each target data flow from the plurality of traffic outlets according to the network resource parameters;
replacing the initial flow outlet in the outlet information of each target data flow with a target flow outlet;
and determining an outlet identifier corresponding to each target data stream according to the target flow outlet of each target data stream.
In an implementation manner, the determining unit 602 is specifically configured to:
aiming at any one of the target data streams, acquiring a user attribute corresponding to the target data stream, and determining a user priority corresponding to the target data stream according to the user attribute;
determining the outlet priority corresponding to each flow outlet in the plurality of flow outlets according to the network resource parameters;
and determining a target traffic outlet of the target data stream from the plurality of traffic outlets according to an outlet adjustment rule, the user priority corresponding to the target data stream and the outlet priority corresponding to each traffic outlet.
In one implementation, the method is applied to traffic scheduling equipment, and the traffic scheduling equipment comprises a control component and a forwarding component; the determining unit 602 is specifically configured to:
for any target data stream in the multiple target data streams, determining an outlet identifier corresponding to the target data stream through the control component according to a mapping relation between a flow outlet and an outlet identifier and outlet information of the target data stream; and sending the mapping relationship to the forwarding component;
the scheduling unit 604 is specifically configured to:
identifying, by the forwarding component, an outlet identification in each of the plurality of marking data streams; determining a target flow outlet corresponding to each marking data stream according to the mapping relation and the outlet identification in each marking data stream; and dispatching each marking data stream to the corresponding target flow outlet according to the target flow outlet corresponding to each marking data stream.
In one implementation, the flow scheduling device further includes a marking assembly; the marking unit 603 is specifically configured to:
marking each target data stream through the marking assembly to obtain a plurality of marking data streams.
In an implementation manner, the obtaining unit 601 is further configured to:
acquiring data stream information of each initial data stream in a plurality of initial data streams;
and screening a plurality of target data streams from the plurality of initial data streams according to a data stream screening rule and the data stream information of each initial data stream.
It is understood that the division of the units in the embodiments of the present application is illustrative, and is only one logical function division, and there may be another division manner in actual implementation. Each functional unit 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.
Referring to fig. 7, fig. 7 is a schematic structural diagram of a traffic forwarding device according to an embodiment of the present application. The traffic forwarding device described in this embodiment includes: a processor 701, a memory 702, and a network interface 703. Data may be exchanged between the processor 701, the memory 702, and the network interface 703.
The Processor 701 may be a Central Processing Unit (CPU), and may also be other general purpose processors, Digital Signal Processors (DSP), Application Specific Integrated Circuits (ASIC), Field-Programmable Gate arrays (FPGA) or other Programmable logic devices, discrete Gate or transistor logic devices, discrete hardware components, and so on. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
The memory 702, which may include both read-only memory and random-access memory, provides program instructions and data to the processor 701. A portion of the memory 702 may also include non-volatile random access memory. When the processor 701 calls the program instruction, it is configured to:
acquiring data flow information of each target data flow in a plurality of target data flows, wherein the data flow information comprises outlet information used for indicating an initial flow outlet;
acquiring a network resource parameter of each flow outlet in a plurality of flow outlets, and determining an outlet identifier corresponding to each target data stream according to the network resource parameter and the outlet information of each target data stream;
marking each target data stream by using the outlet identification corresponding to each target data stream to obtain a plurality of marking data streams, wherein each marking data stream carries the outlet identification;
and scheduling the plurality of marking data streams to a target flow outlet according to the outlet identification carried in each marking data stream.
In one implementation, the processor 701 is specifically configured to:
aiming at any one of the target data streams, acquiring an initial identifier corresponding to the target data stream;
And replacing the initial identifier included in the target data stream according to the outlet identifier corresponding to the target data stream to obtain the marking data stream corresponding to the target data stream.
In an implementation manner, the processor 701 is specifically configured to:
determining a target traffic outlet for each target data stream from the plurality of traffic outlets according to the network resource parameters;
replacing an initial flow outlet in the outlet information of each target data flow with a target flow outlet;
and determining an outlet identifier corresponding to each target data stream according to the target flow outlet of each target data stream.
In an implementation manner, the processor 701 is specifically configured to:
aiming at any one of the target data streams, acquiring a user attribute corresponding to the target data stream, and determining a user priority corresponding to the target data stream according to the user attribute;
determining the outlet priority corresponding to each flow outlet in the plurality of flow outlets according to the network resource parameters;
and determining a target traffic outlet of the target data stream from the plurality of traffic outlets according to an outlet adjustment rule, the user priority corresponding to the target data stream and the outlet priority corresponding to each traffic outlet.
In one implementation, the method is applied to a traffic scheduling device, and the traffic scheduling device comprises a control component and a forwarding component; the processor 701 is specifically configured to:
for any target data stream in the multiple target data streams, determining an outlet identifier corresponding to the target data stream through the control component according to a mapping relation between a flow outlet and an outlet identifier and outlet information of the target data stream; and sending the mapping relationship to the forwarding component;
identifying, by the forwarding component, an outlet identification in each of the plurality of marking data streams; determining a target flow outlet corresponding to each marking data stream according to the mapping relation and the outlet identification in each marking data stream; and dispatching each marking data stream to the corresponding target flow outlet according to the target flow outlet corresponding to each marking data stream.
In one implementation, the flow scheduling device further includes a marking assembly; the processor 701 is specifically configured to:
marking each target data stream through the marking assembly to obtain a plurality of marking data streams.
In one implementation, the processor 701 is further configured to:
Acquiring data stream information of each initial data stream in a plurality of initial data streams;
and screening a plurality of target data streams from the plurality of initial data streams according to a data stream screening rule and the data stream information of each initial data stream.
The embodiment of the present application further provides a computer storage medium, where program instructions are stored in the computer storage medium, and when the program is executed, some or all of the steps of the traffic scheduling method in the embodiment corresponding to fig. 2 or fig. 3 may be included.
It should be noted that, for simplicity of description, the above-mentioned embodiments of the method are described as a series of acts or combinations, but those skilled in the art should understand that the present application is not limited by the order of acts described, as some steps may be performed in other orders or simultaneously according to the present application. Further, those skilled in the art should also appreciate that the embodiments described in the specification are preferred embodiments and that the acts and modules referred to are not necessarily required in this application.
Those skilled in the art will appreciate that all or part of the steps in the methods of the above embodiments may be implemented by associated hardware instructed by a program, which may be stored in a computer-readable storage medium, and the storage medium may include: flash disks, Read-Only memories (ROMs), Random Access Memories (RAMs), magnetic or optical disks, and the like.
Embodiments of the present application also provide a computer program product or computer program comprising computer instructions stored in a computer-readable storage medium. The computer instructions are read from the computer-readable storage medium by a processor of the server, and the processor executes the computer instructions to cause the server to perform the steps performed in the embodiments of the methods described above.
The traffic scheduling method, apparatus, device and storage medium provided in the embodiments of the present application are described in detail above, and a specific example is applied in the present application to explain the principle and the implementation of the present application, and the description of the above embodiments is only used to help understand the method and the core idea of the present application; meanwhile, for a person skilled in the art, according to the idea of the present application, there may be variations in the specific embodiments and the application scope, and in summary, the content of the present specification should not be construed as a limitation to the present application.

Claims (10)

1. A traffic scheduling method, comprising:
acquiring data flow information of each target data flow in a plurality of target data flows, wherein the data flow information comprises outlet information used for indicating an initial flow outlet;
Acquiring a network resource parameter of each flow outlet in a plurality of flow outlets, and determining an outlet identifier corresponding to each target data stream according to the network resource parameter and the outlet information of each target data stream;
marking each target data stream by using the outlet identification corresponding to each target data stream to obtain a plurality of marking data streams, wherein each marking data stream carries the outlet identification;
and scheduling the plurality of marking data streams to a target flow outlet according to the outlet identification carried in each marking data stream.
2. The method of claim 1, wherein said marking each target data stream with its corresponding outlet identification to obtain a plurality of marked data streams comprises:
aiming at any target data stream in the multiple target data streams, acquiring an initial identifier corresponding to the target data stream;
and replacing the initial identifier included in the target data stream according to the outlet identifier corresponding to the target data stream to obtain the marking data stream corresponding to the target data stream.
3. The method of claim 1, wherein the determining the egress identifier corresponding to each target data flow according to the network resource parameter and the egress information of each target data flow comprises:
Determining a target traffic outlet for each target data flow from the plurality of traffic outlets according to the network resource parameters;
replacing the initial flow outlet in the outlet information of each target data flow with a target flow outlet;
and determining an outlet identifier corresponding to each target data stream according to the target flow outlet of each target data stream.
4. The method of claim 3, wherein determining the target traffic outlet for each target data flow from the plurality of traffic outlets according to the network resource parameters comprises:
aiming at any one of the target data streams, acquiring a user attribute corresponding to the target data stream, and determining a user priority corresponding to the target data stream according to the user attribute;
determining the outlet priority corresponding to each flow outlet in the plurality of flow outlets according to the network resource parameters;
and determining a target flow outlet of the target data flow from the plurality of flow outlets according to an outlet adjustment rule, the user priority corresponding to the target data flow and the outlet priority corresponding to each flow outlet.
5. The method of claim 3, applied to a traffic scheduling device, wherein the traffic scheduling device comprises a control component and a forwarding component; determining an outlet identifier corresponding to each target data stream according to the target flow outlet of each target data stream includes:
For any target data stream in the multiple target data streams, determining an outlet identifier corresponding to the target data stream through the control component according to a mapping relation between a flow outlet and an outlet identifier and outlet information of the target data stream; and sending the mapping relationship to the forwarding component;
the dispatching the plurality of marking data streams to a target flow outlet according to the outlet identification carried in each marking data stream comprises:
identifying, by the forwarding component, an outlet identification in each of the plurality of marking data streams; determining a target flow outlet corresponding to each marking data stream according to the mapping relation and the outlet identification in each marking data stream; and dispatching each marking data stream to the corresponding target flow outlet according to the target flow outlet corresponding to each marking data stream.
6. The method of claim 5, wherein the flow scheduling apparatus further comprises a marking assembly; marking each target data stream to obtain a plurality of marked data streams, including:
marking each target data stream through the marking assembly to obtain a plurality of marking data streams.
7. The method according to any one of claims 1 to 6, wherein before obtaining the data stream information of each of the plurality of target data streams, further comprising:
acquiring data stream information of each initial data stream in a plurality of initial data streams;
and screening a plurality of target data streams from the plurality of initial data streams according to a data stream screening rule and the data stream information of each initial data stream.
8. A traffic scheduling apparatus, comprising:
an obtaining unit, configured to obtain data flow information of each of a plurality of target data flows, where the data flow information includes outlet information indicating an initial traffic outlet;
a determining unit, configured to obtain a network resource parameter of each of multiple traffic outlets, and determine, according to the network resource parameter and outlet information of each target data stream, an outlet identifier corresponding to each target data stream;
the marking unit is used for marking each target data stream by using the outlet identifier corresponding to each target data stream to obtain a plurality of marking data streams, and each marking data stream carries the outlet identifier;
And the scheduling unit is used for scheduling the marking data streams to a target flow outlet according to the outlet identification carried in each marking data stream.
9. A traffic scheduling device comprising a processor, a memory and a network interface, the processor, the memory and the network interface being interconnected, wherein the memory is configured to store a computer program comprising program instructions, and wherein the processor is configured to invoke the program instructions to perform the method of any one of claims 1 to 7.
10. A computer-readable storage medium, characterized in that the computer-readable storage medium stores a computer program comprising program instructions that, when executed by a processor, cause the processor to carry out the method according to any one of claims 1-7.
CN202110568201.1A 2021-05-24 2021-05-24 Traffic scheduling method, device, equipment and storage medium Pending CN114679414A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110568201.1A CN114679414A (en) 2021-05-24 2021-05-24 Traffic scheduling method, device, equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110568201.1A CN114679414A (en) 2021-05-24 2021-05-24 Traffic scheduling method, device, equipment and storage medium

Publications (1)

Publication Number Publication Date
CN114679414A true CN114679414A (en) 2022-06-28

Family

ID=82069819

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110568201.1A Pending CN114679414A (en) 2021-05-24 2021-05-24 Traffic scheduling method, device, equipment and storage medium

Country Status (1)

Country Link
CN (1) CN114679414A (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105991474A (en) * 2015-05-18 2016-10-05 杭州迪普科技有限公司 Traffic scheduling method, traffic scheduling device and network device
CN108023813A (en) * 2017-11-16 2018-05-11 武汉钢铁工程技术集团通信有限责任公司 A kind of method for routing, system and a kind of routing policy server
CN109347762A (en) * 2018-10-26 2019-02-15 平安科技(深圳)有限公司 Cross-region rate of discharge concocting method, device, computer equipment and storage medium
CN110602149A (en) * 2019-10-11 2019-12-20 北京字节跳动网络技术有限公司 External network access method, system, shunt server and internal network equipment
US20200136999A1 (en) * 2018-10-26 2020-04-30 Cisco Technology, Inc. Switching and load balancing techniques in a communication network

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105991474A (en) * 2015-05-18 2016-10-05 杭州迪普科技有限公司 Traffic scheduling method, traffic scheduling device and network device
CN108023813A (en) * 2017-11-16 2018-05-11 武汉钢铁工程技术集团通信有限责任公司 A kind of method for routing, system and a kind of routing policy server
CN109347762A (en) * 2018-10-26 2019-02-15 平安科技(深圳)有限公司 Cross-region rate of discharge concocting method, device, computer equipment and storage medium
US20200136999A1 (en) * 2018-10-26 2020-04-30 Cisco Technology, Inc. Switching and load balancing techniques in a communication network
CN110602149A (en) * 2019-10-11 2019-12-20 北京字节跳动网络技术有限公司 External network access method, system, shunt server and internal network equipment

Similar Documents

Publication Publication Date Title
US11627094B2 (en) Scalable network slice based queuing using segment routing flexible algorithm
CN114073052B (en) Systems, methods, and computer readable media for slice-based routing
EP4258598A1 (en) Computing power application traffic forwarding method and apparatus
US20210320876A1 (en) Mechanism to coordinate end to end quality of service between network nodes and service provider core
US9185006B2 (en) Exchange of server health and client information through headers for request management
CN109327401B (en) Flow scheduling method and system of SDN (software defined network)
KR101460048B1 (en) Method and apparatus for control of dynamic service chaining by using tagging
Bakhshi Kiadehi et al. A fault-tolerant architecture for internet-of-things based on software-defined networks
CN113949537B (en) Firewall management method and system based on eBPF
CN110650092A (en) Data processing method and device
US20230088222A1 (en) System and method for dynamically shaping an inter-datacenter traffic
WO2023065848A1 (en) Service scheduling method and apparatus, device and computer readable storage medium
CN114679414A (en) Traffic scheduling method, device, equipment and storage medium
CN113422699B (en) Data stream processing method and device, computer readable storage medium and electronic equipment
CN112866013B (en) Network configuration method, device and system
CN111030931B (en) Method and equipment for forwarding priority label across network segments
CN115277504A (en) Network traffic monitoring method, device and system
CN108075955A (en) The data processing method and device of backbone network
CN115174393B (en) Service function chain dynamic adjustment method based on in-band network telemetry
CN117675667A (en) Method for adjusting flow transmission path and related device
CN116192636B (en) Network device hash group configuration method and device, electronic device and storage medium
CN111245581B (en) Ethernet frame configuration method and service pipeline distribution method and system
CN117938744A (en) Method, device, equipment and medium for adjusting operation state of service management system
CN118250239A (en) Resource reservation method and device
CN118018496A (en) Data transmission method, device, computer equipment and storage medium

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