CN111600793B - Message forwarding method and device - Google Patents

Message forwarding method and device Download PDF

Info

Publication number
CN111600793B
CN111600793B CN202010247544.3A CN202010247544A CN111600793B CN 111600793 B CN111600793 B CN 111600793B CN 202010247544 A CN202010247544 A CN 202010247544A CN 111600793 B CN111600793 B CN 111600793B
Authority
CN
China
Prior art keywords
forwarding
sub
service
tunnels
tunnel
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.)
Active
Application number
CN202010247544.3A
Other languages
Chinese (zh)
Other versions
CN111600793A (en
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 Security Technologies Co Ltd
Original Assignee
New H3C Security 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 Security Technologies Co Ltd filed Critical New H3C Security Technologies Co Ltd
Priority to CN202010247544.3A priority Critical patent/CN111600793B/en
Publication of CN111600793A publication Critical patent/CN111600793A/en
Application granted granted Critical
Publication of CN111600793B publication Critical patent/CN111600793B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/24Multipath
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/302Route determination based on requested QoS
    • H04L45/306Route determination based on the nature of the carried application
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/38Flow based routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/50Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering

Landscapes

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

Abstract

The application provides a message forwarding method and a message forwarding device, wherein the method comprises the steps of establishing a plurality of traffic engineering tunnels; creating a plurality of sub-tunnels for each traffic engineering tunnel; setting the sum of the bandwidths of a plurality of sub-tunnels belonging to the same traffic engineering tunnel to be not more than the bandwidth of the traffic engineering tunnel; mapping a plurality of sub-tunnels belonging to the same traffic engineering tunnel to the same or different service levels; mapping a service grade for the received data message of each service type; and sending data messages with the same service level or different service levels through a plurality of sub-tunnels of each traffic engineering tunnel. The method is used for forwarding the data messages of the same or different service types on a plurality of sub-tunnels of a single TE tunnel. The method and the device can forward the data messages of the same or different service types on the plurality of sub-tunnels belonging to the same TE tunnel.

Description

Message forwarding method and device
Technical Field
The present application relates to communications technologies, and in particular, to a method and an apparatus for forwarding a packet.
Background
The Class-of-service-Based Tunnel Selection (CBTS) is a Traffic Engineering (TE) Tunnel Selection technique, and the CBTS selects a specific Tunnel for forwarding Based on the priority of a service, so as to provide better service quality for a service with high priority.
In the existing CBTS scheme, each tunnel bearer service type is statically configured, and a tunnel needs to be configured for a data packet of each service type. Taking voice data messages, ethernet data messages, and ATM (Asynchronous Transfer Mode) data messages as examples, three tunnels with different service levels are configured, and a tunnel entry node maps the received three types of data messages into three types of service levels and then forwards the data messages according to TE tunnels corresponding to the service levels.
However, in the existing CBTS scheme, one TE tunnel can only carry one service; the congested TE tunnel may not forward the service packet through other traffic type TE tunnels, and resources of other TE tunnels with abundant bandwidth resources are wasted. Therefore, when the TE tunnel of a certain service type is insufficient and cannot satisfy the service type data packet of the mapped service level, only one TE tunnel can be created.
However, creating a new TE tunnel requires all intermediate network nodes on the tunnel forwarding path to re-assign a label to the new TE tunnel, and the intermediate network nodes need to add protocol packet interaction for maintaining the establishment of the new TE tunnel, which requires more network resources to be consumed.
Disclosure of Invention
The present application aims to provide a message forwarding method and apparatus, which are used for forwarding data messages of the same or different service types on a plurality of sub-tunnels of a single TE tunnel.
In order to achieve the above object, the present application provides a method for forwarding a packet, where the method includes: creating a plurality of sub-tunnels for each traffic engineering tunnel; setting the sum of the bandwidths of a plurality of sub-tunnels belonging to the same traffic engineering tunnel to be not more than the bandwidth of the traffic engineering tunnel; mapping a plurality of sub-tunnels belonging to the same traffic engineering tunnel to the same or different service levels; mapping a service grade for the received data message of each service type; and sending data messages with the same service grade or different service types through a plurality of sub-tunnels of each traffic engineering tunnel.
In order to achieve the above object, the present application further provides a message forwarding apparatus, where the apparatus includes: the tunnel module is used for establishing a plurality of traffic engineering tunnels, establishing a plurality of sub-tunnels for each traffic engineering tunnel, and setting the bandwidth sum of the plurality of sub-tunnels belonging to the same traffic engineering tunnel to be not more than the bandwidth of the traffic engineering tunnel; mapping a plurality of sub-tunnels belonging to the same traffic engineering tunnel to the same and/or different service levels; the forwarding module is used for mapping a service level for the received data message of each service type; and sending data messages with the same service level or different service types through a plurality of sub-tunnels of each traffic engineering tunnel.
The method and the device have the advantages that the data messages of the same or different service types are forwarded on the multiple sub-tunnels of the same TE tunnel, so that the data messages of the service types with large flow can be forwarded through the sub-tunnels of different TEs.
Drawings
Fig. 1 is a flowchart illustrating a message forwarding method according to the present invention;
fig. 2A-2B are schematic diagrams of a first embodiment of packet forwarding provided by the present application;
FIGS. 3A-3B are schematic diagrams illustrating message forwarding after dynamic programming for the embodiment of FIGS. 2A-2B;
fig. 4A-4B are schematic diagrams of a second embodiment of packet forwarding provided by the present application;
FIG. 5 is a schematic illustration of an embodiment provided herein.
Detailed Description
A detailed description will be given of a number of examples shown in a number of figures. In the following detailed description, numerous specific details are set forth in order to provide a thorough understanding of the present application. Well-known methods, procedures, components and circuits have not been described in detail so as not to obscure the examples.
The term "including" as that term is used is meant to include, but is not limited to; the term "comprising" means including but not limited to; the terms "above," "within," and "below" include the instant numbers; the terms "greater than" and "less than" mean that the number is not included. The term "based on" means based on at least a portion thereof.
The message forwarding method shown in fig. 1 includes the following steps:
step 101, a plurality of sub-tunnels are created for each traffic engineering tunnel.
And 102, setting the sum of the bandwidths of a plurality of sub-tunnels belonging to the same traffic engineering tunnel to be not more than the bandwidth of the traffic engineering tunnel.
Step 103, mapping a plurality of sub-tunnels belonging to the same traffic engineering tunnel to the same/different service levels.
Step 104, mapping a service class for the received data message of each service type.
And 105, sending data messages with the same service level or different service levels through a plurality of sub-tunnels of each traffic engineering tunnel.
The method shown in fig. 1 has the beneficial effects that the method is used for forwarding data messages of the same or different service types on a plurality of sub-tunnels of the same TE tunnel, so that the bandwidth utilization rate of the TE tunnel is improved.
Fig. 2A-2B are schematic diagrams of a first embodiment of packet forwarding provided by the present application, where three TE primary tunnels, that is, TE1, TE2, and TE3, are created on the switch 21 as a tunneling node. The bandwidth of each main tunnel is 300Mbps, and the service levels respectively configured in the three tunnels are service-class1, service-class2 and service-class 3. Wherein service-class1 is the highest service class, and service-class2 is the second best priority.
The switch 21 creates 3 sub-tunnels for each main tunnel, each with a bandwidth of 100 Mbps. The three sub-tunnels TE1.1, TE1.2 and TE1.3 of TE1 map the class of service-class1 of primary tunnel TE1. The three sub-tunnels TE2.1, TE2.2 and TE2.3 of TE2 map the service class service-class2 of the main tunnel TE2. Three sub-tunnels TE3.1, TE3.2 and TE3.3 of TE3 map class of service-class3 of primary tunnel TE3.
An access control table is set on the switch 21, and the table stores an ACL table item which maps a voice data message to service-class1, an ACL table item which maps an Ethernet data message to service-class2, and an ACL table item which maps an ATM data message to service-class 3.
Taking the example that the switch 21 forwards the ethernet data packet from the device 20 as the three-layer VPN ingress node, when the switch 21 receives the ethernet data packet from the device 20, the switch searches for a routing table serving as a forwarding table according to the destination IP address, and finds out a matching routing table entry. The switch searches the matched ACL list item according to the service type of the Ethernet data message received by identification, and identifies the service-class2 of the mapping.
Taking the example that the exchange price 21 finds and finds the forwarding group index ID1 in the matching routing table entry, the switch 21 finds the out-interface group table entry index 1 corresponding to the identified service level service-class2 according to the forwarding group table entry pointed by the forwarding group index ID1 in the found matching routing table entry; the output interface group table entry pointed by the output interface group table entry index 1 comprises 3 sub-tunnel output interface indexes TE1.1-TE1.3 mapped by service-class 1; the 3 sub-tunnel outbound interface indexes TE2.1-TE2.3 mapped by service-class 2; service-class3 maps the 3 sub-tunnel out-interface indices TE3.1-TE 3.3.
The switch 21 calculates a hash value, such as hash 2, by taking a modulo of 3 of the number of egress interface indexes corresponding to the service-class2 in the egress interface group entry 1 based on the packet characteristic information (packet characteristic information such as a triplet or a quintet) of the received data packet.
In the egress interface group entry 1, the switch 21 encapsulates the egress interface of the sub-tunnel TE2.2 pointed by the egress interface index TE2.2 matching the hash value 2 in the 3 sub-tunnel egress interface indexes mapped by the service-class2 into the MPLS packet of the three-layer VPN, and passes the encapsulated MPLS data packet of the egress interface.
Similarly, the switch 21 receives the voice data packet and the ATM data packet from the device 20, obtains the forwarding group index according to the forwarding table entry matched with the destination address, obtains the service level mapped by each forwarding group index according to the ACL table entry, searches the output interface group table entry index mapped by the service level in the forwarding group table entry matched with the forwarding group index, calculates the hash value, and selects the sub-tunnel matched with the hash value from the output interface indexes of the plurality of sub-tunnels mapped by the service level to encapsulate and forward.
As shown in fig. 2B, the voice data packet is forwarded through three sub-tunnels TE1.1-TE1.3, the ethernet data packet is forwarded through three sub-tunnels TE2.1-TE2.3, and the ATM data packet is forwarded through three sub-tunnels TE 3.1-3.3.
Fig. 3A-3B are schematic diagrams of the message forwarding after dynamic planning of the embodiment in fig. 2A-2B, and the switch 21 monitors forwarding flows of data messages of various service types.
Taking the flow of the voice data message as an example, the switch 21 monitors that the forwarding flow of the voice data message in the current statistical time period is 120Mbps, the forwarding flow of the ethernet data message is 180Mbps, and the forwarding ripple of the ATM data message is 150 Mbps. The switch 21 determines that the forwarding flow of the voice data packet of the minimum forwarding flow is lower than 50% of the planned forwarding flow 300Mbps of the TE1 tunnel. The switch 21 maps the service type of the voice data message forwarding flow to three sub-tunnel interface indexes TE1.1-1.3 of service-class1, selects the sub-tunnel interface index TE1.3, and writes the sub-tunnel interface index TE1.3 into the output interface index TE2.1-TE2.3 corresponding to the service level of the Ethernet data message with the maximum forwarding flow.
As shown in fig. 3B, the switch 21 receives the ethernet data packet, obtains the forwarding group index, obtains the service level service-class2 mapped according to the ACL entry, and calculates the hash value by modulo 4 the number of output interface indexes corresponding to the service-class2 in the output interface group entry 1 based on the packet characteristic information of the received data packet in the forwarding group index matching forwarding group entry. When the hash value calculated by the switch 21 is 4, the switch 21 encapsulates, in the egress interface group entry 1, an egress interface of the sub-tunnel TE1.3 pointed by the egress interface index TE1.3 matching the hash value 4 in the 4 sub-tunnel egress interface indexes mapped by the service-class2 into an MPLS packet of the three-layer VPN, and passes through the encapsulated MPLS data packet of the egress interface.
The switch 21 receives the voice data packet of the device 20, acquires a forwarding group index 1 according to the forwarding table entry matched with the destination address, acquires a mapped service level service-class1 according to the ACL table entry, searches for an output interface group table entry index mapped by the service level service-class1 in the forwarding group table entry matched with the forwarding group index, modulo the number 2 of output interface indexes corresponding to the service-class2 in the output interface group table entry 1 based on the packet characteristic information (packet characteristic information such as a triplet or a quintet) of the received data packet, and calculates the hash value. When the hash value calculated by the switch 21 is 1 or 2, the switch 21 encapsulates, in the egress interface group table entry 1, an egress interface of a sub-tunnel TE1.1 to which an egress interface index TE1.1 matching the hash value 1 points in 2 sub-tunnel egress interface indexes mapped by the service-class2 into an MPLS packet of a three-layer VPN; or the switch 21 selects the egress interface of the sub-tunnel TE1.2 pointed by the egress interface index TE1.2 matching the hash value 2 to be encapsulated as the MPLS packet of the three-layer VPN.
Thus, the three sub-tunnels of the main tunnel TE1 send data packets of different service levels, where the sub-tunnel TE1.3 of the main tunnel TE1 shares the data packet of the ethernet type with the 3 sub-tunnels of the main tunnel TE2, and the unused spare bandwidth of the voice data packet is used for forwarding the ethernet data packet, thereby improving the utilization rate of the TE tunnel.
Similarly, in the forwarding state shown in fig. 2A-2B, the switch 21 monitors that the forwarding flow of the voice data packet in the current statistical time period is 120Mbps, the forwarding flow of the ethernet data packet is 320Mbps, and the forwarding flow of the ATM data packet is 150 Mbps. The switch 21 determines that the forwarding flow of the ethernet datagram of the maximum forwarding flow exceeds the planned forwarding flow of the TE2 tunnel by 300 Mbps. The switch 21 selects the sub-tunnel interface index TE1.3 from the three sub-tunnel interface indexes TE1.1-1.3 mapped by the service type service-class1 of the voice data packet forwarding traffic of the minimum forwarding traffic, and writes the sub-tunnel interface index TE1.3 into the output interface indexes TE2.1-TE2.3 corresponding to the service class of the ethernet data packet of the maximum forwarding traffic.
As shown in fig. 3B, the switch 21 receives the ethernet data packet, obtains a forwarding group index 1, obtains a service level service-class2 mapped according to the ACL entry, and calculates a hash value by modulo the number 4 of output interface indexes corresponding to the service-class2 in the output interface group entry 1 based on the packet characteristic information of the received data packet in the forwarding group index 1 matching the forwarding group entry. When the hash value calculated by the switch 21 is 4, the switch 21 encapsulates, in the egress interface group entry 1, an egress interface of the sub-tunnel TE1.3 pointed by the egress interface index TE1.3 matching the hash value 4 in the 4 sub-tunnel egress interface indexes mapped by the service-class2 into an MPLS packet of the three-layer VPN, and passes through the encapsulated MPLS data packet of the egress interface.
The switch 21 receives the voice data packet of the device 20, acquires a forwarding group index 1 according to the forwarding table entry matched with the destination address, acquires a mapped service level service-class1 according to the ACL table entry, searches for an output interface group table entry index mapped by the service level service-class1 in the forwarding group table entry matched with the forwarding group index, modulo the number 2 of output interface indexes corresponding to the service-class2 in the output interface group table entry 1 based on the packet characteristic information (packet characteristic information such as a triplet or a quintet) of the received data packet, and calculates the hash value. When the hash value calculated by the switch 21 is 1 or 2, the switch 21 encapsulates, in the egress interface group table entry 1, an egress interface of a sub-tunnel TE1.1 to which an egress interface index TE1.1 matching the hash value 1 points in 2 sub-tunnel egress interface indexes mapped by the service-class2 into an MPLS packet of a three-layer VPN; or the switch 21 selects the egress interface of the sub-tunnel TE1.2 pointed by the egress interface index TE1.2 matching the hash value 2 to be encapsulated as the MPLS packet of the three-layer VPN.
The three sub-tunnels of the main tunnel TE1 forward data packets of different service types, and when the traffic of the ethernet data packets exceeds the planned forwarding traffic of the TE2 of the main tunnel, the ethernet data packets are forwarded through the sub-tunnel of the established TE tunnel TE1 without newly building a TE tunnel.
Fig. 4A-4B are schematic diagrams of a second embodiment of message forwarding provided by the present application, where three TE primary tunnels, i.e., TE1, TE2, and TE3, are created on the switch 21 as a tunneling node. The bandwidth of each main tunnel is 300Mbps, and the service levels respectively configured in the three tunnels are service-class1, service-class2 and service-class 3. Wherein service-class1 is the highest service class, and service-class2 is the second best priority.
The switch 21 creates 3 sub-tunnels for each main tunnel, each with a bandwidth of 100 Mbps. The three sub-tunnels TE1.1, TE1.2 of TE1 map service class service-class 1. Sub-tunnels TE1.3 of TE1, TE2.1 and TE2.2 of TE2, and TE3.1 of TE2.3 and TE3 all map main tunnel service-class 2. The three sub-tunnels TE3.1, TE3.2 of TE3 map service class service-class 3.
In fig. 2A, in the egress interface group entry, service-class1 maps 2 egress interface indexes TE1.1 and TE1.2 of the sub-tunnel; service-class2 maps 5 sub-tunnel outgoing interface indexes TE1.3, TE2.1, TE2.2, TE2.3 and TE3.1, and service-class3 corresponds to 2 sub-tunnel outgoing interface indexes TE3.1 and TE 3.2.
An access control table is set on the switch 21, and the table stores an ACL table item which maps a voice data message to service-class1, an ACL table item which maps an Ethernet data message to service-class2, and an ACL table item which maps an ATM data message to service-class 3.
Taking the example that the switch 21 forwards the ethernet data packet from the device 20 as the three-layer VPN ingress node, when the switch 21 receives the ethernet data packet from the device 20, the switch searches for a routing table serving as a forwarding table according to the destination IP address, and finds out a matching routing table entry. The switch searches the matched ACL list item according to the service type of the Ethernet data message received by identification, and identifies the service-class2 of the mapping.
Still taking the example that the exchange price 21 finds and finds the forwarding group index ID1 in the matching routing table entry, the switch 21 finds the out-interface group table entry index 1 corresponding to the identified service level service-class2 according to the forwarding group table entry pointed by the forwarding group index ID1 in the found matching routing table entry; the egress interface group entry pointed to by egress interface group entry index 1 contains the 5 sub-tunnel egress interface indexes mapped by service-class 2.
The switch 21 calculates a hash value, such as hash 5, by taking a modulus of 5 of the number of egress interface indexes corresponding to the service-class2 in the egress interface group entry 1 based on the packet characteristic information (packet characteristic information such as a triplet or a quintet) of the received data packet.
In the egress interface group entry 1, the switch 21 encapsulates the egress interface of the sub-tunnel TE3.1 pointed by the egress interface index TE3.1 matching the hash value 5 in the 5 sub-tunnel egress interface indexes mapped by the service-class2 into the MPLS packet of the three-layer VPN, and passes the encapsulated MPLS data packet of the egress interface.
Similarly, the switch 21 receives the voice data packet and the ATM data packet from the device 20, obtains the forwarding group index according to the forwarding table entry matched with the destination address, obtains the mapped service level according to the ACL table entry, searches the output interface group table entry index mapped with the service level in the forwarding group table entry matched with the forwarding group table entry, calculates the hash value, and selects the sub-tunnel matched with the hash value from the output interface indexes of the plurality of sub-tunnels mapped with the service level to encapsulate and forward.
As shown in fig. 4B, the voice data packet is forwarded through two sub-tunnels TE1.1-TE 1.1, the ethernet data packet is forwarded through five sub-tunnels TE1.1 of the main tunnel TE1, TE2.1-TE2.3 of the main tunnel TE2, and TE3.1 of the main tunnel TE3, and the ATM data packet is forwarded through three sub-tunnels TE 3.1-3.2, thereby improving the bandwidth utilization rate of the main tunnel.
The switch 21 in fig. 4A-4B can dynamically plan the service type forwarded by the sub-tunnel according to the manner in fig. 3A-3B, and improve the bandwidth utilization of the main tunnel.
Fig. 5 is a schematic diagram of a packet forwarding apparatus 500 provided in the present application, and a switch to which the apparatus 500 is applied may be applied to an ingress node in an MPLS network that uses the CBTS technology. The apparatus 500 includes a tunneling module 501, a switching module 502, and a monitoring module 503.
A tunnel module 501, configured to establish multiple traffic engineering tunnels; creating a plurality of sub-tunnels for each traffic engineering tunnel; setting the sum of the bandwidths of a plurality of sub-tunnels belonging to the same traffic engineering tunnel to be not more than the bandwidth of the traffic engineering tunnel; mapping a plurality of sub-tunnels belonging to the same traffic engineering tunnel to the same or different service levels. A forwarding module 502, configured to map a service level for a received data packet of each service type; and sending data messages with the same service level or different service levels through a plurality of sub-tunnels of each traffic engineering tunnel.
A forwarding module 502, specifically configured to search a forwarding entry matching a destination address of the received data packet; identifying the service type of the received data message and identifying the mapped service level; searching an out-interface group table item index corresponding to the identified service level mapping in a forwarding group table item pointed by the forwarding group index of the matched forwarding table item; in the egress interface group table entry pointed by the egress interface group table entry index, the multiple sub-tunnel egress interface indexes of each service level map point to multiple sub-tunnels belonging to the same traffic engineering tunnel, and the multiple sub-tunnel egress interface indexes contained in the egress interface group table entry pointed by the multiple sub-tunnel egress interface group table entries point to multiple sub-tunnels belonging to the same traffic engineering tunnel. The forwarding module 502 calculates a hash value based on the message characteristic information of the received data message and the number of the egress interface indexes in the egress interface group table entry; and according to the output interface pointed by the output interface index matched with the calculated hash value in the output interface indexes mapped by the service level identified in the output interface group table entry, packaging and forwarding the received data message.
A forwarding module 502, specifically configured to search a forwarding entry matching a destination address of the received data packet; identifying the service type of the received data message and identifying the mapped service level; searching an out-interface group table item index corresponding to the identified service level mapping in a forwarding group table item pointed by the forwarding group index of the matched forwarding table item; in the output interface group table item pointed by the output interface group table item index, a plurality of sub-tunnel exit indexes of at least one service level mapping point to a plurality of sub-tunnels belonging to the same traffic engineering tunnel, and a plurality of sub-tunnel indexes of at least one service level mapping point to a plurality of sub-tunnels of different traffic engineering tunnels to be output. The forwarding module 502 calculates a hash value based on the message characteristic information of the received data message and the number of the egress interface indexes in the egress interface group table entry; and packaging and forwarding the received data message according to an output interface pointed by the output interface index matched with the computed hash value in the output interface indexes mapped by the service level identified in the output interface group table entry.
A monitoring module 503, configured to monitor forwarding traffic of the data packet of each service type, and determine whether a service type of a minimum forwarding traffic is lower than a service type planning forwarding traffic of a predetermined proportion; if so, the forwarding module 502 is notified. The forwarding module 502 is further configured to select a sub-tunnel outbound interface index of the outbound interface group entry corresponding to the service level mapped by the service type of the minimum forwarding traffic, and write the selected sub-tunnel outbound interface index in the outbound interface group entry corresponding to the service level mapped by the service type of the maximum forwarding traffic.
The monitoring module 503 is further configured to determine whether the service type of the maximum forwarding flow exceeds a service type planning forwarding flow; if so, the forwarding module 502 is notified. The forwarding module 502 is further configured to select a sub-tunnel outgoing interface index of an outgoing interface group entry corresponding to the service level mapped by the service type of the minimum forwarding flow, and write the selected sub-tunnel outgoing interface index into the outgoing interface group entry corresponding to the service level mapped by the service type of the maximum forwarding flow.
The above description is only exemplary of the present application and should not be taken as limiting the present application, as any modification, equivalent replacement, or improvement made within the spirit and principle of the present application should be included in the scope of protection of the present application.

Claims (6)

1. A message forwarding method is characterized in that the method comprises the following steps:
establishing a plurality of traffic engineering tunnels;
creating a plurality of sub-tunnels for each traffic engineering tunnel;
setting the sum of the bandwidths of a plurality of sub-tunnels belonging to the same traffic engineering tunnel to be not more than the bandwidth of the traffic engineering tunnel;
mapping a plurality of sub-tunnels belonging to the same traffic engineering tunnel to the same or different service levels;
mapping a service grade for the received data message of each service type;
sending data messages with the same service level or different service levels through a plurality of sub-tunnels of each traffic engineering tunnel;
monitoring the forwarding flow of the data message of each service type;
judging whether the service type of the minimum forwarding flow is lower than the service type planning forwarding flow of a preset proportion or not;
if so, selecting a sub-tunnel output interface index of the output interface group table entry corresponding to the service level mapped by the service type of the minimum forwarding flow, and writing the selected sub-tunnel output interface index into the output interface group table entry corresponding to the service level mapped by the service type of the maximum forwarding flow.
2. The method of claim 1, wherein sending data packets of the same class of service through a plurality of sub-tunnels of each of the traffic engineering tunnels comprises:
searching a forwarding table item matched with a destination address of the received data message;
identifying the service type of the received data message and identifying the mapped service level;
searching an output interface group table item index corresponding to the identified service level mapping in a forwarding group table item pointed by the forwarding group index of the matched forwarding table item; in the output interface group table item pointed by the output interface group table item index, the output interface indexes of a plurality of sub-tunnels mapped by each service level point to a plurality of sub-tunnels belonging to the same traffic engineering tunnel;
calculating a hash value based on message characteristic information of the received data message and the number of outlet interface indexes mapped in the outlet interface group table item by the identified service level;
and according to the output interface pointed by the output interface index matched with the computed hash value in the plurality of output interface indexes mapped by the service level identified in the output interface group table entry, packaging and forwarding the received data message.
3. The method of claim 1, wherein sending data packets of different service classes through the plurality of sub-tunnels of each of the traffic engineering tunnels comprises:
searching a forwarding table item matched with a destination address of the received data message;
identifying the service type of the received data message and identifying the mapped service level;
searching an output interface group table item index corresponding to the identified service level mapping in a forwarding group table item pointed by the forwarding group index of the matched forwarding table item; in the output interface group table item pointed by the output interface group table item index, a plurality of sub-tunnel outlet indexes of at least one service level mapping point to a plurality of sub-tunnels belonging to the same traffic engineering tunnel, and a plurality of sub-tunnel indexes of at least one service level mapping point to a plurality of sub-tunnels of different traffic engineering tunnels;
calculating a hash value based on message characteristic information of the received data message and the number of outlet interface indexes mapped in the outlet interface group table entry by the identified service level;
and packaging and forwarding the received data message according to the output interface pointed by the output interface index matched with the computed hash value in the output interface indexes mapped by the service level identified in the output interface group table entry.
4. A message forwarding apparatus, the apparatus comprising:
the tunnel module is used for establishing a plurality of traffic engineering tunnels; creating a plurality of sub-tunnels for each traffic engineering tunnel; setting the sum of the bandwidths of a plurality of sub-tunnels belonging to the same traffic engineering tunnel to be not more than the bandwidth of the traffic engineering tunnel; mapping a plurality of sub-tunnels belonging to the same traffic engineering tunnel to the same or different service levels;
the forwarding module is used for mapping a service level for the received data message of each service type; sending data messages with the same service level or different service levels through a plurality of sub-tunnels of each traffic engineering tunnel;
and the monitoring module is used for monitoring the forwarding flow of the data message of each service type, judging whether the service type of the minimum forwarding flow is lower than the service type planning forwarding flow of a preset proportion or judging whether the service type of the maximum forwarding flow exceeds the service type planning forwarding flow, informing the forwarding module so that the forwarding module selects one sub-tunnel outgoing interface index of the outgoing interface group table item corresponding to the service level mapped by the service type of the minimum forwarding flow, and writing the selected sub-tunnel outgoing interface index into the outgoing interface group table item corresponding to the service level mapped by the service type of the maximum forwarding flow.
5. The apparatus according to claim 4, wherein the forwarding module is specifically configured to search for a forwarding table entry matching a destination address of the received data packet; identifying the service type of the received data message and identifying the mapped service level; searching an output interface group table item index corresponding to the identified service level mapping in a forwarding group table item pointed by the forwarding group index of the matched forwarding table item; calculating a hash value based on message characteristic information of the received data message and the number of outlet interface indexes of the identified service level in the outlet interface group table entry; according to the output interface pointed by the output interface index matched with the computed hash value in the output interface indexes mapped by the service level identified in the output interface group table entry, packaging and forwarding the received data message; in the egress interface group table item pointed by the egress interface group table item index, the egress interface indexes of the plurality of sub-tunnels mapped by each service level point to the plurality of sub-tunnels belonging to the same traffic engineering tunnel.
6. The apparatus according to claim 4, wherein the forwarding module is specifically configured to search for a forwarding table entry matching a destination address of the received data packet; identifying the service type of the received data message and identifying the mapped service level; searching an output interface group table item index corresponding to the identified service level mapping in a forwarding group table item pointed by the forwarding group index of the matched forwarding table item; calculating a hash value based on message characteristic information of the received data message and the number of outlet interface indexes mapped in the outlet interface group table entry by the identified service level; in the output interface group table item pointed by the output interface group table item index, a plurality of sub-tunnel outlet indexes of at least one service level mapping point to a plurality of sub-tunnels belonging to the same traffic engineering tunnel, and a plurality of sub-tunnel indexes of at least one service level mapping point to a plurality of sub-tunnels of different traffic engineering tunnels;
and packaging and forwarding the received data message according to the output interface pointed by the output interface index matched with the computed hash value in the output interface indexes mapped by the service level identified in the output interface group table entry.
CN202010247544.3A 2020-03-31 2020-03-31 Message forwarding method and device Active CN111600793B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010247544.3A CN111600793B (en) 2020-03-31 2020-03-31 Message forwarding method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010247544.3A CN111600793B (en) 2020-03-31 2020-03-31 Message forwarding method and device

Publications (2)

Publication Number Publication Date
CN111600793A CN111600793A (en) 2020-08-28
CN111600793B true CN111600793B (en) 2022-07-12

Family

ID=72190366

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010247544.3A Active CN111600793B (en) 2020-03-31 2020-03-31 Message forwarding method and device

Country Status (1)

Country Link
CN (1) CN111600793B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114567679B (en) * 2022-03-25 2024-04-02 阿里巴巴(中国)有限公司 Data transmission method and device

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101163084A (en) * 2007-11-13 2008-04-16 华为技术有限公司 Classification based tunnel selecting method and apparatus
CN101478495A (en) * 2009-01-20 2009-07-08 华为技术有限公司 Flow limitation method and apparatus
WO2017016106A1 (en) * 2015-07-28 2017-02-02 上海斐讯数据通信技术有限公司 Sdn-based qos-supported communications tunnel establishment method and system
CN108199974A (en) * 2017-12-25 2018-06-22 新华三技术有限公司 Service traffics forwarding management method, device and network node
CN108494619A (en) * 2018-02-28 2018-09-04 新华三技术有限公司 Flow statistical method, device and provider's router
CN109104367A (en) * 2017-06-21 2018-12-28 华为技术有限公司 A kind of method that establishing tunnel, the network equipment and system
CN109450793A (en) * 2018-12-18 2019-03-08 锐捷网络股份有限公司 A kind of method and apparatus of service traffics scheduling

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8433783B2 (en) * 2010-09-29 2013-04-30 Citrix Systems, Inc. Systems and methods for providing quality of service via a flow controlled tunnel

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101163084A (en) * 2007-11-13 2008-04-16 华为技术有限公司 Classification based tunnel selecting method and apparatus
CN101478495A (en) * 2009-01-20 2009-07-08 华为技术有限公司 Flow limitation method and apparatus
WO2017016106A1 (en) * 2015-07-28 2017-02-02 上海斐讯数据通信技术有限公司 Sdn-based qos-supported communications tunnel establishment method and system
CN109104367A (en) * 2017-06-21 2018-12-28 华为技术有限公司 A kind of method that establishing tunnel, the network equipment and system
CN108199974A (en) * 2017-12-25 2018-06-22 新华三技术有限公司 Service traffics forwarding management method, device and network node
CN108494619A (en) * 2018-02-28 2018-09-04 新华三技术有限公司 Flow statistical method, device and provider's router
CN109450793A (en) * 2018-12-18 2019-03-08 锐捷网络股份有限公司 A kind of method and apparatus of service traffics scheduling

Also Published As

Publication number Publication date
CN111600793A (en) 2020-08-28

Similar Documents

Publication Publication Date Title
US20230124803A1 (en) Tunnel provisioning with link aggregation
CN100550823C (en) A kind of Ethernet transfer equipment and method with quick protection and fair characteristic
US8144629B2 (en) Admission control for services
US7872991B2 (en) Methods and systems for providing MPLS-based layer-2 virtual private network services
US7486674B2 (en) Data mirroring in a service
CA2444363C (en) Layered network node, network incorporating the same, node, and layered network
US6538991B1 (en) Constraint-based routing between ingress-egress points in a packet network
CN100461755C (en) Data message transmitting method and node equipment based on MPLS TE tunnel
US6636512B1 (en) System, method, and article of manufacture for increasing link bandwidth utilization in a high speed digital network
CN105991437B (en) Message forwarding processing method and device, controller and route forwarding equipment
US20040032856A1 (en) Transparent, look-up-free packet forwarding method for optimizing global network throughput based on real-time route status
CN102724118B (en) Label distribution method and device
US20160197812A1 (en) Network status mapping
CN100563202C (en) The method of differential service is provided
US9210037B2 (en) Method, apparatus and system for interconnected ring protection
US20070053296A1 (en) Packet forwarding apparatus with QoS control
US7092359B2 (en) Method for distributing the data-traffic load on a communication network and a communication network for implementing this method
CN106453138B (en) Message processing method and device
CN114143378B (en) Network optimization method, device, gateway equipment and storage medium
WO2016194089A1 (en) Communication network, communication network management method and management system
CN103428088A (en) Tree root allocation and message processing method and routing network bridge
CN104753823A (en) Service quality reservation establishing method and node
CN103416028A (en) System and method for advertising a composite link in interior gateway protocol and/or interior gateway protocol-traffic engineering
US20040174884A1 (en) Method for traffic engineering of connectionless virtual private network services
CN111600793B (en) Message forwarding method and device

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
GR01 Patent grant
GR01 Patent grant