WO2016150093A1 - 报文转发方法、装置及服务提供商网络边缘pe设备 - Google Patents

报文转发方法、装置及服务提供商网络边缘pe设备 Download PDF

Info

Publication number
WO2016150093A1
WO2016150093A1 PCT/CN2015/087954 CN2015087954W WO2016150093A1 WO 2016150093 A1 WO2016150093 A1 WO 2016150093A1 CN 2015087954 W CN2015087954 W CN 2015087954W WO 2016150093 A1 WO2016150093 A1 WO 2016150093A1
Authority
WO
WIPO (PCT)
Prior art keywords
next hop
private network
route
network route
forwarding
Prior art date
Application number
PCT/CN2015/087954
Other languages
English (en)
French (fr)
Inventor
李黄
韩杰
Original Assignee
中兴通讯股份有限公司
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 中兴通讯股份有限公司 filed Critical 中兴通讯股份有限公司
Publication of WO2016150093A1 publication Critical patent/WO2016150093A1/zh

Links

Images

Definitions

  • the present invention relates to the field of communications, and in particular, to a packet forwarding method and apparatus, and a service provider network edge PE device.
  • Figure 1 is the L3vpn in the related art.
  • the private network route is iterated to the LLDP Switched Path (lsp) to forward the correct schematic diagram.
  • the service provider network edge device Provider Edge, PE for short
  • PE2 The Border Gateway Protocol (BGP) neighbor
  • IGP Interior Gateway Protocol
  • LDP Label Distribute Protocol
  • Public network routes and labels are assigned to public network routes to form lsp.
  • the private network route is advertised by the BGP protocol.
  • the next hop of the private network route is the address of an interface of the BGP neighbor. Assume that the next hop of the private network BGP route received on PE1 is the IP address 10.3.4.1 of the interface Fei_2 on the neighboring PE2. The next hop is the next hop of the remote device. The far-end next hop), the packet cannot be directly reached.
  • the lsp of the public network must exist as the bearer tunnel to reach PE2.
  • the device searches for the outer public network route based on the next hop address 10.3.4.1 and the longest match on the device PE1. Since the IP address 10.3.4.1 of Fei_2 is a 24-bit mask, the network address is 10.3.4.0, and the local network segment route 10.3.4.0 is formed on PE2. After the IGP protocol is advertised, there will be a 10.3.4.0 public network in PE1. The route exists. According to the next hop 10.3.4.1, the longest matching public network route is 10.3.4.0, and the LDP protocol assigns a label to the 10.3.4.0 route prefix, thus forming a continuous lsp between the PE1 header and the PE2 tail. As shown by the dotted line in Figure 1, it can be used as a bearer tunnel for BGP routes to make BGP routes reachable and complete the forwarding of private network packets.
  • FIG 2 is a schematic diagram of the lsp forwarding error formed by the L3vpn private network route iteration to the network segment route in the related art.
  • the fei_2 interface of the P1 is directly connected to the fei_1 interface of the PE2, and the interface addresses are 10.2.3.1/. 24 (address/mask length) and 10.2.3.2/24, assuming that the next hop of the BGP route received on PE1 is the IP address 10.2.3.2 of the interface Fei_1 on the BGP neighbor PE2. Since P1 and PE2 are directly connected, On the P1, there will be a local network segment route 10.2.3.0.
  • BGP protocol is not known when the iteration is forwarded to the lsp forwarding error.
  • the BGP route that fails to be forwarded is used for packet forwarding.
  • the fast convergence of BGP routes affects packet forwarding.
  • the present invention provides a message forwarding method and device, and a service provider network edge PE device, so as to solve at least the problem of high packet loss rate when forwarding packets existing in the related art.
  • a packet forwarding method which includes: obtaining a private network route for forwarding a message advertised by a neighboring service provider network edge PE device, where the private network route has two or More than two next hops; determining, from the private network route, a next hop with the ability to iterate to the host route; forwarding the message according to the determined next hop.
  • determining, according to the private network route, the next hop having the capability of iterating to the host route includes: selecting a next hop from the private network route according to a predetermined routing policy; determining a public network routing table Whether a host routing entry whose destination address matches the selected address of the next hop and whose mask length is 32 bits is stored therein; if the determination result is yes, determining that the selected next hop has an iteration to The ability of the host to route.
  • the method further includes: reselecting a next hop of the private network route if the determination result is negative.
  • the method further includes: marking the private network route as an invalid private network route; And the revocation message for revoking the invalid private network route is advertised to the upstream device, where the revocation message is used by the upstream device to revoke the invalid private network route and reselect the private network for forwarding the packet routing.
  • the predetermined routing policy includes at least one of: selecting a next hop corresponding to a minimum cost in a cost value Cost corresponding to a next hop included in the private network route; and selecting the private network route The next hop corresponding to the highest LOCAL_PREF of the local priority LOCAL_PREF corresponding to the next hop included; the next hop corresponding to the smallest ORIGINATOR_ID of the router identifier ORIGINATOR_ID corresponding to the next hop included in the private network route; The preferred first header corresponding to the next hop included in the private network route The next hop corresponding to the largest Preferred_value in the Preferred_value is selected.
  • a packet forwarding apparatus including: an obtaining module, configured to acquire a private network route for forwarding a message advertised by a neighboring service provider network edge PE device, where the private The network route has two or more next hops; the determining module is configured to determine a next hop having the capability of iterating to the host route from the private network route; and the forwarding module is set to be determined according to the determined Forward packets in one hop.
  • the determining module includes: a first selecting unit, configured to select a next hop from the private network route according to a predetermined routing policy; and the determining unit is configured to determine whether a destination is stored in the public network routing table a host routing entry whose address matches the selected address of the next hop and whose mask length is 32 bits; and a determining unit configured to determine the selected one if the determination result of the determining unit is yes One hop has the ability to iterate to the host route.
  • the determining module further includes: a second selecting unit, configured to reselect the next hop of the private network route if the determining result of the determining unit is negative.
  • the apparatus further includes: a marking module, configured to mark the private network route as invalid private when there is no next hop in the private network route that has the ability to iterate to the host route a network routing; an advertisement module, configured to notify the upstream device of the revocation message for revoking the invalid private network route, where the revocation message is used by the upstream device to revoke the invalid private network route and reselect A private network route used to forward the packet.
  • a marking module configured to mark the private network route as invalid private when there is no next hop in the private network route that has the ability to iterate to the host route a network routing
  • an advertisement module configured to notify the upstream device of the revocation message for revoking the invalid private network route, where the revocation message is used by the upstream device to revoke the invalid private network route and reselect A private network route used to forward the packet.
  • the predetermined routing policy includes at least one of: selecting a next hop corresponding to a minimum cost in a cost value Cost corresponding to a next hop included in the private network route; and selecting the private network route The next hop corresponding to the highest LOCAL_PREF of the local priority LOCAL_PREF corresponding to the next hop included; the next hop corresponding to the smallest ORIGINATOR_ID of the router identifier ORIGINATOR_ID corresponding to the next hop included in the private network route; The next hop corresponding to the maximum Preferred_value of the preferred preferred value Preferred_value corresponding to the next hop included in the private network route.
  • a service provider network edge PE device comprising the apparatus of any of the above.
  • the private network route for forwarding packets advertised by the neighboring service provider network edge PE device is obtained by the present invention, wherein the private network route has two or more next hops; from the private network Determining the next hop of the ability to iterate to the host route in the route; and according to the determined next hop forwarding packet, the problem that the packet loss rate is high when the packet is forwarded in the related technology is solved The effect of reducing the message loss rate.
  • FIG. 1 is a schematic diagram of the correct lsp forwarding formed by the L3vpn private network route iteration to the network segment route in the related art
  • FIG. 2 is a schematic diagram of an Lsp forwarding error formed by an L3vpn private network route iteration to a network segment route in the related art
  • FIG. 3 is a flowchart of a packet forwarding method according to an embodiment of the present invention.
  • FIG. 4 is a structural block diagram of a message forwarding apparatus according to an embodiment of the present invention.
  • FIG. 5 is a structural block diagram of a determining module 44 in a message forwarding device according to an embodiment of the present invention.
  • FIG. 6 is a block diagram showing a preferred structure of the determining module 44 in the message forwarding apparatus according to an embodiment of the present invention.
  • FIG. 7 is a block diagram showing a preferred structure of a message forwarding apparatus according to an embodiment of the present invention.
  • FIG. 8 is a structural block diagram of a service provider network edge PE device according to an embodiment of the present invention.
  • FIG. 9 is a block diagram showing the structure of a module in a PE device according to an embodiment of the present invention.
  • FIG. 10 is a flowchart of a control method for effectively reaching a next hop of a private network BGP route according to an embodiment of the present invention
  • FIG. 11 is a flowchart of packet forwarding according to Embodiment 1 of the present invention.
  • FIG. 12 is a flowchart of packet forwarding according to Embodiment 2 of the present invention.
  • FIG. 3 is a flowchart of a packet forwarding method according to an embodiment of the present invention. As shown in FIG. 3, the process includes the following steps:
  • Step S302 Obtain a private network route for forwarding a message advertised by a neighboring service provider network edge PE device, where the private network route has two or more next hops;
  • Step S304 determining, from the private network route, a next hop having the capability of iterating to the host route;
  • Step S306 forwarding the message according to the determined next hop.
  • the packet loss rate is high, and the packet loss rate is reduced.
  • determining the next hop from the private network route with the ability to iterate to the host route includes Selecting a next hop from the private network route according to the predetermined routing policy; determining whether the public network routing table stores a host routing entry whose destination address matches the selected next hop address and whose mask length is 32 bits; In the case where the determination result is yes, it is determined that the selected next hop has the ability to iterate to the host route. After the next hop is determined, the next hop can be used to forward the message.
  • the next selection may be determined.
  • the hop cannot be iterated to the host route.
  • the next hop of the private network route can be reselected, and the next hop is continuously judged until a next hop that can be iterated to the host route is found.
  • the private network route When there is no next hop in the private network route that has the ability to iterate to the host route, the private network route is invalid. In this case, the new private network route needs to be re-selected to forward the packet.
  • the private network route when there is no next hop with the ability to iterate to the host route in the private network route, the private network route is also marked as an invalid private network route; it will be used to revoke the invalid private network.
  • the revocation message of the route is advertised to the upstream device, where the revocation message is used by the upstream device to revoke the invalid private network route and reselect the private network route for forwarding the packet.
  • the predetermined routing policy may include at least one of the following: selecting a next hop corresponding to a minimum cost corresponding to a next hop included in the private network routing table, and selecting a lower hop included in the private network routing table. Select the next hop corresponding to the highest LOCAL_PREF in the local priority LOCAL_PREF of one hop; select the next hop corresponding to the smallest ORIGINATOR_ID of the router identifier ORIGINATOR_ID corresponding to the next hop included in the private network routing table; select the private network routing table The next hop corresponding to the maximum preferred value of the preferred preferred value of the included next hop Preferred_value.
  • the private network route may also have only one next hop.
  • the next hop is directly used to forward the packet, and when determining that the next hop cannot be used,
  • the private network route is invalid.
  • the private network route is marked as invalid.
  • the revoke message for revoking the invalid private network route is advertised to the upstream device.
  • the upstream device revokes the invalid route.
  • the private network routes, and the upstream device selects a new private network route for forwarding packets.
  • a message forwarding device is also provided, which is used to implement the foregoing embodiments and preferred embodiments, and has not been described again.
  • the term "module" can be implemented to be predetermined A combination of functional software and/or hardware.
  • the apparatus described in the following embodiments is preferably implemented in software, hardware, or a combination of software and hardware, is also possible and contemplated.
  • FIG. 4 is a structural block diagram of a message forwarding device according to an embodiment of the present invention. As shown in FIG. 4, the device includes an obtaining module 42, a determining module 44, and a forwarding module 46. The device will be described below.
  • the obtaining module 42 is configured to obtain a private network route for forwarding a message advertised by the neighboring service provider network edge PE device, where the private network route has two or more next hops; the determining module 44 is connected.
  • the obtaining module 42 is configured to determine a next hop with the ability to iterate to the host route from the private network route; the forwarding module 46 is connected to the determining module 44, and configured to forward the packet according to the determined next hop.
  • FIG. 5 is a structural block diagram of a determining module 44 in a message forwarding device according to an embodiment of the present invention. As shown in FIG. 5, the determining module 44 includes a first selecting unit 52, a determining unit 54, and a determining unit 56. The determination module 44 is described.
  • the first selecting unit 52 is configured to select a next hop from the private network route according to the predetermined routing policy; the determining unit 54 is connected to the first selecting unit 52, and is configured to determine whether the destination address is stored in the public network routing table. a host routing entry matching the selected next hop address and having a mask length of 32 bits; the determining unit 56 is connected to the determining unit 54 and configured to determine the selection if the determination result of the determining unit 54 is YES.
  • the next hop has the ability to iterate to the host route.
  • FIG. 6 is a block diagram showing a preferred structure of the determining module 44 in the message forwarding device according to the embodiment of the present invention. As shown in FIG. 6, the determining module 44 includes a second selecting unit 62 in addition to all the units shown in FIG. The determination module 44 will be described below.
  • the second selection unit 62 is connected to the above-mentioned judging unit 54, and is configured to reselect the next hop of the private network route if the judgment result of the judging unit 54 is NO.
  • FIG. 7 is a block diagram of a preferred structure of a message forwarding device according to an embodiment of the present invention. As shown in FIG. 7, the device includes a tag module 72 and a notification module 74 in addition to all the modules shown in FIG. The device is described.
  • the marking module 72 is connected to the determining module 44, and is configured to mark the private network route as an invalid private network route when there is no next hop with the ability to iterate to the host route in the private network route; the notification module 74, Connected to the above-mentioned tagging module 72, configured to advertise the revocation message for revoking the invalid private network route to the upstream device, wherein the revocation message is used by the upstream device to revoke the invalid private network route and reselect the retransmission report The private network route of the text.
  • the foregoing predetermined routing policy includes at least one of: selecting a next hop corresponding to a minimum cost of a cost corresponding to a next hop included in a private network routing table; and selecting a private network route The next hop corresponding to the highest LOCAL_PREF of the local priority LOCAL_PREF corresponding to the next hop included in the table; selecting the next hop corresponding to the smallest ORIGINATOR_ID of the router identifier ORIGINATOR_ID corresponding to the next hop included in the private network routing table; The next hop corresponding to the maximum Preferred_value of the preferred preferred value Preferred_value corresponding to the next hop included in the private network routing table.
  • FIG. 8 is a structural block diagram of a service provider network edge PE device according to an embodiment of the present invention. As shown in FIG. 8, the PE device 82 includes the message forwarding device 84 of any of the above.
  • the present invention is described below by taking the packet forwarding in the L3vpn networking environment as an example.
  • 10.2.3.0 generally represents a network segment. At least two devices are connected to the network segment, but cannot represent a PE device. As shown in Figure 2, if the network segment overlaps with the path to PE1, the lsp formed on the network segment will be terminated by the previous device P1 of the PE2 device. It is not a PE to PE tunnel and cannot be carried as a private network. Used by the tunnel. Only the local host route formed by the interface address of the 32-bit mask can uniquely identify a device. The lsp formed by this route can be end-to-end.
  • the route iteration result when the public network lsp is found according to the next hop iteration of the BGP route, the route iteration result must be an LSP formed by a host route with a mask length of 32 bits. Otherwise, the BGP protocol searches for The other next hop continues with an iterative attempt, marking the route as invalid if it has not been iterated. Let the network reconverge.
  • FIG. 9 is a block diagram showing the structure of a module in a PE device according to an embodiment of the present invention.
  • the PE device includes an OAM configuration module 92 and a BGP protocol module 94 (corresponding to the foregoing obtaining module 42 and the first selecting unit 52).
  • the second selection unit 62, the marking module 72, the notification module 74, the receiving module 76), the support module 96 (corresponding to the above-mentioned judging unit 54, the determining unit 56) and the forwarding module 46, the arrows in the figure indicate possible data flow directions.
  • the OAM configuration module 92 is configured to use the next-hop host-only command to indicate that the iteration result of the BGP private network route in the L3vpn instance must be the host route.
  • the result of the configuration is transmitted to the support module 96 through the arrow 1 in FIG. 9.
  • the support module 96 saves the configuration for determining whether the route delivered by the BGP needs to be iterated to the host route.
  • the BGP protocol module 94 receives the BGP route from the BGP neighbor, and sends the BGP route to the support module 96 through the arrow 2 in FIG. 9.
  • the support module 96 performs the iterative processing of the next hop according to the next-hop host-only configuration. Then, the binding lsp is sent to the forwarding module 46 through the arrow 4. If the host route is not iterated, the BGP protocol module 94 is advertised by the arrow 3. If the BGP protocol module 94 finds that there are other valid next hops, the other next hop is selected. The hopping support module 96 continues the above process. If there is no other valid next hop, the BGP protocol module 94 marks the route as invalid.
  • a method for effectively controlling the next hop of the BGP route of the private network in the L3vpn network environment is provided, and the method is applied to the service provider network edge device PE in the L3vpn networking environment.
  • the PE enables the route advertisement protocol and label distribution protocol such as BGP, IGP, and LDP, and performs the following steps:
  • the BGP protocol module 94 receives the private network route advertised by all the neighbors, and selects an "optimal" next hop to be sent to the support module 96 according to the routing policy. The position of the support module 96.
  • the support module 96 stores the BGP route delivered by the BGP. First, the next hop of the route is matched in the public network routing table for the longest match. The longest match is to first find the prefix address exactly matches, and the mask length is 32 ( The route whose mask is 255.255.255.255), if yes, indicates that the host route is matched; if not, it continues to search for the network segment route, and this network segment can contain the next hop address to be matched, for example, the network segment route 10.3.2.0 The match contains the host address 10.3.2.1).
  • the route is used for forwarding according to the matching result; if it does not match the host route, the method further includes:
  • the support module 96 sends the BGP route and the next hop of the private network to the BGP protocol module 94, and tells the BGP protocol module 94 that the next hop does not match the host route, and further includes:
  • the F.BGP protocol module 94 After receiving the advertisement of the support module 96, the F.BGP protocol module 94 marks the next hop as invalid, and checks whether the route has other valid next hops other than the next hop, if any, then The next hop of the "second best" is sent to the support module 96 to continue the above process. If there is no remaining next hop, it may also include:
  • the G.BGP protocol module 94 marks the route as an invalid private network route, and advertises the revocation message for revoking the invalid private network route to the upstream device.
  • the upstream device can be a user edge (Customer Edge, CE for short). )Internet equipment).
  • the CE adjusts the route according to the above revocation message.
  • FIG. 10 is a flowchart of a method for controlling the reachability of a BGP route of a private network BGP route according to an embodiment of the present invention. The method is applied to a PE in an L3vpn network, such as PE1 in FIG. 1 and FIG.
  • the method includes the following steps:
  • Step S1002 Add a configuration next-hop host-only to the instance of L3vpn. Indicates this private network When BGP routes are iterated, they must be iterated to the host route, otherwise it is invalid.
  • step S1004 the BGP protocol module 94 receives the private network route advertised by all the neighbors, and sends a route with multiple next hops to the support module 96 according to the routing policy.
  • the next hop cost is the lowest
  • the local priority (LOCAL_PREF) is the highest;
  • the ORIGINATOR_ID is the smallest
  • Preferred preferred value is the largest
  • step S1006 the support module 96 saves the route delivered by the BGP protocol module 94, and takes the next hop of the route to perform the longest matching public network route.
  • the longest match of the address is to first find the host route entry whose destination address matches the address exactly, and the mask length is 32 bits (the mask is 255.255.255.255). If not, the network segment route is searched in turn. It is necessary to ensure that the network segment address can contain the address to be matched.
  • the network segment address of 10.3.2.0 can contain the address 10.3.2.1, and 10.3.0.0 can contain 10.3.2.0 and 10.3.2.1.
  • the purpose of matching the public network route is to find the lsp of the public network.
  • the public network lsp is the public network tunnel. It can be used as the bearer of the private network route. It is formed by the continuous label allocated by the LDP protocol for the public network route. Generally, the public network route first forms a public network path. LDP then allocates consecutive labels for the public network path to form lsp.
  • the lsp tail is the source of the public network route. If the public network route is a network segment, the tail of the lsp is also a network segment. Can not determine a device, if the public network route is formed by a 32-bit host address, the tail of the lsp is this host.
  • step S1008 it is determined whether the longest matching public network route is a 32-bit mask host route. If yes, it indicates that it has been matched, and the lsp can be directly found from the host route, and the private network packet is transparently transmitted to the bearer. Step S1016, if not, executing step S1010:
  • step S1010 the support module 96 sends the route and the next hop to the BGP protocol module 94, and tells the BGP protocol module 94 that the next hop does not match the host route, and step S1012 is performed:
  • Step S1012 After receiving the advertisement, the BGP protocol module 94 marks the next hop of the route as invalid, and checks whether the route has other valid next hops other than the next hop, and if so, continues to find other valid routes. The next hop is sent to the support module 96, and the process proceeds to step S1006. If not, the process proceeds to step S1014.
  • the BGP protocol module 94 has no other valid next hops, indicating that the route is no longer intentional.
  • the upstream device is requested to revoke the route.
  • the upstream PE is a CE device (or possibly a PE device). If the CE device is dual-homed to the PE device, the CE can forward the packet to the PE from the PE after receiving the revoke message from the PE.
  • Step S1016 Apply the matched result to forward the packet.
  • FIG 11 is a flow chart of packet forwarding according to the first embodiment of the present invention.
  • the L3vpn simple networking is configured with IGP and LDP on PE1, P1, and PE2, and the interface address of the fei_2 interface on P1 is 10.3. 4.1/24, the interface address of fei_1 on PE2 is 10.3.4.2/24.
  • This address will form the local network segment route 10.3.4.0 on P1 and PE2.
  • the IGP protocol will advertise this route to PE1, thus PE1--- P1---PE2 forms a route forwarding path, and then LDP assigns a label to the routing path. Since the source of this route is a network segment, from the PE1 side, P1 is the source of the route, so the lsp path only Established between PE1---P1, assumed to be lsp1.
  • the BGP remote next hop address is 10.3.4.2, which enables it to advertise private network routes.
  • PE1, P2, and PE3 are configured with IGP and LDP. The difference is that we configure a loopback logical interface on PE3 with the address 3.3.3.9/32. The mask of this address is 32 bits. To form a network segment route, there can be only one local host route 3.3.3.9. Through IGP and LDP protocols, PE1---P2---PE3 establishes an lsp2 that depends on route 3.3.3.9.
  • the BGP remote next hop address is enabled to be 3.3.3.9, so that it can advertise the BGP private network route.
  • a BGP private network route on the CE2 side has two next hops 10.3.4.2 and 3.3.3.9.
  • Step S1004 is performed, and it is assumed that the BGP protocol module 94 is first sent to the support module 96 to include the route with the next hop of 10.3.4.2.
  • Step S1006 is performed, and the support module 96 takes the next hop 10.2.3.2 to perform the longest matching operation, and finds that the search is found.
  • the route is 10.4.3.0 and there is no match to the host route.
  • step S1010 the support module 96 sends the route and the next hop to the BGP protocol module 94, and the process proceeds to step S1012.
  • the BGP protocol module 94 finds that there is another next hop 3.3.3.9, and sends the next hop to the support module.
  • S1006 is executed to perform the longest matching operation. This time, the host route 3.3.3.9 can be matched, and step S1016 is continued to complete the selection of the outer tunnel.
  • the first embodiment shows that the device can select one next hop that can be iterated to the host route in the next hop of multiple BGPs as the final forwarding.
  • Figure 12 is a flow chart of packet forwarding according to the second embodiment of the present invention.
  • the L3vpn network is dual-homed to PE1 and PE4, and CE2 is dual-homed to PE2 and PE3, and between PE1 and PE2.
  • lsp1 is generated between PE1 and P1.
  • the BGP peer relationship is established between PE1 and PE2.
  • the BGP remote next hop address is 10.3.4.2. routing.
  • BGP receives a private network route Rt1 on the CE2 side, and its next hop is 10.3.4.2.
  • Step 512 is performed.
  • the BGP protocol module 94 first delivers the next hop included in the support module 96.
  • the route of 10.3.4.2 is executed in step S1006.
  • the support module 96 takes the next hop 10.2.3.2 to perform the longest matching operation, and finds that the found route is 10.4.3.0, and does not match the host route.
  • step S1010 the support module 96 sends the route and the next hop to the BGP protocol module 94, and performs step S1012. The route no longer has other valid next hops. Step S1014 is performed, and the BGP protocol module 94 marks the route as invalid. The revocation message for revoking the route is then advertised to CE1.
  • BGP also receives a private network route Rt1 on the CE2 side, whose next hop is 3.3.3.9, and performs step S1004.
  • the next hop that the BGP protocol module 94 sends to the support module 96 is 3.3.
  • the route of .3.9 is executed.
  • the support module 96 takes the next hop 3.3.3.9 to perform the longest matching operation, and finds that the found route is 3.3.3.9, matches the host route, and performs step S1016 for forwarding processing.
  • the protocol On the BGP route on CE1, after receiving the revocation message of PE1 to revoke the above-mentioned route, the protocol will prefer PE4 as the next hop router, which can replace the failed next hop in time and complete the convergence of the route.
  • This embodiment shows that in the environment where the CE is dual-homed to the PE, the CE can select the PE, provided that the BGP route received by the PE can iterate to the host route.
  • the support module 96 only performs the longest matching iteration, and may be iterative to the network route, causing the forwarding failure.
  • the foregoing embodiment of the present invention can be configured to ensure that the iteration can only be iterated to the host route. If there is no iteration, the BGP can also be notified to perform the next hop reselection, and the lsp can be performed to the host route by the maximum possible iteration. Forward the tunnel.
  • modules or steps of the present invention described above can be implemented by a general-purpose computing device that can be centralized on a single computing device or distributed across a network of multiple computing devices. Alternatively, they may be implemented by program code executable by the computing device such that they may be stored in the storage device by the computing device and, in some cases, may be different from the order herein.
  • the steps shown or described are performed, or they are separately fabricated into individual integrated circuit modules, or a plurality of modules or steps thereof are fabricated as a single integrated circuit module.
  • the invention is not limited to any specific combination of hardware and software.
  • the packet forwarding method and apparatus and the service provider network edge PE device provided by the embodiments of the present invention have the following beneficial effects: the problem of high packet loss rate when forwarding packets in the related art is solved. In turn, the effect of reducing the message loss rate is achieved.

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明提供了一种报文转发方法、装置及服务提供商网络边缘PE设备,其中,该方法包括:获取邻居服务提供商网络边缘PE设备通告的用于转发报文的私网路由,其中,该私网路由具备两个或两个以上的下一跳;从上述私网路由中确定具备迭代到主机路由的能力的下一跳;依据确定的上述下一跳转发报文,通过本发明,解决了相关技术中存在的转发报文时,报文丢失率高的问题,进而达到了降低报文丢失率的效果。

Description

报文转发方法、装置及服务提供商网络边缘PE设备 技术领域
本发明涉及通信领域,具体而言,涉及一种报文转发方法、装置及服务提供商网络边缘PE设备。
背景技术
随着科技的发展,报文转发技术的应用越来越广泛,下面以L3虚拟专用网络(Virtual Private Network,简称为vpn)中的报文转发为例进行说明:图1是相关技术中的L3vpn私网路由迭代到网段路由形成的标签交换路径(Lable Switched Path,简称为lsp)转发正确的示意图,如图1所示,服务提供商网络边缘设备(Provider Edge,简称为PE)1和PE2形成边界网关协议(Border Gateway Protocol,简称为BGP)邻居,PE1、P1、PE2上使能内部网关协议(Interior Gateway Protocol,简称为IGP)和标签分配协议(Label Distribute Protocol,简称为LDP)来通告公网路由和为公网路由分配标签形成lsp。
私网路由由BGP协议通告,私网路由的下一跳为BGP协议使能的BGP邻居的一个接口的地址。假设PE1上接收到的私网BGP路由的下一跳为邻居PE2上接口Fei_2的IP地址10.3.4.1,此下一跳为远端的下一跳(不与本设备直连的下一跳为远端下一跳),报文不能直达,必须有公网的lsp存在作为承载隧道才能到达PE2。
设备会根据下一跳地址10.3.4.1,在设备PE1进行最长匹配寻找外层公网路由。由于Fei_2的IP地址10.3.4.1为24位掩码的,网络地址就是10.3.4.0,PE2上会形成本地网段路由10.3.4.0,经过IGP协议通告后,在PE1会有10.3.4.0这个公网路由存在,根据下一跳10.3.4.1最长匹配的公网路由是10.3.4.0,且LDP协议会为10.3.4.0这个路由前缀分配标签,从而在PE1头和PE2尾之间形成连续的lsp,如图1中虚线所示,它可以作为BGP路由的承载隧道来使BGP路由可达,完成私网报文的转发。
上述情况是一个比较理想的情况,有时也是可用的,但是不可靠。
图2是相关技术中的L3vpn私网路由迭代到网段路由形成的lsp转发错误的示意图,如图2所示,P1的fei_2接口和PE2的fei_1接口直连,接口地址分别是10.2.3.1/24(地址/掩码长度)和10.2.3.2/24,假设PE1上接收到的BGP路由的下一跳为BGP邻居PE2上接口Fei_1的IP地址10.2.3.2,由于P1和PE2是直连的,P1上会有本地网段路由10.2.3.0,经过IGP协议通告后,在PE1会有10.2.3.0这个公网路由存在,而且LDP协议会为这个路由前缀分配标签形成公网lsp转发隧道,根据上述的迭代原则,私网 路由会迭代到这个lsp进行转发。可是,对PE1来说10.2.3.0是由P1产生的,这个lsp的尾是P1,不是PE2,那私网报文若使用这个lsp作为承载,只能将报文运载到P1,不能到边缘设备PE2,势必造成报文的丢失。
更为严重的是,在迭代到这个lsp转发错误的时候,BGP协议并不知晓,不会进行路由的重新下发或撤销,造成一个转发不通的BGP路由长期用于报文的转发,无法实现BGP路由的快速收敛,影响报文转发。
针对相关技术中存在的转发报文时,报文丢失率高的问题,目前尚未提出有效的解决方案。
发明内容
本发明提供了一种报文转发方法、装置及服务提供商网络边缘PE设备,以至少解决相关技术中存在的转发报文时,报文丢失率高的问题。
根据本发明的一个方面,提供了一种报文转发方法,包括:获取邻居服务提供商网络边缘PE设备通告的用于转发报文的私网路由,其中,所述私网路由具备两个或两个以上的下一跳;从所述私网路由中确定具备迭代到主机路由的能力的下一跳;依据确定的所述下一跳转发报文。
可选地,从所述私网路由中确定具备迭代到主机路由的能力的所述下一跳包括:按照预定路由选择策略从所述私网路由中选择一个下一跳;判断公网路由表中是否存储有目的地址与选择的所述下一跳的地址匹配,且掩码长度为32位的主机路由条目;在判断结果为是的情况下,确定选择的所述下一跳具备迭代到所述主机路由的能力。
可选地,所述方法还包括:在判断结果为否的情况下,重新选择所述私网路由的下一跳。
可选地,当所述私网路由中不存在具备迭代到所述主机路由的能力的下一跳时,所述方法还包括:将所述私网路由标记为无效的私网路由;将用于撤销所述无效的私网路由的撤销消息通告给上游设备,其中,所述撤销消息用于所述上游设备撤销所述无效的私网路由并重新选择用于转发所述报文的私网路由。
可选地,所述预定路由选择策略包括以下至少之一:选择所述私网路由中所包括的下一跳对应的花费值Cost中最小Cost对应的下一跳;选择所述私网路由中所包括的下一跳对应的本地优先级LOCAL_PREF中最高LOCAL_PREF对应的下一跳;选择所述私网路由中所包括的下一跳对应的路由器标识ORIGINATOR_ID中最小ORIGINATOR_ID对应的下一跳;选择所述私网路由中所包括的下一跳对应的优选首 选值Preferred_value中最大Preferred_value对应的下一跳。
根据本发明的另一方面,提供了一种报文转发装置,包括:获取模块,设置为获取邻居服务提供商网络边缘PE设备通告的用于转发报文的私网路由,其中,所述私网路由具备两个或两个以上的下一跳;确定模块,设置为从所述私网路由中确定具备迭代到主机路由的能力的下一跳;转发模块,设置为依据确定的所述下一跳转发报文。
可选地,所述确定模块包括:第一选择单元,设置为按照预定路由选择策略从所述私网路由中选择一个下一跳;判断单元,设置为判断公网路由表中是否存储有目的地址与选择的所述下一跳的地址匹配,且掩码长度为32位的主机路由条目;确定单元,设置为在所述判断单元的判断结果为是的情况下,确定选择的所述下一跳具备迭代到所述主机路由的能力。
可选地,所述确定模块还包括:第二选择单元,设置为在所述判断单元的判断结果为否的情况下,重新选择所述私网路由的下一跳。
可选地,所述装置还包括:标记模块,设置为当所述私网路由中不存在具备迭代到所述主机路由的能力的下一跳时,将所述私网路由标记为无效的私网路由;通告模块,设置为将用于撤销所述无效的私网路由的撤销消息通告给上游设备,其中,所述撤销消息用于所述上游设备撤销所述无效的私网路由并重新选择用于转发所述报文的私网路由。
可选地,所述预定路由选择策略包括以下至少之一:选择所述私网路由中所包括的下一跳对应的花费值Cost中最小Cost对应的下一跳;选择所述私网路由中所包括的下一跳对应的本地优先级LOCAL_PREF中最高LOCAL_PREF对应的下一跳;选择所述私网路由中所包括的下一跳对应的路由器标识ORIGINATOR_ID中最小ORIGINATOR_ID对应的下一跳;选择所述私网路由中所包括的下一跳对应的优选首选值Preferred_value中最大Preferred_value对应的下一跳。
根据本发明的另一方面,提供了一种服务提供商网络边缘PE设备,包括上述任一项所述的装置。
通过本发明,采用获取邻居服务提供商网络边缘PE设备通告的用于转发报文的私网路由,其中,所述私网路由具备两个或两个以上的下一跳;从所述私网路由中确定具备迭代到主机路由的能力的下一跳;依据确定的所述下一跳转发报文,解决了相关技术中存在的转发报文时,报文丢失率高的问题,进而达到了降低报文丢失率的效果。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是相关技术中的L3vpn私网路由迭代到网段路由形成的lsp转发正确的示意图;
图2是相关技术中的L3vpn私网路由迭代到网段路由形成的lsp转发错误的示意图;
图3是根据本发明实施例的报文转发方法的流程图;
图4是根据本发明实施例的报文转发装置的结构框图;
图5是根据本发明实施例的报文转发装置中确定模块44的结构框图;
图6是根据本发明实施例的报文转发装置中确定模块44的优选结构框图;
图7是根据本发明实施例的报文转发装置的优选结构框图;
图8是根据本发明实施例的服务提供商网络边缘PE设备的结构框图;
图9是根据本发明实施例的PE设备中的模块结构框图;
图10是根据本发明实施例的私网BGP路由下一跳有效可达的控制方法流程图;
图11是根据本发明实施例一的报文转发的流程图;
图12是根据本发明实施例二的报文转发的流程图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
在本实施例中提供了一种报文转发方法,图3是根据本发明实施例的报文转发方法的流程图,如图3所示,该流程包括如下步骤:
步骤S302,获取邻居服务提供商网络边缘PE设备通告的用于转发报文的私网路由,其中,该私网路由具备两个或两个以上的下一跳;
步骤S304,从上述私网路由中确定具备迭代到主机路由的能力的下一跳;
步骤S306,依据确定的上述下一跳转发报文。
通过上述步骤,在进行报文转发时,确定能够迭代到主机路由的下一跳进行报文转发,可以保证将报文转发至确定的设备,降低报文丢失率,解决了相关技术中存在的转发报文时,报文丢失率高的问题,进而达到了降低报文丢失率的效果。
在确定具备迭代到主机路由的能力的下一跳时,可以有多种确定方法,在一个可选的实施例中,从上述私网路由中确定具备迭代到主机路由的能力的下一跳包括:按照预定路由选择策略从私网路由中选择一个下一跳;判断公网路由表中是否存储有目的地址与选择的下一跳的地址匹配,且掩码长度为32位的主机路由条目;在判断结果为是的情况下,确定选择的下一跳具备迭代到主机路由的能力。在确定了下一跳之后,便可以利用该下一跳进行报文转发。
在一个可选的实施例中,当公网路由表中未存储有目的地址与选择的下一跳的地址匹配,且掩码长度为32位的主机路由条目时,可以确定上述选择的下一跳不能够迭代到主机路由,在该情况下,可以重新选择私网路由的下一跳,继续对该下一跳进行判断,直到找到能够迭代到主机路由的下一跳为止。
当上述私网路由中不存在具备迭代到主机路由的能力的下一跳时,说明该私网路由是无效的,此时,需要重新选择新的私网路由进行报文的转发,在一个可选的实施例中,当上述私网路由中不存在具备迭代到主机路由的能力的下一跳时,还将该私网路由标记为无效的私网路由;将用于撤销该无效的私网路由的撤销消息通告给上游设备,其中,该撤销消息用于上游设备撤销上述无效的私网路由并重新选择用于转发报文的私网路由。
上述的预定路由选择策略可以至少包括以下至少之一:选择私网路由表中所包括的下一跳对应的花费值Cost中最小Cost对应的下一跳;选择私网路由表中所包括的下一跳对应的本地优先级LOCAL_PREF中最高LOCAL_PREF对应的下一跳;选择私网路由表中所包括的下一跳对应的路由器标识ORIGINATOR_ID中最小ORIGINATOR_ID对应的下一跳;选择私网路由表中所包括的下一跳对应的优选首选值Preferred_value中最大Preferred_value对应的下一跳。
需要说明的是,上述私网路由也可以只具备一个下一跳,当确定该下一跳能够迭代到主机路由时,直接利用该下一跳转发报文,当确定该下一跳不能够迭代到主机路由时,说明该私网路由无效,可以首先将该私网路由标记为无效,再将用于撤销该无效的私网路由的撤销消息通告给上游设备,由上游设备撤销该无效的私网路由,再由该上游设备选择新的用于转发报文的私网路由。
在本实施例中还提供了一种报文转发装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定 功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图4是根据本发明实施例的报文转发装置的结构框图,如图4所示,该装置包括获取模块42、确定模块44和转发模块46,下面对该装置进行说明。
获取模块42,设置为获取邻居服务提供商网络边缘PE设备通告的用于转发报文的私网路由,其中,该私网路由具备两个或两个以上的下一跳;确定模块44,连接至上述获取模块42,设置为从私网路由中确定具备迭代到主机路由的能力的下一跳;转发模块46,连接至上述确定模块44,设置为依据确定的下一跳转发报文。
图5是根据本发明实施例的报文转发装置中确定模块44的结构框图,如图5所示,该确定模块44包括第一选择单元52、判断单元54和确定单元56,下面对该确定模块44进行说明。
第一选择单元52,设置为按照预定路由选择策略从私网路由中选择一个下一跳;判断单元54,连接至上述第一选择单元52,设置为判断公网路由表中是否存储有目的地址与选择的下一跳的地址匹配,且掩码长度为32位的主机路由条目;确定单元56,连接至上述判断单元54,设置为在判断单元54的判断结果为是的情况下,确定选择的下一跳具备迭代到主机路由的能力。
图6是根据本发明实施例的报文转发装置中确定模块44的优选结构框图,如图6所示,该确定模块44除包括图5所示的所有单元外,还包括第二选择单元62,下面对该确定模块44进行说明。
第二选择单元62,连接至上述判断单元54,设置为在判断单元54的判断结果为否的情况下,重新选择私网路由的下一跳。
图7是根据本发明实施例的报文转发装置的优选结构框图,如图7所示,该装置除包括图4所示的所有模块外,还包括标记模块72和通告模块74,下面对该装置进行说明。
标记模块72,连接至上述确定模块44,设置为当私网路由中不存在具备迭代到主机路由的能力的下一跳时,将该私网路由标记为无效的私网路由;通告模块74,连接至上述标记模块72,设置为将用于撤销该无效的私网路由的撤销消息通告给上游设备,其中,该撤销消息用于上游设备撤销上述无效的私网路由并重新选择用于转发报文的私网路由。
在一个可选的实施例中,上述预定路由选择策略包括以下至少之一:选择私网路由表中所包括的下一跳对应的花费值Cost中最小Cost对应的下一跳;选择私网路由 表中所包括的下一跳对应的本地优先级LOCAL_PREF中最高LOCAL_PREF对应的下一跳;选择私网路由表中所包括的下一跳对应的路由器标识ORIGINATOR_ID中最小ORIGINATOR_ID对应的下一跳;选择私网路由表中所包括的下一跳对应的优选首选值Preferred_value中最大Preferred_value对应的下一跳。
图8是根据本发明实施例的服务提供商网络边缘PE设备的结构框图,如图8所示,该PE设备82包括上述任一项的报文转发装置84。
下面以L3vpn组网环境下的报文转发为例对本发明进行说明。
通过上述的分析,可知,造成报文转发失败的根本原因是网段路由,如10.2.3.0它一般代表一个网段,网段上至少连着两个设备,而不能代表一个PE设备。如图2所示,若这个网段与到PE1的路径重合,那这个网段形成的lsp就会到达PE2设备的前一个设备P1终止,不是一个PE到PE的隧道,是不能作为私网承载隧道使用的。只有32位掩码的接口地址形成的本地主机路由才能唯一确定一个设备,这个路由形成的lsp才能是端到端的。
在本发明实施例中,在根据BGP路由的下一跳迭代公网路由寻找公网lsp的时候,路由迭代结果必须是一个掩码长度为32位的主机路由形成的LSP,否则,BGP协议寻找其它的下一跳继续进行迭代尝试,若一直没有能迭代到,则将该路由标记为无效。让网络重新收敛。
图9是根据本发明实施例的PE设备中的模块结构框图,如图9所示,该PE设备包括OAM配置模块92,BGP协议模块94(相当于上述的获取模块42、第一选择单元52、第二选择单元62、标记模块72、通告模块74、接收模块76),支撑模块96(相当于上述的判断单元54、确定单元56)和转发模块46,图中箭头表示可能的数据流向。
OAM配置模块92设置为配置命令next-hop host-only,表示L3vpn实例下的BGP私网路由的迭代结果必须为主机路由。
配置的结果通过图9中箭头1传递到支撑模块96,支撑模块96保存这个配置,用于后续判断BGP下发的路由是否需要迭代到主机路由。
BGP协议模块94从BGP邻居接收BGP路由,择优通过图9中箭头2发送到支撑模块96,支撑模块96根据next-hop host-only配置,进行下一跳的迭代处理,若迭代到主机路由,则绑定lsp通过箭头4下发转发模块46,若没有迭代到主机路由,则通过箭头3通告BGP协议模块94,BGP协议模块94若发现还有其它有效的下一跳,则选择其它下一跳下发支撑模块96继续上述流程,若没有其它有效下一跳了,则BGP协议模块94将该路由标记为无效。
在本发明实施例中,还提供了一种L3vpn组网环境下,私网BGP路由下一跳有效可达的控制方法,该方法应用于L3vpn组网环境中服务提供商网络边缘设备PE,该PE使能了BGP协议,IGP协议、LDP协议等路由通告协议和标签分配协议,并执行以下步骤:
A.L3vpn的实例下增加一个配置next-hop host-only。表示此私网下的BGP路由进行迭代时,必须迭代到主机路由,否则此下一跳无效。
B.BGP协议模块94接收所有邻居通告的私网路由保存,对具有多个下一跳的路由,根据路由选择策略选择一个“最优”的下一跳下发到支撑模块96,如图9支撑模块96的位置。
C.支撑模块96存储BGP下发的BGP路由,首先拿此路由的下一跳在公网路由表中进行最长匹配(最长匹配就是,首先寻找前缀地址完全匹配,掩码长度为32(掩码是255.255.255.255)的路由,若有,说明匹配到了主机路由;若无,继续寻找网段路由,且此网段能包含所要匹配的下一跳地址,例如网段路由10.3.2.0就匹配包含主机地址10.3.2.1)。
D.若上述的过程匹配到了主机路由且主机路由绑定了lsp,则路由根据匹配结果用于转发;若没有匹配到主机路由,进一步包括:
E.支撑模块96把此私网BGP路由及其下一跳打包发送BGP协议模块94,并告诉BGP协议模块94此下一跳匹配不到主机路由,进一步包括:
F.BGP协议模块94收到支撑模块96的通告后,把此下一跳标记为无效,并检查本路由是否有除了上述下一跳之外的其它有效下一跳,若有,则把这个“次优”的下一跳下发到支撑模块96,继续上述过程,若没有剩余的下一跳了,还可以包括:
G.BGP协议模块94将这个路由标记为无效的私网路由,并把用于撤销该无效的私网路由的撤销消息通告给上游设备(该上游设备可以为用户边缘(Customer Edge,简称为CE)网络设备)。
H.当此PE作为L3vpn网络中用户边缘网络设备CE的众多归属中的一个归属时,CE会根据上述撤销消息调整路由。
图10是根据本发明实施例的私网BGP路由下一跳有效可达的控制方法流程图,其中,该方法应用于L3vpn组网中的PE,如图1和图2中的PE1。
如图10所示,该方法包括如下步骤:
步骤S1002,L3vpn的实例下增加一个配置next-hop host-only。表示此私网下的 BGP路由进行迭代时,必须迭代到主机路由,否则无效。
步骤S1004,BGP协议模块94接收所有邻居通告的私网路由保存,对具有多个下一跳的路由,根据路由选择策略选择一个“最优”的下一跳下发到支撑模块96。
其中,“最优”的路由的选择一般可以采用以下一些原则:
优选下一跳花费(Cost)值最低的;
优选本地优先级(LOCAL_PREF)最高的;
优选ORIGINATOR_ID最小的;
优选首选值(Preferred-value)最大的;
……
步骤S1006,支撑模块96保存BGP协议模块94下发的路由,并拿路由的下一跳进行最长匹配公网路由。
地址最长匹配,就是在路由表中首先寻找目的地址与本地址完全匹配,且掩码长度是32位(掩码是255.255.255.255)的主机路由条目,若没有,再依次寻找网段路由,需保证网段地址能包含要匹配的地址,如10.3.2.0这个网段地址就能包含地址10.3.2.1,10.3.0.0就能包含10.3.2.0和10.3.2.1。
匹配公网路由的目的是寻找公网的lsp,公网lsp就是公网的隧道,可作为私网路由的承载,是由LDP协议为公网路由分配的连续的标签形成的。一般是公网路由先形成公网路径,LDP再为这个公网路径分配连续标签形成lsp,lsp尾就是这个公网路由的源,若公网路由是个网段,那lsp的尾也是一个网段,不能确定一个设备,若公网路由是个32位主机地址形成的,那lsp的尾就是这个主机。
步骤S1008,判断最长匹配的公网路由是否是32位掩码的主机路由,若是,说明已经匹配到了,可直接从主机路由再找到lsp,作为承载,实现私网报文透传,转至步骤S1016,若没有,则执行步骤S1010:
步骤S1010,支撑模块96把此路由及其下一跳发送给BGP协议模块94,并告诉BGP协议模块94此下一跳匹配不到主机路由,执行步骤S1012:
步骤S1012,BGP协议模块94收到通告后,把此路由下一跳标记为无效,检查本路由是否有除了上述下一跳之外的其它有效下一跳,若有,继续寻找路由的其它有效下一跳下发至支撑模块96,继续执行步骤S1006,若无,则执行步骤S1014。
步骤S1014,BGP协议模块94没有其它有效的下一跳了,说明这个路由不再有意 义,就向上游通告请求撤销这个路由,一般PE上游就是CE设备(也有可能是PE设备)。若CE设备双归到PE设备,CE从一个PE上接收到用于撤销上述路由的撤销消息后,还可以通过收敛,将有效下一跳指向另一个PE,从这个PE上转发报文。
步骤S1016,应用匹配的结果进行报文的转发。
下面默认以L3vpn组网中的PE执行图10所示的流程,通过两个例子的实施来对这个流程进行描述:
实施例一
图11是根据本发明实施例一的报文转发的流程图,如图11所示的L3vpn简单组网,PE1、P1和PE2上配置有IGP和LDP,P1上的fei_2口配置接口地址10.3.4.1/24,PE2上的fei_1的接口地址为10.3.4.2/24,这个地址会在P1和PE2上形成本地网段路由10.3.4.0,IGP协议会把这个路由通告给PE1,从而PE1---P1---PE2之间形成路由转发路径,然后LDP再为这个路由路径分配标签,由于这个路由的源是一个网段,从PE1侧来说,P1就是这个路由的源了,所以lsp路径只在PE1---P1之间建立,假设为lsp1。
然后,PE1和PE2之间建立BGP邻居,BGP的远端下一跳地址使能为10.3.4.2,使之能通告BGP私网路由。
同理,PE1、P2和PE3上配置有IGP和LDP,与上述不同的是,我们在PE3上配置一个loopback逻辑接口,地址为3.3.3.9/32,这个地址的掩码是32位的,不能形成网段路由,只能有一个本地主机路由3.3.3.9,通过IGP和LDP协议,PE1---P2---PE3之间建立了一个依赖于路由3.3.3.9的lsp2。
然后,PE1和PE3之间建立BGP邻居,BGP的远端下一跳地址使能为3.3.3.9,使之能通告BGP私网路由。
上述组网完成后,在PE1上,对CE2侧的一个BGP私网路由,就会有两个下一跳10.3.4.2和3.3.3.9。
执行步骤S1004,假设BGP协议模块94首先下发给支撑模块96包含下一跳为10.3.4.2的路由,执行步骤S1006,支撑模块96拿下一跳10.3.4.2进行最长匹配操作,发现寻找到的路由为10.4.3.0,没有匹配到主机路由。
执行步骤S1010,支撑模块96把路由及下一跳发送给BGP协议模块94,执行步骤S1012,BGP协议模块94发现还有另一个下一跳3.3.3.9,把这个下一跳下发给支撑模块96后,执行S1006,进行最长匹配操作,这次可以匹配到主机路由3.3.3.9,继续执行步骤S1016,完成外层隧道的选择。
至此,完成实施例一的描述,实施例一说明本发明能使设备在多个BGP的下一跳中,选择一个能迭代到主机路由的下一跳作为最终的转发。
实施例二
图12是根据本发明实施例二的报文转发的流程图,如图12所示的L3vpn组网,CE1双归到PE1和PE4,CE2双归到PE2和PE3,PE1和PE2之间与实施例一相同,PE1和P1之间生成依赖于路由10.3.4.0的lsp1,PE1和PE2之间建立BGP邻居,BGP的远端下一跳地址使能为10.3.4.2,使之能通告BGP私网路由。
PE4和PE3之间使能IGP和LDP,PE4---P2---PE3之间建立依赖于主机路由3.3.3.9的lsp2,PE4和PE3之间建立BGP邻居,BGP的远端下一跳地址使能为3.3.3.9,使之能通告BGP私网路由。
在上述环境基础上,PE1上,BGP会接收一个CE2侧的私网路由Rt1,其下一跳为10.3.4.2,执行步骤102,BGP协议模块94首先下发支撑模块96包含的下一跳为10.3.4.2的路由,执行步骤S1006,支撑模块96拿下一跳10.3.4.2进行最长匹配操作,发现寻找到的路由为10.4.3.0,没有匹配到主机路由。
执行步骤S1010,支撑模块96把路由及下一跳发送给BGP协议模块94,执行步骤S1012,路由不再有其它有效的下一跳,执行步骤S1014,BGP协议模块94将这个路由标记为无效,再将用于撤销该路由的撤销消息通告到CE1。
与此同时,PE4上,BGP也会接收一个CE2侧的私网路由Rt1,其下一跳为3.3.3.9,执行步骤S1004,BGP协议模块94下发给支撑模块96包含的下一跳为3.3.3.9的路由,执行步骤S1006,支撑模块96拿下一跳3.3.3.9进行最长匹配操作,发现寻找到的路由为3.3.3.9,匹配到主机路由,执行步骤S1016,用于转发处理。
在CE1上的BGP路由,在收到PE1的用于撤销上述路由的撤销消息后,协议就会优选PE4作为下一跳路由器,能够及时替换失效的下一跳,完成路由的收敛。
至此,完成实施例二的描述,此实施例说明本发明在CE双归到PE的环境下,CE可以选择PE,条件是这个PE接收的BGP路由能够迭代到主机路由。
与相关技术相比较,相关技术中,对于BGP下发的L3vpn私网路由,支撑模块96只做最长匹配迭代,可能出现迭代到网络路由的情况,造成转发失效。而本发明的上述实施例可以通过配置,保证迭代时只能迭代到主机路由,若没有迭代到,还可以告诉BGP进行下一跳的重新选择,能尽最大可能迭代到主机路由生成的lsp做转发隧道。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
工业实用性
如上所述,本发明实施例提供的一种报文转发方法、装置及服务提供商网络边缘PE设备具有以下有益效果:解决了相关技术中存在的转发报文时,报文丢失率高的问题,进而达到了降低报文丢失率的效果。

Claims (11)

  1. 一种报文转发方法,包括:
    获取邻居服务提供商网络边缘PE设备通告的用于转发报文的私网路由,其中,所述私网路由具备两个或两个以上的下一跳;
    从所述私网路由中确定具备迭代到主机路由的能力的下一跳;
    依据确定的所述下一跳转发报文。
  2. 根据权利要求1所述的方法,其中,从所述私网路由中确定具备迭代到主机路由的能力的所述下一跳包括:
    按照预定路由选择策略从所述私网路由中选择一个下一跳;
    判断公网路由表中是否存储有目的地址与选择的所述下一跳的地址匹配,且掩码长度为32位的主机路由条目;
    在判断结果为是的情况下,确定选择的所述下一跳具备迭代到所述主机路由的能力。
  3. 根据权利要求2所述的方法,其中,还包括:
    在判断结果为否的情况下,重新选择所述私网路由的下一跳。
  4. 根据权利要求3所述的方法,其中,当所述私网路由中不存在具备迭代到所述主机路由的能力的下一跳时,所述方法还包括:
    将所述私网路由标记为无效的私网路由;
    将用于撤销所述无效的私网路由的撤销消息通告给上游设备,其中,所述撤销消息用于所述上游设备撤销所述无效的私网路由并重新选择用于转发所述报文的私网路由。
  5. 根据权利要求2所述的方法,其中,所述预定路由选择策略包括以下至少之一:
    选择所述私网路由中所包括的下一跳对应的花费值Cost中最小Cost对应的下一跳;
    选择所述私网路由中所包括的下一跳对应的本地优先级LOCAL_PREF中最高LOCAL_PREF对应的下一跳;
    选择所述私网路由中所包括的下一跳对应的路由器标识ORIGINATOR_ID中最小ORIGINATOR_ID对应的下一跳;
    选择所述私网路由中所包括的下一跳对应的优选首选值Preferred_value中最大Preferred_value对应的下一跳。
  6. 一种报文转发装置,包括:
    获取模块,设置为获取邻居服务提供商网络边缘PE设备通告的用于转发报文的私网路由,其中,所述私网路由具备两个或两个以上的下一跳;
    确定模块,设置为从所述私网路由中确定具备迭代到主机路由的能力的下一跳;
    转发模块,设置为依据确定的所述下一跳转发报文。
  7. 根据权利要求6所述的装置,其中,所述确定模块包括:
    第一选择单元,设置为按照预定路由选择策略从所述私网路由中选择一个下一跳;
    判断单元,设置为判断公网路由表中是否存储有目的地址与选择的所述下一跳的地址匹配,且掩码长度为32位的主机路由条目;
    确定单元,设置为在所述判断单元的判断结果为是的情况下,确定选择的所述下一跳具备迭代到所述主机路由的能力。
  8. 根据权利要求7所述的装置,其中,所述确定模块还包括:
    第二选择单元,设置为在所述判断单元的判断结果为否的情况下,重新选择所述私网路由的下一跳。
  9. 根据权利要求8所述的装置,其中,还包括:
    标记模块,设置为当所述私网路由中不存在具备迭代到所述主机路由的能力的下一跳时,将所述私网路由标记为无效的私网路由;
    通告模块,设置为将用于撤销所述无效的私网路由的撤销消息通告给上游设备,其中,所述撤销消息用于所述上游设备撤销所述无效的私网路由并重新选择用于转发所述报文的私网路由。
  10. 根据权利要求7所述的装置,其中,所述预定路由选择策略包括以下至少之一:
    选择所述私网路由中所包括的下一跳对应的花费值Cost中最小Cost对应的下一跳;
    选择所述私网路由中所包括的下一跳对应的本地优先级LOCAL_PREF中最 高LOCAL_PREF对应的下一跳;
    选择所述私网路由中所包括的下一跳对应的路由器标识ORIGINATOR_ID中最小ORIGINATOR_ID对应的下一跳;
    选择所述私网路由中所包括的下一跳对应的优选首选值Preferred_value中最大Preferred_value对应的下一跳。
  11. 一种服务提供商网络边缘PE设备,包括权利要求6至10中任一项所述的装置。
PCT/CN2015/087954 2015-03-20 2015-08-24 报文转发方法、装置及服务提供商网络边缘pe设备 WO2016150093A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201510125248.5 2015-03-20
CN201510125248.5A CN106034072A (zh) 2015-03-20 2015-03-20 报文转发方法、装置及服务提供商网络边缘pe设备

Publications (1)

Publication Number Publication Date
WO2016150093A1 true WO2016150093A1 (zh) 2016-09-29

Family

ID=56976942

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2015/087954 WO2016150093A1 (zh) 2015-03-20 2015-08-24 报文转发方法、装置及服务提供商网络边缘pe设备

Country Status (2)

Country Link
CN (1) CN106034072A (zh)
WO (1) WO2016150093A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113726663A (zh) * 2021-07-31 2021-11-30 新华三信息安全技术有限公司 一种路由处理方法及装置

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106656786B (zh) * 2016-11-18 2020-08-18 新华三技术有限公司 一种流量保护方法及装置
CN110535761A (zh) * 2019-09-30 2019-12-03 北京华三通信技术有限公司 报文转发方法及装置
CN116782336A (zh) * 2019-10-22 2023-09-19 华为技术有限公司 一种通信方法及装置
CN112511423A (zh) * 2020-09-03 2021-03-16 中兴通讯股份有限公司 报文处理方法、边界设备和计算机可读介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030016672A1 (en) * 1999-01-19 2003-01-23 Rosen Eric C. Shared communications network employing virtual-private-network identifiers
US20040177157A1 (en) * 2003-02-13 2004-09-09 Nortel Networks Limited Logical grouping of VPN tunnels
CN1604558A (zh) * 2003-09-30 2005-04-06 华为技术有限公司 路由迭代系统及其方法
CN101848161A (zh) * 2010-05-31 2010-09-29 杭州华三通信技术有限公司 一种mpls l2vpn和mpls l3vpn的通信方法和设备

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100484079C (zh) * 2007-03-31 2009-04-29 华为技术有限公司 一种保证二级运营商公网带宽的方法、路由器和系统
CN102075419B (zh) * 2010-12-27 2014-06-18 杭州华三通信技术有限公司 三层虚拟专用网等价路由的生成及转发方法和边缘路由器
CN103220217B (zh) * 2013-04-27 2016-05-04 杭州华三通信技术有限公司 一种路由生成方法和设备
CN103297340B (zh) * 2013-06-07 2017-02-08 杭州华三通信技术有限公司 Mpls和bgp组网中的路由收敛方法和设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030016672A1 (en) * 1999-01-19 2003-01-23 Rosen Eric C. Shared communications network employing virtual-private-network identifiers
US20040177157A1 (en) * 2003-02-13 2004-09-09 Nortel Networks Limited Logical grouping of VPN tunnels
CN1604558A (zh) * 2003-09-30 2005-04-06 华为技术有限公司 路由迭代系统及其方法
CN101848161A (zh) * 2010-05-31 2010-09-29 杭州华三通信技术有限公司 一种mpls l2vpn和mpls l3vpn的通信方法和设备

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113726663A (zh) * 2021-07-31 2021-11-30 新华三信息安全技术有限公司 一种路由处理方法及装置
CN113726663B (zh) * 2021-07-31 2022-11-18 新华三信息安全技术有限公司 一种路由处理方法及装置

Also Published As

Publication number Publication date
CN106034072A (zh) 2016-10-19

Similar Documents

Publication Publication Date Title
US10164838B2 (en) Seamless segment routing
EP3200402B1 (en) Segment routing information obtainment method and segment routing network establishment method
EP2663040B1 (en) Fast reroute using loop free alternate next hops for multipoint label switched paths
US9444677B2 (en) Scalable edge node protection using IPv6 segment routing extension header
US8098663B2 (en) Carrier's carrier without customer-edge-to-customer-edge border gateway protocol
US7751405B1 (en) Automatic configuration of label switched path tunnels using BGP attributes
US8902766B2 (en) Method and apparatus to improve LDP convergence using hierarchical label stacking
CN101243648B (zh) 用于使能标签交换数据分组的路由选择的方法和装置
US20040210892A1 (en) Dynamic routing on networks
US20090073996A1 (en) Interior gateway protocol summarization preserving internet protocol reachability information
WO2016150093A1 (zh) 报文转发方法、装置及服务提供商网络边缘pe设备
WO2013045084A1 (en) Incremental deployment of mrt based ipfrr
US20160226753A1 (en) Scheme for performing one-pass tunnel forwarding function on two-layer network structure
WO2015054904A1 (zh) 转发报文的方法、控制器、转发设备和网络系统
US20150109954A1 (en) Topology discovery based on sctp/x2 snooping
US20120124238A1 (en) Prioritization of routing information updates
WO2020230146A1 (en) Method and apparatus for layer 2 route calculation in a route reflector network device
CN106034075B (zh) 一种为vpn路由分配标签的方法及装置
CN110460507A (zh) 业务承载方法、装置
CN112511444B (zh) 一种组播流量传输方法、装置、通信节点及存储介质
WO2015149623A1 (zh) 一种业务隧道建立方法及设备
RU2803648C2 (ru) Система и способ маршрутизации трафика в сети mpls
JP2008060758A (ja) Mplsルータ、経路設定方法およびプログラム
WO2020190589A1 (en) Seamless multipoint label distribution protocol (mldp) transport over a bit index explicit replication (bier) core
JP2022538527A (ja) Igpショートカットパスに沿ってトラフィックをルーティングするための方法及び装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 15886022

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 15886022

Country of ref document: EP

Kind code of ref document: A1