CN116319503A - Traffic scheduling method and device - Google Patents

Traffic scheduling method and device Download PDF

Info

Publication number
CN116319503A
CN116319503A CN202211101632.8A CN202211101632A CN116319503A CN 116319503 A CN116319503 A CN 116319503A CN 202211101632 A CN202211101632 A CN 202211101632A CN 116319503 A CN116319503 A CN 116319503A
Authority
CN
China
Prior art keywords
path
message
tunnel
target
interface
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
CN202211101632.8A
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.)
New H3C Technologies Co Ltd
Original Assignee
New H3C Technologies 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 New H3C Technologies Co Ltd filed Critical New H3C Technologies Co Ltd
Priority to CN202211101632.8A priority Critical patent/CN116319503A/en
Publication of CN116319503A publication Critical patent/CN116319503A/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4633Interconnection of networks using encapsulation techniques, e.g. tunneling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation

Landscapes

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

Abstract

The present invention relates to the field of network communications technologies, and in particular, to a traffic scheduling method and apparatus. The method comprises the following steps: receiving a target message, and determining at least two end-to-end paths which are predefined and used for transmitting the target message; determining a target end-to-end path for transmitting the target message based on the quality requirement required for transmitting the target message and the quality of at least two end-to-end paths; encapsulating the target message to obtain an encapsulated target message, wherein the tunnel outgoing interface ID list and the number of the remaining tunnel outgoing interface IDs of each segmented path included in the target end-to-end path are encapsulated in the extension message header of the encapsulated target message; and determining the tunnel exit interface ID of the segmented path between the first device and the next hop device in the target end-to-end path based on the number of the remaining tunnel exit interfaces ID, determining the tunnel exit interface based on the tunnel exit interface ID, subtracting one from the number of the remaining tunnel exit interfaces ID, and forwarding the packaged target message.

Description

Traffic scheduling method and device
Technical Field
The present invention relates to the field of network communications technologies, and in particular, to a traffic scheduling method and apparatus.
Background
In enterprise data center networking, such as a typical Hub-Spoke networking, conventional enterprises typically deploy some common applications at the center, connecting branches to the data centers through a network of leased operators.
Leased operators have different prices on networks, e.g. MPLS dedicated lines are expensive, whereas ordinary Internet networks are relatively inexpensive. Enterprises want to choose cheaper networks to reduce costs while guaranteeing business needs. Meanwhile, enterprises generally deploy a plurality of links in a data center and branch institutions, and how to use link bandwidths in a balanced mode and avoid idle links or overload of partial links is a problem to be considered by the enterprises. In addition, with the development of service modes such as mobile internet, cloud computing, artificial intelligence and the like, a flow model has changed, and a traditional wide area network facing connectivity cannot meet the network requirements of a new era. The network is required to actively adapt to the service flow so as to change according to the service demand.
RIR (Resilient Intelligent Routing, intelligent routing) is one technique that can solve the above problems. Compared with the traditional link optimization, the intelligent routing can select the most suitable link according to the link requirements of different traffic flows, such as link quality, link bandwidth and the like. For example, voice service has high requirements on link quality, and a link with high quality is preferentially selected; most IP internet surfing services have low requirements on link quality, and a link with relatively general quality but relatively preferential price is preferentially selected. If the current selected link of the service flow is no longer satisfactory due to the change of the link state, the intelligent route selection can also be automatically switched to another satisfactory link.
The current device only can see 1-hop out interface based on the intelligent routing scheme of the out interface, however, in the Overlay Hub-Spoke networking mode, the routing is not problematic for the traffic from Spoke to Hub (RR), but for the traffic from Spoke to Spoke, since the routing is segment by segment (the end-to-end (Spoke 1 to Spoke 2) path comprises the segment from Spoke1 to Hub (RR) and the segment from Hub (RR) to Spoke 2), the user input is the quality requirement from the source end (Spoke 1) to the destination end (Spoke 2), and the actual device obtains the segment path with each segment conforming to the constraint through segment routing, so that the end-to-end routing cannot be achieved. And as SDWAN evolves, simple two-layer networking has failed to meet the needs of users. With the introduction of the area topology technology into the SDWAN, three-layer networking is performed, the application scene of four-layer networking is more and more, the hop count of the end-to-end path is continuously increased, and the defect of performing a flow scheduling mode based on each segment is more and more remarkable.
Disclosure of Invention
The application provides a traffic scheduling method and device.
In a first aspect, the present application provides a traffic scheduling method, applied to a head device, where the method includes:
receiving a target message, determining at least two end-to-end paths which are predefined and used for transmitting the target message based on a destination address of the target message, wherein one end-to-end path comprises at least two segmented paths;
Determining a target end-to-end path for transmitting the target message from the at least two end-to-end paths based on a preset quality requirement for transmitting the target message and the quality of the at least two end-to-end paths;
encapsulating the target message to obtain an encapsulated target message, wherein the tunnel outgoing interface ID list and the number of the remaining tunnel outgoing interface IDs of each segmented path included in the target end-to-end path are encapsulated in an extension message header of the encapsulated target message;
and determining the tunnel exit interface ID of a segmented path between the first device and the next hop device in the target end-to-end path based on the number of the remaining tunnel exit interfaces ID, determining a corresponding tunnel exit interface based on the tunnel exit interface ID, subtracting one from the number of the remaining tunnel exit interfaces ID, and forwarding the packaged target message.
Optionally, the method further comprises:
generating a quality detection message for detecting the quality of an end-to-end path, wherein the extended message header of the quality detection message is packaged with a tunnel outgoing interface ID list and the number of the remaining tunnel outgoing interface IDs of each segmented path included in the end-to-end path;
Determining the tunnel exit interface ID of a segmented path between the first device and the next hop device in the end-to-end path based on the number of the remaining tunnel exit interfaces, filling the current available bandwidth of the tunnel exit interface as the current available bandwidth of the end-to-end path to the designated position of the quality detection message, subtracting one from the number of the remaining tunnel exit interfaces, and forwarding the packaged quality detection message based on the tunnel exit interface;
if the next hop device is an intermediate device, after receiving the quality detection message, the intermediate device determines the tunnel exit interface ID of a segmented path between the intermediate device and the next hop device in the end-to-end path based on the number of the remaining tunnel exit interfaces ID, compares the current available bandwidth of the tunnel exit interface with the available bandwidth value currently carried by the message, if the current available bandwidth value is smaller than the available bandwidth value, replaces the available bandwidth value with the current available bandwidth of the tunnel exit interface, and uses the current available bandwidth of the end-to-end path as the current available bandwidth of the end-to-end path, reduces the number of the remaining tunnel exit interfaces ID by one, and forwards the quality detection message based on the tunnel exit interface; if the next-hop device is the tail device, after determining that the number of the remaining tunnel outgoing interfaces ID is 0, the tail device counts the quality of the end-to-end path based on the received quality detection message, and carries the quality of the end-to-end path in a response message and sends the response message to the head device;
And receiving a response message sent by the tail equipment to obtain the quality of the end-to-end path.
Optionally, the quality of an end-to-end path includes the current available bandwidth of the end-to-end path and delay, jitter, and packet loss rate parameters of the end-to-end path.
In a second aspect, the present application provides a traffic scheduling method, applied to an intermediate device, where the method includes:
receiving an encapsulated target message sent by previous hop equipment, wherein a tunnel outgoing interface ID list and the number of remaining tunnel outgoing interface IDs of each segmented path included in a target end-to-end path are encapsulated in an extension message header of the encapsulated target message;
and determining the tunnel exit interface ID of a segmented path between the intermediate device and the next hop device in the target end-to-end path based on the number of the remaining tunnel exit interfaces, determining a corresponding tunnel exit interface based on the tunnel exit interface ID, subtracting one from the number of the remaining tunnel exit interfaces, and forwarding the packaged target message.
Optionally, the method further comprises:
receiving a quality detection message sent by previous hop equipment and used for detecting the quality of an end-to-end path, wherein the extended message header of the quality detection message is packaged with a tunnel outgoing interface ID list of each segmented path included by the end-to-end path, the number of the remaining tunnel outgoing interface IDs and the current available bandwidth of the end-to-end path;
And determining the tunnel exit interface ID of the segmented path between the intermediate device and the next hop device in the end-to-end path based on the number of the remaining tunnel exit interfaces, determining the tunnel exit interface ID of the segmented path between the intermediate device and the next hop device in the end-to-end path, comparing the current available bandwidth of the tunnel exit interface with the current available bandwidth value of the end-to-end tunnel carried by the message currently, if the current available bandwidth value is smaller than the current available bandwidth value of the end-to-end tunnel, taking the current available bandwidth value of the tunnel exit interface as the current available bandwidth of the tunnel exit interface, subtracting one from the number of the remaining tunnel exit interface ID, and forwarding the quality detection message based on the tunnel exit interface.
In a third aspect, the present application provides a traffic scheduling method, applied to a tail device, where the method includes:
receiving an encapsulated target message sent by previous hop equipment, wherein a tunnel outgoing interface ID list and the number of remaining tunnel outgoing interface IDs of each segmented path included in a target end-to-end path are encapsulated in an extension message header of the encapsulated target message, and the number of remaining tunnel outgoing interface IDs is 0;
and performing decapsulation processing on the encapsulated target message to obtain the target message, and performing IP forwarding based on the target IP address of the target message.
Optionally, the method further comprises:
receiving a quality detection message sent by previous hop equipment and used for detecting the quality of an end-to-end path, wherein the extended message header of the quality detection message is packaged with a tunnel outgoing interface ID list of each segmented path included by the end-to-end path, the number of the remaining tunnel outgoing interface IDs and the current available bandwidth of the end-to-end path, and the number of the remaining tunnel outgoing interface IDs is 0;
after the number of the remaining tunnel outgoing interfaces ID is 0, based on the received quality detection message, counting the quality of the end-to-end path, and carrying the quality of the end-to-end path in a response message and sending the response message to the head equipment, wherein the quality of the end-to-end path comprises the current available bandwidth of the end-to-end path and the delay, jitter and packet loss rate parameters of the end-to-end path.
In a fourth aspect, the present application provides a traffic scheduling apparatus, applied to a head device, the apparatus including:
the first receiving unit is used for receiving a target message, determining at least two end-to-end paths which are predefined and used for transmitting the target message based on a destination address of the target message, wherein one end-to-end path comprises at least two segmented paths;
A determining unit, configured to determine a target end-to-end path for transmitting the target message from the at least two end-to-end paths based on a preset quality requirement for transmitting the target message and the quality of the at least two end-to-end paths;
the encapsulating unit is used for encapsulating the target message to obtain an encapsulated target message, wherein the tunnel outgoing interface ID list and the number of the remaining tunnel outgoing interface IDs of each segment path included in the target end-to-end path are encapsulated in an extension message header of the encapsulated target message;
and the forwarding unit is used for determining the tunnel exit interface ID of the segmented path between the first device and the next hop device in the target end-to-end path based on the number of the remaining tunnel exit interfaces ID, determining a corresponding tunnel exit interface based on the tunnel exit interface ID, subtracting one from the number of the remaining tunnel exit interfaces ID, and forwarding the packaged target message.
Optionally, the apparatus further comprises:
the generating unit is used for generating a quality detection message for detecting the quality of an end-to-end path, wherein the extended message header of the quality detection message is packaged with a tunnel outgoing interface ID list and the number of the remaining tunnel outgoing interface IDs of each segmented path included in the end-to-end path;
The forwarding unit is further configured to determine, based on the number of remaining tunnel outgoing interface IDs, a tunnel outgoing interface ID of a segment path between the first device and the next hop device in the end-to-end path, fill in a current available bandwidth of the tunnel outgoing interface as the current available bandwidth of the end-to-end path to a specified position of the quality detection message, reduce the number of remaining tunnel outgoing interface IDs by one, and forward the encapsulated quality detection message based on the tunnel outgoing interface;
if the next hop device is an intermediate device, after receiving the quality detection message, the intermediate device determines the tunnel exit interface ID of a segmented path between the intermediate device and the next hop device in the end-to-end path based on the number of the remaining tunnel exit interfaces ID, compares the current available bandwidth of the tunnel exit interface with the available bandwidth value currently carried by the message, if the current available bandwidth value is smaller than the available bandwidth value, replaces the available bandwidth value with the current available bandwidth of the tunnel exit interface, and uses the current available bandwidth of the end-to-end path as the current available bandwidth of the end-to-end path, reduces the number of the remaining tunnel exit interfaces ID by one, and forwards the quality detection message based on the tunnel exit interface; if the next-hop device is the tail device, after determining that the number of the remaining tunnel outgoing interfaces ID is 0, the tail device counts the quality of the end-to-end path based on the received quality detection message, and carries the quality of the end-to-end path in a response message and sends the response message to the head device;
And the second receiving unit is used for receiving the response message sent by the tail equipment and obtaining the quality of the end-to-end path.
Optionally, the quality of an end-to-end path includes the current available bandwidth of the end-to-end path and delay, jitter, and packet loss rate parameters of the end-to-end path.
In a fifth aspect, the present application provides a traffic scheduling apparatus, applied to an intermediate device, where the apparatus includes:
a receiving unit, configured to receive an encapsulated target packet sent by a previous hop device, where an extended packet header of the encapsulated target packet encapsulates a tunnel outgoing interface ID list and the number of remaining tunnel outgoing interface IDs of each segment path included in a target end-to-end path;
and the forwarding unit is used for determining the tunnel exit interface ID of the segmented path between the intermediate device and the next hop device in the target end-to-end path based on the number of the remaining tunnel exit interfaces ID, determining the corresponding tunnel exit interface based on the tunnel exit interface ID, subtracting one from the number of the remaining tunnel exit interfaces ID, and forwarding the packaged target message.
Optionally, the receiving unit is further configured to receive a quality detection message sent by the previous hop device and used for detecting quality of an end-to-end path, where an extended message header of the quality detection message is packaged with a tunnel outgoing interface ID list of each segment path included in the end-to-end path, a number of remaining tunnel outgoing interface IDs and a current available bandwidth of the end-to-end path;
The forwarding unit is further configured to determine, based on the number of remaining tunnel egress interfaces ID, a tunnel egress interface ID of a segment path between the intermediate device and the next hop device in the end-to-end path, determine a tunnel egress interface ID of a segment path between the intermediate device and the next hop device in the end-to-end path, compare a current available bandwidth of the tunnel egress interface with a current available bandwidth value of the end-to-end tunnel currently carried by the message, and if the current available bandwidth value is smaller than the current available bandwidth value of the end-to-end tunnel, use the current available bandwidth value of the tunnel egress interface as a current available bandwidth of the tunnel egress interface, reduce the number of remaining tunnel egress interfaces ID by one, and forward the quality detection message based on the tunnel egress interface.
In a sixth aspect, the present application provides a traffic scheduling apparatus applied to a tail device, the apparatus including:
a receiving unit, configured to receive an encapsulated target packet sent by a previous hop device, where an extended packet header of the encapsulated target packet encapsulates a tunnel outgoing interface ID list and a number of remaining tunnel outgoing interface IDs of each segment path included in the target end-to-end path, and the number of remaining tunnel outgoing interface IDs is 0;
And the forwarding unit is used for performing decapsulation processing on the encapsulated target message to obtain the target message, and performing IP forwarding based on the target IP address of the target message.
Optionally, the receiving unit is further configured to receive a quality detection message sent by the previous hop device and used for detecting quality of an end-to-end path, where an extended message header of the quality detection message is packaged with a tunnel outgoing interface ID list of each segment path included in the end-to-end path, the number of remaining tunnel outgoing interface IDs and the current available bandwidth of the end-to-end path, and the number of remaining tunnel outgoing interface IDs is 0;
the forwarding unit is further configured to, after determining that the number of remaining tunnel outgoing interfaces ID is 0, count quality of the end-to-end path based on the received quality detection message, and send the quality of the end-to-end path carried in a response message to the head device, where the quality of the end-to-end path includes a current available bandwidth of the end-to-end path and a delay, jitter, and packet loss rate parameter of the end-to-end path.
In a seventh aspect, an embodiment of the present application provides a traffic scheduling device, including:
a memory for storing program instructions;
A processor for invoking program instructions stored in said memory, performing the steps of the method according to any of the above first/second/third aspects in accordance with the obtained program instructions.
In an eighth aspect, embodiments of the present application further provide a computer-readable storage medium storing computer-executable instructions for causing a computer to perform the steps of the method according to any one of the first/second/third aspects above.
As can be seen from the foregoing, in the traffic scheduling method provided by the embodiment of the present application, a target packet is received, and at least two end-to-end paths for transmitting the target packet are defined in advance based on a destination address of the target packet, where one end-to-end path includes at least two segment paths; determining a target end-to-end path for transmitting the target message from the at least two end-to-end paths based on a preset quality requirement for transmitting the target message and the quality of the at least two end-to-end paths; encapsulating the target message to obtain an encapsulated target message, wherein the tunnel outgoing interface ID list and the number of the remaining tunnel outgoing interface IDs of each segmented path included in the target end-to-end path are encapsulated in an extension message header of the encapsulated target message; and determining the tunnel exit interface ID of a segmented path between the first device and the next hop device in the target end-to-end path based on the number of the remaining tunnel exit interfaces ID, determining a corresponding tunnel exit interface based on the tunnel exit interface ID, subtracting one from the number of the remaining tunnel exit interfaces ID, and forwarding the packaged target message.
By adopting the flow scheduling method provided by the embodiment of the application, the quality of the end-to-end path is maintained by predefining the source end-to-destination end path (including the segmented path), and even if the end-to-end path comprises at least two segmented paths, the path transmission flow message meeting the quality requirement of the user can be selected according to the quality requirement of the flow and the quality parameters of each end-to-end path, the segmented multiple routing is not needed, the problem that the end-to-end whole path is not met as long as the requirement of the user requirement is avoided due to the multiple routing, and the problem that the end-to-end routing of equipment cannot be realized in the SDWAN scheme is solved.
Drawings
In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the following description will briefly describe the drawings that are required to be used in the embodiments of the present application or the description in the prior art, and it is obvious that the drawings in the following description are only some embodiments described in the present application, and other drawings may also be obtained according to these drawings of the embodiments of the present application for a person having ordinary skill in the art.
Fig. 1 is a detailed flowchart of a flow scheduling method provided in an embodiment of the present application;
fig. 2 is a schematic diagram of a layer 3 SDWAN networking provided in an embodiment of the present application;
Fig. 3 is a schematic diagram of a message header format after an SDWAN path is extended according to an embodiment of the present application;
fig. 4 is a schematic diagram of a format of an encapsulated SDWAN path extension header according to an embodiment of the present application;
fig. 5 is a detailed flowchart of another flow scheduling method according to an embodiment of the present application;
fig. 6 is a detailed flowchart of yet another flow scheduling method according to an embodiment of the present application;
fig. 7 is a schematic diagram of a flow scheduling process in an SDWAN networking provided in an embodiment of the present application;
fig. 8 is a schematic structural diagram of a flow scheduling device according to an embodiment of the present application;
fig. 9 is a schematic structural diagram of another flow scheduling device according to an embodiment of the present application;
fig. 10 is a schematic structural diagram of another flow scheduling device according to an embodiment of the present disclosure;
fig. 11 is a schematic hardware architecture of a flow scheduling device according to an embodiment of the present application.
Detailed Description
The terminology used in the embodiments of the application is for the purpose of describing particular embodiments only and is not intended to be limiting of the application. As used in this application and the claims, the singular forms "a," "an," and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It should also be understood that the term "and/or" as used herein refers to any or all possible combinations including one or more of the associated listed items.
It should be understood that although the terms first, second, third, etc. may be used in embodiments of the present application to describe various information, these information should not be limited to these terms. These terms are only used to distinguish one type of information from another. For example, a first message may also be referred to as a second message, and similarly, a second message may also be referred to as a first message, without departing from the scope of the present application. Depending on the context, furthermore, the word "if" used may be interpreted as "at … …" or "at … …" or "in response to a determination".
Exemplary, referring to fig. 1, a detailed flowchart of a flow scheduling method according to an embodiment of the present application is shown, where the method includes the following steps:
step 100: and receiving a target message, and determining at least two end-to-end paths which are predefined and used for transmitting the target message based on a destination address of the target message, wherein one end-to-end path comprises at least two segmented paths.
In this embodiment of the present application, at least two end-to-end paths between each source end and each destination end in the SDWAN networking may be predefined, for example, refer to fig. 2, which is a schematic diagram of a layer 3 SDWAN networking provided in this embodiment of the present application, and VPN interworking models of areas 1,2, and 3 are Hub-Spoke, that is, interworking between access devices needs to be forwarded through a convergence device, and interworking between convergence devices needs to be forwarded through a core device. The access layer (CPE 1/2/3/4) and the convergence layer (RR 2/RR 3) include two links, i.e. Internet and MPLS, and the convergence layer (RR 2/RR 3) and the core layer (RR 1) also include two links, i.e. Internet and MPLS (tunnel), then CPE1 may be predefined as the source end and CPE4 as at least two end-to-end paths between the destination ends, e.g. at least two end-to-end paths include path 1, path 2 and path 3:
Path 1: CPE1 is connected with RR2 through an Internet link, RR2 is connected with RR1 through an Internet link, RR1 is connected with RR3 through an Internet link, and RR3 is connected with CPE4 through an Internet link;
path 2: CPE1 is connected with RR2 through an Internet link, RR2 is connected with RR1 through an MPLS link, RR1 is connected with RR3 through an MPLS link, and RR3 is connected with CPE4 through an Internet link;
path 3: CPE1 is connected to RR2 via MPLS links, RR2 is connected to RR1 via MPLS links, RR1 is connected to RR3 via MPLS links, and RR3 is connected to CPE4 via MPLS links.
For example, after the CPE1 (head device) receives a packet (target packet) sent by an external network device, it determines that the destination address of the target packet is the address of the CPE4 (tail device), and then it can determine that CP1 is the source end, and that the end-to-end path of the CPE4 is path 1, path 2, and path 3.
Step 110: and determining a target end-to-end path for transmitting the target message from the at least two end-to-end paths based on a preset quality requirement for transmitting the target message and the quality of the at least two end-to-end paths.
In this embodiment, the user defines transmission quality requirements of each service flow (each service packet) in advance, for example, there are requirements on path bandwidth, path quality (parameters such as path delay, jitter, packet loss, etc.) for transmitting a certain service flow.
In this embodiment of the present application, the quality of an end-to-end path may include the current available bandwidth of the end-to-end path and the delay, jitter, and packet loss rate parameters of the end-to-end path.
Then, the current available bandwidth of each path, the path quality parameter, the current available bandwidth of each path, and the process of obtaining the path quality parameter are maintained on the head device, which will not be described in detail herein.
After determining at least two end-to-end paths capable of transmitting the target message, the head device determines a target end-to-end path meeting the quality requirement corresponding to the target message from the at least two end-to-end paths according to the predefined quality requirement for transmitting the target message and the quality of the at least two end-to-end paths.
Step 120: and carrying out encapsulation processing on the target message to obtain an encapsulated target message, wherein a tunnel outgoing interface ID list and the number of remaining tunnel outgoing interface IDs of each segmented path included in the target end-to-end path are encapsulated in an extension message header of the encapsulated target message.
In this embodiment of the present application, an SDWAN original data header is extended so that the SDWAN original data header carries end-to-end path information, and as an example, referring to fig. 3, a schematic diagram of a header format after SDWAN path extension provided in this embodiment of the present application is shown, where the SDWAN path extension header specifically includes:
SubType:SDWAN TTE list(1);
HDR Length: representing the total length of the extension head;
TTEID Left: the number of the next TTEID to be checked is identified, the initial value is n (n represents the number of the TTEIDs in the route extension header), and 1 is subtracted from each node;
TTEIDS: the nodes on the message forwarding path are arranged in a far-to-near order, namely TTEID [0] represents the last TTEID of the end-to-end path, TTEID [1] represents the last-to-last TTEID of the end-to-end path, and so on.
TTEID: the TTEID consists of three parts, siteid+deviceid+iid. The tunnel between two devices corresponds to a TTEID,
site-id: the site ID of the equipment is 1-65535, and occupies 16 bits.
device-id: the ID of the equipment is 1-255, and occupies 8 bits.
interface-id: the interface ID of the SDWAN tunnel interface has a value range of 1-255 and occupies 8 bits.
As shown in FIG. 3, TTEID [ n ] is the ID of the tunnel egress interface (i.e., the first hop, the ID of the egress interface of the first segment path) where the first device is connected to the next hop device, … …, TTEID [2] is the second last hop, the ID of the tunnel egress interface where the second last intermediate device is connected to the first last intermediate device, and TTEID [1] is the ID of the tunnel egress interface where the first last intermediate device is connected to the tail device. For example, after the head device completes the encapsulation of the message header, the TTEID Left is n, the head device obtains the TTEID [ n ] based on the TTEID Left, then obtains the corresponding tunnel exit interface according to the TTEID [ n ], and sends the encapsulated message to the next hop device through the tunnel exit interface.
Of course, when the message is packaged, the first device may not package the first-hop TTEID into the message header, when the packaged message is forwarded, the first-hop TTEID-based tunnel outgoing interface is forwarded, and when the intermediate device performs subsequent routing forwarding, the intermediate device forwards the first-hop TTEID-based TTEID included in the message header.
Step 130: and determining the tunnel exit interface ID of a segmented path between the first device and the next hop device in the target end-to-end path based on the number of the remaining tunnel exit interfaces ID, determining a corresponding tunnel exit interface based on the tunnel exit interface ID, subtracting one from the number of the remaining tunnel exit interfaces ID, and forwarding the packaged target message.
Exemplary, referring to fig. 4, a schematic diagram of a format of an SDWAN path extension header after encapsulation according to an embodiment of the present application is shown. The head equipment transmits the received message to the tail equipment, 4 hops are required, namely 4 segmentation paths are required to pass, after the head equipment encapsulates the message, TTEID Left is 4, TTEID [4] (0 x7 01) is read when the message is forwarded, a corresponding tunnel outlet interface is found, the message is forwarded from the outlet interface to the next hop equipment of the head equipment, and meanwhile, the TTEID Left value is reduced by one and is modified to 3 before the message is forwarded. When the next hop device of the first device receives the message, based on the TTEID Left (with the value of 3), TTEID [3] (0 x6 01) is read, a corresponding tunnel outgoing interface is found, the message is forwarded from the outgoing interface to the next hop device, and meanwhile, the TTEID Left value needs to be reduced by one and modified to 2 before forwarding the message. When the next hop device receives the message, based on the TTEID Left (value is 2), TTEID [2] (0 x7 01) 02) is read, a corresponding tunnel outgoing interface is found, the message is forwarded from the outgoing interface to the next hop device, and meanwhile, the TTEID Left value needs to be subtracted by one and modified to be 1 before forwarding the message. When the next-hop device receives the message, based on the TTEID Left (value is 1), TTEID [1] (0 x6 0104) is read, a corresponding tunnel outgoing interface is found, the message is forwarded from the outgoing interface to the next-hop device (tail device), and meanwhile, the TTEID Left value needs to be reduced by one and modified to 0 before forwarding the message. The message received by the tail equipment is a message with a TTEID Left value of 0, at this time, the message needs to be unpacked, and the transmission of the message is completed in the SDWAN networking.
Further, in the embodiment of the present application, one way to detect each end-to-end path is:
generating a quality detection message for detecting the quality of an end-to-end path, wherein the extended message header of the quality detection message is packaged with a tunnel outgoing interface ID list and the number of the remaining tunnel outgoing interface IDs of each segmented path included in the end-to-end path;
determining the tunnel exit interface ID of a segmented path between the first device and the next hop device in the end-to-end path based on the number of the remaining tunnel exit interfaces, filling the current available bandwidth of the tunnel exit interface as the current available bandwidth of the end-to-end path to the designated position of the quality detection message, subtracting one from the number of the remaining tunnel exit interfaces, and forwarding the packaged quality detection message based on the tunnel exit interface;
if the next hop device is an intermediate device, after receiving the quality detection message, the intermediate device determines the tunnel exit interface ID of a segmented path between the intermediate device and the next hop device in the end-to-end path based on the number of the remaining tunnel exit interfaces ID, compares the current available bandwidth of the tunnel exit interface with the available bandwidth value currently carried by the message, if the current available bandwidth value is smaller than the available bandwidth value, replaces the available bandwidth value with the current available bandwidth of the tunnel exit interface, and uses the current available bandwidth of the end-to-end path as the current available bandwidth of the end-to-end path, reduces the number of the remaining tunnel exit interfaces ID by one, and forwards the quality detection message based on the tunnel exit interface; if the next-hop device is the tail device, after determining that the number of the remaining tunnel outgoing interfaces ID is 0, the tail device counts the quality of the end-to-end path based on the received quality detection message, and carries the quality of the end-to-end path in a response message and sends the response message to the head device;
And receiving a response message sent by the tail equipment to obtain the quality of the end-to-end path.
That is, the SDWAN header is also extended in the quality detection packet, so that the quality detection packet carries the SDWAN path extension header, so that each device in the end-to-end path forwards based on the path information included in the SDWAN path extension header, so as to measure the available bandwidth and path quality of the end-to-end path.
Specifically, the extended quality detection protocol is a quality and residual bandwidth detection protocol, and in the detection flow, a residual available bandwidth field is added in addition to the acquisition and storage delay, jitter and packet loss rate.
And (3) processing a message sent by the first detection equipment: the device firstly subtracts the current uplink actual bandwidth from the configured maximum uplink bandwidth of the outgoing interface, fills in the remaining available bandwidth field, and sends the detected message to the opposite end through the tunnel.
Intermediate device processing: after receiving the detection message, subtracting the current downlink actual bandwidth from the configured maximum downlink bandwidth of the access interface, comparing the current downlink actual bandwidth with the current residual available bandwidth, and filling the current residual available bandwidth into a residual available bandwidth field if the current residual available bandwidth is smaller than the current value; when the detection message is forwarded, subtracting the current uplink actual bandwidth from the configured maximum uplink bandwidth of the outgoing interface, comparing the current uplink actual bandwidth with the current residual available bandwidth, and filling the current uplink actual bandwidth with the residual available bandwidth if the current uplink actual bandwidth is smaller than the current value.
Tail equipment treatment: after receiving the detection message, subtracting the current downlink actual bandwidth from the configured maximum downlink bandwidth of the access interface, comparing the current downlink actual bandwidth with the current residual available bandwidth, filling in the residual available bandwidth field if the current bandwidth is smaller than the current value, and counting the delay, jitter and packet loss rate of the detection message; generating a response message with the destination address as the head equipment, carrying the residual available bandwidth, counting path quality parameters such as delay, jitter, packet loss rate and the like, and transmitting the response message to the head equipment.
The head equipment maintains the residual available bandwidth of each end-to-end path in real time and path quality parameters. Of course, the head device may periodically detect the quality of each end-to-end path based on a preset rule. In the embodiments of the present application, no specific limitation is given herein.
Exemplary, referring to fig. 5, a detailed flowchart of a flow scheduling method according to an embodiment of the present application is provided, where the method is applied to an intermediate device, and the method includes the following steps:
step 500: and receiving an encapsulated target message sent by the previous hop device, wherein a tunnel outgoing interface ID list and the number of the remaining tunnel outgoing interfaces ID of each segmented path included by the target end-to-end path are encapsulated in an extension message header of the encapsulated target message.
Step 510: and determining the tunnel exit interface ID of a segmented path between the intermediate device and the next hop device in the target end-to-end path based on the number of the remaining tunnel exit interfaces, determining a corresponding tunnel exit interface based on the tunnel exit interface ID, subtracting one from the number of the remaining tunnel exit interfaces, and forwarding the packaged target message.
Exemplary, referring to fig. 6, a detailed flowchart of a traffic scheduling method according to an embodiment of the present application is shown, where the method is applied to a tail device, and the method includes the following steps:
step 600: and receiving an encapsulated target message sent by the previous hop device, wherein a tunnel outgoing interface ID list and the number of remaining tunnel outgoing interface IDs of each segmented path included in the target end-to-end path are encapsulated in an extension message header of the encapsulated target message, and the number of remaining tunnel outgoing interface IDs is 0.
Step 610: and performing decapsulation processing on the encapsulated target message to obtain the target message, and performing IP forwarding based on the target IP address of the target message.
The flow scheduling process provided in the embodiment of the present application is described in detail below in connection with a specific application scenario. For example, referring to fig. 7, a schematic diagram of a flow scheduling process in an SDWAN networking provided in this embodiment of the present application is shown, a Flowid1 flow enters CPE1, CPE1 determines that a destination end of the flow is CPE4, after selecting a destination end-to-end path based on the flow, determines transmission tunnel (i.e. a TTEID, a tunnel egress interface) information adopted by each segment path, where TTDID of the segment path between CPE1 and RR2 is ttee 2, TTEID of the segment path between RR2 and RR1 is ttee 9, TTDID of the segment path between RR1 and RR3 is ttee 12, and TTEID of the segment path between RR3 and CPE4 is ttee 20. When the CPE1 encapsulates the streaming message, the end-to-end path information (TTE 2- > TTE9- > TTE12- > TTE 20) may be encapsulated into the extended message header, and when the CPE1, RR2, RR1 and RR3 forward the message, the tunnel egress interface for forwarding the message may be determined directly according to the end-to-end path information.
An exemplary, referring to fig. 8, a schematic structural diagram of a flow scheduling apparatus according to an embodiment of the present application is shown, where the apparatus is applied to a head device, and the apparatus includes:
a first receiving unit 80, configured to receive a target packet, and determine, based on a destination address of the target packet, at least two end-to-end paths that are predefined and used for transmitting the target packet, where one end-to-end path includes at least two segment paths;
a determining unit 81, configured to determine a target end-to-end path for transmitting the target packet from the at least two end-to-end paths based on a preset quality requirement for transmitting the target packet and the quality of the at least two end-to-end paths;
the encapsulation unit 82 is configured to encapsulate the target packet to obtain an encapsulated target packet, where an extended header of the encapsulated target packet encapsulates a tunnel outgoing interface ID list and the number of remaining tunnel outgoing interfaces IDs of each segment path included in the target end-to-end path;
and a forwarding unit 83, configured to determine, based on the number of remaining tunnel egress interfaces ID, a tunnel egress interface ID of a segment path between the first device and the next hop device in the target end-to-end path, determine a corresponding tunnel egress interface based on the tunnel egress interface ID, reduce the number of remaining tunnel egress interfaces ID by one, and forward the encapsulated target packet.
Optionally, the apparatus further comprises:
the generating unit is used for generating a quality detection message for detecting the quality of an end-to-end path, wherein the extended message header of the quality detection message is packaged with a tunnel outgoing interface ID list and the number of the remaining tunnel outgoing interface IDs of each segmented path included in the end-to-end path;
the forwarding unit 83 is further configured to determine, based on the number of remaining tunnel outgoing interface IDs, a tunnel outgoing interface ID of a segment path between the first device and the next hop device in the end-to-end path, fill in a current available bandwidth of the tunnel outgoing interface as the current available bandwidth of the end-to-end path to a specified position of the quality detection message, reduce the number of remaining tunnel outgoing interface IDs by one, and forward the encapsulated quality detection message based on the tunnel outgoing interface;
if the next hop device is an intermediate device, after receiving the quality detection message, the intermediate device determines the tunnel exit interface ID of a segmented path between the intermediate device and the next hop device in the end-to-end path based on the number of the remaining tunnel exit interfaces ID, compares the current available bandwidth of the tunnel exit interface with the available bandwidth value currently carried by the message, if the current available bandwidth value is smaller than the available bandwidth value, replaces the available bandwidth value with the current available bandwidth of the tunnel exit interface, and uses the current available bandwidth of the end-to-end path as the current available bandwidth of the end-to-end path, reduces the number of the remaining tunnel exit interfaces ID by one, and forwards the quality detection message based on the tunnel exit interface; if the next-hop device is the tail device, after determining that the number of the remaining tunnel outgoing interfaces ID is 0, the tail device counts the quality of the end-to-end path based on the received quality detection message, and carries the quality of the end-to-end path in a response message and sends the response message to the head device;
And the second receiving unit is used for receiving the response message sent by the tail equipment and obtaining the quality of the end-to-end path.
Optionally, the quality of an end-to-end path may include the current available bandwidth of the end-to-end path and delay, jitter, and packet loss parameters of the end-to-end path.
An exemplary, referring to fig. 9, a schematic structural diagram of a flow scheduling apparatus according to an embodiment of the present application is provided, where the apparatus is applied to an intermediate device, and the apparatus includes:
a receiving unit 90, configured to receive an encapsulated target packet sent by a previous hop device, where an extended packet header of the encapsulated target packet encapsulates a tunnel outgoing interface ID list and the number of remaining tunnel outgoing interface IDs of each segment path included in a target end-to-end path;
a forwarding unit 91, configured to determine, based on the number of remaining tunnel egress interfaces ID, a tunnel egress interface ID of a segment path between the intermediate device and a next hop device in the target end-to-end path, determine a corresponding tunnel egress interface based on the tunnel egress interface ID, reduce the number of remaining tunnel egress interfaces ID by one, and forward the encapsulated target packet.
Optionally, the receiving unit 90 is further configured to receive a quality detection message sent by the previous hop device and used for detecting quality of an end-to-end path, where an extended header of the quality detection message is encapsulated with a tunnel outgoing interface ID list of each segment path included in the end-to-end path, the number of remaining tunnel outgoing interface IDs and a current available bandwidth of the end-to-end path;
The forwarding unit 91 is further configured to determine, based on the number of remaining tunnel egress interfaces ID, a tunnel egress interface ID of a segment path between the intermediate device and a next hop device in the end-to-end path, determine a tunnel egress interface ID of a segment path between the intermediate device and the next hop device in the end-to-end path, compare a current available bandwidth of the tunnel egress interface with a current available bandwidth value of the end-to-end tunnel currently carried by the message, and if the current available bandwidth value is smaller than the current available bandwidth value of the end-to-end tunnel, use the current available bandwidth value of the tunnel egress interface as a current available bandwidth of the tunnel egress interface, reduce the number of remaining tunnel egress interfaces ID by one, and forward the quality detection message based on the tunnel egress interface.
Exemplary, referring to fig. 10, a schematic structural diagram of a flow scheduling apparatus according to an embodiment of the present application is shown, where the apparatus is applied to a tail device, and the apparatus includes:
a receiving unit 100, configured to receive an encapsulated target packet sent by a previous hop device, where an extended packet header of the encapsulated target packet encapsulates a tunnel outgoing interface ID list and a number of remaining tunnel outgoing interface IDs of each segment path included in a target end-to-end path, and the number of remaining tunnel outgoing interface IDs is 0;
And the forwarding unit 101 is configured to perform decapsulation processing on the encapsulated target packet, obtain the target packet, and perform IP forwarding based on a destination IP address of the target packet.
Optionally, the receiving unit 100 is further configured to receive a quality detection message sent by a previous hop device and used for detecting quality of an end-to-end path, where an extended header of the quality detection message is encapsulated with a tunnel outgoing interface ID list of each segment path included in the end-to-end path, a number of remaining tunnel outgoing interface IDs and a current available bandwidth of the end-to-end path, and the number of remaining tunnel outgoing interface IDs is 0;
the forwarding unit 101 is further configured to, after determining that the number of remaining tunnel outgoing interfaces IDs is 0, count the quality of the end-to-end path based on the received quality detection message, and send the quality of the end-to-end path to the head device with the quality of the end-to-end path carried in a response message, where the quality of the end-to-end path includes a current available bandwidth of the end-to-end path and a delay, jitter, and packet loss rate parameter of the end-to-end path.
The above units may be one or more integrated circuits configured to implement the above methods, for example: one or more application specific integrated circuits (Application Specific Integrated Circuit, abbreviated as ASIC), or one or more microprocessors (digital singnal processor, abbreviated as DSP), or one or more field programmable gate arrays (Field Programmable Gate Array, abbreviated as FPGA), or the like. For another example, when a unit is implemented in the form of a processing element scheduler code, the processing element may be a general purpose processor, such as a central processing unit (Central Processing Unit, CPU) or other processor that may invoke the program code. For another example, the units may be integrated together and implemented in the form of a system-on-a-chip (SOC).
Further, in the traffic scheduling device provided in the embodiment of the present application, from a hardware level, a hardware architecture schematic of the traffic scheduling device may be shown in fig. 11, and the traffic scheduling device may include: a memory 110 and a processor 111,
memory 110 is used to store program instructions; the processor 111 invokes the program instructions stored in the memory 110 to execute the method embodiments described above as applied to the head device/intermediate device/tail device according to the obtained program instructions. The specific implementation manner and the technical effect are similar, and are not repeated here.
Optionally, the present application further provides a communication device comprising at least one processing element (or chip) for performing the above-described method embodiments applied to a head device/intermediate device/tail device.
Optionally, the present application also provides a program product, such as a computer readable storage medium, storing computer executable instructions for causing the computer to perform the above-described method embodiments.
Here, a machine-readable storage medium may be any electronic, magnetic, optical, or other physical storage device that may contain or store information, such as executable instructions, data, or the like. For example, a machine-readable storage medium may be: RAM (Radom Access Memory, random access memory), volatile memory, non-volatile memory, flash memory, a storage drive (e.g., hard drive), a solid state drive, any type of storage disk (e.g., optical disk, dvd, etc.), or a similar storage medium, or a combination thereof.
The system, apparatus, module or unit set forth in the above embodiments may be implemented in particular by a computer chip or entity, or by a product having a certain function. A typical implementation device is a computer, which may be in the form of a personal computer, laptop computer, cellular telephone, camera phone, smart phone, personal digital assistant, media player, navigation device, email device, game console, tablet computer, wearable device, or a combination of any of these devices.
For convenience of description, the above devices are described as being functionally divided into various units, respectively. Of course, the functions of each element may be implemented in one or more software and/or hardware elements when implemented in the present application.
It will be appreciated by those skilled in the art that embodiments of the present application may be provided as a method, system, or computer program product. Accordingly, the present application may take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, embodiments of the present application may take the form of a computer program product on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) having computer-usable program code embodied therein.
The present application is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the application. It will be understood that each flow and/or block of the flowchart illustrations and/or block diagrams, and combinations of flows and/or blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
Moreover, these computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
The foregoing description of the preferred embodiments of the present invention is not intended to limit the invention to the precise form disclosed, and any modifications, equivalents, improvements and alternatives falling within the spirit and principles of the present invention are intended to be included within the scope of the present invention.

Claims (10)

1. A traffic scheduling method, applied to a head device, the method comprising:
receiving a target message, determining at least two end-to-end paths which are predefined and used for transmitting the target message based on a destination address of the target message, wherein one end-to-end path comprises at least two segmented paths;
determining a target end-to-end path for transmitting the target message from the at least two end-to-end paths based on a preset quality requirement for transmitting the target message and the quality of the at least two end-to-end paths;
Encapsulating the target message to obtain an encapsulated target message, wherein the tunnel outgoing interface ID list and the number of the remaining tunnel outgoing interface IDs of each segmented path included in the target end-to-end path are encapsulated in an extension message header of the encapsulated target message;
and determining the tunnel exit interface ID of a segmented path between the first device and the next hop device in the target end-to-end path based on the number of the remaining tunnel exit interfaces ID, determining a corresponding tunnel exit interface based on the tunnel exit interface ID, subtracting one from the number of the remaining tunnel exit interfaces ID, and forwarding the packaged target message.
2. The method of claim 1, wherein the method further comprises:
generating a quality detection message for detecting the quality of an end-to-end path, wherein the extended message header of the quality detection message is packaged with a tunnel outgoing interface ID list and the number of the remaining tunnel outgoing interface IDs of each segmented path included in the end-to-end path;
determining the tunnel exit interface ID of a segmented path between the first device and the next hop device in the end-to-end path based on the number of the remaining tunnel exit interfaces, filling the current available bandwidth of the tunnel exit interface as the current available bandwidth of the end-to-end path to the designated position of the quality detection message, subtracting one from the number of the remaining tunnel exit interfaces, and forwarding the packaged quality detection message based on the tunnel exit interface;
If the next hop device is an intermediate device, after receiving the quality detection message, the intermediate device determines the tunnel exit interface ID of a segmented path between the intermediate device and the next hop device in the end-to-end path based on the number of the remaining tunnel exit interfaces ID, compares the current available bandwidth of the tunnel exit interface with the available bandwidth value currently carried by the message, if the current available bandwidth value is smaller than the available bandwidth value, replaces the available bandwidth value with the current available bandwidth of the tunnel exit interface, and uses the current available bandwidth of the end-to-end path as the current available bandwidth of the end-to-end path, reduces the number of the remaining tunnel exit interfaces ID by one, and forwards the quality detection message based on the tunnel exit interface; if the next-hop device is the tail device, after determining that the number of the remaining tunnel outgoing interfaces ID is 0, the tail device counts the quality of the end-to-end path based on the received quality detection message, and carries the quality of the end-to-end path in a response message and sends the response message to the head device;
and receiving a response message sent by the tail equipment to obtain the quality of the end-to-end path.
3. The method of claim 2, wherein the quality of an end-to-end path includes a current available bandwidth of the end-to-end path and delay, jitter, and packet loss rate parameters of the end-to-end path.
4. A traffic scheduling method, applied to an intermediate device, the method comprising:
receiving an encapsulated target message sent by previous hop equipment, wherein a tunnel outgoing interface ID list and the number of remaining tunnel outgoing interface IDs of each segmented path included in a target end-to-end path are encapsulated in an extension message header of the encapsulated target message;
and determining the tunnel exit interface ID of a segmented path between the intermediate device and the next hop device in the target end-to-end path based on the number of the remaining tunnel exit interfaces, determining a corresponding tunnel exit interface based on the tunnel exit interface ID, subtracting one from the number of the remaining tunnel exit interfaces, and forwarding the packaged target message.
5. The method of claim 4, wherein the method further comprises:
receiving a quality detection message sent by previous hop equipment and used for detecting the quality of an end-to-end path, wherein the extended message header of the quality detection message is packaged with a tunnel outgoing interface ID list of each segmented path included by the end-to-end path, the number of the remaining tunnel outgoing interface IDs and the current available bandwidth of the end-to-end path;
and determining the tunnel exit interface ID of the segmented path between the intermediate device and the next hop device in the end-to-end path based on the number of the remaining tunnel exit interfaces, determining the tunnel exit interface ID of the segmented path between the intermediate device and the next hop device in the end-to-end path, comparing the current available bandwidth of the tunnel exit interface with the current available bandwidth value of the end-to-end tunnel carried by the message currently, if the current available bandwidth value is smaller than the current available bandwidth value of the end-to-end tunnel, taking the current available bandwidth value of the tunnel exit interface as the current available bandwidth of the tunnel exit interface, subtracting one from the number of the remaining tunnel exit interface ID, and forwarding the quality detection message based on the tunnel exit interface.
6. A traffic scheduling method, applied to a tail device, the method comprising:
receiving an encapsulated target message sent by previous hop equipment, wherein a tunnel outgoing interface ID list and the number of remaining tunnel outgoing interface IDs of each segmented path included in a target end-to-end path are encapsulated in an extension message header of the encapsulated target message, and the number of remaining tunnel outgoing interface IDs is 0;
and performing decapsulation processing on the encapsulated target message to obtain the target message, and performing IP forwarding based on the target IP address of the target message.
7. The method of claim 6, wherein the method further comprises:
receiving a quality detection message sent by previous hop equipment and used for detecting the quality of an end-to-end path, wherein the extended message header of the quality detection message is packaged with a tunnel outgoing interface ID list of each segmented path included by the end-to-end path, the number of the remaining tunnel outgoing interface IDs and the current available bandwidth of the end-to-end path, and the number of the remaining tunnel outgoing interface IDs is 0;
after the number of the remaining tunnel outgoing interfaces ID is 0, based on the received quality detection message, counting the quality of the end-to-end path, and carrying the quality of the end-to-end path in a response message and sending the response message to the head equipment, wherein the quality of the end-to-end path comprises the current available bandwidth of the end-to-end path and the time delay, jitter and packet loss rate parameters of the end-to-end path.
8. A traffic scheduling apparatus, for use in a head-end, the apparatus comprising:
the first receiving unit is used for receiving a target message, determining at least two end-to-end paths which are predefined and used for transmitting the target message based on a destination address of the target message, wherein one end-to-end path comprises at least two segmented paths;
a determining unit, configured to determine a target end-to-end path for transmitting the target message from the at least two end-to-end paths based on a preset quality requirement for transmitting the target message and the quality of the at least two end-to-end paths;
the encapsulating unit is used for encapsulating the target message to obtain an encapsulated target message, wherein the tunnel outgoing interface ID list and the number of the remaining tunnel outgoing interface IDs of each segment path included in the target end-to-end path are encapsulated in an extension message header of the encapsulated target message;
and the forwarding unit is used for determining the tunnel exit interface ID of the segmented path between the first device and the next hop device in the target end-to-end path based on the number of the remaining tunnel exit interfaces ID, determining a corresponding tunnel exit interface based on the tunnel exit interface ID, subtracting one from the number of the remaining tunnel exit interfaces ID, and forwarding the packaged target message.
9. A traffic scheduling apparatus, for use in an intermediary device, the apparatus comprising:
a receiving unit, configured to receive an encapsulated target packet sent by a previous hop device, where an extended packet header of the encapsulated target packet encapsulates a tunnel outgoing interface ID list and the number of remaining tunnel outgoing interface IDs of each segment path included in a target end-to-end path;
and the forwarding unit is used for determining the tunnel exit interface ID of the segmented path between the intermediate device and the next hop device in the target end-to-end path based on the number of the remaining tunnel exit interfaces ID, determining the corresponding tunnel exit interface based on the tunnel exit interface ID, subtracting one from the number of the remaining tunnel exit interfaces ID, and forwarding the packaged target message.
10. A traffic scheduling apparatus for use with a tail device, the apparatus comprising:
a receiving unit, configured to receive an encapsulated target packet sent by a previous hop device, where an extended packet header of the encapsulated target packet encapsulates a tunnel outgoing interface ID list and a number of remaining tunnel outgoing interface IDs of each segment path included in a target end-to-end path, and the number of remaining tunnel outgoing interface IDs is 0;
And the forwarding unit is used for performing decapsulation processing on the encapsulated target message to obtain the target message, and performing IP forwarding based on the target IP address of the target message.
CN202211101632.8A 2022-09-09 2022-09-09 Traffic scheduling method and device Pending CN116319503A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211101632.8A CN116319503A (en) 2022-09-09 2022-09-09 Traffic scheduling method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211101632.8A CN116319503A (en) 2022-09-09 2022-09-09 Traffic scheduling method and device

Publications (1)

Publication Number Publication Date
CN116319503A true CN116319503A (en) 2023-06-23

Family

ID=86796487

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211101632.8A Pending CN116319503A (en) 2022-09-09 2022-09-09 Traffic scheduling method and device

Country Status (1)

Country Link
CN (1) CN116319503A (en)

Similar Documents

Publication Publication Date Title
US9178831B2 (en) Methods and apparatus for RBridge hop-by-hop compression and frame aggregation
CN113207192B (en) Message forwarding method and device
CN103036809B (en) For having the method and apparatus of the scalable network that active link utilizes
US8867349B2 (en) Regulation of network traffic in virtual private networks
CN111630817B (en) Routing method and device
WO2017128945A1 (en) Method and device for allocating service traffic
CN111049752B (en) Load balancing method and device for multiple transmission lines
WO2017124709A1 (en) Method of establishing traffic engineering tunnel and device
CN109617803B (en) Forwarding table item generation method, device and equipment
US11736962B2 (en) Methods, apparatus and computer-readable mediums relating to configuration of redundant paths
WO2022062506A1 (en) Data processing method and apparatus, storage medium, and electronic apparatus
CN110620683B (en) Message sending method, device and system applied to distributed router networking
EP4207685A1 (en) Message header processing method and apparatus, storage medium and electronic device
CN106803812B (en) Method and device for realizing load sharing
WO2020156090A1 (en) Method, device, and system for establishing cross-domain forwarding path
CN108270673A (en) File transmitting method, device and system
CN104301252A (en) Data sending system and method
CN112787923A (en) Message processing method, device and system
CN116800663A (en) Data transmission method, data transmission device, electronic equipment and storage medium
CN104753790A (en) Message transmission method based on TRILL (Transparent Interconnection of Lots of Links) network and equipment
WO2013000326A1 (en) Data transmission method and system in transparent interconnection over lots of links network
CN116319503A (en) Traffic scheduling method and device
WO2022007550A1 (en) Load balancing method, apparatus, network device, and system
CN115208829A (en) Message processing method and network equipment
EP3471351B1 (en) Method and device for acquiring path information about data packet

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