US11456943B2 - Packet transmission method and apparatus - Google Patents

Packet transmission method and apparatus Download PDF

Info

Publication number
US11456943B2
US11456943B2 US16/910,726 US202016910726A US11456943B2 US 11456943 B2 US11456943 B2 US 11456943B2 US 202016910726 A US202016910726 A US 202016910726A US 11456943 B2 US11456943 B2 US 11456943B2
Authority
US
United States
Prior art keywords
router
source
packet
tracing
routing information
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, expires
Application number
US16/910,726
Other versions
US20200322251A1 (en
Inventor
Xudong Zhang
Chao He
Yong Liu
Xue Yang
BO Xie
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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to US16/910,726 priority Critical patent/US11456943B2/en
Assigned to HUAWEI TECHNOLOGIES CO., LTD. reassignment HUAWEI TECHNOLOGIES CO., LTD. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: HE, CHAO, LIU, YONG, XIE, BO, YANG, XUE, ZHANG, XUDONG
Publication of US20200322251A1 publication Critical patent/US20200322251A1/en
Application granted granted Critical
Publication of US11456943B2 publication Critical patent/US11456943B2/en
Active legal-status Critical Current
Adjusted 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/28Routing or path finding of packets in data switching networks using route fault recovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0677Localisation of faults
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/03Topology update or discovery by updating link state protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/34Source routing

Definitions

  • This application relates to the communications field, and in particular, to a packet transmission method and apparatus.
  • the IGP protocol includes the Open Shortest Path First (OSPF) protocol and the Intermediate System to Intermediate System (IS-IS) protocol.
  • OSPF Open Shortest Path First
  • IS-IS Intermediate System to Intermediate System
  • LSA link-state advertisement
  • LSP link state PDU
  • a routing information update packet generated by each node is flooded in the entire network, thereby affecting each node in the entire network.
  • each node updates routing information based on the routing information update packet.
  • the OSPF/IS-IS protocol does not provide enough information about a source router generating a routing information update packet, and when route flapping occurs, a long time is required to determine a failure source.
  • a router supporting the IS-IS protocol is used as an example.
  • the IS-IS protocol is a link-state routing protocol, and advertisement of a route in the entire network is implemented by using an LSP packet.
  • each router After receiving a flooded LSP packet, each router needs to perform verification and detection. For an LSP packet in which an error is detected during verification, the router deletes a route to a source router of the LSP packet, generates a purge LSP packet, and floods the purge LSP packet in the entire network.
  • the purge LSP packet is used to notify another router in the entire network that the source router of the LSP packet in which an error is detected during verification is abnormal, and the route is unreachable. After receiving the purge LSP packet, the another router performs an operation the same as that performed by the foregoing router. Consequently, route flapping occurs.
  • Embodiments of this application provide a packet transmission method and apparatus, to help trace a source router generating a routing information update packet, so as to improve network maintenance efficiency and shorten failure duration.
  • An embodiment of this application provides a packet transmission method, and the method includes generating, by a first router, a first routing information update packet; generating, by the first router, a first source-tracing packet, where the first source-tracing packet is used to indicate that the first router is a source router generating the first routing information update packet; and determining, by the first router, that a second router adjacent to the first router has a source-tracing capability, and sending the first source-tracing packet to the second router.
  • the first router when or after generating the first routing information update packet, the first router may generate the first source-tracing packet. This helps a device receiving the first source-tracing packet trace the source router generating the first routing information update packet, thereby improving network maintenance efficiency and shortening failure duration.
  • the method further includes determining, by the first router, that the second router does not have the source-tracing capability, and sending the first routing information update packet to the second router.
  • the first router after determining that the second router does not have the source-tracing capability, the first router does not send the first source-tracing packet to the second router. This facilitates mutual compatibility between a router having the source-tracing capability and a router that does not have the source-tracing capability, thereby improving device utilization.
  • the determining, by the first router, that a second router adjacent to the first router has a source-tracing capability includes sending, by the first router, a first source-tracing capability negotiation packet to the second router, where the first source-tracing capability negotiation packet is used to query whether the second router has the source-tracing capability; and after receiving a first source-tracing capability acknowledgement packet sent by the second router, determining, by the first router, that the second router has the source-tracing capability, where the first source-tracing capability acknowledgement packet is used to indicate that the second router has the source-tracing capability.
  • the first router can learn whether the second router has the source-tracing capability. This facilitates mutual compatibility between a router having the source-tracing capability and a router that does not have the source-tracing capability, thereby improving device utilization.
  • the method further includes sending, by the first router, the first source-tracing capability negotiation packet to the second router if the first router determines that duration between a moment of sending a third source-tracing capability negotiation packet to the second router in a previous period and a moment of generating the first source-tracing packet exceeds preset duration, where the preset duration is duration corresponding to one period, and the third source-tracing capability negotiation packet is used to query whether the second router has the source-tracing capability.
  • the first router may not need to frequently send, to the second router, a source-tracing capability negotiation packet for querying whether the second router has the source-tracing capability. This helps improve network efficiency.
  • the method further includes sending, by the first router, a fourth source-tracing capability negotiation packet to the second router if the first router determines that the duration between the moment of sending the third source-tracing capability negotiation packet to the second router in the previous period and the moment of generating the first source-tracing packet exceeds the preset duration, where both the third source-tracing capability negotiation packet and the fourth source-tracing capability negotiation packet are used to query whether the second router has the source-tracing capability.
  • the first router can accurately update a source-tracing capability of the second router in real time.
  • the method further includes receiving, by the first router, a second source-tracing capability negotiation packet sent by a third router, where the second source-tracing capability negotiation packet is used to query whether the first router has the source-tracing capability; and sending, by the first router, a second source-tracing capability acknowledgement packet to the third router, where the second source-tracing capability acknowledgement packet is used to indicate that the first router has the source-tracing capability.
  • the first router notifies, by sending the second source-tracing capability acknowledgement packet, that the first router has the source-tracing capability.
  • the third router is a router adjacent to the first router.
  • the third router may be a router the same as the second router or a router different from the second router.
  • the method further includes receiving, by the first router, a second routing information update packet and a second source-tracing packet that are sent by the third router, where the second source-tracing packet is used to indicate a source router generating the second routing information update packet; and determining, by the first router based on the second source-tracing packet, the source router generating the second routing information update packet.
  • the method further includes receiving, by the first router, a third routing information update packet sent by a fourth router; determining, by the first router, that the fourth router does not have the source-tracing capability and a fifth router adjacent to the first router has the source-tracing capability, and generating a first source-tracing assistance packet, where the first source-tracing assistance packet is used to indicate that the fourth router is a source router generating the third routing information update packet; and sending, by the first router, the first source-tracing assistance packet to the fifth router.
  • a router that is adjacent to the fourth router and that has the source-tracing capability may generate a source-tracing assistance packet such as the first source-tracing assistance packet.
  • the fifth router may be a router the same as the second router or a router different from the second router.
  • the fourth router may be a router the same as the third router or a router different from the third router.
  • the method further includes receiving, by the first router, a third routing information update packet sent by a fourth router; determining, by the first router, that a fifth router adjacent to the first router has the source-tracing capability, and generating a first source-tracing assistance packet, where the first source-tracing assistance packet is used to indicate that the fourth router is a source router generating the third routing information update packet; and sending, by the first router, the first source-tracing assistance packet to the fifth router.
  • the first router may generate the first source-tracing assistance packet. This helps another router quickly locate a router for which whether the router has the source-tracing capability is not determined.
  • the fifth router may be a router the same as the second router or a router different from the second router.
  • the method further includes obtaining, by the first router, a second source-tracing assistance packet and a third source-tracing packet, where the second source-tracing assistance packet is used to indicate that a sixth router is a source router generating a fourth routing information update packet, and the third source-tracing packet is used to indicate that a seventh router is the source router generating the fourth routing information update packet; and determining, by the first router based on the third source-tracing packet, that the source router generating the fourth routing information update packet is the seventh router.
  • the first router when receiving a source-tracing packet and a source-tracing assistance packet, the first router preferentially determines, based on the source-tracing packet, a source router generating a routing information update packet, so that the accurate source router is determined.
  • a router when a source-tracing packet and a source-tracing assistance packet that are corresponding to a same routing information update packet indicate different source routers generating the routing information update packet, a router can accurately determine a source router generating the routing information update packet, so that a router having the source-tracing capability and a router that does not have the source-tracing capability coexist.
  • An embodiment of this application provides a packet transmission method, and the method includes receiving, by a second router, a first source-tracing packet sent by a first router, where the first source-tracing packet is used to indicate that the first router is a source router generating a first routing information update packet; and determining, by the second router, that a third router adjacent to the second router has a source-tracing capability, and sending the first source-tracing packet to the third router.
  • the second router after receiving the first source-tracing packet, determines that the first router is the source router generating the first routing information update packet.
  • the second router may forward the received first source-tracing packet to a router that is adjacent to the second router and that has the source-tracing capability. This helps flood the first source-tracing packet in an entire network, so that another router can accurately trace the source router generating the first routing information update packet, thereby improving network maintenance efficiency and shortening failure duration.
  • the method further includes determining, by the second router, that the third router does not have the source-tracing capability, and sending the first routing information update packet to the third router.
  • the method further includes receiving, by the second router, a second routing information update packet sent by a fourth router; determining, by the second router, that the fourth router does not have the source-tracing capability and a fifth router adjacent to the second router has the source-tracing capability, and generating a first source-tracing assistance packet, where the first source-tracing assistance packet is used to indicate that the fourth router is a source router generating the second routing information update packet; and sending, by the second router, the first source-tracing assistance packet to the fifth router.
  • the method further includes receiving, by the second router, a second routing information update packet sent by a fourth router; determining, by the second router, that a fifth router adjacent to the second router has the source-tracing capability, and generating a first source-tracing assistance packet, where the first source-tracing assistance packet is used to indicate that the fourth router is a source router generating the second routing information update packet; and sending, by the second router, the first source-tracing assistance packet to the fifth router.
  • the method further includes receiving, by the second router, a second source-tracing assistance packet and a second source-tracing packet, where the second source-tracing assistance packet is used to indicate that a sixth router is a source router generating a fourth routing information update packet, and the second source-tracing packet is used to indicate that a seventh router is the source router generating the fourth routing information update packet; and determining, by the second router based on the second source-tracing packet, that the source router generating the fourth routing information update packet is the seventh router.
  • An embodiment of this application provides a packet transmission apparatus, the apparatus is disposed in a first router, and the apparatus includes a first packet generation unit configured to generate a first routing information update packet; a second packet generation unit configured to generate a first source-tracing packet, where the first source-tracing packet is used to indicate that the first router is a source router generating the first routing information update packet; and a transceiver unit configured to determine that a second router adjacent to the apparatus has a source-tracing capability, and send the first source-tracing packet to the second router.
  • the transceiver unit is further configured to determine that the second router does not have the source-tracing capability, and send the first routing information update packet to the second router.
  • the transceiver unit is specifically configured to send a first source-tracing capability negotiation packet to the second router, where the first source-tracing capability negotiation packet is used to query whether the second router has the source-tracing capability; and after receiving a first source-tracing capability acknowledgement packet sent by the second router, determine that the second router has the source-tracing capability, where the first source-tracing capability acknowledgement packet is used to indicate that the second router has the source-tracing capability.
  • the transceiver unit is further configured to send the first source-tracing capability negotiation packet to the second router if the duration between a moment of sending a third source-tracing capability negotiation packet to the second router in a previous period and a moment of generating the first source-tracing packet exceeds preset duration, where the preset duration is duration corresponding to one period, and the third source-tracing capability negotiation packet is used to query whether the second router has the source-tracing capability.
  • the transceiver unit is further configured to send a fourth source-tracing capability negotiation packet to the second router if the duration between the moment of sending the third source-tracing capability negotiation packet to the second router in the previous period and the moment of generating the first source-tracing packet exceeds the preset duration, where both the third source-tracing capability negotiation packet and the fourth source-tracing capability negotiation packet are used to query whether the second router has the source-tracing capability.
  • the transceiver unit is further configured to receive a second source-tracing capability negotiation packet sent by a third router, where the second source-tracing capability negotiation packet is used to query whether the first router has the source-tracing capability; and send a second source-tracing capability acknowledgement packet to the third router, where the second source-tracing capability acknowledgement packet is used to indicate that the first router has the source-tracing capability.
  • the transceiver unit is further configured to receive a second routing information update packet and a second source-tracing packet that are sent by the third router, where the second source-tracing packet is used to indicate a source router generating the second routing information update packet; and determine, based on the second source-tracing packet, the source router generating the second routing information update packet.
  • the transceiver unit is configured to receive a third routing information update packet sent by a fourth router; the second packet generation unit is configured to determine that the fourth router does not have the source-tracing capability and a fifth router adjacent to the apparatus has the source-tracing capability, and generate a first source-tracing assistance packet, where the first source-tracing assistance packet is used to indicate that the fourth router is a source router generating the third routing information update packet; and the transceiver unit is configured to send the first source-tracing assistance packet to the fifth router.
  • the transceiver unit is further configured to obtain a second source-tracing assistance packet and a third source-tracing packet, where the second source-tracing assistance packet is used to indicate that a sixth router is a source router generating a fourth routing information update packet, and the third source-tracing packet is used to indicate that a seventh router is the source router generating the fourth routing information update packet; and determine, based on the third source-tracing packet, that the source router generating the fourth routing information update packet is the seventh router.
  • An embodiment of this application provides a packet transmission apparatus, the apparatus is disposed in a second router, and the apparatus includes a receiving unit configured to receive a first source-tracing packet sent by a first router, where the first source-tracing packet is used to indicate that the first router is a source router generating a first routing information update packet; and a sending unit configured to determine that a third router adjacent to the apparatus has a source-tracing capability, and send the first source-tracing packet to the third router.
  • the sending unit is further configured to determine that the third router does not have the source-tracing capability, and send the first routing information update packet to the third router.
  • the apparatus further includes a packet generation unit; the receiving unit is configured to receive a second routing information update packet sent by a fourth router; the packet generation unit is configured to determine that the fourth router does not have the source-tracing capability and a fifth router adjacent to the apparatus has the source-tracing capability, and generate a first source-tracing assistance packet, where the first source-tracing assistance packet is used to indicate that the fourth router is a source router generating the second routing information update packet; and the sending unit is configured to send the first source-tracing assistance packet to the fifth router.
  • the receiving unit is configured to receive a second routing information update packet sent by a fourth router
  • the packet generation unit is configured to determine that the fourth router does not have the source-tracing capability and a fifth router adjacent to the apparatus has the source-tracing capability, and generate a first source-tracing assistance packet, where the first source-tracing assistance packet is used to indicate that the fourth router is a source router generating the second routing information update packet
  • the sending unit is configured to send the first source-tracing assistance packet
  • the apparatus further includes a packet generation unit; the receiving unit is configured to receive a second routing information update packet sent by a fourth router; the packet generation unit is configured to determine that a fifth router adjacent to the apparatus has the source-tracing capability, and generate a first source-tracing assistance packet, where the first source-tracing assistance packet is used to indicate that the fourth router is a source router generating the second routing information update packet; and the sending unit is configured to send the first source-tracing assistance packet to the fifth router.
  • the receiving unit is configured to receive a second routing information update packet sent by a fourth router
  • the packet generation unit is configured to determine that a fifth router adjacent to the apparatus has the source-tracing capability, and generate a first source-tracing assistance packet, where the first source-tracing assistance packet is used to indicate that the fourth router is a source router generating the second routing information update packet
  • the sending unit is configured to send the first source-tracing assistance packet to the fifth router.
  • the receiving unit is further configured to receive a second source-tracing assistance packet and a second source-tracing packet, where the second source-tracing assistance packet is used to indicate that a sixth router is a source router generating a fourth routing information update packet, and the second source-tracing packet is used to indicate that a seventh router is the source router generating the fourth routing information update packet; and determine, based on the second source-tracing packet, that the source router generating the fourth routing information update packet is the seventh router.
  • An embodiment of this application provides a packet transmission apparatus, the apparatus is disposed in a first router, the apparatus includes a processor, a communications interface, and a memory storing a program, and the processor reads an instruction corresponding to the program from the memory, to perform the following operations generating, by the processor, a first routing information update packet; generating, by the processor, a first source-tracing packet, where the first source-tracing packet is used to indicate that the first router is a source router generating the first routing information update packet; and determining, by the processor, that a second router adjacent to the apparatus has a source-tracing capability, and sending the first source-tracing packet to the second router by using the communications interface.
  • the processor further determines that the second router does not have the source-tracing capability, and sends the first routing information update packet to the second router by using the communications interface.
  • the processor is specifically configured to send a first source-tracing capability negotiation packet to the second router by using the communications interface, where the first source-tracing capability negotiation packet is used to query whether the second router has the source-tracing capability; and after receiving, by using the communications interface, a first source-tracing capability acknowledgement packet sent by the second router, determine that the second router has the source-tracing capability, where the first source-tracing capability acknowledgement packet is used to indicate that the second router has the source-tracing capability.
  • the processor is further configured to send the first source-tracing capability negotiation packet to the second router by using the communications interface if the duration between a moment of sending a third source-tracing capability negotiation packet to the second router in a previous period and a moment of generating the first source-tracing packet exceeds preset duration, where the preset duration is duration corresponding to one period, and the third source-tracing capability negotiation packet is used to query whether the second router has the source-tracing capability.
  • the processor is further configured to send a fourth source-tracing capability negotiation packet to the second router by using the communications interface if the duration between the moment of sending the third source-tracing capability negotiation packet to the second router in the previous period and the moment of generating the first source-tracing packet exceeds the preset duration, where both the third source-tracing capability negotiation packet and the fourth source-tracing capability negotiation packet are used to query whether the second router has the source-tracing capability.
  • the processor is further configured to receive, by using the communications interface, a second source-tracing capability negotiation packet sent by a third router, where the second source-tracing capability negotiation packet is used to query whether the first router has the source-tracing capability; and send a second source-tracing capability acknowledgement packet to the third router by using the communications interface, where the second source-tracing capability acknowledgement packet is used to indicate that the first router has the source-tracing capability.
  • the processor is further configured to receive, by using the communications interface, a second routing information update packet and a second source-tracing packet that are sent by the third router, where the second source-tracing packet is used to indicate a source router generating the second routing information update packet; and determine, based on the second source-tracing packet, the source router generating the second routing information update packet.
  • the processor is further configured to receive, by using the communications interface, a third routing information update packet sent by a fourth router; determine that the fourth router does not have the source-tracing capability and a fifth router adjacent to the apparatus has the source-tracing capability, and generate a first source-tracing assistance packet, where the first source-tracing assistance packet is used to indicate that the fourth router is a source router generating the third routing information update packet; and send the first source-tracing assistance packet to the fifth router by using the communications interface.
  • the processor is further configured to obtain a second source-tracing assistance packet and a third source-tracing packet, where the second source-tracing assistance packet is used to indicate that a sixth router is a source router generating a fourth routing information update packet, and the third source-tracing packet is used to indicate that a seventh router is the source router generating the fourth routing information update packet; and determine, based on the third source-tracing packet, that the source router generating the fourth routing information update packet is the seventh router.
  • An embodiment of this application provides a packet transmission apparatus, the apparatus includes a processor, a communications interface, and a memory storing a program, and the processor reads an instruction corresponding to the program from the memory, to perform the following operations: receiving, by using the communications interface, a first source-tracing packet sent by a first router, where the first source-tracing packet is used to indicate that the first router is a source router generating a first routing information update packet; and determining that a third router adjacent to the apparatus has a source-tracing capability, and sending the first source-tracing packet to the third router by using the communications interface.
  • the processor is further configured to determine that the third router does not have the source-tracing capability, and send the first routing information update packet to the third router by using the communications interface.
  • the processor is further configured to receive, by using the communications interface, a second routing information update packet sent by a fourth router; determine that the fourth router does not have the source-tracing capability and a fifth router adjacent to the apparatus has the source-tracing capability, and generate a first source-tracing assistance packet, where the first source-tracing assistance packet is used to indicate that the fourth router is a source router generating the second routing information update packet; and send the first source-tracing assistance packet to the fifth router by using the communications interface.
  • the processor is further configured to receive, by using the communications interface, a second routing information update packet sent by a fourth router; determine that a fifth router adjacent to the apparatus has the source-tracing capability, and generate a first source-tracing assistance packet, where the first source-tracing assistance packet is used to indicate that the fourth router is a source router generating the second routing information update packet; and send the first source-tracing assistance packet to the fifth router by using the communications interface.
  • the processor is further configured to receive a second source-tracing assistance packet and a second source-tracing packet by using the communications interface, where the second source-tracing assistance packet is used to indicate that a sixth router is a source router generating a fourth routing information update packet, and the second source-tracing packet is used to indicate that a seventh router is the source router generating the fourth routing information update packet; and determine, based on the second source-tracing packet, that the source router generating the fourth routing information update packet is the seventh router.
  • FIG. 1 is a schematic flowchart of a packet transmission method according to an embodiment of this application
  • FIG. 2 is a schematic flowchart of a packet transmission method according to an embodiment of this application.
  • FIG. 3 is a schematic flowchart of a packet transmission method according to an embodiment of this application.
  • FIG. 4 is a schematic diagram of a router connection according to an embodiment of this application.
  • FIG. 5 is a schematic structural diagram of a packet transmission apparatus according to an embodiment of this application.
  • FIG. 6 is a schematic structural diagram of a packet transmission apparatus according to an embodiment of this application.
  • FIG. 7 is a schematic structural diagram of a packet transmission apparatus according to an embodiment of this application.
  • FIG. 8 is a schematic structural diagram of a packet transmission apparatus according to an embodiment of this application.
  • a router may be a wireless router or a wired router.
  • the router can support the Interior Gateway Protocol such as the OSPF protocol or the IS-IS protocol. Examples are not given one by one herein for illustration.
  • a routing information update packet may be a packet that is related to an update of a network topology structure and that needs to be flooded in an entire network.
  • the routing information update packet may be a packet such as any type of LSA packet or any type of LSP packet, for example, a router LSA packet, a purge LSP packet, or a purge LSA packet.
  • FIG. 1 is a schematic flowchart of a packet transmission method according to an embodiment of this application.
  • the method includes the following steps.
  • a first router generates a first routing information update packet.
  • the first router generates a first source-tracing packet, where the first source-tracing packet is used to indicate that the first router is a source router generating the first routing information update packet.
  • the first router determines that a second router adjacent to the first router has a source-tracing capability, and sends the first source-tracing packet to the second router.
  • the second router receives the first source-tracing packet sent by the first router, where the first source-tracing packet is used to indicate that the first router is the source router generating the first routing information update packet.
  • the second router determines that a third router adjacent to the second router has the source-tracing capability, and sends the first source-tracing packet to the third router.
  • the first routing information update packet may be an LSA packet, an LSP packet, or the like.
  • the first router determines that a router adjacent to the first router is increased by one, in other words, if a network topology changes, the first router generates an LSA packet or an LSP packet.
  • the first router floods the LSA packet or the LSP packet in an entire network in which the first router is located, to notify another router that the router adjacent to the first router is increased by one.
  • the first router determines that an LSP packet exceeding a lifetime exists in an LSP packet stored by the first router.
  • the first router may set, to 0, a remaining time to live of the LSP packet exceeding the lifetime, and flood, in the entire network in which the first router is located, the LSP packet whose time to live is set to 0, so as to notify another router of the LSP packet whose time to live is set to 0.
  • a router receiving the LSP packet whose time to live is set to 0 may delete, from a stored LSP packet, the LSP packet whose time to live is set to 0.
  • the first router may generate the first routing information update packet and flood the first routing information update packet in the entire network in another case. Examples are not given one by one herein for illustration.
  • the first router may generate the first source-tracing packet after or when the first router generates the first routing information update packet.
  • the first source-tracing packet can indicate the source router generating the first routing information update packet.
  • the first source-tracing packet may include one or more types of the following information: an identifier (ID) of the source router, a name of the source router, an Internet Protocol (IP) address of the source router, an ID of the first routing information update packet, or a sequence number of the first routing information update packet.
  • the first source-tracing packet may further include other information, and details are not described herein.
  • the source router is a router generating the first routing information update packet.
  • the ID of the source router is used to identify the source router generating the first routing information update packet.
  • the first source-tracing packet generated by the first router may include first information and second information.
  • the first information includes at least one of a router identifier of the first router, a name of the first router, or an IP address of the first router.
  • the second information includes at least one of an ID of the LSA packet or a sequence number of the LSA packet.
  • the first source-tracing packet generated by the first router may include first information and second information.
  • the first information includes at least one of a router identifier of the first router, a name of the first router, or an IP address of the first router.
  • the second information includes at least one of an ID of the LSP packet or a sequence number of the LSP packet.
  • a protocol used by the first source-tracing packet generated by the first router may be UDP (User Datagram Protocol, User Datagram Protocol).
  • a port for receiving and sending the first source-tracing packet may be a port that is of an existing router and that is disabled for the UDP protocol, for example, a port 1068 or a port 1092.
  • the first router may set, to be enabled for the UDP protocol, the port for receiving and sending the first source-tracing packet, so that the first source-tracing packet using the UDP protocol can be received.
  • the first source-tracing packet using the UDP protocol cannot be received.
  • a source-tracing packet is a packet that needs to be flooded in the entire network.
  • the source-tracing packet may include flooding indication information, and the flooding indication information is used to indicate that a router receiving the source-tracing packet needs to forward the source-tracing packet to a router that is in a router adjacent to the router receiving the source-tracing packet and that has the source-tracing capability.
  • the first source-tracing packet includes flooding indication information
  • the second router has the source-tracing capability. After the second router receives the first source-tracing packet sent by the first router, the second router forwards, based on an indication of the flooding indication information in the first source-tracing packet, the first source-tracing packet to a router that is in a router adjacent to the second router and that has the source-tracing capability.
  • the first router may send the first routing information update packet to the second router when, before, or after the first router sends the first source-tracing packet to the second router.
  • a sequence for sending the first source-tracing packet and the first routing information update packet is not limited in this embodiment of this application.
  • the first router may send the first routing information update packet to the second router, instead of sending the first source-tracing packet.
  • the router adjacent to the first router may be a next-hop router directly connected to the first router, or a next-hop router that is in a routing and forwarding table of the first router and that is of the first router.
  • the source-tracing capability may be a capability of generating or processing a source-tracing packet or a source-tracing assistance packet.
  • the source-tracing capability includes one or more of a capability of generating a source-tracing packet, a capability of generating a source-tracing assistance packet, a capability of processing the source-tracing packet, or a capability of processing the source-tracing assistance packet.
  • a router having the source-tracing capability can perform one or more of the following operations: generating a source-tracing packet, receiving a source-tracing packet, parsing a source-tracing packet, sending a source-tracing packet, generating a source-tracing assistance packet, receiving a source-tracing assistance packet, parsing a source-tracing assistance packet, or sending a source-tracing assistance packet.
  • the first router may determine, by sending a source-tracing capability negotiation packet to the second router, whether the second router has the source-tracing capability. Specifically, the first router sends a first source-tracing capability negotiation packet to the second router, and after receiving a first source-tracing capability acknowledgement packet returned by the second router based on the first source-tracing capability negotiation packet, the first router determines that the second router has the source-tracing capability. If the first router determines that the first router does not receive the first source-tracing capability acknowledgement packet returned by the second router, the first router determines that the second router does not have the source-tracing capability.
  • the first router may re-send the first source-tracing capability negotiation packet.
  • the preset duration may be determined based on an actual situation. For example, the preset duration may be 30 seconds.
  • the first router may first determine whether a quantity of times of sending the first source-tracing capability negotiation packet to the second router is greater than a threshold of a quantity of retransmission times. If the first router determines that the quantity of times of sending the first source-tracing capability negotiation packet to the second router is less than or equal to the threshold of the quantity of retransmission times, the first router may re-send the first source-tracing capability negotiation packet to the second router.
  • the first router determines that the quantity of times of sending the first source-tracing capability negotiation packet to the second router is greater than the threshold of the quantity of retransmission times, and determines that the first router does not receive the first source-tracing capability acknowledgement packet returned by the second router, the first router determines that the second router does not have the source-tracing capability.
  • the threshold of the quantity of retransmission times may be determined based on an actual situation. For example, the threshold of the quantity of retransmission times may be 2.
  • a source-tracing capability acknowledgement packet may be an ACK (acknowledgement) packet, in other words, the first source-tracing capability acknowledgement packet is a first ACK packet.
  • a router receiving an ACK packet may determine that a router sending the ACK packet has the source-tracing capability.
  • a source-tracing capability acknowledgement packet may further include source-tracing capability acknowledgement information, and the source-tracing capability acknowledgement information is used to indicate that a router sending the source-tracing capability acknowledgement packet has the source-tracing capability.
  • source-tracing capability acknowledgement information in the first source-tracing capability acknowledgement packet is used to indicate that the second router has the source-tracing capability.
  • the first router when sending the first source-tracing capability negotiation packet to the second router, the first router may further indicate, to the second router by using the first source-tracing capability negotiation packet, that the first router has the source-tracing capability.
  • the first source-tracing capability negotiation packet may include source-tracing capability indication information.
  • the source-tracing capability indication information in the first source-tracing capability negotiation packet is used to indicate that the first router has the source-tracing capability.
  • the second router may determine, based on the source-tracing capability indication information in the first source-tracing capability negotiation packet, that the first router has the source-tracing capability.
  • a protocol used by a source-tracing capability negotiation packet and a source-tracing capability acknowledgement packet may be UDP.
  • a port for receiving and sending the source-tracing capability negotiation packet or the source-tracing capability acknowledgement packet may be a port that is of an existing router and that is disabled for the UDP protocol, for example, a port 1068 or a port 1092.
  • a router having the source-tracing capability may set, to be enabled for the UDP protocol, the port for receiving and sending the source-tracing capability negotiation packet or the source-tracing capability acknowledgement packet, so that the source-tracing capability negotiation packet or the source-tracing capability acknowledgement packet using the UDP protocol can be received.
  • the source-tracing capability negotiation packet or the source-tracing capability acknowledgement packet using the UDP protocol cannot be received.
  • the first router sends, to the second router by using a port disabled for the UDP protocol, the first source-tracing capability negotiation packet using the UDP protocol. If the second router does not have the source-tracing capability, the second router cannot receive the first source-tracing capability negotiation packet, and therefore the second router cannot return the first source-tracing capability acknowledgement packet to the first router.
  • a router having the source-tracing capability may further send a source-tracing capability disabling packet to a router adjacent to the router having the source-tracing capability.
  • the source-tracing capability disabling packet is used to indicate that the router sending the source-tracing capability disabling packet temporarily stops supporting the source-tracing capability.
  • the first router may receive a first source-tracing capability disabling packet sent by the second router, and the first source-tracing capability disabling packet is used to indicate that the second router temporarily stops supporting the source-tracing capability.
  • the first router determines that the second router temporarily stops supporting the source-tracing capability, and therefore the first router determines that the second router is a router that does not have the source-tracing capability.
  • the first router may send a second source-tracing capability disabling packet to the second router, and the second source-tracing capability disabling packet is used to indicate that the first router temporarily stops supporting the source-tracing capability.
  • the second router determines that the first router temporarily stops supporting the source-tracing capability, and therefore the second router determines that the first router is a router that does not have the source-tracing capability.
  • the router when a router having the source-tracing capability runs at high load, the router may temporarily stop supporting the source-tracing capability, thereby relieving load of the router.
  • the first router may determine whether duration between a moment of sending a third source-tracing capability negotiation packet to the second router in a previous period and a moment of generating the first source-tracing packet exceeds preset duration, and send the first source-tracing capability negotiation packet to the second router if the duration exceeds the preset duration.
  • the third source-tracing capability negotiation packet is used to query whether the second router has the source-tracing capability.
  • the preset duration may be duration corresponding to one period, and the period may be determined based on an actual situation. For example, the period may be 3600 seconds.
  • the first router may determine, based on a source-tracing capability status that is determined in the previous period and that is of the second router, whether the second router has the source-tracing capability. Specifically, if the first router determines, in the previous period by sending the third source-tracing capability negotiation packet, that the second router has the source-tracing capability, the first router determines that the second router has the source-tracing capability. If the first router determines, in the previous period by sending the third source-tracing capability negotiation packet, that the second router does not have the source-tracing capability, the first router determines that the second router does not have the source-tracing capability.
  • the first router sends the first source-tracing packet to the second router, if the first router determines that the duration between the moment of sending the third source-tracing capability negotiation packet to the second router in the previous period and the moment of generating the first source-tracing packet exceeds the preset duration, the first router sends a fourth source-tracing capability negotiation packet to the second router. Both the third source-tracing capability negotiation packet and the fourth source-tracing capability negotiation packet are used to query whether the second router has the source-tracing capability.
  • the first router can update a source-tracing capability of the second router in real time, so as to accurately determine whether the second router has the source-tracing capability.
  • the first router may further receive a second source-tracing capability negotiation packet sent by a third router, and the second source-tracing capability negotiation packet is used to query whether the first router has the source-tracing capability.
  • the first router may send a second source-tracing capability acknowledgement packet to the third router, and the second source-tracing capability acknowledgement packet is used to indicate that the first router has the source-tracing capability.
  • the first router does not send the second source-tracing capability acknowledgement packet to the third router.
  • the third router determines that the first router does not have the source-tracing capability.
  • the third router is a router adjacent to the first router.
  • the third router may be a router the same as the second router or a router different from the second router.
  • the first router may further receive a second routing information update packet and a second source-tracing packet that are sent by the third router, and the second source-tracing packet is used to indicate a source router generating the second routing information update packet.
  • the first router may determine, based on the second source-tracing packet, the source router generating the second routing information update packet.
  • the first router may update routing information based on the second routing information update packet.
  • the first router may further determine, based on the second source-tracing packet, the source router generating the second routing information update packet.
  • the second source-tracing packet is sent by the third router after the third router determines that the first router has the source-tracing capability.
  • the first router may further forward the received second source-tracing packet to a router that is in a router adjacent to the first router and that has the source-tracing capability.
  • the first router may further generate a source-tracing assistance packet indicating a source router generating the routing information update packet.
  • the first router receives a third routing information update packet sent by a fourth router. After the first router receives the third routing information update packet, if the first router determines that a fifth router adjacent to the first router has the source-tracing capability, the first router generates a first source-tracing assistance packet, and sends the first source-tracing assistance packet to the fifth router.
  • the first source-tracing assistance packet is used to indicate that the fourth router is a source router generating the third routing information update packet.
  • the fourth router may be a router the same as the third router or a router different from the third router.
  • the fifth router may be a router the same as the second router or a router different from the second router.
  • the first router may not generate the first source-tracing assistance packet, but forward the third routing information update packet to the routers adjacent to the first router.
  • the first router may generate the first source-tracing assistance packet. This helps another router quickly locate a router for which whether the router has the source-tracing capability is not determined.
  • the first router may receive the third routing information update packet sent by the fourth router. After the first router receives the third routing information update packet, if the first router determines that the fourth router does not have the source-tracing capability and the fifth router adjacent to the first router has the source-tracing capability, the first router may generate the first source-tracing assistance packet. After generating the first source-tracing assistance packet, the first router sends the first source-tracing assistance packet to the fifth router. The first source-tracing assistance packet is used to indicate that the fourth router is a source router generating the third routing information update packet.
  • the first router may not generate the first source-tracing assistance packet, but forward the third routing information update packet to the router adjacent to the first router.
  • a router that is adjacent to the fourth router and that has the source-tracing capability may generate a source-tracing assistance packet such as the first source-tracing assistance packet. This helps another router quickly locate a router that does not have the source-tracing capability, and a router having the source-tracing capability and the router that does not have the source-tracing capability can be compatible with each other.
  • a method for determining, by the first router, whether routers such as the fourth router and the fifth router have the source-tracing capability is the same as the method for determining, by the first router, whether the second router has the source-tracing capability, and details are not described herein again.
  • the first router determines whether duration between a moment of sending a fifth source-tracing capability negotiation packet to the fifth router in a previous period and a moment of generating the first source-tracing assistance packet exceeds preset duration, and sends a sixth source-tracing capability negotiation packet to the fifth router if the duration exceeds the preset duration. Both the fifth source-tracing capability negotiation packet and the sixth source-tracing capability negotiation packet are used to query whether the fifth router has the source-tracing capability.
  • the first router may determine, based on a source-tracing capability status that is determined in the previous period and that is of the fifth router, whether the fifth router has the source-tracing capability. Specifically, if the first router determines, in the previous period by sending the fifth source-tracing capability negotiation packet, that the fifth router has the source-tracing capability, the first router determines that the fifth router has the source-tracing capability. If the first router determines, in the previous period by sending the fifth source-tracing capability negotiation packet, that the fifth router does not have the source-tracing capability, the first router determines that the fifth router does not have the source-tracing capability.
  • the first router sends the first source-tracing assistance packet to the fifth router, if the first router determines that the duration between the moment of sending the fifth source-tracing capability negotiation packet to the fifth router in the previous period and the moment of generating the first source-tracing assistance packet exceeds the preset duration, the first router sends a seventh source-tracing capability negotiation packet to the fifth router.
  • the seventh source-tracing capability negotiation packet is used to query whether the fifth router has the source-tracing capability.
  • a generated source-tracing assistance packet may include one or more types of the following information: a router identifier of a router sending the routing information update packet to the first router, a name of the router sending the routing information update packet to the first router, an IP address of the router sending the routing information update packet to the first router, an IP address of a router generating the source-tracing assistance packet, a router identifier of the router generating the source-tracing assistance packet, a router name of the router generating the source-tracing assistance packet, an ID of the routing information update packet, or a sequence number of the routing information update packet.
  • the first router determines that the fourth router does not have the source-tracing capability and the fifth router adjacent to the first router has the source-tracing capability.
  • the first source-tracing assistance packet generated by the first router includes one or more types of the following information: a router identifier of the first router, a name of the first router, an IP address of the first router, a router identifier of the fourth router, a name of the fourth router, an IP address of the fourth router, an ID of the third routing information update packet, or a sequence number of the third routing information update packet.
  • a source-tracing assistance packet may further include other information, and details are not described herein.
  • a source-tracing assistance packet is a packet that needs to be flooded in the entire network.
  • the source-tracing assistance packet may include flooding indication information, and the flooding indication information is used to instruct a router receiving the source-tracing assistance packet to forward the source-tracing assistance packet to a router that is in a router adjacent to the router receiving the source-tracing assistance packet and that has the source-tracing capability.
  • a source-tracing assistance packet may be a UDP packet
  • a port for receiving and sending the source-tracing assistance packet is a port that is of an existing router and that is disabled for the UDP protocol, for example, a port 1068 or a port 1092.
  • a router having the source-tracing capability sets, to be enabled for the UDP protocol, the port for receiving and sending the source-tracing assistance packet, and therefore a router that does not have the source-tracing capability cannot receive the source-tracing assistance packet or the like.
  • the second router has the source-tracing capability. After receiving the first source-tracing assistance packet sent by the first router, the second router forwards the first source-tracing assistance packet to a router that is in a router adjacent to the second router and that has the source-tracing capability.
  • the first router may generate a first source-tracing assistance packet corresponding to the third routing information update packet.
  • the first source-tracing assistance packet indicates that the fourth router is a source router generating the third routing information update packet.
  • the first router can generate the first source-tracing assistance packet corresponding to the third routing information update packet, so that the fourth router that does not have the source-tracing capability is quickly located by another router when the fourth router sends the third routing information update packet. This facilitates mutual compatibility between a router having the source-tracing capability and a router that does not have the source-tracing capability.
  • the router may be preferentially subject to a source router indicated by a source-tracing packet.
  • the first router obtains a second source-tracing assistance packet and a third source-tracing packet.
  • the second source-tracing assistance packet is used to indicate that a sixth router is a source router generating a fourth routing information update packet
  • the third source-tracing packet is used to indicate that a seventh router is the source router generating the fourth routing information update packet.
  • the first router determines, based on the third source-tracing packet, that the source router generating the fourth routing information update packet is the seventh router.
  • a router A receives a routing information update packet L 1 and a source-tracing assistance packet M 1 that are sent by a router B, and the source-tracing assistance packet M 1 is used to indicate that a router C is a source router generating the routing information update packet L 1 .
  • the router A further receives the routing information update packet L 1 and a source-tracing packet M 2 that are sent by a router D, and the source-tracing packet M 2 is used to indicate that the router D is the source router generating the routing information update packet L 1 .
  • the router A may determine, based on the source-tracing packet M 2 , that the router D is the source router generating the routing information update packet L 1 , so that the accurate source router is determined.
  • the first router when the first router receives a source-tracing packet and a source-tracing assistance packet that are corresponding to a same routing information update packet, the first router preferentially determines, based on the source-tracing packet, a source router generating the routing information update packet.
  • a router receiving the routing information update packet can accurately determine the source router generating the routing information update packet, so that a router having the source-tracing capability and a router that does not have the source-tracing capability coexist.
  • the second router may further determine, based on the first source-tracing packet, that the first router is the source router generating the first routing information update packet.
  • the second router may further receive the first routing information update packet sent by the first router, so as to update routing information based on the first routing information update packet.
  • the second router may further forward the received first routing information update packet to the third router.
  • the second router may send the first routing information update packet to the third router.
  • the second router may further receive the first source-tracing capability negotiation packet sent by the first router, and return the first source-tracing capability acknowledgement packet to the first router. In this way, the first router can determine, based on the first source-tracing capability acknowledgement packet, that the second router has the source-tracing capability.
  • the second router may send a source-tracing capability negotiation packet to the first router, to learn whether the first router has the source-tracing capability.
  • FIG. 2 is a schematic flowchart of a packet transmission method according to an embodiment of this application.
  • a first router generates a first routing information update packet.
  • the first router generates a first source-tracing packet.
  • the first router determines whether a second router adjacent to the first router has a source-tracing capability, and performs S 204 if the second router has the source-tracing capability, or performs S 205 if the second router does not have the source-tracing capability.
  • the first router may determine, by sending a source-tracing capability negotiation packet to the second router, whether the second router has the source-tracing capability.
  • the first router sends the first routing information update packet and the first source-tracing packet to the second router.
  • the first router sends the first routing information update packet to the second router.
  • the method provided in this embodiment of this application may further include S 206 :
  • the first router determines whether duration between a moment of sending a source-tracing capability negotiation packet to the second router in a previous period and a moment of generating the first source-tracing packet exceeds preset duration, and performs S 207 if the duration exceeds the preset duration, or performs S 208 if the duration does not exceed the preset duration.
  • the first router sends the source-tracing capability negotiation packet to the second router, to update a source-tracing capability of the second router.
  • FIG. 3 is a schematic flowchart of a packet transmission method according to an embodiment of this application.
  • a first router receives a third routing information update packet sent by a third router.
  • the first router determines whether the third router has a source-tracing capability, and performs S 303 if the third router does not have the source-tracing capability, or performs S 304 if the third router has the source-tracing capability.
  • the first router may determine, by sending a source-tracing capability negotiation packet to the third router, whether the third router has the source-tracing capability.
  • the first router generates a first source-tracing assistance packet, and then performs S 304 .
  • the first source-tracing assistance packet is used to indicate that the third router is a source router generating the third routing information update packet.
  • the first router determines whether duration between a moment of sending a source-tracing capability negotiation packet to the third router in a previous period and a moment of receiving the third routing information update packet exceeds preset duration, and performs S 305 if the duration exceeds the preset duration, or performs S 306 if the duration does not exceed the preset duration.
  • the first router sends the source-tracing capability negotiation packet to the third router, to update a source-tracing capability of the third router.
  • FIG. 4 is a schematic diagram of a router connection according to an embodiment of this application.
  • Router A thru router H are included in FIG. 4 .
  • the router A is adjacent to the router B.
  • the router B is adjacent to all of the router A, the router C, and the router D.
  • the router C is adjacent to both the router B and the router E.
  • the router D is adjacent to both the router B and the router F.
  • the router E is adjacent to both the router C and the router G.
  • the router F is adjacent to both the router D and the router G
  • the router G is adjacent to all of the router E, the router F, and the router H.
  • the router H is adjacent to the router G.
  • any router in FIG. 4 has a source-tracing capability, in other words, all of the router A to the router H have the source-tracing capability.
  • the router When or after any router generates a routing information update packet, the router generates a source-tracing packet corresponding to the routing information update packet.
  • Another router in the scenario shown in FIG. 4 can determine, based on the source-tracing packet, a source router generating the routing information update packet.
  • the router A After generating a routing information update packet and a source-tracing packet corresponding to the routing information update packet, the router A sends the routing information update packet and the source-tracing packet to the router B.
  • the source-tracing packet indicates that the router A is a source router generating the routing information update packet. Because the router C does not have the source-tracing capability, the router B sends only the routing information update packet to the router C. Because the router D has the source-tracing capability, the router B sends the routing information update packet and the source-tracing packet to the router D.
  • the router C After receiving the routing information update packet, the router C sends the routing information update packet to the router E.
  • the router E determines that the router C does not have the source-tracing capability, and after receiving the routing information update packet from the router C, the router E generates a source-tracing assistance packet.
  • the source-tracing assistance packet indicates that the router C is the source router generating the routing information update packet.
  • the router E sends the source-tracing capability assistance packet to the router G.
  • the router D After receiving the routing information update packet and the source-tracing packet, the router D sends the routing information update packet and the source-tracing packet to the router F. Then, the router F sends the routing information update packet and the source-tracing packet to the router G.
  • the router G receives the routing information update packet and the source-tracing assistance packet that are sent by the router E.
  • the router G may further receive the routing information update packet and the source-tracing packet from the router F.
  • the router G preferentially determines, based on the source-tracing packet, that the source router generating the routing information update packet is the router A.
  • neither the router C nor the router D in the scenario shown in FIG. 4 has a source-tracing capability, and all of the other routers in the scenario shown in FIG. 4 have the source-tracing capability.
  • the router A After generating a routing information update packet and a source-tracing packet corresponding to the routing information update packet, the router A sends the routing information update packet and the source-tracing packet to the router B.
  • the source-tracing packet indicates that the router A is a source router generating the routing information update packet.
  • the router B sends only the routing information update packet to the router C and the router D.
  • the router C forwards, to the router E, the routing information update packet generated by the router A.
  • the router E determines that the router C does not have the source-tracing capability, and after receiving the routing information update packet sent by the router C, the router E generates a first source-tracing assistance packet corresponding to the routing information update packet.
  • the first source-tracing assistance packet indicates that the router C is the source router generating the routing information update packet.
  • the router D forwards, to the router F, the routing information update packet generated by the router A.
  • the router F determines that the router D does not have the source-tracing capability, and after receiving the routing information update packet sent by the router D, the router F generates a second source-tracing assistance packet corresponding to the routing information update packet.
  • the second source-tracing assistance packet indicates that the router D is the source router generating the routing information update packet.
  • the router G receives the routing information update packet and the first source-tracing assistance packet that are sent by the router E.
  • the router G may further receive the routing information update packet and the second source-tracing assistance packet that are sent by the router F.
  • the router G determines, based on the first source-tracing assistance packet, that the source router corresponding to the routing information update packet is the router C.
  • the router G determines, based on the second source-tracing assistance packet, that the source router corresponding to the routing information update packet is the router D.
  • the router G may determine, based on the router C or the router D, that the source router sending the routing information update packet is the router B.
  • the router G may further determine, based on the second source-tracing packet received by the router B, that the source router sending the routing information update packet is the router A.
  • an embodiment of this application further provides a packet transmission apparatus, and the packet transmission apparatus may perform the foregoing method embodiment.
  • FIG. 5 is a schematic structural diagram of a packet transmission apparatus according to an embodiment of this application.
  • the apparatus is disposed in a first router, and the apparatus includes a first packet generation unit 501 configured to generate a first routing information update packet; a second packet generation unit 502 configured to generate a first source-tracing packet, where the first source-tracing packet is used to indicate that the first router is a source router generating the first routing information update packet; and a transceiver unit 503 configured to determine that a second router adjacent to the apparatus has a source-tracing capability, and send the first source-tracing packet to the second router.
  • a first packet generation unit 501 configured to generate a first routing information update packet
  • a second packet generation unit 502 configured to generate a first source-tracing packet, where the first source-tracing packet is used to indicate that the first router is a source router generating the first routing information update packet
  • a transceiver unit 503 configured to determine that a second router adjacent to the apparatus has a source-trac
  • the transceiver unit 503 is further configured to: determine that the second router does not have the source-tracing capability, and send the first routing information update packet to the second router.
  • the transceiver unit 503 is specifically configured to send a first source-tracing capability negotiation packet to the second router, where the first source-tracing capability negotiation packet is used to query whether the second router has the source-tracing capability; and after receiving a first source-tracing capability acknowledgement packet sent by the second router, determine that the second router has the source-tracing capability, where the first source-tracing capability acknowledgement packet is used to indicate that the second router has the source-tracing capability.
  • the transceiver unit 503 is further configured to send the first source-tracing capability negotiation packet to the second router if the duration between a moment of sending a third source-tracing capability negotiation packet to the second router in a previous period and a moment of generating the first source-tracing packet exceeds preset duration, where the preset duration is duration corresponding to one period, and the third source-tracing capability negotiation packet is used to query whether the second router has the source-tracing capability.
  • the transceiver unit 503 is further configured to send a fourth source-tracing capability negotiation packet to the second router if the duration between the moment of sending the third source-tracing capability negotiation packet to the second router in the previous period and the moment of generating the first source-tracing packet exceeds the preset duration, where both the third source-tracing capability negotiation packet and the fourth source-tracing capability negotiation packet are used to query whether the second router has the source-tracing capability.
  • the transceiver unit 503 is further configured to receive a second source-tracing capability negotiation packet sent by a third router, where the second source-tracing capability negotiation packet is used to query whether the first router has the source-tracing capability; and send a second source-tracing capability acknowledgement packet to the third router, where the second source-tracing capability acknowledgement packet is used to indicate that the first router has the source-tracing capability.
  • the transceiver unit 503 is further configured to receive a second routing information update packet and a second source-tracing packet that are sent by the third router, where the second source-tracing packet is used to indicate a source router generating the second routing information update packet; and determine, based on the second source-tracing packet, the source router generating the second routing information update packet.
  • the transceiver unit 503 is configured to receive a third routing information update packet sent by a fourth router.
  • the second packet generation unit 502 is configured to determine that the fourth router does not have the source-tracing capability and a fifth router adjacent to the apparatus has the source-tracing capability, and generate a first source-tracing assistance packet, where the first source-tracing assistance packet is used to indicate that the fourth router is a source router generating the third routing information update packet.
  • the transceiver unit 503 is configured to send the first source-tracing assistance packet to the fifth router.
  • the transceiver unit 503 is further configured to obtain a second source-tracing assistance packet and a third source-tracing packet, where the second source-tracing assistance packet is used to indicate that a sixth router is a source router generating a fourth routing information update packet, and the third source-tracing packet is used to indicate that a seventh router is the source router generating the fourth routing information update packet; and determine, based on the third source-tracing packet, that the source router generating the fourth routing information update packet is the seventh router.
  • an embodiment of this application further provides a packet transmission apparatus, and the packet transmission apparatus may perform the foregoing method embodiment.
  • FIG. 6 is a schematic structural diagram of a packet transmission apparatus according to an embodiment of this application.
  • the apparatus includes a receiving unit 601 configured to receive a first source-tracing packet sent by a first router, where the first source-tracing packet is used to indicate that the first router is a source router generating a first routing information update packet; and a sending unit 602 configured to determine that a third router adjacent to the apparatus has a source-tracing capability, and send the first source-tracing packet to the third router.
  • the sending unit 602 is further configured to determine that the third router does not have the source-tracing capability, and send the first routing information update packet to the third router.
  • the apparatus further includes a packet generation unit 603 .
  • the receiving unit 601 is configured to receive a second routing information update packet sent by a fourth router.
  • the packet generation unit 603 is configured to determine that the fourth router does not have the source-tracing capability and a fifth router adjacent to the apparatus has the source-tracing capability, and generate a first source-tracing assistance packet, where the first source-tracing assistance packet is used to indicate that the fourth router is a source router generating the second routing information update packet.
  • the sending unit 602 is configured to send the first source-tracing assistance packet to the fifth router.
  • the apparatus further includes a packet generation unit 603 .
  • the receiving unit 601 is configured to receive a second routing information update packet sent by a fourth router.
  • the packet generation unit 603 is configured to determine that a fifth router adjacent to the apparatus has the source-tracing capability, and generate a first source-tracing assistance packet, where the first source-tracing assistance packet is used to indicate that the fourth router is a source router generating the second routing information update packet.
  • the sending unit 602 is configured to send the first source-tracing assistance packet to the fifth router.
  • the receiving unit 601 is further configured to receive a second source-tracing assistance packet and a second source-tracing packet, where the second source-tracing assistance packet is used to indicate that a sixth router is a source router generating a fourth routing information update packet, and the second source-tracing packet is used to indicate that a seventh router is the source router generating the fourth routing information update packet; and determine, based on the second source-tracing packet, that the source router generating the fourth routing information update packet is the seventh router.
  • an embodiment of this application further provides a packet transmission apparatus, and the packet transmission apparatus may perform the foregoing method embodiment.
  • FIG. 7 is a schematic structural diagram of a packet transmission apparatus according to an embodiment of this application.
  • the apparatus includes a processor 701 , a memory 702 , and a communications interface 703 .
  • the communications interface 703 may be a wired communications interface, a wireless communications interface, or a combination thereof.
  • the wired communications interface may be, for example, an Ethernet interface.
  • the Ethernet interface may be an optical interface, an electrical interface, or a combination thereof.
  • the wireless communications interface may be, for example, a wireless local area network communications interface, a cellular network communications interface, or a combination thereof.
  • the processor 701 may be a central processing unit (CPU), a network processor (NP), or a combination of the CPU and the NP.
  • the processor 701 may further include a hardware chip.
  • the hardware chip may be an application-specific integrated circuit (ASIC), a programmable logic device (PLD), or a combination thereof.
  • ASIC application-specific integrated circuit
  • PLD programmable logic device
  • the PLD may be a complex programmable logic device (CPLD), a field programmable logic gate array (FPGA), generic array logic (GAL), or any combination thereof.
  • the memory 702 may include a volatile memory such as a random access memory (RAM), or the memory 702 may include a non-volatile memory such as a read-only memory (ROM), a flash memory, a hard disk drive (HDD), or a solid state drive (SSD). Alternatively, the memory 702 may include a combination of the foregoing types of memories.
  • the memory 702 may be configured to store a program.
  • the memory 702 may further store a received packet.
  • the processor 701 reads an instruction corresponding to the program from the memory 702 , to perform the following operations generating a first routing information update packet; generating a first source-tracing packet, where the first source-tracing packet is used to indicate that the first router is a source router generating the first routing information update packet; determining that a second router adjacent to the apparatus has a source-tracing capability; and sending the first source-tracing packet to the second router by using the communications interface 703 .
  • the processor 701 further determines that the second router does not have the source-tracing capability, and sends the first routing information update packet to the second router by using the communications interface 703 .
  • the processor 701 is specifically configured to send a first source-tracing capability negotiation packet to the second router by using the communications interface 703 , where the first source-tracing capability negotiation packet is used to query whether the second router has the source-tracing capability; and after receiving, by using the communications interface 703 , a first source-tracing capability acknowledgement packet sent by the second router, determine that the second router has the source-tracing capability, where the first source-tracing capability acknowledgement packet is used to indicate that the second router has the source-tracing capability.
  • the processor 701 is further configured to send the first source-tracing capability negotiation packet to the second router by using the communications interface 703 if the duration between a moment of sending a third source-tracing capability negotiation packet to the second router in a previous period and a moment of generating the first source-tracing packet exceeds preset duration, where the preset duration is duration corresponding to one period, and the third source-tracing capability negotiation packet is used to query whether the second router has the source-tracing capability.
  • the processor 701 is further configured to send a fourth source-tracing capability negotiation packet to the second router by using the communications interface 703 if the duration between the moment of sending the third source-tracing capability negotiation packet to the second router in the previous period and the moment of generating the first source-tracing packet exceeds the preset duration, where both the third source-tracing capability negotiation packet and the fourth source-tracing capability negotiation packet are used to query whether the second router has the source-tracing capability.
  • the processor 701 is further configured to receive, by using the communications interface 703 , a second source-tracing capability negotiation packet sent by a third router, where the second source-tracing capability negotiation packet is used to query whether the first router has the source-tracing capability; and send a second source-tracing capability acknowledgement packet to the third router by using the communications interface 703 , where the second source-tracing capability acknowledgement packet is used to indicate that the first router has the source-tracing capability.
  • the processor 701 is further configured to receive, by using the communications interface 703 , a second routing information update packet and a second source-tracing packet that are sent by the third router, where the second source-tracing packet is used to indicate a source router generating the second routing information update packet; and determine, based on the second source-tracing packet, the source router generating the second routing information update packet.
  • the processor 701 is further configured to receive, by using the communications interface 703 , a third routing information update packet sent by a fourth router; determine that the fourth router does not have the source-tracing capability and a fifth router adjacent to the apparatus has the source-tracing capability, and generate a first source-tracing assistance packet, where the first source-tracing assistance packet is used to indicate that the fourth router is a source router generating the third routing information update packet; and send the first source-tracing assistance packet to the fifth router by using the communications interface 703 .
  • the processor 701 is further configured to obtain a second source-tracing assistance packet and a third source-tracing packet, where the second source-tracing assistance packet is used to indicate that a sixth router is a source router generating a fourth routing information update packet, and the third source-tracing packet is used to indicate that a seventh router is the source router generating the fourth routing information update packet; and determine, based on the third source-tracing packet, that the source router generating the fourth routing information update packet is the seventh router.
  • a bus may further be included in FIG. 7 , and the bus may include any quantity of interconnected buses and bridges, and specifically link various circuits of one or more processors represented by the processor and a memory represented by the memory.
  • the bus may further link various other circuits such as a peripheral device, a voltage stabilizer, and a power management circuit. The circuits are no longer further described in this specification.
  • the communications interface provides a unit for communicating with various other devices on a transmission medium.
  • the processor is responsible for bus architecture management and general processing.
  • the memory may store data used when the processor performs an operation.
  • an embodiment of this application further provides a packet transmission apparatus, and the packet transmission apparatus may perform the foregoing method embodiment.
  • FIG. 8 is a schematic structural diagram of a packet transmission apparatus according to an embodiment of this application.
  • the apparatus includes a processor 801 , a memory 802 , and a communications interface 803 .
  • the communications interface 803 may be a wired communications interface, a wireless communications interface, or a combination thereof.
  • the wired communications interface may be, for example, an Ethernet interface.
  • the Ethernet interface may be an optical interface, an electrical interface, or a combination thereof.
  • the wireless communications interface may be, for example, a wireless local area network communications interface, a cellular network communications interface, or a combination thereof.
  • the processor 801 may be a CPU, an NP, or a combination of the CPU and the NP.
  • the processor 801 may further include a hardware chip.
  • the hardware chip may be an application-specific integrated circuit ASIC, a PLD, or a combination thereof.
  • the PLD may be a CPLD, an FPGA, a GAL, or any combination thereof.
  • the memory 802 may include a volatile memory such as a RAM, or the memory 802 may include a non-volatile memory such as a ROM, a flash memory, an HDD, or an SSD. Alternatively, the memory 802 may include a combination of the foregoing types of memories.
  • the memory 802 may be configured to store a program and a received packet.
  • the processor reads an instruction corresponding to the program from the memory 802 , to perform the following operations receiving, by using the communications interface 803 , a first source-tracing packet sent by a first router, where the first source-tracing packet is used to indicate that the first router is a source router generating a first routing information update packet; and determining that a third router adjacent to the apparatus has a source-tracing capability, and sending the first source-tracing packet to the third router by using the communications interface 803 .
  • the processor 801 is further configured to determine that the third router does not have the source-tracing capability, and send the first routing information update packet to the third router by using the communications interface 803 .
  • the processor 801 is further configured to receive, by using the communications interface 803 , a second routing information update packet sent by a fourth router; determine that the fourth router does not have the source-tracing capability and a fifth router adjacent to the apparatus has the source-tracing capability, and generate a first source-tracing assistance packet, where the first source-tracing assistance packet is used to indicate that the fourth router is a source router generating the second routing information update packet; and send the first source-tracing assistance packet to the fifth router by using the communications interface 803 .
  • the processor 801 is further configured to receive, by using the communications interface 803 , a second routing information update packet sent by a fourth router; determine that a fifth router adjacent to the apparatus has the source-tracing capability, and generate a first source-tracing assistance packet, where the first source-tracing assistance packet is used to indicate that the fourth router is a source router generating the second routing information update packet; and send the first source-tracing assistance packet to the fifth router by using the communications interface 803 .
  • the processor 801 is further configured to receive a second source-tracing assistance packet and a second source-tracing packet by using the communications interface 803 , where the second source-tracing assistance packet is used to indicate that a sixth router is a source router generating a fourth routing information update packet, and the second source-tracing packet is used to indicate that a seventh router is the source router generating the fourth routing information update packet; and determine, based on the second source-tracing packet, that the source router generating the fourth routing information update packet is the seventh router.
  • a bus may further be included in FIG. 8 , and the bus may include any quantity of interconnected buses and bridges, and specifically link various circuits of one or more processors represented by the processor and a memory represented by the memory.
  • the bus may further link various other circuits such as a peripheral device, a voltage stabilizer, and a power management circuit. The circuits are no longer further described in this specification.
  • the communications interface provides a unit for communicating with various other devices on a transmission medium.
  • the processor is responsible for bus architecture management and general processing.
  • the memory may store data used when the processor performs an operation.
  • These computer program instructions may be provided for a general-purpose computer, a dedicated computer, an embedded processor, or a processor of any other programmable data processing device to generate a machine, so that the instructions executed by a computer or a processor of any other programmable data processing device generate an apparatus for implementing a specific function in one or more processes in the flowcharts and/or in one or more blocks in the block diagrams.
  • These computer program instructions may be stored in a computer readable memory that can instruct the computer or any other programmable data processing device to work in a specific manner, so that the instructions stored in the computer readable memory generate an artifact that includes an instruction apparatus.
  • the instruction apparatus implements a specific function in one or more processes in the flowcharts and/or in one or more blocks in the block diagrams.
  • These computer program instructions may be loaded onto a computer or another programmable data processing device, so that a series of operations and steps are performed on the computer or the another programmable device, thereby generating computer-implemented processing. Therefore, the instructions executed on the computer or the another programmable device provide steps for implementing a specific function in one or more processes in the flowcharts and/or in one or more blocks in the block diagrams.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Cardiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

A packet transmission method includes generating, by a first router, a first routing information update packet; generating, by the first router, a first source-tracing packet, where the first source-tracing packet is used to indicate that the first router is a source router generating the first routing information update packet; and determining, by the first router, that a second router adjacent to the first router has a source-tracing capability, and sending the first source-tracing packet to the second router.

Description

CROSS-REFERENCE TO RELATED APPLICATIONS
This application is a continuation of U.S. patent application Ser. No. 15/998,596 filed on Aug. 16, 2018, which is a continuation of International Patent Application No. PCT/CN2017/073502 filed on Feb. 14, 2017, which claims priority to Chinese Patent Application No. 201610088116.4 filed on Feb. 16, 2016. The disclosures of the aforementioned applications are hereby incorporated by reference in their entireties.
TECHNICAL FIELD
This application relates to the communications field, and in particular, to a packet transmission method and apparatus.
BACKGROUND
With development of network technologies, a client imposes a higher requirement on reliability and stability of Interior Gateway Protocol (IGP). The IGP protocol includes the Open Shortest Path First (OSPF) protocol and the Intermediate System to Intermediate System (IS-IS) protocol. In the OSPF protocol, neighbor information is sent to each node in an entire network by using a link-state advertisement (LSA), so that each node performs route calculation. In the IS-IS protocol, neighbor information is sent to each node in an entire network by using a link state PDU (LSP), so that each node performs route calculation. For ease of description, information such as the LSA and the LSP is collectively referred to as a routing information update packet. In a routing system, a routing information update packet generated by each node is flooded in the entire network, thereby affecting each node in the entire network. In addition, after receiving a routing information update packet, each node updates routing information based on the routing information update packet.
Currently, the OSPF/IS-IS protocol does not provide enough information about a source router generating a routing information update packet, and when route flapping occurs, a long time is required to determine a failure source. For example, a router supporting the IS-IS protocol is used as an example. The IS-IS protocol is a link-state routing protocol, and advertisement of a route in the entire network is implemented by using an LSP packet. After receiving a flooded LSP packet, each router needs to perform verification and detection. For an LSP packet in which an error is detected during verification, the router deletes a route to a source router of the LSP packet, generates a purge LSP packet, and floods the purge LSP packet in the entire network. The purge LSP packet is used to notify another router in the entire network that the source router of the LSP packet in which an error is detected during verification is abnormal, and the route is unreachable. After receiving the purge LSP packet, the another router performs an operation the same as that performed by the foregoing router. Consequently, route flapping occurs.
If a router is faulty or is attacked by a hacker, many purge LSP packets may be generated and flooded in an entire network, resulting in route flapping. If route flapping occurs, a router generating the purge LSP packets cannot be located, and therefore a failure source cannot be quickly located.
SUMMARY
Embodiments of this application provide a packet transmission method and apparatus, to help trace a source router generating a routing information update packet, so as to improve network maintenance efficiency and shorten failure duration.
An embodiment of this application provides a packet transmission method, and the method includes generating, by a first router, a first routing information update packet; generating, by the first router, a first source-tracing packet, where the first source-tracing packet is used to indicate that the first router is a source router generating the first routing information update packet; and determining, by the first router, that a second router adjacent to the first router has a source-tracing capability, and sending the first source-tracing packet to the second router.
In the foregoing method, when or after generating the first routing information update packet, the first router may generate the first source-tracing packet. This helps a device receiving the first source-tracing packet trace the source router generating the first routing information update packet, thereby improving network maintenance efficiency and shortening failure duration.
Optionally, the method further includes determining, by the first router, that the second router does not have the source-tracing capability, and sending the first routing information update packet to the second router.
In the foregoing method, after determining that the second router does not have the source-tracing capability, the first router does not send the first source-tracing packet to the second router. This facilitates mutual compatibility between a router having the source-tracing capability and a router that does not have the source-tracing capability, thereby improving device utilization.
Optionally, the determining, by the first router, that a second router adjacent to the first router has a source-tracing capability includes sending, by the first router, a first source-tracing capability negotiation packet to the second router, where the first source-tracing capability negotiation packet is used to query whether the second router has the source-tracing capability; and after receiving a first source-tracing capability acknowledgement packet sent by the second router, determining, by the first router, that the second router has the source-tracing capability, where the first source-tracing capability acknowledgement packet is used to indicate that the second router has the source-tracing capability.
In the foregoing method, the first router can learn whether the second router has the source-tracing capability. This facilitates mutual compatibility between a router having the source-tracing capability and a router that does not have the source-tracing capability, thereby improving device utilization.
Optionally, before the sending, by the first router, a first source-tracing capability negotiation packet to the second router, the method further includes sending, by the first router, the first source-tracing capability negotiation packet to the second router if the first router determines that duration between a moment of sending a third source-tracing capability negotiation packet to the second router in a previous period and a moment of generating the first source-tracing packet exceeds preset duration, where the preset duration is duration corresponding to one period, and the third source-tracing capability negotiation packet is used to query whether the second router has the source-tracing capability.
In the foregoing method, the first router may not need to frequently send, to the second router, a source-tracing capability negotiation packet for querying whether the second router has the source-tracing capability. This helps improve network efficiency.
Optionally, after the sending the first source-tracing packet to the second router, the method further includes sending, by the first router, a fourth source-tracing capability negotiation packet to the second router if the first router determines that the duration between the moment of sending the third source-tracing capability negotiation packet to the second router in the previous period and the moment of generating the first source-tracing packet exceeds the preset duration, where both the third source-tracing capability negotiation packet and the fourth source-tracing capability negotiation packet are used to query whether the second router has the source-tracing capability.
In the foregoing method, the first router can accurately update a source-tracing capability of the second router in real time.
Optionally, the method further includes receiving, by the first router, a second source-tracing capability negotiation packet sent by a third router, where the second source-tracing capability negotiation packet is used to query whether the first router has the source-tracing capability; and sending, by the first router, a second source-tracing capability acknowledgement packet to the third router, where the second source-tracing capability acknowledgement packet is used to indicate that the first router has the source-tracing capability.
In the foregoing method, the first router notifies, by sending the second source-tracing capability acknowledgement packet, that the first router has the source-tracing capability. The third router is a router adjacent to the first router. The third router may be a router the same as the second router or a router different from the second router.
Optionally, after the sending, by the first router, a second source-tracing capability acknowledgement packet to the third router, the method further includes receiving, by the first router, a second routing information update packet and a second source-tracing packet that are sent by the third router, where the second source-tracing packet is used to indicate a source router generating the second routing information update packet; and determining, by the first router based on the second source-tracing packet, the source router generating the second routing information update packet.
Optionally, the method further includes receiving, by the first router, a third routing information update packet sent by a fourth router; determining, by the first router, that the fourth router does not have the source-tracing capability and a fifth router adjacent to the first router has the source-tracing capability, and generating a first source-tracing assistance packet, where the first source-tracing assistance packet is used to indicate that the fourth router is a source router generating the third routing information update packet; and sending, by the first router, the first source-tracing assistance packet to the fifth router.
In this method, after the fourth router that does not have the source-tracing capability generates a routing information update packet, a router that is adjacent to the fourth router and that has the source-tracing capability, for example, the first router, may generate a source-tracing assistance packet such as the first source-tracing assistance packet. This helps another router quickly locate a router that does not have the source-tracing capability, and a router having the source-tracing capability and the router that does not have the source-tracing capability can be compatible with each other. The fifth router may be a router the same as the second router or a router different from the second router. The fourth router may be a router the same as the third router or a router different from the third router.
Optionally, the method further includes receiving, by the first router, a third routing information update packet sent by a fourth router; determining, by the first router, that a fifth router adjacent to the first router has the source-tracing capability, and generating a first source-tracing assistance packet, where the first source-tracing assistance packet is used to indicate that the fourth router is a source router generating the third routing information update packet; and sending, by the first router, the first source-tracing assistance packet to the fifth router.
In this method, if the first router does not determine whether the fourth router has the source-tracing capability, before the first router receives a source-tracing packet from the fourth router, the first router may generate the first source-tracing assistance packet. This helps another router quickly locate a router for which whether the router has the source-tracing capability is not determined. The fifth router may be a router the same as the second router or a router different from the second router.
Optionally, the method further includes obtaining, by the first router, a second source-tracing assistance packet and a third source-tracing packet, where the second source-tracing assistance packet is used to indicate that a sixth router is a source router generating a fourth routing information update packet, and the third source-tracing packet is used to indicate that a seventh router is the source router generating the fourth routing information update packet; and determining, by the first router based on the third source-tracing packet, that the source router generating the fourth routing information update packet is the seventh router.
In the foregoing solution, when receiving a source-tracing packet and a source-tracing assistance packet, the first router preferentially determines, based on the source-tracing packet, a source router generating a routing information update packet, so that the accurate source router is determined. In this solution, when a source-tracing packet and a source-tracing assistance packet that are corresponding to a same routing information update packet indicate different source routers generating the routing information update packet, a router can accurately determine a source router generating the routing information update packet, so that a router having the source-tracing capability and a router that does not have the source-tracing capability coexist.
An embodiment of this application provides a packet transmission method, and the method includes receiving, by a second router, a first source-tracing packet sent by a first router, where the first source-tracing packet is used to indicate that the first router is a source router generating a first routing information update packet; and determining, by the second router, that a third router adjacent to the second router has a source-tracing capability, and sending the first source-tracing packet to the third router.
In the foregoing method, after receiving the first source-tracing packet, the second router determines that the first router is the source router generating the first routing information update packet. The second router may forward the received first source-tracing packet to a router that is adjacent to the second router and that has the source-tracing capability. This helps flood the first source-tracing packet in an entire network, so that another router can accurately trace the source router generating the first routing information update packet, thereby improving network maintenance efficiency and shortening failure duration.
Optionally, the method further includes determining, by the second router, that the third router does not have the source-tracing capability, and sending the first routing information update packet to the third router.
Optionally, the method further includes receiving, by the second router, a second routing information update packet sent by a fourth router; determining, by the second router, that the fourth router does not have the source-tracing capability and a fifth router adjacent to the second router has the source-tracing capability, and generating a first source-tracing assistance packet, where the first source-tracing assistance packet is used to indicate that the fourth router is a source router generating the second routing information update packet; and sending, by the second router, the first source-tracing assistance packet to the fifth router.
Optionally, the method further includes receiving, by the second router, a second routing information update packet sent by a fourth router; determining, by the second router, that a fifth router adjacent to the second router has the source-tracing capability, and generating a first source-tracing assistance packet, where the first source-tracing assistance packet is used to indicate that the fourth router is a source router generating the second routing information update packet; and sending, by the second router, the first source-tracing assistance packet to the fifth router.
Optionally, the method further includes receiving, by the second router, a second source-tracing assistance packet and a second source-tracing packet, where the second source-tracing assistance packet is used to indicate that a sixth router is a source router generating a fourth routing information update packet, and the second source-tracing packet is used to indicate that a seventh router is the source router generating the fourth routing information update packet; and determining, by the second router based on the second source-tracing packet, that the source router generating the fourth routing information update packet is the seventh router.
An embodiment of this application provides a packet transmission apparatus, the apparatus is disposed in a first router, and the apparatus includes a first packet generation unit configured to generate a first routing information update packet; a second packet generation unit configured to generate a first source-tracing packet, where the first source-tracing packet is used to indicate that the first router is a source router generating the first routing information update packet; and a transceiver unit configured to determine that a second router adjacent to the apparatus has a source-tracing capability, and send the first source-tracing packet to the second router.
Optionally, the transceiver unit is further configured to determine that the second router does not have the source-tracing capability, and send the first routing information update packet to the second router.
Optionally, the transceiver unit is specifically configured to send a first source-tracing capability negotiation packet to the second router, where the first source-tracing capability negotiation packet is used to query whether the second router has the source-tracing capability; and after receiving a first source-tracing capability acknowledgement packet sent by the second router, determine that the second router has the source-tracing capability, where the first source-tracing capability acknowledgement packet is used to indicate that the second router has the source-tracing capability.
Optionally, the transceiver unit is further configured to send the first source-tracing capability negotiation packet to the second router if the duration between a moment of sending a third source-tracing capability negotiation packet to the second router in a previous period and a moment of generating the first source-tracing packet exceeds preset duration, where the preset duration is duration corresponding to one period, and the third source-tracing capability negotiation packet is used to query whether the second router has the source-tracing capability.
Optionally, the transceiver unit is further configured to send a fourth source-tracing capability negotiation packet to the second router if the duration between the moment of sending the third source-tracing capability negotiation packet to the second router in the previous period and the moment of generating the first source-tracing packet exceeds the preset duration, where both the third source-tracing capability negotiation packet and the fourth source-tracing capability negotiation packet are used to query whether the second router has the source-tracing capability.
Optionally, the transceiver unit is further configured to receive a second source-tracing capability negotiation packet sent by a third router, where the second source-tracing capability negotiation packet is used to query whether the first router has the source-tracing capability; and send a second source-tracing capability acknowledgement packet to the third router, where the second source-tracing capability acknowledgement packet is used to indicate that the first router has the source-tracing capability.
Optionally, the transceiver unit is further configured to receive a second routing information update packet and a second source-tracing packet that are sent by the third router, where the second source-tracing packet is used to indicate a source router generating the second routing information update packet; and determine, based on the second source-tracing packet, the source router generating the second routing information update packet.
Optionally, the transceiver unit is configured to receive a third routing information update packet sent by a fourth router; the second packet generation unit is configured to determine that the fourth router does not have the source-tracing capability and a fifth router adjacent to the apparatus has the source-tracing capability, and generate a first source-tracing assistance packet, where the first source-tracing assistance packet is used to indicate that the fourth router is a source router generating the third routing information update packet; and the transceiver unit is configured to send the first source-tracing assistance packet to the fifth router.
Optionally, the transceiver unit is further configured to obtain a second source-tracing assistance packet and a third source-tracing packet, where the second source-tracing assistance packet is used to indicate that a sixth router is a source router generating a fourth routing information update packet, and the third source-tracing packet is used to indicate that a seventh router is the source router generating the fourth routing information update packet; and determine, based on the third source-tracing packet, that the source router generating the fourth routing information update packet is the seventh router.
An embodiment of this application provides a packet transmission apparatus, the apparatus is disposed in a second router, and the apparatus includes a receiving unit configured to receive a first source-tracing packet sent by a first router, where the first source-tracing packet is used to indicate that the first router is a source router generating a first routing information update packet; and a sending unit configured to determine that a third router adjacent to the apparatus has a source-tracing capability, and send the first source-tracing packet to the third router.
Optionally, the sending unit is further configured to determine that the third router does not have the source-tracing capability, and send the first routing information update packet to the third router.
Optionally, the apparatus further includes a packet generation unit; the receiving unit is configured to receive a second routing information update packet sent by a fourth router; the packet generation unit is configured to determine that the fourth router does not have the source-tracing capability and a fifth router adjacent to the apparatus has the source-tracing capability, and generate a first source-tracing assistance packet, where the first source-tracing assistance packet is used to indicate that the fourth router is a source router generating the second routing information update packet; and the sending unit is configured to send the first source-tracing assistance packet to the fifth router.
Optionally, the apparatus further includes a packet generation unit; the receiving unit is configured to receive a second routing information update packet sent by a fourth router; the packet generation unit is configured to determine that a fifth router adjacent to the apparatus has the source-tracing capability, and generate a first source-tracing assistance packet, where the first source-tracing assistance packet is used to indicate that the fourth router is a source router generating the second routing information update packet; and the sending unit is configured to send the first source-tracing assistance packet to the fifth router.
Optionally, the receiving unit is further configured to receive a second source-tracing assistance packet and a second source-tracing packet, where the second source-tracing assistance packet is used to indicate that a sixth router is a source router generating a fourth routing information update packet, and the second source-tracing packet is used to indicate that a seventh router is the source router generating the fourth routing information update packet; and determine, based on the second source-tracing packet, that the source router generating the fourth routing information update packet is the seventh router.
An embodiment of this application provides a packet transmission apparatus, the apparatus is disposed in a first router, the apparatus includes a processor, a communications interface, and a memory storing a program, and the processor reads an instruction corresponding to the program from the memory, to perform the following operations generating, by the processor, a first routing information update packet; generating, by the processor, a first source-tracing packet, where the first source-tracing packet is used to indicate that the first router is a source router generating the first routing information update packet; and determining, by the processor, that a second router adjacent to the apparatus has a source-tracing capability, and sending the first source-tracing packet to the second router by using the communications interface.
Optionally, the processor further determines that the second router does not have the source-tracing capability, and sends the first routing information update packet to the second router by using the communications interface.
Optionally, the processor is specifically configured to send a first source-tracing capability negotiation packet to the second router by using the communications interface, where the first source-tracing capability negotiation packet is used to query whether the second router has the source-tracing capability; and after receiving, by using the communications interface, a first source-tracing capability acknowledgement packet sent by the second router, determine that the second router has the source-tracing capability, where the first source-tracing capability acknowledgement packet is used to indicate that the second router has the source-tracing capability.
Optionally, the processor is further configured to send the first source-tracing capability negotiation packet to the second router by using the communications interface if the duration between a moment of sending a third source-tracing capability negotiation packet to the second router in a previous period and a moment of generating the first source-tracing packet exceeds preset duration, where the preset duration is duration corresponding to one period, and the third source-tracing capability negotiation packet is used to query whether the second router has the source-tracing capability.
Optionally, the processor is further configured to send a fourth source-tracing capability negotiation packet to the second router by using the communications interface if the duration between the moment of sending the third source-tracing capability negotiation packet to the second router in the previous period and the moment of generating the first source-tracing packet exceeds the preset duration, where both the third source-tracing capability negotiation packet and the fourth source-tracing capability negotiation packet are used to query whether the second router has the source-tracing capability.
Optionally, the processor is further configured to receive, by using the communications interface, a second source-tracing capability negotiation packet sent by a third router, where the second source-tracing capability negotiation packet is used to query whether the first router has the source-tracing capability; and send a second source-tracing capability acknowledgement packet to the third router by using the communications interface, where the second source-tracing capability acknowledgement packet is used to indicate that the first router has the source-tracing capability.
Optionally, the processor is further configured to receive, by using the communications interface, a second routing information update packet and a second source-tracing packet that are sent by the third router, where the second source-tracing packet is used to indicate a source router generating the second routing information update packet; and determine, based on the second source-tracing packet, the source router generating the second routing information update packet.
Optionally, the processor is further configured to receive, by using the communications interface, a third routing information update packet sent by a fourth router; determine that the fourth router does not have the source-tracing capability and a fifth router adjacent to the apparatus has the source-tracing capability, and generate a first source-tracing assistance packet, where the first source-tracing assistance packet is used to indicate that the fourth router is a source router generating the third routing information update packet; and send the first source-tracing assistance packet to the fifth router by using the communications interface.
Optionally, the processor is further configured to obtain a second source-tracing assistance packet and a third source-tracing packet, where the second source-tracing assistance packet is used to indicate that a sixth router is a source router generating a fourth routing information update packet, and the third source-tracing packet is used to indicate that a seventh router is the source router generating the fourth routing information update packet; and determine, based on the third source-tracing packet, that the source router generating the fourth routing information update packet is the seventh router.
An embodiment of this application provides a packet transmission apparatus, the apparatus includes a processor, a communications interface, and a memory storing a program, and the processor reads an instruction corresponding to the program from the memory, to perform the following operations: receiving, by using the communications interface, a first source-tracing packet sent by a first router, where the first source-tracing packet is used to indicate that the first router is a source router generating a first routing information update packet; and determining that a third router adjacent to the apparatus has a source-tracing capability, and sending the first source-tracing packet to the third router by using the communications interface.
Optionally, the processor is further configured to determine that the third router does not have the source-tracing capability, and send the first routing information update packet to the third router by using the communications interface.
Optionally, the processor is further configured to receive, by using the communications interface, a second routing information update packet sent by a fourth router; determine that the fourth router does not have the source-tracing capability and a fifth router adjacent to the apparatus has the source-tracing capability, and generate a first source-tracing assistance packet, where the first source-tracing assistance packet is used to indicate that the fourth router is a source router generating the second routing information update packet; and send the first source-tracing assistance packet to the fifth router by using the communications interface.
Optionally, the processor is further configured to receive, by using the communications interface, a second routing information update packet sent by a fourth router; determine that a fifth router adjacent to the apparatus has the source-tracing capability, and generate a first source-tracing assistance packet, where the first source-tracing assistance packet is used to indicate that the fourth router is a source router generating the second routing information update packet; and send the first source-tracing assistance packet to the fifth router by using the communications interface.
Optionally, the processor is further configured to receive a second source-tracing assistance packet and a second source-tracing packet by using the communications interface, where the second source-tracing assistance packet is used to indicate that a sixth router is a source router generating a fourth routing information update packet, and the second source-tracing packet is used to indicate that a seventh router is the source router generating the fourth routing information update packet; and determine, based on the second source-tracing packet, that the source router generating the fourth routing information update packet is the seventh router.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is a schematic flowchart of a packet transmission method according to an embodiment of this application;
FIG. 2 is a schematic flowchart of a packet transmission method according to an embodiment of this application;
FIG. 3 is a schematic flowchart of a packet transmission method according to an embodiment of this application;
FIG. 4 is a schematic diagram of a router connection according to an embodiment of this application;
FIG. 5 is a schematic structural diagram of a packet transmission apparatus according to an embodiment of this application;
FIG. 6 is a schematic structural diagram of a packet transmission apparatus according to an embodiment of this application;
FIG. 7 is a schematic structural diagram of a packet transmission apparatus according to an embodiment of this application; and
FIG. 8 is a schematic structural diagram of a packet transmission apparatus according to an embodiment of this application.
DETAILED DESCRIPTION
In embodiments of this application, a router may be a wireless router or a wired router. The router can support the Interior Gateway Protocol such as the OSPF protocol or the IS-IS protocol. Examples are not given one by one herein for illustration.
In the embodiments of this application, a routing information update packet may be a packet that is related to an update of a network topology structure and that needs to be flooded in an entire network. For example, the routing information update packet may be a packet such as any type of LSA packet or any type of LSP packet, for example, a router LSA packet, a purge LSP packet, or a purge LSA packet.
Based on the foregoing description, as shown in FIG. 1, FIG. 1 is a schematic flowchart of a packet transmission method according to an embodiment of this application.
Referring to FIG. 1, the method includes the following steps.
S101. A first router generates a first routing information update packet.
S102. The first router generates a first source-tracing packet, where the first source-tracing packet is used to indicate that the first router is a source router generating the first routing information update packet.
S103. The first router determines that a second router adjacent to the first router has a source-tracing capability, and sends the first source-tracing packet to the second router.
S104. The second router receives the first source-tracing packet sent by the first router, where the first source-tracing packet is used to indicate that the first router is the source router generating the first routing information update packet.
S105. The second router determines that a third router adjacent to the second router has the source-tracing capability, and sends the first source-tracing packet to the third router.
In S101, the first routing information update packet may be an LSA packet, an LSP packet, or the like.
For example, if the first router determines that a router adjacent to the first router is increased by one, in other words, if a network topology changes, the first router generates an LSA packet or an LSP packet. The first router floods the LSA packet or the LSP packet in an entire network in which the first router is located, to notify another router that the router adjacent to the first router is increased by one.
For another example, if the first routing information update packet is the LSP packet, the first router determines that an LSP packet exceeding a lifetime exists in an LSP packet stored by the first router. The first router may set, to 0, a remaining time to live of the LSP packet exceeding the lifetime, and flood, in the entire network in which the first router is located, the LSP packet whose time to live is set to 0, so as to notify another router of the LSP packet whose time to live is set to 0. A router receiving the LSP packet whose time to live is set to 0 may delete, from a stored LSP packet, the LSP packet whose time to live is set to 0.
Alternatively, the first router may generate the first routing information update packet and flood the first routing information update packet in the entire network in another case. Examples are not given one by one herein for illustration.
In S102, the first router may generate the first source-tracing packet after or when the first router generates the first routing information update packet.
The first source-tracing packet can indicate the source router generating the first routing information update packet. The first source-tracing packet may include one or more types of the following information: an identifier (ID) of the source router, a name of the source router, an Internet Protocol (IP) address of the source router, an ID of the first routing information update packet, or a sequence number of the first routing information update packet. The first source-tracing packet may further include other information, and details are not described herein. The source router is a router generating the first routing information update packet. The ID of the source router is used to identify the source router generating the first routing information update packet.
For example, if the first routing information update packet is the LSA packet, the first source-tracing packet generated by the first router may include first information and second information. The first information includes at least one of a router identifier of the first router, a name of the first router, or an IP address of the first router. The second information includes at least one of an ID of the LSA packet or a sequence number of the LSA packet.
For example, if the first routing information update packet is the LSP packet, the first source-tracing packet generated by the first router may include first information and second information. The first information includes at least one of a router identifier of the first router, a name of the first router, or an IP address of the first router. The second information includes at least one of an ID of the LSP packet or a sequence number of the LSP packet.
Optionally, in this embodiment of this application, a protocol used by the first source-tracing packet generated by the first router may be UDP (User Datagram Protocol, User Datagram Protocol). A port for receiving and sending the first source-tracing packet may be a port that is of an existing router and that is disabled for the UDP protocol, for example, a port 1068 or a port 1092. In this embodiment of this application, the first router may set, to be enabled for the UDP protocol, the port for receiving and sending the first source-tracing packet, so that the first source-tracing packet using the UDP protocol can be received. In addition, because a router without the source-tracing capability does not enable the port for receiving and sending the first source-tracing packet, the first source-tracing packet using the UDP protocol cannot be received.
It should be noted that, in this embodiment of this application, a source-tracing packet is a packet that needs to be flooded in the entire network. Specifically, the source-tracing packet may include flooding indication information, and the flooding indication information is used to indicate that a router receiving the source-tracing packet needs to forward the source-tracing packet to a router that is in a router adjacent to the router receiving the source-tracing packet and that has the source-tracing capability.
For example, the first source-tracing packet includes flooding indication information, and the second router has the source-tracing capability. After the second router receives the first source-tracing packet sent by the first router, the second router forwards, based on an indication of the flooding indication information in the first source-tracing packet, the first source-tracing packet to a router that is in a router adjacent to the second router and that has the source-tracing capability.
In S103, after determining that the second router has the source-tracing capability, the first router may send the first routing information update packet to the second router when, before, or after the first router sends the first source-tracing packet to the second router. A sequence for sending the first source-tracing packet and the first routing information update packet is not limited in this embodiment of this application.
If the first router determines that the second router does not have the source-tracing capability, the first router may send the first routing information update packet to the second router, instead of sending the first source-tracing packet.
It should be noted that, in this embodiment of this application, the router adjacent to the first router may be a next-hop router directly connected to the first router, or a next-hop router that is in a routing and forwarding table of the first router and that is of the first router.
It should be noted that, in this embodiment of this application, the source-tracing capability may be a capability of generating or processing a source-tracing packet or a source-tracing assistance packet. To be specific, the source-tracing capability includes one or more of a capability of generating a source-tracing packet, a capability of generating a source-tracing assistance packet, a capability of processing the source-tracing packet, or a capability of processing the source-tracing assistance packet. For example, a router having the source-tracing capability can perform one or more of the following operations: generating a source-tracing packet, receiving a source-tracing packet, parsing a source-tracing packet, sending a source-tracing packet, generating a source-tracing assistance packet, receiving a source-tracing assistance packet, parsing a source-tracing assistance packet, or sending a source-tracing assistance packet.
In this embodiment of this application, the first router may determine, by sending a source-tracing capability negotiation packet to the second router, whether the second router has the source-tracing capability. Specifically, the first router sends a first source-tracing capability negotiation packet to the second router, and after receiving a first source-tracing capability acknowledgement packet returned by the second router based on the first source-tracing capability negotiation packet, the first router determines that the second router has the source-tracing capability. If the first router determines that the first router does not receive the first source-tracing capability acknowledgement packet returned by the second router, the first router determines that the second router does not have the source-tracing capability.
Optionally, after the first router sends the first source-tracing capability negotiation packet to the second router, if the first router determines that the first router does not receive, within preset duration, the first source-tracing capability acknowledgement packet returned by the second router, the first router may re-send the first source-tracing capability negotiation packet. The preset duration may be determined based on an actual situation. For example, the preset duration may be 30 seconds.
Optionally, before the first router re-sends the first source-tracing capability negotiation packet to the second router, the first router may first determine whether a quantity of times of sending the first source-tracing capability negotiation packet to the second router is greater than a threshold of a quantity of retransmission times. If the first router determines that the quantity of times of sending the first source-tracing capability negotiation packet to the second router is less than or equal to the threshold of the quantity of retransmission times, the first router may re-send the first source-tracing capability negotiation packet to the second router. If the first router determines that the quantity of times of sending the first source-tracing capability negotiation packet to the second router is greater than the threshold of the quantity of retransmission times, and determines that the first router does not receive the first source-tracing capability acknowledgement packet returned by the second router, the first router determines that the second router does not have the source-tracing capability. The threshold of the quantity of retransmission times may be determined based on an actual situation. For example, the threshold of the quantity of retransmission times may be 2.
In this embodiment of this application, a source-tracing capability acknowledgement packet may be an ACK (acknowledgement) packet, in other words, the first source-tracing capability acknowledgement packet is a first ACK packet. A router receiving an ACK packet may determine that a router sending the ACK packet has the source-tracing capability.
In this embodiment of this application, a source-tracing capability acknowledgement packet may further include source-tracing capability acknowledgement information, and the source-tracing capability acknowledgement information is used to indicate that a router sending the source-tracing capability acknowledgement packet has the source-tracing capability. For example, source-tracing capability acknowledgement information in the first source-tracing capability acknowledgement packet is used to indicate that the second router has the source-tracing capability.
Optionally, in this embodiment of this application, when sending the first source-tracing capability negotiation packet to the second router, the first router may further indicate, to the second router by using the first source-tracing capability negotiation packet, that the first router has the source-tracing capability. For example, the first source-tracing capability negotiation packet may include source-tracing capability indication information. The source-tracing capability indication information in the first source-tracing capability negotiation packet is used to indicate that the first router has the source-tracing capability. After receiving the first source-tracing capability negotiation packet, the second router may determine, based on the source-tracing capability indication information in the first source-tracing capability negotiation packet, that the first router has the source-tracing capability.
Optionally, in this embodiment of this application, a protocol used by a source-tracing capability negotiation packet and a source-tracing capability acknowledgement packet may be UDP. A port for receiving and sending the source-tracing capability negotiation packet or the source-tracing capability acknowledgement packet may be a port that is of an existing router and that is disabled for the UDP protocol, for example, a port 1068 or a port 1092. In this embodiment of this application, a router having the source-tracing capability may set, to be enabled for the UDP protocol, the port for receiving and sending the source-tracing capability negotiation packet or the source-tracing capability acknowledgement packet, so that the source-tracing capability negotiation packet or the source-tracing capability acknowledgement packet using the UDP protocol can be received. In addition, because a router without the source-tracing capability does not enable the port for receiving and sending the source-tracing capability negotiation packet or the source-tracing capability acknowledgement packet, the source-tracing capability negotiation packet or the source-tracing capability acknowledgement packet using the UDP protocol cannot be received.
For example, the first router sends, to the second router by using a port disabled for the UDP protocol, the first source-tracing capability negotiation packet using the UDP protocol. If the second router does not have the source-tracing capability, the second router cannot receive the first source-tracing capability negotiation packet, and therefore the second router cannot return the first source-tracing capability acknowledgement packet to the first router.
Optionally, in this embodiment of this application, a router having the source-tracing capability may further send a source-tracing capability disabling packet to a router adjacent to the router having the source-tracing capability. The source-tracing capability disabling packet is used to indicate that the router sending the source-tracing capability disabling packet temporarily stops supporting the source-tracing capability.
With reference to the foregoing description, in this embodiment of this application, the first router may receive a first source-tracing capability disabling packet sent by the second router, and the first source-tracing capability disabling packet is used to indicate that the second router temporarily stops supporting the source-tracing capability. In this case, the first router determines that the second router temporarily stops supporting the source-tracing capability, and therefore the first router determines that the second router is a router that does not have the source-tracing capability. Correspondingly, the first router may send a second source-tracing capability disabling packet to the second router, and the second source-tracing capability disabling packet is used to indicate that the first router temporarily stops supporting the source-tracing capability. After receiving the second source-tracing capability disabling packet, the second router determines that the first router temporarily stops supporting the source-tracing capability, and therefore the second router determines that the first router is a router that does not have the source-tracing capability.
In the foregoing method, when a router having the source-tracing capability runs at high load, the router may temporarily stop supporting the source-tracing capability, thereby relieving load of the router.
In this embodiment of this application, after generating the first source-tracing packet, the first router may determine whether duration between a moment of sending a third source-tracing capability negotiation packet to the second router in a previous period and a moment of generating the first source-tracing packet exceeds preset duration, and send the first source-tracing capability negotiation packet to the second router if the duration exceeds the preset duration. The third source-tracing capability negotiation packet is used to query whether the second router has the source-tracing capability. The preset duration may be duration corresponding to one period, and the period may be determined based on an actual situation. For example, the period may be 3600 seconds.
If the first router determines that the duration between the moment of sending the third source-tracing capability negotiation packet to the second router in the previous period and the moment of generating the first source-tracing packet does not exceed the preset duration, the first router may determine, based on a source-tracing capability status that is determined in the previous period and that is of the second router, whether the second router has the source-tracing capability. Specifically, if the first router determines, in the previous period by sending the third source-tracing capability negotiation packet, that the second router has the source-tracing capability, the first router determines that the second router has the source-tracing capability. If the first router determines, in the previous period by sending the third source-tracing capability negotiation packet, that the second router does not have the source-tracing capability, the first router determines that the second router does not have the source-tracing capability.
Optionally, after the first router sends the first source-tracing packet to the second router, if the first router determines that the duration between the moment of sending the third source-tracing capability negotiation packet to the second router in the previous period and the moment of generating the first source-tracing packet exceeds the preset duration, the first router sends a fourth source-tracing capability negotiation packet to the second router. Both the third source-tracing capability negotiation packet and the fourth source-tracing capability negotiation packet are used to query whether the second router has the source-tracing capability.
In the foregoing method, the first router can update a source-tracing capability of the second router in real time, so as to accurately determine whether the second router has the source-tracing capability.
Correspondingly, the first router may further receive a second source-tracing capability negotiation packet sent by a third router, and the second source-tracing capability negotiation packet is used to query whether the first router has the source-tracing capability. The first router may send a second source-tracing capability acknowledgement packet to the third router, and the second source-tracing capability acknowledgement packet is used to indicate that the first router has the source-tracing capability. Certainly, if the first router does not have the source-tracing capability, the first router does not send the second source-tracing capability acknowledgement packet to the third router. If the third router does not receive the second source-tracing capability acknowledgement packet, the third router determines that the first router does not have the source-tracing capability. The third router is a router adjacent to the first router. The third router may be a router the same as the second router or a router different from the second router.
In this embodiment of this application, after the first router sends the second source-tracing capability acknowledgement packet to the third router, the first router may further receive a second routing information update packet and a second source-tracing packet that are sent by the third router, and the second source-tracing packet is used to indicate a source router generating the second routing information update packet. The first router may determine, based on the second source-tracing packet, the source router generating the second routing information update packet. Optionally, after receiving the second routing information update packet, the first router may update routing information based on the second routing information update packet. The first router may further determine, based on the second source-tracing packet, the source router generating the second routing information update packet. The second source-tracing packet is sent by the third router after the third router determines that the first router has the source-tracing capability.
Correspondingly, the first router may further forward the received second source-tracing packet to a router that is in a router adjacent to the first router and that has the source-tracing capability.
Optionally, in this embodiment of this application, after receiving a routing information update packet sent by a router adjacent to the first router, the first router may further generate a source-tracing assistance packet indicating a source router generating the routing information update packet. The following provides detailed descriptions of different scenarios.
In a possible scenario, the first router receives a third routing information update packet sent by a fourth router. After the first router receives the third routing information update packet, if the first router determines that a fifth router adjacent to the first router has the source-tracing capability, the first router generates a first source-tracing assistance packet, and sends the first source-tracing assistance packet to the fifth router. The first source-tracing assistance packet is used to indicate that the fourth router is a source router generating the third routing information update packet. The fourth router may be a router the same as the third router or a router different from the third router. The fifth router may be a router the same as the second router or a router different from the second router.
Optionally, after the first router receives the third routing information update packet sent by the fourth router, if the first router determines that none of routers adjacent to the first router have the source-tracing capability, the first router may not generate the first source-tracing assistance packet, but forward the third routing information update packet to the routers adjacent to the first router.
In this method, before the first router receives a source-tracing packet from the fourth router, the first router may generate the first source-tracing assistance packet. This helps another router quickly locate a router for which whether the router has the source-tracing capability is not determined.
In another possible scenario, the first router may receive the third routing information update packet sent by the fourth router. After the first router receives the third routing information update packet, if the first router determines that the fourth router does not have the source-tracing capability and the fifth router adjacent to the first router has the source-tracing capability, the first router may generate the first source-tracing assistance packet. After generating the first source-tracing assistance packet, the first router sends the first source-tracing assistance packet to the fifth router. The first source-tracing assistance packet is used to indicate that the fourth router is a source router generating the third routing information update packet.
Optionally, after the first router receives the third routing information update packet sent by the fourth router, if the first router determines that the fourth router does not have the source-tracing capability and none of routers adjacent to the first router have the source-tracing capability, the first router may not generate the first source-tracing assistance packet, but forward the third routing information update packet to the router adjacent to the first router.
In the foregoing method, after the fourth router that does not have the source-tracing capability generates a routing information update packet, a router that is adjacent to the fourth router and that has the source-tracing capability, for example, the first router, may generate a source-tracing assistance packet such as the first source-tracing assistance packet. This helps another router quickly locate a router that does not have the source-tracing capability, and a router having the source-tracing capability and the router that does not have the source-tracing capability can be compatible with each other.
It should be noted that, a method for determining, by the first router, whether routers such as the fourth router and the fifth router have the source-tracing capability is the same as the method for determining, by the first router, whether the second router has the source-tracing capability, and details are not described herein again.
Optionally, after the first router generates the first source-tracing assistance packet, before the first router sends the first source-tracing assistance packet to the fifth router, the first router determines whether duration between a moment of sending a fifth source-tracing capability negotiation packet to the fifth router in a previous period and a moment of generating the first source-tracing assistance packet exceeds preset duration, and sends a sixth source-tracing capability negotiation packet to the fifth router if the duration exceeds the preset duration. Both the fifth source-tracing capability negotiation packet and the sixth source-tracing capability negotiation packet are used to query whether the fifth router has the source-tracing capability.
If the first router determines that the duration between the moment of sending the fifth source-tracing capability negotiation packet to the fifth router in the previous period and the moment of generating the first source-tracing assistance packet does not exceed the preset duration, the first router may determine, based on a source-tracing capability status that is determined in the previous period and that is of the fifth router, whether the fifth router has the source-tracing capability. Specifically, if the first router determines, in the previous period by sending the fifth source-tracing capability negotiation packet, that the fifth router has the source-tracing capability, the first router determines that the fifth router has the source-tracing capability. If the first router determines, in the previous period by sending the fifth source-tracing capability negotiation packet, that the fifth router does not have the source-tracing capability, the first router determines that the fifth router does not have the source-tracing capability.
Optionally, after the first router sends the first source-tracing assistance packet to the fifth router, if the first router determines that the duration between the moment of sending the fifth source-tracing capability negotiation packet to the fifth router in the previous period and the moment of generating the first source-tracing assistance packet exceeds the preset duration, the first router sends a seventh source-tracing capability negotiation packet to the fifth router. The seventh source-tracing capability negotiation packet is used to query whether the fifth router has the source-tracing capability.
It should be noted that, in this embodiment of this application, after the first router receives a routing information update packet, a generated source-tracing assistance packet may include one or more types of the following information: a router identifier of a router sending the routing information update packet to the first router, a name of the router sending the routing information update packet to the first router, an IP address of the router sending the routing information update packet to the first router, an IP address of a router generating the source-tracing assistance packet, a router identifier of the router generating the source-tracing assistance packet, a router name of the router generating the source-tracing assistance packet, an ID of the routing information update packet, or a sequence number of the routing information update packet.
For example, after receiving the third routing information update packet sent by the fourth router, the first router determines that the fourth router does not have the source-tracing capability and the fifth router adjacent to the first router has the source-tracing capability. In this case, the first source-tracing assistance packet generated by the first router includes one or more types of the following information: a router identifier of the first router, a name of the first router, an IP address of the first router, a router identifier of the fourth router, a name of the fourth router, an IP address of the fourth router, an ID of the third routing information update packet, or a sequence number of the third routing information update packet.
Certainly, a source-tracing assistance packet may further include other information, and details are not described herein.
It should be noted that, in this embodiment of this application, a source-tracing assistance packet is a packet that needs to be flooded in the entire network. The source-tracing assistance packet may include flooding indication information, and the flooding indication information is used to instruct a router receiving the source-tracing assistance packet to forward the source-tracing assistance packet to a router that is in a router adjacent to the router receiving the source-tracing assistance packet and that has the source-tracing capability.
Correspondingly, a source-tracing assistance packet may be a UDP packet, and a port for receiving and sending the source-tracing assistance packet is a port that is of an existing router and that is disabled for the UDP protocol, for example, a port 1068 or a port 1092. In this embodiment of this application, a router having the source-tracing capability sets, to be enabled for the UDP protocol, the port for receiving and sending the source-tracing assistance packet, and therefore a router that does not have the source-tracing capability cannot receive the source-tracing assistance packet or the like.
For example, the second router has the source-tracing capability. After receiving the first source-tracing assistance packet sent by the first router, the second router forwards the first source-tracing assistance packet to a router that is in a router adjacent to the second router and that has the source-tracing capability.
In the foregoing solution, after the first router receives the third routing information update packet sent by the fourth router adjacent to the first router, if the first router determines that the fourth router sending the third routing information update packet does not have the source-tracing capability, the first router may generate a first source-tracing assistance packet corresponding to the third routing information update packet. The first source-tracing assistance packet indicates that the fourth router is a source router generating the third routing information update packet. Instead of the fourth router that does not have the source-tracing capability, the first router can generate the first source-tracing assistance packet corresponding to the third routing information update packet, so that the fourth router that does not have the source-tracing capability is quickly located by another router when the fourth router sends the third routing information update packet. This facilitates mutual compatibility between a router having the source-tracing capability and a router that does not have the source-tracing capability.
In this embodiment of this application, to accurately determine a source router generating a routing information update packet, the router may be preferentially subject to a source router indicated by a source-tracing packet.
Specifically, the first router obtains a second source-tracing assistance packet and a third source-tracing packet. The second source-tracing assistance packet is used to indicate that a sixth router is a source router generating a fourth routing information update packet, and the third source-tracing packet is used to indicate that a seventh router is the source router generating the fourth routing information update packet. The first router determines, based on the third source-tracing packet, that the source router generating the fourth routing information update packet is the seventh router.
For example, a router A receives a routing information update packet L1 and a source-tracing assistance packet M1 that are sent by a router B, and the source-tracing assistance packet M1 is used to indicate that a router C is a source router generating the routing information update packet L1. In addition, the router A further receives the routing information update packet L1 and a source-tracing packet M2 that are sent by a router D, and the source-tracing packet M2 is used to indicate that the router D is the source router generating the routing information update packet L1. In this case, the router A may determine, based on the source-tracing packet M2, that the router D is the source router generating the routing information update packet L1, so that the accurate source router is determined.
In the foregoing solution, when the first router receives a source-tracing packet and a source-tracing assistance packet that are corresponding to a same routing information update packet, the first router preferentially determines, based on the source-tracing packet, a source router generating the routing information update packet. In this solution, when the source-tracing packet and the source-tracing assistance packet indicate different source routers generating the same routing information update packet, a router receiving the routing information update packet can accurately determine the source router generating the routing information update packet, so that a router having the source-tracing capability and a router that does not have the source-tracing capability coexist.
In S104, the second router may further determine, based on the first source-tracing packet, that the first router is the source router generating the first routing information update packet. Optionally, the second router may further receive the first routing information update packet sent by the first router, so as to update routing information based on the first routing information update packet.
In S105, after determining that the third router has the source-tracing capability, the second router may further forward the received first routing information update packet to the third router.
Optionally, after determining that the third router does not have the source-tracing capability, the second router may send the first routing information update packet to the third router.
The second router may further receive the first source-tracing capability negotiation packet sent by the first router, and return the first source-tracing capability acknowledgement packet to the first router. In this way, the first router can determine, based on the first source-tracing capability acknowledgement packet, that the second router has the source-tracing capability.
Certainly, the second router may send a source-tracing capability negotiation packet to the first router, to learn whether the first router has the source-tracing capability.
For another function of the second router, refer to descriptions in S101 to S103. Details are not described herein again.
The foregoing method procedure is described below by using specific embodiments.
As shown in FIG. 2, FIG. 2 is a schematic flowchart of a packet transmission method according to an embodiment of this application.
S201. A first router generates a first routing information update packet.
S202. The first router generates a first source-tracing packet.
S203. The first router determines whether a second router adjacent to the first router has a source-tracing capability, and performs S204 if the second router has the source-tracing capability, or performs S205 if the second router does not have the source-tracing capability.
After generating the first source-tracing packet, the first router may determine, by sending a source-tracing capability negotiation packet to the second router, whether the second router has the source-tracing capability.
S204. The first router sends the first routing information update packet and the first source-tracing packet to the second router.
S205. The first router sends the first routing information update packet to the second router.
Optionally, after S204 or S205, the method provided in this embodiment of this application may further include S206: The first router determines whether duration between a moment of sending a source-tracing capability negotiation packet to the second router in a previous period and a moment of generating the first source-tracing packet exceeds preset duration, and performs S207 if the duration exceeds the preset duration, or performs S208 if the duration does not exceed the preset duration.
S207. The first router sends the source-tracing capability negotiation packet to the second router, to update a source-tracing capability of the second router.
S208. End this procedure.
As shown in FIG. 3, FIG. 3 is a schematic flowchart of a packet transmission method according to an embodiment of this application.
S301. A first router receives a third routing information update packet sent by a third router.
S302. The first router determines whether the third router has a source-tracing capability, and performs S303 if the third router does not have the source-tracing capability, or performs S304 if the third router has the source-tracing capability.
After receiving the third routing information update packet, the first router may determine, by sending a source-tracing capability negotiation packet to the third router, whether the third router has the source-tracing capability.
S303. The first router generates a first source-tracing assistance packet, and then performs S304.
The first source-tracing assistance packet is used to indicate that the third router is a source router generating the third routing information update packet.
S304. The first router determines whether duration between a moment of sending a source-tracing capability negotiation packet to the third router in a previous period and a moment of receiving the third routing information update packet exceeds preset duration, and performs S305 if the duration exceeds the preset duration, or performs S306 if the duration does not exceed the preset duration.
S305. The first router sends the source-tracing capability negotiation packet to the third router, to update a source-tracing capability of the third router.
S306. End this procedure.
As shown in FIG. 4, FIG. 4 is a schematic diagram of a router connection according to an embodiment of this application.
Eight routers: Router A thru router H are included in FIG. 4. The router A is adjacent to the router B. The router B is adjacent to all of the router A, the router C, and the router D. The router C is adjacent to both the router B and the router E. The router D is adjacent to both the router B and the router F. The router E is adjacent to both the router C and the router G The router F is adjacent to both the router D and the router G The router G is adjacent to all of the router E, the router F, and the router H. The router H is adjacent to the router G.
The following provides separate descriptions of different scenarios.
In a first scenario, any router in FIG. 4 has a source-tracing capability, in other words, all of the router A to the router H have the source-tracing capability. When or after any router generates a routing information update packet, the router generates a source-tracing packet corresponding to the routing information update packet. Another router in the scenario shown in FIG. 4 can determine, based on the source-tracing packet, a source router generating the routing information update packet.
In a second scenario, only the router C in the scenario shown in FIG. 4 does not have a source-tracing capability, and all of the other routers in the scenario shown in FIG. 4 have the source-tracing capability. After generating a routing information update packet and a source-tracing packet corresponding to the routing information update packet, the router A sends the routing information update packet and the source-tracing packet to the router B. The source-tracing packet indicates that the router A is a source router generating the routing information update packet. Because the router C does not have the source-tracing capability, the router B sends only the routing information update packet to the router C. Because the router D has the source-tracing capability, the router B sends the routing information update packet and the source-tracing packet to the router D.
After receiving the routing information update packet, the router C sends the routing information update packet to the router E. The router E determines that the router C does not have the source-tracing capability, and after receiving the routing information update packet from the router C, the router E generates a source-tracing assistance packet. The source-tracing assistance packet indicates that the router C is the source router generating the routing information update packet. The router E sends the source-tracing capability assistance packet to the router G.
After receiving the routing information update packet and the source-tracing packet, the router D sends the routing information update packet and the source-tracing packet to the router F. Then, the router F sends the routing information update packet and the source-tracing packet to the router G.
The router G receives the routing information update packet and the source-tracing assistance packet that are sent by the router E. The router G may further receive the routing information update packet and the source-tracing packet from the router F. In this case, the router G preferentially determines, based on the source-tracing packet, that the source router generating the routing information update packet is the router A.
In a third scenario, neither the router C nor the router D in the scenario shown in FIG. 4 has a source-tracing capability, and all of the other routers in the scenario shown in FIG. 4 have the source-tracing capability. After generating a routing information update packet and a source-tracing packet corresponding to the routing information update packet, the router A sends the routing information update packet and the source-tracing packet to the router B. The source-tracing packet indicates that the router A is a source router generating the routing information update packet. Because neither the router C nor the router D has the source-tracing capability, the router B sends only the routing information update packet to the router C and the router D. The router C forwards, to the router E, the routing information update packet generated by the router A. The router E determines that the router C does not have the source-tracing capability, and after receiving the routing information update packet sent by the router C, the router E generates a first source-tracing assistance packet corresponding to the routing information update packet. The first source-tracing assistance packet indicates that the router C is the source router generating the routing information update packet. The router D forwards, to the router F, the routing information update packet generated by the router A. The router F determines that the router D does not have the source-tracing capability, and after receiving the routing information update packet sent by the router D, the router F generates a second source-tracing assistance packet corresponding to the routing information update packet. The second source-tracing assistance packet indicates that the router D is the source router generating the routing information update packet. The router G receives the routing information update packet and the first source-tracing assistance packet that are sent by the router E. The router G may further receive the routing information update packet and the second source-tracing assistance packet that are sent by the router F. The router G determines, based on the first source-tracing assistance packet, that the source router corresponding to the routing information update packet is the router C. The router G determines, based on the second source-tracing assistance packet, that the source router corresponding to the routing information update packet is the router D. Then, the router G may determine, based on the router C or the router D, that the source router sending the routing information update packet is the router B. The router G may further determine, based on the second source-tracing packet received by the router B, that the source router sending the routing information update packet is the router A.
Based on a same technical concept, an embodiment of this application further provides a packet transmission apparatus, and the packet transmission apparatus may perform the foregoing method embodiment.
As shown in FIG. 5, FIG. 5 is a schematic structural diagram of a packet transmission apparatus according to an embodiment of this application. The apparatus is disposed in a first router, and the apparatus includes a first packet generation unit 501 configured to generate a first routing information update packet; a second packet generation unit 502 configured to generate a first source-tracing packet, where the first source-tracing packet is used to indicate that the first router is a source router generating the first routing information update packet; and a transceiver unit 503 configured to determine that a second router adjacent to the apparatus has a source-tracing capability, and send the first source-tracing packet to the second router.
Optionally, the transceiver unit 503 is further configured to: determine that the second router does not have the source-tracing capability, and send the first routing information update packet to the second router.
Optionally, the transceiver unit 503 is specifically configured to send a first source-tracing capability negotiation packet to the second router, where the first source-tracing capability negotiation packet is used to query whether the second router has the source-tracing capability; and after receiving a first source-tracing capability acknowledgement packet sent by the second router, determine that the second router has the source-tracing capability, where the first source-tracing capability acknowledgement packet is used to indicate that the second router has the source-tracing capability.
Optionally, the transceiver unit 503 is further configured to send the first source-tracing capability negotiation packet to the second router if the duration between a moment of sending a third source-tracing capability negotiation packet to the second router in a previous period and a moment of generating the first source-tracing packet exceeds preset duration, where the preset duration is duration corresponding to one period, and the third source-tracing capability negotiation packet is used to query whether the second router has the source-tracing capability.
Optionally, the transceiver unit 503 is further configured to send a fourth source-tracing capability negotiation packet to the second router if the duration between the moment of sending the third source-tracing capability negotiation packet to the second router in the previous period and the moment of generating the first source-tracing packet exceeds the preset duration, where both the third source-tracing capability negotiation packet and the fourth source-tracing capability negotiation packet are used to query whether the second router has the source-tracing capability.
Optionally, the transceiver unit 503 is further configured to receive a second source-tracing capability negotiation packet sent by a third router, where the second source-tracing capability negotiation packet is used to query whether the first router has the source-tracing capability; and send a second source-tracing capability acknowledgement packet to the third router, where the second source-tracing capability acknowledgement packet is used to indicate that the first router has the source-tracing capability.
Optionally, the transceiver unit 503 is further configured to receive a second routing information update packet and a second source-tracing packet that are sent by the third router, where the second source-tracing packet is used to indicate a source router generating the second routing information update packet; and determine, based on the second source-tracing packet, the source router generating the second routing information update packet.
Optionally, the transceiver unit 503 is configured to receive a third routing information update packet sent by a fourth router.
The second packet generation unit 502 is configured to determine that the fourth router does not have the source-tracing capability and a fifth router adjacent to the apparatus has the source-tracing capability, and generate a first source-tracing assistance packet, where the first source-tracing assistance packet is used to indicate that the fourth router is a source router generating the third routing information update packet.
The transceiver unit 503 is configured to send the first source-tracing assistance packet to the fifth router.
Optionally, the transceiver unit 503 is further configured to obtain a second source-tracing assistance packet and a third source-tracing packet, where the second source-tracing assistance packet is used to indicate that a sixth router is a source router generating a fourth routing information update packet, and the third source-tracing packet is used to indicate that a seventh router is the source router generating the fourth routing information update packet; and determine, based on the third source-tracing packet, that the source router generating the fourth routing information update packet is the seventh router.
Based on a same technical concept, an embodiment of this application further provides a packet transmission apparatus, and the packet transmission apparatus may perform the foregoing method embodiment.
As shown in FIG. 6, FIG. 6 is a schematic structural diagram of a packet transmission apparatus according to an embodiment of this application. The apparatus includes a receiving unit 601 configured to receive a first source-tracing packet sent by a first router, where the first source-tracing packet is used to indicate that the first router is a source router generating a first routing information update packet; and a sending unit 602 configured to determine that a third router adjacent to the apparatus has a source-tracing capability, and send the first source-tracing packet to the third router.
Optionally, the sending unit 602 is further configured to determine that the third router does not have the source-tracing capability, and send the first routing information update packet to the third router.
Optionally, the apparatus further includes a packet generation unit 603.
The receiving unit 601 is configured to receive a second routing information update packet sent by a fourth router.
The packet generation unit 603 is configured to determine that the fourth router does not have the source-tracing capability and a fifth router adjacent to the apparatus has the source-tracing capability, and generate a first source-tracing assistance packet, where the first source-tracing assistance packet is used to indicate that the fourth router is a source router generating the second routing information update packet.
The sending unit 602 is configured to send the first source-tracing assistance packet to the fifth router.
Optionally, the apparatus further includes a packet generation unit 603.
The receiving unit 601 is configured to receive a second routing information update packet sent by a fourth router.
The packet generation unit 603 is configured to determine that a fifth router adjacent to the apparatus has the source-tracing capability, and generate a first source-tracing assistance packet, where the first source-tracing assistance packet is used to indicate that the fourth router is a source router generating the second routing information update packet.
The sending unit 602 is configured to send the first source-tracing assistance packet to the fifth router.
Optionally, the receiving unit 601 is further configured to receive a second source-tracing assistance packet and a second source-tracing packet, where the second source-tracing assistance packet is used to indicate that a sixth router is a source router generating a fourth routing information update packet, and the second source-tracing packet is used to indicate that a seventh router is the source router generating the fourth routing information update packet; and determine, based on the second source-tracing packet, that the source router generating the fourth routing information update packet is the seventh router.
Based on a same technical concept, an embodiment of this application further provides a packet transmission apparatus, and the packet transmission apparatus may perform the foregoing method embodiment.
As shown in FIG. 7, FIG. 7 is a schematic structural diagram of a packet transmission apparatus according to an embodiment of this application.
The apparatus includes a processor 701, a memory 702, and a communications interface 703.
The communications interface 703 may be a wired communications interface, a wireless communications interface, or a combination thereof. The wired communications interface may be, for example, an Ethernet interface. The Ethernet interface may be an optical interface, an electrical interface, or a combination thereof. The wireless communications interface may be, for example, a wireless local area network communications interface, a cellular network communications interface, or a combination thereof. The processor 701 may be a central processing unit (CPU), a network processor (NP), or a combination of the CPU and the NP. The processor 701 may further include a hardware chip. The hardware chip may be an application-specific integrated circuit (ASIC), a programmable logic device (PLD), or a combination thereof. The PLD may be a complex programmable logic device (CPLD), a field programmable logic gate array (FPGA), generic array logic (GAL), or any combination thereof. The memory 702 may include a volatile memory such as a random access memory (RAM), or the memory 702 may include a non-volatile memory such as a read-only memory (ROM), a flash memory, a hard disk drive (HDD), or a solid state drive (SSD). Alternatively, the memory 702 may include a combination of the foregoing types of memories.
The memory 702 may be configured to store a program. Optionally, the memory 702 may further store a received packet.
The processor 701 reads an instruction corresponding to the program from the memory 702, to perform the following operations generating a first routing information update packet; generating a first source-tracing packet, where the first source-tracing packet is used to indicate that the first router is a source router generating the first routing information update packet; determining that a second router adjacent to the apparatus has a source-tracing capability; and sending the first source-tracing packet to the second router by using the communications interface 703.
Optionally, the processor 701 further determines that the second router does not have the source-tracing capability, and sends the first routing information update packet to the second router by using the communications interface 703.
Optionally, the processor 701 is specifically configured to send a first source-tracing capability negotiation packet to the second router by using the communications interface 703, where the first source-tracing capability negotiation packet is used to query whether the second router has the source-tracing capability; and after receiving, by using the communications interface 703, a first source-tracing capability acknowledgement packet sent by the second router, determine that the second router has the source-tracing capability, where the first source-tracing capability acknowledgement packet is used to indicate that the second router has the source-tracing capability.
Optionally, the processor 701 is further configured to send the first source-tracing capability negotiation packet to the second router by using the communications interface 703 if the duration between a moment of sending a third source-tracing capability negotiation packet to the second router in a previous period and a moment of generating the first source-tracing packet exceeds preset duration, where the preset duration is duration corresponding to one period, and the third source-tracing capability negotiation packet is used to query whether the second router has the source-tracing capability.
Optionally, the processor 701 is further configured to send a fourth source-tracing capability negotiation packet to the second router by using the communications interface 703 if the duration between the moment of sending the third source-tracing capability negotiation packet to the second router in the previous period and the moment of generating the first source-tracing packet exceeds the preset duration, where both the third source-tracing capability negotiation packet and the fourth source-tracing capability negotiation packet are used to query whether the second router has the source-tracing capability.
Optionally, the processor 701 is further configured to receive, by using the communications interface 703, a second source-tracing capability negotiation packet sent by a third router, where the second source-tracing capability negotiation packet is used to query whether the first router has the source-tracing capability; and send a second source-tracing capability acknowledgement packet to the third router by using the communications interface 703, where the second source-tracing capability acknowledgement packet is used to indicate that the first router has the source-tracing capability.
Optionally, the processor 701 is further configured to receive, by using the communications interface 703, a second routing information update packet and a second source-tracing packet that are sent by the third router, where the second source-tracing packet is used to indicate a source router generating the second routing information update packet; and determine, based on the second source-tracing packet, the source router generating the second routing information update packet.
Optionally, the processor 701 is further configured to receive, by using the communications interface 703, a third routing information update packet sent by a fourth router; determine that the fourth router does not have the source-tracing capability and a fifth router adjacent to the apparatus has the source-tracing capability, and generate a first source-tracing assistance packet, where the first source-tracing assistance packet is used to indicate that the fourth router is a source router generating the third routing information update packet; and send the first source-tracing assistance packet to the fifth router by using the communications interface 703.
Optionally, the processor 701 is further configured to obtain a second source-tracing assistance packet and a third source-tracing packet, where the second source-tracing assistance packet is used to indicate that a sixth router is a source router generating a fourth routing information update packet, and the third source-tracing packet is used to indicate that a seventh router is the source router generating the fourth routing information update packet; and determine, based on the third source-tracing packet, that the source router generating the fourth routing information update packet is the seventh router.
A bus may further be included in FIG. 7, and the bus may include any quantity of interconnected buses and bridges, and specifically link various circuits of one or more processors represented by the processor and a memory represented by the memory. The bus may further link various other circuits such as a peripheral device, a voltage stabilizer, and a power management circuit. The circuits are no longer further described in this specification. The communications interface provides a unit for communicating with various other devices on a transmission medium. The processor is responsible for bus architecture management and general processing. The memory may store data used when the processor performs an operation.
Based on a same technical concept, an embodiment of this application further provides a packet transmission apparatus, and the packet transmission apparatus may perform the foregoing method embodiment.
As shown in FIG. 8, FIG. 8 is a schematic structural diagram of a packet transmission apparatus according to an embodiment of this application.
The apparatus includes a processor 801, a memory 802, and a communications interface 803.
The communications interface 803 may be a wired communications interface, a wireless communications interface, or a combination thereof. The wired communications interface may be, for example, an Ethernet interface. The Ethernet interface may be an optical interface, an electrical interface, or a combination thereof. The wireless communications interface may be, for example, a wireless local area network communications interface, a cellular network communications interface, or a combination thereof. The processor 801 may be a CPU, an NP, or a combination of the CPU and the NP. The processor 801 may further include a hardware chip. The hardware chip may be an application-specific integrated circuit ASIC, a PLD, or a combination thereof. The PLD may be a CPLD, an FPGA, a GAL, or any combination thereof. The memory 802 may include a volatile memory such as a RAM, or the memory 802 may include a non-volatile memory such as a ROM, a flash memory, an HDD, or an SSD. Alternatively, the memory 802 may include a combination of the foregoing types of memories.
The memory 802 may be configured to store a program and a received packet.
The processor reads an instruction corresponding to the program from the memory 802, to perform the following operations receiving, by using the communications interface 803, a first source-tracing packet sent by a first router, where the first source-tracing packet is used to indicate that the first router is a source router generating a first routing information update packet; and determining that a third router adjacent to the apparatus has a source-tracing capability, and sending the first source-tracing packet to the third router by using the communications interface 803.
Optionally, the processor 801 is further configured to determine that the third router does not have the source-tracing capability, and send the first routing information update packet to the third router by using the communications interface 803.
Optionally, the processor 801 is further configured to receive, by using the communications interface 803, a second routing information update packet sent by a fourth router; determine that the fourth router does not have the source-tracing capability and a fifth router adjacent to the apparatus has the source-tracing capability, and generate a first source-tracing assistance packet, where the first source-tracing assistance packet is used to indicate that the fourth router is a source router generating the second routing information update packet; and send the first source-tracing assistance packet to the fifth router by using the communications interface 803.
Optionally, the processor 801 is further configured to receive, by using the communications interface 803, a second routing information update packet sent by a fourth router; determine that a fifth router adjacent to the apparatus has the source-tracing capability, and generate a first source-tracing assistance packet, where the first source-tracing assistance packet is used to indicate that the fourth router is a source router generating the second routing information update packet; and send the first source-tracing assistance packet to the fifth router by using the communications interface 803.
Optionally, the processor 801 is further configured to receive a second source-tracing assistance packet and a second source-tracing packet by using the communications interface 803, where the second source-tracing assistance packet is used to indicate that a sixth router is a source router generating a fourth routing information update packet, and the second source-tracing packet is used to indicate that a seventh router is the source router generating the fourth routing information update packet; and determine, based on the second source-tracing packet, that the source router generating the fourth routing information update packet is the seventh router.
A bus may further be included in FIG. 8, and the bus may include any quantity of interconnected buses and bridges, and specifically link various circuits of one or more processors represented by the processor and a memory represented by the memory. The bus may further link various other circuits such as a peripheral device, a voltage stabilizer, and a power management circuit. The circuits are no longer further described in this specification. The communications interface provides a unit for communicating with various other devices on a transmission medium. The processor is responsible for bus architecture management and general processing. The memory may store data used when the processor performs an operation.
This application is described with reference to the flowcharts and/or block diagrams of the method, the device (system), and the computer program product according to the embodiments of this application. It should be understood that computer program instructions may be used to implement each process and/or each block in the flowcharts and/or the block diagrams and a combination of a process and/or a block in the flowcharts and/or the block diagrams. These computer program instructions may be provided for a general-purpose computer, a dedicated computer, an embedded processor, or a processor of any other programmable data processing device to generate a machine, so that the instructions executed by a computer or a processor of any other programmable data processing device generate an apparatus for implementing a specific function in one or more processes in the flowcharts and/or in one or more blocks in the block diagrams.
These computer program instructions may be stored in a computer readable memory that can instruct the computer or any other programmable data processing device to work in a specific manner, so that the instructions stored in the computer readable memory generate an artifact that includes an instruction apparatus. The instruction apparatus implements a specific function in one or more processes in the flowcharts and/or in one or more blocks in the block diagrams.
These computer program instructions may be loaded onto a computer or another programmable data processing device, so that a series of operations and steps are performed on the computer or the another programmable device, thereby generating computer-implemented processing. Therefore, the instructions executed on the computer or the another programmable device provide steps for implementing a specific function in one or more processes in the flowcharts and/or in one or more blocks in the block diagrams.
Although some embodiments of this application have been described, persons skilled in the art can make changes and modifications to these embodiments once they learn the basic inventive concept. Therefore, the following claims are intended to be construed as to cover the preferred embodiments and all changes and modifications falling within the scope of this application.
Obviously, persons skilled in the art can make various modifications and variations to this application without departing from the scope of this application. This application is intended to cover these modifications and variations provided that they fall within the scope of protection defined by the following claims.

Claims (20)

What is claimed is:
1. A packet transmission method, implemented by a first router, the packet transmission method comprising:
detecting that a network topology changes;
generating, in response to the network topology changing, a first routing information update packet;
generating a first source-tracing packet for indicating the first router is a first source router that generates the first routing information update packet;
determining that a second router adjacent to the first router has a source-tracing capability by:
sending a first source-tracing capability negotiation packet to the second router for querying whether the second router has the source-tracing capability; and
determining that the second router has the source-tracing capability after receiving a first source-tracing capability acknowledgement packet from the second router; and
sending the first source-tracing packet and the first routing information update packet to the second router adjacent to the first router that has the source-tracing capability.
2. The packet transmission method of claim 1, further comprising:
receiving a second source-tracing capability negotiation packet from a third router, wherein the second source-tracing capability negotiation packet queries whether the first router has the source-tracing capability; and
sending a second source-tracing capability acknowledgement packet to the third router for indicating the first router has the source-tracing capability.
3. The packet transmission method of claim 2, further comprising:
receiving a second routing information update packet and a second source-tracing packet from the third router, wherein the second source-tracing packet indicates a second source router generates the second routing information update packet; and
determining, based on the second source-tracing packet, that the second source router generates the second routing information update packet.
4. The packet transmission method of claim 1, further comprising:
receiving a second routing information update packet from a third router;
determining that the third router does not have the source-tracing capability and a fourth router adjacent to the first router has the source-tracing capability;
generating a first source-tracing assistance packet for indicating the third router is a second source router that generates the second routing information update packet; and
sending the first source-tracing assistance packet to the fourth router.
5. The packet transmission method of claim 1, further comprising:
obtaining a first source-tracing assistance packet and a second source-tracing packet, wherein the first source-tracing assistance packet indicates that a third router is a second source router that generates a second routing information update packet, and wherein the second source-tracing packet indicates a fourth router is the second source router that generates the second routing information update packet; and
determining, based on the second source-tracing packet, that the second source router that generates the second routing information update packet is the fourth router.
6. A packet transmission method, implemented by a second router, the packet transmission method comprising:
receiving a first source-tracing packet from a first router after a network topology changes, wherein the first source-tracing packet indicates that the first router is a source router that generates a first routing information update packet, and wherein the first routing information update packet comprises a link-state protocol data unit (LSP);
determining that a third router adjacent to the second router has a source-tracing capability; and
sending the first source-tracing packet and the first routing information update packet to the third router adjacent to the second router that has the source-tracing capability.
7. The packet transmission method of claim 6, wherein the second router supports an Interior Gateway Protocol, an Open Shortest Path First (OSPF) protocol, or an Intermediate System to Intermediate System (IS-IS) protocol.
8. The packet transmission method of claim 6, wherein the first routing information update packet comprises an update of a network topology structure.
9. The packet transmission method of claim 6, wherein the first routing information update packet comprises a link-state advertisement (LSA).
10. A packet transmission apparatus disposed in a first router, the packet transmission apparatus comprising:
a processor; and
a memory coupled to the processor and configured to store instructions which, when executed by the processor, cause the packet transmission apparatus to:
detect that a network topology changes;
generate, in response to the network topology changing, a first routing information update packet;
generate a first source-tracing packet for indicating the first router is a first source router that generates the first routing information update packet;
determine that a second router adjacent to the first router has a source-tracing capability by:
sending a first source-tracing capability negotiation packet to the second router for querying whether the second router has the source-tracing capability; and
determining that the second router has the source-tracing capability after receiving a first source-tracing capability acknowledgement packet from the second router; and
send the first source-tracing packet and the first routing information update packet to the second router adjacent to the packet transmission apparatus that has the source-tracing capability.
11. The packet transmission apparatus of claim 10, wherein the instructions, when executed by the processor, further cause the packet transmission apparatus to:
receive a second source-tracing capability negotiation packet from a third router, wherein the second source-tracing capability negotiation packet queries whether the first router has the source-tracing capability; and
send a second source-tracing capability acknowledgement packet to the third router for indicating the first router has the source-tracing capability.
12. The packet transmission apparatus of claim 11, wherein the instructions, when executed by the processor, further cause the packet transmission apparatus to:
receive a second routing information update packet and a second source-tracing packet from the third router, wherein the second source-tracing packet indicates a second source router that generates the second routing information update packet; and
determine, based on the second source-tracing packet, the second source router that generates the second routing information update packet.
13. The packet transmission apparatus of claim 10, wherein the instructions, when executed by the processor, further cause the packet transmission apparatus to:
determine a third router does not have the source-tracing capability and a fourth router adjacent to the packet transmission apparatus has the source-tracing capability;
generate a first source-tracing assistance packet for indicating the third router is a second source router that generates a second routing information update packet; and
send the first source-tracing assistance packet to the fourth router.
14. The packet transmission apparatus of claim 10, wherein the instructions, when executed by the processor, further cause the packet transmission apparatus to:
obtain a first source-tracing assistance packet and a second source-tracing packet, wherein the first source-tracing assistance packet indicates a third router is a second source router that generates a second routing information update packet, and wherein the second source-tracing packet indicates that a fourth router is the second source router that generates the second routing information update packet; and
determine, based on the second source-tracing packet, the second source router that generates the second routing information update packet is the third router.
15. A packet transmission apparatus disposed in a second router, the packet transmission apparatus comprising:
a processor; and
a memory coupled to the processor and configured to store instructions which, when executed by the processor, cause the packet transmission apparatus to:
receive a first source-tracing packet from a first router after a network topology changes, wherein the first source-tracing packet indicates the first router is a source router that generates a first routing information update packet, and wherein the first routing information update packet comprises a link-state protocol data unit (LSP);
determine that a third router adjacent to the packet transmission apparatus has a source-tracing capability; and
send the first source-tracing packet and the first routing information update packet to the third router adjacent to the packet transmission apparatus that has the source-tracing capability.
16. The packet transmission apparatus of claim 15, wherein the second router supports an Interior Gateway Protocol.
17. The packet transmission apparatus of claim 15, wherein the second router supports an Open Shortest Path First (OSPF) protocol.
18. The packet transmission apparatus of claim 15, wherein the second router supports an Intermediate System to Intermediate System (IS-IS) protocol.
19. The packet transmission apparatus of claim 15, wherein the first routing information update packet comprises an update of a network topology structure.
20. The packet transmission apparatus of claim 15, wherein the first routing information update packet comprises a link-state advertisement (LSA).
US16/910,726 2016-02-16 2020-06-24 Packet transmission method and apparatus Active 2037-03-31 US11456943B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US16/910,726 US11456943B2 (en) 2016-02-16 2020-06-24 Packet transmission method and apparatus

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
CN201610088116.4A CN107086924B (en) 2016-02-16 2016-02-16 Message transmission method and device
CN201610088116.4 2016-02-16
PCT/CN2017/073502 WO2017140238A1 (en) 2016-02-16 2017-02-14 Message transmission method and device
US15/998,596 US10721155B2 (en) 2016-02-16 2018-08-16 Packet transmission method and apparatus
US16/910,726 US11456943B2 (en) 2016-02-16 2020-06-24 Packet transmission method and apparatus

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US15/998,596 Continuation US10721155B2 (en) 2016-02-16 2018-08-16 Packet transmission method and apparatus

Publications (2)

Publication Number Publication Date
US20200322251A1 US20200322251A1 (en) 2020-10-08
US11456943B2 true US11456943B2 (en) 2022-09-27

Family

ID=59614538

Family Applications (2)

Application Number Title Priority Date Filing Date
US15/998,596 Expired - Fee Related US10721155B2 (en) 2016-02-16 2018-08-16 Packet transmission method and apparatus
US16/910,726 Active 2037-03-31 US11456943B2 (en) 2016-02-16 2020-06-24 Packet transmission method and apparatus

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US15/998,596 Expired - Fee Related US10721155B2 (en) 2016-02-16 2018-08-16 Packet transmission method and apparatus

Country Status (4)

Country Link
US (2) US10721155B2 (en)
EP (2) EP3402122B1 (en)
CN (2) CN111277494B (en)
WO (1) WO2017140238A1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110708207B (en) * 2018-12-24 2021-10-29 新华三技术有限公司 Route oscillation positioning method, server and machine readable storage medium
CN111385195B (en) * 2018-12-29 2023-05-16 中兴通讯股份有限公司 Information processing method, device and storage medium
CN114125988A (en) * 2020-08-31 2022-03-01 华为技术有限公司 Method and equipment for generating routing information, sending position information and forwarding message

Citations (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6873600B1 (en) * 2000-02-04 2005-03-29 At&T Corp. Consistent sampling for network traffic measurement
US20070025241A1 (en) * 2005-07-26 2007-02-01 Nadeau Thomas D System and methods for sending trace messages
CN101175237A (en) 2007-10-16 2008-05-07 中国移动通信集团福建有限公司 MMS information source tracing method
CN101282241A (en) 2008-05-04 2008-10-08 中国科学院计算技术研究所 System and method for real time processing network route topological in autonomy system
US7496650B1 (en) * 2003-01-09 2009-02-24 Cisco Technology, Inc. Identifying and suppressing transient routing updates
US20090100298A1 (en) 2007-10-10 2009-04-16 Alcatel Lucent System and method for tracing cable interconnections between multiple systems
US20090113070A1 (en) * 2007-10-30 2009-04-30 Rishi Mehta Enhance fault tracing in multi-tiered ethernet/mpls network
US7778393B2 (en) 2004-06-15 2010-08-17 Cisco Technlogy, Inc. System and method for end-to-end communications tracing
US7843838B1 (en) 2005-03-31 2010-11-30 Sprint Communications Company L.P. Communication network route tracing
CN102082782A (en) 2009-11-30 2011-06-01 中国移动通信集团河南有限公司 Method and relevant equipment for introducing external route to OSPF (Open Shortest Path First Interior Gateway Protocol) network
US20110317696A1 (en) 2010-06-29 2011-12-29 Cisco Technology In-band multicast trace in ip and mpls networks
US8149690B1 (en) 2009-02-10 2012-04-03 Force10 Networks, Inc. Elimination of bad link state advertisement requests
CN102624935A (en) 2011-01-26 2012-08-01 华为技术有限公司 Method, device and system for forwarding packet
US20130265881A1 (en) 2012-04-09 2013-10-10 Cisco Technology, Inc. Route convergence monitoring and diagnostics
US20130336109A1 (en) 2012-06-15 2013-12-19 Cisco Technology, Inc. Ordered flooding requests for path computation elements
US20140029446A1 (en) 2005-06-07 2014-01-30 Level 3 Communications, Llc Internet packet quality monitor
CN103916905A (en) 2013-01-06 2014-07-09 中兴通讯股份有限公司 Multicast source registering and multicast path establishing method and device
US20140247723A1 (en) 2007-05-22 2014-09-04 Actiontec Electronics, Inc. Systems and methods for dynamic quality of service
US20140293798A1 (en) 2013-03-27 2014-10-02 Electronics And Telecommunications Research Institute Mpls-tp network and link trace method thereof
CN104202211A (en) 2014-08-25 2014-12-10 电子科技大学 Autonomous system level network topology identification method combining active and passive measurement
CN104243303A (en) 2014-09-25 2014-12-24 杭州华三通信技术有限公司 Updating message transmitting method and device in autonomous system loop networking
US20150124642A1 (en) * 2013-11-05 2015-05-07 Cisco Technology, Inc. Running link state routing protocol in clos networks
US9203723B2 (en) * 2013-01-30 2015-12-01 Broadcom Corporation Network tracing for data centers
US9344349B2 (en) 2013-07-12 2016-05-17 Nicira, Inc. Tracing network packets by a cluster of network controllers
US20160277290A1 (en) * 2015-03-16 2016-09-22 Cisco Technology, Inc. Segment routing label switch paths in network functions virtualization communications networks
US20160358453A1 (en) 2015-06-05 2016-12-08 GM Global Technology Operations LLC System for Providing Alerts to Vehicle Occupants
US9712423B1 (en) * 2010-09-27 2017-07-18 Rockwell Collins, Inc. Routing protocol for an interconnection network
US9755969B2 (en) * 2014-03-04 2017-09-05 International Business Machines Corporation Route tracing in software defined networks
US9813300B2 (en) * 2012-10-16 2017-11-07 Cisco Technology, Inc. Media flow tracing in third party devices
US20180097718A1 (en) * 2015-04-30 2018-04-05 Hewlett Packard Enterprise Development Lp Reducing flooding of route updates of a dynamic routing protocol

Patent Citations (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6873600B1 (en) * 2000-02-04 2005-03-29 At&T Corp. Consistent sampling for network traffic measurement
US7496650B1 (en) * 2003-01-09 2009-02-24 Cisco Technology, Inc. Identifying and suppressing transient routing updates
US7778393B2 (en) 2004-06-15 2010-08-17 Cisco Technlogy, Inc. System and method for end-to-end communications tracing
US7843838B1 (en) 2005-03-31 2010-11-30 Sprint Communications Company L.P. Communication network route tracing
US20140029446A1 (en) 2005-06-07 2014-01-30 Level 3 Communications, Llc Internet packet quality monitor
US20070025241A1 (en) * 2005-07-26 2007-02-01 Nadeau Thomas D System and methods for sending trace messages
US20140247723A1 (en) 2007-05-22 2014-09-04 Actiontec Electronics, Inc. Systems and methods for dynamic quality of service
US20090100298A1 (en) 2007-10-10 2009-04-16 Alcatel Lucent System and method for tracing cable interconnections between multiple systems
CN101175237A (en) 2007-10-16 2008-05-07 中国移动通信集团福建有限公司 MMS information source tracing method
US20090113070A1 (en) * 2007-10-30 2009-04-30 Rishi Mehta Enhance fault tracing in multi-tiered ethernet/mpls network
CN101282241A (en) 2008-05-04 2008-10-08 中国科学院计算技术研究所 System and method for real time processing network route topological in autonomy system
US8149690B1 (en) 2009-02-10 2012-04-03 Force10 Networks, Inc. Elimination of bad link state advertisement requests
CN102082782A (en) 2009-11-30 2011-06-01 中国移动通信集团河南有限公司 Method and relevant equipment for introducing external route to OSPF (Open Shortest Path First Interior Gateway Protocol) network
US20110317696A1 (en) 2010-06-29 2011-12-29 Cisco Technology In-band multicast trace in ip and mpls networks
US9712423B1 (en) * 2010-09-27 2017-07-18 Rockwell Collins, Inc. Routing protocol for an interconnection network
CN102624935A (en) 2011-01-26 2012-08-01 华为技术有限公司 Method, device and system for forwarding packet
US20130265881A1 (en) 2012-04-09 2013-10-10 Cisco Technology, Inc. Route convergence monitoring and diagnostics
US20130336109A1 (en) 2012-06-15 2013-12-19 Cisco Technology, Inc. Ordered flooding requests for path computation elements
US9813300B2 (en) * 2012-10-16 2017-11-07 Cisco Technology, Inc. Media flow tracing in third party devices
US20150358226A1 (en) 2013-01-06 2015-12-10 Zte Corporation Method and device for registering multicast source and establishing multicast path
CN103916905A (en) 2013-01-06 2014-07-09 中兴通讯股份有限公司 Multicast source registering and multicast path establishing method and device
US9203723B2 (en) * 2013-01-30 2015-12-01 Broadcom Corporation Network tracing for data centers
US20140293798A1 (en) 2013-03-27 2014-10-02 Electronics And Telecommunications Research Institute Mpls-tp network and link trace method thereof
US9344349B2 (en) 2013-07-12 2016-05-17 Nicira, Inc. Tracing network packets by a cluster of network controllers
US20150124642A1 (en) * 2013-11-05 2015-05-07 Cisco Technology, Inc. Running link state routing protocol in clos networks
US9755969B2 (en) * 2014-03-04 2017-09-05 International Business Machines Corporation Route tracing in software defined networks
CN104202211A (en) 2014-08-25 2014-12-10 电子科技大学 Autonomous system level network topology identification method combining active and passive measurement
CN104243303A (en) 2014-09-25 2014-12-24 杭州华三通信技术有限公司 Updating message transmitting method and device in autonomous system loop networking
US20160277290A1 (en) * 2015-03-16 2016-09-22 Cisco Technology, Inc. Segment routing label switch paths in network functions virtualization communications networks
US20180097718A1 (en) * 2015-04-30 2018-04-05 Hewlett Packard Enterprise Development Lp Reducing flooding of route updates of a dynamic routing protocol
US20160358453A1 (en) 2015-06-05 2016-12-08 GM Global Technology Operations LLC System for Providing Alerts to Vehicle Occupants

Non-Patent Citations (17)

* Cited by examiner, † Cited by third party
Title
"Chapter 3 Research on IPv6 Network Topology Discovery Algorithm," Master's Degree Thesis of South China University of Technology, 22 pages.
"Information technology—Telecommunications and Information exchange between systems—Intermediate System to Intermediate System intra-domain routing information exchange protocol for use in conjunction with the protocol for providing the connectionless-mode network service (ISO 8473)," ISO/IEC 10589, Second edition, Nov. 15, 2002, 210 pages.
"Study and Realization on Topology Discovery of IPv6 Network," South China University of Technology, Jun. 2013, 50 pages.
Dong, S., et al., "A Novel Algorithm of IPv6 Network Topology Discovery for Campus Network," XP32005692, 2011 IEEE International Conference on Computer Science and Service Systems, Jun. 27, 2011, pp. 68-71.
GOVINDAN R, TANGMUNARUNKIT H: "HEURISTICS FOR INTERNET MAP DISCOVERY", PROCEEDINGS IEEE INFOCOM 2000. THE CONFERENCE ON COMPUTER COMMUNICATIONS. 19TH. ANNUAL JOINT CONFERENCE OF THE IEEE COMPUTER AND COMMUNICATIONS SOCIETIES. TEL AVIV, ISRAEL, MARCH, 26-30, 2000., NEW YORK, NY : IEEE., US, vol. CONF. 19, 26 March 2000 (2000-03-26), US , pages 1371 - 1380, XP001044231, ISBN: 978-0-7803-5881-2
Govindan, R., "Heuristics for Internet Map Discovery," IEEE Infocom 2000, XP1044231, Mar. 26-30, 2000, pp. 1371-1380.
Jia, L., "Study and Realization on Topology Discovery of IPv6Network," A Dissertation Submitted for the Degree of Master, South China University of Technology, Guangzhou, China, Jun. 2013, 72 pages. With the translation of the related part.
Li, T., et al., "Intermediate System to Intermediate System (IS-IS) Cryptographic Authentication," RFC 3567, Jul. 2003, 6 pages.
Li, T., et al., "IS-IS Cryptographic Authentication," RFC 5304, Oct. 2008, 11 pages.
SHOULING DONG ; JIA LI ; LING ZHANG ; JIANFENG DENG: "A novel algorithm of IPv6 network topology discovery for Campus Network", COMPUTER SCIENCE AND SERVICE SYSTEM (CSSS), 2011 INTERNATIONAL CONFERENCE ON, IEEE, 27 June 2011 (2011-06-27), pages 68 - 71, XP032005692, ISBN: 978-1-4244-9762-1, DOI: 10.1109/CSSS.2011.5974912
Shou-Ling, D., "Auto seed selection and discovery algorithm for IPv6 campus network topology," Journal of Xidian University, vol. 42, No. 2, Apr. 2015, 6 pages.
Shouling, D., "Distance-Based Integration Algorithm for Topology Discovery of IPv6 Campus Network," Journal of South China University of Technology (Natural Science Edition), vol. 40, No. 8, Aug. 2012, 7 pages. With an English Abstract.
Shou-Ling, D., "Distance-Based Integration Algorithm for Topology Discovery of IPv6 Campus Network," Journal of South China University of Technology, Natural Science Edition, vol. 40, No. 8, Aug. 2012, 7 pages.
Shouling, D., et al., "Auto seed selection and discovery algorithm for IPv6 campus network topology," Journal of Xidian University, vol. 42, No. 2, Apr. 2015, 6 pages. With an English Abstract.
Shou-Ling, D., et al., "Distance-Based Integration Algorithm for Topology Discovery of IPv6 Campus Network," Journal of South China University of Technology (Natural Science Edition), Aug. 2012, 7 pages.
Shou-ling, D., et al., "Parallel Multi-Traceroute Topology Discovery Algorithm for IPv6 Network," Journal of South China University of Technology (Natural Science Edition), 2013, Issue 03, 8 pages.
Wei, F., et al., "Purge Originator Identification TLV for IS-IS," RFC 6232, May 2011, 6 pages.

Also Published As

Publication number Publication date
US20180367439A1 (en) 2018-12-20
EP3402122A4 (en) 2018-12-05
EP3852309A1 (en) 2021-07-21
CN107086924B (en) 2020-02-14
CN111277494B (en) 2021-08-13
US20200322251A1 (en) 2020-10-08
EP3852309B1 (en) 2023-06-21
EP3402122B1 (en) 2020-12-23
CN107086924A (en) 2017-08-22
WO2017140238A1 (en) 2017-08-24
EP3402122A1 (en) 2018-11-14
CN111277494A (en) 2020-06-12
US10721155B2 (en) 2020-07-21

Similar Documents

Publication Publication Date Title
US11088950B2 (en) Method and device for checking forwarding tables of network nodes by means of check packets
US11456943B2 (en) Packet transmission method and apparatus
CN105743711B (en) A kind of fault detection method of network path, device and the network equipment
CN107171882B (en) Method, device and system for detecting equivalent multipath routing function
WO2018113425A1 (en) Method, apparatus and system for detecting time delay
US12034631B2 (en) Loop avoidance communications method, device, and system
US11711281B2 (en) Methods and network devices for detecting and resolving abnormal routes
US11711243B2 (en) Packet processing method and gateway device
EP3229393B1 (en) Error code information transfer method, network device and communication system
US8971195B2 (en) Querying health of full-meshed forwarding planes
WO2022042503A1 (en) Message transmission method, apparatus, and system
CN113853770A (en) System and method for handling IGP flooding topology inconsistencies
US20210203695A1 (en) Anti-spoofing attack check method, device, and system
US11516122B2 (en) Validating active and inactive paths in a multiprotocol label switching (MPLS) network
WO2020134933A1 (en) Information processing method and device, and storage medium
WO2017219868A1 (en) Arp entry processing method and apparatus
EP3806386A1 (en) Multicast fast switching method, device, apparatus, and storage medium
EP3026862A1 (en) Routing loop determining method
WO2023016550A1 (en) Route sending method and device
WO2019165803A1 (en) Message processing method and apparatus, and message encapsulating method, apparatus and system

Legal Events

Date Code Title Description
AS Assignment

Owner name: HUAWEI TECHNOLOGIES CO., LTD., CHINA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:ZHANG, XUDONG;HE, CHAO;LIU, YONG;AND OTHERS;REEL/FRAME:053028/0256

Effective date: 20190228

FEPP Fee payment procedure

Free format text: ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: BIG.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

STPP Information on status: patent application and granting procedure in general

Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION

STPP Information on status: patent application and granting procedure in general

Free format text: NON FINAL ACTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER

STPP Information on status: patent application and granting procedure in general

Free format text: FINAL REJECTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: RESPONSE AFTER FINAL ACTION FORWARDED TO EXAMINER

STPP Information on status: patent application and granting procedure in general

Free format text: NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS

STPP Information on status: patent application and granting procedure in general

Free format text: PUBLICATIONS -- ISSUE FEE PAYMENT VERIFIED

STCF Information on status: patent grant

Free format text: PATENTED CASE